KR102413505B1 - 포인트 클라우드 데이터 시각화 장치 및 방법 - Google Patents

포인트 클라우드 데이터 시각화 장치 및 방법 Download PDF

Info

Publication number
KR102413505B1
KR102413505B1 KR1020210168486A KR20210168486A KR102413505B1 KR 102413505 B1 KR102413505 B1 KR 102413505B1 KR 1020210168486 A KR1020210168486 A KR 1020210168486A KR 20210168486 A KR20210168486 A KR 20210168486A KR 102413505 B1 KR102413505 B1 KR 102413505B1
Authority
KR
South Korea
Prior art keywords
file
visualization
point
tile
point cloud
Prior art date
Application number
KR1020210168486A
Other languages
English (en)
Inventor
조정민
Original Assignee
주식회사 동방티씨에스
조정민
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 동방티씨에스, 조정민 filed Critical 주식회사 동방티씨에스
Priority to KR1020210168486A priority Critical patent/KR102413505B1/ko
Application granted granted Critical
Publication of KR102413505B1 publication Critical patent/KR102413505B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds

Abstract

포인트 클라우드 데이터 시각화 장치는, 원본 포인트 클라우드 데이터로부터 헤더 정보를 획득하는 헤더 정보 획득부; 원본 포인트 클라우드 데이터에 포함된 포인트 데이터들을 기설정된 개수로 샘플링하여 제1 포인트 데이터 그룹을 획득하는 샘플링부; 원본 포인트 클라우드 데이터를 복수의 레이어로 분할하고, 레이어 별로 포함된 포인트 데이터들을 복수의 타일로 분할하여 타일 별로 제2 포인트 데이터 그룹을 획득하는 데이터 분할부; 제1 및 제2 포인트 데이터 그룹을 각각 인코딩하는 인코더; 및 인코딩된 제1 포인트 데이터 그룹을 헤더 정보와 매칭하여 제1 파일로 저장하고, 인코딩된 타일 별 제2 포인트 데이터 그룹을 제2 파일로 저장하되 타일이 해당하는 레이어에 매칭하여 저장하며, 복수의 레이어를 제1파일과 매칭하여 저장하는 저장부를 포함한다. 이때, 인코더는 원본 포인트 클라우드 데이터에 포함된 포인트 정보의 용량을 축소 변환할 수 있고, 제2 파일은 제2 포인트 데이터 그룹에 포함된 포인트 데이터 중 적어도 하나의 위치 정보에 기초하여 생성된 타일 헤더 정보를 포함할 수 있다.

Description

