korvintag 0 Жалоба Опубликовано August 31, 2018 Для системы управления складскими роботами необходимо определять погрешности монтажников при варке стеллажей. С этой целью для каждой ячейки делается фото, и сейчас живой человечек рисует в каждом таком фото желтый крестик (см. фото с красным кружочком и зеленым контуром). Пока ячеек было 2-3000, было терпимо. Сейчас планируется робосклад на 100000 ячеек, и решили делать распознавание образов (нужно определить край уголка). Образы могут быть сами разные, в т.ч. с перегороженным куском уголка (см. другие фото). Хотим использовать библиотеку OpenCV (emgucv для C#). Вопрос - в какую сторону копать? - анализ изображений (выбор отличительных признаков, морфология, поиск контуров, гистограммы) - или обнаружение объектов, в частности лиц - или еще что? Сгодятся ли для этой задачи контуры? Или, из-за игры теней и частичного перекрытия самим роботом, контуры использовать не получится? Еще чисто теоретически задача решаема для дневного освещения? Или только ночью (см. фото в аттаче)? Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
iskees 32 Жалоба Опубликовано August 31, 2018 Чистый "анализ изображения" тут мало пригоден, у целевого объекта нет особых отличительных признаков. Я вижу тут два варианта: "Классический" поиск объекта (hog, haar и т.п.) Глубокий сетки Работать должно и днем и ночью, ничего критичного тут нет. Но вообще хорошо бы при сборе этих ячеек красить уголки в яркий цвет и задача упросится в разы. 1 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
korvintag 0 Жалоба Опубликовано August 31, 2018 5 часов назад, iskees сказал: Чистый "анализ изображения" тут мало пригоден, у целевого объекта нет особых отличительных признаков. Я вижу тут два варианта: "Классический" поиск объекта (hog, haar и т.п.) Глубокий сетки Работать должно и днем и ночью, ничего критичного тут нет. Но вообще хорошо бы при сборе этих ячеек красить уголки в яркий цвет и задача упросится в разы. Спасибо! Буду пробовать! Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
idrua 8 Жалоба Опубликовано August 31, 2018 У меня вопросы есть. А чем отличается этот край уголка от остальных краев? Каким должен быть конечный результат? Нужен точно такой же круг нарисовать? Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
korvintag 0 Жалоба Опубликовано September 1, 2018 10 часов назад, idrua сказал: У меня вопросы есть. А чем отличается этот край уголка от остальных краев? Каким должен быть конечный результат? Нужен точно такой же круг нарисовать? Поиск нужно осуществлять только в части изображения (там где ожидается примерно увидеть край уголка ячейки). См. аттач ниже - я пометил зеленым прямоугольником. Конечный результат - маленький желтенький крестик - он на пересечении зеленых краешков уголка - см. самое первое фото в ветке. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
idrua 8 Жалоба Опубликовано September 1, 2018 3 часа назад, korvintag сказал: Поиск нужно осуществлять только в части изображения (там где ожидается примерно увидеть край уголка ячейки). См. аттач ниже - я пометил зеленым прямоугольником. Ответ не совсем понятен. Т.е. можно смело вырезать и удалить 50% изображения и оставить только центр? Ведь именно там "ожидается примерно увидеть край уголка ячейки". Или как? Чем отличается нужный край ячейки от остальных краев на фото? Он всегда под одним углом? Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
korvintag 0 Жалоба Опубликовано September 1, 2018 1 час назад, idrua сказал: Ответ не совсем понятен. Т.е. можно смело вырезать и удалить 50% изображения и оставить только центр? Ведь именно там "ожидается примерно увидеть край уголка ячейки". Или как? Чем отличается нужный край ячейки от остальных краев на фото? Он всегда под одним углом? Именно так - вырезать и удалить :-) Нужный край - это нижний левый край текущей ячейки. Т.е. он отличается логически, но не материалистически. Другие края тоже могут быть нижними левыми краями уже других ячеек. Потому и обрезка нужна. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
idrua 8 Жалоба Опубликовано September 1, 2018 8 часов назад, korvintag сказал: Именно так - вырезать и удалить :-) Нужный край - это нижний левый край текущей ячейки. Т.е. он отличается логически, но не материалистически. Другие края тоже могут быть нижними левыми краями уже других ячеек. Потому и обрезка нужна. Задача мне кажется интересной. Могу попробовать нейросетями выделить зону с нужной ячейкой. Но есть проблема с картинками. Для обучения потребуется 350 картинок(для начала). Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
korvintag 0 Жалоба Опубликовано September 3, 2018 В 01.09.2018 at 16:44, idrua сказал: Задача мне кажется интересной. Могу попробовать нейросетями выделить зону с нужной ячейкой. Но есть проблема с картинками. Для обучения потребуется 350 картинок(для начала). К сожалению, пока есть всего лишь 250. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
idrua 8 Жалоба Опубликовано September 3, 2018 44 минуты назад, korvintag сказал: К сожалению, пока есть всего лишь 250. Чем больше картинок, тем лучше. Попробовать могу и на 250, но это бейзлайн, однозначно. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
2expres 7 Жалоба Опубликовано September 4, 2018 В 31.08.2018 at 14:43, korvintag сказал: Для системы управления складскими роботами необходимо определять погрешности монтажников при варке стеллажей. С этой целью для каждой ячейки делается фото, и сейчас живой человечек рисует в каждом таком фото желтый крестик (см. фото с красным кружочком и зеленым контуром). Пока ячеек было 2-3000, было терпимо. Сейчас планируется робосклад на 100000 ячеек, и решили делать распознавание образов (нужно определить край уголка). Образы могут быть сами разные, в т.ч. с перегороженным куском уголка (см. другие фото). Хотим использовать библиотеку OpenCV (emgucv для C#). Вопрос - в какую сторону копать? - анализ изображений (выбор отличительных признаков, морфология, поиск контуров, гистограммы) - или обнаружение объектов, в частности лиц - или еще что? Сгодятся ли для этой задачи контуры? Или, из-за игры теней и частичного перекрытия самим роботом, контуры использовать не получится? Еще чисто теоретически задача решаема для дневного освещения? Или только ночью (см. фото в аттаче)? Альтернативное предложение не использовать нейронные сети. Выполнить на фотографии поиск прямых линий. Прямая линия не должна превышать некую длину N, равную длине полки уголка. Ищем пересекаются эти линии или они могут пересекаться не превышая длинны N. Производить дополнительную проверку найденных объектов. Для того чтобы найти на этом изображении линии нужна хорошая сегментация изображения, выделение краев. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
2expres 7 Жалоба Опубликовано September 4, 2018 Пример использования выделения краев (Соболя): Осталось найти вертикальные и горизонтальные линии, которых не так уж и много. Могу выполнить данную задачу под ключ. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах