Събиране на наземни данни и оценка за компютърно зрение

В момента започвам да разработвам приложение за компютърно зрение, което включва проследяване на хора. Искам да създам основни метаданни за видеоклипове, които ще бъдат записани в този проект. Метаданните вероятно ще трябва да бъдат етикетирани на ръка и ще се състоят главно от местоположението на хората в изображението. Бих искал да използвам метаданните, за да оценя ефективността на моите алгоритми.

Разбира се, бих могъл да създам инструмент за етикетиране, използвайки, напр. qt и/или opencv, но се чудех дали може би има някакъв дефакто стандарт за това. Попаднах на Viper, но изглежда мъртъв и не работи толкова лесно, колкото се надявах . Освен това не открих много.

Някой тук има ли препоръки кой софтуер / стандарт / метод да се използва както за етикетиране, така и за оценка? Основното ми предпочитание е да заложа на нещо, ориентирано към C++, но това не е трудно ограничение.

Поздрави и благодаря предварително! Том


person Goosebumps    schedule 16.05.2012    source източник
comment
Също така се интересувам от създаването на някои реални данни и някак се примирих, че просто направих основна програма. Имахте ли повече късмет с намирането на съществуващо приложение за етикетиране? Имам чувството, че наистина трябва да има наоколо...   -  person Chris    schedule 31.05.2012
comment
Не, за съжаление не съм. Все още се интересувам. Нямам нищо против да направя някакъв ad-hoc софтуер, но мисля, че би било по-полезно, ако имаше нещо по-стандартно. Намерихте ли вече нещо?   -  person Goosebumps    schedule 12.06.2012


Отговори (4)


Погледнах отново vatic и го накарах да работи. Това е онлайн инструмент за видео анотации, предназначен за краудсорсинг чрез търговска услуга и работи на Linux. Има обаче и офлайн режим. В този режим услугата, използвана за експлоатацията на този софтуер, не е необходима и софтуерът работи самостоятелно.

Инсталацията е доста подробно описана в приложения README файл. Това включва, наред с други, настройка на appache и mysql сървър, някои пакети на python, ffmpeg. Не е толкова трудно, ако следвате README. (Споменах, че имах някои проблеми с моето прокси, но това не беше свързано с този софтуерен пакет).

Можете да опитате онлайн демонстрацията. Изходът по подразбиране е като този:

0 302 113 319 183 0 1 0 0 "person"
0 300 112 318 182 1 1 0 1 "person"
0 298 111 318 182 2 1 0 1 "person"
0 296 110 318 181 3 1 0 1 "person"
0 294 110 318 181 4 1 0 1 "person"
0 292 109 318 180 5 1 0 1 "person"
0 290 108 318 180 6 1 0 1 "person"
0 288 108 318 179 7 1 0 1 "person"
0 286 107 317 179 8 1 0 1 "person"
0 284 106 317 178 9 1 0 1 "person"

Всеки ред съдържа 10+ колони, разделени с интервали. Дефиницията на тези колони е:

1   Track ID. All rows with the same ID belong to the same path.
2   xmin. The top left x-coordinate of the bounding box.
3   ymin. The top left y-coordinate of the bounding box.
4   xmax. The bottom right x-coordinate of the bounding box.
5   ymax. The bottom right y-coordinate of the bounding box.
6   frame. The frame that this annotation represents.
7   lost. If 1, the annotation is outside of the view screen.
8   occluded. If 1, the annotation is occluded.
9   generated. If 1, the annotation was automatically interpolated.
10  label. The label for this annotation, enclosed in quotation marks.
11+ attributes. Each column after this is an attribute.

Но също така може да предостави изход в xml, json, pickle, labelme и pascal voc

Така че, като цяло, това прави точно това, което исках, и също така е доста лесно за използване. Все пак се интересувам от други варианти!

person Goosebumps    schedule 14.06.2012
comment
Хей, аз съм авторът на VATIC. Чудесно е да чуя, че сте го намерили за полезно --- ако срещнете проблеми, не се колебайте да ми изпратите съобщение или да попитате тук. Винаги се радвам да помогна! - person carl; 19.06.2012

