KR20210010551A - 포인트 클라우드 맵핑 - Google Patents

포인트 클라우드 맵핑 Download PDF

Info

Publication number
KR20210010551A
KR20210010551A KR1020207036243A KR20207036243A KR20210010551A KR 20210010551 A KR20210010551 A KR 20210010551A KR 1020207036243 A KR1020207036243 A KR 1020207036243A KR 20207036243 A KR20207036243 A KR 20207036243A KR 20210010551 A KR20210010551 A KR 20210010551A
Authority
KR
South Korea
Prior art keywords
canvas
patches
attribute
geometry
patch
Prior art date
Application number
KR1020207036243A
Other languages
English (en)
Other versions
KR102431117B1 (ko
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 소니 주식회사
Publication of KR20210010551A publication Critical patent/KR20210010551A/ko
Application granted granted Critical
Publication of KR102431117B1 publication Critical patent/KR102431117B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/001Model-based coding, e.g. wire frame
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Graphics (AREA)
  • Signal Processing (AREA)
  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)

Abstract

3D 포인트 클라우드 데이터를 2D 표면들로 맵핑하기 위한 방법들이 본 명세서에 설명된다. 방법들은 3D 표면 패치들을 이용하여 포인트 클라우드들을 표현하고, 3D 패치 표면 데이터의 2D 캔버스 이미지들로의 유연한 맵핑을 수행한다. 텍스쳐들과 같은 속성들을 표현하는 패치들 및 기하구조를 표현하는 패치들은 상이한 캔버스들에 배치되고, 여기서 각각의 패치의 배치는 기하구조 및 텍스쳐에 대해 독립적으로 행해지는데, 즉, 기하구조 및 텍스쳐 패치들은 종래의 포인트 클라우드 맵핑에서와 같이 함께 위치될 필요가 없다. 더욱이, 방법들은, 보다 효율적인 패킹을 위해, 3D 패치를 2D 캔버스에 배치할 때 3D 패치의 변환을 포함한다.

Description

