Выбор наилучшего диапазона значений по кривой гистограммы

Сценарий:

Я пытаюсь отследить два разных цветных объекта. Вначале пользователю предлагается удерживать первый цветной объект (скажем, может быть КРАСНЫМ) в определенной позиции перед камерой (отмечен на экране прямоугольником) и нажимать любую клавишу, затем моя программа берет эту часть кадра (ROI) и проанализируйте цвет в нем, чтобы найти, какой цвет отслеживать. Аналогично и для второго объекта. Затем, как обычно, используйтеcv.inRange Приколы в цветовой плоскости HSV и отслеживание объекта.

Что сделано :

Я взял ROI объекта для отслеживания, преобразовал его в HSV и проверил гистограмму Hue. Я получил два случая, как показано ниже:

(здесь есть только один главный центральный пик. Но в некоторых случаях я получаю два таких пика: один больший пик с некоторым кластером пикселей вокруг него, и второй пик, меньший, чем первый, но значительный размер с небольшим кластером вокруг него. У меня нет образца этого изображения сейчас. Но это почти похоже на ниже (созданный в краске))

Вопрос:

How can I get best range of hue values from these histograms?

Под лучшим диапазоном я имею в виду, что около 80-90% пикселей в ROI лежат в этом диапазоне.

Или есть какой-то лучший способ, чтобы отслеживать разные цветные объекты?

Ответы на вопрос(1)

Ваш ответ на вопрос