포인트 클라우드 데이터 시각화 장치 및 방법{APPARATUS AND METHOD FOR VISUALIZING POINT CLOUD DATA}
본 발명은 포인트 클라우드 데이터를 시각화를 처리하는 장치 및 그 방법에 관한 것이다.
서로 다른 물리적 공간에 있는 사용자들 간에 특정 현장에 대한 커뮤니케이션을 원활하게 돕는 기술로써 VR(Virtual Reality) 기술이 사용되고 있다.
특히, 건설 현장 관리 등과 같은 시간 및 공간의 제약이 많은 분야에서도, VR 공간에 현장의 스캔 데이터, 설계 데이터 및 이미지, GPS 데이터 등 다양한 정보 데이터를 사용하여 가상의 현장 공간을 구현할 경우, 사용자가 실제 현장에서 직접 확인할 필요 없이 가상 공간에서 현장의 거리를 측정하는 등 정밀하고 현장감 있는 관리가 가능하다.
한편, 이와 같은 VR을 통한 가상 현장 공간 구현 시 포인트 클라우드 데이터(Point Cloud Data)를 사용함으로써 아주 정밀하고 현장감 있는 시각화가 가능하여 여러 작업에 많은 도움이 될 수 있다. 포인트 클라우드 데이터는 LiDAR(Light Detection And Ranging) 등을 통해 취득할 수 있으며, 대상을 3차원 객체로 표현하기 위한 수많은 포인트들에 대한 정보들의 집합을 의미한다.
그러나 포인트 클라우드 데이터의 경우 데이터 용량이 매우 클 뿐만 아니라, VR 환경으로써 포인트 클라우드 데이터를 사용할 경우 이를 구현하기 위한 고가의 GPU 장비가 필요하다.
따라서, 다양한 하드웨어 사양에 따라 VR 환경에서 포인트 클라우드 데이터를 시각화할 수 있는 최적화된 포인트 클라우드 데이터 처리 방법이 필요한 실정이다.
한국공개특허 제10-2021-0089573호(발명의 명칭: 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데 이터 수신 장치 및 포인트 클라우드 데이터 수신 방법)
본 발명의 일 실시예는, 다양한 하드웨어 사양에 최적화된 포인트 클라우드 데이터를 처리하여 신속한 시각화를 처리할 수 있는 장치 및 방법을 제공하고자 한다.
다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 일 측면에 따른 포인트 클라우드 데이터 시각화 장치는, 원본 포인트 클라우드 데이터로부터 헤더 정보를 획득하는 헤더 정보 획득부; 상기 원본 포인트 클라우드 데이터에 포함된 포인트 데이터들을 기설정된 개수로 샘플링하여 제1 포인트 데이터 그룹을 획득하는 샘플링부; 상기 원본 포인트 클라우드 데이터를 복수의 레이어로 분할하고, 상기 레이어 별로 포함된 포인트 데이터들을 복수의 타일로 분할하여 상기 타일 별로 제2 포인트 데이터 그룹을 획득하는 데이터 분할부; 상기 제1 포인트 데이터 그룹 및 상기 타일 별 제2 포인트 데이터 그룹을 각각 인코딩하는 인코더; 및 상기 인코딩된 제1 포인트 데이터 그룹을 상기 헤더 정보와 매칭하여 제1 파일로 저장하고, 상기 인코딩된 타일 별 제2 포인트 데이터 그룹을 제2 파일로 저장하되 상기 타일이 해당하는 레이어에 매칭하여 저장하며, 상기 복수의 레이어 별 제2파일을 상기 제1 파일에 매칭하여 저장하는 저장부를 포함하며, 상기 인코더는 상기 원본 포인트 클라우드 데이터에 포함된 포인트 정보의 용량을 축소 변환하고, 상기 제2 파일은 상기 제2 포인트 데이터 그룹에 포함된 포인트 데이터 중 적어도 하나의 위치 정보에 기초하여 생성된 타일 헤더 정보를 포함한다.
또한, 상기 인코더는, 상기 제1 포인트 데이터 그룹 및 상기 제2 포인트 데이터 그룹 별로 각각 원본에 저장되어 있는 복수의 포인트 정보들 중 시각화를 위한 위치 정보 및 색 정보만 추출하고, 상기 위치 정보에 포함된 3차원 좌표 별로 데이터 크기를 기설정된 비율로 축소 변환할 수 있다.
또한, 상기 인코더는, 상기 3차원 좌표 별로, 제1 포인트 데이터 그룹 또는 제2 포인트 데이터 그룹 별로 포함된 임의의 좌표 값, 최대 좌표 값 및 최소 좌표 값에 기초한 아래 수학식 1을 통해 상기 임의의 좌표 값의 데이터 크기를 축소 변환할 수 있다.
<수학식 1>
변환된 임의의 좌표 값 = (임의의 좌표 값 - 최소 좌표 값)/(최대 좌표 값 - 최소 좌표 값) × a
이때, 상기 a는 기설정된 데이터 크기 단위가 표현 가능한 값의 범위 중 최대 값을 나타내는 상수이며, 상기 기설정된 데이터 크기 단위는 상기 임의의 좌표 값의 데이터 크기 단위 보다 작은 단위이다.
또한, 상기 인코더는, 상기 제2 포인트 데이터 그룹에 포함된 3차원 좌표 별 최대 좌표 값 및 최소 좌표 값을 상기 제2 파일의 타일 헤더 정보로써 상기 저장부로 출력할 수 있다.
또한, 상기 포인트 클라우드 데이터 시각화 장치는, 상기 저장부로부터 상기 헤더 정보 및 상기 제1 파일을 로드하여, 상기 로드된 제1 파일에 포함된 포인트 데이터 그룹을 시각화한 후, 상기 저장부로부터 상기 제1파일에 매칭된 레이어 중 적어도 하나의 레이어에 대응하는 상기 제2 파일을 로드하여 상기 제1 파일에 누적하여 시각화하는 시각화부를 더 포함할 수 있다.
또한, 상기 시각화부는, 복수의 시각화 레벨 중 기설정된 시각화 목표 레벨에 대응하는 하나 이상의 레이어의 제2파일을 로드하여 상기 제1 파일에 누적하여 시각화할 수 있다.
또한, 상기 포인트 클라우드 데이터 시각화 장치는, 거리 측정 소자를 통해 측정된 상기 시각화된 제2파일에 포함된 복수의 타일과 사용자 사이의 거리 정보를 획득하는 거리 측정부를 더 포함할 수 있다.
또한, 상기 시각화부는, 상기 측정된 거리 정보의 값이 기설정된 기준 거리 이내인 하나 이상의 타일을 검출하고, 상기 검출된 타일 별 위치 정보에 대응하는 기설정된 범위 내의 하나 이상의 타일을 추출하고, 상기 저장부로부터 상기 추출된 타일 별 위치 정보에 대응하는 타일 헤더 정보를 검출하고, 상기 복수의 레이어 별 제2 파일 중 상기 검출된 타일 헤더 정보에 대응하는 타일 별 제2 포인트 데이터 그룹을 로드하고, 상기 로드된 타일 별 제2 포인트 데이터 그룹을 상기 시각화한 제1 파일 및 제2 파일에 누적하여 시각화할 수 있다.
또한, 상기 시각화부는, 상기 저장부로부터 상기 복수의 레이어 중 최하위 레이어의 제2 파일을 로드하여 상기 제1 파일에 누적하여 시각화한 후, 상기 기설정된 시각화 레벨에 대응하되, 상기 최하위 레이어가 아닌 하나 이상의 레이어의 제2파일을 로드할 수 있다.
또한, 상기 포인트 클라우드 데이터 시각화 장치는, 포인트 클라우드 시각화 장치의 하드웨어 사양에 따른 하나 이상의 추천 시각화 레벨을 출력하고, 상기 출력에 대한 응답으로써 사용자의 레벨 선택을 수신하여 상기 시각화부로 전달하는 사용자 인터페이스부를 더 포함하며, 상기 시각화부는 사용자가 선택한 시각화 레벨을 시각화 목표 레벨로 설정할 수 있다.
본 발명은, 포인트 클라우드 데이터를 LOD(Level Of Detail) 스트리밍할 수 있어, 다양한 스펙의 하드웨어에서 최적의 포인트 클라우드 데이터를 신속하게 VR 환경으로 시각화할 수 있다.
도 1은 본 발명의 일 실시예에 따른 포인트 클라우드 데이터 시각화 장치의 구성도이다.
도 2는 본 발명의 일 실시예에 따른 포인트 클라우드 데이터 변환 모듈의 구성도이다.
도 3은 본 발명의 일 실시예에 따른 포인트 클라우드 데이터 인코딩 방법을 설명하기 위한 순서도이다.
도 4는 본 발명의 일 실시예에 따른 포인트 클라우드 데이터 시각화 모듈의 구성도이다.
도 5 및 도 6은 본 발명의 일 실시예에 따른 포인트 클라우드 데이터 시각화 방법을 설명하기 위한 순서도이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본 명세서에 있어서 '부(部)' 또는 '모듈'이란, 하드웨어 또는 소프트웨어에 의해 실현되는 유닛(unit), 양방을 이용하여 실현되는 유닛을 포함하며, 하나의 유닛이 둘 이상의 하드웨어를 이용하여 실현되어도 되고, 둘 이상의 유닛이 하나의 하드웨어에 의해 실현되어도 된다.
도 1에 도시한 바와 같이, 포인트 클라우드 데이터 시각화 장치(10)는 포인트 클라우드 데이터 변환 모듈(100) 및 포인트 클라우드 데이터 시각화 모듈(200)을 포함한다.
본 발명의 일 실시예에서는 포인트 클라우드 데이터 변환 모듈(100) 및 포인트 클라우드 데이터 시각화 모듈(200)이 하나의 포인트 클라우드 데이터 시각화 장치(10)에 모두 구비된 것으로 설명하나, 포인트 클라우드 데이터 인코더(100) 및 포인트 클라우드 데이터 시각화 모듈(200)이 각각 별도의 하드웨어에 단독으로 구성되는 것도 가능하다.
예를 들어, 포인트 클라우드 데이터 변환 모듈(100)은 특정 현장에서 촬영된 3차원 포인트 클라우드 데이터를 인코딩하여 저장하고, 해당 데이터를 다른 단말로 전송하는 장치로써 구현되거나 또는 사용자 단말 등의 장치(미도시)에 연동 또는 구비될 수 있다. 또한, 포인트 클라우드 데이터 시각화 모듈(200)은 3차원 포인트 클라우드 데이터가 촬영 및 생성된 현장이 아닌 물리적으로 다른 공간의 VR 환경에서 해당 포인트 클라우드 데이터를 시각화하는 장치로써 구현되거나 또는 사용자 단말 등의 장치(미도시)에 연동 또는 구비될 수 있다. 이처럼, 포인트 클라우드 데이터 변환 모듈(100) 및 포인트 클라우드 데이터 시각화 모듈(200)은 포인트 클라우드 시각화 시스템의 구성 요소로써 각각 하나의 장치로 구현될 수 있다.
도 2에 도시된 바와 같이, 포인트 클라우드 데이터 변환 모듈(100)은 원본 포인트 클라우드 데이터로부터 헤더 정보를 획득하는 헤더 정보 획득부(110), 원본 포인트 클라우드 데이터에 포함된 포인트 데이터들을 기설정된 개수로 샘플링하여 제1 포인트 데이터 그룹을 획득하는 샘플링부(120), 원본 포인트 클라우드 데이터를 복수의 레이어로 분할하고, 레이어 별로 포함된 포인트 데이터들을 복수의 타일(tile)로 분할하여, 타일 별로 제2 포인트 데이터 그룹을 획득하는 데이터 분할부(130), 제1 포인트 데이터 그룹 및 타일 별 제2 포인트 데이터 그룹을 각각 인코딩하는 인코더(140), 및 인코딩된 제1 포인트 데이터 그룹을 헤더 정보와 매칭하여 제1 파일로 저장하고, 인코딩된 타일 별 제2 포인트 데이터 그룹을 제2 파일로 저장하되 타일이 해당하는 레이어에 매칭하여 저장하며, 복수의 레이어를 제1 파일에 매칭하여 저장하는 저장부(150)을 포함한다.
이때, 인코더(140)는 원본 포인트 클라우드 데이터에 포함된 포인트 정보의 용량을 축소 변환한다.
구체적으로, 인코더(140)는 제1 포인트 데이터 그룹 및 제2 포인트 데이터 그룹 별로 각각 원본에 저장되어 있는 복수의 포인트 정보들 중 시각화를 위한 위치 정보 및 색 정보만 추출한다.
또한, 인코더(140)는 위치 정보에 포함된 3차원 좌표 별로 데이터 크기를 기설정된 비율로 축소 변환한다.
이때, 3차원 좌표는 서로 직각을 이루는 3개의 축(즉, x축, y축 및 z축)에 각각 대응하는 x좌표, y좌표 및 z좌표일 수 있으며, 예를 들어 인코더(140)는 x좌표에 대해 다음의 수학식 1을 통해 임의의 좌표 X에 대한 데이터 크기를 축소 변환할 수 있다.
<수학식 1>
Figure 112021138635104-pat00001
이때, 위의 수학식 1에서 encodeX는 인코더(140)를 통해 변환된 임의의 좌표 x의 좌표 값이고, x는 임의의 좌표 x의 원래 좌표 값이고, minX는 해당 포인트 데이터 그룹의 포인트 데이터에 포함된 x축 좌표 중 최소 좌표 값이고, maxX는 해당 포인트 데이터 그룹의 포인트 데이터에 포함된 x축 좌표 중 최대 좌표 값이며, "65535.0f"는 사전에 설정된 데이터 크기 단위가 표현 가능한 값들의 범위 중 최대 값을 나타내는 상수로써 원본 포인트 데이터의 크기를 나타내는 단위(예를 들어, 8byte)보다 작은 단위(예를 들어, 16bit)일 수 있다.
나머지 y좌표 및 z좌표 또한 위의 수학식 1과 같은 방식으로 축소 변환할 수 있다.
또한, 인코더(140)는 제2 포인트 데이터 그룹에 포함된 3차원 좌표 별 최대 좌표 값(즉, maxX, maxY, maxZ) 및 최소 좌표 값(minx, minY, minZ)을 각 타일의 타일 헤더 정보로써 저장부(150)로 출력하여, 제2 파일에 함께 저장한다.
즉, 각 레이어의 제2 파일에 포함된 타일 별로 위치 정보에 기초하여 생성된 타일 헤더 정보를 포함하여 저장된다. 이와 같은 타일 헤더 정보는 포인트 클라우드 데이터에 대한 시각화 처리 시 특정 타일을 추출하는데 사용될 수 있다.
도 3을 참조하여 포인트 클라우드 데이터 변환 모듈(100)의 인코딩 방법에 대해서 설명하도록 한다.
먼저, 입력된 원본 포인트 클라우드 데이터의 헤더 정보를 획득한다(S301).
다음으로, 원본 포인트 클라우드 데이터 중 기설정된 개수(예: 100 만개)의 포인트 데이터를 샘플링하고(S311), 샘플링된 제1 포인트 데이터 그룹을 기설정된 변환 방식으로 인코딩하며(S312), 인코딩된 제1 포인트 데이터 그룹을 제1파일로써 헤더 정보와 함께 매칭하여 저장한다(S313).
이때, 인코딩하는 단계(S312)는, 앞서 설명한 바와 같이 제1 포인트 데이터 그룹의 원본 포인트 정보 중 위치 정보 및 색 정보만 추출하고, 샘플링된 포인트 데이터의 위치 정보를 기설정된 비율로 축소 변환하는 인코딩을 처리할 수 있다.
한편, 단계 (S301) 이후, 원본 포인트 클라우드 데이터를 기설정된 개수(예:10개)의 레이어로 분할하고, 각 레이어 별로 타일링하여 복수의 타일 별 제2 포인트 데이터 그룹을 획득한다(S321). 그런 다음, 타일 별 제2 포인트 데이터 그룹을 기설정된 변환 방식으로 인코딩하며(S322), 인코딩된 타일 별 제2포인트 데이터 그룹을 제2파일로써 해당 레이어에 매칭하여 저장하되, 각 레이어를 제1 파일에 매칭하여 저장한다(S323).
이때, 인코딩하는 단계(S322)는, 앞서 설명한 바와 같이 제2 포인트 데이터 그룹의 원본 포인트 정보 중 위치 정보 및 색 정보만 추출하고, 샘플링된 포인트 데이터의 위치 정보를 기설정된 비율로 축소 변환하는 인코딩을 처리할 수 있다. 더불어, 인코딩하는 단계(S322)는, 타일 별로 포함된 포인트 데이터 중에서 3차원 좌표 별 최대 좌표 값 및 최소 좌표 값을 해당 타일의 타일 헤더 정보로써 생성할 수 있다. 이에 따라, 제2 파일을 저장하는 단계 (S323)는 레이어 별 제2 파일을 저장할 때 각 타일의 타일 헤더 정보를 함께 저장할 수 있다.
상기 단계(S311) 내지 단계(S313)을 모두 수행한 후 상기 단계(S321)를 순차적으로 수행할 수 있으며, 상기 단계(S311)와 단계(S321)를 병렬적으로 수행하는 것도 가능하다.
도 4에 도시한 바와 같이, 포인트 클라우드 데이터 시각화 모듈(200)은 기저장된 제1 및 제2 파일을 시각화하는 시각화부(210), 포인트 클라우드 데이터를 시각화하고자 하는 사용자로부터의 데이터를 입력받아 시각화부(210)로 전달하고, 사용자가 시각화된 포인트 클라우드 데이터를 확인할 수 있도록 출력하는 사용자 인터페이스부(220), 및 시각화된 포인트 클라우드 데이터와 사용자 간의 거리를 측정하는 거리 측정부(230)를 포함한다.
시각화부(210)는 제1 파일 및 최하위 레이어에 대응하는 제2 파일을 시각화하는 제1 시각화부(211), 및 기설정된 레벨에 따른 하나 이상의 레이어 별로 대응하는 선택된 타일의 제2 파일을 로드하여 시각화하는 제2 시각화부(212)를 포함한다.
제1 시각화부(211)는 시각화 하고자 하는 원본 클라우드 데이터의 헤더 정보를 확인하고, 저장부(150)로부터 해당하는 헤더 정보 및 제1 파일을 로드하여, 로드된 제1 파일에 포함된 포인트 데이터 그룹을 시각화한다.
본 발명의 일 실시예에서 포인트 클라우드 데이터의 시각화는, 포인트 데이터 그룹에 포함된 포인트 데이터 별 위치 정보에 따른 3차원 좌표의 벡터 값과 색상 정보에 따른 색상 값을 메쉬(mesh)에 매핑하여 출력하여 구현할 수 있다.
제2 시각화부(212)는 시각화된 제1 파일에 매칭된 복수의 레이어 중 적어도 하나의 레이어에 대응하는 제2 파일을 로드한 후, 시각화된 제1 파일에 누적하여 시각화한다.
이때, 제2 시각화부(212)는 복수의 시각화 레벨 중 기설정된 시각화 목표 레벨에 대응하는 하나 이상의 레이어의 제2파일을 로드하여 제1 파일에 누적하여 시각화할 수 있다.
이를 통해, 사용자가 원하는 레벨에 최적화된 용량 및 품질의 포인트 클라우드 데이터 시각화 즉, LOD(Level Of Detail) 스트리밍이 가능하다.
구체적으로, 제2 시각화부(212)는 제1 파일이 시각화된 후, 복수의 레이어 중 최하위 레이어(즉, 레이어 0)의 제2 파일을 로드하여 제1 파일에 누적하여 시각화한다. 이와 같은 최하위 레이어의 제2 파일에는 복수의 타일이 포함되어 있어, 거리 측정부(230)가 시각화된 제1 및 제2 파일에 대한 사용자의 거리를 측정하기 위한 기준을 제공할 수 있다.
또한, 제2 시각화부(212)는 기설정된 시각화 목표 레벨에 대응하는 포인트 클라우드 데이터를 시각화 하기 위해, 앞서 시각화된 최하위 레이어가 아닌 하나 이상의 레이어의 제2 파일을 이미 시각화된 제1 및 제2 파일에 누적하여 시각화한다.
예를 들어, 복수의 레이어가 n+1개로 설정된 경우, 레이어 0이 최하위 레벨이고, 레이어 n이 최상위 레이어일 수 있다. 그리고 사전에 설정된 시각화 목표 레벨은 포인트 클라우드 데이터 시각화 모듈(200)이 포함된 장치의 하드웨어 사양 및 사용 환경에 따라 사전에 관리자(즉, 사용자)에 의해 선택될 수 있다.
이때, 사용자 인터페이스부(220)는 포인트 클라우드 시각화 장치(10)의 하드웨어 사양에 따른 하나 이상의 추천 시각화 레벨을 출력하고, 이에 대한 응답으로써 사용자의 레벨 선택을 수신하여 제2 시각화부(212)로 전달할 수 있다. 제2 시각화부(212)는 사용자가 선택한 시각화 레벨을 시각화 목표 레벨로 설정할 수 있다.
시각화 목표 레벨에 대응하는 레이어의 개수가 k개 인 경우 시각화부(212)는 레이어 1부터 레이어 k까지의 제2 파일을 로드하여 시각화할 수 있다. 하드웨어가 고사양일수록 시각화 목표 레벨에 포함된 레이어의 개수가 증가될 수 있으며, 누적된 레이어의 제2 파일이 많아질수록 포인트 클라우드 데이터의 시각화 품질(예: 해상도 등)이 높아질 수 있다.
또한, 제2 시각화부(212)는 거리 측정부(230)를 통해 측정된 사용자와의 거리 정보에 따라 적어도 일부의 타일을 추가적으로 시각화할 수 있다.
거리 측정부(230)는 거리 측정 소자를 측정된 시각화된 제2파일에 포함된 복수의 타일과 사용자 사이의 거리 정보를 획득한다. 이때, 시각화된 제2 파일은 최하위 레이어(즉, 레이어 0)의 제2파일일 수 있다.
제2 시각화부(212)는 측정된 거리 정보의 값이 기설정된 기준 거리 이내인 하나 이상의 타일을 검출하고, 검출된 타일 별 위치 정보에 대응하는 기설정된 범위 내의 하나 이상의 타일을 추출한다.
그리고 제2시각화부(212)는 추출된 타일 별 위치 정보에 대응하는 타일 헤더 정보를 저장부(150)로부터 검출하고, 저장부(150)로부터 복수의 레이어 별 제2 파일 중 타일 헤더 정보에 대응하는 타일 별 제2 포인트 데이터 그룹을 로드하고, 로드된 타일 별 제2 포인트 데이터 그룹을 시각화된 제1 파일 및 제2 파일에 누적하여 시각화한다.
즉, 제1 파일 및 하나 이상의 제2 파일이 시각화된 상태에서, 사용자의 위치에 대응하되 사용자와의 거리가 일정 거리 이내인 범위의 타일에 대해서 부분적으로 더 높은 품질(예: 해상도)의 시각화가 가능하다.
도 5 및 6을 참조하여 포인트 클라우드 데이터 시각화 모듈(200)의 시각화 방법에 대해서 설명하도록 한다.
먼저, 도 5를 참조하면, 시각화하고자 하는 원본 포인트 클라우드 데이터의 헤더 정보를 확인하고(S501), 확인된 헤더 정보에 대응되는 제1 파일을 저장부(150)로부터 로드하여 시각화한다(S502).
다음으로, 시각화된 제1 파일에 매칭되어 저장된 복수의 레이어 별 제2 파일 중 최하위 레이어(즉, 레이어 0)의 제2 파일을 저장부(150)로부터 로드하고, 로드된 제2 파일을 제1파일에 누적하여 시각화한다(S503).
다음으로, 사전에 사용자의 선택 또는 장치의 하드웨어 사양에 따라 선택된 시각화 목표 레벨에 대응하는 레이어를 확인하고, 확인된 레이어의 제2 파일을 저장부(150) 로부터 로드하여 제1 파일 및 최하위 레이어의 제2 파일에 누적하여 시각화한다(S504).
이를 통해, 원본 포인트 데이터 파일에 비해 적은 용량의 포인트 데이터를 저장 및 관리할 수 있으면서도, 사용자의 필요(즉, 하드웨어 사양 및 사용 환경 등)에 최적화된 품질의 포인트 클라우드 데이터 시각화가 가능하다.
또한, 도 6을 참조하면, 기설정된 시각화 목표 레벨의 포인트 클라우드 데이터가 시각화된 상태에서 사용자의 위치(예를 들어, 시점 등)에 따라 부분적으로 향상된 품질의 시각화를 구현할 수 있다.
구체적으로, 앞선 단계(S504) 이후, 시각화된 제2파일에 포함된 복수의 타일들에 대한 사용자와의 거리를 측정한다(S601).
다음으로, 측정된 거리 정보의 값이 기설정된 기준 거리 이내인 하나 이상의 타일을 검출하고, 검출된 타일로부터 기설정된 일정 범위에 속하는 하나 이상의 주변 타일을 선택한다(S602).
그런 다음, 선택된 주변 타일의 위치 정보에 대응하는 타일 헤더 정보를 검출하고(S603), 저장부(150)로부터 복수의 레이어 별 제2 파일 중 상기 검출된 타일 헤더 정보에 대응하는 타일의 제1 포인트 데이터 그룹을 로드한다(S604).
예를 들어, 이미 시각화되어 있는 레이어의 타일들 외에 새로운 타일이 주변 타일로써 선택된 경우, 해당 주변 타일이 포함된 레이어의 제2 파일로부터 해당하는 제2 포인트 데이터 그룹을 로드한다.
다음으로, 로드된 제2 포인트 데이터 그룹의 포인트 데이터를 시각화된 제1 및 제2 파일에 누적하여 시각화한다(S605).
이를 통해, 사전에 설정되어 있는 시각화 목표 레벨에 따른 품질의 포인트 클라우드 데이터가 시각화된 상태에서 추가 시각화를 수행함으로써, 사용자의 위치에 따라 부분적으로 더 높은 레벨의 시각화를 수행할 수 있다.
한편, 도 1 내지 도 6에서 설명한 포인트 클라우드 데이터 시각화 장치(10)의 각 구성 및 그 처리 방법은 다음과 같은 하드웨어 구성으로 구현될 수 있다.
구체적으로, 포인트 클라우드 데이터 시각화 장치(10)는 적어도 하나의 프로세서에 의해 동작하는 컴퓨팅 장치일 수 있으며, 본 발명에 따른 동작을 실행하도록 기술된 명령들(instructions)이 포함된 프로그램을 실행할 수 있다.
포인트 클라우드 데이터 시각화 장치(10)의 하드웨어는, 적어도 하나의 프로세서, 메모리, 스토리지 및 통신 인터페이스를 포함할 수 있으며, 이들 각 구성은 통신 버스를 통해 연결될 수 있다. 이외에도, 포인트 클라우드 데이터 시각화 장치(10)는 별도의 입력 장치 및 출력 장치 등의 하드웨어를 더 포함할 수 있다.
포인트 클라우드 데이터 시각화 장치(10)는 프로그램을 구동할 수 있는 운영 체제를 비롯한 각종 소프트웨어가 스토리지와 같은 저장 장치에 탑재될 수 있다.
프로세서는 포인트 클라우드 데이터 시각화 장치(10)의 동작을 제어하는 장치로서, 프로그램에 포함된 명령들을 처리하는 다양한 형태의 프로세서(예: CPU(Central Processing Unit), MPU(Micro Processor Unit), MCU(Micro Controller Unit), GPU(Graphic Processing Unit) 등)일 수 있다.
메모리는 본 발명에 따른 동작을 실행하도록 기술된 명령들이 프로세서에 의해 처리되도록 해당 프로그램을 로드할 수 있다. 예를 들어, 메모리는 ROM(read only memory), RAM(random access memory) 등 일 수 있다.
이때, 메모리는 스토리지에 저장되어 있는 프로그램을 로드할 수 있다. 이러한 프로그램은 앞서 도 2 내지 도 6에서 설명한 포인트 클라우드 데이터 변환 모듈(100) 및 포인트 클라우드 데이터 시각화 모듈(200)이 수행하는 각 동작을 처리하기 위한 프로그램일 수 있다.
스토리지는 본 발명에 따른 동작을 실행하는데 요구되는 각종 데이터 및 프로그램 등을 저장할 수 있다. 이때, 스토리지는 프로그램의 실행에 따라 처리된 결과 데이터 및 사전에 연동되거나 연결된 장치(예: 외부 서버 등)를 통해 입력된 데이터들을 각 사용자 별로 각각 매칭하여 데이터베이스화 하여 저장할 수 있다.
통신 인터페이스는 포인트 클라우드 데이터 시각화 장치(10)의 각 구성 요소들 간의 통신, 및 외부 연동된 장치(즉, 현장에 구비된 단말 또는 사용자의 단말 등)와의 통신을 처리하는 유/무선 통신 모듈일 수 있다.
프로세서는 메모리에 로드된 프로그램에 포함된 명령들을 수행하되, 프로그램의 실행에 따라 앞서 설명한 포인트 클라우드 데이터 변환 모듈(100) 및 포인트 클라우드 데이터 시각화 모듈(200)의 적어도 하나의 구성들의 동작을 처리한다.
이상, 본 발명의 일 실시예에 따른 포인트 클라우드 데이터 시각화 장치가 포인트 클라우드 데이터를 변환 및 시각화하는 처리 방법은, 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다.
본 발명의 방법 및 시스템은 특정 실시예와 관련하여 설명되었지만, 그것들의 구성 요소 또는 동작의 일부 또는 전부는 범용 하드웨어 아키텍쳐를 갖는 컴퓨터 시스템을 사용하여 구현될 수 있다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
10: 포인트 클라우드 데이터 시각화 장치
100: 포인트 클라우드 데이터 변환 모듈
200: 포인트 클라우드 데이터 시각화 모듈

Claims (9)

  1. 포인트 클라우드 데이터 시각화 장치에 있어서,
    원본 포인트 클라우드 데이터로부터 헤더 정보를 획득하는 헤더 정보 획득부;
    상기 원본 포인트 클라우드 데이터에 포함된 포인트 데이터들을 기설정된 개수로 샘플링하여 제1 포인트 데이터 그룹을 획득하는 샘플링부;
    상기 원본 포인트 클라우드 데이터를 복수의 레이어로 분할하고, 상기 레이어 별로 포함된 포인트 데이터들을 복수의 타일로 분할하여 상기 타일 별로 제2 포인트 데이터 그룹을 획득하는 데이터 분할부;
    상기 제1 포인트 데이터 그룹 및 상기 타일 별 제2 포인트 데이터 그룹을 각각 인코딩하는 인코더; 및
    상기 인코딩된 제1 포인트 데이터 그룹을 상기 헤더 정보와 매칭하여 제1 파일로 저장하고, 상기 인코딩된 타일 별 제2 포인트 데이터 그룹을 제2 파일로 저장하되 상기 타일이 해당하는 레이어에 매칭하여 저장하며, 상기 복수의 레이어 별 제2파일을 상기 제1 파일에 매칭하여 저장하는 저장부를 포함하며,
    상기 인코더는 상기 원본 포인트 클라우드 데이터에 포함된 포인트 정보의 용량을 축소 변환하고,
    상기 제2 파일은 상기 제2 포인트 데이터 그룹에 포함된 포인트 데이터 중 적어도 하나의 위치 정보에 기초하여 생성된 타일 헤더 정보를 포함하고,
    상기 인코더는,
    상기 제1 포인트 데이터 그룹 및 상기 제2 포인트 데이터 그룹 별로 각각 원본에 저장되어 있는 복수의 포인트 정보들 중 시각화를 위한 위치 정보 및 색 정보만 추출하고,
    상기 위치 정보에 포함된 3차원 좌표 별로 데이터 크기를 기설정된 비율로 축소 변환하며,
    상기 제2 포인트 데이터 그룹에 포함된 3차원 좌표 별 최대 좌표 값 및 최소 좌표 값을 상기 제2 파일의 타일 헤더 정보로써 상기 저장부로 출력하고,
    상기 포인트 클라우드 데이터 시각화 장치는,
    상기 저장부로부터 상기 헤더 정보 및 상기 제1 파일을 로드하여, 상기 로드된 제1 파일에 포함된 포인트 데이터 그룹을 시각화한 후,
    상기 저장부로부터 상기 제1파일에 매칭된 레이어 중 최하위 레이어에 대응하는 상기 제2 파일을 로드하여 상기 제1 파일에 누적하여 시각화하는 시각화부를 더 포함하고,
    상기 시각화부는,
    상기 저장부로부터 상기 복수의 레이어 중 최하위 레이어의 제2 파일을 로드하여 상기 제1 파일에 누적하여 시각화한 후, 복수의 시각화 레벨 중 기설정된 시각화 목표 레벨에 대응하는 하나 이상의 레이어의 제2파일을 상기 저장부로부터 로드하여 상기 제1 파일에 누적하여 시각화하고,
    상기 포인트 클라우드 데이터 시각화 장치는,
    거리 측정 소자를 통해 측정된 상기 누적되어 시각화된 제2파일에 포함된 복수의 타일과 사용자 사이의 거리 정보를 획득하는 거리 측정부를 더 포함하고,
    상기 시각화부는,
    상기 측정된 거리 정보의 값이 기설정된 기준 거리 이내인 하나 이상의 타일을 검출하고,
    상기 검출된 타일 별 위치 정보에 대응하는 기설정된 범위 내의 하나 이상의 타일을 주변 타일로서 추출하고,
    상기 검출된 타일 외에 새로운 타일이 상기 주변 타일로서 추출되면, 상기 저장부로부터 상기 추출된 타일 별 위치 정보에 대응하는 타일 헤더 정보를 검출하고, 상기 복수의 레이어 별 제2 파일 중 상기 검출된 타일 헤더 정보에 대응하는 타일 별 제2 포인트 데이터 그룹을 로드하고,
    상기 로드된 타일 별 제2 포인트 데이터 그룹을 상기 시각화한 제1 파일 및 제2 파일에 누적하여 시각화하는,
    포인트 클라우드 데이터 시각화 장치.
  2. 삭제
  3. 청구항 1에 있어서,
    상기 인코더는,
    상기 3차원 좌표 별로, 제1 포인트 데이터 그룹 또는 제2 포인트 데이터 그룹 별로 포함된 임의의 좌표 값, 최대 좌표 값 및 최소 좌표 값에 기초한 아래 수학식 1을 통해 상기 임의의 좌표 값의 데이터 크기를 축소 변환하되,
    <수학식 1>
    변환된 임의의 좌표 값 = (임의의 좌표 값 - 최소 좌표 값)/(최대 좌표 값 - 최소 좌표 값) × a
    상기 a는 기설정된 데이터 크기 단위가 표현 가능한 값의 범위 중 최대 값을 나타내는 상수이며,
    상기 기설정된 데이터 크기 단위는 상기 임의의 좌표 값의 데이터 크기 단위 보다 작은 단위인 것인, 포인트 클라우드 데이터 시각화 장치.
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 청구항 1에 있어서,
    포인트 클라우드 시각화 장치의 하드웨어 사양에 따른 하나 이상의 추천 시각화 레벨을 출력하고, 상기 출력에 대한 응답으로써 사용자의 레벨 선택을 수신하여 상기 시각화부로 전달하는 사용자 인터페이스부를 더 포함하며,
    상기 시각화부는 사용자가 선택한 시각화 레벨을 시각화 목표 레벨로 설정하는, 포인트 클라우드 데이터 시각화 장치.
