nkbtech
144 subscribers
27 photos
3 videos
22 links
Блог компании НКБ Технологии о разработках в компьютерном зрении.
https://nkbtech.ru/#about

для связи:
@alex_physic (CEO) // @ilbash (CTO)
Download Telegram
Вышел новый выпуск нашего Reading Club НКБТех — на этот раз про Self-Supervised Learning (SSL) в компьютерном зрении.
SSL — один из самых практичных способов выжать максимум из данных, когда разметки мало/она дорогая: сначала учимся на “сыром” массиве изображений без ручных меток, а потом дообучаемся под конкретную задачу.

В видео обсуждаем:

• почему supervised learning часто упирается в разметку и переносимость;
• как выглядит типичный SSL pipeline;
• эволюцию подходов: context-based → contrastive → clustering/self-distillation;
• ключевые методы: DeepCluster, SimCLR, BYOL, DINO, SwAV;
• и сравнение методов + список литературы.

Таймкоды внутри — можно смотреть точечно по интересующим блокам.

Запись:
VK
YouTube
RUTUBE
🔥10🤮2💩2
От лица компании поздравляем с Праздником Великой Победы!

Нашим предкам, ветеранам и труженикам тыла, пришлось оставить мирную жизнь и ценой огромных жертв отстоять свободу и независимость нашей Родины. Без их Подвига не было бы нас!

Мы с благодарностью вспоминаем всех, кто внёс свой вклад в Великую Победу, и берём пример с поколения Победителей. Наш долг — бережно хранить и передавать память о них и соответствовать статусу потомков.

Мы помним! Мы гордимся!
12🔥3💔1
13–15 мая участвуем в форуме «Территория НДТ» — площадке про технологии неразрушающего контроля в конгресс центре Бета Измайлово. Будем на стенде НКБТех, заходите познакомиться и обсудить задачи.

У нас сейчас два направления НДТ-проектов, которые показываем и рассказываем на форуме:

1) Анализ рентгеновских снимков транспорта
Помогаем автоматизировать контроль состава транспорта/грузов и одновременно оценивать качество самих снимков (чтобы выявлять проблемы с данными ещё на этапе получения).

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

Отдельно по итогам общения на форуме заметили высокий спрос на автоматизированный контроль сварных швов с использованием данных от разных датчиков: ультразвуковые антенные решётки, лазерные сканеры, классические камеры и рентген. Интересно, что на площадке есть отечественные решения по роботизированному снятию данных (кольцевые и линейные манипуляторы с датчиками), но запрос на “следующий слой” — интеллектуальную интерпретацию и объединение сенсоров — звучит всё чаще.

К посту прикрепляем фото нашего стенда и несколько примеров роботизированных систем съёма данных по сварному шву (пока без нейросетей) — чтобы было видно, как выглядит «железная» часть задачи.
🔥211
Вышел новый выпуск Reading Club НКБТех — разбор статьи GhostNetV3.

GhostNet — семейство “лёгких” моделей, заточенных под эффективность (скорость/память) без сильной просадки по качеству. В этом видео по шагам разбираем, как архитектура развивалась от GhostNetV1 к V2 и V3, и какие инженерные решения за этим стоят.

Внутри:

• GhostModule (V1) — базовая идея “дешёвых” признаков;
• DFC Attention (V2) и сравнение с обычным self-attention;
• почему авторы опираются на depth-wise свёртки;
• ключевые идеи GhostNetV3, включая re-parameterization;
• результаты, а также нюансы обучения: knowledge distillation, learning schedule, data augmentation.

Запись:
VK
YouTube
RUTUBE
🔥82
Всем привет!
Новый выпуск Reading Club НКБТех — про Bounding Box Regression (BBR), то есть регрессию ограничивающих рамок в задаче детекции объектов.
Качество детектора зависит не только от классификации, но и от того, насколько точно модель “подгоняет” бокс под объект — и здесь критично, какую loss-функцию вы используете.

В видео обсуждаем:

• типичную структуру one-stage детектора и где в ней живёт BBR;
• что такое AABB и почему ориентация/параметризация бокса важны;
• почему MSE/MAE часто дают не то поведение, которое хочется;
• семейство IoU-based loss'ов: в чём сила и где ограничения;
• разбор GIoU и DIoU и их практические минусы/плюсы.

Оставляйте комментарии и пожелания по статьям и направлениям, которые было бы интересно разобрать!

Смотреть выпуск:
VK
YouTube
RUTUBE
4🔥3
Всем привет!
Опубликовали нашу первую статью на VC — запускаем цикл материалов про реальные кейсы из компьютерного зрения и “железа” в проде.

Стартуем с истории проекта, который мы внутри называем «спутник для двора»: как из 12 камер под крышами собрать единый bird-eye-view (почти как спутниковый снимок, но в высоком разрешении и обновляемый в реальном времени) и научить систему помогать с парковкой.

В статье — максимально прикладные детали:
- калибровка и компенсация “рыбьего глаза”;
- репроекция на плоскость земли;
- склейка панорамы и первые инсайты из таймлапсов;
- две версии решения: классификация парковочных мест и детекция машин (YOLOv8 + OBB);
- как упаковали всё в Docker и отдали пользователям через Telegram-бота.

Ссылка на статью: vc.ru

Если будет интересно — напишите в комментариях/в личку, какие части разобрать глубже (например, склейка, устойчивость к погоде/ночи, метрики и эксплуатация).
🔥94
Всем привет! Рассказали о своем опыте работы с VLM в школе deepschool.ru.

