使用Python OpenCV 定義自然影像中綠色物體偵測的閾值
在電腦視覺應用中,可以從影像中分離出特定顏色對於物體檢測和分析至關重要。在自然環境中,定義準確檢測綠色物體的閾值是一個挑戰。
要定義綠色偵測的閾值,常見的方法是將影像轉換為色調、飽和度、值 (HSV)色彩空間,它提供了一種更直觀的方式來指定顏色範圍。
方法 1:使用 HSV 顏色範圍
一種策略是識別對應於的 HSV 範圍所需的綠色。例如,您可以選擇 HSV 中的 (40, 40, 40) ~ (70, 255, 255) 等範圍來定義綠色物件。
方法 2:使用 cv2.inRange()
另一種方法涉及使用 OpenCV 的 cv2.inRange() 函數。此函數採用兩個參數:
範例:偵測綠色向日葵
在以下範例中,我們偵測影像中的綠色向日葵花瓣:
<code class="python">import cv2 import numpy as np # Read image img = cv2.imread("sunflower.jpg") # Convert to HSV hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV) # Define HSV range for green (36, 25, 25) ~ (70, 255, 255) mask = cv2.inRange(hsv, (36, 25, 25), (70, 255, 255)) # Slice the green imask = mask > 0 green = np.zeros_like(img, np.uint8) green[imask] = img[imask] # Save cv2.imwrite("green.png", green)</code>
透過將影像轉換為HSV 並套用閾值,我們可以有效地隔離影像中的綠色區域,同時將非綠色區域轉換為另一種顏色(例如黑色)。
以上是如何使用 Python OpenCV 定義自然影像中綠色物體偵測的閾值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!