LabelMe е друг отворен инструмент за пояснения. Мисля, че е по-малко подходящо за моя конкретен случай, но все пак си струва да се спомене. Изглежда, че е ориентиран към етикетиране на петна.

person Goosebumps    schedule 14.06.2012
comment
Как се сравнява LabelMe с vatic? Изглежда, че позволява на потребителя да посочи ограничаващата форма, вместо да използва правоъгълници, както във vatic. Това ли е основната разлика или има други моменти? Какво го прави по-малко подходящ? Все още съм в процес на инсталиране на vatic, така че още не съм пробвал, но ще добавя LabelMe към моя списък. - person Chris; 15.06.2012
comment
Хей, аз съм авторът на VATIC и също работя в тясно сътрудничество с хората от LabelMe. Самият LabelMe е предназначен за изображения, но има и видео версия на LabelMe. Основната разлика между VATIC и LabelMe е, че LabelMe поддържа многоъгълни анотации и няма инфраструктура на Mechanical Turk. Въпреки това открих в потребителски проучвания, че етикетирането на полигони отнема повече време от етикетирането на ограничаващи кутии. Във всеки случай, ако имате проблеми с някое от двете, изпратете ми имейл и аз ще се радвам да отговоря на въпроси/да ви свържа с правилните хора. - person carl; 19.06.2012
comment
Всъщност имам въпрос. Тъй като заглавието на въпроса е събиране и оценка на GT данни, как бихте предложили да се оценят ограничителните полета? Попаднах на индекс на Jaccard, който изглежда подходящ. (може би трябва да отворя отделна тема за това...) - person Goosebumps; 21.06.2012
comment
@Goosebumps: Ако оценявате алгоритми за проследяване, тогава общите показатели са време до повреда (колко кадъра, преди тракерът да загуби обекта), процент на кутиите, които получава правилни, или крива на прецизно извикване. За да определят дали дадена прогнозирана кутия съответства на основната истина, изследователите на компютърното зрение обикновено използват 50% припокриване, което е основно индексът на Jaccard: ако индексът на Jaccard между прогнозата и основната истина е 0,5 или по-голям, тогава прогнозата е правилна, в противен случай грешна . - person carl; 11.07.2012
comment
Благодаря ти Карл, това е полезна информация. Все още не знаех конвенцията за процентно припокриване. Ще разгледам и другите показатели, които споменавате. - person Goosebumps; 19.07.2012

Това е проблем, с който се сблъскват всички практикуващи компютърно зрение. Ако сте сериозни за това, има компания, която го прави за вас чрез краудсорсинг. Не знам обаче дали да сложа линк към него в този сайт.

person killogre    schedule 31.05.2012
comment
Не че трябва да го направя от някого. Но анотацията за crowd source an dcomputer vision ме накара да намеря това: връзка. Което на пръв поглед изглежда като нещо използваемо. - person Goosebumps; 12.06.2012
comment
Това наистина изглежда доста полезно, ще трябва да се проучи допълнително. - person Chris; 12.06.2012
comment
Опитах се, но все още не съм успял поради някои проблеми с проксито. Ще ми е интересно да знам дали сте успели и ако сте успели, дали е възможно да използвате този софтуер без частта за привличане на хора. - person Goosebumps; 12.06.2012
comment
Благодаря ви, все още нямам право да гласувам за вашия отговор. Ще го направя, когато мога. - person Goosebumps; 14.06.2012

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

LabelMe е солидна опция, ако имате нужда от многоъгълно очертаване за вашата анотация. Работил съм с него и преди и той върши работата добре и има някои допълнителни страхотни функции, когато става въпрос за извличане на 3d характеристики. В допълнение към LabelMe направих и инструмент с отворен код, наречен LabelD. Ако все още търсите инструмент, с който да направите своята анотация, вижте го!

person sweppner    schedule 24.08.2016