@peacemakerv
Разработка под Android

Идентификация нейросетью: возможно ли добавлять объект или распознавать одновременно?

Привет
Вводная часть вопроса, от "чайника" в нейросетях:
  1. Реализована система идентификации объектов, на котороых нет четких надписей, только мелкие артефакты, царапины, линии, точки
  2. Первый этап: поиск границ объекта в кадре - факт присутствия или отсутствия. Работает отлично, достоверность 0.8...0.95
  3. Второй этап: формирование векторов, характеризующих объект, обнаруженного на первом этапе., и их распознавание. В идеальных условиях (на фиксированном наборе кадров с камеры) - работает хорошо, с достоверностью 0.9....0.93


Но вопрос в том, что объектов, которые надо распознавать, около 400 штук, а одновременно в работе только 200. И один объект каждые сутки в произвольный момент времени - вынимается (на ремонт) и заменяется новым отремонтированным (из числа этих 400).
Т.е. все 400 вариантов объектов сейчас заранее достоверно неизвестны, их нет всех сразу в базе данных векторов.

Распознается объект путем сравнения близости векторов текущего с кадра и всех векторов в базе: самый близкий выбирается. Но тут близость векторов - очень большая, объекты сильно похожи, артефакты маленькие, и даже при пороге 0.94 - обнаруживается _несколько векторов_ от разных объектов.

Так же используется и статистика - решение принимается на основе 3-5 детекций по мажоритарности, сильно помогает снизить кол-во ошибок.

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

Но раз идентификация, оказывается, всегда получается вероятностной, то это значит, что ... ничего добавить и нельзя в базу на ходу, в процессе Инференса? Т.е. четко сделать вывод о том, что объект новый, точно не присутствует в базе.

Вопрос: что тут вообще в таких условиях можно сделать ? Или я что-то не понимаю с нейросетями фундаментально ...
Задача-то простая - идентифицировать объекты (все, любые возникающие перед камерой) и просто считать кол-во каждого объекта.

Или же тут в принципе невозможно добавлять и идентифицировать любой объект ОДНОВРЕМЕННО, и все они заранее должны быть в базе ?
  • Вопрос задан
  • 149 просмотров
Пригласить эксперта
Ответы на вопрос 1
dimonchik2013
@dimonchik2013
non progredi est regredi
задача поставлена хреново

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


тут после т.е. явно не только к этому предложению относится

Т.е. все 400 вариантов объектов сейчас заранее достоверно неизвестны, их нет всех сразу в базе данных векторов.

и тут ХПЧ

вообще - нейронки это всегда вероятности (ну кроме выводов ChatGPT который пока дикий, но учится)

попробуйте декомпозировать
и не ждите чудес
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы