Sie sind auf Seite 1von 12

grabbed, frame = camera.

read()
if not grabbed:
raise ValueError("Camera read failed!")
bg = utils.image_resize(frame, height=600).astype(np.float32)

while True:
grabbed, frame = camera.read()
if not grabbed:
print "Camera read failed"
break

frame = utils.image_resize(frame, height=600)


height, width, channels = frame.shape

if not calibrated:
# Sample hand color
utils.add_text(frame, "Press space after covering rectangle with hand. Hit SPACE when ready")
x, y, w, h = width / 4, height / 2, 50, 50

Geometric Transformations of Images


cv2.rectangle(frame, (x, y), (x + w, y + h), (0, 255, 0), 2)
cv2.imshow("Calibration", frame)
if cv2.waitKey(2) & 0xFF == ord(' '):

with OpenCV Python


roi = frame[y:y + h, x:x + w, :]
roi_hsv = cv2.cvtColor(roi, cv2.COLOR_BGR2HSV)
min_value = np.amin(roi_hsv, (0, 1))
max_value = np.amax(roi_hsv, (0, 1))
cv2.destroyWindow("Calibration")
calibrated = True

else:
cv2.accumulateWeighted(frame, bg, 0.01) MK: Image Processing

Oleh: Danang Erwanto, ST., MT

010100010010101010000100010100101010010100010001001101010010010101010
010100010010101010000100010100101010010100010001001101010010010101010
010100010010101010000100010101001001101010100100100101010
010100010010101010000100010101001001101010100100100101010
grabbed, frame = camera.read()
if not grabbed:
raise ValueError("Camera read failed!")

Show image Size


bg = utils.image_resize(frame, height=600).astype(np.float32)

while True:
grabbed, frame = camera.read()
if not grabbed:
print "Camera read failed"
break

• Fungsi  image.shape

MK : Image Processing (MKKPC09603)


Program Studi : Teknik Elektro – Uniska Kediri
grabbed, frame = camera.read()
if not grabbed:
raise ValueError("Camera read failed!")

Image Scaling
bg = utils.image_resize(frame, height=600).astype(np.float32)

while True:
grabbed, frame = camera.read()
if not grabbed:
print "Camera read failed"
break

•  Pengubahan ukuran citra/Image


zooming
• Zoom Out  Memperbesar
• Zoom In  Memperkecil
• Rumus:

Dimana dan adalah faktor a) Zoom Out dengan factor skala 2x


skala masing-masing dalam
b) Zoom In dengan factor skala ½x
arah x dan arah y.
MK : Image Processing (MKKPC09603)
Program Studi : Teknik Elektro – Uniska Kediri
grabbed, frame = camera.read()
if not grabbed:
raise ValueError("Camera read failed!")

Image Scaling
bg = utils.image_resize(frame, height=600).astype(np.float32)

while True:
grabbed, frame = camera.read()
if not grabbed:
print "Camera read failed"
break

• Fungsi  cv2.resize

MK : Image Processing (MKKPC09603)


Program Studi : Teknik Elektro – Uniska Kediri
grabbed, frame = camera.read()
if not grabbed:
raise ValueError("Camera read failed!")

Translation
bg = utils.image_resize(frame, height=600).astype(np.float32)

while True:
grabbed, frame = camera.read()
if not grabbed:
print "Camera read failed"
break

• Translation adalah pergeseran lokasi objek


dalam arah (x, y), matriks transformasi dari
translation : 𝟏 𝟎 𝒕
 𝑴 =
[ 𝟎 𝟏
𝒙
𝒕𝒚 ]

MK : Image Processing (MKKPC09603)


Program Studi : Teknik Elektro – Uniska Kediri
grabbed, frame = camera.read()
if not grabbed:
raise ValueError("Camera read failed!")

Image Rotation
bg = utils.image_resize(frame, height=600).astype(np.float32)

while True:
grabbed, frame = camera.read()
if not grabbed:
print "Camera read failed"
break

• Dicapai dengan matrik:


 𝑴 = 𝐜 𝐨𝐬 𝜽 − 𝒔𝒊𝒏 𝜽
[ 𝐬𝐢𝐧 𝜽 𝐜 𝒐𝒔 𝜽 ]
• Pada OpenCV pusat rotasi dapat disesuaikan sehingga dapat memutar di lokasi
mana pun yang diinginkan dengan matriks transformasi yang dimodifikasi :
 𝜶 𝜷 ( 𝟏−𝜶 ) ∙𝒄𝒆𝒏𝒕𝒆𝒓 .𝒙 −𝜷∙𝒄𝒆𝒏𝒕𝒆𝒓 . 𝒚
[ − 𝜷 𝜶 𝜷∙𝒄𝒆𝒏𝒕𝒆𝒓 .𝒙+( 𝟏−𝜶 ) ∙𝒄𝒆𝒏𝒕𝒆𝒓. 𝒚 ] Dimana:
 

• Untuk mencari matriks transformasi, OpenCV menyediakan fungsi


cv2.getRotationMatrix2D
MK : Image Processing (MKKPC09603)
Program Studi : Teknik Elektro – Uniska Kediri
grabbed, frame = camera.read()
if not grabbed:
raise ValueError("Camera read failed!")

Image Rotation
bg = utils.image_resize(frame, height=600).astype(np.float32)

while True:
grabbed, frame = camera.read()
if not grabbed:
print "Camera read failed"
break

MK : Image Processing (MKKPC09603)


Program Studi : Teknik Elektro – Uniska Kediri
grabbed, frame = camera.read()
if not grabbed:
raise ValueError("Camera read failed!")

Image Flipping
bg = utils.image_resize(frame, height=600).astype(np.float32)

while True:
grabbed, frame = camera.read()
if not grabbed:
print "Camera read failed"
break

• Operasi geometri yang sama dengan pencerminan (image reflection)


• Function  cv2.flip
• Integer yang mewakili operasi flipping:
• 0  Untuk membalik gambar di sekitar sumbu x (Flip Vertikal)
• > 0  Untuk membalik gambar di sekitar sumbu y (Flip Horizontal)
• < 0  Untuk membalik gambar di sekitar sumbu x dan y (Flip Vertikal & Horizontal)

Flip Vertikal &


Citra Asli Flip Vertikal Flip Horizontal
Horizontal
MK : Image Processing (MKKPC09603)
Program Studi : Teknik Elektro – Uniska Kediri
grabbed, frame = camera.read()
if not grabbed:
raise ValueError("Camera read failed!")

Flip Vertikal
bg = utils.image_resize(frame, height=600).astype(np.float32)

while True:
grabbed, frame = camera.read()
if not grabbed:
print "Camera read failed"
break

• Syntax  FlipVertical = cv2.flip(image,0)

MK : Image Processing (MKKPC09603)


Program Studi : Teknik Elektro – Uniska Kediri
grabbed, frame = camera.read()
if not grabbed:
raise ValueError("Camera read failed!")

Flip Horizontal
bg = utils.image_resize(frame, height=600).astype(np.float32)

while True:
grabbed, frame = camera.read()
if not grabbed:
print "Camera read failed"
break

• Syntax  FlipHorizontal = cv2.flip(image,1)

MK : Image Processing (MKKPC09603)


Program Studi : Teknik Elektro – Uniska Kediri
grabbed, frame = camera.read()
if not grabbed:
raise ValueError("Camera read failed!")

Flip Vertikal & Horizontal


bg = utils.image_resize(frame, height=600).astype(np.float32)

while True:
grabbed, frame = camera.read()
if not grabbed:
print "Camera read failed"
break

• Syntax  FlipBoth = cv2.flip(image,-1)

MK : Image Processing (MKKPC09603)


Program Studi : Teknik Elektro – Uniska Kediri
grabbed, frame = camera.read()
if not grabbed:
raise ValueError("Camera read failed!")
bg = utils.image_resize(frame, height=600).astype(np.float32)

while True:
grabbed, frame = camera.read()
if not grabbed:
print "Camera read failed"
break

MK : Image Processing (MKKPC09603)


Program Studi : Teknik Elektro – Uniska Kediri

Das könnte Ihnen auch gefallen