อ่านบทความก่อนหน้านี้ได้จาก Tag OpenCV
ในการตรวจจับวัตถุจากการติดตามสีด้วย OpenCV กับ Python มีคำสั่งใช้งานดังนี้ครับ
cv2.inRange(hsv,ค่าสี HSV ช่วงเริ่มต้น , ค่าสี HSV ช่วงสิ้นสุด)
เป็นคำสั่งใช้ตรวจจับสีที่อยู่ในช่วงสี HSV ที่กำหนดครับ ในการกำหนดค่าสี HSV ช่วงเริ่มต้น - สิ้นสุด ส่วนใหญ่จะใช้โมดูล numpy เข้ามาช่วยเรื่องการเขียนช่วงข้อมูลสี HSV ครับ
cv2.bitwise_and(cv2.bitwise_and(src1, src2[, dst[, mask]]))
- src1 - ชุดข้อมูลแรก
- src2 - ชุดข้อมูลที่สอง
- dst - ชุดข้อมูลผลลัพธ์ที่มีขนาดและชนิดเดียวกันเป็นชุดข้อมูลสำหรับการป้อนค่า
- mask – เป็นเหมือนหน้ากากที่รับค่ามารวมด้วย
เรามาลองเขียนโปรแกรมตรวจจับช่วงสีเหลืองด้วย OpenCV กับ Python กันครับ
ผลลัพธ์
สามารถเลือกค่าสี HSV ได้ตามวิธีในเว็บนี้ครับ http://www.workwithcolor.com/red-color-hue-range-01.htm
ติดตามบทความต่อไปนะครับ
ขอบคุณครับ
ถ้าเราต้องการเป็นสีแดงเปลี่ยนตรงไหนบ้าง
ตอบลบlower_yellow = np.array([10,100,100], dtype=np.uint8)
ลบupper_yellow = np.array([30,255,255], dtype=np.uint8)
เปลี่ยนตรงชุดโค้ดด้านบน 2 บันทัดนี้นะครับ เปลี่ยนตรงค่าใน array ซึ่งค่าสีนั้นเป็นค่าที่แปลงมาจาก RGB มาเป็นค่าสีชนิด HSV ครับเป็นค่าช่วงสีระหว่าง lower และ upper นะครับคือช่วงระหว่าง 0- 256 นะครับเป็นค่าสีเฉพาะของชนิด HSV ครับ
ถ้าเราต้องการเป็นสีแดงเปลี่ยนตรงไหนบ้าง
ตอบลบถ้าต้องการเปลี่ยนเป็นสีแดงทำยังไง
ตอบลบ