آموزش پردازش تصویر در پایتون – جلسه 8: عملگر تصویر (بخش سوم)

0
469
آموزش پردازش تصویر در پایتون – جلسه 8: عملگر تصویر (بخش سوم)

در قسمت هفتم از مجموعه آموزشی پردازش تصویر در پایتون، با عملگر تصویر کار کردیم و توانستیم با استفاده از دستورات مختلف دو تصویر را ترکیب کنیم. یکی از دستورات به نحوی بود که می‌توانستیم وزن هر تصویر را نیز مشخص کنیم. در این قسمت نیز کار با عملگر تصویر را ادامه داده و بک تصویر را بر روی تصویر دیگری نمایش می‌دهیم.

 

نحوه‌ی کار به این صورت است که ما بک گراند یکی از تصاویر را حذف می‌کنیم یا به عبارتی دیگر شفاف می‌کنیم و بر روی تصویر دیگر می‌اندازیم. همانطور که قبلا گفتیم لزوما نیازی نیست که از تصاویر رنگی استفاده کنیم و می‌توانیم با استفاده از تصویر سیاه و سفید نیز عملگر تصویر را اعمال کنیم. در این قسمت ما از تصویر سیاه و سفید استفاده کردیم و در ادامه از عملگر تصویر بر روی این تصویر بهره بردیم.

 

کدی که در ادامه مشاهده خواهید کرد شامل دستوراتی است که رنگ‌های تصویر را وارونه می‌کند، عملیات منطقی را روی تصاویر پیاده می‌کند و …

 

برای تشریح بیشتر این دستورات به ویدئوی که ضمیمه مقاله است مراجعه کنید.

 

import cv2
import numpy as np

img1 = cv2.imread('image.jpg')
img2 = cv2.imread('imglogo.jpg')

rows, cols, channels = img2.shape
roi = img1[0:rows, 0:cols]

img2gray = cv2.cvtColor(img2, cv2.COLOR_BGR2GRAY)

ret, mask = cv2.threshold(img2gray, 220, 255, cv2.THRESH_BINARY)

mask_inv = cv2.bitwise_not(mask)

img1_bg = cv2.bitwise_and(roi, roi, mask=mask)

img2_fg = cv2.bitwise_and(img2, img2, mask=mask_inv)

dst = cv2.add(img1_bg, img2_fg)

img1[0:rows, 0:cols] = dst

cv2.imshow('img2_fg', img1)

cv2.waitKey(0)
cv2.destroyAllWindows()

 

پس از اینکه برنامه را اجرا کردیم آیکون پایتون البته با حذف بک گراند بر روی تصویر همانند زیر قرار خواهد گرفت:

 

 

این مقاله برگرفته از آموزش ویدئویی زیر می‌باشد، برای مشاهده‌ی جزئیات بیشتر حتما این ویدئو را مشاهده بفرمائید.

 

منبع : سیسوگ

 

مطلب قبلیآموزش پردازش تصویر در پایتون – جلسه 7: عملگرهای تصویر (بخش دوم)
مطلب بعدیقسمت شانزدهم : لایه‌های PCB و طراحی برد چند لایه

پاسخ دهید

لطفا نظر خود را وارد کنید!
لطفا نام خود را در اینجا وارد کنید