1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/jianjianjiao-Defect-Detection-with-tensorflow

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Это зеркальный репозиторий, синхронизируется ежедневно с исходного репозитория.
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Этот проект не будет поддерживаться. Он предназначен только для начального обучения. Модели в нём очень простые

Дипломный проект:

Основная цель — создать систему обнаружения дефектов на поверхности капсул, используя компьютерное зрение и технологии обработки изображений. Затем с помощью глубокого обучения обучить модель для достижения желаемого эффекта.

Текущая проблема: нейронная сеть плохо распознаёт дефекты, такие как отсутствие угла у капсулы или небольшие трещины. Это связано с недостаточной мощностью компьютера. Я ещё не пробовал использовать более глубокие модели, такие как VGG.

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

Классификация простых дефектов уже возможна:

Результаты работы находятся в папке FinalVer.

VideoPart.py: получение изображений с камеры и сохранение данных для обучения. Data_Trans.py: преобразование изображений и меток в поток данных формата TFRecord. capsule_inspection.py: построение модели, обучение и тестирование. Хотя в коде есть слой нормализации (BN), он не используется. Использование BN может повлиять на результаты.

Формат тренировочных данных: Я поместил изображения каждой категории в отдельную папку. Разделение основано на именах файлов (имена файлов создаются в VideoPart). При чтении используется модуль re для сопоставления имён файлов с соответствующими метками. Позже я подумал, что разделение по папкам было бы лучше, но мне было лень менять код.

Именование категорий:

  • Целая капсула: 0_xxxxx.jpg
  • Вдавленная капсула: 1_xxxxx.jpg
  • Отсутствует тело: 3_xxxxx.jpg
  • Отсутствует крышка: 4_xxxxx.jpg

Качество фотографий: Пример фотографии:

Каждая фотография сделана с помощью обычного USB-камеры с разрешением 1080p. Затем я обрезаю область размером 227x227 пикселей из верхнего левого угла. Фон сделан с использованием панели с подсветкой (LED), чтобы уменьшить влияние теней. Я не проверял, влияют ли тени на результат. Во время съёмки можно использовать небольшой свет для освещения цели и изменения условий освещения для улучшения данных.

Количество тренировочных данных: Для каждой категории дефектов я сделал 3000 фотографий. Сначала я использовал зеркальное отображение для увеличения данных, но эффект был незначительным. Возможно, изображения капсул не слишком сложные, и простое зеркальное отражение не решает проблему переобучения и недостаточной обобщающей способности. В итоге я вручную изменил положение капсул и сделал несколько дополнительных снимков. Всего для каждой категории сделано не более 500 снимков.

Количество итераций обучения: Всего было выполнено 400 итераций. Использовался метод адаптивного градиентного спуска. Кривая сходимости не была гладкой, но потери быстро уменьшились до значения около 0,2. Я не продолжил обучение, чтобы проверить, произошло ли переобучение. Однако результаты тестирования были очень хорошими, и система могла обнаруживать дефекты почти со 100% точностью, независимо от изменений освещения или положения капсул.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://gitlife.ru/oschina-mirror/jianjianjiao-Defect-Detection-with-tensorflow.git
git@gitlife.ru:oschina-mirror/jianjianjiao-Defect-Detection-with-tensorflow.git
oschina-mirror
jianjianjiao-Defect-Detection-with-tensorflow
jianjianjiao-Defect-Detection-with-tensorflow
master