Bonus: bu filtreyi de kullanabilirsin. void segImage::imageBlur {// Blur operation to blure our image before thresholding. int kernel = ,// Kernel of Blur. , }; int temp; for(int i=1;i<height-1;i++){// Image Data and Kernel is convoluting. for(int j=1;j<width-1;j++){ temp=0; for(int k=-1;k<2;k++){ for(int l=-1;l<2;l++) } if(temp>255)// If temp bigger then 255 or smaller then 0 we have to assign limit values to them. temp= 255; if(temp<0) temp = 0; newData = temp;// The new pixel value according to convolution value is putting }// to the temporary image data array. } for(int i=1;i<height-1;i++){// Temp array values assigned to the image data array. for(int j=1;j<width-1;j++) } }

Average Filtresi Resimdeki her piksel yerine komşuları ile beraber ortalaması alınarak yeniden hesaplanır. Resimdeki gri düzeyler arasında keskin geçişler azalır; daha yumuşak geçişler sz konusudur. Resim üzerindeki kenarlarda bulanıklaşmaya yol açarlar. Seçilen resime yumuşatma filtrelerinden 3x3 ve 5x5 basit ortalama filtresi uygulayarak resimlerin grüntülenmesi uygulaması.. a=imread ; b=rgb2gray ; b=im2double ; =size ; for i=2:(w-1) for j=2:(h-1) fa=i-1;fb=i+1;fc=j-1;fd=j+1; fk=b +b +b +b +b +b +b +b +b +b ;fm=fk 1/9; cikis =fm; if i>2 & j>2 & i<(w-1) & j<(h-1) fe=i-2;ff=i+2;fg=j-2;fh=j+2; fk=b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b ; fm=fk 1/25; cikisa =fm; end end end subplot(1,3,1), subimage ; subplot(1,3,2), subimage ; subplot(1,3,3), subimage ; İlk batışını ben grdüm güneşin, Gün dnümüne sen yetiştin, Kaptanı benim bu geminin, En son ben çıkarım, Panik etmeyin iletisim: www.tahribat.com@gmail.com

@muhammedonur, @r10aldinho çok teşekkür ediyorum yardımlarınızdan dolayı yaptım. Eyvallah @CnkGn zamanı gelmişti :D

Matlabda fotoğrafı parametrik olarak yumuşatmayı bilen müritler varsa bir el atsa. Dngüler aracılığıyla yapılacak, filtre kullanılmayacak. Şimdiden teşekkürler

Bonus: bu filtreyi de kullanabilirsin. void segImage::imageBlur {// Blur operation to blure our image before thresholding. int kernel = ,// Kernel of Blur. , }; int temp; for(int i=1;i<height-1;i++){// Image Data and Kernel is convoluting. for(int j=1;j<width-1;j++){ temp=0; for(int k=-1;k<2;k++){ for(int l=-1;l<2;l++) } if(temp>255)// If temp bigger then 255 or smaller then 0 we have to assign limit values to them. temp= 255; if(temp<0) temp = 0; newData = temp;// The new pixel value according to convolution value is putting }// to the temporary image data array. } for(int i=1;i<height-1;i++){// Temp array values assigned to the image data array. for(int j=1;j<width-1;j++) } } Eyvallah hocam. temp = temp + (data kernel )/9; step i anlayamadım aydınlatabilirmisin :D

Bonus 2: void segImage::imageNoiseRedG {// Gaussian Blur Filter. float kernel ; for(int k=0; k<size;k++){// Creating Gaussian Kernel According to the formula. for(int l=0; l<size; l++) } int temp; for(int i=size/2;i<height-size/2;i++){// Image Data and Kernel is convoluting. for(int j=size/2;j<width-size/2;j++){ temp=0; for(int k= -size/2;k< size/2+1;k++){ for(int l=-size/2;l<size/2+1;l++) } if(temp>255)// If temp bigger then 255 or smaller then 0 we have to assign limit values to them. temp= 255; if(temp<0) temp = 0; newData = temp;// The new pixel value according to convolution value is putting }// to the temporary image data array. } for(int i=size/2;i<height-size/2;i++){// Temp array values assigned to the image data array. for(int j=size/2;j<width-size/2;j++) } }

C++ fonksiyonu çevirip kullanabilirsin void segImage::imageNoiseRedM {// Median Average Filter. int area ; for(int i=1;i<height-1;i++){ for(int j=1;j<width-1;j++){ for(int k=-1;k<2;k++){ for(int l=-1;l<2;l++) // temporary area array } sort(area, area+9);// All neighbors of current pixel sorting. newData = area ;// Median of the area array is assign to the pixel value. } } for(int i=1;i<height-1;i++){// Temp array values assigned to the image data array. for(int j=1;j<width-1;j++) } } stringcompare tarafından 31/Ara/14 01:32 tarihinde düzenlenmiştir

oo matlab yapmışım :D yo yo yo 1-4-8-3 to the 3 to the 6 to the 9 representing the abq. what up biaatch! leave at the tone...

muhammedonur bunu yazdı Bonus: bu filtreyi de kullanabilirsin. void segImage::imageBlur {// Blur operation to blure our image before thresholding. int kernel = ,// Kernel of Blur. , }; int temp; for(int i=1;i<height-1;i++){// Image Data and Kernel is convoluting. for(int j=1;j<width-1;j++){ temp=0; for(int k=-1;k<2;k++){ for(int l=-1;l<2;l++) } if(temp>255)// If temp bigger then 255 or smaller then 0 we have to assign limit values to them. temp= 255; if(temp<0) temp = 0; newData = temp;// The new pixel value according to convolution value is putting }// to the temporary image data array. } for(int i=1;i<height-1;i++){// Temp array values assigned to the image data array. for(int j=1;j<width-1;j++) } } Eyvallah hocam. temp = temp + (data kernel )/9; step i anlayamadım aydınlatabilirmisin :D bu kodu opencv için yazmıştım. opencv de de bir resmin datasına dizi gibi erişemiyorsun. elinde 3x5 lik bir dizi olsun. dizinin 2. satır 3. sütun elemanına erişmek istiyorsan: A 2 boyutlu bir dizi için istediğin sonucu verir ancak tek boyutlu diziyi iki boyutlu gibi kullanmak istiyorsan A yani step genişlik oluyor fakat opencv de genişlikle de aynı şey anlamına gelmiyor orası biraz opencv nin iç yapısıyla ilgili. step i kullanacaksın yani. matlab de de opencv var ancak onu mu kullanıyorsun bilmiyorum. son olarak bu yazdığım class ın constructor ını paylaşmamışım onu da atarsam daha rahat anlarsın herhalde. segImage::segImage

Ortalama filtreyi dngü aracılığıyla yapabilirsin. Grüntünün matrisinden 3x3 blüm al, ortadaki pikseli diğer sekiz pikselin ortalamasına eşitle. Olaylara karışmayın!