Создание ML-модели, которая определяет значения карт
Это более общий вопрос об обучении ML-модели обнаружению карт.
Карточки - детская игра, 4 разных цвета, цифры и символы. Мне не нужно определять цвет, только значение (или символ) карт.
Я попытался сфотографировать на свой iPhone каждую карту, использовал RectLabel, чтобы нарисовать прямоугольники вокруг символов в верхнем левом углу (карты также имеют перевернутый символ в нижнем правом углу, я не отмечал их как они будут скрыты во время обнаружения). Я обрезал изображения, чтобы была видна только карта, а не окружение.
Затем я загрузил свои изображения на app.roboflow.ai и позволил им творить чудеса (используя автоориентацию, изменение размера до 416x416, градации серого, автонастройку контраста, поворот, сдвиг, размытие и шум).
Это дало мне еще один набор изображений, которые я использовал для обучения моей модели с помощью CreateML от Apple.
Однако, когда я использую эту модель в своем приложении (я использую демо-версию Breakfast Finder от Apple), значения карт не обнаруживаются - ну, иногда это работает, но только на определенном расстоянии от телефона и метки либо вверх ногами, либо боком.
Полагаю, это из-за того, что мои изображения сделаны не так, как должны?
Есть какие-нибудь намеки на то, как мне нужно все это настроить, чтобы моя модель хорошо обучалась?
0 ответов
Я бы сделал ставку на то, что проблема:
Я обрезал изображения, чтобы была видна только карта, без окружения
Вы хотите, чтобы ваши обучающие изображения были максимально похожи на изображения, которые ваша модель будет видеть в дикой природе. Если он обучен только изображениям карточек без окружения, а затем вы показываете ему изображения карточек с вещами вокруг них, он не будет знать, что делать.
Этот пример подсчета очков UNO очень похож на вашу проблему и может дать некоторые идеи и рекомендации.