KR1020210168486A 2021-11-30 2021-11-30 포인트 클라우드 데이터 시각화 장치 및 방법 KR102413505B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210168486A KR102413505B1 (ko) 2021-11-30 2021-11-30 포인트 클라우드 데이터 시각화 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210168486A KR102413505B1 (ko) 2021-11-30 2021-11-30 포인트 클라우드 데이터 시각화 장치 및 방법

Publications (1)

Publication Number Publication Date
KR102413505B1 true KR102413505B1 (ko) 2022-06-28

Family

ID=82268461

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210168486A KR102413505B1 (ko) 2021-11-30 2021-11-30 포인트 클라우드 데이터 시각화 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102413505B1 (ko)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190064050A (ko) * 2017-11-30 2019-06-10 (주)소프트힐스 대용량 포인트 클라우드 데이터 가시화 시스템
KR20190089115A (ko) * 2018-01-20 2019-07-30 삼성전자주식회사 포인트 클라우드 압축 방법 및 장치
KR20190099954A (ko) * 2018-02-20 2019-08-28 한국전자통신연구원 이미지 타일 가시화 정보의 계층적 표현을 이용한 이미지 표현 방법, 이를 이용하는 디바이스 및 시스템
KR20210033186A (ko) * 2019-09-18 2021-03-26 한국전자통신연구원 도시 모델 제공 방법 및 장치
KR20210042569A (ko) * 2019-10-10 2021-04-20 한국전자통신연구원 공간 정보 구성 방법 및 장치
KR20210089573A (ko) 2020-01-08 2021-07-16 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190064050A (ko) * 2017-11-30 2019-06-10 (주)소프트힐스 대용량 포인트 클라우드 데이터 가시화 시스템
KR20190089115A (ko) * 2018-01-20 2019-07-30 삼성전자주식회사 포인트 클라우드 압축 방법 및 장치
KR20190099954A (ko) * 2018-02-20 2019-08-28 한국전자통신연구원 이미지 타일 가시화 정보의 계층적 표현을 이용한 이미지 표현 방법, 이를 이용하는 디바이스 및 시스템
KR20210033186A (ko) * 2019-09-18 2021-03-26 한국전자통신연구원 도시 모델 제공 방법 및 장치
KR20210042569A (ko) * 2019-10-10 2021-04-20 한국전자통신연구원 공간 정보 구성 방법 및 장치
KR20210089573A (ko) 2020-01-08 2021-07-16 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법

