singlepost

Распознование метки на изображении << На главную или назад  

грабёж камеры есть, нужны идеи о нахождении положения предмета (например красного крестика) с изображения (алгоритм).

идеи? ссылки? ))

70 ответов в теме “Распознование метки на изображении”

  1. 16
    Константин Смотритель ответил:

    Смотря как и чем перечислять. С DirectShow проблем не возникает.

  2. 15
    Владислав Кабак ответил:

    ВСЁ! Сделал. Работает каряво, но работает, т.е. спор выиграл)))

    Работает очень каряво, поэтому лучше не буду выкладывать.

    Кстати, по-ходу была проблема: при выборе устройства для capture почему-то не получалось достать веб-камеру, т.к. на 1-м месте (№0) стоял тв-тюнер. По MSDN номера могут быть от 0 до 9, но перебор ничего не дал. Только отключив от компа тв-тюнер всё решилось. ХЗ. Мистика)

  3. 14
    Константин Смотритель ответил:

    Так KLT и на ассемблер переписать можно. Всё проще, чем с нуля.

  4. 13
    Евгений Безымянников ответил:

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

  5. 12
    Константин Смотритель ответил:

    Не, вектора позволят даже без метки работать. Если, конечно, не будешь тупить и "организовывать всё на ассемблере". Это глупо, дружище.

    Лучше не тупи со своим "ассемблером", а возьми библиотеку KLT Оксфорда. Ну или примитивную OpenCV =)

    P.S. Найти программу и выложить сюда ссылку не забываем.

  6. 11
    Владислав Кабак ответил:

    не, вектора движений это сложновато для просто выиграша в спор))))))

  7. 10
    Евгений Безымянников ответил:

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

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

    в идеале надо находить вектора движения как про простом кодировании mpeg

  8. 9
    Константин Смотритель ответил:

    Есть в очень узких областях…и то от лени. В данном случае, боюсь, если бы ты умел гуглить – нашёл бы много исходников, в том числе и на ассемблере. Попробуй, поисковики не зря-таки прикрутили. Как называется эта байда – я тебе уже сказал, читай новое название темы.

    P.S. А, ну по поводу программ – есть, название не помню, но позволяет управлять мышью… вроде даже без метки, разработана несколько лет назад. начнёшь гуглить в этом направлении – сразу натолкнёшься. Скинуть ссылку сюда не забудь!!!

  9. 8
    Владислав Кабак ответил:

    прикол просто в том, что я на спор должен за неделю ркализовать снятие движения пальца(с точкой) с обычной веб-камеры и спроецировать таким образом это на движение указателя мышки…

    думаю теперь может зря спорил? вроде-бы не так сложно, но геморрою-то))))

    может есть такия программы, чтоб я зря не писал? )))

  10. 7
    Константин Смотритель ответил:

    1) Да мне пофиг, на каком языке. Хоть на 1С. Я, благо, на дохрена языках программировал.
    2) А это и называется компарирование… ну и смотрю, тебе объяснили. Даже более того =)

  11. 6
    Константин Смотритель ответил:

    Крестик тебе там даже не потребуется при стабильности освещения и правильно выбраном материале метки (яркий, насыщеный цвет).

  12. 5
    Владислав Кабак ответил:

    "оставляем только красный канал". ТОЧНО!!! Как я сам не сообразил)) Спасибо. Попробую сделать

  13. 4
    Евгений Безымянников ответил:

    крестик сплошной? шум есть? надо искать близкие пикселы, к тому же у крестика показатель красного будет выше соседних пикселей. т.е. смело режем ПИ компоненты цветовые и оставляем только красный канал. потом соответственно надо смотреть картинку.
    обычно при распознавании номеров нам надо прогнать алгоритм нормальзации картинки… т.е. мы откинем младший бит и уберем шумы тем самым.
    из 7 бит мы находим среднеорифметическое попиксельно – это у нас граница. делаем гамма коррекцию по этой точке с коэф 1,1-1,3. получаеться картинка более менее красивая. теперь тупо ищем оласти с разницей в значениях не более Xили прогоняем фильтр высокочастотный что бы границы найти. все области с разницей в Ч мы объединяем в однородные области и уже их разбираем на вектора

  14. 3
    Владислав Кабак ответил:

    1) 2Константин Смотритель^ интерес именно на asm'e

    2) А как угадать, к примеру красный цвет (оттенок), из 0×00FFFFFF вариантов… и ведь он будет меняцца от яркости… освещения…

  15. 2
    Константин Смотритель ответил:

    [убрал asm из названия темы]
    [называйте темы корректнее!!!]

  16. 1
    Константин Смотритель ответил:

    Если метка яркая, можно обойтись компарированием и оценкой площади. Причём обычно берут цветные метки, которые легко выделяются по яркостным каналам.

    Нужна помощь в разработке – пиши в личку.

Клуб программистов работает уже ой-ой-ой сколько, а если поточнее, то с 2007 года.