Tentukan Nilai Ambang untuk Pengesanan Objek Hijau dalam Imej Asli dengan Python OpenCV
Dalam aplikasi penglihatan komputer, mengasingkan warna tertentu daripada imej boleh penting untuk pengesanan dan analisis objek. Dalam persekitaran semula jadi, mentakrifkan nilai ambang yang mengesan objek hijau dengan tepat menimbulkan cabaran.
Untuk menentukan nilai ambang pengesanan warna hijau, pendekatan biasa melibatkan penukaran imej kepada Hue, Saturation, Value (HSV) ruang warna, yang menawarkan cara yang lebih intuitif untuk menentukan julat warna.
Kaedah 1: Menggunakan Julat Warna HSV
Satu strategi ialah mengenal pasti julat HSV yang sepadan dengan warna hijau yang dikehendaki. Sebagai contoh, anda mungkin memilih julat seperti (40, 40, 40) ~ (70, 255, 255) dalam HSV untuk mentakrifkan objek hijau.
Kaedah 2: Menggunakan cv2.inRange()
Kaedah lain melibatkan penggunaan fungsi cv2.inRange() OpenCV. Fungsi ini mengambil dua hujah:
Contoh: Mengesan Bunga Matahari Hijau
Dalam contoh berikut, kami mengesan kelopak bunga matahari hijau dalam imej:
<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>
Dengan menukar imej kepada HSV dan menggunakan nilai ambang, kami boleh mengasingkan kawasan hijau dalam imej dengan berkesan sambil menukar kawasan bukan hijau kepada warna lain (mis., hitam).
Atas ialah kandungan terperinci Bagaimana untuk Menentukan Nilai Ambang untuk Pengesanan Objek Hijau dalam Imej Semula Jadi dengan Python OpenCV?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!