بهینه سازی مقدار thresholdهای لبه یاب کنی در پایتون
لبه یاب کنی که با کمک open-cv در پایتون قابل محاسبه است دو مقدار threshold دریافت میکند که این مقدارها مهمترین پارامتری است که میتواند لبه یابی canny را تحت تاثیر قرار دهد. در این نوشته به روش بهینه سازی این مقدار میپردازیم تا مقدار ثابت در این پارامترها قرار ندهید تا یک مقدار بهینه برای این توابع استفاده کنید.
بهینه سازی مقدار thresholdهای لبه یاب کنی در پایتون
در رویکردی که در این نوشته در مورد آن صحبت میکنیم میانگین شدت تصویر را به عنوان thresholdهای لبه یاب canny استفاده میکنیم.
import cv2 import numpy as np def rgb2gray_regular(image): grayscale_image = ( 0.2989 * image[..., 0] + 0.5870 * image[..., 1] + 0.1140 * image[..., 2] ) grayscale_image = np.clip(grayscale_image, 0, 255) return grayscale_image.astype(np.uint8) def canny_edge_detection(image, sigma=0.33): gray = rgb2gray_regular(image) v = np.median(gray) lower = int(max(0, (1.0 - sigma) * v)) upper = int(min(255, (1.0 + sigma) * v)) return cv2.Canny(gray, lower, upper)
اگر سوالی در ارتباط با کد بالا دارید در بخش نظرات این نوشته بنویسید.
برای امتیاز به این نوشته کلیک کنید!
[کل: 1 میانگین: 5]
ارسال پاسخ