آموزش پردازش تصویر در پایتون – جلسه 11: تشخیص لبه‌ها

0
546
آموزش پردازش تصویر در پایتون – جلسه 10: فیلتر رنگ در ویدئو

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

 

تشخیص لبه‌ها

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

import cv2
import numpy as np

cap = cv2.VideoCapture(0)

while(1):
_, frame = cap.read()

laplacian = cv2.Laplacian(frame, cv2.CV_8U)
sobelx = cv2.Sobel(frame, cv2.CV_8U, 1, 0, ksize=5)
sobely = cv2.Sobel(frame, cv2.CV_8U, 0, 1, ksize=5)
canny = cv2.Canny(frame, 100 , 200)


cv2.imshow('original', frame)
cv2.imshow('laplacian', laplacian)
cv2.imshow('sobelx', sobelx)
cv2.imshow('sobely', sobely)
cv2.imshow('canny', canny)


k = cv2.waitKey(0) & 0xFF
if (k == 27):
break

cv2.destroyAllWindows()
cap.release()

 

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

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

 

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

 

منبع: سیسوگ

مطلب قبلیمدیریت و اتصال همزمان به چند وای فای در ESP8266
مطلب بعدیقسمت هفدهم : تنظیم طول مسیرها ( Interactive Length Tuning )

پاسخ دهید

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