У меня есть изображение, как показано на вставке. Я пробовал его в Adobe Photoshop, используя синий цвет, как показано на рисунке. Сэмплированное изображение показано в оттенках серого слева.
Я знаю, что openCV предоставляет аналогичный метод для образцов изображений, который является inRange()
функция. Как я могу узнать диапазон значений HSV, которые Adobe проверила для выборки моего изображения. Так как полученное изображение в значительной степени то, что я хочу, и я не могу сам определить диапазон, было бы очень полезно, если бы кто-то мог направить меня к тому же.
Вы можете конвертировать ваше изображение в HSV с cv::cvtColor(...)
здесь документация
Тогда соответственно Википедия синий цвет близок к 240 ° канала HUE вашего изображения.
Вы можете установить что-то вроде maxHue = 270
и minHue = 180
или другие значения для сканирования вашего изображения.
Может быть, вы должны установить minSaturation
и minValue
чтобы избежать черного и белого.
Чтобы найти лучшие диапазоны, вы можете связать их с некоторыми ползунками в графическом интерфейсе Qt и изменять их, пока не получите тот же результат, что и в фотошопе …
Других решений пока нет …