29 11 2022
GÖRÜNTÜ İŞLEME DERSİ VİZE SINAVI YANITLARI (GÜZ 2022-2023)
Gİ-Vize-2022-2023-Yanıtlar (pdf)
AFYON KOCATEPE ÜNİVERSİTESİ
MEKATRONİK MÜHENDİSLİĞİ BÖLÜMÜ
GÖRÜNTÜ İŞLEME DERSİ VİZE SINAVI YANITLARI (GÜZ 2022-2023)
desenler.jpg adlı BGR resim verilmiştir. jpg adlı BGR resim verilmiştir. Resmin boyutları 390x510x3’dür. Bu resmi:
- Yatay olarak 3 eşit parçaya bölünüz.
- Tüm bölümleri gri seviyeye çeviriniz.
- İlk bölümündeki piksellerin değeri 150’den küçük ise 0 büyük ise 255 yapınız.
- İkinci bölümde kırmızı renkli pikselleri 255 diğerlerini 0 yapınız. (Eşik değer=50) (Ekstra Puan)
- Üçüncü bölümdeki piksel değerlerinin tümleyenlerini alınız.
- Sonra tüm bölümleri tekrar birleştiriniz ve ilk resmi ve son resmi görüntüleyiniz.
import numpy as np
import cv2
from matplotlib import pyplot as plt
y = cv2.imread(‘desenler.jpg’)
y=cv2.resize(y, (510,390)) #SİZLER İÇİN BU SATIRA GEREK YOK
x=cv2.cvtColor(y,cv2.COLOR_BGR2GRAY)
x1=x[:130]
x2=x[131:261,:]
x3=x[260:]
#1. BÖLÜM
a1,x1=cv2.threshold(x1, 150, 255, cv2.THRESH_BINARY)
#2. BÖLÜM
x2MaviBant=y[131:261,:,2]#Mavi yazdığına bakmayın aslında kırmızı 😊
x2=cv2.subtract(x2, x2MaviBant)
a2,x2=cv2.threshold(x2,50,255,cv2.THRESH_BINARY)
#3. BÖLÜM
x3=255-x3
#BİRLEŞTİRME
x=cv2.vconcat([x1,x2,x3])
plt.subplot(1,2,1);plt.imshow(y)
plt.subplot(1,2,2);plt.imshow(x,’gray’,vmin=0,vmax=255)
plt.show()
2.) Balon.jpg ve headquarters-2.jpg resimleri verilmiştir. Aşağıda verilen şekilde açıklandığı gibi 1. resimdeki çerçeveli alanı 2. resimdeki çerçeveli alana taşıyacak bir program yazınız. Program “for” döngüsü kullanarak ve kullanmadan ayrı ayrı yazılacaktır. Ayrıca 2. resmin orijinal hali ile son halini yan yana görüntüleyiniz. Elde edilmesi gereken ekran görüntüsü aşağıda verilmiştir.
#FOR DÖNGÜSÜ OLMADAN
import numpy as np
import cv2
from matplotlib import pyplot as plt
x = cv2.imread(‘balon.jpg’)
y = cv2.imread(‘headquarters-2.jpg’)
z= cv2.imread(‘headquarters-2.jpg’)
z[50:101,50:101]=x[50:101,50:101]
tum=cv2.hconcat([y,z])
cv2.imshow(‘Tum Resim’,tum)
cv2.waitKey(0)
cv2.destroyAllWindows()
#FOR DÖNGÜSÜ KULLANARAK
import numpy as np
import cv2
from matplotlib import pyplot as plt
x = cv2.imread(‘balon.jpg’)
y = cv2.imread(‘headquarters-2.jpg’)
z = cv2.imread(‘headquarters-2.jpg’)
for i in range(x.shape[0]):
for j in range(x.shape[1]):
if ((i>=50) and (i<=100) and (j>=50) and (j<=100)):
y[i,j]=x[i,j]
tum=cv2.hconcat([z,y])
cv2.imshow(‘Tum Resim’,tum)
cv2.waitKey(0)
cv2.destroyAllWindows()
Görüntü İşleme Dersi için resim örnekleri GÖRÜNTÜ İŞLEME Kod ve Resimler (2022-2023)