KR20220065234A - Apparatus and method for estimating of 6d pose - Google Patents

Apparatus and method for estimating of 6d pose Download PDF

Info

Publication number
KR20220065234A
KR20220065234A KR1020200151530A KR20200151530A KR20220065234A KR 20220065234 A KR20220065234 A KR 20220065234A KR 1020200151530 A KR1020200151530 A KR 1020200151530A KR 20200151530 A KR20200151530 A KR 20200151530A KR 20220065234 A KR20220065234 A KR 20220065234A
Authority
KR
South Korea
Prior art keywords
model
pose
pose estimation
deep learning
image
Prior art date
Application number
KR1020200151530A
Other languages
Korean (ko)
Other versions
KR102494659B1 (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 KR1020200151530A priority Critical patent/KR102494659B1/en
Publication of KR20220065234A publication Critical patent/KR20220065234A/en
Application granted granted Critical
Publication of KR102494659B1 publication Critical patent/KR102494659B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/768Arrangements for image or video recognition or understanding using pattern recognition or machine learning using context analysis, e.g. recognition aided by known co-occurring patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Medical Informatics (AREA)
  • Geometry (AREA)
  • Databases & Information Systems (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

The present invention relates to a 6D pose estimation apparatus capable of efficiently estimating the pose of an object. According to the present invention, an apparatus for estimating an object pose by using unsupervised learning comprises: a feature extraction unit including an external feature extraction unit inputting RGB data of an image into a first deep learning model to extract external features and a geometric feature extraction unit inputting depth data of the image to a second deep learning model to extract geometric features; a combination unit combining extracted external features and geometric features to generate a feature map for the image; and an object pose estimation unit estimating a 6D pose of an object corresponding to the image on the basis of the generated feature map. The second deep learning model performs transfer learning on the basis of weights of a network learned by a user-defined problem (Pretext task).

Description

6D 포즈 추정 장치 및 방법{APPARATUS AND METHOD FOR ESTIMATING OF 6D POSE}6D pose estimation apparatus and method {APPARATUS AND METHOD FOR ESTIMATING OF 6D POSE}

본 발명은 6D 포즈 추정 장치 및 방법에 관한 것이다.The present invention relates to a 6D pose estimation apparatus and method.

일반적으로, 객체의 포즈 추정은 레이블이 포함된 학습 데이터를 이용하여 학습된 딥러닝 모델을 이용한다. 즉, 학습된 딥러닝 모델에 객체의 3D 데이터를 입력하여 객체의 포즈를 추정할 수 있다. In general, the pose estimation of an object uses a deep learning model trained using training data including labels. That is, the pose of the object can be estimated by inputting the 3D data of the object into the learned deep learning model.

6D (x, y, z, roll, pitch, yaw) 포즈 추정을 위한 딥러닝 모델을 학습시키는 데에는 양질의 데이터가 매우 중요하다. 이때, 대량의 데이터 셋을 만들기 위해서는 임의 데이터를 생성하여야 하기 때문에, 실제(real) 환경에서의 성능이 떨어질 수 있다. 특히, 3D 데이터를 이용하여 6자유도(6DOF: Six degrees of freedom)의 물체를 다루기 위한 데이터 셋의 제작은 매우 까다롭고, 2D에 비해 시간과 비용이 훨씬 많이 소요된다. Good quality data is very important for training deep learning models for 6D (x, y, z, roll, pitch, yaw) pose estimation. In this case, since random data must be generated in order to create a large data set, performance in a real environment may be degraded. In particular, it is very difficult to prepare a data set for handling objects with six degrees of freedom (6DOF) using 3D data, and it takes much more time and cost compared to 2D data.

비지도 학습(Unsupervised Learning)은 기계 학습의 일종으로 데이터가 어떻게 구성되었는지를 알아내는 문제의 범주에 속하며, 지도 학습(Supervised Learning) 또는 강화 학습(Reinforcement Learning)과는 달리, 입력 값만 있는 훈련 데이터를 이용하여 입력들의 규칙성을 찾는 학습 방법이다.Unsupervised learning is a type of machine learning that belongs to the category of problems of figuring out how data is structured. Unlike supervised learning or reinforcement learning, training data with only input values is It is a learning method to find regularity of inputs using

비지도 학습 중 자기 지도 학습(Self-Supervised Learning)은 비지도 학습의 일종으로 레이블이 없는 데이터(Unlabeled data)를 이용하여 사용자가 정의한 문제(Pretext task)를 학습한 네트워크를 실질적으로 풀고자 하는 문제(downstream task)로 전이 학습(transfer learning)하는 학습 방법이다.Among unsupervised learning, self-supervised learning is a type of unsupervised learning, and it is a problem to actually solve a network that has learned a user-defined problem (pretext task) using unlabeled data. It is a learning method that uses transfer learning as a downstream task.

한국등록특허공보 제1994316호 (2019. 6. 24. 등록)Korean Patent Publication No. 1994316 (Registered on June 24, 2019)

본 발명은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 임의 데이터에 기초하여 학습된 딥러닝 모델을 사용하여 객체의 포즈를 추정하는 경우 발생하게 되는 성능 저하의 문제를 해결할 수 있는 6D 포즈 추정 장치를 제공하고자 한다. The present invention is to solve the problems of the prior art described above, and a 6D pose estimation apparatus capable of solving the problem of performance degradation that occurs when estimating the pose of an object using a deep learning model learned based on arbitrary data. would like to provide

또한, 레이블이 없는 데이터 또는 소량의 레이블을 포함하고 있는 데이터 만으로도 효율적으로 객체 포즈를 추정할 수 있는 6D 포즈 추정 장치를 제공하고자 한다. Another object of the present invention is to provide a 6D pose estimation apparatus capable of estimating an object pose efficiently using only unlabeled data or data containing a small amount of labels.

다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.However, the technical problems to be achieved by the present embodiment are not limited to the technical problems described above, and other technical problems may exist.

상술한 기술적 과제를 달성하기 위한 수단으로서, 본 발명의 일 실시예는, 비지도 학습(Unsupervised Learning)을 이용하여 객체 포즈를 추정하는 장치에 있어서, 이미지에 대한 RGB 데이터를 제 1 딥러닝 모델에 입력하여 외형 특징을 추출하는 외형 특징 추출부와, 상기 이미지에 대한 깊이(depth) 데이터를 제 2 딥러닝 모델에 입력하여 기하학 특징을 추출하는 기하학 특징 추출부를 포함하는 특징 추출부; 상기 추출된 외형 특징 및 기하학 특징을 결합하여 상기 이미지에 대한 특징맵(feature map)을 생성하는 결합부; 및, 상기 생성된 특징맵에 기초하여 상기 이미지에 대응하는 객체에 대한 6D 포즈를 추정하는 객체 포즈 추정부를 포함하고, 상기 제 2 딥러닝 모델은 사용자 정의 문제(Pretext task)에 의해 학습된 네트워크의 가중치에 기초하여 전이 학습된 것인, 6D 포즈 추정 장치를 제공 할 수 있다. As a means for achieving the above-described technical problem, an embodiment of the present invention provides an apparatus for estimating an object pose using unsupervised learning, by applying RGB data for an image to a first deep learning model. a feature extracting unit comprising: an appearance feature extracting unit for inputting and extracting external features; and a geometric feature extracting unit for extracting geometric features by inputting depth data for the image into a second deep learning model; a combining unit for generating a feature map for the image by combining the extracted external features and geometric features; and an object pose estimator for estimating a 6D pose for the object corresponding to the image based on the generated feature map, wherein the second deep learning model is a network learned by a user-defined problem (Pretext task). It is possible to provide an apparatus for estimating a 6D pose, which is transfer-learned based on weights.

본 발명의 다른 실시예는, 비지도 학습(Unsupervised Learning)을 이용하여 객체 포즈를 추정하는 방법에 있어서, 이미지에 대한 RGB 데이터를 제 1 딥러닝 모델에 입력하여 외형 특징을 추출하는 단계와, 상기 이미지에 대한 깊이(depth) 데이터를 제 2 딥러닝 모델에 입력하여 기하학 특징을 추출하는 단계를 포함하는 특징 추출 단계; 상기 추출된 외형 특징 및 기하학 특징을 결합하여 상기 이미지에 대한 특징맵(feature map)을 생성하는 단계; 및, 상기 생성된 특징맵에 기초하여 상기 이미지에 대응하는 객체에 대한 6D 포즈를 추정하는 단계를 포함하고, 상기 제 2 딥러닝 모델은 사용자 정의 문제(Pretext task)에 의해 학습된 네트워크의 가중치에 기초하여 전이 학습된 것인, 6D 포즈 추정 방법을 제공할 수 있다. Another embodiment of the present invention provides a method for estimating an object pose using unsupervised learning, the method comprising: inputting RGB data for an image into a first deep learning model to extract appearance features; A feature extraction step comprising extracting geometric features by inputting depth data for an image into a second deep learning model; generating a feature map for the image by combining the extracted external features and geometric features; and estimating a 6D pose for the object corresponding to the image based on the generated feature map, wherein the second deep learning model is based on the weight of the network learned by a user-defined problem (Pretext task). It is possible to provide a 6D pose estimation method, which is transfer learned based on the

상술한 과제 해결 수단은 단지 예시적인 것으로서, 본 발명을 제한하려는 의도로 해석되지 않아야 한다. 상술한 예시적인 실시예 외에도, 도면 및 발명의 상세한 설명에 기재된 추가적인 실시예가 존재할 수 있다.The above-described problem solving means are merely exemplary, and should not be construed as limiting the present invention. In addition to the exemplary embodiments described above, there may be additional embodiments described in the drawings and detailed description.

전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 레이블이 없는 데이터 또는 소량의 레이블을 포함하고 있는 데이터 만으로도 효율적으로 객체의 포즈를 추정할 수 있는 6D 포즈 추정 장치를 제공할 수 있다. According to any one of the above-described problem solving means of the present invention, it is possible to provide a 6D pose estimation apparatus capable of estimating the pose of an object efficiently with only data without labels or data including a small amount of labels.

또한, 추정된 객체의 6D 정보를 사용하여 로봇의 Pick & Place 작업뿐만 아니라 조립을 포함한 복잡한 작업도 수행할 수 있다.In addition, using the 6D information of the estimated object, it is possible to perform complex tasks including assembly as well as pick & place tasks of the robot.

도 1은 본 발명의 일 실시예에 따른 6D 포즈 추정 장치의 블록도이다.
도 2는 본 발명의 일 실시예에 따른 6D 포즈 추정 장치의 구성을 설명하기 위한 예시적인 도면이다.
도 3은 본 발명의 일 실시예에 따른 트레이 모델을 설명하기 위한 예시적인 도면이다.
도 4는 본 발명의 일 실시예에 따른 사용자 정의 문제(Pretext task) 수행부의 노이즈부를 설명하기 위한 예시적인 도면이다.
도 5는 본 발명의 일 실시예에 따른 6D 포즈 추정 방법의 순서도이다.
1 is a block diagram of a 6D pose estimation apparatus according to an embodiment of the present invention.
2 is an exemplary diagram for explaining the configuration of a 6D pose estimation apparatus according to an embodiment of the present invention.
3 is an exemplary view for explaining a tray model according to an embodiment of the present invention.
4 is an exemplary diagram for explaining a noise unit of a user-defined problem (Pretext task) performing unit according to an embodiment of the present invention.
5 is a flowchart of a 6D pose estimation method according to an embodiment of the present invention.

아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those of ordinary skill in the art can easily implement them. However, the present invention may be embodied in several different forms and is not limited to the embodiments described herein. And in order to clearly explain the present invention in the drawings, parts irrelevant to the description are omitted, and similar reference numerals are attached to similar parts throughout the specification.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미하며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. Throughout the specification, when a part is "connected" with another part, this includes not only the case of being "directly connected" but also the case of being "electrically connected" with another element interposed therebetween. . In addition, when a part "includes" a certain component, it means that other components may be further included, rather than excluding other components, unless otherwise stated, and one or more other features However, it is to be understood that the existence or addition of numbers, steps, operations, components, parts, or combinations thereof is not precluded in advance.

본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1 개의 유닛이 2 개 이상의 하드웨어를 이용하여 실현되어도 되고, 2 개 이상의 유닛이 1 개의 하드웨어에 의해 실현되어도 된다.In this specification, a "part" includes a unit realized by hardware, a unit realized by software, and a unit realized using both. In addition, one unit may be implemented using two or more hardware, and two or more units may be implemented by one hardware.

본 명세서에 있어서 단말 또는 디바이스가 수행하는 것으로 기술된 동작이나 기능 중 일부는 해당 단말 또는 디바이스와 연결된 장치에서 대신 수행될 수도 있다. 이와 마찬가지로, 장치가 수행하는 것으로 기술된 동작이나 기능 중 일부도 해당 장치와 연결된 단말 또는 디바이스에서 수행될 수도 있다.Some of the operations or functions described as being performed by the terminal or device in this specification may be instead performed by an apparatus connected to the terminal or device. Likewise, some of the operations or functions described as being performed by the apparatus may also be performed in a terminal or device connected to the apparatus.

이하 첨부된 도면을 참고하여 본 발명의 일 실시예를 상세히 설명하기로 한다. Hereinafter, an embodiment of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 6D 포즈 추정 장치의 블록도이다. 도 1을 참조하면, 6D 포즈 추정 장치(100)는 특징 추출부(110), 결합부(120), 객체 포즈 추정부(130) 및 사용자 정의 문제(Pretext task) 수행부(140)를 포함할 수 있다. 1 is a block diagram of a 6D pose estimation apparatus according to an embodiment of the present invention. Referring to FIG. 1 , the 6D pose estimation apparatus 100 may include a feature extraction unit 110 , a combiner 120 , an object pose estimation unit 130 , and a user-defined problem (Pretext task) performing unit 140 . can

특징 추출부(110)는 외형 특징 추출부(111) 및 기하학 특징 추출부(112)를 포함할 수 있고, 객체 포즈 추정부(130)는 시맨틱 세그먼테이션 모듈(Semantic segmentation module, 131), 특징점 검출 모듈(Keypoint detection module, 132) 및 센터 투표 모듈(Center voting module, 133)을 포함할 수 있고, 사용자 정의 문제(Pretext task) 수행부(140)는 모델링부(141), 노이즈부(142) 및 학습부(143)를 포함할 수 있다. 다만 위 구성 요소들(110 내지 140)은 6D 포즈 추정 장치(100)에 의하여 제어될 수 있는 구성요소들을 예시적으로 도시한 것일 뿐이다. The feature extractor 110 may include an external feature extractor 111 and a geometric feature extractor 112 , and the object pose estimator 130 includes a semantic segmentation module 131 and a feature point detection module. (Keypoint detection module, 132) and may include a center voting module (Center voting module, 133), the user-defined problem (Pretext task) performing unit 140 is a modeling unit 141, a noise unit 142 and learning It may include a portion 143 . However, the above components 110 to 140 are merely illustrative of components that can be controlled by the 6D pose estimation apparatus 100 .

본 발명의 일 실시예에 따른 6D 포즈 추정 장치(100)는 레이블이 없는 데이터 또는 소량의 레이블을 포함하고 있는 데이터 만으로도 효율적으로 객체의 포즈를 추정할 수 있다. The apparatus 100 for estimating a 6D pose according to an embodiment of the present invention can efficiently estimate the pose of an object using only data without labels or data including a small amount of labels.

또한, 본 발명의 일 실시예에 따른 6D 포즈 추정 장치(100)는 추정된 객체의 6D 정보를 사용하여 로봇의 픽앤플레이스(Pick & Place) 작업뿐만 아니라 조립을 포함한 복잡한 작업도 수행할 수 있다.Also, the apparatus 100 for estimating a 6D pose according to an embodiment of the present invention may perform a complex operation including assembly as well as a pick and place operation of the robot using 6D information of the estimated object.

도 2는 본 발명의 일 실시예에 따른 6D 포즈 추정 장치의 구성을 설명하기 위한 예시적인 도면이다. 도 2를 참조하면, 특징 추출부(110)는 외형 특징 추출부(111)와 기하학 특징 추출부(112)를 포함할 수 있다. 2 is an exemplary diagram for explaining the configuration of a 6D pose estimation apparatus according to an embodiment of the present invention. Referring to FIG. 2 , the feature extracting unit 110 may include an external feature extracting unit 111 and a geometrical feature extracting unit 112 .

본 발명의 일 실시예에 따른 외형 특징 추출부(111)는 이미지에 대한 RGB 데이터(111a)를 제 1 딥러닝 모델(111b)에 입력하여 외형 특징을 추출할 수 있다. 여기서, 제 1 딥러닝 모델(111b)은 CNN(Convolutional Neural Network)일 수 있다. 예를 들어, 외형 특징 추출부(111)는 RGB 데이터(111a)를 입력 받아 CNN(111b)을 통해 이미지에 대한 외형 특징을 추출할 수 있다. The appearance feature extraction unit 111 according to an embodiment of the present invention may extract the appearance features by inputting the RGB data 111a for the image into the first deep learning model 111b. Here, the first deep learning model 111b may be a Convolutional Neural Network (CNN). For example, the appearance feature extraction unit 111 may receive the RGB data 111a and extract the appearance features of the image through the CNN 111b.

기하학 특징 추출부(112)는 이미지에 대한 깊이(depth) 데이터(112a)를 제 2 딥러닝 모델(112b)에 입력하여 기하학 특징을 추출할 수 있다. 여기서, 제 2 딥러닝 모델(112b)은 포인트넷(PointNet) 모델일 수 있다. 예를 들어, 기하학 특징 추출부(112)는 깊이 데이터(112a)를 입력 받아 제 2 딥러닝 모델(112b)을 통해 이미지에 대한 기하학 특징을 추출할 수 있다.The geometric feature extraction unit 112 may extract the geometric features by inputting the depth data 112a of the image into the second deep learning model 112b. Here, the second deep learning model 112b may be a PointNet model. For example, the geometric feature extraction unit 112 may receive the depth data 112a and extract the geometric features of the image through the second deep learning model 112b.

본 발명의 일 실시예에 따른 기하학 특징 추출부(112)는 제 2 딥러닝 모델(112b)의 가중치를 별도의 네트워크(143a)의 가중치로 전이 학습할 수 있다. 여기서, 네트워크(143a)는 비지도 학습의 일종인 자기 지도 학습(Self-Supervised Learning)을 통해 레이블이 없는 데이터를 이용하여 학습될 수 있다. 예를 들어, 네트워크(143a)는 사용자 정의 문제(Pretext task)에 의해 학습될 수 있다. 이와 같이, 자기 지도 학습으로서 사용자 정의 문제(Pretext task)를 사용하면 3D 데이터 자체에 대한 이해를 높일 수 있기 때문에, 6D 포즈 추정 시 실제 환경에 대한 성능을 향상시킬 수 있다. The geometric feature extraction unit 112 according to an embodiment of the present invention may transfer-learning the weight of the second deep learning model 112b to the weight of a separate network 143a. Here, the network 143a may be learned using unlabeled data through self-supervised learning, which is a type of unsupervised learning. For example, the network 143a may be trained by a user-defined task (Pretext task). As described above, if a user-defined problem (pretext task) is used as self-supervised learning, understanding of 3D data itself can be increased, so that performance for a real environment can be improved when estimating a 6D pose.

기하학 특징 추출부(112)는 사용자 정의 문제(Pretext task)에 의해 학습된 네트워크를 전이 학습한 제 2 딥러닝 모델(112b)을 이용하여 이미지에 대한 기하학 특징을 추출할 수 있다. The geometrical feature extraction unit 112 may extract geometrical features of the image using the second deep learning model 112b transferred by transfer-learning the network learned by the user-defined problem (Pretext task).

본 발명의 일 실시예에 따른 사용자 정의 문제(Pretext task) 수행부(140)는 네트워크(143a)에 기초하여 사용자 정의 문제(Pretext task)를 수행할 수 있다. 예를 들어, 사용자 정의 문제(Pretext task) 수행부(140)는 레이블이 없는 데이터, 즉, 사용자가 정의한 사용자 정의 문제(Pretext task, input)를 이용하여 네트워크(143a)를 학습시켜 네트워크(143a)가 데이터를 이해하고, 데이터에서 의미 있는 특징(output)을 추출하도록 반복 학습한다. The user-defined task (pretext task) performing unit 140 according to an embodiment of the present invention may perform a user-defined task (pretext task) based on the network 143a. For example, the user-defined task (Pretext task) performing unit 140 learns the network 143a using unlabeled data, that is, a user-defined user-defined user-defined task (Pretext task, input) to obtain the network 143a. Iteratively learns to understand the data and extract meaningful features (output) from the data.

사용자 정의 문제(Pretext task) 수행부(140)의 모델링부(141)는 복수의 홀(hole)을 포함하는 트레이(tray) 모델 및 상기 복수의 홀 중 적어도 하나의 홀에 삽입 가능한 객체 모델을 모델링할 수 있다.The modeling unit 141 of the user-defined problem (Pretext task) performing unit 140 models a tray model including a plurality of holes and an object model insertable into at least one of the plurality of holes. can do.

도 3은 본 발명의 일 실시예에 따른 트레이 모델을 설명하기 위한 예시적인 도면이다. 도 3을 참조하면, 트레이 모델(300)은 복수의 홀(310)을 포함할 수 있다. 트레이 모델(300)은 객체 모델로서 예를 들어, 전동 드릴, 니퍼, 스트리퍼, 드라이버, 렌치 및 스패너가 삽입 가능한 복수의 홀(310)을 포함할 수 있다. 3 is an exemplary view for explaining a tray model according to an embodiment of the present invention. Referring to FIG. 3 , the tray model 300 may include a plurality of holes 310 . The tray model 300 may include a plurality of holes 310 into which, for example, an electric drill, a nipper, a stripper, a screwdriver, a wrench, and a spanner can be inserted as an object model.

모델링부(141)는 다양한 객체 모델이 삽입 가능한 복수의 홀(310)을 포함하는 트레이 모델(300)을 모델링할 수 있다. 또한, 모델링부(141)는 복수의 홀(310) 중 적어도 하나의 홀에 삽입 가능한 복수의 객체 모델을 모델링할 수 있다.The modeling unit 141 may model the tray model 300 including a plurality of holes 310 into which various object models can be inserted. Also, the modeling unit 141 may model a plurality of object models that can be inserted into at least one of the plurality of holes 310 .

사용자 정의 문제(Pretext task) 수행부(140)에서 가상 환경의 노이즈가 전혀 없는 트레이 모델 및 객체 모델을 사용하여 네트워크(143a)를 학습하면, 객체 포즈 추정부(130)에서 노이즈가 포함되어 있는 실제 이미지에서 객체를 제대로 이해하지 못할 수 있다.When the user-defined problem (Pretext task) performing unit 140 learns the network 143a using the tray model and the object model without any noise in the virtual environment, the object pose estimator 130 may You may not understand the object properly in the image.

이러한 문제점을 해결하기 위해, 노이즈부(142)는 모델링된 트레이 모델 및 객체 모델의 포인트 클라우드에 노이즈를 추가할 수 있다. 예를 들어, 노이즈부(142)는 모델링된 트레이 모델 및 객체 모델의 포인트 클라우드에 노이즈를 추가함으로써, 객체 포즈 추정부(130)에서 실제 이미지에 대응하는 객체에 대한 6D 포즈를 추정하는데 객체에 대한 이해력을 향상시킬 수 있다. To solve this problem, the noise unit 142 may add noise to the point cloud of the modeled tray model and the object model. For example, the noise unit 142 adds noise to the point clouds of the modeled tray model and the object model, so that the object pose estimator 130 estimates a 6D pose for the object corresponding to the real image. can improve comprehension.

예를 들어, 노이즈부(142)는 사용하는 RGB-D 카메라의 깊이 품질 사양(depth quality specification)에 기초하여 랜덤으로 포인트 클라우드의 값을 변경시킬 수 있다. 예를 들어, 노이즈부(142)는 깊이 표준 편차(depth standard deviation) 범위 내에서 랜덤한 값을 원 데이터에서 더하거나 감할 수 있고, 비-필레이트(non-fill rate)의 비율만큼의 데이터는 NaN(not a number)으로 처리할 수 있다.For example, the noise unit 142 may randomly change the value of the point cloud based on the depth quality specification of the RGB-D camera used. For example, the noise unit 142 may add or subtract a random value from the original data within a depth standard deviation range, and data corresponding to a non-fill rate ratio is NaN. It can be treated as (not a number).

도 4는 본 발명의 일 실시예에 따른 사용자 정의 문제(Pretext task) 수행부의 노이즈부를 설명하기 위한 예시적인 도면이다. 도 4를 참조하면, RealSense TM D400 series 카메라를 예로 든 깊이 품질이다.4 is an exemplary diagram for explaining a noise unit of a user-defined problem (Pretext task) performing unit according to an embodiment of the present invention. Referring to FIG. 4 , the depth quality is taken using the RealSense TM D400 series camera as an example.

학습부(143)는 노이즈가 추가된 객체 모델을 회전시키면서 네트워크(143a)에 입력하여 객체 모델이 삽입되는 홀을 판별하도록 네트워크(143a)를 학습시킬 수 있다.The learning unit 143 may train the network 143a to determine a hole into which the object model is inserted by inputting it into the network 143a while rotating the object model to which the noise is added.

예를 들어, 학습부(143)는 노이즈가 추가되고 회전된 객체 모델을 네트워크(143a)에 입력할 수 있다. 학습부(143)는 네트워크(143a)에 객체의 포인트 클라우드가 입력되면 각 객체 모델에 대해 정답 확률을 출력할 수 있다. 학습부(143)는 출력된 정답 확률 중 가장 확률이 높은 객체 모델을 트레이 모델에 매칭시킬 수 있다. For example, the learning unit 143 may input a noise-added and rotated object model to the network 143a. When a point cloud of an object is input to the network 143a, the learning unit 143 may output a correct answer probability for each object model. The learning unit 143 may match the object model with the highest probability among the output correct probabilities to the tray model.

또한, 학습부(143)는 객체 모델과 트레이 모델 간의 겹치는 영역 및 빈 영역을 손실(LOSS)로 계산할 수 있다. 예를 들어, 학습부(143)에서 가장 정답 확률이 높은 객체 모델을 트레이 모델에 매칭시키는 경우, 노이즈를 추가하고 회전시키기 전의 객체 모델을 사용하여 트레이 모델과 객체 모델이 겹치는 영역뿐만 아니라 트레이 모델과 객체 모델 간의 빈 영역을 손실로 계산할 수 있다. Also, the learning unit 143 may calculate an overlapping area and an empty area between the object model and the tray model as a loss (LOSS). For example, when the learning unit 143 matches the object model with the highest probability of correct answer to the tray model, the tray model and the tray model as well as the area where the tray model and the object model overlap by using the object model before adding noise and rotating The blank area between object models can be calculated as loss.

다시 도 2를 참조하면, 특징 추출부(110)는 외형 특징 추출부(111)를 통해 추출한 이미지에 대한 외형 특징과 기하학 특징 추출부(112)를 통해 추출한 이미지에 대한 기하학 특징을 결합부(120)에 전달할 수 있다. Referring back to FIG. 2 , the feature extracting unit 110 combines the external features of the image extracted through the external feature extracting unit 111 and the geometrical features of the image extracted through the geometrical feature extracting unit 112 into the combining unit 120 . ) can be passed to

본 발명의 일 실시예에 따른 결합부(120)는 추출된 외형 특징 및 기하학 특징을 결합하여 이미지에 대한 특징맵(feature map)을 생성할 수 있다. 예를 들어, 결합부(120)는 외형 특징 추출부(111)에서 추출한 외형 특징과 기하학 특징 추출부(112)에서 추출한 기하학 특징을 결합하여, 해당 이미지에서 인식된 객체의 각 좌표(포인트)에 대해 결합된 특징을 가지는 특징맵을 생성할 수 있다.The combining unit 120 according to an embodiment of the present invention may generate a feature map for an image by combining the extracted external features and geometric features. For example, the combining unit 120 combines the external features extracted by the external feature extracting unit 111 and the geometric features extracted by the geometric feature extracting unit 112 to each coordinate (point) of the object recognized in the image. It is possible to create a feature map having the combined features for each.

본 발명의 일 실시예에 따른 객체 포즈 추정부(130)는 생성된 특징맵에 기초하여 이미지에 대응하는 객체에 대한 6D 포즈를 추정할 수 있다. 예를 들어, 객체 포즈 추정부(130)는 이미지에서 인식된 객체의 각 좌표에 대해 결합된 특징을 가지는 특징맵에 기초하여 객체에 대한 6D 포즈를 추정(136)할 수 있다.The object pose estimator 130 according to an embodiment of the present invention may estimate a 6D pose of an object corresponding to an image based on the generated feature map. For example, the object pose estimator 130 may estimate ( 136 ) a 6D pose of the object based on a feature map having a combined feature with respect to each coordinate of the object recognized in the image.

객체 포즈 추정부는(130) 시맨틱 세그먼테이션 모듈(131), 특징점 검출 모듈(132) 및 센터 투표 모듈(133)에 기초하여 객체에 대한 6D 포즈를 계산할 수 있다.The object pose estimator 130 may calculate a 6D pose for the object based on the semantic segmentation module 131 , the feature point detection module 132 , and the center voting module 133 .

예를 들어, 객체 포즈 추정부(130)는 특징맵을 입력 받아, 먼저, 시맨틱 세그먼테이션 모듈(131)을 통해 이미지 상에 포함되어 있는 하나 이상의 객체를 각각 구분할 수 있고, 다음으로, 특징점 검출 모듈(132)을 통해 구분된 각각의 객체 표면에 대한 3D 특징점(Keypoint)을 감지할 수 있고, 이후, 센터 투표 모듈(133)을 통해 객체의 중심 포인트를 검출하여, 객체에 대한 6D 포즈를 추정(136)할 수 있다.For example, the object pose estimator 130 may receive the feature map as input, and firstly classify one or more objects included in the image through the semantic segmentation module 131, respectively, and then, the feature point detection module ( It is possible to detect a 3D keypoint for each object surface divided through 132, and then, by detecting the center point of the object through the center voting module 133, a 6D pose for the object is estimated (136) )can do.

본 발명의 일 실시예에 따른 시맨틱 세그먼테이션 모듈(131)은 특징맵에 기초하여 이미지 상의 객체가 복수인 경우, 각각의 객체를 구분할 수 있다. The semantic segmentation module 131 according to an embodiment of the present invention may classify each object when there are a plurality of objects on the image based on the feature map.

특징점 검출 모듈(132)은 구분된 객체의 표면에 대한 3D 특징점을 감지할 수 있다. 예를 들어, 특징점 검출 모듈(132)은 구분된 객체의 표면에 대한 3D 특징점을 감지하고, 감지된 각 포인트마다 가시점(visible point)에서 대상 특징점(target keypoint)까지의 유클리드 변환 오프셋을 예측하고, 이를 다시 대상 특징점에 투표 및 클러스터링 하는 과정을 통해 구분된 객체의 표면에 대한 3D 특징점을 감지할 수 있다. The feature point detection module 132 may detect a 3D feature point on the surface of the divided object. For example, the feature point detection module 132 detects the 3D feature point on the surface of the divided object, and predicts the Euclidean transformation offset from the visible point to the target keypoint for each detected point, and , it is possible to detect 3D feature points on the surface of the divided object through the process of voting and clustering the target feature points again.

센터 투표 모듈(133)은 객체의 중심(center) 포인트를 검출할 수 있다. 예를 들어, 센터 투표 모듈(133)은 객체의 중심 포인트를 2D에서 3D로 확장할 수 있다.The center voting module 133 may detect a center point of the object. For example, the center voting module 133 may extend the center point of the object from 2D to 3D.

인스턴스 세그먼테이션(Instance Segmentation, 134)은 시맨틱 세그먼테이션 모듈(131), 특징점 검출 모듈(132) 및 센터 투표 모듈(133)에서 검출한 객체, 객체의 3D 특징점 및 중심 포인트에 기초하여 해당 이미지에서 전역 특징과 지역 특징을 추출할 수 있다. 인스턴스 세그먼테이션(134)은 특징점에 대한 오프셋(offset)을 예측하기 위해, 학습된 크기 정보에서 모양은 비슷하지만 크기가 다른 물체를 구별하도록 할 수 있다.Instance Segmentation (134) is an object detected by the semantic segmentation module 131, the feature point detection module 132, and the center voting module 133. Based on the 3D feature point and the center point of the object, global features and Local features can be extracted. The instance segmentation 134 may distinguish objects having similar shapes but different sizes from the learned size information in order to predict an offset with respect to a feature point.

객체 포즈 추정부(130)는 시맨틱 세그먼테이션 모듈(131), 특징점 검출 모듈(132), 센터 투표 모듈(133) 및 인스턴스 세그먼테이션(134)을 거쳐 추출된 특징에 기초하여 최소 제곱법 적합(Least-squares Fitting, 135)을 수행할 수 있다. 예를 들어, 객체 포즈 추정부(130)는 카메라 좌표계에서 감지된 M개의 특징점과 이에 대응하는 물체 좌표계의 포인트를 가지고 제곱 손실을 최소화하는 객체 모델에 대한 포즈 파라미터(R, t)를 계산하여 객체에 대한 6D 포즈를 추정(136)할 수 있다. The object pose estimator 130 is configured to fit the least-squares method based on the features extracted through the semantic segmentation module 131 , the feature point detection module 132 , the center voting module 133 , and the instance segmentation 134 . Fitting, 135) can be performed. For example, the object pose estimator 130 calculates pose parameters (R, t) for an object model that minimizes a square loss with M feature points detected in the camera coordinate system and points in the object coordinate system corresponding thereto. Estimate (136) a 6D pose for .

