Область техники, к которой относится изобретение
Настоящее изобретение относится к устанавливаемому на голове устройству отображения, способу, выполняемому устанавливаемым на голове устройством отображения, соответствующей компьютерной программе и соответствующему читаемому компьютером носителю для хранения информации.
Уровень техники
Предполагается что технология гибридной реальности (Mixed Reality (MR)) должна стать интегральной технологией в сетевом сообществе и сильно разрушить рынок потребительской электроники. Понятие гибридной реальности охватывает дополненную реальность (Augmented Reality (AR)) и дополненную виртуальность (Augmented Virtuality (AV)).
Технология реальности AR часто реализуется посредством ручных устройств, таких как смартфоны и планшеты, или посредством устанавливаемого на голове дисплея (Head-Mounted Display (HMD)) (также известного под названием устанавливаемого на голове устройства отображения (Head-Mounted Display Device)), такого как устройство HoloLens, выпускаемое компанией Microsoft. Технология реальности AR, реализуемая посредством устройства HMD, предполагает наложение информации, такой как текст, изображения или видео, поверх воспринимаемого пользователем вида реального мира сквозь прозрачный дисплей.
Устройства отображения с прозрачными дисплеями, такими как дисплеи HMD, требуют калибровки с целью создания эффекта присутствия для пользователя. Целью калибровки является создание способности представлять виртуальные объекты, такие как текст, изображения и видео, на прозрачном дисплее устройства HMD, таким образом, чтобы представляемые виртуальные объекты были правильно совмещены с объектами реального мира, видимыми пользователем сквозь прозрачный дисплей. На практике необходимо знать положение и направление взгляда («позу») глаз пользователя в дополнение к положению и ориентации дисплея и соответствующему положению и ориентации какой-либо видеокамеры, входящей в состав устройства HMD, такой как обращенная вперед видеокамера для захвата изображений реального мира и/или отслеживания объектов реального мира, и обращенная к глазам видеокамера для отслеживания движений глаз пользователя.
Обзор известных способов калибровки для устройств HMD был дан в статье Дж. Груберт, Й. Ито, К. Мозер и Дж.Е.Сван II «Обзор методов калибровки оптических прозрачных устанавливаемых на голове дисплеев» (J. Grubert, Y. Itoh, K. Moser, and J. E. Swan II (“A Survey of Calibration methods for Optical See-Through Head-Mounted Displays”, arXiv: 1709.04299v1, 13 September 2017)). Такие способы калибровки обычно осуществляются вручную во время использования устройства HMD, тогда как некоторые способы калибровки могут быть автоматизированы. Обычно ряд известных способов калибровки основаны на использовании практически не очень удобных калибровочных установок и/или дорогостоящего калибровочного оборудования.
Например, в документе WO 2016/191043 A1 описана процедура ручной калибровки для установления матрицы взгляда, калиброванной по конкретным характеристикам глаз пользователя.
Известны также способы калибровки на основе считывания изображения с роговицы, опирающиеся на то, что обращенная к глазам видеокамера считывает отражение сцены из реального мира от роговицы пользователя, как описано в статье «Гибридный способ отслеживания движений глаз: Комбинирование контура радужной оболочки и изображения роговицы», А. Плопски, Ц. Ничке, К. Киёкава, Д. Шмальстиг и Х. Такемура (“Hybrid Eye Tracking: Combining Iris Contour and Corneal Imaging”, by A. Plopski, C. Nitschke, K. Kiyokawa, D. Schmalstieg, and H. Takemura, International Conference on Artificial Reality and Telexistence Eurographics Symposium on Virtual Environments, The Eurographics Association, 2015)).
Раскрытие сущности изобретения
Целью настоящего изобретения является создание усовершенствованной альтернативы для перечисленных выше технологий и известных технических решений.
Более конкретно, целью настоящего изобретения является разработка усовершенствованных технических решений для калибровки прозрачного устанавливаемого на голове устройства отображения. В частности, целью настоящего изобретения является создание технических решений для автоматического выбора калибровочного объекта для использования в ходе выполнения процедуры калибровки.
Эти и другие цели настоящего изобретения достигаются посредством различных аспектов изобретения, как они определены независимыми пунктами Формулы изобретения. Варианты настоящего изобретения характеризуются зависимыми пунктами Формулы изобретения.
Согласно первому аспекту настоящего изобретения предложено устанавливаемое на голове устройство отображения. Устройство отображения конфигурировано для ношения пользователем и содержит по меньшей мере частично прозрачный дисплей, обращенную вперед видеокамеру и процессорное устройство. Обращенная вперед видеокамера захватывает (считывает) первое изображение сцены реального мира. Обычно, когда устройство отображения пользователь несет на себе, этой захватываемой сценой реального мира является сцена, находящаяся перед пользователем. Процессорное устройство выбирает калибровочный объект из совокупности одного или нескольких объектов реального мира, видимых на первом изображении, или части такого объекта. Процессорное устройство формулирует калибровочное преобразование для вычисления позиции на дисплее (позиции отображения) на основе позиции в реальном мире, таким образом, чтобы виртуальный объект, представляемый на дисплее в позиции отображения, оказался совмещен с соответствующим объектом реального мира, расположенным в своей позиции в реальном мире, как это видит пользователь. Это калибровочное преобразование может, например, быть представлено матрицей или другой формой математического представления, которая подходит для описания преобразования между двумя системами координат.
Согласно второму аспекту настоящего изобретения предложен способ, осуществляемый устанавливаемым на голове устройством отображения. Это устройство отображения конфигурировано для ношения пользователем. Способ содержит выбор калибровочного объекта из совокупности одного или нескольких объектов реального мира, видимых на первом изображении сцена реального мира. Это первое изображение захватывается обращенной вперед видеокамерой, входящей в состав устройства отображения. Способ далее содержит формулирование калибровочного преобразования для вычисления позиции отображения на основе позиции в реальном мире, таким образом, чтобы виртуальный объект, представленный в позиции отображения на экране по меньшей мере частично прозрачного дисплея, был совмещен с соответствующим объектом реального мира, расположенным в этой позиции в реальном мире, как это видит пользователь. Описываемый по меньшей мере частично прозрачный дисплей входит в состав указанного устройства отображения.
Согласно третьему аспекту настоящего изобретения предложена компьютерная программа. Эта компьютерная программа содержит выполняемые компьютером команды, в соответствии с которыми устанавливаемое на голове устройство отображения осуществляет способ согласно одному из вариантов второго аспекта настоящего изобретения, когда эти выполняемые компьютером команды выполняются процессорным устройством, входящим в состав устройства отображения.
Согласно четвертому аспекту настоящего изобретения предложен читаемый компьютером носитель для хранения информации. Этот читаемый компьютером носитель для хранения информации имеет компьютерную программу согласно третьему аспекту настоящего изобретению, сохраняемую на этом носителе.
Настоящее изобретение использует понимание, что усовершенствованная процедура калибровки для прозрачного устанавливаемого на голове дисплея или устройства отображения (HMD) реализуется путем автоматического выбора калибровочного объекта из совокупности одного или нескольких объектов реального мира для использования при осуществлении процедуры калибровки, например, какой-либо из процедур калибровки, известных в технике. Тем самым пользователь устройства HMD будет избавлен от необходимости хранить у себя или носить с собой специализированный калибровочный объект. Варианты настоящего изобретения выбирают подходящий калибровочный объект из совокупности одного или нескольких объектов реального мира, т.е. находящихся в окружении пользователя физических объектов, видимых на первом изображении, захваченном посредством обращенной вперед видеокамеры. Эти объекты представляют собой объекты реального мира, находящиеся в поле зрения обращенной вперед видеокамеры, такими объектами могут быть мебель, бытовая аппаратура, здания, двери, окна, транспортные средства, дорожные знаки, планшеты, смартфоны, портативные компьютеры, шахматные доски и т.п.
Согласно одному из вариантов настоящего изобретения устройство отображения далее содержит обращенную к глазам видеокамеру, работающую для захвата второго изображения, представляющего отражение сцены реального мира от роговицы пользователя. Процессорное устройство выбирает калибровочный объект из совокупности одного или нескольких объектов реального мира или частей этих объектов, видимых на обоих – первом и втором, изображениях, и формулирует калибровочное преобразование с использованием первого изображения и второго изображения. Этот вариант настоящего изобретения относится к способам калибровки, использующим считывание изображения роговицы. В качестве опции, калибровочный объект выбирают из совокупности одного из нескольких объектов реального мира или частей этих объектов, видимых в некой области первого изображения, соответствующей полю зрения обращенной к глазам видеокамеры. Обычно поле зрение обращенной к глазам видеокамеры меньше поля зрения обращенной вперед видеокамеры. Поскольку для формулирования калибровочного преобразования в качестве части процедуры калибровки, основанной на считывании изображения роговицы, калибровочный объект должен быть виден на обоих – и первом, и втором, изображениях, этот калибровочный объект предпочтительно выбирают из совокупности объектов реального мира, видимых на части первого изображения, соответствующей полю зрения обращенной к глазам видеокамеры. На практике, это объекты, видимые также на втором изображении, захваченном обращенной к глазам видеокамерой. Предпочтительно, поскольку первое изображение (захваченное обращенной вперед видеокамерой) обычно превосходит по качеству второе изображение (захваченное обращенной к глазам видеокамерой) из-за несовершенств роговицы, идентификация объектов реального мира посредством обработки первого изображения производится легче, является более надежной и потребляет меньше ресурсов по сравнению с идентификацией путем обработки второго изображения.
Согласно одному из вариантов настоящего изобретения калибровочный объект может быть выбран на основе искажений этого калибровочного объекта на втором изображении по сравнению с первым изображением. Это делается, если применяемый способ калибровки основан на анализе изображения роговицы. Предпочтительно выбирают объект с наименьшими искажениями. Это дает выигрыш, когда калибровочное преобразование формулируют путем сравнения одного и того же объекта, захваченного в составе первого изображения и второго изображения.
Согласно одному из вариантов настоящего изобретения калибровочный объект выбирают на основе внешнего вида калибровочного объекта. Например, выбирают объекты реального мира, которые четко видны и/или имеют высокую контрастность и которые, соответственно, легко обнаружить в процессе обработки изображения или распознавания объектов.
Согласно одному из вариантов настоящего изобретения в качестве калибровочного объекта выбирают ранее выбранный калибровочный объект из указанной совокупности одного или нескольких объектов реального мира. Это может быть достигнуто путем поддержания базы данных использованных калибровочных объектов.
Согласно одному из вариантов настоящего изобретения устройство отображения содержит один или более датчиков движения, отслеживающих движение устройства отображения. Процессорное устройство оценивает продолжительность промежутка времени, в течение которого один или несколько объектов реального мира остаются видимыми в составе первого изображения, и выбирает калибровочный объект на основе этой оценки продолжительности промежутка времени, в течение которого калибровочный объект остается видимым в составе первого изображения. Продолжительность этого промежутка времени, в течение которого один или несколько объектов реального мира остаются видимыми в составе первого изображения, оценивают на основе результата отслеживания движения устройства отображения. Предпочтительно, выбирают объект реального мира, видимый на первом изображении и, в качестве опции на втором изображении, в течение достаточно продолжительного промежутка времени для осуществления процедуры калибровки. В качестве альтернативы, может быть выбран движущийся медленно относительно поля зрения объект реального мира или не движущийся совсем.
Согласно одному из вариантов настоящего изобретения калибровочный объект выбирают путем идентификации одного или нескольких объектов реального мира посредством согласования визуальных признаков одного или нескольких объектов реального мира с информацией относительно визуальных признаков объектов реального мира, сохраненных в базе данных, и выбора калибровочного объекта на основе информации, полученной из базы данных. Информация, полученная из базы данных, может указывать соответствующую пригодность идентифицированных объектов реального мира или частей их в качестве калибровочного объекта. Эта информация может, например, относиться к внешнему виду, размерам, композиции объекта реального мира в терминах геометрических форм, или других подобных параметров. В этом отношении, объект реального мира считается более подходящим в качестве калибровочного объекта, если его внешний вид характеризуется высокой контрастностью или геометрическими формами, которые могут быть легко обнаружены посредством обработки изображения. Например, «шахматная доска» характеризуется тем, что она составлена из простых геометрических форм и обладает высокой контрастностью. Предпочтительно выбирают наиболее подходящий калибровочный объект.
Согласно одному из вариантов настоящего изобретения устройство отображения далее содержит интерфейс беспроводной связи. Процессорное устройство выбирает калибровочный объект путем идентификации, с использованием интерфейса беспроводной связи, устройства связи, содержащего дисплей, из совокупности одного или нескольких объектов реального мира и выбора в качестве калибровочного объекта по меньшей мере одного из группы – дисплей устройства связи и представленный на этом дисплее графический контент. Устройство связи, содержащее дисплей, может, например, быть идентифицировано путем установления беспроводной связи с близлежащими устройствами связи посредством запроса информации о типе, возможностях или изготовителе/модели этих близлежащих устройств связи. Предпочтительно, близлежащее устройство связи, находящееся в поле зрения обращенной вперед видеокамеры, может представлять на своем дисплее графический контент в форме специализированной калибровочной диаграммы, которая отличается высокой контрастностью и которая составлена из простых геометрических форм, таких как прямоугольники, квадраты, круги или другие подобные формы. В качестве опции, устройство отображения может принять представление присутствующего на дисплее графического контента от рассматриваемого устройства связи через интерфейс беспроводной связи. Другими словами, устройство связи может сообщить устройству отображения, какой именно графический контент представлен в текущий момент на дисплее устройства связи, так что устройство отображения может использовать этот графический контент в качестве калибровочного объекта. В качестве альтернативы, устройство отображения может передать устройству связи команду через интерфейс беспроводной связи для представления этого графического контента на дисплее устройства связи. Эта команда может представлять собой запрос, такой как сообщение или сигнал, в ответ на который устройство связи представляет на своем дисплее указанный графический контент. В качестве опции, устройство отображения может передать представление графического контента устройству беспроводной связи через интерфейс беспроводной связи.
Согласно одному из вариантов настоящего изобретения устройство отображения далее принимает команду представить на дисплее виртуальный объект, эта команда содержит указание соответствующей позиции виртуального объекта в реальном мире, когда этот объект представляют на дисплее пользователю. Эта позиция является позицией, где должно казаться, что присутствует этот виртуальный объект, в сцене реального мира. Эта команда может, например, быть принята от приложения реальности AR, которое выполняется устройством отображения или использует это устройство отображения для представления на дисплее виртуальных объектов пользователю. Устройство отображения далее вычисляет позицию отображения рассматриваемого виртуального объекта путем применения калибровочного преобразования к принятой позиции в реальном мире и представляет этот виртуальный объект в вычисленной позиции отображения на дисплее.
Даже хотя преимущества, которые настоящее изобретение имеет в некоторых случаях, были описаны со ссылками на варианты первого аспекта настоящего изобретения, соответствующие рассуждения применимы к вариантам других аспектов настоящего изобретения.
Другие цели, признаки и преимущества настоящего изобретения станут очевидными из рассмотрения следующего подробного описания, чертежей и прилагаемой Формулы изобретения. Специалисты в рассматриваемой области поймут, что различные признаки настоящего изобретения могут быть скомбинированы для создания вариантов, отличных от тех, которые будут рассмотрены ниже.
Краткое описание чертежей
Описанные выше, равно как и дополнительные цели, признаки и преимущества настоящего изобретения будут лучше понятны из последующего иллюстративного и неограничивающего подробного описания вариантов настоящего изобретения со ссылками на прилагаемые чертежи, на которых:
Фиг. 1 показывает устанавливаемое на голове устройство отображения согласно вариантам настоящего изобретения.
Фиг. 2 показывает вид сквозь по меньшей мере частично прозрачный дисплей из состава устройства отображения, показанного на Фиг. 1, согласно вариантам настоящего изобретения.
Фиг. 3 показывает один из вариантов процессорного устройства из состава устройства отображения, показанного на Фиг. 1.
Фиг. 4 показывает другой вариант процессорного устройства из состава устройства отображения, показанного на Фиг. 1.
Фиг. 5 показывает логическую схему, иллюстрирующую способ, осуществляемый устанавливаемым на голове устройством отображения, согласно вариантам настоящего изобретения.
Все чертежи являются упрощенными, не обязательно выполнены в масштабе и в целом показывают только части, необходимые для разъяснения настоящего изобретения, тогда как остальные части могут быть опущены, либо их наличие может просто предполагаться.
Осуществление изобретения
Настоящее изобретение будет далее описано более полно со ссылками на прилагаемые чертежи, на которых показаны некоторые варианты настоящего изобретения. Настоящее изобретение может, однако, быть реализовано во множестве различных форм, так что его не следует толковать как ограниченное только рассматриваемыми здесь вариантами. Напротив, эти варианты приведены только в качестве примеров, так что настоящее описание будет всесторонним и полным, а также будет полностью доводить объем настоящего изобретения до специалистов в рассматриваемой области.
В последующем варианты устанавливаемого на голове устройства отображения (HMD) рассмотрены со ссылками на Фиг. 1, где показано устройство HMD 100, конфигурированное для ношения пользователем. Устройство HMD 100 может быть, например, прикреплено к голове 121 пользователя с использованием ремней или других подобных элементов. Устройство HMD 100 содержит по меньшей мере частично прозрачный дисплей 101, сквозь который пользователь может видеть сцену реального мира, находящуюся перед пользователем, с использованием глаз 122. Дисплей 101 может быть использован для представления пользователю виртуальных объектов, таких как текст, изображения, видео или графический контент других типов, так что представляемые на дисплее виртуальные объекты накладываются на сцену реального мира. Устройство отображения HMD 100 далее содержит обращенную вперед видеокамеру 102, захватывающую первое изображение сцены реального мира, и процессорное устройство 104, благодаря работе которого устройство HMD 100 работает в соответствии с рассматриваемыми здесь вариантами настоящего изобретения.
Более конкретно, устройство HMD 100 выбирает калибровочный объект из совокупности одного или нескольких объектов реального мира или частей этих объектов 130 – 135, видимых на первом изображении, захваченном обращенной вперед видеокамерой 102. Это первое изображение представляет вид сцены реального мира, находящейся в поле 112 зрения обращенной вперед видеокамеры 102. В настоящем контексте объект реального мира может представлять собой какой-либо физический объект, такой как предмет мебели, бытовая аппаратура, здание, дверь, окно, транспортное средство (автомобиль), дорожный знак, планшет, смартфон, портативный компьютер, шахматная доска и т.д. На Фиг. 1, в качестве примера показаны несколько объектов реального мира, а именно планшет 130, коробка 133 и автомобиль 134. Варианты настоящего изобретения могут в качестве калибровочного объекта выбрать какой-либо объект реального мира целиком, например, коробку 133, или часть какого-либо объекта реального мира, такую как, например, дисплей 131 планшета 130 или графический контент 132, представленный на этом дисплее. На Фиг. 1, представлен пример этого графического контента 132 в виде шахматной доски, которая обычно используется в качестве калибровочной диаграммы в поле, благодаря присущей ей высокой контрастности и композиции с простыми геометрическими формами, что облегчает обработку изображения и распознавание объекта.
Устройство HMD 100 далее формулирует калибровочное преобразование для вычисления позиции отображения на основе позиции в реальном мире. Позицию отображения вычисляют таким образом, чтобы виртуальный объект, представленный на дисплее 101 в этой позиции отображения, относительно системы координат дисплея 101, оказался совмещен с соответствующим объектом реального мира, находящимся в такой позиции в реальном мире, относительно системы координат обращенной вперед видеокамеры 102, как это видит пользователь, рассматривающий сцену реального мира своими глазами 122 сквозь дисплей 101.
В системе реальности AR, использующей прозрачные дисплеи, такие как устройство HMD 100, важной задачей является калибровка устройства HMD с целью установления относительной ориентации и расположения, т.е. «позы», различных систем координат. Для целей разъяснения настоящего изобретения с устройством HMD 100 могут быть ассоциированы несколько систем координат. Первая система координат может быть ассоциирована с дисплеем 101, вторая система координат может быть ассоциирована с обращенной вперед видеокамерой 102, третья система координат может быть ассоциирована с являющейся опцией обращенной к глазам видеокамерой 103 (будет рассмотрена ниже) и четвертая система координат может быть ассоциирована с глазами 122 пользователя. Только в случае правильной калибровки виртуальный объект может быть представлен на дисплее 101 таким образом, что этот объект появится в нужном месте сцены реального мира, позволяя обеспечить эффект присутствия для пользователя. В заявке WO 2016/191043 A1 изложена обсуждаемая проблема и предложена ручная процедура калибровки. Обзор различных процедур калибровки можно найти в статье Дж. Груберт, Й. Ито, К. Мозер и Дж.Е.Сван II «Обзор методов калибровки оптических прозрачных устанавливаемых на голове дисплеев» (“A Survey of Calibration methods for Optical See-Through Head-Mounted Displays”, by J. Grubert, Y. Itoh, K. Moser, and J. E. Swan II (arXiv:1709.04299v1, 13 September 2017)).
Наложение виртуального объекта на сцену реального мира иллюстрирует Фиг. 2, где показан вид сцены реального мира, как ее видит пользователь своими глазами 122 сквозь дисплей 101. На Фиг. 2, объекты реального мира или части этих объектов 130 – 135 видны сквозь дисплей 101, тогда как виртуальный объект 232 (здесь иллюстрируемый как шахматная доска, идентичная шахматной доске 132), представленный в виде графического контента на дисплее 131 планшета 130, наложен на сцену реального мира путем представления этого виртуального объекта на дисплее 101. В предположении, что шахматная доска 232 должна быть представлена в такой позиции отображения, чтобы она появилась в позиции, соответствующей позиции в реальном мире шахматной доски 132, представленной на дисплее 131 планшета 130, устройству HMD 100 необходимо скорректировать указанную позицию отображения с целью сместить шахматную доску 232 таким образом, чтобы она оказалась совмещена, т.е. наложена, с шахматной доской 132, представленной на планшете 130, как ее видят глаза 122. Целью процедуры калибровки является обеспечение требуемого смещения шахматной доски 232, что на Фиг. 2 иллюстрирует стрелка 240.
Устройство HMD 100 может в качестве опции содержать обращенную к глазам видеокамеру 103, которая захватывает второе изображение, являющееся результатом отражения сцены реального мира роговицей 123 пользователя. Считывание (съемка) изображения роговицы представляет собой технологию, использующую видеокамеру для считывания изображения роговицы человека, в частности, роговицы пользователя дисплея HMD, для сбора информации относительно того, что находится перед человеком, и также, вследствие сферической природы человеческого глаза, для сбора информации относительно объектов, находящихся в поле зрения, потенциально более широком, чем поле зрения наблюдателя. Такие объекты могут потенциально располагаться вне поля зрения видеокамеры и даже находиться сзади этой видеокамеры. Такая технология стала возможной из-за высокой отражательной способности, свойственной самой природе человеческой роговицы, а также доступности видеокамер с высокой разрешающей способностью для использования в потребительских устройствах, таких как устройства HMD.
Если процедура калибровки опирается на считывание изображения роговицы, устройство HMD 100 выбирает калибровочный объект из совокупности одного или нескольких объектов реального мира или частей таких объектов 130 – 135, видимых на обоих – и на первом, и на втором, изображениях, и формулирует калибровочное преобразование с использованием первого изображения и второго изображения. Далее, в качестве опции, устройство HMD 100 может выбирать калибровочный объект из совокупности одного или нескольких объектов реального мира или частей таких объектов 130 – 135, видимых в области первого изображения, соответствующей полю 113 зрения обращенной к глазам видеокамеры 103. Поскольку первое изображение (захваченное обращенной вперед видеокамерой 102 с полем 112 зрения) по качеству обычно превосходит второе изображение (захваченное обращенной к глазам видеокамерой 103 с полем 113 зрения) вследствие отражения от несовершенной поверхности роговицы 123, идентификация объектов реального мира посредством обработки изображения и распознавания объектов оказывается легче, более надежна и потребляет меньше ресурсов с использованием первого изображения по сравнению с использованием второго изображения. Благодаря ограничению области первого изображения, которую необходимо обработать для идентификации объектов реального мира, подходящих на роль калибровочных объектов, варианты настоящего изобретения требуют меньше компьютерных ресурсов и соответственно меньше мощности.
Сама процедура калибровки, т.е. установления относительного расположения и ориентации («поз») различных систем координат, ассоциированных с устройством HMD, находится вне объема настоящего изобретения. Достаточно сказать, что калибровочный объект реального мира используется для формулирования калибровочного преобразования, например, матриц или какой-либо другой формы математического представления, подходящей для описания преобразования координат между двумя системами координат. Должно быть понятно, что в зависимости от конструкции устройства HMD, одна или несколько систем координат могут иметь фиксированные расположения ориентации («позы») одна относительно другой и/или устройства HMD 100. Например, в случае устройства HMD, в котором дисплей 101, обращенная вперед видеокамера 102 и в качестве опции обращенная к глазам видеокамера 103 заключены в одном блоке, различные компоненты не могут двигаться один относительно других в ходе обычной эксплуатации.
Калибровочные объекты, используемые в технике, обычно представляют собой специализированные калибровочные объекты, такие как шахматная доска или калибровочную установку (см. например, статью «Гибридный способ отслеживания движений глаз: Комбинирование контура радужной оболочки и изображения роговицы», А. Плопски, Ц. Ничке, К. Киёкава, Д. Шмальстиг и Х. Такемура (“Hybrid Eye Tracking: Combining Iris Contour and Corneal Imaging”, by A. Plopski, C. Nitschke, K. Kiyokawa, D. Schmalstieg, and H. Takemura, International Conference on Artificial Reality and Telexistence Eurographics Symposium on Virtual Environments, The Eurographics Association, 2015)). Вместо использования специализированного калибровочного объекта, который пользователь устройства HMD 100 должен хранить и возможно носить с собой, варианты настоящего изобретения опираются на использование объекта реального мира, доступного поблизости от пользователя, когда устройству HMD 100 требуется калибровка. В зависимости от конструкции устройства HMD и его использования калибровка обычно требуется, если изменилась «поза» глаз 122, т.е. ориентация и/или положение глаз 122 относительно устройства HMD 100. Кроме того, калибровка может потребоваться, если один или несколько компонентов – дисплей 101, обращенная вперед видеокамера 102 и/или обращенная к глазам видеокамера 103, сместились один относительно другого и/или относительно устройства HMD 100.
Более конкретно, устройство HMD 100 может инициировать или запустить процедуру калибровки, т.е. выбрать калибровочный объект и сформулировать калибровочное преобразование, в ответ на что-либо одно: прием от пользователя команды инициировать процедуру калибровки, включение питания устройства HMD 100, обнаружение несовмещения представленного на дисплее виртуального объекта относительно сцены реального мира, обнаружение, что пользователь отличается от предыдущего пользователя устройства HMD 100, обнаружение, что устройство HMD 100 сместилось относительно по меньшей мере одного глаза 122 пользователя, или обнаружение, что один или несколько компонентов – дисплей 101, обращенная вперед видеокамера 102 и/или обращенная к глазам видеокамера 103, сместились один относительно другого и/или относительно устройства HMD 100.
На практике, несовмещение представленного на дисплее виртуального объекта относительно сцены реального мира может быть обнаружено путем представления виртуального объекта в позиции отображения, соответствующей позиции в реальном мире конкретного объекта реального мира. В частности, представленный виртуальный объект может иметь такую же форму, как объект реального мира, т.е. это может быть виртуальное представление (или виртуальная копия) объекта реального мира. Если представленный на дисплее виртуальный объект и объект реального мира оказались несовмещенными по меньшей мере в некоторой степени, происходит запуск процедуры калибровки. Такое несовмещение может быть обнаружено либо самим пользователем, либо в результате считывания изображения роговицы и обработки полученного второго изображения, захваченного обращенной к глазам видеокамерой 103, на котором видны оба объекта – и объект реального мира, и наложенный виртуальный объект.
Смещение устройства HMD 100 относительно по меньшей мере одного глаза 122 пользователя может быть обнаружено, например, с использованием обращенной к глазам видеокамеры 103. Это может быть достигнуто путем отслеживания положения одного или обоих глаз 122 пользователя с течением времени. Процедуру калибровки запускают, если положение глаз 122 (или одного глаза) пользователя отклоняется от исторической средней величины больше, чем на пороговую величину. Эта пороговая величина может быть задана пользователем, изготовителем устройства HMD 100 или посредством приложения реальности AR, использующего устройство HMD 100 для представления виртуальных объектов пользователю.
Смещение одного или нескольких компонентов – дисплея 101, обращенной вперед видеокамеры 102 и обращенной к глазам видеокамеры 103, одного относительно других и/или относительно устройства HMD 100 может быть обнаружено с использованием датчиков движения, встроенных в дисплей 101, обращенную вперед видеокамеру 102 и обращенную к глазам видеокамеру 103.
В дальнейшем будут рассмотрены различные альтернативные варианты выбора калибровочного объекта из совокупности одного или нескольких объектов реального мира или частей таких объектов 130 – 135.
Например, устройство HMD 100 может выбирать калибровочный объект на основе внешнего вида этого калибровочного объекта. Предпочтительно, выбирают объекты реального мира, которые четко видны, хорошо освещены и/или обладают высокой контрастностью и/или составлены из простых геометрических форм. Такие объекты реального мира обычно легко обнаружить посредством обработки изображений и распознавания объектов, например, с использованием масштабно-инвариантного преобразования признаков (Scale-Invariant Feature Transform (SIFT)) (см., например, заявку US 6,711,293 B1) или аналогичных алгоритмов, известных в технике.
В качестве альтернативы, устройство HMD 100 может выбирать в качестве калибровочного объекта ранее выбранный калибровочный объект из совокупности одного или нескольких объектов реального мира или частей этих объектов 130 – 135. Для этой цели устройство HMD 100 может поддерживать базу данных либо в запоминающем устройстве, входящем в состав устройства HMD 100, (таком как запоминающее устройство 303, показанное на Фиг. 3), либо доступную устройству HMD 100 по сети связи (через интерфейс 105 беспроводной связи), например, базу данных на облачной основе. В этой базе данных может быть сохранена информация, которая может быть использована для идентификации калибровочного объекта из совокупности одного или нескольких объектов реального мира, например, информация относительно внешнего вида или визуальных признаков, картинок, или информация относительно формы объектов, композиции геометрических форм и размеров.
В качестве другой альтернативы, устройство HMD 100 может дополнительно содержать один или несколько датчиков 106 движения для отслеживания движения устройства HMD 100. Эти один или несколько датчиков 106 движения могут быть, например, основаны на акселерометрах, гироскопах, датчиках системы глобального местоопределения (Global Positioning System (GPS)), магнитометрах, видеокамерах и т.п., которые известны в технике и могут быть встроены в обычные смартфоны. Устройство HMD 100 может оценивать продолжительность промежутка времени, в течение которого один или несколько объектов реального мира остаются видимыми на первом изображении, т.е. остаются в пределах поля 112 зрения обращенной вперед видеокамеры 102, на основе отслеживаемого движения устройства HMD 100, и выбирать калибровочный объект на основе оценки продолжительности промежутка времени, в течение которого калибровочный объект остается видимым на первом изображении. Это относится к случаю, когда используемая устройством HMD 100 процедура калибровки опирается на отслеживание выбранного калибровочного объекта с использованием обращенной вперед видеокамеры 102. Предпочтительно, в качестве калибровочного объекта выбирают объект реального мира или часть такого объекта 130 – 135, которая видна на первом изображении достаточно долго для осуществления калибровки. В альтернативном варианте, в качестве калибровочного объекта может быть выбран объект реального мира или часть такого объекта 130 – 135, движущаяся относительно поля 112 зрения медленно или не движущаяся вообще. Например, если устройство HMD 100 более или менее неподвижно, может быть выбран неподвижный объект реального мира, такой как коробка 133. Если, с другой стороны, устройство HMD 100 движется, например, потому что пользователь поворачивает свою голову 121, может быть выбран объект реального мира, движущийся аналогичным образом, такой как автомобиль 134.
Также должно быть понятно, что если выбирать калибровочный объект из совокупности одного или нескольких объектов реального мира или частей таких объектов 130 – 135, видимых в области первого изображения, соответствующей полю 113 зрения обращенной к глазам видеокамеры 103, то калибровочный объект может быть выбран на основе оценки продолжительности промежутка времени, в течение которого калибровочный объект остается видимым на втором изображении, т.е. в пределах поля 113 зрения обращенной к глазам видеокамеры 103.
В качестве еще одной альтернативы, устройство HMD 100 может выбрать калибровочный объект путем идентификации одного или нескольких объектов 130 – 135 реального мира посредством согласования визуальных признаков одного или нескольких объектов 130 – 135 реального мира с информацией относительно визуальных признаков объектов реального мира, сохраняемых в базе данных, например, с использованием преобразования SIFT или аналогичных алгоритмов, и выбора калибровочного объекта на основе информации, полученной из базы данных. Полученная информация может обозначать соответствующую пригодность идентифицированных объектов реального мира или частей этих объектов 130 – 135 в качестве калибровочного объекта. Например, эта информация может относиться к внешнему виду, форме, композиции геометрических форм, размеров или другим подобным характеристикам, используемых для формулирования калибровочного преобразования. Предпочтительно, выбирают наиболее подходящий калибровочный объект.
В качестве еще одной другой альтернативы, если калибровочное преобразование формулируют с использованием обоих – и первого изображения, и второго изображения, опираясь на считывание изображения роговицы, устройство HMD 100 может выбрать калибровочный объект на основе искажений калибровочного объекта на втором изображении по сравнению с первым изображением. Искажения калибровочного объекта на втором изображении могут происходить из-за отражения от роговицы 123, которая имеет сферическую форму, и кроме того отражение может страдать из-за несовершенств на наружной поверхности роговицы 123, а также из-за присутствия слез и грязи на наружной поверхности роговицы 123. В дополнение к этому, оптический элемент устройства HMD 100, сквозь который пользователь наблюдает сцену реального мира, может вносить свой вклад в искажения второго изображения. Предпочтительно, для способствования в формулировании калибровочного преобразования выбирают объект с наименьшими искажениями.
Варианты настоящего изображения могут также выбирать в качестве калибровочного объекта из совокупности одного или нескольких объектов реального мира устройство связи, такое как планшет 130, показанный на Фиг. 1 и 2, смартфон, мобильный телефон, дисплей компьютера, телевизор или другое подобное устройство. С этой целью, устройство HMD 100 может содержать интерфейс 105 беспроводной связи, который может быть построен на основе какой-либо известной технологии беспроводной связи. Например, интерфейс 105 беспроводной связи может быть построен на основе технологии радиосвязи малой дальности, такой как локальные сети беспроводной связи (Wireless Local Arena Network (WLAN))/WiFi или Bluetooth, или технологии сотовой радиосвязи, такой как Глобальная система мобильной связи (Global System for Mobile communications (GSM)), универсальная мобильная телекоммуникационная система (Universal Mobile Telecommunications System (UMTS)), технология долговременной эволюции (Long Term Evolution (LTE)) или технология 5G на основе NR/NX. Связь, т.е. обмен данными между устройством HMD 100 и устройством связи, содержащим интерфейс беспроводной связи, совместимый с интерфейсом 105 беспроводной связи, может осуществляться с использованием любого подходящего протокола, например, протокола передачи гипертекста (HyperText Transfer Protocol (HTTP)), протокола ограниченных приложений (Constrained Application Protocol (CoAP)) или другого подобного протокола.
Более конкретно, устройство HMD 100 выбирает калибровочный объект путем идентификации, с использованием интерфейса 105 беспроводной связи, среди совокупности одного или нескольких объектов реального мира устройства связи, содержащего дисплей устройства связи, такого как планшет 130, и выбора в качестве калибровочного объекта по меньшей мере одного из объектов – дисплея 131 из состава планшета 130 и/или графического контента 132 представленного на этом дисплее. Идентификация устройств беспроводной связи из совокупности одного или нескольких объектов реального мира может быть, например, достигнута на основе процедуры обнаружения, известной из технологии Bluetooth и других технологий беспроводной связи. В качестве части процедуры обнаружения или после выполнения этой процедуры обнаружения устройство HMD 100 может устанавливать беспроводную связь W с идентифицированным устройством связи и/или получать информацию относительно типа устройства связи или его возможностей, в частности, информацию относительно дисплея 131 устройства связи. Использование устройства связи, имеющего дисплей, такого как планшет 130, в качестве калибровочного объекта является предпочтительным в том, что дисплей обычно легко идентифицировать посредством обработки изображения и распознавания объектов благодаря его простой геометрической форме и высокому контракту, если яркость достаточна.
Другое преимущество использования устройства связи, содержащего дисплей, в качестве калибровочного объекта состоит в том, что информацией относительно графического контента, представляемого на дисплее устройства связи во время процедуры калибровки, можно обмениваться между устройством HMD 100 и устройством связи. Представляемый на дисплее графический контент может, например, являться специализированной калибровочной диаграммой, отличающейся высокой контрастностью и составленной из простых геометрических форм (прямоугольников, квадратов, кругов), такой как шахматная доска 132, показанная на Фиг. 1 и 2.
Более конкретно, устройство HMD 100 может принять представление показываемого на дисплее графического контента 132 от планшета 130 через интерфейс 105 беспроводной связи. Иными словами, планшет 130 сообщает, что именно он в текущий момент представляет на дисплее 131. Представленный на дисплее графический контент может являться любым графическим контентом, представляемым в текущий момент на дисплее одним или несколькими приложениями, выполняемыми планшетом 131, но может предпочтительно быть специализированной калибровочной диаграммой, такой как шахматная доска 132. Планшет 130 может, например, представлять на дисплее специализированную калибровочную диаграмму в ответ на установление связи с устройством HMD 100 или в ответ на прием от устройства HMD 100 индикации, что калибровка происходит в текущий момент.
В качестве альтернативы, устройство HMD 100 может передать планшету 130 через интерфейс 105 беспроводной связи команду представить графический контент 132 на дисплее 131. Эта команда может представлять собой, например, запрос, сообщение или сигнал, в ответ на который планшет 130 представляет на дисплее графический контент 132. Представляемый на дисплее графический контент может быть определен предварительно, например, это может быть специализированная калибровочная диаграмма. В качестве опции, устройство HMD 100 может передавать представление графического контента 132 планшету 130 через интерфейс 105 беспроводной связи. Таким способом устройство HMD 100 может управлять подробностями графического контента 132, представляемого планшетом 130 на дисплее, и может предпочтительно передавать специализированную калибровочную диаграмму планшету 132. Графический контент может быть представлен, например, в известном формате компьютерной графики или формате изображения.
Устройство HMD 100 может, в ответ на выбор калибровочного объекта, адаптировать один или несколько представляемых на дисплее виртуальных объектов, наложенных на выбранный калибровочный объект, как это видит пользователь глазами 122. Это особенно предпочтительно, если используется способ калибровки на основе считывания изображения роговицы, например, как описано в статье «Гибридный способ отслеживания движений глаз: Комбинирование контура радужной оболочки и изображения роговицы», А. Плопски, Ц. Ничке, К. Киёкава, Д. Шмальстиг и Х. Такемура (“Hybrid Eye Tracking: Combining Iris Contour and Corneal Imaging”, by A. Plopski, C. Nitschke, K. Kiyokawa, D. Schmalstieg, and H. Takemura, International Conference on Artificial Reality and Telexistence Eurographics Symposium on Virtual Environments, The Eurographics Association, 2015)). Тем самым предотвращается ситуация, в которой калибровочный объект оказывается закрыт представленным на дисплее виртуальным объектом, что может не допустить проведения процедуры калибровки.
Устройство HMD 100 может далее, в ответ на выбор калибровочного объекта, сообщить пользователю, что процедура калибровки происходит в текущий момент. В качестве опции, устройство HMD 100 может сообщать пользователю, что в текущий момент происходит калибровка, путем представления маркера 250 на дисплее 101 для идентификации выбранного калибровочного объекта, в этом случае – коробки 133, пользователю. Тем самым от пользователя может быть потребовано посмотреть в направлении выбранного калибровочного объекта или адаптировать свои движения таким образом, что процедуры калибровки. В альтернативном варианте от пользователя может быть потребовано изменить положение и ориентацию («позу») головы, чтобы минимизировать искажения выбранного калибровочного объекта на втором изображения, если используется процедура калибровки на основе считывания изображения роговицы, с целью переместиться ближе к выбранному калибровочному объекту.
Когда калибровочное преобразование было сформулировано, представление этого сформулированного калибровочного преобразования, такое как матрица или другое подходящее математическое представление в электронном формате, может быть сохранено в памяти устройства HMD 100 (такой как запоминающее устройство 303, показанное на Фиг. 3) и затем использоваться для представления виртуальных объектов таким способом, который создает эффект присутствия для пользователя. С этой целью устройство HMD 100 может принимать команду представить виртуальный объект на дисплее. Эта команда может, например, быть принята от приложения реальности AR, выполняемого устройством HMD 100, или от приложения реальности AR, использующего устройство HMD 100 для представления виртуальных объектов пользователю. Например, устройство HMD 100 может быть соединено проводным или беспроводным способом с использованием какого-либо подходящего протокола, например, протокола HTTP или протокола CoAP, с вычислительным устройством, таким как компьютер, портативный компьютер, смартфон, планшет или игровая консоль, выполняющая приложение реальности AR. Принятая команда содержит указание соответствующей позиции в реальном мире для виртуального объекта, когда его представляют пользователю, т.е. позиции в реальном мире, куда должен быть помещен виртуальный объект при представлении его пользователю (где этот объект виден глазами 122) на дисплее 101. Устройство HMD 100 далее вычисляет позицию отображения виртуального объекта путем применения калибровочного преобразования к принятому указанию позиции в реальном мире и представляет виртуальный объект на дисплее 101 в вычисленной позиции отображения 101.
Далее, варианты процессорного устройства 104, входящего в состав устройства HMD 100, будут описаны со ссылками на Фиг. 3 и 4.
На Фиг. 3 показан вариант 300 процессорного устройства 104. Процессорное устройство 300 содержит процессорный модуль 302, такой как процессор общего назначения или процессорная схема, и читаемый компьютером носитель 303 для хранения информации, такой как запоминающее устройство с произвольной выборкой (ЗУПВ (Random-Access Memory (RAM))), флэш-память или другое подобное устройство. Кроме того, процессорное устройство 300 содержит один или несколько интерфейсов 301 (ввод/вывод (“I/O”) на Фиг. 3) для управления и/или для приема информации от других компонентов, входящих в состав устройства HMD 100, таких как дисплей 101, обращенная вперед видеокамера 102, обращенная к глазам видеокамера 103, интерфейс 105 беспроводной связи и один или несколько датчиков 106 движения, среди которых некоторые могут быть опциями. Запоминающее устройство 303 содержит выполняемые компьютером команды 304, т.е. компьютерную программу или программное обеспечение, при выполнении которых устройство HMD 100 работает в соответствии с вариантами настоящего изобретения, как описано здесь, когда процессорный модуль 302 выполняет указанные выполняемые компьютером команды 304.
Альтернативный вариант 400 процессорного устройства 104 показан на Фиг. 4. Аналогично процессорному устройству 300, процессорное устройство 400 содержит один или несколько интерфейсов 401 (ввод/вывод (“I/O”) на Фиг. 4) для управления и/или для приема информации от других компонентов, входящих в состав устройства HMD 100, таких как дисплей 101, обращенная вперед видеокамера 102, обращенная к глазам видеокамера 103, интерфейс 105 беспроводной связи и один или несколько датчиков 106 движения, среди которых некоторые могут быть опциями. Процессорное устройство 400 далее содержит селекторный модуль 402, калибровочный модуль 403, являющийся опцией модуль 404 запуска и являющийся опцией модуль 405 отображения, которые конфигурированы таким образом, чтобы устройство HMD 100 работало в соответствии с вариантами настоящего изобретения, как они описаны здесь.
В частности, селекторный модуль 402 конфигурирован для выбора калибровочного объекта из совокупности одного или нескольких объектов реального мира или частей таких объектов, видимых на первом изображении сцены реального мира, где это первое изображение захватывает обращенная вперед видеокамера из состава устройства отображения. Калибровочный модуль 403 конфигурирован для формулирования калибровочного преобразования с целью вычисления позиции отображения на основе позиции в реальном мире, так что виртуальный объект, представляемый в этой позиции отображения на по меньшей мере частично прозрачном дисплее, входящем в состав устройства отображения, оказывается совмещен с соответствующим объектом реального мира, расположенным в позиции в реальном мире, где его видит пользователь.
Например, селекторный модуль 402 может быть конфигурирован для выбора калибровочного объекта из совокупности одного или более объектов реального мира или частей этих объектов, видимых на обоих изображениях – на указанном первом изображении и на втором изображении отражения сцены реального мира роговицей пользователя, где это второе изображение захватывает обращенная к глазам камера, входящая в состав устройства отображения. Калибровочный модуль 403 может быть конфигурирован для формулирования калибровочного преобразования с использованием первого изображения и второго изображения.
В качестве альтернативы, селекторный модуль 402 может быть конфигурирован для выбора калибровочного объекта из совокупности одного или нескольких объектов реального мира или частей этих объектов, видимых в области первого изображения, соответствующей полю зрения обращенной к глазам видеокамеры.
В качестве другой альтернативы, селекторный модуль 402 может быть конфигурирован для выбора калибровочного объекта на основе искажений этого калибровочного объекта на втором изображении по сравнению с первым изображением.
В качестве следующей альтернативы, селекторный модуль 402 может быть конфигурирован для выбора калибровочного объекта на основе внешнего вида этого калибровочного объекта.
В качестве еще одной альтернативы, селекторный модуль 402 может быть конфигурирован для выбора ранее выбранного калибровочного объекта из совокупности одного или нескольких объектов реального мира в качестве калибровочного объекта.
В качестве еще одной альтернативы, селекторный модуль 402 может быть далее конфигурирован для отслеживания движения устройства отображения с использованием одного или нескольких датчиков движения, входящих в состав устройства отображения, оценки, на основе отслеживаемого движения устройства отображения, продолжительности промежутка времени, в течение которого один или несколько объектов реального мира остаются видимыми на первом изображении, и выбора калибровочного объекта на основе оценки продолжительности промежутка времени, в течение которого один или несколько объектов реального мира остаются видимыми на первом изображении.
В качестве еще одной альтернативы, селекторный модуль 402 может быть конфигурирован для выбора калибровочного объекта путем идентификации одного или нескольких объектов реального мира посредством согласования визуальных признаков одного или нескольких объектов реального мира с информацией относительно визуальных признаков объектов реального мира, сохраненной в базе данных, и выбора калибровочного объекта на основе информации, полученной из базы данных, где эта информация указывает соответствующую пригодность идентифицированных объектов реального мира или частей этих объектов в качестве калибровочного объекта.
В качестве еще одной альтернативы, селекторный модуль 402 может быть конфигурирован для выбора калибровочного объекта путем идентификации с использованием интерфейса беспроводной связи, входящего в состав устройства отображения, содержащего дисплей устройства связи из совокупности одного или нескольких объектов реального мира и выбора в качестве калибровочного объекта по меньшей мере одного – дисплея этого устройства связи или графического контента, представленного на этом дисплее. В качестве опции, селекторный модуль 402 может быть конфигурирован для приема представления показанного на дисплее графического контента от устройства связи через интерфейс беспроводной связи. В качестве альтернативы, селекторный модуль 402 может быть конфигурирован для передачи устройству связи через интерфейс беспроводной связи команды представить графический контент на дисплее устройства связи. В качестве опции, селекторный модуль 402 может быть далее конфигурирован для передачи представления графического контента устройству связи через интерфейс беспроводной связи.
Являющийся опцией модуль 404 запуска может быть конфигурирован для запуска процедуры выбора калибровочного объекта посредством селекторного модуля 403 в ответ на одно из событий: прием от пользователя команды инициировать процедуру калибровки, включение питания устройства отображения, обнаружение несовмещения представленного на дисплее виртуального объекта относительно сцены реального мира, обнаружение, что пользователь отличается от предыдущего пользователя устройства отображения, обнаружение, что устройство отображения сместилось относительно по меньшей мере одного глаза пользователя, или обнаружение, что какой-либо из компонентов – дисплей 101, обращенная вперед видеокамера 102 и обращенная к глазам видеокамера 103, сместился относительно устройства отображения
Являющийся опцией модуль 405 отображения может быть конфигурирован, в ответ на выбор калибровочного объекта селекторным модулем 402, для адаптации одного или нескольких представляемых на дисплее виртуальных объектов, накладывающихся на выбранный калибровочный объект, как это видит пользователь.
В качестве опции, селекторный модуль 402 может быть далее конфигурирован, в ответ на выбор калибровочного объекта, для сообщения пользователю, что в текущий момент происходит калибровка. В качестве опции, пользователю сообщают, что в текущий момент происходит калибровка путем представления на дисплее маркера с целью идентификации выбранного калибровочного объекта для пользователя.
Являющийся опцией модуль 405 отображения может быть далее конфигурирован для приема команды представить на дисплее виртуальный объект, эта команда содержит соответствующую позицию в реальном мире для виртуального объекта, когда его представляют пользователю, вычисления позиции отображения виртуального объекта путем применения калибровочного преобразования, сформулированного калибровочным модулем 403, к принятой позиции в реальном мире и представления \этого виртуального объекта в вычисленной позиции отображения на дисплее.
Модули 402 – 405, входящие в состав процессорного устройства 400, могут быть далее конфигурированы для осуществления дополнительных или альтернативных операций в соответствии с вариантами настоящего изобретения, как описано здесь.
Интерфейсы 301 и 401 и модули 402 – 405, равно как любые дополнительные модули, входящие в состав процессорного устройства 400, могут быть реализованы в виде электронной схемы любого типа, например, в виде аналоговой электронной схемы, цифровой электронной схемы или комбинации таких схем, при этом процессорное устройство выполняет подходящую компьютерную программу, т.е. программное обеспечение.
В дальнейшем, варианты 500 способа, осуществляемого устанавливаемым на голове устройством отображения, конфигурированным для ношения пользователем, описаны со ссылками на Фиг. 5.
Способ 500 содержит выбор 504 калибровочного объекта из совокупности одного или нескольких объектов реального мира или частей этих объектов, которые видны на первом изображении сцены реального мира, где это первое изображение захвачено обращенной вперед видеокамерой, входящей в состав устройства отображения, и формулирование 507 калибровочного преобразования для вычисления позиции отображения на основе позиции в реальном мире, таким образом, чтобы виртуальный объект, представленный в этой позиции отображения на по меньшей мере частично прозрачном дисплее, входящем в состав устройства отображения, оказался совмещен с соответствующим объектом реального мира, расположенным в указанной позиции в реальном мире, как это видит пользователь.
Например, калибровочный объект может быть выбран на этапе 504 из совокупности одного или нескольких объектов реального мира или частей этих объектов, видимых на указанном первом изображении и на втором изображении отражения сцены реального мира роговицей пользователя, где это второе изображение захвачено обращенной к глазам видеокамерой, входящей в состав устройства отображения, а калибровочное преобразование может быть сформулировано на этапе 507 с использованием первого изображения и второго изображения.
В качестве альтернативы, калибровочный объект может быть выбран на этапе 504 из совокупности одного или нескольких объектов реального мира или частей этих объектов, видимых в области первого изображения, соответствующей полю зрения обращенной к глазам видеокамеры.
В качестве другой альтернативы, калибровочный объект может быть выбран на этапе 504 на основе искажений калибровочного объекта на втором изображении по сравнению с первым изображением.
В качестве следующей альтернативы, калибровочный объект может быть выбран на этапе 504 на основе внешнего вида калибровочного объекта.
В качестве еще одной альтернативы, на этапе 504 в качестве калибровочного объекта может быть выбран ранее выбранный калибровочный объект из совокупности одного или нескольких объектов реального мира.
В качестве еще одной альтернативы, способ 500 может далее содержать этап 502 отслеживания движения устройства отображения с использованием одного или нескольких датчиков движения, входящих в состав устройства отображения, и оценки на этапе 503 на основе отслеживаемого движения устройства отображения, продолжительности промежутка времени, в течение которого один или несколько объектов реального мира остаются видимыми на первом изображении. Калибровочный объект выбирают на этапе 504 на основе оценки продолжительности промежутка времени, в течение которого один или несколько объектов реального мира остаются видимыми на первом изображении.
В качестве еще одной альтернативы, процедура выбора на этапе 504 калибровочного объекта может содержать идентификацию одного или нескольких объектов реального мира посредством согласования визуальных признаков одного или нескольких объектов реального мира с информацией относительно визуальных признаков объектов реального мира, сохраненной в базе данных, и выбор калибровочного объекта на основе информации, полученной из базы данных, где эта информация указывает соответствующую пригодность идентифицированных объектов реального мира или частей этих объектов в качестве калибровочного объекта.
В качестве еще одной альтернативы, процедура выбора на этапе 504 калибровочного объекта может содержать идентификацию, с использованием интерфейса беспроводной связи, входящего в состав устройства отображения, содержащего дисплей устройства связи из совокупности одного или нескольких объектов реального мира и выбора в качестве калибровочного объекта по меньшей мере одного – дисплея этого устройства связи или графического контента, представленного на этом дисплее. В качестве опции, процедура выбора на этапе 504 калибровочного объекта может далее содержать прием представления показанного на дисплее графического контента от устройства связи через интерфейс беспроводной связи. В качестве альтернативы, процедура выбора на этапе 504 калибровочного объекта может далее содержать передачу устройству связи через интерфейс беспроводной связи команды представить графический контент на дисплее устройства связи. В качестве опции, процедура выбора на этапе 504 калибровочного объекта может далее содержать передачу представления графического контента устройству связи через интерфейс беспроводной связи.
В качестве опции, выбирают калибровочный объект на этапе 504 и формулируют калибровочное преобразование на этапе 507 в ответ на запуск калибровки на этапе 501 посредством одного из следующих событий: прием от пользователя команды инициировать процедуру калибровки, включение питания устройства отображения, обнаружение несовмещения представленного на дисплее виртуального объекта относительно сцены реального мира, обнаружение, что пользователь отличается от предыдущего пользователя устройства отображения, обнаружение, что устройство отображения сместилось относительно по меньшей мере одного глаза пользователя, или обнаружение, что какой-либо из компонентов – дисплей 101, обращенная вперед видеокамера 102 и обращенная к глазам видеокамера 103, сместился относительно устройства отображения
В качестве опции, способ 500 может далее содержать, в ответ на выбор на этапе 504 калибровочного объекта, адаптацию на этапе 505 одного или нескольких представляемых на дисплее виртуальных объектов, накладывающихся на выбранный калибровочный объект, как это видит пользователь.
В качестве опции, способ 500 может далее содержать прием на этапе 508 команды представить на дисплее виртуальный объект, эта команда содержит указание соответствующей позиции в реальном мире для виртуального объекта, когда его представляют пользователю, вычисление на этапе 509 позиции отображения виртуального объекта путем применения калибровочного преобразования к принятой позиции в реальном мире и представление на этапе 510 этого виртуального объекта в вычисленной позиции отображения на дисплее.
В качестве опции, способ 500 может далее содержать, в ответ на выбор на этапе 504 калибровочного объекта, сообщения на этапе 506 пользователю, что происходит калибровка. В качестве опции, пользователю сообщают на этапе 506, что в текущий момент происходит калибровка путем представления на дисплее маркера с целью идентификации выбранного калибровочного объекта для пользователя.
Должно быть понятно, что способ 500 может содержать дополнительные или модифицированные этапы в соответствии с тем, что рассмотрено в настоящем описании. Один из вариантов способа 500 может быть реализован в виде программного обеспечения, такого как компьютерная программа 304, для выполнения процессорным модулем, входящего в состав устанавливаемого на голове устройства отображения, в результате чего это устройство отображения работает в соответствии с рассмотренными здесь вариантами изобретения. Компьютерная программа 304 может быть сохранена на читаемом компьютером носителе для хранения информации, таком как запоминающее устройство 303, компакт-диск (Compact Disc (CD)), цифровой универсальный диск (Digital Versatile Disc (DVD)), флэшка или другой подобный носитель. Компьютерная программа 304 может быть также передана сигналом, несущим данные. Например, компьютерная программа 304 может быть передана в запоминающее устройство 303 по сети связи, такой как Интернет, через интерфейс 105 беспроводной связи.
Специалист в рассматриваемой области понимает, что настоящее изобретение никоим образом не исчерпывается приведенными здесь вариантами. Напротив, здесь возможны многочисленные модификации и вариации в пределах объема прилагаемой формулы изобретения.
название | год | авторы | номер документа |
---|---|---|---|
МЕХАНИЗМЫ ОБЕСПЕЧЕНИЯ БЕЗОПАСНОСТИ НА ОСНОВЕ КАМЕРЫ ДЛЯ ПОЛЬЗОВАТЕЛЕЙ УСТАНОВЛЕННЫХ НА ГОЛОВЕ ДИСПЛЕЕВ | 2014 |
|
RU2661857C2 |
СИСТЕМЫ И СПОСОБЫ ИСПОЛЬЗОВАНИЯ СОКРАЩЕННЫХ ТРАНЗИТНЫХ УЧАСТКОВ ДЛЯ СОЗДАНИЯ СЦЕНЫ ДОПОЛНЕННОЙ ВИРТУАЛЬНОЙ РЕАЛЬНОСТИ С ПОМОЩЬЮ УСТАНАВЛИВАЕМОЙ НА ГОЛОВЕ СИСТЕМЫ | 2014 |
|
RU2639118C2 |
СИСТЕМЫ И СПОСОБЫ УМЕНЬШЕНИЯ ТРАНЗИТНЫХ УЧАСТКОВ, СВЯЗАННЫХ С НАШЛЕМНОЙ СИСТЕМОЙ | 2014 |
|
RU2628665C2 |
ОБНАРУЖЕНИЕ РАЗГОВОРА | 2015 |
|
RU2685970C2 |
ПРИВЛЕЧЕНИЕ ВЗГЛЯДА ЗРИТЕЛЕЙ УСТРОЙСТВ ОТОБРАЖЕНИЯ | 2015 |
|
RU2677593C2 |
ОРИЕНТАЦИЯ И ВИЗУАЛИЗАЦИЯ ВИРТУАЛЬНОГО ОБЪЕКТА | 2014 |
|
RU2670784C9 |
УСТРОЙСТВО ДОСТАВКИ И ОТОБРАЖЕНИЯ КОНТЕНТА | 2017 |
|
RU2760300C2 |
СИСТЕМА ПРОЕКТИРОВАНИЯ ОБЪЕКТОВ В СРЕДЕ ВИРТУАЛЬНОЙ РЕАЛЬНОСТИ В РЕАЛЬНОМ ВРЕМЕНИ | 2017 |
|
RU2656584C1 |
ОСНОВАННЫЙ НА КОНТЕЙНЕРЕ ПОВОРОТ ВИРТУАЛЬНОЙ КАМЕРЫ | 2018 |
|
RU2765341C2 |
НАВИГАЦИЯ ПО ПОЛЬЗОВАТЕЛЬСКОМУ ИНТЕРФЕЙСУ | 2014 |
|
RU2663477C2 |
Изобретение относится к устанавливаемому на голове устройству отображения. Устанавливаемое на голове устройство (100) отображения, выполненное с возможностью ношения пользователем (121), содержит: по меньшей мере частично прозрачный дисплей (101), обращенную вперед видеокамеру (102), выполненную с возможностью захвата первого изображения сцены реального мира, обращенную к глазам видеокамеру (103), выполненную с возможностью захвата второго изображения отражения сцены реального мира роговицей (123) пользователя, и средство (104) обработки. Средство (104) обработки выполнено с возможностью выбора калибровочного объекта из одного или более объектов реального мира или их частей (130-135), видимых как на первом изображении, так и на втором изображении, и получения калибровочного преобразования для вычисления позиции отображения на основе позиции в реальном мире с использованием выбранного объекта реального мира, который видим как на первом изображении, так и на втором изображении, так чтобы виртуальный объект, представленный на дисплее в позиции отображения, оказался совмещен с соответствующим объектом реального мира, расположенным в указанной позиции в реальном мире, как это видит пользователь. Изобретение обеспечивает автоматический выбор калибровочного объекта для использования в ходе выполнения процедуры калибровки. 4 н. и 29 з.п. ф-лы, 5 ил.
1. Устанавливаемое на голове устройство (100) отображения, характеризующееся тем, что выполнено с возможностью ношения пользователем (121), причем устройство отображения содержит:
по меньшей мере частично прозрачный дисплей (101),
обращенную вперед видеокамеру (102), выполненную с возможностью захвата первого изображения сцены реального мира,
обращенную к глазам видеокамеру (103), выполненную с возможностью захвата второго изображения отражения сцены реального мира роговицей (123) пользователя, и
средство (104) обработки, выполненное с возможностью:
выбора калибровочного объекта из одного или более объектов реального мира или их частей (130-135), видимых как на первом изображении, так и на втором изображении, и
получения калибровочного преобразования для вычисления позиции отображения на основе позиции в реальном мире с использованием выбранного объекта реального мира, который видим как на первом изображении, так и на втором изображении, так чтобы виртуальный объект, представленный на дисплее в позиции отображения, оказался совмещен с соответствующим объектом реального мира, расположенным в указанной позиции в реальном мире, как это видит пользователь.
2. Устройство отображения по п. 1, в котором средство обработки выполнено с возможностью выбора калибровочного объекта из одного или более объектов реального мира или их частей, видимых в области первого изображения, соответствующей полю зрения (113) обращенной к глазам видеокамеры (103).
3. Устройство отображения по п. 1 или 2, в котором средство обработки выполнено с возможностью выбора калибровочного объекта на основе искажения калибровочного объекта на втором изображении по сравнению с первым изображением.
4. Устройство отображения по п. 1 или 2, в котором средство обработки выполнено с возможностью выбора калибровочного объекта на основе внешнего вида калибровочного объекта.
5. Устройство отображения по п. 1 или 2, в котором средство обработки выполнено с возможностью выбора в качестве калибровочного объекта ранее выбранного калибровочного объекта из указанного одного или более объектов реального мира.
6. Устройство отображения по п. 1 или 2, дополнительно содержащее один или более датчиков движения (106), выполненных с возможностью отслеживания движения устройства отображения, при этом средство обработки выполнено с возможностью:
оценки, на основе отслеживаемого движения устройства отображения, продолжительности промежутка времени, в течение которого указанный один или более объектов реального мира остаются видимыми на первом изображении, и
выбора калибровочного объекта на основе оценки продолжительности промежутка времени, в течение которого указанный один или более объектов реального мира остаются видимыми на первом изображении.
7. Устройство отображения по п. 1 или 2, в котором средство обработки выполнено с возможностью выбора калибровочного объекта путем:
идентификации одного или более объектов реального мира посредством сопоставления визуальных признаков указанного одного или более объектов реального мира с информацией относительно визуальных признаков объектов реального мира, хранящейся в базе данных, и
выбора калибровочного объекта на основе информации, полученной из базы данных, причем информация указывает соответствующую пригодность идентифицированных объектов реального мира или их частей в качестве калибровочного объекта.
8. Устройство отображения по п. 1 или 2, дополнительно содержащее интерфейс (105) беспроводной связи, при этом средство обработки выполнено с возможностью выбора калибровочного объекта путем:
идентификации, с использованием интерфейса беспроводной связи, устройства связи (130), содержащего дисплей (131), из указанного одного или более объектов реального мира и
выбора в качестве калибровочного объекта указанного дисплея (131) устройства связи и/или графического контента (132), отображаемого на дисплее.
9. Устройство отображения по п. 8, в котором средство обработки дополнительно выполнено с возможностью приема представления отображаемого графического контента (132) от устройства связи (130) через интерфейс беспроводной связи.
10. Устройство отображения по п. 8, в котором средство обработки дополнительно выполнено с возможностью передачи команды устройству связи (130) через интерфейс беспроводной связи для отображения графического контента (132) на дисплее (131) устройства связи.
11. Устройство отображения по п. 10, в котором средство обработки дополнительно выполнено с возможностью передачи представления графического контента (132) устройству связи (130) через интерфейс беспроводной связи.
12. Устройство отображения по любому из пп. 1-11, в котором средство обработки выполнено с возможностью выбора калибровочного объекта и получения калибровочного преобразования в ответ на любое из:
приема от пользователя команды инициировать процедуру калибровки,
включения питания устройства отображения,
обнаружения несовмещения отображаемого виртуального объекта относительно сцены реального мира,
обнаружения, что пользователь отличается от предыдущего пользователя устройства отображения,
обнаружения, что устройство отображения сместилось относительно по меньшей мере одного глаза (122) пользователя, и
обнаружения, что дисплей (101) или обращенная вперед видеокамера (102) сместилась относительно устройства отображения.
13. Устройство отображения по любому из пп. 1-12, в котором средство обработки выполнено с возможностью, в ответ на выбор калибровочного объекта, адаптации одного или более отображаемых виртуальных объектов, которые накладываются на выбранный калибровочный объект, как это видит пользователь.
14. Устройство отображения по любому из пп. 1-13, в котором средство обработки выполнено с возможностью, в ответ на выбор калибровочного объекта, уведомления пользователя, что калибровка выполняется.
15. Устройство отображения по п. 14, в котором средство обработки выполнено с возможностью уведомления пользователя, что калибровка выполняется, путем отображения маркера (250) для идентификации выбранного калибровочного объекта для пользователя.
16. Устройство отображения по любому из пп. 1-15, в котором средство обработки дополнительно выполнено с возможностью:
приема команды для отображения виртуального объекта, причем команда содержит соответствующую позицию виртуального объекта в реальном мире при его отображении пользователю,
вычисления позиции отображения виртуального объекта путем применения калибровочного преобразования к принятой позиции в реальном мире и
отображения виртуального объекта в вычисленной позиции отображения.
17. Способ (500) калибровки, выполняемый устанавливаемым на голове устройством отображения, выполненным с возможностью ношения пользователем, при этом способ содержит этапы, на которых:
выбирают (504) калибровочный объект из одного или более объектов реального мира или их частей, видимых как на первом изображении сцены реального мира, причем первое изображение захвачено обращенной вперед видеокамерой, содержащейся в устройстве отображения, так и на втором изображении отражения сцены реального мира роговицей пользователя, причем второе изображение захвачено обращенной к глазам видеокамерой, содержащейся в устройстве отображения, и
получают (507) калибровочное преобразование для вычисления позиции отображения на основе позиции в реальном мире с использованием выбранного объекта реального мира, который видим как на первом изображении, так и на втором изображении, так чтобы виртуальный объект, отображаемый в позиции отображения на по меньшей мере частично прозрачном дисплее, содержащемся в устройстве отображения, оказался совмещен с соответствующим объектом реального мира, находящимся в указанной позиции в реальном мире, как это видит пользователь.
18. Способ по п. 17, в котором калибровочный объект выбирают (504) из одного или более объектов реального мира или их частей, видимых в области первого изображения, соответствующей полю зрения обращенной к глазам видеокамеры.
19. Способ по п. 17 или 18, в котором калибровочный объект выбирают (504) на основе искажения калибровочного объекта на втором изображении по сравнению с первым изображением.
20. Способ по п. 17 или 18, в котором калибровочный объект выбирают (504) на основе внешнего вида калибровочного объекта.
21. Способ по п. 17 или 18, в котором в качестве калибровочного объекта выбирают (504) ранее выбранный калибровочный объект из указанного одного или более объектов реального мира.
22. Способ по п. 17 или 18, дополнительно содержащий этапы, на которых:
отслеживают (502) движение устройства отображения с использованием одного или более датчиков движения, содержащихся в устройстве отображения, и
оценивают (503), на основе отслеживаемого движения устройства отображения, продолжительность промежутка времени, в течение которого указанный один или более объектов реального мира остаются видимыми на первом изображения,
при этом калибровочный объект выбирают (504) на основе оценки продолжительности промежутка времени, в течение которого калибровочный объект остается видимым на первом изображении.
23. Способ по п. 17 или 18, в котором на этапе выбора (504) калибровочного объекта:
идентифицируют один или более объектов реального мира посредством сопоставления визуальных признаков указанного одного или более объектов реального мира с информацией относительно визуальных признаков объектов реального мира, хранящейся в базе данных, и
выбирают калибровочный объект на основе информации, полученной из базы данных, причем информация указывает соответствующую пригодность идентифицированных объектов реального мира или их частей в качестве калибровочного объекта.
24. Способ по п. 17 или 18, в котором на этапе выбора (504) калибровочного объекта:
идентифицируют, с использованием интерфейса беспроводной связи, содержащегося в устройстве отображения, устройство связи, содержащее дисплей, из указанного одного или более объектов реального мира и
выбирают в качестве калибровочного объекта указанный дисплей устройства связи и/или графический контент, отображаемый на дисплее.
25. Способ по п. 24, в котором на этапе выбора (504) калибровочного объекта дополнительно принимают представление отображаемого графического контента от устройства связи через интерфейс беспроводной связи.
26. Способ по п. 24, в котором на этапе выбора (504) калибровочного объекта дополнительно передают команду устройству связи через интерфейс беспроводной связи для отображения графического контента на дисплее устройства связи.
27. Способ по п. 26, в котором на этапе выбора (504) калибровочного объекта дополнительно передают представление графического контента устройству связи через интерфейс беспроводной связи.
28. Способ по любому из пп. 17-27, в котором выбирают (504) калибровочный объект и получают (507) калибровочное преобразование в ответ на любое из:
приема от пользователя команды инициировать процедуру калибровки,
включения питания устройства отображения,
обнаружения несовмещения отображаемого виртуального объекта относительно сцены реального мира,
обнаружения, что пользователь отличается от предыдущего пользователя устройства отображения,
обнаружения, что устройство отображения сместилось относительно по меньшей мере одного глаза (122) пользователя, и
обнаружения, что дисплей (101) или обращенная вперед видеокамера (102), сместилась относительно устройства отображения.
29. Способ по любому из пп. 17-28, дополнительно содержащий этап, на котором, в ответ на выбор (504) калибровочного объекта, адаптируют (505) один или более отображаемых виртуальных объектов, которые накладываются на выбранный калибровочный объект, как это видит пользователь.
30. Способ по любому из пп. 17-29, дополнительно содержащий этап, на котором, в ответ на выбор (504) калибровочного объекта, уведомляют (506) пользователя, что калибровка выполняется.
31. Способ по п. 30, в котором пользователя уведомляют (506), что калибровка выполняется, путем отображения маркера на дисплее для идентификации выбранного калибровочного объекта для указанного пользователя.
32. Способ по любому из пп. 17-31, дополнительно содержащий этапы, на которых:
принимают (508) команду для отображения виртуального объекта, причем команда содержит указание соответствующей позиции в реальном мире виртуального объекта, отображаемого пользователю,
вычисляют (509) позицию отображения виртуального объекта путем применения калибровочного преобразования к принятой позиции в реальном мире и
отображают (510) виртуальный объект на дисплее в вычисленной позиции отображения.
33. Считываемый компьютером носитель для хранения информации (303), имеющий хранящиеся на нем исполняемые компьютером команды, которые вызывают выполнение устанавливаемым на голове устройством отображения способа по любому из пп. 18-32 при исполнении исполняемых компьютером команд в модуле (302) обработки, содержащемся в устройстве отображения.
Автомобиль-сани, движущиеся на полозьях посредством устанавливающихся по высоте колес с шинами | 1924 |
|
SU2017A1 |
Автомобиль-сани, движущиеся на полозьях посредством устанавливающихся по высоте колес с шинами | 1924 |
|
SU2017A1 |
Токарный резец | 1924 |
|
SU2016A1 |
Авторы
Даты
2021-06-16—Публикация
2017-12-19—Подача