global masuk_enkripsi I a b c d global gambar_baruglobal nilaipadding hasil_enkripsi_red hasil_enkripsi_green hasil_enkripsi_blueglobal zzprompt = {'Enter Your key'};dlg_title = 'Key Input';num_lines = 1;def = {''};answer = inputdlg(prompt,dlg_title,num_lines,def);key_ascii=double(answer{1,1});key_ascii_biner=de2bi(key_ascii,'left-msb',8);key_ascii_biner_seri=reshape(key_ascii_biner',1,8*length(key_ascii));if length(key_ascii_biner_seri)==128 key_ascii_biner_baru=key_ascii_biner_seri;elseif length(key_ascii_biner_seri)<128 key_ascii_biner_baru=[key_ascii_biner_seri zeros(1,128-length(key_ascii_biner_seri))];elseif length(key_ascii_biner_seri)>128 key_ascii_biner_baru=[key_ascii_biner_seri(1,1:128)];end[xx yy zz]= size(I);if zz == 3 [x,y,A,rect] = imcrop(I); a=rect(1,1); b=rect(1,2); if a<0 a=1; end if b<0 b=1; end [d c l]=size(A); masuk_enkripsi=double(I(b:b+d-1,a:a+c-1,:)); tic masuk_enkripsi_red=masuk_enkripsi(:,:,1); masuk_enkripsi_green=masuk_enkripsi(:,:,2); masuk_enkripsi_blue=masuk_enkripsi(:,:,3); [brs_masuk_enkripsi klm_masuk_enkripsi]=size(masuk_enkripsi_red); masuk_enkripsi_seri_red=reshape(masuk_enkripsi_red',1,brs_masuk_enkripsi*klm_masuk_enkripsi); masuk_enkripsi_seri_green=reshape(masuk_enkripsi_green',1,brs_masuk_enkripsi*klm_masuk_enkripsi); masuk_enkripsi_seri_blue=reshape(masuk_enkripsi_blue',1,brs_masuk_enkripsi*klm_masuk_enkripsi); banyakzeropad=16-(mod(length(masuk_enkripsi_seri_red),16)); if banyakzeropad==16 banyakzeropad=0; end [kodebinerserial_part_red]=seri2part(masuk_enkripsi_seri_red,16); [kodebinerserial_part_green]=seri2part(masuk_enkripsi_seri_green,16); [kodebinerserial_part_blue]=seri2part(masuk_enkripsi_seri_blue,16); inputplain_aes_red=kodebinerserial_part_red; inputplain_aes_green=kodebinerserial_part_green; inputplain_aes_blue=kodebinerserial_part_blue; kunci_aes=key_ascii_biner_baru; [brs_ipt klm_ipt]=size(inputplain_aes_red); h=waitbar(0,'PLEASE WAIT...0%'); for i=1:brs_ipt waitbar(i/brs_ipt,h,['Encryption LOADING ......' num2str(round(i/brs_ipt*100)), '%']) hasil_enkripsi_red(i,:)=enkripsi_aes(inputplain_aes_red(i,:), kunci_aes); hasil_enkripsi_green(i,:)=enkripsi_aes(inputplain_aes_green(i,:), kunci_aes); hasil_enkripsi_blue(i,:)=enkripsi_aes(inputplain_aes_blue(i,:), kunci_aes); end nilaipadding_enkripsi_red=hasil_enkripsi_red(brs_ipt,klm_ipt-banyakzeropad+1:klm_ipt); nilaipadding_enkripsi_green=hasil_enkripsi_green(brs_ipt,klm_ipt-banyakzeropad+1:klm_ipt); nilaipadding_enkripsi_blue=hasil_enkripsi_blue(brs_ipt,klm_ipt-banyakzeropad+1:klm_ipt); nilaipadding=[nilaipadding_enkripsi_red;nilaipadding_enkripsi_green;nilaipadding_enkripsi_blue]; close(h) [brs_opt klm_opt]=size(hasil_enkripsi_green) hasil_enkripsi_red_seri=reshape(hasil_enkripsi_red',1,brs_opt*klm_opt); hasil_enkripsi_green_seri=reshape(hasil_enkripsi_green',1,brs_opt*klm_opt); hasil_enkripsi_blue_seri=reshape(hasil_enkripsi_blue',1,brs_opt*klm_opt); hasil_enkripsi_red_cut=hasil_enkripsi_red_seri(1,1:length(masuk_enkripsi_seri_red)); hasil_enkripsi_green_cut=hasil_enkripsi_green_seri(1,1:length(masuk_enkripsi_seri_green)); hasil_enkripsi_blue_cut=hasil_enkripsi_blue_seri(1,1:length(masuk_enkripsi_seri_blue)); hasil_enkripsi_red_kembali=reshape(hasil_enkripsi_red_cut,klm_masuk_enkripsi,brs_masuk_enkripsi )'; hasil_enkripsi_green_kembali=reshape(hasil_enkripsi_green_cut,klm_masuk_enkripsi,brs_masuk_enkripsi )'; hasil_enkripsi_blue_kembali=reshape(hasil_enkripsi_blue_cut,klm_masuk_enkripsi,brs_masuk_enkripsi )'; gambar_baru=I; gambar_baru(b:b+d-1,a:a+c-1,1)=hasil_enkripsi_red_kembali; gambar_baru(b:b+d-1,a:a+c-1,2)=hasil_enkripsi_green_kembali; gambar_baru(b:b+d-1,a:a+c-1,3)=hasil_enkripsi_blue_kembali; axes(handles.axes2) imshow(uint8(gambar_baru)); toc; waktu=toc; set(handles.edit7,'string',brs_masuk_enkripsi*klm_masuk_enkripsi*24/8/10^6) set(handles.edit11,'string',datestr(now)) set(handles.edit8,'string',brs_masuk_enkripsi) set(handles.edit9,'string',klm_masuk_enkripsi) set(handles.edit12,'string',waktu)elseif zz==1 [x,y,A,rect] = imcrop(I); a=rect(1,1); b=rect(1,2); if a<0 a=1; end if b<0 b=1; end [d c l]=size(A); masuk_enkripsi=double(I(b:b+d-1,a:a+c-1)); tic masuk_enkripsi_white=masuk_enkripsi(:,:); [brs_masuk_enkripsi klm_masuk_enkripsi]=size(masuk_enkripsi_white); masuk_enkripsi_seri_white=reshape(masuk_enkripsi_white',1,brs_masuk_enkripsi*klm_masuk_enkripsi); banyakzeropad=16-(mod(length(masuk_enkripsi_seri_white),16)); if banyakzeropad==16 banyakzeropad=0; end [kodebinerserial_part_white]=seri2part(masuk_enkripsi_seri_white,16); inputplain_aes_white=kodebinerserial_part_white; kunci_aes=key_ascii_biner_baru; [brs_ipt klm_ipt]=size(inputplain_aes_white) h=waitbar(0,'PLEASE WAIT...0%'); for i=1:brs_ipt waitbar(i/brs_ipt,h,['Encryption LOADING ......' num2str(round(i/brs_ipt*100)), '%']) hasil_enkripsi_white(i,:)=enkripsi_aes(inputplain_aes_white(i,:), kunci_aes); end nilaipadding_enkripsi_white=hasil_enkripsi_white(brs_ipt,klm_ipt-banyakzeropad+1:klm_ipt); nilaipadding=[nilaipadding_enkripsi_white]; close(h) [brs_opt klm_opt]=size(hasil_enkripsi_white); hasil_enkripsi_white_seri=reshape(hasil_enkripsi_white',1,brs_opt*klm_opt); hasil_enkripsi_white_cut=hasil_enkripsi_white_seri(1,1:length(masuk_enkripsi_seri_white)); hasil_enkripsi_white_kembali=reshape(hasil_enkripsi_white_cut,klm_masuk_enkripsi,brs_masuk_enkripsi )'; gambar_baru=I; gambar_baru(b:b+d-1,a:a+c-1,1)=hasil_enkripsi_white_kembali; axes(handles.axes2) imshow(uint8(gambar_baru)); toc; waktu=toc; set(handles.edit7,'string',brs_masuk_enkripsi*klm_masuk_enkripsi*24/8/10^6) set(handles.edit11,'string',datestr(now)) set(handles.edit8,'string',brs_masuk_enkripsi) set(handles.edit9,'string',klm_masuk_enkripsi) set(handles.edit12,'string',waktu) end
MATLAB: Please help me, is there anyone that can eliminate the function imcrop in this program
encryptionImage Processing Toolboximcrop
Best Answer