ПРИБОР И СПОСОБ ЗАХВАТА ИЗОБРАЖЕНИЙ
DEVICE AND METHOD FOR IMAGE CAPTURE

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
Изобретение относится к захвату изображений сцены и, в том числе, к захвату изображений, обеспечивающему трехмерное представление сцены.
УРОВЕНЬ ТЕХНИКИ ИЗОБРЕТЕНИЯ
В последние годы с постоянным развитием и внедрением новых услуг и способов применения и потребления видео значительно увеличилось разнообразие и спектр приложений для изображений и видео.
Например, одной из услуг, становящейся все более популярной, является создание последовательностей изображений таким образом, что наблюдатель может активно и динамически взаимодействовать с системой для изменения параметров визуализации. Очень привлекательной особенностью во многих случаях является возможность изменения фактического положения наблюдения и направления наблюдения наблюдателя, например, позволяющая наблюдателю «осматриваться» в представляемой сцене.
Такая особенность может, в частности, обеспечивать погружение в виртуальную реальность, предоставляемое пользователю. Это может позволять пользователю (относительно) свободно перемещаться по виртуальной среде и динамически изменять свое положение и направление, в котором он смотрит. Как правило, такие приложения виртуальной реальности основаны на трехмерной модели сцены, при этом модель динамически оценивается для обеспечения конкретного требуемого вида. Данный подход хорошо известен, например, из игровых приложений для компьютеров и приставок, например, в категории игр-стрелялок от первого лица.
Желательно также, в частности, для приложений виртуальной реальности, чтобы представляемое изображение являлось трехмерным. Безусловно, чтобы оптимизировать эффект погружения наблюдателя, как правило, предпочтительно, чтобы пользователь воспринимал представляемую сцену как трехмерную сцену. Безусловно, погружение в виртуальную реальность должно предпочтительно позволять пользователю выбирать свое положение, точку съемки камеры и момент времени относительно виртуального мира.
Чтобы поддерживать множество таких новых приложений и услуг, желательно, чтобы сцена могла быть точно захвачена. В отличие от традиционных приложений, в которых одного окна просмотра для отдельной точки наблюдения, как правило, достаточно (например, традиционные видеопоследовательности), желательно, чтобы полная трехмерная информация в сцене была точно захвачена.
Например, при захвате виртуальной реальности с 6DoF (шестью степенями свободы, соответствующими трем степеням свободы для положения точки наблюдения и трем степеням свободы для ориентации) сцена, как правило, захватывается из множества положений во множестве направлений, чтобы захватывать точную и полную информацию обо всей сцене. Во время воспроизведения контента с 6DoF в результате такого захвата наблюдатель может в типичных случаях свободно перемещаться в сцене, при этом виды динамически синтезируются, чтобы соответствовать текущей виртуальной позе наблюдателя. Представленные виды могут, например, представлять собой интерполированные виды, синтезированные по первоначально захваченным видам с использованием подходящих алгоритмов. Это обеспечивает плавные переходы и/или уменьшает требуемый объем данных о захваченном световом поле. Как правило, для интерполяции такого вида информация о глубине используется для объединения с информацией о глубине, как правило, захваченной непосредственно или оцениваемой по стереоизображениям. Еще одним примером может быть использование захваченных видов для разработки трехмерной модели сцены.
Во многих случаях статическая сцена может быть захвачена путем движения ручной камеры. После захвата положения камеры и направления наблюдения для захваченных изображений могут быть получены и использованы в качестве базовых изображений для объединения видов или для генерирования трехмерной модели для сцены.
Однако, чтобы такое представление, основанное на захваченных изображениях, было достаточно точным, необходимо, чтобы изображениями было захвачено достаточное количество релевантной информации. Обычно это требует относительно высокой пространственной частоты/плотности захвата, и на практике было обнаружено, что пользователи, как правило, используют недостаточную частоту дискретизации пространства или угла, в результате чего любые виртуальные камеры размещаются неидеально. Это может приводить к важным последствиям. Например, этапы последовательной обработки, такие как уточнение ориентации, могут давать неудовлетворительный результат в тех областях, где было захвачено недостаточное число положений камеры.
Проблемы такого метода захвата включают в себя следующее:
1. Сложно разместить ручную камеру таким образом, чтобы результирующее световое поле достаточно плотно дискретизировалось в пространстве (и во всех направлениях).
2. Сложно априори определить, какая схема сканирования камеры предназначена, например, для оптимального воспроизведения с 6DoF, поскольку это тесно связано со свойствами отдельной сцены.
Решение состоит в исчерпывающем захвате практически всех возможных местоположений и направлений наблюдения. Однако, выполнение этого вручную (или даже с использованием автоматизированной подвижной системы, такой как перемещающийся робот), особенно с использованием системы ручных камер, в лучшем случае очень времязатратно и, как правило, непрактично, и, как правило, невозможно гарантировать, что захвачены все заданные положения и ориентации.
Более того, будут захвачены избыточные виды, которые позже потребуется удалять или сжимать, чтобы требования к ресурсам хранения, распределения и обработки данных не становились чрезмерными.
Использование робота и/или специальной многокамерной установки может решить некоторые из этих проблем. Однако такой метод обычно является дорогостоящим, трудоемким, требует наличия и наладки сложного оборудования и т.д. Многокамерная установка может также вносить проблему самозатенения, т.е., камеры закрывают вид сцены друг друга.
Чтобы решить проблемы при ручном захвате изображения, предложено перекрывать изображение графическими символами, указывающими, как должна меняться ориентация камеры между различными захватами. Например, разработаны приложения захвата для мобильных телефонов, используемые, например, для панорамных съемок, которые показывают на дисплее, как должна поворачиваться камера для захвата множества изображений, которые могут затем объединяться для расширения эффективного угла наблюдения камеры. Однако такой метод, тем не менее, приводит к субоптимальному захвату сцены и, как правило, не подходит для более сложных приложений, например, когда для построения модели сцены требуется точная трехмерная информация.
Таким образом, представляют интерес усовершенствованная система и метод захвата изображений. В частности, представляют интерес метод, который обеспечивает улучшенное действие, упрощенный захват, улучшенное представление сцены, повышенную гибкость, упрощенную реализацию, упрощенное действие, пониженные требования к ресурсам хранения, распределения и обработки данных, улучшенную адаптируемость и/или улучшенные характеристики.
В US2014/0300775A1 раскрывается метод обработки одного или более изображений для определения информации о местоположении камеры и/или информации о позиции камеры. В данном документе раскрывается приложение, в котором Пользовательское Оборудование может отображать пользователю ориентиры в виде маршрута от текущего положения до предпочитаемого места фотосъемки.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
В связи с этим, задачей изобретения является предпочтительно смягчение, снижение или устранение одного или более из вышеупомянутых недостатков по-отдельности или в любой комбинации.
В соответствии с одним из аспектов изобретения, предлагается прибор захвата изображений, содержащий: блок захвата для захвата изображений сцены; устройство отслеживания для динамического определения позиций блока захвата; процессор позиций для определения текущей позиции блока захвата относительно набора требуемых позиций захвата; дисплей; контроллер дисплея, связанный с процессором позиций для управления дисплеем для обеспечения индикации текущей позиции захвата, при этом индикация текущей позиции захвата включает в себя индикацию положения текущей позиции блока захвата относительно набора требуемых позиций захвата в направлении из плоскости изображения блока захвата; и процессор захвата, выполненный с возможностью определения по меньшей мере некоторых из позиций захвата из набора требуемых позиций захвата в соответствии с данными, захваченными для сцены.
Метод может упрощать, обеспечивать и/или поддерживать улучшенный захват сцены и, в частности, операцию захвата, предназначенную для захвата трехмерного представления сцены. Метод может во многих сценариях иметь результатом данные усовершенствованного захвата, генерируемые с помощью более простой и менее трудоемкой операции и процесса захвата.
Прибор захвата изображений может обеспечивать выходную индикацию, которая точнее отражает, как захватывается физическая сцена, для выдачи улучшенных данных, например, для объединения видов или разработки модели сцены. Индикация может отражать движение или ориентацию, требуемые блоку 101 захвата для выполнения приемлемого или желательного захвата реальной сцены. Индикация может выдаваться в любом подходящем виде, при этом, например, в различных вариантах осуществления могут использоваться различные визуальные индикации.
Индикация положения вне плоскости изображения может, в частности, представлять собой индикацию по глубине или z-направлению камеры блока захвата. Индикация может указывать относительное положение, которое включает в себя компоненту в направлении, перпендикулярном плоскости изображения камеры. Индикация положения вне плоскости изображения при этом является не просто индикацией относительного положения, параллельного (находящегося в) плоскости изображения, и не просто индикацией поворота. Прибор захвата изображений может выдавать индикацию относительного положения, соответствующую направлению, которое является не просто переносом плоскости изображения вбок или поворотом камеры блока захвата. Индикация положения вне плоскости изображения может, в частности, обеспечивать индикацию движения вперед или назад, требуемого от блока/камера захвата, чтобы они пространственно совпадали с позицией из набора требуемых позиций захвата. Во многих случаях контроллер дисплея может помимо управления дисплеем для обеспечения индикации положения вне плоскости изображения также управлять им для обеспечения индикации относительного положения в плоскости изображения и/или индикации ориентации текущей позиции относительно набора требуемых позиций захвата.
Набор требуемых позиций захвата может, в частности, соответствовать набору позиций, определяемому или оцениваемому для достижения приемлемого захвата сцены. Набор требуемых позиций захвата может в некоторых случаях быть предопределенным и может в других случаях быть адаптированным к конкретным характеристикам сцены.
Контроллер дисплея может быть выполнен с возможностью управления дисплеем для обеспечения индикации путем генерирования видео или аналогичного сигнала дисплея, который отображается дисплеем. Может генерироваться видеосигнал, содержащий изображения, которые показывают индикацию текущей позиции захвата. Видеосигнал может во многих случаях также содержать изображения, захватываемые в данный момент блоком захвата, и, следовательно, дисплей может также показывать изображения сцены, захваченные блоком захвата.
Дисплей может представлять собой традиционный двумерный дисплей или может, например, представлять собой трехмерный дисплей.
В некоторых вариантах осуществления индикация положения текущей позиции блока захвата относительно набора требуемых позиций захвата включает в себя индикацию двумерного или трехмерного положения.
Набор требуемых позиций захвата может быть адаптирован в зависимости от свойств сцены, и тем самым могут обеспечиваться усовершенствованные операции захвата во многих ситуациях и случаях.
Данные могут, в частности, представлять собой данные (изображения) светового поля и/или данные о глубине (например, карту глубин). В некоторых вариантах осуществления процессор захвата может быть выполнен с возможностью определения набора требуемых позиций захвата в соответствии с изображениями, захваченными в одной или более позициях. В некоторых вариантах осуществления процессор захвата выполнен с возможностью определения набора требуемых позиций захвата в соответствии с данными о глубине, захваченными в одной или более позициях в сцене. В некоторых таких вариантах осуществления данные о глубине могут быть определены или получены из изображений, захваченных в несколько отличающихся точках наблюдения (например, из стереоизображений).
Данные могут быть захвачены для одной или более позиций в сцене. Данные (или по меньшей мере некоторые из них) могут, в частности, быть захвачены для некоторого числа позиций, принадлежащих набору требуемых позиций захвата (например, в исходном номинальном наборе требуемых позиций захвата, который впоследствии изменяется в зависимости от захваченных данных).
В некоторых вариантах осуществления процессор захвата может быть выполнен с возможностью изменения пространственной плотности требуемых позиций захвата в окрестности первой позиции в соответствии с изображением, захваченным в первой позиции, характеризующей увеличенное варьирование текстуры.
В соответствии с необязательным признаком изобретения, индикация текущей позиции захвата включает в себя индикацию ориентации блока захвата относительно набора требуемых позиций захвата.
Это может во многих вариантах осуществления и сценариях обеспечивать улучшенное и/или упрощенное действие и/или реализацию. Во многих случаях это может приводить к улучшенному захвату сцены.
В соответствии с необязательным признаком изобретения, дисплей является трехмерным дисплеем, а индикация текущей позиции захвата является трехмерной индикацией направления на позицию из набора требуемых позиций захвата.
Это может во многих вариантах осуществления обеспечивать улучшенную индикацию лежащего в основе соотношения между текущей позицией и требуемой операцией захвата.
В соответствии с необязательным признаком изобретения, дисплей является дисплеем гарнитуры дополненной реальности, а индикация текущей позиции захвата характеризует положение требуемой позиции захват относительно положения текущей позиции.
Это может во многих вариантах осуществления обеспечивать улучшенную индикацию лежащего в основе соотношения между текущей позицией и требуемой операцией захвата. Гарнитура дополненной реальности может, например, являться гарнитурой виртуальной реальности или очками дополненной реальности.
В соответствии с необязательным признаком изобретения, блок захвата входит в состав карманного устройства.
Изобретение может обеспечивать значительно улучшенный и/или упрощенный захват сцены с использованием карманного прибора, такого как карманная фото- или видеокамера, для захвата сцены. Метод может, например, позволять неспециалисту точно захватывать сложные сцены с использованием, например, только карманного устройства, такого как смартфон.
В соответствии с необязательным признаком изобретения, процессор захвата выполнен с возможностью изменения пространственной плотности требуемых позиций захвата в окрестности первой позиции в соответствии с данными, захваченными в первой позиции.
Это может во многих вариантах осуществления и сценариях обеспечивать улучшенное и/или упрощенное действие и/или реализацию. Во многих случаях это может иметь результатом улучшенный захват сцены.
В соответствии с необязательным признаком изобретения, процессор захвата выполнен с возможностью увеличения пространственной плотности требуемых позиций захвата в окрестности первой позиции в соответствии с захваченными в первой позиции данными, характеризующими возрастающее изменение по глубине.
Это может во многих вариантах осуществления и сценариях обеспечивать улучшенное и/или упрощенное действие и/или реализацию. Во многих случаях это может иметь результатом улучшенный захват сцены.
В некоторых вариантах осуществления процессор захвата может быть выполнен с возможностью уменьшения пространственной плотности требуемых позиций захвата в окрестности первой позиции в соответствии с захваченными в первой позиции данными, характеризующим убывающее изменение по глубине.
В соответствии с необязательным признаком изобретения, процессор захвата выполнен с возможностью увеличения пространственной плотности требуемых позиций захвата в окрестности первой позиции в соответствии с захваченными в первой позиции данными, характеризующими уменьшенное расстояние до объекта сцены.
Это может во многих вариантах осуществления и сценариях обеспечивать улучшенное и/или упрощенное действие и/или реализацию. Во многих случаях это может иметь результатом улучшенный захват сцены.
В некоторых вариантах осуществления процессор захвата может быть выполнен с возможностью уменьшения пространственной плотности требуемых позиций захвата в окрестности первой позиции в соответствии с захваченными в первой позиции данными, характеризующими увеличенное расстояние до объекта сцены.
В соответствии с необязательным признаком изобретения, процессор захвата выполнен с возможностью увеличения пространственной плотности требуемых позиций захвата в окрестности первой позиции в соответствии с захваченными в первой позиции данными, характеризующими увеличенную шероховатость поверхности объекта сцены.
Это может во многих вариантах осуществления и сценариях обеспечивать улучшенное и/или упрощенное действие и/или реализацию. Во многих случаях это может иметь результатом улучшенный захват сцены.
В некоторых вариантах осуществления процессор захвата может быть выполнен с возможностью уменьшения плотности требуемых позиций захвата в окрестности первой позиции в соответствии с захваченными в первой позиции данными, характеризующими уменьшенную шероховатость поверхности объекта сцены.
В соответствии с необязательным признаком изобретения, данные включают в себя данные о глубине.
В соответствии с необязательным признаком изобретения, процессор захвата выполнен с возможностью увеличения пространственной плотности требуемых позиций захвата в окрестности первой позиции из некоторого числа позиций путем добавления по меньшей мере одной требуемой позиции захвата в предопределенный набор находящихся в окрестности требуемых позиций захвата.
Это может обеспечивать эффективную и имеющую низкую сложность адаптацию набора требуемых позиций захвата.
В некоторых вариантах осуществленияпроцессор захвата может быть выполнен с возможностью уменьшения пространственной плотности требуемых позиций захвата в окрестности первой позиции путем исключения по меньшей мере одной требуемой позиции захвата из предопределенного набора находящихся в окрестности требуемых позиций захвата.
В соответствии с необязательным признаком изобретения, контроллер дисплея выполнен с возможностью управления дисплеем для обеспечения индикации текущей позиции захвата без отображения изображения, захваченного в данный момент блоком захвата.
В соответствии с одним из аспектов изобретения предлагается способ захвата изображения, включающий в себя: динамическое определение позиций блока захвата, способного захватывать изображения сцены; определение текущей позиции блока захвата относительно набора требуемых позиций захвата; управление дисплеем для обеспечения индикации текущей позиции захвата, причем индикация текущей позиции захвата включает в себя индикацию положения текущей позиции блока захвата относительно набора требуемых позиций захвата в направлении из плоскости изображения блока захвата; захват блоком захвата изображения сцены; и определение по меньшей мере некоторых из позиций захвата из набора требуемых позиций захвата в соответствии с данными, захваченными для сцены.
Эти и другие аспекты, признаки и преимущества изобретения будут понятны из описываемого ниже варианта (вариантов) осуществления и объяснены со ссылкой на него (них).
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Варианты осуществления изобретения будут описаны исключительно для примера со ссылкой на чертежи, на которых
фиг. 1 иллюстрирует пример элементов прибора захвата изображений в соответствии с некоторыми вариантами осуществления изобретения;
фиг. 2 иллюстрирует пример схемы требуемой позиции захвата;
фиг. 3 иллюстрирует пример определения близости к позиции захвата;
фиг. 4 иллюстрирует пример адаптации набора требуемых позиций захвата в соответствии с некоторыми вариантами осуществления изобретения.
ПОДРОБНОЕ ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ
В нижеследующем описании основное внимание уделено вариантам осуществления изобретения, применимым к карманной системе и методу захвата изображений, но понятно, что изобретение не ограничено таким применением, а может применяться ко многим другим системам захвата изображений.
Фиг. 1 иллюстрирует пример прибора захвата изображений в соответствии с некоторыми вариантами осуществления изобретения. Прибор захвата изображений может, например, использоваться для захвата трехмерной сцены таким образом, что для сцены может генерироваться детальное представление или модель, например, для использования в приложениях виртуальной реальности. Для этого, как правило, необходимо захватывать сцену из множества различных положений и во множестве различных направлений, т.е., требуются захваты для большого числа позиций. Однако обычно это является очень трудоемким и времязатратным и требует значительных усилий. Такие недостатки могут быть уменьшены, если выбор позиций захвата оптимизирован, например, путем устранения избыточности в захватах и обеспечения достижения требуемого охвата сцены при меньшем числе захватов. В некоторых сценариях это может достигаться путем тщательного планирования и ручной организации захвата. Однако во многих сценариях и случаях это нецелесообразно, например, если предполагается захват сцены обычным потребителем с использованием карманного устройства, такого как смартфон.
Изображенный на фиг. 1 прибор захвата изображений может способствовать процессу захвата путем обеспечения обратной связи по подходящей позиции захвата для заданной сцены, тем самым направляя пользователя к захвату из предпочтительных позиций. Эта обратная связь может во многих сценариях обеспечивать улучшенный общий захват сцены на основе меньшего числа захватов, поскольку пользователь направляется к позиции захвата, обеспечивающей улучшенный захват данных для сцены.
Прибор захвата изображений содержит блок 101 захвата, который, как правило, может содержать камеру, захватывающую сцену. Камера может, как правило, представлять собой традиционную камеру или может, например, представлять собой стереокамеру. Блок захвата выполнен с возможностью захвата изображений (светового поля) сцены и может в некоторых вариантах осуществления также захватывать информацию о глубине (например, с помощью стереоизображений, устанавливающих глубину по расхождению или непосредственно по информации о глубине, такой как z-значения, определяемые путем прямого измерения глубины (например, с использованием камеры измерения глубины)).
Камерная установка связана с устройством 103 отслеживания, которое выполнено с возможностью определения позиции блока захвата. Так, позиция для камеры захвата изображения сцены определяется устройством 103 отслеживания. Это позволяет для заданного момента времени измерять/оценивать позицию блока захвата, соответствующую позиции точке наблюдения для изображения, захваченного в этот момент времени.
В данной области техники термины «размещение» или «позиция» используются в качестве общего термина для положения и/или направления/ориентации. Комбинация положения и направления/ориентации, например, объекта, камеры или вида может называться позицией или размещением. Таким образом, индикация размещения или позиции может включать в себя шесть значений/компонентов/степеней свободы, при этом каждое значение/компонент, как правило, описывает отдельное свойство положения/местоположения или ориентации/направления соответствующего объекта. Разумеется, во многих ситуациях размещение или позиция могут рассматриваться или быть представлены с использованием меньшего числа компонентов, например, если один или более компонентов считаются фиксированными или неприменимыми (например, если все объекты считаются находящимися на одинаковой высоте и имеют горизонтальную ориентацию, четыре компонента могут обеспечивать полное отображение позиции объекта). В дальнейшем термин «позиция» используется, когда речь идет о положении и/или ориентации, которые могут быть представлены 1-6 значениями (соответствующими максимальным возможным степеням свободы). В описании основное внимание будет уделяться вариантам осуществления и примерам, в которых позиция имеет максимальные степени свободы, т.е., три степени свободы каждого из положения и ориентации, что в результате дает в целом шесть степеней свободы. Позиция может при этом быть представлена набором векторов из шести значений, представляющих шесть степеней свободы, и, следовательно, вектор позиции может обеспечивать трехмерное положение и/или трехмерную индикацию направления. Однако, понятно, что в других вариантах осуществления позиция может быть представлена меньшим числом значений.
В данном примере устройство 103 отслеживания выполнено с возможностью динамического определения позиции точки наблюдения камеры блока 101 захвата, и тем самым непрерывно может определяться текущая позиция во время операции захвата (или, возможно, только в интервалах выполнения такой операции). Блок 101 захвата может, в частности, определять вектор позиции из шести значений, отражающий текущую позицию.
Точное определение позиции блока 101 захвата и, как правило, камеры блока захвата будет зависеть от конкретных предпочтений и требований отдельного варианта осуществления. Во многих вариантах осуществления блок 101 захвата может содержать акселерометры и т.д., которые позволяют отслеживать и положение, и ориентацию устройства, содержащего блок 101 захвата, а точнее, которые позволяют осуществлять отслеживание камеры блока 101 захвата (как правило, позиция камеры отслеживается устройством отслеживания, в котором реализован блок 101 захвата). Например, блок 101 захвата может быть реализован в смартфоне, при этом встроенная функциональность определения местоположения (например, на основе GPS), акселерометры и т.д. могут использоваться для определения положения и ориентация смартфона и, следовательно, точек съемки камеры (положения вида и ориентации вида). Во многих вариантах осуществления устройство 103 отслеживания не является отдельным устройством, а является частью того же устройства, что и блок 101 захвата, и безусловно во многих вариантах осуществления весь изображенный на фиг. 1 прибор захвата изображений может быть реализован в отдельном устройстве. Во многих типовых вариантах осуществления определение позиции в реальном времени может достигаться на основе характерных точек, обнаруживаемых в изображениях стереокамеры или датчике изображения+глубины. Другие датчики (например, акселерометр, гироскоп, магнитный датчик) могут помогать в методе слияния данных датчиков.
Например, понятно, что во многих вариантах осуществления устройство 101 отслеживания выполнено с возможностью определения текущей позиции по меньшей мере частично на основе предыдущих позиций, например, путем применения низкочастотной фильтрации к определенным измерениям или оценкам. Однако в некоторых вариантах осуществления текущая позиция может быть определена исключительно на основе текущих свойств, при этом может не выполняться операция корреляции текущей определенной позиции с предыдущими (или будущими) позициями.
Устройство 103 отслеживания связано с процессором 105 позиций, который выполнен с возможностью сравнения текущей позиции, указанной устройством 103 отслеживания, с набором требуемых позиций захвата. В данном примере процессор 105 позиций связан с процессором 111 захвата, который выдает набор требуемых позиций захвата в процессор 105 позиций. В некоторых вариантах осуществления процессор 111 захвата может быть выполнен с возможностью выдачи полного набора требуемых позиций захвата в процессор 105 позиций одновременно и, в частности, во многих вариантах осуществления - в начале операции захвата. В других вариантах осуществления набор требуемых позиций захвата может выдаваться постепенно, например, поочередно, при этом процессор 111 захвата выдает только следующую требуемую позицию захвата, как только захват был осуществлен для предыдущей позиции. Аналогичным образом, в некоторых вариантах осуществления и сценариях набор требуемых позиций захвата может являться предопределенным набором позиций захвата, в то время как в других вариантах осуществления он может определяться динамически во время процесса захвата. Например, в некоторых вариантах осуществления процессор 111 захвата может в начале процесса захвата выдавать полный набор требуемых позиций захвата, соответствующих предопределенной схеме захвата. В других вариантах осуществления процессор 111 захвата может быть выполнен с возможностью адаптивного определения следующей требуемой позиции захвата на основе предыдущих позиций и, в частности, на основе результатов захвата по предыдущим позициям, и, следовательно, процессор 111 захвата может динамически определять следующую позицию захвата на основе предыдущей операции.
Процессор 105 позиций выполнен с возможностью определения текущей позиции относительно набора требуемых позиций захвата. Во многих вариантах осуществления набор требуемых позиций захвата со второго процессора 309 и текущая позиция с устройства 103 отслеживания могут выдаваться в одной той же системе координат, и, следовательно, текущую позицию легко можно сравнить с набором требуемых позиций захвата. В других вариантах осуществления процессор 105 позиций может быть выполнен с возможностью выполнения координатного преобразования или в иных случаях компенсации различий в эталонных системах координат для текущей позиция и набора требуемых позиций захвата.
Процессор 105 позиций связан с контроллером 107 дисплея, который выполнен с возможностью управления дисплеем 109. Процессор 105 позиций выдает в контроллер 107 дисплея данные, отражающие текущую позицию по отношению к набору требуемых позиций захвата, а в ответ контроллер 107 дисплея управляет дисплеем для обеспечения индикации текущей позиции захвата, которая характеризует текущую позицию блока захвата относительно набора требуемых позиций захвата и, в частности, характеризует положение текущей позиции блока захвата относительно набора требуемых позиций захвата. Система соответствующим образом управляет дисплеем для выдачи пользователю индикации текущей позиции камеры относительно требуемой позиции захвата, тем самым направляя пользователя к следующей подходящей позиции захвата. Это позволяет пользователю перемещать блок 101 захвата таким образом, что захваты генерируются для позиций, входящих в набор требуемых позиций захвата, тем самым обеспечивая улучшенный захват при меньших усилиях.
Очевидно, что процессор 105 позиций может выдавать различные данные, характеризующие текущую позицию относительно набора требуемых позиций захвата в различных вариантах осуществления. Аналогичным образом, очевидно, что обработка данных и управление дисплеем различны в различных вариантах осуществления и, в частности, что дисплей может управляться для выдачи различных индикаций текущей позиции относительно набора требуемых позиций захвата в различных вариантах осуществления.
Например, в некоторых вариантах осуществления процессор 105 позиций может оценивать текущую позицию, набор требуемых позиций захвата и предыдущую операцию захвата для определения ближайшей требуемой позиции захвата к текущей позиции. Затем он может определять разность позиций, характеризующую изменение в позиции, требуемое для перехода блока 101 захвата из текущей позиции в следующую требуемую позицию, например, просто вычитанием двух подходящих векторов позиций друг из друга для получения в результате разностного вектора позиции. Этот вектор позиции может затем выдаваться в контроллер 107 дисплея.
Контроллер 107 дисплея может, например, генерировать для дисплея видеосигнал, в котором кадры/изображения являются графическим представлением вектора разности или содержат его. Графическое представление может, например - если дисплей является трехмерным дисплеем - включать в себя две трехмерные стрелки, одна из которых указывает в направлении перемещения блока 101 захвата, а другая стрелка указывает требуемый поворот (изменение в ориентации). Для двумерного дисплея трехмерная индикация может, например, выдаваться стрелкой, представленной проекцией на представление изображения сцены, либо, например, две стрелки могут использоваться для каждой индикации положения и местоположения. Еще в одном примере контроллер 107 дисплея может просто управлять дисплеем для непосредственного отображения значений компонентов разностного вектора.
Еще в одном примере в некоторых вариантах осуществления процессор 105 позиций может выдавать в контроллер 107 дисплея данные, индивидуально описывающие текущую позицию и набор требуемых позиций захвата (например, привязанных к одной и той же системе координат), при этом контроллер 107 дисплея может приступать к отображению представления трехмерных положений из набора требуемых позиций захвата и трехмерного положения текущей позиции. Кроме того, для каждой представленной требуемой позиция захвата может быть введена стрелка, показывающая требуемую ориентацию относительно текущей ориентации. Для двумерного дисплея трехмерная информация может, например, выдаваться путем проецирования на сцену, если она отображается, или, например, может обеспечиваться введением множества индикаторов для каждой позиции захвата.
Прибор захвата изображений выполнен с возможностью генерирования индикации текущей позиции относительно набора требуемых позиций захвата для включения индикации положения текущей позиции блока захвата относительно набора требуемых позиций захвата в направлении из плоскости изображения блока захвата. Блок 101 захвата выполнен с возможностью захвата изображения сцены, и это изображение может, в частности, представлять собой двумерное изображение, плоскость изображения которого соответствует проекции трехмерной сцены на двумерное изображение. Например, традиционная камера захватывает двумерное изображение, а блок 101 захвата, содержащий такую камеру, по сути, захватывает двумерное изображение и имеет соответствующую плоскость двумерного изображения. Плоскость двумерного изображения, как правило, задается двумерным приемником изображений, таким как ПЗС-приемник, на который проецируется сцена.
Традиционный захват сцены, как правило, основан на таких двумерных изображениях, при этом процесс захвата основан на двумерном характере захваченных изображений.
Например, некоторые традиционные операции захвата включают в себя генерирование объединенного изображения путем объединения множества, как правило, перекрывающихся изображений. Например, панорамные снимки могут создаваться путем съемки в одном направлении, перемещения камеры в одну сторону или, возможно, поворота камеры, еще одной съемки и т.д. Программное обеспечение может затем использоваться для объединения изображений для генерирования панорамного снимка. В некоторых случаях такие приложения могут включать в себя индикацию того, что пользователь должен переместить камеру влево или вправо для захвата следующего изображения. Может обеспечиваться обратная связь с пользователем, которая показывает, как расширяется текущая зона изображения в плоскости изображения путем смещения области изображения в плоскости изображения, чтобы увеличить охватываемую за ее пределами область, которая возможна при угле обзора конкретной камеры.
Такие традиционные методы, по существу, действуют в двумерной плоскости и ориентированы на увеличение эффективного угла обзора камеры.
В изображенной на фиг. 1 системе контроллер 107 дисплея выполнен с возможностью генерирования индикации, которая включает в себя индикацию положения текущей позиции блока захвата относительно (одного или более положений) набора требуемых позиций захвата в направлении из плоскости изображения блока захвата. Индикация может в этой связи выдавать информацию о том, как блок 101 захвата должен перемещаться вперед или назад (по отношению к плоскости изображения), чтобы достичь требуемой позиции захвата и, в частности, требуемого положения захвата. Метод может использоваться для обеспечения обратной связи и ориентира для пользователя, что обеспечивает полный трехмерный захват сцены на основе захватов, которые не ограничены двумерной плоскостью (в частности, плоскостью изображения), но при этом использует метод захвата, учитывающий всю протяженность сцены. Можно считать, что метод обеспечивает основанный на сцене захват, при котором требуемые положения захвата в сцене могут идентифицироваться наблюдателем, направляемым в эти положения захвата, вместо того, чтобы просто использовать основанный на наблюдателе метод захвата, при котором пользователь сориентирован на смещение положения или ориентации точки наблюдения для расширения захваченной области плоскости двумерного вида. В отличие от традиционных методов, направленных на увеличение эффективного угла/области обзора охватываемой плоскости изображения, изображенный на фиг. 1 прибор захвата изображений направлен на захват данных для более точного представления сцены и, в частности, для представления трехмерных характеристик сцены.
Изображенная на фиг. 1 система при этом выполнена с возможностью ориентирования пользователя и обеспечения обратной связи, которая не просто является индикацией того, как может быть расширена область захвата плоскости изображения, но и предоставляет пользователю информацию, которая позволяет ему перемещаться по фактической сцене/среде для обеспечения улучшенного захвата. Так, вместо простой индикации плоскости изображения в области изображения прибор захвата изображений, изображенный на фиг 1, выполнен с возможностью получения и обеспечения обратной связи в реальной области/области сцены. Эта обратная связь не только показывает, как расширяется область изображения, но и показывает движение, требуемое или необходимое блоку 101 захвата вне плоскости изображения.
В частности, индикация может включать в себя индикацию текущей позиции относительно набора требуемых позиций захвата, который не ограничен самой плоскостью изображения. Наоборот, индикация положения также включает в себя индикацию того, как текущее положение относится к требуемой позиции захвата в направлении, которое не находится в плоскости изображения. В частности, индикация может указывать, как текущая позиция относится к требуемой позиции захвата в направлении, которое перпендикулярно плоскости изображения, и, следовательно, это может обеспечивать обратную связь о том, как пользователь должен перемещать блок 101 захвата в плоскость изображения или из нее. Индикация в этой связи обеспечивает информацию, которая может направлять пользователя к сложным схемам захвата в реальном трехмерном мире, что может обеспечивать значительно лучший трехмерный захват сцены.
Индикация положения может в этой связи иметь компоненту, которая указывает разность относительных положений между текущей позицией и по меньшей мере одной требуемой позицией захвата в направлении, которое не находится в плоскости изображения или параллельно ей, но которое имеет ненулевую проекцию на направление или ось, которая перпендикулярна плоскости изображения. Индикация может при этом характеризовать разность положений в z-направлении, где плоскость изображения соответствует плоскости «x, y» трехмерной системы координат «x, y, z».
Необходимо отметить, что в некоторых вариантах осуществления блок 101 захвата может являться трехмерной камерой, а не традиционной двумерной камерой. Однако в таких случаях блок 101 захвата, тем не менее, связан (как правило) с одной плоскостью изображения. Например, трехмерная камера дальности может обеспечивать выход в виде изображения и соответствующей карты глубин. В этом случае изображение (и карта глубин) задает плоскость изображения. Кроме того, для стерео- (или в более общем случае многовидовой) камеры каждое выдаваемое изображение задает плоскость изображения, и, безусловно, как правило, плоскость изображения для всех выдаваемых изображений одна и та же.
Набор требуемых позиций захвата, как правило, отражает набор позиций, для которого требуется осуществлять изображение/захват. Требуемые позиции захвата в дальнейшем также называются якорными позициями (и, аналогичным образом, требуемые положения/ориентации захвата также называются якорными положениями/ориентациями).
Помимо генерирования контроллером 107 дисплея индикации, например, разности в текущем положении относительно следующего якорного положения он может также генерировать индикацию ориентации текущей позиции относительно набора требуемых позиций захвата и, в частности, может генерировать индикацию текущей позиции относительно ориентации следующей якорной позиции. Это может обеспечивать улучшенную обратную связь с пользователем и может, например, иметь результатом систему, которая обеспечивает пользователю обратную связь и ориентир, позволяя ему выполнять захват на основе, например, схемы якорных положений с множеством якорных ориентаций для каждой якорной точки. В результате может достигаться эффективный захват трехмерной сцены с ориентиром, например, обеспечивающим видимость объектов с различных направлений, достигается достаточный охват всех областей сцены, и т.д.
Во многих вариантах осуществления прибор захвата изображений может дополнительно содержать процессор модели (не показан) для генерирования модели сцены из изображений, захваченных для (по меньшей мере некоторой части из) набора требуемых позиций захвата. Во многих вариантах осуществления данные о глубине, захваченные из набора требуемых позиций захвата (и, как правило, связанные с изображениями) могут также использоваться для генерирования модели. Очевидно, что может использоваться любой подходящий метод для разработки такой модели, и что в данной области техники известен ряд различных методов. Метод может во многих вариантах осуществления использоваться для генерирования улучшенной модели сцены на основе улучшенных захватов. Модель может в последующем использоваться, например, в качестве основы для приложения виртуальной реальности.
В некоторых вариантах осуществления прибор захвата изображений может дополнительно содержать синтезатор изображений, который выполнен с возможностью синтезирования одного или более изображений для позиции, не принадлежащей набору требуемых позиций захвата из изображений сцены для набора требуемых позиций захвата. Так, синтезатор изображений может быть выполнен с возможностью синтезирования нового изображения для позиции, отличной от той, для которой были захвачены изображения. Такой синтез изображений может основываться на алгоритмах сдвига точки наблюдения, которые хорошо известны специалистам. Метод может при этом обеспечивать особую эффективность при захвате сцены таким образом, что он может обеспечивать подходящую основу для синтеза изображений, с помощью которой, например, могут генерироваться изображения с видами сцены из всех возможных позиций несмотря на то, что сцена захватывается лишь из ограниченного набора позиций захвата.
Блок 101 захвата и, безусловно, во многих вариантах осуществления прибор захвата изображений в целом могут быть реализована в карманном устройстве, таком как, например, смартфон или карманная фото- или видеокамера. Метод может предпочтительно поддерживать процесс захвата, при котором пользователь может просто перемещать смартфон/камеру, следуя руководящим указаниям, выдаваемым индикаторами позиции, давая в результате эффективный захват трехмерных характеристик сцены из различных и предпочтительных положений захвата.
Прибор захвата изображений может в некоторых вариантах осуществления также быть выполнен с возможностью динамического отображения изображений, захваченных блоком 101 захвата. Например, в некоторых вариантах осуществления блок 101 захвата может обеспечивать потоковую передачу захвата, например, по существу, видеосигнал, содержащий динамически захваченные изображения. Контроллер 107 дисплея может генерировать сигнал дисплея, который содержит эти изображения, тем самым обеспечивая изображение в реальном времени того, что в данный момент захвачено блоком 101 захвата. Контроллер 107 дисплея может дополнительно накладывать на это изображение в реальном времени индикацию позиции, например, путем наложения изображения одной или более стрелок, показывающих необходимое движение, требуемое для смены текущей позиции на следующую якорную позицию. Еще в одном примере контроллер 107 дисплея может генерировать сигнал дисплея, в котором якорные точки наложены на изображение и показывают, где в трехмерной сцене расположены якорные точки.
Однако во многих вариантах осуществления прибор захвата изображений предпочтительно выполнен с возможностью нединамического отображения захваченного в данный момент изображения. Это может, например, позволить использовать фотокамеру, а не видеокамеру, тем самым обеспечивая более высококачественные захваты. Это может дополнительно во многих вариантах осуществления обеспечивать упрощенное действие, при котором простая индикация, такая как одна или более стрелок, отображается пользователю, давая ориентир в направлении якорных позиций.
В конкретном примере варианта осуществления может предполагаться обеспечение захвата сцены с использованием предопределенной сетки якорных положений и с предопределенными якорными ориентациями для каждого якорного положения. В данном примере сетка виртуальных камер образует отдельную горизонтальную плоскость над поверхностью земли. Схема/сетка позиций иллюстрируется на фиг. 2. На данном чертеже якорные положения изображены в виде сфер/кругов, при этом четыре стрелки показывают четыре захватываемых горизонтальных направления/ориентации для каждого якоря. Как показано, сетка может состоять из 25 якорных положений при четырех якорных ориентациях для каждого положения, что в результате дает в целом 100 якорных позиций. В данном примере сетка является горизонтальной сеткой, которая находится приблизительно на высоте глаз (1,7 м), позволяя пользователю с карманным устройством относительно легко перемещать устройство для достижения требуемых захватов. В данном примере высота (например, y-направление) постоянна для якорных положений, в то время как направления и вбок (x), и внутрь/наружу (z) различаются для различных якорных положений. Аналогичным образом, y-компонента для ориентаций постоянна, в то время как направления x и z изменяются. Безусловно, для ориентации все направления захвата горизонтальны, при этом поворот камеры также является статическим (изображение горизонтально), поэтому ориентация может быть выражена отдельной переменной, такой как, в частности, угол по отношению, например, к x-направлению. Таким образом, в данном примере позиции могут быть представлены вектором позиции с тремя компонентами.
В данном примере дисплей прибора захвата изображений может отображать пользователю индикацию, что он должен перемещаться вперед (в изображение) или назад (из изображения). Одновременно он может показывать, должен ли пользователь перемещаться вправо или влево и, кроме того, должен ли пользователь поворачиваться по часовой стрелке или против часовой стрелки. Эти индикации могут быть динамически обновляемыми для отражения текущей позиции блока 101 захвата, и, если пользователь следует за выдаваемым ориентиром, он будет вести его к следующей якорной позиции. Когда захват выполнен для данной якорной позиции, индикация может быть изменена на относящуюся к следующей незахваченной якорной позиции. Пользователь, следующий за ориентиром, будет в этой связи проходить по последовательности захватов, которая будет иметь результатом захват из всех требуемых якорных положений и во всех требуемых направлениях.
Еще в одном примере дисплей может показывать схему, которая непрерывно указывает, где находятся якорные положения/позиции относительно камеры, например, может быть показан отдельный круг или сфера для каждого якорного положения (возможно, со стрелками, отображающими для них якорные ориентации). Например, контроллер 107 дисплея может эффективно генерировать наложение или графическое изображение, которое показывает положения положений захвата в сцене, если смотреть со стороны камеры, т.е., для текущей позиции камеры. По мере перемещения камеры, положения индикаторов позиции изменяются, отражая изменения точки наблюдения, что в результате дает трехмерный эффект (например, параллакс), который создает у пользователя впечатление якорного положения (или позиции) в реальном трехмерном пространстве сцены (по существу генерируются виртуальные трехмерные индикации положения). Пользователь может после этого перемещать блок 101 захвата в направлении виртуальных индикаций положения с целью передвижения в следующую якорную позицию.
Метод может тем самым предусматривать удобный, но в то же время эффективный процесс захвата на основе карманной или пользовательской переносной камеры. Необходимо отметить, что такая операция захвата была бы невозможна с использованием отдельной многокамерной установки, поскольку камеры закрывали бы вид для других камеры. Последовательное сканирование статической сцены может обеспечивать практическое решение.
Во многих вариантах осуществления прибор захвата изображений может быть выполнен с возможностью выполнения захвата в результате обнаружения, что текущая позиция достаточно близка к незахваченной якорной позиции. Например, если обнаружено, что блок 101 захвата находится в пределах заданного расстояния и направления от якорной позиции, как иллюстрируется на фиг. 3, снимок может быть получен автоматически и сохранен для якорной позиции. Визуальная обратная связь по сканированному якорю может в некоторых вариантах осуществления обеспечиваться, например, путем изменения внешнего вида, например, цвета позиции или индикации положения.
Во многих вариантах осуществления дисплей может являться трехмерным дисплеем, и индикаторы позиции могут использовать все три измерения. Например, может быть показана трехмерная стрелка, отображающая направление на следующую якорную точку. Еще в одном примере схема якорных положений может отображаться в трех измерениях.
Во многих вариантах осуществления дисплей может являться дисплеем гарнитуры дополненной реальности (например, очков дополненной реальности или гарнитуры виртуальной реальности). Индикация может в таком случае отображаться относительно текущей ориентации головы. Например, положение блока 101 захвата относительно текущего положения головы может отображаться вместе с положением следующей якорной точки. Пользователь будет при этом по существу видеть виртуальные представления положения блока 101 захвата и якорного положения, соответствующих текущей позиции головы, и может в этой связи перемещать блок 101 захвата для размещения его в положение захвата.
Метод может при этом включать в себя визуализацию предопределенной и/или динамически определенной схемы требуемых местоположений камеры с ориентациями на очках виртуальной или дополненной реальности. Находясь в таких очках, пользователь может размещать камеру блока 101 захвата в окрестности виртуальных положений камеры. Когда камера находится в пределах предопределенного расстояния и угла от якорной позиции, камера может автоматически осуществлять съемку, и соответствующая индикация якорной позиции может изменять цвет, чтобы показать, что захват выполнен для данной позиции и что оператор может приступать к следующей якорной позиции.
В предыдущих примерах набор требуемых позиций захвата соответствует предопределенному набору якорных позиций, такому как регулярная сетка или куб якорных положений с постоянными якорными ориентациями. Однако в других вариантах осуществления прибор захвата изображений может быть выполнен с возможностью адаптации набора требуемых позиций захвата в соответствии со свойствами захватываемой сцены.
Во многих вариантах осуществления процессор 105 позиций может быть связан с процессором 111 захвата, который выполнен с возможностью определения набора требуемых позиций захвата в соответствии с данными, захваченными для сцены. Таким образом, набор требуемых позиций захвата может быть адаптирован к характеристикам конкретной сцены. В примере низкой сложности прибор захвата изображений может сначала захватывать несколько изображений из случайных точек наблюдения и корректировать, например, пространственную плотность или протяженность области захвата, зависящей от свойства изображений, например, зависящей от степени изменения в сцене.
Во многих вариантах осуществления оптимальный набор якорных позиций адаптивно определяется с учетом текущих условий.
В частности, процессор 111 захвата может быть выполнен с возможностью определения по меньшей мере некоторых из позиций захвата из набора требуемых позиций захвата в соответствии с данными, захваченными для сцены. Данные могут, в частности, представлять собой данные изображения интенсивности светового излучения и/или данные о глубине (и, в частности, глубине, относящейся к данным изображения), захваченные для некоторых позиций захвата в наборе требуемых позиций захвата. Так, набор позиций захвата может динамического обновляться и изменяться на основе захватов, выполненных для позиций захвата, которые уже включены в набор требуемых позиций захвата.
Например, процесс захвата может быть инициализирован набором предопределенных или заданных по умолчанию позиций захвата, например, набор может быть инициализирован с использованием позиций захвата, соответствующих регулярной сетке с заданным расстоянием между позициями захвата. Исходя из этого, может начинаться процесс захвата, при этом пользователь ориентируется на соответствующие позиции и при этом захваты выполняются соответствующим образом. Результирующие изображения могут затем обрабатываться, например, для определения характеристик глубины для сцены. Могут анализироваться интенсивность светового излучения и/или глубина, и на основе этого анализа процессор 111 захвата может, например, добавлять некоторые позиции захвата в набор требуемых позиций захвата. Например, если установлено, что позиции захвата в одной области захватывают часть сцены, которая является особенно сложной (например, по оценкам, эта часть сцены имеет большое изменение по глубине), то процессор 111 захвата может добавлять позиции захвата в этой области, чтобы выдавать дополнительные данные для части сцены. Например, он может добавлять позиции захвата между существующими позициями захвата.
Адаптация набора позиций захвата может основываться на оценке того, насколько хорошо сцена может быть смоделирована или изображение может быть синтезировано для различных точек наблюдения, на основе якорных позиций, включенных в набор якорных позиций. Если оценка показывает, что может достигаться достаточно точный синтез/моделирование, чтобы гарантировать достижение этого, могут быть включены дополнительные якорные позиции. В некоторых вариантах осуществления процессор 111 захвата может применять предопределенную схему, такую как система сеток, аналогичная изображенной на фиг. 2, но, например, варьировать размер и число якорных положений, включенных в сетку, исходя из того, насколько точным предполагается результирующее моделирование/синтез для данной сетки. В других вариантах осуществления может использоваться локальное варьирование якорных точек, при котором более высокая пространственная концентрация/плотность якорных точек вводится в областях, где сцену сложнее моделировать/синтезировать, чем там, где это проще.
В некоторых вариантах осуществления оценка качества модели/синтеза может учитываться только при инициировании процесса захвата, при этом адаптивное определение набора требуемых позиций захвата может выполняться только один раз. Во многих других вариантах осуществления набор требуемых позиций захвата может быть определен адаптивно и динамически во время операции захвата, при этом набор требуемых позиций захвата может быть изменен в соответствии с предыдущими захватами процесса.
Например, во время процесса захвата может выполняться оценка того, насколько хорошо тот или иной вид сцены может быть синтезирован по соседним (захваченным) видам. Когда предполагается, что это может достигаться с высоким качеством, например, сложность сцены низка или алгоритм интерполяции точки наблюдения эффективен, набор якорных позиций может быть выполнен менее плотным в данной области, например, путем исключения якорных позиций. Напротив, когда предполагается, что качество синтезированного вида является низким, пространственная плотность якорных позиций может быть сохранена или увеличена, например, путем добавления якорных позиций. Таким образом, набор якорных позиций и, например, соответствующая отображаемая схема могут меняться во время процесса захвата.
Во многих вариантах осуществления процессор 111 захвата может выполнять довольно сложный и точный анализ возможного качества. Например, процессор 111 захвата может даже синтезировать виды для одной и той же точки наблюдения по различным наборам захватов из существующих якорных позиций и сравнивать результирующие синтезированные виды. Если виды достаточно похожи, дополнительная позиция не добавляется, но, если результирующие виды значительно различаются, новая якорная позиция, соответствующая точке наблюдения, добавляется к набору якорных позиций.
Во многих вариантах осуществления могут использоваться более простые методы для определения критерия, который является подходящим для адаптации набора требуемых позиций захвата. Например, во многих вариантах осуществления критерий сложности сцены может определяться в соответствии с данными, захваченными для сцены, при этом набор требуемых позиций захвата может быть адаптирован в соответствии с критерием сложности. Как правило, для возрастающей сложности сцены процессор 111 захвата увеличивает число/плотность якорных позиций, а для убывающей сложности сцены он уменьшает число/плотность якорных позиций. Так, сложность сцены используется в качестве эвристики, чтобы оценивать, насколько хорошо реальный вид камеры может быть интерполирован по соседним якорным захватам.
Во многих вариантах осуществления процессор 111 захвата может быть выполнен с возможностью адаптации набора требуемых позиций захвата на основе данных о глубине для сцены. Данные о глубине могут, в частности, представлять собой расхождение, z-значение или любое другое значение, характеризующее расстояние от камеры до объекта в сцене, соответствующего положению изображения, для которого выдается значение глубины.
В этой связи, во многих вариантах осуществления прибор захвата изображений может содержать процессор 113 глубины, который выполнен с возможностью определения значений глубины для захватов сцены. Так, для той или иной позиции захвата процессор 113 глубины может определять значения глубины, отражающие расстояние от блока 101 захвата до объектов сцены для той или иной позиции захвата.
В некоторых вариантах осуществления процессор 113 глубины может непосредственно включать в себя функциональность измерения глубины, например, он может включать в себя функциональность измерения дальности. В других вариантах осуществления процессор 113 глубины может быть выполнен с возможностью определения значений глубины, например, из изображений, захваченных блоком 101 захвата. Например, если блок 101 захвата содержит стереокамеру, процессор 113 глубины может быть выполнен с возможностью определения значений глубины по стереоизображениям, генерированным блоком 101 захвата (как правило, с использованием оценки расхождения, как известно специалистам). Еще в одном примере, если блок 101 захвата содержит 2-мерную камеру, процессор 113 глубины может быть выполнен с возможностью определения значений глубины путем сравнения изображений для различных позиций (в этом случае также, как правило, на основе оценки расхождения).
Безусловно, несмотря на то, что на фиг. 1 процессор 113 глубины изображен как отдельный функциональный блок, он часто может рассматриваться как часть блока 101 захвата.
Во многих вариантах осуществления процессор 111 захвата может дополнительно или в качестве альтернативы быть выполнен с возможностью адаптации набора требуемых позиций захвата на основе данных светового поля/данных изображения для сцены. Таким образом, во многих вариантах осуществления процессор 111 захвата может учитывать данные визуального изображения.
Например, критерий сложности для сцены может часто определяться на основе данных о глубине, данных изображения или и данных о глубине, и данных изображения. Например, если данные о глубине указывают, что имеется большое изменение по глубине в сцене, например, с относительно частыми и относительно резкими ступенчатыми изменениями, это может рассматриваться как указание на то, что сцена является сложной и требует более высокой пространственной плотности якорных позиций. Аналогичным образом, если в изображении имеется большое варьирование, выраженное в сегментах изображения, имеющих весьма различные визуальные свойства, это может рассматриваться как указание на высокую сложность сцены, и, следовательно, процессор 111 захвата может увеличивать пространственную плотность якорных наборов (например, если сегментация изображения привела ко многим относительно небольшим объектам изображения и эти объекты имеют весьма различные цвета и/или интенсивности). Напротив, если глубина и/или визуальное варьирование незначительны, сцена может рассматриваться как имеющая относительно низкую сложность, и пространственная плотность якорных позиций может быть уменьшена.
Метод может, например, отражать, что в сценах с относительно большим числом мелких объектов, как правило, требуется большее число позиций захвата, чем для сцен с меньшим числом объектов или без объектов.
Во многих вариантах осуществления данные, используемые для адаптации набора требуемых позиций захвата, могут представлять собой данные, захваченные из существующих якорных положений. Это может упрощать действие во многих вариантах осуществления, поскольку отсутствует необходимость в выполнении или обработке дополнительного захвата. Это может также во многих вариантах осуществления обеспечивать улучшенные результаты, поскольку это непосредственно отражает свойства оцениваемой сцены при наблюдении из якорных точек.
В некоторых вариантах осуществления адаптация может являться глобальной адаптацией, т.е., если сложность сцены возрастает, расстояние между всеми якорными позициями уменьшается, и большее общее число якорных позиций увеличивается. Однако во многих вариантах осуществления используется более локализованный эффект, когда изменяется только число якорных точек в окрестности тех мест, в которых захватываются данные. Это может обеспечивать более гибкий метод, при котором учитываются изменения в сложности сцены, при этом плотность якорных позиций изменяется с учетом сложности сцены.
Пример такого метода иллюстрирован на фиг. 4. На чертеже изображен блок 101 захвата для двух различных сцен (или в двух различных положениях при попытке захвата сцены, когда из двух положений наблюдаются сцены различной сложности). Пример справа демонстрирует сценарий, в котором сцена имеет относительно низкую сложность, и предопределенная регулярная сетка якорных позиций 401 может использоваться для захвата из этой окрестности. В отличие от этого, сценарий слева демонстрирует пример, в котором сцена имеет относительно высокую сложность, и это привело к увеличению пространственной плотности якорных точек. В конкретном примере это достигается добавлением новых якорных позиций 403 в предопределенную сетку якорных позиций.
В предыдущих примерах основное внимание уделено примерам, в которых сложность сцены и адаптация набора требуемых позиций захвата рассматривались для сцены в целом. Однако во многих вариантах осуществления адаптация может быть более локализованной и может изменяться для различных частей сцены. Так, пространственная плотность якорных положений может быть увеличена в областях, в которых сложность сцены выше, и уменьшена в областях, в которых сложность сцены низка. Фиг. 4 можно считать примером того, как схема якорных позиций может изменяться для различных областей сцены, зависящих от локальных характеристик, т.е., два сценария могут отражать различные области/части одной и той же сцены.
В некоторых вариантах осуществления процессор 111 захвата может, в частности, быть выполнен с возможностью увеличения пространственной плотности требуемых позиций захвата в окрестности первой позиции в соответствии с захваченными в первой позиции данными, характеризующими возрастающее изменение по глубине, и/или уменьшения пространственной плотности в окрестности в соответствии с захваченными в первой позиции данными, характеризующими возрастающее изменение по глубине.
Как упоминалось выше, может генерироваться оценка изменения по глубине, целью которой является отражение наличия (или отсутствия) некоторого числа переходов по глубине, соответствующих наличию относительно высокого числа различных объектов на различных глубинах. Это может, например, достигаться путем идентификации сегментов на основе переходов по глубине в карте глубин и затем определения того, сколько таких сегментов обнаружено. Очевидно, что может использоваться множество других методов для определения подходящих критериев изменения по глубине.
В некоторых вариантах осуществления процессор 111 захвата может быть выполнен с возможностью адаптации набора требуемых позиций захвата в соответствии с критерием, характеризующим увеличенную шероховатость поверхности объекта сцены. Например, процессор 111 захвата может идентифицировать конкретный объект (например, наибольший объект) в изображении, захваченном камерой блока 101 захвата (например, на основе идентификации сегментов, имеющих соответствующие характеристики, как известно специалистам). Процессор 111 захвата может затем анализировать соответствующее сечение связанной с этим карты глубин для определения изменения по глубине в этой области. Если изменение по глубине относительно мало, поверхность объекта может быть относительно гладкой, и объект может быть точно представлен с использованием меньшего числа якорных позиций, чем если изменение по глубине относительно высоко, отражая объект, имеющий шероховатую поверхность.
В некоторых вариантах осуществления процессор 111 захвата может дополнительно или в качестве альтернативы учитывать значительно текстурированные изображения, и, в частности, сегменты изображений, соответствующие поверхностям объекта. Например, объект, идентифицированный, чтобы оценить, насколько шероховатой является поверхность, на основе данных о глубине, может в качестве альтернативы или дополнительно оцениваться с использованием данных изображения. Если объект имеет большое число вариаций текстуры, это предполагает, что объект может иметь сложную, изменяющуюся поверхность, и в этой связи пространственная плотность якорных позиций может быть увеличена, чтобы обеспечивать точный захват этой поверхности. Напротив, если вариация текстуры очень низка, это может означать гладкую поверхность, и может использоваться меньшее число якорных позиций.
В некоторых вариантах осуществления процессор 111 захвата выполнен с возможностью увеличения пространственной плотности требуемых позиций захвата в окрестности первой позиции в соответствии с захваченными в первой позиции данными, характеризующими уменьшенное расстояние до объекта сцены. В качестве альтернативы или, как правило, дополнительно процессор 111 захвата может быть выполнен с возможностью уменьшения пространственной плотности требуемых позиций захвата в окрестности первой позиции в соответствии с захваченными в первой позиции данными, характеризующими увеличенное расстояние до объекта сцены.
Сцена может, в частности, рассматриваться как менее сложная, когда объекты относительно далеки от камеры, поскольку это, как правило, обеспечивает улучшенную видимость различных аспектов и влечет за собой меньше изменений при изменении позиции вида. Это также обычно имеет результатом меньшее затенение объектом других частей сцены. Аналогичным образом, сцена может рассматриваться как более сложная, когда объекты относительно близки к камере, поскольку это требует более детальных захватов для точного отражения вариаций в объекте и кроме того приводит к тому, что объект, как правило, закрывает большую часть сцены, тем самым требуя дополнительных якорных позиций для обеспечения устранения затенения.
Увеличение и уменьшение пространственной плотности требуемых позиций захвата может, например, достигаться, как упомянуто выше, добавлением новых требуемых позиций захвата к уже существующему набору требуемых позиций захвата и/или исключением новых требуемых позиций захвата из уже существующего набора требуемых позиций захвата. Это может во многих вариантах осуществления обеспечивать эффективное генерирование набора требуемых позиций захвата и может предпочтительно обычно приводить к вариациям вокруг рассматриваемого номинального набора требуемых позиций захвата. Например, опыт может показывать, что нам необходимо захватывать точку наблюдения через каждые 1/2 градуса от объекта. Знание глубины до объекта при этом автоматически обеспечивает шаг пространственной дискретизации блока захвата. Однако процессор 111 захвата может изменять это с учетом локальных вариаций и, в частности, может добавлять якорные положения там, где имеется высокая степень сложности, и исключать якорные положения там, где имеется низкая степень сложности. Однако, поскольку захват основывается на предопределенном наборе, количество якорных положений, которые необходимо добавлять или исключать, часто является относительно малым, и может обеспечиваться действие низкой сложности. Кроме того, данный метод гарантирует, что относительно легко контролировать, что адаптация не является чрезмерной. Например, он предусматривает простой контроль, чтобы гарантировать, что якорных положений достаточно даже для окрестностей низкой сложности и что якорных положений не слишком много даже для окрестностей высокой сложности.
Очевидно, что различные критерии выбора могут использоваться, чтобы решить, какие позиции захвата необходимо исключить или добавить. Например, в некоторых вариантах осуществления процессор 111 захвата может просто исключать каждое второе положение захвата для снижения пространственной плотности или добавлять новое положение захвата между существующими положениями захвата для увеличения пространственной плотности.
Понятно, что в вышеизложенном описании для ясности описаны варианты осуществления изобретения применительно к различным функциональным схемам, блокам и процессорам. Однако очевидно, что любое подходящее распределение функциональности между различными функциональными схемами, блоками или процессорами может использоваться без ущерба для изобретения. Например, показанная функциональность, выполняемая отдельными процессорами или контроллерами, может выполняться одним и тем же процессором или контроллерами. Поэтому ссылки на конкретные функциональные блоки или схемы следует рассматривать только как ссылки на подходящие средства для обеспечения описанной функциональности, а не как характеризующие определенную логическую или физическую структуру или организацию.
Такой термин как «в окрестности» не является непонятным для любого специалиста в данной области техники, и абсолютное значение для такого термина не может быть дано в данной патентной заявке в общих чертах, поскольку оно неоправданно ограничит объем некоторых пунктов формулы изобретения. Специалисту понятно, что он может (и должен) свободно давать определение термина «окрестность», понимая, что любое абсолютное значение зависит от требуемого качества, которое является выбором специалиста, проектирующего патентоспособный прибор захвата изображений. Точный выбор окрестности зависит от конкретных конструктивных предпочтений и требований отдельного варианта осуществления.
Изобретение может быть реализовано в любой подходящей форме, включая аппаратное обеспечение, программное обеспечение, микропрограммное обеспечение или любую комбинацию перечисленного. Изобретение может при необходимости быть реализовано по меньшей мере частично в виде компьютерного программного обеспечения, запущенного на одном или более процессорах данных и/или цифровых сигнальных процессорах. Элементы и компоненты варианта осуществления изобретения могут быть физически, функционально и логически реализованы любым подходящим образом. Безусловно, функциональность может быть реализована в отдельном блоке, во множестве блоков или в составе других функциональных блоков. Таким образом, изобретение может быть реализовано в отдельном блоке или может быть физически и функционально распределено между различными блоками, схемами и процессорами.
Несмотря на то, что настоящее изобретение описано применительно к некоторым вариантам осуществления, оно не ограничено конкретной формой, изложенной в данном документе. Наоборот, объем настоящего изобретения ограничен только прилагаемой формулой изобретения. Кроме того, хотя признак может, по-видимому, быть описан применительно к конкретным вариантам осуществления, специалисту в данной области техники должно быть понятно, что различные признаки описанных вариантов осуществления могут быть объединены в соответствии с изобретением. В формуле изобретения термин «содержащий» не исключает наличия других элементов или этапов.
Более того, хотя они перечислены по отдельности, множество средств, элементов, схем или этапов способа может быть реализовано с помощью, например, единой схемы, блока или процессора. Кроме того, хотя отдельные признаки могут быть включены в различные пункты формулы изобретения, они могут предпочтительно быть объединены, и включение в различные пункты формулы изобретения не означает, что объединение признаков не является реализуемым и/или предпочтительным. Кроме того, включение признака в одну категорию пункта формулы изобретения не означает ограничения этой категорией, а скорее указывает, что признак при необходимости в равной степени применим к другим категориям пункта формулы изобретения. Более того, порядок признаков в формуле изобретения не предполагает какого-либо конкретного порядка, в котором признаки должны быть обработаны, и, в частности, порядок отдельных этапов в пункте формулы изобретения на способ не означает, что этапы должны выполняться в этом порядке. Наоборот, этапы могут выполняться в любом подходящем порядке. Кроме того, ссылки на единственное число не исключают множество. Так, ссылки на единственное число, «первый», «второй» и т.д. не исключают множественности. Ссылочные позиции в формуле изобретения приведены исключительно в качестве поясняющего примера и никоим образом не должны трактоваться как ограничивающие объем формулы изобретения.