Similar Documents

Publication Publication Date Title
AU2016201655B2 (en) Estimating depth from a single image
KR101848959B1 (ko) 컬러 채널 및 광학 마커
US9697581B2 (en) Image processing apparatus and image processing method
CN110517209B (zh) 数据处理方法、装置、系统以及计算机可读存储介质
KR20180067426A (ko) 희소 행렬을 재구성하기 위한 신호 수송 데이터를 인코딩하는 방법 및 장치
KR20220085142A (ko) 확장현실 기반 지능형 건설현장 관리 지원 시스템 및 방법
WO2021096324A1 (en) Method for estimating depth of scene in image and computing device for implementation of the same
EP3296763A1 (en) Weather data processing apparatus and method using weather radar
JP2019095876A (ja) 3次元点群表示装置、3次元点群表示システム、3次元点群表示方法および3次元点群表示プログラム、記録媒体
KR101117239B1 (ko) 객체 인식시스템 및 이를 이용하는 객체 인식 방법
US9779543B2 (en) Method for providing and receiving information representing physical features of a portion of a three dimensional surface
KR102413505B1 (ko) 포인트 클라우드 데이터 시각화 장치 및 방법
KR20170073937A (ko) 영상 데이터 전송 방법 및 장치, 및 3차원 영상 생성 방법 및 장치
CN113034582A (zh) 位姿优化装置及方法、电子设备及计算机可读存储介质
CN111742352A (zh) 3d对象建模方法以及相关设备和计算机程序产品
KR20220085150A (ko) 확장현실 기반 지능형 건설현장 관리 지원 시스템 서버 및 방법
JP5697369B2 (ja) 画像処理装置、画像処理システム及び画像処理方法
WO2023239799A1 (en) Systems and methods for efficient rendering and processing of point clouds using textures
CN114882115B (zh) 车辆位姿的预测方法和装置、电子设备和存储介质
JP2013145954A (ja) 分散情報処理装置
JP7020418B2 (ja) 情報処理装置、情報処理方法、およびプログラム
JP6564259B2 (ja) 画像処理装置、画像処理方法
KR102150954B1 (ko) 점군 정보 가공 장치 및 방법
CN115700611A (zh) 学习方法、存储介质以及图像处理装置
US20220114749A1 (en) Information integration method, information integration device, and information integration program

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant