KR20060066340A - 3차원 구조 스케치 제작장치와 방법 및 컴퓨터 프로그램을저장하는 컴퓨터로 읽을 수 있는 기록매체 - Google Patents

3차원 구조 스케치 제작장치와 방법 및 컴퓨터 프로그램을저장하는 컴퓨터로 읽을 수 있는 기록매체 Download PDF

Info

Publication number
KR20060066340A
KR20060066340A KR1020040104916A KR20040104916A KR20060066340A KR 20060066340 A KR20060066340 A KR 20060066340A KR 1020040104916 A KR1020040104916 A KR 1020040104916A KR 20040104916 A KR20040104916 A KR 20040104916A KR 20060066340 A KR20060066340 A KR 20060066340A
Authority
KR
South Korea
Prior art keywords
sketch
node
dimensional
property
shape
Prior art date
Application number
KR1020040104916A
Other languages
English (en)
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 KR1020040104916A priority Critical patent/KR20060066340A/ko
Priority to US11/230,652 priority patent/US7876317B2/en
Publication of KR20060066340A publication Critical patent/KR20060066340A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/543Depth or shape recovery from line drawings

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Graphics (AREA)
  • Processing Or Creating Images (AREA)

Abstract

3차원 구조 스케치 제작장치와 방법 및 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록매체가 개시된다. 그 장치는, 주어진 2차원 스케치의 각 부분의 단일속성 및 각 부분간의 상관속성을 검출하는 속성 검출부, 검출한 단일속성 및 각 부분을 입력받고 검출한 단일속성에 따라 각 부분을 3차원 형상을 갖는 노드로 변경하는 노드 생성부; 및 검출한 상관속성 및 노드를 입력받고 검출한 상관속성에 따라 노드를 배열하여 3차원 구조 스케치를 생성하는 노드 배열부를 포함하며, 단일속성은 기하학적 속성을 포함한 소정의 속성이며, 상관속성은 위상학적 속성을 포함한 소정의 속성인 것을 특징으로 한다. 그러므로, 3차원 구조 스케치를 용이하게 제작하고, 제작된 3차원 구조 스케치를 용이하게 갱신할 수 있는 효과를 갖는다.

Description

