Британские инженеры научили фотоматрицу распознавать знакомые ей места, не используя для этого отдельный компьютер. Во время первого прохождения мест она сохраняет сжатое представление кадров, а при повторном прохождении сравнивает новые кадры с ними и ищет совпадения. Тесты показали, что матрица узнает места даже в другое время года, рассказывают авторы статьи, представленной на конференции ICRA 2021.
Традиционно фотоматрица выполняет довольно простую задачу — собирает со всех пикселей значения яркости и записывает в единый кадр. Дальнейшая обработка уже происходит на стороне устройства, то есть для этого используется отдельный процессор, память и программное обеспечение. Но некоторые исследователи и компании работают над альтернативными типами матриц, которые самостоятельно способны выполнять простые операции. Например, Nikon недавно представила прототип матрицы с вычислительными элементами под пикселями, которые во время съемки подбирают для них значения экспозиции, чтобы добиться большого динамического диапазона. Также развивается направление событийных камер, в которых каждый пиксель снимает не синхронно с остальными, а только когда фиксируемая им яркость превышает заданный порог.
Инженеры из Бристольского университета под руководством Вальтерио Майол-Кэуваса (Walterio Mayol-Cuevas) воспользовались матрице SCAMP со встроенными аналогово-цифровыми вычислительными элементами и научили ее запоминать и распознавать места на аппаратном уровне, не используя какие-либо внешние вычислительные устройства. Матрица снимает в градациях серого и имеет разрешение 256 на 256 пикселей. У каждого пикселя есть набор из семи аналоговых и 13 регистров для запоминания переменных, а также схема для выполнения простых логических операций. Авторы отмечают, что их алгоритм можно легко адаптировать и для других аналогичных устройств.
Алгоритм исходит из важного допущения: во время запоминания и распознавания маршрута камера направлена преимущественно вперед и направления совпадают. Информация о маршруте в матрице представлена в виде отдельных кадров, но не в полном разрешении. По сути, массив из 256 на 256 пикселей и вычислительных элементов разбивается на блоки размером 8 на 8 или 8 на 4, в зависимости от того, как хранится информация: в виде кадра с уменьшенным разрешением (с 256 до 8 пикселей по каждой стороне) или в виде локального бинарного визуального дескриптора.
При первом прохождении и запоминании маршрута матрица записывает в блоки сжатое представление кадра и для каждого последующего кадра определяет, что камера сдвинулась вперед или назад, сравнивая их с предыдущим, исходя из заданной модели движения (поскольку камера двигается вдоль одного направления, пиксели на соседних кадрах «двигаются» между центром и краями). Постепенно блоки заполняются сжатой информацией о местах маршрута.
При последующих прохождениях в блоки записывается вес, который оценивает вероятность, что текущий кадр снят в месте, соответствующем записанному. Вес рассчитывается исходя из сравнения структурной схожести между новым и записанным кадром, а также тем, как он согласуется с предыдущими кадрами. В результате максимальный вес в массиве указывает на место, в котором в текущий момент расположена камера.
Разработчики протестировали работу алгоритма на реальной матрице и ее симуляторе с тремя датасетами: записях поездок машинистов на поездах по Норвегии, записях поездок робота по центру Оксфорда и кадрах из симулированных поездок робота по виртуальной лаборатории. Тесты подтвердили, что алгоритм позволяет устанавливать местоположение камеры, причем не только в идентичных условиях, но и при проезде одного и того же места при разных погодных условиях и временах года:
Помимо фотоматриц, которые самостоятельно проводят вычисления, есть и такие, в которых поступающий свет преобразуется в энергию и тем самым обеспечивает съемку без необходимости во внешнем питании.
Григорий Копиев
Малайские биологи создали алгоритм, который определяет видовую принадлежность прихлопнутого на человеческой коже комара. Его точность составляет около 80 процентов. Как отмечается в статье для журнала Scientific Data, алгоритм может лечь в основу приложения для смартфона. С его помощью любой желающий не только выяснит, кто его укусил, но и поможет ученым, которые отслеживают популяции комаров, чтобы предотвратить вспышки переносимых ими инфекций.