Изобретатель Дэниел Вест (Daniel West) собрал универсальный LEGO-сортировщик: с помощью подключенного алгоритма компьютерного зрения он может распознать и отсортировать любую когда-либо созданную для конструктора деталь. Сам сортировщик состоит из более десяти тысяч LEGO-деталей, а скорость его работы — примерно полдетали в секунду. Подробности о работе устройства сообщает Engadget.
Из-за обилия самых разных деталей и простоты сборки конструктор LEGO используется для создания многих полезных устройств. Например, из LEGO уже делали принтер, который сканирует изображение и собирает его опять же из LEGO, а также кубики конструктора использовали для создания модульной микрофлюидной установки.
Разумеется, машины для сортировки деталей LEGO (очень полезное приспособление для тех, у кого очень много разных конструкторов в разобранном виде) делают из них же, а первое подобное устройство представили еще в 2012 году: для определения детали в нем используется открытый алгоритм для распознавания изображения, сравнивающий снимок одной детали с существующей у сортировщика базой данных.
Свой сортировщик инженер и изобретатель Дэниел Вест решил сделать чуть умнее и технологически современнее. Вся конструкция состоит из примерно десяти тысяч деталей, снабжена шестью LEGO-моторами и девятью сервоприводами. Детали загружаются на сортирующую ленту, которая затем выбрасывает их на трясущийся желоб: из-за тряски детали не попадают друг на друга и на следующий шаг сортировки попадают по одной.
На следующем шаге сортировки снимается видео деталей — его обрабатывает Raspberry Pi и отправляет далее для анализа на другой компьютер по беспроводной связи. На компьютере заснятые на видео детали анализируются с помощью алгоритма, в основе которого лежит сверточная нейросеть, обученная на трехмерных моделей всех существующих LEGO-деталей. Каждой детали присваивается вероятность принадлежности к какой-либо категории, после чего результат отправляется на сортировочную станцию устройства. Наконец, система, состоящая из нескольких двигающих ворот, направляет деталь в необходимую коробочку. Всего коробочек 18: это больше, чем количество возможных деталей, но для каждой коробочки можно выбрать набор попадающих в нее деталей. Одну деталь устройство может отсортировать примерно за две секунды.
Всего на разработку у Веста ушло около двух лет: инженер собрал не только сам сортировщик, но и обучил нейросеть на самостоятельно собранном датасете всех возможных деталей LEGO — всего в базу попало около 100 тысяч изображений. Больше подробностей об обучении алгоритма можно прочитать в его блоге.
Еще один очень полезный сортировщик — для разноцветных конфет вроде Skittles или M&M's: его работа — чуть проще из-за того, что сортировать объекты нужно только по цвету. А вот сделать его можно, например, распечатав на 3D-принтере: это в 2015 году продемонстрировал американский изобретатель Натан Петерсон.
Елизавета Ивтушок