KR100277683B1 - 크랙 방지를 위한 부호화 장치 및 그 방법 - Google Patents

크랙 방지를 위한 부호화 장치 및 그 방법 Download PDF

Info

Publication number
KR100277683B1
KR100277683B1 KR1019980043228A KR19980043228A KR100277683B1 KR 100277683 B1 KR100277683 B1 KR 100277683B1 KR 1019980043228 A KR1019980043228 A KR 1019980043228A KR 19980043228 A KR19980043228 A KR 19980043228A KR 100277683 B1 KR100277683 B1 KR 100277683B1
Authority
KR
South Korea
Prior art keywords
vertex
vertices
index
same position
same
Prior art date
Application number
KR1019980043228A
Other languages
English (en)
Other versions
KR20000025928A (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 KR1019980043228A priority Critical patent/KR100277683B1/ko
Publication of KR20000025928A publication Critical patent/KR20000025928A/ko
Application granted granted Critical
Publication of KR100277683B1 publication Critical patent/KR100277683B1/ko

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/38Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory with means for controlling the display position
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units

Abstract

1. 청구범위에 기재된 발명이 속한 기술분야
본 발명은 크랙 방지를 위한 부호화 장치 및 그 방법에 관한 것임.
2. 발명이 해결하려고 하는 기술적 과제
본 발명은 같은 위치의 정점에 대해서는 하나의 정점만 부호화하여 전송하고 나머지 같은 위치의 정점들에 대해서는 이미 전송한 정점의 정보만을 전송하는 부호화 장치 및 그 방법을 제공하는데 그 목적이 있음.
3. 발명의 해결방법의 요지
본 발명은, 정점 좌표를 부호화하기 위한 정점 부호화 수단; 같은 위치의 정점들을 찾기 위한 제1 동일 위치 정점 탐색 수단; 인덱스를 동일 위치 정점 정보에 따라 테이블로 구성하기 위한 테이블 구성 수단; 테이블에 쓰인 인덱스의 정점들 중 하나의 정점을 부호화하고, 나머지 같은 위치의 정점들에 대해서는 부호화한 정점의 정보를 전달하기 위한 부호화 수단; 및 부호화 정보 및 정점 정보(인덱스)와, 정점 부호화 정보 중 하나를 동일 위치 정점 정보에 따라 선택하기 위한 부호화 선택 수단을 포함한다.
4. 발명의 중요한 용도
본 발명은 3차원 모델 부호화 장치 등으로 이용됨.

Description

크랙 방지를 위한 부호화 장치 및 그 방법
본 발명은 3차원 모델 등에서 일치해야 할 정점들이 벌어져서 생기는 크랙(crack : 틈새)을 방지하기 위한 부호화 장치 및 그 방법에 관한 것으로, 특히 3차원 모델 등의 손실 부호화 과정에서 발생하는 크랙(crack)을 방지하기 위한 부호화 장치 및 그 방법에 관한 것이다.
3차원 모델의 표현 과정에서 컴포넌트(component)들간의 경계면상의 정점들이 일치하지 않거나 컴포넌트(component)내에서 일치해야 할 정점들이 일치하지 않기 때문에 발생하는 크랙(crack : 틈새)은 여러 가지 원인을 들 수 있다.
첫째, 3차원 모델을 영상 모니터에 표시하는 소프트웨어의 해상도 한계 때문에 틈새가 생기지 않아야 할 부분에 틈새가 생기게 된다.
둘째, 3차원 모델을 파일로 저장하는 과정에서 생긴다. 3차원 모델을 표현하는 가상현실 모델링 언어(VRML : Virtual Reality Modeling Language)의 경우에, 3차원 모델을 파일로 저장하는 과정에서 이진 코드(binary code)로 저장하지 않고, 아스키 코드(ascii code)로 저장하기 때문에 실제로 같은 값을 가지는 데이터가 다른 값으로 표현되는 경우가 종종 있다.
셋째, 3차원 모델을 부호화하는 과정에서 생길 수 있다. 즉, 3차원 모델을 손실 부호화하게 되면 복원된 모델에 크랙(crack)이 생길 수 있기 때문이다.
상기와 같은 손실 부호화로 인한 크랙(crack)을 방지하기 위한 종래의 기술로는, "IBM"의 기술을 예로 들 수 있다. "IBM"은 3차원 모델에서 나타나는 크랙(crack)을 방지하기 위해서 선양자화(pre-quantization) 방법을 사용하였다. 즉, 3차원 모델을 압축 부호화하기 전에 3차원 모델의 정점(vertex)들을 양자화하는 방법이다. 이렇게 하므로써, 실제로 같은 위치의 정점이면서도 다른 값으로 표현된 정점들을 같은 값으로 만들기 때문에 크랙(crack)을 방지할 수 있었다. 그러나, 양자화로 인하여 3차원 모델의 해상도(resolution)를 떨어뜨리는 문제점을 여전히 가지고 있었다.
즉, 종래의 기술(IBM의 기술)은 선양자화(pre-quantization) 방법을 사용하기 때문에 3차원 모델 자체의 해상도를 떨어뜨리는 문제점이 있었다.
상기 문제점을 해결하기 위하여 안출된 본 발명은, 같은 위치에 있는 정점들에 대한 정보를 테이블로 구성하고, 같은 위치의 정점에 대해서는 하나의 정점만 부호화하여 전송하고 나머지 같은 위치의 정점들에 대해서는 이미 전송한 정점의 정보(인덱스)만을 전송하는 부호화 장치 및 그 방법을 제공하는데 그 목적이 있다.
도 1 은 같은 위치의 정점들을 나타낸 일예시도.
도 2 는 같은 위치에 있는 정점들에 대한 정보를 표시한 테이블의 일예시도.
도 3 은 본 발명에 따른 부호화 장치의 일실시예 구성도.
도 4 는 상기 도 3 의 동일 위치 정점 탐색부의 일실시예 상세 구성도.
도 5 는 본 발명에 따른 부호화 방법에 대한 일실시예 흐름도.
도 6 은 상기 도 5 에 이용되는 동일 위치 정점 탐색 과정에 대한 일실시예 상세 흐름도.
도 7 은 상기 도 6 에서 정점들간의 절대오차를 구하여 동일위치의 정점을 찾는 과정에 대한 일실시예 상세 흐름도.
도 8 은 같은 위치의 정점들을 찾는 일예를 도시한 설명도.
* 도면의 주요 부분에 대한 부호의 설명
31 : 정점 부호화부 32 : 동일 위치 정점 탐색부
33 : 테이블 구성부
34 : 같은 위치의 정점들중 하나의 정점만을 부호화하는 부호화부
35 : 부호화 선택부
상기 목적을 달성하기 위한 본 발명의 장치는, 크랙을 방지할 수 있도록 한 부호화 장치에 있어서, 외부로부터 입력되는 정점 좌표를 부호화하기 위한 정점 부호화 수단; 같은 위치의 정점들을 찾기 위한 제1 동일 위치 정점 탐색 수단; 외부로부터 입력되는 인덱스를 상기 제1 동일 위치 정점 탐색 수단으로부터의 동일 위치 정점 정보에 따라 테이블로 구성하기 위한 테이블 구성 수단; 상기 테이블 구성 수단에서 구성한 테이블에 쓰인 인덱스의 정점들 중 하나의 정점을 부호화하고, 나머지 같은 위치의 정점들에 대해서는 부호화한 정점의 정보(인덱스)를 전달하기 위한 부호화 수단; 및 상기 부호화 수단으로부터 입력되는 부호화 정보 및 정점 정보(인덱스)와, 상기 정점 부호화 수단으로부터 입력되는 부호화 정보 중 하나를 상기 제1 동일 위치 정점 탐색 수단으로부터의 동일 위치 정점 정보에 따라 선택하기 위한 부호화 선택 수단을 포함하여 이루어진 것을 특징으로 한다.
또한, 본 발명의 방법은, 크랙을 방지할 수 있도록 한 부호화 장치에 적용되는 부호화 방법에 있어서, 동일 위치의 정점들을 탐색하고, 동일 위치 정점의 인덱스를 쓰기 위한 테이블을 구성하는 제 1 단계; 부호화하고자 하는 정점의 인덱스가 상기 테이블에 존재하는지를 확인하는 제 2 단계; 상기 제 2 단계의 확인 결과, 있으면 다음 정점을 선택하여 인덱스가 상기 테이블에 존재하는지를 확인하고, 없으면 동일 위치의 정점이 있는지를 확인하는 제 3 단계; 상기 제 3 단계의 확인 결과, 없으면 해당 정점을 부호화하고, 있으면 해당 정점의 인덱스 및 동일 위치 정점의 인덱스를 상기 테이블에 쓴 후에 상기 테이블에 쓰인 인덱스의 정점들 중 하나의 정점을 부호화하고, 나머지 같은 위치의 정점들에 대해서는 부호화한 정점의 정보(인덱스)를 전달하는 제 4 단계; 및 모든 정점에 대하여 상기 단계들을 수행한 후에 같은 위치의 정점들중 하나의 정점을 부호화한 상기 부호화 정보 및 정점 인덱스와, 상기 정점 부호화 정보 중 하나를 동일 위치 정점 정보에 따라 선택하여 전송하는 제 5 단계를 포함하여 이루어진 것을 특징으로 한다.
상술한 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다.
도 1 은 같은 위치의 정점들을 나타낸 일예시도로서, 본 발명의 개념을 개략적으로 살펴보면 다음과 같다.
본 발명은 3차원 모델을 부호화하는 과정에서 발생할 수 있는 크랙(crack)을 방지하기 위한 방법에 관한 것이다.
즉, 본 발명에서는 선양자화를 하지 않고, 3차원 모델을 구성하는 정점들 중에서 실제로 같은 위치에 있는 정점들을 찾아서 이에 대한 정보를 모델과 함께 부호화하여 전송하므로써, 3차원 모델의 크랙(crack) 현상을 방지한다. 상기와 같은 방법은 정점들을 양자화하는 방법을 사용하지 않기 때문에 모델의 해상도 저하 문제가 발생하지 않는다.
예를 들어, 3차원 모델이 도 1 에 도시된 바와 같이 A, B, C, D 의 4개 컴포넌트(component)들로 구성되어 있고, A 컴포넌트는 A1, A2, A3, A4, A5, A6의 6개 정점들을, B 컴포넌트는 B1, B2, B3, B4의 4개 정점들을, C 컴포넌트는 C1, C2, C3, C4, C5, C6, C7, C8의 8개 정점들을, D 컴포넌트는 D1, D2, D3의 3개 정점들을 가진다고 가정하자. 여기서 A1, A2, A3, A4, A5, A6, B1, B2, B3, B4, C1, C2, C3, C4, C5, C6, C7, C8, D1, D2, D3는 모두 정점들의 인덱스를 나타낸다.
도 1 에 도시된 바와 같이 A2와 A4, B2, C7, D2가 같은 위치의 정점이고, B3와 C2가 같은 위치의 정점이며, C5와 D1이 같은 위치의 정점이라면, 같은 위치에 있는 정점들에 대한 정보 테이블은 후술되는 도 2 와 같이 구성된다.
도 2 는 같은 위치에 있는 정점들에 대한 정보를 표시한 테이블의 일예시도이다.
먼저, 같은 위치에 있는 정점들에 대한 정보 테이블은, 같은 위치에 있는 정점들을 정점 궤적 트리(tree)에 따라 정점의 인덱스로 표시하므로써 구성된다. 정보 테이블은 2개의 칼럼으로 구성되는데, 첫번째 칼럼은 맨 먼저 나타나는 동일 위치의 정점 인덱스이고, 두번째 칼럼에는 첫번째 칼럼의 정점과 같은 위치에 있는 정점의 인덱스가 쓰여진다.
한편, 같은 위치의 정점에 대해서는 하나의 정점만 부호화하여 전송하고, 나머지 같은 위치의 정점들에 대해서는 정점들을 부호화하지 않고 이미 전송한 정점의 인덱스만을 부호화하여 전송하거나 이미 전송한 정점의 인덱스를 부호화하지 않고 바로 전송하므로써 부호화 효율을 높일 수 있다.
따라서, 도 2 에 도시된 바와 같은 경우에는 A2, A4, B2, C7, D2 중에서 A2의 정점만을 부호화하여 전송하고, A4, B2, C7, D2의 정점들은 부호화하지 않고 이들과 같은 위치에 있는 정점 인덱스 A2를 부호화하여 전송하거나 정점 인덱스 A2를 부호화하지 않고 전송한다. 마찬가지로 B3, C5의 정점들을 부호화하여 전송하고, 이들과 각각 같은 위치에 있는 C2, D1의 정점들은 부호화하지 않고 대신 정점 인덱스 B3, C5를 부호화하여 전송하거나 정점 인덱스 B3, C5를 부호화하지 않고 전송한다.
도 3 은 본 발명에 따른 부호화 장치의 일실시예 구성도이다.
정점 부호화부(31)는 외부로부터 입력되는 정점 좌표를 부호화하여 부호화 선택부(35)로 전달한다.
동일 위치 정점 탐색부(32)는 컴포넌트(component)내의 정점들간에 구한 최소의 절대오차를 이용하여 같은 위치의 정점들을 찾아 동일 위치 정점 정보를 테이블 구성부(33)와 부호화 선택부(35)로 전달한다.
테이블 구성부(33)는 외부로부터 인덱스 정보를 입력받아 동일 위치 정점 탐색부(32)로부터 입력되는 동일 위치 정점 정보에 따라 인덱스를 테이블로 구성한다.
부호화부(34)는 구성한 테이블에 쓰인 인덱스의 정점들 중 하나의 정점만을 부호화하여 전송하고, 나머지 같은 위치의 정점들에 대해서는 전송한 정점의 정보(인덱스)만을 부호화하거나 부호화하지 않고 바로 부호화 선택부(35)로 전달한다.
부호화 선택부(35)는 부호화부(34)로부터 입력되는 부호화 정보 및 인덱스와 정점 부호화부(31)로부터 입력되는 부호화 정보 중 하나를 동일 위치 정점 탐색부(32)로부터 입력되는 동일 위치 정점 정보에 따라 선택하여 최종 부호화 결과를 외부로 출력한다.
도 4 는 상기 도 3 의 동일 위치 정점 탐색부의 일실시예 상세 구성도이다.
컴포넌트내 절대오차 계산기(41)는 외부기기로부터 정점 정보를 입력받아 각 컴포넌트별로 컴포넌트내의 모든 정점들간의 절대오차들인 내부절대오차를 구하여 허용오차 계산기(42)로 출력한다.
허용오차 계산기(42)는 상기 컴포넌트내 절대오차 계산기(41)로부터 내부절대오차를 입력받아 최소값을 구하여 허용오차를 기준값 설정기(43)로 출력한다.
기준값 설정기(43)는 상기 허용오차 계산기(42)로부터 허용오차를 입력받아 허용오차를 1000으로 나누어 기준값을 설정하여 동일 위치 정점 탐색기(45)로 출력한다.
정점들간 절대오차 계산기(44)는 상기 외부기기로부터 정점 정보를 입력받아 정점들간의 절대오차를 구하여 동일 위치 정점 탐색기(45)로 출력한다.
동일 위치 정점 탐색기(45)는 상기 정점들간 절대오차 계산기(44)로부터 입력되는 정점들간의 절대오차와 상기 기준값 설정기(43)로부터 입력되는 기준값을 비교하여 동일 위치 정점들을 찾아 동일 위치 정점 정보를 부호화 선택부(35)로 출력한다. 이때, 동일 위치 정점들을 찾는 과정은, 정점들간의 절대오차가 기준값보다 작은 정점의 쌍을 같은 위치의 정점들로 판정한다.
도 5 는 본 발명에 따른 부호화 방법에 대한 일실시예 흐름도이다.
도 5 에서 i=0는 맨 처음 정점부터 시작함을 나타낸다. 따라서, 인덱스 테이블에는 아무 것도 없다(51). 먼저, 해당 인덱스가 테이블에 있는지를 판단하여(52) 이전 정점의 부호화때 인덱스가 이미 테이블에 쓰여져서 테이블에 있으면 i를 1증가시키고(58), 없으면 같은 위치의 정점이 있는지를 판단한다(53).
판단 결과(53), 있으면 정점 궤적 트리(tree)에 따라 현재 정점의 인덱스를 테이블의 첫번째 칼럼에 쓰고 현재 정점과 같은 위치에 있는 정점의 인덱스를 2번째 칼럼에 쓴다(54). 이후, 현재의 정점을 부호화하고(55), 반면에 테이블의 두번째 칼럼에 인덱스가 쓰인 정점은 부호화하지 않고 첫번째 칼럼의 인덱스를 참조만 한 후에(56) i를 1증가시킨다(58). 한편, 같은 위치의 정점이 없을 경우에는 정점을 무조건 부호화한 후에(57) i를 1증가시킨다(58).
이처럼 i를 1증가시키는 과정(58)을 수행한 후에, i가 정점 개수(nv)와 같은지를 판단하여(59) i=nv이면 모든 정점에 대해 부호화 수행을 완료한 것이므로 정점 부호화 정보나 하나의 정점만을 부호화한 정보(나머지 정점에 대한 인덱스 포함)중 어느 하나를 동일 위치 정점 정보에 따라 선택하여 전송하고(60), 아니면 그 다음 정점에 대해서 부호화를 수행하기 위하여, 다음 인덱스가 테이블에 있는지를 판단하는 과정(52)부터 반복 수행한다.
도 6 은 상기 도 5 에 이용되는 동일 위치 정점 탐색 과정에 대한 일실시예 상세 흐름도이다.
도 6 에서 k는 컴포넌트의 개수를 나타내며, nv는 정점의 개수를 나타낸다. 그리고, V(0,i)는 0번째 컴포넌트의 i번째 정점을 나타내며, D(V(k,i),V(k,j))는 k번째 컴포넌트내의 i번째 정점과 j번째 정점사이의 절대오차를 나타낸다.
먼저, 각 컴포넌트(component)별로 컴포넌트내의 모든 정점들간의 절대오차들을 구한다(61). 이후, 각 컴포컨트별로 구한 절대오차값들 중에서 최소값을 각 컴포넌트별로 구한다(62). 다음으로, 구한 최소값들 중에서 가장 작은 값을 허용오차로 정한 후에(63) 허용오차를 1000으로 나눈 값을 기준값으로 설정한다(64).
한편, 정점들을 나머지의 모든 다른 정점들과 비교하여 정점들간의 절대오차를 구하여 동일 위치의 정점들을 찾는다(65). 이는 컴포넌트(component)내에도 같은 위치의 정점이 존재할 수 있기 때문에 컴포넌트간의 비교로만 제한해서는 안되기 때문이다. 이때, 절대오차 결과값들이 허용오차의 1000분의 1(기준값)보다 작으면, 비교된 정점의 쌍을 같은 위치의 정점으로 판정한다.
도 7 은 상기 도 6 에서 정점들간의 절대오차를 구하여 동일위치의 정점을 찾는 과정(65)에 대한 일실시예 상세 흐름도이다.
먼저, 첫번째 정점(i=0)(70)과 나머지 정점들을 비교하게 되는데, 미리 모든 정점에 대해서 플래그(i)를 0으로 고정한다(71). 플래그(i)는 i번째 정점이 동일한 다른 정점을 가지면 1의 값을 가지고, 그렇지 않으면 0의 값을 가진다. "pos_r"은 비교의 주체이고, "pos_s"는 "pos_r"과 비교하게 될 여러 정점들 중 첫번째로 비교되는 정점을 나타낸다. 따라서, pos_r=i이고, pos_s=i+1이 된다(72).
이후, 플래그(i)가 1인지를 판단하여(73) 첫번째 정점(i=0)이 플래그(0)=0이므로 다음 정점(i+1)과의 절대오차가 기준값(er)보다 작은지를 판단하고(75), 플래그(i)가 1이면 i값을 1증가시켜(74) "pos_r"과 "pos_s"를 다시 설정하는 과정(72)부터 반복 수행한다.
상기 판단 결과, 작으면 변수 "val"에 "pos_s"값을 주고, 플래그(i)와 플래그(i+1)을 1로 바꾼다(76). 그리고, "pos_r"을 변수 "val"값으로, "pos_s"를 "val+1"로 바꾼다(77). 이는 최초로 찾아낸 동일한 정점을 비교 주체로 바꿔서 동일 정점 탐색 과정(75)부터 다시 시작하기 위함이다.
상기 판단 결과, 절대 오차가 기준값보다 작지 않으면 "pos_s"를 1증가시킨다(78). 이는 i번째 정점을 i+2번째 정점과 비교하기 위함이다. 그 다음에, "pos_s"가 정점 개수 nv와 같은지를 비교하는데(79), 이는 비교 대상이 맨 마지막 정점인지를 판단하는 것으로, 마지막이 아니면 동일 정점 탐색 과정(75)부터 반복 수행하고, 마지막이면 변수 "val"을 0으로 하고(80) "pos_r"을 변수 "val"값으로, "pos_s"를 "val+1"로 바꾼다(77). 이는 최초로 찾아낸 동일한 정점을 비교 주체로 바꿔서 동일 정점 탐색 과정(75)부터 다시 시작하기 위함이다.
따라서, 변수 "val"이 0 또는 nv-1인지를 판단하여(81) 아니면 동일 정점 탐색 과정(75)부터 반복 수행하고, 0 또는 nv-1이면 i를 1증가시킨 후에(82) 비교 주체가 맨 마지막 정점 바로 앞의 정점(nv-1)인지를 판단하여(83), 그럴 경우에는 수행을 종료하고, 그렇지 않을 경우에는 "pos_r"과 "pos_s"를 다시 설정하는 과정(72)부터 반복 수행한다.
상기와 같이 동일 정점으로 판명된 정점은 비교의 주체에서 제외하고(73), i를 1만큼 증가시켜서(74) 비교의 주체를 바꾸므로써 중복 비교를 방지한다. 또한, 비교 대상이 맨 마지막 정점일 경우에(81), i를 1만큼 증가시켜서(82) 비교 주체를 바꾼다.
도 8 은 같은 위치의 정점들을 찾는 일예를 도시한 설명도이다.
예를 들어, 3차원 모델이 도 8 에 도시된 바와 같이 A, B, C, D의 4개 컴포넌트(component)들로 구성되어 있고, A 컴포넌트는 A1, A2, A3, A4, A5, A6의 6개 정점들을, B 컴포넌트는 B1, B2, B3, B4의 4개 정점들을, C 컴포넌트는 C1, C2, C3, C4, C5, C6, C7, C8의 8개 정점들을, D 컴포넌트는 D1, D2, D3의 3개 정점들을 가진다고 가정하자.
A 컴포넌트(component)내의 A1, A2, A3, A4, A5, A6의 정점들을 가능한 모든 조합에 대해 절대오차를 계산한다. 마찬가지로 B 컴포넌트내에서도 B1, B2, B3, B4 정점들을 가능한 모든 조합에 대해 절대오차를 계산한다. C 컴포넌트내에서도 C1, C2, C3, C4, C5, C6, C7, C8 정점들을 가능한 모든 조합에 대해 절대오차를 계산한다. D 컴포넌트내에서도 D1, D2, D3 정점들을 가능한 모든 조합에 대해 절대오차를 계산한다. 이들 절대 오차값들 중에서 제일 작은 값을 허용오차로 정하고, 이 허용오차의 1000분의 1을 기준값으로 설정한다.
다음으로, A 컴포넌트내의 첫번째 정점부터 나머지 모든 정점들과의 절대오차값을 구하기 시작한다. A1을 나머지 정점인 A2 내지 A6, B1 내지 B4, C1 내지 C8, D1 내지 D3와 순서대로 절대오차를 구해서 기준값과 비교하는 과정에서 기준값보다 작은 값이 나타나지 않고 수행이 완료되면, A2를 이미 비교가 끝난 A1을 제외한 모든 정점들, 즉 A3 내지 A6, B1 내지 B4, C1 내지 C8, D1 내지 D3와 차례대로 절대오차를 구해나간다. 이 과정에서 A2가 A3와의 절대오차가 기준값보다 작지 않고, 다음 비교 대상인 A4와의 절대오차가 기준값보다 작으면, A2와 나머지 정점들간의 절대오차 계산에 들어가지 않고(중지하고), A4와 나머지 정점들(A5, A6, B1 내지 B4, C1 내지 C8, D1 내지 D3)에 대해 차례차례 절대오차 계산에 들어간다. 그 과정에서 기준값보다 작은 값을 가지는 B2를 만나게 되면, 나머지 정점들간의 절대 오차 계산에 들어가지 않고(중지하고), B2와 나머지 정점들(B3, B4, C1 내지 C8, D1 내지 D3)과 차례차례 절대오차 계산에 들어간다. 그 과정에서 기준값보다 작은 값을 가지는 C7을 만나게 되면 B2와 C8, D1 내지 D3와의 절대오차 계산을 하지 않고, C7과 나머지 정점들(C8, D1 내지 D3)과 절대오차 계산을 시작한다. C7이 D2와의 절대오차 계산에서 기준값보다 작은 값을 보이면, C7과 나머지 정점들간의 절대오차 계산에 들어가지 않고(중지하고), D2와 나머지 정점인(하나밖에 없음) D3와 절대오차 계산을 한다.
맨 마지막 정점까지 비교가 끝났으므로 다음 계산 대상인 A3와 나머지 정점들(A4 내지 A6, B1 내지 B4, C1 내지 C8, D1 내지 D3)과의 절대오차 계산을 시작한다. 비교 방법은 앞서 설명한 것과 같다. 그 다음으로는, A4와 나머지 정점들에 대해 비교해야 하지만, A4는 이미 A2와 같은 위치의 정점으로 판명되었기 때문에 비교 대상에서 제외한다. 마찬가지로 비교 과정에서 이미 비교 결과가 같은 정점으로 판명된 정점들은 비교 대상에서 제외한다. 이렇게 하므로써 정점들간의 무조건적인 계산 및 비교에 비해 계산량을 줄일 수 있고, 계산 속도를 증가시킬 수 있는 장점이 있다.
이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하다는 것이 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 명백할 것이다.
상기와 같은 본 발명은, 같은 위치의 정점을 찾기 위해서 종래와 같이 양자화 방법을 사용하지 않기 때문에 해상도 저하의 문제가 없으며, 부호화 효율을 향상시킬 수 있는 효과가 있다. 즉, 3차원 모델 등을 부호화할 때 같은 위치의 여러 정점들을 중복하여 부호화 및 전송하지 않고, 같은 위치에 대해서는 하나의 정점만 부호화하여 전송하고 나머지 같은 위치의 정점들에 대해서는 이미 전송한 정점의 인덱스만을 전송하므로써 부호화 효율을 향상시킬 수 있다.
또한, 본 발명은 3차원 모델 등에서 발생하는 크랙을 방지하기 위한 부호화 방법으로서, 3차원 모델 등을 부호화하는 과정에서 컴포넌트(component)내 또는 컴포넌트들간의 정점들이 일치하지 않아 생기는 크랙(crack : 틈새)을 방지할 수 있는 효과가 있다.

Claims (15)

  1. 크랙을 방지할 수 있도록 한 부호화 장치에 있어서,
    외부로부터 입력되는 정점 좌표를 부호화하기 위한 정점 부호화 수단;
    같은 위치의 정점들을 찾기 위한 제1 동일 위치 정점 탐색 수단;
    외부로부터 입력되는 인덱스를 상기 제1 동일 위치 정점 탐색 수단으로부터의 동일 위치 정점 정보에 따라 테이블로 구성하기 위한 테이블 구성 수단;
    상기 테이블 구성 수단에서 구성한 테이블에 쓰인 인덱스의 정점들 중 하나의 정점을 부호화하고, 나머지 같은 위치의 정점들에 대해서는 부호화한 정점의 정보(인덱스)를 전달하기 위한 부호화 수단; 및
    상기 부호화 수단으로부터 입력되는 부호화 정보 및 정점 정보(인덱스)와, 상기 정점 부호화 수단으로부터 입력되는 부호화 정보 중 하나를 상기 제1 동일 위치 정점 탐색 수단으로부터의 동일 위치 정점 정보에 따라 선택하기 위한 부호화 선택 수단
    을 포함하여 이루어진 부호화 장치.
  2. 제 1 항에 있어서,
    상기 테이블 구성 수단은,
    같은 위치에 있는 정점들을 정점 궤적 트리(tree)에 따라 정점의 인덱스로 표시하여 테이블을 구성하는 것을 특징으로 하는 부호화 장치.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 제1 동일 위치 정점 탐색 수단은,
    외부로부터 정점 정보를 입력받아 각 컴포넌트별로 내부절대오차를 구한 후에 허용오차를 구하여 소정의 기준값을 설정하기 위한 제1 기준값 설정 수단;
    외부로부터 상기 정점 정보를 입력받아 각 정점들간의 절대오차를 구하기 위한 절대오차 계산 수단; 및
    상기 절대오차 계산 수단으로부터 입력되는 정점들간의 절대오차와 상기 제1 기준값 설정 수단으로부터 입력되는 소정의 기준값을 비교하여 동일 위치 정점들을 찾기 위한 제2 동일 위치 정점 탐색 수단
    을 포함하여 이루어진 부호화 장치.
  4. 제 3 항에 있어서,
    상기 제1 기준값 설정 수단은,
    외부로부터 정점 좌표를 입력받아 각 컴포넌트별로 컴포넌트내의 모든 정점들간의 내부절대오차를 구하기 위한 컴포넌트내 절대오차 계산 수단;
    상기 컴포넌트내 절대오차 계산 수단으로부터 내부절대오차를 입력받아 최소값을 구하여 허용오차를 정하기 위한 허용오차 계산 수단; 및
    상기 허용오차 계산 수단으로부터 입력받은 허용오차를 소정의 값으로 나누어 소정의 기준값을 설정하여 상기 제2 동일 위치 정점 탐색 수단으로 전달하기 위한 제2 기준값 설정 수단
    을 포함하여 이루어진 부호화 장치.
  5. 제 3 항에 있어서,
    상기 제2 동일 위치 정점 탐색 수단에서 동일 위치 정점들을 찾는 과정은,
    정점들간의 절대오차가 소정의 기준값보다 작은 정점의 쌍을 동일 위치의 정점들로 판정하여 찾는 것을 특징으로 하는 부호화 장치.
  6. 제 3 항에 있어서,
    상기 제2 동일 위치 정점 탐색 수단은,
    동일 위치의 정점들을 찾으면, 찾은 동일 위치 정점을 비교 주체로 바꾸어서 동일 정점 탐색을 다시 시작하는 것을 특징으로 하는 부호화 장치.
  7. 제 3 항에 있어서,
    상기 제2 동일 위치 정점 탐색 수단은,
    이전의 비교 과정들에서 그 결과가 같은 위치의 정점으로 판명된 정점들을 다음 비교 과정부터는 비교 대상에서 제외하여 중복 비교를 방지한 것을 특징으로 하는 부호화 장치.
  8. 크랙을 방지할 수 있도록 한 부호화 장치에 적용되는 부호화 방법에 있어서,
    동일 위치의 정점들을 탐색하고, 동일 위치 정점의 인덱스를 쓰기 위한 테이블을 구성하는 제 1 단계;
    부호화하고자 하는 정점의 인덱스가 상기 테이블에 존재하는지를 확인하는 제 2 단계;
    상기 제 2 단계의 확인 결과, 있으면 다음 정점을 선택하여 인덱스가 상기 테이블에 존재하는지를 확인하고, 없으면 동일 위치의 정점이 있는지를 확인하는 제 3 단계;
    상기 제 3 단계의 확인 결과, 없으면 해당 정점을 부호화하고, 있으면 해당 정점의 인덱스 및 동일 위치 정점의 인덱스를 상기 테이블에 쓴 후에 상기 테이블에 쓰인 인덱스의 정점들 중 하나의 정점을 부호화하고, 나머지 같은 위치의 정점들에 대해서는 부호화한 정점의 정보(인덱스)를 전달하는 제 4 단계; 및
    모든 정점에 대하여 상기 단계들을 수행한 후에 같은 위치의 정점들중 하나의 정점을 부호화한 상기 부호화 정보 및 정점 인덱스와, 상기 정점 부호화 정보 중 하나를 동일 위치 정점 정보에 따라 선택하여 전송하는 제 5 단계
    를 포함하여 이루어진 부호화 방법.
  9. 제 8 항에 있어서,
    상기 테이블은,
    같은 위치에 있는 정점들을 정점 궤적 트리(tree)에 따라 정점의 인덱스로 표시하여 구성하는 것을 특징으로 하는 부호화 방법.
  10. 제 8 항 또는 제 9 항에 있어서,
    상기 제 1 단계의 동일 위치 정점 탐색 과정은,
    각 컴포넌트별로 컴포넌트내의 모든 정점들간의 절대오차를 구한 후에 허용오차를 구하여 소정의 기준값을 설정하는 제 6 단계;
    각 컴포넌트내외의 각 정점들간을 비교하여 각 정점들간의 절대오차를 구하는 제 7 단계; 및
    상기 각 정점들간의 절대오차와 상기 소정의 기준값을 비교하여 동일 위치 정점들을 찾는 제 8 단계
    를 포함하여 이루어진 부호화 방법.
  11. 제 10 항에 있어서,
    상기 제 6 단계는,
    각 컴포넌트(component)별로 컴포넌트내의 모든 정점들간의 절대오차들을 구하는 제 9 단계;
    상기 제 9 단계에서 구한 절대오차값들 중에서 최소값을 각 컴포넌트별로 구하는 제 10 단계;
    상기 제 10 단계에서 구한 최소값들 중에서 가장 작은 값을 허용오차로 정하는 제 11 단계; 및
    상기 제 11 단계에서 정한 허용오차를 소정의 값으로 나눈 값을 소정의 기준값으로 설정하는 제 12 단계
    를 포함하여 이루어진 부호화 방법.
  12. 제 10 항에 있어서,
    상기 제 8 단계의 동일 위치 정점들을 찾는 과정은,
    정점들간의 절대오차가 소정의 기준값보다 작은 정점의 쌍을 동일 위치의 정점들로 판정하여 찾는 것을 특징으로 하는 부호화 방법.
  13. 제 10 항에 있어서,
    상기 제 8 단계의 동일 위치 정점들을 찾는 과정은,
    동일 위치의 정점들을 찾으면, 찾은 동일 위치 정점을 비교 주체로 바꾸어서 동일 정점 탐색을 다시 시작하는 것을 특징으로 하는 부호화 방법.
  14. 제 10 항에 있어서,
    상기 제 8 단계의 비교 과정은,
    이전의 비교 과정들에서 그 결과가 같은 위치의 정점으로 판명된 정점들을 다음 비교 과정부터는 비교 대상에서 제외하여 중복 비교를 방지한 것을 특징으로 하는 부호화 방법.
  15. 프로세서를 구비한 부호화 장치에,
    동일 위치의 정점들을 탐색하고, 동일 위치 정점의 인덱스를 쓰기 위한 테이블을 구성하는 제 1 기능;
    부호화하고자 하는 정점의 인덱스가 상기 테이블에 존재하는지를 확인하는 제 2 기능;
    상기 제 2 기능에서의 확인 결과, 있으면 다음 정점을 선택하여 인덱스가 상기 테이블에 존재하는지를 확인하고, 없으면 동일 위치의 정점이 있는지를 확인하는 제 3 기능;
    상기 제 3 기능에서의 확인 결과, 없으면 해당 정점을 부호화하고, 있으면 해당 정점의 인덱스 및 동일 위치 정점의 인덱스를 상기 테이블에 쓴 후에 상기 테이블에 쓰인 인덱스의 정점들 중 하나의 정점을 부호화하고, 나머지 같은 위치의 정점들에 대해서는 부호화한 정점의 정보(인덱스)를 전달하는 제 4 기능; 및
    모든 정점에 대하여 상기 단계들을 수행한 후에 같은 위치의 정점들중 하나의 정점을 부호화한 상기 부호화 정보 및 정점 인덱스와, 상기 정점 부호화 정보 중 하나를 동일 위치 정점 정보에 따라 선택하여 전송하는 제 5 기능
    을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1019980043228A 1998-10-15 1998-10-15 크랙 방지를 위한 부호화 장치 및 그 방법 KR100277683B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980043228A KR100277683B1 (ko) 1998-10-15 1998-10-15 크랙 방지를 위한 부호화 장치 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980043228A KR100277683B1 (ko) 1998-10-15 1998-10-15 크랙 방지를 위한 부호화 장치 및 그 방법

Publications (2)

Publication Number Publication Date
KR20000025928A KR20000025928A (ko) 2000-05-06
KR100277683B1 true KR100277683B1 (ko) 2001-01-15

Family

ID=19554192

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980043228A KR100277683B1 (ko) 1998-10-15 1998-10-15 크랙 방지를 위한 부호화 장치 및 그 방법

Country Status (1)

Country Link
KR (1) KR100277683B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DK1327364T4 (da) 2000-10-09 2010-02-08 Nokia Corp Forbindelsesfrigivelse i et tolagskommunikationsnetværk

Also Published As

Publication number Publication date
KR20000025928A (ko) 2000-05-06

Similar Documents

Publication Publication Date Title
CN112218079B (zh) 一种基于空间顺序的点云分层方法、点云预测方法及设备
US5473742A (en) Method and apparatus for representing image data using polynomial approximation method and iterative transformation-reparametrization technique
CN111405281A (zh) 一种点云属性信息的编码方法、解码方法、存储介质及终端设备
US20220005230A1 (en) Point Cloud Encoding and Decoding Methods, Encoding Device and Decoding Device
US11631218B2 (en) Efficient compression of data representing triangular mesh attributes
CN111145090A (zh) 一种点云属性编码方法、解码方法、编码设备及解码设备
KR102152346B1 (ko) 이미지 파일의 블록 간 차이를 통한 압축율 향상 방법 및 시스템
US20220130074A1 (en) Method, device, and storage medium for data encoding/decoding
WO2021000334A1 (zh) 一种数据编码、数据解码方法、设备及存储介质
CN111667544B (zh) 动画数据压缩方法、装置、设备及存储介质
KR20110124720A (ko) 수치 데이터의 압축 및 압축해제
RU2007148931A (ru) Обработка изображений на основе весов
CN108776673B (zh) 关系模式的自动转换方法、装置及存储介质
Attene et al. Swingwrapper: Retiling triangle meshes for better edgebreaker compression
CN104756156A (zh) 表征计算机动画毛发的压缩数据
Caillaud et al. Progressive compression of arbitrary textured meshes
KR20090097057A (ko) 메쉬 모델로 구현된 3차원 데이터의 연결정보를 부호화 및복호화 방법
US8885955B1 (en) Depthmap compression
KR100277683B1 (ko) 크랙 방지를 위한 부호화 장치 및 그 방법
Fan et al. Deep geometry post-processing for decompressed point clouds
CN111510716B (zh) 通过图像文件的像素变换提高压缩率的方法和系统
US20060188166A1 (en) Computer graphics data coding apparatus, decoding apparatus, coding method and decoding method
JP2011227924A (ja) 画像に対応する信号を処理することで画像又は連続する画像に表示されるオブジェクトを表現する方法とその制御装置、装置、記憶媒体
US20030200512A1 (en) Using boolean expressions to represent shapes within a layout of an integrated circuit
US20230376639A1 (en) Generating prismatic cad models by machine learning

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20081001

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee