Vr шлем своими руками: Собираем за один вечер Virtual Reality шлем своими руками, с HD изображением и трекингом головы / Хабр

Содержание

Как сделать очки виртуальной реальности для смартфона – vr очки из картона в домашних условиях

Как сделать очки виртуальной реальности самостоятельно? На этот вопрос можно ответить, увидев шлем Cardboard от Google. Его конструкция достаточно простая и состоит в основном из картона. Для создания подобных vr очков своими руками потребуется совсем немного времени.

Содержание статьи

Принцип действия вр очков

В основе устройства любых очков виртуальной реальности лежит главное условие стереоскопии – демонстрация отдельных изображений для каждого глаза. Это реализуется благодаря установке смартфона перед глазами на определенном расстоянии. При помощи линз, взгляд фокусируется на экране телефона, а перегородка закрывает соседнее изображение от левого и правого глаза.

Устройство очков виртуальной реальности для смартфона

Простыми словами, vr очки – это коробка с отсеком для смартфона и двумя линзами. Кажется, такую конструкцию не сложно сделать в домашних условиях.

Что потребуется для создания очков vr для смартфона в домашних условиях?

Смартфон

Самое главное — это телефон, т.к. он выступает в качестве экрана. Операционная система должна быть Android или iOS. Что касается размеров экрана — чем больше, тем лучше, но диагональ должна быть в диапазоне от 5 доя 6,5 дюймов.

Еще одним важным условием является производительность смартфона и наличие датчиков движения. Они позволяют отслеживать положение головы во время просмотра vr контента. Минимальные и оптимальные параметры телефона указаны в таблице.

Параметры телефонаОптимальная совместимость с VRНормальная совместимость с VR
Диагональ экрана5-5.7 дюймов4-5.7 дюймов
Разрешение экрана1080×1920 (full HD) и выше720×1280 (HD)
ПроцессорQuad-core 1,6 GHz и вышеТребуется тестирование
ДатчикиАкселерометр, ГироскопАкселерометр, Гироскоп

Таблица оптимальных параметров смартфона для поддержки VR режима

Самый простой способ проверить смартфон – установить любое приложение виртуальной реальности из маркета и попробовать работоспособность акселерометра и гироскопа на практике.

Шаблон vr очков

Шаблон в формате PDF можно скачать по ссылке.

Шаблон vr очков

Элементы корпуса очков разделены на несколько частей. Это сделано для возможности печати на домашнем принтере.

Картон – материал для корпуса

Если делать вр очки для смартфона своими руками, нужно определиться с материалом. Он должен быть достаточно жестким, но в то же время хорошо гнуться. Больше всего подходит плотный картон толщиной 1-2 миллиметра. Лист твердого картона можно взять от упаковочной коробки или приобрести отдельно в канцелярском магазине. Количество картона должно хватать для наклейки трех листов формата A4.

Не используйте многослойный картон, он чаще всего слишком мягок и сильно деформируется при изгибах.

Картон для сборки корпуса очков

Картон, можно заменить листом жесткого пластика, например, от папки для бумаг.

Инструменты для вырезания

Можно использовать обыкновенные ножницы. Но лучше всего воспользоваться канцелярским ножом. С помощью ножа и линейки резать картон намного легче, а разрез получится значительно ровнее.

Крепежные материалы

Некоторые части виртуальных очков нужно будет скрепить между собой. Для надежности будем использовать клей (например, ПВА) и степлер со скобами размера 26/6.

Линзы

Можно ли сделать очки виртуальной реальности без линз

Самый сложный элемент в конструкции — это, конечно, линзы. Сразу возникает вопрос, можно ли сделать виртуальные очки без них? К сожалению, нет. Без линз глаз не способен сфокусироваться на изображении вблизи. В этом можно убедиться, попробовав прочитать текст на расстоянии в пять сантиметров. Это просто невозможно.

Самодельные линзы для vr очков

Для vr шлема необходимы двояковыпуклые линзы. Их можно сделать своими руками из пластиковой бутылки. Инструкция вкратце:

  • Вырезать из закругленного места бутылки (возле горлышка) две окружности диаметром 25 миллиметров.
  • Склеить окружности между собой клеем или спаять при помощи паяльника.
  • Заполнить полученную линзу водой шприцем с иглой и заклеить место прокола.

Края линзы должны быть надежно проклеены, чтобы вода не проступала наружу. Старайтесь заполнить емкость водой полностью, без воздушных пузырьков.

