8 04 2019
2019 – Görüntü İşleme Dersi Uygulama Soruları
Soru 1)
Soru 2) – Aşağıda verildiği gibi ‘cameraman.tif’ görüntüsü yatay olarak tam ortadan ikiye ayrılacak şekilde parçalanacak ve üstteki kısım Filtre1 ile alttaki kısım ise Filtre2 ile konvolüsyona tabi tutulup ikilik resim haline getirilecektir. Sonrasında alttaki ve üstteki kısma ait ikilik resimler tekrar birleştirilecektir. Ortaya çıkan görüntünün son hali ekrandan gösterilecektir.
Yanıt 2.)
clear;clc;close all;
x=imread(‘cameraman.tif’);
filtre1=[-1 2 -1;-1 2 -1;-1 2 -1];
filtre2=[-1 -1 -1;2 2 2;-1 -1 -1];
ust=x(1:128,:); %h=256, h/2=128
alt=x(129:end,:);
subplot(2,2,1);
imshow(ust);
subplot(2,2,2);
imshow(alt);
%ust kısmı konvolüsyon yapalım
ustKonv=conv2(ust,filtre1,’same’);%konvolüsyon
ustKonv=mat2gray(ustKonv);%sonuç matrisi [0 1] aralığına transfer edildi
ustKonv=im2bw(ustKonv,0.6);%0.6 eşik değerine göre ikilik görüntü yapıldı
%alt kısmı konvolüsyon yapalım
altKonv=conv2(alt,filtre2,’same’);%konvolüsyon
altKonv=mat2gray(altKonv);%sonuç matrisi [0 1] aralığına transfer edildi
altKonv=im2bw(altKonv,0.6);%0.6 eşik değerine göre ikilik görüntü yapıldı
subplot(2,2,3);
imshow(ustKonv);
subplot(2,2,4);
imshow(altKonv);
%üst ve alt kısımları birleştirelim. Dikkat! toplamıyoruz..
son=[ustKonv;altKonv];
figure, imshow(son);
%*****************************************************************
Ekrandan verilen figürler:
Soru 3.)
Yandaki resim yeniden düzenlenerek yeni bir resim dosyası oluşturulacaktır. Yeni dosyanın adı cameraman2.jpg olacaktır. Buna göre;Yeni resmin her bir pikseli; orijinal resmin (cameraman.tif) satır boyunca ardışık iki piksel toplamının üçte biri (1/3) olacaktır. Yani;
A : Orijinal resim
B: Yeni resim
Olduğu takdirde ilk piksel için;
B(1,1)= (A(1,1) + A(1,2))/3 olacaktır. Bu işlem tüm pikseller için tekrarlanacaktır. Orijinal resim ve yeni resim (1×2) boyutlarında subplot ile görüntülenecektir.
Yanıt 3.)
clear;clc;close all;
x=imread(‘cameraman.tif’);
for i=1:size(x,1)
for j=1:size(x,2)-1 %taşma engellendi.
y(i,j)=(x(i,j)+x(i,j+1))/3;%y(i,j):yeni resim
end
end
subplot(1,2,1);
imshow(x);
title(‘İlk Resim’);
subplot(1,2,2);
imshow(y);
title(‘Son Resim’);
imwrite(y,’cameraman2.jpg’);
MIT’s talking glove with arduino 2019 BMK Vize Yanıtları