한편, 객체 포즈 추정부(130)는 데이터가 3D 포인트 클라우드인 경우, 데이터에 대한 복셀화(voxelization)를 수행할 수 있고, 이러한 경우, 사용자 정의 문제(Pretext task) 수행부(140)에서도 입력 데이터에 대한 복셀화를 추가로 수행할 수 있다.Meanwhile, when the data is a 3D point cloud, the object pose estimator 130 may perform voxelization on the data. In this case, the user-defined problem (Pretext task) performing unit 140 also performs input data voxelization may be additionally performed.

본 발명에 따른 6D 포즈 추정 장치(100)는, 자기 지도 학습을 활용한 사용자 정의 문제(Pretext task) 수행부(140)를 통해 객체를 포함한 데이터에 대한 이해도를 향상시킴으로써, 객체 포즈 추정부(130)에서 이미지에 포함된 객체에 대한 6D 포즈를 보다 정확하게 추정하도록 할 수 있다. The 6D pose estimation apparatus 100 according to the present invention improves the understanding of data including an object through the user-defined problem (pretext task) performing unit 140 using self-supervised learning, thereby improving the object pose estimation unit 130 ), it is possible to more accurately estimate the 6D pose for the object included in the image.

또한, 6D 포즈 추정 장치(100)는 추정된 객체의 6D 포즈 정보를 활용하여 로봇의 픽앤플레이스(Pick & Place) 작업뿐만 아니라, 조립을 포함한 복잡하고 다양한 작업도 수행 가능하도록 할 수 있다. 예를 들어, 6D 포즈 추정 장치(100)는 객체의 6D 정보를 사용하여 객체의 위치 및 각도를 파악할 수 있다. In addition, the 6D pose estimation apparatus 100 may use 6D pose information of the estimated object to enable not only a pick and place operation of the robot, but also a complex and various operation including assembly. For example, the 6D pose estimation apparatus 100 may determine the position and angle of the object using 6D information of the object.

도 5는 본 발명의 일 실시예에 따른 6D 포즈 추정 방법의 순서도이다. 도 1에 도시된 6D 포즈 추정 장치(100)는 도 1 내지 도 4에 도시된 실시예에 따라 시계열적으로 처리되는 단계들을 포함한다. 따라서, 이하 생략된 내용이라고 하더라도 도 1 내지 도 4에 도시된 실시예에 따른 6D 포즈 추정 장치(100)에서 객체 포즈를 추정하는 방법에도 적용된다. 5 is a flowchart of a 6D pose estimation method according to an embodiment of the present invention. The apparatus 100 for estimating a 6D pose shown in FIG. 1 includes steps that are time-series processed according to the embodiments shown in FIGS. 1 to 4 . Therefore, even if omitted below, it is also applied to the method of estimating the object pose in the 6D pose estimation apparatus 100 according to the embodiment shown in FIGS. 1 to 4 .

단계 S510에서 6D 포즈 추정 장치(100)는 이미지에 대한 RGB 데이터를 제 1 딥러닝 모델에 입력하여 외형 특징을 추출할 수 있다.In step S510 , the 6D pose estimation apparatus 100 may input RGB data for the image into the first deep learning model and extract the external features.

단계 S520에서 6D 포즈 추정 장치(100)는 이미지에 대한 깊이(depth) 데이터를 제 2 딥러닝 모델에 입력하여 기하학 특징을 추출할 수 있다.In operation S520, the 6D pose estimation apparatus 100 may extract geometric features by inputting depth data of the image to the second deep learning model.