3차원 구조 스케치 제작장치와 방법 및 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록매체{Apparatus and method for making 3D structural sketch and computer readable media for storing computer program}
도 1은 종래의 3차원 그래픽 컨텐츠 제작장치의 블럭도이다.
도 2는 쿼리 아이템의 일 례들이다
도 3은 도 1에 도시된 종래의 제작장치가 도 2에 도시된 쿼리 아이템의 입력을 받아 검색한 모델의 일 례들이다.
도 4는 Shape 3D의 형상구별 능력의 한계를 보여주는 일 예이다.
도 5 및 도 6은 본 발명에 의한 3차원 구조 스케치 제작장치가 적용된 일 실시예의 블록도들이다.
도 7은 형상분할 기법을 설명하기 위한 플로우챠트이다.
도 8은 'cow' 모델에 대해 부분 기반 표현을 생성하는 과정의 일 예를 도시한 것이다.
도 9는 본 발명에 의한 3차원 구조 스케치 제작장치를 설명하기 위한 일 실시예의 블록도이다.
도 10은 본 발명에 의한 3차원 구조 스케치 제작방법을 설명하기 위한 일 실시예의 플로우챠트이다.
도 11은 도 10에 도시된 제1010 단계 및 제1020 단계들에 대한 본 발명의 실시예를 설명하기 위한 플로우챠트이다.
도 12는 3차원 구조 스케치의 일 예를 개괄적으로 나타낸 도면이다.
도 13은 3차원 구조 스케치를 이루는 에지를 설명하기 위한 도면이다.
도 14는 도 9에 도시된 사용자 인터페이스부에 대한 본 발명의 실시예를 설명하기 위한 도면이다.
도 15 및 도 16은 3차원 구조 스케치를 이루는 일 노드를 이동시킴에 따라 도 14의 사용자 인터페이스부에 구비된 작업창이 디스플레이하는 내용의 일 예를 설명한 도면들이다.
< 도면의 주요 부분에 대한 부호의 설명 >
500 : 쿼리 생성부 520 : 모델 데이터베이스
540 : 모델 검색부 580 : 모델 개량부
본 발명은 3차원 구조 스케치 제작에 관한 것으로, 보다 상세하게는 2차원 스케치로부터 3차원 구조 스케치를 용이하게 제작할 수 있도록 하며, 제작된 3차원 구조 스케치를 용이하게 갱신할 수 있도록 하는 3차원 구조 스케치 제작장치와 방법 및 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다.
최근 3차원 그래픽 기술의 발전 및 관련 산업 영역의 확대로 인해 3차원 그래픽 컨텐츠를 보다 신속 정확히 제작하고자 하는 요구가 급증하고 있다.
도 1은 종래의 3차원 그래픽 컨텐츠 제작장치의 블럭도이고 도 2는 쿼리 아이템의 일 례들이다. 도 3은 도 1에 도시된 종래의 제작장치가 도 2에 도시된 쿼리 아이템의 입력을 받아 검색한 모델의 일 례들이다.
도시된 바에 따르면, 종래의 3차원 그래픽 컨텐츠 제작장치는 쿼리 아이템 입력부(100), 모델 제작부(110) 및 모델 저장부(120)로 이루어진다. OUT 1 은 모델 제작부(110)가 제작한 3차원 그래픽 컨텐츠를 의미한다.
쿼리 아이템 입력부(100)는 쿼리 아이템을 입력받고 이를 모델 제작부(110)에 공급한다. 쿼리 아이템이란 사용자가 제작하고자 하는 소정의 그래픽 컨텐츠를 의미하는 질의 객체를 말한다.
모델 저장부(120)에는 소정의 쿼리 아이템과 매칭 가능한 복수의 모델들이 저장되어 있으며, 모델 제작부(110)는 모델 저장부(120)에 저장된 3차원 형상의 모델들 중 입력받은 쿼리 아이템과 일정 유사도를 갖는 모델을 검색(retrieval)하여 출력한다.
쿼리 아이템 입력부(100)가 입력받을 수 있는 쿼리 아이템으로는 스케치 쿼리(sketch query), 텍스트 쿼리(text query) 및 샘플 쿼리(sample query)등이 가능하다. 보다 구체적으로, 스케치 쿼리로는 2차원 윤곽 스케치, 3차원 형상 스케치 및 2차원 구조 스케치 등이 가능하며, 샘플 쿼리로는 2차원 이미지 샘플 및 3차원 샘플 등이 가능하다. 참조부호들 210, 220, 230, 240 및 250은 샘플 쿼리, 2차원 윤곽 스케치, 텍스트 쿼리, 3차원 형상 스케치 및 2차원 구조 스케치를 각각 나타낸다. 도 2에 도시된 모든 쿼리 아이템들은 새 또는 비행기를 의미하며, 그에 따라 모델 제작부(110)는 도 3에 도시된 바와 같이 복수의 새 모델 또는 복수의 비행기 모델을 제작한다.
종래의 3차원 그래픽 컨텐츠 제작장치에서 사용 가능한 쿼리 아이템들은 이하 설명하는 바와 같이 여러 문제점을 갖고 있다.
텍스트 쿼리(230)를 쿼리 아이템으로 사용하는 경우 쿼리 아이템의 제작은 용이하나, 문구로 표현하기 곤란한 그래픽 컨텐츠는 정확히 표현할 수 없으며, 동일한 그래픽 컨텐츠에 대해 사람마다 달리 표현할 수 있다는 문제점을 갖는다.
또한, 스케치 쿼리(220, 240 또는 250)나 샘플 쿼리(210)를 쿼리 아이템으로 사용하는 경우 쿼리 아이템의 제작이 용이하지 않은 문제점이 있다.
도 4는 Shape 3D의 형상구별 능력의 한계를 보여주는 일 예이다. 보다 구체적으로, 도 4(a)는 'android' 모델을 나타내며, 도 4 (b)는 'android' 모델의 Shape 3D에 의한 형상 스펙트럼을 나타낸다. 도 4(c)는 'crocodile' 모델을 나타내며, 도 4(d)는 'crocodile' 모델의 Shape 3D에 의한 형상 스펙트럼을 나타낸다.
Shape3D는 기존의 동영상 전문가 그룹-7 (MPEG-7)에서 제안한 3차원 형상 기술방법이다. 모델 저장부(120)를 검색하기 위한 국제 표준으로 채택된 기술방법이나, 형상을 분별하는 능력이 떨어지는 문제점이 있다. 도시된 바에 따르면, (a)와 (c)에 도시된 'android' 모델과 'crocodile' 모델은 명백히 상이한 모델이나 (b)와 (d)에 도시된 두 모델의 형상 스펙트럼은 매우 유사하다. 결국, Shape3D에 의해 제 작된 쿼리 아이템 역시 적절한 쿼리 아이템이 될 수 없는 문제점이 있다.
본 발명이 이루고자 하는 기술적 과제는, 주어진 2차원 스케치로부터 3차원 구조 스케치를 용이하게 제작하고, 제작한 3차원 구조 스케치에 대해 사용자가 용이하게 갱신 지시할 수 있는 3차원 구조 스케치 제작장치를 제공하는 것이다.
본 발명이 이루고자 하는 다른 기술적 과제는, 주어진 2차원 스케치로부터 3차원 구조 스케치를 용이하게 제작하고, 제작한 3차원 구조 스케치에 대해 사용자가 용이하게 갱신 지시할 수 있는 3차원 구조 스케치 제작방법을 제공하는 것이다.
본 발명이 이루고자 하는 또 다른 기술적 과제는, 주어진 2차원 스케치로부터 3차원 구조 스케치를 용이하게 제작하고, 제작한 3차원 구조 스케치에 대해 사용자가 용이하게 갱신 지시할 수 있는 3차원 구조 스케치 제작방법을 수행하기 위한 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록매체를 제공하는 것이다.
상기 과제를 이루기 위해, 본 발명에 의한 3차원 구조 스케치 제작장치는, 주어진 2차원 스케치의 각 부분의 단일속성 및 상기 각 부분간의 상관속성을 검출하는 속성 검출부, 상기 검출한 단일속성 및 상기 각 부분을 입력받고 상기 검출한 단일속성에 따라 상기 각 부분을 3차원 형상을 갖는 노드로 변경하는 노드 생성부; 및 상기 검출한 상관속성 및 상기 노드를 입력받고 상기 검출한 상관속성에 따라 상기 노드를 배열하여 3차원 구조 스케치를 생성하는 노드 배열부를 포함하며, 상 기 단일속성은 기하학적 속성을 포함한 소정의 속성이며, 상기 상관속성은 위상학적 속성을 포함한 소정의 속성인 것을 특징으로 한다.
본 발명에 의한 3차원 구조 스케치 제작장치는 사용자에 의해 조작되어 소정의 2차원 스케치를 생성하고 생성된 2차원 스케치를 상기 속성 검출부 및 상기 노드 생성부에 제공하는 사용자 스케치 입력부를 더 포함하며, 상기 속성 검출부는 상기 제공받은 2차원 스케치의 각 부분의 단일속성 및 상기 각 부분간의 상관속성을 검출함이 바람직하다.
본 발명에 의한 3차원 구조 스케치 제작장치는 상기 3차원 구조 스케치와 매칭 가능한 복수의 모델 및 상기 모델의 형상 기술자를 저장하는 모델 데이터베이스 및 상기 3차원 구조 스케치를 입력받고 상기 3차원 구조 스케치로부터 추출한 형상 기술자와 상기 모델 데이터베이스에 저장된 모델들 각각의 형상 기술자를 비교하여 소정 범위 내의 유사도를 갖는 하나 이상의 모델을 출력하여 검색하는 모델 검색부를 더 포함하며, 상기 형상 기술자는 기하학적 속성, 위상학적 속성을 포함한 임의의 속성들의 집합에 의해 형상을 표현하는 언어임이 바람직하다.
본 발명에 의한 3차원 구조 스케치 제작장치는 생성된 상기 3차원 구조 스케치를 입력받고 입력받은 상기 3차원 구조 스케치의 상기 노드의 형상 및 상기 3차원 구조 스케치상에서의 상기 노드의 위상 중 적어도 하나를 사용자의 조작에 따라 변경하여 갱신된 3차원 구조 스케치를 생성하는 3차원 구조 스케치 갱신부를 더 포함함이 바람직하다.
상기 다른 과제를 이루기 위해, 본 발명에 의한 3차원 구조 스케치 제작방법 은, 상기 검출한 단일속성 및 상기 각 부분을 입력받고 상기 검출한 단일속성에 따라 상기 각 부분을 3차원 형상을 갖는 노드로 변경하는 단계 및 상기 검출한 상관속성 및 상기 노드를 입력받고 상기 검출한 상관속성에 따라 상기 노드를 배열하여 3차원 구조 스케치를 생성하는 단계를 포함하며, 상기 단일속성은 기하학적 속성을 포함한 소정의 속성이며, 상기 상관속성은 위상학적 속성을 포함한 소정의 속성인 것을 특징으로 한다.
상기 또 다른 과제를 이루기 위해, 본 발명에 의한 3차원 구조 스케치 제작방법을 수행하기 위한 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록매체는, 주어진 2차원 스케치의 각 부분의 단일속성 및 상기 각 부분간의 상관속성을 검출하는 단계, 상기 검출한 단일속성 및 상기 각 부분을 입력받고 상기 검출한 단일속성에 따라 상기 각 부분을 3차원 형상을 갖는 노드로 변경하는 단계 및 상기 검출한 상관속성 및 상기 노드를 입력받고 상기 검출한 상관속성에 따라 상기 노드를 배열하여 3차원 구조 스케치를 생성하는 단계를 수행하기 위한 컴퓨터 프로그램을 저장하며, 상기 단일속성은 기하학적 속성을 포함한 소정의 속성이며, 상기 상관속성은 위상학적 속성을 포함한 소정의 속성인 것을 특징으로 한다.
이하, 첨부된 도면들을 참조하여 본 발명에 따른 3차원 구조 스케치 제작장치와 방법 및 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록매체의 일 실시예에 대해 상세히 설명한다. 다만, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례에 따라 달라질 수 있다. 그러므로 당해 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 5 및 도 6은 본 발명에 의한 3차원 구조 스케치 제작장치(이하 "본 장치"라 함)가 제작한 3차원 구조 스케치를 쿼리 아이템으로 이용하여 그래픽 컨텐츠를 제작하는 그래픽 컨텐츠 제작장치의 블럭도들로서, 쿼리 생성부(500 또는 600), 모델 데이터베이스(520 또는 620), 모델 검색부(540 또는 640) 및 모델 개량부(580 또는 680)로 이루어진다.
OUT 2 및 OUT3 은 모두 모델 개량부(580 또는 680)가 출력한 그래픽 컨텐츠를 의미하며, 양 자는 동일하다.
500, 520, 540 및 580은 600, 620, 640 및 680과 동일하게 동작하는 바, 이하, 도 6에 도시된 내용을 설명하며 도 5의 설명을 갈음하기로 한다.
쿼리 생성부(600)는 하나 이상의 쿼리 아이템(query item)의 조합으로 이루어지는 쿼리(Query)를 생성한다. 쿼리 아이템이란 사용자가 제작하고자 하는 그래픽 컨텐츠를 의미하는 질의 객체를 말한다. 사용자가 제작하고자 하는 그래픽 컨텐츠는 3차원의 컨텐츠임이 바람직하다.
쿼리 아이템은 다양한 포맷으로 표현가능하며, 이러한 쿼리 아이템의 하나 이상의 조합이 쿼리로서 모델 검색부(620)에 입력된다. 다양한 포맷의 예를 들면, 스케치 쿼리, 텍스트 쿼리 및 샘플 쿼리 등이 있다. 본 장치는 다양한 포맷 중 하나로 3차원 구조 스케치를 제안한다. 이에 대해서는 도 7 내지 도 16에 대한 설명시 설명하겠다.
쿼리는 단 하나의 쿼리 아이템으로 이루어질 수도 있고, 복수의 쿼리 아이템 으로 이루어질 수도 있다. 복수의 쿼리 아이템이 모두 쿼리로서 모델 검색부(640)에 입력되는 경우의 쿼리를 특히, 다중모드(multimodal) 쿼리라고 명명한다.
모델 데이터베이스(620)는 소정의 쿼리 아이템과 매칭 가능한 복수의 모델 및 모델의 형상 기술자를 저장한다. 모델 데이터베이스(620)는 모델 및 그 모델의 형상 기술자를 사전에 저장하고 있는 것이 바람직하다.
모델 데이터베이스(620)에 저장되는 모델은 2차원의 모델일 수도 있고, 3차원의 모델일 수도 있다. 다만, 3차원의 모델이 저장됨이 보다 바람직하다. 이하, 설명의 편이를 위해 모델 데이터베이스(620)에 저장된 서브클래스 모델은 서브클래스 3차원 모델(particular 3D model)이라 가정한다. 서브클래스 모델의 의미에 대하여는 후술한다.
형상 기술자(shape descriptor)란 기하학적(geometric) 속성 및 위상학적(topologic) 속성을 포함한 임의의 속성들(properties)의 집합에 의해 임의의 형상을 표현하는 언어이다. 따라서, 모델 데이터베이스(620)에 저장되는 모든 모델 및 쿼리 생성부(600)가 생성한 형상을 갖는 쿼리 아이템은 형상 기술자를 갖는다.
두 모델의 형상 기술자가 상이하다 함은 두 모델이 서로 상이함을 의미하며, 두 모델의 형상 기술자가 부분적으로 일치한다 함은 두 모델이 서로 일부 속성들을 공유함을 의미한다. 만일, 두 모델의 형상 기술자가 정확히 일치한다면 상기 두 모델이 모든 속성들을 공유함을 의미한다. 결국, 형상 기술자는 실제 모델 또는 실제 쿼리 아이템의 내용(value)을 열어보기 위해 필요한 열쇠(key)에 해당한다.
모델 데이터베이스(620)는 일반 모델 및 서브클래스 모델 중 적어도 하나를 저장한다. 서브클래스 모델이란 그래픽 컨텐츠의 종류마다 대응되는 대표 모델로서 속성이 상수(invariable)로 지정된 모델을 말하며, 일반 모델이란 그래픽 컨텐츠의 종류마다 가능한 모든 모델로서 속성이 상수로 지정된 모델을 말한다. 속성이란 기하하적 속성 및 위상학적 속성을 포함한 임의의 속성을 의미한다.
일반 모델 및 서브클래스 모델 모두 모델 데이터베이스(620)에 하나 이상 존재 가능하다. 예를 들어, 사용자가 제작하고자 하는 그래픽 컨텐츠는 비행기라고 가정하자. 이 경우, 모델 데이터베이스(620)에는 비행기에 관한 일반 모델 및 서브클래스 모델 중 적어도 하나가 저장되어 있다. 이 때, 일반 모델이란 속성이 상수로 지정된 모델로서, 비행기를 의미하는 임의의 모델을 의미한다. 따라서, 비행기를 뜻하는 모델은 모두 일반 모델이 될 수 있다. 또한, 서브클래스 모델은 일반 모델 중 지정된 모델이다. 지정은 무작위로 지정될 수도 있고, 사용자에 의해 지정될 수도 있다. 비행기의 일반 모델은 무제한적으로 많으나, 비행기의 서브클래스 모델은 한정된 수만큼 존재한다.
일반 모델이 모델 데이터베이스(620)에 저장될 수 있음은 이미 전술한 바이나, 가능한 일반 모델의 수는 무제한이므로 저장 효율을 높이기 위해 일부 일반 모델만을 선택하여 저장함이 바람직하다. 그 선택된 일반 모델이 전술한 서브클래스 모델(particular model)이다. 이와 같은 이유로, 모델 데이터베이스(620)는 소정 갯수의 서브클래스 모델(610 및 620)를 저장함이 바람직하다. 이 때, 모델 데이터베이스(620)에는 각각의 모델로부터 추출한 형상 기술자도 함께 저장됨이 바람직하다.
예컨대, 모델 데이터베이스(620)에 책상, 의자, 집, 나무에 관한 모델들을 저장하고자 할 때, 모델 데이터베이스(620)의 저장 효율을 높이기 위해 책상, 의자, 집, 나무 각각에 대해 세 개의 서브클래스 모델을 모델 데이터베이스(620)에 저장할 수 있다. 총 12개의 모델이 모델 데이터베이스(620)에 저장되며, 이들 각각은 형상 기술자에 의해 4개의 그룹(책상, 의자, 집, 나무) 중 하나에 속하도록 분류된다(classification).
모델 데이터베이스(620)는 서브클래스 모델 저장부(622) 및 형상 기술자 저장부(626)를 포함한다. 서브클래스 모델 저장부(622)는 서브클래스 모델을 저장한다. 각 모델은 형상 기술자로 표현될 수 있으며, 모델 데이터베이스(620)에 저장된 모든 모델의 형상 기술자는 형상 기술자 저장부(626)에 저장된다.
모델 검색부(640)는 쿼리를 입력받고, 입력받은 쿼리로부터 추출한 형상 기술자와 모델 데이터베이스(620)에 저장된 모델들 각각의 형상 기술자를 비교하여 소정 범위 내의 유사도를 갖는 하나 이상의 모델을 출력한다.
모델 검색부(640)는 형상 기술자 추출부(642), 형상 기술자 비교부(644), 모델 출력부(646) 및 모델 선택부(648)를 포함한다.
형상 기술자 추출부(642)는 쿼리를 입력받고 입력된 쿼리로부터 형상 기술자를 추출한다. 형상 기술자 비교부(644)는 형상 기술자 저장부(626)에 저장된 모델들 각각의 형상 기술자와 형상 기술자 추출부(642)가 추출한 형상 기술자를 비교하여, 저장된 모든 형상 기술자들 중 형상 기술자 추출부(642)가 추출한 형상 기술자와 소정 범위 내의 유사도를 갖는 형상 기술자가 무엇인지 판단한다.
형상 기술자 비교부(644)는 입력된 쿼리를 반드시 모델 데이터베이스(620)에 저장된 모든 모델과 비교할 필요는 없다.
모델 출력부(646)는 형상 기술자 비교부(644)가 비교한 결과 소정 범위 내의 유사도를 갖는 하나 이상의 모델을 출력한다. 모델 출력부(646)가 출력하는 모델의 수가 단수가 되기 위해서는 추출된 형상 기술자와 완전히 일치하는 형상 기술자가 형상 기술자 저장부(646)에 존재해야 하며 일반적으로 그러한 경우는 흔치 않다.
예컨대, 쿼리 생성부(600)가 생성한 쿼리가 '비행기'를 의미하는 쿼리 아이템의 조합으로 이루어진 것이라면, 모델 검색부(640)의 모델 출력부(646)는 형상 기술자 추출부(642)가 입력받은 쿼리의 형상 기술자와 소정 범위 내의 유사도를 갖는 형상 기술자를 지니는 모델을 출력한다. 출력하는 모델은 서브클래스 모델임이 바람직하다. 다만, 모델 출력부(646)는 '비행기' 모델을 출력할 수도 있고, '새' 모델을 출력할 수도 있으며, 같은 '비행기' 모델이라도 여러 타입의 '비행기' 모델을 출력할 수 있다. 결국, 모델 출력부(646)가 출력한 모델들에 복수의 '비행기' 모델들 및 복수의 '새' 모델들이 존재할 수 있다. 이는 '비행기' 와 '새'의 형상 기술자가 서로 유사할 수 있기 때문이다. 이로 인해, 모델 선택부(648)가 필요하다.
모델 선택부(648)는 모델 출력부(646)가 출력한 모델 중 하나의 모델을 사용자로부터 선택받음이 바람직하다. 다만, 모델 출력부(646)가 출력하는 모델의 수가 단수 개이라면 모델 선택부(648)가 마련되지 않을 수 있다. 결과적으로, 모델 검색부(640)가 검색하여 출력한 최종 결과물은 하나의 모델임이 바람직하다.
모델 출력부(646)에 의해 단 하나의 모델이 출력된 경우 또는 모델 선택부(648)에 의해 단 하나의 모델이 선택된 경우 검색된 서브클래스 모델이 생성된다.
모델 검색부(640)는 검색 되먹임부(미도시)를 더 포함함이 바람직하다. 검색 되먹임부(미도시)는 모델 출력부(646)가 출력한 모델을 쿼리 생성부(600)가 쿼리를 생성하기 위해 사용하는 쿼리 아이템의 하나로 추가시킨다. 쿼리 아이템의 조합으로 쿼리가 생성됨은 이미 전술한 바이며, 많은 쿼리 아이템으로 조합할 수록 더 정교한 쿼리를 생성할 수 있다. 따라서, 검색 되먹임부(미도시)에 의해 추가된 쿼리 아이템에 의해 쿼리 생성부(600)는 사용자가 제작하고자 하는 그래픽 컨텐츠를 보다 정교하게 묘사하는 쿼리를 생성할 수 있다. 이로써, 쿼리 생성부(600)가 생성한 쿼리가 갱신된다(updated).
결국, 검색 되먹임부(미도시)로부터 쿼리 생성부(600)로 피드백(feedback)되는 모델에 의하여 쿼리 생성부(600)가 생성하는 쿼리는 갱신된다(updated). 따라서, 쿼리 생성부(600) 및 모델 검색부(640)의 이러한 재 동작에 의해, 본 장치는 사용자가 원하는 그래픽 컨텐츠를 보다 정교하고 정확하게 생성할 수 있다. 쿼리 생성부(600) 및 모델 검색부(640)의 재 동작에 의한 재차 검색을 증분 검색(incremental retrieval)이라 한다.
검색된 서브클래스 모델은 모델 개량(refining)부(680)를 거친다. 이러한 모델 변형(deformation)은 검색된 서브클래스 모델이 사용자가 당초 제작하고자 했던 그래픽 컨텐츠와 완전히 일치하기 어려우므로 요구되는 그래픽 컨텐츠 제작과정이다.
모델 개량부(680)는 모델 검색부(640)가 검색한 서브클래스 모델을 사용자의 지시에 따라 개량하여 유저지향 모델(user-oriented model)을 생성한다.
모델을 개량(refine)한다 함은 검색된 서브클래스 모델을 사용자의 지시에 의해 수정함을 뜻한다.
한편, 모델 개량부(680)는 개량 되먹임부(미도시)를 포함함이 바람직하다. 개량 되먹임부(미도시)는 모델 개량부(680)가 개량한 서브클래스 모델 또는 개량한 메인클래스 모델을 쿼리 생성부(600)가 사용하는 쿼리 아이템에 추가시킨다.
즉, 개량 되먹임부(미도시)는 쿼리 생성부(600)에서 쿼리를 생성하기 위해 사용하는 쿼리 아이템으로써 개량한 모델을 공급한다. 이 경우, 쿼리 아이템이 추가되므로 쿼리 생성부(600)는 사용자가 제작하고자 하는 그래픽 컨텐츠를 보다 정교하게 묘사하는 쿼리를 생성할 수 있다. 이로써, 쿼리 생성부(600)가 생성한 쿼리가 갱신된다(updated).
여기서, 쿼리 생성부(600), 모델 검색부(640) 및 모델 개량부(680)가 재 동작한다면, 본 장치는 사용자가 원하는 그래픽 컨텐츠를 보다 정교하고 정확하게 생성할 수 있다. 즉, 갱신된 쿼리는 사용자가 제작하고자 하는 그래픽 컨텐츠에 갱신되기 전의 쿼리보다 근사하므로 갱신된 쿼리를 모델 검색부(620) 및 모델 개량부(680)에 재차 통과시키면 보다 만족스러운 결과를 얻을 수 있다.
모델 개량부(680)는 개량모델 추가부(미도시)를 더 포함함이 바람직하다. 개량모델 추가부(미도시)는 모델 개량부(680)가 개량한 모델을 모델 데이터베이스(620)에 추가한다. 즉, 모델 개량부(680)에 의해 개량된 서브클래스 모델은 모델 데이터베이스(620)에 추가될 수 있다. 이 역시 모델 검색 및 개량의 재차 반복시 보다 만족스러운 결과를 얻기 위한 과정이다.
결과적으로 쿼리 생성부(600)가 생성하는 쿼리를 반복적으로 갱신(update)하며 검색(retrieval) 및 개량(refining)을 반복할수록 사용자는 자신이 제작하고자 했던 그래픽 컨텐츠를 보다 정확히 제작할 수 있다.
이하, 전술한 그래픽 컨텐츠 제작장치의 쿼리 생성부(600)에서 쿼리를 생성하기 위해 사용하는 쿼리 아이템으로써, 본 발명에서 제안하는 3차원 구조 스케치에 대해 설명한다.
도 7 내지 도 13을 참조하여 3차원 구조 스케치의 제작장치와 방법 및 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록매체를 설명하며, 도 14 내지 도 16을 참조하여 제작된 3차원 구조 스케치를 갱신하는 갱신장치와 방법에 대해 설명한다.
3차원 구조 스케치(3D-structural sketch; 3DSS)는 지각적 인식이 가능한 3차원 형상 기술자(Perceptual 3D Shape descriptor; 이하 "P3DS 형상 기술자"라 한다)가 추출되는 쿼리 아이템을 의미한다. 즉, 3차원 구조 스케치란 P3DS 형상 기술자를 3차원 상에서 시각적으로 현출(visual-representation)한 것이다.
이하, P3DS와 3차원 구조 스케치를 설명하며 도 7 내지 도 16을 상술한다. 이를 위해 모델 데이터베이스(620)에 저장된 모든 모델과 모든 쿼리 아이템의 형상 기술자는 P3DS 형상 기술자라 가정한다.
P3DS 형상 기술자는 임의의 3차원 객체를 부분 기반 표현(part-based representation)으로 변환하고 이를 노드(node)와 에지(edge)로 이루어지는 속성관계 그래프 구조로 나타내는 형상 기술자이다.
3차원 구조 스케치는 P3DS 형상 기술자를 노드 및 에지를 이용하여 시각적으로 표현한 것이며, 이 때, 노드는 타원체(ellipsoid)로 표현하고 에지는 타원체간의 연결상태(link between ellipsoids)로 표현함으로써 3DSS를 생성함이 바람직하다.
P3DS 형상 기술자라 명명한 이유는 그러한 형상 기술자에 의해 기술된 형상과 원래의 3차원 형상이 인간의 시각에 매우 유사하게 인식되기 때문이다. P3DS 형상 기술자에 대해 보다 상세히 설명하기 위해 부분 기반 표현에 대해 설명하면 다음과 같다.
부분 기반 표현을 위한 형상분할 알고리즘으로는 모폴로지 기반의 부분 분리(morphology-based decomposition) 기법을 이용한 알고리즘과 뼈대 기반의 형상 분리(skeleton-based decomposition) 기법을 이용한 알고리즘 등이 있다. 그 밖에 형상분할 기법을 이용해 형상을 분할하는 알고리즘이 있으며 이는 도 7 및 도 8을 참조하여 설명하도록 한다. 형상분할 기법을 이용해 형상을 분할하는 알고리즘에 대한 상세한 설명은 한국 특허청에 2003년 11월 25일에 출원된 출원발명(출원번호 제10-2003-84215호)에 기재되어 있다. 이하, 도 7 및 도 8을 참조하여 간단히 설명한다.
도 7은 형상분할 기법을 설명하기 위한 플로우챠트로서, 초기 분할 단계(제710 단계), 재귀적 분할 단계(제720 단계) 및 반복적 병합 단계(제730 단계)로 이 루어진다. 형상분할 기법을 이용해 형상을 분할하는 알고리즘은 수학적 모폴로지와 가중치 볼록도(weighted convexity)를 계산하여 구속적 모폴로지 분할(constrained morphological decomposition; CMD)을 반복적으로 적용함으로써 형상을 분할하는 알고리즘이다.
도 8은 'cow' 모델에 대해 부분 기반 표현을 생성하는 과정의 일 예를 도시하며, 상기 분할 기법을 'cow' 모델에 적용하여 단계적으로 예시하고 있다. 도 8의 (a)와 (b)는 'cow' 모델의 메쉬 표현과 복셀화된 표현을 의미한다. 도 8의 (c)는 초기분할단계(IDS), (d)는 재귀적 분할단계(RDS)이 수행된 결과를 보여주며 (e)는 반복적 병합단계(IMS)가 수행된 결과를 보여준다. 최종적으로 생성된 속성관계 그래프는 도 8의 (f)에 도시된 바와 같으며, 타원체로 표현된 노드와 노드를 연결하는 에지는 분할된 형상의 부분을 각각 근사하게 된다.
이하 도 9 내지 도 13을 설명하며 3차원 구조 스케치 제작장치(이하 "본 장치"라 함)와 3차원 구조 스케치 제작방법(이하 "본 방법"이라 함)에 대해 본격적으로 설명한다.
도 9는 본 장치를 설명하기 위한 일 실시예의 블록도로서, 사용자 스케치 입력부(910), 속성 검출부(915), 노드 생성부(920), 노드 배열부(940), 3차원 구조 스케치 저장부(950) 및 3차원 구조 스케치 갱신부(955)로 이루어진다.
여기서, 노드 생성부(920)은 포인트집합 생성부(922), 노드타원 생성부(924) 및 타원체 생성부(926)를 포함하며, 3차원 구조 스케치 갱신부(955)는 3차원 구조 스케치 입력부(960), 사용자 인터페이스부(970) 및 갱신된 3차원 구조 스케치 생성 부(980)로 이루어진다.
여기서, 다만, 도 9에 도시된 3차원 구조 스케치 제작장치는 3차원 구조 스케치 저장부(950) 및 3차원 구조 스케치 갱신부(955) 중 적어도 하나를 마련하지 않을 수도 있다.
OUT 4는 갱신된 3차원 구조 스케치 생성부(980)가 출력한 "갱신된 3차원 구조 스케치"를 의미한다.
사용자 스케치 입력부(910)는 소정의 2차원 스케치를 입력받아 입력받은 2차원 스케치를 속성 검출부(915) 및 노드 생성부(920)에 제공할 수도 있고, 사용자에 의해 조작되어 소정의 2차원 스케치를 생성하고 생성된 2차원 스케치를 속성 검출부(915) 및 노드 생성부(920)에 제공할 수도 있다. 즉, 사용자 스케치 입력부(910)는 외부로부터 입력받은 2차원 스케치를 속성 검출부(915) 및 노드 생성부(920)에 전달(bypass) 해주는 역할을 할 수도 있고, 2차원 스케치를 제작하여 제작한 2차원 스케치를 속성 검출부(915) 및 노드 생성부(920)에 제공하는 역할을 할 수도 있다.
사용자 스케치 입력부(910)가 외부로부터 입력받은 2차원 스케치를 속성 검출부(915) 및 노드 생성부(920)에 전달하는 경우, 사용자 스케치 입력부(910)는 하나의 2차원 스케치마다 전달할 수도 있고, 외부로부터 연속적으로 입력받은 소정 개수의 2차원 스케치들을 동시에 전달할 수도 있다. 2차원 스케치란 스케치된 2차원 모델을 말한다. 2차원 스케치는 2차원 폐곡선의 집합이나 2차원 폐곡면의 집합으로 이루어짐이 바람직하다.
속성 검출부(915)는 주어진 2차원 스케치의 각 부분의 단일속성 및 각 부분 간의 상관속성을 검출한다. 단일속성이라 함은 기하학적 속성을 포함한 소정의 속성이며, 상관속성이라 함은 위상학적 속성을 포함한 소정의 속성이다. 상관속성이란 예컨대, 2차원 스케치를 구성하는 부분 중 임의의 두 부분들이 어떠한 각도로 연결되어 있는지를 의미하는 속성이다.
노드 생성부(920)은 속성 검출부(915)에서 검출한 단일속성 및 각 부분을 입력받고 검출한 단일속성에 따라 각 부분을 3차원 형상을 갖는 노드로 변경한다. 노드는 타원체 형상을 갖음이 바람직하다.
이를 위해, 노드 생성부(920)는 포인트집합 생성부(922), 노드타원 생성부(924) 및 타원체 생성부(926)를 포함할 수 있다. 포인트집합 생성부(922)는 속성 검출부(915)에서 검출한 단일속성 및 2차원 스케치의 각 부분을 입력받고 검출한 단일속성에 따라 입력받은 각 부분을 포인트집합으로 변경한다.
즉, 노드 생성부(920)는 주어진 2차원 스케치의 각 부분별로 각 부분을 이루는 소정 점들의 집합을 생성한다. 포인트집합 생성부(922)가 생성한 소정 점들의 집합을 포인트집합(point set)이라 명명한다. 예컨대, 입력받은 2차원 스케치가 강아지를 그린 스케치라면 포인트집합 생성부(922)는 입력받은 강아지 스케치의 머리 부분, 몸통 부분 및 다리 부분의 각각마다 포인트집합을 생성한다.
다만, 본 발명에 의하면, 도 9에 도시된 3차원 구조 스케치 제작장치는 포인트집합 생성부(922)를 마련하지 않을 수도 있다. 이 경우, 노드타원 생성부(924)는 속성 검출부(915)에서 검출한 단일속성 및 2차원 스케치의 각 부분을 입력받고 검출한 단일속성에 따라 입력받은 각 부분을 타원 형상을 갖는 노드타원으로 변경한 다.
다만, 노드 생성부(920)가 포인트집합 생성부(922)를 마련한 경우, 노드타원 생성부(924)는 포인트집합 생성부(922)가 생성한 포인트집합을 각 부분의 단일속성에 따라 타원으로 변경한다(ellipse fitting). 이와 같은 동작(ellipse fitting)에 대한 상세한 설명은 www.intel.com/research/mrl/research/opencv/에 게재되어 있으며, A. W. Fitzgibbon and R. B. Fisher 저(著) “A buyer's guide to conic fitting,”의 1995년 9월자 제2 판의 513 페이지부터 522페이지사이에 게재되어 있다. 한편, 포인트집합 생성부(922)에서 생성한 포인트집합은 속성 검출부(915)에서 검출된 단일속성에 따라 생성되므로, 결국, 노드타원 생성부(924)는 속성 검출부(915)에서 검출한 단일속성에 따라 포인트집합을 타원 형상을 갖는 노드타원으로 변경하는 동작을 수행한다.
노드 생성부(920)의 타원체 생성부(926)은 노드타원 생성부(924)가 생성한 노드타원을 부풀려 타원체(ellipsoid)를 생성한다(ellipsoid inflating). 타원체 생성을 위해 부풀려지는 방향으로의 타원체의 축 길이는 부풀려지기 전의 노드타원의 두 축 중 단축(短軸)의 길이와 같음이 바람직하다. 이는 노드타원을 부풀림에 있어, 모든 노드타원에 대해 동일한 원칙을 적용할 수 있음을 의미한다.
전술한 바와 같이, 노드는 타원체(ellipsoid)임이 바람직하며, 노드 생성부(920)는 노드타원 생성부(924) 및 타원체 생성부(926)를 포함함으로써 타원체 형상을 갖는 노드를 생성한다.
노드 생성부(920)가 생성한 노드들은 모두 2차원 스케치 각 부분의 단일속성 에 따라 생성된 것이다. 예컨대, 주어진 2차원 스케치가 강아지 스케치라고 하자. 이 경우, 강아지의 머리 부분과 몸통 부분은 노드 생성부(920)에 의해 각각 머리 부분을 나타내는 노드(이하 "머리 노드"라 함)와 몸통 부분을 나타내는 노드(이하 "몸통 노드"라 함)로 표현될 수 있다. 단일속성은 기하학적 속성을 주로 의미하며, 머리 부분은 몸통 부분보다 작으므로, 노드 생성부(920)가 타원체 형상을 갖는 노드를 생성한다면 머리 노드는 몸통 노드보다 작아야 한다.
노드 배열부(940)는 속성 검출부(915)에서 검출한 상관속성 및 노드를 입력받고 검출한 상관속성에 따라 입력받은 노드를 배열하여 3차원 구조 스케치를 생성한다. 노드 배열부(940)가 상관속성에 따라 노드들을 배열하게 되면, 연결되는 노드들이 발생한다. 예컨대, 전술한 강아지 스케치의 예시에서, 머리 노드와 몸통 노드는 연결된다. 이 때, 양 자는 강아지 스케치의 머리 부분과 몸통 부분이 지니는 위상학적 속성을 포함한 여러 속성에 따라 연결되어야 한다. 그러므로, 만약 강아지 스케치가 목이 짧게 표현되어 있다면, 머리 노드와 몸통 노드가 겹쳐지는 부분은 많아져야 한다. 또한, 강아지 스케치가 머리를 숙이고 있는지 아니면 들고 있는지에 따라 몸통 노드에 대한 머리 노드의 위상도 달라져야 한다. 이는 몸통 노드와 머리 노드 각각이 지니는 위상학적 속성에 근거한다. 도 12는 3차원 구조 스케치의 일 예를 개괄적으로 나타낸 도면이다. 여기서, 도 12(a)는 강아지 스케치의 각 부분마다 생성된 노드들을 나타내며 도 12(b)는 도 12(a)에 도시된 노드들을 각 노드의 속성에 따라 배치하여 생성한 강아지의 3차원 구조 스케치를 나타낸다.
여기서, 각 연결되는 노드간에 연결된 부분, 즉, 겹쳐지는 부분을 에지라 명 명한다. 도 13은 3차원 구조 스케치를 이루는 에지를 설명하기 위한 도면이며, 이 경우 두 노드(1310)는 소정의 위상학적 속성에 따라 소정 각도를 유지하며 연결되어 있다. 여기서, 두 노드(1310)간에 연결된 부분(1320)을 에지라고 한다.
노드 배열부(940)는 노드 생성부(920)가 생성한 노드들을 적절히 배열함으로써 완성한 3차원 구조 스케치를 출력한다. 완성된 3차원 구조 스케치는 전술한 그래픽 컨텐츠 제작장치의 쿼리 생성부(600) 또는 모델 검색부(640)에 입력됨이 바람직하다. 쿼리 생성부(600)에 입력된다 함은 쿼리 생성부(600)가 쿼리를 생성하기 위해 사용하는 쿼리 아이템의 하나로써 3차원 구조 스케치가 사용됨을 의미한다. 반면, 모델 검색부(640)에 입력된다 함은 3차원 구조 스케치 자체가 쿼리로써 모델 검색부(640)에 입력됨을 의미한다.
도 10은 본 방법을 설명하기 위한 일 실시예의 플로우챠트로서, 2차원 스케치를 입력받는 단계(제1010 단계), 단일속성 및 상관속성을 검출하는 단계(제1020 단계), 노드를 생성하는 단계(제1030 단계) 및 노드를 배열하는 단계(제1040 단계)로 이루어진다.
사용자 스케치 입력부(910)는 사용자의 조작으로 생성된 2차원 스케치를 입력받고(제 1010 단계), 속성 검출부(915)는 2차원 스케치의 각 부분의 단일속성 및 각 부분들간에 존재하는 상관속성을 검출한다(제1020 단계).
노드 생성부(920)는 검출한 단일속성에 따라 소정의 3차원 형상을 갖는 노드를 생성한다(제1030 단계). 노드 배열부(940)는 노드 생성부(920)에서 생성된 소정의 노드들을 검출한 상관속성에 따라 배열함으로써 소정의 3차원 구조 스케치를 완 성한다(제1040 단계).
도 11은 도 10에 도시된 제1030 단계에 대한 본 발명의 실시예를 설명하기 위한 플로우챠트로서, 포인트집합을 생성하는 단계(제1110 단계), 노드타원을 생성하는 단계(제1120 단계) 및 타원체를 생성하는 단계(제1130 단계)로 이루어진다.
포인트집합 생성부(922)는 주어진 2차원 스케치의 각 부분을 단일속성에 따라 포인트집합으로 변경하여 포인트집합을 생성한다(제1110 단계). 노드타원 생성부는 포인트집합을 노드타원으로 변경하고(제1120 단계), 타원체 생성부(926)는 노드타원을 부풀려 타원체를 생성한다(제1130 단계). 이 경우, 노드는 체적(volume) 및 볼록도(convexity)에 의해 정의되는 타원체 형상을 지님이 바람직하다.
노드 배열부(940)가 출력한 3차원 구조 스케치는 3차원 구조 스케치 저장부(950)에 저장될 수 있다. 다만, 본 발명에 의하면, 도 9에 도시된 3차원 구조 스케치 제작장치는 3차원 구조 스케치 저장부(950)를 마련하지 않을 수도 있다.
후술할 3차원 구조 스케치 입력부(960), 사용자 인터페이스부(970) 및 갱신된 3차원 구조 스케치 생성부(980)는 노드 배열부(940)에서 출력한 3차원 구조 스케치를 사용자의 지시를 받아 갱신하는 블록들이다.
3차원 구조 스케치 입력부(960)는 노드 배열부(940)에서 출력한 3차원 구조 스케치를 입력받는다.
사용자 인터페이스부(970)는 3차원 구조 스케치 입력부(960)에서 입력받은 3차원 구조 스케치 및 갱신된 3차원 구조 스케치 생성부(980)에서 생성한 갱신된 3차원 구조 스케치를 디스플레이한다. 이를 위해, 사용자 인터페이스부(970)는 노드 의 형상 및 노드의 위상 중 적어도 하나의 조작을 지시하는 사용자의 지시를 입력받는 인터페이스를 사용자에게 제공한다.
갱신된 3차원 구조 스케치 생성부(980)는 사용자 인터페이스부(970)를 통해 사용자로부터 3차원 구조 스케치의 갱신을 위한 소정의 지시를 받고, 3차원 구조 스케치 입력부(960)가 입력받은 3차원 구조 스케치의 노드의 형상 및 그 3차원 구조 스케치상에서의 노드의 위상 중 적어도 하나를 변경하여 갱신된 3차원 구조 스케치를 생성한다. 변경하는 노드는 노드 배열부(940)가 출력한 3차원 구조 스케치의 일부 노드일 수도 있고, 모든 노드일 수도 있다.
도 14는 도 9에 도시된 사용자 인터페이스부(970)에 대한 본 발명의 실시예를 설명하기 위한 도면으로서, 하나의 3차원 전체 작업창(1410), 3개의 보조 작업창(1420), 쿼리 선택창(1430), 속성 디스플레이창(1440) 및 볼록도 디스플레이창(1450)을 지닌 인터페이스를 사용자에게 제공한다. 전체 작업창(1410)과 보조 작업창(1420)를 합하여 갱신 작업창이라 명명할 수 있다.
전체 작업창(1410)은 사용자의 갱신 지시를 직접 수용하고 당해 수용 결과를 3차원적으로 디스플레이하며, 보조 작업창(1420)은 전체 작업창(1410)이 디스플레이하는 수용 결과를 일 축상에서 관찰하여 2차원적으로 디스플레이한다. 즉, 전체 작업창(1410)이 디스플레이하는 3차원 상의 갱신된 쿼리 아이템이 3개의 보조 작업창(1420) 각각을 통해 X축, Y축, Z축 상에서 실시간(real-time)으로 디스플레이된다.
쿼리 선택창(1430)은 갱신할 쿼리 아이템을 사용자가 선택할 수 있도록 한 다. 이를 위해, 노드 배열부(940)가 생성한 3차원 구조 스케치는 3차원 구조 스케치 저장부(950)에 저장된다.
속성 디스플레이창(1440)은 전체 작업창(1410) 상에서 사용자가 선택한 노드의 단일속성 및 소정 노드들 간의 에지의 상관속성을 디스플레이한다.
볼록도 디스플레이창(1450)은 속성 디스플레이창(1440)에서 디스플레이할 수 있는 소정 노드의 볼록도를 디스플레이한다.
갱신된 3차원 구조 스케치 생성부(980)는 3차원 구조 스케치 입력부(960)가 입력받은 3차원 구조 스케치를 사용자 인터페이스부(970)를 통해 지시받은 사용자의 갱신 지시에 따라 갱신한다. 이로써, 3차원 구조 스케치는 갱신된다(updated).
그 갱신은 임의의 노드를 회전시키거나, 임의의 노드를 이동시키거나, 임의의 연결된 두 노드를 분리시키거나, 임의의 분리된 두 노드를 연결함으로써 이루어질 수 있다.
또는, 생성된 노드가 타원체 형상을 갖는다면, 그 갱신은 임의의 노드의 볼록값을 변경시키거나 임의의 노드의 축 길이를 변경함으로써 이루어질 수 있다. 여기서, 생성된 타원체(ellipsoid)의 볼록도(convexity)는 2차원 폐곡선 내부의 실제 넓이(Sin)를 2차원 폐곡선의 만입부가 채워진 폐곡선 내부의 넓이(Sconv)로 나누어 계산할 수 있다. 이러한 볼록도를 변경함으로써 3차원 구조 스케를 갱신할 수 있다.
도 15 및 도 16은 3차원 구조 스케치를 이루는 일 노드(1510)를 이동시킴에 따라 도 14의 사용자 인터페이스부에 구비된 작업창이 디스플레이하는 내용의 일 예를 설명한 도면들이다.
도 15는 전체 작업창(1410)이 디스플레이하는 3차원 구조 스케치의 일 예를 도시한다. 점선방향을 X축 방향, 이점쇄선 방향을 Y축 방향, 도면에 수직방향을 Z축 방향이라 하고 각 축은 서로 직교(orthogonal)한다고 할 때 도시된 3차원 구조 스케치는 Z축 방향에서 관찰되었다.
도 16은 보조 작업창(1420)이 디스플레이하는 3차원 구조 스케치의 여러 예들을 도시하며, Z축 방향은 일점쇄선 방향으로 표시되어 있다. 도 16(a) 내지 16(d)의 각각은 도 15에 도시된 빗금친 타원(1510)을 Z축 방향으로 소정 거리 이동시킨 후 Y축(1610, 1620, 1630 또는 1640) 및 X축(1612, 1622, 1632 또는 1642) 관점에서 도 15에 도시된 3차원 구조 스케치를 관찰한 내용을 나타낸다. 빗금친 타원(1510)이 Z축 방향으로 이동한 거리는 도 16(a)에서 도 16(d)로 갈수록 길어진다.
결국, 전체 작업창(1420)과 보조 작업창(1410)이 한 화면 상에 함께 디스플레이되므로 사용자는 빗금친 타원체를 이동시킨 후의 3차원 구조 스케치의 내용을 알고자 관찰 방향축을 달리한 작업창을 별도로 띄울 필요가 없다.
이상에서 설명한 것은 본 발명에 따른 3차원 구조 스케치 제작장치와 방법 및 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록매체를 실시하기 위한 하나의 실시예에 불과한 것으로서, 본 발명은 상기한 실시예에 한정되지 않고 이하의 특허청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변경 실시가 가능할 것이다.
이상에서 설명한 바와 같이, 본 발명에 의한 3차원 구조 스케치 제작장치와 방법 및 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록매체는, 3차원 구조 스케치를 용이하게 제작하고, 제작된 3차원 구조 스케치를 용이하게 갱신할 수 있는 효과를 갖는다.

Claims (24)

  1. 주어진 2차원 스케치의 각 부분의 단일속성 및 상기 각 부분간의 상관속성을 검출하는 속성 검출부;
    상기 검출한 단일속성 및 상기 각 부분을 입력받고 상기 검출한 단일속성에 따라 상기 각 부분을 3차원 형상을 갖는 노드로 변경하는 노드 생성부; 및
    상기 검출한 상관속성 및 상기 노드를 입력받고 상기 검출한 상관속성에 따라 상기 노드를 배열하여 3차원 구조 스케치를 생성하는 노드 배열부를 포함하며,
    상기 단일속성은 기하학적 속성을 포함한 소정의 속성이며, 상기 상관속성은 위상학적 속성을 포함한 소정의 속성인 것을 특징으로 하는 3차원 구조 스케치 제작장치.
  2. 제 1 항에 있어서,
    상기 3차원 구조 스케치 제작장치는 사용자에 의해 조작되어 소정의 2차원 스케치를 생성하고 생성된 2차원 스케치를 상기 속성 검출부 및 상기 노드 생성부 에 제공하는 사용자 스케치 입력부를 더 포함하며,
    상기 속성 검출부는 상기 제공받은 2차원 스케치의 각 부분의 단일속성 및 상기 각 부분간의 상관속성을 검출하는 것을 특징으로 하는 3차원 구조 스케치 제작장치.
  3. 제 1 항에 있어서, 상기 2차원 스케치는 2차원 폐곡선 또는 2차원 폐곡면의 집합으로 이루어진 것을 특징으로 하는 3차원 구조 스케치 제작장치.
  4. 제 1 항에 있어서, 상기 노드는 소정의 타원체 형상을 갖는 것을 특징으로 하는 3차원 구조 스케치 제작장치.
  5. 제 1 항에 있어서, 상기 노드 생성부는,
    상기 검출한 단일속성 및 상기 각 부분을 입력받고 상기 검출한 단일속성에 따라 상기 각 부분을 타원 형상을 갖는 노드타원으로 변경하는 노드타원 생성부; 및
    상기 노드타원을 부풀려 타원체를 생성하는 타원체 생성부를 포함함을 특징으로 하는 3차원 구조 스케치 제작장치.
  6. 제 5 항에 있어서,
    상기 노드 생성부는 상기 검출한 단일속성 및 상기 각 부분을 입력받고 상기 검출한 단일속성에 따라 상기 각 부분을 포인트집합으로 변경하는 포인트집합 생성부를 더 포함하며,
    상기 노드타원 생성부는 상기 검출한 단일속성에 따라 상기 포인트집합을 타원 형상을 갖는 상기 노드타원으로 변경하고, 상기 포인트집합은 상기 각 부분을 이루는 소정 점들의 집합인 것을 특징으로 하는 3차원 구조 스케치 제작장치.
  7. 제 1 항에 있어서, 상기 3차원 구조 스케치 제작장치는,
    상기 3차원 구조 스케치와 매칭 가능한 복수의 모델 및 상기 모델의 형상 기술자를 저장하는 모델 데이터베이스; 및
    상기 3차원 구조 스케치를 입력받고 상기 3차원 구조 스케치로부터 추출한 형상 기술자와 상기 모델 데이터베이스에 저장된 모델들 각각의 형상 기술자를 비교하여 소정 범위 내의 유사도를 갖는 하나 이상의 모델을 출력하여 검색하는 모델 검색부를 더 포함하며,
    상기 형상 기술자는 기하학적 속성, 위상학적 속성을 포함한 임의의 속성들의 집합에 의해 형상을 표현하는 언어인 것을 특징으로 하는 3차원 구조 스케치 제작장치.
  8. 제 7 항에 있어서, 상기 제작장치는,
    상기 검색된 모델을 사용자의 지시에 따라 개량하여 유저지향 모델을 생성하는 모델 개량부를 더 포함함을 특징으로 하는 3차원 구조 스케치 제작장치.
  9. 제 1 항에 있어서, 상기 3차원 구조 스케치 제작장치는,
    생성된 상기 3차원 구조 스케치를 입력받고 입력받은 상기 3차원 구조 스케치의 상기 노드의 형상 및 상기 3차원 구조 스케치상에서의 상기 노드의 위상 중 적어도 하나를 사용자의 조작에 따라 변경하여 갱신된 3차원 구조 스케치를 생성하는 3차원 구조 스케치 갱신부를 더 포함함을 특징으로 하는 3차원 구조 스케치 제작장치.
  10. 제 9 항에 있어서, 상기 3차원 구조 스케치 갱신부는,
    상기 입력받은 3차원 구조 스케치 및 상기 갱신된 3차원 구조 스케치를 디스플레이하며, 상기 노드의 형상 및 상기 노드의 위상 중 적어도 하나의 조작을 지시하는 사용자의 지시를 입력받는 인터페이스를 사용자에게 제공하는 사용자 인터페이스부를 더 포함함을 특징으로 하는 3차원 구조 스케치 제작장치.
  11. 제 9 항에 있어서, 상기 변경은 임의의 상기 노드를 회전 또는 이동시키는 것을 특징으로 하는 3차원 구조 스케치 제작장치.
  12. 제 9 항에 있어서, 상기 변경은 임의의 상기 연결된 노드들을 분리시키는 것을 특징으로 하는 3차원 구조 스케치 제작장치.
  13. 제 9 항에 있어서, 상기 변경은 임의의 상기 분리된 노드들을 연결시키는 것을 특징으로 하는 3차원 구조 스케치 제작장치.
  14. 제 9 항에 있어서, 상기 노드는 타원체 형상을 갖고, 상기 변경은 임의의 상기 노드의 볼록값을 변경하는 것을 특징으로 하는 3차원 구조 스케치 제작장치.
  15. 제 9 항에 있어서, 상기 노드는 타원체 형상을 갖고, 상기 변경은 임의의 상기 노드의 특정 축 길이를 변경하는 것을 특징으로 하는 3차원 구조 스케치 제작장치.
  16. 주어진 2차원 스케치의 각 부분의 단일속성 및 상기 각 부분간의 상관속성을 검출하는 단계;
    상기 검출한 단일속성 및 상기 각 부분을 입력받고 상기 검출한 단일속성에 따라 상기 각 부분을 3차원 형상을 갖는 노드로 변경하는 단계; 및
    상기 검출한 상관속성 및 상기 노드를 입력받고 상기 검출한 상관속성에 따라 상기 노드를 배열하여 3차원 구조 스케치를 생성하는 단계를 포함하며,
    상기 단일속성은 기하학적 속성을 포함한 소정의 속성이며, 상기 상관속성은 위상학적 속성을 포함한 소정의 속성인 것을 특징으로 하는 3차원 구조 스케치 제작방법.
  17. 제 16 항에 있어서,
    상기 3차원 구조 스케치 제작방법은 사용자에 의해 조작되어 소정의 2차원 스케치를 생성하는 단계를 더 포함하며,
    상기 검출하는 단계는 상기 생성한 2차원 스케치의 각 부분의 상기 단일속성 및 상기 각 부분간의 상기 상관속성을 검출하는 것을 특징으로 하는 3차원 구조 스케치 제작방법.
  18. 제 16 항에 있어서, 상기 노드로 변경하는 단계는,
    상기 검출한 단일속성 및 상기 각 부분을 입력받고 상기 검출한 단일속성에 따라 상기 각 부분을 타원 형상을 갖는 노드타원으로 변경하는 단계; 및
    상기 노드타원을 부풀려 타원체를 생성하는 단계를 포함함을 특징으로 하는 3차원 구조 스케치 제작방법.
  19. 제 18 항에 있어서,
    상기 노드로 변경하는 단계는 상기 검출한 단일속성 및 상기 각 부분을 입력받고 상기 검출한 단일속성에 따라 상기 각 부분을 포인트집합으로 변경하는 단계를 더 포함하며,
    상기 노드타원으로 변경하는 단계는 상기 검출한 단일속성에 따라 상기 포인트집합을 타원 형상을 갖는 상기 노드타원으로 변경하고, 상기 포인트집합은 상기 각 부분을 이루는 소정 점들의 집합인 것을 특징으로 하는 3차원 구조 스케치 제작방법.
  20. 제 16 항에 있어서, 상기 3차원 구조 스케치 제작방법은,
    상기 생성한 3차원 구조 스케치를 입력받고, 상기 3차원 구조 스케치와 매칭 가능하며 사전에 저장된 복수의 모델 및 상기 모델의 형상 기술자 중 입력받은 상기 3차원 구조 스케치로부터 추출한 형상 기술자와 소정 범위 내의 유사도를 갖는 하나 이상의 모델을 검색하는 단계를 더 포함하며,
    상기 형상 기술자는 기하학적 속성, 위상학적 속성을 포함한 임의의 속성들의 집합에 의해 형상을 표현하는 언어인 것을 특징으로 하는 3차원 구조 스케치 제작방법.
  21. 제 20 항에 있어서, 상기 3차원 구조 스케치 제작방법은,
    상기 검색된 모델을 사용자의 지시에 따라 개량하는 단계를 더 포함함을 특징으로 하는 3차원 구조 스케치 제작방법.
  22. 제 16 항에 있어서, 상기 3차원 구조 스케치 제작방법은,
    상기 생성한 3차원 구조 스케치를 입력받고 입력받은 상기 3차원 구조 스케치의 상기 노드의 형상 및 상기 3차원 구조 스케치상에서의 상기 노드의 위상 중 적어도 하나를 사용자의 조작에 따라 변경하는 단계를 더 포함함을 특징으로 하는 3차원 구조 스케치 제작방법.
  23. 주어진 2차원 스케치의 각 부분의 단일속성 및 상기 각 부분간의 상관속성을 검출하는 단계;
    상기 검출한 단일속성 및 상기 각 부분을 입력받고 상기 검출한 단일속성에 따라 상기 각 부분을 3차원 형상을 갖는 노드로 변경하는 단계; 및
    상기 검출한 상관속성 및 상기 노드를 입력받고 상기 검출한 상관속성에 따라 상기 노드를 배열하여 3차원 구조 스케치를 생성하는 단계를 수행하기 위한 컴퓨터 프로그램을 저장하며,
    상기 단일속성은 기하학적 속성을 포함한 소정의 속성이며, 상기 상관속성은 위상학적 속성을 포함한 소정의 속성인 것을 특징으로 하는 컴퓨터로 읽을 수 있는 기록매체.
  24. 제 23 항에 있어서, 상기 컴퓨터로 읽을 수 있는 기록매체가 저장하는 컴퓨터 프로그램은,
    상기 생성한 3차원 구조 스케치를 입력받고, 상기 3차원 구조 스케치와 매칭 가능하며 사전에 저장된 복수의 모델 및 상기 모델의 형상 기술자 중 입력받은 상기 3차원 구조 스케치로부터 추출한 형상 기술자와 소정 범위 내의 유사도를 갖는 하나 이상의 모델을 검색하는 단계를 더 포함하며,
    상기 형상 기술자는 기하학적 속성, 위상학적 속성을 포함한 임의의 속성들의 집합에 의해 형상을 표현하는 언어인 것을 특징으로 하는 컴퓨터로 읽을 수 있는 기록매체.
KR1020040104916A 2004-12-13 2004-12-13 3차원 구조 스케치 제작장치와 방법 및 컴퓨터 프로그램을저장하는 컴퓨터로 읽을 수 있는 기록매체 KR20060066340A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020040104916A KR20060066340A (ko) 2004-12-13 2004-12-13 3차원 구조 스케치 제작장치와 방법 및 컴퓨터 프로그램을저장하는 컴퓨터로 읽을 수 있는 기록매체
US11/230,652 US7876317B2 (en) 2004-12-13 2005-09-21 Apparatus and method of producing 3D structural sketch and computer-readable recording medium on which compute program for executing the method is recorded

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040104916A KR20060066340A (ko) 2004-12-13 2004-12-13 3차원 구조 스케치 제작장치와 방법 및 컴퓨터 프로그램을저장하는 컴퓨터로 읽을 수 있는 기록매체

Publications (1)

Publication Number Publication Date
KR20060066340A true KR20060066340A (ko) 2006-06-16

Family

ID=36613027

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040104916A KR20060066340A (ko) 2004-12-13 2004-12-13 3차원 구조 스케치 제작장치와 방법 및 컴퓨터 프로그램을저장하는 컴퓨터로 읽을 수 있는 기록매체

Country Status (2)

Country Link
US (1) US7876317B2 (ko)
KR (1) KR20060066340A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210116100A (ko) * 2020-03-17 2021-09-27 한국과학기술원 3차원 스케칭 방법 및 장치

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080104040A1 (en) * 2007-09-26 2008-05-01 Ramakrishna Krishnamsetty C Visually intuitive search method
US8606774B1 (en) * 2009-05-18 2013-12-10 Google Inc. Methods and systems for 3D shape retrieval
US9095423B2 (en) * 2013-03-15 2015-08-04 OrCam Technologies, Ltd. Apparatus and method for providing failed-attempt feedback using a camera on glasses
US10509533B2 (en) 2013-05-14 2019-12-17 Qualcomm Incorporated Systems and methods of generating augmented reality (AR) objects
US10977859B2 (en) 2017-11-24 2021-04-13 Frederic Bavastro Augmented reality method and system for design
US10580207B2 (en) 2017-11-24 2020-03-03 Frederic Bavastro Augmented reality method and system for design
US20190251744A1 (en) * 2018-02-12 2019-08-15 Express Search, Inc. System and method for searching 3d models using 2d images

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5734384A (en) * 1991-11-29 1998-03-31 Picker International, Inc. Cross-referenced sectioning and reprojection of diagnostic image volumes
US5511158A (en) * 1994-08-04 1996-04-23 Thinking Machines Corporation System and method for creating and evolving directed graphs
US6141019A (en) * 1995-10-13 2000-10-31 James B. Roseborough Creature animation and simulation technique
US5913205A (en) * 1996-03-29 1999-06-15 Virage, Inc. Query optimization for visual information retrieval system
US5893095A (en) * 1996-03-29 1999-04-06 Virage, Inc. Similarity engine for content-based retrieval of images
US5911139A (en) * 1996-03-29 1999-06-08 Virage, Inc. Visual image database search engine which allows for different schema
US5915250A (en) * 1996-03-29 1999-06-22 Virage, Inc. Threshold-based comparison
US5986662A (en) * 1996-10-16 1999-11-16 Vital Images, Inc. Advanced diagnostic viewer employing automated protocol selection for volume-rendered imaging
JP3103793B2 (ja) * 1997-03-11 2000-10-30 株式会社モノリス オブジェクトの構造グラフ生成装置、それを利用することの可能なデータ変換装置およびシステム
US6240424B1 (en) * 1998-04-22 2001-05-29 Nbc Usa, Inc. Method and system for similarity-based image classification
US6933941B1 (en) * 2001-04-10 2005-08-23 Microsoft Corporation Scene representation method and system
EP1394727B1 (en) * 2002-08-30 2011-10-12 MVTec Software GmbH Hierarchical component based object recognition
KR100513735B1 (ko) 2002-12-05 2005-09-08 삼성전자주식회사 지각적 인식이 가능한 3차원 형상의 기술방법과 이를이용한 3차원 그래픽 모델의 데이터베이스 검색 방법 및장치
EP1429264B1 (en) * 2002-12-05 2016-06-29 Samsung Electronics Co., Ltd. Method of perceptual 3D shape description and method and apparatus for searching 3D graphics model database using the description method
JP4516957B2 (ja) * 2003-01-25 2010-08-04 パーデュー リサーチ ファンデーション 3次元オブジェクトについて検索を行なうための方法、システムおよびデータ構造
US7057618B2 (en) * 2004-05-14 2006-06-06 Pixar Patch picking methods and apparatus

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210116100A (ko) * 2020-03-17 2021-09-27 한국과학기술원 3차원 스케칭 방법 및 장치

Also Published As

Publication number Publication date
US20060143221A1 (en) 2006-06-29
US7876317B2 (en) 2011-01-25

Similar Documents

Publication Publication Date Title
JP5445199B2 (ja) 三次元モデル分割装置及び三次元モデル分割方法
EP3179407A1 (en) Recognition of a 3d modeled object from a 2d image
JP5121086B2 (ja) 物体を表現する方法、物体を探索する方法
US7876317B2 (en) Apparatus and method of producing 3D structural sketch and computer-readable recording medium on which compute program for executing the method is recorded
US20190251744A1 (en) System and method for searching 3d models using 2d images
WO2011081192A1 (ja) 画像認識システム
US20060122999A1 (en) Apparatus for and method of producing graphics contents and computer-readable recording medium storing computer program for executing the method
JP2006520948A (ja) 3次元オブジェクトについて検索を行なうための方法、システムおよびデータ構造
CN104463779A (zh) 一种肖像漫画生成方法及其装置
KR101626384B1 (ko) 3차원 모델 데이터 검색 장치 및 방법
Ruta et al. Sax navigator: Time series exploration through hierarchical clustering
JP2018136946A (ja) 3次元cadモデル部分検索方法及び3次元cadモデル検索方法
KR100609022B1 (ko) 공간관계와 주석을 이용한 이미지 검색 방법
US11741662B2 (en) Shaped-based techniques for exploring design spaces
CN115169448A (zh) 一种基于深度学习的三维描述生成和视觉定位的统一方法
US11126330B2 (en) Shaped-based techniques for exploring design spaces
Santos et al. Combining diversity queries and visual mining to improve content-based image retrieval systems: The divi method
Hamzaoui et al. Object-based visual query suggestion
Song et al. Coarse-to-fine segmentation for indoor scenes with progressive supervision
Meinecke et al. A visual analytics framework for composing a hierarchical classification for medieval illuminations
US11928773B2 (en) Shaped-based techniques for exploring design spaces
Mahoney The v-sketch system, machine assisted design exploration in virtual reality
CN117932161B (zh) 一种多源多模态数据的可视化搜索方法及系统
Zhu Analysis of the fusion development of traditional culture concept and interior art design based on 3D scene analysis
SUNG Structure-Aware Learning for 3D Data

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application