KR20220133079A - 데이터 처리 장치 및 데이터 처리 방법 - Google Patents

데이터 처리 장치 및 데이터 처리 방법 Download PDF

Info

Publication number
KR20220133079A
KR20220133079A KR1020210147065A KR20210147065A KR20220133079A KR 20220133079 A KR20220133079 A KR 20220133079A KR 1020210147065 A KR1020210147065 A KR 1020210147065A KR 20210147065 A KR20210147065 A KR 20210147065A KR 20220133079 A KR20220133079 A KR 20220133079A
Authority
KR
South Korea
Prior art keywords
scan model
scan
model
alignment
data processing
Prior art date
Application number
KR1020210147065A
Other languages
English (en)
Other versions
KR102651515B1 (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 PCT/KR2022/003076 priority Critical patent/WO2022203236A1/ko
Publication of KR20220133079A publication Critical patent/KR20220133079A/ko
Application granted granted Critical
Publication of KR102651515B1 publication Critical patent/KR102651515B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/22Arrangements for sorting or merging computer data on continuous record carriers, e.g. tape, drum, disc
    • G06F7/24Sorting, i.e. extracting data from one or more carriers, rearranging the data in numerical or other ordered sequence, and rerecording the sorted data on the original carrier or on a different carrier or set of carriers sorting methods in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/189Automatic justification

Abstract

제1 스캔 모델과 제2 스캔 모델을 획득하는 단계, 제1 스캔 모델과 제2 스캔 모델을 초기 정렬할지 여부를 결정하는 단계 및 제1 스캔 모델과 제2 스캔 모델을 초기 정렬하지 않기로 결정한 것에 상응하여, 제1 스캔 모델과 제2 스캔 모델을 정밀 정렬하는 단계를 포함하는, 데이터 처리 장치에서 수행하는 데이터 처리 방법이 개시된다.

Description

데이터 처리 장치 및 데이터 처리 방법{A data processing apparatus, a data processing method}
개시된 실시 예는 데이터 처리 장치 및 데이터 처리 방법에 대한 것으로, 보다 구체적으로, 구강 이미지를 처리 또는 가공하기 위한 장치 및 그 방법에 관한 것이다.
환자의 치과 치료를 위해서 3차원 스캐너가 이용되고 있다. 3차원 스캐너는 환자의 구강 내에 인입 및 인출이 가능한 핸드 헬드(handheld) 형태이거나 또는 테이블의 회전을 이용하여 테이블 위에 배치된 석고 모형을 스캔할 수 있는 테이블 스캐너 형태일 수 있다.
3차원 스캐너에 연결된 PC 등의 컴퓨팅 장치는, 3차원 스캐너가 획득한 로우 데이터를 이용하여 3차원 구강 이미지를 생성할 수 있다.
경우에 따라, 치과의 등의 사용자는 컴퓨팅 장치를 이용하여, 복수개의 3차원 구강 이미지를 서로 정렬(align)할 수 있다. 사용자는 정렬할 두 개의 3차원 구강 이미지 각각에서 매칭 지점을 수동으로 선택함으로써 두 개의 3차원 구강 이미지가 정렬되도록 할 수 있다.
또는 사용자는 사용자 인터페이스 등을 이용하여 자동 정렬을 선택함으로써, 컴퓨팅 장치가 복수개의 3차원 구강 이미지를 자동으로 정렬하도록 할 수 있다. 컴퓨팅 장치는 정렬 대상이 되는 복수개의 3차원 구강 이미지에 대해 먼저 초기 정렬(initial align)을 수행하고, 초기 정렬된 이미지들을 보다 정확하게 정렬하기 위해 정밀 정렬, 예컨대, ICP 정렬(Interactive Closest Point align) 등을 수행하게 된다. 경우에 따라, 사용자는 복수개의 3차원 구강 이미지들 간에 초기 정렬은 잘 수행되었으나, 정밀 정렬이 정확하게 수행되지 않았다고 판단할 수 있다. 이 경우, 사용자는 3차원 구강 이미지들 간에 정밀 정렬만 다시 수행되기를 원할 수 있다. 그러나, 사용자가 다시 자동 정렬을 선택하는 경우, 컴퓨팅 장치는 다시 초기 정렬을 먼저 수행하고, 이후, 정밀 정렬을 수행하게 되므로, 경우에 따라서는 다시 정렬되기 전보다 더 맞지 않는 위치에 데이터가 정렬될 가능성이 있다. 따라서, 복수개의 3차원 구강 이미지를 보다 편리하고 정확하게 정렬할 수 있는 방법 및 장치가 요구된다.
다양한 실시 예들은 복수개의 스캔 데이터 간의 관계에 따라 초기 정렬 수행을 생략할지 여부를 결정하는 데이터 처리 장치 및 데이터 처리 방법을 제공하기 위한 것이다.
다양한 실시 예들은 초기 정렬 수행을 생략하기로 결정한 경우, 초기 정렬 수행을 생략하고 정밀 정렬을 수행하는 데이터 처리 장치 및 데이터 처리 방법을 제공하기 위한 것이다.
실시 예에 따른 데이터 처리 장치에서 수행하는 데이터 처리 방법은, 제1 스캔 데이터와 제2 스캔 데이터를 획득하는 단계, 상기 제1 스캔 데이터와 상기 제2 스캔 데이터를 초기 정렬할지 여부를 결정하는 단계 및 상기 제1 스캔 데이터와 상기 제2 스캔 데이터를 초기 정렬하지 않기로 결정한 것에 상응하여, 상기 제1 스캔 데이터와 상기 제2 스캔 데이터를 정밀 정렬하는 단계를 포함할 수 있다.
실시 예에서, 상기 제1 스캔 데이터와 상기 제2 스캔 데이터를 초기 정렬할지 여부를 결정하는 단계는 상기 제1 스캔 데이터와 상기 제2 스캔 데이터 간의 관계가 제1 정렬 기준을 만족하는지 여부를 결정하는 단계 및 상기 제1 스캔 데이터와 상기 제2 스캔 데이터 간의 관계가 상기 제1 정렬 기준을 만족하는 것으로 결정되는 것에 상응하여, 상기 제1 스캔 데이터와 상기 제2 스캔 데이터를 초기 정렬하지 않기로 결정하는 단계를 포함할 수 있다.
실시 예에서, 상기 제1 스캔 데이터와 상기 제2 스캔 데이터 간의 관계가 상기 제1 정렬 기준을 만족하는지 여부를 결정하는 단계는 상기 제1 스캔 데이터로부터 프로젝션한 법선 벡터가 상기 제2 스캔 데이터와 만나는 지점까지의 거리가 제1 임계 값 이하인지 여부를 결정하는 단계 및 상기 거리가 상기 제1 임계 값 이하인 것에 상응하여, 상기 제1 정렬 기준을 만족한다고 결정하는 단계를 포함할 수 있다.
실시 예에서, 상기 제1 스캔 데이터로부터 프로젝션한 법선 벡터가 상기 제2 스캔 데이터와 만나는 지점까지의 거리가 상기 제1 임계 값 이하인지 여부를 결정하는 단계는 상기 제1 스캔 데이터의 복수 지점으로부터, 상기 복수 지점에서 프로젝션한 법선 벡터가 상기 제2 스캔 데이터와 만나는 복수 지점까지의 거리를 획득하는 단계 및 상기 거리의 분포에 대한 통계적 속성 값이 상기 제1 임계 값 이하인 것에 상응하여, 상기 제1 스캔 데이터와 상기 제2 스캔 데이터 간의 관계가 상기 제1 정렬 기준을 만족하는 것으로 결정하는 단계를 포함하고, 상기 통계적 속성 값은 상기 거리의 분포의 최솟값, 최댓값, 중앙값, 평균값, 절대 평균값, 최빈값, 범위, 분산 중 적어도 하나를 포함할 수 있다.
실시 예에서, 상기 제1 스캔 데이터로부터 프로젝션한 법선 벡터가 상기 제2 스캔 데이터와 만나는 지점까지의 거리가 상기 제1 임계 값 이하인지 여부를 결정하는 단계는 상기 제1 스캔 데이터의 복수 지점으로부터, 상기 복수 지점에서 프로젝션한 법선 벡터가 상기 제2 스캔 데이터와 만나는 복수 지점까지의 거리 중, 상기 제1 임계 값 이하의 값을 갖는 거리의 비율을 획득하는 단계 및 상기 거리의 비율이 기준치 이상인 것에 상응하여, 상기 제1 스캔 데이터와 상기 제2 스캔 데이터 간의 관계가 상기 제1 정렬 기준을 만족하는 것으로 결정하는 단계를 포함할 수 있다.
실시 예에서, 상기 방법은 상기 정밀 정렬된 제1 스캔 데이터와 제2 스캔 데이터 간의 관계가 제2 정렬 기준을 만족하는지 여부를 결정하는 단계 및 상기 정밀 정렬된 제1 스캔 데이터와 제2 스캔 데이터 간의 관계가 상기 제2 정렬 기준을 만족하지 않는 것으로 결정되면, 상기 정밀 정렬된 제1 스캔 데이터와 제2 스캔 데이터를 초기 정렬하는 단계를 더 포함하고, 상기 제2 정렬 기준을 만족하는지 여부를 결정하는 단계는 상기 정밀 정렬된 제1 스캔 데이터로부터 프로젝션한 법선 벡터가 상기 정밀 정렬된 제2 스캔 데이터와 만나는 지점까지의 거리가 제2 임계 값 이하인지 여부를 결정하는 단계 및 상기 정밀 정렬된 제1 스캔 데이터로부터 프로젝션한 법선 벡터가 상기 정밀 정렬된 제2 스캔 데이터와 만나는 지점까지의 거리가 상기 제2 임계 값 이하인 것에 상응하여, 상기 제2 정렬 기준을 만족한다고 결정하는 단계를 포함하고, 상기 제2 임계 값은 상기 제1 임계 값보다 작을 수 있다.
실시 예에서, 상기 방법은 상기 제1 스캔 데이터와 상기 제2 스캔 데이터를 초기 정렬하기로 결정한 것에 상응하여, 상기 제1 스캔 데이터와 상기 제2 스캔 데이터를 초기 정렬하는 단계 및 상기 초기 정렬된 제1 스캔 데이터와 제2 스캔 데이터를 정밀 정렬하는 단계를 더 포함할 수 있다.
실시 예에서, 상기 방법은 자동 정렬 선택을 위한 메뉴를 출력하는 단계를 더 포함하고, 상기 제1 스캔 데이터와 상기 제2 스캔 데이터를 초기 정렬할지 여부를 결정하는 단계는 상기 자동 정렬 선택을 위한 메뉴를 선택 받는 것에 상응하여 수행될 수 있다.
실시 예에 따른 데이터 처리 장치는 하나 이상의 인스트럭션을 실행하는 프로세서를 포함하고, 상기 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써, 제1 스캔 데이터와 제2 스캔 데이터를 획득하고, 상기 제1 스캔 데이터와 상기 제2 스캔 데이터를 초기 정렬할지 여부를 결정하고, 상기 제1 스캔 데이터와 상기 제2 스캔 데이터를 초기 정렬하지 않기로 결정한 것에 상응하여, 상기 제1 스캔 데이터와 상기 제2 스캔 데이터를 정밀 정렬할 수 있다.
일 실시 예에 따른 데이터 처리 장치 및 데이터 처리 방법은 복수개의 스캔 데이터 간의 관계에 따라 초기 정렬 수행을 생략할지 여부를 결정할 수 있다.
일 실시 예에 따른 데이터 처리 장치 및 데이터 처리 방법은 초기 정렬 수행을 생략하기로 결정한 경우, 초기 정렬 수행을 생략하고 정밀 정렬을 수행할 수 있다.
도 1은 실시 예에 따른 구강 이미지 처리 시스템을 설명하기 위한 도면이다.
도 2는 실시 예에 따른 데이터 처리 장치의 내부 블록도이다.
도 3은 실시 예에 따른 도 2의 프로세서의 내부 블록도이다.
도 4는 도 2의 데이터 처리 장치의 일 예를 도시한 도면이다.
도 5는 실시 예에 따라, 데이터 처리 장치가 초기 정렬을 수행할지 여부를 결정하는 방법을 설명하기 위한 도면이다.
도 6은 일 실시 예에 따라, 데이터 처리 장치가 자동 정렬을 수행하는 방법을 설명하기 위한 도면이다.
도 7은 다른 실시 예에 따라, 데이터 처리 장치가 자동 정렬을 수행하는 방법을 설명하기 위한 도면이다.
도 8은 실시 예에 따라, 스캔 모델을 자동 정렬하는 과정을 도시한 순서도이다.
도 9는 일 실시 예에 따라, 스캔 모델에 대한 초기 정렬을 생략하기로 결정하는 방법을 도시한 순서도이다.
도 10은 다른 실시 예에 따라, 스캔 모델에 대한 초기 정렬을 생략하기로 결정하는 방법을 도시한 순서도이다.
본 명세서는 본 출원의 권리범위를 명확히 하고, 본 출원이 속하는 기술분야에서 통상의 지식을 가진 자가 본 출원을 실시할 수 있도록, 본 출원의 원리를 설명하고, 실시 예들을 개시한다. 개시된 실시 예들은 다양한 형태로 구현될 수 있다.
명세서 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다. 본 명세서가 실시 예들의 모든 요소들을 설명하는 것은 아니며, 본 출원이 속하는 기술분야에서 일반적인 내용 또는 실시 예들 간에 중복되는 내용은 생략한다. 명세서에서 사용되는 '부'(part, portion)라는 용어는 소프트웨어 또는 하드웨어로 구현될 수 있으며, 실시 예들에 따라 복수의 '부'가 하나의 요소(unit, element)로 구현되거나, 하나의 '부'가 복수의 요소들을 포함하는 것도 가능하다. 이하 첨부된 도면들을 참고하여 본 출원의 작용 원리 및 실시 예들에 대해 설명한다.
본 명세서에서 이미지는 적어도 하나의 치아, 또는 적어도 하나의 치아를 포함하는 구강, 또는 구강에 대한 석고 모형을 나타내는 이미지(이하, '구강 이미지')를 포함할 수 있다.
또한, 본 명세서에서 이미지는 대상체에 대한 2차원 이미지 또는 대상체를 입체적으로 나타내는 3차원 구강 이미지를 포함할 수 있다. 3차원 구강 이미지는 로우 데이터에 근거하여 구강의 구조를 3차원적으로 모델링(modeling)하여 생성될 수 있으므로, 3차원 구강 모델로 호칭될 수도 있다. 또한, 3차원 구강 모델은 스캔 모델 또는 스캔 데이터로도 호칭될 수 있다.
이하, 본 명세서에서 구강 이미지는 구강을 2차원 또는 3차원적으로 나타내는 모델 또는 이미지를 통칭하는 의미로 사용하기로 한다.
또한, 본 명세서에서 데이터는 대상체를 2차원 또는 3차원적으로 표현하기 위해서 필요한 정보, 예를 들어, 적어도 하나의 카메라를 이용하여 획득된 로우 데이터(raw data) 등을 의미할 수 있다.
구체적으로, 로우 데이터는 구강 이미지를 생성하기 위해서 획득되는 데이터로, 3차원 스캐너를 이용하여 대상체를 스캔(scan)할 때 3차원 스캐너에 포함되는 적어도 하나의 이미지 센서에서 획득되는 데이터(예를 들어, 2차원 데이터)가 될 수 있다. 3차원 스캐너에서 획득되는 로우 데이터는, 2차원 이미지 데이터로 언급될 수도 있다. 로우 데이터는, 3차원 스캐너를 이용하여 대상체를 스캔할 때 복수의 카메라들에 의해 획득되는 서로 다른 시점의 2차원 이미지들을 의미할 수 있다.
위에서는, 로우 데이터가 2차원 이미지인 것으로 서술하였으나, 이에 제한하지 않고 로우 데이터는 3차원 이미지 데이터일 수도 있다.
본 명세서에서 대상체(object)는 촬영의 대상이 되는 것으로서 신체의 일부이거나, 또는 신체의 일부를 본뜬 모형을 포함할 수 있다. 대상체는 구강, 구강을 본 뜬 석고 모형이나 임프레션 모형, 구강에 삽입 가능한 인공 구조물, 또는 인공 구조물을 본 뜬 석고 모형이나 임프레션 모형을 포함할 수 있다. 예컨대, 대상체는 치아나 치은이거나, 치아나 치은에 대한 석고 모형이나 임프레션 모형이거나, 및/또는 구강 내에 삽입 가능한 인공 구조물, 또는 이러한 인공 구조물에 대한 석고 모형이나 임프레션 모형을 포함할 수 있다. 여기서, 구강에 삽입 가능한 인공 구조물은 예를 들어, 교정 장치, 임플란트, 크라운, 인레이, 온레이, 인공 치아, 구강 내 삽입되는 교정 보조 도구 중 적어도 하나를 포함할 수 있다. 또한, 교정 장치는 브라켓, 어태치먼트(attachment), 교정용 나사, 설측 교정 장치, 및 가철식 교정 유지 장치 중 적어도 하나를 포함할 수 있다.
다양한 상황에서, 치과의 등의 사용자는 복수개의 3차원 구강 이미지를 정렬하고자 할 수 있다. 예컨대, 사용자는 구강 상태를 비교하기 위해, 동일한 대상체에 대해 소정 기간 전 후로 스캔하여 획득한 복수개의 구강 이미지를 정렬할 수 있다. 또는, 사용자는 환자의 치아에 보철물을 씌울 경우, 보철물이 환자의 치아와 잘 맞는지를 확인하기 위해 보철물에 대한 스캔 모델을 환자의 치아에 대한 스캔 모델 위에 정렬할 수 있다.
또는, 사용자는 상악과 하악, 교합에 대해 각각 3차원 구강 이미지를 획득한 후, 상악과 하악을 각각 교합 이미지에 정렬하여 보다 정확한 교합 이미지를 획득할 수 있다.
이와 같이 다양한 상황에서, 사용자는 복수개의 3차원 구강 이미지 간에 정렬이 수행되도록 할 수 있다.
사용자가 자동 정렬을 요청할 때마다 컴퓨팅 장치는 먼저 초기 정렬을 수행하고, 이후, 정밀 정렬을 수행하게 된다. 경우에 따라서는, 이미 3차원 구강 이미지 간에 어느 정도 초기 정렬이 수행된 상태에서 사용자가 보다 정확히 정밀 정렬이 수행될 것을 원하는 경우가 있을 수 있다. 그러나, 사용자가 자동 정렬을 요청할 경우, 컴퓨팅 장치가 일관되게 다시 초기 정렬을 수행하기 때문에 초기 정렬을 수행한 후의 구강 이미지의 정렬 위치는 초기 정렬을 수행하기 전의 정렬 위치보다도 더 맞지 않는 경우가 있을 수 있다.
개시된 실시 예는 전술한 문제점을 극복하기 위한 것으로, 정렬 대상이 되는 복수개의 구강 이미지 간의 관계가 정렬 기준을 만족하는지를 먼저 결정하고, 그에 따라 초기 정렬 수행 여부를 결정하는 데이터 처리 장치 및 방법을 제공하기 위한 것이다.
이하에서는 도면을 참조하여 실시 예들을 상세히 설명한다.
도 1은 실시 예에 따른 구강 이미지 처리 시스템을 설명하기 위한 도면이다.
도 1을 참조하면, 구강 이미지 처리 시스템은 3차원 스캐너(100, 110), 및 3차원 스캐너(100, 110)와 통신망(130)을 통해 결합된 데이터 처리 장치(120)를 포함할 수 있다.
3차원 스캐너(100, 110)는 대상체의 이미지를 획득하는 의료 장치일 수 있다.
3차원 스캐너(100, 110)는 구강이나 인공 구조물, 또는 구강이나 인공 구조물을 본 뜬 석고 모형 중 적어도 하나에 대한 이미지를 획득할 수 있다.
3차원 스캐너(100, 110)는 구강 스캐너(100)와 테이블 스캐너(110) 중 적어도 하나를 포함할 수 있다.
실시 예에서, 3차원 스캐너(100, 110)는 구강 스캐너(100)를 포함할 수 있다. 구강 스캐너(100)는 사용자가 손으로 잡고 이동하면서 구강을 스캔하는 핸드 헬드(handheld)형일 수 있다. 구강 스캐너(100)는 구강 내에 삽입되어 비 접촉식으로 치아를 스캐닝함으로써, 적어도 하나의 치아를 포함하는 구강에 대한 이미지를 획득할 수 있다.
구강 스캐너(100)는 본체(101)와 팁(103)을 포함할 수 있다. 본체(101)는 광을 투사하는 광 조사부(미도시)와 대상체를 촬영하여 이미지를 획득하는 카메라(미도시)를 포함할 수 있다.
팁(103)은 구강 내에 삽입되는 부분으로, 탈부착이 가능한 구조로 본체(101)에 장착될 수 있다. 팁(103)은 광 경로 변경 수단을 포함하여, 본체(101)로부터 조사된 광을 대상체로 향하게 하고, 대상체로부터 수신된 광을 본체(101)로 향하게 하도록 할 수 있다.
구강 스캐너(100)는 구강 내부의 치아, 치은 및 구강 내에 삽입 가능한 인공 구조물(예를 들어, 브라켓 및 와이어 등을 포함하는 교정 장치, 임플란트, 인공 치아, 구강 내 삽입되는 교정 보조 도구 등) 중 적어도 하나의 표면을 이미징하기 위해서, 대상체에 대한 표면 정보를 로우 데이터(raw data)로 획득할 수 있다.
실시 예에서, 3차원 스캐너(100, 110)는 테이블 스캐너(110)를 포함할 수 있다. 테이블 스캐너(110)는 테이블(117)의 회전을 이용하여 대상체(118)를 스캔함으로써 대상체(118)에 대한 표면 정보를 로우 데이터(raw data)로 획득하는 스캐너일 수 있다. 테이블 스캐너(110)는 구강을 본 뜬 석고 모형이나 임프레션 모형, 구강에 삽입 가능한 인공 구조물, 또는 인공 구조물을 본 뜬 석고 모형이나 임프레션 모형 등의 대상체(118)의 표면을 스캔할 수 있다.
테이블 스캐너(110)는 하우징(111)의 내측 방향으로 함몰되어 형성되는 내부 공간을 포함할 수 있다. 내부 공간의 측면에는 대상체(118)를 거치할 수 있으며, 대상체(118)를 이동시킬 수 있는 이동부(112)가 형성될 수 있다. 이동부(112)는 z축 방향을 따라 상하 방향으로 이동할 수 있다. 이동부(112)는 제1 회전부(114)와 연결된 고정 베이스(113), 고정 베이스(113) 상의 일 지점을 중심축으로, 예컨대, x축을 중심축으로 한 제1 회전 방향(M1)으로 회전 가능한 제1 회전부(114), 및 제1 회전부(114)와 연결되어 제1 회전부(114)로부터 돌출되어 형성된 빔부(beam portion, 116)를 포함할 수 있다. 빔부(116)는 x축 방향으로 연장 또는 단축될 수 있다.
빔부(116)의 타단에는 z축을 회전축으로 하는 제2 회전 방향(M2)으로 회전할 수 있는 원통 형상의 제2 회전부(115)가 결합될 수 있다. 제2 회전부(115)의 일면 상에는 제2 회전부(115)와 함께 회전하는 테이블(117)이 형성될 수 있다.
내부 공간에는 광학부(119)가 형성될 수 있다. 광학부(119)는 대상체(118)에 패턴 광을 조사(project)하는 광 조사부와, 대상체(118)로부터 반사된 광을 수용하여 복수의 2차원 프레임들을 획득하는 적어도 하나의 카메라를 포함할 수 있다. 광학부(119)는 내부 공간의 측면에 결합된 상태에서, 광 조사부(141)의 중심을 회전축으로 하여 회전하는 제2 회전부(미도시)를 더 포함할 수 있다. 제2 회전부는 광 조사부, 제1 및 제2 카메라를 제3 회전 방향(M3)으로 회전시킬 수 있다.
3차원 스캐너(100, 110)는 획득한 로우 데이터를 통신망(130)를 통하여 데이터 처리 장치(120)로 전송할 수 있다.
데이터 처리 장치(120)는 3차원 스캐너(100, 110)와 유선 또는 무선 통신망(130)을 통하여 연결될 수 있다. 데이터 처리 장치(120)는 3차원 스캐너(100, 110)로부터 로우 데이터를 수신하고, 수신된 로우 데이터에 근거하여 구강 이미지를 생성, 처리, 디스플레이 및/또는 전송할 수 있는 모든 전자 장치가 될 수 있다. 예컨대, 데이터 처리 장치(120)는 스마트 폰(smart phone), 랩탑 컴퓨터, 데스크탑 컴퓨터, PDA, 태블릿 PC 등의 컴퓨팅 장치가 될 수 있으나, 이에 한정되지 않는다. 또한, 데이터 처리 장치(120)는 구강 이미지를 처리하기 위한 서버(또는 서버 장치) 등의 형태로 존재할 수도 있다.
데이터 처리 장치(120)는 3차원 스캐너(100, 110)에서 수신된 2차원 이미지 데이터에 근거하여, 2차원 이미지 데이터를 처리하여 3차원 구강 이미지를 생성하거나, 또는 부가 정보를 생성할 수 있다. 데이터 처리 장치(120)는 3차원 구강 이미지 및/또는 부가 정보를 디스플레이(125)를 통하여 디스플레이 하거나, 이를 외부 장치로 출력하거나 전송할 수 있다.
또 다른 예로, 3차원 스캐너(100, 110)가 구강 스캔을 통하여 로우 데이터를 획득하고, 획득된 로우 데이터를 가공하여 3차원 데이터를 생성하고, 이를 데이터 처리 장치(120)로 전송할 수 있다.
실시 예에서, 3차원 스캐너(100, 110)는 대상체에 패턴 광을 조사(project)하고 패턴 광이 조사된 대상체를 스캔함으로써, 패턴의 변형에 의한 삼각 계측의 원리를 이용하여 대상체의 형상을 나타내는 3차원 데이터를 획득할 수 있다.
실시 예에서, 3차원 스캐너(100, 110)는 공초점(confocal) 방식을 이용하여 대상체에 대한 3차원 데이터를 획득할 수도 있다. 공초점 방식은 3차원 표면 측정을 위한 비파괴 광학 영상화 기법으로, 핀홀 구조를 이용하여 공간해상도가 높은 광학 단면 이미지를 획득할 수 있다. 3차원 스캐너(100, 110)는 축 방향을 따라 획득한 2차원 이미지를 스택(stack)하여 3차원 데이터를 획득할 수 있다.
그러나, 이는 실시 예로, 3차원 스캐너(100, 110)는 전술한 방법 외에도 다양한 방식을 이용하여 로우 데이터로부터 3차원 데이터를 획득하고, 이를 데이터 처리 장치(120)로 전송할 수 있다. 데이터 처리 장치(120)는 수신된 3차원 데이터를 분석, 처리, 가공, 디스플레이 및/또는 전송할 수 있다.
실시 예에서, 데이터 처리 장치(120)는 복수개의 3차원 구강 이미지를 획득할 수 있다. 전술한 바와 같이, 3차원 구강 이미지는 스캔 모델로도 호칭될 수 있다. 사용자는 데이터 처리 장치(120)를 이용하여 복수개의 스캔 모델을 정렬할 수 있다. 이를 위해, 사용자는 데이터 처리 장치(120)를 이용하여 복수개의 스캔 모델 중, 정렬할 스캔 모델을 선택할 수 있다. 정렬할 스캔 모델을 각각 제1 스캔 모델, 제2 스캔 모델로 호칭하면, 실시 예에서, 데이터 처리 장치(120)는 제1 스캔 모델과 제2 스캔 모델을 초기 정렬할지 여부를 결정할 수 있다.
실시 예에서, 데이터 처리 장치(120)는 제1 스캔 모델과 제2 스캔 모델을 초기 정렬하지 않기로 결정한 경우, 초기 정렬을 생략하고, 제1 스캔 모델과 제2 스캔 모델을 정밀 정렬할 수 있다.
도 2는 실시 예에 따른 데이터 처리 장치의 내부 블록도이다.
실시 예에서, 데이터 처리 장치(200)는 구강 이미지 처리 장치로도 호칭될 수 있다.
도 2의 데이터 처리 장치(200)는 도 1의 데이터 처리 장치(120)의 일 실시 예일 수 있다. 따라서, 도 1의 데이터 처리 장치(120)에 대해 설명한 내용과 중복된 부분에 대한 설명은 생략한다.
데이터 처리 장치(200)는 3차원 스캐너(100, 110)로부터 수신한 로우 데이터를 이용하여 구강 이미지를 생성, 처리, 가공, 디스플레이 및/또는 전송할 수 있는 전자 장치일 수 있다.
도 2를 참조하면, 데이터 처리 장치(200)는 프로세서(210) 및 메모리(220)를 포함할 수 있다.
구체적으로, 데이터 처리 장치(200)는 하나 이상의 인스트럭션을 저장하는 메모리(220), 및 상기 메모리(220)에 저장된 상기 하나 이상의 인스트럭션을 실행하는 프로세서(210)를 포함할 수 있다. 프로세서(210)는 상기 하나 이상의 인스트럭션을 실행함으로써, 제1 스캔 모델과 제2 스캔 모델을 획득하고, 상기 제1 스캔 모델과 상기 제2 스캔 모델을 초기 정렬할지 여부를 결정하고, 상기 제1 스캔 모델과 상기 제2 스캔 모델을 초기 정렬하지 않기로 결정한 것에 상응하여, 상기 제1 스캔 모델과 상기 제2 스캔 모델을 정밀 정렬할 수 있다.
데이터 처리 장치(200)는 3차원 스캐너(100, 110)로부터 수신된 로우 데이터를 기반으로 3차원 구강 모델, 즉, 스캔 모델을 생성할 수 있다. 또는 데이터 처리 장치(200)는3차원 스캐너(100, 110)로부터 스캔 모델을 수신할 수도 있다. 또는 데이터 처리 장치(200)는 외부 서버나 외부 장치 등으로부터 유선 또는 무선 통신망을 통해 스캔 모델을 수신할 수도 있다.
실시 예에서, 메모리(220)는 3차원 스캐너(100, 110)로부터 수신되는 데이터, 예를 들어, 구강이나 구강 모형을 스캔하여 획득된 로우 데이터 등을 저장할 수 있다. 또한, 메모리(220)는 데이터 처리 장치(200)가 생성하거나, 또는 3차원 스캐너(100, 110)로부터 수신하거나, 외부 서버나 외부 장치 등으로부터 수신한 스캔 모델을 저장할 수 있다.
실시 예에 따른 메모리(220)는 적어도 하나의 인스트럭션을 저장할 수 있다. 메모리(220)는 프로세서(210)가 실행하는 적어도 하나의 인스트럭션이나 프로그램을 저장하고 있을 수 있다.
실시 예에서, 메모리(220)는 복수개의 스캔 모델을 저장할 수 있다.
실시 예에서, 메모리(220)는 데이터 정렬을 위한 전용 소프트웨어를 저장할 수 있다. 데이터 정렬을 위한 전용 소프트웨어는 전용 프로그램, 전용 툴(tool), 또는 전용 어플리케이션 등으로 호칭될 수 있다.
실시 예에서, 메모리(220)는 정렬 대상이 되는 스캔 모델을 초기 정렬할지 여부를 결정하기 위한 하나 이상의 인스트럭션을 포함할 수 있다.
실시 예에서, 메모리(220)는 정렬 대상이 되는 스캔 모델 간의 관계가 제1 정렬 기준을 만족하는지 여부를 결정하기 위한 하나 이상의 인스트럭션을 포함할 수 있다.
실시 예에서, 메모리(220)는 정렬 대상이 되는 스캔 모델을 초기 정렬하기 위한 하나 이상의 인스트럭션을 포함할 수 있다.
실시 예에서, 메모리(220)는 정렬 대상이 되는 스캔 모델을 정밀 정렬하기 위한 하나 이상의 인스트럭션을 포함할 수 있다.
실시 예에 따른 프로세서(210)는 데이터 처리 장치(200) 전반을 제어할 수 있다. 프로세서(210)는 적어도 하나의 인스트럭션을 실행하여 의도하는 동작이 수행되도록 제어할 수 있다. 여기서, 적어도 하나의 인스트럭션은 프로세서(210)와 별도로 데이터 처리 장치(200) 내에 포함되는 메모리(220) 또는 프로세서(210)내에 포함되는 내부 메모리(미도시)에 저장되어 있을 수 있다.
구체적으로, 프로세서(210)는 적어도 하나의 인스트럭션을 수행하여, 의도하는 동작이 수행되도록 데이터 처리 장치(200) 내부에 포함되는 적어도 하나의 구성들을 제어할 수 있다. 따라서, 프로세서(210)가 소정 동작들을 수행하는 경우를 예로 들어 설명하더라도, 프로세서(210)가 소정 동작들이 수행되도록 데이터 처리 장치(200) 내부에 포함된 적어도 하나의 구성들을 제어하는 것을 의미할 수 있다.
실시 예에서, 프로세서(210)는 정렬 대상이 되는 3차원 구강 이미지를 획득할 수 있다. 프로세서(210)는 3차원 스캐너(100, 110)로부터 수신한 로우 데이터에 기반하여 생성한 3차원 구강 이미지, 또는 메모리(310), 3차원 스캐너(100, 110), 외부 서버나 외부 장치 등으로부터 획득한 3차원 구강 이미지 중에서 정렬할 구강 이미지를 획득할 수 있다.
설명의 편의를 위하여, 이하, 정렬 대상이 되는 3차원 구강 이미지를 각각 제1 스캔 모델 및 제2 스캔 모델로 호칭하기로 한다.
실시 예에서, 프로세서(210)는 제1 스캔 모델과 제2 스캔 모델을 초기 정렬할지 여부를 결정할 수 있다.
실시 예에서, 프로세서(210)는 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제1 정렬 기준을 만족하는지 여부를 결정하여, 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제1 정렬 기준을 만족하는 것으로 결정되면, 제1 스캔 모델과 제2 스캔 모델을 초기 정렬하지 않기로 결정할 수 있다.
실시 예에서, 프로세서(210)는 제1 스캔 모델로부터 프로젝션한 법선 벡터가 제2 스캔 모델과 만나는 지점까지의 거리가 제1 임계 값 이하인지 여부를 결정할 수 있다. 프로세서(210)는 제1 스캔 모델로부터 프로젝션한 법선 벡터가 제2 스캔 모델과 만나는 지점까지의 거리가 제1 임계 값 이하인 경우, 제1 정렬 기준을 만족한다고 결정할 수 있다.
실시 예에서, 프로세서(210)는 제1 스캔 모델로부터 프로젝션한 법선 벡터가 제2 스캔 모델과 만나는 지점까지의 거리가 제1 임계 값 이하인지 여부를 결정하기 위해, 다양한 방법을 이용할 수 있다.
일 실시 예에서, 프로세서(210)는 제1 스캔 모델의 복수 지점으로부터, 제1 스캔 모델의 복수 지점에서 프로젝션한 법선 벡터가 제2 스캔 모델과 만나는 복수 지점까지의 거리를 각각 획득할 수 있다. 프로세서(210)는 복수 지점 간 거리들로부터, 거리 분포를 획득하고, 거리의 분포에 대한 통계적 속성 값을 획득할 수 있다. 프로세서(210)는 거리의 분포에 대한 통계적 속성 값이 제1 임계 값 이하인 것에 상응하여, 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제1 정렬 기준을 만족하는 것으로 결정할 수 있다. 통계적 속성 값은 거리의 분포의 최솟값, 최댓값, 중앙값, 평균값, 절대 평균값, 최빈값, 범위, 분산 중 적어도 하나를 포함할 수 있다.
다른 실시 예에서, 프로세서(210)는 제1 스캔 모델의 복수 지점으로부터, 제1 스캔 모델의 복수 지점에서 프로젝션한 법선 벡터가 제2 스캔 모델과 만나는 복수 지점까지의 거리 중, 제1 임계 값 이하의 값을 갖는 거리의 비율을 획득할 수 있다. 프로세서(210)는 거리의 비율이 기준치 이상인지 여부를 식별하고, 거리의 비율이 기준치 이상인 것에 상응하여, 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제1 정렬 기준을 만족하는 것으로 결정할 수 있다.
다만, 이는 실시 예로, 프로세서(210)는 위에서 기술한 방법 외에도 다양한 방법을 이용하여 제1 스캔 모델로부터 프로젝션한 법선 벡터가 제2 스캔 모델과 만나는 지점까지의 거리가 제1 임계 값 이하인지 여부를 결정할 수 있다.
실시 예에서, 프로세서(210)는 제1 스캔 모델로부터 프로젝션한 법선 벡터가 제2 스캔 모델과 만나는 지점까지의 거리가 제1 임계 값 이하인 경우, 제1 정렬 기준을 만족한다고 결정할 수 있다.
실시 예에서, 프로세서(210)는 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제1 정렬 기준을 만족하는 경우, 제1 스캔 모델과 제2 스캔 모델을 초기 정렬하지 않기로 결정할 수 있다. 프로세서(210)는 제1 스캔 모델과 제2 스캔 모델을 초기 정렬하지 않기로 결정한 경우, 제1 스캔 모델과 제2 스캔 모델에 대해 초기 정렬을 수행하지 않고 바로 정밀 정렬을 수행할 수 있다.
실시 예에서, 프로세서(210)는 정밀 정렬된 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제2 정렬 기준을 만족하는지 여부를 결정할 수 있다.
실시 예에서, 프로세서(210)는 정밀 정렬된 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제2 정렬 기준을 만족하는지 여부를 결정하기 위해, 정밀 정렬된 제1 스캔 모델로부터 프로젝션한 법선 벡터가 정밀 정렬된 제2 스캔 모델과 만나는 지점까지의 거리를 획득하고, 획득한 거리가 제2 임계 값 이하인지 여부를 결정할 수 있다. 프로세서(210)는 정밀 정렬된 제1 스캔 모델로부터 프로젝션한 법선 벡터가 정밀 정렬된 제2 스캔 모델과 만나는 지점까지의 거리가 제2 임계 값 이하인 경우, 제2 정렬 기준을 만족한다고 결정할 수 있다. 이 경우, 제2 정렬 기준을 만족하는지 여부를 판단하는 데 이용되는 제2 임계 값은 제1 정렬 기준을 만족하는지 여부를 판단하는 데 이용되는 제1 임계 값보다 작은 값일 수 있다.
실시 예에서, 프로세서(210)는 정밀 정렬된 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제2 정렬 기준을 만족하지 않는 것으로 결정되면, 정밀 정렬된 제1 스캔 모델과 제2 스캔 모델을 초기 정렬할 수 있다.
정밀 정렬된 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제2 정렬 기준을 만족하지 않는다는 것은, 제1 스캔 모델과 제2 스캔 모델 간에 초기 정렬 자체가 잘못된 위치에서 수행되었기 때문일 수 있다. 따라서, 프로세서(210)는 정밀 정렬된 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제2 정렬 기준을 만족하지 않는 경우, 초기 정렬부터 수행함으로써 정렬 위치를 재 조정할 수 있다.
실시 예에서, 프로세서(210)는 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제1 정렬 기준을 만족하지 않는 것으로 결정되면, 제1 스캔 모델과 제2 스캔 모델을 초기 정렬하기로 결정할 수 있다. 이 경우, 프로세서(210)는 제1 스캔 모델과 제2 스캔 모델을 초기 정렬하고, 초기 정렬된 제1 스캔 모델과 제2 스캔 모델을 정밀 정렬할 수 있다.
실시 예에서, 프로세서(210)는 자동 정렬 선택을 위한 메뉴를 출력할 수 있다. 프로세서(210)는 자동 정렬 선택을 위한 메뉴를 사용자로부터 선택 받는 경우, 제1 스캔 모델과 상기 제2 스캔 모델을 초기 정렬할지 여부를 결정할 수 있다.
도 3은 실시 예에 따른 도 2의 프로세서의 내부 블록도이다.
도 3을 참조하면, 프로세서(210)는 정렬 방법 선택부(211), 초기 정렬 수행부(213) 및 정밀 정렬 수행부(215)를 포함할 수 있다.
실시 예에서, 정렬 방법 선택부(211)는 정렬 대상이 되는 스캔 모델을 초기 정렬할지 여부를 결정할 수 있다. 정렬 방법 선택부(211)는 정렬 대상인 제1 스캔 모델 및 제2 스캔 모델 간의 관계를 획득하고, 제1 스캔 모델 및 제2 스캔 모델 간의 관계에 따라 초기 정렬을 수행할지, 정밀 정렬을 수행할지 여부를 결정할 수 있다.
정렬 방법 선택부(211)는 초기 정렬 수행 여부를 결정하기 위해 제1 스캔 모델과 제2 스캔 모델 간의 관계가 소정의 기준을 만족하는지 여부를 결정할 수 있다. 이하, 설명의 편의를 위해, 정렬 방법 선택부(211)가 초기 정렬 수행 여부를 결정하기 위해 사용하는, 제1 스캔 모델 및 제2 스캔 모델 간의 관계에 대한 소정 기준을 제1 정렬 기준으로 호칭하기로 한다.
실시 예에서, 정렬 방법 선택부(211)는 제1 스캔 모델과 제2 스캔 모델 간의 거리를 획득하고, 제1 스캔 모델과 제2 스캔 모델 간의 거리가 제1 정렬 기준을 만족하는지 여부를 기준으로 초기 정렬 수행 여부를 결정할 수 있다.
실시 예에서, 정렬 방법 선택부(211)는 제1 스캔 모델 위의 한 점에 대한 접평면에 수직인 법선 벡터를 제2 스캔 모델로 투사(프로젝션, projection)하여 법선 벡터가 제2 스캔 모델과 만나는 지점을 구할 수 있다. 제1 스캔 모델 위의 한 지점을 제1 지점이라 하고, 제1 지점에서 프로젝션한 법선 벡터가 제2 스캔 모델과 만나는 지점을 제2 지점이라고 할 때, 정렬 방법 선택부(211)는 제1 지점과 제2 지점 사이의 거리를 획득할 수 있다.
정렬 방법 선택부(211)는 제1 스캔 모델 위의 복수의 지점에서 각각 법선 벡터를 제2 스캔 모델로 투사하여, 복수 지점들 간의 거리를 획득할 수 있다.
일 실시 예에서, 정렬 방법 선택부(211)는 복수 지점들 간의 거리를 이용하여 거리 분포에 대한 통계적 속성을 획득할 수 있다. 거리 분포에 대한 통계적 속성은, 제1 스캔 모델과 제2 스캔 모델 간의 거리의 최솟값, 최댓값, 중앙값, 평균값, 절대 평균값, 최빈값, 범위, 분산 중 적어도 하나를 포함할 수 있다. 정렬 방법 선택부(211)는 거리 분포에 대한 통계적 속성 값이 제1 임계 값 이하인지 여부를 결정하고, 거리 분포에 대한 통계적 속성 값이 제1 임계 값 이하인 경우, 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제1 정렬 기준을 만족한다고 결정할 수 있다.
예컨대, 정렬 방법 선택부(211)는 제1 스캔 모델과 제2 스캔 모델 간의 복수 지점들 간의 거리를 구하고, 복수 지점들 간의 거리의 평균값을 거리 분포에 대한 통계적 속성 값으로 획득할 수 있다. 정렬 방법 선택부(211)는 복수 지점들 간의 거리의 평균값이 제1 임계 값 이하인 경우, 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제1 정렬 기준을 만족한다고 결정하고, 초기 정렬을 수행하지 않기로 결정할 수 있다.
다른 실시 예에서, 정렬 방법 선택부(211)는 복수 지점들 간의 거리 중, 제1 임계 값 이하의 값을 갖는 거리의 비율을 획득할 수 있다. 정렬 방법 선택부(211)는 제1 임계 값 이하의 값을 갖는 거리의 비율이 기준치 이상인 경우, 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제1 정렬 기준을 만족한다고 결정할 수 있다.
예컨대, 정렬 방법 선택부(211)는 제1 스캔 모델과 제2 스캔 모델 간의 복수 지점들 간의 거리를 구하고, 복수 지점들 간의 거리 중, 제1 임계 값 이하의 거리를 갖는 지점이 차지하는 퍼센트를 획득할 수 있다. 정렬 방법 선택부(211)는 전체 복수 지점들 간의 거리 중 제1 임계 값 이하인 거리가 기준치 이상인 경우, 예컨대, 전체 구해진 거리 중 50퍼센트 이상인 경우, 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제1 정렬 기준을 만족한다고 결정하고, 초기 정렬을 수행하지 않기로 결정할 수 있다.
실시 예에서, 정밀 정렬은 지역 탐색을 통해, 3차원 데이터 간에 겹치는 부분을 최대화하는 3차원 변환을 수행하는 것을 의미할 수 있다. 이와 달리, 초기 정렬은 전역 탐색을 통해 점근 데이터들을 대략적으로 정렬하는 것을 의미할 수 있다. 따라서, 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제1 정렬 기준을 만족하는 경우에도 두 스캔 모델을 초기 정렬할 경우, 전역 탐색을 통해 오히려 초기 정렬 이전보다도 더 관련성이 떨어지는 위치에 스캔 모델이 정렬될 가능성이 있다.
따라서, 실시 예에서, 정렬 방법 선택부(211)는 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제1 정렬 기준을 만족하는 경우에는 초기 정렬을 수행하지 않기로 결정할 수 있다. 이 경우, 정렬 방법 선택부(211)는 초기 정렬 수행부(213)가 동작하지 않도록 제어하고, 정밀 정렬 수행부(213)가 제1 스캔 모델과 제2 스캔 모델을 정밀 정렬하도록 제어할 수 있다.
실시 예에서, 정밀 정렬 수행부(213)는 제1 스캔 모델과 제2 스캔 모델을 정밀 정렬할 수 있다. 실시 예에서, 정밀 정렬은 지역 탐색을 통해, 3차원 데이터 간에 겹치는 부분을 최대화하는 3차원 변환을 수행하는 것을 의미할 수 있다. 정밀 정렬 수행부(213)는 3차원 점군 데이터들에서 겹치는 부분의 거리가 최소화되도록 하여 3차원 변환이 정확히 수행되도록 할 수 있다.
실시 예에서, 정밀 정렬 수행부(213)는 예컨대, Iterative closest point (ICP)와 같은 알고리즘을 이용하여 정렬 대상인 두 스캔 모델을 정렬할 수 있다. ICP는 두 개의 포인트 클라우드 사이를 최소화하기 위한 알고리즘으로서, 서로 다른 스캔 모델로부터 2D 또는 3D 표면을 재구성하는데 이용되는 알고리즘이다. ICP 알고리즘은 레퍼런스라고 불리우는 포인트 클라우드를 고정시키고, 소오스라고 불리우는 포인트 클라우드를 레퍼런스에 가장 잘 매칭되도록 변형시킨다. ICP 알고리즘은 소오스로부터 레퍼런스까지의 거리를 나타내는 에러 메트릭(error metric)을 최소화하는데 필요한 변형, 예컨대, 이동(translation)과 회전(rotation)의 결합을 반복적으로 수정함으로써, 3차원 모델을 정렬할 수 있다. 정밀 정렬 수행부(213)는 ICP 이외에도 다양한 알고리즘을 이용할 수 있으며, 예를 들어, Kabsch algorithm 등을 이용할 수도 있으나, 이에 한정되는 것은 아니다.
실시 예에서, 정렬 방법 선택부(211)는 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제1 정렬 기준을 만족하지 않아, 초기 정렬을 수행하기로 결정한 경우, 초기 정렬 수행부(213)가 동작하도록 제어할 수 있다.
초기 정렬 수행부(213)는 제1 스캔 모델과 제2 스캔 모델을 초기 정렬할 수 있다. 실시 예에서, 초기 정렬은 정밀 정렬과 달리 전역 탐색을 통해 수행될 수 있다.
실시 예에서, 초기 정렬 수행부(213)는 3차원의 기하학적인 특성을 이용한 특징점 추출을 통해 점군 데이터들을 대략적으로 정렬할 수 있다. 제1 스캔 모델 및 제2 스캔 모델은 각각 점군을 포함할 수 있다. 초기 정렬 수행부(213)는 제1 스캔 모델의 전역에서 점군을 다운샘플링하여 제1 점군을 획득하고, 제1 점군으로부터 제1 특징점을 획득할 수 있다. 또한, 초기 정렬 수행부(213)는 제2 스캔 모델의 전역에서 점군을 다운샘플링하여 제2 점군을 획득하고, 제2 점군으로부터 제2 특징점을 획득할 수 있다.
제1 특징점 및 제2 특징점 중 적어도 하나는, 제1 점군 및 제2 점군 중 적어도 하나의 각 점 마다의 법선 벡터와 주변 점과의 연관성을 나타내는 디스크립터(descriptor)를 포함할 수 있다. 디스크립터는 각 점과 주변 점 간의 거리 및 각 점과 주변 점 간의 법선 벡터의 각도 차이 중 적어도 하나에 기반하여 획득될 수 있다. 초기 정렬 수행부(213)는 제1 특징점과 제2 특징점 간의 차이가 기준치 이하인 특징점들을 매칭하여, 제1 스캔 모델과 제2 스캔 모델을 초기 정렬할 수 있다.
초기 정렬 수행부(213)에 의해 초기 정렬된 제1 스캔 모델과 제2 스캔 모델은 정밀 정렬 수행부(215)로 보내질 수 있다. 정밀 정렬 수행부(215)는 초기 정렬이 수행된 제1 스캔 모델과 제2 스캔 모델을 정밀 정렬할 수 있다.
이후, 프로세서(210)는 정밀 정렬된 1 스캔 모델과 제2 스캔 모델 간의 관계가 제2 정렬 기준을 만족하는지 여부를 결정하고, 정밀 정렬된 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제2 정렬 기준을 만족하는 경우에는 정렬 과정을 종료할 수 있다.
프로세서(210)는 정밀 정렬된 제1 스캔 모델로부터 프로젝션한 법선 벡터가 정밀 정렬된 제2 스캔 모델과 만나는 지점까지의 거리가 제2 임계 값 이하인지 여부를 결정하고, 그 거리가 제2 임계 값 이하인 경우, 제2 정렬 기준을 만족한다고 결정할 수 있다. 여기서, 제1 정렬 기준에 이용되는 제1 임계 값보다 제2 정렬 기준에 이용되는 제2 임계 값은 더 작을 수 있다.
프로세서(210)는 정밀 정렬된 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제2 정렬 기준을 만족하지 않는 경우, 초기 정렬 수행부(213)가 정밀 정렬된 제1 스캔 모델과 제2 스캔 모델을 다시 초기 정렬하도록 제어할 수 있다.
이와 같이, 실시 예에 의하면, 정렬 방법 선택부(211)는 정렬 대상인 두 스캔 모델을 초기 정렬할지 여부를 결정하고, 두 스캔 모델의 관계가 제1 정렬 기준을 만족하는 경우에는 초기 정렬 수행을 생략하고 바로 정밀 정렬을 수행함으로써, 일괄적으로 초기 정렬을 다시 수행함으로 인해 발생할 수 있는 관련성 없는 위치에의 정렬 가능성을 배제시킬 수 있다.
또한, 실시 예에 의하면, 정렬 방법 선택부(211)는 정렬 대상인 두 스캔 모델의 관계가 제1 정렬 기준을 만족하는 경우에는 초기 정렬 수행을 생략하고 바로 정밀 정렬을 수행함으로써, 스캔 모델을 초기 정렬하기 위해 소요되는 불필요한 연산량 및 시간이 감소되도록 할 수 있다.
도 4는 도 2의 데이터 처리 장치의 일 예를 도시한 도면이다.
도 4를 참조하면, 데이터 처리 장치(400)는 프로세서(210) 및 메모리(220) 외에도 디스플레이(410), 영상 처리부(420), 통신 인터페이스(430) 및 사용자 입력부(440)를 더 포함할 수 있다.
도 4의 데이터 처리 장치(400)에 포함된 프로세서(210) 및 메모리(220)는 도 2의 데이터 처리 장치(200)에 포함된 프로세서(210) 및 메모리(220)와 수행하는 기능이 동일하므로 동일한 도면 부호를 사용하였다. 이하, 도 2의 데이터 처리 장치(200)에 대해 설명한 내용과 중복되는 부분에 대한 설명은 생략한다.
실시 예에 따른 디스플레이(410)는 스캔 모델을 출력할 수 있다. 디스플레이(410)는 복수개의 스캔 모델 중, 사용자 입력부(440)를 통해 사용자로부터 선택된 제1 스캔 모델과 제2 스캔 모델을 각각 별개의 화면에, 또는 하나의 화면에 함께 출력할 수 있다.
실시 예에서, 디스플레이(410)는 스캔 모델 정렬을 위한 사용자 선택을 입력 받기 위한 자동 정렬 선택 메뉴를 출력할 수 있다. 사용자는 디스플레이(410)가 출력한 자동 정렬 선택 메뉴에 대응하여, 사용자 입력부(440)를 통해 스캔 모델 정렬을 위한 메뉴를 선택할 수 있다.
실시 예에서, 디스플레이(410)는 제1 스캔 모델과 제2 스캔 모델이 정렬된 결과물을 출력할 수 있다. 예컨대, 디스플레이(410)는 두 스캔 모델 중 더 크기가 큰 스캔 모델에 크기가 작은 스캔 모델이 정렬된 상태를 출력할 수 있다.
실시 예에 따른 영상 처리부(420)는 이미지의 생성 및/또는 처리를 위한 동작들을 수행할 수 있다. 영상 처리부(420)는 3차원 스캐너(100, 110)로부터 수신한 로우 데이터를 기반으로 스캔 모델을 생성할 수 있다.
실시 예에서, 영상 처리부(420)는 프로세서(210)의 제어에 따라, 제1 스캔 모델과 제2 스캔 모델을 정렬할 수 있다.
영상 처리부(420)는 제1 스캔 모델과 제2 스캔 모델 간에 겹치는 부분이 최대화되고, 겹치는 부분의 거리가 최소화되도록 하여 제1 스캔 모델과 제2 스캔 모델을 정렬할 수 있다.
실시 예에 따른 통신 인터페이스(430)는 적어도 하나의 외부 전자 장치와 유선 또는 무선 통신 네트워크를 통하여 통신을 수행할 수 있다.
예컨대, 통신 인터페이스(430)는 프로세서(210)의 제어에 따라서 3차원 스캐너(100, 110)와 통신을 수행할 수 있다. 실시 예에서, 통신 인터페이스(430)는 3차원 스캐너(100, 110)로부터 로우 데이터를 수신하거나, 스캔 모델을 획득할 수 있다. 실시 예에서, 통신 인터페이스(430)는 3차원 스캐너(100, 110) 외의 다른 외부 전자 장치, 외부 서버 등과도 통신을 수행하여 스캔 모델을 획득할 수 있다.
통신 인터페이스(430)는 블루투스, 와이파이, BLE(Bluetooth Low Energy), NFC/RFID, 와이파이 다이렉트(Wifi Direct), UWB, 또는 ZIGBEE 등의 통신 규격에 따른 통신을 수행하는 적어도 하나의 근거리 통신 모듈을 포함할 수 있다.
또한, 통신 인터페이스(430)는 원거리 통신 규격에 따라서 원거리 통신을 지원하기 위한 서버와 통신을 수행하는 원거리 통신 모듈을 더 포함할 수 있다. 구체적으로, 통신 인터페이스(430)는 인터넷 통신을 위한 네트워크를 통하여 통신을 수행하는 원거리 통신 모듈을 포함할 수 있다. 예컨대, 통신 인터페이스(430)는 3G, 4G, 및/또는 5G 등의 통신 규격에 따르는 통신 네트워크를 통하여 통신을 수행하는 원거리 통신 모듈을 포함할 수 있다.
또한, 통신 인터페이스(430)는 3차원 스캐너(100, 110)나 외부 서버, 외부 전자 장치 등과 유선으로 통신할 수도 있다. 이를 위해 통신 인터페이스(430)는 3차원 스캐너(100, 110)나 외부 전자 장치와 유선 케이블로 연결되기 위한 적어도 하나의 포트를 포함할 수 있다. 통신 인터페이스(430)는 적어도 하나의 포트를 통하여 유선 연결된 3차원 스캐너(100, 110)나 외부 전자 장치와 통신을 수행할 수 있다.
실시 예에서, 통신 인터페이스(430)는 외부 전자 장치나 외부 서버 등으로, 제1 스캔 모델과 제2 스캔 모델이 정렬된 결과물을 전송할 수 있다. 예컨대, 통신 인터페이스(430)는 두 스캔 모델 중 더 크기가 큰 스캔 모델에 크기가 작은 스캔 모델이 정렬된 결과물을 외부 전자 장치나 외부 서버 등으로 전송할 수 있다.
실시 예에 따른 사용자 입력부(440)는 데이터 처리 장치(400)를 제어하기 위한 사용자 입력을 수신할 수 있다. 사용자 입력부(440)는 사용자의 터치를 감지하는 터치 패널, 사용자의 푸시 조작을 수신하는 버튼, 사용자 인터페이스 화면 상의 일 지점을 지정 또는 선택하기 위한 마우스(mouse) 또는 키보드(key board) 등을 포함하는 사용자 입력 디바이스를 포함할 수 있으나 이에 제한되지 않는다. 또한, 사용자 입력부(440)는 음성 인식을 위한 음성 인식 장치를 포함할 수 있다. 예를 들어, 음성 인식 장치는 마이크로폰이 될 수 있으며, 음성 인식 장치는 사용자의 음성 명령 또는 음성 요청을 수신할 수 있다. 그에 따라서, 프로세서(210)는 음성 명령 또는 음성 요청에 대응되는 동작이 수행되도록 제어할 수 있다.
실시 예에서, 사용자 입력부(440)는 치과의 등의 사용자로부터 제1 스캔 모델과 제2 스캔 모델을 선택 받을 수 있다.
실시 예에서, 사용자 입력부(440)는 사용자로부터 제1 스캔 모델과 제2 스캔 모델을 자동 정렬할 것을 선택 받을 수 있다.
도 5는 실시 예에 따라, 데이터 처리 장치가 초기 정렬을 수행할지 여부를 결정하는 방법을 설명하기 위한 도면이다.
실시 예에서, 데이터 처리 장치는 제1 스캔 모델과 제2 스캔 모델을 정렬할 때 초기 정렬이 필요한지 여부를 결정하기 위해 법선 벡터를 이용할 수 있다. 법선 벡터(normal vector)는 3차원 공간에서 2차원 곡면 위의 한 점에 대한 접선들로 이루어진 접평면에 수직인 방향을 갖는 벡터를 의미할 수 있다.
데이터 처리 장치는 제1 스캔 모델(510)위의 한 점에 대한 접평면에 수직인 법선 벡터를 제2 스캔 모델(520)로 투사하여 법선 벡터가 제2 스캔 모델(520) 위의 한 지점과 만나는 지점을 구할 수 있다.
도 5는, 제1 스캔 모델(510)의 제1 영역(511)에 포함된 제1 지점(512)에서 제2 스캔 모델(520)의 제2 지점(521)으로 법선 벡터가 프로젝션되는 것을 도시한다. 도 5에 도시된 바와 같이, 데이터 처리 장치는 제1 스캔 모델(510) 위의 제1 지점(512)에서 프로젝션한 법선 벡터가 제2 스캔 모델(520)과 만나는 제2 지점(521)을 식별하고, 제1 지점(512)과 제2 지점(521) 사이의 법선 벡터의 거리(530)를 획득할 수 있다.
실시 예에서, 데이터 처리 장치는 제1 스캔 모델(510) 위의 복수 지점으로부터 각각 법선 벡터를 프로젝션하여, 각각의 법선 벡터가 제2 스캔 모델(520)과 만나는 복수 지점까지의 거리를 구하고, 복수 지점들 간의 거리를 이용하여 제1 스캔 모델(510)과 제2 스캔 모델(520) 간의 관계가 제1 정렬 기준을 만족하는지 여부를 결정할 수 있다.
예컨대, 데이터 처리 장치는 제1 스캔 모델(510)과 제2 스캔 모델(520)의 복수 지점들 간의 거리의 분포에 대한 통계적 속성 값을 획득하고, 통계적 속성 값이 제1 임계 값 이하인 경우, 제1 스캔 모델(510)과 제2 스캔 모델(520) 간의 관계가 제1 정렬 기준을 만족하는 것으로 결정할 수 있다.
또는, 데이터 처리 장치는 제1 스캔 모델(510)과 제2 스캔 모델(520)의 복수 지점들 간의 거리 중 제1 임계 값 이하의 값을 갖는 거리의 비율을 획득하고, 거리의 비율이 기준치 이상인 경우, 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제1 정렬 기준을 만족하는 것으로 결정할 수 있다.
도 6은 일 실시 예에 따라, 데이터 처리 장치가 자동 정렬을 수행하는 방법을 설명하기 위한 도면이다.
데이터 처리 장치는 환자의 구강을 스캔하여 획득한 3차원 구강 이미지를 획득할 수 있다.
실시 예에서, 데이터 처리 장치는 사용자로부터 복수의 3차원 구강 이미지 중 정렬 대상을 선택 받을 수 있다.
실시 예에서, 데이터 처리 장치는 사용자가 정렬 대상으로 선택한 제1 스캔 모델(620)과 제2 스캔 모델(630)을 디스플레이(610)를 통해 출력할 수 있다.
데이터 처리 장치는 디스플레이(610)를 통해 3차원 구강 이미지를 편집하거나 변경하기 위한 적어도 하나의 메뉴를 포함하는 메뉴바(611)를 출력할 수 있다. 예를 들어, 메뉴바(611)는 3차원 구강 이미지의 선택, 확대, 축소, 전체 화면으로 보기, 이전 이미지 보기, 각도나 위치 변경, 회전 등을 선택하기 위한 메뉴들을 포함할 수 있다.
실시 예에서, 메뉴바(611)는 자동 정렬 메뉴(613)를 포함할 수 있다. 또는 다른 실시 예에서, 자동 정렬 메뉴(613)는 메뉴바(611)에 포함되지 않고, 메뉴바(611)와는 별도의 위치에 출력될 수도 있다. 예컨대, 자동 정렬 메뉴(613)는 디스플레이(610)의 좌측이나 우측, 또는 제1 스캔 모델(620)과 제2 스캔 모델(630) 사이의 위치 등에 출력될 수도 있다.
실시 예에서, 사용자로부터 자동 정렬 메뉴(613)가 선택되면, 데이터 처리 장치는 제1 스캔 모델(620)과 제2 스캔 모델(630)을 정렬할 수 있다.
실시 예에서, 데이터 처리 장치는 사용자로부터 자동 정렬 메뉴(613)가 선택되면, 제1 스캔 모델(620)과 제2 스캔 모델(630)을 초기 정렬할지 여부를 결정할 수 있다. 데이터 처리 장치는 제1 스캔 모델(620)과 제2 스캔 모델(630) 간의 관계를 획득하고, 제1 스캔 모델(620)과 제2 스캔 모델(630) 간의 관계가 제1 정렬 기준을 만족하는지 여부를 결정하여, 제1 스캔 모델(620)과 제2 스캔 모델(630)을 초기 정렬할지 여부를 결정할 수 있다.
실시 예에서, 데이터 처리 장치는 두 스캔 모델 중 하나, 예컨대, 크기가 더 작은 제2 스캔 모델(630)로부터 제1 스캔 모델(620)로 프로젝션한 법선 벡터가 제1 스캔 모델(620)과 만나는 지점까지의 거리가 제1 임계 값 이하인지 여부를 결정하여 제1 스캔 모델(620)과 제2 스캔 모델(630) 간의 관계가 제1 정렬 기준을 만족하는지 여부를 결정할 수 있다.
다른 실시 예에서, 사용자가 두 스캔 모델 중 하나를 레퍼런스 데이터로 지정하고, 나머지 하나를 타겟 데이터로 지정한 경우, 데이터 처리 장치는 타겟 데이터로 지정된 모델로부터 레퍼런스 데이터로 지정된 모델로 법선 벡터를 프로젝션하여 두 데이터 간의 관계에 따라 초기 정렬을 수행할지 여부를 결정할 수 있다.
여기서, 레퍼런스 데이터(reference data)는 기준 데이터로, 기본이 되는 표준 데이터를 의미할 수 있다. 레퍼런스 데이터는 타겟 데이터와의 비교 기준으로 사용할 수 있는 데이터를 의미할 수 있다.
타겟 데이터(target data)는 대상 데이터로, 비교할 목표나 목적이 되는 데이터를 의미할 수 있다. 타겟 데이터는 레퍼런스 데이터로부터 벗어난 정도를 알고자 하는 대상이 되는 데이터를 의미할 수 있다.
예컨대, 사용자가 제1 스캔 모델(620)을 레퍼런스 데이터로 지정하고, 제2 스캔 모델(630)을 타겟 데이터로 지정한 경우, 데이터 처리 장치는 타겟 데이터로 지정된 제2 스캔 모델(630)로부터 레퍼런스 데이터로 지정된 제1 스캔 모델(620)로 법선 벡터를 프로젝션할 수 있다. 데이터 처리 장치는 법선 벡터가 제1 스캔 모델(520)과 만나는 지점까지의 거리가 제1 임계 값 이하인지 여부에 따라 제1 스캔 모델(520)과 제2 스캔 모델(530)을 초기 정렬할지 여부를 결정할 수 있다.
도 6에 도시된 바와 같이, 디스플레이(610) 상에서 제1 스캔 모델(620)과 제2 스캔 모델(630)이 멀리 떨어져 있는 경우에는 제1 스캔 모델(620)과 제2 스캔 모델(630) 간의 거리가 제1 임계 값보다 크기 때문에, 제1 스캔 모델(620)과 제2 스캔 모델(630) 간의 관계가 제1 정렬 기준을 만족하지 않게 된다. 이 경우, 데이터 처리 장치는 제1 스캔 모델(620)과 제2 스캔 모델(630)을 초기 정렬하기로 결정하고, 두 스캔 모델을 초기 정렬할 수 있다. 이후, 데이터 처리 장치는 초기 정렬된 스캔 모델을 정밀 정렬할 수 있다.
도 7은 다른 실시 예에 따라, 데이터 처리 장치가 자동 정렬을 수행하는 방법을 설명하기 위한 도면이다.
도 7에 도시된 도면은, 데이터 처리 장치가 도 6에서 설명한 방법에 따라 제1 스캔 모델(620)과 제2 스캔 모델(630)을 초기 정렬하고, 이후 정밀 정렬까지 수행한 결과를 도시한 도면이다.
도 7을 참조하면, 데이터 처리 장치는 자동 정렬된 제1 스캔 모델(720)과 제2 스캔 모델(730)을 디스플레이(710)를 통해 출력할 수 있다.
실시 예에서, 데이터 처리 장치는 디스플레이(710)를 통해 메뉴바(711)를 출력할 수 있다. 실시 예에서, 자동 정렬 메뉴(713)는 메뉴바(711)에 포함될 수 있다. 또는, 실시 예에서, 자동 정렬 메뉴(713)는 메뉴바(711)와는 별도로 디스플레이(710)에 출력될 수도 있다.
경우에 따라, 사용자는 디스플레이(710)를 통해 출력된 결과물이 만족스럽지 않다고 생각할 수 있다. 예컨대, 사용자는 자동 정렬된 결과가 정확하지 않다고 생각할 수 있다. 이 경우, 사용자는 데이터 처리 장치의 디스플레이(710)를 통해 출력된 자동 정렬 메뉴(713)를 다시 선택할 수 있다.
실시 예에서, 데이터 처리 장치는 사용자가 자동 정렬 메뉴(713)를 선택한 것에 상응하여 자동 정렬을 수행할 수 있다.
실시 예에서, 데이터 처리 장치는 자동 정렬된 제1 스캔 모델(720)과 제2 스캔 모델(730)을 초기 정렬할지 여부를 결정할 수 있다. 데이터 처리 장치는 자동 정렬된 제1 스캔 모델(720)과 제2 스캔 모델(730) 간의 관계가 제1 정렬 기준을 만족하는지 여부를 결정하고, 그에 따라, 자동 정렬된 제1 스캔 모델(720)과 제2 스캔 모델(730)을 초기 정렬할지 여부를 결정할 수 있다.
실시 예에서, 데이터 처리 장치는 두 스캔 모델 중 하나, 예컨대, 자동 정렬된 제2 스캔 모델(730)로부터 자동 정렬된 제1 스캔 모델(720)로 법선 벡터를 프로젝션하고, 법선 벡터가 자동 정렬된 제1 스캔 모델(720)과 만나는 지점까지의 거리가 제1 임계 값 이하인지 여부를 결정하여 자동 정렬된 제1 스캔 모델(720)과 제2 스캔 모델(730) 간의 관계가 제1 정렬 기준을 만족하는지 여부를 결정할 수 있다.
도 7에 도시된 바와 같이, 자동 정렬된 제1 스캔 모델(720)과 제2 스캔 모델(730)은 이미 가까이 위치하고 있기 때문에, 자동 정렬된 제1 스캔 모델(720)과 제2 스캔 모델(730) 간의 거리는 초기 정렬 수행 여부를 결정하기 위한 제1 임계 값보다 작다.
실시 예에서, 데이터 처리 장치는 자동 정렬된 제1 스캔 모델(720)과 제2 스캔 모델(730) 간의 거리가 제1 임계 값보다 작기 때문에, 자동 정렬된 제1 스캔 모델(720)과 제2 스캔 모델(730) 간의 관계가 제1 정렬 기준을 만족한다고 결정하고, 자동 정렬된 제1 스캔 모델(720)과 제2 스캔 모델(730)을 초기 정렬하지 않기로 결정할 수 있다.
실시 예에서, 데이터 처리 장치는 자동 정렬된 제1 스캔 모델(720)과 제2 스캔 모델(730)에 대해 초기 정렬을 생략하고, 정밀 정렬만을 수행할 수 있다. 데이터 처리 장치는 지역 탐색을 통해 자동 정밀을 수행할 수 있다. 따라서, 자동 정렬된 제1 스캔 모델(720)과 제2 스캔 모델(730)은 현재의 정렬 위치를 소정 범위 이상 벗어나지 않는 범위 내에서 겹치는 부분이 최대화 되도록 정렬될 수 있다.
이와 같이, 실시 예에 의하면, 데이터 처리 장치는 자동 정렬된 제1 스캔 모델(720)과 제2 스캔 모델(730)과 같이, 이미 어느 정도 정렬이 수행된 상태의 스캔 모델에 대해서는 정밀 정렬만 수행함으로써, 다시 전역 탐색을 통해 현재의 정렬 위치에서 소정 범위 이상 벗어난 위치에서 초기 정렬이 수행되는 것을 막을 수 있다.
도 8은 실시 예에 따라, 스캔 모델을 자동 정렬하는 과정을 도시한 순서도이다.
도 8을 참조하면, 데이터 처리 장치는 정렬 대상을 획득할 수 있다. 예컨대, 데이터 처리 장치는 정렬 대상으로, 제1 스캔 모델과 제2 스캔 모델을 획득할 수 있다(단계 810).
데이터 처리 장치는 제1 스캔 모델과 제2 스캔 모델을 초기 정렬할 것인지를 결정할 수 있다(단계 820).
데이터 처리 장치는 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제1 정렬 기준을 만족하는지 여부에 따라, 제1 스캔 모델과 제2 스캔 모델을 초기 정렬할지 여부를 결정할 수 있다.
데이터 처리 장치는 제1 스캔 모델과 제2 스캔 모델을 초기 정렬하기로 결정한 경우에는 제1 스캔 모델과 제2 스캔 모델을 초기 정렬할 수 있다(단계 830).
데이터 처리 장치는 제1 스캔 모델 및 제2 스캔 모델의 전역에서 각각 점군을 다운샘플링하여 제1 점군, 제2 점군을 획득하고, 제1 점군으로부터 제1 특징점을 획득하고, 제2 점군으로부터 제2 특징점을 획득할 수 있다.
데이터 처리 장치는 제1 점군 및 제2 점군 각각에서 적어도 하나의 각 점 마다의 법선 벡터와 주변 점과의 연관성을 나타내는 디스크립터를 획득할 수 있다. 데이터 처리 장치는 각 점과 주변 점 간의 거리 및 각 점과 주변 점 간의 법선 벡터의 각도 차이 중 적어도 하나에 기반하여 디스크립터를 획득할 수 있다.
데이터 처리 장치는 디스크립터 간의 관계가 기준치 이하인 특징점들끼리 매칭함으로써, 제1 스캔 모델과 제2 스캔 모델을 초기 정렬할 수 있다.
데이터 처리 장치는 제1 스캔 모델과 제2 스캔 모델을 초기 정렬하지 않기로 결정한 경우에는 초기 정렬 없이 제1 스캔 모델과 제2 스캔 모델을 정밀 정렬 할 수 있다(단계 840).
데이터 처리 장치는 지역 탐색을 통해, 제1 스캔 모델 및 제2 스캔 모델 간에 겹치는 부분을 최대화하는 3차원 변환을 수행할 수 있다. 데이터 처리 장치는 제1 스캔 모델 및 제2 스캔 모델에 포함된 점군 데이터들끼리 겹치는 부분의 거리가 최소화되도록 하여 3차원 변환이 정확히 수행되도록 할 수 있다.
데이터 처리 장치는 예컨대, ICP와 같은 알고리즘을 이용하여 정렬 대상인 두 스캔 모델을 정밀 정렬할 수 있다.
도 9는 일 실시 예에 따라, 스캔 모델에 대한 초기 정렬을 생략하기로 결정하는 방법을 도시한 순서도이다.
도 9를 참조하면, 데이터 처리 장치는 제1 스캔 모델과 제2 스캔 모델 간의 관계에 따라 초기 정렬을 생략할지 여부를 결정할 수 있다.
이를 위해, 데이터 처리 장치는 제1 스캔 모델에서 프로젝션한 법선 벡터가 제2 스캔 모델과 만나는 지점까지의 거리를 획득할 수 있다(단계 910).
데이터 처리 장치는 제1 스캔 모델의 복수 지점으로부터, 제1 스캔 모델의 복수 지점에서 각각 프로젝션한 법선 벡터가 제2 스캔 모델과 만나는 복수 지점까지의 거리를 각각 획득할 수 있다.
데이터 처리 장치는 복수 지점 간의 거리로부터 거리의 분포를 획득하고, 거리의 분포에 대한 통계적 속성 값을 구할 수 있다. 실시 예에서, 통계적 속성 값은 거리의 분포의 최솟값, 최댓값, 중앙값, 평균값, 절대 평균값, 최빈값, 범위, 분산 중 적어도 하나를 포함할 수 있다.
데이터 처리 장치는 거리의 분포에 대한 통계적 속성 값이 제1 임계 값 이하인지 여부를 결정할 수 있다(단계 920).
데이터 처리 장치는 거리의 분포에 대한 통계적 속성 값이 제1 임계 값 이하가 아닌 경우에는 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제1 정렬 기준을 만족하지 않는다고 결정하고, 초기 정렬을 생략하기로 결정하지 않을 수 있다.
데이터 처리 장치는 통계적 속성 값이 제1 임계 값 이하인 것에 상응하여, 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제1 정렬 기준을 만족하는 것으로 결정할 수 있다(단계 930).
데이터 처리 장치는 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제1 정렬 기준을 만족하는 것으로 결정되면, 제1 스캔 모델과 제2 스캔 모델을 초기 정렬하지 않기로 결정할 수 있다(단계 940). 이 경우, 데이터 처리 장치는 제1 스캔 모델과 제2 스캔 모델을 정밀 정렬할 수 있다.
도 10은 다른 실시 예에 따라, 스캔 모델에 대한 초기 정렬을 생략하기로 결정하는 방법을 도시한 순서도이다.
도 10을 참조하면, 데이터 처리 장치는 제1 스캔 모델에서 프로젝션한 법선 벡터가 제2 스캔 모델과 만나는 지점까지의 거리 중, 제1 임계 값 이하의 값을 갖는 거리의 비율을 획득할 수 있다(단계 1010).
데이터 처리 장치는 제1 스캔 모델의 복수 지점으로부터, 제1 스캔 모델의 복수 지점에서 각각 프로젝션한 법선 벡터가 제2 스캔 모델과 만나는 복수 지점까지의 거리 중, 제1 임계 값 이하의 값을 갖는 거리의 비율이 기준치 이상인지 여부를 결정할 수 있다(단계 1020).
데이터 처리 장치는 제1 임계 값 이하의 값을 갖는 거리의 비율이 기준치 이상이 아닌 경우에는, 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제1 정렬 기준을 만족하지 않는다고 결정하고, 초기 정렬을 생략하기로 결정하지 않을 수 있다.
데이터 처리 장치는 제1 임계 값 이하의 값을 갖는 거리의 비율이 기준치 이상인 경우에는, 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제1 정렬 기준을 만족하는 것으로 결정할 수 있다(단계 1030).
데이터 처리 장치는 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제1 정렬 기준을 만족하는 것으로 결정되면, 제1 스캔 모델과 제2 스캔 모델을 초기 정렬하지 않기로 결정할 수 있다(단계 1040). 데이터 처리 장치는 제1 스캔 모델과 제2 스캔 모델을 정밀 정렬할 수 있다.
본 개시의 일 실시 예에 따른 데이터 처리 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 또한, 본 개시의 실시 예는, 데이터 처리 방법을 실행하는 적어도 하나의 인스트럭션을 포함하는 하나 이상의 프로그램이 기록된 컴퓨터로 읽을 수 있는 저장 매체가 될 수 있다.
또한, 전술한 본 개시의 실시 예에 따른 데이터 처리 방법은 제1 스캔 모델과 제2 스캔 모델을 획득하는 단계, 상기 제1 스캔 모델과 상기 제2 스캔 모델을 초기 정렬할지 여부를 결정하는 단계 및 상기 제1 스캔 모델과 상기 제2 스캔 모델을 초기 정렬하지 않기로 결정한 것에 상응하여, 상기 제1 스캔 모델과 상기 제2 스캔 모델을 정밀 정렬하는 단계를 포함하는, 데이터 처리 장치에서 수행하는 데이터 처리 방법을 구현하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체를 포함하는 컴퓨터 프로그램 제품으로 구현될 수 있다.
상기 컴퓨터 판독 가능 저장 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 여기서, 컴퓨터 판독 가능 저장 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 구성된 하드웨어 장치가 포함될 수 있다.
여기서, 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적 저장매체'는 저장 매체가 실재(tangible)하는 장치임을 의미할 수 있다. 또한, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.
일 실시 예에 따르면, 본 문서에 개시된 다양한 실시 예들에 따른 데이터 처리 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포될 수 있다. 또는, 어플리케이션 스토어(예: 플레이 스토어 등)를 통해 또는 두 개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 구체적으로, 개시된 실시 예에 따른 컴퓨터 프로그램 제품은 개시된 실시 예에 따른 데이터 처리 방법을 수행하기 위해 적어도 하나의 인스트럭션을 포함하는 프로그램이 기록된 저장 매체를 포함할 수 있다.
이상에서 실시 예들에 대하여 상세하게 설명하였지만 본 발명의 권리 범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속한다.

Claims (9)

  1. 데이터 처리 장치에서 수행하는 데이터 처리 방법에 있어서,
    제1 스캔 모델과 제2 스캔 모델을 획득하는 단계;
    상기 제1 스캔 모델과 상기 제2 스캔 모델을 초기 정렬할지 여부를 결정하는 단계; 및
    상기 제1 스캔 모델과 상기 제2 스캔 모델을 초기 정렬하지 않기로 결정한 것에 상응하여, 상기 제1 스캔 모델과 상기 제2 스캔 모델을 정밀 정렬하는 단계를 포함하는, 데이터 처리 방법.
  2. 제1 항에 있어서, 상기 제1 스캔 모델과 상기 제2 스캔 모델을 초기 정렬할지 여부를 결정하는 단계는
    상기 제1 스캔 모델과 상기 제2 스캔 모델 간의 관계가 제1 정렬 기준을 만족하는지 여부를 결정하는 단계; 및
    상기 제1 스캔 모델과 상기 제2 스캔 모델 간의 관계가 상기 제1 정렬 기준을 만족하는 것으로 결정되는 것에 상응하여, 상기 제1 스캔 모델과 상기 제2 스캔 모델을 초기 정렬하지 않기로 결정하는 단계를 포함하는, 데이터 처리 방법.
  3. 제2 항에 있어서, 상기 제1 스캔 모델과 상기 제2 스캔 모델 간의 관계가 상기 제1 정렬 기준을 만족하는지 여부를 결정하는 단계는
    상기 제1 스캔 모델로부터 프로젝션한 법선 벡터가 상기 제2 스캔 모델과 만나는 지점까지의 거리가 제1 임계 값 이하인지 여부를 결정하는 단계; 및
    상기 거리가 상기 제1 임계 값 이하인 것에 상응하여, 상기 제1 정렬 기준을 만족한다고 결정하는 단계를 포함하는, 데이터 처리 방법.
  4. 제3 항에 있어서, 상기 제1 스캔 모델로부터 프로젝션한 법선 벡터가 상기 제2 스캔 모델과 만나는 지점까지의 거리가 상기 제1 임계 값 이하인지 여부를 결정하는 단계는
    상기 제1 스캔 모델의 복수 지점으로부터, 상기 복수 지점에서 프로젝션한 법선 벡터가 상기 제2 스캔 모델과 만나는 복수 지점까지의 거리를 획득하는 단계; 및
    상기 거리의 분포에 대한 통계적 속성 값이 상기 제1 임계 값 이하인 것에 상응하여, 상기 제1 스캔 모델과 상기 제2 스캔 모델 간의 관계가 상기 제1 정렬 기준을 만족하는 것으로 결정하는 단계를 포함하고,
    상기 통계적 속성 값은 상기 거리의 분포의 최솟값, 최댓값, 중앙값, 평균값, 절대 평균값, 최빈값, 범위, 분산 중 적어도 하나를 포함하는, 데이터 처리 방법.
  5. 제3 항에 있어서, 상기 제1 스캔 모델로부터 프로젝션한 법선 벡터가 상기 제2 스캔 모델과 만나는 지점까지의 거리가 상기 제1 임계 값 이하인지 여부를 결정하는 단계는
    상기 제1 스캔 모델의 복수 지점으로부터, 상기 복수 지점에서 프로젝션한 법선 벡터가 상기 제2 스캔 모델과 만나는 복수 지점까지의 거리 중, 상기 제1 임계 값 이하의 값을 갖는 거리의 비율을 획득하는 단계; 및
    상기 거리의 비율이 기준치 이상인 것에 상응하여, 상기 제1 스캔 모델과 상기 제2 스캔 모델 간의 관계가 상기 제1 정렬 기준을 만족하는 것으로 결정하는 단계를 포함하는, 데이터 처리 방법.
  6. 제3 항에 있어서, 상기 정밀 정렬된 제1 스캔 모델과 제2 스캔 모델 간의 관계가 제2 정렬 기준을 만족하는지 여부를 결정하는 단계; 및
    상기 정밀 정렬된 제1 스캔 모델과 제2 스캔 모델 간의 관계가 상기 제2 정렬 기준을 만족하지 않는 것으로 결정되면, 상기 정밀 정렬된 제1 스캔 모델과 제2 스캔 모델을 초기 정렬하는 단계를 더 포함하고,
    상기 제2 정렬 기준을 만족하는지 여부를 결정하는 단계는
    상기 정밀 정렬된 제1 스캔 모델로부터 프로젝션한 법선 벡터가 상기 정밀 정렬된 제2 스캔 모델과 만나는 지점까지의 거리가 제2 임계 값 이하인지 여부를 결정하는 단계; 및
    상기 정밀 정렬된 제1 스캔 모델로부터 프로젝션한 법선 벡터가 상기 정밀 정렬된 제2 스캔 모델과 만나는 지점까지의 거리가 상기 제2 임계 값 이하인 것에 상응하여, 상기 제2 정렬 기준을 만족한다고 결정하는 단계를 포함하고,
    상기 제2 임계 값은 상기 제1 임계 값보다 작은, 데이터 처리 방법.
  7. 제1 항에 있어서, 상기 제1 스캔 모델과 상기 제2 스캔 모델을 초기 정렬하기로 결정한 것에 상응하여, 상기 제1 스캔 모델과 상기 제2 스캔 모델을 초기 정렬하는 단계; 및
    상기 초기 정렬된 제1 스캔 모델과 제2 스캔 모델을 정밀 정렬하는 단계를 더 포함하는, 데이터 처리 방법.
  8. 제1 항에 있어서, 자동 정렬 선택을 위한 사용자 인터페이스 화면을 출력하는 단계를 더 포함하고,
    상기 제1 스캔 모델과 상기 제2 스캔 모델을 초기 정렬할지 여부를 결정하는 단계는 상기 사용자 인터페이스 화면에서 상기 자동 정렬을 선택 받은 것에 상응하여 수행되는, 데이터 처리 방법.
  9. 데이터 처리 장치에 있어서,
    하나 이상의 인스트럭션을 실행하는 프로세서를 포함하고,
    상기 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써,
    제1 스캔 모델과 제2 스캔 모델을 획득하고,
    상기 제1 스캔 모델과 상기 제2 스캔 모델을 초기 정렬할지 여부를 결정하고,
    상기 제1 스캔 모델과 상기 제2 스캔 모델을 초기 정렬하지 않기로 결정한 것에 상응하여, 상기 제1 스캔 모델과 상기 제2 스캔 모델을 정밀 정렬하는, 데이터 처리 장치.
KR1020210147065A 2021-03-24 2021-10-29 데이터 처리 장치 및 데이터 처리 방법 KR102651515B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/KR2022/003076 WO2022203236A1 (ko) 2021-03-24 2022-03-04 데이터 처리 장치 및 데이터 처리 방법

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020210038282 2021-03-24
KR20210038282 2021-03-24

Publications (2)

Publication Number Publication Date
KR20220133079A true KR20220133079A (ko) 2022-10-04
KR102651515B1 KR102651515B1 (ko) 2024-03-28

Family

ID=83600210

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210147065A KR102651515B1 (ko) 2021-03-24 2021-10-29 데이터 처리 장치 및 데이터 처리 방법

Country Status (1)

Country Link
KR (1) KR102651515B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180060502A (ko) * 2016-11-29 2018-06-07 주식회사 디디에스 인공치아 가공용 데이터변환장치 및 이를 이용한 인공치아 디자인 방법
KR20190051161A (ko) * 2017-11-06 2019-05-15 주식회사 디디에스 아치라인에 기초한 보철물 디자인 방법 및 시스템

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180060502A (ko) * 2016-11-29 2018-06-07 주식회사 디디에스 인공치아 가공용 데이터변환장치 및 이를 이용한 인공치아 디자인 방법
KR20190051161A (ko) * 2017-11-06 2019-05-15 주식회사 디디에스 아치라인에 기초한 보철물 디자인 방법 및 시스템

Also Published As

Publication number Publication date
KR102651515B1 (ko) 2024-03-28

Similar Documents

Publication Publication Date Title
KR102651515B1 (ko) 데이터 처리 장치 및 데이터 처리 방법
US20230298179A1 (en) Oral image processing device and oral image processing method
KR102460621B1 (ko) 구강 이미지 처리 장치, 및 구강 이미지 처리 방법
KR102582709B1 (ko) 삼차원 구강 모델을 처리하는 방법 및 장치
KR102621762B1 (ko) 구강 이미지 처리 장치 및 구강 이미지 처리 방법
KR20220056770A (ko) 삼차원 구강 모델 처리 장치 및 삼차원 구강 모델 처리 방법
KR102605094B1 (ko) 데이터 처리 장치 및 데이터 처리 방법
EP4318306A1 (en) Data processing device and data processing method
US20240129447A1 (en) Data processing device and data processing method
US20230111425A1 (en) Method for processing intraoral image, and data processing apparatus
KR102666198B1 (ko) 구강 모델을 처리하는 데이터 처리 장치 및 그 동작 방법
KR102645173B1 (ko) 구강 이미지 처리 장치, 및 구강 이미지 처리 방법
KR102631922B1 (ko) 삼차원 구강 모델을 처리하는 방법 및 장치
KR102626888B1 (ko) 삼차원 구강 모델 처리 장치 및 삼차원 구강 모델 처리 방법
KR102527955B1 (ko) 이미지 처리 장치, 및 이미지 처리 방법
KR102472127B1 (ko) 구강 이미지 처리 장치 및 구강 이미지 처리 방법
KR20230055381A (ko) 데이터 처리 장치 및 데이터 처리 방법
US20240077430A1 (en) Image processing apparatus and image processing method
EP4321128A1 (en) Data processing device, scanner, and method for operating same
KR102552669B1 (ko) 구강 이미지 처리 장치, 및 구강 이미지 처리 방법
KR102493440B1 (ko) 3차원 모델로부터 대상체 영역을 결정하는 방법 및 3차원 모델 처리 장치
KR20230051057A (ko) 구강 이미지를 처리하는 방법 및 데이터 처리 장치
KR20230102053A (ko) 데이터 처리 장치 및 그 동작 방법
US20230390035A1 (en) Oral image processing device and oral image processing method
KR102441485B1 (ko) 3차원 데이터 획득 방법, 장치 및 그 방법을 수행하는 프로그램이 저장된 컴퓨터 판독 가능 저장 매체

Legal Events

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