Я работаю с OpenCV по обнаружению рук.Но я борюсь, когда пытаюсь обводить контуры обмолота.findContour
всегда будет пытаться найти белую область как контур.
Так что в основном это работает в большинстве случаев, но иногда мое изображение обмолота выглядит так:
_, threshed = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY|cv2.THRESH_OTSU)
Итак, чтобы все заработало, мне просто нужно изменить тип порога cv2.THRESH_BINARY_INV
.
_, threshed = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY_INV|cv2.THRESH_OTSU)
И это хорошо работает.
Мой вопрос: как я могу определить, когда необходимо изменить порог?Нужно ли всегда находить контуры на обоих обмолоченных изображениях и сравнивать результат (в данном случае как?)?или есть способ, позволяющий замедлить, если контуры не будут полностью пропущены.
РЕДАКТИРОВАТЬ : есть способ быть на 100% уверенным, что контур выглядит как рука?
EDIT 2 : Итак, я забыл упомянуть, что я пытаюсь обнаружить кончики пальцев и дефекты, используя этот метод , поэтому мне нужны дефекты, которые с первым обмолоченным изображением я могу 'не могу найти их, потому что все изменилось.См. Синюю точку на Первом контуре изображение .
Спасибо.