RU2695528C2 - Визуализация изображения данных лазерного сканирования - Google Patents
Визуализация изображения данных лазерного сканирования Download PDFInfo
- Publication number
- RU2695528C2 RU2695528C2 RU2017104504A RU2017104504A RU2695528C2 RU 2695528 C2 RU2695528 C2 RU 2695528C2 RU 2017104504 A RU2017104504 A RU 2017104504A RU 2017104504 A RU2017104504 A RU 2017104504A RU 2695528 C2 RU2695528 C2 RU 2695528C2
- Authority
- RU
- Russia
- Prior art keywords
- cubic
- image
- map
- distance
- texture
- Prior art date
Links
- 238000012800 visualization Methods 0.000 title claims abstract description 56
- 238000000034 method Methods 0.000 claims abstract description 63
- 238000012545 processing Methods 0.000 claims abstract description 13
- 238000005070 sampling Methods 0.000 claims abstract description 7
- 230000008569 process Effects 0.000 claims description 23
- 239000012634 fragment Substances 0.000 claims description 16
- 230000015572 biosynthetic process Effects 0.000 claims description 11
- 238000009877 rendering Methods 0.000 claims description 9
- 230000000694 effects Effects 0.000 abstract description 2
- 239000000126 substance Substances 0.000 abstract 1
- 238000003860 storage Methods 0.000 description 9
- 238000013507 mapping Methods 0.000 description 8
- 238000011960 computer-aided design Methods 0.000 description 7
- 230000001154 acute effect Effects 0.000 description 6
- 238000003384 imaging method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000004040 coloring Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000004931 aggregating effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000010186 staining Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/89—Lidar systems specially adapted for specific applications for mapping or imaging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/40—Hidden part removal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/10—Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/521—Depth or shape recovery from laser ranging, e.g. using interferometry; from the projection of structured light
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
- G06T15/80—Shading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/003—Navigation within 3D models or images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2215/00—Indexing scheme for image rendering
- G06T2215/12—Shadow map, environment map
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2215/00—Indexing scheme for image rendering
- G06T2215/16—Using real world measurements to influence rendering
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Electromagnetism (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Computer Networks & Wireless Communication (AREA)
- Optics & Photonics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
Abstract
Изобретение относится к способам, машиночитаемому носителю и компьютерной системе для визуализации изображения данных трехмерного лазерного сканирования. Технический результат заключается в автоматизации обработки данных трехмерного лазерного сканирования. В способе обеспечивают кубическую карту дистанции и соответствующую кубическую карту изображения, подготовленные из данных трехмерного лазерного сканирования; и графическим процессором формируют шаблон замощения с использованием кубической карты дистанции; и визуализируют изображение на основе шаблона замощения посредством дискретизации кубической карты изображения. 4 н. и 16 з.п. ф-лы, 21 ил.
Description
Область техники
Настоящее изобретение относится к способу и системе для визуализации изображения данных лазерного сканирования.
Уровень техники
Трехмерный лазерный сканер может использоваться для обследования окружающей среды, например, технологического оборудования, судна или другого объекта. Типичный сканер включает в себя лазерный дальномер, который может измерять расстояние между сканером и точкой на поверхности, которая находится в поле зрения. Охватывая поле зрения (как правило, 360 градусов по горизонтали и почти 180 градусов по вертикали), сканер может захватить набор дистанций (в настоящем документе называемое "данными лазерного сканирования") для окружающей среды. Они могут использоваться для формирования набора точек в трехмерном пространстве, часто называемого "облаком точекʺ. Пример облака точки описан в документе EP 1176393 A2.
Множественные циклы сканирования могут быть выполнены в разных позициях в окружающей среде, и облака точек из разных циклов сканирования могут быть объединены для получения объединенного (или "агрегированного") облака точек, покрывающего более широкую область. Пример данных объединенного облака точек может быть найден в документе WO 2004/003844 A1.
В дополнение к сбору данных дистанции сканер также может захватывать изображения окружающей среды, измеряя интенсивность отраженного лазерного света или используя камеру.
Облако (облака) точек и изображения могут использоваться для визуализации и/или анализа окружающей среды с использованием приложения просмотра облака точек или приложения трехмерного автоматизированного проектирования (CAD). Как правило, эти приложения попадают в две категории, а именно, те, которые работают с точками из индивидуальных циклов сканирования, и те, которые работают с точками, объединенными из нескольких циклов сканирования.
Одно из самых простых приложений лазерного сканирования заключается в том, чтобы отобразить изображение, захваченное посредством индивидуального цикла сканирования. Поскольку изображение от лазерного сканирования является сферическим, покрывающим область вокруг лазерного сканера, прикладная программа может спроецировать изображение на внутреннюю часть сферы. Приложение может отобразить участок сферы на мониторе. Пользователь может вращать изображение для просмотра разных частей всего изображения. Это представление называется ʺсферическим ракурсомʺ.
В сферическом ракурсе пользователь может выбрать место на изображении и извлечь трехмерную координату того местоположения, используя данные облака точек для этого лазерного сканирования. Выбирая две точки, пользователь может измерять расстояния.
Приложение одного типа может накладывать трехмерную модель CAD в сферическом ракурсе. Поскольку приложение знает трехмерное местоположение точек в сферическом ракурсе, оно может загораживать подходящие части модели CAD за сферическим ракурсом. Это комбинированное изображение может быть полезным при проектировании новых областей объекта.
Привлекательным признаком сферического ракурса является то, что он выглядит реалистично. Реализм происходит из изображения, захваченного в местоположении сканера. Однако ограничением сферических ракурсов является то, что они могут быть произведены только для местоположений, в которые был помещен лазерный сканер. Пользователь может выбрать сферический ракурс и совершать вращение налево и направо или вверх и вниз, но он не может переместиться вперед, назад, горизонтально или вертикально, чтобы рассмотреть окружающую среду из другой точки обзора.
Чтобы позволить свободное перемещение, некоторые прикладные программы работают с комбинированным облаком точек из нескольких циклов сканирования. Используя такое приложение, пользователь выбирает местоположение в объекте и направление обзора. Затем приложение отображает каждую точку в объединенном облаке точек вокруг этого местоположения с точки обзора пользователя. Пользователь может перемещать местоположение обзора и направление, чтобы видеть точки с разных точек обзора.
Некоторые приложения могут отображать модель CAD в одном и том же трехмерном пространстве как объединенное облако точек. Затем пользователь может измерить расстояния между местоположениями в модели CAD и точками в облаке точек. Пользователь также может определить, пересекают ли части облака точек части модели CAD.
Хотя отображение объединенного облака точек позволяет пользователю рассматривать точки с более чем с одной точки обзора, этот подход может иметь один или более недостатков.
Отображение индивидуальных точек обычно является затратным в вычислительном отношении. На близких расстояниях в представлении отсканированной поверхности могут появиться промежутки, и, таким образом, может стать трудно распознавать поверхности.
Сущность изобретения
В соответствии с первым аспектом настоящего изобретения обеспечен способ визуализации изображения данных трехмерного лазерного сканирования. Способ содержит обеспечение кубической карты дистанции и соответствующей кубической карты изображения, формирование шаблона замощения (тесселяции) с использованием кубической карты дистанции и визуализацию изображения на основе шаблона замощения посредством дискретизации кубической карты изображения.
В соответствии со вторым аспектом настоящего изобретения обеспечен способ обработки данных трехмерного лазерного сканирования. Способ содержит подготовку кубической карты дистанции и соответствующей кубической карты изображения для использования при визуализации на основе данных трехмерного лазерного сканирования.
Посредством сохранения данных лазерного сканирования для заданного цикла сканирования как набора точек (в противоположность агрегированию данных лазерного сканирования для нескольких циклов сканирования) и посредством использования преимущества того факта, что данные лазерного сканирования могут быть обеспечены в форме карты смещения, которая может обрабатываться непосредственно графической системой, изображение данных лазерного сканирования может быть визуализировано эффективно и/или быстро. Это может быть особенно полезно при объединении изображений из нескольких циклов сканирования, поскольку каждый цикл сканирования может быть обработан независимо, и изображения из разных циклов сканирования могут быть легко объединены в общем буфере. Это дает возможность эффективной/быстрой визуализации не только статических изображений, но также и динамических изображений, например, как будто бы пользователь "гуляет" по окружающей среде.
Кроме того, изображение может быть визуализировано более эффективно и/или быстро посредством преобразования каждого набора данных сканирования в кубическую карту посредством преобразования данных сканирования в панорамную сферическую текстуру, если они еще не в форме панорамной сферической текстуры, и последующего отображения панорамной сферической текстуры на куб.
Кубическая карта изображения может содержать текстуру интенсивности для визуализации монохромного изображения цикла сканирования или цветовую текстуру (которая может быть захвачена с использованием камеры) для визуализации цветного изображения цикла сканирования.
Способ может содержать процесс превизуализации (предварительной визуализации), содержащий подготовку кубической карты дистанции и соответствующей кубической карты изображения, которая может быть выполнена один раз, и последующий процесс визуализации. Превизуализация предпочтительно выполняется с использованием одного или более графических процессоров (GPU). Визуализация предпочтительно выполняется с использованием одного или более графических процессоров. Один и тот же графический процессор или графические процессоры могут использоваться для превизуализации и визуализации.
Способ может содержать, например, в процессе превизуализации формирование кубической карты дистанции на основе сферической панорамной текстуры дистанции.
Способ может содержать, например, в процессе превизуализации формирование кубической карты изображения на основе сферической панорамной текстуры изображения. Кубическая карта изображения может содержать кубическую карту изображения текстуры интенсивности. Кубическая карта изображения может содержать кубическую карту изображения цветовой текстуры.
Способ может содержать, например, в процессе превизуализации формирование первой и второй кубических карт изображения. Первая кубическая карта изображения может представлять собой кубическую карту изображения текстуры интенсивности, и вторая кубическая карта может представлять собой кубическую карту изображения цветовой текстуры.
Формирование каждой кубической карты изображения может содержать формирование или использование карты плиток. Карта плиток может содержать множество плиток на каждой грани куба. Карта плиток может содержать многоугольные плитки, каждая плитка имеет три или более вершин. Плитки могут иметь одинаковую форму. Плитки могут иметь одинаковый размер. Плитки могут представлять сбой прямоугольники. Грань может содержать n×m плиток, где n и m - положительные целые числа. n может быть равно m, т.е., n=m.
n может быть равно по меньшей мере 8, т.е., n≥8. n может быть равно вплоть до 64, т.е., n≤64, или больше. n может быть равно 16, т.е. n=16. Прямоугольная плитка может быть определена с использованием двух диагонально противоположных вершин. Каждая плитка может быть разделена на примитивы. Примитивы могут представлять собой треугольники. Способ может содержать выполнение замощения каждой плитки и проецирование точек замощения на грань куба с использованием соответствующих текстурных пикселей дистанции в сферической панорамной текстуре дистанции.
Формирование каждой кубической карты изображения может содержать обеспечение набора вершин, размещенных в плитках для грани куба, и для каждой грани выполнение замощения каждой плитки и проецирование точек замощения на грань куба с использованием соответствующих текстурных пикселей в сферической панорамной текстуре дистанции.
Формирование каждой кубической карты изображения может дополнительно содержать отбрасывание меньшей мере одного примитива (например, треугольника). Отбрасывание примитивов может содержать определение, ориентирован ли примитив под острым углом к исходной точке сканирования, и в зависимости от определения, что примитив ориентирован под острым углом к исходной точке сканирования, отбрасывание примитива. Определение, ориентирован ли примитив под острым углом к точке обзора, может содержать выполнение теста нормали.
Способ может содержать идентификацию одной или более плиток ("бесполезных плиток"), соответствующих значениям дистанции, которые не удовлетворяют набору из одного или более условий (например, имеют нулевую дистанцию и/или превышают заданное пороговое значение), и сохранение идентификационной информации бесполезной плитки (плиток) для грани в файле.
Формирование каждой кубической карты изображения может содержать разделение каждого примитива на фрагменты примитива (например, фрагменты треугольника) и для каждого фрагмента примитива дискретизацию соответствующего текстурного пикселя сферической панорамной текстуры изображения.
Кубическая карта изображения может быть сохранена в памяти, например, в видеопамяти, и/или в системной памяти, и/или в запоминающем устройстве.
Процесс превизуализации может быть выполнен один раз, и после этого не требуется использование сферической панорамной текстуры обзора, текстуры изображения и/или цветовой текстуры во время последующей визуализации.
Способ может содержать для каждого кадра скрытую (не отображаемую) визуализацию изображений, соответствующих множеству циклов сканирования, с относительно низким разрешением для данной точки обзора и выбор, какое изображение следует визуализировать на экране с относительно высоким разрешением для данной точки обзора.
Визуализация может содержать формирование или использование карты плиток. Карта плиток может содержать множество плиток на каждой грани куба. Карта плиток может содержать многоугольные плитки, каждая плитка имеет три или более вершин. Плитки могут иметь одинаковую форму. Плитки могут иметь одинаковый размер. Плитки могут представлять собой прямоугольники. Грань может содержать n×m плиток, где n и m - положительныt целые числа. n может быть равно m, т.е., n=m, n может быть равно по меньшей мере 8, т.е., n≥8. n может быть равно вплоть до 64, т.е. n≤64, или более. n может быть равно 16, т.е., n=16. Прямоугольная плитка может быть определена с использованием двух диагонально противоположных вершин. Каждая плитка может быть разделена на примитивы. Примитивы могут представлять собой треугольники. Способ может содержать выполнение замощения каждой плитки и проецирование точек замощения на грань куба с использованием соответствующих текстурных пикселей дистанции в сферической панорамной текстуре дистанции.
Визуализация может содержать обеспечение набора вершин, размещенных в плитках для грани куба. В зависимости от определения, что плитка является бесполезной плиткой, бесполезную плитку не требуется подвергать замощению. Другими словами, вершины для бесполезных плиток могут быть отброшены. Это может помочь сократить использование ресурсов графического процессора. Отбрасывание вершин бесполезных плиток может быть выполнено шейдером управления замощением (или шейдером, имеющим такую же или подобную функцию).
Визуализация может содержать для каждой грани выполнение замощения каждой плитки и проецирование точки замощения на грань куба с использованием соответствующих текстурных пикселей дистанции в кубической карте дистанции.
Визуализация может содержать отбрасывание примитивов (например, треугольников). Отбрасывание примитивов может содержать определение, ориентирован ли примитив под острым углом к исходной точке сканирования, и в зависимости от определения, что примитив ориентирован под острым углом к исходной точке сканирования, отбрасывание примитива. Определение, ориентирован ли примитив под острым углом к точке обзора, может содержать выполнение теста нормали.
Визуализация изображения может содержать дискретизацию кубической карты интенсивности. Визуализация изображения может содержать дискретизацию цветовой кубической карты.
Графический процессор (процессоры) может быть сконфигурирован с использованием прикладного программного интерфейса (API) OpenGL 4.3 (или более поздней версии) или Microsoft (RTM) DirectX (RTM) 11 (или более поздней версии).
Способ может дополнительно содержать формирование набора пикселей для цикла сканирования и выполнения теста глубины.
Способ может содержать окрашивание пикселя в зависимости от нормали пикселя. Способ может содержать окрашивание пикселя в зависимости от интенсивности и/или цвета в соответствующей части изображения.
Способ может содержать обеспечение более чем одного набора данных лазерного сканирования, каждый набор данных лазерного сканирования соответствует соответствующему циклу сканирования. Каждый набор данных лазерного сканирования обеспечивается как соответствующая кубическая карта дистанции и по меньшей мере одна кубическая карта изображения. Способ может содержать объединение визуализированных изображений из разных циклов сканирования. Объединение визуализированных изображений из разных циклов сканирования может содержать использование буфера глубины.
В соответствии с третьим аспектом настоящего изобретения обеспечена компьютерная программа, которая содержит команды для выполнения способа.
В соответствии с четвертым аспектом настоящего изобретения обеспечен машиночитаемый носитель или энергонезависимый машиночитаемый носитель, который хранит компьютерную программу.
В соответствии с пятым аспектом настоящего изобретения обеспечена компьютерная система, содержащая память и по меньшей мере один процессор. По меньшей мере один процессор выполнен с возможностью формировать шаблон замощения посредством использования кубической карты дистанции и визуализировать изображение на основе шаблона замощения посредством дискретизации кубической карты изображения, соответствующей кубической карте дистанции.
По меньшей мере один процессор предпочтительно содержит по меньшей мере один графический процессор. По меньшей мере один процессор может содержать один процессор, например, один графический процессор.
По меньшей мере один процессор может быть сконфигурирован с использованием прикладного программного интерфейса OpenGL 4.3 (или более поздней версии). По меньшей мере один процессор может быть сконфигурирован с использованием прикладного программного интерфейса Microsoft (RTM) DirectX (RTM) 11 (или более поздней версии).
Краткое описание чертежей
Некоторые варианты осуществления настоящего изобретения теперь будут описаны в качестве примера со ссылкой на прилагаемые чертежи.
Фиг. 1 - блок-схема системы для получения и обработки данных лазерного сканирования и визуализации изображения;
Фиг. 2 - блок-схема компьютерной системы, которая используется для обработки данных лазерного сканирования и визуализации изображения;
Фиг. 3 - блок-схема последовательности операций процесса превизуализации;
Фиг. 4 - блок-схема конвейера для отображения панорамной сферической текстуры на куб (в настоящем документе называемого ʺотображением на кубʺ);
Фиг. 5 иллюстрирует куб, в котором каждая грань разделена на плитки;
Фиг. 6 показывает проецирование точек замощения на куб во время отображения на куб;
Фиг. 7 показывает дискретизацию панорамной сферической текстуры на грань куба для формирования кубической карты;
Фиг. 8 схематично иллюстрирует отображение на куб;
Фиг. 9 иллюстрирует отображение на куб с использованием реальных данных сканирования и изображения;
Фиг. 10 показывает скомпонованную кубическую карту;
Фиг. 11 схематично иллюстрирует пометку бесполезных плиток;
Фиг. 12 иллюстрирует визуализированное изображение реальной цветовой панорамной сферической текстуры и визуализированные изображения ее соответствующей цветовой кубической карты в трехмерном пространстве изображения с бесполезными плитками и без них;
Фиг. 13 - блок-схема данных проекта;
Фиг. 14 - блок-схема последовательности операций процесса визуализации;
Фиг. 15 иллюстрирует первую и вторую подвергнутые замощению поверхности и точку обзора;
Фиг. 16 - блок-схема конвейера процесса визуализации;
Фиг. 17 иллюстрирует куб, в котором каждая грань разделена на плитки;
Фиг. 18 показывает проецирование точек замощения на куб во время визуализации;
Фиг. 19 иллюстрирует фрагменты затенения/окрашивания с использованием монохромной/цветовой кубической карты во время визуализации;
Фиг. 20 - первый снимок экрана, сделанный с первой точки обзора во время полета через наблюдаемую окружающую среду; и
Фиг. 21 - второй снимок экрана, сделанный со второй точки обзора во время полета через наблюдаемую окружающую среду, показанную на фиг. 20.
Подробное описание некоторых вариантов осуществления
Обзор системы
Со ссылкой на фиг. 1 показана система 1 для формирования и обработки данных лазерного сканирования и для визуализации изображения.
Система 1 включает в себя один или более трехмерных лазерных сканеров 2 для обследования окружающей среды 3 (или "сцены"), которая включает в себя несколько целевых поверхностей 4. Каждый лазерный сканер 2 включает в себя блок 5 лазерного сканирования, который формирует исходные данные 6 лазерного сканирования (упоминаемые в настоящем документе просто как "данные лазерного сканирования" или просто "данные сканирования"), например, которые содержат дистанцию, интенсивность, азимут и возвышение для каждого пикселя (и которые могут быть сохранены в сжатой форме), факультативную цветную камеру 7, которая может использоваться для формирования данных 8 цветного изображения, например, в форме файла JPEG, и встроенное запоминающее устройство 9 для хранения данных 6, 8. Данные 6 лазерного сканирования могут быть преобразованы в файловый формат ZFC. Каждый лазерный сканер 2 включает в себя процессор (процессоры) 10 и память 11, которые могут может использоваться для обработки данных 6 лазерного сканирования, например, для форматирования данных и/или данных 8 изображения.
Блок 5 лазерного сканирования формирует элемент (который может упоминаться как "пиксель") данных 6 сканирования для точки посредством испускания импульсного лазерного луча 12 в заданном направлении (т.е., с заданным горизонтальным углом и заданным вертикальным углом), обнаружения луча 13, который отражен от целевой поверхности 4 обратно к лазерному сканеру 2, и определения дистанции R до целевой поверхности на основе времени пролета лазерного луча 12, 13. Набор данных 6 сканирования может быть собран посредством сканирования лазерным лучом 12 быстрыми круговыми охватами вверх и вниз, т.е., охват лежит в вертикальной плоскости сканирования, с медленным поворотом, т.е., вращением плоскости сканирования вокруг вертикальной оси, чтобы создать набор точек вокруг сканера 2. Каждая точка в данных 6 сканирования обеспечена в виде набора декартовых координат, т.е. каждая точка выражена как (x, y, z). Точки в наборе данных 6 упорядочены по азимуту и возвышению.
Данные 6, 8 сканирования и изображения загружаются на сервер 14 данных сканирования (в настоящем документе также называемый "шлюзом"). Сервер 14 данных сканирования включает в себя модуль 15 обработки данных сканирования и запоминающее устройство 16. Сервер 14 данных сканирования может предварительно обрабатывать данные 6 сканирования, например, извлекая данные 17 интенсивности из данных 6 сканирования для монохромного изображения.
Данные 6 сканирования, данные 17 интенсивности и, факультативно, данные 8 изображения загружаются в компьютерную систему 19 для визуализации. Компьютерная система 19 включает в себя систему 20 превизуализации и запоминающее устройство 21 для выполнения однократной предварительной обработки данных.
Система 20 превизуализации преобразует данные 6 сканирования, данные 17 интенсивности и данные 8 изображения в соответствующие эквиполярные панорамные сферические текстуры 22, 23, 24 (здесь также называемые ʺпанорамными сферическими текстурамиʺ или ʺравнопрямоугольными текстурамиʺ). Преобразование может привести к промежуткам или дыркам (не показаны) в текстуре 22, 23, 24, и, таким образом, система 20 превизуализации также может выполнять заполнение дырок, например, с использованием интерполяции.
Система 20 превизуализации преобразует панорамные сферические текстуры 22, 23, 24 для каждого цикла сканирования в соответствующие кубические карты 25, 26, 27. Система 20 превизуализации также формирует файлы 28 бесполезных плиток, т.е., файл для каждой грани каждой кубической карты, который идентифицирует те регионы грани куба, которые не содержат полезные данные дистанции. Это может быть особенно полезно для сканирования вне помещения.
Отображение панорамной сферической текстуры 22, 23, 24 на грани куба может помочь сократить объем сохраненных данных (например, приблизительно, на четверть) без какой-либо заметной потери качества просмотра. Кроме того, грани кубической карты 25, 26, 27 могут быть индивидуально загружены по требованию в графическую систему для визуализации. Кроме того, гранями кубической карты можно управлять эффективнее в памяти, например, посредством отбрасывания бесполезных плиток (т.е., регионов, не содержащих полезных данных дистанции).
Компьютерная система 19 включает в себя устройства 30 пользовательского ввода (такие как мышь и/или клавиатура), систему 31 визуализации и дисплей 32 (или дисплеи 32) для показа изображения 33 сцены 3 из точки 34 обзора (POV). Система 31 визуализации производит разбитые на треугольники трехмерные поверхности с использованием текстур 25, 26, 27, полученных из одного или более разных циклов сканирования, и визуализирует поверхности в режиме реального времени из любой точки 34 обзора, объединяя поверхности, полученные из цикла (циклов) сканирования, в изображении.
Система 20 превизуализации и система 31 визуализации реализованы в одной и той же компьютерной системе. Однако системы 20, 31 могут быть реализованы в разных компьютерных системах.
Также со ссылкой на фиг. 2 компьютерная система 19 показана более подробно.
Компьютерная система 19 может принимать форму рабочей станции, настольного компьютера, ноутбука или другого вычислительного устройства с достаточной мощностью.
Компьютерная система 19 включает в себя один или более центральных процессоров (ЦП; CPU) 35, имеющих соответствующие кэши памяти (не показаны), системную память 36, графический модуль 37, например, в виде видеокарты, которая включает в себя графический процессор (GPU) 38 и графическую память 39 (которая может упоминаться как "видеопамять"), которая обеспечивает, среди прочего, буфер 40 кадров и интерфейс 41 ввода/вывода (I/O), функционально соединенный с системой 42 шин. Примером подходящего графического модуля 37 является графический процессор NVIDIA (RTM) GeForce 460 с 1 ГБ видеопамяти.
Интерфейс 41 ввода/вывода функционально соединен с шиной и/или сетевым интерфейсом (интерфейсами) 43 (таким как интерфейс Ethernet или интерфейс WLAN) для приема данных 6 сканирования, данных 8 изображения 8 и данных 17 интенсивности. Интерфейс 41 ввода/вывода также функционально соединен с устройствами 30 пользовательского ввода и запоминающим устройством 21, например, в виде одного или более жестких дисков и/или твердотельных накопителей. Некоторые периферийные устройства, такие как сменное запоминающее устройство и другие компьютерные компоненты, не показаны. Компьютерная система 19 может иметь конфигурацию, отличающуюся от показанной на фиг. 2.
Как будет описано более подробно позже, данные 44 проекта хранятся в запоминающем устройстве 21. Данные 44 проекта включают в себя обработанные данные 45 сканирования для множества циклов сканирования (фиг. 13), каждое множество включает себя имя 46 (фиг. 13), преобразование 47 (фиг. 13) и для каждой грани 63 куба (фиг. 13) текстуру 25 дистанции, текстуру 26 интенсивности, факультативную цветовую текстуру 27 и файл 28 бесполезных плиток.
Преобразование данных 6, 17 сканирования и интенсивности и факультативных данных 8 изображения в соответствующие панорамные сферические текстуры 22, 23, 24 реализовано в программном обеспечении, выполняемом центральным процессором (процессорами) 35. Машинный код 48 для реализации преобразования хранится в запоминающем устройстве 21 и загружается в память 36 для исполнения центральным процессором (процессорами) 35. Другие процессы превизуализации, а именно, отображение на куб и обнаружение бесполезных плиток, предпочтительно реализованы с использованием графического процессора 38.
Визуализация реализуется с использованием графического процессора 38, чтобы использовать преимущества улучшенных возможностей графической обработки графического процессора, в частности, замощение.
Прикладное программное обеспечение 49 используется для осуществления доступа к данным 44 проекта и взаимодействия с графическим модулем 37.
Обработка превизуализации
Теперь со ссылкой на фиг. 1, 2 и 3 работа системы 20 превизуализации будет описана более подробно.
Преобразование данных сканирования в панорамные сферические текстуры
Система 20 превизуализации загружает набор данных 6 сканирования, данных 17 интенсивности и, факультативно, данных 8 цветного изображения для цикла сканирования с сервера 14 данных сканирования через сеть связи (не показана) (этап S3-1).
Система 20 превизуализации преобразует данные 6 сканирования, данные 17 интенсивности и, факультативно, данные 8 цветного изображения в соответствующие панорамные сферические текстуры 22, 23, 24 (этап S3-2). Каждая панорамная текстура 22, 23, 24, как правило, содержит 10000 × 5000 пикселей.
Отображение данных дистанции из координат сканера в панорамные сферические координаты может привести к дыркам. Поэтому значения дистанций могут быть добавлены с использованием интерполированных значений, чтобы избежать разрывов (этап S3-3). Дырки имеют нулевое значение, таким образом, изображение сканируется для поиска дырок и для вычисления ненулевого значения с использованием окружающих соседей, чтобы заполнить дырку.
Значения интенсивности копируются и отображаются на панорамную сферическую текстуру 23 интенсивности таким же образом. Цветовые данные 8, например, в виде значений компонентов RGB могут быть скопированы в цветовую панорамную сферическую карту 27 аналогичным образом.
Панорамные сферические текстуры 22, 23, 24 временно сохраняются в запоминающем устройстве 21. Как будет описан более подробно позже, панорамные сферические текстуры 22, 23, 24 преобразуются в соответствующие кубические карты 25, 26, 27, и как только это произошло, от текстур 22, 23, 24 можно отказаться.
Преобразование панорамных сферических текстур в кубические карты
Система 20 превизуализации преобразует каждую панорамную сферическую текстуру 22, 23, 24 в соответствующую кубическую карту 25, 26, 27. Хотя отображение на куб может быть выполнено центральным процессором (процессорами) 35, оно может быть выполнено более быстро посредством графического процессора 38.
Как показано на фиг. 4, отображение на куб выполняется с использованием конвейера 51, который реализован посредством графического процессора 38 (фиг. 2). Конвейер 41 включает в себя вершинный шейдер 52, шейдер 53 управления замощением, шейдер 54 оценки замощения, геометрический шейдер 55 и фрагментный шейдер 56. Шейдер 53 управления замощением может упоминаться как "шейдер поверхностиʺ, шейдер 54 оценки замощения может упоминаться как "шейдер областей", и фрагментный шейдер 56 может упоминаться как "пиксельный шейдер".
Также, как показано на фиг. 5, конвейер 51 обрабатывает вершины 57 (в настоящем документе также называемые "данными вершин"), которые размещены в плитках 58 для куба 59, имеющего шесть граней 60. Вершины 57 выражены в координатах (u, v). Каждая грань 60 разделена на плитки 58. В данном случае каждая грань разделена на 16×16 плиток 58.
Вершины 57 для каждой грани 60 подаются по плиткам 58 на вершинный шейдер 52, который передает вершины 57 через шейдер 53 управления замощением. Шейдер 53 управления замощением выдает уровень замощения (не показан) для каждой плитки 58 шейдеру 54 оценки замощения. В данном случае используется значение замощения по умолчанию.
Как показано на фиг. 6, шейдер 54 оценки замощения подвергает замощению каждую плитку 58 и проецирует точки 61 замощения на грань 62 единичного куба 63 в трехмерном пространстве. Плитка 58 описывается посредством левого верхнего угла и правого нижнего угла в декартовом пространстве. После выполнения замощения каждая вершина 57 каждой треугольной грани 64, которая расположена на единичном кубе, проецируется посредством своего соответствующего значения дистанции с использованием текстуры 22 дистанции. Затем вершины 57 проецируются в корректную мировую позицию с использованием преобразования 47 сканирования, например, в форме матрицы размером 4×4 однородного преобразования, сохраняющего позицию и ориентацию.
Точки 62 замощения передаются на геометрический шейдер 55. Геометрический шейдер 55 отвечает за отбрасывание треугольников 64. Треугольники 64, которые являются остроугольными относительно сканирования, выбрасываются. Это делается с использованием теста нормали к поверхности для каждого треугольника 64. Полученные в результате точки 61 передаются фрагментному шейдеру 56.
Также, как показано на фиг. 7, фрагментный шейдер 56 отображает текстуру 23 интенсивности и/или цветовую текстуру 24 на корректные треугольники 64. Фрагментный шейдер 56 дискретизирует текстуру 23 интенсивности и/или цветовую текстуру 24 и копирует значение в текстурном пикселе 65 в текстуре 23, 24 в значение для фрагмента 66 треугольника (который может также упоминаться как "пиксель") на грани 62 куба 63, тем самым формируя новую основанную на кубах текстуру 23, 24, т.е. кубическую карту 23, 24. Кубическая карта 25 может быть скомпонована в столбец. Однако могут использоваться другие схемы компоновки. Фрагментный шейдер 56 также отрисовывает задние стороны, т.е., внешние направленные наружу грани 73 (фиг. 12), с синим оттенком, что может быть видно в визуализациях куба.
Кубическая карта (карты) 23, 24 сохраняется, например, в неотображаемом буфере 40.
Фиг. 8 схематично иллюстрирует преобразование панорамной сферической текстуры 22, 23, 24 в соответствующую кубическую карту 25, в том числе полюса 67, 68, центральную точку 69, расположенную на горизонте 70 между полюсами 67, 68, и линию 71 меридиана, проходящую через центральную точку 69. Фиг. 8 показывает мертвую зону 72 вокруг одного из полюсов 68.
Фиг. 9 иллюстрирует изображение реальной цветной панорамной сферической текстуры 22 и изображения ее соответствующих кубических карт 25, 27 скомпонованной дистанции и цвета.
Обнаружение бесполезных плиток
Как показано на фиг. 10, каждая грань 62 на кубической карте 25 построена из плиток 74. Некоторые плитки 74 могут не содержать полезные данные дистанции. Например, когда сканирование выполняется вне помещения, сканирование может покрывать небо. Таким образом, вероятно, что все плитки 74 на верхней грани 62 кубической карты 25 не содержат полезных данных. Кроме того, вероятно, что верхние плитки 74 на передней, задней, левой и правой гранях 62 также не содержат полезных данных дистанции.
Как показано на фиг. 11, идентифицируется каждая плитка 74D, которая не содержит полезных данных дистанции, например, в которой нет значения дистанции или значение дистанции превышает заданное пороговое значение, и идентификатор 72 плитки, соответствующий бесполезной плитке 74D, добавляется к списку 28 бесполезных плиток 74D. Файл 28 бесполезных плиток сохраняется в запоминающем устройстве 21 (фиг. 2).
Бесполезные плитки 74D обнаруживаются в процессе превизуализации. Это делается один раз, и затем результат сохраняется. Поиск бесполезных плиток 74D выполняется в геометрическом шейдере 55 (фиг. 4). Треугольники 64 (фиг. 6) для бесполезной плитки 74, как правило, являются остроугольными и, таким образом, будут отброшены. Поэтому для этой плитки 74D не будет треугольников 64, и, таким образом, она будет зарегистрирована как бесполезная.
Как будет описано более подробно позже, бесполезные плитки 74D в соответствующих кубических картах 26, 27 изображения не визуализируются. Отказ от визуализации бесполезных плиток 74D может ускорить визуализацию сцены.
Фиг. 12 иллюстрирует визуализированное изображение реальной цветной панорамной сферической текстуры 24 и визуализированные изображения ее соответствующей цветовой кубической карты 27 в трехмерном пространстве изображения с бесполезными плитками 74D и без них.
Данные проекта
Как описано выше, процесс обработки данных превизуализации требуется выполнить только один раз для каждого цикла сканирования. Когда текстуры 25 дистанции, текстуры 26 интенсивности, цветовые текстуры 27 и файлы 28 бесполезных плиток были сформированы для цикла сканирования, от первоначальных данных 6 сканирования, данных 17 интенсивности и, факультативно, данных 8 цветного изображения, а также от сферических панорамных текстур 22, 23, 24, можно отказаться.
Текстуры 25 дистанции, текстуры 26 интенсивности и факультативные цветовые текстуры 27 обычно сохраняются с высоким разрешением. Во время визуализации текстуры 25, 26, 27 могут быть дискретизированы с высоким разрешением, т.е., с отношением 1:1, или дискретизированы с понижением с отношением n:1, где n - положительное целое число.
Фиг. 13 показывает проект 44. Проект 44 может хранить данные 45 сканирования для большого количества (например, 500 или более) циклов сканирования.
Как показано на фиг. 13, каждый набор данных 45 сканирования включает в себя имя 46 цикла сканирования, преобразование 46 сканирования и для каждой грани 62 куба текстуру 25 дистанции, текстуру 26 интенсивности, факультативную цветовую текстуру 27 и файл 28 бесполезных плиток.
Визуализация
Теперь со ссылкой на фиг. 1, 2, 13 и 14 будет описан процесс визуализации.
Система 31 визуализации инициализируется (этап S14-1), и система 31 идентифицирует точку 34 обзора, этим может управлять пользователь через устройства 30 ввода (этап S14-2).
Как описано ранее, проект лазерного сканирования может содержать до 500 или более циклов сканирования. Может иметься слишком много циклов сканирования, чтобы графический модуль 37 справился с ними. Система 31 визуализации решает, какие циклы сканирования следует визуализировать для точки 34 обзора, визуализируя ключ к решению в начале каждого кадра (этап S14-3) и идентифицируя, какие циклы сканирования следует визуализировать (этап S14-4). Отобранные циклы сканирования визуализируются (этап S14-5), и процесс визуализации продолжается для следующего кадра (этап S14-6).
Ключ к решению
Ключ к решению подразумевает скрытую визуализацию всех циклов сканирования в проекте с очень низким разрешением.
Каждая грань имеет 16×16 плиток, и графический процессор 38 вычисляет среднюю дистанцию для каждой плитки таким образом, чтобы каждая грань имела 256 грубых уровней дистанции. Таким образом, каждый цикл сканирования состоит из 1536 точек (т.е., 6 граней × 256 уровней дистанции). Однако, количество точек может отличаться, например, из-за различного количества плиток.
Со ссылкой на фиг. 15 первая и вторая подвергнутые замощению поверхности 75, 76, происходящие из первого и второго разных циклов сканирования, показаны в трехмерном пространстве изображения. Из точки 34 обзора первая подвергнутая замощению поверхность 75 является видимой и превышает минимальный порог размера. Однако вторая подвергнутая замощению поверхность 75 может быть загорожена первой поверхностью и/или может находиться ниже порога размера. Это происходит автоматически в z-буфере (не показан) после шейдеров. Шейдеры не имеют никакой совокупной видимости изображения, и ключ к решению выполняется в z-буфере. Самые близкие треугольники будут отрисованы на переднем плане.
Визуализация
Система 31 визуализации извлекает из запоминающего устройства 21 текстуры 25 дистанции, текстуры 26 интенсивности, цветовые текстуры 27 и файлы 35 бесполезных плиток 35 для циклов 45 сканирования, идентифицированных в ключе к решению, и передает текстуры 25, 26, 27 и файлы 28 бесполезных плиток графическому модулю 37.
Как показано на фиг. 16, визуализация выполняется с использованием конвейера 81, который реализован графическим процессором 38 (фиг. 2), и который включает в себя вершинный шейдер 82, шейдер 83 управления замощением, шейдер 84 оценки замощения, геометрический шейдер 85 и фрагментный шейдер 86. Шейдеры могут называться по-другому.
Также, как показано на фиг. 17, конвейер 81 обрабатывает вершины 87, которые размещены в плитках 88 для куба 89, имеющего шесть граней 90. Вершины 87 выражены в координатах (u, v). Каждая грань 90 разделена на плитки 88. В данном случае каждая грань разделена на 16×16 плиток.
Вершины 87 для каждой грани 90 подаются по плиткам 88 на вершинный шейдер 82, который применяет преобразование 92 сканирования, которое основано на заданной пользователями точке 34 обзора. Вершинный шейдер 82 выдает преобразованные данные 82 вершин шейдеру 83 управления замощением. Шейдер 83 управления замощением выдает уровень замощения (не показан) для каждой плитки 88 шейдеру 54 оценки замощения.
Вершины 87 для бесполезных плиток обнаруживаются отброшенными шейдером 83 управления замощением и не передаются. Таким образом, это может помочь сократить использование ресурсов графического процессора и тем самым ускорить визуализацию.
Также, как показано на фиг. 18, шейдер 84 оценки замощения выполняет замощение каждой плитки 88 и проецирует точки замощения 92 на грань 93 единичного куба 94 в трехмерном пространстве со смещением на дистанцию R, полученную посредством дискретизации текстурных пикселей 95 дистанции в текстуре 25 дистанции в координатах (u, v) точки 87.
Поток точек 92 замощения подается на геометрический шейдер 85, который отбрасывает треугольники, которые находится под тупыми углами.
Также, как показано на фиг. 19, в зависимости от того, визуализируется ли монохромное или цветное изображение, фрагментный шейдер 86 дискретизирует кубическую карту 26 интенсивности или цветовую кубическую карту 27 и копирует значение в текстурном пикселе 96 в кубической карте 26, 27 в значение для фрагмента 97 треугольника на грани 93 куба 94. На грани 93 куба 94 это имеет эффект проецирования монохромного или цветного изображения на рельеф, обеспеченный текстурой дистанции.
Пиксельные данные 97 отправляют в буфер 40 кадра. Пиксельные данные 97, сформированные из нескольких циклов сканирования, могут быть записаны в один и тот же буфер 40 кадра 40, и тем самым может быть сформировано изображение, содержащее данные из нескольких циклов сканирования.
Фиг. 20 и 21 иллюстрируют снимки экрана во время ʺпролета черезʺ обследуемую окружающую среду, которая включает в себя здание 98 (помеченное как ʺLaw School Management Schoolʺ). Цветовая панорамная сферическая текстуру 25 для цикла сканирования и соответствующие кубические карты 25, 27 скомпонованной дистанции и цветного изображения показаны на фиг. 9. Соответствующие данные цветного изображения показаны на фиг. 12. Сцены сформированы из нескольких циклов сканирования и визуализированы из разных точек обзора. Пользователь может плавно полететь через окружающую среду в режиме реального времени. Снимки экрана показывают "тени", указывающие позицию 99 сканера 2 (фиг. 1) при выполнении сканирования.
Очевидно, что различные модификации могут быть внесены в описанные выше варианты осуществления. Такие модификации могут включать в себя эквивалентные и другие признаки, которые уже известны в проектировании, производстве и использовании систем лазерного сканирования и/или систем графической обработки, и их составные части, и которые могут использоваться вместо или в дополнение к признакам, уже описанным в настоящем документе. Признаки одного варианта осуществления могут быть заменены или дополнены признаками другого варианта осуществления.
Хотя формула изобретения была сформулирована в этой заявке для конкретных комбинаций признаков, следует понимать, что объем раскрытия настоящего изобретения также включает в себя любые новые признаки или любую новую комбинацию признаков, раскрытых в настоящем документе, явным или неявным образом, или любое их обобщение, независимо от того, связано ли оно с таким же изобретением, как в настоящий момент заявляется в любом пункте формулы изобретения, и независимо от того, уменьшает ли оно некоторые или все аналогичные технические проблемы, как это делает настоящее изобретение. Заявитель тем самым дает знать, что новая формула изобретения может быть сформулирована для таких признаков и/или комбинаций таких признаков во время рассмотрения настоящей заявки или любой другой заявки, полученной на ее основе.
Claims (44)
1. Способ визуализации изображения данных трехмерного лазерного сканирования, причем упомянутый способ содержит этапы, на которых:
обеспечивают кубическую карту дистанции и соответствующую кубическую карту изображения, подготовленные из данных трехмерного лазерного сканирования; и
графическим процессором:
формируют шаблон замощения с использованием кубической карты дистанции; и
визуализируют изображение на основе шаблона замощения посредством дискретизации кубической карты изображения.
2. Способ обработки данных трехмерного лазерного сканирования, причем упомянутый способ содержит этап, на котором:
подготавливают кубическую карту дистанции и соответствующую кубическую карту изображения из данных трехмерного лазерного сканирования.
3. Способ по п. 1 или 2, в котором кубическая карта изображения содержит текстуру интенсивности.
4. Способ по пп. 1, 2 или 3, в котором кубическая карта изображения содержит цветовую текстуру.
5. Способ по любому предыдущему пункту, содержащий:
процесс превизуализации, содержащий подготовку кубической карты дистанции и соответствующей кубической карты изображения; и
процесс визуализации, содержащий формирование шаблонов замощения с использованием кубической карты дистанции и визуализацию изображения с использованием кубических карт изображения.
6. Способ по п. 5, в котором процесс превизуализации может выполняться один раз, чтобы подготовить кубическую карту дистанции и соответствующую кубическую карту изображения, и/или процесс визуализации может выполняться более чем один раз.
7. Способ по любому предыдущему пункту, содержащий этап, на котором:
формируют кубическую карту дистанции на основе сферической панорамной текстуры дистанции.
8. Способ по любому предыдущему пункту, содержащий этап, на котором:
формируют кубическую карту изображения на основе сферической панорамной текстуры изображения.
9. Способ по п. 8, в котором формирование кубической карты изображения содержит этапы, на которых:
обеспечивают набор вершин, размещенных в плитках для грани куба; и
для каждой грани подвергают замощению каждую плитку и проецируют точки замощения на грань куба с использованием соответствующих текстурных пикселей дистанции в сферической панорамной текстуре дистанции.
10. Способ по п. 8 или 9, в котором формирование кубической карты изображения содержит этап, на котором:
отбрасывают по меньшей мере один примитив.
11. Способ по любому из пп. 8-10, в котором формирование кубической карты изображения содержит этапы, на которых:
идентифицируют одну или более плиток, имеющих значение (значения) дистанции, которое не удовлетворяет набору из одного или более условий; и
сохраняют идентификационную информацию одной или более плиток для грани в файле.
12. Способ по любому из пп. 8-11, в котором формирование кубической карты изображения содержит этапы, на которых:
разделяют каждый примитив на фрагменты примитива; и
для каждого фрагмента примитива дискретизируют соответствующий текстурный пиксель в сферической панорамной текстуре изображения.
13. Способ по любому предыдущему пункту, дополнительно содержащий этапы, на которых во время визуализации:
для каждого кадра выполняют скрытую визуализацию изображений, соответствующих множеству циклов сканирования, с относительно низким разрешением для данной точки обзора и выбирают, какое изображение следует визуализировать на экране с относительно высоким разрешением для данной точки обзора.
14. Способ по любому предыдущему пункту, в котором визуализация изображения содержит этап, на котором:
формируют или используют карту плиток.
15. Способ по п. 14, в котором визуализация изображения содержит этапы, на которых:
подвергают замощению по меньшей мере одну плитку на карте плиток; и
проецируют точки замощения на грань куба с использованием соответствующих текстурных пикселей дистанции в кубической карте дистанции.
16. Способ по п. 14 или 15, в котором визуализация изображения содержит этап, на котором:
в зависимости от того, что плитка имеет значение (значения) дистанции, которое не удовлетворяет набору из одного или более условий, не подвергают замощению плитку.
17. Машиночитаемый носитель, который хранит команды, которые при выполнении их процессором обеспечивают осуществление способа по любому из пп. 1-16.
18. Компьютерная система для визуализации изображения данных трехмерного лазерного сканирования, содержащая:
память;
по меньшей мере один графический процессор;
причем по меньшей мере один графический процессор выполнен с возможностью формировать шаблон замощения с использованием кубической карты дистанции и визуализировать изображение на основе шаблона замощения посредством дискретизации кубической карты изображения, соответствующей кубической карте дистанции, подготовленных из данных трехмерного лазерного сканирования.
19. Компьютерная система по п. 18, в которой по меньшей мере один графический процессор может быть сконфигурирован с использованием прикладного программного интерфейса OpenGL.
20. Компьютерная система по п. 18, в которой по меньшей мере один графический процессор может быть сконфигурирован с использованием прикладного программного интерфейса Microsoft (RTM) DirectX (RTM).
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1417978.2A GB2520822B (en) | 2014-10-10 | 2014-10-10 | Image rendering of laser scan data |
GB1417978.2 | 2014-10-10 | ||
PCT/GB2015/051233 WO2016055757A1 (en) | 2014-10-10 | 2015-04-28 | Image rendering of laser scan data |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2019121567A Division RU2019121567A (ru) | 2014-10-10 | 2015-04-28 | Визуализация изображения данных лазерного сканирования |
Publications (3)
Publication Number | Publication Date |
---|---|
RU2017104504A RU2017104504A (ru) | 2018-11-13 |
RU2017104504A3 RU2017104504A3 (ru) | 2018-12-03 |
RU2695528C2 true RU2695528C2 (ru) | 2019-07-23 |
Family
ID=52001239
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2019121567A RU2019121567A (ru) | 2014-10-10 | 2015-04-28 | Визуализация изображения данных лазерного сканирования |
RU2017104504A RU2695528C2 (ru) | 2014-10-10 | 2015-04-28 | Визуализация изображения данных лазерного сканирования |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2019121567A RU2019121567A (ru) | 2014-10-10 | 2015-04-28 | Визуализация изображения данных лазерного сканирования |
Country Status (9)
Country | Link |
---|---|
US (2) | US10878624B2 (ru) |
EP (1) | EP3204918A1 (ru) |
JP (1) | JP6725110B2 (ru) |
CN (1) | CN106575448B (ru) |
AU (1) | AU2015329755B2 (ru) |
GB (1) | GB2520822B (ru) |
HK (1) | HK1211126A1 (ru) |
RU (2) | RU2019121567A (ru) |
WO (1) | WO2016055757A1 (ru) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10319071B2 (en) * | 2016-03-23 | 2019-06-11 | Qualcomm Incorporated | Truncated square pyramid geometry and frame packing structure for representing virtual reality video content |
CN106127691B (zh) * | 2016-07-12 | 2019-04-12 | 北京大学深圳研究生院 | 全景图像映射方法 |
EP3315906B1 (de) * | 2016-10-27 | 2023-05-31 | Leica Geosystems AG | Verfahren zur verarbeitung von scandaten |
EP3315907A1 (de) * | 2016-10-27 | 2018-05-02 | Leica Geosystems AG | Verfahren zur visuellen darstellung von scandaten |
US10999602B2 (en) | 2016-12-23 | 2021-05-04 | Apple Inc. | Sphere projected motion estimation/compensation and mode decision |
WO2018124820A1 (ko) * | 2017-01-02 | 2018-07-05 | 주식회사 케이티 | 비디오 신호 처리 방법 및 장치 |
US10313664B2 (en) * | 2017-01-11 | 2019-06-04 | Qualcomm Incorporated | Adjusting field of view of truncated square pyramid projection for 360-degree video |
US11259046B2 (en) | 2017-02-15 | 2022-02-22 | Apple Inc. | Processing of equirectangular object data to compensate for distortion by spherical projections |
US10924747B2 (en) | 2017-02-27 | 2021-02-16 | Apple Inc. | Video coding techniques for multi-view video |
US11093752B2 (en) | 2017-06-02 | 2021-08-17 | Apple Inc. | Object tracking in multi-view video |
US10754242B2 (en) | 2017-06-30 | 2020-08-25 | Apple Inc. | Adaptive resolution and projection format in multi-direction video |
US20190005709A1 (en) * | 2017-06-30 | 2019-01-03 | Apple Inc. | Techniques for Correction of Visual Artifacts in Multi-View Images |
US11145108B2 (en) * | 2018-03-21 | 2021-10-12 | Nvidia Corporation | Uniform density cube map rendering for spherical projections |
US11054546B2 (en) * | 2018-07-16 | 2021-07-06 | Faro Technologies, Inc. | Laser scanner with enhanced dymanic range imaging |
US10891769B2 (en) * | 2019-02-14 | 2021-01-12 | Faro Technologies, Inc | System and method of scanning two dimensional floorplans using multiple scanners concurrently |
US11348315B2 (en) * | 2019-03-19 | 2022-05-31 | Obsess, Inc. | Generating and presenting a 3D virtual shopping environment |
US11604065B2 (en) | 2019-05-17 | 2023-03-14 | Hexagon Technology Center Gmbh | Fully automatic position and alignment determination method for a terrestrial laser scanner and method for ascertaining the suitability of a position for a deployment for surveying |
EP3739291A1 (de) * | 2019-05-17 | 2020-11-18 | Hexagon Technology Center GmbH | Vollautomatisches positions- und orientierungsbestimmungsverfahren für einen terrestrischen laserscanner |
CN113096230B (zh) * | 2021-04-20 | 2022-06-10 | 浙江凌迪数字科技有限公司 | 一种真实感服装渲染中的镭射面料实时渲染方法 |
CN113824879B (zh) * | 2021-08-23 | 2023-03-24 | 成都中鱼互动科技有限公司 | 一种扫描设备及法线贴图生成方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040222988A1 (en) * | 2003-05-08 | 2004-11-11 | Nintendo Co., Ltd. | Video game play using panoramically-composited depth-mapped cube mapping |
US20100053715A1 (en) * | 2006-10-30 | 2010-03-04 | O'neill James | Scanning system for lidar |
US20100134486A1 (en) * | 2008-12-03 | 2010-06-03 | Colleen David J | Automated Display and Manipulation of Photos and Video Within Geographic Software |
US20100328308A1 (en) * | 2008-07-10 | 2010-12-30 | C-True Ltd. | Three Dimensional Mesh Modeling |
US20110148876A1 (en) * | 2009-12-22 | 2011-06-23 | Akenine-Moller Tomas G | Compiling for Programmable Culling Unit |
US20130271461A1 (en) * | 2012-04-11 | 2013-10-17 | Pinpoint 3D | Systems and methods for obtaining parameters for a three dimensional model from reflectance data |
US20140218354A1 (en) * | 2013-02-06 | 2014-08-07 | Electronics And Telecommunications Research Institute | View image providing device and method using omnidirectional image and 3-dimensional data |
US20140267258A1 (en) * | 2012-12-20 | 2014-09-18 | Imagination Technologies Limited | Hidden Culling in Tile-Based Computer Generated Images |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6876361B2 (en) * | 2001-03-15 | 2005-04-05 | Micron Technology, Inc. | Architecture for real-time texture look up's for volume rendering |
US7283666B2 (en) * | 2003-02-27 | 2007-10-16 | Saquib Suhail S | Digital image exposure correction |
US7747067B2 (en) * | 2003-10-08 | 2010-06-29 | Purdue Research Foundation | System and method for three dimensional modeling |
CN1320333C (zh) * | 2005-09-21 | 2007-06-06 | 天津大学 | 基于线结构激光被动扫描的快速彩色三维贴图方法 |
US7990397B2 (en) * | 2006-10-13 | 2011-08-02 | Leica Geosystems Ag | Image-mapped point cloud with ability to accurately represent point coordinates |
EP2646769B1 (en) * | 2010-11-29 | 2020-01-01 | Hewlett-Packard Development Company, L.P. | System and method for creating a three-dimensional image file |
US10089774B2 (en) * | 2011-11-16 | 2018-10-02 | Qualcomm Incorporated | Tessellation in tile-based rendering |
US9972120B2 (en) * | 2012-03-22 | 2018-05-15 | University Of Notre Dame Du Lac | Systems and methods for geometrically mapping two-dimensional images to three-dimensional surfaces |
CN102768765B (zh) * | 2012-06-25 | 2015-07-15 | 南京安讯网络服务有限公司 | 实时点光源软阴影渲染方法 |
US9330501B2 (en) * | 2012-08-20 | 2016-05-03 | Autodesk, Inc. | Systems and methods for augmenting panoramic image data with performance related data for a building |
US8992318B2 (en) * | 2012-09-26 | 2015-03-31 | Igt | Wearable display system and method |
US9025861B2 (en) | 2013-04-09 | 2015-05-05 | Google Inc. | System and method for floorplan reconstruction and three-dimensional modeling |
GB2518019B (en) * | 2013-12-13 | 2015-07-22 | Aveva Solutions Ltd | Image rendering of laser scan data |
CN103927781B (zh) * | 2014-05-06 | 2017-01-04 | 苏州中科图新网络科技有限公司 | 一种三维场景下视觉相关的模型渐进渲染方法 |
-
2014
- 2014-10-10 GB GB1417978.2A patent/GB2520822B/en active Active
-
2015
- 2015-04-28 RU RU2019121567A patent/RU2019121567A/ru unknown
- 2015-04-28 WO PCT/GB2015/051233 patent/WO2016055757A1/en active Application Filing
- 2015-04-28 CN CN201580038498.3A patent/CN106575448B/zh active Active
- 2015-04-28 AU AU2015329755A patent/AU2015329755B2/en active Active
- 2015-04-28 EP EP15721301.8A patent/EP3204918A1/en active Pending
- 2015-04-28 RU RU2017104504A patent/RU2695528C2/ru active
- 2015-04-28 JP JP2016574463A patent/JP6725110B2/ja active Active
- 2015-04-28 US US15/513,409 patent/US10878624B2/en active Active
- 2015-12-02 HK HK15111870.5A patent/HK1211126A1/zh not_active IP Right Cessation
-
2020
- 2020-12-29 US US17/136,876 patent/US11551418B2/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040222988A1 (en) * | 2003-05-08 | 2004-11-11 | Nintendo Co., Ltd. | Video game play using panoramically-composited depth-mapped cube mapping |
US20100053715A1 (en) * | 2006-10-30 | 2010-03-04 | O'neill James | Scanning system for lidar |
US20100328308A1 (en) * | 2008-07-10 | 2010-12-30 | C-True Ltd. | Three Dimensional Mesh Modeling |
US20100134486A1 (en) * | 2008-12-03 | 2010-06-03 | Colleen David J | Automated Display and Manipulation of Photos and Video Within Geographic Software |
US20110148876A1 (en) * | 2009-12-22 | 2011-06-23 | Akenine-Moller Tomas G | Compiling for Programmable Culling Unit |
US20130271461A1 (en) * | 2012-04-11 | 2013-10-17 | Pinpoint 3D | Systems and methods for obtaining parameters for a three dimensional model from reflectance data |
US20140267258A1 (en) * | 2012-12-20 | 2014-09-18 | Imagination Technologies Limited | Hidden Culling in Tile-Based Computer Generated Images |
US20140218354A1 (en) * | 2013-02-06 | 2014-08-07 | Electronics And Telecommunications Research Institute | View image providing device and method using omnidirectional image and 3-dimensional data |
Non-Patent Citations (2)
Title |
---|
M. Lambers et al., Ellipsoidal Cube Maps for Accurate Rendering of Planetary-Scale Terrain Data, Proc. Pacific Graphics, 12.09.2012, XP055204121. * |
V. Popescu et al., Interactive Modeling from Dense Color and Sparse Depth, 3D Data Processing, Visualization and Transmission, 2004. 3DPVT 2004. Proceedings. 2nd International Symposium on Thessaloniki, Greece 6-9 Sept. 2004, 20040906; 20040906 - 20040909 Piscataway, NJ, USA, IEEE - ISBN 978-0-7695-2223-4; ISBN 0-7695-2223-8. * |
Also Published As
Publication number | Publication date |
---|---|
US10878624B2 (en) | 2020-12-29 |
AU2015329755A1 (en) | 2017-01-12 |
GB2520822A (en) | 2015-06-03 |
US20170301132A1 (en) | 2017-10-19 |
RU2019121567A3 (ru) | 2022-04-08 |
JP6725110B2 (ja) | 2020-07-15 |
JP2017534935A (ja) | 2017-11-24 |
WO2016055757A1 (en) | 2016-04-14 |
US11551418B2 (en) | 2023-01-10 |
US20210209848A1 (en) | 2021-07-08 |
CN106575448B (zh) | 2021-10-08 |
RU2017104504A (ru) | 2018-11-13 |
CN106575448A (zh) | 2017-04-19 |
GB201417978D0 (en) | 2014-11-26 |
RU2019121567A (ru) | 2019-11-08 |
EP3204918A1 (en) | 2017-08-16 |
RU2017104504A3 (ru) | 2018-12-03 |
AU2015329755B2 (en) | 2021-01-28 |
HK1211126A1 (zh) | 2016-05-13 |
GB2520822B (en) | 2016-01-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2695528C2 (ru) | Визуализация изображения данных лазерного сканирования | |
RU2679964C1 (ru) | Визуализация изображений по данным лазерного сканирования | |
US9177414B2 (en) | Apparatus and method for rendering point cloud using voxel grid | |
JP7038683B2 (ja) | 合成装置、方法及びプログラム | |
US20220405878A1 (en) | Image processing apparatus, image processing method, and image processing program | |
AU2020449562B2 (en) | Geometry-aware augmented reality effects with a real-time depth map | |
EP2962290B1 (en) | Relaying 3d information by depth simulation using 2d pixel displacement | |
CN116993894B (zh) | 虚拟画面的生成方法、装置、设备、存储介质及程序产品 | |
Eggert et al. | Multi-layer visualization of mobile mapping data | |
US20240193864A1 (en) | Method for 3d visualization of sensor data | |
Gao et al. | Fusing oblique imagery with augmented aerial LiDAR | |
Theoktisto et al. | Generalized haptic relief atlas for rendering surface detail | |
de Toledo et al. | Geometry textures |