Где можно купить готовые линзы для шлема Google Cardboard

Где взять качественные линзы для vr очков? Если вы не хотите делать линзы самостоятельно, их можно купить на Aliexpress. Для нашего шаблона понадобятся линзы диаметром 25 миллиметров.

Вот несколько вариантов для покупки на aliexpress: вариант 1, вариант 2, вариант 3

Линзы для очков вр — 25 мм

Пошаговая инструкция как сделать очки виртуальной реальности своими руками

Печать шаблона для вырезания vr очков.

В первую очередь нужно напечатать чертеж, напоминающий Google Cardboard, который мы скачали по ссылке. Для печати потребуется бумага формата A4, а именно три листа.

Распечатанный шаблон

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

После наклейки дождемся полного высыхания и можно приступать вырезанию всех элементов вр очков.

Вырезание деталей

Из полученного шаблона для очков виртуальной реальности необходимо вырезать все детали. Как это сделать решайте сами. Но самый удобный способ – канцелярский нож и линейка. Прикладывая линейку к краям, плотно прижимаем ее к картону и вырезаем отрезок за отрезком.

При использовании канцелярского ножа будьте предельно аккуратны. Используйте поверхность, которую не страшно поцарапать.

Это очень кропотливая работа, т.к. нужно вырезать много мелких деталей и отверстий. В некоторых случаях все же потребуется применение небольших ножниц.

В результате из трех частей шаблона мы получим набор необходимых деталей для сборки корпуса очков.

Вырезанные детали

Как собрать корпус vr очков

Шаг 1

Перед сборкой наметим изгибы на вырезанных картонных деталях. Воспользуемся линейкой — прикладываем ее к линии и загибаем картон в нужную сторону. Направление и линии изгибов для каждой детали видны на фотографиях ниже.

Шаг 2

Вставим линзы в вырезанную картонную конструкцию с третьего листа шаблона. Окуляры размещаются в средней части детали.

Есть линзы, у которых выпуклость с обеих сторон разная. От того как установить линзу зависит фокусное расстояние. Поэтому заранее определитесь какой именно вариант подходит для ваших глаз.

Две боковых стороны загибаются в разные стороны и таким образом фиксируют линзы с помощью специальных бортиков. Для надежности, можно скрепить сделанную маску клеем.

Установка линз

Шаг 3

Теперь можно приступать к сборке корпуса очков. Большая деталь из первого листа – эта верхняя часть. Вставим в нее маску с линзами и перегородку (маленькая деталь – лист №2) как показано на картинке.

Сборка корпуса

Затем переворачиваем всю конструкцию и совмещаем ее с крупной деталью с листа №2 при помощи пазов.

Устанавливаем левую боковину.

Шаг 4

Скрепляем все детали между собой при помощи клея и степлера. Обрезаем вытирающие из пазов части. На перегородке их лучше загнуть и прикрепить скобами. Это значительно усилит конструкцию.

Склейка и крепление деталей

Добавляем по бокам оставшиеся прямоугольники из картона для того, чтобы скрыть места фиксации.

Шаг 5

Прикладываем смартфон к очкам и загибаем крышку отсека по толщине вашего телефона.

Загиб крышки отсека для смартфона

Остается только придумать как крышка будет фиксировать, чтобы телефон не выпадал. Это можно сделать, например, с помощью магнитов или обыкновенной резинки. Но мы будем использовать текстильную застежку – липучку для одежды. Ее нужно приклеить в месте прилегания крышки к корпусу vr очков.

На этом сборка шлема виртуальной реальности из картона подходит к концу. Для удобства можно прикрепить резинку, чтобы фиксировать очки на голове. Но это совсем не обязательно, т.к. достаточно держать Cardboard во время просмотра в руках как бинокль.

Вот что у нас получилось:

Посмотреть VR очки из картона в формате 360

Как работает шлем виртуальной реальности для смартфона

Теперь разберемся как использовать очки виртуальной реальности, которые мы сделали своими руками. Тут все просто.

Закачаем в телефон игру для vr, например, VR X-Racer. Запускаем приложение и устанавливаем смартфон в отсек шлема. Теперь вращая головой, мы можем управлять летательным аппаратом, уворачиваясь от различных препятствий.

В маркете можно найти большое разнообразие игр и приложений для виртуальной реальности на любой вкус.

Для улучшения взаимодействия в виртуальных играх лучше использовать bluetooth джойстик для vr очков.

Выводы

В этой статье мы разобрали подробную пошаговую инструкцию по созданию vr очков своими руками. Теперь каждый сможет собрать очки виртуальной реальности из картона в домашних условиях и наслаждаться виртуальными мирами и видео 360.

как сделать своими руками, инструкция

В век информационных технологий значительную роль играют VR технологии, к которым многие желают приобщиться. Сегодня можно найти в продаже множество всевозможных вариаций и моделей устройств различной ценовой категории. Однако можно не прибегать к большим вложениям и сделать очки виртуальной реальности из картона своими руками. С помощью канцелярского ножа, пары увеличительных стекол и листа картона мы превратили смартфон в очки виртуальной реальности отменного качества.

Сергей Апресов

А ведь совсем недавно люди платили за это большие деньги! В те времена, когда очки виртуальной реальности не сходили с экранов кино, в жизни позволить их себе могли лишь состоятельные энтузиасты. За окно в виртуальный мир приходилось выкладывать по несколько тысяч долларов — ведь в заветном устройстве использовались миниатюрные цветные дисплеи с разрешением не меньше 640 х 480 (и соответствующим размером пикселя) и удивительные «гироскопические» датчики. Технологии шагнули вперед и благодаря нашей изобретательности теперь можно сделать VR-очки из картона.

Мода — дама капризная: устройства виртуальной реальности сошли с киноэкранов гораздо быстрее, чем успели подешеветь и стать массовыми. О них надолго забыли, а когда вспомнили вновь, оказалось, что и дисплей с неразличимыми даже под лупой точками, и акселерометры с угловыми датчиками добрая половина горожан каждый день носит с собой. Стоит приладить к любому современному смартфону корпус и пару линз, и получатся VR-очки не хуже тех, что носил Джонни Мнемоник.

Заполучить заветный корпус с линзами можно несколькими способами. Можно приобрести серьезное (и недешевое) устройство с массой регулировок, такое как Samsung Gear VR. Можно заказать за двадцать баксов один из картонных комплектов, самый известный из которых — Google Cardboard. А можно не дожидаться доставки, а сделать VR-очки из картона своими руками из подручных средств.

Размер имеет значение

Как собрать очки виртуальной реальности из картона? Конструкция очков, которую мы придумали сами, имеет преимущество перед Google Cardboard: линзы в ней могут перемещаться относительно экрана, благодаря чему можно подстроить очки под особенности зрения конкретного человека.

Длина корпуса определяется характеристиками стекол: при равном диаметре линзы чем больше фокусное расстояние, тем длиннее получится корпус, и наоборот. Нам в магазине попались две лупы с фокусным расстоянием 3,5 см и диаметром также 3,5 см. Если вы найдете такие же стекла, смело копируйте наши развертки.

Если же линзы окажутся другими, подстройте длину корпуса под их характеристики. Сделать это легко на глаз: положите смартфон на стол, включите VR-приложение и посмотрите на экран через линзы. Вы увидите, что концепт прекрасно работает даже без корпуса. Насладившись зрелищем, вы попутно составите представление о размерах будущего устройства.

Ширина и высота корпуса определяются моделью смартфона. Дистанция между боковыми стенками равна ширине экрана, а расстояние между верхней и нижней пластинами соответствует ширине корпуса телефона. Наши развертки расчерчены с прицелом на аппарат Samsung Galaxy S4.

Для того, чтобы изготовить очки виртуальной реальности из картона, мы выбрали толстый миллиметровый картон. Конструкция должна быть достаточно жесткой, чтобы выдерживать вес смартфона и сохранять заданное расстояние между экраном и линзами. Перегородка, разделяющая изображения для правого и левого глаза, сделана из плотной бумаги. Также из бумаги сделаны кронштейны для линз. И картон, и бумага легко режутся канцелярским ножом по линейке.

Приложений для «мобильной виртуальной реальности» не много, а очень много. Найти их можно по ключевому слову Cardboard (картон) или по аббревиатуре VR. Среди них есть аттракционы и игры, концерты и фильмы, 3D-туры по городам мира и познавательные путешествия в глубь Вселенной. Мы выбрали наиболее стоящие аппы, с которых стоит начать знакомство с миром виртуальной реальности.
Roller Coaster Vr. Приложений с таким названием наберется не один десяток, ведь «американские горки» — это классический аттракцион виртуальной реальности, своего рода «Тетрис» VR-приложений. Самые эффектные «горки» вы найдете по названию разработчика FIBRUM. Вращая головой и управляя взглядом по своему усмотрению, вы насладитесь умопомрачительными видами холмистых джунглей, головокружительными полетами и скоростью на фоне любовно прорисованного заднего плана. Кстати, российская компания FIBRUM не только разрабатывает отличное ПО, но и выпускает весьма продвинутый шлем виртуальной реальности для смартфонов с экранами 4,5−5,5 дюйма.
Zombie Shooter Vr. Если хотите увидеть своего друга, бешено вращающимся посреди комнаты и выкрикивающим нечленораздельные проклятия, предложите ему поиграть в эту игру. Безусловный плюс приложения (опять же от FIBRUM) в том, что оно представляет собой настоящий 3D-шутер, при этом не требуя дополнительных контроллеров (джойстиков, геймпадов или клавиатур). Игрок перемещает перекрестье прицела, вращая головой. При точном наведении на врага выстрел происходит автоматически. Таким образом, в игре реализован принцип «куда смотрю, туда стреляю». Хочется сказать отдельное спасибо разработчикам за то, что они не подпускают врагов к игроку ближе, чем на пару метров, иначе можно было бы и до инфаркта доиграться: виртуальный зомби в 3D выглядит гораздо страшнее, чем в самой продвинутой 2D-игрушке.
Пол Маккартни. Именем великого сэра Пола названо приложение от Jaunt Inc., которое предлагает побывать на одной сцене с участником The Beatles и увидеть его буквально на расстоянии вытянутой руки. Полному погружению в атмосферу концерта способствует не только трехмерное изображение и великолепная операторская работа, но и объемный звук. К сожалению, приложение доступно только для устройств с диагональю экрана более пяти дюймов.
Orbulus. Самое очевидное преимущество виртуальной реальности — возможность побывать в интереснейших уголках мира, не вставая с кресла. Именно этой цели служит приложение Orbulus, призванное перенести зрителя в самые стоящие места на нашей планете и даже за ее пределами. Прогуляйтесь по Марсу, посетите Оксфордский музей естественной истории, насладитесь северным сиянием и возрадуйтесь новогодним фейерверкам Гонконга. В приложении реализована интересная механика управления с помощью взгляда: чтобы отправиться в желаемое место, достаточно лишь посмотреть на него.

Подводные камни

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

В передней части корпуса верхняя и нижняя пластины слегка выступают за пределы боковых стенок. Это сделано для того, чтобы на получившиеся выступы опирался смартфон. На пластинах предусмотрены крючки: на них надеваются резинки, фиксирующие телефон. Надежное крепление аппарата очень важно, так как большинство VR-приложений предполагают активное вращение головой.

Кнопки на боковых гранях смартфона, будучи зажатыми между панелями корпуса VR-очков из картона, могут преподнести сюрприз. Чтобы они не нажимались самопроизвольно, стоит предусмотреть для них вырезы или, наоборот, подпоры.

Внутреннюю поверхность корпуса очков виртуальной реальности из картона стоит выкрасить в черный цвет. В поле зрения каждого глаза попадает чуть больше половины экрана. Создается ощущение просмотра в кинотеатре, когда кроме экрана видны боковые стенки, пол и потолок. Черная краска позволяет избежать ненужных отражений и бликов, помогая сфокусироваться на экране.

И последний совет: предлагая кому-либо испытать ваши новые VR-очки из картона, заранее приготовьте второй смартфон или камеру. Скорее всего, вам захочется снять испытателя на видео. Нарочито «картонный» дизайн VR-очков обманчив: самодельное устройство создает неожиданно сильный эффект погружения в виртуальный мир, вызывая бурю эмоций у зрителей.

Сделайте свои собственные картонные очки виртуальной реальности

Адоб Сток

Картонные очки виртуальной реальности своими руками.

Проект «Работа из дома»: следуйте пошаговым инструкциям Volkswagen по изготовлению очков «сделай сам», чтобы просмотреть захватывающее видео о производстве компании.

Смотреть этот веб-семинар

Volkswagen знает, что вы ищете, чем заняться во время практики социального дистанцирования. Поэтому компания выпустила инструкцию, как сделать очки виртуальной реальности из картона своими руками. И они предоставили подходящее иммерсивное видео для просмотра, поэтому, когда вы закончите работу над своим проектом, вы можете использовать новые очки, чтобы посмотреть, как Volkswagen строит электромобиль ID.3.

Adobe Stock

Что вам понадобится

1. Шаблон картонного шаблона VR Hearset

2. Коробка для обуви или коробку для пиццы

3. Принтер

4. Сестроры

5. Syring или пластиковая солома

6. Пластиковая бутылка для воды

7. Нож Xacto

8. Клеевой пистолет или эпоксидная смола

9. Резинка

10. Смартфон

КАК ЭТО РАБОТАЕТ

3 90 объектив для VR-шлема DIY. Позже вам нужно будет сделать картонный корпус, используя предоставленные здесь шаблоны для печати. Линза, используемая в этих гарнитурах VR, помогает сократить наименьшее расстояние четкого зрения и позволяет нам четко видеть экран нашего смартфона с расстояния в несколько сантиметров.

ШАГ 1. ЛИНЗЫ

1. Найдите бутылку из-под воды или пластиковую бутылку с хорошей кривизной и вырежьте ножницами круг диаметром 25 мм. Сделайте и вырежьте не менее 4 таких линз — вам понадобится 2 штуки вместе, чтобы создать одну двояковыпуклую линзу.

2. Промажьте все окружности формы клеем и вставьте соломинку. (Убедитесь, что он не попал на сам объектив, а только на окружность).

3. Подождите, пока клей высохнет, и добавьте воды на конец соломинки, чтобы заполнить линзу. После того, как линза заполнена, разрежьте соломинку и склейте концы вместе, чтобы образовалась полная герметизация.

4. Повторите этот процесс для второй линзы.

ШАГ 2 — КАРТОН

1. Загрузите шаблон гарнитуры здесь.

2. Распечатайте шаблон.

3. Приклейте шаблон к коробке из-под пиццы или обуви.

4. С помощью ножа Xacto вырежьте шаблон.

ШАГ 3 — СБОРКА

1. Поместите пару линз, которые вы сделали ранее, в прорезь для глаз собранной гарнитуры VR. Вы можете использовать прорези на картонном корпусе, чтобы надежно закрепить его на гарнитуре VR.

2. Поместите телефон в отсек для телефона и закройте заднюю панель.

ПОСМОТРЕТЬ VW ID.3 ПОСТРОЙТЕ ПРЯМО НА ГЛАЗАХ!

Узнайте, как автомобили Volkswagen на базе MEB были задуманы на заводе, и узнайте, что нужно для создания нового VW ID.3 в 6 уникальных опытах!

 

Дэн Карни (Dan Carney) — старший редактор журнала Design News, специализирующийся на автомобильных технологиях, проектировании и дизайне, особенно новых электромобилях и автономных технологиях.

ТЕГИ: Автомобильная техника Бытовая электроника Автомобили и мобильность Учебники по дополненной реальности Гаджет Freak Volkswagen

DIY VR-гарнитура для StereoPi. задержка 10 мс всего за 135 долларов | Евгений Помазов | StereoPi

Мой друг занимается психологическими исследованиями в области человеческого восприятия. Его впечатлил наш эксперимент с Oculus Go, и он захотел использовать это решение в своих исследованиях.

Эксперимент Oculus Go

Но у него было одно очень строгое требование: задержка видео не должна превышать 10 мс .

Мы взялись за эту задачу и придумали недорогое решение с задержкой около 10 мс. А стоимость гарнитуры с AMOLED-экраном вышла около 135 долларов, включая все комплектующие. Нам пришлось решить ряд проблем и обойти несколько технических ограничений, чтобы создать этот гаджет. Это решение может подойти не для всех проектов. В конце статьи подведем итоги и перечислим плюсы и минусы такого подхода.

В этой длинной статье мы шаг за шагом объясним, как мы настраивали шестерню, какие проблемы возникали и как мы их решали.

Для Oculus Go задержка составляет около 100–150 мс. Видео снимается с камер, сжимается в формате h364, а затем отправляется по Wi-Fi на Oculus Go. Внутри гарнитуры видео подвергается обратному преобразованию — принимается, декодируется и показывается пользователю. Это не мгновенный процесс, отсюда и задержка.

Мы рассмотрели вариант подключения Oculus Go с помощью кабеля. Поскольку он работает под управлением Android, есть возможность попробовать использовать сеть через USB-модем. Но нам все равно пришлось бы сначала сжимать видео на StereoPi, а затем распаковывать его на Oculus. Это означало, что мы никак не могли достичь цели в 10 мс.

Итак, нам нужно было быстрее передавать видео. И самый быстрый доступный нам способ передачи — вывод картинки через HDMI. Стандартная утилита raspivid от Raspbian умеет выдавать картинку моментально, еще до стадии сжатия. Хорошо, этот бит кажется решаемым на данный момент.

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

Мы выбрали этот 5,5-дюймовый AMOLED-экран Waveshare для нашего проекта:

Waveshare 5,5-дюймовый AMOLED-экран HDMI

Он имеет разрешение 1080×1920, которого должно быть достаточно для наших целей.

В настоящее время рынок перенасыщен огромным количеством пластиковых вариаций Google Cardboard, которые могут превратить ваш телефон в гарнитуру виртуальной реальности. Мы выбрали эту модель:

Пластиковая гарнитура, вдохновленная Google Cardboard

Чтобы обеспечить долгую и счастливую жизнь экрана, мы разработали и напечатали для него защитный чехол на 3D-принтере.

Затем мы прикрепили его к экрану несколькими винтами.

Интеграционные тесты:

Поскольку в этом проекте мы не используем поддержку сенсорного экрана, мы оставили отверстия только для двух портов — HDMI для передачи видео и micro USB для питания экрана.

В качестве основы мы использовали образ Raspbian SLP, так как он предназначен именно для таких задач.

Все это дело будет настраиваться через WiFi, поэтому, согласно нашей Wiki, вам нужно определить три параметра в стереопи. конф файл:

 wifi_iface=wlan0 
wifi_ssid=имя моей точки доступа
wifi_psk=мой пароль

И чтобы упростить первые тесты, давайте пока воспользуемся режимом одной камеры, поэтому в строке

 video_mode=3D 

изменить 3D на 2D, чтобы строка читалась:

 video_mode=2D 

Отлично. Теперь настроим поддержку экрана.

На Waveshare Wiki есть фрагмент кода, который необходимо вставить в файл config.txt.

Вот:

 max_framebuffer_height = 1920max_usb_current = 1config_hdmi_boost = 10hdmi_group = 2hdmi_force_hotplug = 1hdmi_mode = 87HDMI_TIMINGINGS = 1080 1 26 4 50 1920 1 8 2 6 8 2 6 2 6 2 6 2 6 2 6 2 6 2 6 2 6 2 6 2 6 26 26 26 26 26 2015. непосредственно из панели администрирования SLP. Если вы предпочитаете выполнять настройку через SSH, все шаги точно такие же. 

После подключения StereoPi к сети введите в браузере Stereopi.local и вы попадете в панель администратора:

Красная стрелка указывает на значок файлового менеджера. Нажмите на нее, чтобы перейти к списку файлов:

Поскольку по умолчанию файловая система находится в режиме только для чтения, нажмите на красную ссылку «Разблокировать ФС» в верхней части экрана и подтвердите в диалоговом окне, что вы хотите разблокировать файловую систему.

Далее перейдите в папку загрузки и щелкните файл config.txt:

Нажмите кнопку «Изменить», прокрутите до самого низа и вставьте данные конфигурации для поддержки экрана:

Прокрутите страницу вверх и нажмите кнопку «Сохранить» в правом верхнем углу. После этого нажмите там кнопку «Назад» и прокрутите в самый низ, чтобы убедиться, что данные на месте.

Подключите экран, перезапустите StereoPi, и вы увидите первую картинку:

Видео очень плавное, задержка практически незаметна невооруженным глазом. Ура!

На этом простая часть проекта заканчивается, и мы входим в зону приключений.

Забавный факт: встроенные в Raspbian утилиты видеозахвата (raspivid и raspiyuv) не умеют отображать стереоскопическое изображение на мониторе. То же самое относится и к утилитам для захвата отдельных кадров. Все они предполагают, что пользователь подключает к HDMI монитор с поддержкой 3D (например, 3D-телевизор).

К сожалению, Raspberry Pi Foundation не планирует вводить такую ​​поддержку в обозримом будущем. Если вас интересуют технические детали, проверьте обсуждения на форуме Raspberry и на Github.

Но этот режим нам был нужен с самого начала (в частности, для FPV на дронах). Поэтому мы внесли небольшие изменения в исходный код raspivid и включили режим отображения стереоизображения для обычных экранов. По умолчанию собранный нами распивид работает как обычно, но если добавить в параметры ключ ‘-fs’ (сокращение от Force Stereo preview), он начинает отображать стереоизображение с двух камер. Переключатель ‘-fs’ лучше всего добавлять сразу после указания настроек разрешения видео.

