So verwenden Sie Python, um Kantenverfolgung an Bildern durchzuführen
Einführung:
Im Bereich Computer Vision und Bildverarbeitung ist die Bildkantenerkennung eine grundlegende und wichtige Technologie. Die Kantenerkennung kann in vielen Anwendungen wie Bildsegmentierung, Zielerkennung und dreidimensionaler Rekonstruktion eingesetzt werden. In diesem Artikel wird erläutert, wie Sie die OpenCV-Bibliothek in Python verwenden, um die Bildkantenverfolgung zu implementieren.
pip install opencv-python
import cv2 # 读取图片 image = cv2.imread('image.jpg') # 将图像转换为灰度图 gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) # 对灰度图进行高斯模糊 blur = cv2.GaussianBlur(gray, (5, 5), 0) # 使用Canny算法进行边缘检测 edges = cv2.Canny(blur, 50, 150) # 显示原始图像和边缘图像 cv2.imshow('Original Image', image) cv2.imshow('Edge Image', edges) cv2.waitKey(0) cv2.destroyAllWindows()
cv2.imread()
, um das Bild unter dem angegebenen Pfad zu lesen und ein mehrdimensionales Array (Pixelmatrix) zurückzugeben, das das Bild darstellt. Anschließend wandeln wir das Farbbild in ein Graustufenbild um, um den Berechnungsprozess des Kantenerkennungsalgorithmus zu vereinfachen. cv2.imread()
函数读取指定路径下的图片,返回一个表示图像的多维数组(像素矩阵)。然后,我们将彩色图像转换为灰度图像,这样做是为了简化边缘检测算法的计算过程。cv2.GaussianBlur()
函数进行高斯模糊,其中第二个参数是模糊核的大小,越大表示模糊程度越高。cv2.Canny()
函数来实现边缘检测。这个函数的参数包括低阈值和高阈值,图像中最弱的边缘会被抑制,强度介于低阈值和高阈值之间的边缘会被保留。cv2.imshow()
函数来显示原始图像和边缘图像,并通过cv2.waitKey(0)
Als nächstes wenden wir die Gaußsche Unschärfe auf das Graustufenbild an, wodurch das Bildrauschen reduziert und die Kanten klarer werden können. Wir verwenden die Funktion cv2.GaussianBlur()
, um eine Gaußsche Unschärfe durchzuführen. Der zweite Parameter ist die Größe des Unschärfekerns. Je größer der Wert, desto höher der Grad der Unschärfe. cv2.Canny()
, um die Kantenerkennung zu implementieren. Zu den Parametern dieser Funktion gehören ein niedriger und ein hoher Schwellenwert. Die schwächsten Kanten im Bild werden unterdrückt und Kanten mit Stärken zwischen dem niedrigen und dem hohen Schwellenwert bleiben erhalten. cv2.imshow()
, um das Originalbild und das Randbild anzuzeigen und schließen das Bildfenster, indem wir cv2.waitKey(0)
warten Tastatureingabe. Das obige ist der detaillierte Inhalt vonSo verwenden Sie Python, um Kantenverfolgung für Bilder durchzuführen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!