2013-11-07 3 views
1

Я работаю над обнаружением кромок, я попробовал метод canny (функция matlab). но он только обнаруживает край на уровне пикселей, я ищу алгоритм/код обнаружения субпиксельного края с высокой точностью.Алгоритм детектора субпиксельного края

+0

Я использовал такой алгоритм давно для тестирования производительности некоторых изображений оборудования, он был прост и работал очень хорошо. Но он применяется только к вертикальным или горизонтальным краям. У вас есть аналогичное ограничение? –

+0

Не могли бы вы уточнить изображения, для которых вы хотите найти края? Поиск подпиксельных кромок подходит для линий и кривых прямо, если вы знаете правильное направление сканирования. Если вы просто ищете все ребра для произвольных кривых в любом произвольном изображении, то это другое дело. – Rethunk

ответ

3

Современные алгоритмы обнаружения края AFAIK работают с точностью до уровня пикселей (например, gPb).

Если вы хотите получить субпиксельную точность, вы можете применить этап пост-обработки к результатам на уровне пикселей, полученным canny или gPb.

Вы можете поместить параметрическую кривую в небольшие окрестности обнаруженных ребер, получая таким образом субпиксельную точность.

2

Проблема с запуском edge() на вашем исходном изображении заключается в том, что возвращаемое черно-белое изображение имеет тот же размер, что и исходное изображение. Можете ли вы увеличить размер вашего изображения с помощью функции imresize() и сделать это с помощью обнаружения края?

2

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

Испытывали ли вы все эти простые алгоритмы? Являются ли они подходящими для ваших целей?

Алгоритмы передискретизации и определения границ алгоритмов Matlab уже достаточно хорошо документированы.

+0

+1 Это прямое решение. В противном случае он становится сложным, например, подгонка кривой к краю и интерполяция. – chappjc

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