Czy można użyć wykrycia określonego koloru (pomiędzy pewnym zakresem wartości rgb) w opencv w obrazie lub klatce wideo?Wykrywanie koloru opencv
Odpowiedz
Tak - ale jest to łatwiejsze w przestrzeni kolorów HSV. Tutorials here
Musisz zdefiniować próg w RGB i przerobić piksele w obrazie (miejmy nadzieję, że nie cały obraz, ale mniejszy obszar zainteresowania, być może ruchomy kształt pierwszego planu), który pasuje do deffinition. Coś podobnego do tego, co jest omawiane: here.
Rozumiem, że znasz kolor (lub kolory), które chcesz wykryć a priori.
Mam nadzieję, że to pomoże.
dzięki za poradę. to może zadziałać. to, co próbuję zrobić, to określić, który gracz bierze swój strzał w meczu snookera. Każdy gracz będzie miał inny kawałek kolorowej taśmy na cue snookera. taśma będzie miała niezwykły kolor. Próbuję wykryć ten niezwykły kolor, więc mogę powiedzieć, czy gracz 1 czy 2 jest przy stole? –
Mam zamiar zrobić, aby kolory taśmy były unikalne dla obrazu. więc stół do snookera będzie pasował do ekranu. będą zielone (oczywiście), a następnie kolory kulek. Ja wybiorę fiolet i jasnozielony. więc będę próg dla koloru fioletowego, jeśli nie pasuje, próg dla jasnozielonego. to określi, kto jest przy stole z nadzieją. czy to brzmi dla ciebie za ciebie –
Tak, lepiej przekonwertuj obraz na HSV i wypróbuj funkcję "InRangeS". Oto przykład do śledzenia dwóch różnych kolorach w tym samym czasie:
https://github.com/abidrahmank/OpenCV-Python/blob/master/Other_Examples/multi_color_two_object.py
Nadzieję, że to pomaga.
To jest dobre, ale nie sądzę, że pomaga z moim problemem. da ci trochę więcej wglądu. Próbuję ustalić, który z graczy bierze swój strzał w meczu snookera. Każdy gracz będzie miał inny kawałek kolorowej taśmy na cue snookera. taśma będzie miała niezwykły kolor. Próbuję wykryć ten niezwykły kolor, więc mogę powiedzieć, czy gracz 1 czy 2 jest przy stole? –
Czy jest jeszcze coś, co można wykorzystać do rozróżnienia, który gracz wykonuje zdjęcie? Dodaj swój komentarz powyżej do pytania. – karlphillip
W rzeczywistości jest tutaj przykład kodu wykorzystujący HSV do śledzenia obiektu w kolorze żółtym: http://www.aishack.in/2010/07/tracking-colored-objects-in-opencv/ –