Pull to refresh
90
Karma
0
Rating
Евгений @Realizator

Пользователь

Компьютерное зрение всем, даром

Оки! Вопросов больше не имею!
Про второй опросник — прототипировать проще на Python, а для скорости уже сишечка на втором этапе.

Компьютерное зрение всем, даром

Пункт 4, «Пост об отечественном(?) железячном проекте»
А почему вопросик? Да, проект отечественный, это мы с Gol и еще парой человек сделали…

Stereopi+WebRTC=telepresense по-домашнему

Ну при переходе с sbs на tb надо махнуть местами разрешение по X и Y :-)
Если было -3d sbs -w 1280 -h 720, то должно стать -3d tb -w 720 -h 1280

Stereopi+WebRTC=telepresense по-домашнему

decimate для поворота картинки не поможет, он играет роль при обычном положении камер.
rotate 90 хорошая штука, но, по нашеиму опыту, в стереорежиме он глючит. Поэтому не используем. :-)
В одном из наших проектов надо было в реальном времени поворачивать обе камеры на 90 градусов — в итоге просто повернули их на пластине для крепления камер, и режим стерео перевели в top-bottom.

Stereopi+WebRTC=telepresense по-домашнему

Вау! Круто! :-)
Про «картинки узковаты» — я не игрался с uv4l оберткой, но если она тянет штатные распивидовские стереорежимы, то там можно играть с режимом склейки стерео. Либо '-dec' — это сжатие по горизонтали в 2 раза, либо (дефолтно) — кроп каждого кадра посередине. В этом случае соотношение сторон не портится и геометрия каждого полукадра сохраняется.

UPD> Вот в приведенном конфиге есть закомментированные строчки:
### dual camera options:
#stereoscopic-mode = side_by_side
#camera-number = 1
#decimate = yes
#swap-eyes = yes

Параметр '-dec' тут выведен в строчке #decimate = yes

Пастильда: итоги

К вопросу цен на Mouser свои 5 копеек вставлю. Crowd Supply был куплен компанией Mouser прошлой осенью. Сейчас почти весь склад перемещен в Mouser, и там вы видите цену в зависимости от локации (попробуйте сменить страну на UK или USA). Просто Mouser при доставке заказчику сам растаможку делает.
Перенос склада Crowd Supply на Mouser был долгим и кровавым. Нам это сорвало сроки поставки бейкерам (проект StereoPi) месяца на полтора.

Изучаем OpenCV на StereoPi: карта глубин по видео

1. Первый тираж распродан, второй сейчас пускаем в производство, будет отгружаться с начала июля через краудфандинговую площадку вот тут: www.crowdsupply.com/virt2real/stereopi
Там же можно посмотреть цены.
2. Среди наших бейкеров оказались три интернет-магазина, которые начнут продавать платы на следующей неделе (это если вы хотите пораньше). Один магазин — в Штатах и Канаде (pishop.us/hipi.ca), и два в России — это chipster.ru и onpad.ru
На витринах у них StereoPi пока не выложены, можете связываться напрямую и оставить предзаказ. Количества у них очень небольшие (примерно по 10 плат), так что можете успеть. Ну и они могут предложить свою комплектацию и поставить свои цены. Так что выбор за вами. :-)

Изучаем OpenCV на StereoPi: карта глубин по видео

В математике есть два подхода к решению задачи. Первый — доказать, что решение не существует. Второй — начти решение, пусть не всеобъемлющее и работающее лишь в определенной области и при определенном наборе параметров. Правило Лопиталя и многие другие вещи работают именно так. Мы сторонники второго подхода.
Да, готового решения нет. Скопипастить не получится. Заинклудить либу тоже. Надо напрягать мозг, и сильно. Планируем это делать.

Изучаем OpenCV на StereoPi: карта глубин по видео

С трансляцией мы уже наигрались. Задача стоит как раз помогать пилоту «не воткнуться» в препятствие, с перехватом управления у APM (Pixhawk) при неизбежном столкновении.

Изучаем OpenCV на StereoPi: карта глубин по видео

Мы не любим фейки, поэтому выложено реальное видео после реальной калибровки, и все исходники включая картинки.
Причина артефактов — после калибровки вокруг картинок появляются черные поля (см. самый конец видео с калибровкой). Артефакты тут как раз мэтчинг одной картинки с черными полями другой. Это всё фиксится либо перекалибровкой (в нашем сете есть картинки, на которых шахматная доска найдена, но некорректно), либо настройками с обрезкой черных зон.
В данном случае эти поля полезны для тех, кто пытается разобраться в теме калибровки и нюансах.

Изучаем OpenCV на StereoPi: карта глубин по видео

