Почему хороший результат на тестовых фото не равен надёжному контролю

Система визуального контроля может уверенно находить царапины на демонстрационном наборе и начать браковать нормальные детали после замены лампы, новой партии металла или небольшого сдвига камеры. Для малого производства это не академическая тонкость: каждая ложная отбраковка требует перепроверки, а пропущенный дефект может привести к переделке или возврату. Поэтому пилот нужно проверять не только на средней «точности», но и на устойчивости к заранее перечисленным изменениям условий.

Исследовательский набор MVTec AD 2 устроен именно для трудных сценариев промышленного поиска аномалий: восемь задач и более 8 000 изображений высокого разрешения. В нём есть нормальные и дефектные тестовые изображения при вариантах освещения, не обязательно представленных в обучении. Авторы другого исследования, AeBAD, отдельно показали, как изменение ракурса и света может повышать оценку аномальности у нормальных деталей и увеличивать число ложных срабатываний. Эти работы не дают готовой гарантии для конкретного российского цеха; они указывают, какой риск обязательно включить в локальный пилот.

Разделите три разных вопроса

Первый вопрос — виден ли дефект на снимке. С инженерной точки зрения алгоритм не восстановит надёжный признак там, где он теряется из-за блика, тени, слишком малого разрешения или неподходящего угла. Перед выбором нейросети зафиксируйте положение изделия, камеры и света, проверьте несколько реальных образцов и запишите допустимые колебания. Одновременно оставьте в наборе заведомо нормальные детали со сложной фактурой: именно они часто оказываются дорогими ложными тревогами.

Второй вопрос — может ли выбранный метод отличать брак от нормы. Если дефекты редки или их классы постоянно меняются, можно проверить поиск аномалий, который учится на нормальных образцах. Если классы брака стабильны и есть надёжная разметка, сравните классификатор или сегментацию. Для простого геометрического отклонения начните с правил обработки изображения. Это архитектурные варианты для сравнения, а не утверждение, что какая-либо одна модель победит на ваших изделиях.

Третий вопрос — выдержит ли решение реальные изменения. Отложите тестовые партии и смены, которые не попадали в настройку порога. Отдельно проверяйте изменения освещения, поставщика материала, положения детали, загрязнение оптики и ремонт оборудования. Не смешивайте почти одинаковые соседние кадры одной детали между обучающим и тестовым наборами: это делает проверку легче, чем будущую работу на линии.

Что измерять вместо одного процента

Нужна небольшая таблица по сценариям. Для каждого фиксируйте число нормальных и дефектных изделий, пропуски критичного брака, ложную отбраковку нормальных изделий, долю отправленных человеку кадров и время ответа. Порог следует выбирать по бизнес-цене ошибки, а не по максимальному красивому числу на общей диаграмме. Если цена пропуска дефекта высока, систему сначала используют как подсказку оператору, а не как автономный «годен/негоден».

Полезно провести теневой прогон: алгоритм выдаёт оценку, но существующий контроль продолжает принимать решение. Сопоставляйте два журнала по идентификатору изделия и партии. Проверяйте не только долю правильных решений, но и ситуации, в которых изображение вообще непригодно: засветка, грязь, отсутствующая деталь, обрыв камеры. Для таких случаев нужен явный статус «не удалось проверить», а не молчаливое отнесение к хорошим изделиям. Порог и версия модели должны быть связаны с конкретной конфигурацией камеры и света.

Для малого предприятия не обязательно сразу покупать отдельный кластер. Камеру и локальный компьютер можно поставить рядом с линией, хранить исходные изображения и метки на защищённом сервере, а результаты передавать в журнал контроля качества. Требования к CPU или GPU определяются после замера размера кадра, частоты линии и допустимой задержки. Интеграцию с MES или ERP лучше начинать с передачи идентификатора изделия, оценки и подтверждённого человеком исхода; автоматическая остановка линии — отдельный проект с более строгой валидацией и ответственностью.

Экономика пилота и лицензии данных

Модельный расчёт для одной смены: стоимость ложных тревог = число нормальных изделий × доля ложной отбраковки × время повторной проверки × стоимость минуты работы. К нему добавляются пропуски брака, простой, хранение кадров, разметка новых партий и обслуживание оптики. Это формула для ваших исходных данных, а не опубликованный результат MVTec. Даже небольшое изменение доли ложной отбраковки способно перечеркнуть выгоду от сокращения первичной ручной проверки, если объём выпуска велик.

Публичный MVTec AD 2 удобен для изучения методов и демонстрации того, как меняются результаты при другом свете. Однако у него лицензия CC BY-NC-SA 4.0; издатель прямо запрещает коммерческое использование данных без отдельного разрешения. Не загружайте его изображения в коммерческий продукт и не считайте бенчмарк собственной производственной валидацией. Для рабочего проекта собирайте снимки своих изделий на законном основании, определите права на них и ограничьте доступ к изображениям, если они раскрывают конструкцию или процесс.

Реалистичный следующий шаг — план испытаний на одной операции контроля. Выберите изделие и цену двух типов ошибки, снимите несколько партий с разными условиями, согласуйте экспертную разметку и заранее закрепите пороги остановки пилота. До обучения сложной модели проверьте простую обработку изображения и качество исходного кадра. Результат пилота должен отвечать на два вопроса: какой режим съёмки стабилен и какая доля ошибок остаётся на новых партиях. Если устойчивости нет, инвестируйте сначала в свет, крепление камеры и процедуру контроля — не в обещание очередной «универсальной» нейросети.