포인트 클라우드 맵핑
관련 출원(들)에 대한 상호 참조
본 출원은 2018년 6월 27일자로 출원된 "POINT CLOUD MAPPING"이라는 명칭의 미국 가특허 출원 제62/690,414호, 및 2018년 12월 4일자로 출원된 "POINT CLOUD MAPPING"이라는 명칭의 미국 가특허 출원 제62/775,248호의 35 U.S.C §119(e) 하의 우선권을 주장하며, 이러한 가특허 출원들 모두는 모든 목적을 위해 그 전체가 본 명세서에 참고로 포함된다.
발명의 분야
본 발명은 3차원 그래픽(three dimensional graphics)에 관한 것이다. 보다 구체적으로, 본 발명은 3차원 그래픽의 맵핑에 관한 것이다.
최근, 포인트 클라우드들(point clouds)은 3D 스캐너들, LIDAR 센서들에 의해 캡처되거나, 가상 현실/증강 현실(Virtual Reality/Augmented Reality)(VR/AR)과 같은 인기 있는 애플리케이션들에서 이용되는 3D 데이터의 송신을 위한 후보 포맷으로서 고려되어 왔다. 포인트 클라우드들은 3D 공간에서의 포인트들의 세트이다. 공간 위치(X, Y, Z) 외에도, 각각의 포인트는 통상적으로 컬러(R, G, B) 또는 심지어 (예를 들어, LIDAR 이미지들에서의) 반사율(reflectance) 및 시간 타임스탬프들(temporal timestamps)과 같은 연관된 속성들을 갖는다. 타겟 3D 물체들의 높은 충실도 표현을 획득하기 위해, 디바이스들은 대략 수천 또는 심지어 수백만 개의 포인트들로 포인트 클라우드들을 캡처한다. 더욱이, VR/AR 애플리케이션들에서 이용된 동적 3D 장면들을 위해, 모든 단일 프레임은 종종 고유의 조밀한 포인트 클라우드를 가지며, 이는 초당 수백만 개의 포인트 클라우드들의 송신을 초래한다. 그러한 대량의 데이터의 실행가능한 송신을 위해, 보통 압축이 적용된다.
2017년에, MPEG은 포인트 클라우드들의 압축을 위한 제안 요청(call for proposal)(CfP)을 발행했다. 몇몇 제안들의 평가 후에, 현재 MPEG은 포인트 클라우드 압축을 위해 2개의 상이한 기술들을 고려한다: (옥트리(octree) 및 유사한 코딩 방법들에 기초한) 3D 네이티브 코딩 기술(native coding technology), 또는 전통적인 비디오 코딩이 뒤따르는 3D로부터 2D로의 투영(3D to 2D projection). 동적 3D 장면들의 경우에, MPEG은 패치 표면 모델링(patch surface modeling), 3D로부터 2D 이미지로의 패치들의 투영, 및 HEVC와 같은 비디오 인코더들을 이용한 2D 이미지 코딩에 기초한 테스트 모델 소프트웨어(test model software)(TMC2)를 이용한다. 이 방법은 네이티브 3D 코딩보다 더 효율적인 것으로 증명되었으며, 수용가능한 품질로 경쟁력 있는 비트레이트들을 달성할 수 있다.
포인트 클라우드들을 코딩할 때, TMC2는 그들의 법선(normal)의 방향에 따라 포인트들을 분류하고, 유사한 분류를 갖는 접속된 컴포넌트들을 그룹화한다. 이것은 이어서 그 배향(orientation)이 패치에서의 포인트들의 분류에 의존하는 2D 축-정렬된 평면(axis-aligned plane) 상에 투영되는 표면의 패치들을 초래한다. 패치 표면의 투영들은 2가지 목적을 제공한다: 그 각각의 컬러 값들 및 투영 평면에 대한 포인트의 거리를 기록함으로써 3D 공간에서의 포인트들의 위치를 표현하는 것. 각각의 2D 투영된 패치는 2D 캔버스 이미지에 배치되어, 심도 이미지들(depth images)을 갖는 시퀀스를 초래하고, 다른 것은 텍스쳐 값들(RGB)을 갖는다. 투영된 데이터는 2D 이미지에서의 모든 픽셀들을 커버하지 않는다. 그러한 위치들에 대해, 확장 동작(dilation operation)은 누락 위치들을 채울 것이다. 패치 정보의 송신을 위해, 2개의 시퀀스들, 즉, 심도 시퀀스 및 텍스쳐 시퀀스가 2D 캔버스 이미지들로부터 형성된다. 심도 시퀀스의 경우, 심도 이미지들은 비디오 스트림의 휘도(luminance)(Y) 채널 내에 패킹되는 반면, 텍스쳐의 경우, RGB 데이터는 먼저 YUV 420으로 변환되고, 이어서 비디오 스트림 내에 넣어진다. 기하구조(geometry) 및 텍스쳐와 함께, 정보가 2D로부터 3D 공간으로 다시 변환되는 방법을 나타내는 메타데이터가 송신될 필요가 있다. 양쪽 스트림들은 통상적으로 HEVC와 같은 전형적인 비디오 인코더를 이용하여 코딩되고, 2D 캔버스 이미지에서의 패치들의 위치는 압축 효율에 영향을 미칠 수 있다. 더욱이, 2D 캔버스 이미지에서의 패치들의 배치는 심도 및 텍스쳐에 대해 동일한데, 그들은 상이한 특성들을 제시하기 때문에, 그러한 배치는 심도 또는 텍스쳐에 대한 코딩을 위한 차선의 구조를 초래할 수 있다.
비디오 인코더들을 이용하는 포인트 클라우드 압축에서의 최신 기술은 포인트 클라우드들을 3D 패치들로서 표현하고, 2D 캔버스 내로의 기하구조 및 속성들의 투영에 의해 형성된 2D 이미지를 인코딩한다. 투영된 3D 패치들로부터 2D 이미지로의 패킹은 3D 포인트 클라우드 데이터의 2D 맵핑으로서 또한 알려져 있다. 현재, 패치 배향이 항상 고정되고, 패치들의 위치가 기하구조 뿐만 아니라 텍스쳐에서도 동일하고, 배경 채움 프로세스(background filling process)가 기하구조 및 텍스쳐 둘다에 대해 또한 동일한 것과 같이, 프로세스는 일부 제한들을 갖는다.
3D 포인트 클라우드 데이터를 2D 표면들로 맵핑하기 위한 방법들이 본 명세서에 설명된다. 방법들은 3D 표면 패치들을 이용하여 포인트 클라우드들을 표현하고, 3D 패치 표면 데이터의 2D 캔버스 이미지들로의 유연한 맵핑을 수행한다. 텍스쳐들과 같은 속성들을 표현하는 패치들 및 기하구조를 표현하는 패치들은 상이한 캔버스들에 배치되고, 여기서 각각의 패치의 배치는 기하구조 및 텍스쳐에 대해 독립적으로 행해지는데, 즉, 기하구조 및 텍스쳐 패치들은 종래의 포인트 클라우드 맵핑에서와 같이 함께 위치될 필요가 없다. 더욱이, 방법들은, 보다 효율적인 패킹을 위해, 3D 패치를 2D 캔버스에 배치할 때 3D 패치의 변환들을 포함한다.
일 양태에서, 디바이스의 비일시적 메모리에 프로그래밍된 방법은, 제1 캔버스 상에 기하구조의 3D 패치들의 제1 세트를 배치하는 단계, 제2 캔버스 상에 속성의 3D 패치들의 제2 세트를 배치하는 단계, 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 유연하게 배향하는 단계, 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트의 제1 심도 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트의 제2 심도를 조정하는 단계, 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트의 각각의 패치 사이의 보호 거리(safeguard distance)를 결정하고, 제2 캔버스 상의 속성의 3D 패치들의 제2 세트의 각각의 패치 사이의 보호 거리를 결정하는 단계, 및 제1 캔버스 및 제2 캔버스의 배경 채움을 구현하는 단계를 포함한다. 기하구조의 3D 패치들의 제1 세트는 속성의 3D 패치들의 제2 세트와 독립적이다. 속성은 텍스쳐 또는 컬러 정보를 포함한다. 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 유연하게 배향하는 것은 회전(rotating), 미러링(mirroring) 및/또는 이들의 임의의 조합을 포함한다. 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 유연하게 배향하는 것은 8개의 배향들 중 하나를 선택하는 것을 포함한다. 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 유연하게 배향하는 것은, 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트를 제1 배향으로 위치시켜 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트에 의해 점유된 공간의 양을 최소화하고, 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 제2 배향으로 위치시켜 제2 캔버스 상의 속성의 3D 패치들의 제2 세트에 의해 점유된 공간의 양을 최소화하는 것을 포함한다. 보호 거리는 적어도 하나의 블록이다. 제1 캔버스 및 제2 캔버스의 배경 채움은 푸시-풀 알고리즘(push-pull algorithm)을 이용하여 구현된다.
다른 양태에서, 장치는 애플리케이션을 저장하기 위한 비일시적 메모리―애플리케이션은: 제1 캔버스 상에 기하구조의 3D 패치들의 제1 세트를 배치하고, 제2 캔버스 상에 속성의 3D 패치들의 제2 세트를 배치하고, 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 유연하게 배향하고, 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트의 제1 심도 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트의 제2 심도를 조정하고, 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트의 각각의 패치 사이의 보호 거리를 결정하고, 제2 캔버스 상의 속성의 3D 패치들의 제2 세트의 각각의 패치 사이의 보호 거리를 결정하고, 제1 캔버스 및 제2 캔버스의 배경 채움을 구현하기 위한 것임―, 및 메모리에 결합되어, 애플리케이션을 처리하도록 구성된 프로세서를 포함한다. 기하구조의 3D 패치들의 제1 세트는 속성의 3D 패치들의 제2 세트와 독립적이다. 속성은 텍스쳐 또는 컬러 정보를 포함한다. 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 유연하게 배향하는 것은 회전, 미러링 및/또는 이들의 임의의 조합을 포함한다. 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 유연하게 배향하는 것은 8개의 배향들 중 하나를 선택하는 것을 포함한다. 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 유연하게 배향하는 것은, 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트를 제1 배향으로 위치시켜 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트에 의해 점유된 공간의 양을 최소화하고, 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 제2 배향으로 위치시켜 제2 캔버스 상의 속성의 3D 패치들의 제2 세트에 의해 점유된 공간의 양을 최소화하는 것을 포함한다. 보호 거리는 적어도 하나의 블록이다. 제1 캔버스 및 제2 캔버스의 배경 채움은 푸시-풀 알고리즘을 이용하여 구현된다.
다른 양태에서, 시스템은 제1 캔버스 상에 기하구조의 3D 패치들의 제1 세트를 배치하도록 구성된 기하구조 모듈, 제2 캔버스 상에 속성의 3D 패치들의 제2 세트를 배치하도록 구성된 속성 모듈, 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 유연하게 배향하도록 구성된 배향 모듈, 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트의 제1 심도 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트의 제2 심도를 조정하도록 구성된 심도 모듈, 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트의 각각의 패치 사이의 보호 거리를 결정하고, 제2 캔버스 상의 속성의 3D 패치들의 제2 세트의 각각의 패치 사이의 보호 거리를 결정하도록 구성된 보호 모듈, 및 제1 캔버스 및 제2 캔버스의 배경 채움을 구현하도록 구성된 배경 모듈을 포함한다. 기하구조의 3D 패치들의 제1 세트는 속성의 3D 패치들의 제2 세트와 독립적이다. 속성은 텍스쳐 또는 컬러 정보를 포함한다. 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 유연하게 배향하는 것은 회전, 미러링 및/또는 이들의 임의의 조합을 포함한다. 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 유연하게 배향하는 것은 8개의 배향들 중 하나를 선택하는 것을 포함한다. 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 유연하게 배향하는 것은, 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트를 제1 배향으로 위치시켜 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트에 의해 점유된 공간의 양을 최소화하고, 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 제2 배향으로 위치시켜 제2 캔버스 상의 속성의 3D 패치들의 제2 세트에 의해 점유된 공간의 양을 최소화하는 것을 포함한다. 보호 거리는 적어도 하나의 블록이다. 제1 캔버스 및 제2 캔버스의 배경 채움은 푸시-풀 알고리즘을 이용하여 구현된다.
도 1은 일부 실시예들에 따른 독립적인 캔버스 배열의 이미지들을 도시한다.
도 2는 일부 실시예들에 따른 유연한 패치 배향을 도시한다.
도 3은 일부 실시예들에 따른 휘도 조정을 도시한다.
도 4는 일부 실시예들에 따른 휘도 조정의 도면을 도시한다.
도 5는 일부 실시예들에 따른 포인트 클라우드 맵핑을 위한 보호 거리들을 구현하는 것을 도시한다.
도 6은 일부 실시예들에 따른 기하구조 및 속성들에 대한 다수의 배경 채움에 대한 이미지들을 도시한다.
도 7은 일부 실시예들에 따른 배경을 채우기 위해 메쉬랩(Meshlab)의 푸시-풀 알고리즘을 이용하는 이미지들을 도시한다.
도 8은 일부 실시예들에 따른 푸시-풀 배경 채움과 함께 보호 거리를 이용하는 이미지들을 도시한다.
도 9는 일부 실시예들에 따른 포인트 클라우드 맵핑 방법의 흐름도를 도시한다.
도 10은 일부 실시예들에 따른 포인트 클라우드 맵핑 방법을 구현하도록 구성된 예시적인 컴퓨팅 디바이스의 블록도를 도시한다.
3D 포인트 클라우드 데이터를 2D 표면들로 맵핑하기 위한 방법이 본 명세서에 설명된다. 방법들은 3D 표면 패치들을 이용하여 포인트 클라우드들을 표현하고, 3D 패치 표면 데이터의 2D 캔버스 이미지들로의 유연한 맵핑을 수행한다.
텍스쳐들과 같은 속성들을 표현하는 패치들 및 기하구조를 표현하는 패치들은 상이한 캔버스들에 배치되고, 여기서 각각의 패치의 배치는 기하구조 및 텍스쳐에 대해 독립적으로 행해지는데, 즉, 기하구조 및 텍스쳐 패치들은, 종래의 포인트 클라우드 맵핑에서와 같이 함께 위치될 필요가 없다. 더욱이, 방법들은 보다 효율적인 패킹을 위해, 3D 패치를 2D 캔버스에 배치할 때 3D 패치의 변환들을 포함한다. 예를 들어, 패치들은 회전되고, 미러링되고, 2D 캔버스 이미지에 배치되기 전에 조정된 휘도 값을 가질 수 있다.
포인트 클라우드 맵핑 방법들의 다른 고유한 양태는 개선된 코딩을 위한 패킹 기술들의 이용이며, 이에 의해 본 기술들 중 일부는 패치들 사이의 최소 거리를 보장하기 위해 2D 캔버스에서의 패치들을 분리하기 위한 방법, 및 다수의 배경 채움 방법들, 예를 들어, 텍스쳐 맵들에 대한 푸시-풀 배경 채움 알고리즘과 같은, 기하구조 및/또는 텍스쳐에 더 적합한 방법들을 포함한다.
패치 투영을 이용하는 포인트 클라우드들의 더 유연하고 최적의 코딩을 허용하기 위해, 3D 포인트 클라우드들의 2D 맵핑을 처리하기 위한 방법들이 본 명세서에 설명된다. 본 명세서에 설명된 방법들은 기하구조 및 속성들(예를 들어, 텍스쳐)에 대한 포인트 클라우드 맵핑을 최적화한다: 독립적인 캔버스 배열, 유연한 패치 배향, 휘도 조정, 패치들 사이의 보호 거리 및 다수의 배경 채움.
일부 실시예들에서, 포인트 클라우드는 물체의 표면의 패치들의 직교 투영들의 집합(collection)으로서 표현되고, 포인트들의 각각의 패치를 3D로부터 2D로 투영하고, 2D 캔버스 이미지에서의 패치들 모두를 그룹화하지만, 기하구조 및 각각의 속성에 대한 독립적 배열들을 수행한다.
일부 실시예들에서, 각각의 패치는 기하구조 및 임의의 다른 속성에서 몇몇 상이한 배향들로 2D 캔버스 이미지들 상에 투영될 수 있다.
일부 실시예들에서, 각각의 패치는 기하구조 표현을 위해 상이한 휘도 레벨들로 2D 캔버스 이미지들 상에 배치될 수 있다.
일부 실시예들에서, 기하구조 또는 속성들의 패치들은 2D 캔버스 이미지 상에 투영된 패치들 사이의 상이한 보호 거리들을 가질 수 있다.
일부 실시예들에서, 상이한 방법들이 캔버스 이미지에서의 미이용 픽셀들을 채우기 위해 이용되며, 그것은 기하구조 또는 임의의 다른 속성의 코딩을 최적화한다.
일부 실시예들에서, 본 명세서에 설명된 3D로부터 2D로의 맵핑은, 모든 목적들을 위해 그 전체가 본 명세서에 참조로 포함되는, "MOTION COMPENSATION OF GEOMETRY INFORMATION"이라는 명칭의, 미국 특허 출원(대리인 문서 번호 SONY-70900)에 기술된 바와 같은 움직임 보상 구현 내에서 이용된다.
도 1은 일부 실시예들에 따른 독립적인 캔버스 배열의 이미지들을 도시한다. 단일 계층(100)(또는 단일 캔버스)의 경우, 기하구조 및 하나 이상의 속성(예를 들어, 컬러)이 존재하고, 기하구조 및 속성은 함께 링크되고 서로에 의존한다. 다수의 계층(102)(또는 다수의 캔버스들)의 경우, 기하구조 및 하나 이상의 속성은 링크되지 않으므로, 그들은 동일한 위치에 배치될 필요가 없다. 기하구조/속성들로부터의 패치들은 서로 독립적으로 변경 및/또는 배치될 수 있다. 예를 들어, 기하구조는 특정 구성 또는 위치에서 더 좋을 수 있는 반면, 컬러는 상이한 구성/위치에서 더 좋을 수 있다. 기하구조 및 속성 정보를 나타내는 메타데이터가 전송된다. 예를 들어, 메타데이터는 각각의 패치의 배향 및 식별 정보를 포함할 수 있다.
기하구조 및 속성(예를 들어, 텍스쳐, 컬러) 패치들이 동일한 장소에 있을 필요가 있는(또는 동일한 회전, 해상도 또는 다른 것을 갖는) 조건을 완화함으로써, 심도 및 텍스쳐(또는 다른 속성들)가 완전히 상이한 맵핑들을 갖는 것을 가능하게 하는 유연한 텍스쳐 맵핑이 구현될 수 있다. 예시적인 코드는 다음을 포함한다:
Figure pct00001
Figure pct00002
Figure pct00003
도 2는 일부 실시예들에 따른 유연한 패치 배향을 도시한다. 이전의 구현들과 달리, 패치들은 회전, 미러링 또는 재배향될 수 있다. 예를 들어, 임의의 수의 배향들이 가능하지만, 패치의 8개의 상이한 배향들이 존재한다. 예를 들면, #0은 디폴트 배향이고, #1은 시계 방향으로 180도 회전된 디폴트이고, #2는 시계 방향으로 90도 회전된 디폴트이고, #3은 반시계 방향으로 90도 회전된 디폴트이고, #5는 수평으로 미러링된 디폴트이고, #6은 수직으로 미러링된 디폴트이고, #7은 시계 방향으로 90도 회전되고, 수직으로 미러링된 디폴트이고, #8은 반시계 방향으로 90도 회전되고, 수직으로 미러링된 디폴트이다. 패치들을 배향함으로써, 패치들은 더 타이트하게 패킹될 수 있으며, 이는 메모리를 절약하고 더 효율적인 압축을 가능하게 한다. 예시적인 코드는 다음을 포함한다:
Figure pct00004
Figure pct00005
도 3은 일부 실시예들에 따른 휘도 조정을 도시한다. 휘도 조정은 패치가 z 축/방향으로 조정될 수 있게 한다. z 방향에서의 움직임은 그레이스케일에 가산된 값에 대응하는 심도 변환(depth translation)에 대응한다. 심도 변환은 패치가 z 방향으로 이동될 수 있게 한다. 예를 들어, 원래의 패치는 심도(t)를 갖고, 이어서 심도(t+1)에서, 패치는 델타 양(delta amount)만큼 이동하였다. 델타는 휘도 값(또는 유사한 값)에 값을 가산함으로써 보상될 수 있다.
도 4는 일부 실시예들에 따른 휘도 조정의 도면을 도시한다. 도 3에서 설명된 바와 같이, 휘도는 패치마다 조정되어 항상 (예를 들어, 약 128의) 명시된 평균값을 가질 수 있다. 일부 실시예들에서, 평균 값 및 현재 값으로부터의 델타는 점유 맵(occupancy map) 또는 다른 데이터 구조에 전송될 수 있다.
휘도 조정에 관한 예시적인 코드가 본 명세서에 포함된다:
Figure pct00006
Figure pct00007
도 5는 일부 실시예들에 따른 포인트 클라우드 맵핑을 위한 보호 거리들을 구현하는 것을 도시한다. 패치들이 2D 캔버스 상에 배치될 때, 패치들이 서로 너무 가까이 배치되는 경우, 그들은 서로 영향을 미칠 수 있다. 보호들(예를 들어, 패치들 사이의 명시된 거리)을 배치함으로써, 그 영향은 최소화되거나 제거될 것이다.
보호는 각각의 패치 사이의 1-블록 거리와 같은 임의의 크기일 수 있다. 더 큰 블록 거리가 구현될 수 있지만, 그것은 또한, 모든 패치들을 포함하기 위한 영역을 증가시키거나, 명시된 크기에서의 패치들의 수를 감소시킬 것이다. 일부 실시예들에서, 각각의 패치 사이의 블록 거리와 배경 채움으로부터의 컬러 누설 문제들(color leaking problems)을 피하는 것 사이에서의 균형이 결정된다. 예를 들어, 검출된 컬러 누설 문제들이 없을 때까지 블록 크기 버퍼가 증가된다.
전체 캔버스 크기를 증가시키지 않으면서 캔버스당 패치들의 수를 증가시키기 위해, 테트리스 스타일(Tetris-style) 패킹 구현이 구현될 수 있다. 테트리스는 가변하는 형상들을 가능한 가장 작은 양의 공간에 맞추려고 시도하는 것을 수반하는 비디오 게임이다. 유사하게, 패치들이 회전 및/또는 플립(flipped)될 수 있기 때문에, 캔버스 영역당 패치들의 수를 최적화하기 위한 위치로 그들을 조종할 수 있다. 예를 들어, 테스트에서, 테트리스 스타일 패킹을 이용함으로써, 캔버스는 218,714 바이트로부터 216,882 바이트로 감소되었다. 때때로, 테트리스 스타일 패킹은 더 큰 캔버스 크기를 초래할 수 있다. 따라서, 일부 실시예들에서, 테트리스 스타일 패킹 및 표준 패킹의 결과가 비교되고, 더 작은 결과(예를 들어, 더 적은 비트/바이트)가 이용된다.
도 6은 일부 실시예들에 따른 기하구조 및 속성들에 대한 다수의 배경 채움에 대한 이미지들을 도시한다. 확장을 이용하는 대신에, 푸시-풀 구현이라고도 지칭되는 다중 해상도 채움 알고리즘(multi-resolution filling algorithm)이 구현된다. 푸시-풀 알고리즘은 UV-맵핑된 메쉬들의 배경 채움을 위한 메쉬랩 프로그램에서 발견된 구현과 같은 임의의 방식으로 구현될 수 있다. 배경 채움은 패치들의 대응하는 속성들(예를 들어, 색상, 텍스쳐)을 캔버스의 배경에 제공한다.
도 7은 일부 실시예들에 따른 배경을 채우기 위해 메쉬랩의 푸시-풀 알고리즘을 이용하는 이미지들을 도시한다.
도 8은 일부 실시예들에 따른 푸시-풀 배경 채움과 함께 보호 거리를 이용하는 이미지들을 도시한다. 푸시-풀 배경 채움과 함께 보호 거리를 구현함으로써 누설이 회피된다.
도 9는 일부 실시예들에 따른 포인트 클라우드 맵핑 방법의 흐름도를 도시한다. 단계 900에서, (속성들을 갖는) 3D 기하구조가 획득된다. 3D 기하구조들은 초기 포인트 클라우드(또는 다른 3D 데이터)(예를 들어, 각각의 시간 순간에 대한 포인트 클라우드)의 시퀀스이다. 3D 기하구조들은 LIDAR 및/또는 임의의 다른 3D 콘텐츠 획득 디바이스(예를 들어, 카메라)를 이용하는 것과 같은 임의의 방식으로 획득될 수 있다. 단계 902에서, 3D 패치들이 3D 기하구조로부터 획득/생성된다. 3D 패치들은 유사한 속성들을 갖는 포인트들을 식별함으로써 포인트 클라우드의 표면을 기술한다. 유사한 속성들을 갖는 포인트들은 유사한 법선들을 갖는 포인트들(예를 들어, 동일한 위치를 가리키고 3D 공간에서 접속되는 포인트들)이다. 3D 패치들은 포인트 클라우드 압축을 위한 표준으로부터의 3D 패치 생성과 같은 임의의 방식으로 획득/생성될 수 있다. 예를 들어, 3D 기하구조의 표면 상에 접속된 포인트들은 3D 패치들(예를 들어, 표면의 일부를 커버하는 공간에서 접속된 3D 포인트들)로 간주된다. 예를 들어, 사람의 포인트 클라우드에 대해, 사람의 얼굴의 절반은 하나의 패치이고, 사람의 얼굴의 나머지 절반은 제2 패치이다. 모든 프레임(또는 시간 순간)에 대해, 3D 기하구조가 3D 패치들로 분할된다. 3D 패치들은 컬러, 텍스쳐, 해상도 등과 같은 속성들을 갖는다. 단계 904에서, 3D로부터 2D로의 패치 투영이 수행된다. 3D 패치들을 2D 영역으로 변환함으로써 3D 패치들이 2D UV 영역에 투영될 수 있다. 본 명세서에서 설명되는 바와 같이, 패치 투영은 독립적인 캔버스 배열(여기서, 기하구조 캔버스 및 속성 캔버스(들)는 별개임/독립적임), 유연한 패치 배향, 휘도 조정, 보호, 및 배경 채움을 포함한다.
일부 실시예들에서, 방법은 더 적은 또는 추가적인 단계들을 포함한다. 예를 들어, 방법은 단계들, 즉, 3D 패치 대응, 3D 매칭된 패치 움직임 보상 및 2D 움직임 보상을 포함한다. 일부 실시예들에서, 단계들의 순서는 수정된다.
도 10은 일부 실시예들에 따른 포인트 클라우드 맵핑 방법을 구현하도록 구성된 예시적인 컴퓨팅 디바이스의 블록도를 도시한다. 컴퓨팅 디바이스(1000)는 3D 콘텐츠를 포함하는 이미지들 및 비디오들과 같은 정보를 획득, 저장, 계산, 처리, 통신 및/또는 디스플레이하기 위해 이용될 수 있다. 컴퓨팅 디바이스(1000)는 포인트 클라우드 맵핑 방법 양태들 중 임의의 것을 구현할 수 있다. 일반적으로, 컴퓨팅 디바이스(1000)를 구현하기에 적합한 하드웨어 구조는 네트워크 인터페이스(1002), 메모리(1004), 프로세서(1006), I/O 디바이스(들)(1008), 버스(1010) 및 저장 디바이스(1012)를 포함한다. 프로세서의 선택은 충분한 속도를 갖는 적절한 프로세서가 선택되는 한 중요하지 않다. 메모리(1004)는 본 기술분야에 알려진 임의의 종래의 컴퓨터 메모리일 수 있다. 저장 디바이스(1012)는 하드 드라이브, CDROM, CDRW, DVD, DVDRW, 고화질 디스크/드라이브, 울트라-HD 드라이브, 플래시 메모리 카드 또는 임의의 다른 저장 디바이스를 포함할 수 있다. 컴퓨팅 디바이스(1000)는 하나 이상의 네트워크 인터페이스(1002)를 포함할 수 있다. 네트워크 인터페이스의 예는 이더넷 또는 다른 타입의 LAN에 접속된 네트워크 카드를 포함한다. I/O 디바이스(들)(1008)는 키보드, 마우스, 모니터, 스크린, 프린터, 모뎀, 터치스크린, 버튼 인터페이스 및 다른 디바이스들 중 하나 이상을 포함할 수 있다. 포인트 클라우드 맵핑 방법을 구현하기 위해 이용된 포인트 클라우드 맵핑 애플리케이션(들)(1030)은 저장 디바이스(1012) 및 메모리(1004)에 저장될 가능성이 있고, 애플리케이션들이 통상적으로 처리될 때 처리된다. 도 10에 도시된 더 많거나 더 적은 컴포넌트들이 컴퓨팅 디바이스(1000)에 포함될 수 있다. 일부 실시예들에서, 포인트 클라우드 맵핑 하드웨어(1020)가 포함된다. 도 10에서의 컴퓨팅 디바이스(1000)는 포인트 클라우드 맵핑 방법을 위한 애플리케이션들(1030) 및 하드웨어(1020)를 포함하지만, 포인트 클라우드 맵핑 방법은 컴퓨팅 디바이스 상에서 하드웨어, 펌웨어, 소프트웨어 또는 이들의 임의의 조합으로 구현될 수 있다. 예를 들어, 일부 실시예들에서, 포인트 클라우드 맵핑 애플리케이션들(1030)은 메모리에 프로그래밍되고 프로세서를 이용하여 실행된다. 다른 예에서, 일부 실시예들에서, 포인트 클라우드 맵핑 하드웨어(1020)는 포인트 클라우드 맵핑 방법을 구현하도록 특별히 설계된 게이트들을 포함하는 프로그래밍된 하드웨어 로직이다.
일부 실시예들에서, 포인트 클라우드 맵핑 애플리케이션(들)(1030)은 여러 애플리케이션들 및/또는 모듈들을 포함한다. 일부 실시예들에서, 모듈들은 하나 이상의 서브 모듈들도 포함한다. 일부 실시예들에서, 더 적거나 추가적인 모듈들이 포함될 수 있다.
일부 실시예들에서, 포인트 클라우드 맵핑 하드웨어(1020)는 렌즈, 이미지 센서, 및/또는 임의의 다른 카메라 컴포넌트들과 같은 카메라 컴포넌트들을 포함한다.
적절한 컴퓨팅 디바이스들의 예들은, 개인용 컴퓨터, 랩톱 컴퓨터, 컴퓨터 워크스테이션, 서버, 메인프레임 컴퓨터, 핸드헬드 컴퓨터, 개인 정보 단말기(personal digital assistant), 셀룰러/모바일 전화, 스마트 기기, 게임 콘솔, 디지털 카메라, 디지털 캠코더, 카메라폰, 스마트폰, 휴대용 음악 플레이어, 태블릿 컴퓨터, 모바일 디바이스, 비디오 플레이어, 비디오 디스크 기록기/플레이어(예를 들어, DVD 기록기/플레이어, 고화질 디스크 기록기/플레이어, 초고화질 디스크 기록기/플레이어), 텔레비전, 홈 엔터테인먼트 시스템, 증강 현실 디바이스, 가상 현실 디바이스, 스마트 쥬얼리(smart jewelry)(예를 들어, 스마트 워치), 차량(예를 들어, 자체 구동 차량) 또는 임의의 다른 적절한 컴퓨팅 디바이스 디바이스를 포함한다.
본 명세서에 설명된 포인트 클라우드 맵핑 방법을 이용하기 위해, 디바이스는 3D 콘텐츠를 획득하거나 수신하고, 3D 콘텐츠의 적절하고 효율적인 디스플레이를 가능하게 하기 위해 최적화된 방식으로 콘텐츠를 처리 및/또는 전송한다. 포인트 클라우드 맵핑 방법은 이용자 보조로 또는 이용자 개입 없이 자동으로 구현될 수 있다.
동작시에, 포인트 클라우드 맵핑 방법은 훨씬 적은 정보가 전송되도록 데이터를 압축하는 것을 포함하여 3D 콘텐츠를 더 효율적으로 처리한다.
포인트 클라우드 맵핑의 일부 실시예들
1. 디바이스의 비일시적 메모리에 프로그래밍된 방법으로서,
제1 캔버스 상에 기하구조의 3D 패치들의 제1 세트를 배치하는 단계;
제2 캔버스 상에 속성의 3D 패치들의 제2 세트를 배치하는 단계;
제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 유연하게 배향하는 단계;
제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트의 제1 심도 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트의 제2 심도를 조정하는 단계;
제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트의 각각의 패치 사이의 보호 거리를 결정하고, 제2 캔버스 상의 속성의 3D 패치들의 제2 세트의 각각의 패치 사이의 보호 거리를 결정하는 단계; 및
제1 캔버스 및 제2 캔버스의 배경 채움을 구현하는 단계를 포함하는, 방법.
2. 조항 1의 방법으로서, 기하구조의 3D 패치들의 제1 세트는 속성의 3D 패치들의 제2 세트와 독립적인, 방법.
3. 조항 1의 방법으로서, 속성은 텍스쳐 또는 컬러 정보를 포함하는, 방법.
4. 조항 1의 방법으로서, 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 유연하게 배향하는 것은 회전, 미러링 및/또는 이들의 임의의 조합을 포함하는, 방법.
5. 조항 1의 방법으로서, 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 유연하게 배향하는 것은 8개의 배향들 중 하나를 선택하는 것을 포함하는, 방법.
6. 조항 1의 방법으로서, 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 유연하게 배향하는 것은, 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트를 제1 배향으로 위치시켜 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트에 의해 점유된 공간의 양을 최소화하고, 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 제2 배향으로 위치시켜 제2 캔버스 상의 속성의 3D 패치들의 제2 세트에 의해 점유된 공간의 양을 최소화하는 것을 포함하는, 방법.
7. 조항 1의 방법으로서, 보호 거리는 적어도 하나의 블록인, 방법.
8. 조항 1의 방법으로서, 제1 캔버스 및 제2 캔버스의 배경 채움은 푸시-풀 알고리즘을 이용하여 구현되는, 방법.
9. 장치로서,
애플리케이션을 저장하기 위한 비일시적 메모리―애플리케이션은:
제1 캔버스 상에 기하구조의 3D 패치들의 제1 세트를 배치하고;
제2 캔버스 상에 속성의 3D 패치들의 제2 세트를 배치하고;
제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 유연하게 배향하고;
제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트의 제1 심도 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트의 제2 심도를 조정하고;
제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트의 각각의 패치 사이의 보호 거리를 결정하고, 제2 캔버스 상의 속성의 3D 패치들의 제2 세트의 각각의 패치 사이의 보호 거리를 결정하고;
제1 캔버스 및 제2 캔버스의 배경 채움을 구현하기 위한 것임―; 및
메모리에 결합되어, 애플리케이션을 처리하도록 구성된 프로세서를 포함하는, 장치.
10. 조항 9의 장치로서, 기하구조의 3D 패치들의 제1 세트는 속성의 3D 패치들의 제2 세트와 독립적인, 장치.
11. 조항 9의 장치로서, 속성은 텍스쳐 또는 컬러 정보를 포함하는, 장치.
12. 조항 9의 장치로서, 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 유연하게 배향하는 것은 회전, 미러링 및/또는 이들의 임의의 조합을 포함하는, 장치.
13. 조항 9의 장치로서, 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 유연하게 배향하는 것은 8개의 배향들 중 하나를 선택하는 것을 포함하는, 장치.
14. 조항 9의 장치로서, 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 유연하게 배향하는 것은, 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트를 제1 배향으로 위치시켜 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트에 의해 점유된 공간의 양을 최소화하고, 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 제2 배향으로 위치시켜 제2 캔버스 상의 속성의 3D 패치들의 제2 세트에 의해 점유된 공간의 양을 최소화하는 것을 포함하는, 장치.
15. 조항 9의 장치로서, 보호 거리는 적어도 하나의 블록인, 장치.
16. 조항 9의 장치로서, 제1 캔버스 및 제2 캔버스의 배경 채움은 푸시-풀 알고리즘을 이용하여 구현되는, 장치.
17. 시스템으로서,
제1 캔버스 상에 기하구조의 3D 패치들의 제1 세트를 배치하도록 구성된 기하구조 모듈;
제2 캔버스 상에 속성의 3D 패치들의 제2 세트를 배치하도록 구성된 속성 모듈;
제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 유연하게 배향하도록 구성된 배향 모듈;
제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트의 제1 심도 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트의 제2 심도를 조정하도록 구성된 심도 모듈;
제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트의 각각의 패치 사이의 보호 거리를 결정하고, 제2 캔버스 상의 속성의 3D 패치들의 제2 세트의 각각의 패치 사이의 보호 거리를 결정하도록 구성된 보호 모듈; 및
제1 캔버스 및 제2 캔버스의 배경 채움을 구현하도록 구성된 배경 모듈을 포함하는, 시스템.
18. 조항 17의 시스템으로서, 기하구조의 3D 패치들의 제1 세트는 속성의 3D 패치들의 제2 세트와 독립적인, 시스템.
19. 조항 17의 시스템으로서, 속성은 텍스쳐 또는 컬러 정보를 포함하는, 시스템.
20. 조항 17의 시스템으로서, 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 유연하게 배향하는 것은 회전, 미러링 및/또는 이들의 임의의 조합을 포함하는, 시스템.
21. 조항 17의 시스템으로서, 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 유연하게 배향하는 것은 8개의 배향들 중 하나를 선택하는 것을 포함하는, 시스템.
22. 조항 17의 시스템으로서, 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트 및 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 유연하게 배향하는 것은, 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트를 제1 배향으로 위치시켜 제1 캔버스 상의 기하구조의 3D 패치들의 제1 세트에 의해 점유된 공간의 양을 최소화하고, 제2 캔버스 상의 속성의 3D 패치들의 제2 세트를 제2 배향으로 위치시켜 제2 캔버스 상의 속성의 3D 패치들의 제2 세트에 의해 점유된 공간의 양을 최소화하는 것을 포함하는, 시스템.
23. 조항 17의 시스템으로서, 보호 거리는 적어도 하나의 블록인, 시스템.
24. 조항 17의 시스템으로서, 제1 캔버스 및 제2 캔버스의 배경 채움은 푸시-풀 알고리즘을 이용하여 구현되는, 시스템.
본 발명은 본 발명의 구성 및 동작의 원리들의 이해를 용이하게 하기 위한 상세들을 포함하는 특정 실시예들의 관점에서 설명되었다. 본 명세서에서의 특정 실시예들 및 그의 상세들에 대한 그러한 참조는 첨부된 청구항들의 범위를 한정하는 것으로 의도하지 않는다. 청구항들에 의해 정의된 바와 같은 본 발명의 사상 및 범위로부터 벗어나지 않고서도, 예시를 위해 선택된 실시예에서 다른 다양한 수정들이 이루어질 수 있다는 것이 본 기술분야의 통상의 기술자에게 쉽게 명백할 것이다.