Есть и многопоточная. А для диспарити мест для распараллеливания громадьё, можно и свое распараллеливание написать.

Изучаем OpenCV на StereoPi: карта глубин по видео

Джетсон нано — очень клевый свежак, он анонсирован месяц назад. Раньше обычный джетсон стоил 300 баксов, и кроватка для него 200 — дорого было. А сейчас Нано отличная железка за $100. Радиатор правда конского размера :-) СтереоПи первого поколения почти 3 года назад родилась, текущее — год назад. Но Джетсон Нано это просто другая плата, их помимо джетсона много. У малины сейчас самый главный козырь — нереальное количество примеров и активное сообщество с поддержкой. У джетсона — Куда, и с нейронками всё чудесно.

Изучаем OpenCV на StereoPi: карта глубин по видео

Это боль OpenCV. Скомпилено оно вроде как с использованием OpenMP, но реализация такова, что профит ощущается только на очень больших разрешениях. Так что, по хорошему, надо лезть в код и внимательно тюнить распараллеливание под текущее железо.
Вообще авторы сборок на Python Wheels (готовые бинарники), товарищи из Raspberry, скомпилили всё очень грамотно в плане оптимизации под наборы команд малинового проца. Эти советы подробно расписаны у Adrian на pyimagesearch.com, и по ним эта компиляция и делалась.

Изучаем OpenCV на StereoPi: карта глубин по видео

О-о-о-о, это очень редкий зверь! Зовется Raspbian. Разрабатывался специально для экзотической, малодоступной, известной только специалистам платы Raspberry Pi. Про него практически ничего невозможно нагуглить, ну и тем более прочитать в разделе «Что установлено» в этой статье. Его должны хорошо помнить старики, специалисты по древним технологиям, которые нынче занимаются исключительно апдейтом граммофонов до уровня патефонов.

Изучаем OpenCV на StereoPi: карта глубин по видео

<Бу!> Это инфа из раздела для продвинутых юзеров. Я подразумевал, что такой юзер полезет на гитхаб к Накамуре, посмотрит там краткое описание возможностей малиновой видяхи (например It has 12 quad processor units (QPU) which is a dual-issue 16 way (4 way pipelined and 4 way true) SIMD processor.), скачает даташит, и проведет аналогии с архитектурой этого видеоядра и мощных зверей от NVidia. </Бу!>
Красота идеи Накамуры в том, что можно выжать из малинового SoC ту производительность, которая от этого железа вообще не ожидается. И нестандартно использовать кудовские исходники OpenCV для получения нужных нам результатов.
Чтобы пояснить подход, давайте я приведу в качестве примера вторую идею. Для аппаратного получения карты глубин можно использовать DSP малинового SoC, предназначенного для сжатия видео в H264. При этом ядро ARM не будет нагружаться вообще. Для этого надо понимать как работает H264, знать что такое карта векторов смещения, ну и знать, что эту готовую карту SoC умеет отдавать в готовом виде.

Изучаем OpenCV на StereoPi: карта глубин по видео

Заявленное максимальное потребление малины 2,4 А. Тут пара мыслей есть. Во-первых, прожорливость всего остального силового оборудования на коптере намного выше (если мы говорим о большом коптере). Во-вторых, 2,4А подразумевается когда на малине нагружено все что можно, в частности полностью загружена видяха (рисует какую-нибудь 3D игрушку). В наших тестах, когда к малине подклбчено 2 камеры и она стримит стереопоток разрешения HD, суммарное потребление 0,7А при 5 вольтах. А если воткнуть мощный WiFi (Alfa AWUS 036NEH, 1 Ватт) — то вместе со свистком получается 0,9А.

Изучаем OpenCV на StereoPi: карта глубин по видео

На коптер — реально, и есть планы это сделать. Собственно коптер, на который это будет потом ставиться, и снят на последнем видео, только у него лапы сложены. Делаться это будет не на питоне конечно, так как там задача жесткого реального времени. А эта статья для тех, кто только начинает осваивать тему — уж больно питон в этом плане прост и дружелюбен.

Изучаем OpenCV на StereoPi: карта глубин по видео

Ну сама виртурилка уже сошла с конвейера, так как железо сильно устарело. StereoPi это по сути виртурилка 2.0 и есть :-) Все наши прошлые наработки уже давно портированы на малину и другие железки, поэтому в наших проектах мы к аппаратной части сейчас не привязаны. Ну а так как Raspberry с двумя камерами не бывает — мы сделали свою. Такая вот история. Прямо сейчас делается тираж

ROS: карта глубин на Raspberry Pi «малой кровью»

А вот и наш краудфанд запустился: www.crowdsupply.com/virt2real/stereopi

Information

Rating
Does not participate
Location
Россия
Registered
Activity