Кстати, на новом курсе CV Rocket будем читать лекции про визуальный трекинг объектов. Записывайтесь на курс, если интересно углубить свои знания!
🔥6
Forwarded from DeepSchool
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥72
Forwarded from DeepSchool
⚫️Как выжать максимум из модели детекции на видео: 7 идей, которые вы еще не пробовали.

Взять датасет побольше и дообучить модель? Да, но в этой статье расскажем об альтернативных вариантах улучшения модели.
Трекинг объектов — это набор алгоритмов, которые связывают одни и те же объекты на соседних кадрах видео. Трекинг работает в тесной связке с детектором, поэтому качество первого напрямую зависит от точности второго. Ошибки детектора усложняют работу трекинга, но хороший трекер может справиться даже с неидеальными детекциями.

Шаг 0. Анализ ошибок модели детекции.
Между кадрами моргает детектор? Много кратковременных ложных предсказаний? Вам однозначно нужен алгоритм фильтрации, каким может выступить трекинг. Для быстрого старта подойдет библиотека BoxMOT. В ней реализованы алгоритмы, помогающие стабилизировать слабые детекции.

Итак, связали детектор и трекер. Но все равно не работает.

Шаг 1. Локализация проблемных мест.
Отрисуйте предсказания.
Объекта нет среди детекций → проблема, скорее всего, в детекторе.
Детекция есть, но трек обрывается → смотрим, как трекер работает со временной потерей объекта.
Объект остаётся в кадре, но получает другой ID → проблема в ассоциации.
Ошибки появляются при окклюзии → проверяем, насколько хорошо трекер использует информацию о движении и внешнем виде объекта.

Этот шаг помогает понять, что именно следует исправить в общем пайплайне.

Шаг 2. Проверка confidence детектора.
При окклюзии уверенность детектора может упасть, например, с 0.9 до 0.3. Если использовать порог уверенности детекции 0.5, такая детекция исчезнет ещё до трекера. Объект пропадёт, вместе с ним может оборваться и трек.
ВoostTrack предлагает простой приём: сначала сопоставлять уверенные детекции, затем использовать менее уверенные боксы для восстановления существующих треков.
Поэтому при частых пропусках объектов нужно проверить, что происходит с детекциями с низким confidence, и настроить порог.

При низком пороге могут появиться «ложняки». Да, но они кратковременные.

Шаг 3. Настройка инициализации треков.
Можно отрисовывать трек не сразу, а при нескольких подряд идущих детекциях. Этот параметр обычно называется min_hits, измеряется в кадрах. Обычно 3 кадров в видео 30 FPS хватает. Но учитывайте скорость объектов, вращение камеры, FPS видео для своей задачи. Также подредактируйте код, чтобы не отрисовывать те треки, которые пока не прошли эту проверку.

Шаг 4. Борьба с окклюзией.
Объект может исчезнуть на несколько кадров из-за окклюзии, а потом снова появиться. Если за это время трекер уже удалил старый трек, старый объект получит новый ID.
Здесь помогает настройка track_buffer: некоторое время трекер продолжает хранить информацию о потерянном объекте и пытается связать его с новой детекцией.
Если окклюзии в видео длинные, этот параметр стоит проверить в первую очередь. Но увеличивать его бесконечно нельзя: слишком большой буфер повышает риск вернуть старый ID новому объекту.

Шаг 5. Компенсация движения камеры
Если камера поворачивается или перемещается, координаты всех объектов меняются одновременно при условии, что нет дисторсии. Для трекера это может выглядеть как движение самих объектов.
Компенсация движения камеры (Camera Motion Compensation) позволяет оценить, как сдвинулось изображение целиком, и учитывать это при трекинге объектов. Особенно полезно для спортивных трансляций, PTZ-камер и видео с дронов.
Из готовых решений можно взять идею из BoT-SORT: компенсировать движение камеры перед ассоциацией, а затем использовать модель движения и ReID.

Шаг 6. Выбор алгоритма трекинга.
Алгоритмы отличаются друг от друга применимостью к конкретной задаче.
ByteTrack — базовый вариант, особенно если проблема связана с потерей слабых детекций.
BoT-SORT можно попробовать при движении камеры и частых пересечениях объектов.
OC-SORT полезен для сцен с резкими изменениями направления движения.
Поэтому здесь нужен эксперимент — прогнать один и тот же детектор через несколько трекеров и сравнить не только общий score, но и конкретные ошибки (fragmentation и ID switch).
Не бойтесь экспериментировать и сочетать сильные стороны каждого алгоритма в своём пайплайне 💪🏻

Шаг 7. Что такое уверенность детектора?
Представим bbox с confidence 0.3. Сам по себе это слабый сигнал.
Но если детекция появилась именно там, где мы ожидаем увидеть существующий трек, и совпадает с ним по положению, размеру и движению, её уже будет нелогично выбрасывать.
В BoostTrack используется похожая идея: оценка детекции корректируется с учётом её соответствия существующему треку.
То есть к вопросу: «Насколько уверен детектор?» добавляем: «Насколько эта детекция соответствует тому, что мы ожидаем увидеть?»

Итого: без дообучения модели пофиксили FP и стабилизировали детекции.
На курсе CV Rocket также разберем, как увеличить TP с помощью трекера и другие адаптации под ваши задачи. Присоединяйтесь до 15 сентября со скидкой 20%!

Авторы: Башаров Илья, Холодов Семен (НКБТех)
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥61