KR102527255B1 - 3차원 메쉬들의 직교-투사-기반 텍스처 아틀라스 패킹 - Google Patents

3차원 메쉬들의 직교-투사-기반 텍스처 아틀라스 패킹 Download PDF

Info

Publication number
KR102527255B1
KR102527255B1 KR1020187024788A KR20187024788A KR102527255B1 KR 102527255 B1 KR102527255 B1 KR 102527255B1 KR 1020187024788 A KR1020187024788 A KR 1020187024788A KR 20187024788 A KR20187024788 A KR 20187024788A KR 102527255 B1 KR102527255 B1 KR 102527255B1
Authority
KR
South Korea
Prior art keywords
projected
instructions
sub
computer processor
connected component
Prior art date
Application number
KR1020187024788A
Other languages
English (en)
Other versions
KR20180107192A (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 KR20180107192A publication Critical patent/KR20180107192A/ko
Application granted granted Critical
Publication of KR102527255B1 publication Critical patent/KR102527255B1/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/20Finite element generation, e.g. wire-frame surface description, tesselation
    • G06T17/205Re-meshing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/12Bounding box

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Image Generation (AREA)

Abstract

아틀라스 패킹 방법은 하나 또는 그 초과의 객체들의 표면들을 나타내는 복수의 삼각형들을 포함하는 3차원(3D) 메쉬를 수신하는 단계; 각각의 개별 삼각형에 대해, 개별 삼각형의 법선을 결정하는 단계, 및 개별 삼각형을, x-, y- 및 z- 방향들의 포지티브 및 네거티브를 따르는 6개의 방향들 중 하나의 방향으로 분류하는 단계; 각각의 개별 방향의 삼각형들을 개별 방향에 직교하는 하나 또는 그 초과의 층들로 분류하는 단계; 각각의 개별 층에 대해, 하나 또는 그 초과의 연결된 컴포넌트들을 식별하는 단계; 대응하는 투사된 2차원(2D) 연결된 컴포넌트를 획득하기 위해 각각의 개별 연결된 컴포넌트를 개별 방향에 직교하는 평면 상에 투사하는 단계; 투사된 2D 연결된 컴포넌트를 하나 또는 그 초과의 서브-컴포넌트들로 커팅하는 단계; 모든 서브-컴포넌트들의 경계 박스들을 하나 또는 그 초과의 아틀라스들로 패킹하는 단계; 및 각각의 서브-컴포넌트의 각각의 개별 삼각형에 대해, 3D 메쉬의 대응하는 삼각형의 텍스처를 개별 삼각형에 카피하는 단계를 포함한다.

Description

3차원 메쉬들의 직교-투사-기반 텍스처 아틀라스 패킹
[0001] 본 출원은 2016년 1월 29일에 출원된 미국 가특허 출원 번호 제 62/289,059호를 우선권으로 주장하고, 이 가출원의 내용들은 그 전체가 인용에 의해 포함된다.
[0002] 컴퓨터 그래픽들에서, 텍스처 아틀라스(texture atlas)(또한 타일 맵(tile map), 타일 엔진 또는 스프라이트 시트(sprite sheet)로 불림)는 서브-이미지들의 콜렉션(collection) 또는 "아틀라스"를 포함하는 큰 이미지이고, 서브-이미지들 각각은 3차원(3D) 모델의 일부 부분에 대한 텍스처 맵이다. 3D 메쉬의 삼각형 텍스처들을 직사각형 텍스처 아틀라스들로 효율적으로 패킹(pack)하는 것이 바람직할 수 있다. 효율적인 패킹 방법은 아틀라스 이미지들의 사이즈를 크게 감소시킬 수 있고, 따라서 메쉬 저장뿐 아니라 메쉬 텍스처 렌더링의 성능을 개선시킬 수 있다.
[0003] 본 발명의 실시예에 따라, 아틀라스 패킹의 방법은 3차원(3D) 메쉬를 수신하는 단계를 포함한다. 3D 메쉬는 하나 또는 그 초과의 객체들의 표면들을 나타내는 복수의 삼각형들을 포함한다. 각각의 삼각형은 개별 텍스처를 가진다. 방법은, 복수의 삼각형들의 각각의 개별 삼각형에 대해, 개별 삼각형의 법선(normal)을 결정하는 단계, 및 개별 삼각형을 법선의 주된 컴포넌트에 따라 x-, y- 및 z-방향들의 포지티브 및 네거티브를 따르는 6개의 방향들 중 하나의 방향으로 분류하는 단계를 더 포함한다. 방법은 6개의 방향들의 각각의 개별 방향의 삼각형들을 개별 방향에 직교하는 하나 또는 그 초과의 층들로 분류하는 단계를 더 포함한다. 방법은, 개별 방향의 각각의 개별 층에 대해, 하나 또는 그 초과의 연결된 컴포넌트들을 식별하는 단계 ― 각각의 연결된 컴포넌트는 복수의 연결 삼각형들을 포함함 ―; 대응하는 투사된 2차원(2D) 연결된 컴포넌트를 획득하기 위해, 각각의 개별 연결된 컴포넌트를 개별 방향에 직교하는 평면 상에 투사하는 단계; 및 투사된 2D 연결된 컴포넌트를 하나 또는 그 초과의 서브-컴포넌트들로 커팅(cutting)하는 단계를 더 포함한다. 각각의 서브-컴포넌트는 개별 직사각형 경계 박스(bounding box) 내에 포함된다. 방법은 모든 방향들에서의 모든 층들의 모든 투사된 2D 연결된 컴포넌트들의 모든 서브-컴포넌트들의 경계 박스들을 하나 또는 그 초과의 아틀라스들로 패킹하는 단계; 및 각각의 아틀라스에서 각각의 서브-컴포넌트의 각각의 개별 삼각형에 대해, 3D 메쉬의 대응하는 삼각형의 텍스처를 개별 삼각형에 카피하는 단계를 더 포함한다.
[0004] 도 1은 본 발명의 실시예에 따라 삼각형 3D 메쉬를 텍스처 아틀라스들로 패킹하는 방법을 예시하는 간략화된 흐름도를 도시한다.
[0005] 도 2는 본 발명의 실시예에 따라 3차원(3D) 메쉬로 메쉬 분할을 수행하는 방법을 예시하는 간략화된 흐름도를 도시한다.
[0006] 도 3은 본 발명의 실시예에 따른 예시적인 투사된 2D 연결된 컴포넌트를 도시한다.
[0007] 도 4는 본 발명의 실시예에 따른, 도 3에 예시된 투사된 2D 연결된 컴포넌트를 커팅함으로써 생성된 일부 예시적인 서브-컴포넌트들을 도시한다.
[0008] 도 5는 본 발명의 실시예에 따른, 투사된 2D 연결된 컴포넌트를 커팅하는 방법을 예시하는 간략화된 흐름도를 도시한다.
[0009] 도 6은 본 발명의 실시예에 따른, 컴포넌트들을 아틀라스들로 패킹하는 방법을 예시하는 간략화된 흐름도를 도시한다.
[0010] 도 7 및 도 8은 본 발명의 실시예에 따른, 직사각형-형상 컴포넌트들이 효율적으로 패킹되는 일부 예시적인 아틀라스들을 도시한다.
[0011] 도 9는 본 발명의 실시예에 따른 텍스처 매핑(mapping) 방법을 예시하는 간략화된 흐름도를 도시한다.
[0012] 도 10 및 도 11은, 컴포넌트들이 텍스처링된 이후 도 7 및 도 8에 예시된 아틀라스들을 각각 도시한다.
[0013] 도 12a는, 일부 픽셀들이 컬러화되고 일부 픽셀들이 다크(dark)한 아틀라스의 일부를 예시한다.
[0014] 도 12b는 본 발명의 실시예에 따른, 블록-충진(filling) 이후 도 12a에 예시된 아틀라스의 부분을 도시한다.
[0015] 도 13은 본 발명의 실시예에 따른, 텍스처링된 아틀라스를 블록 충진하는 방법을 예시하는 간략화된 흐름도를 도시한다.
[0016] 도 14a 및 도 14b는 본 발명의 실시예에 따른, 블록-충진 이전 및 이후의 아틀라스 이미지의 일부를 각각 도시한다.
[0017] 도 15는 본 발명의 실시예에 따른 텍스처링된 아틀라스의 블록-레벨 충진 방법을 예시하는 간략화된 흐름도를 도시한다.
[0018] 도 16a 및 도 16b는 컬러 이미지들로부터 텍스처링된 컴포넌트들을 직접 마스킹함으로써 생성된 일부 예시적인 아틀라스 이미지들을 도시한다.
[0019] 도 17은 본 발명의 실시예에 따른 텍스처 아틀라스 패킹 방법을 예시하는 간략화된 흐름도를 도시한다.
[0020] 본 발명은 일반적으로 텍스처 아틀라스 패킹 방법들에 관한 것이다. 보다 구체적으로, 본 발명은 3차원(3D) 메쉬들의 직교-투사-기반 텍스처 아틀라스 패킹 방법들에 관한 것이다. 일부 실시예들에 따라, 3D 메쉬들은 다각형 메쉬를 포함할 수 있다. 다각형 메쉬는 3D 컴퓨터 그래픽들 및 솔리드(solid) 모델링에서 다면체 객체의 형상을 정의하는 정점들, 에지들 및 면들의 콜렉션(collection)이다. 면들은 보통 삼각형들(삼각형 메쉬), 사변형들 또는 다른 볼록 다각형들을 포함한다. 면들은 또한 오목 다각형들, 홀들을 가진 다각형들 및 나선형 형상들을 포함할 수 있다.
[0021] 단지 예로서, 본 발명은 직교-형상 특성들을 가진 객체들의 3D 메쉬들의 효율적인 아틀라스 패킹을 생성하는 데 적용될 수 있다. 예컨대, 인공 구조들, 이를테면 집들, 빌딩들 및 경기장들은 보통 규칙적인 직사각형 형상들을 가진다. 그런 구조들의 경우, 메쉬들의 주 컴포넌트들은 보통 직교적으로 정렬된다. 예컨대, 크고 편평한 표면들, 이를테면 벽들, 천장들 또는 바닥들은 보통 서로 평행하거나 수직이다.
[0022] 도 1은 본 발명의 실시예에 따라 삼각형 3D 메쉬를 텍스처 아틀라스들로 패킹하는 방법(100)을 예시하는 간략화된 흐름도를 도시한다. 방법(100)은 다음 주요 단계들, 즉 3D 메쉬를 수신(110); 메쉬 분할(120); 삼각형 투사(130); 컴포넌트 커팅(140); 컴포넌트 패킹(150); 텍스처 매핑(160); 및 블록 충진(170)을 포함할 수 있다. 이들 단계들 중 일부는 선택적일 수 있다. 위에서 논의된 바와 같이, 수신된 3D 메쉬는 삼각형들(삼각형 메쉬), 사변형들 또는 다른 볼록 다각형들에 기반하는 컴포넌트들을 포함할 수 있다. 당업자에게 명백할 바와 같이, 수신된 3D 메쉬는 3차원 객체 또는 구조를 나타낸다. 부가적으로, 삼각형 메쉬들이 본원에 논의되지만, 본 발명의 실시예들은 삼각형 메쉬들로 제한되지 않는다. 방법(100)은 프로세서 및 명령들을 저장하는 비-일시적 컴퓨터-판독가능 저장 매체를 포함하는 컴퓨터 시스템에 의해 구현될 수 있다. 단계들(120, 130, 140, 150, 160 및 170) 각각의 세부사항들은 아래에서 더 상세히 설명된다.
A. 메쉬 분할
[0023] 도 2는 본 발명의 실시예에 따른, 메쉬 분할을 수행하는 방법(200)을 예시하는 간략화된 흐름도를 도시한다. 방법(200)은, 202에서, 3D 메쉬에서 하나 또는 그 초과의 주 표면들, 이를테면 벽들, 천장들 및 바닥들을 식별하는 단계를 포함할 수 있다. 방법(200)은, 204에서, 주 표면들의 각각이 3개의 직교 주 축들, 즉 x-, y- 및 z-축들 중 하나의 축과 정렬되도록 3D 메쉬에 직교 회전을 적용하는 단계를 더 포함할 수 있다. 이것은 각각의 주 표면에 대한 법선을 계산하고, 그리고 각각의 주 표면의 법선을 3개의 주 축들 중 하나의 축에 정렬함으로써 달성될 수 있다. 직교 회전은, 주 표면들이 이미 주 축들과 정렬되었다면 필요하지 않을 수 있다.
[0024] 방법(200)은, 206에서, 3D 메쉬의 각각의 삼각형을 6개의 주 방향들, 즉 포지티브 및 네거티브 x-, y- 및 z-방향들 중 하나의 방향으로 분류하는 단계를 더 포함한다. 삼각형은, 이의 법선이 주된 컴포넌트를 가지는 방향으로 분류될 수 있다. 예컨대, 삼각형의 법선이 주로 포지티브 z-축(즉, 법선의 가장 큰 컴포넌트가 포지티브 z-축 내에 있음)으로 지향하면, 그 삼각형은 포지티브 z-방향으로 분류될 수 있다.
[0025] 방법(200)은, 208에서, 6개의 주 방향들 각각의 삼각형들을 복수의 층들로 분류하는 단계를 더 포함할 수 있다. 일 실시예에서, 각각의 방향의 공간은 그 방향에 직교하는 평행한 평면들에 의해 균등하게 나뉘어질 수 있다. 예컨대, 포지티브 z-방향의 공간은 z-축 방향에 직교하는 평행한 평면들에 의해 균등하게 나뉘어질 수 있다. 2개의 인접한 평면들 사이에 놓이는 포지티브 z-방향의 삼각형들은 하나의 층으로 분류될 수 있다. 삼각형의 포지션은 삼각형의 기하학적 중심에 의해 결정될 수 있다. 일부 다른 실시예들에서, 각각의 방향의 공간은 균등하게 나뉘어질 필요가 없다. 예컨대, 포지티브 z-방향의 공간은 인접한 평면들 사이에 가변 거리들을 가지는, z-축 방향에 직교하는 평면들에 의해 나뉘어질 수 있다.
[0026] 모두 6개의 주 방향들의 삼각형들이 위에서 설명된 바와 같이 하나 또는 그 초과의 층들로 분류된 이후, 연결된 컴포넌트들은 각각의 층에서 식별될 수 있다. 연결된 컴포넌트는 공통 에지들 또는 모서리들에 의해 연결된 하나 또는 그 초과의 삼각형들을 포함한다. 장면이 위에서 설명된 바와 같은 직교성 기준을 거의 충족하면, 대부분의 연결된 컴포넌트들은 직사각형 객체들로 분할될 수 있고, 아래에서 추가로 설명될 바와 같이 효율적인 패킹 성능을 가능하게 한다.
B. 삼각형 투사
[0027] 실시예에 따라, 각각의 주 방향의 각각의 층에 대해, 각각의 연결된 컴포넌트는 개별 방향에 직교하는 평면에 투사될 수 있다. 따라서, 투사된 2차원(2D) 이미지가 각각의 연결된 컴포넌트에 대해 생성될 수 있다. 투사된 2D 이미지의 삼각형들의 정점들은 실제 측정 단위들, 예컨대 미터(meter)들로 저장되거나 레코딩될 수 있다. 일부 실시예들에서, 투사는 스케일링(scale)될 수 있다. 예컨대, 2D 아틀라스 이미지는 픽셀들 단위로, 예컨대 이미지당 2048×2048로 측정될 수 있다. 예컨대 벽을 나타내는 2미터×2미터 연결된 컴포넌트가 2048×2048 이미지로 투사되면, 대응하는 스케일 팩터(scale factor)는 1024일 것이다.
[0028] 일부 경우들에서, 연결된 컴포넌트를 2D 이미지로 투사하는 것은 오버랩핑된 삼각형들을 초래할 수 있다. 이것은 대략 동일한 방향을 향하는 삼각형들을 가진 연결된 컴포넌트, 이를테면 나선형 형상 표면을 나타내는 연결된 컴포넌트에 대해서도 발생할 수 있다. 컴포넌트 분할 단계는, 오버랩핑된 삼각형이 발견될 때 필요해질 수 있다.
C. 컴포넌트 커팅
[0029] 최종 아틀라스가 보통 직사각형 이미지이기 때문에, 직사각형 형상들을 아틀라스로 패킹하는 것이 더 효율적일 수 있다. 본 발명의 실시예에 따라, 투사된 2D 연결된 컴포넌트는 다수의 서브-컴포넌트들로 커팅될 수 있어서, 각각의 서브-컴포넌트는 직사각형 이미지로 더 효율적으로 맞는다. 일부 경우들에서, 직교 회전이 3D 메쉬에 적용되었고 장면이 벽들, 천장들 및 바닥들 같은 주로 직교 표면들로 이루어지면, 투사된 2D 연결된 컴포넌트들 중 일부 또는 대부분이 직사각형 윤곽부들(즉, 수직 또는 수평 방향들로 직선 에지들을 가짐)을 가질 공산이 있을 수 있다.
[0030] 도 3은 본 발명의 실시예에 따른 예시적인 투사된 2D 연결된 컴포넌트(300)를 도시한다. 백색 영역은 투사된 2D 연결된 컴포넌트(300)를 나타낸다. 외부 직사각형 영역(302)은 투사된 2D 연결된 컴포넌트(300)에 대한 경계 박스이다. 경계 박스는 투사된 2D 연결된 컴포넌트를 포함하는 가장 작은 직사각형 박스이다. 도 3에서 알 수 있는 바와 같이, 경계 박스(302) 내에 일부 다크 영역들이 있다. 따라서, 투사된 2D 연결된 컴포넌트(300)의 영역과 경계 박스(302)의 영역 사이의 비율은 최적보다 더 작을 수 있다.
[0031] 본 발명의 실시예들에 따라, 최적화는 투사된 2D 연결된 컴포넌트의 영역 및/또는 경계 박스의 영역의 함수일 수 있다. 예로서, 투사된 2D 연결된 컴포넌트의 영역이 크면(예컨대, 미리결정된 임계 값보다 큼), 투사된 2D 연결된 컴포넌트의 영역과 경계 박스의 영역 사이의 최적 비율은 약 80% 내지 약 90% 또는 그 초과일 수 있다. 더 높은 비율들을 달성하는 것이 컴퓨팅 시간 및 컴퓨팅 자원들 등의 비용으로 발생할 수 있다는 것이 인식되어야 한다. 따라서, 투사된 2D 연결된 컴포넌트의 영역이 작으면(예컨대, 미리결정된 임계 값 미만), 투사된 2D 연결된 컴포넌트의 영역과 경계 박스의 영역 사이의 최적 비율은 약 80%보다 작거나(예컨대 약 50%) 또는 투사된 2D 연결된 컴포넌트의 영역과 일치하는 다른 적합한 값일 수 있다. 그러므로, 본 발명의 실시예들은 투사된 2D 연결된 컴포넌트의 영역에 따라 크기가 조정되는, 최적 비율에 대해 상이한 임계 값들을 활용할 수 있는데. 예컨대 영역 증가에 따라 최적 비율이 증가된다.
[0032] 실시예에 따라, 도 3에 도시된 투사된 2D 연결된 컴포넌트(300)는 5개의 서브-컴포넌트들(310, 320, 330, 340, 및 350)을 초래하도록 직선들(382, 384, 386, 및 388)을 따라 커팅될 수 있다. 5개의 서브-컴포넌트들(310, 320, 330, 340, 및 350) 각각은 도 4에 예시된 바와 같이, 개별 직사각형 경계 박스(312, 322, 332, 342 또는 352) 내에 포함될 수 있다. 도 4에서 알 수 있는 바와 같이, 5개의 서브-컴포넌트들(310, 320, 330, 340 및 350)에 대한 경계 박스들(312, 322, 332, 342 또는 352)의 영역들의 합은 본래 투사된 2D 연결된 컴포넌트(300)에 대한 경계 박스(302)의 영역보다 작을 수 있다. 그러므로, 서브-컴포넌트들(310, 320, 330, 340 및 350)은 본래의 투사된 2D 연결된 컴포넌트(300)보다 더 효과적으로 패킹될 수 있다. 경계 박스들이 아틀라스로 패킹될 때 컴포넌트들의 에지들에서 텍스처 믹싱(mixing)을 방지하기 위해, 각각의 경계 박스(312, 322, 332, 342 또는 352)의 에지들에 약간의 픽셀 패딩(padding)(즉, 에지들 둘레의 다크 영역)이 존재하는 것을 주목하라.
[0033] 도 5는 본 발명의 실시예에 따른 투사된 2D 연결된 컴포넌트를 커팅하는 방법(500)을 예시하는 간략화된 흐름도를 도시한다. 방법(500)은, 502에서, 경계 박스의 영역이 최소화되도록 투사된 2D 연결된 컴포넌트를 회전시키는 단계를 포함할 수 있다. 예컨대, 도 3에 예시된 예에서, 투사된 2D 연결된 컴포넌트(300)는, 투사된 2D 연결된 컴포넌트(300)의 주 직선 에지들이 도 3에 도시된 바와 같이, 경계 박스(302)의 에지들과 실질적으로 평행하도록 회전될 수 있다. 투사된 2D 연결된 컴포넌트가 이미 최적으로 배향되었다면, 회전은 필요하지 않을 수 있다.
[0034] 방법(500)은, 504에서, 경계 박스의 영역이 제1 미리결정된 임계치보다 작거나 같은지 그리고 경계 박스의 더 긴 에지가 아틀라스 사이즈(예컨대, 직사각형 또는 정사각형 형상 아틀라스의 길이)보다 작거나 같은지를 결정하는 단계를 더 포함한다. 경계 박스의 영역이 제1 미리결정된 임계치보다 작거나 같고 더 긴 에지가 아틀라스 사이즈보다 작거나 같은 것이 결정되면, 추가 커팅은 수행되지 않고 현재 투사된 2D 연결된 컴포넌트는 저장된다(506).
[0035] 경계 박스의 영역이 제1 미리결정된 임계치보다 크거나 또는 더 긴 에지가 아틀라스 사이즈보다 더 큰 것이 결정되면, 방법(500)은, 508에서, 투사된 2D 연결된 컴포넌트의 영역과 경계 박스의 영역 사이의 비율이 제2 미리결정된 임계치보다 작거나 같은지를 결정하는 단계로 진행한다. 비율이 제2 미리결정된 임계치보다 크거나 같은 것이 결정되면, 추가 커팅은 수행되지 않고 현재 투사된 2D 연결된 컴포넌트는 저장된다(506). 비율이 제2 미리결정된 임계치보다 작은 것이 결정되면, 방법(500)은, 510에서, 투사된 2D 연결된 컴포넌트를 다수의 서브-컴포넌트들로 커팅하는 단계로 진행한다. 각각의 서브-컴포넌트는 방법(500)을 사용하여 추가 커팅들을 겪을 수 있다.
[0036] 도 3에 관련하여 위에서 논의된 바와 같이, 제2 미리결정된 임계치로서 도 5에 대해 참조된 최적 비율은 투사된 2D 연결된 컴포넌트의 영역 및/또는 경계 박스의 영역의 함수일 수 있다. 투사된 2D 연결된 컴포넌트의 영역 및/또는 경계 박스의 영역이 크면, 제2 미리결정된 임계치는 약 80% 내지 약 90% 또는 그보다 높을 수 있다. 투사된 2D 연결된 컴포넌트의 영역 및/또는 경계 박스의 영역이 작으면, 제2 미리결정된 임계치는 80%보다 작거나(예컨대 약 50%) 또는 투사된 2D 연결된 컴포넌트의 영역 및/또는 경계 박스의 영역과 일치하는 다른 적합한 값일 수 있다.
[0037] 일부 실시예들에서, 투사된 2D 연결된 컴포넌트는 2 또는 그 초과의 서브-컴포넌트들을 초래하도록 최적 직선 수직 또는 수평 라인을 따라 커팅될 수 있어서, 2 또는 그 초과의 서브-컴포넌트들에 대한 경계 박스들의 영역들의 합은 최소화된다. 일 실시예에서, 최적 직선 커팅 라인은 투사된 2D 연결된 컴포넌트의 에지를 따를 수 있고, 이는 최대 단위 영역 변형을 위해 수직 또는 수평 방향으로 탐색함으로써 발견될 수 있다.
[0038] 예컨대, 도 3에 예시된 예에서, 수직 축의 각각의 작은 세그먼트에 대해, 그 단위 영역은 투사된 2D 연결된 컴포넌트 및 작은 세그먼트에 의해 정의된 직사각형 스트립(strip)(390)의 교차 영역이다. 수직 축을 따라 각각의 작은 세그먼트를 통해 스캐닝함으로써, 2개의 인접한 작은 세그먼트들의 단위 영역들 사이에 큰 점프가 존재하면, 컴포넌트가 2개의 작은 세그먼트들 사이에 에지를 가질 공산이 있다. 예컨대, 도 3에 예시된 예에서, 수평 직선(382) 바로 아래 및 바로 위의 수직 작은 세그먼트들의 단위 영역들 사이에 큰 점프가 있을 수 있다. 그러므로, 수평 직선(382)을 따른 커팅은 3개의 서브-컴포넌트들, 즉 라인(382) 아래의 서브-컴포넌트 및 라인(382) 위의 2개의 서브-컴포넌트들(340 및 350)을 초래할 수 있다.
[0039] 라인(382) 아래의 서브-컴포넌트는 동일한 알고리즘을 사용하여 2 또는 그 초과의 서브-컴포넌트들로 추가로 커팅될 수 있다. 예컨대, 수평 축을 따라 각각의 작은 세그먼트를 통해 스캐닝함으로써, 에지는 수직 직선(386)에서 검출될 수 있다. 라인(386)을 따른 커팅은 2개의 서브-컴포넌트들, 즉 서브-컴포넌트(330) 및 라인(386)의 우측에 서브-컴포넌트를 초래할 수 있다. 라인(386)의 우측의 서브-컴포넌트는 2개의 서브-컴포넌트들(310 및 320)을 초래하도록 수평 직선(388)을 따라 추가로 커팅될 수 있다.
D. 컴포넌트 패킹
[0040] 모든 컴포넌트들 또는 서브-컴포넌트들이 완료된 이후, 컴포넌트들의 경계 박스들은 아틀라스들로 패킹될 수 있다. 아틀라스들이 직사각형 형상을 가지기 때문에, 직사각형 경계 박스들은 최소 수의 아틀라스들로 효율적으로 패킹될 수 있다. 일부 실시예들에서, 아틀라스들은 고정된 사이즈를 가진 정사각형 또는 직사각형 형상을 가질 수 있다.
[0041] 도 6은 본 발명의 실시예에 따라 컴포넌트들을 하나 또는 그 초과의 아틀라스들로 패킹하는 방법(600)을 예시하는 간략화된 흐름도를 도시한다. 방법(600)은, 602에서, 경계 박스들을 그것들의 더 긴 에지들의 길이에 의해 내림 차순으로 정렬하는 단계를 포함한다. 경계 박스들은 필요하다면 90도 만큼 회전될 수 있어서, 그것들의 더 긴 에지들은 수평이다.
[0042] 방법(600)은, 604에서, 제1 언패킹된(unpacked) 경계 박스를 픽킹(picking)하는 단계; 606에서, 예컨대 배정 순서로 모든 현재 아틀라스들에서 이용가능한 공간을 탐색하는 단계; 및 608에서, 픽킹된 경계 박스를, 픽킹된 경계 박스가 끼워맞춰질 수 있는 제1 아틀라스로 패킹하는 단계를 더 포함한다. 일 실시예에서, 경계 박스들은 아틀라스에서 열 단위로 패킹될 수 있다. 이용가능한 공간이 모든 현재 아틀라스들에서 발견되지 않으면, 픽킹된 경계 박스는 새로운 아틀라스로 패킹된다. 방법(600)은, 610에서, 언패킹된 경계 박스들이 남아 있는지를 결정하는 단계를 더 포함한다. 더 이상 언패킹된 경계 박스들이 없다는 것이 결정되면, 패킹이 완료된다(612). 언패킹된 경계 박스들이 더 있다면, 방법(600)은 다음 언패킹된 경계 박스로 계속된다.
[0043] 도 7 및 도 8은 본 발명의 실시예에 따른 직사각형-형상 컴포넌트들이 효율적으로 패킹되는 2개의 예시적인 아틀라스들을 도시한다. 상이한 컴포넌트들은 상이한 컬러들에 의해 나타내진다. (컬러들이 컴포넌트들에 대한 텍스처들이 아닌 것을 주목하라). 직사각형들을 정의하는 보라색 라인들은 경계 박스들의 경계들이다. 도 7 및 도 8에 도시된 아틀라스들에 의해 나타내진 장면들은 실내 장면의 부분들이다. 이들 장면들이 위에서 논의된 직교성 기준을 충족하기 때문에, 큰 컴포넌트들은 실질적으로 직사각형이다. 따라서, 효율적인 패킹은 본 발명의 실시예들에 따라 실현될 수 있다.
E. 텍스처 매핑
[0044] 모든 컴포넌트들에 대한 경계 박스들이 아틀라스들로 패킹된 이후, 입력 3D 메쉬에서 각각의 삼각형(즉, 소스 삼각형)의 텍스처는 아틀라스들의 대응하는 삼각형(즉, 타겟 삼각형)에 카피될 수 있다.
[0045] 도 9는 본 발명의 실시예에 따른 텍스처 매핑 방법(900)을 예시하는 간략화된 흐름도를 도시한다. 방법(900)은, 902에서, 각각의 소스 삼각형과 대응하는 타겟 삼각형 사이의 정점 매핑을 식별하는 단계; 904에서, 타겟 삼각형의 각각의 개별 픽셀에 대해, 픽셀 좌표를 중심(Barycentric) 좌표로 변환하는 단계; 및 906에서, 각각의 소스 삼각형의 동일한 무게 중심 좌표에서의 모든 픽셀 컬러들을 타겟 삼각형의 개별 픽셀들에 카피하는 단계를 포함한다. 일부 실시예들에서, 쌍선형(bilinear) 보간이 단계(906)에서 사용될 수 있다.
[0046] 도 10 및 도 11은, 컴포넌트들이 텍스처링된 이후 도 7 및 도 8에 예시된 아틀라스들을 도시한다. 삼각형들의 라인 세그먼트들은 삼각형 에지들이다.
F. 블록 충진
[0047] 방법(900)에 의해 획득된 텍스처링된 아틀라스들은 이후 렌더링을 위해 저장될 수 있다. 아틀라스 이미지들은 압축된 포맷, 이를테면 JPEG, H.264/AVC 포맷 또는 H.265/HEVC 포맷으로 저장될 수 있다. 본 발명의 일부 실시예들에 따라, 블록-충진이 텍스처링된 아틀라스들에 수행되어 이미지 압축 효율성을 개선하고 따라서 저장 사이즈를 감소시킬 수 있다.
[0048] 블록 충진 이전에, 컴포넌트의 일부분인 픽셀은 텍스처로 컬러화될 수 있는 반면, 컴포넌트의 일부분인 픽셀은 다크할 수 있는데, 즉 RGB 값(0, 0, 0)일 수 있다. 도 12a는, 일부 픽셀들은 컬러화되고 일부 픽셀들은 다크한 아틀라스의 일부를 예시한다. JPEG 압축 표준에 대해, 아틀라스 이미지는 8x8 픽셀 블록들로 나뉘어질 수 있다. 예컨대, 도 12a에 예시된 아틀라스의 부분은 4개의 8x8 블록들(1202, 1204, 1206, 및 1208)로 나뉘어진다. 각각의 8x8 블록은 별도로 변환되고 양자화될 수 있다. 도 12a에 도시된 블록들(1202, 1204, 및 1206)과 같은, 텍스처링된 픽셀들 및 다크 픽셀들 둘 모두를 포함하는 8×8 블록에 대해, 변환된 도메인은 압축 효율성 및 이미지 품질에 영향을 줄 수 있는 큰 고주파수 컴포넌트들을 포함할 수 있다. 다른 한편, 8x8 블록이 단지 다크 픽셀들, 이를테면 도 12a에 도시된 블록(1208)만을 포함하면, 변환 및 양자화 둘 모두는 제로 출력을 초래할 수 있고, 따라서 이미 효율적일 수 있다.
[0049] 도 13은 본 발명의 실시예에 따른 블록 충진 방법(1300)을 예시하는 간략화된 흐름도를 도시한다. 방법(1300)은, 1302에서, 아틀라스 이미지를 8×8 블록들로 나누는 단계; 및 1304에서, 텍스처링된 픽셀들 및 다크 픽셀들 둘 모두를 포함하는 각각의 블록에 대해, 텍스처링된 픽셀들의 컬러들로 다크 픽셀들을 충진하는 단계를 포함한다. 일 실시예에서, 플러드(flood) 충진 알고리즘은 다크 픽셀들을 충진하는 데 사용될 수 있다.
[0050] 도 12b는 본 발명의 실시예에 따른 블록-충진 이후 도 12a에 도시된 아틀라스의 부분을 도시한다. 도 12a에 도시된 바와 같이 텍스처링된 픽셀들 및 다크 픽셀들 둘 모두를 이미 각각 포함하는 블록들(1202, 1204 및 1206)이 이제 텍스처링된 픽셀들만을 포함하는 것을 주목하라. 그러므로, 이들 블록들에 대한 변환된 도메인은 다크 픽셀들로부터의 고주파수 노이지 컴포넌트들을 포함하지 않고, 따라서 더 효율적으로 압축될 수 있다. 다크 픽셀들만을 포함하는 블록(1208)은 변화되지 않는다.
[0051] 도 14a 및 도 14b는 본 발명의 실시예에 따른 블록-충진 이전 및 이후의 아틀라스 이미지의 일부를 각각 도시한다. 도 14a에 도시된 바와 같이, 블록-충진 이전에 영역(1402) 내부의 다크 픽셀들이 도 14b에 도시된 바와 같이 블록 충진 이후에 텍스처링되는 것을 주목하라. 또한, 블록 충진 이후, 컴포넌트의 에지들이 현저히 더 들쑥날쑥하게 된다. 도 10 및 도 11에 도시된 예시적인 텍스처링된 아틀라스 이미지들은 본 발명의 실시예에 따라 JPEG 압축 표준을 위해 블록-충진되었다.
[0052] 더 개선된 압축 표준들, 이를테면 H.264/AVC 및 H.265/HEVC 표준들에 대해, 블록은 먼저 이웃 블록으로부터 예측될 수 있다. 다크 블록이 텍스처링된 이웃 블록을 가지는 경우들에서, 이웃 블록으로부터의 예측은 다크 블록과 상당히 상이할 수 있고, 이는 예측-기반 압축 표준들에 대해 낮은 압축 효율성을 초래할 수 있다. 실시예에 따라, 블록-레벨 충진 동작이 수행될 수 있다.
[0053] 도 15는 본 발명의 실시예에 따른 블록-레벨 충진 방법(1500)을 예시하는 간략화된 흐름도를 도시한다. 방법(1500)은, 1502에서, 아틀라스 이미지를 8×8 블록들로 나누는 단계; 및 1504에서, 텍스처링된 픽셀들 및 다크 픽셀들 둘 모두를 포함하는 각각의 8x8 블록에 대해, 예컨대 플러드 충진 알고리즘을 사용하여 텍스처링된 픽셀들로부터의 컬러들로 다크 픽셀들을 충진하는 단계를 포함한다. 방법(1500)은, 1506에서, 이웃 텍스처링된 블록으로부터의 컬러들로 각각의 다크 블록을 충진하는 단계를 더 포함한다. 일 실시예에서, 다크 블록이 좌측 또는 우측의 이웃 블록으로부터의 컬러들을 카피하면, 각각의 픽셀은 동일한 행의 이웃 픽셀로부터의 컬러를 카피하고; 다크 블록이 상부 또는 하부의 이웃 블록으로부터의 컬러들을 카피하면, 각각의 픽셀은 동일한 열의 이웃 픽셀로부터의 컬러를 카피한다.
[0054] 위에서 설명된 바와 같이, 본 발명의 실시예들은 3D 삼각형 메쉬를 텍스처링된 아틀라스들로 패킹하는 방법을 제공하고, 이 방법은 효율적인 메모리 사용을 초래할 수 있다. 방법들은 직교-형상 특성들을 가진 객체들, 이를테면 서로 평행하거나 수직인 벽들, 천장들 또는 바닥들을 포함하는 집들 및 빌딩들을 나타내는 3D 메쉬들에 적용될 때 특히 유리할 수 있다.
[0055] 비교를 위해, 도 16a 및 도 16b는 종래의 방법을 사용하여 컬러 이미지들로부터 텍스처링된 컴포넌트들을 직접 마스킹함으로써 생성된 일부 예시적인 아틀라스 이미지들을 도시한다. 도 16a 및 도 16b에서 알 수 있는 바와 같이, 각각의 아틀라스 이미지는 큰 다크 영역들을 포함한다. 각각의 아틀라스에 대해, 텍스처링된 영역은 단지 총 아틀라스 영역 중 작은 부분이다. 그러므로, 도 16a 및 도 16b에 도시된 아틀라스들은 메모리 및 저장부 사용의 효율성이 낮을 수 있다. 대조적으로, 도 10 및 도 11에 예시된 아틀라스들은 훨씬 더 효율적으로 패킹된다.
G. 직교-투사-기반 텍스처 아틀라스 패킹의 방법
[0056] 도 17은 본 발명의 실시예에 따른 텍스처 아틀라스 패킹 방법(1700)을 예시하는 간략화된 흐름도를 도시한다. 방법(1700)은, 1702에서, 3차원(3D) 메쉬를 입력하는 단계를 포함한다. 3D 메쉬는 하나 또는 그 초과의 객체들의 표면들을 나타내는 복수의 삼각형들을 포함할 수 있다. 각각의 삼각형은 개별 텍스처를 가진다.
[0057] 방법(1700)은, 1704에서, 각각의 개별 삼각형에 대해, 개별 삼각형의 법선을 결정하는 단계, 및 1706에서, 개별 삼각형을 법선의 주된 컴포넌트에 따라 x-, y- 및 z-방향들의 포지티브 및 네거티브를 따르는 6개의 방향들 중 하나의 방향으로 분류하는 단계를 더 포함한다. 방법(1700)은, 1708에서, 6개의 방향들의 각각의 개별 방향의 삼각형들을 개별 방향에 직교하는 하나 또는 그 초과의 층들로 분류하는 단계를 더 포함한다.
[0058] 방법(1700)은, 1710에서, 개별 방향의 각각의 개별 층에 대해, 하나 또는 그 초과의 연결된 컴포넌트들을 식별하는 단계를 더 포함한다. 각각의 연결된 컴포넌트는 공통 에지들 또는 모서리들에 의해 연결된 복수의 연결된 삼각형들을 포함한다. 방법(1700)은, 1712에서, 대응하는 투사된 2차원(2D) 연결된 컴포넌트를 획득하기 위해, 각각의 개별 연결된 컴포넌트를 개별 방향에 직교하는 평면 상에 투사하는 단계를 더 포함한다. 방법(1700)은, 1714에서, 투사된 2D 연결된 컴포넌트를 하나 또는 그 초과의 서브-컴포넌트들로 커팅하는 단계를 더 포함할 수 있다. 각각의 서브-컴포넌트는 개별 직사각형 경계 박스 내에 포함될 수 있다.
[0059] 방법(1700)은, 1716에서, 모든 방향들에서의 모든 층들의 모든 투사된 2D 연결된 컴포넌트들의 모든 서브-컴포넌트들의 경계 박스들을 하나 또는 그 초과의 아틀라스들로 패킹하는 단계; 및 1718에서, 각각의 아틀라스에서 각각의 서브-컴포넌트의 각각의 개별 삼각형에 대해, 3D 메쉬의 대응하는 삼각형의 텍스처를 개별 삼각형에 카피하는 단계를 더 포함한다.
[0060] 당업자는, 본원의 개시내용을 참조하여 설명된 다양한 예시적인 로직 블록들, 모듈들, 회로들 및 알고리즘 단계들이 전자 하드웨어, 컴퓨터 소프트웨어, 또는 전자 하드웨어 및 컴퓨터 소프트웨어의 조합으로서 구현될 수 있다는 것을 추가로 이해할 수 있다. 예컨대, 모듈들/유닛들은 컴퓨터-판독가능 저장 매체에 저장된 소프트웨어 명령들을 실행하는 프로세서에 의해 구현될 수 있다.
[0061] 첨부 도면들의 흐름도들 및 블록 다이어그램들은 본 발명의 다수의 실시예들에 따른 시스템 및 방법의 가능한 구현들의 시스템 아키텍처들, 펑션들 및 동작들을 도시한다. 이에 관하여, 흐름도 또는 블록 다이어그램의 각각의 블록은 하나의 모듈, 하나의 프로그램 세그먼트 또는 코드 부분을 나타낼 수 있고, 여기서 모듈, 프로그램 세그먼트 또는 코드 부분은 특정 로직 펑션들을 구현하는 데 사용되는 하나 또는 그 초과의 실행가능 명령들을 포함한다. 일부 대안적인 구현들에서, 블록들에서 마킹된 펑션들이 또한 도면에 마킹된 시퀀스와 상이한 시퀀스로 발생할 수 있다는 것이 또한 주목되어야 한다. 예컨대, 실제로 2개의 연속적인 블록들은 실질적으로 병렬로 실행될 수 있고, 그리고 때때로 또한 역순으로 실행될 수 있고, 이는 수반된 펑션들에 의존한다. 블록 다이어그램 및/또는 흐름도의 각각의 블록, 및 블록 다이어그램 및/또는 흐름도의 블록들의 조합은 대응하는 펑션들 또는 동작들을 실행하기 위한 전용 하드웨어-기반 시스템에 의해 구현될 수 있거나, 또는 전용 하드웨어 및 컴퓨터 명령들의 조합에 의해 구현될 수 있다.
[0062] 당업자들에 의해 이해될 바와 같이, 본 개시내용의 실시예들은 방법, 시스템 또는 컴퓨터 프로그램 제품으로서 구현될 수 있다. 따라서, 본 개시내용의 실시예들은 완전히 하드웨어 실시예, 완전히 소프트웨어 실시예 또는 소프트웨어 및 하드웨어를 조합한 실시예의 형태를 취할 수 있다. 게다가, 본 개시내용의 실시예들은 컴퓨터-판독가능 프로그램 코드들을 포함하는 하나 또는 그 초과의 컴퓨터-판독가능 저장 매체들(자기 디스크 메모리, CD-ROM, 광학 메모리 등을 포함함(그러나 이에 제한되지 않음))에서 구현되는 컴포터 프로그램 제품의 형태를 취할 수 있다.
[0063] 본 개시내용의 실시예들은 본 개시내용의 실시예들에 따른 방법들, 디바이스들(시스템들), 및 컴퓨터 프로그램 제품들의 흐름도들 및/또는 블록 다이어그램들을 참조하여 설명된다. 흐름도들 및/또는 블록 다이어그램들의 각각의 흐름 및/또는 블록, 및 흐름도들 및/또는 블록 다이어그램들의 흐름들 및/또는 블록들의 조합들이 컴퓨터 프로그램 명령들에 의해 구현될 수 있다는 것이 이해될 것이다. 이들 컴퓨터 프로그램 명령들은 머신을 생성하기 위해 범용 컴퓨터, 특수-목적 컴퓨터, 내장형 프로세서, 또는 다른 프로그램가능 데이터 프로세싱 디바이스들의 프로세서에 제공될 수 있어서, 컴퓨터 또는 다른 프로그램가능 데이터 프로세싱 디바이스들의 프로세서를 통해 실행되는 명령들은 흐름도들의 하나 또는 그 초과의 흐름들 및/또는 블록 다이어그램들의 하나 또는 그 초과의 블록들에 특정된 펑션들을 구현하기 위한 수단을 생성한다.
[0064] 이들 컴퓨터 프로그램 명령들은 또한 특정 방식으로 기능하도록 컴퓨터 또는 다른 프로그램가능 데이터 프로세싱 디바이스들에게 지시할 수 있는 컴퓨터-판독가능 메모리에 저장될 수 있어서, 컴퓨터-판독가능 메모리에 저장된 명령들은 흐름도들의 하나 또는 그 초과의 흐름들 및/또는 블록 다이어그램들의 하나 또는 그 초과의 블록들에 특정된 기능들을 구현하는 명령 수단을 포함하는 제조된 제품을 생성한다.
[0065] 이들 컴퓨터 프로그램 명령들은 또한 일련의 동작 단계들이 컴퓨터에 의해 구현되는 프로세싱을 생성하기 위해 컴퓨터 또는 다른 프로그램가능 디바이스들 상에서 수행되게 하도록 컴퓨터 또는 다른 프로그램가능 데이터 프로세싱 디바이스들 상에 로딩될 수 있어서, 컴퓨터 또는 다른 프로그램가능 디바이스들 상에서 실행되는 명령들은 흐름도들의 하나 또는 그 초과의 흐름들 및/또는 블록 다이어그램들의 하나 또는 그 초과의 블록들에 특정된 기능들을 구현하기 위한 단계들을 제공한다. 통상적인 구성에서, 컴퓨터 디바이스는 하나 또는 그 초과의 CPU(Central Processing Unit)들, 입력/출력 인터페이스, 네트워크 인터페이스 및 메모리를 포함한다. 메모리는 휘발성 메모리, RAM(random access memory), 및/또는 비-휘발성 메모리 등, 이를테면 컴퓨터-판독가능 저장 매체 내의 ROM(read-only memory) 또는 플래시 RAM의 형태들을 포함할 수 있다. 메모리는 컴퓨터-판독가능 저장 매체의 예이다.
[0066] 컴퓨터-판독가능 저장 매체는, 프로세서에 의해 판독가능한 정보 또는 데이터가 저장될 수 있는 임의의 타입의 물리적 메모리를 지칭한다. 따라서, 컴퓨터-판독가능 저장 매체는, 프로세서(들)로 하여금 본원에 설명된 실시예들과 일치하는 단계들 또는 스테이지들을 수행하게 하기 위한 명령들을 포함하는, 하나 또는 그 초과의 프로세서들에 의한 실행을 위한 명령들을 저장할 수 있다. 컴퓨터-판독가능 저장 매체는 비-휘발성 및 휘발성 매체들, 및 착탈식 및 비착탈식 매체들을 포함하고, 정보 저장은 임의의 방법 또는 기술로 구현될 수 있다. 정보는 컴퓨터-판독가능 명령들, 데이터 구조들 및 프로그램들, 또는 다른 데이터의 모듈들일 수 있다. 컴퓨터-저장 매체의 예들은 PRAM(phase-change random access memory), SRAM(static random access memory), DRAM(dynamic random access memory), 다른 타입들의 RAM(random access memory)들, ROM(read-only memory), EEPROM(electrically erasable programmable read-only memory), 플래시 메모리 또는 다른 메모리 기술들, CD-ROM(compact disc read-only memory), DVD(digital versatile disc) 또는 다른 광학 저장부, 카세트 테이프, 테이프 또는 디스크 저장 또는 다른 자기 저장 디바이스들, 또는 컴퓨터 디바이스에 의해 액세스될 수 있는 정보를 저장하는 데 사용될 수 있는 임의의 다른 비-송신 매체들을 포함(그러나 이에 제한되지 않음)한다. 컴퓨터-판독가능 저장 매체는 비-일시적이고, 그리고 일시적 매체들, 이를테면 변조된 데이터 신호들 및 반송파들을 포함하지 않는다.
[0067] 명세서는 3D 메쉬들의 직교-투사-기반 텍스처 아틀라스 패킹을 위한 방법들, 장치 및 시스템들을 설명하였다. 예시된 단계들은 도시된 예시적인 실시예들을 설명하기 위해 제시되었고, 특정 기능들이 수행되는 방식을 진행중인 기술 개발이 변화시킬 것이 예상되어야 한다. 따라서, 이들 예들은 제한이 아닌 예시 목적들을 위해 본원에서 제시된다. 예컨대, 본원에 개시된 단계들 또는 프로세스들은 설명된 순서로 수행되는 것으로 제한되는 것이 아니라, 임의의 순서로 수행될 수 있고, 일부 단계들은 개시된 실시예들과 일치하여 생략될 수 있다. 게다가, 기능적 빌딩 블록들의 경계들은 설명의 편의를 위해 본원에서 임의로 정의되었다. 대안적인 경계들은, 특정 기능들 및 이의 관계들이 적당하게 수행되는 한 정의될 수 있다. 대안들(본원에 설명된 것들의 등가물들, 확장들, 변형들, 편차들 등을 포함함)은 본원에 포함된 교시들에 기반하여 당업자들에게 자명할 것이다. 그런 대안들은 개시된 실시예들의 범위 및 사상 내에 속한다.
[0068] 개시된 원리들의 예들 및 특징들이 본원에 설명되지만, 수정들, 적응들 및 다른 구현들은 개시된 실시예들의 사상 및 범위에서 벗어나지 않고 가능하다. 또한, "포함하는", "가지는", 및 다른 유사한 형태들은 의미가 등가인 것으로 의도되고 그리고 이들 단어들 중 임의의 단어를 뒤따르는 아이템 또는 아이템들이 그런 아이템 또는 아이템들의 총망라하는 리스팅을 의미하는 것이 아니거나, 또는 리스팅된 아이템 또는 아이템들로만 제한되는 것으로 의미되는 것으로 제약되지 않는다. 본원에 사용된 바와 같이, 단수 형태들은, 문맥이 명확하게 다르게 표시하지 않으면, 복수의 참조들을 포함하는 것이 또한 주목되어야 한다.
[0069] 본 발명이 위에서 설명되고 첨부 도면들에 예시된 정확한 구성으로 제한되지 않고, 다양한 수정들 및 변화들이 본 발명의 범위에서 벗어나지 않고 이루어질 수 있다는 것이 인식될 것이다.

Claims (20)

  1. 아틀라스 패킹(atlas packing) 방법으로서,
    하나 또는 그 초과의 객체들의 표면들을 나타내는 복수의 삼각형들을 포함하는 3차원(3D) 메쉬(mesh)를 수신하는 단계 ― 각각의 삼각형은 개별 텍스처(texture)를 가짐 ―;
    상기 복수의 삼각형들의 각각의 개별 삼각형에 대해:
    상기 개별 삼각형의 법선(normal)을 결정하는 단계, 및
    상기 개별 삼각형을, 상기 법선의 주된 컴포넌트에 따라 x-, y- 및 z-방향들의 포지티브 및 네거티브를 따르는 6개의 방향들 중 하나의 방향으로 분류하는 단계;
    상기 6개의 방향들의 각각의 개별 방향의 삼각형들을 상기 개별 방향에 직교하는 하나 또는 그 초과의 층들로 분류하는 단계;
    개별 방향의 각각의 개별 층에 대해:
    하나 또는 그 초과의 연결된 컴포넌트들을 식별하는 단계 ― 각각의 연결된 컴포넌트는 복수의 연결된 삼각형들을 포함함 ―,
    대응하는 투사된 2차원(2D) 연결된 컴포넌트를 획득하기 위해, 각각의 개별 연결된 컴포넌트를 상기 개별 방향에 직교하는 평면 상에 투사하는 단계, 및
    투사된 2D 연결된 컴포넌트를 하나 또는 그 초과의 서브-컴포넌트들로 커팅(cutting)하는 단계 ― 각각의 서브-컴포넌트는 개별 직사각형 경계 박스(bounding box) 내에 포함됨 ―;
    모든 방향들의 모든 층들의 모든 투사된 2D 연결된 컴포넌트들의 모든 서브-컴포넌트들의 경계 박스들을 하나 또는 그 초과의 아틀라스들로 패킹(packing)하는 단계; 및
    각각의 아틀라스의 각각의 서브-컴포넌트의 각각의 개별 삼각형에 대해, 상기 3D 메쉬의 대응하는 삼각형의 텍스처를 상기 개별 삼각형에 카피하는 단계
    를 포함하는,
    아틀라스 패킹 방법.
  2. 제1 항에 있어서,
    상기 삼각형들을 분류하기 전에:
    상기 3D 메쉬의 하나 또는 그 초과의 주 표면들을 식별하는 단계; 및
    상기 하나 또는 그 초과의 주 표면들의 법선들이 x-, y- 및 z-방향들 중 하나 또는 그 초과의 방향과 정렬되도록 상기 3D 메쉬를 회전시키는 단계
    를 더 포함하는,
    아틀라스 패킹 방법.
  3. 제1 항에 있어서,
    상기 각각의 개별 방향의 삼각형들을 하나 또는 그 초과의 층들로 분류하는 단계는:
    상기 개별 방향에 직교하는 복수의 평면들에 의해 상기 개별 방향의 공간을 나누는 단계; 및
    2개의 인접한 평면들 사이에 놓이는 삼각형들을 하나의 층으로 분류하는 단계
    를 포함하는,
    아틀라스 패킹 방법.
  4. 제1 항에 있어서,
    상기 투사된 2D 연결된 컴포넌트를 하나 또는 그 초과의 서브-컴포넌트들로 커팅하는 단계는 상기 하나 또는 그 초과의 서브-컴포넌트들에 대한 경계 박스들의 영역들의 합을 최소화하는,
    아틀라스 패킹 방법.
  5. 제4 항에 있어서,
    각각의 서브-컴포넌트는 직사각형 형상을 가지는,
    아틀라스 패킹 방법.
  6. 제4 항에 있어서,
    상기 투사된 2D 연결된 컴포넌트를 커팅하는 단계는:
    수평 방향 또는 수직 방향으로 상기 투사된 2D 연결된 컴포넌트의 에지를 식별하는 단계; 및
    상기 투사된 2D 연결된 컴포넌트를 2 또는 그 초과의 서브-컴포넌트들로 나누기 위해, 식별된 에지에서 직선 수평 라인 또는 직선 수직 라인을 따라 상기 투사된 2D 연결된 컴포넌트를 커팅하는 단계
    를 포함하는,
    아틀라스 패킹 방법.
  7. 제6 항에 있어서,
    상기 투사된 2D 연결된 컴포넌트를 커팅하는 단계는, 상기 에지를 식별하기 전에, 상기 투사된 2D 연결된 컴포넌트를 포함하는 직사각형 경계 박스의 영역을 최소화하기 위해, 상기 투사된 2D 연결된 컴포넌트를 회전시키는 단계를 더 포함하는,
    아틀라스 패킹 방법.
  8. 제1 항에 있어서,
    모든 서브-컴포넌트들의 경계 박스들을 패킹하는 단계는:
    모든 서브-컴포넌트들에 대한 경계 박스들을 상기 경계 박스의 가장 긴 에지의 길이에 의해 내림 차순으로 정렬(sort)하는 단계;
    제1 언패킹된(unpacked) 경계 박스를 픽킹(picking)하는 단계;
    상기 제1 언패킹된 경계 박스가 끼워맞춰질 수 있는 모든 현재 아틀라스들의 이용가능한 공간을 탐색하는 단계; 및
    상기 제1 언패킹된 경계 박스를 상기 이용가능한 공간에 패킹하는 단계
    를 포함하는,
    아틀라스 패킹 방법.
  9. 제1 항에 있어서,
    각각의 아틀라스를 복수의 블록들로 나누는 단계 ― 각각의 블록은 복수의 픽셀들을 포함함 ―;
    텍스처링된(textured) 픽셀들 및 다크(dark) 픽셀들 둘 모두를 포함하는 각각의 블록에 대해, 텍스처링된 픽셀들로부터의 컬러들로 다크 픽셀들을 충진(filling)하는 단계; 및
    압축 표준을 사용하여 상기 하나 또는 그 초과의 아틀라스들을 저장하는 단계
    를 더 포함하는,
    아틀라스 패킹 방법.
  10. 제1 항에 있어서,
    각각의 아틀라스를 복수의 블록들로 나누는 단계 ― 각각의 블록은 복수의 픽셀들을 포함함 ―;
    텍스처링된 픽셀들 및 다크 픽셀들 둘 모두를 포함하는 각각의 블록에 대해, 텍스처링된 픽셀들로부터의 컬러들로 다크 픽셀들을 충진하는 단계;
    이웃 텍스처링된 블록으로부터의 컬러들로 다크 픽셀들만을 포함하는 각각의 블록을 충진하는 단계; 및
    압축 표준을 사용하여 상기 하나 또는 그 초과의 아틀라스들을 저장하는 단계
    를 더 포함하는,
    아틀라스 패킹 방법.
  11. 컴퓨터 프로세서에 의해 실행될 때, 아틀라스 패킹을 수행하는, 컴퓨터-판독가능 저장 매체 상에 유형적으로 구현되는 복수의 컴퓨터-판독가능 명령들을 포함하는 비-일시적 컴퓨터-판독가능 저장 매체로서,
    상기 복수의 명령들은:
    상기 컴퓨터 프로세서로 하여금, 하나 또는 그 초과의 객체들의 표면들을 나타내는 복수의 삼각형들을 포함하는 3차원(3D) 메쉬를 수신하게 하는 명령들 ― 각각의 삼각형은 개별 텍스처를 가짐 ―;
    상기 컴퓨터 프로세서로 하여금, 상기 복수의 삼각형들의 각각의 개별 삼각형에 대해:
    상기 개별 삼각형의 법선을 결정하게 하고, 그리고
    상기 개별 삼각형을, 상기 법선의 주된 컴포넌트에 따라 x-, y- 및 z-방향들의 포지티브 및 네거티브를 따르는 6개의 방향들 중 하나의 방향으로 분류하게 하는
    명령들;
    상기 컴퓨터 프로세서로 하여금, 상기 6개의 방향들의 각각의 개별 방향의 삼각형들을 상기 개별 방향에 직교하는 하나 또는 그 초과의 층들로 분류하게 하는 명령들;
    상기 컴퓨터 프로세서로 하여금, 개별 방향의 각각의 개별 층에 대해:
    하나 또는 그 초과의 연결된 컴포넌트들을 식별하게 하고 ― 각각의 연결된 컴포넌트는 복수의 연결된 삼각형들을 포함함 ―,
    대응하는 투사된 2차원(2D) 연결된 컴포넌트를 획득하기 위해, 각각의 개별 연결된 컴포넌트를 상기 개별 방향에 직교하는 평면 상에 투사하게 하고, 그리고
    상기 투사된 2D 연결된 컴포넌트를 하나 또는 그 초과의 서브-컴포넌트들로 커팅하게 하는 ― 각각의 서브-컴포넌트는 개별 직사각형 경계 박스 내에 포함됨 ―
    명령들;
    상기 컴퓨터 프로세서로 하여금, 모든 방향들의 모든 층들의 모든 투사된 2D 연결된 컴포넌트들의 모든 서브-컴포넌트들의 경계 박스들을 하나 또는 그 초과의 아틀라스들로 패킹하게 하는 명령들; 및
    상기 컴퓨터 프로세서로 하여금, 각각의 아틀라스의 각각의 서브-컴포넌트의 각각의 개별 삼각형에 대해, 상기 3D 메쉬의 대응하는 삼각형의 텍스처를 상기 개별 삼각형에 카피하게 하는 명령들
    을 포함하는,
    비-일시적 컴퓨터-판독가능 저장 매체.
  12. 제11 항에 있어서,
    상기 복수의 명령들은,
    상기 컴퓨터 프로세서로 하여금, 상기 삼각형들을 분류하기 전에:
    상기 3D 메쉬의 하나 또는 그 초과의 주 표면들을 식별하게 하고; 그리고
    상기 하나 또는 그 초과의 주 표면들의 법선들이 x-, y- 및 z-방향들 중 하나 또는 그 초과의 방향과 정렬되도록, 상기 3D 메쉬를 회전시키게 하는
    명령들을 더 포함하는,
    비-일시적 컴퓨터-판독가능 저장 매체.
  13. 제11 항에 있어서,
    상기 컴퓨터 프로세서로 하여금, 각각의 개별 방향의 삼각형들을 상기 하나 또는 그 초과의 층들로 분류하게 하는 명령들은:
    상기 컴퓨터 프로세서로 하여금, 상기 개별 방향에 직교하는 복수의 평면들에 의해 상기 개별 방향의 공간을 나누게 하는 명령들; 및
    상기 컴퓨터 프로세서로 하여금, 2개의 인접한 평면들 사이에 놓이는 삼각형들을 하나의 층으로 분류하게 하는 명령들
    을 포함하는,
    비-일시적 컴퓨터-판독가능 저장 매체.
  14. 제11 항에 있어서,
    상기 투사된 2D 연결된 컴포넌트를 하나 또는 그 초과의 서브-컴포넌트들로 커팅하는 것은, 상기 하나 또는 그 초과의 서브-컴포넌트들에 대한 경계 박스들의 영역들의 합을 최소화시키는,
    비-일시적 컴퓨터-판독가능 저장 매체.
  15. 제14 항에 있어서,
    각각의 서브-컴포넌트는 직사각형 형상을 가지는,
    비-일시적 컴퓨터-판독가능 저장 매체.
  16. 제14 항에 있어서,
    상기 컴퓨터 프로세서로 하여금, 상기 투사된 2D 연결된 컴포넌트를 커팅하게 하는 명령들은:
    상기 컴퓨터 프로세서로 하여금, 수평 방향 또는 수직 방향으로 상기 투사된 2D 연결된 컴포넌트의 에지를 식별하게 하는 명령들; 및
    상기 컴퓨터 프로세서로 하여금, 상기 투사된 2D 연결된 컴포넌트를 2 또는 그 초과의 서브-컴포넌트들로 나누기 위해, 식별된 에지에서 직선 수평 라인 또는 직선 수직 라인을 따라 상기 투사된 2D 연결된 컴포넌트를 커팅하게 하는 명령들
    을 포함하는,
    비-일시적 컴퓨터-판독가능 저장 매체.
  17. 제16 항에 있어서,
    상기 컴퓨터 프로세서로 하여금, 상기 투사된 2D 연결된 컴포넌트를 커팅하게 하는 명령들은:
    상기 컴퓨터 프로세서로 하여금, 상기 에지를 식별하기 전에, 상기 투사된 2D 연결된 컴포넌트를 포함하는 직사각형 경계 박스의 영역을 최소화하기 위해, 상기 투사된 2D 연결된 컴포넌트를 회전하게 하는 명령들을 더 포함하는,
    비-일시적 컴퓨터-판독가능 저장 매체.
  18. 제16 항에 있어서,
    상기 컴퓨터 프로세서로 하여금, 모든 서브-컴포넌트들의 경계 박스들을 패킹하게 하는 명령들은:
    상기 컴퓨터 프로세서로 하여금, 모든 서브-컴포넌트들에 대한 경계 박스들을 상기 경계 박스의 가장 긴 에지의 길이에 의해 내림 차순으로 정렬하게 하는 명령들;
    상기 컴퓨터 프로세서로 하여금, 제1 언패킹된 경계 박스를 픽킹하게 하는 명령들;
    상기 컴퓨터 프로세서로 하여금, 상기 제1 언패킹된 경계 박스가 끼워맞춰질 수 있는 모든 현재 아틀라스들의 이용가능한 공간을 탐색하게 하는 명령들; 및
    상기 컴퓨터 프로세서로 하여금, 상기 이용가능한 공간에 상기 제1 언패킹된 경계 박스를 패킹하게 하는 명령들
    을 포함하는,
    비-일시적 컴퓨터-판독가능 저장 매체.
  19. 제11 항에 있어서,
    상기 복수의 명령들은:
    상기 컴퓨터 프로세서로 하여금, 각각의 아틀라스를 복수의 블록들로 나누게 하는 명령들 ― 각각의 블록은 복수의 픽셀들을 포함함 ―;
    상기 컴퓨터 프로세서로 하여금, 텍스처링된 픽셀들 및 다크 픽셀들 둘 모두를 포함하는 각각의 블록에 대해, 텍스처링된 픽셀들로부터의 컬러들로 다크 픽셀들을 충진하게 하는 명령들; 및
    상기 컴퓨터 프로세서로 하여금, 압축 표준을 사용하여 상기 하나 또는 그 초과의 아틀라스들을 저장하게 하는 명령들
    을 더 포함하는,
    비-일시적 컴퓨터-판독가능 저장 매체.
  20. 제11 항에 있어서,
    상기 복수의 명령들은:
    상기 컴퓨터 프로세서로 하여금, 각각의 아틀라스를 복수의 블록들로 나누게 하는 명령들 ― 각각의 블록은 복수의 픽셀들을 포함함 ―;
    상기 컴퓨터 프로세서로 하여금, 텍스처링된 픽셀들 및 다크 픽셀들 둘 모두를 포함하는 각각의 블록에 대해, 텍스처링된 픽셀들로부터의 컬러들로 다크 픽셀들을 충진하게 하는 명령들;
    상기 컴퓨터 프로세서로 하여금, 이웃 텍스처링된 블록으로부터의 컬러들로 다크 픽셀들만을 포함하는 각각의 블록을 충진하게 하는 명령들; 및
    상기 컴퓨터 프로세서로 하여금, 압축 표준을 사용하여 상기 하나 또는 그 초과의 아틀라스들을 저장하게 하는 명령들
    을 더 포함하는,
    비-일시적 컴퓨터-판독가능 저장 매체.
KR1020187024788A 2016-01-29 2017-01-25 3차원 메쉬들의 직교-투사-기반 텍스처 아틀라스 패킹 KR102527255B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201662289059P 2016-01-29 2016-01-29
US62/289,059 2016-01-29
PCT/US2017/014866 WO2017132217A1 (en) 2016-01-29 2017-01-25 Orthogonal-projection-based texture atlas packing of three-dimensional meshes

Publications (2)

Publication Number Publication Date
KR20180107192A KR20180107192A (ko) 2018-10-01
KR102527255B1 true KR102527255B1 (ko) 2023-04-27

Family

ID=59387620

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187024788A KR102527255B1 (ko) 2016-01-29 2017-01-25 3차원 메쉬들의 직교-투사-기반 텍스처 아틀라스 패킹

Country Status (10)

Country Link
US (1) US10249087B2 (ko)
EP (1) EP3408834A4 (ko)
JP (1) JP6826607B2 (ko)
KR (1) KR102527255B1 (ko)
CN (1) CN108604384B (ko)
AU (1) AU2017212389B2 (ko)
CA (1) CA3011891A1 (ko)
IL (1) IL260546B (ko)
NZ (1) NZ744280A (ko)
WO (1) WO2017132217A1 (ko)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10249087B2 (en) 2016-01-29 2019-04-02 Magic Leap, Inc. Orthogonal-projection-based texture atlas packing of three-dimensional meshes
US10192347B2 (en) * 2016-05-17 2019-01-29 Vangogh Imaging, Inc. 3D photogrammetry
US10380762B2 (en) 2016-10-07 2019-08-13 Vangogh Imaging, Inc. Real-time remote collaboration and virtual presence using simultaneous localization and mapping to construct a 3D model and update a scene based on sparse data
US10242484B1 (en) * 2017-10-17 2019-03-26 8i Limited UV mapping and compression
WO2019115867A1 (en) * 2017-12-14 2019-06-20 Nokia Technologies Oy An apparatus, a method and a computer program for volumetric video
EP3732653A4 (en) * 2017-12-28 2021-04-28 Nokia Technologies Oy DEVICE, METHOD AND COMPUTER PROGRAM FOR VOLUMETRIC VIDEO
US10839585B2 (en) 2018-01-05 2020-11-17 Vangogh Imaging, Inc. 4D hologram: real-time remote avatar creation and animation control
JP6975665B2 (ja) * 2018-03-14 2021-12-01 日本ユニシス株式会社 テクスチャマッピング装置およびテクスチャマッピング用プログラム
US11080540B2 (en) 2018-03-20 2021-08-03 Vangogh Imaging, Inc. 3D vision processing using an IP block
WO2019185985A1 (en) * 2018-03-26 2019-10-03 Nokia Technologies Oy An apparatus, a method and a computer program for volumetric video
US10810783B2 (en) 2018-04-03 2020-10-20 Vangogh Imaging, Inc. Dynamic real-time texture alignment for 3D models
US11170224B2 (en) 2018-05-25 2021-11-09 Vangogh Imaging, Inc. Keyframe-based object scanning and tracking
US11141645B2 (en) 2018-09-11 2021-10-12 Real Shot Inc. Athletic ball game using smart glasses
US11103763B2 (en) 2018-09-11 2021-08-31 Real Shot Inc. Basketball shooting game using smart glasses
US11216984B2 (en) * 2019-01-09 2022-01-04 Samsung Electronics Co., Ltd. Patch splitting for improving video-based point cloud compression performance
CN109816749B (zh) * 2019-02-14 2023-04-28 中国测绘科学研究院 图斑地图符号填充方法、装置、计算机设备及存储介质
WO2020190097A1 (ko) * 2019-03-20 2020-09-24 엘지전자 주식회사 포인트 클라우드 데이터 수신 장치, 포인트 클라우드 데이터 수신 방법, 포인트 클라우드 데이터 처리 장치 및 포인트 클라우드 데이터 처리 방법
CN111739084B (zh) * 2019-03-25 2023-12-05 上海幻电信息科技有限公司 图片处理方法、图集处理方法、计算机设备和存储介质
US11232633B2 (en) 2019-05-06 2022-01-25 Vangogh Imaging, Inc. 3D object capture and object reconstruction using edge cloud computing resources
US11170552B2 (en) 2019-05-06 2021-11-09 Vangogh Imaging, Inc. Remote visualization of three-dimensional (3D) animation with synchronized voice in real-time
CN110597759B (zh) * 2019-08-28 2022-03-29 福建省天奕网络科技有限公司 LayaIDE中图集资源优化的方法、存储介质
CN110533755B (zh) * 2019-08-30 2021-04-06 腾讯科技(深圳)有限公司 一种场景渲染的方法以及相关装置
US11348285B2 (en) * 2019-12-10 2022-05-31 Sony Group Corporation Mesh compression via point cloud representation
US11335063B2 (en) 2020-01-03 2022-05-17 Vangogh Imaging, Inc. Multiple maps for 3D object scanning and reconstruction
US11373339B2 (en) * 2020-03-18 2022-06-28 Sony Group Corporation Projection-based mesh compression
CN111476902B (zh) * 2020-04-27 2023-10-24 北京小马慧行科技有限公司 3d点云中物体的标注方法、装置、存储介质和处理器
US11836953B2 (en) 2020-10-06 2023-12-05 Sony Group Corporation Video based mesh compression
US11978149B2 (en) * 2021-06-21 2024-05-07 The Weather Company, Llc UV map using weight painting
US20220414986A1 (en) * 2021-06-23 2022-12-29 Adobe Inc. Segmenting three-dimensional meshes in graphical applications based on detection of elongated shapes
US20240127537A1 (en) * 2022-10-06 2024-04-18 Sony Group Corporation Orthoatlas: texture map generation for dynamic meshes using orthographic projections

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009514059A (ja) 2005-06-23 2009-04-02 メンタル イメージス, ゲーエムベーハー 高精度の実時間レイトレーシング
JP2013043085A (ja) 2011-08-24 2013-03-04 General Electric Co <Ge> 三次元画像をナビゲートし、セグメント化し、抽出するための方法及びシステム

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7071936B2 (en) 2002-05-01 2006-07-04 Microsoft Corporation Systems and methods for providing signal-specialized parametrization
US7265752B2 (en) 2004-01-09 2007-09-04 Microsoft Corporation Multi-chart geometry images
JP5562075B2 (ja) * 2010-03-09 2014-07-30 カルソニックカンセイ株式会社 表面加工データの作成方法および装置
CN102147936B (zh) * 2011-03-09 2013-07-24 浙江大学 一种基于级联的在三维地形表面无缝叠加二维矢量的方法
KR101359661B1 (ko) * 2012-03-05 2014-02-10 한국과학기술원 삼각형 메쉬로 표현된 3차원 물체를 DoSurface 표현 방법으로 변환하는 시스템 및 그 방법
US9626789B2 (en) * 2013-05-07 2017-04-18 Advanced Micro Devices, Inc. Implicit texture map parameterization for GPU rendering
US9821517B2 (en) * 2013-06-26 2017-11-21 Microsoft Technology Licensing, Llc 3D manufacturing platform
CN103345771B (zh) * 2013-06-28 2016-08-10 中国科学技术大学 一种基于建模的图像高效渲染方法
US20170278293A1 (en) * 2013-07-18 2017-09-28 Google Inc. Processing a Texture Atlas Using Manifold Neighbors
CN104574501B (zh) * 2014-12-19 2017-07-21 浙江大学 一种针对复杂三维场景的高质量纹理映射方法
CN105205866B (zh) * 2015-08-30 2018-04-13 浙江中测新图地理信息技术有限公司 基于密集点云的城市三维模型快速构建方法
US20170090460A1 (en) * 2015-09-25 2017-03-30 Microsoft Technology Licensing, Llc 3D Model Generation From Map Data
US20170091993A1 (en) * 2015-09-25 2017-03-30 Microsoft Technology Licensing, Llc 3D Model Generation From Map Data and User Interface
US10249087B2 (en) 2016-01-29 2019-04-02 Magic Leap, Inc. Orthogonal-projection-based texture atlas packing of three-dimensional meshes
US10192347B2 (en) * 2016-05-17 2019-01-29 Vangogh Imaging, Inc. 3D photogrammetry
US10229525B2 (en) * 2016-09-12 2019-03-12 Adobe Inc. Enhanced texture packing

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009514059A (ja) 2005-06-23 2009-04-02 メンタル イメージス, ゲーエムベーハー 高精度の実時間レイトレーシング
JP2013043085A (ja) 2011-08-24 2013-03-04 General Electric Co <Ge> 三次元画像をナビゲートし、セグメント化し、抽出するための方法及びシステム

Also Published As

Publication number Publication date
CN108604384B (zh) 2023-05-09
NZ744280A (en) 2020-08-28
WO2017132217A1 (en) 2017-08-03
EP3408834A4 (en) 2019-01-02
CA3011891A1 (en) 2017-08-03
AU2017212389A1 (en) 2018-08-02
US20170221263A1 (en) 2017-08-03
KR20180107192A (ko) 2018-10-01
JP6826607B2 (ja) 2021-02-03
CN108604384A (zh) 2018-09-28
JP2019507422A (ja) 2019-03-14
IL260546B (en) 2020-05-31
AU2017212389B2 (en) 2021-07-22
EP3408834A1 (en) 2018-12-05
US10249087B2 (en) 2019-04-02

Similar Documents

Publication Publication Date Title
KR102527255B1 (ko) 3차원 메쉬들의 직교-투사-기반 텍스처 아틀라스 패킹
EP3457362B1 (en) Reduced acceleration structures for ray tracing systems
US10489962B1 (en) Hybrid hierarchy of bounding and grid structures for ray tracing
US20240070966A1 (en) Methods and Graphics Processing Units for Determining Differential Data for Rays of a Ray Bundle
US20200020154A1 (en) Point Cloud Preprocessing and Rendering
CN112561788A (zh) 一种bim模型的二维展开方法及纹理贴图方法、装置
US11100707B2 (en) Computer graphics method for terrain rendering
Pagés et al. Composition of Texture Atlases for 3D Mesh Multi-texturing.
US11521351B2 (en) Associating object property data with locations
CN113570691B (zh) 用于体素模型的存储优化方法、装置及电子设备
Liu et al. Reconstruction and simplification of urban scene models based on oblique images
CN116758243B (zh) 基于实时点云流的场景网格划分生成及渲染显示方法
CN110443891B (zh) 一种3d模型的网格化处理方法及系统
US20240062455A1 (en) Resolution independent 3-d vectorization for graphic designs
Koh Parallel simplification and compression of reality captured models
Inatsuka et al. Texture classification for 3D urban map
Tripiana Montes GPU voxelization

Legal Events

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