단계 S530에서 6D 포즈 추정 장치(100)는 제 2 딥러닝 모델은 사용자 정의 문제(Pretext task)에 의해 학습된 네트워크의 가중치에 기초하여 전이 학습할 수 있다.In step S530, the 6D pose estimation apparatus 100 may transfer-learning the second deep learning model based on the weight of the network learned by the user-defined problem (Pretext task).

단계 S540에서 6D 포즈 추정 장치(100)는 추출된 외형 특징 및 기하학 특징을 결합하여 이미지에 대한 특징맵(feature map)을 생성할 수 있다.In operation S540, the 6D pose estimation apparatus 100 may generate a feature map for the image by combining the extracted external features and geometric features.

단계 S550에서 6D 포즈 추정 장치(100)는 생성된 특징맵에 기초하여 이미지에 대응하는 객체에 대한 6D 포즈를 추정할 수 있다.In operation S550 , the 6D pose estimation apparatus 100 may estimate a 6D pose of an object corresponding to an image based on the generated feature map.

상술한 설명에서, 단계 S510 내지 S550는 본 발명의 구현 예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 전환될 수도 있다. In the above description, steps S510 to S550 may be further divided into additional steps or combined into fewer steps according to an embodiment of the present invention. In addition, some steps may be omitted as needed, and the order between the steps may be switched.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다. The description of the present invention described above is for illustration, and those of ordinary skill in the art to which the present invention pertains can understand that it can be easily modified into other specific forms without changing the technical spirit or essential features of the present invention. will be. Therefore, it should be understood that the embodiments described above are illustrative in all respects and not restrictive. For example, each component described as a single type may be implemented in a dispersed form, and likewise components described as distributed may be implemented in a combined form.

