KR100634537B1 - 3차원 영상의 삼각 분할 장치 및 방법과 그 장치를제어하는 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수있는 기록 매체 - Google Patents

3차원 영상의 삼각 분할 장치 및 방법과 그 장치를제어하는 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수있는 기록 매체 Download PDF

Info

Publication number
KR100634537B1
KR100634537B1 KR1020050010819A KR20050010819A KR100634537B1 KR 100634537 B1 KR100634537 B1 KR 100634537B1 KR 1020050010819 A KR1020050010819 A KR 1020050010819A KR 20050010819 A KR20050010819 A KR 20050010819A KR 100634537 B1 KR100634537 B1 KR 100634537B1
Authority
KR
South Korea
Prior art keywords
points
image
point
triangles
found
Prior art date
Application number
KR1020050010819A
Other languages
English (en)
Other versions
KR20060089998A (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 삼성전자주식회사
Priority to KR1020050010819A priority Critical patent/KR100634537B1/ko
Priority to US11/347,428 priority patent/US7675516B2/en
Publication of KR20060089998A publication Critical patent/KR20060089998A/ko
Application granted granted Critical
Publication of KR100634537B1 publication Critical patent/KR100634537B1/ko

Links

Images

Classifications

    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F16ENGINEERING ELEMENTS AND UNITS; GENERAL MEASURES FOR PRODUCING AND MAINTAINING EFFECTIVE FUNCTIONING OF MACHINES OR INSTALLATIONS; THERMAL INSULATION IN GENERAL
    • F16BDEVICES FOR FASTENING OR SECURING CONSTRUCTIONAL ELEMENTS OR MACHINE PARTS TOGETHER, e.g. NAILS, BOLTS, CIRCLIPS, CLAMPS, CLIPS OR WEDGES; JOINTS OR JOINTING
    • F16B15/00Nails; Staples
    • F16B15/0007Nails; Staples with two nail points extending in opposite directions, in order to fix two workpieces together
    • 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

Abstract

3차원 영상의 삼각 분할 장치 및 방법과 그 장치를 제어하는 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체가 개시된다. 3차원 영상의 표면을 삼각 분할하는 이 장치는, 3차원 영상의 표면을 홀 없이 삼각형들의 형태로 표현하는 표면 표현부 및 표현된 결과를 출력하는 정보 출력부를 구비하는 것을 특징으로 한다. 그러므로, 표면점들을 빠르고 쉽게 적은 계산량만으로 저렴하게 찾을 수 있고, 이로 인해 3차원 영상의 표면을 삼각형들의 조합으로 신뢰성, 범용성과 효율성을 겸비하면서 표현할 수 있고, 4측 다각형들을 보다 정확하게 획득할 수 있을 뿐만 아니라 홀들의 발생을 원천적으로 감소시킬 수 있고, 사용자가 직접 변형되는 표현을 보면서 편집을 할 수 있도록 하고, 동적 물체의 편집을 위한 직관적인 데이타 표현을 위한 도구로서 이용될 수 있는 효과를 갖는다.

Description

3차원 영상의 삼각 분할 장치 및 방법과 그 장치를 제어하는 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체{Apparatus and method for processing triangulation of 3-D image, computer-readable storing medium storing a computer program for controlling the apparatus}
도 1은 본 발명에 의한 3차원 영상의 삼각 분할 장치의 블럭도이다.
도 2는 본 발명에 의한 3차원 영상의 삼각 분할 방법을 설명하기 위한 플로우차트이다.
도 3은 도 1에 도시된 표면 표현부의 본 발명에 의한 바람직한 실시예의 블럭도이다.
도 4는 도 2에 도시된 제20 단계에 대한 본 발명에 의한 실시예를 설명하기 위한 플로우차트이다.
도 5는 도 3에 도시된 표면점 검색부의 본 발명에 의한 실시예의 블럭도이다.
도 6은 도 4에 도시된 제40 단계에 대한 본 발명에 의한 실시예를 설명하기 위한 플로우차트이다.
도 7은 3차원 영상과 그의 투영된 2차원 영상을 예시적으로 나타내는 도면이다.
도 8은 쿼토 분할을 설명하기 위한 예시적인 도면이다.
도 9 (a) ~ (c)들은 Z 방향으로 조사되는 빛에 의해 형성되는 바가 이진 분할되는 과정을 설명하기 위한 도면들이다.
도 10은 표면점 탐색부에서 탐색된 일 군의 점들을 예시적으로 나타내는 도면이다.
도 11는 타원체의 표면점들을 예시적으로 나타내는 도면이다.
도 12는 입방체의 표면점들을 예시적으로 나타내는 도면이다.
도 13은 도 3에 도시된 4측 다각형 생성부의 본 발명에 의한 바람직한 실시예의 블럭도이다.
도 14는 도 4에 도시된 제42 단계에 대한 본 발명에 의한 실시예를 설명하기 위한 플로우차트이다.
도 15는 타원체의 수직 횡단면을 예시적으로 나타내는 도면이다.
도 16는 어느 시작점과 이웃하는 표면점들을 찾는 종래의 방법을 예시적으로 나타내는 도면들이다.
도 17은 어느 시작점과 이웃하는 표면점들을 탐색하는 제142 단계의 이해를 돕기 위한 예시적인 도면들이다.
도 18은 다각형 결정부에서 결정된 4측 다각형의 일례를 설명하기 위한 도면이다.
도 19는 3차원 영상이 구의 형태를 가질 경우, 3차원 영상의 표면에 형성된 다각형들 및 홀의 발생을 예시적으로 나타내는 도면이다.
도 20은 3차원 영상이 입방체의 형태를 가질 경우, 3차원 영상의 표면에 형성된 다각형들 및 코너에서의 홀의 발생을 예시적으로 나타내는 도면이다.
도 21은 도 3에 도시된 홀 처리부의 본 발명에 의한 실시예의 블럭도이다.
도 22는 도 4에 도시된 제44 단계에 대한 본 발명에 의한 실시예를 설명하기 위한 플로우차트이다.
도 23 (a)는 자기 교차하는 홀들을 예시적으로 나타내는 도면이고, 도 23 (b)는 확실히 삼각형으로 채울 수 없는 홀을 예시적으로 나타내는 도면이다.
도 24는 타원체의 모양을 갖는 3차원 영상에서 발견된 홀들을 예시적으로 나타내는 도면이다.
도 25는 타원체의 표면에 존재하는 홀에 삼각형을 채운 모양을 예시적으로 나타내는 도면이다.
도 26은 입방체의 표면에 존재하는 홀에 삼각형을 채운 모양을 예시적으로 나타내는 도면이다.
도 27은 메시가 홀을 갖는 모습을 나타내는 도면이다.
도 28은 홀들에 삼각형들을 채운 모습을 나타내는 도면이다.
도 29는 정점들을 부가한 모습을 나타낸다.
도 30 (a) 및 (b)은 홀이 위치한 삼각형 세분화부의 이해를 돕기 위한 예시적인 도면들이다.
도 31은 아티팩트를 갖는 원뿔의 삼각형 메시를 나타내는 도면이다.
도 32는 아티팩트를 갖지 않는 원뿔의 삼각형 메시를 나타내는 도면이다.
도 33은 페어링하기 이전의 토로스 형태의 3차원 영상의 모습을 나타낸다.
도 34와 도 35는 페어링하고 스웰링한 후에 토로스 형태의 3차원 영상의 모습을 나타내는 도면이다.
도 36은 페어링하기 이전의 크로스 형태의 3차원 영상의 모습을 나타내는 도면이다.
도 37과 도 38은 페어링하고 스웰링한 후에 크로스 형태의 3차원 영상의 모습을 나타내는 도면이다.
도 39는 w(p,i)=∥p-1∥일 때, 크로스를 나타내는 도면이다.
도 40은 w(p,i)=∥p-1∥일 때, 토로스를 나타내는 도면이다.
도 41은 VxDemo 표현된 결과를 내보내는 즉, 표현된 결과를 전송하기 위한 사용자 인터페이스 화면의 일례를 나타내는 도면이다.
도 42는 전송 해상도를 결정하기 위한 사용자 인터페이스 화면의 일례를 나타내는 도면이다.
도 43은 자동체 모델을 갖는 3차원 영상의 표면을 삼각형들의 조합으로 표현한 모습을 나타내는 도면이다.
도 44는 주전자 모델을 갖는 3차원 영상의 표면을 삼각형들의 조합으로 표현한 모습을 나타내는 도면이다.
본 발명은 컴퓨터 그래픽에 관한 것으로서, 특히, 3차원 영상의 표면을 삼각형들로 표현하는 3차원 영상의 삼각 분할 장치 및 방법과 그 장치를 제어하는 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체에 관한 것이다.
종래의 랜더링(rendering) 방법은 렌더링을 위해 필요한 3차원 영상의 표면점들을 찾기 위해, 3차원 공간의 모든 셀들을 탐색한다. 그러므로, 종래의 방법은 표면점들을 느리게 찾고 이를 위한 방대한 계산량을 가질 뿐만 아니라 표면을 정확하게 찾을 수도 없는 문제점을 갖는다. 게다가, 3차원 영상의 표면을 신뢰할 수 있게 찾을 수 있는 종래의 다른 방법 조차도 복잡한 모델링 함수를 이용하므로 너무 값비싼 문제점을 갖는다.
본 발명이 이루고자 하는 기술적 과제는, 홀 없이 3차원 영상의 표면을 삼각형들의 조합으로 표현할 수 있는 3차원 영상의 삼각 분할 장치 및 방법을 제공하는 데 있다.
본 발명이 이루고자 하는 다른 기술적 과제는, 상기 3차원 영상의 삼각 분할 장치를 제어하는 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체를 제공하는 데 있다.
상기 과제를 이루기 위해, 3차원 영상의 표면을 삼각 분할하는 본 발명에 의한 3차원 영상의 삼각 분할 장치는, 상기 3차원 영상의 표면을 홀 없이 삼각형들의 형태로 표현하는 표면 표현부 및 상기 표현된 결과를 출력하는 정보 출력부로 구성 되는 것이 바람직하다.
또는, 상기 과제를 이루기 위해, 3차원 영상의 표면을 삼각 분할하는 본 발명에 의한 3차원 영상의 삼각 분할 방법은, 상기 3차원 영상의 표면을 홀 없이 삼각형들의 형태로 표현하는 단계 및 상기 표현된 결과를 내보내는 단계로 이루어지는 것이 바람직하다.
상기 다른 과제를 이루기 위해, 3차원 영상의 표면을 삼각 분할하는 3차원 영상의 삼각 분할 장치를 제어하는 본 발명에 의한 적어도 하나의 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체는, 상기 3차원 영상의 표면을 홀 없이 삼각형들의 형태로 표현시키는 단계 및 상기 표현된 결과를 내 보내게 하는 단계를 수행하기 위한 컴퓨터 프로그램을 저장하는 것이 바람직하다.
이하, 본 발명에 의한 3차원 영상의 삼각 분할 장치와 그 실시예 각각의 구성 및 동작, 각 실시예에서 수행되는 3차원 영상의 삼각 분할 방법을 첨부한 도면들을 참조하여 다음과 같이 설명한다.
도 1은 본 발명에 의한 3차원 영상의 삼각 분할 장치의 블럭도로서, 표면 표현부(10) 및 정보 출력부(12)로 구성된다.
도 2는 본 발명에 의한 3차원 영상의 삼각 분할 방법을 설명하기 위한 플로우차트로서, 3차원 영상의 표면을 홀 없이 표현하는 단계(제20 단계) 및 표현된 결과를 내보내는 단계(제22 단계)로 이루어진다.
도 1 및 도 2에 각각 도시된 본 발명에 의한 3차원 영상의 삼각 분할 장치 및 방법은 3차원 영상의 표면을 다음과 같이 삼각형들로 분할한다.
먼저, 표면 표현부(10)는 입력단자 IN1을 통해 입력한 3차원 영상의 표면을 홀(hole)을 갖지 않는 삼각형들의 형태로 표현하고, 삼각형들의 형태로 3차원 영상의 표면이 표현된 결과를 정보 출력부(12)로 출력한다(제20 단계).
도 3은 도 1에 도시된 표면 표현부(10)의 본 발명에 의한 바람직한 실시예(10A)의 블럭도로서, 표면점 검색부(30), 4측(4-side) 다각형 생성부(32) 및 홀 처리부(34)로 구성된다.
도 4는 도 2에 도시된 제20 단계에 대한 본 발명에 의한 실시예(20A)를 설명하기 위한 플로우차트로서, 표면점들을 찾고, 찾아진 표면점들을 이용하여 4측 다각형들을 획득하는 단계(제40 및 제42 단계들) 및 홀들에 삼각형들을 채우는 단계(제44 단계)로 이루어진다.
본 발명의 일 실시예에 의하면, 도 1에 도시된 표면 표현부(10)는 도 3에 도시된 바와 같이 구현될 수 있다. 이 경우, 도 2에 도시된 제20 단계는 도 4에 도시된 바와 같이 구현된다. 표면점 검색부(30)는 입력단자 IN2를 통해 3차원 영상을 입력하고, 입력한 3차원 영상의 표면을 이루는 표면점들을 쿼토(quarto) 분할과 이진(binary) 분할에 의해 찾으며, 찾아진 표면점들을 4측 다각형 생성부(32)로 출력한다(제40 단계).
도 5는 도 3에 도시된 표면점 검색부(30)의 본 발명에 의한 실시예(30A)의 블럭도로서, 경계 탐색부(50), 표면점 탐색부(52) 및 표면점 선택부(54)로 구성된다.
도 6은 도 4에 도시된 제40 단계에 대한 본 발명에 의한 실시예(40A)를 설명 하기 위한 플로우차트로서, 투영(projection)된 2차원 영상의 경계면을 찾는 단계(제60 단계) 및 찾아진 경계면에 대해 조사한 빛과 교차하는 점들로부터 표면점들을 찾는 단계(제62 및 제64 단계들)로 이루어진다.
경계 탐색부(50)는 입력단자 IN5를 통해 3차원 영상을 입력하고, 입력한 3차원 영상이 투영된 2차원 영상의 경계면을 쿼토 분할에 의해 찾으며, 찾아진 경계면을 표면점 탐색부(52)로 출력한다(제60 단계).
도 7은 3차원 영상과 그의 투영된 2차원 영상을 예시적으로 나타내는 도면이다.
도 7을 참조하면, 경계 탐색부(50)의 입력단자 IN5를 통해 입력되는 3차원 영상(67)은 단위 입방체(unit cubic) 공간(66)의 내부에서 표현될 수 있다. 예를 들어, 3차원 영상의 중심의 좌표가 (x,y,z)=(0,0,0)일 경우, x, y 및 z 각각은 [-1,1]의 범위내에서 변할 수 있다. 이 때, 경계 탐색부(50)는 3차원 영상(67)을 2차원 평면(68)상으로 투영하여, 2차원 영상(69)을 획득한다.
도 8은 쿼토 분할을 설명하기 위한 예시적인 도면으로서, 2차원 영상(70)을 나타낸다. 여기서, 도 8에 도시된 영상(70)은 도 7에 도시된 투영된 2차원 영상(69)에 해당한다.
도 8에 도시된 투영된 2차원 영상(70)을 쿼토 분할의 최대 레벨이 획득될 때까지 4개의 부분들로 반복적으로 나눈다. 여기서, 쿼토 분할의 레벨(QLEV)이란 영상을 4개의 부분들로 몇 회나 분할하였는가를 즉, 분할된 정도를 나타낸다. 부연하면, 도 8에 도시된 영상을 4개의 부분들로 일 회 분할하고, 분할된 각 부분이 2차 원 영상(70)에 속하는가 그렇지 않으면 2차원 영상(70)의 외부에 존재하는가를 판단한다. 이 때, 2차원 영상(70)의 외부에 존재하는 부분에 대해서는 더 이상 4개의 부분들로 분할하지 않는다. 그러나, 2차원 영상(70)의 외부에 존재하지 않는 부분은 4개의 부분들로 더 세부적으로 분할한다. 이와 같이, 2차원 영상(70)을 4개의 부분들로 분할하는 동작을 반복적으로 수행함으로써 2차원 영상(70)의 경계면이 획득될 수 있다. 이와 같이, 2차원 영상(70)을 4개의 부분들로 분할하는 동작을 반복적으로 수행하는 것을 '쿼토 분할'이라 한다. 이러한 쿼토 분할을 수행할 경우, 최종적으로 2차원 영상(70)의 경계와 내부와 외부에 대한 각각의 정보들이 획득되어 버퍼링될 수 있다. 이 때, 버퍼링되는 용량은 다음 수학식 1과 같이 표현될 수 있고, 쿼토 분할의 횟수 즉, 쿼토 분할의 계산량은 다음 수학식 2와 같이 표현될 수 있다.
Figure 112005006974465-pat00001
여기서, C는 버퍼링되는 용량을 나타낸다.
Figure 112005006974465-pat00002
여기서, ΔO는 쿼토 분할의 계산량의 증가율을 나타낸다.
제60 단계후에, 표면점 탐색부(52)는 경계 탐색부(50)에서 찾아진 경계면에 대한 정보를 이용하여 3차원 영상에 빛을 조사할 방향을 결정하고, 결정된 방향 즉, 3차원 영상의 경계면으로 빛을 조사하며, 조사된 빛과 교차하는 3차원 영상에서의 점들을 이진 분할에 의해 찾고, 찾아진 점들을 표면점 선택부(54)로 출력한다(제62 단계). 예컨대, 제62 단계를 수행한 결과, 표면점 탐색부(52)에서 빛과 3차원 영상이 교차하는 일군의 점들이 획득된다. 이진 분할에 대해 설명하면 다음과 같다.
도 9 (a) ~ (c)들은 Z 방향으로 조사되는 빛에 의해 형성되는 바(bar)[또는, 빔(beam)]가 이진 분할되는 과정을 설명하기 위한 도면들이다.
먼저, 3차원 영상(72)으로 Z방향으로 조사되는 빛을 도 9 (a)에 도시된 바와 같이 두 개의 부분들(73 및 74)로 양분한다. 이 때, 표면점 탐색부(52)는 양분되는 부분들(73 및 74) 각각이 3차원 영상(72)에 속하는가를 판단한다. 만일, 양분된 부분들(73 및 74) 모두가 3차원 영상(72)에 속하는 경우, 양분된 부분들(73 및 74) 각각을 도 9 (b)에 도시된 바와 같이 다시 양분한다.
이 때, 도 9 (b)에 도시된 네 개의 양분된 부분들(78, 80, 82 및 84)이 3차원 영상(72)에 속하는가를 판단한다. 이 때, 양분된 부분(78)은 3차원 영상(72)에 속하지 않으므로 다시 양분하지 않지만, 양분된 다른 부분들(80, 82 및 84)은 3차원 영상(72)에 속하므로 도 9 (c)에 도시된 바와 같이 다시 양분한다. 데이타가 존재하는 부분은 계속해서 양분된다.
이와 같이, 바를 계속해서 반복적으로 양분할 경우, 3차원 영상(72)과 빛이 교차하는 점들이 탐색 즉, 찾아질 수 있다. 여기서, 바를 양분하는 과정을 '이진 분할'이라 한다. 이러한 이진 분할의 최대 레벨이 획득될 때까지 반복적으로 바를 양분한다. 여기서, 이진 분할의 레벨(BLEV)이란 분할된 횟수 즉, 분할된 정도를 나타낸다. 이 때, 양분되는 해상도는 다음 수학식 3과 같이 표현될 수 있고, 이진 분할의 횟수 즉, 이진 분할의 계산량은 다음 수학식 4와 같이 표현될 수 있다.
Figure 112005006974465-pat00003
여기서, R은 해상도를 나타낸다.
Figure 112005006974465-pat00004
여기서, ΔO'는 이진 분할의 계산량의 증가율을 나타낸다.
제62 단계후에, 표면점 선택부(54)는 표면점 탐색부(52)에서 찾아진 점들 중에서 3차원 영상의 표면에 위치하는 점인 표면점만을 선택하고, 선택된 표면점을 출력단자 OUT5를 통해 출력한다(제64 단계). 여기서, 표면점 탐색부(52)에서 찾아진 일군의 점들은 3차원 영상의 내부에 속하는 내부(interior) 점들과 3차원 영상의 표면에 속하는 표면(surface) 점들로 이루어진다.
도 10은 표면점 탐색부(52)에서 탐색된 일 군의 점들을 예시적으로 나타내는 도면으로서, 표면점들(102 및 104)과 내부점들(106, 108, 110, 112, 114 및 116)로 이루어진다.
도 10을 참조하면, 내부 점들(106 ~ 116) 각각은 3차원 영상(100)의 내부에 존재하는 점들중에서 두 개의 이웃하는 점들을 갖고, 표면점들(102 및 104) 각각은 3차원 영상(100)의 내부에 존재하는 점들중에서 한 개의 이웃하는 점만을 갖는다. 따라서, 표면점 선택부(54)는 교차하는 점들(102 ~ 116)중에서 내부 점들(106 ~ 116)을 찾아서 삭제하므로서 표면점들(102 및 104)만을 선택할 수 있다. 표면점들 각각은 x,y,z 좌표들로 표현될 수 있다. 결국, 표면점들을 찾기 위한 계산량은 다음 수학식 5와 같이 표현될 수 있다.
Figure 112005006974465-pat00005
여기서, ΔO"는 표면점들을 찾기 위한 계산량의 증가율을 나타낸다.
도 11는 타원체(ellipsoid)의 표면점들을 예시적으로 나타내는 도면이고, 도 12는 입방체(cube)의 표면점들을 예시적으로 나타내는 도면이다.
즉, 도 5에 도시된 표면점 검색부(30A)는 도 11 또는 도 12에 도시된 바와 같이 3차원 영상의 표면점들을 검색하여 찾을 수 있다.
한편, 제40 단계 후에, 4측 다각형 생성부(32)는 3차원 영상의 표면을 이루는 표면점들을 표면점 검색부(30)로부터 입력하고, 입력한 표면점들을 소정 방향으로 연결해가면서 다수개의 4측 다각형들을 획득하며, 획득된 다수개의 4측 다각형들을 홀 처리부(34)로 출력한다(제42 단계). 여기서, 소정 방향은 적어도 대각선 방향을 포함한다. 예를 들면, 소정 방향은 대각선 방향, 수평 방향 및 수직 방향일 수도 있고, 대각선 방향과 수직 방향일 수도 있고, 대각선 방향과 수평 방향일 수도 있다. 또한, 4측 다각형 생성부(32)에서 획득된 4측 다각형들 각각은 4개의 측(side)을 갖는 다각형으로서 두 개의 삼각형들을 갖는다.
도 13은 도 3에 도시된 4측 다각형 생성부(32)의 본 발명에 의한 바람직한 실시예(32A)의 블럭도로서, 이웃 표면점 탐색부(130), 탐색점 검사부(132) 및 다각형 결정부(134)로 구성된다.
도 14는 도 4에 도시된 제42 단계에 대한 본 발명에 의한 실시예(42A)를 설명하기 위한 플로우차트로서, 모든 표면점들을 탐색하여 4측 다각형들을 결정하는 단계(제140 ~ 제148 단계들)로 이루어진다.
도 13에 도시된 4측 다각형 생성부(32A)의 이웃 표면점 탐색부(130)는 다각형 결정부(134)로부터 입력한 제1 제어 신호에 응답하여 표면점들 중에서 시작점을 결정한다(제140 단계).
제140 단계 후에, 이웃 표면점 탐색부(130)는 탐색점 검사부(132)로부터 입력한 제2 제어 신호에 응답하여 시작점과 이웃하는 적어도 하나의 표면점을 소정 방향으로 탐색하고, 탐색된 이웃하는 적어도 하나의 표면점을 다각형 결정부(134)로 출력한다(제142 단계).
제142 단계 후에, 탐색점 검사부(132)는 이웃 표면점 탐색부(130)에서 탐색된 표면점이 제140 단계에서 결정된 시작점인가를 검사하고, 검사된 결과를 제2 제어 신호로서 다각형 결정부(134) 및 이웃 표면점 탐색부(130)로 각각 출력한다. 즉, 탐색점 검사부(132)는 이웃 표면점 탐색부(130)에서 탐색된 표면점이 시작점인가 를 판단하는 역할을 한다(제144 단계). 따라서, 이웃 표면점 탐색부(130)는 탐색점 검사부(132)로부터 입력한 제2 제어 신호를 통해 탐색된 표면점이 시작점이 아니라고 인식되면, 이웃 표면점 탐색부(130)는 다른 표면점을 탐색한다(제142 단계).
다각형 결정부(134)는 제2 제어 신호에 응답하여 이웃 표면점 탐색부(130)에서 탐색된 점들을 연결하여 4측 다각형을 결정하고, 결정 여부를 제1 제어 신호로서 이웃 표면점 탐색부(130)로 출력하는 한편, 결정된 4측 다각형을 출력단자 OUT6을 통해 출력한다(제146 단계). 예컨대, 다각형 결정부(134)는 탐색점 검사부(132)로부터 입력하 제2 제어 신호를 통해 탐색된 표면점이 시작점인 것으로 인식되면, 다각형 결정부(134)는 이웃 표면점 탐색부(130)로부터 입력한 탐색된 표면점들을 연결하여 4측 다각형을 결정한다.
이웃 표면점 탐색부(130)는 다각형 검사부(134)로부터 입력한 제1 제어 신호를 통해 제140 단계에서 결정된 시작점을 반영하는 4측 다각형이 결정되었다고 인식되면, 모든 표면점들이 탐색되었는가를 판단한다 즉, 탐색되지 않은 표면점이 존재하는가를 판단한다(제148 단계). 만일, 모든 표면점들이 탐색되지 않았다고 판단되면, 이웃 표면점 탐색부(130)는 아직 탐색되지 않은 표면점들 중 하나를 다른 시작점으로서 결정한다(제140 단계). 따라서, 새롭게 결정된 시작점에 대해서, 전술한 제142 ~ 제144 단계들이 반복적으로 수행된다. 결국, 모든 표면점들이 탐색될 때까지 제140 ~ 제148 단계들이 반복적으로 수행됨을 알 수 있다.
도 13에 도시된 4측 다각형 생성부(32A)와 도 14에 도시된 제42A 단계의 이해를 돕기 위해 첨부한 도면들을 참조하여 다음과 같이 설명한다.
도 15는 타원체의 수직 횡단면(vertical cross-section)을 예시적으로 나타내는 도면으로서, 검은색 부분들은 내부 점들을 나타내고, 밝은 색 부분들은 표면점들을 나타낸다.
3차원 영상이 X, Y 및 Z 공간상에 존재하고 Z 방향으로 빛이 조사된다고 할 때, 동일한 X축 좌표를 갖는 점[또는, 복셀(voxel)]들은 수직 횡단면을 형성한다. 예를 들어, 타원체의 수직 횡단면은 예를 들면 도 15에 도시된 바와 같이 형성될 수 있다. 이와 비슷하게, 동일한 Y축 좌표를 갖는 점들은 수평 횡단면(horizontal cross-section)을 형성한다. 결국, 모든 점들은 수직 및 수평 횡단면들에 놓여짐을 알 수 있다. 따라서, 모든 표면점들도 수직 및 수평 횡단면들에 속한다. 예를 들어, 도 15에 도시된 표면점(B)이 이웃 표면점 탐색부(130)에서 시작점으로 결정된 경우, 이웃 표면점 탐색부(130)는 시작점(B)과 이웃하는 표면점들(A 및 C)을 탐색하여 찾는다. 즉, 이웃 표면점 탐색부(130)는 시작점과 이웃하는 적어도 하나의 표면점들을 수평 및 수직 횡단면들에서 탐색하여 찾는다. 수직 횡단면에서 이웃하는 표면점들을 찾는 방법과 수평 횡단면에서 이웃하는 표면점들을 찾는 방법은 유사하다.
도 16는 어느 시작점과 이웃하는 표면점들을 찾는 종래의 방법을 예시적으로 나타내는 도면들로서, 검은색 부분은 표면점들을 나타내고, 밝은 색 부분은 내부 점들을 나타낸다.
도 17은 어느 시작점과 이웃하는 표면점들을 탐색하는 제142 단계의 이해를 돕기 위한 예시적인 도면들로서, 검은색 부분은 표면점들을 나타내고, 밝은 색 부 분은 내부 점들을 나타낸다.
도 16에 도시된 바와 같이, 종래에는 이웃하는 표면점들을 수평 방향으로만 탐색하고 있음을 알 수 있다. 게다가, 비록 도 16에 도시되지는 않았지만 종래의 방법은 이웃하는 표면점들을 수직 및 수평 방향들 중 적어도 하나의 방향으로 탐색할 수 있다.
그러나, 도 17에 도시된 본 발명의 경우, 이웃하는 표면점들을 수직이나 수평 방향 뿐만 아니라 대각선 방향으로도 탐색하고 있음을 알 수 있다. 따라서, 이웃하는 표면점들이 종래보다 더 정확하게 찾아질 수 있다.
예를 들어, 제140 단계에서 결정된 시작점이 P라 하고, 시작점과 이웃하는 표면점으로서 가장 먼저 탐색된 이웃하는 표면점이 Q라고 가정할 경우, P에서 Q로 이동할 경우 현재 벡터는 (dY, dZ)로 표현될 수 있다. 여기서, dY와 dZ는 다음 수학식 6과 같이 표현될 수 있다.
Figure 112005006974465-pat00006
Figure 112005006974465-pat00007
여기서, yQ는 y축상에서 Q점에 해당하는 좌표를 나타내고, yP는 y축상에서 P점에 해당하는 좌표를 나타내고, zQ는 z축상에서 Q점에 해당하는 좌표를 나타내고, zP는 z축상에서 P점에 해당하는 좌표를 나타낸다.
이 때, 이웃 표면점 탐색부(130)는 제142 단계를 수행하기 위해 즉, 시작점과 이웃하는 표면점을 찾기 위해서 횡단면의 경계면(border)까지 탐색할 수 있다. 만일, 수직 횡단면의 경계면 외곽까지 반 시계 방향으로 탐색할 경우, 도 17에 도시된 바와 같이 이웃 표면점 탐색부(130)는 이웃하는 표면점들을 오른쪽(right), 앞 쪽(front), 왼쪽(left) 및 뒷 쪽(back) 방향의 순서로 탐색할 수 있다. 그러나, 수직 횡단면의 경계면(border) 외곽(contour)까지 시계 방향으로 탐색할 경우, 도 17에 도시된 바와 달리 이웃 표면점 탐색부(130)는 이웃하는 표면점들을 왼 쪽, 앞 쪽, 오른 쪽 및 뒷 쪽 방향의 순서로 탐색할 수 있다.
이와 비슷하게 수평 횡단면을 탐색할 경우, 전술한 (dY, dZ)는 (dX, dZ)로 표현된다. 즉, 도 16에서 (dY, dZ)=(0,1)은 (dX, dZ)=(0,1)로 표기되고, (dY, dZ)=(0,-1)은 (dX, dZ)=(0,-1)로 표기된다.
도 18은 다각형 결정부(134)에서 결정된 4측 다각형의 일례를 설명하기 위한 도면으로서, 네 개의 표면점들(A, B, C 및 D)로 이루어지는 4측 다각형을 나타낸다.
도 18을 참조하면, 이웃 표면점 탐색부(130)에서 시작점(A)과 이웃하는 표면점들(B, C 및 D)을 순차적으로 탐색한 결과, 탐색된 표면점이 시작점(A)인 것으로 제2 제어 신호를 통해 인식되면, 다각형 결정부(134)는 네 개의 표면점들(A, B, C 및 D)을 연결하여 4측 다각형을 형성한다. 즉, 다각형 결정부(134)는 A의 수직 횡단면에 있는 A의 하측(down) 방향으로 A를 A의 하측 이웃점(B)까지 움직인 후, B의 수평 횡단면에 있는 B부터 B의 오른 측 이웃점(C)까지 움직인 후, C의 수직 횡단면 에 있는 C부터 C의 상측 이웃점(D)까지 움직인 후, D의 수평 횡단면에 있는 D부터 D의 왼측 이웃점(A)까지 움직여서, ABCD로 이루어지는 4측 다각형을 도 18에 도시된 바와 같이 생성한다. 이 때, 다각형 결정부(134)에서 결정된 4측 다각형은 ABC로 이루어지는 한 개의 삼각형(160)과 CDA로 이루어지는 다른 한 개의 삼각형(162)으로 이루어진다. 즉, 전술한 바와 같이, 4측 다각형 생성부(32)에서 생성된 다각형들 각각은 두 개의 삼각형들을 갖는다. 이러한 두 개의 삼각형들(160 및 162)의 법선(normal) 방향은 내부쪽(inward) 방향일 수도 있고 바깥쪽(outward) 방향일 수도 있다. 이와 같이, 다각형 결정부(134)에서 결정된 4측 다각형들 각각은 방향에 대해 서로 독립적인 두 개의 삼각형들을 갖는 더블 사이드 객체(double-sided object)가 될 수 있다. 4측 다각형을 결정하기 위해 표면점들을 연결한 횟수가 O(N)이라 할 경우, N은 연결되는 표면점들의 량이 된다. 여기서, O(N)은 연결 횟수가 N에 비례한다는 것을 의미한다.
도 19는 3차원 영상이 구(sphere)의 형태를 가질 경우, 3차원 영상의 표면에 형성된 다각형들 및 홀의 발생을 예시적으로 나타내는 도면이다.
도 20은 3차원 영상이 입방체의 형태를 가질 경우, 3차원 영상의 표면에 형성된 다각형들 및 코너에서의 홀의 발생을 예시적으로 나타내는 도면이다.
도 3 및 도 13에 각각 도시된 4측 다각형 생성부(32 및 32A)는 표면점 검색부(30)에서 검색된 표면점들을 이용하여 도 19 또는 도 20에 도시된 바와 같이 3차원 영상의 표면을 다각형들로 표현할 수 있다.
도 18에 도시된 바와 같이, 시작점(A)이 다시 시작점(A)으로 돌아온 것처럼, 전술한 도 13 및 도 14에 도시된 실시예들은 시작점으로 반드시 돌아온다는 가정하에서 구현된다. 그러나, 모든 시작점이 반드시 다시 시작점으로 돌아오지는 않으며, 이를 '홀'이라 하며, 이에 대해서는 후술된다.
한편, 제42 단계 후에, 홀 처리부(34)는 4측 다각형 생성부(32)에서 획득한 4측 다각형들에 대한 정보를 4측 다각형 생성부(32)로부터 입력하고, 입력한 정보를 이용하여 3차원 영상의 표면에서 4측 다각형으로 결정되지 않은 표면점들에 의해 형성되는 홀들을 발견하고, 발견된 홀들 각각에 삼각형들을 채우며, 그 결과를 출력단자 OUT4를 통해 출력한다(제44 단계).
도 21은 도 3에 도시된 홀 처리부(34)의 본 발명에 의한 실시예(34A)의 블럭도로서, 홀 발견부(170), 홀 삼각형 형성부(172), 삼각형 세분화부(174) 및 삼각형 페어링(fairing)부(176)로 구성된다.
도 22는 도 4에 도시된 제44 단계에 대한 본 발명에 의한 실시예(44A)를 설명하기 위한 플로우차트로서, 홀들을 발견하고, 발견된 홀들에 삼각형들을 채우는 단계(제190 및 제192 단계들) 및 삼각형들을 세분화하고 페어링하는 단계(제194 및제196 단계들)로 이루어진다.
본 발명의 일 실시예에 의하면, 홀 발견부(170)는 4측 다각형 생성부(32)에서 획득한 4측 다각형들에 대한 정보를 4측 다각형 생성부(32)로부터 입력단자 IN7을 통해 입력하고, 입력한 정보를 이용하여 홀들을 발견하며, 발견된 홀들을 홀 삼각형 형성부(172)로 출력한다(제190 단계).
홀 발견부(170)에서 수행되는 제190 단계에 대해 세부적으로 살펴보면 다음 과 같다.
홀 경계의 모든 엣지는 다각형의 단지 한 면(face)에만 속한다. 따라서, 홀을 발견하기 위해서는 각 홀의 모든 경계 엣지들을 발견할 필요가 있다. 모든 표면점들 각각에 대해 그 표면점이 속하는 면들의 리스트를 알고 있으므로, 어느 표면점에 대해 그 표면점과 엣지로 연결된 모든 표면점들을 알 수 있다. 어느 엣지가 홀의 경계 엣지인가 그렇지 않으면 그 엣지가 인접한 두 개의 면들에 속하는가를 결정하기 위해, 엣지 포인트들의 공통되는 면들의 개수를 발견한다. 만일, 공통되는 면들의 개수가 한 개라면, 그 엣지는 홀의 경계 엣지인 것으로 결정한다. 따라서, 홀 발견부(170)는 홀들을 발견하기 위해, 어느 두 표면점들(PQ)을 연결하여 형성되는 엣지(이하, PQ 엣지라한다.)가 홀의 엣지인가 아닌가를 체크한다. 만일, PQ 엣지가 홀의 엣지가 아니라면 다른 표면점을 선택하지만 PQ 엣지가 홀의 엣지라면 P에는 연결되지 않았지만 Q에 연결된 점들을 찾는다. 이 때, 다른 점(Q')을 찾으면, QQ' 엣지는 홀 엣지가 된다. 이렇게, 홀 발견부(170)는 P와 만나서 루프를 마칠 때까지 모든 홀들의 엣지를 발견한다.
도 23 (a)는 자기 교차(self-intersected)하는 홀들을 예시적으로 나타내는 도면이고, 도 23 (b)는 확실히 삼각형으로 채울 수 없는 홀을 예시적으로 나타내는 도면으로서, 굵은 선은 경계 엣지들을 나타낸다.
도 23 (a)를 참조하면, 홀 포인트(Q)는 홀의 자기 교차점이고, Q는 두 개 이상의 홀 엣지들을 갖는다. 일부 홀들은 자기 교차된다. 여기서, 자기 교차란, 점(Q)이 어느 점(Q')의 홀 엣지보다 많은 홀 엣지를 가지며 결국 QQ' 엣지가 경계 엣 지가 되는 것을 의미한다. 자기 교차를 갖는 홀들은 3차원 영상내의 객체의 엷은 부분 즉, 공간 분할이 너무 거칠 때 거의 나타나지 않는다. 여기서, 공간 분할이 너무 거칠다는 것은 쿼토 분할의 레벨과 이진 분할의 레벨이 작다는 것을 의미한다. 도 23 (b)에 도시된 바와 같이 그러한 홀들은 확실히 삼각형으로 채울 수 없으므로 레벨을 증가시킬 필요가 있다.
도 24는 타원체의 모양을 갖는 3차원 영상에서 발견된 홀들을 예시적으로 나타내는 도면이다.
도 24에서, 발견된 홀의 엣지들은 굵은 선으로 표시되어 있다.
제190 단계 후에, 홀 삼각형 형성부(172)는 홀 발견부(170)에서 발견된 홀들 각각에 대해서, 발견된 홀에 속하는 표면점들 중에서 가장 가까운 표면점들을 서로 연결하여 삼각형을 하나씩 형성하고, 형성된 적어도 하나의 삼각형으로 그 홀을 채운다(제192 단계).
홀 삼각형 형성부(172)에서 수행되는 제192 단계에 대해 세부적으로 살펴보면 다음과 같다.
홀은 다음 수학식 7과 같이 표현될 수 있다.
Figure 112005006974465-pat00008
여기서, v는 홀을 나타내고, n은 3차원 영상의 표면에 포함된 홀의 총 개수를 나타낸다.
이 때, 각 홀은 일련의 홀 포인트들을 갖는다. 홀의 점들은 한 평면내에 놓여 있지 않으므로, 홀은 각기 다른 영역들을 갖는 삼각형들을 다양하게 가질 수 있다. 어느 홀을 채울 삼각형들을 형성할 때, 삼각형의 면적의 합이 최소가 되도록 한다. 이를 위해, 전술한 바와 같이 홀 삼각형 형성부(172)는 가장 가까운 표면점들을 서로 연결하여 삼각형을 형성하며, 이러한 삼각형은 최소 가중치(minimum weight)를 갖는다. 한 면의 가중치는 그 면의 영역으로서 다음 수학식 8과 같이 표현될 수 있다.
Figure 112005006974465-pat00009
여기서, A는 가중치를 나타내고, sqrt는 제곱근을 의미하고, c는 삼각형의 면 중에서 홀과 접촉하고 있는 면을 나타내고, a와 b는 접촉하지 않는 면을 나타낸다. 삼각형의 가중치는 면 가중치들의 합이다. 예를 들어, Wi,j가 부 다각형(sub-polygon)에 있는 삼각형의 최소 가중치라고 하자. 여기서, 부 다각형은 홀들(vi, ..., vj)로 이루어진다. 즉, 삼각형 내부에 작은 삼각형 즉, 부 삼각형으로 채운다.
최소 가중치를 구하는 방법에 대해 살펴보면, 첫 번째 단계에서, i=0, 1, ,..., n-2인 경우 Wi,j+1=0(이는 Wi,j+1가 엣지이기 때문이다.)으로 하고, i=0, 1, ,..., n-3인 경우 Wi,j+2는 삼각형(i, i+1, i+2)의 영역으로 한다. 여기서, j=2로 설 정한다. 두 번째 단계에서, j를 1만큼 증가시키며 i=0, 1, ..., n-j-1이고 k=i+j인 경우 Wi,k는 다음 수학식 9와 같이 한다.
Figure 112005006974465-pat00010
여기서, 인덱스 m의 최소값을 Li,k로서 구한다.
세 번째 단계에서, 만일 j가 n-1보다 작다면 두 번째 단계로 진행하고 그렇지 않으면 삼각형을 형성한다. 네 번째 단계에서, 두 번째 단계에서 기록된 Li,k값들을 사용하여 삼각형을 다시 형성한다.
최소 가중치를 발견하기 위해 다각형들의 더 작은 부분들을 찾고 이들에 의해 최소 가중치를 선택하는 반면 Li,k를 반복적으로 탐색하므로서 전술한 바와 같은 네 가지의 단계들이 실현된다. 만일, 면의 가중치 함수를 변화시켜 면의 엣지들의 길이의 합을 계산하고자 한다면, 홀 삼각형 형성부(172)는 엣지 길이의 합이 최소가 되도록 삼각형을 형성한다. 다각형들을 잘게 나누어서 홀을 채우는 방법을 부연 설명하면, 채울 수 없기 때문에 발생한 홀로부터 가능한 가장 거리의 최소값을 찾아 다각형들을 만들어서 홀을 점차 없앤다. 이와 같이 하면, 홀이 작은 다각형들로 점차 채워진다.
도 25는 타원체의 표면에 존재하는 홀에 삼각형을 채운 모양을 예시적으로 나타내는 도면이고, 도 26은 입방체의 표면에 존재하는 홀에 삼각형을 채운 모양을 예시적으로 나타내는 도면이다.
도 25 또는 도 26에 도시된 바와 같이, 홀 삼각형 형성부(172)에 의해 형성된 삼각형들이 홀에 채워질 수 있다. 홀에 삼각형을 채우는 계산량은 O(n3)정도가 될 수 있다.
제192 단계후에, 삼각형 세분화부(174)는 홀 삼각형 형성부(172)에서 홀을 채운 삼각형들을 더 작은 크기의 삼각형으로 세분화하여 쪼개고, 쪼개어진 결과를 삼각형 페어링부(176)로 출력한다(제194 단계).
삼각형 세분화부(174)에서 수행되는 제194 단계에 대해 세부적으로 살펴보기에 앞서 먼저, 메시(mesh)에 대해 살펴보면 다음과 같다.
도 27은 메시가 홀을 갖는 모습을 나타내는 도면이고, 도 28은 홀들에 삼각형들을 채운 모습을 나타내고, 도 29는 정점들(vertices)을 부가한 모습을 나타낸다.
본 발명은 방향성을 가지고 연결된 다양한 메시들에서 임의의 홀들을 대상으로 하며, 임의의 다각형들을 포함하는 메시들로 쉽게 확장될 수 있다. 또한, 본 발명은 섬(island)들을 갖는 홀들 또는 표면들간의 갭(gap)들을 채울 수 있다. 본 발명은 기본적으로 홀 가장자리 상에 정점들에 대해 엣지 길이 데이타를 계산하고, 계산된 값들을 패칭 메시(patching mesh)의 내부로 확산시키고 엣지 길이를 줄이기 위해 삼각형들을 부분할(sub-division)하고 Delaunay-like triangulation을 유지하기 위해 내부 엣지들을 완화(relaxing)시킨다. 이에 대해서는 도 27 ~ 도 29를 참 조할 수 있다. 여기서, 'Delaunay-like triangulation'에 대해서는 Heckel, B., Uva, A.E., Hamann, B. and Joy, K.I.(2001), Surface reconstruction using adaptive clustering methods(pdf), in:Brunnett, G., Bieri, H. and Farin, G., eds., Geometric Modelling: Dagstuhl 1999, Computing Suppl. 14, Springer-Verlag, pp. 199-218에 개시되어 있다.
한편, 홀을 채운 삼각형들의 면들은 서로 매칭되지 않는다. 따라서, 홀을 채운 삼각형들의 평균 개수가 주변의 메시들의 해당하는 값과 매칭되도록, 삼각형 세분화부(174)는 삼각형을 세분화한다.
도 30 (a) 및 (b)은 홀이 위치한 삼각형 세분화부(174)의 이해를 돕기 위한 예시적인 도면들로서, 도 30 (a)는 세분화되기 이전에 두 개의 삼각형들(200 및 202)을 갖는 4측 다각형의 일례의 모습이고, 도 30 (b)는 세분화된 후의 네 개의 삼각형들(210, 212, 220 및 222)을 갖는 4측 다각형의 모습이다.
도 31은 아티팩트(artifacts)를 갖는 원뿔(cone)의 삼각형 메시를 나타내는 도면이고, 도 32는 아티팩트를 갖지 않는 원뿔의 삼각형 메시를 나타내는 도면이다.
도 30 (a)와 (b)를 참조하면, 법선(normal)들 사이에서 45도 이상의 넓은 각도를 갖는 두 면들(200 및 202)에 속하는 엣지를 하드 엣지(hard edge)(204)라고 할 경우. 도 31에 도시된 바와 같이, 형태의 손실 즉, 아티팩트가 발생할 수 있다. 따라서, 이러한 아티팩트를 제거하기 위해 도 30 (a)에 도시된 하드 엣지(204)를 무게 중심(S)을 기준으로 도 30 (b)에 도시된 바와 같이 분할한다.
삼각형 세분화부(174)는 먼저 하드 엣지(204)를 분할할 것인가의 여부를 다음 수학식 10과 같이 검사한다.
Figure 112005006974465-pat00011
여기서, s(P)는 점(P)에서의 분할점 S까지 엣지의 평균 길이를 나타내고, s(Q)는 점(Q)에서 분할점 S까지 엣지의 평균 길이를 나타낸다.
만일, 수학식 10이 만족될 경우, 엣지의 길이가 너무 긴 것을 의미하므로, 삼각형 세분화부(174)는 하드 엣지(204)를 분할한다. 이 때, 하드 엣지(204)를 분할하는 분할점(S)는 다음 수학식 11과 같은 좌표를 갖는다.
Figure 112005006974465-pat00012
여기서, Cs는 분할점(S)의 좌표를 의미한다. 수학식 11은 무게 중심을 구하는 식으로서, S는 분할점을 나타내고, s(P)는 중심 분할점 S로부터 P까지의 길이를 의미한다. s(P)와 s(Q)가 같은 경우, 삼각형 세분화부(174)에서 분할되는 점은 하드 엣지(204)의 중심이다. 하지만, s(P)와 s(Q)가 같지 않을 경우 분할점(S)은 가중치들에 비례하여 하드 엣지(204)를 분할한다. 이와 같이, 하드 엣지(204)를 분할할 경우, 도 30 (a)에 도시된 면(200)은 도 30 (b)에 도시된 바와 같이 두 개의 면 들(210 및 212)로 분할되고, 도 30 (a)에 도시된 면(202)는 도 30 (b)에 도시된 바와 같이 두 개의 면들(220 및 222)로 분할된다.
결국, 전술한 바와 같이 4측 다각형들을 세분화할 경우, 도 31에 도시된 아티팩트는 도 32에 도시된 바와 같이 제거될 수 있다.
제194 단계 후에, 삼각형 페어링부(176)는 세분화하여 쪼개어진 홀을 채운 삼각형들을 페어링하고 즉, 유선형으로 매끈하게 다듬고, 그 결과를 출력단자 OUT7을 통해 출력한다(제196 단계).
삼각형 페어링부(176)에서 수행되는 제196 단계에 대해 세부적으로 살펴보면 다음과 같다.
홀의 각 점(p)에 대해 다음 수학식 12와 같이 연산자(U1)를 수립한다.
Figure 112005006974465-pat00013
여기서, w(p)는 점들(p 및 i)이 이루는 엣지의 가중치로서 다음 수학식 13과 같이 표현되고, w(p,i)는 점들(p 및 i)이 이루는 엣지의 가중치를 나타낸다.
Figure 112005006974465-pat00014
합은 엣지에 의해 점(p)과 결합하는 모든 점들 i에 대해 수행되고, 각 점(p) 에 대한 베이스(base)(U1)에 대해 연산자(U2)를 다음 수학식 14와 같이 수립한다.
Figure 112005006974465-pat00015
여기서, U1(p,i)는 p(p,i)에 대한 연산자(U1)를 나타낸다.
평면(plane)에서 U1는 어느 점(p)에서도 0이고, 곡선(curve)에서 U1는 0이 아니지만 U2는 0이 된다. 곡면의 경우, 어느 점과 그의 이웃하는 점들간의 평균 편차는 그 점이나 이웃점들에서 모두 동일하다.
U2(p)가 0인 수학식을 평가하고 점(p)의 새로운 위치를 발견한다. 만일, 가중치[w(p,i)]가 대략 비슷한 길이를 갖는 엣지들 중 어느 엣지에서 1이라면 U1(p)는 다음 수학식 15와 같다.
Figure 112005006974465-pat00016
여기서, n(p)는 점(p)과 엣지로 결합하는 이웃하는 점들의 개수이고, U2(p)는 다음 수학식 16과 같다.
Figure 112005006974465-pat00017
수학식 U2(p)=0은 점(p)에 대해 선형이고, w=1인 경우 다음 수학식 17과 같이 빠르게 결정된다.
Figure 112005006974465-pat00018
Figure 112005006974465-pat00019
Figure 112005006974465-pat00020
Figure 112005006974465-pat00021
Figure 112005006974465-pat00022
Figure 112005006974465-pat00023
Figure 112005006974465-pat00024
Figure 112005006974465-pat00025
Figure 112005006974465-pat00026
만일, 다음 수학식 18이 만족되면, 가중치들을 계산할 때 점들의 좌표들로부터 근(root)을 취할 필요가 있으므로, 수학식 U2(p)=0은 점(p)에 의존하여 이미 비 선형이 된다.
Figure 112005006974465-pat00027
여기서, ∥i-j∥는 점들(i 및 j)이 형성하는 엣지의 길이를 나타낸다.
공액 농도 방법(Conjugate gradients method)에 의해 결정되도록 이러한 수학식 14가 제공된다.
수학식 U2(p)=0이 홀로부터의 각 점에 대해 결정된 후, 홀의 점들은 발견된 값들로 쉬프트하고, 홀로부터의 각 점에 대해 다시 한번 수학식 17이 결정된다.
도 33은 페어링하기 이전의 토로스(torus) 형태의 3차원 영상의 모습을 나타내고, 도 34와 도 35는 페어링하고 스웰링(swelling)한 후에 토로스 형태의 3차원 영상의 모습을 나타내고 반복 횟수는 15로 가정되었다. 도 35에서 희미하게 보여지는 부분(300)은 홀들의 점들을 나타낸다. 홀들의 점들(300)은 면들과 홀을 관련시 킨 후 제로 영역에 투영을 관련시키고 홀에 부가적인 점들을 삽입한 후에 나타난다.
도 33에 도시된 바와 같이 페이링하기 이전의 3차원 영상의 외곽은 삼각형 페이링부(176)에 의해 도 34 및 도 35에 도시된 바와 같이 유선형으로 매끈하게 다듬어졌음을 알 수 있다.
도 36은 페어링하기 이전의 크로스(crossx) 형태의 3차원 영상의 모습을 나타내고, 도 37과 도 38은 페어링하고 스웰링(swelling)한 후에 크로스 형태의 3차원 영상의 모습을 나타내고 반복 횟수는 15로 가정되었다. 도 38에서 희미하게 보여지는 부분(310)은 홀들의 점들을 나타낸다. 홀들의 점들(310)은 면들과 홀을 관련시킨 후 제로 영역에 투영을 관련시키고 홀에 부가적인 점들을 삽입한 후에 나타난다.
도 36에 도시된 바와 같이 페이링하기 이전의 3차원 영상의 외곽은 삼각형 페이링부(176)에 의해 도 37 및 도 38에 도시된 바와 같이 유선형으로 매끈하게 다듬어졌음을 알 수 있다.
고속 공액 농도 방법(fast conjugate gradients method)을 설명하면 다음과 같다.
U2(p)는 다음 수학식 19와 같이 표현될 수 있다.
Figure 112005006974465-pat00028
이 때, U2는 전술한 수학식 12와 같은 베이스 U1에 의해 수립된다.
엣지의 가중치[w(p,i)]가 1일 때, 수학식 U2(p)=0은 정확하게 풀어진다. 엣지의 가중치[w(p,i)]가 ∥p-i∥일 때, 수학식 19를 정확하게 결정하기 어렵다. 수학식 U2(p)는 다음 수학식 20과 같이 세 개의 수학식들로 이루어진다.
Figure 112005006974465-pat00029
Figure 112005006974465-pat00030
Figure 112005006974465-pat00031
수학식 20에 기재된 세 개의 변수들(U2 1, U2 2, U2 3)로부터 함수의 최소값을 다음 수학식 21과 같이 찾는다.
Figure 112005006974465-pat00032
독립된 몇 개의 변수가 있는 함수들의 경우, 최소값은 고속 공액 농도 방법 을 이용하여 찾는다. 초기에, 독립된 몇 개의 변수가 있는 점들이 할당된다. 농도는 이 점에서 수립된다. 함수들에 대한 농도는 벡터, 포인팅(pointing)이고, 그러한 측면에서 함수가 빨라지도록 움직일 필요가 있다. 반 농도(anti-gradient)를 따라 가면, 함수는 빠르게 감소할 것이다. 공액 농도 방법에 의하면, 함수가 감소하기 이전에 그리고 다시 한 번 증가하기 시작한 후에 반 농도에 대해 최소값을 찾고, 필요한 점을 다음 수학식 22와 같이 수립한다.
Figure 112005006974465-pat00033
여기서, x(k)는 k단계에서 점들이고, a(k)는 반 농도 -1*grad f에 대한 쉬프트이다. 함수가 감소하기 이전에 다시 한번 증가하기 시작한 후, 그러한 a를 발견할 필요가 있다. 함수가 감소할 때까지 반 농도를 따라 쉬프팅한다. 반 농도를 따라 움직일 때, 독립된 몇 개의 변수를 갖는 함수(f)는 사실 하나의 변수(a)를 갖는 함수이다. 여기서, a는 반 농도에 대한 쉬프트이다. a를 찾기 위해, 독립된 하나의 변수를 갖는 함수에 대한 최소값을 찾는 방법을 이용한다.
도 39는 w(p,i)=∥p-1∥일 때 크로스를 나타내는 도면이고 희미하게 보여지는 부분은 페어링 영역을 나타내고, 도 40은 w(p,i)=∥p-1∥일 때 토로스를 나타내는 도면으로서 희미하게 보여지는 부분(320)은 페어링 영역을 나타낸다.
예를 들면, 2차 다항식 보간 방법(square-law interpolation method)을 사용한다. 이 방법은 3점들에 대해 2차 다항식까지 함수를 근사화시킨다. 요구되는 정 확도를 갖는 최소값이 발견될 때까지 3개의 점들에 대해 되풀이된다. 고속 공액 농도 방법에서, 어느 가중치에 대해서 수학식 U2(p)=0을 결정하고, w(p,i)=∥p-1∥에서 도 39 또는 도 40과 같이 결정된다.
본 발명의 다른 실시예에 의하면, 도 21에 도시된 바와 달리 홀 처리부(34)는 홀 발견부(170) 및 홀 삼각형 형성부(172)만으로 구현될 수도 있고, 홀 발견부(170), 홀 삼각형 형성부(172) 및 삼각형 세분화부(174)만으로 구현될 수도 있고, 홀 발견부(170), 홀 삼각형 형성부(172) 및 삼각형 페어링부(176)만으로 구현될 수도 있다.
한편, 본 발명의 다른 실시예에 의하면, 도 1에 도시된 표면 표현부(10)는 표면점 검색부(30)만으로 구현될 수 있다. 이 경우, 도 2에 도시된 제20 단계는 제40 단계만으로 구현될 수 있다. 이 때, 표면점 검색부(30)는 전술한 바와 같이 표면점들을 찾고, 찾아진 표면점들을 출력단자 OUT2를 통해 출력한다(제40 단계). 이 때, 표면점 검색부(30)로부터 출력되는 표면점들은 이용하여 종래의 방법에 의해 3차원 영상의 표면을 삼각 분할하는데 사용될 수 있다.
본 발명의 또 다른 실시예에 의하면, 도 1에 도시된 표면 표현부(10)는 4측 다각형 생성부(32)만으로 구현될 수 있다. 이 경우, 도 2에 도시된 제20 단계는 제42 단계만으로 구현될 수 있다. 이 때, 4측 다각형 생성부(32)는 종래의 방법에 의해 생성된 표면점들을 입력단자 IN3을 통해 입력하고, 입력한 표면점들을 이용하여 전술한 바와 같이 4측 다각형을 획득하고, 획득한 4측 다각형들을 출력단자 OUT3을 통해 출력한다(제42 단계). 여기서, 종래의 방법은 예를 들면, L. Kobbelt, M. Botsch, U. Schwanecke, and H-P. Seidel, "Feature Sensitive Surface Extraction from Volume Data," Proc. SIGGRAPH 2001. J.R. Lersch, B.N. Webb, and K.F. West, "Structural-surface extraction from 3D laser radar point clouds," Proc. of SPIE Vol. 5412, pp. 345-353, 2004에 개시되어 있다. 이 때, 출력단자 OUT3을 통해 출력되는 4측 다각형들은 종래의 방법에 의해 3차원 영상의 표면을 삼각 분할하는데 사용될 수 있다.
본 발명의 또 다른 실시예에 의하면, 표면 표현부(10)는 표면점 검색부(30)와 4측 다각형 생성부(32)만으로 구현될 수 있다. 이 경우, 도 2에 도시된 제20 단계는 제40 및 제42 단계들로 이루어진다. 이 때, 4측 다각형 생성부(32)로부터 출력단자 OUT3을 통해 출력되는 4측 다각형들은 3차원 영상의 표면을 삼각 분할하는데 사용될 수 있다.
본 발명의 또 다른 실시예에 의하면, 도 1에 도시된 표면점 검색부(10)는 홀 검색부(34)만으로 구현될 수 있다. 이 경우, 도 2에 도시된 제20 단계는 제44 단계만으로 구현된다. 홀 검색부(34)는 종래의 방법에 의해 생성된 4측 다각형들을 입력단자 IN4를 통해 입력하고, 입력한 4측 다각형들에 대한 정보를 이용하여 3차원 영상의 표면에서 4측 다각형으로 결정되지 않은 표면점들에 의해 형성되는 홀들에 삼각형들을 채운다(제44 단계). 여기서, 종래의 방법은 예를 들면 'O. Faugeras', 'M. Hebert', 'P. Mussi' 및 'J-D. Boissonnat'에 의해 "Polyhedral approximation of 3-D objects without holes"라는 제목으로 Computer Vision, Graphics and Image Processing, 25;169-183, 1984에 발표된 논문에 개시되어 있다.
이 때, 홀 처리부(34)에서 삼각형들로 채워진 삼각형들은 종래의 방법에 의해 3차원 영상의 표면을 삼각 분할하는데 사용된다. 여기서, 종래의 방법은 'W.E. Lorensen' 및 'H.E. Cline'에 의해 "Marching cubes : A high resolution 3D surface construction algorithm"라는 제목으로 Proceedings of the 14th annual conference on Computer graphics and interactive techniques에 1987년도에 발표된 논문의 페이지 163-169쪽들 및 'Chen Yang' 및 'G. Medioni'에 의해 "Fitting a surface to 3-D points using an inflating balloon model"라는 제목으로 CAD-Based Vision Workshop에서 1994년도에 발표된 논문의 페이지 266-273쪽들에 개시되어 있다.
본 발명의 또 다른 실시예에 의하면, 도 1에 도시된 표면점 검색부(10)는 4측 다각형 생성부(32)와 홀 처리부(34)만으로 구현될 수 있다. 이 경우, 도 2에 도시된 제20 단계는 제42 및 제44 단계들로 구현될 수 있다.
한편, 도 1에 도시된 정보 출력부(12)는 표면 표현부(10)에서 표현된 결과를 출력단자 OUT1을 통해 출력한다(제22 단계).
정보 출력부(12)에서 수행되는 제22 단계에 대해 세부적으로 살펴보면 다음과 같다.
도 41은 VxDemo 표현된 결과를 내보내는 즉, 표현된 결과를 전송(export)하기 위한 사용자 인터페이스 화면의 일례를 나타내는 도면이고, 도 42는 전송 해상도를 결정하기 위한 사용자 인터페이스 화면의 일례를 나타내는 도면이다.
도 41에 도시된 바와 같이 파일 메뉴에서 'Save As'를 선택하여 VxDemo로부터 약속된 포맷으로 객체를 전송할 수 있다. 쿼토 및/또는 이진화 분할의 레벨을 변화시키기 위해 도 41에 도시된 메뉴중 'View'란 메뉴를 선택한 후 'Options'을 선택하면 도 42에 도시된 바와 같은 창이 디스플레이된다. 이 때, 도 42에 도시된 창에서 원근 인자(perspective factor)는 무시되었다. 따라서, 사용자는 도 42에 도시된 창에서 원하는 레벨을 선택할 수 있다. 3차원 영상을 개략적으로 보기 위해서는 쿼도 레벨을 '5'로 선택하고 이진화 레벨을 '7'로 선택하는 것이 바람직하며 최종 전송을 위해 더 나은 해상도가 선택될 수도 있다.
한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성 가능하고, 컴퓨터로 읽을 수 있는 기록 매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체는 마그네틱 저장 매체(예를 들어, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등) 및 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)와 같은 저장 매체를 포함한다.
이하, 본 발명에 의한 3차원 영상의 삼각 분할 장치를 제어하는 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체를 다음과 같이 설명한다.
3차원 영상의 표면을 삼각 분할하는 3차원 영상의 삼각 분할 장치를 제어하는 적어도 하나의 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체에서, 이 컴퓨터 프로그램은 3차원 영상의 표면을 홀 없이 삼각형들의 형태로 표현시키는 단계 및 표현된 결과를 내 보내게 하는 단계를 수행한다. 이 때, 표면을 표현 하는 단계는 3차원 영상의 표면을 이루는 표면점들을 쿼토 분할과 이진 분할에 의해 찾는 단계와, 3차원 영상의 표면을 이루는 찾아진 표면점들을 소정 방향으로 연결해가면서 다수개의 4측 다각형들을 획득시키는 단계 및 3차원 영상의 표면에서 4측 다각형으로 결정되지 않은 표면점들에 의해 형성되는 홀들에 삼각형들을 채우게 하는 단계를 수행한다.
표면점들을 찾는 단계는 3차원 영상이 투영된 2차원 영상의 경계면을 쿼토 분할에 의해 찾는 단계와, 찾아진 경계면에 대한 정보를 이용하여 3차원 영상에 빛을 조사시키고, 3차원 영상에서 조사된 빛과 교차하는 점들을 이진 분할에 의해 찾는 단계 및 찾아진 점들 중 표면점만을 선택시키는 단계를 수행한다. 4측 다각형들을 획득시키는 단계는 표면점들 중에서 시작점을 결정시키는 단계와, 시작점과 이웃하는 표면점을 소정 방향으로 탐색시키는 단계와, 탐색된 표면점이 시작점인가를 판단시키고, 탐색된 표면점이 시작점이 아니라고 판단되면, 탐색하는 단계로 진행시키는 단계와, 탐색된 표면점이 시작점인 것으로 판단되면, 탐색된 표면점들을 연결하여 4측 다각형을 결정시키는 단계 및 모든 표면점들이 탐색되었는가를 판단시키고, 모든 표면점들이 탐색되었다고 판단되면 홀들에 삼각형을 채우는 단계로 진행시키는 단계를 수행한다. 이 때, 모든 표면점들이 탐색되지 않았다고 판단되면, 탐색되지 않은 표면점 중 하나가 다른 시작점으로서 결정된다. 홀들에 삼각형을 채우는 단계는 홀들을 발견시키는 단계 및 발견된 홀에 속하는 표면점들 중에서 가장 가까운 표면점들을 서로 연결하여 형성된 적어도 하나의 삼각형으로 발견된 홀을 채우는 단계를 수행한다. 게다가, 홀들에 삼각형을 채우는 단계는 홀을 채운 삼각 형들을 더 작은 크기의 삼각형으로 세분화하여 쪼개는 단계를 더 수행할 수도 있고, 세분화된 삼각형들을 유선형으로 매끈하게 다듬게 하는 단계를 더 수행할 수도 있다.
도 43은 자동차 모델을 갖는 3차원 영상의 표면을 삼각형들의 조합으로 표현한 모습을 나타내고, 도 44는 주전자 모델을 갖는 3차원 영상의 표면을 삼각형들의 조합으로 표현한 모습을 나타낸다.
도 44에서, 쿼도 레벨이 '9'이고, 이진 레벨이 '10'이고, 면의 개수가 '136306'개 이고, 정점의 개수가 '68418'개 이고, 섭동 함수(perturbation function)들의 개수를 '83'개로 설정하였다.
도 45에서, 쿼도 레벨이 '9'이고, 이진 레벨이 '10'이고, 면의 개수가 '317188'개 이고, 정점의 개수가 '158613'개 이고, 섭동 함수들의 개수를 '13'개로 설정하였다.
이상에서 설명한 바와 같이, 본 발명에 의한 3차원 영상의 삼각 분할 장치 및 방법과 그 장치를 제어하는 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체는, 3차원 영상의 표면점들을 찾기 위해 3차원 공간의 모든 셀들을 탐색하는 종래의 스텝-바이-스텝(step-by-step) 방법과 달리 쿼토 분할과 이진 분할을 이용함으로써 표면점들을 빠르고 쉽게 적은 계산량만으로 저렴하게 찾을 수 있고, 이로 인해 3차원 영상의 표면을 삼각형들의 조합으로 신뢰성, 범용성과 효율성을 겸비하면서 표현할 수 있고, 표면점들을 수평 및 수직 방향들로만 연결해가면서 4 측 다각형들을 획득하는 종래와 달리, 대각선 방향으로도 표면점들을 연결하여 4측 다각형들을 획득할 수 있으므로 4측 다각형들을 보다 정확하게 획득할 수 있을 뿐만 아니라 홀들의 발생을 원천적으로 감소시킬 수 있어 사용자가 직접 변형되는 표현을 보면서 편집을 할 수 있도록 하고, 정확히 표면을 찾고 표면점을 이용하여 삼각형을 만들고 홀을 제거할 수 있어 3차원 영상을 바르게 보여줄 수 있으므로 동적 물체의 편집을 위한 직관적인 데이타 표현을 위한 도구로서 이용될 수 있는 효과를 갖는다.

Claims (26)

  1. 3차원 영상의 표면을 삼각 분할하는 3차원 영상의 삼각 분할 장치에 있어서,
    상기 3차원 영상의 표면을 홀 없이 삼각형들의 형태로 표현하는 표면 표현부; 및
    상기 표현된 결과를 출력하는 정보 출력부를 구비하는 것을 특징으로 하는 3차원 영상의 삼각 분할 장치.
  2. 제1 항에 있어서, 상기 표면 표현부는
    상기 3차원 영상의 표면을 이루는 표면점들을 쿼토 분할과 이진 분할에 의해 찾는 표면점 검색부를 구비하고,
    상기 표면점 검색부에서 찾은 상기 표면점들은 상기 3차원 영상의 표면을 삼각 분할하는데 사용되는 것을 특징으로 하는 3차원 영상의 삼각 분할 장치.
  3. 제1 항에 있어서, 상기 표면 표현부는
    상기 3차원 영상의 표면을 이루는 표면점들을 소정 방향으로 연결해가면서 다수개의 4측 다각형들을 획득하는 4측 다각형 생성부를 구비하고,
    상기 소정 방향은 적어도 대각선 방향을 포함하고, 상기 4측 다각형 생성부에서 획득된 상기 4측 다각형들 각각은 두 개의 상기 삼각형들을 갖는 것을 특징으로 하는 3차원 영상의 삼각 분할 장치.
  4. 제2 항에 있어서, 상기 표면 표현부는
    상기 표면점 검색부에서 찾아진 표면점들을 소정 방향으로 연결해가면서 다수개의 4측 다각형들을 획득하는 4측 다각형 생성부를 더 구비하고,
    상기 소정 방향은 적어도 대각선 방향을 포함하고, 상기 4측 다각형 생성부에서 획득된 상기 4측 다각형들 각각은 두 개의 상기 삼각형들을 갖는 것을 특징으로 하는 3차원 영상의 삼각 분할 장치.
  5. 제1 항에 있어서, 상기 표면 표현부는
    상기 3차원 영상의 표면에서 4측 다각형으로 결정되지 않은 표면점들에 의해 형성되는 상기 홀들에 삼각형들을 채우는 홀 처리부를 구비하고,
    상기 홀 처리부에서 상기 삼각형들로 채워진 삼각형들은 상기 3차원 영상의 표면을 삼각 분할하는데 사용되는 것을 특징으로 하는 3차원 영상의 삼각 분할 장 치.
  6. 제2 항 내지 제4 항 중 어느 한 항에 있어서, 상기 표면 표현부는
    상기 3차원 영상의 표면에서 4측 다각형으로 결정되지 않은 표면점들에 의해 형성되는 상기 홀들에 삼각형들을 채우는 홀 처리부를 더 구비하는 것을 특징으로 하는 3차원 영상의 삼각 분할 장치.
  7. 제2 항에 있어서, 상기 표면점 검색부는
    상기 3차원 영상이 투영된 2차원 영상의 경계면을 상기 쿼토 분할에 의해 찾는 경계 탐색부;
    상기 찾아진 경계면에 대한 정보를 이용하여 상기 3차원 영상에 빛을 조사하고, 상기 3차원 영상에서 상기 조사된 빛과 교차하는 점들을 상기 이진 분할에 의해 찾는 표면점 탐색부; 및
    상기 찾아진 점들 중 상기 표면점만을 선택하는 표면점 선택부를 구비하는 것을 특징으로 하는 3차원 영상의 삼각 분할 장치.
  8. 제3 항 또는 제4 항에 있어서, 상기 4측 다각형 생성부는
    제1 제어 신호에 응답하여 상기 표면점들 중에서 시작점을 결정하고, 제2 제어 신호에 응답하여 상기 시작점과 이웃하는 상기 표면점을 상기 소정 방향으로 탐색하는 이웃 표면점 탐색부;
    상기 탐색된 표면점이 상기 시작점인가를 검사하고, 검사된 결과를 상기 제2 제어 신호로서 출력하는 탐색점 검사부; 및
    상기 제2 제어 신호에 응답하여 상기 이웃 표면점 탐색부에서 탐색된 점들을 연결하여 상기 4측 다각형을 결정하고, 결정 여부를 상기 제1 제어 신호로서 출력하는 다각형 결정부를 구비하는 것을 특징으로 하는 3차원 영상의 삼각 분할 장치.
  9. 제6 항에 있어서, 상기 4측 다각형 생성부는
    제1 제어 신호에 응답하여 상기 표면점들 중에서 시작점을 결정하고, 제2 제어 신호에 응답하여 상기 시작점과 이웃하는 상기 표면점을 상기 소정 방향으로 탐색하는 이웃 표면점 탐색부;
    상기 탐색된 표면점이 상기 시작점인가를 검사하고, 검사된 결과를 상기 제2 제어 신호로서 출력하는 탐색점 검사부; 및
    상기 제2 제어 신호에 응답하여 상기 이웃 표면점 탐색부에서 탐색된 점들을 연결하여 상기 4측 다각형을 결정하고, 결정된 결과를 상기 제1 제어 신호로서 출력하는 다각형 결정부를 구비하는 것을 특징으로 하는 3차원 영상의 삼각 분할 장치.
  10. 제5 항에 있어서, 상기 홀 처리부는
    상기 홀들을 발견하는 홀 발견부; 및
    상기 발견된 홀에 속하는 표면점들 중에서 가장 가까운 표면점들을 서로 연 결하여 형성된 상기 적어도 하나의 삼각형으로 상기 발견된 홀을 채우는 홀 삼각형 형성부를 구비하는 것을 특징으로 하는 3차원 영상의 삼각 분할 장치.
  11. 제10 항에 있어서, 상기 홀 처리부는
    상기 홀을 채운 삼각형들을 더 작은 크기의 삼각형으로 세분화하여 쪼개는 삼각형 세분화부를 더 구비하는 것을 특징으로 하는 3차원 영상의 삼각 분할 장치.
  12. 제10 또는 제11 항에 있어서, 상기 홀 처리부는
    상기 홀을 채운 삼각형들을 유선형으로 매끈하게 다듬는 삼각형 페어링부를 더 구비하는 것을 특징으로 하는 3차원 영상의 삼각 분할 장치.
  13. 3차원 영상의 표면을 삼각 분할하는 3차원 영상의 삼각 분할 방법에 있어서,
    (a) 상기 3차원 영상의 표면을 홀 없이 삼각형들의 형태로 표현하는 단계; 및
    (b) 상기 표현된 결과를 내보내는 단계를 구비하는 것을 특징으로 하는 3차원 영상의 삼각 분할 방법.
  14. 제13 항에 있어서, 상기 (a) 단계는
    (a1) 상기 3차원 영상의 표면을 이루는 표면점들을 쿼토 분할과 이진 분할에 의해 찾는 단계;
    (a2) 상기 3차원 영상의 표면을 이루는 상기 찾아진 표면점들을 소정 방향으로 연결해가면서 다수개의 4측 다각형들을 획득하는 단계; 및
    (a3) 상기 3차원 영상의 표면에서 상기 4측 다각형으로 결정되지 않은 표면점들에 의해 형성되는 상기 홀들에 삼각형들을 채우는 단계를 구비하고,
    상기 소정 방향은 적어도 대각선 방향을 포함하고, 상기 4측 다각형들 각각은 두 개의 상기 삼각형들을 갖는 것을 특징으로 하는 3차원 영상의 삼각 분할 방법.
  15. 제14 항에 있어서, 상기 (a1) 단계는
    상기 3차원 영상이 투영된 2차원 영상의 경계면을 상기 쿼토 분할에 의해 찾는 단계;
    상기 찾아진 경계면에 대한 정보를 이용하여 상기 3차원 영상에 빛을 조사하고, 상기 3차원 영상에서 상기 조사된 빛과 교차하는 점들을 상기 이진 분할에 의해 찾는 단계; 및
    상기 찾아진 점들 중 상기 표면점만을 선택하는 단계를 구비하는 것을 특징으로 하는 3차원 영상의 삼각 분할 방법.
  16. 제14 항에 있어서, 상기 (a2) 단계는
    상기 표면점들 중에서 시작점을 결정하는 단계;
    상기 시작점과 이웃하는 상기 표면점을 상기 소정 방향으로 탐색하는 단계;
    상기 탐색된 표면점이 상기 시작점인가를 판단하고, 상기 탐색된 표면점이 상기 시작점이 아니라고 판단되면, 상기 탐색하는 단계로 진행하는 단계;
    상기 탐색된 표면점이 상기 시작점인 것으로 판단되면, 상기 탐색된 표면점들을 연결하여 상기 4측 다각형을 결정하는 단계; 및
    상기 모든 표면점들이 탐색되었는가를 판단하고, 상기 모든 표면점들이 탐색되었다고 판단되면 상기 (a3) 단계로 진행하는 단계를 구비하고,
    상기 모든 표면점들이 탐색되지 않았다고 판단되면, 상기 탐색되지 않은 표면점 중 하나가 다른 시작점으로서 결정되는 것을 특징으로 하는 3차원 영상의 삼각 분할 방법.
  17. 제14 항에 있어서, 상기 (a3) 단계는
    상기 홀들을 발견하는 단계; 및
    상기 발견된 홀에 속하는 표면점들 중에서 가장 가까운 표면점들을 서로 연결하여 형성된 상기 적어도 하나의 삼각형으로 상기 발견된 홀을 채우는 단계를 구비하는 것을 특징으로 하는 3차원 영상의 삼각 분할 방법.
  18. 제17 항에 있어서, 상기 (a3) 단계는
    상기 홀을 채운 삼각형들을 더 작은 크기의 삼각형으로 세분화하여 쪼개는 단계를 더 구비하는 것을 특징으로 하는 3차원 영상의 삼각 분할 방법.
  19. 제18 항에 있어서, 상기 (a3) 단계는
    상기 세분화된 삼각형들을 유선형으로 매끈하게 다듬는 단계를 더 구비하는 것을 특징으로 하는 3차원 영상의 삼각 분할 방법.
  20. 3차원 영상의 표면을 삼각 분할하는 3차원 영상의 삼각 분할 장치를 제어하는 적어도 하나의 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체에 있어서,
    (a) 상기 3차원 영상의 표면을 홀 없이 삼각형들의 형태로 표현시키는 단계; 및
    (b) 상기 표현된 결과를 내 보내게 하는 단계를 수행하기 위한 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체.
  21. 제20 항에 있어서, 상기 (a) 단계는
    (a1) 상기 3차원 영상의 표면을 이루는 표면점들을 쿼토 분할과 이진 분할에 의해 찾는 단계;
    (a2) 상기 3차원 영상의 표면을 이루는 상기 찾아진 표면점들을 소정 방향으로 연결해가면서 다수개의 4측 다각형들을 획득시키는 단계; 및
    (a3) 상기 3차원 영상의 표면에서 상기 4측 다각형으로 결정되지 않은 표면점들에 의해 형성되는 상기 홀들에 삼각형들을 채우게 하는 단계를 수행하기 위한 컴퓨터 프로그램을 저장하고,
    상기 소정 방향은 적어도 대각선 방향을 포함하고, 상기 4측 다각형들 각각은 두 개의 상기 삼각형들을 갖는 것을 특징으로 하는 컴퓨터로 읽을 수 있는 기록 매체.
  22. 제20 항에 있어서, 상기 (a1) 단계는
    상기 3차원 영상이 투영된 2차원 영상의 경계면을 상기 쿼토 분할에 의해 찾는 단계;
    상기 찾아진 경계면에 대한 정보를 이용하여 상기 3차원 영상에 빛을 조사시키고, 상기 3차원 영상에서 상기 조사된 빛과 교차하는 점들을 상기 이진 분할에 의해 찾는 단계; 및
    상기 찾아진 점들 중 상기 표면점만을 선택시키는 단계를 수행하기 위한 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체.
  23. 제20 항에 있어서, 상기 (a2) 단계는
    상기 표면점들 중에서 시작점을 결정시키는 단계;
    상기 시작점과 이웃하는 상기 표면점을 상기 소정 방향으로 탐색시키는 단계;
    상기 탐색된 표면점이 상기 시작점인가를 판단시키고, 상기 탐색된 표면점이 상기 시작점이 아니라고 판단되면, 상기 탐색하는 단계로 진행시키는 단계;
    상기 탐색된 표면점이 상기 시작점인 것으로 판단되면, 상기 탐색된 표면점 들을 연결하여 상기 4측 다각형을 결정시키는 단계; 및
    상기 모든 표면점들이 탐색되었는가를 판단시키고, 상기 모든 표면점들이 탐색되었다고 판단되면 상기 (a3) 단계로 진행시키는 단계를 수행하기 위한 컴퓨터 프로그램을 저장하고,
    상기 모든 표면점들이 탐색되지 않았다고 판단되면, 상기 탐색되지 않은 표면점 중 하나가 다른 시작점으로서 결정되는 것을 특징으로 하는 컴퓨터로 읽을 수 있는 기록 매체.
  24. 제20 항에 있어서, 상기 (a3) 단계는
    상기 홀들을 발견시키는 단계; 및
    상기 발견된 홀에 속하는 표면점들 중에서 가장 가까운 표면점들을 서로 연결하여 형성된 상기 적어도 하나의 삼각형으로 상기 발견된 홀을 채우는 단계를 수행하기 위한 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체.
  25. 제20 항에 있어서, 상기 (a3) 단계는
    상기 홀을 채운 삼각형들을 더 작은 크기의 삼각형으로 세분화하여 쪼개는 단계를 더 수행하기 위한 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체.
  26. 제20 항에 있어서, 상기 (a3) 단계는
    상기 세분화된 삼각형들을 유선형으로 매끈하게 다듬게 하는 단계를 더 수행하기 위한 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체.
KR1020050010819A 2005-02-04 2005-02-04 3차원 영상의 삼각 분할 장치 및 방법과 그 장치를제어하는 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수있는 기록 매체 KR100634537B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020050010819A KR100634537B1 (ko) 2005-02-04 2005-02-04 3차원 영상의 삼각 분할 장치 및 방법과 그 장치를제어하는 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수있는 기록 매체
US11/347,428 US7675516B2 (en) 2005-02-04 2006-02-06 Apparatus and method for triangulating 3D image and computer-readable recording medium storing computer program for controlling the apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050010819A KR100634537B1 (ko) 2005-02-04 2005-02-04 3차원 영상의 삼각 분할 장치 및 방법과 그 장치를제어하는 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수있는 기록 매체

Publications (2)

Publication Number Publication Date
KR20060089998A KR20060089998A (ko) 2006-08-10
KR100634537B1 true KR100634537B1 (ko) 2006-10-13

Family

ID=36779465

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050010819A KR100634537B1 (ko) 2005-02-04 2005-02-04 3차원 영상의 삼각 분할 장치 및 방법과 그 장치를제어하는 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수있는 기록 매체

Country Status (2)

Country Link
US (1) US7675516B2 (ko)
KR (1) KR100634537B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013165046A1 (ko) * 2012-05-04 2013-11-07 전자부품연구원 홀 발생 억제를 위한 3d워핑 방법 및 이를 적용한 영상 처리 장치

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201020974A (en) * 2008-11-26 2010-06-01 Inst Information Industry Triangulation processing systems and methods, and computer program products thereof
US10139985B2 (en) 2012-06-22 2018-11-27 Matterport, Inc. Defining, displaying and interacting with tags in a three-dimensional model
US10163261B2 (en) 2014-03-19 2018-12-25 Matterport, Inc. Selecting two-dimensional imagery data for display within a three-dimensional model
US9786097B2 (en) 2012-06-22 2017-10-10 Matterport, Inc. Multi-modal method for interacting with 3D models
RU2014111793A (ru) * 2014-03-27 2015-10-10 ЭлЭсАй Корпорейшн Процессор обработки изображений с распознаванием статических поз руки с использованием триангуляции и сглаживания контуров
TWI529662B (zh) 2014-12-15 2016-04-11 財團法人工業技術研究院 基於深度資訊的模型建構方法、圖形處理裝置與紀錄媒體
US9836874B2 (en) 2015-01-27 2017-12-05 Splunk Inc. Efficient polygon-clipping technique to reduce data transfer requirements for a viewport
US10026204B2 (en) 2015-01-27 2018-07-17 Splunk Inc. Efficient point-in-polygon indexing technique for processing queries over geographic data sets
US9916326B2 (en) 2015-01-27 2018-03-13 Splunk, Inc. Efficient point-in-polygon indexing technique for facilitating geofencing operations
US9607414B2 (en) * 2015-01-27 2017-03-28 Splunk Inc. Three-dimensional point-in-polygon operation to facilitate displaying three-dimensional structures
US9767122B2 (en) 2015-01-27 2017-09-19 Splunk Inc. Efficient point-in-polygon indexing technique to facilitate displaying geographic data
CN106384372B (zh) * 2016-08-31 2019-08-09 重庆大学 视图合成方法和装置

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5428717A (en) * 1991-12-30 1995-06-27 Xerox Corporation Methods for converting concave polyhedra to their convex hulls
US6100893A (en) * 1997-05-23 2000-08-08 Light Sciences Limited Partnership Constructing solid models using implicit functions defining connectivity relationships among layers of an object to be modeled
US6208347B1 (en) * 1997-06-23 2001-03-27 Real-Time Geometry Corporation System and method for computer modeling of 3D objects and 2D images by mesh constructions that incorporate non-spatial data such as color or texture
US6563499B1 (en) * 1998-07-20 2003-05-13 Geometrix, Inc. Method and apparatus for generating a 3D region from a surrounding imagery
US6650324B1 (en) * 1999-10-29 2003-11-18 Intel Corporation Defining surface normals in a 3D surface mesh
US7038681B2 (en) * 2000-03-29 2006-05-02 Sourceprose Corporation System and method for georeferencing maps
US7538764B2 (en) * 2001-01-05 2009-05-26 Interuniversitair Micro-Elektronica Centrum (Imec) System and method to obtain surface structures of multi-dimensional objects, and to represent those surface structures for animation, transmission and display
GB0117157D0 (en) * 2001-07-16 2001-09-05 Imec Inter Uni Micro Electr Extraction, hierarchical representation and flexible compression of surface meshes derived from 3D data
US20030151604A1 (en) * 2001-11-21 2003-08-14 Research Foundation Of State University Of New York Volume rendering with contouring texture hulls
KR100492517B1 (ko) * 2002-03-07 2005-06-03 장형수 닥나무 인피섬유를 이용한 인피섬유지 제조장치, 제조방법및 그 방법에 의해 제조된 인피섬유지
US7030881B2 (en) * 2003-03-25 2006-04-18 Mitsubishi Electric Research Laboratories, Inc. Method for converting two-dimensional objects to distance fields
US7075532B2 (en) * 2003-05-23 2006-07-11 International Business Machines Corporation Robust tetrahedralization and triangulation method with applications in VLSI layout design and manufacturability
US7055119B2 (en) * 2003-07-31 2006-05-30 International Business Machines Corporation Customized mesh plane, method and computer program product for creating customized mesh planes within electronic packages
US7272264B2 (en) * 2003-09-11 2007-09-18 International Business Machines Corporation System and method for hole filling in 3D models
US7283140B2 (en) * 2005-06-21 2007-10-16 Microsoft Corporation Texture montage

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013165046A1 (ko) * 2012-05-04 2013-11-07 전자부품연구원 홀 발생 억제를 위한 3d워핑 방법 및 이를 적용한 영상 처리 장치

Also Published As

Publication number Publication date
US20060176297A1 (en) 2006-08-10
KR20060089998A (ko) 2006-08-10
US7675516B2 (en) 2010-03-09

Similar Documents

Publication Publication Date Title
KR100634537B1 (ko) 3차원 영상의 삼각 분할 장치 및 방법과 그 장치를제어하는 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수있는 기록 매체
EP1959392B1 (en) Method, medium, and system implementing 3D model generation based on 2D photographic images
JP4392507B2 (ja) 3次元サーフェス生成方法
US7483024B2 (en) Accelerated ray-object intersection
US7576737B2 (en) Image processing device and program
US20050052452A1 (en) 3D computer surface model generation
US20130127847A1 (en) System and Method for Interactive Image-based Modeling of Curved Surfaces Using Single-view and Multi-view Feature Curves
US20180144545A1 (en) Method of simplifying a geometry model
KR100506822B1 (ko) 3차원 다각형의 화면 표시방법
Virtanen et al. Interactive dense point clouds in a game engine
KR100935886B1 (ko) 그래픽스 처리 유닛을 이용한 사진트리 기반의 지형 렌더링 방법
CN113706713A (zh) 一种实景三维模型裁剪方法、装置及计算机设备
CN104574515A (zh) 一种三维物体重建的方法、装置和终端
CN111788608A (zh) 用于建模光反射的混合射线跟踪方法
Mudge et al. Viewpoint quality and scene understanding
US7586494B2 (en) Surface detail rendering using leap textures
Meerits et al. Real-time scene reconstruction and triangle mesh generation using multiple RGB-D cameras
US20050116948A1 (en) Line clipping method and method for displaying three-dimensional image using the same
Rougeron et al. Optimal positioning of terrestrial LiDAR scanner stations in complex 3D environments with a multiobjective optimization method based on GPU simulations
US9454554B1 (en) View dependent query of multi-resolution clustered 3D dataset
Wiemann et al. Automatic Map Creation For Environment Modelling In Robotic Simulators.
Ma et al. Rapid reconstruction of a three-dimensional mesh model based on oblique images in the Internet of Things
Li et al. Efficient ray casting polygonized isosurface of binary volumes
Sommer et al. Geometry and rendering optimizations for the interactive visualization of crash-worthiness simultations
US20110074777A1 (en) Method For Displaying Intersections And Expansions of Three Dimensional Volumes

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
FPAY Annual fee payment

Payment date: 20120914

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20130924

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140922

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee