Комментарии 8
Большое спасибо за статью. Я лишь поверхностно знаком с этой темой, но интересуюсь давно, как пользователь. Немного не хватает в заключении аналогичных цифр для других алгоритмов, чтобы было сразу понятно, насколько предлагаемый алгоритм лучше. Ну, например, сколько мс потребуется на те же 10000 точек при использовании широко известных в узких кругах Bundler/PMVS2/CMVS, там ведь тоже SIFT используется?
А своя компания, это, часом, не Agisoft?
А своя компания, это, часом, не Agisoft?
+1
Sift на том же железе -приблизительно 5-6 мс на 500 точек (связывание ) но с увеличением числа точек время растёт с квадратичной зависимостью. Детекцию sift выгоднее делать на графической карте.
Нет не agisoft. Они вроде видео не занимались…
Нет не agisoft. Они вроде видео не занимались…
0
Спасибо, действительно, я как-то совсем подзабыл, что SIFT на GPU обычно делается. Увидел теперь ваш продукт, надо было сразу на github зайти :)
0
Да вообщем-то продукт тут непричем, не о нем речь Сам алгоритм <моя прелесть> можно применить для очень многих приложений. За счёт схемы голосования у него очень низкий процент outliers (не знаю русского эквивалента) Самый простой вариант-стабилизация видео, или поиск подвижных объектов(non rigid) на сцене.
0
Большое спасибо за то, что поделились идеей! Мне эта тема очень интересна, как будет время, попробую детальнее разобраться в подходе.
Если не возражаете, небольшой субъективный совет по коду.
Если не возражаете, небольшой субъективный совет по коду.
Немного псевдокода.
Выражения вида:
Могут быть легко представлены в следующем виде (при этом сохраняется функциональность и, на мой взгляд, повышается читабельность):
for (...)
{
if (condition_1)
{
...
if (condition_2)
{
...
}
}
}
Могут быть легко представлены в следующем виде (при этом сохраняется функциональность и, на мой взгляд, повышается читабельность):
for (...)
{
if (!condition_1)
continue;
...
if (!condition_2)
continue;
...
}
0
Спасибо. Ну не люблю я «continue». Впрочем и «break» тоже :) Впрочем я не настаиваю…
Код набросан копипастой за день. Я его не вылизывал, а только набросал в качестве сопровождения к статье, хотя он вполне рабочий и достаточно быстрый.
Код набросан копипастой за день. Я его не вылизывал, а только набросал в качестве сопровождения к статье, хотя он вполне рабочий и достаточно быстрый.
0
Кстати там есть куски и похуже. Например кривая инициализация класса Detector или не очевидная упаковка индекса и счетчика голосов в одну переменную и тд
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Быстрая регистрация особых точек изображений с помощью голосования биграфа