본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is indicated by the following claims rather than the above detailed description, and all changes or modifications derived from the meaning and scope of the claims and their equivalent concepts should be interpreted as being included in the scope of the present invention. do.

100: 6D 포즈 추정 장치
110: 특징 추출부
120: 결합부
130: 객체 포즈 추정부
140: 사용자 정의 문제(Pretext task) 수행부
100: 6D pose estimation device
110: feature extraction unit
120: coupling part
130: object pose estimation unit
140: User-defined problem (Pretext task) execution unit

Claims (20)

비지도 학습(Unsupervised Learning)을 이용하여 객체 포즈를 추정하는 장치에 있어서,
이미지에 대한 RGB 데이터를 제 1 딥러닝 모델에 입력하여 외형 특징을 추출하는 외형 특징 추출부와, 상기 이미지에 대한 깊이(depth) 데이터를 제 2 딥러닝 모델에 입력하여 기하학 특징을 추출하는 기하학 특징 추출부를 포함하는 특징 추출부;
상기 추출된 외형 특징 및 기하학 특징을 결합하여 상기 이미지에 대한 특징맵(feature map)을 생성하는 결합부; 및,
상기 생성된 특징맵에 기초하여 상기 이미지에 대응하는 객체에 대한 6D 포즈를 추정하는 객체 포즈 추정부
를 포함하고,
상기 제 2 딥러닝 모델은 사용자 정의 문제(Pretext task)에 의해 학습된 네트워크의 가중치에 기초하여 전이 학습된 것인, 6D 포즈 추정 장치.
An apparatus for estimating an object pose using unsupervised learning, the apparatus comprising:
An appearance feature extraction unit for extracting external features by inputting RGB data for an image into a first deep learning model, and a geometric feature for extracting geometric features by inputting depth data for the image into a second deep learning model a feature extraction unit including an extraction unit;
a combining unit for generating a feature map for the image by combining the extracted external features and geometric features; and,
An object pose estimator for estimating a 6D pose of the object corresponding to the image based on the generated feature map
including,
The second deep learning model is transfer-trained based on the weight of the network learned by a user-defined problem (Pretext task), 6D pose estimation apparatus.
제 1 항에 있어서,
상기 제 1 딥러닝 모델은 CNN(Convolutional Neural Network)이고, 제 2 딥러닝 모델은 포인트넷(PointNet) 모델인 것인, 6D 포즈 추정 장치.
The method of claim 1,
The first deep learning model is a CNN (Convolutional Neural Network), and the second deep learning model is a point net (PointNet) model, 6D pose estimation apparatus.
제 1 항에 있어서,
상기 네트워크에 기초하여 상기 사용자 정의 문제(Pretext task)를 수행하는 사용자 정의 문제(Pretext task) 수행부
를 더 포함하는 것인, 6D 포즈 추정 장치.
The method of claim 1,
A user-defined problem (Pretext task) performing unit that performs the user-defined problem (Pretext task) based on the network
Further comprising a, 6D pose estimation apparatus.
제 3 항에 있어서,
상기 사용자 정의 문제(Pretext task) 수행부는,
복수의 홀(hole)을 포함하는 트레이(tray) 모델 및 상기 복수의 홀 중 적어도 하나의 홀에 삽입 가능한 객체 모델을 모델링하는 모델링부;
상기 모델링된 트레이 모델 및 객체 모델의 포인트 클라우드에 노이즈를 추가하는 노이즈부; 및
상기 노이즈가 추가된 객체 모델을 회전시키면서 상기 네트워크에 입력하여 상기 객체 모델이 삽입되는 홀을 판별하도록 상기 네트워크를 학습시키는 학습부
를 포함하는 것인, 6D 포즈 추정 장치.
4. The method of claim 3,
The user-defined problem (Pretext task) performing unit,
a modeling unit for modeling a tray model including a plurality of holes and an object model insertable into at least one of the plurality of holes;
a noise unit for adding noise to the point cloud of the modeled tray model and the object model; and
A learning unit that trains the network to determine a hole into which the object model is inserted by inputting it into the network while rotating the object model to which the noise is added
That comprising a, 6D pose estimation device.
제 4 항에 있어서,
상기 학습부는 상기 객체 모델과 상기 트레이 모델 간의 겹치는 영역 및 빈 영역을 손실(Loss)로 계산하는 것인, 6D 포즈 추정 장치.
5. The method of claim 4,
6D pose estimation apparatus, wherein the learning unit calculates an overlapping area and an empty area between the object model and the tray model as a loss.
제 1 항에 있어서,
상기 기하학 특징 추출부는 상기 제 2 딥러닝 모델의 가중치를 상기 네트워크의 가중치로 전이 학습하는 것인, 6D 포즈 추정 장치.
The method of claim 1,
6D pose estimation apparatus, wherein the geometric feature extraction unit transfer learning the weight of the second deep learning model to the weight of the network.
제 1 항에 있어서,
상기 객체 포즈 추정부는,
시맨틱 세그먼테이션 모듈(Semantic segmentation module), 특징점 검출 모듈(Keypoint detection module) 및 센터 투표 모듈(Center voting module)에 기초하여 상기 객체에 대한 포즈를 계산하는 것인, 6D 포즈 추정 장치.
The method of claim 1,
The object pose estimation unit,
6D pose estimation apparatus, which calculates a pose for the object based on a semantic segmentation module, a keypoint detection module, and a center voting module.
제 7 항에 있어서,
상기 시맨틱 세그먼테이션 모듈은,
상기 특징맵에 기초하여 상기 이미지 상의 객체가 복수인 경우, 각각의 객체를 구분하는 것인, 6D 포즈 추정 장치.
8. The method of claim 7,
The semantic segmentation module is
If there are a plurality of objects on the image based on the feature map, the 6D pose estimation apparatus will classify each object.
제 8 항에 있어서,
상기 특징점 검출 모듈은,
상기 구분된 객체의 표면에 대한 3D 특징점(Keypoint)을 감지하는 것인, 6D 포즈 추정 장치.
9. The method of claim 8,
The feature point detection module is
The 6D pose estimation apparatus that detects a 3D feature point (Keypoint) on the surface of the divided object.
제 9 항에 있어서,
상기 센터 투표 모듈은,
상기 객체의 중심(center) 포인트를 검출하는 것인, 6D 포즈 추정 장치.
10. The method of claim 9,
The center voting module,
6D pose estimation apparatus, which detects a center point of the object.
비지도 학습(Unsupervised Learning)을 이용하여 객체 포즈를 추정하는 방법에 있어서,
이미지에 대한 RGB 데이터를 제 1 딥러닝 모델에 입력하여 외형 특징을 추출하는 단계와,
상기 이미지에 대한 깊이(depth) 데이터를 제 2 딥러닝 모델에 입력하여 기하학 특징을 추출하는 단계를 포함하는 특징 추출 단계;
상기 추출된 외형 특징 및 기하학 특징을 결합하여 상기 이미지에 대한 특징맵(feature map)을 생성하는 단계; 및,
상기 생성된 특징맵에 기초하여 상기 이미지에 대응하는 객체에 대한 6D 포즈를 추정하는 단계
를 포함하고,
상기 제 2 딥러닝 모델은 사용자 정의 문제(Pretext task)에 의해 학습된 네트워크의 가중치에 기초하여 전이 학습된 것인, 6D 포즈 추정 방법.
In a method for estimating an object pose using unsupervised learning,
extracting appearance features by inputting RGB data for the image into the first deep learning model;
a feature extraction step comprising extracting geometric features by inputting depth data for the image into a second deep learning model;
generating a feature map for the image by combining the extracted external features and geometric features; and,
estimating a 6D pose for the object corresponding to the image based on the generated feature map
including,
The second deep learning model is a 6D pose estimation method that is transfer-learned based on the weight of the network learned by a user-defined problem (Pretext task).
제 11 항에 있어서,
상기 제 1 딥러닝 모델은 CNN(Convolutional Neural Network)이고, 제 2 딥러닝 모델은 포인트넷(PointNet) 모델인 것인, 6D 포즈 추정 방법.
12. The method of claim 11,
The first deep learning model is a CNN (Convolutional Neural Network), and the second deep learning model is a point net (PointNet) model, 6D pose estimation method.
제 11 항에 있어서,
상기 네트워크에 기초하여 상기 사용자 정의 문제(Pretext task)를 수행하는 단계를 더 포함하는 것인, 6D 포즈 추정 방법.
12. The method of claim 11,
6D pose estimation method, further comprising the step of performing the user-defined problem (Pretext task) based on the network.
제 13 항에 있어서,
상기 사용자 정의 문제(Pretext task)를 수행하는 단계는,
복수의 홀(hole)을 포함하는 트레이(tray) 모델 및 상기 복수의 홀 중 적어도 하나의 홀에 삽입 가능한 객체 모델을 모델링하는 단계;
상기 모델링된 트레이 모델 및 객체 모델의 포인트 클라우드에 노이즈를 추가하는 단계; 및
상기 노이즈가 추가된 객체 모델을 회전시키면서 상기 네트워크에 입력하여 상기 객체 모델이 삽입되는 홀을 판별하도록 상기 네트워크를 학습시키는 단계;
를 포함하는 것인, 6D 포즈 추정 방법.
14. The method of claim 13,
The step of performing the user-defined problem (Pretext task) is,
modeling a tray model including a plurality of holes and an object model insertable into at least one of the plurality of holes;
adding noise to the point cloud of the modeled tray model and the object model; and
training the network to determine a hole into which the object model is inserted by inputting it into the network while rotating the object model to which the noise has been added;
A method for estimating 6D poses, comprising:
제 14 항에 있어서,
상기 네트워크를 학습시키는 단계는 상기 객체 모델과 상기 트레이 모델 간의 겹치는 영역 및 빈 영역을 손실(Loss)로 계산하는 것인, 6D 포즈 추정 방법.
15. The method of claim 14,
In the training of the network, an overlapping area and an empty area between the object model and the tray model are calculated as a loss.
제 11 항에 있어서,
상기 기하학 특징을 추출하는 단계는 상기 제 2 딥러닝 모델의 가중치를 상기 네트워크의 가중치로 전이 학습하는 것인, 6D 포즈 추정 방법.
12. The method of claim 11,
The step of extracting the geometrical features is to transfer the weight of the second deep learning model to the weight of the network, 6D pose estimation method.
제 11 항에 있어서,
상기 객체에 대한 6D 포즈를 추정하는 단계는,
시맨틱 세그먼테이션 모듈(Semantic segmentation module), 특징점 검출 모듈(Keypoint detection module) 및 센터 투표 모듈(Center voting module)에 기초하여 상기 객체에 대한 포즈를 계산하는 것인, 6D 포즈 추정 방법.
12. The method of claim 11,
The step of estimating the 6D pose for the object comprises:
calculating a pose for the object based on a semantic segmentation module, a Keypoint detection module and a Center voting module.
제 17 항에 있어서,
상기 시맨틱 세그먼테이션 모듈은,
상기 특징맵에 기초하여 상기 이미지 상의 객체가 복수인 경우, 각각의 객체를 구분하는 것인, 6D 포즈 추정 방법.
18. The method of claim 17,
The semantic segmentation module is
When there are a plurality of objects on the image based on the feature map, the 6D pose estimation method of classifying each object.
제 18 항에 있어서,
상기 특징점 검출 모듈은,
상기 구분된 객체의 표면에 대한 3D 특징점(Keypoint)을 감지하는 것인, 6D 포즈 추정 방법.
19. The method of claim 18,
The feature point detection module is
The 6D pose estimation method of detecting a 3D feature point (Keypoint) for the surface of the divided object.
제 19 항에 있어서,
상기 센터 투표 모듈은,
상기 객체의 중심(center) 포인트를 검출하는 것인, 6D 포즈 추정 방법.
20. The method of claim 19,
The center voting module,
6D pose estimation method of detecting a center point of the object.
KR1020200151530A 2020-11-13 2020-11-13 Apparatus and method for estimating of 6d pose KR102494659B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200151530A KR102494659B1 (en) 2020-11-13 2020-11-13 Apparatus and method for estimating of 6d pose

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200151530A KR102494659B1 (en) 2020-11-13 2020-11-13 Apparatus and method for estimating of 6d pose

