




Matlab Görüntü İşleme - Fonksiyon Oluşturma (Yardım)
-
öncelikle iyi akşamlar ...
arkadaşlar aşağıdaki linkte fiber üzerinda tutunan polimer damlasının fotoğrafı var bu damlanın şeklini ifade eden fonksiyonu bulmam gerekiyor .
http://imageshack.us/photo/my-images/804/ts1011163733.png/
bu işlem matlab ile yapılabiliyor diye biliyorum . açıkçası matlabda görüntü işleme konusunda fazla bilgim yok bu yüzden de matlab bilen arkadaşlar konuyla ilgili yardım edebilirse sevinirim ...
-
RGB matrisi mi lazım görüntünün? renkli resimlerde çalışıyor mu emin değilim ama siyah-beyaz resimlerde çalışan kodum aşağıda ( önce decimal RGB matrisi çıkarıyor sonra onu binary hale getiriyor, binary hali gereksiz olabilir senin için ben FPGA'e gömmek için binary'e çevirmek zorunda kalmıştım )
RGBMatrix = imread(‘pathoftheimage\imagename.jpg’);
--double is healthier than integer to divide
RedComp = double(imresize(RGBMatrix (:,:,1),1))';
GreenComp = double(imresize(RGBMatrix (:,:,2),1))';
BlueComp = double(imresize(RGBMatrix (:,:,3),1))';
temp=R+1;
temp2=temp/256;
temp3=temp2*8;
temp4=ceil(temp3);
temp5=temp4-1;
--take binary matrix of blue component
temp6=dec2bin(temp5(:),3);
temp7=temp6';
temp8=temp7(:,end:-1:1);
-
eğer damla yeşil kısımsa yeşil componenti alman yeterli olur sanırım
-
tmm teşekkürler Valira ... yazdığın komutları kullanarak bi denicem ...
-
olayi yanlis anlamadim ise seklin fonsiyonunu dedign sey matematiksel ise
egri uydurma kullanman gerekiyor. onuda resmi kordinat sistemine oturtarak parabol uydurabilirsin.
ama resim olarak matrix degerleri konusunda bilgim yok
verecegim kod watermarking ile alakali belki isine yarar
Q=input('(Ölçekleme degeri en az 1)Q=')
subplot(2,3,1)
RGB=imread('MM','jpg');
imshow(RGB);
title('Orjinal Resim');
subplot(2,3,2)
N=dct2(RGB(:,:,3));
imshow(log(abs(N)),[]),colorbar;
title('Enerji Dagitim Y bileseni');
subplot(2,3,4)
I=imread('lena1','bmp');
imshow(I);
title('Tonlamalı filigran görüntüsü');
subplot(2,3,5)
M=dct2(I);
imshow(log(abs(M)),[]),colorbar;
title('Filigran enerji dağıtım');
subplot(2,3,6)
J=M(1:128,1:128);
J(128:364,128:400)=0;
J=rot90(J);
J=rot90(J);
J(365:600,401:750)=0;
J=rot90(J);
J=rot90(J);
N=N+Q*J;
K=idct2(N);
RGB(:,:,3)=K;
imshow(RGB);
title('Filigran resim ekledikten sonra');
%Filigran çıkarma işlemi
subplot(2,3,3)
RGB1=imread('MM','jpg');
N=dct2(RGB(:,:,3));
M=dct2(RGB1(:,:,3));
M=(N-M)/Q;
B=idct2(M(236:365,350:401));
Y=mat2gray(B);
imshow(Y);
title('Ayıklanan filigran görüntüsü')