Сбор достоверных данных и оценка для компьютерного зрения

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

Конечно, я мог бы создать инструмент для маркировки, используя, например. qt и/или opencv, но мне было интересно, есть ли для этого какой-то стандарт де-факто. Я наткнулся на Viper, но он кажется мертвым и работает не так просто, как я надеялся. . Кроме этого, я не нашел много.

Есть ли у кого-нибудь здесь рекомендации относительно того, какое программное обеспечение / стандарт / метод использовать как для маркировки, так и для оценки? Я предпочитаю что-то, ориентированное на С++, но это не является жестким ограничением.

С уважением и заранее спасибо! Том


person Goosebumps    schedule 16.05.2012    source источник
comment
Я также заинтересован в создании некоторых достоверных данных и как бы смирился с тем, что сам создал базовую программу. Удалось ли вам еще найти существующее приложение для маркировки? У меня такое чувство, что действительно должны быть некоторые вокруг...   -  person Chris    schedule 31.05.2012
comment
Нет, к сожалению, нет. Хотя мне все равно интересно. Я не против сделать какое-нибудь специальное программное обеспечение, но я думаю, что было бы полезнее, если бы было что-то более стандартное. Вы уже нашли что-нибудь?   -  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 — еще один открытый инструмент для создания аннотаций. Я думаю, что это менее подходит для моего конкретного случая, но все же стоит упомянуть. Кажется, он ориентирован на маркировку BLOB-объектов.

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
@ Мурашки по коже: если вы оцениваете алгоритмы отслеживания, то распространенными показателями являются время до отказа (сколько кадров до того, как трекер потеряет объект), процент боксов, которые он получает правильно, или кривая точного отзыва. Чтобы определить, соответствует ли предсказанный блок истинному, исследователи компьютерного зрения обычно используют 50-процентное перекрытие, которое в основном представляет собой индекс Жаккара: если индекс Жаккара между предсказанием и истинностью основания составляет 0,5 или больше, то предсказание правильное, в противном случае — ошибочное. . - person carl; 11.07.2012
comment
Спасибо, Карл, полезная информация. Я еще не знал соглашения о процентном перекрытии. Я также рассмотрю другие показатели, которые вы упомянули. - person Goosebumps; 19.07.2012

Это проблема, с которой сталкиваются все практикующие компьютерное зрение. Если вы настроены серьезно, есть компания, которая сделает это за вас с помощью краудсорсинга. Однако я не знаю, стоит ли мне размещать ссылку на него на этом сайте.

person killogre    schedule 31.05.2012
comment
Дело не в том, что мне нужно, чтобы это кто-то сделал. Но краудсорсинг аннотации 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