Publications (2)

Publication Number Publication Date
KR20220065234A true KR20220065234A (en) 2022-05-20
KR102494659B1 KR102494659B1 (en) 2023-02-06

Family

ID=81798827

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200151530A KR102494659B1 (en) 2020-11-13 2020-11-13 Apparatus and method for estimating of 6d pose

Country Status (1)

Country Link
KR (1) KR102494659B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115120949A (en) * 2022-06-08 2022-09-30 乒乓动量机器人(昆山)有限公司 Method, system and storage medium for realizing flexible batting strategy of table tennis robot
CN116245940A (en) * 2023-02-02 2023-06-09 中国科学院上海微系统与信息技术研究所 Category-level six-degree-of-freedom object pose estimation method based on structure difference perception
CN117237451A (en) * 2023-09-15 2023-12-15 南京航空航天大学 Industrial part 6D pose estimation method based on contour reconstruction and geometric guidance

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101994316B1 (en) 2011-12-23 2019-06-28 삼성전자주식회사 Device and method for object pose estimation
KR20190087258A (en) * 2018-01-15 2019-07-24 삼성전자주식회사 Object pose estimating method and apparatus
KR20190088379A (en) * 2018-01-18 2019-07-26 삼성전자주식회사 Pose estimating method, method of displaying virtual object using estimated pose and apparatuses performing the same
US20200134857A1 (en) * 2017-06-21 2020-04-30 Vancouver Computer Vision Ltd. Determining positions and orientations of objects

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101994316B1 (en) 2011-12-23 2019-06-28 삼성전자주식회사 Device and method for object pose estimation
US20200134857A1 (en) * 2017-06-21 2020-04-30 Vancouver Computer Vision Ltd. Determining positions and orientations of objects
KR20190087258A (en) * 2018-01-15 2019-07-24 삼성전자주식회사 Object pose estimating method and apparatus
KR20190088379A (en) * 2018-01-18 2019-07-26 삼성전자주식회사 Pose estimating method, method of displaying virtual object using estimated pose and apparatuses performing the same

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Yisheng He 등, PVN3D: A Deep Point-wise 3D Keypoints Voting Network for 6DoF Pose Estimation, arXiv:1911.04231v2(2020.03.24.)* *
박성욱 등, 전이학습에 방법에 따른 컨벌루션 신경망의 영상 분류 성능 비교, 멀티미디어학회 논문지(2018.12.)* *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115120949A (en) * 2022-06-08 2022-09-30 乒乓动量机器人(昆山)有限公司 Method, system and storage medium for realizing flexible batting strategy of table tennis robot
CN115120949B (en) * 2022-06-08 2024-03-26 乒乓动量机器人(昆山)有限公司 Method, system and storage medium for realizing flexible batting strategy of table tennis robot
CN116245940A (en) * 2023-02-02 2023-06-09 中国科学院上海微系统与信息技术研究所 Category-level six-degree-of-freedom object pose estimation method based on structure difference perception
CN116245940B (en) * 2023-02-02 2024-04-05 中国科学院上海微系统与信息技术研究所 Category-level six-degree-of-freedom object pose estimation method based on structure difference perception
CN117237451A (en) * 2023-09-15 2023-12-15 南京航空航天大学 Industrial part 6D pose estimation method based on contour reconstruction and geometric guidance
CN117237451B (en) * 2023-09-15 2024-04-02 南京航空航天大学 Industrial part 6D pose estimation method based on contour reconstruction and geometric guidance

