Возможности современных когнитивных систем все еще ограничены, но с течением времени они развиваются и становятся все совершеннее. Используют их уже во многих сферах, включая сельское хозяйство. Ярким примером этому является система, созданная японским инженером. Примерно год назад японец по имени Макото Койке решил помочь своим родителям, которые занимаются выращиванием огурцов. В Японии крупные и прямые огурцы считаются товаром экстра-класса, поэтому все фермеры стремятся выращивать эти овощи именно такой формы.
Сделать это довольно тяжело, и Койке убедился в этом на своем опыте. «Каждый огурец отличается от других — все они бывают разной формы, качества и свежести», — говорит инженер. Для того, чтобы конечный продукт попал в магазины, овощи необходимо сортировать. В Японии насчитывается девять классов огурцов. Классификация производится согласно форме, размеру и ряду других свойств. Чем выше класс, тем дороже огурец.
Классы огурцов согласно японским стандартам
Сортировка — дело сложное. И хотя в Японии есть автоматические сортировочные машины, они не слишком популярны, поскольку довольно дороги, а работают не идеально. Инженер решил помочь родителям добиться идеальной автоматической сортировки овощей, создав собственный сортировщик. Для того, чтобы повысить качество и эффективность работы такой системы, он решил привлечь к сортировке нейронные сети. Сейчас они способны распознавать и классифицировать изображения с высокой степенью точности, превосходя возможности человека. Это касается как скорости, так и точности работы.
Заботливый сын принял решение взять за основу своего огуречно-сортировочного алгоритма open-source разработку Google, TensorFlow. Год назад компания как раз открыла исходный код этого продукта для всех. TensorFlow позволяет разработчику использовать готовый код и возможности нейронных сетей, а не создавать все с нуля. Для создания собственного проекта необходимо скачать код, прочитать инструкцию, и можно начинать работу.
Кроме кода, нужно еще и аппаратное обеспечение. Японец решил использовать Arduino Micro и Raspberry Pi 3. Электроника использовалась в качестве основного контроллера для работы с камерой и отсылки изображений в Google Cloud, где происходил анализ информации. Также платы управляют сервоприводами сортировщика.
На первом этапе инженер обучил систему распознавать изображения и определять, изображен на фотографии огурец или нечто иное. После проверки работоспособности системы был создан более сложный алгоритм, который уже классифицировал огурцы согласно стандартам, принятым в Японии.
После этого был разработан конвейер и сортировочная система. Камера фотографировала проходящие по конвейеру огурцы, нейронная сеть классифицировала их. Оставалось лишь распределять огурцы по ящикам, исходя из класса каждого овоща. Для этого Койке создал роботизированную руку, которая и занималась «физической работой».
Для того, чтобы получить фотографии огурцов разных классов, отсортированных его матерью, японец потратил около трех месяцев. Ему пришлось сделать и загрузить в систему более 7000 снимков огурцов. И этого оказалось недостаточно. Когда проводился тест лишь с изображениями, система работала с точностью в 95%. Но когда дело дошло до фотографирования реальных огурцов, точность упала до 70%. Как оказалось, проблема заключается в том, что базы из нескольких тысяч фотографий недостаточно для качественного обучения системы.
Вторая проблема заключается в том, что система потребляет много ресурсов, времени и энергии. Текущий сортировщик — это обычный десктопный ПК с Windows, который используется для тренировки нейронной сети. И хотя компьютер преобразует полученные фотокамерами снимки в изображения с разрешением 80*80 пикселей, обучение системы на их основе занимает 2-3 дня. Дело в том, что требуется несколько тысяч таких снимков. А поскольку фотографии имеют низкое разрешение, тот сортировщик оперирует такими свойствами, как форма, длина и уровень погрешности. Цвет, текстура, царапины — все это проходит незамеченным и на данном этапе не может быть использовано. Если увеличить разрешение фотографий, это увеличит точность работы системы. Но одновременно увеличится и время, которое требуется на обучение нейронной сети.
Свою проблему японец планирует решить при помощи еще одного сервиса Google. Cейчас корпорация предлагает по низкой цене облачную платформу Cloud Machine Learning (Cloud ML). Здесь задействованы тысячи мощных серверов. Они эффективно обрабатывают информацию и помогают обучать нейронную систему на основе TensorFlow.
Сейчас Макото Койке планирует использовать Google ML в своих целях. «Я могу использовать сервис для создания системы обучения на основе гораздо более качественных снимков. Также я могу использовать разные конфигурации, параметры и алгоритмы нейронной системы, что может помочь найти вариант, при котором система будет точнее всего».
Пока что результаты работы Койке с Google ML недоступны, он продолжает эксперименты. Но не исключено, что уже через несколько месяцев огуречная ферма родителей японца будет поставлять овощи, классифицированные исключительно точно. Японцы все-таки перфекционисты.
Комментарии (36)
ARD8S
01.09.2016 22:12О, post/280000/.
Ну и таки да, японцы такие японцы.
«девять классов огурцов», квадратные арбузы…
Им этого гибрида из нейросети, малины и ардуины нужно каппой назвать.
darkfrei
02.09.2016 00:23+6Прямые и круглые огурцы — те, которые скатываются по немного наклонённой поверхности. А вот кривые не могут и едут дальше.
Theo_from_Sed
02.09.2016 01:07+2Напишите фермеру, что достаточно подобрать угол наклона плоскости, и нафиг не надо заморачиваться с ИИ. :) Авось он не сделает себе сепукку после этого…
DrZlodberg
02.09.2016 08:35+3Под 9 то классов? Ну это уже не говоря о том, что (судя по проблемам с точностью) там должна учитываться не только форма.
Но вообще да, для более простого случая решение очень грамотное.
Кстати до ИИ (и японцев) мне, видимо далеко. По картинке с классами очевидной разницы, например, между BL-1, BL-10 и M-1, M-10,
BM-3 и 2L-9 я не вижу. Вспоминается байка про 50оттенков сероготипов снега, которые различают эскимосы.
Vlad_Hm
02.09.2016 10:11Не пойдёт.
Огурцы худшего класса, судя по приведённым фотографиям, могут катиться по наклонной плоскости много лучше, чем более высокого класса.
Siper
02.09.2016 07:12+2Что будет, если помидор положить?
CrazyRoot
02.09.2016 09:16Либо зависнет, либо отбракует.
roboq6
02.09.2016 10:55+2А если зелёные бананы?
RomanArzumanyan
02.09.2016 11:21Фактура не та (банан значительно более матовый), пупырок нет. Вообще, может проще было бы горизонтальным лучом освещать овощ и находить длину отрезка пересечения?
roboq6
02.09.2016 13:13+3Фактура не та (банан значительно более матовый), пупырок нет.
А как тогда насчёт китайской горькой тыквы?
RomanArzumanyan
02.09.2016 14:19А ничего — я бы и не понял, что это тыква, если бы вы не сказали. Очень похоже на огурец.
Delics
02.09.2016 14:08Ваше решение кажется более продуманным.
Действительно, данную задачу надо просто разбить на несколько частей. А не загружать всё, что попадется под руку в нейронную сеть, надеясь, что получится что-то хорошее (с таким подходом — не получится).
Подзадачи:
1. Просветить огурец, получить ч/б контур, по нему легко будет определить размеры и тип формы
2. Анализировать цвет огурца
3. Анализировать фактуру кожицы
Delics
02.09.2016 09:39+1Что-то скорость обработки одного огурца не впечатлила.
Да и 70% точность обработки явно маловата (получается, 1/3 огурцов неправильно сортируется).
Что вообще такого в этой разработке, что именно она попала в международные СМИ? Нечто подобное многие начинающие изобретатели делают.
websurfer
02.09.2016 12:16А что, доработает, прибавит рук, увеличит скорость и вперёд — огурец сортируй, деньги получай — продавай сортировщик.
ru_vlad
02.09.2016 16:22Вместо фотографий лучше сделать контрастную фотокамеру (белая траспортная лента ) и использовать сенсор и осветитель от планшетного сканера.
LiguidCool
02.09.2016 21:46Меня смущает что нейронка плавает где-то в облаке. Инет упал и производство встало.
Да и цена вопроса — возможно дешевле нанять пачку китайце, их в японии дофига.marsden
05.09.2016 14:46Это разовый метод. Тут, видимо, взгляд обращен в будущее — торговать технологию, а помощь маме — просто предлог
Sleuthhound
02.09.2016 22:37-1Огурцы японские, короткоплодные… налетай народ, торопись, покупай…
живописьогурцы
VaalKIA
03.09.2016 10:24-1Я думаю парень зашёл не с того конца, достаточно поставить 3д сканер и чисто математически вычислять ровный ли огурец и каких размеров, никакие тензор флоу там не нужны.
VaalKIA
03.09.2016 20:10-1И за что минус, что труднолазером замерить точки в пространтсве 20x5см? Или есть какие-то проблемы с тем что бы геометрический центр найти или центр масс и сравнить с эллипосидом?
Кстати, 3д сейчас строят даже по тем же снимкам, если уж так прспичило камеру испльзовать.
Rumlin
Давно не видел сорта с такой длиной огурца. Погуглил — «САХИО (ЯПОНИЯ)- один из лучших азиатских огурцов. Плоды длинные — до 50 см». Т.е. это на видео еще маленькие размеры.
old_bear
Когда в Питере было ещё живо тепличное хозяйство «Лето», было весело просить зимой в овощном ларьке взвесить «полметра огурца».
Rumlin
Именно этих советских тепличных огурцов давно не видел.
DenimTornado
Ха, у меня мама там работала диспетчером, огурцы эти там были сорта «Зозуля», если мне память не изменяет.
nickolaym
Зозуля — это среднеплодные с небольшими пупырышками.
А огурец-колбаса — как-то по-другому называется. Кстати, до сих пор продаются, просто они менее вкусные, чем короткоплодные, видимо, поэтому их магазины реже заказывают.
DenimTornado
Да, точно, значит просто в памяти засело слово с тех времён.
xztau
У нас длинные огурцы-переростки не очень вкусом блещут. Самое оно небольшие-нестарые. И в мариновать хорошо. И в салатики там. Вот как с помощью ИИ определить, когда огурец срывать с грядки — вот это задача!
Rumlin
Искать на снимке цветы, затем завязь и отсчитывать необходимое количество дней.