KR102060758B1 - 포인트 클라우드를 이용한 프리미티브 피팅 장치 및 방법 - Google Patents

포인트 클라우드를 이용한 프리미티브 피팅 장치 및 방법 Download PDF

Info

Publication number
KR102060758B1
KR102060758B1 KR1020130021899A KR20130021899A KR102060758B1 KR 102060758 B1 KR102060758 B1 KR 102060758B1 KR 1020130021899 A KR1020130021899 A KR 1020130021899A KR 20130021899 A KR20130021899 A KR 20130021899A KR 102060758 B1 KR102060758 B1 KR 102060758B1
Authority
KR
South Korea
Prior art keywords
primitive
fitting
point
user
primitives
Prior art date
Application number
KR1020130021899A
Other languages
English (en)
Other versions
KR20140108792A (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 KR1020130021899A priority Critical patent/KR102060758B1/ko
Priority to US14/193,313 priority patent/US9710963B2/en
Publication of KR20140108792A publication Critical patent/KR20140108792A/ko
Application granted granted Critical
Publication of KR102060758B1 publication Critical patent/KR102060758B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Image Analysis (AREA)
  • Human Computer Interaction (AREA)

Abstract

본 발명은 프리미티브 피팅 장치를 개시한다. 프리미티브 피팅 장치는 사용자로부터 포인트 클라우드(point cloud) 중 프리미티브의 피팅을 위한 포인트를 선택받는 선택부; 상기 사용자로부터 상기 사용자가 피팅하고자 하는 상기 프리미티브를 선택 받아, 상기 선택된 프리미티브를 식별하는 식별부; 및 상기 포인트 및 프리미티브를 이용하여, 상기 포인트에 따른 프리미티브를 피팅하는 피팅부를 포함한다.

Description

포인트 클라우드를 이용한 프리미티브 피팅 장치 및 방법{PRIMITIVE FITTING APPARATUS AND METHOD USING POINT CLOUD}
본 발명은 프리미티브 피팅 장치 및 방법에 관한 것이다. 보다 구체적으로 포인트 클라우드의 포인트를 이용하여 보다 정확하게 프리미티브 피팅하기 위한 프리미티브 피팅 장치 및 방법에 관한 것이다.
프리미티브를 피팅하는 방법에서 있어서, 종래에는 스캐너 장비를 이용하여 프리미티브 피팅을 위한 3차원 데이터를 신속하게 획득하였다. 이 때, 3차원 데이터는 3차원 포인트 집합(3D point cloud)로 표현되며, 방대한 양의 포인트를 포함한다. 그리고, 피팅하는 방법은 획득한 3차원 데이터를 기초하여 프리미티브를 피팅한다.
최근에는 3차원 데이터를 이용하여 3차원 오브젝트를 쉽고, 빠르게 복원하는 다양한 복원 기법이 개발 중에 있다. 보다 구체적으로, 복원 기법은 3차원 데이터의 포인트가 입력되었을 때, 자동으로 프리미티브를 피팅하기 위해 error function으로서 포인트들 간의 거리 차, 포인트의 노멀 벡터를 비교한다. 그리고, 복원 기법은 비교한 결과에 따라 포인트에 아웃라이어(outlier)를 제거하여 인라이어(inlier)에 최적화된 프리미티브를 구한다.
그러나, 복원 기법은 최적화 된 프리미티브가 포인트의 노멀 벡터에 따른 프리미티브의 부분에 속하는 경우가 발생한다. 이러한 경우, 복원 기법은 프리미티브의 정확도가 떨어지며, 입력된 포인트에 대응하지 않은 프리미티브를 구하게 된다.
본 발명은 사용자가 피팅하고자 하는 프리미티브의 면적과 아웃라이어가 제거된 포인트를 포함하는 프리미티브의 면적을 고려함으로써, 보다 최적화된 프리미티브를 피팅할 수 있는 프리미티브 피팅 장치를 제공한다.
본 발명은 사용자가 피팅하고자 하는 프리미티브의 면적과 아웃라이어가 제거된 포인트를 포함하는 프리미티브의 면적을 고려하여 최적화 된 프리미티브를 피팅함으로써, 아웃라이어가 제거된 포인트를 포함하는 프리미티브가 사용자가 피팅하고자 하는 프리미티브의 일부 영역으로 포함되지 않는 프리미티브를 피팅할 수 있는 프리미티브 피팅 장치를 제공한다.
본 발명의 일실시예에 따른 프리미티브 피팅 장치는 사용자로부터 포인트 클라우드(point cloud) 중 프리미티브의 피팅을 위한 포인트를 선택받는 선택부; 상기 사용자로부터 상기 사용자가 피팅하고자 하는 상기 프리미티브를 선택 받아, 상기 선택된 프리미티브를 식별하는 식별부; 및 상기 포인트 및 프리미티브를 이용하여, 상기 포인트에 대응하도록 프리미티브를 피팅하는 피팅부를 포함할 수 있다.
본 발명의 일실시예에 따른 선택부는 상기 사용자에게 상기 포인트를 선택할 수 있는 인터페이스(User Interface)를 제공하여, 상기 포인트를 선택받을 수 있다.
본 발명의 일실시예에 따른 선택부는 사용자에게 제공하기 위해 추출한 포인트 클라우드의 정규화(normal) 값을 상기 포인트로 제공하여, 상기 포인트를 선택받을 수 있다.
본 발명의 일실시예에 따른 선택부는 상기 사용자로부터 계층적인 트리 구조의 노드를 통해 계층적으로 상기 포인트를 선택받을 수 있다.
본 발명의 일실시예에 따른 식별부는 3차원으로 표현되는 오브젝트에 대한 프리미티브를 식별할 수 있다.
본 발명의 일실시예에 따른 피팅부는 상기 사용자로부터 선택된 포인트와 인접하게 위치한 포인트들 간의 거리(distance) 차이를 이용하여 아웃라이어(outlier)를 제거할 수 있다.
본 발명의 일실시예에 따른 피팅부는 상기 식별된 프리미티브에서 선택된 포인트의 법선 상의 각도와 상기 포인트를 기초하여 추출된 프리미티브에서 선택된 포인트의 법선 상의 각도 간의 각도(normal verctor) 차이를 이용하여 아웃라이어(outlier)를 제거할 수 있다.
본 발명의 일실시예에 따른 피팅부는 상기 아웃라이어가 제거되어 인라이어(inlier)에 최적화 된 프리미티브의 면적과 상기 인라이어의 포인트를 메시화한 영역의 면적을 비교하여 면적 비율에 따라 상기 프리미티브를 피팅할 수 있다.
본 발명의 일실시예에 따른 피팅부는 미리 설정된 면적 비율의 차이에 대한 임계치를 기준으로 상기 프리미티브의 면적과 인라이어를 메시화한 영역의 면적을 비교할 수 있다.
본 발명의 일실시예에 따른 프리미티브 피팅 장치는 사용자에게 제공하기 위한 포인트 클라우드에 대한 포인트의 노멀 벡터를 추출하는 추출부; 상기 추출된 노멀 벡터에 대응하는 포인트를 상기 사용자에게 제공하고, 상기 사용자로부터 선택된 상기 노멀 벡터에 따른 프리미티브의 피팅을 위한 포인트 및 상기 사용자가 피팅하고자 하는 프리미티브를 결정하는 판단부; 및 상기 포인트 및 프리미티브를 이용하여, 상기 포인트에 대응하도록 프리미티브를 피팅하는 피팅부를 포함할 수 있다.
본 발명의 일실시예에 따라 프리미티브 피팅 방법은 사용자로부터 포인트 클라우드(point cloud) 중 프리미티브의 피팅을 위한 포인트를 선택받는 단계; 상기 사용자로부터 상기 사용자가 피팅하고자 하는 상기 프리미티브를 선택 받아, 상기 선택된 프리미티브를 식별하는 단계; 및 상기 포인트 및 프리미티브를 이용하여, 상기 포인트에 대응하도록 프리미티브를 피팅하는 단계를 포함할 수 있다.
본 발명의 일실시예에 따라 포인트를 선택받는 단계는 상기 사용자에게 상기 포인트를 선택할 수 있는 인터페이스(User Interface)를 제공하여, 상기 포인트를 선택받을 수 있다.
본 발명의 일실시예에 따라 포인트를 선택받는 단계는 사용자에게 제공하기 위해 추출한 포인트 클라우드의 노멀 벡터를 상기 포인트로 제공하여, 상기 포인트를 선택받을 수 있다.
본 발명의 일실시예에 따라 포인트를 선택받는 단계는 상기 사용자로부터 계층적인 트리 구조의 노드를 통해 계층적으로 상기 포인트를 선택받을 수 있다.
본 발명의 일실시예에 따라 선택된 프리미티브를 식별하는 단계는 3차원으로 표현되는 오브젝트에 대한 프리미티브를 식별할 수 있다.
본 발명의 일실시예에 따라 프리미티브를 피팅하는 단계는 상기 사용자로부터 선택된 포인트와 인접하게 위치한 포인트들 간의 거리(distance) 차이를 이용하여 아웃라이어(outlier)를 제거할 수 있다.
본 발명의 일실시예에 따라 프리미티브를 피팅하는 단계는 상기 식별된 프리미티브에서 선택된 포인트의 법선 상의 각도와 상기 포인트를 기초하여 추출된 프리미티브에서 선택된 포인트의 법선 상의 각도 간의 각도(normal verctor) 차이를 이용하여 아웃라이어(outlier)를 제거할 수 있다.
본 발명의 일실시예에 따라 프리미티브를 피팅하는 단계는 상기 아웃라이어가 제거되어 인라이어(inlier)에 최적화 된 프리미티브의 면적과 상기 인라이어의 포인트를 메시화한 영역의 면적을 비교하여 면적 비율에 따라 상기 프리미티브를 피팅할 수 있다.
본 발명의 일실시예에 따라 프리미티브를 피팅하는 단계는 미리 설정된 면적 비율의 차이에 대한 임계치를 기준으로 상기 프리미티브의 면적과 인라이어를 메시화한 영역의 면적을 비교할 수 있다.
본 발명의 일실시예에 따라 프리미티브 피팅 방법은 사용자에게 제공하기 위한 포인트 클라우드에 대한 포인트의 노멀 벡터를 추출하는 단계; 상기 추출된 노멀 벡터에 대응하는 포인트를 상기 사용자에게 제공하고, 상기 사용자로부터 선택된 상기 노멀 벡터에 따른 프리미티브의 피팅을 위한 포인트 및 상기 사용자가 피팅하고자 하는 프리미티브를 결정하는 단계; 및 상기 포인트 및 프리미티브를 이용하여, 상기 포인트에 대응하도록 프리미티브를 피팅하는 단계를 포함할 수 있다.
본 발명은 사용자가 피팅하고자 하는 프리미티브의 면적과 아웃라이어가 제거된 포인트를 포함하는 프리미티브의 면적을 고려함으로써, 보다 최적화된 프리미티브를 피팅할 수 있는 프리미티브 피팅 장치를 제공한다.
본 발명은 사용자가 피팅하고자 하는 프리미티브의 면적과 아웃라이어가 제거된 포인트를 포함하는 프리미티브의 면적을 고려하여 최적화 된 프리미티브를 피팅함으로써, 아웃라이어가 제거된 포인트를 포함하는 프리미티브가 사용자가 피팅하고자 하는 프리미티브의 일부 영역으로 포함되지 않는 프리미티브를 피팅할 수 있는 프리미티브 피팅 장치를 제공한다.
도 1은 일실시예에 따른 프리미티브 피팅 장치를 도시한 도면이다.
도 2 내지 도 3은 일실시예에 따른 프리미티브 피팅 장치의 세부 구성을 도시한 도면이다.
도 4는 일실시예에 따른 각도 차이를 이용하여 아웃라이어를 제거하는 구성을 도시한 도면이다.
도 5는 일실시예에 따른 프리미티브의 면적을 비교하는 도면이다.
도 6는 일실시예에 따른 프리미티브가 수렴하는 경우를 도시한 도면이다.
도 7은 일실시예에 따른 프리미티브를 피팅하는 세부적인 구성을 도시한 도면이다.
도 8을 일실시예에 따른 프리미티브 피팅 방법을 도시한 도면이다.
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 일실시예에 따른 프리미티브 피팅 장치를 도시한 도면이다.
도 1을 참고하면, 프리미티브 피팅 장치(101)는 포인트 클라우드를 사용자에게 제공할 수 있다. 구체적으로, 프리미티브 피팅 장치(101)는 포인트 클라우드에 포함된 복수의 포인트들을 대상으로 사용자가 포인트를 선택할 수 있도록 인터페이스를 제공할 수 있다. 이 때, 복수의 포인트들은 노멀 벡터을 가진다. 또한, 복수의 포인트들은 3차원 포인트로 구성될 수 있다. 그리고, 프리미티브 피팅 장치(101)는 사용자로부터 프리미티브의 피팅을 위한 포인트를 선택 받을 수 있다.
또한, 프리미티브 피팅 장치(101)는 사용자가 선택한 포인트에 기초하여 사용자가 피팅하고자 하는 프리미티브(104)를 선택할 수 있도록 인터페이스를 제공할 수 있다. 이 때, 프리미티브는 구체(sphere), 실린더(cylinder), 토러스(torus), 원뿔(cone) 등의 3차원 오브젝트를 포함할 수 있다. 그리고, 프리미티브 피팅 장치(101)는 사용자(102)로부터 선택된 프리미티브(104)를 식별할 수 있다. 이 때, 프리미티브(104)는 사용자(102)가 피팅하고자 하는 3차원의 오브젝트로 포인트(103)를 포함하는 프리미티브와 비교되는 대상일 수 있다. 다시 말해, 프리미티브(104)는 포인트(103)를 포함하는 프리미티브의 면적을 차이를 비교하기 위한 대상일 수 있다.
프리미티브 피팅 장치(101)는 포인트(103) 및 프리미티브(104)를 이용하여 포인트(103)에 따른 프리미티브를 피팅할 수 있다. 보다 구체적으로 프리미티브 피팅 장치(101)는 포인트(103)에 대응되도록 프리미티브(104)를 피팅할 수 있다. 일례로, 프리미티브 피팅 장치(101)는 사용자가 처음에 선택한 프리미티브(104)가 포인트(103)를 포함할 수 있도록 프리미티브(104)의 형태, 크기 등을 조절할 수 있다.
또한, 프리미티브(104)의 피팅 과정의 정확도를 높이기 위해, 포인트(103)에서 아웃라이어에 해당하는 포인트를 제거할 수 있다. 구체적으로, 프리미티브 피팅 장치(101)는 포인트(103)들 간의 거리 차이와 각도 차이를 이용하여 포인트(103)에서 아웃라이어에 해당하는 포인트를 제거할 수 있다.
그 후, 프리미티브 피팅 장치(101)는 포인트(103)에서 아웃라이어에 해당하는 포인트를 제거되어 인라이어를 포함하는 프리미티브의 면적을 구할 수 있다. 그리고, 프리미티브 피팅 장치(101)는 인라이어를 포함하는 영역의 면적을 구할 수 있다. 이 때, 면적은 인라이어의 포인트들을 연결한 메쉬를 구성하는 삼각형의 면적의 합으로서 결정될 수 있다.
그리고, 프리미티브 피팅 장치(101)는 프리미티브의 면적과 영역의 면적을 비교하여 프리미티브를 피팅 할 수 있다. 보다 구체적으로 프리미티브 피팅 장치(101)는 프리미티브의 면적과 영역의 면적의 차이가 임계치보다 큰 경우를 고려하여 프리미티브를 피팅할 수 있다.
도 2 내지 도 3은 일실시예에 따른 프리미티브 피팅 장치의 세부 구성을 도시한 도면이다.
도 2를 참고하면, 프리미티브 피팅 장치(201)는 선택부(202), 식별부(203), 피팅부(204)를 포함할 수 있다.
선택부(202)는 사용자로부터 포인트 클라우드 중 프리미티브의 피팅을 위한 포인트를 선택 받을 수 있다. 이 때, 선택부(202)는 사용자가 포인트를 계층적으로 선택할 수 있는 인터페이스를 제공할 수 있다. 그리고, 선택부(202)는 계층적인 인터페이스를 사용자에게 제공하기 위해 계층적인 트리 구조의 노드를 포함할 수 있다. 여기서, 계층적인 인터페이스를 제공하는 이유는 포인트 클라우드를 사용자에게 한번에 보여줄 수가 없기 때문에 계층적인 방법으로 사용자에게 제공할 수 있다. 또한, 계층적인 트리 구조는 k-d tree, octree 등을 포함할 수 있다.
식별부(203)는 사용자로부터 사용자가 피팅하고자 하는 프리미티브를 선택 받을 수 있다. 이 때, 식별부(203)는 사용자가 피팅하고자 하는 프리미티브를 선택할 수 있도록 인터페이스를 제공할 수 있다. 일례로, 식별부(203)는 구체, 실린더, 토러스, 원뿔 등의 프리미티브를 사용자에게 제공하여 사용자가 해당하는 프리미티브를 선택할 수 있도록 인터페이스를 제공할 수 있다. 또한, 식별부는 선택 탭이 없이, 사용자가 원하는 구체, 실린더, 토러스, 원뿔 등의 프리미티브를 직접 표현할 수 있다.
그리고, 식별부(203)는 사용자로부터 인터페이스를 통해 선택된 프리미티브에 매핑하는 프리미티브를 식별할 수 있다.
피팅부(204)는 사용자로부터 선택 받은 포인트 및 식별된 프리미티브를 이용하여 포인트에 대응되도록 프리미티브를 피팅 할 수 있다. 보다 구체적으로 피팅부(204)는 프리미티브 피팅을 하기 위한 포인트들 간의 거리 차이와 각도 차이를 이용하여 아웃라이어를 제거할 수 있다. 이 때, 피팅부(204)는 RANSAC 알고리즘에 포함된, error function으로 포인트의 거리 차이와 각도 차이를 구할 수 있다. 이 때, RANSAC 알고리즘에서 사용되는 파라미터는 사용자로부터 입력 받을 수 있다. 일례로, 파라미터는 포인트 클라우드 중 인라이어에 인접하는 포인트의 개수, 포인트 간의 거리 등을 포함할 수 있다. 또한, 파라미터는 위에 기재된 내용으로 한정되지 않으며, 다양한 파라미터를 포함할 수 있다.
피팅부(204)는 파라미터를 기초하여 포인트들 간의 거리 차이를 이용하여 아웃라이어를 제거할 수 있다. 보다 구체적으로 피팅부(204)는 사용자로부터 선택된 포인트를 기준으로 포인트와 가까운 거리에 위치한 포인트를 추출할 수 있다. 그리고, 피팅부(103)는 사용자로부터 선택된 포인트를 기준으로 포인트와 거리가 먼 곳에 위치한 포인트들을 제거할 수 있다. 다시 말해, 피팅부(204)는 사용자로부터 선택된 포인트를 기준으로 프리미티브로 형성될 수 없는 포인트와의 거리 차이를 이용하여 아웃라이어를 제거할 수 있다.
또한, 피팅부(204)는 파라미터를 기초하여 포인트들 간의 각도(normal vector) 차이를 이용하여 아웃라이어를 제거할 수 있다. 보다 구체적으로 피팅부(204)는 사용자가 피팅하고자 하는 프티리미브에서 선택된 하나의 포인트를 시점으로 선택된 포인트에서의 법선 상의 각도를 구할 수 있다. 피팅부(204)는 사용자로부터 선택된 포인트를 이용하여 추출한 프리미티브에서 선택된 하나의 포인트를 시점으로 선택된 포인트에서의 법선 상의 각도를 구할 수 있다. 그리고, 피팅부(204)는 사용자가 피팅하고자 하는 프티리미브의 각도와 포인트를 이용하여 추출한 프리미티브의 각도의 차이를 이용하여 아웃라이어를 제거할 수 있다.
피팅부(204)는 포인트들 간의 거리 차이 및 각도 차이를 이용하여 아웃라이어를 제거함으로써 아웃라이어가 제거된 인라이어의 포인트를 포함하는 프리미티비를 추출할 수 있다.
프리미티브 피팅부(204)는 아웃라이어가 제거된 인라이어의 포인트를 포함하는 영역의 면적과 인라이어에 최적화 된 프리미티브의 면적을 비교하여, 프리미티브를 피팅할 수 있다. 이 때, 아웃라이어가 제거된 포인트를 포함하는 영역의 면적은, 포인트들을 연결한 메쉬를 구성하는 삼각형의 면적의 합으로서 결정될 수 있다.
구체적으로, 최적화 된 프리미티브의 면적과 영역의 면적의 차이가 미리 설정된 면적의 차이보다 큰 경우, 프리미티브 피팅부(204)는 정확한 프리미티브가 추출되지 않다고 판단하여, 새로운 프리미티브의 추출이 필요하다고 판단할 수 있다.
반대로, 프리미티브의 면적과 영역의 면적의 차이가 미리 설정된 면적의 차이보다 작은 경우, 프리미티브 피팅부(204)는 프리미티브가 정확하게 추출되었다고 판단하여, 추출된 프리미티브를 사용자에게 제공할 수 있다.
도 3을 참고하면, 프리미티브 피팅 장치(301)는 추출부(302), 판단부(303), 피팅부(304)를 포함할 수 있다.
추출부(302)는 포인트 클라우드를 사용자에게 제공할 수 있다. 이 때, 추출부(302)는 포인트 클라우드에 포함된 복수의 포인트들의 노멀 벡터을 추출하여 사용자에게 제공할 수 있다. 추출부(302)는 노멀 벡터의 포인트를 사용자에게 선택할 수 있도록 제공함으로써 불필요한 포인트를 최소화하여 사용자로부터 프리미티브의 포인트를 보다 정확하게 선택 받을 수 있다.
일례로, 추출부(302)는 포인트 클라우드에 포함된 복수의 포인트들의 노멀 벡터이 주어지지 않은 경우, 노멀 벡터 추정(normal estimation)을 수행하여 포인트의 노멀 벡터을 추출할 수 있다. 그리고, 추출부(302)는 추출된 포인트의 노멀 벡터을 데이터로 저장할 수 있다.
판단부(303)는 추출된 노멀 벡터에 대응하는 포인트들을 사용자에게 제공할 수 있다. 그리고, 판단부(303)는 프리미티브 피팅 장치에서 제공하는 인터페이스를 통해 계층적으로 포인트를 선택받을 수 있다. 또한, 판단부(303)는 사용자가 피팅하고자 하는 프리미티브를 인터페이스를 통해 선택받을 수 있다. 그리고, 판단부(303)는 선택된 프리미티브에 대응되는 프리미티브를 판단할 수 있다.
피팅부(304)는 포인트 및 프리미티브를 이용하여 상기 포인트에 대응되도록 프리미티브를 피팅할 수 있다. 피팅부(304)는 보다 정확하게 프리미티브를 피팅하기 위하여 포인트들 간의 거리 차이와 각도 차이를 이용하여 아웃라이어를 제거할 수 있다. 그리고, 피팅부(304)는 아웃라이어가 제거되고, 인라이어의 포인트를 포함하는 프리미티브의 면적과 인라이어에 최적화 된 프리미티브를 비교하여 면적의 차이를 판단할 수 있다. 피팅부(304)는 면적의 차이가 임계치보다 큰 작은 경우, 프리미티브를 피팅할 수 있다.
도 4는 일실시예에 따른 각도 차이를 이용하여 아웃라이어를 제거하는 구성을 도시한 도면이다.
도 4를 참고하면, 프리미티브 피팅 장치는 사용자로부터 선택되어 식별된 프리미티브의 법선 상의 각도와 인라이어의 포인트를 포함하는 프리미티브의 법선 상의 각도를 구할 수 있다.
구체적으로 프리미티브 피팅 장치는 사용자로부터 선택되어 식별된 프리미티브(401)와 에서 하나의 포인트를 선택할 수 있다. 그리고, 프리미티브 피팅 장치는 선택된 포인트를 시점으로 포인트에서의 법선 상의 각도를 구할 수 있다. 또한, 프리미티브 피팅 장치는 사용자로부터 선택된 포인트를 기초하여 추출한 프리미티브(402)에서 하나의 포인트를 선택할 수 있다. 그리고, 프리미티브 피팅 장치는 선택된 포인트를 시점으로 포인트에서의 법선 상의 각도를 구할 수 있다.
도 5는 일실시예에 따른 프리미티브의 면적을 비교하는 도면이다.
도 5를 참고하면, 프리미티브 피팅 장치는 식별된 프리미티브의 면적(501)과 상기 인라이어의 포인트를 포함하는 프리미티브의 면적(502)을 비교할 수 있다. 프리미티브 피팅 장치는 식별된 프리미티브의 면적(501)과 상기 인라이어의 포인트를 포함하는 프리미티브의 면적(502)을, 면적의 차이를 판단할 수 있다.
프리미티브 피팅 장치는 면적의 차이를 최소화함으로써, 사용자가 원하는 프리미티브에 대응하여 보다 정확한 프리미티브를 피팅할 수 있다.
도 6는 일실시예에 따른 프리미티브가 수렴하는 경우를 도시한 도면이다.
도 6을 참고하면, 프리미티브 피팅 장치는 식별된 프리미티브와 인라이어의 포인트를 포함하여 추출된 프리미티브를 비교할 수 있다. 식별된 프리미티브는 식별한 프리미티브에 대응하여 생성된 프리미티브 일 수 있다. 추출된 프리미티브는 RANSAC 알고리즘을 통해 아웃라이어가 제거된 프리미티브일 수 있다.
이 때, 식별된 프리미티브와 추출된 프리미티브는 각 포인트마다 거리 차이와 각도 차이가 거의 없을 수 있다. 그래서, 추출한 프리미티브는 식별된 프리미티브의 부분에 속할 수 있다.
이러한 경우, 프리미티브 피팅 장치는 거리 차이와 각도 차이가 거의 없기 때문에 사용자가 원하는 프리미티브가 아닌 아님에도 불구하고, 추출된 프리미티브를 피팅할 수 있다. 따라서, 프리미티브 피팅 장치는 RANSAC 알고리즘을 통한 거리 차이, 각도 차이, 면적 차이를 고려함으로써, 위에서 언급한 상황에 따른 프리미티브의 피팅이 발생하지 않고, 사용자가 원하는 정확한 프리미티브를 피팅할 수 있다.
도 7은 일실시예에 따른 프리미티브를 피팅하는 세부적인 구성을 도시한 도면이다.
단계(701)에서 프리미티브 피팅 장치는 사용자로부터 RANSAC 알고리즘의 파라미터에 대한 설정 값을 입력 받을 수 있다.
단계(702)에서 프리미티브 피팅 장치는 설정된 파라미터에 대응하여 랜덤으로 임의의 포인트를 선택할 수 있다. 이 때, 임의의 포인트는 사용자로부터 선택받은 포인트 중 하나일 수 있다.
단계(703)에서 프리미티브 피팅 장치는 선택된 임의의 포인트를 기준으로 식별된 프리미티브에 따른 프리미티브의 파라미터를 추출할 수 있다. 이 때, 프리미티브의 파라미터는 설정된 파라미터에 따라 추출할 수 있다. 그리고, 프리미티브의 파라미터는 프리미티브의 변수를 의미할 수 있다. 프리미티브 피팅 장치는 error function으로 거리 차이와 각도 차이를 이용할 수 있다.
단계(704)에서 프리미티브 피팅 장치는 error function으로 거리 차이와 각도 차이에 따른 결과에 대응하여 아웃라이어를 제거할 수 있다.
단계(705)에서 프리미티브 피팅 장치는 아웃라이어가 제거된 인라이어의 포인트를 메시화할 수 있다. 그리고, 프리미티브 피팅 장치는 메시화 된 영역의 면적을 구할 수 있다.
단계(706)에서 프리미티브 피팅 장치는 아웃라이어가 제거된 인라이어에 최적화 된 프리미티브의 면적을 구할 수 있다.
단계(707)에서 프리미티브 피팅 장치는 인라이어의 포인트를 메시화한 면적과 인라이어와 최적화된 프리미티브의 면적을 비교할 수 있다. 그리고, 프리미티브 피팅 장치는 인라이어의 포인트를 메시화한 면적과 인라이어와 최적화된 프리미티브의 면적의 면적 비율에 차이가 임계치보다 큰지 여부를 판단할 수 있다.
그리고, 프리미티브 피팅 장치는 면적 비율의 차이가 임계치보다 큰 경우, 단계(702)에 따라 사용자로부터 선택된 포인트 중 랜덤으로 새로운 임의의 점을 선택할 수 있다.
단계(708)에서 프리미티브 피팅 장치는 RANSAC 알고리즘의 반복 여부를 확인할 수 있다. 프리미티브 피팅 장치는 RANSAC 알고리즘이 반복되는 경우, 단계(702)에 따라 사용자로부터 선택된 포인트 중 랜덤으로 새로운 임의의 점을 선택할 수 있다.
단계(709)에서 프리미티브 피팅 장치는 프리미티브를 피팅할 수 있다.
도 8을 일실시예에 따른 프리미티브 피팅 방법을 도시한 도면이다.
단계(801)에서 프리미티브 피팅 장치는 포인트 클라우드를 입력 받을 수 있다.
단계(802)에서 프리미티브 피팅 장치는 포인트 클라우드에 대한 포인트의 노멀 벡터이 존재하는지 여부를 판단할 수 있다.
단계(803)에서 프리미티브 피팅 장치는 포인트의 노멀 벡터이 존재하지 않는 경우, 포인트의 노멀 벡터을 추출할 수 있다. 그리고, 프리미티브 피팅 장치는 추출한 포인트의 노멀 벡터을 추출할 수 있다.
단계(804)에서 프리미티브 피팅 장치는 사용자로부터 프리미티브의 피팅을 위한 포인트를 선택받을 수 있다. 이 때, 프리미티브 피팅 장치는 계층적인 트리 구조의 노드를 이용하여 계층적으로 포인트를 선택 받을 수 있다. 그리고, 프리미티브 피팅 장치는 사용자에게 제공되는 인터페이스를 이용하여 사용자가 원하는 포인트를 선택받을 수 있다.
단계(805)에서 프리미티브 피팅 장치는 사용자로부터 사용자가 피팅하고자 하는 프리미티브를 선택 받을 수 있다.
단계(806)에서 프리미티브 피팅 장치는 사용자로부터 선택 받은 포인트 및 식별된 프리미티브에 대응하여 포인트에 따른 프리미티브를 피팅 할 수 있다. 프리미티브 피팅 장치는 RANSAC 알고리즘의 error function에 의한 거리 차이와 각도 차이를 이용하여 아웃라이어를 제거할 수 있다.
프리미티브 피팅 장치는 피팅부(204)는 식별된 프리미티브의 예상 범위와 포인트에 따른 프리미티브의 범위 사이의 거리 차이를 이용하여 아웃라이어를 제거할 수 있다. 그리고, 프리미티브 피팅 장치는 식별된 프리미티브의 예상 범위와 포인트에 따른 프리미티브의 범위 사이의 각도차이를 이용하여 아웃라이어를 제거할 수 있다.
그리고, 프리미티브 피팅 장치는 아웃라이어가 제거되어 인라이어에 최적화 된 프리미티브의 면적과 상기 인라이어의 포인트를 메시화한 영역의 면적을 비교할 수 있다. 프리미티브 피팅 장치는 미리 설정된 면적 비율의 차이에 대한 임계치를 기준으로 프리미티브의 면적과 인라이어를 메시화한 영역의 면적에 대한 면적 비율에 따라 프리미티브를 피팅할 수 있다.
본 발명의 실시 예에 따른 방법들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
101: 프리미티브 피팅 장치.
102: 사용자
103: 포인트
104: 프리미티브

Claims (20)

  1. 사용자로부터 포인트 클라우드(point cloud) 중 프리미티브의 피팅을 위한 포인트를 선택받는 선택부;
    상기 사용자로부터 상기 사용자가 피팅하고자 하는 상기 프리미티브를 선택 받아, 상기 선택된 프리미티브를 식별하는 식별부; 및
    상기 포인트 및 프리미티브를 이용하여, 상기 포인트에 대응되도록 프리미티브를 피팅하는 피팅부
    를 포함하고,
    상기 피팅부는,
    상기 식별된 프리미티브에서 선택된 포인트의 법선 상의 각도와 상기 포인트를 기초하여 추출된 프리미티브에서 선택된 포인트의 법선 상의 각도 간의 각도 차이를 이용하여 아웃라이어(outlier)를 제거하는 프리미티브 피팅 장치.
  2. 제1항에 있어서,
    상기 선택부는,
    상기 사용자에게 상기 포인트를 선택할 수 있는 인터페이스(User Interface)를 제공하여, 상기 포인트를 선택받는 프리미티브 피팅 장치.
  3. 제1항에 있어서,
    상기 선택부는,
    사용자에게 제공하기 위해 추출한 포인트 클라우드의 노멀 벡터를 상기 포인트로 제공하여, 상기 포인트를 선택받는 프리미티브 피팅 장치.
  4. 사용자로부터 포인트 클라우드(point cloud) 중 프리미티브의 피팅을 위한 포인트를 선택받는 선택부;
    상기 사용자로부터 상기 사용자가 피팅하고자 하는 상기 프리미티브를 선택 받아, 상기 선택된 프리미티브를 식별하는 식별부; 및
    상기 포인트 및 프리미티브를 이용하여, 상기 포인트에 대응되도록 프리미티브를 피팅하는 피팅부
    를 포함하고,
    상기 선택부는,
    상기 사용자로부터 계층적인 트리 구조의 노드를 통해 계층적으로 상기 포인트를 선택받는 프리미티브 피팅 장치.
  5. 제1항에 있어서,
    상기 식별부는,
    3차원으로 표현되는 오브젝트에 대한 프리미티브를 식별하는 프리미티브 피팅 장치.
  6. 사용자로부터 포인트 클라우드(point cloud) 중 프리미티브의 피팅을 위한 포인트를 선택받는 선택부;
    상기 사용자로부터 상기 사용자가 피팅하고자 하는 상기 프리미티브를 선택 받아, 상기 선택된 프리미티브를 식별하는 식별부; 및
    상기 포인트 및 프리미티브를 이용하여, 상기 포인트에 대응되도록 프리미티브를 피팅하는 피팅부
    를 포함하고,
    상기 피팅부는,
    상기 사용자로부터 선택된 포인트와 인접하게 위치한 포인트들 간의 거리(distance) 차이를 이용하여 아웃라이어(outlier)를 제거하는 프리미티브 피팅 장치.
  7. 삭제
  8. 제1항에 있어서,
    상기 프리미티브 피팅부는,
    상기 아웃라이어가 제거되어 인라이어(inlier)에 최적화 된 프리미티브의 면적과 상기 인라이어의 포인트를 메시화한 영역의 면적을 비교하여 면적 비율에 따라 상기 프리미티브를 피팅하는 프리미티브 피팅 장치.
  9. 제8항에 있어서,
    상기 프리미티브 피팅부는,
    미리 설정된 면적 비율의 차이에 대한 임계치를 기준으로 상기 프리미티브의 면적과 인라이어를 메시화한 영역의 면적을 비교하는 프리미티브 피팅 장치.
  10. 삭제
  11. 사용자로부터 포인트 클라우드(point cloud) 중 프리미티브의 피팅을 위한 포인트를 선택받는 단계;
    상기 사용자로부터 상기 사용자가 피팅하고자 하는 상기 프리미티브를 선택 받아, 상기 선택된 프리미티브를 식별하는 단계; 및
    상기 포인트 및 프리미티브를 이용하여, 상기 포인트에 대응되도록 프리미티브를 피팅하는 단계
    를 포함하고,
    상기 프리미티브를 피팅하는 단계는,
    상기 식별된 프리미티브에서 선택된 포인트의 법선 상의 각도와 상기 포인트를 기초하여 추출된 프리미티브에서 선택된 포인트의 법선 상의 각도 간의 각도 차이를 이용하여 아웃라이어(outlier)를 제거하는 프리미티브 피팅 방법.
  12. 제11항에 있어서,
    상기 포인트를 선택받는 단계는,
    상기 사용자에게 상기 포인트를 선택할 수 있는 인터페이스(User Interface)를 제공하여, 상기 포인트를 선택받는 프리미티브 피팅 방법.
  13. 제11항에 있어서,
    상기 포인트를 선택받는 단계는,
    사용자에게 제공하기 위해 추출한 포인트 클라우드의 노멀 벡터를 상기 포인트로 제공하여, 상기 포인트를 선택받는 프리미티브 피팅 방법.
  14. 사용자로부터 포인트 클라우드(point cloud) 중 프리미티브의 피팅을 위한 포인트를 선택받는 단계;
    상기 사용자로부터 상기 사용자가 피팅하고자 하는 상기 프리미티브를 선택 받아, 상기 선택된 프리미티브를 식별하는 단계; 및
    상기 포인트 및 프리미티브를 이용하여, 상기 포인트에 대응되도록 프리미티브를 피팅하는 단계
    를 포함하고,
    상기 포인트를 선택받는 단계는,
    상기 사용자로부터 계층적인 트리 구조의 노드를 통해 계층적으로 상기 포인트를 선택받는 프리미티브 피팅 방법.
  15. 제11항에 있어서,
    상기 선택된 프리미티브를 식별하는 단계는,
    3차원으로 표현되는 오브젝트에 대한 프리미티브를 식별하는 프리미티브 피팅 방법.
  16. 사용자로부터 포인트 클라우드(point cloud) 중 프리미티브의 피팅을 위한 포인트를 선택받는 단계;
    상기 사용자로부터 상기 사용자가 피팅하고자 하는 상기 프리미티브를 선택 받아, 상기 선택된 프리미티브를 식별하는 단계; 및
    상기 포인트 및 프리미티브를 이용하여, 상기 포인트에 대응되도록 프리미티브를 피팅하는 단계
    를 포함하고,
    상기 프리미티브를 피팅하는 단계는,
    상기 사용자로부터 선택된 포인트와 인접하게 위치한 포인트들 간의 거리(distance) 차이를 이용하여 아웃라이어(outlier)를 제거하는 프리미티브 피팅 방법.
  17. 삭제
  18. 제11항에 있어서,
    상기 프리미티브를 피팅하는 단계는,
    상기 아웃라이어가 제거되어 인라이어(inlier)에 최적화 된 프리미티브의 면적과 상기 인라이어의 포인트를 메시화한 영역의 면적을 비교하여 면적 비율에 따라 상기 프리미티브를 피팅하는 프리미티브 피팅 방법.
  19. 제18항에 있어서,
    상기 프리미티브를 피팅하는 단계는,
    미리 설정된 면적 비율의 차이에 대한 임계치를 기준으로 상기 프리미티브의 면적과 인라이어를 메시화한 영역의 면적을 비교하는 프리미티브 피팅 방법.
  20. 삭제
KR1020130021899A 2013-02-28 2013-02-28 포인트 클라우드를 이용한 프리미티브 피팅 장치 및 방법 KR102060758B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020130021899A KR102060758B1 (ko) 2013-02-28 2013-02-28 포인트 클라우드를 이용한 프리미티브 피팅 장치 및 방법
US14/193,313 US9710963B2 (en) 2013-02-28 2014-02-28 Primitive fitting apparatus and method using point cloud

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130021899A KR102060758B1 (ko) 2013-02-28 2013-02-28 포인트 클라우드를 이용한 프리미티브 피팅 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20140108792A KR20140108792A (ko) 2014-09-15
KR102060758B1 true KR102060758B1 (ko) 2019-12-31

Family

ID=51389607

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130021899A KR102060758B1 (ko) 2013-02-28 2013-02-28 포인트 클라우드를 이용한 프리미티브 피팅 장치 및 방법

Country Status (2)

Country Link
US (1) US9710963B2 (ko)
KR (1) KR102060758B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101708042B1 (ko) * 2015-12-01 2017-02-21 중앙대학교 산학협력단 포인트 클라우드를 이용한 ransac 알고리즘 기반의 실린더 추정 장치 및 방법
CN112356019B (zh) * 2020-08-06 2024-06-14 武汉科技大学 一种用于灵巧手抓取的目标物体形体分析方法及装置
WO2022050650A1 (ko) * 2020-09-03 2022-03-10 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6771840B1 (en) * 2000-05-18 2004-08-03 Leica Geosystems Hds, Inc. Apparatus and method for identifying the points that lie on a surface of interest
US7940279B2 (en) 2007-03-27 2011-05-10 Utah State University System and method for rendering of texel imagery
US8456471B2 (en) * 2008-08-26 2013-06-04 Leica Geosystems Point-cloud clip filter
US20110304619A1 (en) 2010-06-10 2011-12-15 Autodesk, Inc. Primitive quadric surface extraction from unorganized point cloud data
JP5343042B2 (ja) * 2010-06-25 2013-11-13 株式会社トプコン 点群データ処理装置および点群データ処理プログラム
US20150172628A1 (en) * 2011-06-30 2015-06-18 Google Inc. Altering Automatically-Generated Three-Dimensional Models Using Photogrammetry
US20130268862A1 (en) * 2012-03-07 2013-10-10 Willow Garage Inc. Point cloud data hierarchy
EP2720171B1 (en) * 2012-10-12 2015-04-08 MVTec Software GmbH Recognition and pose determination of 3D objects in multimodal scenes

Also Published As

Publication number Publication date
US20140245231A1 (en) 2014-08-28
KR20140108792A (ko) 2014-09-15
US9710963B2 (en) 2017-07-18

Similar Documents

Publication Publication Date Title
KR102318023B1 (ko) 에지를 이용한 3차원 모델 생성
EP3284063B1 (en) Mesh simplification by 3d model reconstruction
US10504253B2 (en) Conservative cell and portal graph generation
JP6261489B2 (ja) 3次元点群から平面を抽出する、方法、画像処理装置およびプログラムを記憶した非一次的なコンピュータ可読媒体
JP6471448B2 (ja) 視差深度画像のノイズ識別方法及びノイズ識別装置
US9613457B2 (en) Multi-primitive fitting device and operation method thereof
US20150109290A1 (en) Device and method for removing noise points in point clouds
US20160196655A1 (en) Photograph localization in a three-dimensional model
KR101909544B1 (ko) 평면 검출 장치 및 방법
KR20170091496A (ko) 양안 시차 영상의 처리 방법 및 장치
KR102215101B1 (ko) 이미지로부터 획득한 객체의 특징을 이용한 포인트 클라우드 생성 장치 및 방법
US10708505B2 (en) Image processing apparatus, method, and storage medium
KR102060758B1 (ko) 포인트 클라우드를 이용한 프리미티브 피팅 장치 및 방법
KR20130118105A (ko) 평면 기반의 3차원 공간 표현 방법 및 장치
US20210166476A1 (en) Automatic 3D Image Reconstruction Process from Real-World 2D Images
Zhao et al. Optimization algorithm for point cloud quality enhancement based on statistical filtering
JP6906303B2 (ja) 密度ベースのグラフィカルマッピング
KR102144198B1 (ko) 보로노이 테셀레이션 및 k-최근접 이웃 알고리즘을 이용한 포인트 클라우드 재추출 방법 및 시스템
US9454554B1 (en) View dependent query of multi-resolution clustered 3D dataset
CN108492326A (zh) 分辨率从低到高的逐渐精细化的立体匹配方法及系统
JP6156922B2 (ja) 三次元データ生成装置、三次元データ生成方法、及びプログラム
CN109461198B (zh) 网格模型的处理方法及装置
KR102240570B1 (ko) 신장 트리 생성 방법 및 장치,스테레오 매칭 방법 및 장치,업 샘플링 방법 및 장치,및 기준 픽셀 생성 방법 및 장치
KR102633159B1 (ko) 이미지 프로세싱을 이용한 3차원 모델 복원 장치 및 방법
KR101530267B1 (ko) Mep 파이프 객체 역설계 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant