Python是一種非常受歡迎的編程語(yǔ)言,它可以用于各種不同的應(yīng)用程序,包括給輪廓上色。在本文中,我們將介紹如何使用Python給輪廓上色。
import cv2 import numpy as np # 讀入圖像,轉(zhuǎn)為灰度圖 img = cv2.imread('test.jpg') gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) # 二值化 ret, thresh = cv2.threshold(gray, 127, 255, 0) # 查找輪廓 contours, hierarchy = cv2.findContours(thresh, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE) # 創(chuàng)建新的圖像,將輪廓上色 color_img = np.zeros_like(img) cv2.drawContours(color_img, contours, -1, (0, 255, 0), 2) # 顯示圖像 cv2.imshow('Contours', color_img) cv2.waitKey(0) cv2.destroyAllWindows()
首先,我們導(dǎo)入所需模塊,包括OpenCV和Numpy。然后,我們讀入圖像,并將其轉(zhuǎn)換為灰度圖像。接下來(lái),我們進(jìn)行二值化處理,以便更好地查找輪廓。
在查找輪廓之后,我們創(chuàng)建了一個(gè)新的圖像,并使用cv2.drawContours()函數(shù)將輪廓上色。在這個(gè)函數(shù)中,我們將輪廓、顏色和線寬作為參數(shù)傳遞。
最后,我們使用cv2.imshow()函數(shù)顯示結(jié)果。在此之后,我們等待用戶按下任意鍵,然后使用cv2.destroyAllWindows()函數(shù)關(guān)閉所有打開(kāi)的窗口。
通過(guò)上述代碼,我們可以快速以編程方式為輪廓上色。這個(gè)過(guò)程不僅使圖像更加美觀,也可以提高數(shù)字圖像處理的精度。