در قسمت دهم از مجموعه آموزشی پردازش تصویر در پایتون، در رابطه با فیلتر رنگ در ویدئو صحبت کردیم و با متدهایی توانستیم رنگ مورد نظر را در ویدئو پیدا کنیم و آن رنگ خاص را فیلتر کنیم. در این قسمت قصد داریم دربارهی تشخیص لبهها صحبت کنیم.
تشخیص لبهها
تشخیص لبهها به ما این امکان را میدهد تا بتوانیم حد و محدودهی، اشیا مختلف، نوشته و کلا هر چیز دیگری را در ویدئو یا عکس پیدا کنیم. تشیخص لبهها از کارهای بسیار پرکاربرد در پردازش تصویر میباشد.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | 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 استفاده کردیم تا بتوانیم لبهای تصویر را تشخیص بدهیم. پس از اجرای این الگوریتم لبههای تصویر به خوبی تشخیص داده میشوند و از بقیه تصویر مجزا میشود.
از الگوریتمهای دیگری برای تشخیص لبهها نیز استفاده کردیم که هر کدام کاربرد خواص خود را دارند و در جای خود استفاده میشوند. شما میتوانید توضیحات کامل را در ویدئو ببینید.
پس از اینکه الگوریتمهای متفاوت را بر روی ویدئو اعمال کردیم، ویدئو را در پنجرههای جداگانهای در خروجی نمایش میدهیم.
نتایج خروجی را در تصاویر زیر مشاهده میکنید:
سلام خسته نباشید. واقعا عالیه اموزشتون .از اینکه اموزش ها رو رایگان در اختیار عموم قرار دادید ممنونم
و از شما خواهشی دارم حذف نویز از تصویر رو به کمک فرمول یاد بدید ممنون
سلام و درود دوست عزیز
این سری آموزشی از زحمت های آقای اسلامی است ما تقاضای شما را با ایشان مطرح میکنیم 🙂
سلام خسته نباشید. واقعا عالیه اموزشتون . اینه که رایگان در اختیار عموم قرار دادید ممنونم
و از شما خواهشی دارم حذف نویز از تصویر رو به کمک فرمول یاد بدید ممنون