Claims (24)

  1. 디바이스의 비일시적 메모리에 프로그래밍된 방법으로서,
    제1 캔버스 상에 기하구조의 3D 패치들의 제1 세트를 배치하는 단계;
    제2 캔버스 상에 속성의 3D 패치들의 제2 세트를 배치하는 단계;
    상기 제1 캔버스 상의 상기 기하구조의 3D 패치들의 상기 제1 세트 및 상기 제2 캔버스 상의 상기 속성의 3D 패치들의 상기 제2 세트를 유연하게 배향하는 단계;
    상기 제1 캔버스 상의 상기 기하구조의 3D 패치들의 상기 제1 세트의 제1 심도 및 상기 제2 캔버스 상의 상기 속성의 3D 패치들의 상기 제2 세트의 제2 심도를 조정하는 단계;
    상기 제1 캔버스 상의 상기 기하구조의 3D 패치들의 상기 제1 세트의 각각의 패치 사이의 보호 거리를 결정하고, 상기 제2 캔버스 상의 상기 속성의 3D 패치들의 상기 제2 세트의 각각의 패치 사이의 보호 거리를 결정하는 단계; 및
    상기 제1 캔버스 및 상기 제2 캔버스의 배경 채움을 구현하는 단계를 포함하는, 방법.
  2. 제1항에 있어서,
    상기 기하구조의 3D 패치들의 상기 제1 세트는 상기 속성의 3D 패치들의 상기 제2 세트와 독립적인, 방법.
  3. 제1항에 있어서,
    상기 속성은 텍스쳐 또는 컬러 정보를 포함하는, 방법.
  4. 제1항에 있어서,
    상기 제1 캔버스 상의 상기 기하구조의 3D 패치들의 상기 제1 세트 및 상기 제2 캔버스 상의 상기 속성의 3D 패치들의 상기 제2 세트를 유연하게 배향하는 것은 회전, 미러링 및/또는 이들의 임의의 조합을 포함하는, 방법.
  5. 제1항에 있어서,
    상기 제1 캔버스 상의 상기 기하구조의 3D 패치들의 상기 제1 세트 및 상기 제2 캔버스 상의 상기 속성의 3D 패치들의 상기 제2 세트를 유연하게 배향하는 것은 8개의 배향들 중 하나를 선택하는 것을 포함하는, 방법.
  6. 제1항에 있어서,
    상기 제1 캔버스 상의 상기 기하구조의 3D 패치들의 상기 제1 세트 및 상기 제2 캔버스 상의 상기 속성의 3D 패치들의 상기 제2 세트를 유연하게 배향하는 것은, 상기 제1 캔버스 상의 상기 기하구조의 3D 패치들의 상기 제1 세트를 제1 배향으로 위치시켜 상기 제1 캔버스 상의 상기 기하구조의 3D 패치들의 상기 제1 세트에 의해 점유된 공간의 양을 최소화하고, 상기 제2 캔버스 상의 상기 속성의 3D 패치들의 상기 제2 세트를 제2 배향으로 위치시켜 상기 제2 캔버스 상의 상기 속성의 3D 패치들의 상기 제2 세트에 의해 점유된 공간의 양을 최소화하는 것을 포함하는, 방법.
  7. 제1항에 있어서,
    상기 보호 거리는 적어도 하나의 블록인, 방법.
  8. 제1항에 있어서,
    상기 제1 캔버스 및 상기 제2 캔버스의 배경 채움은 푸시-풀 알고리즘을 이용하여 구현되는, 방법.
  9. 장치로서,
    애플리케이션을 저장하기 위한 비일시적 메모리―상기 애플리케이션은:
    제1 캔버스 상에 기하구조의 3D 패치들의 제1 세트를 배치하고;
    제2 캔버스 상에 속성의 3D 패치들의 제2 세트를 배치하고;
    상기 제1 캔버스 상의 상기 기하구조의 3D 패치들의 상기 제1 세트 및 상기 제2 캔버스 상의 상기 속성의 3D 패치들의 상기 제2 세트를 유연하게 배향하고;
    상기 제1 캔버스 상의 상기 기하구조의 3D 패치들의 상기 제1 세트의 제1 심도 및 상기 제2 캔버스 상의 상기 속성의 3D 패치들의 상기 제2 세트의 제2 심도를 조정하고;
    상기 제1 캔버스 상의 상기 기하구조의 3D 패치들의 상기 제1 세트의 각각의 패치 사이의 보호 거리를 결정하고, 상기 제2 캔버스 상의 상기 속성의 3D 패치들의 상기 제2 세트의 각각의 패치 사이의 보호 거리를 결정하고;
    상기 제1 캔버스 및 상기 제2 캔버스의 배경 채움을 구현하기 위한 것임―; 및
    상기 메모리에 결합되어, 상기 애플리케이션을 처리하도록 구성된 프로세서를 포함하는, 장치.
  10. 제9항에 있어서,
    상기 기하구조의 3D 패치들의 상기 제1 세트는 상기 속성의 3D 패치들의 상기 제2 세트와 독립적인, 장치.
  11. 제9항에 있어서,
    상기 속성은 텍스쳐 또는 컬러 정보를 포함하는, 장치.
  12. 제9항에 있어서,
    상기 제1 캔버스 상의 상기 기하구조의 3D 패치들의 상기 제1 세트 및 상기 제2 캔버스 상의 상기 속성의 3D 패치들의 상기 제2 세트를 유연하게 배향하는 것은 회전, 미러링 및/또는 이들의 임의의 조합을 포함하는, 장치.
  13. 제9항에 있어서,
    상기 제1 캔버스 상의 상기 기하구조의 3D 패치들의 상기 제1 세트 및 상기 제2 캔버스 상의 상기 속성의 3D 패치들의 상기 제2 세트를 유연하게 배향하는 것은 8개의 배향들 중 하나를 선택하는 것을 포함하는, 장치.
  14. 제9항에 있어서,
    상기 제1 캔버스 상의 상기 기하구조의 3D 패치들의 상기 제1 세트 및 상기 제2 캔버스 상의 상기 속성의 3D 패치들의 상기 제2 세트를 유연하게 배향하는 것은, 상기 제1 캔버스 상의 상기 기하구조의 3D 패치들의 상기 제1 세트를 제1 배향으로 위치시켜 상기 제1 캔버스 상의 상기 기하구조의 3D 패치들의 상기 제1 세트에 의해 점유된 공간의 양을 최소화하고, 상기 제2 캔버스 상의 상기 속성의 3D 패치들의 상기 제2 세트를 제2 배향으로 위치시켜 상기 제2 캔버스 상의 상기 속성의 3D 패치들의 상기 제2 세트에 의해 점유된 공간의 양을 최소화하는 것을 포함하는, 장치.
  15. 제9항에 있어서,
    상기 보호 거리는 적어도 하나의 블록인, 장치.
  16. 제9항에 있어서,
    상기 제1 캔버스 및 상기 제2 캔버스의 배경 채움은 푸시-풀 알고리즘을 이용하여 구현되는, 장치.
  17. 시스템으로서,
    제1 캔버스 상에 기하구조의 3D 패치들의 제1 세트를 배치하도록 구성된 기하구조 모듈;
    제2 캔버스 상에 속성의 3D 패치들의 제2 세트를 배치하도록 구성된 속성 모듈;
    상기 제1 캔버스 상의 상기 기하구조의 3D 패치들의 상기 제1 세트 및 상기 제2 캔버스 상의 상기 속성의 3D 패치들의 상기 제2 세트를 유연하게 배향하도록 구성된 배향 모듈;
    상기 제1 캔버스 상의 상기 기하구조의 3D 패치들의 상기 제1 세트의 제1 심도 및 상기 제2 캔버스 상의 상기 속성의 3D 패치들의 상기 제2 세트의 제2 심도를 조정하도록 구성된 심도 모듈;
    상기 제1 캔버스 상의 상기 기하구조의 3D 패치들의 상기 제1 세트의 각각의 패치 사이의 보호 거리를 결정하고, 상기 제2 캔버스 상의 상기 속성의 3D 패치들의 상기 제2 세트의 각각의 패치 사이의 보호 거리를 결정하도록 구성된 보호 모듈; 및
    상기 제1 캔버스 및 상기 제2 캔버스의 배경 채움을 구현하도록 구성된 배경 모듈을 포함하는, 시스템.
  18. 제17항에 있어서,
    상기 기하구조의 3D 패치들의 상기 제1 세트는 상기 속성의 3D 패치들의 상기 제2 세트와 독립적인, 시스템.
  19. 제17항에 있어서,
    상기 속성은 텍스쳐 또는 컬러 정보를 포함하는, 시스템.
  20. 제17항에 있어서,
    상기 제1 캔버스 상의 상기 기하구조의 3D 패치들의 상기 제1 세트 및 상기 제2 캔버스 상의 상기 속성의 3D 패치들의 상기 제2 세트를 유연하게 배향하는 것은 회전, 미러링 및/또는 이들의 임의의 조합을 포함하는, 시스템.
  21. 제17항에 있어서,
    상기 제1 캔버스 상의 상기 기하구조의 3D 패치들의 상기 제1 세트 및 상기 제2 캔버스 상의 상기 속성의 3D 패치들의 상기 제2 세트를 유연하게 배향하는 것은 8개의 배향들 중 하나를 선택하는 것을 포함하는, 시스템.
  22. 제17항에 있어서,
    상기 제1 캔버스 상의 상기 기하구조의 3D 패치들의 상기 제1 세트 및 상기 제2 캔버스 상의 상기 속성의 3D 패치들의 상기 제2 세트를 유연하게 배향하는 것은, 상기 제1 캔버스 상의 상기 기하구조의 3D 패치들의 상기 제1 세트를 제1 배향으로 위치시켜 상기 제1 캔버스 상의 상기 기하구조의 3D 패치들의 상기 제1 세트에 의해 점유된 공간의 양을 최소화하고, 상기 제2 캔버스 상의 상기 속성의 3D 패치들의 상기 제2 세트를 제2 배향으로 위치시켜 상기 제2 캔버스 상의 상기 속성의 3D 패치들의 상기 제2 세트에 의해 점유된 공간의 양을 최소화하는 것을 포함하는, 시스템.
  23. 제17항에 있어서,
    상기 보호 거리는 적어도 하나의 블록인, 시스템.
  24. 제17항에 있어서,
    상기 제1 캔버스 및 상기 제2 캔버스의 배경 채움은 푸시-풀 알고리즘을 이용하여 구현되는, 시스템.
