Выбрать главу
* * *

Когда я пришел работать в лабораторию «Си-энд-Эс», первая автоматизированная система «КейсПика» только начала строиться в Ньюбурге. Возводились стальные стеллажи, сооружались ярусы зоны развязки (transfer deck), где боты маневрировали между аллеями стеллажей. К зонам развязки присоединяли массивные структуры MVC, подводили километры электропроводки, на прочные основания устанавливали роботов для палетизации. Моя же работа велась в основном внутри нашей лаборатории в Вубурне. Для измерения размеров коробок на входе в систему я решил попробовать принцип стереодвижения: вместо использования двух или более камер на неподвижном объекте я сравнивал изображения коробки по мере ее перемещения по конвейеру, в нескольких положениях. Направление движения конвейера было строго определенным и неизменным, и камеру можно было откалибровать по нему.

Упаковки, приходящие на склад, оказались, пожалуй, более трудной задачей в плане обработки изображения и измерения размеров, чем биологические образцы или интегральные схемы, с коими мне доводилось работать прежде. Главной проблемой было их разнообразие. Проще всего, конечно, было иметь дело с упаковкой, верхней гранью которой был плоский матовый картон. Но во многих упаковках использовался глянцевый, отражавший множество световых бликов, делающих картинки и надписи на нем почти невидимыми с разных ракурсов. Еще хуже выглядели упаковки, обтянутые полиэтиленовой пленкой. Под ней часто находилась сложная поверхность из рядов банок или бутылок, пленка где-то провисала, а где-то была туго натянута, из-за чего при типичном складском освещении на ней оставались непредсказуемые блики. Кое-где пленка могла быть порвана и торчала клоками за периметром упаковки – и вычислять размер таких упаковок было еще труднее. У некоторых коробок верх оказывался полностью открытым, даже не стянутым полиэтиленом, – просто ряды пробок или крышек. Даже если упаковка была полностью картонной, ее верх, как правило, состоял из склеенных закрылков. Они иногда расклеивались и оттопыривались вверх или откидывались вбок, что делало измерение габаритов затруднительным и довольно неточным.

К этому времени начинала бурно развиваться совершенно другая технология дистанционного измерения, основанная не на стереоизображении, а на прямом измерении расстояний до разных точек объекта. Его сканировали очень коротким лазерным импульсом, как правило инфракрасного диапазона, невидимого для глаза. Лазерные импульсы направлялись в разные стороны внутри определенного «угла зрения» по горизонтали и вертикали, и каждый такой импульс представлял собой один пиксель в карте расстояний от сенсора до объектов.

Расстояния измерялись по «времени полета» лазерного импульса, и камеры, основанные на этом принципе, получили название Time-of-Flight, или, сокращенно, ToF. Хотя они появились в начале 2000-х гг., именно на заре 2010-х они запустили революцию в измерениях расстояний и объектов. Скоро широкая публика узнала о подобных приборах в лидарах[7], устанавливаемых на автомобили в экспериментах по автономному вождению. Кроме того, как раз в 2010 г. появилась дешевая игровая приставка «Кинект» от «Майкрософта». Она позволяла управлять игрой жестами и движениями тела, которые распознавались и расшифровывались с помощью сенсора, определяющего расстояние до множества точек на теле игрока, предметов в его руке и в помещении. Сенсор «Кинекта» работал по другому принципу, нежели камеры ToF. Он проецировал на окружающее пространство двумерную, невидимую глазом инфракрасную сетку и по ее искажению в стереокамерах, чувствительных к этому инфракрасному сигналу, определял расстояние до объекта. Сенсоры «Кинекта» были дешевыми и не слишком надежными, и при покупке оговаривалось, что их нельзя использовать для производственных нужд. Но уже к 2012 г. «Кинект» совершил настоящий прорыв. Едва ли не во всех научно-исследовательских работах, связанных с ориентацией мобильных роботов в окружающем пространстве, стали использовать именно сенсоры «Кинекта», отказавшись от попыток использовать стереокамеры, требовавшие намного более сложных вычислений. Впрочем, к концу 2010-х стереокамеры, чье разрешение намного превышало разрешение трехмерных камер прямого измерения расстояний, опять заняли намного более заметное место среди сенсоров, используемых в мобильных роботах для их ориентации в пространстве. Во многом это было обусловлено широким распространением в видеокартах GPU (Graphical Processing Units) – процессоров, позволяющих параллельно производить тысячи однотипных арифметических вычислений[8].

вернуться

7

Лидар (LiDAR – Light Detection and Ranging, дословно с англ. – «обнаружение и определение дальности с помощью света») – лазерный локатор, использующий технологию испускания лазером волн оптического или инфракрасного диапазона с дальнейшей регистрацией лазерных импульсов, рассеянных объектами, для измерения расстояний до этих объектов.

вернуться

8

Если изначально видеокарты – специальные вычислительные устройства – использовали в основном для видеоигр, то в дальнейшем их стали применять и для многих других целей, например майнинга криптовалют. Процессор GPU – центральная часть современных видеокарт.