способ улучшения плотной и разреженной карт диспарантности, точности реконструируемой трехмерной модели и устройство для реализации способа
Классы МПК: | G06T15/00 Передача трехмерного (3D) изображения, например от модели к побитовому изображению |
Автор(ы): | Скрибцов Павел Вячеславович (RU) |
Патентообладатель(и): | Закрытое акционерное общество "БОУ Лабораториз" (RU) |
Приоритеты: |
подача заявки:
2012-03-26 публикация патента:
10.04.2013 |
Изобретение относится к области реконструкции трехмерных объектов и сцен путем обработки их двухмерных изображений, полученных с разных точек наблюдения. Техническим результатом является улучшение качества карт диспарантности и точности реконструируемой трехмерной модели за счет упрощения задачи сопоставления элементов стереопар. В способе и устройстве методами компьютерной графики первичная трехмерная модель проецируется (отображается, осуществляется рендеринг) на виртуальные позиции наблюдения, совпадающие с позициями точек съемки исходных изображений. Осуществляется расчет декодирующей текстуры, позволяющей ассоциировать координаты пикселей проекции с параметрами геометрических лучей, выпущенных к соответствующим точкам трехмерной модели. Осуществляется стереосопоставление фактических изображений с соответствующими отображенными проекциями. Осуществляется уточнения трехмерных координат цифровой модели путем трансляции найденных таким образом диспарантностей, имеющих физический смысл ошибок обратного проектирования, в поправки к трехмерной модели при помощи декодирующего изображения. Процесс может происходить итеративно до сходимости, в ходе него будет получена более точная плотная и разреженная карты диспарантности и трехмерная модель. 2 н. и 7 з.п. ф-лы, 15 ил.
Формула изобретения
1. Способ улучшения плотной и разреженной карт диспарантности, точности реконструируемой трехмерной модели, включающий в себя выполнение следующих операций:
методами компьютерной графики первичную трехмерную модель проецируют (отображают, осуществляют рендеринг) на виртуальную позицию наблюдения, совпадающую с позицией точки съемки первого исходного изображения стереопары, используя в качестве текстуры второе исходное изображение стереопары;
в ходе проецирования осуществляют расчет декодирующей текстуры, позволяющей ассоциировать координаты пикселей проекции с параметрами геометрических лучей, выпущенных к соответствующим точкам трехмерной модели;
осуществляют стереосопоставление фактических изображений с соответствующими отображенными проекциями, при этом методы построения плотных карт диспарантностей и поиска точечных соответствий (разреженной карты диспарантности) работают более продуктивно и в состоянии найти большее число соответствий, чем при сопоставлении исходных изображений;
транслируют найденные таким образом диспарантности между оригинальным и синтетическим изображениями (проекциями), имеющие физический смысл ошибок обратного проектирования, в поправки к исходной плотной и/или разреженной карте диспарантности при помощи декодирующей текстуры;
осуществляют пересчет трехмерной модели на основе уточненной карты диспарантности.
2. Способ по п.1, отличающийся тем, что первоначальное приближение трехмерной модели строят при помощи сопоставления других стереопар, полученных в ходе съемки сцены с множества различных точек съемки.
3. Способ по п.1, отличающийся тем, что операцию, изложенную в п.1, производят попарно для нескольких или всех точек съемки сцены.
4. Способ по п.1, отличающийся тем, что операции из п.1 повторяют итеративно, вплоть до сходимости (до отсутствия значимых изменений-улучшений в карте диспарантности).
5. Способ по п.1, отличающийся тем, что для получения исходных изображений используются сферические или цилиндрические камеры.
6. Способ по п.1, отличающийся тем, что исходную карту диспарантности подвергают фильтрации медианным фильтром или иным фильтром, осуществляющим выравнивание карты диспарантности для исключения импульсного шума.
7. Способ по п.1, отличающийся тем, что для вычисления (рендеринга) виртуального вида и декодирующей текстуры применяется графический процессор (GPU) и одна из аналогичных технологий программирования графических процессоров или реализации шейдеров (Cg, CUDA, Direct3D, DirectCompute, DirectX, OpenGL, GLSL, и т.п.).
8. Способ по п.1, отличающийся тем, что исходные изображения получаются не съемкой сцены одной камерой из различных точек, а набором камер, находящихся в различных точках сцены.
9. Устройство для улучшения плотной и разреженной карт диспарантности, точности реконструируемой трехмерной модели, включающее в себя:
блок формирования исходной трехмерной модели из исходной карты диспарантности и известных параметров камер, осуществлявших съемку;
блок рендеринга виртуального вида, осуществляющего расчет проекции виртуального вида трехмерной модели, совпадающего с исходной точкой съемки, и соответствующей декодирующей текстуры, позволяющей ассоциировать координаты пикселей проекции с параметрами геометрических лучей, выпущенных к соответствующим точкам трехмерной модели;
блок вычисления плотной и разреженной карт диспарантностей между оригинальным изображением и синтетической проекцией;
блок декодирования (трансляции) карты диспарантности в поправки к исходной карте диспарантности при помощи декодирующего изображения.
Описание изобретения к патенту
Изобретение относится к средствам формирования трехмерных моделей (3D-моделей) на основе двумерных изображений, полученных от камер, а именно к способу улучшения плотной и разреженной карт диспарантности, точности реконструируемой трехмерной модели и устройству для реализации способа.
В настоящее время все чаще и чаще возникает потребность в формировании различных трехмерных моделей, которые могут применяться для различных целей в разных областях. Для этого разработано и существует множество способов и устройств формирования трехмерных сцен.
Задача реконструкции трехмерных поверхностей объектов и сцен по двухмерным изображениям актуальна на данный момент в связи с потребностями технологий визуализации трехмерных данных, индустрии развлечений, медицины и других областей. Существующий уровень техники располагает достаточным количеством стереоскопических методов построения карт диспарантностей (англ. "disparity map") и их улучшения методами фильтрации, поскольку карты диспарантностей в сочетании с информацией о параметрах камер, осуществлявших съемку стереопар, позволяют построить трехмерную модель наблюдаемой сцены и содержащихся в ней объектов.
Всевозможным проблемам вычисления карт диспарантностей посвящается множество публикаций, проанализированных в обзорных работах, посвященных классификации и сравнению различных подходов ([1] D.Scharstein and R.Szeliski, "A taxonomy and evaluation of dense two-frame stereo correspondence algorithms", International Journal of Computer Vision 47 (1/2/3), pp.7-42, 2002, [2] Myron Z.Brown, Darius Burschka and Gregory D.Hager, "Advances in Computational Stereo", IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol.25, NO.8, August 2003).
Построение плотных карт диспарантностей (dense disparity maps) связано с применением прямоугольных окрестностей пикселей для оценки степени корреляции элементов сопоставляемых изображений. Для построения разреженных карт диспарантностей (sparse disparity maps) путем сопоставления ключевых точек (feature points) на изображениях применяются масштабонезависимые и инвариантные к поворотам дескрипторы ([3] Lowe, David G. (1999). "Object recognition from local scale-invariant features". Proceedings of the International Conference on Computer Vision. 2. pp.1150-1157, [4] David Gossow, Peter Decker and Dietrich Paulus, "An Evaluation of Open Source SURF Implementations", Lecture Notes in Computer Science, 2011, Volume 6556/2011, 169-179), которые обычно являются опорными для последующего построения плотных карт диспарантностей ([5] Ju Yong Chang, Kyoung Mu Lee, Sang Uk Lee. Stereo matching using iterative reliable disparity map expansion in the color-spatial-disparity space. Pattern Recognition 40(12): 3705-3713 (2007)).
Однако при наблюдении объектов с разных ракурсов пропорции двухмерных изображений объектов, составляющих их элементов и текстур отличаются. Например, прямоугольный участок одного изображения может соответствовать трапециевидному участку на другом, при этом форма соответствующего участка зависит от трехмерного расположения данного элемента трехмерного объекта; наблюдаемая с одной точки наблюдения окружность может выглядеть как эллипс с другой (см. пример на ФИГ.2). Это приводит к двум осложнениям. Во-первых, в ходе построения плотной карты диспарантностей вычисление корреляции обычным методом при помощи скользящих окон одинаковой формы для обоих сопоставляемых изображений может давать неоптимальное решение, так как для соответствующих пикселей окрестности не представляются схожими. Во-вторых, поиск соответствий ключевых точек на изображениях от разных точек наблюдения по дескрипторам, устойчивым к поворотам и изменению масштаба, позволяет найти меньшее число соответствий из-за присутствия проективных искажений. Вычисление дескрипторов, инвариантных к проективным искажениям, на практике нецелесообразно, так как многократно увеличит объем вычислений. С ростом базы, то есть расстояния между точками съемки, проблема усугубляется, так как 2D-изображения объектов получаются заснятыми под существенно различающимися углами. Актуальность изобретения повышается в связи с тем, что для получения более точных трехмерных моделей желательно увеличение базы между точками съемки для увеличения точности определения трехмерных координат точек поверхностей объектов методом триангуляции.
Способам уточнения карт диспарантностей и трехмерных моделей посвящается множество таких изобретений, как: US 2006056727 A1, WO 2009069958 A2, US 2011080466 A1, KR 20110090488 A, WO 2009125988 A2, RU 2010103906 A, US 2011222756 A1, US 7561732 B1, KR 20070061094 A, WO 2008029345 A1, CN 101557534 A, US 2010309292 A1, US 2005190180 A1, SU 1830447 A1, SU 1793226 A1, KR 20020095752 A, WO 2004049255 A2, US 2004105580 A1, KR 20070061011 A, US 2011026809 A1, US 2005286758 A1, KR 100943635 B1, WO 2009008864 A1, US 2009324059 A1, WO 2011104151 A1, WO 2011104151 A1, WO 2011081646 A1, KR 20050058085 A, WO 2009134155 A1, RU 2008144840 A, KR 20100088774 A, US 6046763 A, US 2004223640 A1, US 2003091225 A1, WO 2006046180 A1, US 2010182406 A1, JP 2009043221 A, US 2009067705 A1, KR 100762670 B1, US 2011044531 A1, US 2006029270 A1, US 2011080464 A1, WO 2008156450 A1, US 2010208034 A1, US 2009073170 A1, WO 2009061305 A1, US 2006140510 A1, WO 2009124663 A1, KR 20080052363 A, WO 2010007285 A1, US 2010020178 A1, RU 2382406 C1, GB 2478156 A, KR 20100049855 A, US 2010220932 A1, RU 2009110511 A, US 2007286476 A1, WO 2010028718 A2, RU 2008144840 A, RU 2009110511 A, JP 2006012166 A, WO 2011103865 A2, WO 2011118077 A1, WO 2011123174 A1, US 2011304708 A1, WO 2011157454 A1, US 2011091096 A1, WO 2008075271 A2, US 4695156 A, KR 100257335 B1, US 2010053416 A1, KR 20100135032 A, WO 2011014229 A1, KR 20110055020 A. Однако в данных изобретениях в отличие от предлагаемого способа:
(а) синтетические виды (virtual view) производятся только как конечный результат, служащий целью просмотра человеком трехмерной сцены с различных точек наблюдения, а не для целей сопоставления с оригинальными изображениями;
(б) не адресуется проблема перспективных искажений в сопоставляемых изображениях;
(в) модули генерации синтетических видов не рассчитывают декодирующие текстуры;
(г) не предлагается вычислять декодирующее изображение (текстуру) и применять его для трансляции диспарантностей между оригинальными и синтетическими видами в поправки к исходным картам диспарантностей.
Например, в патенте RU 2382406 C1, как и во многих аналогичных патентах из приведенного выше списка, рендерер (отрисовщик, генератор) виртуального вида упомянут, но не имеет обратной связи к блоку вычисления диспарантностей и не осуществляет расчет декодирующего изображения. То есть является только средством отображения информации и не принимает участия в расчетах самой карты диспарантности или ее улучшений. В патенте RU 2419880 C2 в обратной связи, обеспечивающей итеративное улучшение карты диспарантностей, рендерер вида не упомянут, то есть виртуальный вид и декодирующая текстура, как источник дополнительной информации для уточнения карты диспарантности, не рассматривается.
В заявке US 2010295853, опубликована 25.11.2010, описываются способ и система построения трехмерной модели на основе карты глубины и рендеринга.
Однако в известном способе и системе не осуществляется обработка получаемого от камеры изображения путем удаления движущихся объектов, не составляется карта диспаритетов, которая затем учитывается при построении трехмерной модели, а также не осуществляется наложение различных дополнительных объектов.
В статье Sang-Beom LEE, Sung-Yeol KIM и Yo-Sung HO «Multi-view image generation from depth maps and texture images using adaptive smoothing filter», The 2008 International conference on Embedded Systems and Intelligent Technology, February 27-29, 2008, Grand Mercure Fortune Hotel, Bangkok, Thailand, найдена в Интернете по адресу http://imaging.utk.edu/people/sykim/paper/2008_ICESIT_sblee.pdf, описывается способ формирования трехмерной сцены с использованием процесса сглаживания путем удаления пустот, построения карты глубины и рендеринга.
Однако в известном способе не осуществляется обработка получаемого от камеры изображения путем удаления движущихся объектов, не составляется карта диспаритетов, которая затем учитывается при построении трехмерной модели, а также не осуществляется наложение различных дополнительных объектов.
В патенте RU 2423018, опубл. 27.06.2011, описывается способ и система построения трехмерной модели. Для построения трехмерной модели вычисляется карта диспарантности исходного изображения и карта глубины, после чего выполняют сглаживание карты глубины и формируют трехмерную модель.
Однако в этом патенте не раскрываются такие этапы, как удаление движущихся объектов с последующим заполнением пустых мест, образованных после удаления объектов. Также в этом патенте не описывается этап выполнения рендеринга с наложением различных дополнительных объектов на карту диспаритетов.
Задача, на решение которой направлено заявляемое изобретение, заключается в улучшении качества карт диспарантности и точности реконструируемой трехмерной модели за счет упрощения задачи сопоставления элементов стереопар, что достигается путем устранения отличий в пропорциях и масштабах двухмерных изображений объектов, составляющих их элементов и текстур, обусловленных наблюдением сцены с разных ракурсов и расстояний.
Техническим результатом, достигаемым заявленным изобретением, является обеспечение улучшенной системы, способа и машиночитаемого носителя, которые предоставляют расширенные возможности по формированию трехмерных моделей на основе изображений, полученных от камер, с возможностью наложения дополнительных объектов на эти модели, отсутствующих в изображениях, получаемых от камер, без потери реалистичности изображения.
Дополнительным техническим результатом является сокращение времени на обработку изображений от камер за счет использования кластеров и распределения заданий между этими кластерами.
Указанный технический результат достигается тем, что предложен способ и устройство уточнения карты диспарантности (ФИГ.1).
При этом способ улучшения плотной и разреженной карт диспарантности, точности реконструируемой трехмерной модели включает выполнение следующих операций:
методами компьютерной графики первичную трехмерную модель проецируют (отображают, осуществляют рендеринг) на виртуальную позицию наблюдения, совпадающую с позицией точки съемки первого исходного изображения стереопары, используя в качестве текстуры второе исходное изображение стереопары;
в ходе проецирования осуществляют расчет декодирующей текстуры, позволяющей ассоциировать координаты пикселей проекции с параметрами геометрических лучей, выпущенных к соответствующим точкам трехмерной модели;
осуществляют стереосопоставление фактических изображений с соответствующими отображенными проекциями, при этом методы построения плотных карт диспарантностей и поиска точечных соответствий (разреженной карты диспарантности) работают более продуктивно и в состоянии найти большее число соответствий, чем при сопоставлении исходных изображений;
транслируют найденные таким образом диспарантности между оригинальным и синтетическим изображением (проекцией), имеющие физический смысл ошибок обратного проектирования, в поправки к исходной плотной и/или разреженной карте диспарантности при помощи декодирующей текстуры;
осуществляют пересчет трехмерной модели на основе уточненной карты диспарантности.
Дополнительно, первоначальное приближение трехмерной модели строят при помощи сопоставления других стереопар, полученных в ходе съемки сцены с множества различных точек съемки, операцию, изложенную в п.1 формулы, производят попарно для нескольких или всех точек съемки сцены или повторяют итеративно, вплоть до сходимости (до отсутствия значимых изменений-улучшений в карте диспарантности). Кроме того, для получения исходных изображений используются сферические или цилиндрические камеры; исходную карту диспарантности подвергают фильтрации медианным фильтром или иным фильтром, осуществляющим выравнивание карты диспарантности для исключения импульсного шума; для вычисления (рендеринга) виртуального вида и декодирующей текстуры применяется графический процессор (GPU) и одна из аналогичных технологий программирования графических процессоров или реализации шейдеров (Cg, CUDA, Direct3D, DirectCompute, DirectX, OpenGL, GLSL и т.п.).
Способ может включать то, что исходные изображения получаются съемкой сцены не одной камерой из различных точек, а набором камер, находящихся в различных точках сцены.
Технический результат обеспечивается также тем, что устройство для улучшения плотной и разреженной карт диспарантности, точности реконструируемой трехмерной модели включает:
блок формирования исходной трехмерной модели из исходной карты диспарантности и известных параметров камер, осуществлявших съемку;
блок рендеринга виртуального вида, осуществляющего расчет проекции виртуального вида трехмерной модели, совпадающего с исходной точкой съемки, и соответствующей декодирующей текстуры, позволяющей ассоциировать координаты пикселей проекции с параметрами геометрических лучей, выпущенных к соответствующим точкам трехмерной модели;
блок вычисления плотной и разреженной карт диспарантностей между оригинальным изображением и синтетической проекцией;
блок декодирования (трансляции) карты диспарантности в поправки к исходной карте диспарантности при помощи декодирующего изображения.
При этом методами компьютерной графики первичная трехмерная модель, построенная на основе входной карты диспарантности, проецируется (отображается, осуществляется рендеринг) на виртуальные позиции наблюдения, совпадающие с позициями точек съемки исходных изображений. Важную часть изобретения составляет расчет декодирующей текстуры в ходе проецирования, позволяющей ассоциировать координаты пикселей проекции с параметрами геометрических лучей, выпущенных к соответствующим точкам трехмерной модели. Осуществляется стереосопоставление фактических изображений с соответствующими отображенными проекциями. При этом методы построения плотных карт диспарантностей и поиска точечных соответствий (разреженной карты диспарантности) работают более продуктивно и в состоянии найти большее число соответствий, чем при сопоставлении исходных изображений. Это позволяет осуществить уточнение трехмерных координат цифровой модели путем трансляции найденных таким образом диспарантностей, имеющих физический смысл ошибок обратного проектирования, в поправки к трехмерной модели при помощи декодирующего изображения. Процесс может происходить итеративно до сходимости, в ходе него будет получена более точная плотная и разреженная карты диспарантности и трехмерная модель.
Способ можно описать и в виде этапов, на которых:
а) расщепляют каждое изображение, полученное от каждой камеры, на три изображения;
б) фильтруют расщепленные изображения, полученные на этапе а), путем удаления движущихся объектов с каждого расщепленного изображения и объединяют отфильтрованные три изображения в одно изображение;
в) разделяют каждое объединенное изображение, полученное на этапе б), для каждой камеры на непересекающиеся блоки;
г) составляют карту диспаритетов для каждого разделенного изображения, полученного на этапе в), на основе кросс-корреляции;
д) объединяют фрагменты карты диспаритетов для формирования вновь объединенного изображения;
е) выбирают значения карты диспаритетов, которые больше заданного значения;
ж) осуществляют фильтрацию упомянутой карты диспаритетов путем удаления частей изображения, в которых диспаритет часто меняется, и заполняют полученные пустые места с учетом средних значений областей, находящихся рядом с границами пустых мест;
з) сглаживают каждое отфильтрованное изображение, полученное на этапе ж);
и) строят карту глубины для каждого изображения, полученного на этапе з);
к) формируют трехмерную модель путем объединения изображений, полученных на этапе з), для всех камер с учетом полученной карты глубины и выполнения рендеринга объединенных изображений с наложением, по меньшей мере, одного дополнительного объекта на полученное объединенное изображение.
В частном варианте выполнения способа, изображения получают от семи камер. Камеры имеют два положения: верхнее и нижнее. Каждая камера формирует два изображения, которые смещены относительно друг друга по вертикальной оси.
Для расщепления изображения, выполняемого на этапе а), применяют метод кросс-корреляции. При этом фильтрацию расщепленного изображения выполняют путем попиксельного сравнения трех изображений, полученных от каждой камеры, и выбора среднего значения пикселя.
На этапе г) непересекающиеся блоки, полученные на этапе в), распределяются по узлам кластера. При этом кластеры являются многопоточными или однопоточными.
Кросс-корреляцию, применяемую на этапе г), выполняют путем перемещения шаблона-окна определенного размера по изображению, полученному от верхней камеры, и сравнения изображения в шаблоне-окне с изображением от нижней камеры. Диспаритет, определяемый на этапе г), определяется как функция сдвига по изображению. Причем объединение изображений на этапе к) выполняют в соответствии с алгоритмом разбиения, выполняемым на этапе в).
Заданное значение, используемое на этапе е), является значением корреляции. При этом частями изображения, в которых диспаритет часто меняется, являются области соединения двух фрагментов изображений места, где стоят упомянутые камеры, или другие предметы.
Заполнение пустых мест, выполняемое на этапе ж), осуществляют итерационно.
Каждая камера формирует два изображения, каждое из которых является панорамой 1105°×180°. Каждое расщепленное изображение, полученное на этапе а), имеет размер 360°×180°.
Таким образом, в отличие от известных из уровня техники способов и устройств, заявляемое изобретение представляет собой устройство и способ для улучшения карты диспарантности, основанные на сопоставлении схожих по геометрии синтетических и реальных изображений и позволяющие избежать неэффективности работы алгоритмов сопоставления элементов стереоизображений, обусловленной различиями в ракурсах съемки. Дополнительным положительным эффектом данного изобретения является сокращение диапазона поиска диспарантностей по координате x и y, так, требуемый диапазон поиска величины диспарантности пикселей между синтетическим и реальным изображениями пропорционален величине ошибки в исходной карте диспарантности, которая, как правило, значительно ниже, чем диапазон изменения диспарантности в ходе расчета исходной карты диспарантности. Этот положительный эффект особенно важен в случае, если эпиполярные линии для сопоставления исходных изображений не являются прямыми линиями (например, если съемка производилась сферическими камерами).
Далее существо заявляемого технического решения поясняется в деталях с привлечением графических материалов.
Фиг.1. Общая принципиальная схема заявляемого устройства.
Фиг.2. Иллюстрация проблемы сопоставления стереоскопических изображений, связанной с перспективными искажениями проекций, полученных при различающихся ракурсах съемки.
Фиг.3. Пояснение принципа синтеза декодирующего изображения и сопоставления реальных и синтетических изображений (видов сцены).
Фиг.4. Перечень входных и выходных сигналов предлагаемого устройства.
Фиг.5. Внутренняя структура предлагаемого устройства с описанием работы составляющих его блоков.
Фиг.6. Пример изображения «Mountain», снятого в точке А.
Фиг.7. Пример изображения, снятого в точке Б.
Фиг.8. Пример синтетического вида из точки А, полученного с использованием изображения Б, в качестве текстуры, исходной трехмерной модели и данных о параметрах камер (внутренних и внешних). Очевидность сходства с фактическим изображением, полученным из точки А.
Фиг.9. Визуализация точечных соответствий, полученных для синтеза разреженной карты диспарантностей, в случае сопоставления оригинальных изображений А и В.
Фиг.10. Визуализация примера точечных соответствий, полученных в ходе сопоставления изображения "Mountain" А, и синтетического вида модели, полученной из точки А (изображение А*).
Фиг.11. Визуализация точечных соответствий для примера «NYS», полученных с использованием сопоставления исходных изображений А и В.
Фиг.12. Визуализация точечных соответствий для примера «NYS», полученных в ходе сопоставления изображения А, и синтетического вида модели, полученной из точки А (изображение А*).
Фиг.13. Пример входной карты диспарантности «NYS», построенной методом SAD.
Фиг.14. Улучшенная предложенным способом плотная карта диспарантности «NYS».
Фиг.15. Столбчатая диаграмма числа найденных точечных соответствий разреженной карты диспарантностей для примеров «Mountain» и «NYS» в случае сопоставления исходных видов, или видов, полученных в результате применения предложенного в данном изобретении способа.
На Фиг.2 видно, что камера, наблюдающая трехмерный объект «3D OBJECT» «справа», формирует проекцию В, которая имеет существенные отличия от проекции А, сформированной «левой» камерой. Известные из уровня техники методы сопоставления таких стереопар, применяющие прямоугольные окна для сопоставления (корреляции, совмещения) элементов изображений, будут работать неэффективно, так как они предполагают незначительность геометрических искажений элементов в рамках окна поиска соответствия.
Для преодоления указанной проблемы в данном способе предлагается формировать для сопоставления изображения В с изображением А синтетическое изображение А*, представляющее собой проекцию для виртуальной точки наблюдения CA трехмерной модели сцены с наложенной на нее текстурой в виде изображения В, полученного из точки наблюдения CB (см. Фиг.3). Если трехмерная модель сцены, использованная для синтеза проекции А*, является приближением к истинной трехмерной модели, то проекция А* будет схожа с исходным изображением А и известные из уровня техники методы построения плотных карт диспарантности (такие как SAD, например), а также методы построения разреженных карт диспарантностей (поиск соответствующих ключевых точек по дескрипторам) будут работать существенно более эффективно, поскольку основные отличия пропорций элементов изображений, связанных с отличающимся ракурсом наблюдения, будут устранены. Степень отличия пропорций будет уменьшаться с улучшением качества трехмерной модели, что позволяет использовать предложенный способ в итеративном режиме. В идеальном (предельном, асимптотическом) случае, если отсутствуют ошибки в определенных положениях (точек съемки) и значениях внутренних параметров камер, трехмерные модели изображения А и А* должны попиксельно совпасть. Различия в изображениях А и А* суть карта диспарантностей между А и А*, которая может быть транслирована в поправки к карте диспарантностей между А и В по формуле:
где x - двумерный координатный вектор {х,у};
DAB(x)* - новые значения карты диспарантности между изображениями A и B (вектор-функция, имеющая две компоненты, - диспарантность по оси x и диспарантность по оси у изображения);
DAA*(x) - значение карты диспарантности между А и А* (аналогичная по возвращаемым значениям вектор-функция диспарантностей по осям x и y);
U(x) - вектор-функция (декодирующая текстура), рассчитанная модулем синтеза виртуального вида, значения которой суть значения координат пикселей текстуры В, цвет которых определил цвет пикселя проекции А* с координатой х. Поскольку процесс наложения текстуры известен из уровня техники, можно считать доказанным возможность построения U(x), так как для отображения пикселя x проекции А* в ходе процесса наложения текстуры (определения цвета пикселя x) необходимо получить доступ на чтение к соответствующему элементу текстуры (которым является изображение В), следовательно, необходим расчет адреса текстуры, который по сути и является (с точностью до известного линейного преобразования) значением U(x). На практике, наиболее удобно реализовать расчет U(x) при помощи шейдеров графического процессора, что является понятным для специалиста в области компьютерной графики.
Для повышения устойчивости процесса сходимости формула (1) может быть модифицирована путем слияния нового и предыдущего значений карт диспарантностей по формуле
где Ф - решающее правило, по которому происходит слияние старых и новых значений диспарантности (например, могут быть разрешены только незначительные изменения диспарантности, не превышающие порога или относительной степени изменения, выраженные в процентном отношении к самой величине диспарантности, и т.п.). Частным случаем функции Ф является взвешенная сумма
где параметр k=0 1 имеет физический смыл скорости сходимости.
Симметричность процедуры относительно изображений А и В позволяет получить способ уточнения карты диспарантности DBA (x)* путем смены мест переменных А и В.
Таким образом, для осуществления вышеописанной процедуры необходимо иметь следующий набор входных данных (см. Фиг.4): исходные изображения (стереопара); исходные карты диспарантности, полученные известным уровнем техники, которые играют роль первых приближений; параметры камер.
Принципиальная схема устройства, осуществляющего указанный способ, отражена на Фиг.5. Блок А1 осуществляет известным из уровня техники методом формирование трехмерной модели исходя из полученных данных о параметрах камеры (точки съемки) Б и карты диспарантности. Выходом модуля является трехмерная модель сцены в мировой системе координат, которая подается в блок А2, осуществляющий ее рендеринг в виртуальный вид А*, являющийся видом на трехмерную модель из позиции А (используя для этого параметры камеры А), накладывая изображение Б в качестве текстуры модели. Блок А2 имеет два выходных сигнала. Помимо синтеза изображения А*, блок А2 осуществляет расчет декодирующей текстуры U(x) в соответствии с данным выше определением. Первый выход блока А2 (изображение А*) подключен к блоку A3. А второй выход блока А2 (декодирующая текстура) подключен к блоку А4. Блок A3 осуществляет вычисление разреженной и плотной карт диспарантностей между изображениями А и А* одним из известных специалисту способов (например, при помощи SAD). Блок А4 осуществляет декодирование карты диспарантности АА* с применением декодирующего изображения, выполняя вычисления по формуле (1), выходом блока А4 является улучшенное значение карт диспарантностей для точки наблюдения А.
На Фиг.6-15 показаны примеры технического результата применения данного способа. Фиг.6 показывает пример оригинального изображения А сцены под кодовым названием «Mountain». Фиг.7 показывает пример оригинального изображения Б, полученного с другой точки съемки. Фиг.8 показывает синтетический вид модели, текструрированной изображением Б с точки наблюдения А. Видно, что пропорции элементов объектов на изображении на Фиг.8 в значительной мере больше соответствуют наблюдаемым пропорциям элементов на Фиг.6. На Фиг.9 отражены результаты запуска процесса поиска точечных соответствий на изображении с применением дескрипторов ключевых точек, инвариантных к масштабу и повороту (построение разреженной карты диспарантности). Фиг.9 представляет собой наложенные друг на друга изображения А и Б, совмещенные ключевые точки которых соединены линиями. Фиг.10 представляет собой аналогичную картину, но для изображений АА*. Видно, что на Фиг.10 количество линий в несколько раз больше, а значит, и найденных соответствий, и следовательно, качество разреженной карты диспарантности лучше, чем на Фиг.9. Также видно, что линии, соединяющие точки на Фиг.10, существенно короче, что позволяет использовать локальность для уточнения и упрощения поиска соответствий. Аналогичные примеры приведены для сцены под кодовым названием «NYS» (Фиг.11 и Фиг.12). На Фиг.13 показана исходная плотная карта диспарантности для точки А сцены «NYS», полученная методом SAD. На Фиг.14 показана улучшенная предлагаемым в данной заявке способом карта диспарантности после трех итераций работы устройства. Визуально наблюдается уменьшение числа артефактов, спеклов и увеличение степени детализации некоторых элементов карты диспарантности. Количественная характеристика увеличения в результате применения способа числа найденных соответствий для сцен «Mountain» и «NYS» приведена на Фиг.15 и отражает приблизительно трехкратное увеличение количества найденных соответствий (столбики диаграммы для сцены «Moutain» были увеличены в 10 раз для удобства восприятия).
Класс G06T15/00 Передача трехмерного (3D) изображения, например от модели к побитовому изображению