KR1020207036243A 2018-06-27 2019-06-12 포인트 클라우드 맵핑 KR102431117B1 (ko)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201862690414P 2018-06-27 2018-06-27
US62/690,414 2018-06-27
US201862775248P 2018-12-04 2018-12-04
US62/775,248 2018-12-04
US16/234,164 2018-12-27
US16/234,164 US11010955B2 (en) 2018-06-27 2018-12-27 Point cloud mapping
PCT/IB2019/054886 WO2020003038A1 (en) 2018-06-27 2019-06-12 Point cloud mapping

Publications (2)

Publication Number Publication Date
KR20210010551A true KR20210010551A (ko) 2021-01-27
KR102431117B1 KR102431117B1 (ko) 2022-08-11

Family

ID=67620503

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207036243A KR102431117B1 (ko) 2018-06-27 2019-06-12 포인트 클라우드 맵핑

Country Status (6)

Country Link
US (1) US11010955B2 (ko)
EP (1) EP3794557A1 (ko)
JP (1) JP7093061B2 (ko)
KR (1) KR102431117B1 (ko)
CN (1) CN112204618B (ko)
WO (1) WO2020003038A1 (ko)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10897269B2 (en) 2017-09-14 2021-01-19 Apple Inc. Hierarchical point cloud compression
US10861196B2 (en) 2017-09-14 2020-12-08 Apple Inc. Point cloud compression
US10805646B2 (en) 2018-06-22 2020-10-13 Apple Inc. Point cloud geometry compression using octrees and binary arithmetic encoding with adaptive look-up tables
US11818401B2 (en) 2017-09-14 2023-11-14 Apple Inc. Point cloud geometry compression using octrees and binary arithmetic encoding with adaptive look-up tables
US10909725B2 (en) 2017-09-18 2021-02-02 Apple Inc. Point cloud compression
US11113845B2 (en) 2017-09-18 2021-09-07 Apple Inc. Point cloud compression using non-cubic projections and masks
US10607373B2 (en) 2017-11-22 2020-03-31 Apple Inc. Point cloud compression with closed-loop color conversion
US10699444B2 (en) 2017-11-22 2020-06-30 Apple Inc Point cloud occupancy map compression
US10939129B2 (en) 2018-04-10 2021-03-02 Apple Inc. Point cloud compression
US10909726B2 (en) * 2018-04-10 2021-02-02 Apple Inc. Point cloud compression
US10909727B2 (en) 2018-04-10 2021-02-02 Apple Inc. Hierarchical point cloud compression with smoothing
US11010928B2 (en) 2018-04-10 2021-05-18 Apple Inc. Adaptive distance based point cloud compression
US11017566B1 (en) 2018-07-02 2021-05-25 Apple Inc. Point cloud compression with adaptive filtering
US11044478B2 (en) 2018-07-02 2021-06-22 Apple Inc. Compression with multi-level encoding
US11202098B2 (en) 2018-07-05 2021-12-14 Apple Inc. Point cloud compression with multi-resolution video encoding
US10911787B2 (en) 2018-07-10 2021-02-02 Apple Inc. Hierarchical point cloud compression
US11012713B2 (en) 2018-07-12 2021-05-18 Apple Inc. Bit stream structure for compressed point cloud data
US10650554B2 (en) * 2018-09-27 2020-05-12 Sony Corporation Packing strategy signaling
US11132818B2 (en) 2018-09-28 2021-09-28 Apple Inc. Predicting attributes for point cloud compression according to a space filling curve
US11386524B2 (en) 2018-09-28 2022-07-12 Apple Inc. Point cloud compression image padding
US11367224B2 (en) 2018-10-02 2022-06-21 Apple Inc. Occupancy map block-to-patch information compression
US10853973B2 (en) 2018-10-03 2020-12-01 Apple Inc. Point cloud compression using fixed-point numbers
US11430155B2 (en) 2018-10-05 2022-08-30 Apple Inc. Quantized depths for projection point cloud compression
US11454710B2 (en) 2019-01-08 2022-09-27 Apple Inc. Point cloud compression using a space filling curve for level of detail generation
US11348284B2 (en) 2019-01-08 2022-05-31 Apple Inc. Auxiliary information signaling and reference management for projection-based point cloud compression
US11284091B2 (en) * 2019-03-25 2022-03-22 Apple Inc. Video based point cloud compression-patch alignment and size determination in bounding box
US11956478B2 (en) * 2019-01-09 2024-04-09 Tencent America LLC Method and apparatus for point cloud chunking for improved patch packing and coding efficiency
US11057564B2 (en) 2019-03-28 2021-07-06 Apple Inc. Multiple layer flexure for supporting a moving image sensor
US11711544B2 (en) * 2019-07-02 2023-07-25 Apple Inc. Point cloud compression with supplemental information messages
US11711535B2 (en) * 2019-09-19 2023-07-25 Nokia Technologies Oy Video-based point cloud compression model to world signaling information
US11895301B2 (en) * 2019-09-24 2024-02-06 Interdigital Ce Patent Holdings, Sas Encoding and decoding a point cloud using patches for in-between samples
US11627314B2 (en) 2019-09-27 2023-04-11 Apple Inc. Video-based point cloud compression with non-normative smoothing
US11202078B2 (en) 2019-09-27 2021-12-14 Apple Inc. Dynamic point cloud compression using inter-prediction
US11562507B2 (en) 2019-09-27 2023-01-24 Apple Inc. Point cloud compression using video encoding with time consistent patches
US11409998B2 (en) 2019-10-02 2022-08-09 Apple Inc. Trimming search space for nearest neighbor determinations in point cloud compression
US11538196B2 (en) 2019-10-02 2022-12-27 Apple Inc. Predictive coding for point cloud compression
US11895307B2 (en) 2019-10-04 2024-02-06 Apple Inc. Block-based predictive coding for point cloud compression
US11798196B2 (en) 2020-01-08 2023-10-24 Apple Inc. Video-based point cloud compression with predicted patches
US11625866B2 (en) 2020-01-09 2023-04-11 Apple Inc. Geometry encoding using octrees and predictive trees
US11620768B2 (en) 2020-06-24 2023-04-04 Apple Inc. Point cloud geometry compression using octrees with multiple scan orders
US11615557B2 (en) 2020-06-24 2023-03-28 Apple Inc. Point cloud compression using octrees with slicing
US20240129529A1 (en) * 2021-03-22 2024-04-18 Sony Group Corporation Image processing device and method
US11948338B1 (en) 2021-03-29 2024-04-02 Apple Inc. 3D volumetric content encoding using 2D videos and simplified 3D meshes

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030206165A1 (en) * 2002-05-01 2003-11-06 Microsoft Corporation Systems and methods for optimizing geometric stretch of a parametrization scheme
KR20130063324A (ko) * 2011-12-06 2013-06-14 엘지전자 주식회사 이동 단말기 및 그의 3d영상 제어방법
JP2013137743A (ja) * 2011-11-30 2013-07-11 Panasonic Corp 新視点画像生成装置および新視点画像生成方法
US20180047208A1 (en) * 2016-08-15 2018-02-15 Aquifi, Inc. System and method for three-dimensional scanning and for capturing a bidirectional reflectance distribution function

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5798762A (en) 1995-05-10 1998-08-25 Cagent Technologies, Inc. Controlling a real-time rendering engine using a list-based control mechanism
US9565449B2 (en) 2011-03-10 2017-02-07 Qualcomm Incorporated Coding multiview video plus depth content
CN103135889B (zh) * 2011-12-05 2017-06-23 Lg电子株式会社 移动终端及其3d图像控制方法
CN105574922B (zh) * 2015-12-16 2019-04-30 浙江大学 一种鲁棒的三维模型高质量纹理映射方法
US10424083B2 (en) * 2017-10-21 2019-09-24 Samsung Electronics Co., Ltd. Point cloud compression using hybrid transforms
CN110675315A (zh) * 2018-07-03 2020-01-10 财团法人工业技术研究院 点云拼贴处理方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030206165A1 (en) * 2002-05-01 2003-11-06 Microsoft Corporation Systems and methods for optimizing geometric stretch of a parametrization scheme
JP2013137743A (ja) * 2011-11-30 2013-07-11 Panasonic Corp 新視点画像生成装置および新視点画像生成方法
KR20130063324A (ko) * 2011-12-06 2013-06-14 엘지전자 주식회사 이동 단말기 및 그의 3d영상 제어방법
US20180047208A1 (en) * 2016-08-15 2018-02-15 Aquifi, Inc. System and method for three-dimensional scanning and for capturing a bidirectional reflectance distribution function

Also Published As

Publication number Publication date
CN112204618B (zh) 2024-04-30
JP2021526271A (ja) 2021-09-30
WO2020003038A1 (en) 2020-01-02
KR102431117B1 (ko) 2022-08-11
US20200005518A1 (en) 2020-01-02
US11010955B2 (en) 2021-05-18
JP7093061B2 (ja) 2022-06-29
CN112204618A (zh) 2021-01-08
EP3794557A1 (en) 2021-03-24

Similar Documents

Publication Publication Date Title
KR102431117B1 (ko) 포인트 클라우드 맵핑
US11334969B2 (en) Point cloud geometry padding
US11501507B2 (en) Motion compensation of geometry information
US11348285B2 (en) Mesh compression via point cloud representation
CN107454468B (zh) 对沉浸式视频进行格式化的方法、装置和流
WO2021062274A1 (en) Point cloud compression using video encoding with time consistent patches
US20210211703A1 (en) Geometry information signaling for occluded points in an occupancy map video
US11190803B2 (en) Point cloud coding using homography transform
US11605184B2 (en) Point cloud global tetris packing
US10735766B2 (en) Point cloud auxiliary information coding
US20210092345A1 (en) Unified coding of 3d objects and scenes
US20230306641A1 (en) Mesh geometry coding
US20230306642A1 (en) Patch mesh connectivity coding
US20230306683A1 (en) Mesh patch sub-division
US20240177355A1 (en) Sub-mesh zippering
WO2024074961A1 (en) Orthoatlas: texture map generation for dynamic meshes using orthographic projections
WO2023180840A1 (en) Patch mesh connectivity coding
CN117751387A (zh) 面元网格连通性编码

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right