عضو کانال یوتیوب ما شوید.

بهینه سازی مقدار thresholdهای لبه یاب کنی در پایتون

بهینه سازی مقدار thresholdهای لبه یاب کنی در پایتون
بهینه سازی مقدار thresholdهای لبه یاب کنی در پایتون

بهینه سازی مقدار 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]