Also Published As

Publication number Publication date
KR102494659B1 (en) 2023-02-06

Similar Documents

Publication Publication Date Title
KR102494659B1 (en) Apparatus and method for estimating of 6d pose
CN110728209B (en) Gesture recognition method and device, electronic equipment and storage medium
CN108986801B (en) Man-machine interaction method and device and man-machine interaction terminal
JP7539592B2 (en) InSeGAN: A Generative Approach for Instance Segmentation in Depth Images
CN109685141B (en) Robot article sorting visual detection method based on deep neural network
US11113526B2 (en) Training methods for deep networks
Aksoy et al. Categorizing object-action relations from semantic scene graphs
Ückermann et al. Real-time 3D segmentation of cluttered scenes for robot grasping
KR102252439B1 (en) Object detection and representation in images
CN107045631A (en) Facial feature points detection method, device and equipment
Qian et al. Grasp pose detection with affordance-based task constraint learning in single-view point clouds
Xu et al. GraspCNN: Real-time grasp detection using a new oriented diameter circle representation
CN107194344B (en) Human behavior recognition method adaptive to bone center
US10937150B2 (en) Systems and methods of feature correspondence analysis
CN116249607A (en) Method and device for robotically gripping three-dimensional objects
Sahin et al. Recovering 6D object pose: A review and multi-modal analysis
CN112288809A (en) Robot grabbing detection method for multi-object complex scene
CN110807774B (en) Point cloud classification and semantic segmentation method
Lee et al. 2D image feature-based real-time RGB-D 3D SLAM
KR20220080341A (en) Apparatus and method for estimating 6d pose
CN117911359A (en) Visual-based 6D pose grabbing method for mechanical arm
CN111145221A (en) Target tracking algorithm based on multi-layer depth feature extraction
Ye et al. Person Re-Identification for Robot Person Following with Online Continual Learning
Timmermann et al. A hybrid approach for object localization combining mask R-CNN and Halcon in an assembly scenario
Ma et al. ExploRLLM: Guiding Exploration in Reinforcement Learning with Large Language Models

Legal Events

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