2015-04-14 4 views
-2

Я пытаюсь отследить маленькие белые точки на краю стола. В большинстве случаев это работает. Я использую функцию cornerHarris, как она используется в этом учебнике: http://docs.opencv.org/doc/tutorials/features2d/trackingmotion/harris_detector/harris_detector.html. Иногда у меня есть проблема: отражение света на краях создает интересную точку зрения, которую я не должен учитывать. Например: enter image description here Я ищу две ближайшие точки верхних углов, как вы можете видеть на правых краях, у меня есть точки (красные и зеленые точки) и на левых краях, легкий шум - это проблема (голубые и голубые точки).Найти интересное по изображению

Кто-нибудь знает способ сохранить только точки белого на моем снимке? Thankyou и простите за мой английский

ответ

1

На чисто изображении обработки, то я рекомендовал бы использовать какие-то формы художественного анализа (например, сравнивая гистограммы, скажу 8x8 вокруг вашей рассматриваемой в данный момент точки интереса к предварительно вычисленным одним из особенностей вы хотите.

Это означало бы, что вы сначала искали точки с углами Харриса, затем сравнивали функции, чтобы отклонить нежелательные (эвклидовое расстояние в 8x8 = 64D?). Это, конечно, предполагает наличие сильной функции (прочитайте «время, чтобы найти хороший») Он также предполагает, что вы уже знаете, что ваши особенности выглядят как раньше д.

Альтернатива еще на стороне зрения компьютера: используйте геометрию перераспределения ваших угловых точек в свою пользу: вам, вероятно, нужен искаженный прямоугольник, поэтому убедитесь, что вы его нашли! Неужели вы можете вычислить функцию, которая дает действительность последней точки объекта, предполагающей 3 других? (Расстояние пересечения двух линий, генерируемых другими тремя точками ...)

Типичный и самый крутой подход применит к нему RANSAC: попробуйте случайные (но не все!) Комбинации ваших очков и проверьте, какой из них лучше всего подходит для этой функции, и считайте их хорошими.

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

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

Я рекомендую геометрический тест фитинга, информацию о вашей системе, а не предположения о том, как выглядят отражения.

Действительно смешно введение в RANSAC: danielwedge.com/ransac/

Edit: Trusty фотомагазин знает, что я имею в виду: я выделил недействительного форм

Valid grid, photoshop says so

Invalid grid, logical, right ?

+0

Спасибо вам много для этого полного ответа! – Bidonjour

Смежные вопросы