KR101591472B1 - 점진적 메쉬 복호화 방법과 장치 - Google Patents

점진적 메쉬 복호화 방법과 장치 Download PDF

Info

Publication number
KR101591472B1
KR101591472B1 KR1020090032923A KR20090032923A KR101591472B1 KR 101591472 B1 KR101591472 B1 KR 101591472B1 KR 1020090032923 A KR1020090032923 A KR 1020090032923A KR 20090032923 A KR20090032923 A KR 20090032923A KR 101591472 B1 KR101591472 B1 KR 101591472B1
Authority
KR
South Korea
Prior art keywords
resolution
mesh
vertex
vertices
current
Prior art date
Application number
KR1020090032923A
Other languages
English (en)
Other versions
KR20100114409A (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 KR1020090032923A priority Critical patent/KR101591472B1/ko
Priority to US12/714,069 priority patent/US8928660B2/en
Publication of KR20100114409A publication Critical patent/KR20100114409A/ko
Application granted granted Critical
Publication of KR101591472B1 publication Critical patent/KR101591472B1/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/001Model-based coding, e.g. wire frame
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/537Motion estimation other than block-based
    • H04N19/54Motion estimation other than block-based using feature points or meshes

Abstract

점진적 메쉬 복호화 방법과 장치, 및 이를 위한 컴퓨터 판독 가능한 기록매체를 제공한다. 일 실시예에 따른 점진적 메쉬 복호화 방법에서는, 우선 기저 메쉬로부터 정점 추가를 통해 제1 희망 해상도의 메쉬를 점진적으로 복구한다. 이 때, 기저 메쉬에서부터 제1 희망 해상도의 메쉬까지, 각 단계에서는 해당 단계에서의 메쉬의 해상도를 지시하는 정점 레벨 정보를 추가되는 정점들에 기록한다. 그리고 외부로부터 제1 희망 해상도보다 낮은 제2 희망 해상도의 메쉬가 요청되면, 이 제1 희망 해상도의 메쉬로부터 정점 삭제를 통해 제2 희망 해상도의 메쉬를 점진적으로 복구하는데, 이 경우에 각 정점에 기록되어 있는 정점 레벨 정보를 이용하여 해당 단계에서 삭제될 정점인지를 판정한다.
Figure R1020090032923
메쉬, 해상도, 컴퓨터 그래픽, 점진적 메쉬

Description

점진적 메쉬 복호화 방법과 장치{Method and apparatus for decoding progressive meshes}
본 명세서는 컴퓨터 그래픽(computer graphics)에 관한 것으로, 보다 구체적으로 컴퓨터 그래픽으로 삼차원 모델을 표현하기 위한 점진적 메쉬 복호화 알고리즘(progressive mesh decoding algorithm)에 관한 것이다.
컴퓨터 그래픽으로 삼차원 모델을 표현하는 방법으로 다각형 메쉬(polygonal mesh)가 널리 이용되고 있다. 다각형 메쉬는 표현하고자 하는 삼차원 모델의 형상을 정의하기 위하여 사용되는데, 다각형 메쉬 중에서 삼각형 메쉬(triangle mesh)가 주로 이용된다. 삼각형 메쉬란 불균일한 구조를 갖는 삼차원 모델을 삼각형으로 이루어진 다수의 면들로 분해하여 표현하는 기법 또는 이 기법으로 표현된 그래픽 이미지를 가리킨다. 이 기법에서는 삼각형을 형성하는 꼭지점, 즉 정점(vertex)의 위치 정보(geometry information)와 정점들간의 연결 정보(connectivity information)를 이용하여 삼차원 모델을 표현하므로, 균일한 구조를 갖는 이차원 영상에 비해 데이터량이 매우 많다.
삼각형 메쉬의 압축(compression) 또는 부호화(encoding)와 관련하여, 단일 해상도(simple resolution)를 갖는 삼각형 메쉬, 즉 소정 개수의 정점과 이들 간의 연결 정보를 부호화하는 기법이 제안되었다. 그러나 이 기법은 네트워크 전송시에 발생할 수 있는 시간 지연(time delay)이나 전송 에러(transmission error)에 취약한 단점을 지니고 있다. 그리고 단일 해상도 메쉬를 이용하여 삼차원 모델을 표현하는 그래픽 응용 장치에서는, 다양한 해상도의 삼차원 이미지를 신속하게 얻을 수가 없다.
단일 해상도 메쉬가 갖는 이러한 단점들을 보완하기 위한 방법들 중의 하나로 점진적 메쉬 부호화 또는 압축(progressive mesh encoding or compression) 알고리즘이 제안되었다. 점진적 메쉬 알고리즘에 의하면, 가장 낮은 해상도를 갖는 기저 메쉬(base mesh)로부터 한 단계씩 해상도를 증가시키면서 원하는 해상도의 메쉬를 복구할 수 있다. 이러한 점진적 메쉬 부호화를 이용하는 그래픽 응용 장치에서는, 멀리 있는 물체는 낮은 해상도로 개략적으로 표현할 수 있으며, 가까이 있는 물체는 높은 해상도로 자세하게 표현할 수 있다.
그런데, 다양한 해상도의 삼차원 이미지를 얻을 수 있는 점진적 메쉬 알고리즘에서는 단일 해상도 메쉬 알고리즘에 비하여 인코딩 데이터의 양이 많다. 이러한 인코딩 데이터의 양은 점진적 메쉬 알고리즘에서 지원하는 해상도의 레벨이 높을수록 증가한다. 비록, 네트워크 대역폭이나 데이터 전송 속도, 그리고 저장 매체의 데이터 저장 용량도 지속적으로 증가하고 있지만, 데이터의 양이 많으면 그 만큼 부호화, 전송 또는 저장, 및 복호화에 부담이 된다. 따라서 부호화 알고리즘을 통해 생성되는 메쉬 데이터의 양을 감소시킬 수 있으며, 또한 적은 양의 메쉬 데이터 를 이용하여 다양한 해상도의 삼차원 이미지를 효율적으로 복구할 수 있는 점진적 메쉬 복호화 방법이 필요하다.
그리고 그래픽 응용 장치에서는 복구된 메쉬의 해상도를 자유롭게 또한 신속하게 변화시킬 수 있어야 한다. 예컨대, 카메라의 위치가 변하거나 또는 물체의 위치가 변하는 경우에, 그 변화 방향에 따라서 디스플레이되고 있는 삼차원 이미지의 해상도를 증가시키거나 감소시킬 수 있어야 하고 또한 신속하게 해상도를 조정할 수 있어야 한다. 따라서 요구되는 해상도의 삼차원 이미지를 자유롭게 또한 신속하게 재구성할 수 있는 점진적 메쉬 복호화 방법이 요청된다.
적은 양의 메쉬 데이터를 이용함으로써 메모리나 네트워크 대역폭을 절약할 수 있는 점진적 메쉬 복호화 방법과 장치를 제공한다.
항상 기저 메쉬로부터 원하는 해상도의 메쉬를 복구하는 것이 아니라 고해상도 메쉬로부터 저해상도 메쉬를 생성할 수 있는 점진적 메쉬 복호화 방법과 장치를 제공한다.
항상 기저 메쉬로부터 원하는 해상도의 메쉬를 복구하는 것이 아니라 임의의 메쉬 상태에서 원하는 해상도의 메쉬를 곧바로 생성할 수 있는 점진적 메쉬 복호화 방법과 장치를 제공한다.
기존의 점진적 메쉬 부호화 알고리즘에 따라서 생성된 메쉬 데이터를 그대로 이용하고, 또한 요구되는 해상도의 메쉬를 신속하게 재구성함으로써 실시간 해상도 의 제어가 가능한 점진적 메쉬 복호화 방법과 장치를 제공한다.
전술한 과제를 해결하기 위한 일 실시예에 따른 점진적 메쉬 복호화 방법에 의하면, 우선 기저 메쉬로부터 정점 추가를 통해 제1 희망 해상도의 메쉬를 점진적으로 복구한다. 이 때, 기저 메쉬에서부터 제1 희망 해상도의 메쉬까지, 각 단계에서는 해당 단계에서의 메쉬의 해상도를 지시하는 정점 레벨 정보를 추가되는 정점들에 기록한다. 그리고 외부로부터 제1 희망 해상도보다 낮은 제2 희망 해상도의 메쉬가 요청되면, 이 제1 희망 해상도의 메쉬로부터 정점 삭제를 통해 제2 희망 해상도의 메쉬를 점진적으로 복구하는데, 이 경우에 각 정점에 기록되어 있는 정점 레벨 정보를 이용하여 해당 단계에서 삭제될 정점인지를 판정한다.
전술한 과제를 해결하기 위한 다른 실시예에 따른 점진적 메쉬 복호화 방법에 의하면, 우선 입력되는 부호화된 메쉬 데이터를 복호화하여 가장 낮은 해상도인 제1 해상도의 메쉬를 복구하되, 제1 해상도의 메쉬에 포함되는 정점들 각각에 제1 해상도를 지시하는 제1 정점 레벨 정보를 기록한다. 그리고 제1 해상도가 제1 희망 해상도와 같은지를 판단한다. 판단 결과 제1 해상도가 제1 희망 해상도와 같지 않으면, 부호화된 메쉬 데이터로부터 제1 해상도보다 한 단계 높은 제2 해상도의 세부 데이터를 복호화하여 정점을 추가함으로써 제2 해상도의 메쉬를 복구한다. 이 경우에, 제2 해상도의 메쉬에 추가되는 정점들에는 제2 해상도를 지시하는 제2 정점 레벨 정보를 기록한다.
전술한 과제를 해결하기 위한 또 다른 실시예에 따른 점진적 메쉬 복호화 장 치는 기저 메쉬 복구 유닛, 해상도 비교 유닛, 해상도 증가 유닛, 해상도 감소 유닛, 및 출력 유닛을 포함한다. 기저 메쉬 복구 유닛은 입력된 부호화된 메쉬 데이터 중에서 기저 메쉬의 세부 데이터를 복호화하여 기저 메쉬를 복구하도록 고안된 수단이다. 해상도 비교 유닛은 복구된 현재 메쉬의 해상도와 입력된 희망 해상도를 비교하도록 고안된 수단이다. 해상도 증가 유닛은 해상도 비교 유닛에서 현재 메쉬의 해상도가 희망 해상도보다 작은 것으로 판정된 경우에, 정점 추가를 통해 현재 메쉬의 해상도보다 한 단계 높은 해상도의 메쉬를 복구하되, 추가되는 정점에는 한 단계 상승된 해상도를 지시하는 정점 레벨 정보를 기록하도록 고안된 수단이다. 해상도 감소 유닛은 해상도 비교 유닛에서 현재 메쉬의 해상도가 희망 해상도보다 작은 것으로 판정된 경우에, 현재 메쉬로부터 정점 삭제를 통해 현재 메쉬의 해상도보다 한 단계 낮은 해상도의 메쉬를 복구하되, 해상도 증가 유닛에서 기록된 정점 레벨 정보를 이용하여 삭제될 정점인지를 판정하도록 고안된 수단이다. 그리고 출력 유닛은 해상도 비교 유닛에서 현재 메쉬의 해상도가 희망 해상도와 같은 것으로 판정된 경우에, 현재 메쉬를 출력하도록 고안된 수단이다.
일 실시예에 의하면, 소정 해상도의 메쉬를 복구할 때, 각 정점들에 대하여 해당 정점이 처음으로 메쉬에 포함되는 해상도를 지시하는 정점 레벨 정보를 기록한다. 그리고 희망 해상도가 복구된 현재 메쉬의 해상도보다 낮으면, 상기 정점 레벨 정보를 이용하여 삭제할 정점을 찾아서 삭제함으로써, 원하는 해상도의 메쉬(즉, 고해상도 메쉬로부터 저해상도 메쉬)를 복구할 수가 있다. 또한, 희망 해상도 가 현재 메쉬의 해상도보다 높으면, 정점 추가를 통해 한 단계 높은 해상도의 메쉬를 복구하되 추가되는 정점들 각각에는 역시 정점 레벨 정보를 기록한다. 이러한 일 실시예에 의하면, 원하는 해상도의 메쉬를 복구하기 위하여 언제나 기저 메쉬에서부터 출발하여 메쉬의 해상도를 높여 갈 필요는 없다. 따라서 해상도를 변경하는 과정에서 불필요한 연산을 최소화할 수 있으며, 또한 연산의 수행 시간을 줄일 수 있을 뿐만 아니라 한정된 컴퓨터 자원을 최대한 활용할 수가 있다. 또한, 희망 해상도가 현재 메쉬의 해상도보다 큰 경우는 물론 작은 경우에도, 현재 해상도의 메쉬로부터 희망 해상도의 메쉬를 실시간으로 복구할 수가 있다.
그리고 일 실시예에 따른 점진적 메쉬 복호화 방법/장치에서는 정점 삭제를 통해서 생성된 부호화된 메쉬 데이터를 입력으로 이용한다. 따라서 에지 붕괴(edge collapse) 알고리즘을 통해 생성된 메쉬 데이터에 비하여 적은 양의 적은 양의 메쉬 데이터를 이용하기 때문에, 메모리나 네트워크 대역폭을 절약할 수 있다. 그리고 기존의 점진적 메쉬 부호화 알고리즘에 따라서 생성된 메쉬 데이터를 그대로 이용하면서, 정점 레벨 정보를 통한 정점 삭제나 또는 정점 레벨 정보의 기록을 동반하는 정점 추가를 통해, 현재 메쉬로부터 원하는 해상도의 메쉬를 빠르기 복구할 수가 있다.
이하, 첨부된 도면들을 참조하여 본 발명의 실시예를 상세하게 설명한다. 후술하는 실시예들에서 사용되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서, 그 용어의 의미는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 후술하는 실시예들에서 사용된 용어의 구체적인 의미는, 본 명세서에 구체적으로 정의된 사항이나 또는 명세서 전체 내용을 토대로 내려져야 할 것이다.
도 1은 후술하는 실시예를 수행하는데 사용될 수 있는 컴퓨터 시스템의 구성의 일례를 보여 주는 블록도이다. 컴퓨터 시스템은 그 종류에 특별한 제한이 없으며, 삼차원 그래픽 응용 프로그램을 탑재하여 실행할 수 있는 개인용 컴퓨터(PC)는 물론 휴대용 컴퓨터, 휴대용 통신기기, PDA(Personal Digital Assistant), 휴대용 게임기 등일 수 있다. 도 1을 참조하면, 컴퓨터 시스템은 중앙처리장치(CPU, 12)와 저장장치(Memory, 14)를 포함하는 컴퓨터(10), 그리고 입력장치(Input Device, 22), 및 출력장치(Output Device, 24)를 포함한다. 그리고 이들 구성요소들은 버스 구조(bus structure)에 의하여 상호 연결될 수 있다.
중앙처리장치(12)는 널리 알려진 구성요소로서, 저장장치(14)에서 명령어들을 호출하고 이를 해석하여 명령을 실행한다. 후술하는 점진적 메쉬 복호화 알고리즘은 예컨대, 컴퓨터 프로그램의 형태로 구체화되어, 이 중앙처리장치(12)를 통해 수행될 수 있다. 컴퓨터 시스템에는 하나 또는 그 이상의 중앙처리장치(12)가 구비될 수 있는데, 각각의 중앙처리장치(12)는 각종 연산을 수행하기 위한 실행 유닛(execution unit) 또는 산술논리유닛(Arithmetic Logic Unit, ALU), 데이터와 명령어들(instructions)을 임시적으로 저장하기 위한 레지스터(registers), 중앙처리장치(12)의 동작을 제어하기 제어 유닛(controlling unit), 내부 버스(internal bus) 등을 포함한다. 중앙처리장치(12)는 후술하는 점진적 메쉬 복호화 알고리즘을 수행할 수 있는 성능을 보유하고 있는 것으로서, 그 종류에는 아무런 제한이 없다.
저장장치(14)는 컴퓨터 프로그램과 데이터를 일시적으로 및/또는 장기간 보관한다. 예를 들어, 저장장치(14)는 오퍼레이팅 시스템(Operating System, OS) 프로그램을 포함하여 점진적 메쉬 복호화 알고리즘이 구현된 소프트웨어를 포함한 다양한 어플리케이션 프로그램을 저장하고 있다. 그리고 저장장치(14)에는 점진적 메쉬 복호화 알고리즘에 따라서 생성되는 복호화된 메쉬 데이터가 일시적으로 또는 장기간 저장되며, 또한 이 알고리즘의 실행 도중에 추가로 기입되는 각 정점의 레벨 정보(level information) 등이 저장될 수 있다. 이러한 저장장치(14)는 그 용도에 따라서 다양한 유형을 가질 수 있는데, 예컨대 RAM(Random Access Memory) 및/또는 ROM(Read Only Memory)일 수 있다. 그리고 저장장치(14)는 장기간 데이터 저장을 위한 형태, 예컨대 ROM, 광 디스크나 마그네틱 디스크, 고체 상태 디스크(Solid State Disk, SSD), 유기 메모리 또는 다른 휘발성 또는 비휘발성 대용량 저장 시스템일 수 있다.
입력장치(22)와 출력장치(24)도 이 분야에 통상적으로 알려진 것들로서, 그 종류에 특별한 제한이 없다. 입력장치(22)는 키보드, 마우스, 오디오 장치(예컨대, 마이크 등) 등과 같이 컴퓨터(10)로의 입력을 제공하는 수단이며, 출력장치(24)는 디스플레이, 프린터, 오디오 장치(예컨대, 스피커 등) 등과 같이 컴퓨터(10)로부터의 출력을 제공하는 수단이다. 그리고 입력/출력 장치(22, 24)는 네트워크 연결, 모뎀, 또는 다른 컴퓨터 시스템이나 장치들과의 통신을 위해 사용되는 다른 장치 등도 포함한다.
도 2는 점진적 메쉬 부호화 알고리즘의 일례를 보여 주는 흐름도이다. 도 2의 부호화 알고리즘의 수행 결과로 부호화된 메쉬 데이터(mesh data), 즉 기저 메쉬 데이터(encoded base mesh data)와 각 해상도별 세부 데이터(detail data)가 생성된다. 후술하는 실시예에 따른 점진적 메쉬 복호화 방법과 장치에서는 이 부호화 알고리즘의 결과로 생성되는 부호화된 메쉬 데이터가 이용된다.
도 2를 참조하면, 삼차원 그래픽으로 표현하고자 하는 물체에 대하여 최대해상도(LMAX)의 메쉬를 생성한다(S10). 본 단계(S10)에서 생성된 최대 해상도(LMAX)의 메쉬는 점진적 메쉬 부호화 알고리즘의 입력으로 이용되며, 따라서 최대 해상도(LMAX)의 메쉬를 생성하는 방법에는 특별한 제한이 없다. 생성된 메쉬는 삼각형 메쉬일 수 있으나, 여기에만 한정되지 않으며 사각형 메쉬 등과 같은 다른 다각형 메쉬일 수도 있다. 최대 해상도(LMAX)의 메쉬를 구성하는 다각형 메쉬의 종류는, 부호화 알고리즘과 복호화 알고리즘 사이에 미리 약속된 한 종류의 다각형이 이용되거나 또는 메쉬의 종류를 지시하는 정보가 부호화된 메쉬 데이터에 포함될 수도 있다.
그리고 입력된 최대 해상도(LMAX)의 메쉬에 포함되는 정점들 사이의 연결 정보를 계산한 다음, 정점 삭제(vertex deletion)를 통해 메쉬의 해상도, 즉 상세 레 벨(Level Of Detail, LOD)을 한 단계 낮춘다(S11). 본 단계에서, 최대 해상도(LMAX)의 메쉬로부터 그 보다 한 단계 낮아진 해상도(LMAX-1)가 될 때 삭제된 정점들의 위치 정보가 구해진다. 그리고 구해진 삭제된 정점들의 위치 정보는, 최대 해상도(LMAX)의 메쉬의 정점들 사이의 연결 정보와 함께, 최대 해상도(LMAX)에서의 세부 데이터(detail data)로 포함된다.
단계 S11에서 복수의 정점들 중에서 어떤 정점을 삭제할 지에 관한 구체적인 알고리즘에 관해서는 아무런 제한이 없으며, 이 분야에서 이용되는 기존의 알고리즘이 특별한 제한 없이 적용될 수 있다. 다만, 두 개의 정점을 새로운 하나의 정점으로 병합하는 에지 붕괴(edge collapse) 알고리즘은 단계 S11에서 적용되지는 않는다. 즉, 단계 S11는 기존의 정점들의 일부를 삭제함으로써 해상도를 낮추는 것은 포함하나, 삭제와 동시에 새로운 정점이 추가로 생성되는 과정은 포함하지 않는다. 에지 붕괴 알고리즘을 이용할 경우에, 새롭게 추가되는 정점의 위치 정보와 이들 사이의 연결 정보를 표현하기 위하여 데이터의 양이 증가한다. 또한, 에지 붕괴 알고리즘에 따라 생성되는 메쉬 데이터는, 후술하는 일 실시예에 따른 점진적 메쉬 복호화 알고리즘을 적용할 수가 없는데, 이에 관해서는 후술한다.
다음으로, 현재 메쉬의 해상도(LMAX-1)가 기저 메쉬의 해상도에 도달했는지를 판정한다(S12). 기저 메쉬의 해상도는 시스템에 따라서 달라질 수 있다. 예를 들어, 최대 해상도(LMAX)에서 소정 횟수의 정점 삭제 과정을 거쳐야 기저 메쉬의 해상 도에 도달하는 것으로 미리 결정될 수 있다. 단계 S12에서의 판단 결과, 현재 메쉬의 해상도(LMAX-1)가 기저 메쉬보다 높으면, 전술한 단계 S11이 다시 반복 수행된다. 즉, 현재 메쉬의 정점들 사이의 연결 정보를 계산한 다음, 정점 삭제를 통해 현재 메쉬의 해상도를 한 단계 낮춘다. 그리고 한 단계 낮아진 현재 메쉬의 해상도(LMAX-2)에 대하여, 단계 S12의 판단 과정을 되풀이한다.
단계 S12에서 현재 메쉬의 해상도, 예컨대 최대 해상도(LMAX) 보다 N단계 낮아진 해상도(LMAX-N)가 기저 메쉬의 해상도와 같은 것으로 판정되면, 단계 S13이 진행된다. 단계 S13에서는, 기저 메쉬의 세부 데이터, 즉 기저 메쉬에 잔류하는 정점들의 위치 정보 및 이들 정점들 사이의 연결 정보를 구한다.
그리고 각 해상도(기저 메쉬의 해상도(LMAX-N)에서부터 최대 해상도(LMAX)까지)에서의 세부 데이터를 소정의 부호화 알고리즘을 이용하여 부호화한다(S14). 본 단계에서 적용되는 부호화 알고리즘에 관하여 아무런 제한이 없다는 것은 당업자에게 자명하다. 도 2에 도시된 점진적 메쉬 부호화 알고리즘에 의하면, 각 해상도 레벨에서의 세부 데이터는 단계 S11과 단계 S13에서 생성되며, 정점들의 위치 정보 및 각 해상도에서의 메쉬에 포함되는 정점들 사이의 연결 정보를 포함한다. 다만, 단계 S11에서 생성된 고해상도(해상도가 LMAX-(N-1)에서부터 LMAX까지) 각각에서의 세부 데이터에는 삭제된 정점들의 위치 정보가 포함되지만, 단계 S13에서 생성된 기저 메쉬(즉, 해상도가 LMAX-N인 메쉬)의 세부 데이터에는 기저 메쉬에 잔류하는 정점들 의 위치 정보가 대신 포함된다는 점에 유의할 필요가 있다.
도 3은 일 실시예에 따른 점진적 메쉬 복호화 방법의 일례를 보여 주는 흐름도이다. 후술하는 점진적 메쉬 복호화 방법은 컴퓨터 프로그램으로 구현되어, 컴퓨터 판독 가능한 휴대용 저장 매체에 기록되거나 또는 도 1에 도시된 컴퓨터 시스템의 저장장치(14)에 저장될 수 있다. 그리고 저장된 컴퓨터 프로그램은 도 1에 도시된 컴퓨터 시스템의 중앙처리장치(12)에서 실행될 수 있다.
도 3을 참조하면, 먼저 부호화된 메쉬 데이터에 포함된 기저 메쉬(즉, 제1해상도)의 세부 데이터를 복호화하여 기저 메쉬를 복구하며, 복호화된 정점들 각각에는 정점 레벨 정보(vertex level information)를 추가로 기록한다(S20). 복호화 과정은 도 2의 부호화 단계(S14)에서 사용된 알고리즘에 대응하는 복호화 알고리즘을 사용하여 수행될 수 있다. 그리고 복호화된 기저 메쉬의 세부 데이터로부터 기저 메쉬를 복구하는 과정에 대해서는 아무런 제한이 없으며, 이 분야에서 이용되는 통상적인 절차가 이용될 수 있다. 예를 들어, 복호화를 통해 획득한 기저 메쉬에 포함되는 정점들의 위치 정보와 상기 정점들 사이의 연결 정보를 이용하여, 최저 해상도(제1 해상도)의 메쉬를 복구할 수 있다.
그리고 단계 S20에서는 복호화된 정점들 각각에는 정점 레벨 정보(vertex level information)가 추가로 기록된다. '정점 레벨 정보'라는 명칭은 임의적인 것으로서, 해당 정점이 추가로 포함된 메쉬의 해상도 또는 해상도 레벨을 지시하는 소정의 정수가 사용될 수 있다. 따라서 '정점 레벨 정보'는 해상도의 증가에 따라 서 순차적으로 값이 증가하는 간단한 정수로 표시될 수 있다. 예컨대, 기저 메쉬에 포함되는 정점들 각각은 최저 해상도를 지시하는 값(예컨대, '1'을 지시하는 값)이 정점 레벨 정보로서 기록될 수 있다. 또한, 후술하는 과정에서 메쉬의 해상도가 증가하게 되면 그에 따라서 정점도 추가되는데, 이 때 추가되는 정점들 각각은 자신이 추가될 때의 메쉬 해상도 또는 해상도 레벨을 지시하는 값이 정점 레벨 정보로서 기록된다.
이러한 '정점 레벨 정보'는 부호화된 메쉬 데이터에는 없는 정보이나 복호화 알고리즘에서 각 정점에 대하여 새롭게 추가되는 정보이다. 그리고 추가된 정점 레벨 정보는 컴퓨터 시스템의 저장장치(도 1의 참조번호 '12')에 저장될 수 있다. 이러한 정점 레벨 정보는 소정 개수의 비트를 이용하여 표현할 수 있다. 예를 들어, 점진적 메쉬 알고리즘에서 총 8 레벨 또는 그 이하의 메쉬 해상도를 지원하는 경우라면, 상기 정점 레벨 정보는 3비트 또는 그 이상의 비트(예컨대, 1바이트)로 표현할 수 있다. 도 4a는 단계 S20의 결과로 복구되어 정점 레벨 정보('1')가 기록되어 저장된 기저 메쉬의 일례를 도식적으로 보여 주는 도면이다.
계속해서 도 3을 참조하면, 복구된 현재 메쉬의 해상도(제1 해상도)가 제1 희망 해상도와 일치하는지를 판단한다(S21). 여기서, 복구된 현재 메쉬는 S20에서 복구된 기저 메쉬가 된다. 그리고 제1 희망 해상도는 삼차원 객체를 표현할 때 사용자가 처음에 표현하기를 원하는 객체의 해상도이거나 또는 그래픽 응용 장치에 의해서 자동으로 결정되는 임의의 해상도일 수 있다. 전자의 경우에, 제1 희망 해상도는 사용자에 의하여 결정된 임의의 값일 수 있으며, 그 값은 입력장치(도 1의 참조 번호 '22')를 통해 외부로부터 입력될 수 있다. 단계 S21에서의 판단 결과, 복구된 현재 메쉬의 해상도가 제1 희망 해상도와 일치하지 않는 경우(보다 구체적으로, 제1 희망 해상도보다 작은 경우)에는 단계 S22가 진행되고, 일치할 경우에는 단계 S23이 진행된다.
단계 S22에서, 부호화된 메쉬 데이터들 중에서 한 단계 높은 해상도(이하, '제2 해상도'라 한다)의 세부 데이터를 복호화한 다음, 이를 기저 메쉬와 결합함으로써 제2 해상도의 메쉬를 복구한다. 복호화된 제2 해상도의 세부 데이터는 제1 해상도의 메쉬와 비교하여 제2 해상도의 메쉬에 새롭게 추가되는 정점들의 위치 정보와 함께 상기 제2 해상도의 메쉬에 포함되는 모든 정점들 사이의 연결 정보를 포함한다.
이와 같이, 본 실시예에 따른 점진적 메쉬 복호화 알고리즘에서는 기존의 메쉬에 새로운 정점을 추가함으로써 해상도를 증가시킨다. 이러한 알고리즘은 점진적 메쉬 복호화 알고리즘에서 정점 분리(vertex split)를 통해 해상도를 증가시키는 것과는 다르다. 정점 분리는 낮은 해상도에 포함되는 하나의 정점이 소거되면서 둘 이상의 새로운 정점이 생기는 것을 가리킨다.
그리고 단계 S22에서, 제2 해상도의 메쉬를 복구하면서 동시에 제2 해상도의 메쉬를 위하여 정점 레벨 정보(vertex level information)가 추가로 기록된다. 예를 들어, 기저 메쉬보다 한 단계 높은 해상도를 지시하는 값(예컨대, '2')이 추가되는 정점들 각각에 대한 정점 레벨 정보로서 기록되는데, 이러한 정점 레벨 정보는 역시 컴퓨터 시스템의 저장장치(도 1의 참조번호 '12')에 저장될 수 있다. 도 4b는 단계 S22의 결과로 도 4a의 기저 메쉬에 추가되는 정점들 각각에 정점 레벨 정보('2')가 기록되어 저장된 제2 해상도의 메쉬의 일례를 도식적으로 보여 주는 도면이다.
계속해서, 단계 S21이 다시 수행되어 복구된 현재 메쉬의 해상도가 제1 희망 해상도와 일치하는지를 판단한다. 여기서, 복구된 현재 메쉬는 제2 해상도의 메쉬가 되며, 제1 희망 해상도는 기존의 값과 동일하다. 판단 결과, 복구된 현재 메쉬의 해상도(제2 해상도)가 제1 희망 해상도와 일치하지 않은 경우(보다 구체적으로, 제1 희망 해상도보다 작은 경우)에는 단계 S22가 다시 진행된다. 그 결과, 제2 해상도보다 한 단계 높은 해상도(이하, '제3 해상도'라 한다)의 메쉬가 복구되며, 제3 해상도의 메쉬를 위하여 제2 해상도의 메쉬에 새롭게 추가되는 정점들 각각에는 정점 레벨 정보('3')이 추가로 기록된다. 도 4c는 단계 S22를 한번 더 수행한 결과로, 도 4b의 제2 해상도의 메쉬에 새롭게 추가되는 정정들 각각에 대하여 정점 레벨 정보('3')가 기록되어 저장된, 제3 해상도의 메쉬의 일례를 도식적으로 보여 주는 도면이다.
단계 S22 이후에 다시 단계 S21이 수행되는 전술한 과정이 반복된다. 반면, 복구된 현재 메쉬의 해상도가 제1 희망 해상도와 일치할 경우에는, 단계 S21 이후에는 단계 S22로 진행되지 않고 대신에 단계 S23이 진행된다.
단계 S23에서, 즉 복구된 현재 메쉬의 해상도가 제1 희망 해상도와 일치하면, 현재 해상도의 메쉬를 출력한다(S23). 출력되는 메쉬는 복구된 메쉬 그 자체이거나 또는 소정의 모델링 오퍼레이션(modeling operation)을 적용하여 실제 삼차원 모델과 같은 입체감이 부여된 삼차원의 기하학적 모델(geometric models)일 수 있다. 삼차원의 기하학적 모델은 디스플레이 장치 등을 통해 재생되는데, 단계 S20이나 또는 단계 S22를 1회 이상 반복 수행하여 복구된 소정 해상도에 적용될 수 있는 모델링 오퍼레이션(medeling operation)으로는 예를 들어, 복구된 소정 해상도의 메쉬를 구성하는 다각형면들 각각에 대한 압출 성형(extrusion), CSG(Constructive Solid Modeling), 및/또는 자유형 변형(freeform deformations) 등이 있다.
이와 같이, 복구된 소정 해상도의 메쉬에 모델링 오퍼레이션을 적용하는 구체적인 과정은 본 실시예의 기술 사상과는 직접적인 관련이 없다. 따라서 여기에서 모델링 오퍼레이션에 대한 보다 상세한 설명은 생략한다. 다만, 이러한 모델링 오퍼레이션은 본 실시예에 따른 점진적 메쉬 복호화 알고리즘에 통합되어 구현되거나 또는 상기 알고리즘과는 다른 알고리즘(예컨대, 다른 그래픽 응용 프로그램이나 또는 같은 그래픽 응용 프로그램이라고 하더라도 다른 모듈)에서 수행될 수 있다는 점에 유의해야 한다.
계속해서, 복원된 삼차원 모델의 해상도(제1 희망 해상도)와는 다른 제2 희망 해상도가 외부로부터 입력되면, 제1 희망 해상도와 제2 희망 해상도의 값을 비교한다(S24). 제2 희망 해상도도, 제1 희망 해상도와 마찬가지로, 사용자에 의하여 입력되거나 또는 그래픽 응용 프로그램이나 연관된 다른 프로그램에 의해서 자동으로 결정되는 값일 수 있다. 비교 결과, 제2 희망 해상도가 현재 메쉬의 해상도보다 높으면 단계 S25가 진행되지만, 제2 희망 해상도가 현재 메쉬의 해상도보다 낮으면 단계 S26이 진행된다.
단계 S25에서는 단계 S22에서와 동일한 절차가 진행된다. 보다 구체적으로, 현재 해상도보다 한 단계 높은 해상도(예컨대, 제3 해상도의 메쉬보다 한 단계 해상도가 높은 제4 해상도)의 세부 데이터를 복호화한 다음, 복호화된 데이터를 기존의 메쉬에 결합하여 제4 해상도의 메쉬를 복구한다. 그리고 이와 동시에, 제4 해상도의 메쉬를 위하여 제3 해상도의 메쉬에 새롭게 추가되는 정점들 각각에는 정점 레벨 정보가 기록된다. 본 단계에서는 제3 해상도보다 한 단계 높은 해상도를 지시하는 값(예컨대, '4')이 정점 레벨 정보로서 추가로 기록되는데, 추가되는 정점 레벨 정보는 컴퓨터 시스템의 저장장치(도 1의 참조번호 '12')에 일시적으로 저장될 수 있다.
계속해서, 단계 S24가 다시 수행되어, 복구된 현재 메쉬의 해상도가 제2 희망 해상도와 일치하는지를 다시 판단한다. 여기서, 복구된 현재 메쉬는 제4 해상도의 메쉬가 되며, 제2 희망 해상도는 기존의 값과 동일하다. 판단 결과, 복구된 현재 메쉬의 해상도(제4 해상도)가 제2 희망 해상도와 일치하지 않은 경우(보다 구체적으로, 제2 희망 해상도보다 작은 경우)에는 단계 S25가 다시 진행된다. 그 결과, 제4 해상도보다 한 단계 높은 해상도(이하, '제5 해상도'라 한다)의 메쉬가 복구되며, 제5 해상도의 메쉬를 위하여 제4 해상도의 메쉬에 새롭게 추가되는 정점들 각각에는 정점 레벨 정보('5')가 기록된다. 단계 S25 이후에 다시 단계 S24이 수행되는 과정이 반복된다.
반면, 입력된 제2 희망 해상도가 단계 S23에서 복원된 현재 메쉬의 해상도보다 작은 경우에는, 단계 S25가 진행되지 않고 단계 S26이 진행된다. 단계 S26에서, 현재 메쉬의 각 정점에 기록된 정점 레벨 정보를 이용하여 삭제될 정점을 선택한 다음 선택된 정점들을 삭제한다. 또한, 잔류하는 정점들을 가지고 다각형 메쉬를 생성함으로써, 현재 해상도보다 한 단계 낮은 해상도의 메쉬를 복구한다(S26).
단계 26에서 삭제될 정점을 선택할 때, 상기 단계 S20나 단계 S22 (또는, 단계 S25)에서 각 정점들에 대하여 기록된 정점 레벨 정보가 이용된다. 예를 들어, 현재 메쉬(예컨대, 도 4c에 도시된 제3 해상도의 메쉬)에 포함되어 있는 모든 정점들 중에서 그 정점 레벨 정보의 값이 현재 메쉬의 레벨('3')과 같은 정점들만을 삭제할 수 있다. 또는, 현재 메쉬에 포함되어 있는 모든 정점들 중에서 최대의 정점 레벨 정보값을 갖는 정점들만을 삭제할 수도 있다. 그리고 정점 삭제를 수행한 후에는 잔류하는 정점들만을 이용하여 메쉬를 복구함으로써, 현재 해상도보다 한 단계 낮은 해상도(예컨대, 도 4b에 도시된 제2 해상도의 메쉬)의 메쉬를 복구할 수 있다.
계속해서, 단계 S24가 다시 수행되어, 복구된 현재 메쉬의 해상도가 제2 희망 해상도와 일치하는지를 다시 판단한다. 여기서, 복구된 현재 메쉬는 제2 해상도의 메쉬가 되며, 제2 희망 해상도는 기존의 값과 동일하다. 판단 결과, 복구된 현재 메쉬의 해상도(제2 해상도)가 제2 희망 해상도와 일치하지 않은 경우(보다 구체적으로, 제2 희망 해상도보다 큰 경우)에는 단계 S26이 다시 진행된다. 단계 S26에서는 전술한 것과 마찬가지로, 정점 레벨 정보를 이용하여 현재 메쉬의 레벨(예컨대,'2')과 같은 정점만을 삭제하고, 또한 정점의 삭제 후에 잔류하는 정점들만을 가지고 새롭게 다각형 메쉬(예컨대, 삼각형 메쉬)를 형성함으로써, 현재 해상도보 다 한 단계 낮은 해상도(예컨대, 도 4a에 도시된 제1 해상도의 메쉬)를 복구할 수 있다. 단계 S26 이후에는 다시 단계 S24가 수행되는 과정이 반복된다.
이와 같이, 본 실시예에 따른 점진적 메쉬 복호화 알고리즘에 의하면, 소정 해상도의 메쉬를 복구하는 과정에서 추가되는 각각의 정점에는 정점 레벨 정보를 추가로 기록하여 저장한다. 그리고 출력된 메쉬의 해상도, 즉 현재 메쉬의 해상도보다 낮은 해상도의 메쉬를 복구하기 위하여, 이 정점 레벨 정보를 이용하여 삭제될 정점들을 선택한다. 따라서 본 실시예에 따른 점진적 메쉬 복호화 알고리즘에 의하면, 현재 메쉬의 해상도보다 낮은 해상도의 메쉬를 복구하기 위하여 출력되는 현재 메쉬를 이용할 수 있기 때문에, 최저 해상도의 메쉬부터 시작하여 해상도를 증가시키는 알고리즘을 항상 사용할 필요가 없다. 이러한 본 실시예에 의하면, 각 정점에 정점 레벨 정보를 기록하여 저장함으로써, 실시간으로 감소된 해상도의 메쉬를 복구하는 것이 가능하다. 또한, 이를 이용하면, 현재 메쉬를 이용하여 해상도를 증가시키거나 또는 감소시킬 수가 있어서, 메쉬의 해상도를 실시간으로 조정하는 것이 가능하다.
계속해서 도 3을 참조하면, 복구된 현재 메쉬의 해상도가 제2 희망 해상도와 일치할 경우에는, 단계 S24 이후에는 단계 S25 또는 단계 S26으로 진행되지 않고, 대신에 단계 S27이 진행된다. 단계 S27에서, 즉 복구된 현재 메쉬의 해상도가 제2 희망 해상도와 일치하면, 현재 해상도의 메쉬를 출력한다(S27). 단계 S27에서 현재 메쉬를 출력하는 과정은 전술한 단계 S23에서의 과정과 동일하므로, 불필요한 중복 설명을 피하기 위하여 이에 대한 상세한 설명은 생략한다.
이상의 실시예에서는 제2 희망 해상도가 현재 메쉬의 해상도보다 작으면, 정점 레벨 정보를 이용한 정점 삭제를 통하여 메쉬의 해상도를 감소시키는 경우(단계 S26)에 대해서만 설명하였다. 하지만, 본 발명의 실시예가 여기에만 한정되는 것은 아니다. 예를 들어, 제2 희망 해상도가 현재 메쉬의 해상도보다 작은 경우에, 만일 기존의 방법과 같이 기저 메쉬부터 현재 메쉬를 복구하는 것(도 3의 단계 S20 내지 S23)이 본 실시예의 단계 S26보다 더 연산이 간단하다면, 단계 S26 대신에 기존의 점진적 메쉬 복호화 알고리즘을 그대로 적용할 수도 있다. 이에 의하면, 단계 S26과 기존의 점진적 메쉬 복호화 알고리즘(도 3의 단계 S20 내지 S23)이 소정의 기준(연산량 등)에 따라서 적응적으로 선택되어 실행될 수도 있다.
도 5는 일 실시예에 따른 점진적 메쉬 복호화 장치의 구성의 일례를 보여 주는 블록도이다. 도 5에 도시된 점진적 메쉬 복호화 장치는 응용 프로그램으로 구현되어 컴퓨터 시스템의 저장장치에 저장되거나 또는 그래픽 응용 프로그램을 구성하는 하나의 모듈 형태 등으로 구현될 수 있는데, 본 실시예에서는 그 구현 형태에 관해서는 특별한 제한은 없다. 그리고 도 5에 도시된 점진적 메쉬 복호화 장치는 도 3을 참조하여 설명한 점진적 메쉬 복호화 알고리즘을 구현한 장치의 일례이다. 따라서 이하에서는 불필요한 중복 설명을 피하기 위하여 점진적 메쉬 복호화 장치의 구성 및 동작에 관해서 간략히 설명한다.
도 5를 참조하면, 점진적 메쉬 복호화 장치(100)는 기저 메쉬 복구 유닛(110), 해상도 비교 유닛(120), 해상도 증가 유닛(130), 해상도 감소 유닛(140), 및 출력 유닛(150)를 포함한다.
기저 메쉬 복구 유닛(110)은 우선 입력된 부호화된 메쉬 데이터 중에서 기저 메쉬의 세부 데이터를 복호화하며, 이를 이용하여 기저 메쉬를 복구한다. 그리고 기저 메쉬 복구 유닛(110)은 복구된 기저 메쉬의 정점들 각각에 기저 메쉬를 지시하는 정점 레벨 정보를 기록한다(도 3의 단계 S20 참조). 정점 레벨 정보를 기록하는 과정은 기저 메쉬의 복구 과정과 동시에 진행되거나 또는 기저 메쉬를 복구한 이후에 추가로 진행될 수도 있다.
해상도 비교 유닛(120)은 현재 메쉬의 해상도와 희망 해상도를 비교한다(도 3의 단계 S21 및 S24 참조). 현재 메쉬의 해상도는 기저 메쉬 복구 유닛(110), 해상도 증가 유닛(130), 또는 해상도 감소 유닛(140)에서 복구된 메쉬의 해상도이다. 이러한 해상도의 비교를 위하여, 희망 해상도를 지시하는 정보가 해상도 비교 유닛(120)으로 입력된다. 본 실시예는 희망 해상도가 결정되는 방식에 대하여 아무런 제한이 없다.
해상도 증가 유닛(130)은 현재 메쉬의 해상도(현재 해상도)가 희망 해상도보다 작은 경우에, 정점 추가를 통해 현재 메쉬의 해상도를 한 단계 증가시킨다. 그리고 해상도를 높이기 위하여 추가되는 정점들 각각에는 한 단계 상승된 해상도를 지시하는 정점 레벨 정보를 기록한다(도 3의 단계 S22 및 S25 참조). 이를 위하여, 해상도 증가 유닛(130)은 정점 추가 유닛(132)과 정점 레벨 정보 기록 유닛(134)을 포함할 수 있다. 정점 추가 유닛(132)은 현재 메쉬의 해상도보다 한 단계 높은 해상도를 갖는 메쉬의 세부 정보(즉, 추가되는 정점들 및 전체 정점들의 연결 정보) 를 복호화한 다음, 이를 이용하여 현재 메쉬보다 한 단계 높은 해상도의 메쉬를 복구한다. 그리고 정점 레벨 정보 기록 유닛(134)은 정점 추가 유닛(132)에서 현재 메쉬에 새롭게 추가한 정점들 각각에 대하여 정점 레벨 정보를 기록한다. 이러한 정점 추가 유닛(132)과 정점 레벨 정보 기록 유닛(134)의 구분은 단지 논리적인 구분일 따름이며, 실질적으로는 하나로 병합되어 구현되거나 또는 보다 세분화된 논리적 기능들의 집합으로 구현될 수도 있다.
해상도 감소 유닛(140)은 현재 메쉬의 해상도(현재 해상도)가 희망 해상도보다 큰 경우에, 현재 메쉬보다 한 단계 낮은 해상도의 메쉬를 복구하기 위하여 삭제될 정점을 탐색한 다음, 선택되는 정점들을 삭제함으로써 현재 메쉬의 해상도를 한 단계 감소시킨다(도 3의 단계 S26 참조). 이를 위하여, 해상도 감소 유닛(140)은 삭제 정점 탐색 유닛(142)과 정점 삭제 유닛(144)을 포함할 수 있다. 삭제 정점 탐색 유닛(142)은 소정의 알고리즘을 이용하여 삭제될 정점(예컨대, 현재 메쉬의 해상도를 지시하는 정점 레벨 정보가 기입된 정점들 또는 정점 레벨 정보의 값이 최대인 정점들)을 탐색하여 찾는다. 그리고 정점 삭제 유닛(144)은 삭제 정점 탐색 유닛(142)에 의하여 찾아진 정점들을 현재 메쉬로부터 삭제한 다음, 잔류하는 정점들을 이용하여 한 단계 낮아진 메쉬를 복구한다. 이러한 삭제 정점 탐색 유닛(142)과 정점 삭제 유닛(144)의 구분은 단지 논리적인 구분일 따름이며, 실질적으로는 하나로 병합되어 구현되거나 또는 보다 세분화된 논리적 기능들의 집합으로 구현될 수도 있다.
출력 유닛(150)은 현재 메쉬의 해상도(현재 해상도)가 희망 해상도와 같은 경우에, 복구된 현재 메쉬를 출력한다. 출력 유닛(150)은 복구된 현재 메쉬를 그대로 출력하거나 또는 소정의 모델링 오퍼레이션을 적용하여 복원된 3차원 모델에 대한 그래픽을 출력할 수도 있다.
이상의 설명은 본 발명의 실시예에 불과할 뿐, 이 실시예에 의하여 본 발명의 기술 사상이 한정되는 것으로 해석되어서는 안된다. 본 발명의 기술 사상은 특허청구범위에 기재된 발명에 의해서만 특정되어야 한다. 따라서 본 발명의 기술 사상을 벗어나지 않는 범위에서 전술한 실시예는 다양한 형태로 변형되어 구현될 수 있다는 것은 당업자에게 자명하다.
도 1은 본 발명의 실시예를 수행하는데 사용될 수 있는 컴퓨터 시스템의 구성의 일례를 보여 주는 블록도이다.
도 2는 점진적 메쉬 부호화 알고리즘의 일례를 보여 주는 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 점진적 메쉬 복호화 방법의 일례를 보여 주는 흐름도이다.
도 4a 내지 도 4c는 도 3의 점진적 메쉬 복호화 방법을 이용하여 복구되는 메쉬를 도식적으로 보여 주는 도면이다.
도 5는 본 발명의 일 실시예에 따른 점진적 메쉬 복호화 장치의 구성의 일례를 보여 주는 블록도이다.

Claims (18)

  1. 기저 메쉬로부터 정점 추가를 통해 제1 희망 해상도의 메쉬를 점진적으로 복구하되, 해당 단계에서의 메쉬의 해상도를 지시하는 정점 레벨 정보를 각 단계에서 추가되는 정점들에 기록하고; 그리고
    상기 제1 희망 해상도보다 낮은 제2 희망 해상도의 메쉬가 요청되면, 상기 제1 희망 해상도의 메쉬로부터 정점 삭제를 통해 제2 희망 해상도의 메쉬를 점진적으로 복구하되, 상기 정점 레벨 정보를 이용하여 해당 단계에서 삭제될 정점인지를 판정하는 것을 포함하고,
    정점 추가는 하나의 정점이 소거되면서 둘 이상의 정점이 생기는 정점 분리가 아닌 기저 메쉬에 정점을 추가하는 것이고,
    정점 삭제는 두 개의 정점을 하나의 정점으로 병합하는 에지 붕괴가 아닌 제1 희망 해상도의 메쉬로부터 정점을 삭제하는 것인 점진적 메쉬 복호화 방법.
  2. 제1항에 있어서,
    상기 정점 레벨 정보는 해상도의 증가에 따라서 순차적으로 증가하는 정수로 표시되는 점진적 메쉬 복호화 방법.
  3. 제2항에 있어서,
    상기 정점 레벨 정보가 정점 삭제의 대상이 되는 메쉬의 해상도 레벨과 같은 값이거나 또는 정점 삭제의 대상이 되는 메쉬에 포함된 정점들 중에서 그 값이 가장 큰 값을 갖는 정점을 삭제될 정점으로 판정하는 점진적 메쉬 복호화 방법.
  4. 제1항에 있어서,
    상기 제1 희망 해상도보다 높은 제3 희망 해상도의 메쉬가 요청되면, 상기 제1 희망 해상도의 메쉬로부터 정점 추가를 통해 제3 희망 해상도의 메쉬를 점진적으로 복구하되, 해당 단계에서의 메쉬의 해상도를 지시하는 정점 레벨 정보를 각 단계에서 추가되는 정점들에 기록하는 점진적 메쉬 복호화 방법.
  5. 제1항 내지 제4항 중에서 어느 하나의 항에 기재된 점진적 메쉬 복호화 방법을 실행하기 위한 삼차원 그래픽 응용 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
  6. 입력되는 부호화된 메쉬 데이터를 복호화하여 가장 낮은 해상도인 제1 해상도의 메쉬를 복구하되, 상기 제1 해상도의 메쉬에 포함되는 정점들 각각에 상기 제1 해상도를 지시하는 제1 정점 레벨 정보를 기록하고;
    상기 제1 해상도가 제1 희망 해상도와 같은지를 판단하고; 그리고
    상기 제1 해상도가 상기 제1 희망 해상도와 같지 않으면, 상기 부호화된 메쉬 데이터로부터 상기 제1 해상도보다 한 단계 높은 제2 해상도의 세부 데이터를 복호화하여 정점을 추가함으로써 상기 제2 해상도의 메쉬를 복구하되, 상기 제2 해상도의 메쉬에 추가되는 정점들에는 상기 제2 해상도를 지시하는 제2 정점 레벨 정보를 기록하는 것을 포함하고,
    정점 추가는 하나의 정점이 소거되면서 둘 이상의 정점이 생기는 정점 분리가 아닌 제1 해상도의 메쉬에 정점을 추가하는 것인 점진적 메쉬 복호화 방법.
  7. 제6항에 있어서,
    상기 제2 해상도가 제1 희망 해상도와 같은지를 판단하고; 그리고
    상기 제2 해상도가 상기 제1 희망 해상도와 같지 않으면, 상기 부호화된 메쉬 데이터로부터 상기 제2 해상도보다 한 단계 높은 제3 해상도의 세부 데이터를 복호화하여 정점을 추가함으로써 상기 제3 해상도의 메쉬를 복구하되, 상기 제3 해상도의 메쉬에 추가되는 정점들에는 상기 제3 해상도를 지시하는 제3 정점 레벨 정보를 기록하는 것을 더 포함하는 점진적 메쉬 복호화 방법.
  8. 제7항에 있어서,
    상기 제1 희망 해상도와 같은 제N(상기 N은 2 이상의 정수) 해상도의 메쉬가 복구될 때까지, 각 해상도에서의 상기 정점 레벨 정보의 기록 과정을 포함하는 상기 메쉬 복구 과정을 반복하여 수행하는 점진적 메쉬 복호화 방법.
  9. 제8항에 있어서, 상기 제N 해상도의 메쉬를 출력한 이후에 상기 제1 희망 해상도보다 낮은 제2 희망 해상도의 메쉬가 요청되면,
    상기 제N 해상도의 메쉬에 포함된 정점들 중에서 정점 레벨 정보가 N을 지시하는 정점들을 탐색하여, 상기 제N 해상도의 메쉬로부터 정점 레벨 정보가 N인 정점을 삭제함으로써 제(N-1) 해상도의 메쉬를 복구하고; 그리고
    상기 제(N-1) 해상도가 상기 제2 희망 해상도와 같은지를 판정하는 것을 더 포함하는 점진적 메쉬 복호화 방법.
  10. 제9항에 있어서,
    상기 제(N-1) 해상도가 상기 제2 희망 해상도와 같으면, 상기 제(N-1) 해상도의 메쉬를 출력하는 것을 더 포함하는 점진적 메쉬 복호화 방법.
  11. 제9항에 있어서,
    상기 제(N-1) 해상도가 상기 제2 희망 해상도와 같지 않으면, 상기 제2 희망 해상도와 같은 제M(상기 M은 1이상이고 N미만인 정수) 해상도의 메쉬가 복구될 때까지, 이전 해상도보다 한 단계 낮은 해상도의 메쉬를 복구하는 과정을 반복하여 수행하는 점진적 메쉬 복호화 방법.
  12. 제6항 내지 제11항 중에서 어느 하나의 항에 기재된 점진적 메쉬 복호화 방법을 실행하기 위한 삼차원 그래픽 응용 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
  13. 입력된 부호화된 메쉬 데이터 중에서 기저 메쉬의 세부 데이터를 복호화하여 기저 메쉬를 복구하도록 고안된 기저 메쉬 복구 유닛;
    복구된 현재 메쉬의 해상도와 입력된 희망 해상도를 비교하도록 고안된 해상도 비교 유닛;
    상기 해상도 비교 유닛에서 상기 현재 메쉬의 해상도가 상기 희망 해상도보다 작은 것으로 판정된 경우에, 정점 추가를 통해 상기 현재 메쉬의 해상도보다 한 단계 높은 해상도의 메쉬를 복구하되, 추가되는 정점에는 상기 한 단계 상승된 해상도를 지시하는 정점 레벨 정보를 기록하도록 고안된 해상도 증가 유닛;
    상기 해상도 비교 유닛에서 상기 현재 메쉬의 해상도가 상기 희망 해상도보다 큰 것으로 판정된 경우에, 상기 현재 메쉬로부터 정점 삭제를 통해 상기 현재 메쉬의 해상도보다 한 단계 낮은 해상도의 메쉬를 복구하되, 상기 해상도 증가 유닛에서 기록된 정점 레벨 정보를 이용하여 삭제될 정점인지를 판정하도록 고안된 해상도 감소 유닛; 및
    상기 해상도 비교 유닛에서 상기 현재 메쉬의 해상도가 상기 희망 해상도와 같은 것으로 판정된 경우에, 상기 현재 메쉬를 출력하도록 고안된 출력 유닛을 포함하고,
    정점 추가는 하나의 정점이 소거되면서 둘 이상의 정점이 생기는 정점 분리가 아닌 현재 메쉬에 정점을 추가하는 것이고,
    정점 삭제는 두 개의 정점을 하나의 정점으로 병합하는 에지 붕괴가 아닌 현재 메쉬로부터 정점을 삭제하는 것인 점진적 메쉬 복호화 장치.
  14. 제13항에 있어서,
    상기 복구된 현재 메쉬의 해상도는 상기 기저 메쉬 복구 유닛, 상기 해상도 증가 유닛, 또는 상기 해상도 감소 유닛으로부터 입력되는 메쉬의 해상도인 점진적 메쉬 복호화 장치.
  15. 제13항에 있어서, 상기 해상도 증가 유닛은
    현재 메쉬의 해상도보다 한 단계 높은 해상도를 갖는 메쉬의 세부 정보를 복호화하여, 상기 세부 정보를 이용하여 상기 현재 메쉬로부터 상기 한 단계 높은 해상도의 메쉬를 복구하도록 고안된 정점 추가 유닛; 및
    상기 정점 추가 유닛에서 상기 현재 메쉬에 새롭게 추가한 정점에 대하여 정점 레벨 정보를 기록하도록 고안된 정점 레벨 정보 기록 유닛을 포함하는 점진적 메쉬 복호화 장치.
  16. 제13항에 있어서, 상기 해상도 감소 유닛은
    소정의 알고리즘을 이용하여 삭제될 정점을 탐색하도록 고안된 삭제 정점 탐색 유닛; 및
    상기 삭제 정점 탐색 유닛에 의하여 찾아진 정점들을 상기 현재 메쉬로부터 삭제한 다음, 잔류하는 정점들을 이용하여 상기 현재 메쉬보다 한 단계 낮아진 메쉬를 복구하도록 고안된 정점 삭제 유닛을 포함하는 점진적 메쉬 복호화 장치.
  17. 제16항에 있어서,
    상기 삭제 정점 탐색 유닛에서는 상기 현재 메쉬의 해상도를 지시하는 정점 레벨 정보가 기입된 정점들 또는 정점 레벨 정보의 값이 최대인 정점들을 삭제할 정점으로 선택하는 점진적 메쉬 복호화 장치.
  18. 입력된 희망 해상도를 현재 메쉬의 해상도와 비교하고;
    비교 결과 현재 메쉬의 해상도가 희망 해상도보다 낮은 것으로 판정되면, 상기 현재 메쉬로부터 정점 추가를 통해 상기 희망 해상도의 메쉬를 점진적으로 복구하되, 해당 단계에서의 메쉬의 해상도를 지시하는 정점 레벨 정보를 각 단계에서 추가되는 정점들에 기록하고; 그리고
    비교 결과 현재 메쉬의 해상도가 희망 해상도보다 높은 것으로 판정되면, 상기 현재 메쉬로부터 정점 삭제를 통해 상기 희망 해상도의 메쉬를 점진적으로 복구하되, 상기 현재 메쉬에 포함되어 있는 각각의 정점에 기록되어 있는 정점 레벨 정보를 이용하여 해당 단계에서 삭제될 정점인지를 판정하는 것을 포함하고,
    정점 추가는 하나의 정점이 소거되면서 둘 이상의 정점이 생기는 정점 분리가 아닌 현재 메쉬에 정점을 추가하는 것이고,
    정점 삭제는 두 개의 정점을 하나의 정점으로 병합하는 에지 붕괴가 아닌 현재 메쉬로부터 정점을 삭제하는 것인 메쉬 해상도의 동적 조정 방법.
KR1020090032923A 2009-04-15 2009-04-15 점진적 메쉬 복호화 방법과 장치 KR101591472B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020090032923A KR101591472B1 (ko) 2009-04-15 2009-04-15 점진적 메쉬 복호화 방법과 장치
US12/714,069 US8928660B2 (en) 2009-04-15 2010-02-26 Progressive mesh decoding apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090032923A KR101591472B1 (ko) 2009-04-15 2009-04-15 점진적 메쉬 복호화 방법과 장치

Publications (2)

Publication Number Publication Date
KR20100114409A KR20100114409A (ko) 2010-10-25
KR101591472B1 true KR101591472B1 (ko) 2016-02-03

Family

ID=42981022

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090032923A KR101591472B1 (ko) 2009-04-15 2009-04-15 점진적 메쉬 복호화 방법과 장치

Country Status (2)

Country Link
US (1) US8928660B2 (ko)
KR (1) KR101591472B1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8493381B1 (en) * 2008-04-14 2013-07-23 Google Inc. Methods and systems for geometry compression
US8860719B2 (en) * 2011-01-21 2014-10-14 Samsung Electronics Co., Ltd. Apparatus and method for encoding three-dimensional (3D) mesh, and apparatus and method for decoding 3D mesh
KR101467735B1 (ko) * 2014-06-25 2014-12-02 인하대학교 산학협력단 볼륨데이터를 위한 4차원 실시간 렌더링 방법 및 장치
US10643384B2 (en) * 2018-02-08 2020-05-05 Google Llc Machine learning-based geometric mesh simplification
US11094087B2 (en) * 2019-06-24 2021-08-17 Google Llc Dual serving scheme for LOD sequences

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007124514A2 (en) 2006-04-25 2007-11-01 Pique Systems Llc Method and apparatus for a scalable hybrid architecture for polyvertexic extensible networks

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5963209A (en) * 1996-01-11 1999-10-05 Microsoft Corporation Encoding and progressive transmission of progressive meshes
US5905507A (en) * 1996-01-16 1999-05-18 International Business Machines Corporation Compression of geometric models using spanning trees
US6108006A (en) * 1997-04-03 2000-08-22 Microsoft Corporation Method and system for view-dependent refinement of progressive meshes
US6169549B1 (en) * 1998-01-07 2001-01-02 Iengineer.Com, Inc. Method and apparatus for providing continuous level of detail
US6879324B1 (en) * 1998-07-14 2005-04-12 Microsoft Corporation Regional progressive meshes
FR2784211B1 (fr) 1998-10-02 2000-12-15 France Telecom Procede de codage d'images fixes ou animees avec reduction et adaptation du debit
US6462738B1 (en) * 1999-04-26 2002-10-08 Spatial Technology, Inc. Curved surface reconstruction
JP2005242647A (ja) 2004-02-26 2005-09-08 Hokkaido Univ 解像度制御システム、解像度制御プログラム
JP4664023B2 (ja) 2004-08-31 2011-04-06 国立大学法人北海道大学 解析用四面体メッシュ生成装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007124514A2 (en) 2006-04-25 2007-11-01 Pique Systems Llc Method and apparatus for a scalable hybrid architecture for polyvertexic extensible networks

Also Published As

Publication number Publication date
US8928660B2 (en) 2015-01-06
US20100266216A1 (en) 2010-10-21
KR20100114409A (ko) 2010-10-25

Similar Documents

Publication Publication Date Title
KR101591472B1 (ko) 점진적 메쉬 복호화 방법과 장치
US20140204088A1 (en) Surface codec using reprojection onto depth maps
JP7345262B2 (ja) データ圧縮装置、データ処理装置、データ圧縮方法、プログラム、及び学習済みモデル
KR102152346B1 (ko) 이미지 파일의 블록 간 차이를 통한 압축율 향상 방법 및 시스템
JP7213368B2 (ja) 点群属性コーディングのためのチャネル間予測および変換の技術並びに装置
KR102646818B1 (ko) 그래픽스 파이프라인에서의 인덱스들의 압축 및 압축 해제
JP2006197074A (ja) 画像処理装置、画像処理方法及びそのプログラム
JP6307716B2 (ja) 画像情報処理方法
KR101741212B1 (ko) 3차원 오브젝트의 단면 이미지 송신 시스템 및 방법과 이를 수행하기 위한 송신 장치
KR102185668B1 (ko) 이미지 파일의 픽셀 변환을 통한 압축율 향상 방법 및 시스템
US20220284633A1 (en) Method and apparatus for constructing a 3d geometry
JP2004112260A (ja) 画像処理装置、画像形成装置、プログラム及び記憶媒体
US11341316B2 (en) Techniques for compressing images to achieve a target quality level
JP2023515602A (ja) 点群コーディングのための方法および装置
JP2007129455A (ja) 画像符号化装置、画像符号化方法、画像符号化プログラムおよび画像符号化プログラムを記録したコンピュータ読み取り可能な記録媒体
US20230334714A1 (en) Coding of boundary uv2xyz index for mesh compression
US20230316474A1 (en) Enhancing detailed segments in latent code-based edited digital images
US20230334713A1 (en) On coding of boundary uv2xyz index for mesh compression
US20240161345A1 (en) Method and apparatus for adaptive quantization for uv attribute in symmetry mesh
US20240087173A1 (en) Base mesh coding by using surface reflection symmetry
JP2024518765A (ja) メッシュ圧縮のための境界uv情報の予測コーディング
CN114972002A (zh) 资源优化方法、装置、计算机设备和存储介质
US20130051695A1 (en) Image compressing device, image compressing method, and image compressing program
Raj UML Modeling for the Compression of An Image File
JP2024515208A (ja) メッシュ圧縮のための境界uv2xyzインデックスの予測コーディング

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: 20181218

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20191216

Year of fee payment: 5