Эта версия raspivid была включена в наш образ SLP с самого первого выпуска. Наша версия бинарника находится в папке /opt/StereoPi/bin.

Так что, если вы работаете с SLP, этот режим будет работать «из коробки». Если вы строите свое решение на чистом Raspbian, вам нужно учитывать этот факт и либо использовать наш бинарник, либо скомпилировать его из исходников с соответствующими изменениями.

Вернемся к нашему оборудованию. Чтобы включить стереорежим, нажмите на шестеренку в левом верхнем углу экрана в панели администрирования, выберите «3D» в выпадающем списке «Режим изображения» и нажмите кнопку «Сохранить» в самом низу.

У нас есть стереорежим! Картинка плавная и очень быстрая.

Картинка занимает не всю площадь экрана, а только небольшую часть в центре.

Некоторые внимательные читатели могли заметить странную вещь в указанном разрешении: 1080x1920. Это очень похоже на 1920x1080, но это не то же самое. Этот экран имеет портретную ориентацию, а его родное разрешение составляет ровно 1080х1920.

Казалось бы, проблем быть не должно. Должны ли мы поворачивать экран в настройках Raspbian?

Давайте попробуем.

В вики Waveshare можно посмотреть параметры поворота экрана:

 display_rotate = 1 #1:90; 2: 180; 3: 270 

Добавьте эту строку в файл config.txt сразу под настройками экрана, которые вы добавили ранее.

Перезагрузитесь, и вы увидите это:

Ну что, можно поаплодировать?

В этом режиме видео имеет заметную задержку, а частота кадров падает. Более того, при резких движениях в кадре картинка перерисовывается со странными диагональными артефактами. Вот отрывок из замедленного видео:

Давайте углубимся в эту проблему. Оказывается, указанный нами параметр display_rotate выполняет встроенный видеоадаптер Raspberry, который недостаточно силен для таких задач. Для снижения нагрузки мы попробовали понизить разрешение, а также уменьшить частоту обновления экрана с 60 Гц до 30 Гц (в строке hdmi_timings конфигурации экрана). Но это не помогло — артефакты сохранились.

Отключили режим 3D и проверили поток с одной камеры — проблема осталась.

Увеличили объем памяти видеоадаптера до 256 МБ в config.txt — проблема осталась.

Для чистоты этого эксперимента мы попытались подключить этот экран к компьютеру с Windows. ОС правильно его определяет и поворачивает изображение с помощью видеоадаптера без потерь в скорости и качестве.

Небольшой технический комментарий. Как вы знаете, для Raspberry Pi есть собственный TFT-экран, который подключается к специальному разъему Raspberry. Для поворота изображения на этом экране есть специальная команда — lcd_rotate. Для нас важно то, что в данном случае поворот осуществляется встроенным контроллером экрана, а не видеоадаптером. К сожалению, экран Waveshare не имеет такой встроенной функции. Таким образом, наш единственный вариант — повернуть изображение с помощью графического процессора нашего вычислительного модуля Raspberry Pi.

Тупик?

Нет. Ничто нас не остановит!

Приложение raspivid на самом деле очень крутое, потому что работает с железом на самом низком уровне. И это позволяет делать некоторые трюки, которые не сразу приходят в голову.

Итак, мы работаем со стереоизображением в режиме side-by-side. Это означает, что нам нужно отобразить на экране «широкую и низкую» картинку, составленную из двух картинок, «склеенных» вместе. Например, вот так:

Но у стерео режима есть еще режим верх-низ. В этом случае одно изображение отображается поверх другого, например:

Попробуем перебор: пусть raspivid захватит картинку в режиме сверху-снизу и вот так выведет на экран. И отключим вращение изображения с помощью GPU. Для этого перед дальнейшими экспериментами закомментируем вот эту строку:

 display_rotate = 1 #1: 90; 2: 180; 3:270 

Для дальнейших действий запустим тестовые команды из консоли. Но перед этим нужно зайти в папку с нашими скриптами, остановить скрипты (они используют камеру), а потом зайти в папку с нашим исправленным бинарником распивида и оттуда экспериментировать.

Перейти в веб-консоль (соответствующий значок отмечен стрелкой вверху).

Далее идем в папку со скриптами:

 cd /opt/StereoPi 

останавливаем видео:

 ./stop.sh 

Далее идем в папку с нашим распивом:

 cd.5 ./bin 901 

Попробуйте запустить простую команду с разрешением HD:

 ./raspivid -3d tb -w 720 -h 1280 -fs -t 10000 

Работает! Вы должны увидеть стерео картинку на весь экран в течение 10 секунд!

Теперь попробуем с FullHD:

 ./raspivid -3d tb -w 1080 -h 1920 -fs -t 10000 

Ну вот, теперь у нас есть стереоизображение в разрешении FullHD, которое выводится на экран без задержек или артефакты.

Но…

Обе картинки с камер теперь повернуты на 90 градусов. Мы показываем поток в режиме сверху вниз , а не рядом .

К этому моменту следует помнить, что распив может повернуть изображение на 90 градусов. Причем это делается для каждой камеры, а не для всего стереоизображения. Добавьте параметр -rot 90 и запустите обновленный код:

 . /raspivid -3d tb -w 1080 -h 1920 -fs -rot 90 -t 10000 

И вы увидите это:

Задача №4

Нет, это не работает. К сожалению, не все функции обработки изображений, которые может делать распивид при работе с камерой одиночной , корректно работают в стереорежиме с две камеры .

Что ж, ребята, мы почти дошли до самого конца, и на данном этапе совсем не хочется сдаваться.

Если программная часть сегодня против нас, то давайте решать этот вопрос… механически!

Обычно для размещения камер мы используем такие пластины:

Вот вид с установленными камерами:

Вырезаем пластину для установки камер с поворотом на 90 градусов. На этом фото он нижний:

Давайте примерим камеры:

Позиция выбрана правильно, теперь вы можете закрепить камеры на месте.

Отвинтите оптику и подойдите ближе к коробке с пластиковыми прокладками 2 мм:

Закрепите камеры прокладками, и вы получите эту сборку:

Эта сборка помещается в наш стандартный корпус, напечатанный на 3D-принтере. Вам нужно будет обрезать два выступающих пластиковых винта и правильно согнуть кабели камер.

Вот результат:

Теперь, чтобы нужное видео отображалось автоматически при старте системы, нужно добавить соответствующую строчку в скрипт автозапуска.

Скрипт живет здесь:

 /opt/StereoPi/scripts/video-source.sh 

Замените последнюю строку в скрипте, начинающуюся с './bin/raspivid -t 0 $DEC_STR…', на наш код :

 ./bin/raspivid -3d tb -w 1080 -h 1920 -fs -t 0 

Почти все. Осталась последняя проблема.

В ходе тестов мы обнаружили еще одну особенность этого экрана. Если перезапустить StereoPi из консоли ( sudo reboot ), то экран работает корректно, отображая весь процесс перезагрузки. Но если выключить питание на StereoPi, то после повторного включения экран ничего не показывает. Вы должны выключить и снова включить питание экрана, чтобы он «вернулся к жизни». Если вы проложите кабель питания экрана вместе с кабелем HDMI, идущим от StereoPi, и подключите его к разъему StereoPi, то выключатель питания на StereoPi одновременно подаст питание и на стереокамеру, и на экран.

К нам попала альтернативная сборка для проекта «Вид от третьего лица» на Oculus Go, у которой очень маленькая задержка.

Мы провели стандартные тесты задержки видео: запустили таймер на одном телефоне и поставили его перед камерой StereoPi, транслирующей на наш экран. Используя второй телефон в режиме замедленной съемки, мы записали как экран таймера, так и тестовый экран. Разница между показаниями таймеров составляла от 5 до 10 миллисекунд.

— В итоге все заработало 🙂

— Экран Waveshare с отличной картинкой, быстрый и компактный

— StereoPi легко выдает стереовидеопоток FullHD 30 FPS (без сжатия) через HDMI

Вещи, которые необходимо учитывать при разработке собственных решений:

– Встроенный контроллер экрана AMOLED Waveshare 5.5 не имеет функции поворота изображения. Если ваша одноплатная система не умеет быстро поворачивать изображение, это проблема с быстро меняющимся содержимым экрана (например, видео).

— Не удалось решить проблему автоматического «подхватывания» экрана после перезагрузки StereoPi через выключатель питания — экран запускается только после сброса.

Vr шлем своими руками: Собираем за один вечер Virtual Reality шлем своими руками, с HD изображением и трекингом головы / Хабр
Scroll to top