Member 10850253 Ответов: 1

Обнаружение цвета с помощью opencv на всем изображении


I would like to detect color on an entire image, instead of just doing this in a specific place, so that the app can tell if the color exists on the entire image.
I am using openCV for android.
Thanks.


Что я уже пробовал:

В настоящее время у меня есть приложение, которое обнаруживает цвета с помощью openCV, но на ощупь, и мне нужно изменить это и обнаружить цвета на всем изображении с интервалом.
Спасибо.

David Crow

Ладно, и что? Есть ли у вас код, который нуждается в критике или пересмотре? Ваш код выдает ошибку, и вам нужна помощь в ее отслеживании? Быть конкретными.

Member 10850253

У меня нет никакой ошибки, я просто не знаю, как преобразовать мой код из ontouch во все изображение.

1 Ответов

Рейтинг:
1

JesalMithani

Unfortunately, OpenCV doesn't provide any sort of indication as to the color space in the IplImage structure, so if you blindly pick up an IplImage from somewhere there is just no way to know how it was encoded. Furthermore, no algorithm can definitively tell you if an image should be interpreted as HSV vs. RGB - it's all just a bunch of bytes to the machine (should this be HSV or RGB?). I recommend you wrap your IplImages in another struct (or even a C++ class with templates!) to help you keep track of this information. If you're really desperate and you're dealing only with a certain type of images (outdoor scenes, offices, faces, etc.) you could try computing some statistics on your images (e.g. build histogram statistics for natural RGB images and some for natural HSV images), and then try to classify your totally unknown image by comparing which color space your image is closer to.