KR20180058762A - 삼차원 이미지에 대한 삼각형 메시의 생성 - Google Patents

삼차원 이미지에 대한 삼각형 메시의 생성 Download PDF

Info

Publication number
KR20180058762A
KR20180058762A KR1020187011249A KR20187011249A KR20180058762A KR 20180058762 A KR20180058762 A KR 20180058762A KR 1020187011249 A KR1020187011249 A KR 1020187011249A KR 20187011249 A KR20187011249 A KR 20187011249A KR 20180058762 A KR20180058762 A KR 20180058762A
Authority
KR
South Korea
Prior art keywords
tree
regions
image
generator
triangular mesh
Prior art date
Application number
KR1020187011249A
Other languages
English (en)
Other versions
KR102659114B1 (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 KR20180058762A publication Critical patent/KR20180058762A/ko
Application granted granted Critical
Publication of KR102659114B1 publication Critical patent/KR102659114B1/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
    • G06T17/005Tree description, e.g. octree, quadtree
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

장치는 삼차원 이미지에 대한 삼각형 메시를 생성하도록 배열된다. 장치는 깊이 맵을 제공하는 깊이 맵 소스(101)를 포함하고, 트리 생성기(105)가 깊이 맵으로부터 k-D 트리를 생성한다. k-D 트리는 분할되지 않은 영역들에 대한 깊이 변화 척도가 임계치 아래인 요건을 충족시키는 깊이 맵의 영역들의 계층적 배열을 나타낸다. 삼각형 메시 생성기(107)는 k-D 트리의 각각의 영역 내에 내부 정점을 배치한다. 이어서, 이웃하는 영역들의 내부 정점들 사이의 라인들로서 삼각형 메시의 삼각형들의 변들을 형성함으로써 삼각형 메시가 생성된다. 이 접근법은 많은 3D 비디오 처리 알고리즘에 적합한 개선된 삼각형 메시를 생성할 수 있다.

Description

삼차원 이미지에 대한 삼각형 메시의 생성
본 발명은 삼차원 이미지에 대한 삼각형 메시(triangle mesh)의 생성에 관한 것이며, 구체적으로는, 그러나 비-배타적으로, 이차원 이미지 및 깊이 맵(depth map)에 의해 표현되는 삼차원 이미지에 대한 삼각형 메시의 생성에 관한 것이다.
삼차원(3D) 디스플레이들은 관찰되는 장면의 상이한 뷰(view)들을 관찰자의 두 눈에 제공함으로써 관찰 경험에 제3 차원을 추가한다. 이것은 표시되는 2개의 뷰를 분리하기 위한 안경을 사용자가 착용하게 함으로써 달성될 수 있다. 그러나, 이것은 사용자에게 불편한 것으로 간주될 수 있기 때문에, (렌티큘러 렌즈(lenticular lens)들 또는 배리어(barrier)들과 같은) 디스플레이에 있는 수단을 사용하여 뷰들을 분리하고, 그들이 개별적으로 사용자의 눈들에 도달할 수 있게 하는 상이한 방향들로 그들을 전송하는 무안경 입체 디스플레이(autostereoscopic display)들을 사용하는 것이 많은 시나리오에서 바람직하다. 입체 디스플레이들의 경우 2개의 뷰가 요구되는 반면, 무안경 입체 디스플레이들은 전형적으로 더 많은 뷰(이를테면 예를 들어 9개의 뷰)를 필요로 한다.
3D 기능을 구현하기 위해, 삼차원 정보의 효과적인 표현 및 처리가 이용될 수 있는 것이 중요하다. 하나의 널리 사용되는 접근법은 적합한 알고리즘들에 의해 처리 및 조작될 수 있는 삼차원 객체들에 의해 삼차원 정보를 표현하는 것이다.
많은 시나리오에서 특히 효과적인 접근법은 다각형들의 세트가 삼차원 위치들에 의해 주어진 다각형들의 공통 에지들 또는 코너들에 의해 연결되는 다각형 메시에 의해 이미지 객체들을 표현하는 것이다. 조합된 삼차원 다각형 메시는 이에 따라, 아마도 전체 이미지의 삼차원 설명을 포함한 삼차원 객체들의 효과적인 모델을 제공한다. 다각형 메시는 종종 3D 공간에 주어진 공통 코너들을 갖는 삼각형들에 의해 형성되는 삼각형 메시이다.
그러한 표현들에서, 다각형 메시는 객체의 삼차원 기하학적 구조의 정보를 제공하는 데 사용되는 반면, 텍스처는 전형적으로 별도의 데이터 구조로서 제공된다. 구체적으로, 텍스처는 종종 처리 알고리즘에 의해 삼차원 기하학적 구조 상에 오버레이될 수 있는 별도의 이차원 맵으로서 제공된다.
삼각형 메시들의 사용은 컴퓨터 그래픽 알고리즘들에 의한 처리 및 조작에 특히 적합하며, 많은 효율적인 소프트웨어 및 하드웨어 솔루션이 개발되었으며 시장에서 입수 가능하다. 각각의 다각형을 개별적으로 처리하기보다는 복수의 다각형에 대해 공통적으로 개별 정점(vertex)들을 처리하는 알고리즘에 의해 많은 시스템에서 상당한 계산 효율이 달성된다. 예를 들어, 전형적인 삼각형 메시의 경우, 개별 정점은 종종 여러 개(종종 3개 내지 8개)의 삼각형에 공통이다. 단일 정점의 처리는 이에 따라 비교적 많은 수의 삼각형에 적용 가능할 수 있으며, 이에 의해 처리되는 이미지 또는 다른 객체 내의 포인트의 수를 상당히 감소시킬 수 있다.
특정 예로서, 많은 현재의 시스템 온 칩(SoC)은 3D 그래픽의 처리에 고도로 최적화된 그래픽 처리 유닛(GPU)을 포함한다. 예를 들어, 3D 객체 기하학적 구조 및 3D 객체 텍스처의 처리는 소위 OpenGL 렌더링 파이프라인(또는 DirectX와 같은 많은 다른 API)에서 2개의 크게 분리된 경로를 사용하여 수행된다. SoC 상의 GPU의 하드웨어는 3D 소스가 (전형적으로 삼각형들의) 정점들 및 텍스처들의 형태로 GPU에 제공되는 한 3D 그래픽을 효율적으로 처리할 수 있다. 이어서, OpenGL 애플리케이션 인터페이스는 3D 객체들이 2D 스크린 상에 투영될 때 어떻게 보이는지를 결정하는 가상 원근 카메라의 설정 및 제어를 가능하게 한다. OpenGL은 3D 객체들을 입력으로서 사용하지만, 출력은 전형적으로 통상의 2D 디스플레이 상의 2D 이미지이다.
그러나, 그러한 접근법들은 많은 시나리오에서 매력적이지만, 삼차원 정보가 다각형 메시 및 관련 텍스처 정보에 의해 제공되는 것이 요구된다. 그러나, 많은 응용에서, 삼차원 이미지 데이터는, 이를테면 예를 들어 이미지 및 깊이 맵에 의해, 상이한 포맷들로 제공될 수 있다.
실제로, 널리 사용되는 3D 포맷은 전형적으로 후반 작업에서 생성되거나, 입체 비디오로부터 추정되거나, 깊이 카메라를 사용하여 캡처되는 깊이 맵을 갖는 비디오이다. 다른 자주 사용되는 3D 포맷은 좌안 및 우안 뷰들에 상당하는 입체 이미지들을 사용하고 있다. 그러한 자주 사용되는 포맷들은 다각형들 및 텍스처들에 의해 표현되는 정적 객체들을 포함하지 않는다.
그러한 응용들의 경우, 이에 따라 예를 들어 OpenGL 알고리즘들을 사용하여, 재생에 직접적으로 적합할 다각형 메시 및 텍스처 이미지로 이루어진 포맷으로의 비디오 플러스 깊이(또는 입체 이미지) 포맷의 변환을 수행하는 것이 바람직하다.
그러나, 그러한 변환은 사소한 일이 아니며, 다수의 복잡한 문제 및 과제를 야기한다. 구체적으로, 깊이 맵을 갖는 이미지(또는 입체 이미지)를 (다각형 메시에 의해 표현되는) 기하학적 구조 및 텍스처로 변환하기 위해, 깊이 맵을 각각의 정점이 x, yz 좌표를 갖는 정점들을 갖는 다각형들의 세트로 변환하는 것이 필요하다. 또한, 변환은 전형적으로 각각의 정점이 비디오 텍스처 상으로 매핑되는 곳을 지정하는 소위 u,v-텍스처 좌표들을 결정할 수 있다. 이들 (u,v) 파라미터는 예를 들어 투영 행렬을 사용하여 (x,y) 파라미터들로부터 도출될 수 있거나, 그 반대이다.
다각형 맵으로의 그러한 변환을 수행하기 위한 상이한 방법들이 알려져 있다. 많은 응용에서, 변환의 바람직한 특성들은 다음을 포함한다:
- 다각형들은 각각의 u,v-텍스처 좌표가 3D 다각형 메시 상의 고유 위치로 매핑되는 메시를 형성해야 한다.
- 메시는 어떠한 구멍도 없이 연속적이어야 한다.
- 다각형들은 깊이 맵을 정확하게 모델링해야 한다.
- GPU 부하를 제한하기 위해 다각형의 수는 적어야 한다;
- 깊이 맵으로부터 다각형들을 추출하기 위한 알고리즘은 복잡성이 낮아야 한다;
- 바람직하게는, 변환은 클라이언트 측 또는 서버 측에서 수행될 수 있다.
그러나, 이미지로부터 다각형 메시를 생성하기 위한 공지된 알고리즘들은 차선인 경향이 있으며 불완전하다는 문제가 있다. 따라서, 삼차원 이미지에 대한 삼각형 메시를 생성하기 위한 개선된 접근법이 유리할 것이며, 특히 증가된 유연성, 증가된 정확도, 더 일관되고/되거나 연속적인 삼각형 메시, 감소된 복잡성, 개선된 계산 효율, 후속 그래픽 처리에 적합한 표현, 그래픽 처리를 위한 기존 접근법들과의 증가된 호환성 및/또는 개선된 성능을 가능하게 하는 접근법이 유리할 것이다.
따라서, 본 발명은 전술한 불리한 점들 중 하나 이상을 단독으로 또는 임의의 조합으로 바람직하게 완화, 경감 또는 제거하고자 한다.
본 발명의 태양에 따르면, 삼차원 이미지에 대한 삼각형 메시를 생성하기 위한 장치가 제공되며, 장치는 깊이 맵을 제공하기 위한 깊이 맵 소스; 깊이 맵에 대한 k-D 트리(tree)를 생성하기 위한 트리 생성기로서, k-D 트리는 분할되지 않은 영역들에 대한 깊이 변화 척도가 임계치 아래인 요건을 충족시키는 깊이 맵의 영역들의 계층적 배열을 표현하는, 상기 트리 생성기; k-D 트리의 각각의 분할되지 않은 영역 내에 내부 정점을 배치하고, 이웃하는 분할되지 않은 영역들의 내부 정점들 사이의 라인들로서 삼각형 메시의 삼각형들의 변(side)들을 형성함으로써 삼각형 메시를 생성하도록 배열된 삼각형 메시 생성기를 포함한다.
본 발명은 개선된 삼각형 메시가 생성되게 할 수 있다. 이 접근법은 많은 실시예에서 더 정확하고/하거나 더 높은 품질의 3D 이미지 또는 비디오 처리 및 렌더링이 달성되게 할 수 있다. 많은 시나리오에서, 삼각형 메시를 생성하기 위한 효율적인 접근법을 제공하면서, 어떠한 구멍도 없는 정확하고 일관된 삼각형 메시가 생성될 수 있다. 많은 실시예에서, 복잡성 및/또는 자원 사용이 감소될 수 있다.
깊이 맵은 삼차원 이미지에 대한 깊이 맵을 제공할 수 있다. 삼차원 이미지는 깊이 맵 및 이차원 이미지에 의해 표현될 수 있다. 삼차원 이미지는 더 큰 삼차원 이미지의 일부일 수 있는데, 예를 들어 그것은 더 큰 이미지 내의 삼차원 객체의 표현일 수 있다. 깊이 맵은 삼차원 이미지의 일부에 대한 깊이 맵일 수 있다. 삼각형 메시는 부분적일 수 있고, 단지 삼차원 이미지의 일부에 대해 생성될 수 있다. 구체적으로, 깊이 맵은 (단지) 이미지의 삼차원 객체에 대해 제공될 수 있고/있거나, 삼각형 메시는 (단지) 이미지의 삼차원 객체에 대해 생성될 수 있다.
트리 생성기(105)는 영역에 대한 깊이 변화 척도가 임계치를 초과한다는 검출에 응답하여 상기 영역을 하위 영역들로 분할하도록 배열될 수 있다. 임계치는 적응적 임계치일 수 있다. 예를 들어, 영역에 대한 임계치는 영역의 크기에 의존할 수 있다.
k-D 트리는 각각의 노드가 깊이 맵의 영역을 표현하고 부모 노드(parent node)의 자식 노드(child node)들이 부모 노드에 의해 표현되는 영역의 하위 영역들을 표현하는 계층적 트리일 수 있다. 영역들이 적어도 하나의 포인트에서 접촉하는 경우 영역들은 특별히 이웃하고 있을 수 있다.
k-D 트리는 모든 분할되지 않은 영역들이 깊이 변화 척도가 임계치 아래인 요건을 충족시킬 때까지 영역들을 더 작은 하위 영역들로 반복 분할함으로써 생성될 수 있다. 따라서, k-D 트리의 최소 영역들의 경우, 깊이 변화 척도는 임계치보다 낮으며, 이에 따라 깊이는 분할되지 않은 영역들에서 비교적 일정한 것으로 간주될 수 있다.
내부 정점이 영역 내에 배치되고, 이에 따라 영역에 의해 완전히 둘러싸인다. 내부 정점은 단지 하나의 영역과 접촉하며, 이에 따라 2개 이상의 영역 사이의 에지 또는 경계 또는 접합부 상에 배치되지 않는다. 삼각형 메시는 적어도 2개의 이웃하는 분할되지 않은 영역의 내부 정점들 사이에 형성된 변을 갖는 적어도 하나의 삼각형을 포함할 수 있다. 삼각형은 이에 따라 적어도 2개의 이웃하는 분할되지 않은 영역의 부분들을 포함하도록 형성되는데, 즉 삼각형은 2개의 영역의 적어도 일부에 걸치며, 완전히 단일 영역 내에 있도록 제한되지 않는다.
많은 실시예에서, 삼각형 메시의 모든 삼각형들은 내부 정점들 사이에 변들을 형성함으로써 생성된다. 많은 실시예에서, 적어도 하나의 삼각형이 3개의 이웃하는 분할되지 않은 영역의 3개의 내부 정점인 삼각형의 코너들, 모서리들 또는 정점들에 의해 형성된다. 많은 실시예에서, 삼각형 메시의 적어도 섹션의 모든 삼각형들은 3개의 이웃하는 분할되지 않은 영역의 내부 정점들로서 결정되는 코너들, 모서리들 또는 정점들을 각각 갖는 삼각형들에 의해 형성된다.
삼각형 메시는 삼각형들의 연속적인 삼차원 메시를 제공할 수 있다.
몇몇 실시예들에서, k-D 트리는 위치가 그의 일부인 영역의 차원(구체적으로 크기)을 나타내는 주어진 위치에 대한 값을 갖는 깊이 맵에 상응하는 이차원 맵에 의해 표현될 수 있다.
본 발명의 선택적인 특징에 따르면, 영역에 대한 내부 정점은 영역 내에 중심에 배치된다.
이것은 유리한 삼각형 메시가 생성되게 하면서 많은 시나리오에서 동작을 용이하게 할 수 있다. 특히, 이것은 많은 시나리오에서 직접적으로 연속적인 삼각형 메시로 이어질 수 있는 정점들의 간단한 생성을 가능하게 할 수 있다. 구체적으로, 이 접근법은 정사각형 영역들을 사용하는 쿼드트리(quadtree)에 대해 연속 삼각형 메시가 생성되는 것을 보장하기에 충분할 수 있다. 영역에 대한 정점은 영역의 기하학적 중심에 배치될 수 있다.
본 발명의 선택적인 특징에 따르면, 삼각형 메시 생성기는 3개의 영역 사이의 각각의 접합부에 대한 삼각형을 형성하도록 배열되며, 삼각형은 3개의 영역의 내부 정점들을 연결하는 변들을 갖는다.
이것은 복잡성 및 자원 사용을 낮게 유지하면서 많은 시나리오에서 개선된 삼각형 메시가 생성되게 할 수 있다. 많은 유형의 k-D 트리에 대해, 이 접근법은 (자동으로) 연속적인 삼각형 메시가 생성되게 할 수 있다. 예를 들어, 정사각형 영역들을 사용하는 쿼드트리에 대해, 이 접근법은 3개의 영역 사이의 접합부들에 대해 연속적으로 피팅되는 삼각형들을 생성할 수 있다.
본 발명의 선택적인 특징에 따르면, 삼각형 메시 생성기는 4개의 영역 사이의 각각의 접합부에 대한 2개의 삼각형을 형성하도록 배열되며, 2개의 삼각형은 4개의 영역의 2개의 대각선으로 대향하는 영역의 내부 정점들을 연결하는 공통 변을 갖고, 하나의 삼각형은 2개의 대각선으로 대향하는 영역의 정점들을 4개의 영역 중 제3 영역의 내부 정점에 연결하는 변들을 가짐으로써 형성되고, 하나의 삼각형은 2개의 대각선으로 대향하는 영역의 정점들을 4개의 영역 중 제4 영역의 내부 정점에 연결하는 변들을 가짐으로써 형성된다.
이것은 복잡성 및 자원 사용을 낮게 유지하면서 많은 시나리오에서 개선된 삼각형 메시가 생성되게 할 수 있다. 많은 유형의 k-D 트리에 대해, 이 접근법은 (자동으로) 연속적인 삼각형 메시가 생성되게 할 수 있다. 예를 들어, 정사각형 영역들을 사용하는 쿼드트리에 대해, 이 접근법은 4개의 영역 사이의 접합부들에 대해 연속적으로 피팅되는 삼각형들을 생성할 수 있다.
삼각형 메시 생성기는 4개의 영역 사이의 각각의 접합부에 대한 2개의 삼각형을 형성하도록 배열될 수 있으며, 2개의 삼각형은 4개의 영역의 2개의 대각선으로 대향하는 영역의 정점들을 연결하는 공통 변, 및 2개의 대각선으로 대향하는 영역의 정점들을 4개의 영역 중 제3 영역 및 제4 영역에 각각 연결하는 변들을 갖는다.
본 발명의 선택적인 특징에 따르면, k-D 트리는 쿼드트리이다.
이것은 삼각형 메시를 결정하는 데 유용한 매우 정확한 k-D 트리가 생성되게 하면서 많은 실시예에서 특히 효율적인 구현을 제공할 수 있다.
본 발명의 선택적인 특징에 따르면, 트리 생성기는 삼차원 이미지의 휘도(luminance) 또는 색도(chroma) 특성에 응답하여 영역들을 분할하도록 추가로 배열된다.
이것은 생성될 개선된 k-D 트리를 제공할 수 있으며, 이는 후속적으로 개선된 삼각형 메시가 생성되게 할 수 있다.
본 발명의 선택적인 특징에 따르면, 트리 생성기는 정사각형 영역들이도록 제약되지 않는 직사각형 영역들을 갖도록 k-D 트리를 생성하도록 배열된다.
이것은 많은 시나리오에서 개선된 삼각형 메시의 가능성을 유발할 수 있다. 구체적으로, 이것은 많은 시나리오에서 깊이 맵에 대한 k-D 트리의 더 근접한 피팅을 가능하게 할 수 있으며, 이것은 많은 시나리오에서 더 적은 영역이 생성되는 것을, 그리고 이에 따라 더 적은 삼각형을 갖는 삼각형 메시를 유발할 수 있다. 이것은 삼각형 메시에 기초하는 후속 비디오 처리를 더욱 용이하게 할 수 있다.
트리 생성기는 이에 따라 많은 실시예에서 정사각형이어야 하는 제약을 갖지 않는 직사각형 영역들을 생성할 수 있다.
몇몇 실시예들에서, 트리 생성기 및 메시 생성기 중 적어도 하나는 접합부를 형성하는 3개의 영역에 대한 삼각형이 접합부를 둘러싸지 않는다는 검출에 응답하여 적어도 하나의 영역을 분할하도록 배열된다.
이것은 연속적인 삼각형 메시의 생성을 도울 수 있다(또는 몇몇 시나리오들에서 연속적인 삼각형 메시가 생성되는 것을 보장할 수 있다). 이 접근법은 효율적인 구현을 가능하게 할 수 있고, 많은 실시예에서 낮은 복잡성 및/또는 낮은 자원 요구 구현을 제공할 수 있다.
본 발명의 선택적인 특징에 따르면, 트리 생성기는 분할 후에 3개의 영역에 의해 형성되는 각각의 접합부가 접합부를 포함하는 제약에 따라 영역을 분할하도록 배열된다.
이것은 연속적인 삼각형 메시의 생성을 도울 수 있다(또는 몇몇 시나리오들에서 연속적인 삼각형 메시가 생성되는 것을 보장할 수 있다). 이 접근법은 효율적인 구현을 가능하게 할 수 있고, 많은 실시예에서 낮은 복잡성 및/또는 낮은 자원 요구 구현을 제공할 수 있다.
몇몇 실시예들에서, 트리 생성기는 제1 영역의 이웃인 제2 영역과 분할로부터 기인하는 2개의 하위 영역 사이의 결과적인 접합부의 평가에 따라 제1 영역을 분할하도록 배열되며, 여기서 평가는 제1 영역 및 제2 영역의 공통 에지와 제2 영역의 정점으로부터 제2 영역으로부터 멀리 떨어진 제1 영역의 코너까지의 라인 사이의 교점(intersection point)이 접합부보다 코너에 더 가까운지에 대한 평가; 제2 영역의 정점과 2개의 하위 영역의 정점들 사이의 라인들이 제1 영역과 제2 영역 사이의 공통 에지와 교차하는지에 대한 평가; 및 접합부가 제1 영역 및 제2 영역의 공통 에지의 외부에 있는지에 대한 평가 중 적어도 하나를 포함한다.
이것은 연속적인 삼각형 메시의 생성을 도울 수 있다(또는 몇몇 시나리오들에서 연속적인 삼각형 메시가 생성되는 것을 보장할 수 있다). 이 접근법은 효율적인 구현을 가능하게 할 수 있고, 많은 실시예에서 낮은 복잡성 및/또는 낮은 자원 요구 구현을 산출할 수 있다.
본 발명의 선택적인 특징에 따르면, 트리 생성기는 송신기의 일부이고 삼각형 메시 생성기는 수신기의 일부이고, 송신기는 삼차원 이미지를 표현하는 이미지 데이터 스트림을 생성하고, k-D 트리를 이미지 데이터 스트림 내에 인코딩하도록 배열되고, 수신기는 이미지 데이터 스트림으로부터 k-D 트리를 추출하고, k-D 트리를 삼각형 메시 생성기에 제공하도록 배열된다.
이 접근법은 많은 시나리오에서 삼차원 정보의 매우 효율적인 통신을 가능하게 할 수 있다. 많은 실시예에서, 이 접근법은 서버 측(이미지 송신기)과 클라이언트 측(이미지 수신기) 사이의 기능 및 계산 자원 사용의 특히 유리한 분산을 유발할 수 있다.
삼각형 메시 생성기는 추출된 k-D 트리의 각각의 영역 내에 정점을 배치하고, 추출된 k-D 트리의 이웃하는 영역들의 정점들 사이의 라인들로서 삼각형 메시의 삼각형의 변들을 형성함으로써 삼각형 메시를 생성하도록 배열될 수 있다.
본 발명의 선택적인 특징에 따르면, 송신기는 k-D 트리에 이미지 인코딩을 적용하여 인코딩된 k-D 트리 데이터를 생성하고; 인코딩된 k-D 트리 데이터를 이미지 데이터 스트림 내에 포함시키도록 배열된다.
이 접근법은 많은 시나리오에서 삼차원 정보의 매우 효율적인 통신을 가능하게 할 수 있다. 특히, 이것은 많은 실시예에서 기존의 비디오 인코딩 포맷 및 기능이 삼각형 메시들과 관련된 정보를 전달하도록 재사용되거나 용이하게 적응되게 할 수 있다.
몇몇 실시예들에서, 송신기는 컬러 또는 휘도 채널 인코딩을 k-D 트리에 적용하고, 결과적인 인코딩된 데이터를 이미지 데이터 스트림 내에 포함시키도록 배열될 수 있다.
몇몇 실시예들에서, 이미지 인코딩은 복수의 채널을 포함하는 인코딩된 이미지 표현을 제공하고, 송신기는 복수의 채널 중 제1 채널에 깊이 맵을 인코딩하고, 복수의 채널 중 적어도 제2 채널에 k-D 트리를 인코딩하도록 배열된다.
이 접근법은 많은 시나리오에서 삼차원 정보의 매우 효율적인 통신을 가능하게 할 수 있다. 특히, 이것은 많은 실시예에서 기존의 비디오 인코딩 포맷 및 기능이 삼각형 메시들과 관련된 정보를 전달하도록 재사용되거나 용이하게 적응되게 할 수 있다.
몇몇 실시예들에서, 송신기는 휘도 채널 및 적어도 하나의 컬러 채널을 포함하는 비디오 표현을 인코딩하도록 배열된 비디오 인코더를 포함할 수 있으며, 송신기는 휘도 채널에 깊이 맵을 그리고 적어도 하나의 컬러 채널에 k-D 트리를 인코딩하도록 배열된다.
몇몇 실시예들에서, 이미지 인코딩은 적어도 2개의 컬러 채널을 포함하는 인코딩된 이미지 표현을 제공하고, 송신기는 적어도 2개의 컬러 채널 중 하나의 컬러 채널에 k-D 트리에 대한 수직 영역 정보를 그리고 적어도 2개의 컬러 채널 중 다른 컬러 채널에 k-D 트리에 대한 수평 영역 정보를 인코딩하도록 배열된다.
이 접근법은 많은 시나리오에서 삼차원 정보의 매우 효율적인 통신을 가능하게 할 수 있다. 특히, 이것은 많은 실시예에서 기존의 비디오 인코딩 포맷 및 기능이 비-정사각형 영역 삼각형 메시들과 관련된 정보를 전달하도록 재사용되거나 용이하게 적응되게 할 수 있다.
본 발명의 몇몇 실시예들에 따르면, 장치는 삼차원 이미지를 인코딩하기 위한 이미지 인코더를 추가로 포함하며, 여기서 이미지 인코더는 k-D 트리를 사용하여 이미지를 인코딩하도록 배열된다.
이것은 많은 실시예에서 매우 효율적인 동작을 제공할 수 있고, 특히 복잡성, 및/또는 자원 사용, 및/또는 배포/통신을 위해 사용되는/필요한 대역폭을 감소시킬 수 있다.
본 발명의 태양에 따르면, 삼차원 이미지에 대한 삼각형 메시를 생성하는 방법이 제공되며, 방법은 깊이 맵을 제공하는 단계; 깊이 맵에 대한 k-D 트리를 생성하는 단계로서, k-D 트리는 분할되지 않은 영역들에 대한 깊이 변화 척도가 임계치 아래인 요건을 충족시키는 깊이 맵의 영역들의 계층적 배열을 표현하는, 상기 k-D 트리 생성 단계; k-D 트리의 각각의 분할되지 않은 영역 내에 내부 정점을 배치하는 단계; 및 이웃하는 분할되지 않은 영역들의 내부 정점들 사이의 라인들로서 삼각형 메시의 삼각형들의 변들을 형성함으로써 삼각형 메시를 생성하는 단계를 포함한다.
본 발명의 태양에 따르면, 삼각형 메시를 생성하기 위한 장치가 제공되며, 장치는 삼차원 이미지의 표현을 제공하는 이미지 데이터 및 삼차원 이미지의 깊이 맵에 대한 k-D 트리를 포함하는 비디오 신호를 수신하기 위한 수신기로서, k-D 트리는 분할되지 않은 영역들에 대한 깊이 변화 척도가 임계치 아래인 요건을 충족시키는 깊이 맵의 영역들의 계층적 배열을 표현하는, 상기 수신기; 및 k-D 트리의 각각의 영역 내에 내부 정점을 배치하고, 이웃하는 영역들의 내부 정점들 사이의 라인들로서 삼각형 메시의 삼각형들의 변들을 형성함으로써 삼각형 메시를 생성하도록 배열된 삼각형 메시 생성기를 포함한다.
본 발명의 몇몇 실시예들에 따르면, 장치는 이미지 데이터로부터 삼차원 이미지를 디코딩하기 위한 디코더를 추가로 포함하며; 디코딩은 k-D 트리에 응답하여 이루어진다.
이것은 많은 실시예에서 매우 효율적인 동작을 제공할 수 있고, 특히 복잡성, 및/또는 자원 사용, 및/또는 배포/통신을 위해 사용되는/필요한 대역폭을 감소시킬 수 있다.
본 발명의 이들 및 다른 태양들, 특징들 및 이점들이 이하에 설명되는 실시예(들)로부터 명백할 것이고 그것을 참조하여 설명될 것이다.
본 발명의 실시예들이 도면들을 참조하여 단지 예로서 설명될 것이다.
도 1은 깊이 맵의 k-D 트리로부터의 삼각형 메시의 가능한 결정의 예시이다.
도 2는 본 발명의 몇몇 실시예들에 따른 삼각형 메시를 생성하기 위한 장치의 예의 예시이다.
도 3은 본 발명의 몇몇 실시예들에 따라 결정된 쿼드트리의 섹션의 예시이다.
도 4는 본 발명의 몇몇 실시예들에 따른 쿼드트리의 섹션에 대한 삼각형 메시의 가능한 결정의 예시이다.
도 5는 본 발명의 몇몇 실시예들에 따라 결정된 쿼드트리의 섹션의 예시이다.
도 6은 본 발명의 몇몇 실시예들에 따라 결정된 쿼드트리의 섹션의 예시이다.
도 7은 본 발명의 몇몇 실시예들에 따른 쿼드트리의 섹션에 대한 삼각형 메시의 가능한 결정의 예시이다.
도 8은 쿼드트리의 섹션에 대한 삼각형 메시의 가능한 결정의 예시이다.
도 9 내지 도 11은 본 발명의 몇몇 실시예들에 따른 k-D 트리를 생성할 때의 가능한 고려 사항의 예들을 예시한다.
도 12는 본 발명의 몇몇 실시예들에 따른 삼각형 메시를 생성하기 위한 장치의 예의 예시이다.
많은 3D 이미지(비디오 포함) 처리 알고리즘 및 프로세스가 삼각형 메시들의 사용에 기초하는데, 왜냐하면 이것이 많은 실시예에서 높은 계산 효율을 제공할 수 있기 때문이다. 그러나, 많은 실시예에서, 삼차원 이미지가 다른 포맷들로 수신될 수 있다. 예를 들어, 관련된 깊이 맵을 갖는 이차원 이미지가 수신될 수 있고, 따라서 이것은 그러한 삼각형 메시 기반 알고리즘들과 함께 직접 사용될 수 없다. 따라서, 이차원 이미지 및 깊이에 의해 표현된 3D 이미지를 삼각형 메시로 변환하기 위한 접근법을 갖는 것이 바람직하다.
그러한 접근법은 또한 다른 포맷의 입력이 수신될 때에도 사용될 수 있다는 것을 알 것이다. 예를 들어, 삼차원 이미지가 상이한 관점들에 상응하는 복수의 이미지로서 수신되는 경우, 그리고 특히 3D 이미지가 입체 이미지로서 수신되는 경우, 이것은 이차원 이미지 및 관련된 깊이 맵으로 변환될 수 있다. 예를 들어, 이미지들 중 하나는 상이한 이미지들 내의 상응하는 객체들 간의 불일치에 기초하여 결정되는 상응하는 깊이들과 함께 직접 사용될 수 있다.
이미지 및 깊이 맵으로부터 삼각형 메시를 생성하기 위한 하나의 접근법은, 먼저 쿼드트리 또는 더 일반적으로 k-D 트리가 생성되고, 후속하여 쿼드트리/k-D 트리로부터 삼각형 메시가 생성되는 접근법을 사용하는 것이다. 쿼드트리들은 특히 비디오 인코딩의 몇몇 형태들에서, 예를 들어 특히 고효율 비디오 코딩(HEVC (H.265)) 표준에서 사용되어 왔다.
k-D 트리 또는 특히 쿼드트리에서, 각각의 노드는 영역을 표현하며(예를 들어, 이것은 인덱싱되는 공간의 소정 부분을 커버하는 경계 박스를 나타낼 수 있으며), 이때 루트 노드는 전체 공간을 커버한다. 영역에 대한 조건이 충족되면, 이 영역은 n개의 하위 영역으로 분할된다. 그러한 경우에, 영역에 상응하는 노드에는 (전형적으로 미리 결정된) 수의 자식 노드가 주어지며, 여기서 각각의 노드는 하위 영역을 표현할 수 있다. 이어서, 이러한 노드들은 잠재적으로 더욱 분할되도록 추가로 처리될 수 있다. 이러한 방식으로, 계층적 트리가 형성된다.
쿼드트리는 특히 정사각형 영역들을 4개의 새로운 정사각형으로 반복적으로 분할하는 알고리즘을 적용함으로써 이미지의 공간적 세분을 제공한다. 특히, 쿼드트리는 각각의 내부 노드가 정확히 4개의 자식을 갖는 트리 데이터 구조이다. 쿼드트리들은 이차원 공간을 4개의 사분면 또는 영역으로 반복 세분함으로써 이를 분할하는 데 가장 자주 사용된다. 세분은 전형적으로 주어진 특성이 적합한 기준에 따라 충분히 동질적인 영역들로의 세분이다. 따라서, 영역이 주어진 임계치를 초과하여 증가하는 특성의 변화를 갖는 것으로 결정될 때, 영역은 4개의 더 작은 영역으로 분할된다. 프로세스는 되풀이하여 반복되어, 레벨들의 수, 및 이에 따라 정사각형들의 크기가 전형적으로 이미지를 가로질러 변화하는 계층적 트리를 생성한다.
쿼드트리는 임의적인 크기 및 종횡비의 직사각형들이 사용될 수 있는 k-D 트리의 특정 예이다. 따라서, k-D 트리는 개별 파티션들/영역들이 동질성 기준을 충족시킬 때까지 파티션들/영역들이 반복적으로 더 작은 파티션들/영역들로 분할되는 공간 분할 데이터 구조이다. 파티션들/영역들은 직사각형이지만, 원칙적으로 임의의 크기 및 형상일 수 있다. 실제로, 파티션/영역의 하위 파티션들/영역들로의 분할은 적응적이고 다양한 특성들 및 파라미터들에 의존할 수 있으며, 특히 하위 파티션들/영역들 내의 특성들에 의존할 수 있다. 따라서, k-D 트리의 경우, 영역/파티션의 하위 영역들/파티션들로의 분할은 전형적으로 파티션/영역 내의 특성들에 따라 상이한 수 및 형상의 하위 파티션들/영역들을 생성할 수 있다.
대조적으로, 쿼드트리의 경우, 각각의 영역은 분할될 때 4개의 하위 영역으로 분할되어, 각각의 노드가 정확히 4개의 자식을 갖게 한다. 그러한 쿼드트리에서, 모든 영역들은 또한 정사각형 영역들이며, 이에 따라 분할은 4개의 동일한 정사각형 하위 영역으로의 분할이다.
현재의 접근법에서 생성되는 k-D 트리는 특히 이차원 맵(깊이 맵)에 대한 것이고, 따라서 k-D 트리는 특히 2D 트리이다. 특히, 2D 트리는, 영역의 각각의 분할이 4개의 동일한 그리고 정사각형의 영역으로의 분할이고, 이에 따라 각각의 노드가 4개의 자식(또는 0개의 자식)을 갖는 쿼드트리일 수 있다.
쿼드트리 또는 k-D 트리 알고리즘이 깊이 맵에 적용되는 경우, 이것은 소정의 동질성 기준이 충족될 때까지 동질 영역들로 반복적으로 분할될 수 있다. 그러나, 이러한 세분으로부터는, 삼각형 메시가 어떻게 구성될 수 있는지 또는 구성되어야 하는지가 분명하지 않다.
하나의 접근법은 삼각형 메시의 삼각형들의 정점들을 그러한 쿼드트리의 각각의 접합점에 배치한 다음 이들을 연결하여 정사각형들을 형성하는 것일 수 있으며, 그 후에 각각의 정사각형이 2개의 삼각형으로 분할될 수 있다. 도 1은 그러한 접근법의 예를 예시한다. 도 1은 특히 깊이 맵에 대한 쿼드트리의 작은 섹션이 영역들로 분할되는 것을 도시한다.
이러한 메시에 관한 문제점은, (도면에서 열십자로 지시되는) 몇몇 정점들에서, 상응하는 픽셀 위치(i, j)의 깊이 값 D(i, j)를 직접 사용하는 것이 유리하지 않다는 것이다. 구체적으로, 식별된 점들은 또한 다른 삼각형 에지의 중간 위치에 위치한다. 교점 (i, j)에서의 깊이 맵의 깊이 D(i, j)는 교점 (i, j)가 위치하는 변의 2개의 정점 사이의 선형 보간에 의해 주어지는 깊이와는 상이할 수 있다. 따라서, 깊이 맵 값 D(i, j)를 직접 사용하는 것은 삼차원 메시 내에 구멍들이 생성되게 할 가능성이 있을 것이다. 그러한 구멍들의 도입을 회피하는 접근법은 변의 정점들 사이의 보간 값을 결정한 다음에 이를 사용하는 것일 수 있다. 그러나, 전형적으로 그러한 접근법은 계산적으로 매우 매력적이지 않은데, 왜냐하면 메시 계산을 복잡하게 그리고 계산 집약적으로 만드는 것으로 밝혀졌기 때문이다.
도 2는 본 발명의 몇몇 실시예들에 따른 삼각형 메시를 생성하기 위한 장치의 예를 예시한다. 이 접근법은 많은 시나리오에서 개선된 삼각형 메시를 제공할 수 있으며, 특히 앞서 설명한 불리한 점들 중 일부를 회피하거나 완화할 수 있다. 구체적으로, 장치는 비교적 낮은 계산 자원 요구를 유지하면서 정확한 삼각형 메시들이 생성되게 할 수 있다.
도 2는 특히 삼차원 이미지에 대한 깊이 맵에 기초하여 삼차원 이미지에 대한(예를 들어, 삼차원 이미지의 이미지 객체에 대한) 삼각형 메시를 생성할 수 있는 장치를 예시한다. 따라서, 이 예에서, 삼차원 이미지가 이차원 이미지 및 관련된 깊이 맵에 의해 표현된다. 그러나, 다른 실시예들에서는 다른 포맷들이 사용될 수 있다는 것을 알 것이다. 예를 들어, 이차원 이미지보다는, 폐색된 픽셀들에 대한 정보를 또한 포함하는 z 스택이 제공될 수 있다.
이 예에서, 장치는 삼차원 이미지에 대한 깊이 맵을 제공하도록 배열된 깊이 맵 소스(101), 및 깊이 맵에 상응하는 이차원 이미지를 제공하도록 배열된 이미지 소스(103)를 포함한다.
깊이 맵 소스(101) 및 이미지 소스(103)는 많은 실시예에서 공통 소스일 수 있다는 것을 알 것이다. 예를 들어, 많은 실시예에서, 장치는 이차원 이미지들 및 관련된 깊이 맵들에 의해 표현되는 삼차원 이미지들의 시퀀스를 포함하는 삼차원 비디오 스트림을 수신하는 수신기를 포함할 수 있다. 수신기는, 이 데이터 스트림을 디코딩하고, 각각의 삼차원 이미지에 대해 상응하는 이미지 및 깊이 맵을 제공하도록 배열될 수 있다. 따라서, 수신기는 깊이 맵 소스(101) 및 이미지 소스(103) 둘 모두의 기능을 구현할 수 있다.
깊이 맵 소스(101)는 깊이 맵으로부터 k-D 트리를 생성하도록 배열된 트리 생성기(105)에 결합된다. k-D 트리는 분할되지 않은 영역들에 대한 깊이 변화 척도가 임계치 아래인 요건을 충족시키는 영역들의 계층적 배열을 표현하도록 생성된다.
따라서, 트리 생성기(105)는 깊이 변화 척도에 기초하여 k-D 트리의 생성을 수행하도록 배열된다. 이것은, 영역에 대한 깊이 변화 척도가 주어진 임계치를 초과하는 경우에, 영역을 하위 영역들의 세트로 분할하도록, 즉 그 영역에 상응하는 부모 노드에 대한 하위 영역들에 상응하는 자식 노드들의 세트를 생성하도록 배열된다. 이 접근법이 생성된 모든 영역들이 기준을 충족시킬 때까지 반복적으로 적용됨에 따라, 이 접근법은 깊이가 비교적 일정한 분할되지 않은 영역들로의 깊이 맵의 분할을 유발한다. 실제로, 가장 작은 영역들, 즉 분할되지 않은 영역들의 경우, 깊이 변화 척도는 임계치보다 낮고, 이에 따라 각각의 (분할되지 않은) 영역에서의 깊이 변화는 (개별 실시예의 특성들에 따라) 충분히 일정하도록 보장된다.
k-D 트리의 각각의 (최종의/분할되지 않은) 영역 내에서 수용되는 깊이 변화의 정도는 개별 실시예의 선호들 및 요건들에 의존할 것이라는 것을 알 것이다. 유사하게, 사용되는 정확한 깊이 변화 척도는 개별 실시예의 선호들 및 요건들에 의존할 수 있으며, 개별 실시예에 적합한 영역 내의 깊이 변화의 임의의 표시가 사용될 수 있음을 알 것이다.
예로서, 영역 내의 최고 깊이 값과 최저 깊이 값 사이의 차이에 상응하는 깊이 변화 척도가 사용될 수 있다. 그러한 시나리오에서, 트리 생성기(105)는 이에 따라 깊이 맵을 최대 깊이 차이가 주어진 임계치보다 작은 한 세트의 영역들로 분할한다. 따라서, 이것은 삼각형 메시의 단일 삼각형으로서 잠재적으로 표현될 만큼 충분히 동질적인 것으로 간주될 수 있는 영역을 생성할 수 있다.
주어진 요건에 기초하여 k-D 트리를 생성하기 위한 다양한 알고리즘들이 기술자에게 공지되어 있고, 임의의 적합한 접근법이 본 발명으로부터 벗어남이 없이 사용될 수 있다는 것을 알 것이다.
트리 생성기(105)는 트리 생성기(105)에 의해 생성된 k-D 트리에 응답하여 삼각형 메시를 생성하도록 배열된 삼각형 메시 생성기(107)에 결합된다. 메시 생성기(107)는 k-D 트리의 각각의 (분할되지 않은) 영역 내에 정점을 배치함으로써 메시를 생성하고, 이어서 이웃하는 영역들의 정점들 사이의 라인들로서 삼각형 메시의 삼각형들의 변들을 형성함으로써 삼각형 메시를 생성하도록 배열된다. 따라서, 메시 생성기(107)는 삼각형들의 정점들을 영역들 간의 접합부보다는 영역들 내에 배치하도록 배열된다. 구체적으로, 각각의 영역에 대해, 하나의 정점이 생성되고, 영역의 변 또는 2개 이상의 영역이 연결되는 교점/접합부보다는 영역 내에 배치될 수 있다. 따라서, 메시 생성기(107)의 접근법에서, 하나의 영역에만 속하는 정점들이 생성된다(각각의 정점은 단지 하나의 영역과 접촉할 수 있다/영역에 의해 둘러싸일 수 있다).
이 접근법에서, 생성된 정점들은 이에 따라 영역 내에 배치된 내부 정점들이다. 따라서, 각각의 내부 정점은 단지 하나의 영역과 접촉하고/단지 단일 영역에 의해 완전히 둘러싸고, 이에 따라 영역들 사이의 경계, 에지 또는 접합부에 배치되지 않는다. 아래에서, 용어 '정점/정점들'은 적절한 바에 따라 특히 내부 정점/정점들을 지칭하는 데 사용될 것인데, 즉 간결성을 위해 (2개 이상의 영역 사이의 경계가 아니라) 영역에 의해 완전히 둘러싸인 내부 정점들이 간단히 정점들로 지칭될 것이다.
많은 실시예에서, 주어진 영역에 대한 정점은 영역의 중심에 생성될 수 있다. 따라서, 영역의 정점은 영역의 기하학적 중심에 배치될 수 있다.
그러나, 이것은 필수적인 것은 아니며, 실제로 다른 실시예들에서 정점들은 중심이 아닌 곳에 배치될 수 있거나, 심지어 위치가 상이한 영역들 사이에서 동적으로 그리고/또는 적응적으로 변화할 수 있음을 알 것이다.
이어서, 삼각형 메시 생성기(107)는 이들 내부 정점을 연결함으로써 삼각형들을 생성할 수 있다. 전형적으로, 정점들 사이에 라인들이 형성될 수 있고, 결과적인 삼각형들은 삼각형 메시를 형성하는 데 사용될 수 있다.
정점들이 내부 정점들이기 때문에, 이러한 내부 정점들을 사용함으로써 형성된 삼각형은 하나의 영역으로 제한되는 것이 아니라, 본질적으로 복수의 영역의 부분들을 포함할 것이다. 따라서, 형성된 삼각형들 (중 적어도 일부) 각각은 복수의 영역에 걸쳐 연장될 것이다.
많은 실시예에서, 상이한 영역들 사이의 접합부들, 즉 교점들은 삼각형들을 형성할 때 사용될 수 있으며, 특히 어느 정점들이 개별 삼각형을 형성하는 데 사용되는지를 선택하는 데 사용될 수 있다.
특히, 3개의 영역이 서로 만나는 접합부의 경우, 삼각형은 삼각형의 정점들인 그러한 3개의 영역의 3개의 내부 정점으로 형성될 수 있다. 따라서, 형성된 삼각형은 접합부에서 만나는 3개의 영역 각각의 요소들을 포함하는 삼각형이다. 따라서, 접합부 그 자체는 형성된 삼각형의 정점이 아니라, 오히려 어느 영역들/내부 정점들이 결과적인 삼각형을 형성하는 데 사용되는지를 선택하는 데 사용된다. 나중에 더 상세히 설명될 바와 같이, 내부 정점들의 위치 및 삼각형의 생성은 전형적으로 영역들 사이의 접합부가 삼각형 내에 있도록 이루어진다(즉, 접합부의 삼차원 점은 삼각형 메시에서 접합부에서 만나는 3개의 영역의 내부 정점들을 사용하여 생성된 삼각형의 점에 의해 표현될 것이다).
삼각형 메시 생성기는 많은 실시예에서 3개의 영역 사이의 각각의 접합부에 대한 삼각형을 형성하도록 배열될 수 있으며, 여기서 삼각형은 3개의 영역의 내부 정점들을 연결하는 변들을 갖는다. 따라서, 삼각형들의 세트가 생성될 수 있으며, 이때 이러한 삼각형들 각각은 (모든 정점들이 내부 정점들이기 때문에) 3개의 상이한 영역을 가로질러 오버랩 또는 연장된다. 4개의 영역이 서로 만나는 접합부들의 경우, 4개의 영역의 4개의 내부 정점에 의해 2개의 삼각형이 형성될 수 있다. 그러한 시나리오에서, 삼각형 메시 생성기(107)는 2개의 대각선으로 대향하는 영역 사이의(즉, 공통 변을 갖지 않는 2개의 영역 사이의) 라인으로서 2개의 삼각형의 하나의 공통 변을 형성할 수 있다. 이어서, 하나의 삼각형이 나머지 2개의 영역 중 하나의 정점을 추가로 포함함으로써 형성될 수 있고, 다른 것이 마지막 남은 영역의 정점을 추가로 포함함으로써 형성될 수 있다.
따라서, 몇몇 실시예들에서, 삼각형 메시 생성기(107)는 4개의 영역 사이에 존재하는 각각의 접합부에 대한 2개의 삼각형을 형성하도록 배열될 수 있다. 2개의 삼각형은 4개의 영역의 2개의 대각선으로 대향하는 영역의 정점들을 연결하는 공통 변을 갖는다. 이어서, 하나의 삼각형이 2개의 대각선으로 대향하는 영역의 정점들을 4개의 영역 중 제3 영역의 정점에 연결하는 변들을 갖도록 삼각형을 생성함으로써 형성된다. 제2 삼각형은 2개의 대각선으로 대향하는 영역의 정점들을 4개의 영역 중 제4 영역의 정점에 연결하는 변들을 가짐으로써 형성된다.
다시 말해서, 삼각형 메시 생성기(107)는 4개의 영역 사이의 각각의 접합부에 대한 2개의 삼각형을 형성하도록 배열될 수 있으며, 이때 2개의 삼각형은 4개의 영역의 2개의 대각선으로 대향하는 영역의 정점들을 연결하는 공통 변, 및 2개의 대각선으로 대향하는 영역의 정점들을 각각 4개의 영역 중 제3 영역 및 제4 영역에 연결하는 변들을 갖는다.
3-영역 접합부에 대해 삼각형이 형성되는 시나리오에 관하여, 4-영역 접합부에 대해 형성된 2개의 삼각형은 또한 내부 정점들로부터 형성될 것이고, 이에 따라 삼각형들 각각은 단일 영역으로 제한되는 것이 아니라 3개의 상이한 영역에 걸쳐 연장될 것이다.
직사각형 영역들을 갖는 쿼드트리의 경우, 각각의 접합부에 대한 삼각형들을 생성하는 접근법은 연속적인 삼각형 메시가 구멍 없이 생성되게 할 수 있다.
이 접근법은 삼각형 메시들의 개선된 생성을 유발할 수 있다. 실제로, 많은 실시예에서, 이 접근법은 비교적 간단하고 낮은 복잡성의 처리에 기초하여 매우 정확할 뿐만 아니라 본질적으로 메시 내의 구멍의 생성을 회피하는 삼각형 메시를 생성할 수 있다.
이 접근법은 정확하고 유용한 삼각형 메시들을 제공하는 것으로 밝혀졌음에 유의한다. 이것은 놀라운 일인데, 왜냐하면 이 접근법은 본질적으로 k-D 트리로부터 삼각형 메시들을 생성하는 근본적인 가정된 원리와 단절함으로써 반직관적이기 때문이다. 특히, k-D 트리는 깊이 변화가 매우 낮은 개별 영역들을 생성하는 데 사용된다. 따라서, 가장 직관적인 접근법은 앞서 기술한 바와 같이 각각의 영역 내에 삼각형들을 형성하는 것인데, 왜냐하면 개별 영역이 낮은 깊이 변화를 갖는 것이 보장될 수 있기 때문이다. 이것은 동일한 영역의 정점들 사이의 삼각형들의 생성으로 이어지는데, 즉 이것은 영역들의 접합부들/교점들 사이의 삼각형들의 생성으로 이어진다. 실제로, 이것은 각각의 직사각형 영역이 그 영역을 대각선에 의해 분할함으로써 형성되는 2개의 삼각형에 의해 표현되게 할 수 있다.
그러나, 도 3의 시스템의 접근법의 근본적이고 중요한 특징은 삼각형들이 하나의 영역 내에 형성되는 것이 아니라 오히려 영역들 사이에 형성된다는 것이다. 따라서, 삼각형들은 복수의 영역과 오버랩되고, 이에 따라 결과적인 삼각형들은 상이한 영역들의 섹션들을 포함할 것이다. 따라서, 이러한 반직관적인 접근법은 깊이가 k-D 트리 생성에 의해 제약되는 단일 영역 내에 있도록 삼각형들을 제한하는 것이 아니라, 일반적으로 깊이 변화가 제약되지 않는 복수의 영역을 가로질러 삼각형들을 형성한다. 놀랍게도, 이웃하는 영역들 간의 깊이 변화들에 제한이 부과되지 않음에도 불구하고, 매우 효율적이고 정확한 삼각형 메시가 생성되는 경향이 있는 것으로 밝혀졌다. 또한, 이러한 생성은 본질적으로 삼각형 메시 내의 구멍을 회피한다.
아래에서는, 쿼드트리를 사용하는 특정 실시예가 더 상세히 설명될 것이다. 따라서, 특정 예에서, 모든 영역들은 정사각형이고, 영역의 각각의 세분은 4개의 자식/하위 영역으로의 세분이다. 또한, 특정 예에서, 정점들은 개별 영역들 내에 중심에 배치된다.
이 실시예에서, 삼각형 메시 생성기(107)는 쿼드트리 내의 각각의 정사각형을 2개로 분할하는 것이 아니라, 오히려 그것은 3개 또는 4개의 쿼드트리 영역이 만나는 접합부들에 기초하여 삼각형들을 구성한다. 접합부들에 정점들을 배치하는 대신, 단일 정점이 각각의 영역의 중심에 배치된다. 이어서, 3개의 쿼드트리 영역이 만나는 각각의 접합부에 대해 단일 삼각형이 구성된다. 삼각형은 만나는 3개의 영역의 3개의 정점을 연결함으로써 구성되는데, 즉 삼각형의 변들은 3개의 영역의 3쌍의 정점들을 연결하는 라인들에 의해 형성된다. 모든 영역들이 정사각형인 쿼드트리의 경우, 이것은 본질적으로 생성된 삼각형이 접합부를 둘러싸게 할 것이며, 이것은 일관된 삼각형 메시가 구멍 없이 생성되게 할 것이다.
4개의 영역이 만나는 접합부들에 대해, 2개의 삼각형이 구성된다. 2개의 삼각형은 먼저 2개의 대각선 영역(접합부에서만 접촉하고 어떠한 공유 에지도 갖지 않는 2개의 영역)의 정점들을 선택함으로써 구성된다. 이러한 2개의 정점은 2개의 삼각형에 공통적인 반면, 나머지 2개의 정점은 하나의 삼각형의 일부일 뿐이다. 따라서, 제1 삼각형은 2개의 공통 정점 및 제3 정점에 의해 형성되고, 제2 삼각형은 2개의 공통 정점 및 최종 정점에 의해 형성된다.
이러한 방식으로, 정사각형 영역들에 의해 형성된 맵에 대해 공통 변/에지가 접합점을 통해 연장되게 할 2개의 삼각형이 형성된다. 이것은 또한, 3방향 접합부들에 대한 삼각형들을 생성하기 위한 위의 접근법과 함께, 구멍이 없는 연속 삼각형 메시의 자동적인 생성을 유발한다.
이 알고리즘은 예를 들어 쿼드트리 데이터 구조를 통한 계층적 검색을 사용하여 구현될 수 있다.
예로서, 도 3의 (작은) 쿼드트리 섹션이 고려될 수 있다. 이 예에서, 각각의 영역 내의 숫자는 (정사각형 영역의 변의 길이에 의해 지시되는) 각각의 영역의 크기를 나타낸다. 이러한 작은 국소 구조의 경우, 정점은 각각의 영역 내에 배치될 수 있고, 삼각형들은 위에서 설명한 접근법을 사용하여 형성될 수 있다. 도 4는 가능한 결과를 예시한다. 볼 수 있는 바와 같이, 구멍이 없는 일관된 삼각형 메시가 생성된다.
이 예에서, 쿼드트리의 에지들의 소정의 특정 핸들링이 포함될 수 있다. 예를 들어, 시스템은 이미지 경계 상의 모든 쿼드트리 영역 코너들을 정점들로서 추가할 수 있다. 이미지 경계 상의 각각의 그러한 정점에 대해, (아직 생성되지 않은 경우) 3개의 삼각형이 생성될 수 있다. 이들 삼각형 중 2개는 (2개의 경계 정점을 정사각형의 중심 정점과 연결하는) 그 코너의 2개의 정사각형 내에 있을 수 있으며, 세 번째 것은 에지 정점을 2개의 중심 정점과 연결할 수 있다. 이것은 삼각형 메시를 이미지의 에지까지 연장시킬 수 있다. 다른 실시예들에서는 다른 접근법들이 사용될 수 있다는 것을 알 것이다(이미지의 에지까지 완전히 연장되지 않는 삼각형 메시를 간단히 생성하는 것을 포함함, 즉 삼각형 메시는 영역들 내부의 정점들만을 사용하여 생성될 수 있다).
쿼드트리로부터 메시를 계산하는 프로세스는 특히 효율적으로 수행될 수 있는데, 왜냐하면 인접한 정사각형들 사이의 접합부들의 위치들이 쿼드트리 데이터 구조에 의해 정의되기 때문이다. 예를 들어, 가장 큰 영역이 128 픽셀의 크기를 갖는다면, x 또는 y 방향에서의 128 영역의 시작은 항상 양방향에서의 128 픽셀의 배수에 위치되는 것이 알려져 있다. 이 지식을 사용하여, 쿼드트리에서 가장 큰 영역 크기(예컨대, 128)에서 시작하여 가장 작은 영역 크기(예컨대, 4)에서 끝나는 모든 영역 코너들을 반복적으로 방문하는 효율적인 알고리즘이 도출될 수 있다. 더 작은 영역이 쿼드트리 내의 소정 위치에 존재하는 경우에는 그것만이 평가될 필요가 있다.
삼각형 메시를 생성하기 위해 삼각형 메시 생성기(107)에 의해 적용될 수 있는 알고리즘을 위한 의사 코드의 예는 다음과 같다:
Figure pct00001
이 접근법에서, 삼각형 메시 생성기(107)는 (더 작은 영역을 포함하고, 이에 따라 더 낮은 레벨에서 이미 형성된 것들을 생략하면서) 최소 영역들을 먼저 식별하고 이들 영역을 포함하는 삼각형들을 형성한 후에 다음 최소 영역들을 식별하고 이들에 대한 삼각형들을 형성한다는 점에서 삼각형들을 상향식으로 결정한다. 알고리즘은 모든 영역들이 처리될 때까지 이 접근법을 계속한다.
특정 예에서, 도 2의 장치는 이차원 이미지 및 삼각형 메시를 수신하고, 출력 이미지를 생성하기 위해 삼차원 비디오 처리를 수행하도록 배열된 비디오 프로세서(109)를 추가로 포함한다. 비디오 프로세서(109)는 예를 들어 OpenGL(예를 들어, https://www.opengl.org/about/ 참조) 또는 DirectX(예를 들어, https://msdn.microsoft.com/library/windows/apps/hh452744 참조) 렌더링 파이프라인을 사용하여 새로운 뷰를 생성할 수 있다. 예를 들어, 비디오 프로세서(109)는 생성된 삼각형 메시를 사용하여 뷰 시프팅 또는 뷰 합성을 수행할 수 있다.
k-D 트리를 생성하기 위한 정확한 접근법은 상이한 실시예들 사이에서 다를 수 있으며, 이것이 분할을 요구하는 임계치를 언제 초과하는지에 대한 정확한 깊이 변화 척도 및 기준은 상이한 실시예들 사이에서 다를 수 있다.
몇몇 실시예들에서, 깊이 변화 척도는 특히 영역 내의 최대값과 최소값 사이의 차이로서 생성될 수 있다. 이것이 미리 결정된 임계치를 초과하면, 영역은 하위 영역들로 분할된다.
많은 실시예에서, 영역에 대한 깊이 변화 척도는 유리하게는 영역의 평균 깊이와 영역이 분할되는 경우에 영역이 분할될 각각의 하위 영역의 평균 깊이 사이의 최대 차이로서 결정될 수 있다.
대안적으로(또는 추가적으로), 영역에 대한 깊이 변화 척도는 유리하게는 영역이 분할되는 경우에 영역이 분할될 하위 영역들의 쌍들의 평균 깊이 사이의 최대 차이로서 결정될 수 있다.
그러한 접근법들은 특히 효율적일 수 있으며, 특히 계산적으로 매우 효율적일 수 있다.
구체적으로, 깊이 변화 척도의 결정은 깊이 맵에 대해 생성된 적분 이미지에 기초할 수 있다. 깊이 맵에 대한 적분 이미지에서, 주어진 위치 x,y에서의 값은 (전형적으로) 위치 x,y에 우하 코너를 갖는 직사각형에서의 깊이 값들의 적분(합계)으로서 주어진다. 따라서, 적분 이미지는 위치의 위쪽 및 왼쪽 영역에서의 누적 값들을 반영하는 값들을 포함한다.
예로서, 적분 이미지가 사용될 때, 영역 분할 여부에 대한 결정은 부모 영역과 4개의 자식 영역의 평균 깊이 값들 사이의 최대 절대 차이에 기초할 수 있다. 예를 들어, 32x32 정사각형 블록이 다음의 경우에 4개의 16x16 블록으로 분할될 것이며:
Figure pct00002
,
여기서, k는 각각의 16x16 자식 블록을 인덱싱한다.
이 기준의 계산상의 이점은 적분 이미지의 사용으로부터 발생하며, 여기서 각각의 블록 평균의 계산은 적분 이미지에서의 4개의 탐색 연산, 즉 2개의 뺄셈, 1개의 덧셈 및 1 비트 시프트로 이루어질 수 있다. (비트 시프팅 연산은 정사각형 블록 내의 픽셀 수가 항상 2의 거듭제곱이라는 사실로부터 기인한다는 점에 유의한다.)
따라서, 이 접근법에 대한 기준은 블록 평균들 간의 차이들에 기초할 수 있다. 특히, 블록을 가로질러 평균화된 픽셀별 값들이 고려될 수 있다. 따라서, 크고 작은 블록들은 유사한 범위, 예컨대 [0, 255] 내의 값들을 가질 수 있다.
그러한 실시예들에서는, 임계 블록 크기를 적응적으로 만드는 것이 유리할 수 있는데, 즉 낮은 임계치를 사용하여 가장 큰 블록에 대해 분할하고, 임계치를 증가시키면서 블록 크기를 줄여서 과도한 작은 블록들을 방지할 수 있다.
k-D 트리를 생성할 때 영역을 세분할지의 여부에 대한 결정은 깊이 값들만이 아니라 다른 파라미터들도 고려할 수 있음을 또한 알 것이다. 따라서, 깊이 맵에 대한 k-D 트리의 생성은 오직 깊이 맵 그 자체에만 기초할 필요는 없다.
실제로, 많은 실시예에서, 트리 생성기(105)는 삼차원 이미지의 휘도 또는 색도 특성에 응답하여 영역들을 형성하도록 배열될 수 있다. 특히, 삼차원 이미지는 시각 정보를 표현하는 하나 이상의 이차원 이미지를 포함할 수 있는데, 즉 이차원 이미지들은 휘도 또는 색도(조합된 색차 포함) 정보를 포함할 수 있다. 몇몇 실시예들에서, 트리 생성기(105)는 주어진 영역을 분할할지를 결정할 때 이 정보를 고려할 수 있다.
예를 들어, 주어진 영역에 대해, 트리 생성기(105)는 깊이 변화 척도를 결정할 수 있다. 이것은 또한 색차(예를 들어, 순수 휘도 또는 순수 색도 포함) 변화 척도를 결정할 수 있다. 척도는 예를 들어 (예컨대, 하나의 컬러 채널 또는 모든 컬러 채널들에 걸친 평균 내의) 최대 휘도 차이 또는 최대 색도 차이로서 결정될 수 있다. 이어서, 트리 생성기(105)는 깊이 변화 척도 및 색차 변화 척도 둘 모두를 평가할 수 있고, 이들 2개의 척도 중 어느 하나가 각자의 임계치를 초과하는 경우 영역을 분할할 수 있다.
다른 특정 예로서, H.265와 같은 몇몇 코딩 표준들에서, k-D 트리는 인코딩되는 이미지/비디오의 파라미터들에 기초하여 이미지/비디오 인코딩의 일부로서 생성된다. 그러한 시나리오들에서, 이미지/비디오 인코딩을 위해 생성된 k-D 트리는 재사용될 수 있다(아마도 깊이 맵에 기초하여 더욱 정밀화될 수 있다).
영역들의 세분들을 고려할 때의 이미지 파라미터들의 포함은 개선된 삼각형 메시가 생성되게 할 수 있다.
앞서의 특정 예에서, 생성된 k-D 트리는 정사각형 영역들을 사용하는 쿼드트리이다. 그러나, 설명된 접근법의 특별한 이점은, 그것이 그러한 쿼드트리들로 제한되지 않고, 실제로 그것은 k-D 트리를 형성하는 영역들 또는 이를 생성하기 위한 알고리즘에 반드시 상당한 제약을 부과하지는 않는다는 점이다.
따라서, 많은 실시예에서, 트리 생성기(105)는 정사각형 영역들만을 생성하도록 제약될 수 있고, 특히 하위 영역들로의 각각의 세분은 4개의 자식 영역을 생성함으로써 이루어질 수 있다. 따라서, 몇몇 실시예들에서, 트리 생성기(105)는 쿼드트리를 생성하도록 제약될 수 있다. 그러나, 많은 다른 실시예에서, 생성은 정사각형 영역들이도록 제약되지 않는 직사각형 영역들로 구성된 k-D 트리를 생성할 수 있다.
예를 들어, (반드시) 정사각형들은 아니라 직사각형들에 기초하는 k-D 트리는 하나가 수평 분할을 표현하고 하나가 수직 분할을 표현하는 2개의 부분 k-D 트리에 의해 표현될 수 있다.
예컨대, 단일 쿼드트리 표현 Q(i, j)를 사용하는 대신, 수평 및 수직 변화를 개별적으로 모델링하기 위해 2개의 서브트리, 즉 수평 트리 Q h (i, j) 및 수직 트리 Q v (i, j)가 고려될 수 있다. 그러한 직사각형 트리의 사용은 전형적으로 삼각형 메시 내의 삼각형들의 수를 줄일 수 있는데, 왜냐하면 그것이 (일반적으로 발생하는) 수평으로 또는 수직으로 긴 구조들을 설명하는 데 더 적은 세분들을 필요로 하기 때문이다.
도 5는 수평 서브트리 Q h (i, j)의 작은 섹션의 예를 예시하고, 도 6은 수직 서브트리 Q v (i, j)의 상응하는 작은 섹션의 예를 예시한다. 도 7은 전체 쿼드트리의 결과적인 섹션을 예시한다. 도 7은 또한 생성될 수 있는 결과적인 삼각형들을 예시한다.
따라서, 이들 예에서, 트리 생성기(105)는 이에 따라 영역들을 직사각형들로서 생성하도록 배열되고, 특히 수평 및 수직 방향들에서의 영역들의 분리는 상이할 수 있다. 트리 생성기(105)는 예를 들어 벽 및 기둥과 같은 직립 구조들을 분할하기 위해 수직 분할을 사용하고, 전경-배경 깊이 점프들을 분할하기 위해 수평 분할을 사용할 수 있다. 수평 분할 및 수직 분할 둘 모두는 대각선으로 연장되는 구조들에 사용될 수 있다.
그러나, 쿼드트리가 자동적으로 중심 정점들을 연결함으로써 연속적이고 일관된 삼각형 메시가 생성되게 할 것이지만, 이것은 직사각형들의 치수들에 대한 제약이 없는 직사각형 k-D 트리에 대해서는 보장될 수 없다.
이것은, 직사각형(그러나 반드시 정사각형은 아님) 영역을 사용하여 k-D 트리의 섹션 내의 영역들의 세트의 중심들에서 정점들을 연결하는 것으로부터 기인하는 삼각형들의 예를 도시하는 도 8에 의해 예시된다. 볼 수 있는 바와 같이, 결과적인 삼각형들은 오버랩되며, 더는 연속적인 삼각형 메시를 제공하지 않을 것이며, 오히려 구멍이 있는 메시를 생성할 것이다.
대조적으로, 쿼드트리(즉, 모든 영역들이 정사각형임)의 경우에는, 도 8의 상황과 같은 상황이 절대로 발생할 수 없다는 것을 알 수 있다. 이를 예시하기 위해, 1x1 블록 옆의 매우 큰 블록(예컨대, 128x128)이 고려될 수 있다. 그러한 시나리오에서, 2개의 블록의 중심들 사이에 라인을, 2개의 블록 밖에 라인이 없이 그리는 것이 여전히 항상 가능하다. 이것은 그들이 서로 접촉하는 경우와 관계없이 그러하다.
따라서, 많은 실시예에서, 연속적인 삼각형 메시가 생성되는 것을 보장할 수 있기 때문에 쿼드트리가 사용될 수 있다. 몇몇 실시예들에서, k-D 트리의 생성은 연속적인 맵이 생성되는 것을 보장할 몇몇 제약들을 따를 수 있다.
많은 실시예에서, 시스템은 3개의 영역 사이에 생성된 접합부들이 이들 3개의 영역의 정점들에 의해 형성되는 삼각형 내에 포함되는 것을 보장하도록 배열될 수 있다. 이것은 도 8에 예시된 것과 같은 시나리오들이 발생하는 것을 방지할 수 있다.
몇몇 실시예들에서, 트리 생성기(105)는 세분 후에 3개의 이웃 영역에 의해 형성되는 각각의 삼각형이 접합부를 포함하는 제약에 따라 영역을 세분하도록 배열된다. 따라서, 그러한 예에서, 트리 생성기(105)가 영역이 분할될 필요가 있다고 결정하는 경우, 그것은 이 분할에 의해 생성될 접합부들을 고려할 수 있다. 그것은 또한 이들 접합부가 연결되는 새로운 영역들의 중심점들로부터 기인하는 삼각형들 내에 있는지의 여부를 고려할 수 있다. 그렇다면, 그것은 이어서 분할을 행하고, 그렇지 않으면 그것은 영역을 세분하지 않는다.
다른 예로서, 몇몇 실시예들에서, 트리 생성기(105) 및/또는 삼각형 메시 생성기(107)는 접합부를 형성하는 3개의 영역에 대한 삼각형이 접합부를 둘러싸지 않는다는 검출에 응답하여 적어도 하나의 영역을 세분하도록 배열된다. 따라서, 그러한 예들에서, 시스템은 3개의 영역 사이의 접합부가 3개의 영역의 정점들에 의해 형성되는 삼각형 내에 있지 않음을 검출할 수 있고, 이에 응답하여 그것은 영역들 중 적어도 하나를 더욱 분할할 수 있다. 따라서, 이 경우에, 하나 대신에 2개의 삼각형이 결국 생성될 수 있다. 이러한 고려 사항은 반복적으로 적용될 수 있는데, 즉 세분은 모든 접합부들이 3개의 연결 영역의 정점들에 의해 형성되는 삼각형들 내에 있게 하는 것이 보장될 수 있다는 것을 알 것이다.
많은 실시예에서, 트리 생성기(105)는 제1 영역의 이웃인 제2 영역과 세분으로부터 기인하는 2개의 하위 영역 사이의 결과적인 접합부의 평가에 따라 제1 영역을 세분하도록 배열될 수 있다. 따라서, 영역을 분할할지를 고려할 때, 트리 생성기(105)는 새로운 하위 영역들과 기존의 이웃 영역들 사이에 형성될 접합부들을 고려할 수 있다. 그것은 다른 점들에 대한 이 접합부의 위치의 특성들을 고려할 수 있으며, 주어진 요건이 충족되는 경우에만 세분을 수행할 수 있다.
2개의 영역 A 및 B가 선분 E를 따라 서로 접촉할 때마다, B의 2개의 하위 영역을 생성하기 위해서 영역 A가 영역 B를 수직으로 그리고 선분 E를 따라 세분하기 위해 영역 B에 제약들을 부과할 수 있다는 것을 나타내는 몇몇 예들이 도 9 내지 도 11과 관련하여 제공될 수 있다.
구체적으로, 몇몇 실시예들에서, 분할은 제1 영역 및 제2 영역의 공통 에지와 이웃 영역의 정점으로부터 분할되는 영역의 코너(코너는 이웃 영역으로부터 멀리 떨어져 있음)까지의 라인 사이의 교점이 접합부보다 코너에 더 가까운지에 대한 평가에 따를 수 있다.
따라서, 도 9의 예와 관련하여, 제약은, A의 중심이 라인 L에 의해 B의 대향 코너 Q에 연결될 수 있을 때, 각각의 그러한 L 및 Q에 대해, 라인 L이 P에서 선분 E와 교차할 때, 코너 Q로부터 멀어지는 쪽에 있는 P의 측에서 E를 따라 B를 분할하는 것만이 허용된다는 것이다.
몇몇 실시예들에서, 분할은 제2 영역의 정점과 2개의 하위 영역의 정점들 사이의 라인들이 제1 영역과 제2 영역 사이의 공통 에지와 교차하는지에 대한 평가에 따를 수 있다.
따라서, 도 10의 예와 관련하여, 제약은 B의 하위 영역들의 중심들이 E를 통과하는 라인에 의해 A의 중심과 연결될 수 있어야 한다는 것이다.
몇몇 실시예들에서, 분할은 접합부가 제1 영역 및 제2 영역의 공통 에지의 외부에 있는지에 대한 평가에 따를 수 있다. 그렇다면, 분할이 수행될 수 있다.
따라서, 도 11의 예와 관련하여, 영역 A는 선분 E의 외부에서는 제약을 부과하지 않는다.
위에서 제공된 분할 제약들은 이웃하는 영역 및 분할에 의해 형성되는 임의의 새로운 인접 하위 영역의 중심들을 통과하는 라인이 전적으로 이웃하는 영역 및 하위 영역들 내에 있어야 하는 제약을 부과할 수 있다. 라인이 다른 영역 또는 하위 영역과 교차하도록 의도되는 경우, 매우 얕은 삼각형들 및/또는 구멍이 형성될 수 있다.
전술한 바와 같이, 제약들 및 고려 사항들이 k-D 트리를 생성하기 위해 세분을 수행할 때 고려될 수 있거나, 많은 시나리오에서 예를 들어 삼각형 메시의 생성과 함께 반복적으로 고려될 수 있다. 예를 들어, 설명된 제약들은 k-D 트리를 생성할 때 고려될 수 있고, 결과적인 k-D 트리는 삼각형 메시를 형성하는 데 사용될 수 있다. 대안적으로, k-D 트리를 처음 결정할 때는 제약이 사용되지 않을 수 있다. 이러한 k-D 트리는 이어서 시험 삼각형 메시를 생성하는 데 사용될 수 있고, 제약들이 충족되지 않은 경우, 이것은 이 단계에서 검출될 수 있다. k-D 트리는 이어서 이러한 제약 위반을 극복하도록 수정될 수 있다.
언급한 바와 같이, 제약이 충족되지 않은 것이 검출되는 경우, 장치는 세분을 방지할 수 있다. 다른 시나리오들에서, 그것은 추가의 세분을 추가할 수 있다. 예를 들어, 삼각형 메시의 생성 동안 제약이 충족되지 않은 것이 발견되는 경우, 장치는 상응하는 분할을 제거하기보다는, 제약이 충족되는 더 작은 영역들을 생성하기 위해 새로운 분할을 도입할 수 있다.
다른 예로서, 시스템은 몇몇 실시예들에서 제약이 충족되기 위해 적어도 하나의 정점의 위치를 결정하도록 배열될 수 있다. 예를 들어, 시스템은 모든 3방향 접합부들이 상응하는 3개의 영역의 정점들에 의해 형성되는 삼각형들 내에 있도록 정점들을 배치하도록 배열될 수 있다. 트리 생성기(105)는 예를 들어 먼저 모든 정점들을 중심에 배치할 수 있다. 이어서, 이것이 하나의 접합부가 상응하는 삼각형 외부에 있게 하는 것이 발견되는 경우, 그것은 이어서 제약이 충족될 때까지, 즉 접합부가 삼각형 내에 있을 때까지 하나 이상의 정점의 위치를 이동시킬 수 있다. 트리 생성기(105)는 예를 들어 주어진 영역에 대해 상이한 위치(예를 들어, 랜덤 위치)를 시도하고, 제약이 충족되는지를 체크할 수 있다. 그렇다면, 정점은 이 위치에 유지되고, 그렇지 않으면 다른 위치가 선택되고 평가된다.
도 2 및 이전 설명의 예에서, 설명된 기능은 동일한 장소에 배치되는 것으로 간주되었다. 그러나, 본 발명자들은 삼차원 이미지 정보의 특히 효율적인 통신이 기능의 분산에 의해 달성될 수 있음을 깨달았다. 구체적으로, 본 발명자들은 삼차원 이미지를 제공하는 데이터 스트림의 일부로서 k-D 트리를 사용하여 삼차원 정보의 특히 매력적인 통신이 가능하다는 것을 깨달았다.
도 12는 이미지 송신기(1201)가 그것이 이미지 수신기(1203)에 송신하는 이미지 데이터 스트림을 생성하도록 배열된 예를 예시한다. 이 예에서, 이미지 송신기(1201)는 도 2의 것들에 상응할 수 있는 깊이 맵 소스(101) 및 이미지 소스(103)를 포함한다. 유사하게, 이미지 송신기(1201)는 도 2에 대해 설명된 것에 상응하는 트리 생성기(105)를 포함한다.
또한, 이미지 송신기(1201)는 이미지 데이터 스트림을 생성하도록 배열된 이미지 스트림 생성기(1205)를 포함한다. 많은 실시예에서, 이미지 송신기(1201)는 이미지들의 시퀀스를 포함하는 비디오 스트림을 생성하도록 배열된다. 다음의 설명은, 비디오 스트림이 생성되고 단일 이미지에 대한 참조들이 비디오 신호를 형성하는 이미지들의 시퀀스 중 하나의 이미지에 대한 참조들로서 간주될 수 있는 예를 고려할 것이다.
이 예에서, 이미지 스트림 생성기(1205)는 이미지 소스(103)로부터의 이미지 데이터 및 깊이 맵 소스(105)로부터의 깊이 맵을 비디오 스트림 내로 포함시키도록 배열되지만, 몇몇 실시예들에서는 이들 중 하나 또는 둘 모두가 비디오 스트림 내에 포함되지 않을 수 있다는 것을 알 것이다. 따라서, 이 예에서는, 이차원 이미지들의 시퀀스 및 관련된 깊이 맵들을 포함할 수 있는 비디오 스트림이 제공된다.
또한, 이미지 스트림 생성기(1205)는, 트리 생성기(105)로부터 k-D 트리(들)를 수신하고, 이를(이들을) 비디오 스트림 내에 포함시키도록 배열된다. 따라서, 비디오 스트림은 깊이 맵(들)이 어떻게 충분히 동질적인 영역들의 영역들로 분할되었는지에 대한 정보를 포함할 수 있다.
비디오 데이터 스트림은 이미지 수신기(1203)로 송신되고, 여기서 그것은 수신된 비디오 스트림으로부터 관련 데이터를 추출하도록 배열된 스트림 수신기(1207)에 공급된다. 이미지 수신기(1203)는 도 2를 참조하여 설명된 것에 상응하는 삼각형 메시 생성기(107)를 추가로 포함한다. 삼각형 메시 생성기(107)는, 특히 k-D 트리를 추출하여 이것을 삼각형 메시 생성기(107)에 공급하는 스트림 수신기(1207)에 결합된다. 삼각형 메시 생성기(107)는 깊이 맵들을 더 수신하고, 이어서 앞서 기술된 바와 같이 삼각형 메시를 생성한다.
이미지 수신기(1203)는 이에 따라 이차원 이미지, 깊이 맵, 텍스처 이미지 등과 같은, 개별 실시예에서 요구될 수 있는 다른 관련 정보와 함께 출력될 수 있는 삼각형 메시를 생성한다. 데이터는 이어서 적합한 포스트 프로세서들에서 사용될 수 있으며, 특히 후처리는 삼각형 메시에 기초할 수 있다.
시스템에서, 삼각형 메시를 생성하기 위한 기능은 이에 따라 이미지 송신기(1201)와 이미지 수신기(1203) 사이에 분산되며, 이때 이 둘에 의해 송신되는 이미지/비디오 데이터 스트림은 k-D 트리의 표현을 포함한다.
이러한 접근법은 많은 실시예에서 매력적인 솔루션을 제공할 수 있다. 실제로, 이것은 삼차원 정보의 효율적인 코딩을 제공하고, 서버 측(이미지 송신기(1201))과 클라이언트 측(이미지 수신기(1203)) 사이의 복잡성 및 자원 요구의 유리한 분산을 제공할 수 있다.
또한, 이 접근법은 삼차원 정보가 이미지/비디오 신호로서 인코딩되는 특히 유리한 접근법을 가능하게 할 수 있다. 실제로, 몇몇 실시예들에서, 삼차원 정보는 이미지(비디오) 인코딩/디코딩 접근법을 사용하여 인코딩될 수 있는데, 즉 전용 인코딩 포맷을 사용하여 k-D 트리를 직접 인코딩하는 대신에, 정보는 통상의 이차원 시각적 이미지에 사용되는 것과 동일한 비디오 또는 이미지 코딩 알고리즘에 의해 인코딩된다. 따라서, 비디오 인코더 및 디코더는 k-D 트리에 의해 표현되는 삼차원 정보를, 그것을 통상의 이미지로서 그리고 실제로 전형적으로 그것이 통상의 이미지 이외의 어떤 것인지에 대한 어떠한 지식도 없이 처리함으로써 인코딩 및 디코딩할 수 있다.
이 접근법은 다수의 이점을 가지며, 특히 기존의 이미지/비디오 인코더들 및 디코더들이 사용될 수 있게 한다. 실제로, 이 접근법은 새로운 포맷 또는 표준이 개발되도록 요구함이 없이 관련 삼차원 정보의 배포를 가능하게 하는데, 왜냐하면 그것이 사실상 데이터가 제공될 수 있는 "래퍼(wrapper)"로서 기존의 비디오 포맷을 사용하여 통신될 수 있기 때문이다.
k-D 트리의 통신은 이 접근법에 특히 적합한데, 왜냐하면 이 정보가 각각의 픽셀에 대해 하나의 데이터 값을 갖는 간단한 이차원 맵에 의해 표현될 수 있기 때문이다. 따라서, 직접 삼차원 구조인 삼각형 메시를 통신하는 것과는 대조적으로, 값들의 이차원 맵에 의해 표현될 수 있는 k-D 트리의 통신은 이차원 이미지들에 적용되는 것과 동일한 접근법 및 포맷을 사용할 수 있다.
따라서, 몇몇 실시예들에서, 이미지 스트림 생성기(1205)는, 이미지(및 특히 컬러 또는 휘도 채널) 인코딩을 k-D 트리에 적용하고, 이미지/비디오 데이터 스트림에 결과적인 이미지 인코딩된 데이터를 포함시키도록 배열된다.
예를 들어, 이미지 스트림 생성기(1205)는 적합한 비디오 인코딩 표준에 따라 인코딩된 하나 이상의 이미지 신호를 포함하는 비디오 스트림을 생성하도록 배열될 수 있다. 비디오/이미지 신호들은 전형적으로 복수의 컬러 채널(순수 색도 또는 순수 휘도 채널일 수 있음)에 의해 컬러 이미지들을 표현한다. 예를 들어, 널리 사용되는 포맷은 개별적으로 후속 인코딩되는 적(Red), 녹(Green), 청(Blue) 컬러 채널에 의해 컬러 이미지를 표현하는 것이다. 다른 예는 YUV 포맷에 의해 이미지를 표현하는 것이며, 여기서 Y는 휘도 채널이고, U 및 V는 특정 예에서 순수 색도 채널들인 2개의 컬러 채널을 나타낸다. 이들 채널 각각은 (루마, 색도 또는 색차 값을 나타내는) 데이터 값들의 단일 이차원 맵을 포함한다.
몇몇 실시예들에서, k-D 트리는 이에 따라 값들의 이차원 맵에 의해 표현될 수 있다. 예를 들어, 깊이 맵의 각각의 픽셀에 대해, k-D 트리 맵은 픽셀이 속하는 영역의 크기를 지정하는 값을 포함할 수 있다. 이 맵은 이어서 컬러 채널에 대한 맵인 것처럼 비디오 인코더에 입력될 수 있으며, 그것은 이에 따라 이미지의 (부분) 표현인 것처럼 인코딩될 것이다.
유사하게, 스트림 수신기(1207)의 비디오 디코더는 컬러 채널(예를 들어, 순수 휘도 또는 색도 채널)에 대한 맵인 것처럼 맵을 디코딩할 것이다. 디코딩된 데이터는 이어서 삼각형 메시 생성기(107)에 공급되어 삼각형 메시를 생성하는 데 사용될 수 있는 이차원 맵으로서 출력될 것이다.
몇몇 실시예들에서, 비디오 인코더는 이에 따라 하나의 채널에 k-D 트리 맵을 포함하는 인코딩할 이미지를 수신할 수 있다. 몇몇 실시예들에서, 임의의 다른 채널들은 비어 있을 수 있다(예를 들어, 모든 픽셀들이 더미 제로 값을 포함할 수 있다). 예를 들어, k-D 트리는 RGB 신호의 R 채널 내에 인코딩될 수 있으며, 이때 G 및 B 채널들에는 어떠한 데이터(또는 상수 데이터 값)도 포함되지 않는다.
그러나, 다른 실시예들에서, 다른 데이터가 다른 채널들 내에 포함될 수 있다.
특히, 몇몇 실시예들에서, 이미지 송신기(1201)는 깊이 맵과 k-D 트리 맵을, 비디오 인코더에 의해 인코딩되는 동일한 의사 이미지의 상이한 채널들(컬러/색도/휘도 채널들) 내로 조합하도록 배열될 수 있다. 따라서, 비디오 인코더는 복수의 채널을 포함하는 비디오 표현을 인코딩하도록 배열될 수 있으며, 여기서 깊이 맵은 제1 채널 내에 포함될 수 있고 k-D 트리는 (적어도) 제2 채널 내에 포함될 수 있다.
이미지 송신기(1201)는 컬러 이미지에 상응하는 데이터 구조를 생성할 수 있다. 예를 들어, 3개의 이차원 데이터 맵의 구조가 생성될 수 있으며, 이때 각각의 데이터 맵은 예를 들어 R, G 및 B 채널 중 하나 또는 Y, U 및 V 채널 중 하나에 각각 상응한다. 이어서, 데이터 맵들 중 하나가 깊이 맵으로부터의 데이터 값들에 의해 채워질 수 있고, 하나의 데이터 맵이 k-D 트리 맵으로부터의 데이터에 의해 채워질 수 있다. 마지막 데이터 맵은 예를 들어 다른 데이터(예컨대, 투명도 맵)로 채워질 수 있거나 (예컨대, 모든 값이 0으로 설정됨으로써) 공백으로 남을 수 있다. 이어서, 결과적인 데이터 구조는 비디오 인코더에 의해 인코딩되고, 비디오 스트림 내에 포함되고, 이미지 수신기(1203)에 의해 추출되고, 깊이 맵 및 k-D 트리 맵을 복원하기 위해 이미지 수신기(1203)의 비디오 디코더에 의해 디코딩된다.
많은 실시예에서, 비디오 인코더는 특히 휘도 채널 및 적어도 하나의 색도 채널을 포함하는 비디오 표현을 인코딩하도록 배열될 수 있으며, 이미지 송신기(1201)는 휘도 채널에 깊이 맵을 그리고 적어도 하나의 색도 채널에 k-D 트리를 인코딩하도록 배열될 수 있다. 많은 실시예에서, 휘도 채널에 깊이 맵을 그리고 색도 채널(들)에 k-D 트리 맵을 인코딩하는 것이 특히 유리할 수 있다. 전형적으로, 깊이 맵은 k-D 트리 맵보다 상당히 더 높은 값 변화를 갖는 경향이 있을 것이다. 실제로, k-D 트리 맵에 대해, 데이터 값은 전형적으로 픽셀들의 각각의 인코딩 블록에 대해 일정하다. 많은 비디오 인코딩 표준에서, 휘도 채널의 인코딩은 색도 채널에 대한 것보다 더 효과적이거나 정확할 수 있으며, 이에 따라 이러한 인코딩을 가장 높은 변화를 갖는 맵에 적용하는 것이 유리할 수 있다.
모든 맵들의 해상도가 동일할 필요는 없다는 것을 이해할 것이다. 예를 들어, k-D 트리 맵의 해상도는 종종 깊이 맵에 대한 것보다 낮을 수 있다. 예를 들어, 트리 생성기(105)에 의해 생성될 수 있는 가장 작은 영역이 4 픽셀이라면, k-D 트리 맵의 해상도는 깊이 맵의 해상도의 1/4일 수 있다.
깊이 맵 및 k-D 트리 맵의 해상도는 이미지 소스(103)에 의해 제공되는 이차원 이미지의 해상도와는 상이할 수 있음을 또한 이해할 것이다. 실제로, 깊이 맵 및 k-D 트리 맵은 별개의 이미지로서 인코딩되기 때문에(이에 따라 비디오 스트림은 2개의 이미지 스트림, 즉 이차원 이미지에 상응하는 하나의 이미지 스트림, 및 조합된 깊이 맵과 k-D 트리 맵에 상응하는 하나의 이미지 스트림을 포함할 것임), 인코딩은 이미지와 맵 간의 관계에 어떠한 제한도 부과할 필요가 없다.
몇몇 실시예들에서, k-D 트리는 복수의 값에 의해 표현될 수 있다. 예를 들어, k-D 트리는 정사각형이 아닌 직사각형을 가능하게 할 수 있으며, 이에 따라 각각의 영역은 수평 및 수직 크기에 의해 정의될 수 있다. k-D 트리는 각각의 픽셀에 할당되는 2개의 값에 의해 표현될 수 있으며, 이때 하나는 수평 크기를 나타내고 다른 것은 수직 크기를 나타낸다. 이 2개의 값은 몇몇 실시예들에서 2개의 상이한 데이터 맵에 할당될 수 있는데, 즉 단일 k-D 트리 맵보다는, 이미지 송신기(1201)는 2개의 맵을 생성할 수 있으며, 이때 하나의 맵은 수평 분할을 제공하고 다른 것은 수직 분할을 제공한다. 이어서, 이 2개의 맵은 상이한 채널들 내에 인코딩될 수 있다. 예를 들어, 깊이 맵은 Y 채널에서 제공될 수 있으며, 이때 2개의 k-D 트리 깊이 맵은 각각 U 및 V 채널에서 제공된다.
따라서, 몇몇 실시예들에서, 비디오 표현은 적어도 2개의 컬러 채널을 포함하고, 이미지 송신기(1201)는 하나의 컬러 채널에 k-D 트리에 대한 수직 영역 정보를 그리고 다른 채널에 k-D 트리에 대한 수평 영역 정보를 인코딩한다.
특정 예로서, 이 접근법은 H.264 비디오 인코딩/디코딩 포맷을 사용할 수 있다. 이 포맷은 텍스처 및 깊이가 비디오 스트림 내에 나란히 배치되는 H.264 비디오의 인코딩 및 디코딩을 지원한다. 그러나, 그러한 접근법에서, 비디오 데이터 내의 삼차원 삼각형 메시의 코딩은 실현 가능하지 않다. 원칙적으로 삼각형 메시 데이터를 개별적으로 인코딩하는 것이 가능하지만, 이것은 상당한 어려움 및 전형적으로 비효율적인 코딩을 초래한다. 예를 들어, 비디오/이미지 데이터를 삼각형 메시 데이터와 정확히 동기화하는 것에 대한 필요성으로부터 상당한 문제가 발생한다. 이것은 전술한 k-D 트리의 인코딩에 의해 회피될 수 있다.
따라서, 특정 예로서, 몇몇 실시예들에서, 비디오 스트림에서 깊이가 별개의 컬러 채널들(예를 들어, 색도 채널들)을 사용하여 배치되는 위치에 쿼드트리 Q(i, j) 또는 Q h (i, j) 및 Q v (i, j)가 표현될 수 있다. 이어서, 쿼드트리들은 (H.264 또는 H.265) 비디오 인코딩/디코딩의 (손실 있는) 인코딩 및 디코딩 단계들을 따를 것이다.
비디오 인코딩은 손실이 있을 수 있지만, k-D 트리 정보에 대한 영향은 전형적으로 허용 가능한 또는 중요하지 않은 레벨로 감소될 수 있음에 유의해야 한다. 또한, 데이터 값들 중 많은 것이 동일하기 때문에, 매우 효과적인 인코딩이 달성될 수 있다.
에러를 유발하는 인코딩 및 디코딩의 위험을 줄이기 위해, 몇몇 실시예들에서는 가능한 한 큰 거리를 갖는 가능한 데이터 값들의 서브세트를 사용하고자 하는 도출된 표현을 인코딩하는 것이 유익할 수 있다.
예를 들어, 매핑 L(α)은 k-D 트리 맵에 대한 데이터를 생성하기 위해 적용될 수 있다. 예를 들어, 값 α 는 개별 영역의 정사각형 크기를 나타내는 데 사용되는 2의 거듭제곱을 나타낼 수 있다. 예를 들어, 다음의 공식:
Figure pct00003
을 사용하여, 쿼드트리를 32의 스텝들에서 0(영역 크기 256)에서 255(영역 크기 1)까지의 총 8 비트 범위를 통해 32 레벨의 일정한 스텝으로 변하는 값들로 변환할 수 있다.
몇몇 실시예들에서, k-D 트리는 또한 삼차원 이미지의 인코딩을 위해, 그리고 특히 삼차원 이미지의 표현의 일부인 하나 이상의 이차원 이미지의 인코딩을 위해 사용될 수 있다. 따라서, 삼각형 메시가 생성될 수 있도록 깊이 맵을 분할하는 것뿐만 아니라 이미지/비디오 인코딩 둘 모두를 위해 동일한 k-D 트리가 사용될 수 있다.
실제로, 많은 실시예에서, 이미지를 서브코딩 블록들로 분할하는 이미지 또는 비디오 인코딩이 수행될 수 있다. 실제로, 종래의 비디오 인코딩 포맷들은 이미지들을 미리 결정되고 고정된 크기의 이미지 블록들(예를 들어, 16x16 픽셀)로 분할하였지만, 이미지들의 개별 코딩 블록들로의 동적 분할이 이용되는 더 새로운 접근법들이 개발되었다. 몇몇 그러한 포맷들에서, k-D 트리는 비교적 유사하며 이에 따라 효과적으로 코딩될 수 있는 픽셀 블록들을 포함하는 코딩 블록들을 생성하는 데 사용될 수 있다.
예를 들어, H.265로 알려진 비디오 인코딩 접근법은 쿼드트리를 생성하는 단계를 포함하며, 여기서 결과적인 영역들은 이어서 후속 인코딩되는 코딩 블록들로서 사용된다. 이 쿼드트리는 코드 블록 트리로 알려져 있으며, 인코딩된 이미지 데이터와 함께 이미지 스트림 내에 인코딩된다. 따라서, 수신기/디코더는 수신된 데이터 스트림으로부터 코드 블록 트리를 추출할 수 있고, 이어서 이것을 디코더에 입력할 수 있고, 디코더는 이것을 수신된 이미지/비디오 데이터를 디코딩하는 데 사용한다.
몇몇 실시예들에서, 그러한 이미지 또는 비디오 인코딩/디코딩 k-D 트리는 또한 삼각형 메시를 생성하기 위한 k-D 트리로서 사용될 수 있다.
따라서, 디코더에서, 코드 블록 트리가 추출되어, 수신된 이미지 데이터를 디코딩하는 데 사용될 수 있다. 또한, 코드 블록 트리는 삼각형 메시 생성기(107)에 공급될 수 있으며, 삼각형 메시 생성기는 이어서 이것을 전술한 바와 같이 삼각형 메시를 생성하는 데 사용한다.
이 접근법은 이에 따라 2개의 매우 다른 것을 위해, 즉 비디오 인코딩/디코딩을 위해 그리고 삼각형 메시 생성을 위해 동일한 k-D 트리를 이용할 수 있다.
이 접근법은 비디오 데이터의 매우 효율적인 배포를 제공할 수 있다. 실제로, 이것은 관련 데이터가 이미 포함되어 있기 때문에 어떠한 데이터 오버헤드도 도입되도록 요구함이 없이 디코더가 신뢰할 수 있는 삼각형 메시를 생성하게 할 수 있다.
몇몇 실시예들에서, 비디오 신호는 포함된 코드 트리 블록이 삼각형 메시의 생성에 적합한지 여부를 나타내는 플래그를 추가로 포함할 수 있다. 따라서, 신호는 코드 트리 블록이 이러한 목적으로 생성되었음을 나타내기 위해 삽입된 플래그/메시지를 포함할 수 있다. 이것은 수신기가 코딩 트리 블록(예컨대, https://sonnati.wordpress.com/2014/06/20/h265-part-i-technical-overview 참조)을 사용할지 또는 (국지적으로 k-D 트리를 생성하는 것과 같은) 디폴트/폴백 접근법을 사용할지를 결정하게 할 수 있다.
따라서, 몇몇 실시예들에서, 이미지 송신기(1201)는 코드 트리 블록을 사용하여(예를 들어, H.265를 사용하여) 이미지 및 깊이를 인코딩하도록 배열될 수 있다. 수신기는 이 코드 트리 블록을 추출하고 이를 사용하여 삼각형 메시를 생성할 수 있다.
더 일반적인 직사각형 분할의 경우, 맵은 압축-압축 해제를 완화하기 위해 가능한 한 많이 분리된 레벨들에 매핑되는 제한된 수의 가능한 크기를 사용하도록 생성될 수 있다. 몇몇 실시예들에서, 인코딩은 대신에 무손실 인코딩일 수 있다.
위의 설명은 명료함을 위해 상이한 기능 회로들, 유닛들 및 프로세서들을 참조하여 본 발명의 실시예들을 설명하였음을 알 것이다. 그러나, 본 발명으로부터 벗어남이 없이 상이한 기능 회로들, 유닛들 또는 프로세서들 간의 기능의 임의의 적합한 분산이 사용될 수 있음이 명백할 것이다. 예를 들어, 별개의 프로세서들 또는 제어기들에 의해 수행되도록 예시된 기능이 동일한 프로세서 또는 제어기에 의해 수행될 수 있다. 따라서, 특정 기능 유닛들 또는 회로들에 대한 참조들은 오로지 엄격한 논리적 또는 물리적 구조 또는 조직을 나타내기보다는 설명된 기능을 제공하기 위한 적합한 수단에 대한 참조들로 간주되어야 한다.
본 발명은 하드웨어, 소프트웨어, 펌웨어 또는 이들의 임의의 조합을 포함한 임의의 적합한 형태로 구현될 수 있다. 본 발명은 선택적으로 하나 이상의 데이터 프로세서 및/또는 디지털 신호 프로세서 상에서 실행되는 컴퓨터 소프트웨어로서 적어도 부분적으로 구현될 수 있다. 본 발명의 실시예의 요소들 및 컴포넌트들은 임의의 적합한 방식으로 물리적으로, 기능적으로 그리고 논리적으로 구현될 수 있다. 실제로, 기능은 단일 유닛에서, 복수의 유닛에서, 또는 다른 기능 유닛들의 일부로서 구현될 수 있다. 그렇기 때문에, 본 발명은 단일 유닛에서 구현될 수 있거나, 상이한 유닛들, 회로들 및 프로세서들 간에 물리적으로 그리고 기능적으로 분산될 수 있다.
본 발명이 몇몇 실시예들과 관련하여 설명되었지만, 본 명세서에 기재된 특정 형태로 제한되도록 의도되지 않는다. 오히려, 본 발명의 범주는 첨부된 청구범위에 의해서만 제한된다. 또한, 소정 특징이 특정 실시예들과 관련하여 설명되는 것처럼 보일 수 있지만, 당업자는 설명된 실시예들의 다양한 특징들이 본 발명에 따라 조합될 수 있음을 인식할 것이다. 청구범위에서, 용어 '포함하는'은 다른 요소들 또는 단계들의 존재를 배제하지 않는다.
또한, 개별적으로 열거되지만, 복수의 수단, 요소, 회로 또는 방법 단계는 예를 들어 단일 회로, 유닛 또는 프로세서에 의해 구현될 수 있다. 또한, 개별 특징들이 상이한 청구항들에 포함될 수 있지만, 이들은 아마도 유리하게 조합될 수 있으며, 상이한 청구항들에의 포함은 특징들의 조합이 실현 가능하지 않고/않거나 유리하지 않다는 것을 암시하지는 않는다. 또한, 하나의 카테고리의 청구항들에의 소정 특징의 포함은 이 카테고리로의 제한을 암시하는 것이 아니라, 오히려 그 특징이 적절한 바에 따라 다른 청구항 카테고리들에 동등하게 적용될 수 있음을 나타낸다. 또한, 청구항들에서의 특징들의 순서는 특징들이 작용되어야 하는 임의의 특정 순서를 암시하지는 않으며, 특히 방법 청구항에서의 개별 단계들의 순서는 단계들이 이 순서대로 수행되어야 함을 암시하지는 않는다. 오히려, 단계들은 임의의 적합한 순서로 수행될 수 있다. 또한, 단수형 언급은 복수를 배제하지 않는다. 따라서, "부정관사(a, an)", "제1", "제2" 등에 대한 언급은 복수를 배제하지 않는다. 청구범위에서의 참조 부호들은 단지 명료화 예로서 제공되며, 어떤 방식으로도 청구범위의 범주를 제한하는 것으로 해석되지 않아야 한다.

Claims (15)

  1. 삼차원 이미지에 대한 삼각형 메시(triangle mesh)를 생성하기 위한 장치로서,
    - 깊이 맵(depth map)을 제공하기 위한 깊이 맵 소스(101);
    - 상기 깊이 맵에 대한 k-D 트리(tree)를 생성하기 위한 트리 생성기(105)로서, 상기 k-D 트리는 분할되지 않은 영역들에 대한 깊이 변화 척도가 임계치 아래인 요건을 충족시키는 상기 깊이 맵의 영역들의 계층적 배열을 표현하는, 상기 트리 생성기(105);
    - 상기 k-D 트리의 각각의 분할되지 않은 영역 내에 내부 정점(vertex)을 배치하고, 이웃하는 분할되지 않은 영역들의 내부 정점들 사이의 라인들로서 상기 삼각형 메시의 삼각형들의 변(side)들을 형성함으로써 상기 삼각형 메시를 생성하도록 배열된 삼각형 메시 생성기(107)
    를 포함하는, 삼각형 메시 생성 장치.
  2. 제1항에 있어서, 영역에 대한 상기 내부 정점은 상기 영역 내에 중심에 배치되는, 삼각형 메시 생성 장치.
  3. 제1항에 있어서, 상기 삼각형 메시 생성기(107)는 3개의 영역들 사이의 각각의 접합부에 대한 삼각형을 형성하도록 배열되고, 상기 삼각형은 상기 3개의 영역들의 상기 내부 정점들을 연결하는 변들을 갖는, 삼각형 메시 생성 장치.
  4. 제1항에 있어서, 상기 삼각형 메시 생성기(107)는 4개의 영역들 사이의 각각의 접합부에 대한 2개의 삼각형들을 형성하도록 배열되고, 상기 2개의 삼각형들은 상기 4개의 영역들의 2개의 대각선으로 대향하는 영역들의 정점들을 연결하는 공통 변을 가지며, 하나의 삼각형은 상기 2개의 대각선으로 대향하는 영역들의 상기 정점들을 상기 4개의 영역들 중 제3 영역의 내부 정점에 연결하는 변들을 가짐으로써 형성되고, 하나의 삼각형은 상기 2개의 대각선으로 대향하는 영역들의 상기 내부 정점들을 상기 4개의 영역들 중 제4 영역의 내부 정점에 연결하는 변들을 가짐으로써 형성되는, 삼각형 메시 생성 장치.
  5. 제1항에 있어서, 상기 k-D 트리는 쿼드트리(quadtree)인, 삼각형 메시 생성 장치.
  6. 제1항에 있어서, 상기 트리 생성기(105)는 상기 삼차원 이미지의 휘도(luminance) 또는 색도(chroma) 특성에 응답하여 영역들을 분할하도록 추가로 배열되는, 삼각형 메시 생성 장치.
  7. 제1항에 있어서, 상기 트리 생성기(105)는 정사각형 영역들이도록 제약되지 않는 직사각형 영역들을 갖도록 상기 k-D 트리를 생성하도록 배열되는, 삼각형 메시 생성 장치.
  8. 제1항에 있어서, 상기 트리 생성기(105)는 분할 후에 3개의 영역들에 의해 형성되는 각각의 접합부가 상기 접합부를 포함하는 제약에 따라 영역을 분할하도록 배열되는, 삼각형 메시 생성 장치.
  9. 제1항에 있어서, 상기 트리 생성기(105)는 송신기(1201)의 일부이고, 상기 삼각형 메시 생성기(107)는 수신기(1203)의 일부이며, 상기 송신기(1201)는, 상기 삼차원 이미지를 표현하는 이미지 데이터 스트림을 생성하고, 상기 이미지 데이터 스트림 내에 상기 k-D 트리를 인코딩하도록 배열되고, 상기 수신기(1203)는, 상기 이미지 데이터 스트림으로부터 상기 k-D 트리를 추출하고, 상기 k-D 트리를 상기 삼각형 메시 생성기(107)에 제공하도록 배열되는, 삼각형 메시 생성 장치.
  10. 제9항에 있어서, 상기 송신기(1201)는, 상기 k-D 트리에 이미지 인코딩을 적용하여 인코딩된 k-D 트리 데이터를 생성하고, 상기 인코딩된 k-D 트리 데이터를 상기 이미지 데이터 스트림 내에 포함시키도록 배열되는, 삼각형 메시 생성 장치.
  11. 제1항에 있어서, 상기 장치는 상기 삼차원 이미지를 인코딩하기 위한 이미지 인코더를 추가로 포함하며, 상기 이미지 인코더는 상기 k-D 트리를 사용하여 상기 이미지를 인코딩하도록 배열되는, 삼각형 메시 생성 장치.
  12. 삼차원 이미지에 대한 삼각형 메시를 생성하는 방법으로서,
    - 깊이 맵을 제공하는 단계;
    - 상기 깊이 맵에 대한 k-D 트리를 생성하는 단계로서, 상기 k-D 트리는 분할되지 않은 영역들에 대한 깊이 변화 척도가 임계치 아래인 요건을 충족시키는 상기 깊이 맵의 영역들의 계층적 배열을 표현하는, 상기 k-D 트리 생성 단계;
    - 상기 k-D 트리의 각각의 분할되지 않은 영역 내에 내부 정점을 배치하고, 이웃하는 분할되지 않은 영역들의 내부 정점들 사이의 라인들로서 상기 삼각형 메시의 삼각형들의 변들을 형성함으로써 상기 삼각형 메시를 생성하는 단계
    를 포함하는, 삼각형 메시 생성 방법.
  13. 컴퓨터 프로그램 제품으로서, 상기 프로그램이 컴퓨터 상에서 실행될 때 제12항의 모든 단계들을 수행하도록 구성된 컴퓨터 프로그램 코드 수단을 포함하는, 컴퓨터 프로그램 제품.
  14. 삼각형 메시를 생성하기 위한 장치로서,
    - 삼차원 이미지의 표현을 제공하는 이미지 데이터 및 상기 삼차원 이미지의 깊이 맵에 대한 k-D 트리를 포함하는 비디오 신호를 수신하기 위한 수신기로서, 상기 k-D 트리는 분할되지 않은 영역들에 대한 깊이 변화 척도가 임계치 아래인 요건을 충족시키는 상기 깊이 맵의 영역들의 계층적 배열을 표현하는, 상기 수신기; 및
    - 상기 k-D 트리의 각각의 영역 내에 내부 정점을 배치하고, 이웃하는 영역들의 내부 정점들 사이의 라인들로서 상기 삼각형 메시의 삼각형들의 변들을 형성함으로써 상기 삼각형 메시를 생성하도록 배열된 삼각형 메시 생성기(107)
    를 포함하는, 삼각형 메시 생성 장치.
  15. 제18항에 있어서, 상기 장치는 상기 이미지 데이터로부터 상기 삼차원 이미지를 디코딩하기 위한 디코더를 추가로 포함하며, 상기 디코딩은 상기 k-D 트리에 응답하여 이루어지는, 삼각형 메시 생성 장치.
KR1020187011249A 2015-09-23 2016-09-22 삼차원 이미지에 대한 삼각형 메시의 생성 KR102659114B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP15186439 2015-09-23
EP15186439.4 2015-09-23
PCT/EP2016/072485 WO2017050858A1 (en) 2015-09-23 2016-09-22 Generation of triangle mesh for a three dimensional image

Publications (2)

Publication Number Publication Date
KR20180058762A true KR20180058762A (ko) 2018-06-01
KR102659114B1 KR102659114B1 (ko) 2024-04-23

Family

ID=54251304

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187011249A KR102659114B1 (ko) 2015-09-23 2016-09-22 삼차원 이미지에 대한 삼각형 메시의 생성

Country Status (9)

Country Link
US (1) US10546421B2 (ko)
EP (1) EP3353748B1 (ko)
JP (1) JP6927980B2 (ko)
KR (1) KR102659114B1 (ko)
CN (1) CN108027983B (ko)
CA (1) CA2999193A1 (ko)
RU (1) RU2018114688A (ko)
TW (1) TWI723048B (ko)
WO (1) WO2017050858A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021118200A1 (ko) * 2019-12-10 2021-06-17 한국전자기술연구원 3d 메시 분할 기반 3d 모델 압축 및 압축해제 시스템 및 방법

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112016007098T5 (de) * 2016-07-26 2019-04-18 Hewlett-Packard Development Company, L.P. Indexierung von voxeln für das 3d-drucken
US10699466B2 (en) 2016-12-06 2020-06-30 Koninklijke Philips N.V. Apparatus and method for generating a light intensity image
KR20180082330A (ko) 2017-01-09 2018-07-18 에스케이텔레콤 주식회사 영상 부호화 또는 복호화하기 위한 장치 및 방법
WO2019068259A1 (en) * 2017-10-02 2019-04-11 Huawei Technologies Co., Ltd. POINT CLOUD CODING
CN109598790B (zh) * 2019-02-02 2022-12-09 珠海金山数字网络科技有限公司 一种三维模型绘制方法及装置、一种计算设备及存储介质
EP3703013A1 (en) * 2019-03-01 2020-09-02 Koninklijke Philips N.V. Apparatus and method of generating an image signal
US11488359B2 (en) 2019-08-28 2022-11-01 Snap Inc. Providing 3D data for messages in a messaging system
US11457196B2 (en) 2019-08-28 2022-09-27 Snap Inc. Effects for 3D data in a messaging system
US11189104B2 (en) 2019-08-28 2021-11-30 Snap Inc. Generating 3D data in a messaging system
US11410401B2 (en) 2019-08-28 2022-08-09 Snap Inc. Beautification techniques for 3D data in a messaging system
US20220164994A1 (en) * 2020-11-24 2022-05-26 Samsung Electronics Co., Ltd. Overlapped patches for mesh coding for video based point cloud compression
CN113034385B (zh) * 2021-03-01 2023-03-28 嘉兴丰鸟科技有限公司 一种基于分块的网格生成及渲染方法
TWI807449B (zh) 2021-10-15 2023-07-01 國立臺灣科技大學 多視角立體影像產生方法及系統
US20230306647A1 (en) * 2022-03-25 2023-09-28 Tencent America LLC Geometry filtering for mesh compression
CN114567775B (zh) * 2022-04-29 2022-09-09 中国科学技术大学 图像划分方法和装置
TWI812548B (zh) * 2022-11-22 2023-08-11 宏碁股份有限公司 生成並排三維影像的方法及電腦裝置
TWI817875B (zh) * 2022-12-23 2023-10-01 宏碁股份有限公司 基於多執行緒產生三維影像的電子裝置和方法

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5345490A (en) 1991-06-28 1994-09-06 General Electric Company Method and apparatus for converting computed tomography (CT) data into finite element models
US5448686A (en) 1992-01-02 1995-09-05 International Business Machines Corporation Multi-resolution graphic representation employing at least one simplified model for interactive visualization applications
FR2794881B1 (fr) * 1999-06-10 2001-08-17 France Telecom Procede de codage d'un maillage par conquete sur les aretes, privilegiant un sommet complet en que pivot, et procede de decodage correspondant
CA2373707A1 (en) * 2001-02-28 2002-08-28 Paul Besl Method and system for processing, compressing, streaming and interactive rendering of 3d color image data
US6943789B2 (en) * 2001-03-16 2005-09-13 Mitsubishi Electric Research Labs, Inc Conversion of adaptively sampled distance fields to triangles
KR100450823B1 (ko) * 2001-11-27 2004-10-01 삼성전자주식회사 깊이 이미지 기반 3차원 물체의 표현을 위한 노드 구조
CN1261912C (zh) * 2001-11-27 2006-06-28 三星电子株式会社 基于深度图像表示三维物体的装置和方法
CN1910625A (zh) * 2004-01-13 2007-02-07 皇家飞利浦电子股份有限公司 具有内部离散元件的网络模型
US7586489B2 (en) 2005-08-01 2009-09-08 Nvidia Corporation Method of generating surface defined by boundary of three-dimensional point cloud
WO2007023427A2 (en) * 2005-08-22 2007-03-01 Koninklijke Philips Electronics N.V. Triangulation method of a surface of a physical object
CN101390129A (zh) * 2006-02-28 2009-03-18 仁爱米拉索莱有限公司 用于分析对象聚群的方法和设备
EP2319248A1 (en) * 2008-08-26 2011-05-11 Koninklijke Philips Electronics N.V. Method and system for encoding a 3d video signal, encoder for encoding a 3-d video signal, encoded 3d video signal, method and system for decoding a 3d video signal, decoder for decoding a 3d video signal
US8577085B2 (en) * 2009-01-30 2013-11-05 Microsoft Corporation Visual target tracking
CN101650836B (zh) * 2009-09-10 2011-03-30 北京农业信息技术研究中心 三维植物器官几何曲面自适应网格化方法及系统
KR101637624B1 (ko) * 2009-10-15 2016-07-07 톰슨 라이센싱 메시 모델을 인코딩하는 방법 및 장치, 인코딩된 메시 모델, 그리고 메시 모델을 디코딩하는 방법 및 장치
CN101877022B (zh) * 2010-05-21 2012-06-20 西安电子科技大学 基于三角矢量基函数矩量法的载体天线结构网格划分方法
US8976168B2 (en) 2011-11-02 2015-03-10 Microsoft Technology Licensing, Llc Mesh generation from depth images
WO2013117001A1 (en) * 2012-02-09 2013-08-15 Thomson Licensing Efficient compression of 3d models based on octree decomposition
CN102867331A (zh) * 2012-08-31 2013-01-09 电子科技大学 面向gpu的大规模地形快速绘制方法
EP2983369A4 (en) * 2013-04-23 2016-10-26 Samsung Electronics Co Ltd A MULTI-POINT VIEW VIDEO ENCODING METHOD USING A POINT OF SIGHT SYNTHESIS PREDICTION AND APPARATUS THEREFOR AND MULTI-POINT VIEW POINT VIDEO DECODING METHOD AND APPARATUS THEREOF
CN103489222B (zh) * 2013-09-06 2016-06-22 电子科技大学 三维图像中的目标体表面重构法
EP3092806A4 (en) * 2014-01-07 2017-08-23 Nokia Technologies Oy Method and apparatus for video coding and decoding
US20150264404A1 (en) * 2014-03-17 2015-09-17 Nokia Technologies Oy Method and apparatus for video coding and decoding
CN104036532B (zh) * 2014-05-29 2017-03-15 浙江工业大学 基于三维到二维服装图案无缝映射的服装制作方法
CN104077804B (zh) * 2014-06-09 2017-03-01 广州嘉崎智能科技有限公司 一种基于多帧视频图像构建三维人脸模型的方法
CN104915986B (zh) * 2015-06-26 2018-04-17 北京航空航天大学 一种实体三维模型自动建模方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021118200A1 (ko) * 2019-12-10 2021-06-17 한국전자기술연구원 3d 메시 분할 기반 3d 모델 압축 및 압축해제 시스템 및 방법

Also Published As

Publication number Publication date
CA2999193A1 (en) 2017-03-30
WO2017050858A1 (en) 2017-03-30
US10546421B2 (en) 2020-01-28
EP3353748B1 (en) 2022-08-03
JP2018534705A (ja) 2018-11-22
US20190057545A1 (en) 2019-02-21
CN108027983A (zh) 2018-05-11
EP3353748A1 (en) 2018-08-01
RU2018114688A (ru) 2019-10-23
JP6927980B2 (ja) 2021-09-01
CN108027983B (zh) 2022-04-19
KR102659114B1 (ko) 2024-04-23
TW201721587A (zh) 2017-06-16
RU2018114688A3 (ko) 2020-03-16
TWI723048B (zh) 2021-04-01

Similar Documents

Publication Publication Date Title
KR102659114B1 (ko) 삼차원 이미지에 대한 삼각형 메시의 생성
US11089330B2 (en) Method for sub-PU motion information inheritance in 3D video coding
EP3467786A1 (en) A method and apparatus for encoding a point cloud representing three-dimensional objects
KR102609776B1 (ko) 포인트 클라우드 데이터 처리 방법 및 장치
KR102634079B1 (ko) 포인트 클라우드 데이터 처리 장치 및 방법
US20120026289A1 (en) Video processing device, video processing method, and memory product
KR102538939B1 (ko) 텍스처 맵들 및 메시들에 기초한 3d 이미지 정보의 처리
KR20110058844A (ko) 3d 비디오 신호를 인코딩하기 위한 방법 및 시스템, 3―d 비디오 신호, 인코딩된 3d 비디오 신호를 인코딩하기 위한 인코더, 3d 비디오 신호를 디코딩하기 위한 방법 및 시스템, 3d 비디오 신호를 디코딩하기 위한 디코더
EP3652705A1 (en) Method and device for encoding a point cloud
JP7448660B2 (ja) ポイントクラウドデータ送信装置、ポイントクラウドデータ送信方法、ポイントクラウドデータ受信装置及びポイントクラウドデータ受信方法
JP2011523743A (ja) 深さ情報を有するビデオ信号
WO2019011917A1 (en) METHOD AND DEVICE FOR ENCODING A POINT CLOUD
EP3745357A1 (en) A method and apparatus for decoding three-dimensional scenes
TWI684359B (zh) 用於沉浸式視頻編解碼的信令語法的方法及裝置
US11240512B2 (en) Intra-prediction for video coding using perspective information
WO2017202079A1 (zh) 一种立体图像制作方法和设备
US20210195240A1 (en) Omnidirectional video slice segmentation
WO2019079268A1 (en) OMNIDIRECTIONAL STEREO FRAME COMPRESSION
US11823323B2 (en) Apparatus and method of generating an image signal
RU2767775C1 (ru) Обработка облака точек
US20230239451A1 (en) A method and apparatus for encoding and decoding volumetric content in and from a data stream
KR20220067517A (ko) 다시점 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
KR20220071126A (ko) 다시점 영상 기반 플렌옵틱 포인트 클라우드 생성 방법 및 장치
TWI508523B (zh) 三維影像處理方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant