2012-06-25 3 views
5

Я работаю над проектом классификации изображений, я извлек изогнутые линии из изображения с использованием обнаружения края и вам нужно классифицировать их на основе их кривизны.Классификация строк с opencv

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

curves

Спасибо за вашу помощь

+0

Я думаю, вы имеете в виду, что у левой есть хорошая кривизна? – cdhowie

+0

+1 интересный вопрос. – ArtemStorozhuk

+0

@cdhowie: you'r right :) – hamed

ответ

4

Я вижу несколько возможных мер по clasify:

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

Проверить ограничивающая размер коробки, меньшего размера лучше линии

Проверить выпуклость дефекты.

+0

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

+0

@hamed Я не понимаю, как аппроксимация может помочь вам. В левом случае кривая содержит много сегментов, то же самое, что и правая кривая ... – ArtemStorozhuk

+2

@ Астор вы правы, но я думаю о другом методе. сначала используя линейную аппроксимацию точек, а затем вычислить угол между каждой последовательной линией, по прямой линии этот угол для каждой последовательной линии составляет около 180, для хороших кривых этот угол должен быть между 160 и 180 и т. д. для плохих кривых – hamed

5

Если вы работаете с изображениями, вы можете узнать, содержат ли фигуры, подобные тем, которые вы указали, с «плавными» или «острыми» краями. Вы можете вычислить собственные значения и собственные векторы структурной матрицы (или матрицы тензора изображения). Для пикселей, принадлежащих прямому или гладкому краю, одно из собственных значений будет намного больше другого. В случае, если пиксель является угловым или изогнутым, оба собственных значения, вероятно, будут большими и похожими. Затем я предлагаю измерить эти функции на пикселях ваших фигур и обучить классификатор в соответствии с вашими потребностями.

Вы можете найти более подробную информацию о таких вещах, почти в другом месте, хотя я могу дать вам ссылку на мой собственный кандидат, посмотрите раздел 2.4.2 http://oa.upm.es/4837/1/MARCOS_NIETO_DONCEL.pdf

С наилучшими пожеланиями!

+0

матрица тензора изображения такая же, как матрица Гессиана? – Ruchir

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