KR20220061812A - Electronic device and controlling method of electronic device - Google Patents
Electronic device and controlling method of electronic device Download PDFInfo
- Publication number
- KR20220061812A KR20220061812A KR1020210026660A KR20210026660A KR20220061812A KR 20220061812 A KR20220061812 A KR 20220061812A KR 1020210026660 A KR1020210026660 A KR 1020210026660A KR 20210026660 A KR20210026660 A KR 20210026660A KR 20220061812 A KR20220061812 A KR 20220061812A
- Authority
- KR
- South Korea
- Prior art keywords
- camera
- images
- electronic device
- information
- neural network
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 68
- 238000003062 neural network model Methods 0.000 claims abstract description 89
- 230000008859 change Effects 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 16
- 239000011521 glass Substances 0.000 description 16
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 8
- 238000013528 artificial neural network Methods 0.000 description 7
- 230000014509 gene expression Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 238000013473 artificial intelligence Methods 0.000 description 6
- 238000006073 displacement reaction Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 238000013527 convolutional neural network Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000000306 recurrent effect Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000001678 irradiating effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000060 site-specific infrared dichroism spectroscopy Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/64—Three-dimensional objects
- G06V20/647—Three-dimensional objects by matching two-dimensional images to three-dimensional objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
- G06T7/593—Depth or shape recovery from multiple images from stereo images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
Description
본 개시는 전자 장치 및 전자 장치의 제어 방법에 관한 것으로서, 구체적으로는 이미지에 포함된 오브젝트에 대한 3 차원의 포즈 정보를 획득할 수 있는 장치를 말한다. The present disclosure relates to an electronic device and a control method of the electronic device, and more particularly, refers to a device capable of acquiring three-dimensional pose information for an object included in an image.
근래에는 이미지에 포함된 오브젝트에 대한 3 차원의 포즈 정보를 획득하는 기술에 대한 필요성이 부각되고 있다. 특히, 근래에는 CNN(Convolutional Neural Network)과 같은 신경망 모델을 이용하여 이미지에 포함된 오브젝트를 검출하고, 검출된 오브젝트에 대한 3 차원의 포즈 정보를 획득하기 위한 기술에 대한 발전이 가속화되고 있다. Recently, the need for a technique for acquiring three-dimensional pose information for an object included in an image has been highlighted. In particular, in recent years, the development of a technology for detecting an object included in an image using a neural network model such as a convolutional neural network (CNN) and obtaining three-dimensional pose information for the detected object is accelerating.
그런데, 종래 기술에 따라 한 장의 이미지를 기반으로 오브젝트에 대한 포즈 정보를 획득하는 경우, 3D 모델이 기 구축되지 않은 오브젝트에 대한 포즈 정보를 획득하기 어려우며, 특히 투명한 오브젝트에 대해서는 정확한 포즈 정보를 획득하기 어렵다는 한계가 지적되고 있다. However, according to the prior art, when obtaining pose information for an object based on a single image, it is difficult to obtain pose information for an object for which a 3D model is not previously built, and in particular, it is difficult to obtain accurate pose information for a transparent object. Difficulty limits are pointed out.
또한, 종래 기술에 따라 스테레오 카메라를 기반으로 오브젝트에 대한 포즈 정보를 획득하는 경우, 두 개의 카메라 사이의 시야각 차이가 좁기 때문에 포즈 정보의 획득을 위해 측정할 수 있는 거리의 범위가 제한적이라는 점, 그리고, 두 개의 카메라 사이의 위치 관계가 변경되는 경우에는 두 개의 카메라 사이의 위치 관계가 고정되는 것을 전제로 학습된 신경망 모델을 이용할 수 없다는 점 등과 같은 한계가 지적되고 있다.In addition, in the case of acquiring pose information for an object based on a stereo camera according to the prior art, since the difference in viewing angle between the two cameras is narrow, the range of the distance that can be measured to acquire the pose information is limited, and , limitations such as the inability to use a neural network model trained on the premise that the positional relationship between the two cameras is fixed when the positional relationship between the two cameras is changed.
본 개시는 상술한 바와 같은 종래 기술의 한계를 극복하기 위한 것으로서, 본 개시의 목적은 이미지에 포함된 오브젝트의 특징에 따라 효율적인 방법으로 오브젝트에 대한 3 차원의 포즈 정보를 획득할 수 있는 전자 장치 및 전자 장치의 제어 방법을 제공함에 있다.An object of the present disclosure is to overcome the limitations of the prior art as described above, and an object of the present disclosure is to provide an electronic device capable of acquiring three-dimensional pose information for an object in an efficient way according to the characteristics of the object included in an image, and An object of the present invention is to provide a method for controlling an electronic device.
상술한 바와 같은 목적을 달성하기 위한 본 개시의 일 실시 예에 따르면, 전자 장치는 적어도 하나의 카메라, 메모리 및 상기 적어도 하나의 카메라를 통해 복수의 이미지를 획득하고, 상기 복수의 이미지 각각에 대한 RGB 데이터를 제1 신경망 모델에 입력하여, 상기 복수의 이미지에 포함된 오브젝트에 대한 2 차원의 포즈 정보를 획득하고, 상기 복수의 이미지 중 적어도 하나의 이미지에 대한 RGB 데이터를 제2 신경망 모델에 입력하여 상기 오브젝트의 투명 여부를 식별하며, 상기 오브젝트가 투명한 오브젝트이면, 상기 복수의 이미지 별 2 차원의 포즈 정보를 바탕으로 스테레오 정합(stereo matching)을 수행하여, 상기 오브젝트에 대한 3 차원의 포즈 정보를 획득하고, 상기 오브젝트가 불투명한 오브젝트이면, 상기 복수의 이미지 중 하나의 이미지 및 상기 하나의 이미지에 대응되는 뎁스(depth) 정보를 바탕으로 상기 오브젝트에 대한 3 차원의 포즈 정보를 획득하는 프로세서를 포함한다.According to an embodiment of the present disclosure for achieving the above object, an electronic device acquires a plurality of images through at least one camera, a memory, and the at least one camera, and RGB for each of the plurality of images By inputting data into the first neural network model, two-dimensional pose information for an object included in the plurality of images is obtained, and RGB data for at least one image among the plurality of images is input to a second neural network model. Identifies whether the object is transparent, and if the object is a transparent object, stereo matching is performed based on the two-dimensional pose information for each of the plurality of images to obtain three-dimensional pose information for the object and if the object is an opaque object, a processor for obtaining three-dimensional pose information for the object based on one image among the plurality of images and depth information corresponding to the one image. .
여기서, 상기 프로세서는 상기 제2 신경망 모델을 통해 상기 오브젝트의 투명 여부에 대한 정보를 획득하고, 상기 오브젝트의 투명 여부에 대한 정보를 바탕으로 상기 오브젝트의 투명 여부를 식별할 수 있다. Here, the processor may obtain information on whether the object is transparent through the second neural network model, and identify whether the object is transparent based on the information on whether the object is transparent.
한편, 상기 프로세서는 상기 제2 신경망 모델을 통해 상기 오브젝트의 대칭 여부에 대한 정보를 획득하고, 상기 오브젝트의 대칭 여부에 대한 정보를 바탕으로 상기 오브젝트의 대칭 여부를 식별하며, 상기 오브젝트가 대칭성을 가지는 오브젝트이면, 상기 2 차원의 포즈 정보에 포함된 제1 특징점들을 대칭성에 무관한 제2 특징점들로 변환하고, 상기 제2 특징점들을 바탕으로 상기 스테레오 정합을 수행하여 상기 오브젝트에 대한 3 차원의 포즈 정보를 획득할 수 있다. Meanwhile, the processor obtains information on whether the object is symmetrical through the second neural network model, identifies whether the object is symmetrical based on the information on whether the object is symmetrical, and the object has symmetry If it is an object, the first feature points included in the two-dimensional pose information are converted into second feature points independent of symmetry, and the stereo matching is performed based on the second feature points to provide three-dimensional pose information for the object. can be obtained.
한편, 상기 오브젝트가 대칭성을 가지는 오브젝트이면, 상기 제1 특징점들은 x축 또는 y축이 상기 적어도 하나의 카메라와 수직인 3 차원 좌표계를 바탕으로 식별될 수 있다.Meanwhile, if the object is an object having symmetry, the first feature points may be identified based on a three-dimensional coordinate system in which an x-axis or a y-axis is perpendicular to the at least one camera.
한편, 상기 복수의 이미지는 상기 적어도 하나의 카메라 중 제1 카메라를 통해 서로 다른 시점에 획득된 두 개의 이미지일 수 있다. Meanwhile, the plurality of images may be two images acquired at different time points through a first camera among the at least one camera.
한편, 상기 복수의 이미지는 상기 적어도 하나의 카메라 중 상기 제1 카메라 및 제2 카메라 각각을 통해 서로 동일한 시점에 획득된 두 개의 이미지일 수 있다.Meanwhile, the plurality of images may be two images acquired at the same time point through each of the first camera and the second camera among the at least one camera.
여기서, 상기 프로세서는 상기 제1 카메라 및 상기 제2 카메라 사이의 위치 관계에 대한 제1 위치 정보를 획득하고, 상기 복수의 이미지 별 2 차원의 포즈 정보 및 상기 제1 위치 정보를 바탕으로 상기 스테레오 정합을 수행할 수 있다.Here, the processor obtains first position information about the positional relationship between the first camera and the second camera, and matches the stereo based on the two-dimensional pose information for each image and the first position information can be performed.
여기서, 상기 전자 장치는 구동부를 더 포함하고, 상기 프로세서는 상기 제1 카메라 및 상기 제2 카메라 중 적어도 하나의 카메라의 위치가 변경되도록 상기 구동부를 제어하며, 상기 변경된 적어도 하나의 카메라의 위치를 바탕으로 상기 제1 카메라 및 상기 제2 카메라 사이의 위치 관계에 대한 제2 위치 정보를 획득하고, 상기 복수의 이미지 별 2 차원의 포즈 정보 및 상기 제2 위치 정보를 바탕으로 상기 스테레오 정합을 수행할 수 있다. Here, the electronic device further includes a driving unit, and the processor controls the driving unit to change the position of at least one of the first camera and the second camera, and based on the changed position of the at least one camera to obtain second position information on the positional relationship between the first camera and the second camera, and perform the stereo registration based on the two-dimensional pose information and the second position information for each of the plurality of images. there is.
한편, 상기 제1 신경망 모델 및 상기 제2 신경망 모델은 하나의 통합된 신경망 모델에 포함될 수 있다. Meanwhile, the first neural network model and the second neural network model may be included in one integrated neural network model.
상술한 바와 같은 목적을 달성하기 위한 본 개시의 일 실시 예에 따르면, 전자 장치의 제어 방법은 적어도 하나의 카메라를 통해 복수의 이미지를 획득하는 단계, 상기 복수의 이미지 각각에 대한 RGB 데이터를 제1 신경망 모델에 입력하여, 상기 복수의 이미지에 포함된 오브젝트에 대한 2 차원의 포즈 정보를 획득하는 단계, 상기 복수의 이미지 중 적어도 하나의 이미지에 대한 RGB 데이터를 제2 신경망 모델에 입력하여 상기 오브젝트의 투명 여부를 식별하는 단계, 상기 오브젝트가 투명한 오브젝트이면, 상기 복수의 이미지 별 2 차원의 포즈 정보를 바탕으로 스테레오 정합(stereo matching)을 수행하여, 상기 오브젝트에 대한 3 차원의 포즈 정보를 획득하는 단계 및 상기 오브젝트가 불투명한 오브젝트이면, 상기 복수의 이미지 중 하나의 이미지 및 상기 하나의 이미지에 대응되는 뎁스(depth) 정보를 바탕으로 상기 오브젝트에 대한 3 차원의 포즈 정보를 획득하는 단계를 포함한다. According to an embodiment of the present disclosure for achieving the object as described above, a method of controlling an electronic device includes acquiring a plurality of images through at least one camera, and first generating RGB data for each of the plurality of images. input to a neural network model to obtain two-dimensional pose information for an object included in the plurality of images; identifying whether the object is transparent; if the object is a transparent object, performing stereo matching based on the two-dimensional pose information for each of the plurality of images to obtain three-dimensional pose information for the object and if the object is an opaque object, obtaining three-dimensional pose information on the object based on one image among the plurality of images and depth information corresponding to the one image.
여기서, 상기 오브젝트의 투명 여부를 식별하는 단계는 상기 제2 신경망 모델을 통해 상기 오브젝트의 투명 여부에 대한 정보를 획득하는 단계 및 상기 오브젝트의 투명 여부에 대한 정보를 바탕으로 상기 오브젝트의 투명 여부를 식별하는 단계를 포함할 수 있다. Here, the step of identifying whether the object is transparent includes obtaining information on whether the object is transparent through the second neural network model and identifying whether the object is transparent based on the information on whether the object is transparent may include the step of
한편, 상기 오브젝트의 대칭 여부를 식별하는 단계는 상기 제2 신경망 모델을 통해 상기 오브젝트의 대칭 여부에 대한 정보를 획득하는 단계 및 상기 오브젝트의 대칭 여부에 대한 정보를 바탕으로 상기 오브젝트의 대칭 여부를 식별하는 단계를 포함하고, 상기 전자 장치의 제어 방법은 상기 오브젝트가 대칭성을 가지는 오브젝트이면, 상기 2 차원의 포즈 정보에 포함된 제1 특징점들을 대칭성에 무관한 제2 특징점들로 변환하는 단계 및 상기 제2 특징점들을 바탕으로 상기 스테레오 정합을 수행하여 상기 오브젝트에 대한 3 차원의 포즈 정보를 획득하는 단계를 더 포함할 수 있다. On the other hand, the step of identifying whether the object is symmetrical may include obtaining information on whether the object is symmetrical through the second neural network model and identifying whether the object is symmetrical based on information on whether the object is symmetrical In the control method of the electronic device, if the object is an object having symmetry, converting first feature points included in the two-dimensional pose information into second feature points irrelevant to symmetry; The method may further include obtaining three-dimensional pose information on the object by performing the stereo matching based on the two feature points.
한편, 상기 오브젝트가 대칭성을 가지는 오브젝트이면, 상기 제1 특징점들은 x축 또는 y축이 상기 적어도 하나의 카메라와 수직인 3 차원 좌표계를 바탕으로 식별될 수 있다. Meanwhile, if the object is an object having symmetry, the first feature points may be identified based on a three-dimensional coordinate system in which an x-axis or a y-axis is perpendicular to the at least one camera.
한편, 상기 복수의 이미지는 상기 적어도 하나의 카메라 중 제1 카메라를 통해 서로 다른 시점에 획득된 두 개의 이미지일 수 있다. Meanwhile, the plurality of images may be two images acquired at different time points through a first camera among the at least one camera.
한편, 상기 복수의 이미지는 상기 적어도 하나의 카메라 중 상기 제1 카메라 및 제2 카메라 각각을 통해 서로 동일한 시점에 획득된 두 개의 이미지일 수 있다.Meanwhile, the plurality of images may be two images acquired at the same time point through each of the first camera and the second camera among the at least one camera.
여기서, 상기 전자 장치의 제어 방법은 상기 제1 카메라 및 상기 제2 카메라 사이의 위치 관계에 대한 제1 위치 정보를 획득하는 단계 및 상기 복수의 이미지 별 2 차원의 포즈 정보 및 상기 제1 위치 정보를 바탕으로 상기 스테레오 정합을 수행하는 단계를 더 포함할 수 있다. Here, the control method of the electronic device includes acquiring first position information on a positional relationship between the first camera and the second camera, and obtaining two-dimensional pose information and the first position information for each of the plurality of images. The method may further include performing the stereo matching based on the above.
여기서, 상기 전자 장치의 제어 방법은 상기 제1 카메라 및 상기 제2 카메라 중 적어도 하나의 카메라의 위치가 변경되도록 제어하는 단계, 상기 변경된 적어도 하나의 카메라의 위치를 바탕으로 상기 제1 카메라 및 상기 제2 카메라 사이의 위치 관계에 대한 제2 위치 정보를 획득하는 단계 및 상기 복수의 이미지 별 2 차원의 포즈 정보 및 상기 제2 위치 정보를 바탕으로 상기 스테레오 정합을 수행하는 단계를 더 포함할 수 있다.Here, the method of controlling the electronic device includes controlling the position of at least one of the first camera and the second camera to be changed, and the first camera and the second camera based on the changed position of the at least one camera. The method may further include obtaining second position information on a positional relationship between the two cameras, and performing the stereo matching based on the two-dimensional pose information for each of the plurality of images and the second position information.
한편, 상기 제1 신경망 모델 및 상기 제2 신경망 모델은 하나의 통합된 신경망 모델에 포함될 수 있다. Meanwhile, the first neural network model and the second neural network model may be included in one integrated neural network model.
상술한 바와 같은 목적을 달성하기 위한 본 개시의 일 실시 예에 따르면, 전자 장치의 제어 방법을 실행하는 프로그램을 포함하는 비일시적 컴퓨터 판독 가능 기록매체에 있어서, 상기 전자 장치의 제어 방법은 적어도 하나의 카메라를 통해 복수의 이미지를 획득하는 단계, 상기 복수의 이미지 각각에 대한 RGB 데이터를 제1 신경망 모델에 입력하여, 상기 복수의 이미지에 포함된 오브젝트에 대한 2 차원의 포즈 정보를 획득하는 단계, 상기 복수의 이미지 중 적어도 하나의 이미지에 대한 RGB 데이터를 제2 신경망 모델에 입력하여 상기 오브젝트의 투명 여부를 식별하는 단계, 상기 오브젝트가 투명한 오브젝트이면, 상기 복수의 이미지 별 2 차원의 포즈 정보를 바탕으로 스테레오 정합(stereo matching)을 수행하여, 상기 오브젝트에 대한 3 차원의 포즈 정보를 획득하는 단계 및 상기 오브젝트가 불투명한 오브젝트이면, 상기 복수의 이미지 중 하나의 이미지 및 상기 하나의 이미지에 대응되는 뎁스(depth) 정보를 바탕으로 상기 오브젝트에 대한 3 차원의 포즈 정보를 획득하는 단계를 포함한다. According to an embodiment of the present disclosure for achieving the above object, in a non-transitory computer-readable recording medium including a program for executing a method for controlling an electronic device, the method for controlling the electronic device includes at least one acquiring a plurality of images through a camera, inputting RGB data for each of the plurality of images into a first neural network model, and acquiring two-dimensional pose information for an object included in the plurality of images; inputting RGB data for at least one image among a plurality of images into a second neural network model to identify whether the object is transparent; if the object is a transparent object, based on the two-dimensional pose information for each of the plurality of images performing stereo matching to obtain three-dimensional pose information for the object, and if the object is an opaque object, one image among the plurality of images and a depth ( depth) obtaining three-dimensional pose information for the object based on the information.
도 1은 본 개시의 일 실시 예에 따른 전자 장치의 제어 방법을 나타내는 흐름도,
도 2 및 도 3은 본 개시의 일 실시 예에 따른 복수의 이미지 및 2 차원의 포즈 정보를 나타내는 도면,
도 4는 본 개시의 일 실시 예에 따른 전자 장치의 제어 방법을 상세하게 나타내는 흐름도,
도 5 및 도 6은 본 개시에 따른 오브젝트가 대칭성을 갖는 경우의 실시 예에 대해 설명하기 위한 도면,
도 7은 본 개시의 일 실시 예에 따른 전자 장치의 구성을 간략하게 나타내는 블록도,
도 8은 본 개시의 일 실시 예에 따른 신경망 모델들과 모듈들을 상세하게 나타내는 블록도, 그리고,
도 9는 본 개시의 일 실시 예에 따른 전자 장치의 구성을 상세하게 나타내는 블록도이다.1 is a flowchart illustrating a control method of an electronic device according to an embodiment of the present disclosure;
2 and 3 are views showing a plurality of images and two-dimensional pose information according to an embodiment of the present disclosure;
4 is a flowchart illustrating in detail a method of controlling an electronic device according to an embodiment of the present disclosure;
5 and 6 are diagrams for explaining an embodiment when an object according to the present disclosure has symmetry;
7 is a block diagram schematically illustrating a configuration of an electronic device according to an embodiment of the present disclosure;
8 is a block diagram showing in detail neural network models and modules according to an embodiment of the present disclosure;
9 is a block diagram illustrating a detailed configuration of an electronic device according to an embodiment of the present disclosure.
본 실시 예들은 다양한 변환을 가할 수 있고 여러 가지 실시 예를 가질 수 있는바, 특정 실시 예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나 이는 특정한 실시 형태에 대해 범위를 한정하려는 것이 아니며, 본 개시의 실시 예의 다양한 변경(modifications), 균등물(equivalents) 및/또는 대체물(alternatives)을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다.Since the present embodiments can apply various transformations and can have various embodiments, specific embodiments are illustrated in the drawings and described in detail in the detailed description. However, this is not intended to limit the scope of the specific embodiments, and should be understood to include various modifications, equivalents and/or alternatives of the embodiments of the present disclosure. In connection with the description of the drawings, like reference numerals may be used for like components.
본 개시를 설명함에 있어서, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 개시의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그에 대한 상세한 설명은 생략한다. In describing the present disclosure, if it is determined that a detailed description of a related known function or configuration may unnecessarily obscure the subject matter of the present disclosure, a detailed description thereof will be omitted.
덧붙여, 하기 실시 예는 여러 가지 다른 형태로 변형될 수 있으며, 본 개시의 기술적 사상의 범위가 하기 실시 예에 한정되는 것은 아니다. 오히려, 이들 실시 예는 본 개시를 더욱 충실하고 완전하게 하고, 당업자에게 본 개시의 기술적 사상을 완전하게 전달하기 위하여 제공되는 것이다.In addition, the following examples may be modified in various other forms, and the scope of the technical spirit of the present disclosure is not limited to the following examples. Rather, these embodiments are provided to more fully and complete the present disclosure, and to fully convey the technical spirit of the present disclosure to those skilled in the art.
본 개시에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 권리범위를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.The terms used in the present disclosure are used only to describe specific embodiments, and are not intended to limit the scope of rights. The singular expression includes the plural expression unless the context clearly dictates otherwise.
본 개시에서, "가진다," "가질 수 있다," "포함한다," 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다. In the present disclosure, expressions such as “have,” “may have,” “include,” or “may include” indicate the presence of a corresponding characteristic (eg, a numerical value, function, operation, or component such as a part). and does not exclude the presence of additional features.
본 개시에서, "A 또는 B," "A 또는/및 B 중 적어도 하나," 또는 "A 또는/및 B 중 하나 또는 그 이상"등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. 예를 들면, "A 또는 B," "A 및 B 중 적어도 하나," 또는 "A 또는 B 중 적어도 하나"는, (1) 적어도 하나의 A를 포함, (2) 적어도 하나의 B를 포함, 또는 (3) 적어도 하나의 A 및 적어도 하나의 B 모두를 포함하는 경우를 모두 지칭할 수 있다.In this disclosure, expressions such as "A or B," "at least one of A and/and B," or "one or more of A or/and B" may include all possible combinations of the items listed together. . For example, "A or B," "at least one of A and B," or "at least one of A or B" means (1) includes at least one A, (2) includes at least one B; Or (3) it may refer to all cases including both at least one A and at least one B.
본 개시에서 사용된 "제1," "제2," "첫째," 또는 "둘째,"등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. As used in the present disclosure, expressions such as “first,” “second,” “first,” or “second,” may modify various elements, regardless of order and/or importance, and refer to one element. It is used only to distinguish it from other components, and does not limit the components.
어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다. A component (eg, a first component) is "coupled with/to (operatively or communicatively)" to another component (eg, a second component); When referring to "connected to", it will be understood that the certain element may be directly connected to the other element or may be connected through another element (eg, a third element).
반면에, 어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 다른 구성요소(예: 제3 구성요소)가 존재하지 않는 것으로 이해될 수 있다.On the other hand, when it is said that a component (eg, a first component) is "directly connected" or "directly connected" to another component (eg, a second component), the component and the It may be understood that other components (eg, a third component) do not exist between other components.
본 개시에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)," "~하는 능력을 가지는(having the capacity to)," "~하도록 설계된(designed to)," "~하도록 변경된(adapted to)," "~하도록 만들어진(made to)," 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성된(또는 설정된)"은 하드웨어적으로 "특별히 설계된(specifically designed to)" 것만을 반드시 의미하지 않을 수 있다. The expression “configured to (or configured to)” as used in this disclosure, depending on the context, for example, “suitable for,” “having the capacity to” ," "designed to," "adapted to," "made to," or "capable of." The term “configured (or configured to)” may not necessarily mean only “specifically designed to” in hardware.
대신, 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU 또는 application processor)를 의미할 수 있다.Instead, in some circumstances, the expression “a device configured to” may mean that the device is “capable of” with other devices or parts. For example, the phrase "a processor configured (or configured to perform) A, B, and C" refers to a dedicated processor (eg, an embedded processor) for performing the corresponding operations, or by executing one or more software programs stored in a memory device. , may mean a generic-purpose processor (eg, a CPU or an application processor) capable of performing corresponding operations.
실시 예에 있어서 '모듈' 혹은 '부'는 적어도 하나의 기능이나 동작을 수행하며, 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다. 또한, 복수의 '모듈' 혹은 복수의 '부'는 특정한 하드웨어로 구현될 필요가 있는 '모듈' 혹은 '부'를 제외하고는 적어도 하나의 모듈로 일체화되어 적어도 하나의 프로세서로 구현될 수 있다.In an embodiment, a 'module' or 'unit' performs at least one function or operation, and may be implemented as hardware or software, or a combination of hardware and software. In addition, a plurality of 'modules' or a plurality of 'units' may be integrated into at least one module and implemented with at least one processor, except for 'modules' or 'units' that need to be implemented with specific hardware.
한편, 도면에서의 다양한 요소와 영역은 개략적으로 그려진 것이다. 따라서, 본 발명의 기술적 사상은 첨부한 도면에 그려진 상대적인 크기나 간격에 의해 제한되지 않는다. Meanwhile, various elements and regions in the drawings are schematically drawn. Accordingly, the technical spirit of the present invention is not limited by the relative size or spacing drawn in the accompanying drawings.
이하에서는 첨부한 도면을 참고하여 본 개시에 따른 실시 예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다.Hereinafter, embodiments according to the present disclosure will be described in detail with reference to the accompanying drawings so that those of ordinary skill in the art to which the present disclosure pertains can easily implement them.
도 1은 본 개시의 일 실시 예에 따른 전자 장치의 제어 방법을 나타내는 흐름도이다. 그리고, 도 2 및 도 3은 본 개시의 일 실시 예에 따른 복수의 이미지 및 2 차원의 포즈 정보를 나타내는 도면이다.1 is a flowchart illustrating a control method of an electronic device according to an embodiment of the present disclosure. 2 and 3 are diagrams illustrating a plurality of images and two-dimensional pose information according to an embodiment of the present disclosure.
본 개시에 따른 '전자 장치'는 이미지에 포함된 오브젝트에 대한 3 차원의 포즈 정보를 획득할 수 있는 장치를 말한다. 특히, 본 개시에 따른 전자 장치는 이미지에 포함된 오브젝트의 특징에 따라 다양한 방법으로 3 차원의 포즈 정보를 획득할 수 있다. 예를 들어, 본 개시에 따른 전자 장치는 스마트 폰, 태블릿 PC 등과 같은 사용자 단말로 구현될 수 있을 뿐만 아니라, 로봇과 같은 장치로 구현될 수도 있다. 이하에서는 본 개시에 따른 전자 장치를 '전자 장치(100)'라고 지칭한다. An 'electronic device' according to the present disclosure refers to a device capable of acquiring three-dimensional pose information on an object included in an image. In particular, the electronic device according to the present disclosure may acquire three-dimensional pose information in various ways according to the characteristics of the object included in the image. For example, the electronic device according to the present disclosure may be implemented as a user terminal such as a smart phone or a tablet PC, or may be implemented as a device such as a robot. Hereinafter, the electronic device according to the present disclosure is referred to as an 'electronic device 100'.
도 1에 도시된 바와 같이, 본 개시에 따른 전자 장치(100)는 적어도 하나의 카메라를 통해 복수의 이미지를 획득할 수 있다(S110).As shown in FIG. 1 , the
전자 장치(100)는 '적어도 하나의 카메라', 즉 하나 또는 두 개 이상의 카메라를 포함할 수 있다. 전자 장치(100)가 두 개 이상의 카메라를 포함하는 경우, 그 두 개 이상의 카메라들 사이의 위치 관계는 고정될 수 있고 변경될 수도 있다. 예를 들어, 전자 장치(100)는 전자 장치(100)의 후면 좌측에 배치된 카메라 및 전자 장치(100)의 후면 우측에 배치된 카메라를 포함할 수 있다. 전자 장치(100)가 로봇으로 구현되는 경우, 적어도 하나의 카메라는 로봇의 머리 및 손 각각에 배치된 두 개의 카메라, 즉 헤드 카메라(head camera) 및 핸드 카메라(hand camera)를 포함할 수 있으며, 이 경우 헤드 카메라 및 핸드 카메라 중 적어도 하나의 카메라의 위치가 변경됨에 따라 두 개의 카메라 사이의 위치 관계는 변경될 수 있다.The
'복수의 이미지'는 동일한 오브젝트를 포함하며, 하나의 카메라 또는 서로 다른 두 개 이상의 카메라를 통해 획득된 이미지들 일 수 있다. 구체적으로, 복수의 이미지는 제1 카메라를 통해 서로 다른 시점에 획득된 두 개의 이미지일 수 있다. 뿐만 아니라, 복수의 이미지는 제1 카메라 및 제2 카메라 각각을 통해 서로 동일한 시점에 획득된 두 개의 이미지일 수도 있다. 다시 말해, 본 개시에 있어서 복수의 이미지란 하나의 카메라를 통해 획득된 동영상 시퀀스에 포함된 서로 다른 이미지 프레임일 수 있을 뿐만 아니라, 동일한 장면을 동일한 시간에 서로 다른 뷰(view)를 갖는 카메라를 통해 촬영한 결과에 따른 서로 다른 이미지 프레임일 수도 있다.The 'plural images' include the same object and may be images acquired through one camera or two or more different cameras. Specifically, the plurality of images may be two images acquired at different viewpoints through the first camera. In addition, the plurality of images may be two images acquired at the same point in time through each of the first camera and the second camera. In other words, in the present disclosure, a plurality of images may be different image frames included in a video sequence acquired through a single camera, and the same scene may be viewed through a camera having different views at the same time. It may be a different image frame according to the photographing result.
예시적으로, 도 2 및 도 3의 이미지들은 본 개시에 따른 전자 장치(100)가 로봇으로 구현되는 경우, 각각 로봇의 헤드 카메라 및 핸드 카메라를 통해 획득된 제1 이미지 및 제2 이미지를 나타낸다. 구체적으로, 도 2 및 도 3의 예를 참조하면, 제1 이미지 및 제2 이미지는 각각 '와인 잔'이라는 오브젝트를 포함할 수 있으며, '와인 잔'이라는 오브젝트는 제1 이미지 및 제2 이미지 각각에서 서로 다른 위치에 서로 다른 포즈로 배치될 수 있다. For example, when the
복수의 이미지가 획득되면, 전자 장치(100)는 복수의 이미지 각각에 대한 RGB 데이터를 제1 신경망 모델에 입력하여, 복수의 이미지에 포함된 오브젝트에 대한 2 차원의 포즈 정보를 획득할 수 있다(S120). When a plurality of images are obtained, the
'제1 신경망 모델'이란 입력된 RGB 데이터를 바탕으로 이미지에 포함된 오브젝트에 대한 2 차원의 포즈 정보를 출력하도록 학습된 신경망 모델을 말한다. 그리고, '2 차원의 포즈 정보'란 오브젝트의 포즈를 2 차원으로 특정할 수 있는 정보를 총칭하기 위한 용어이다. 특히, 제1 신경망 모델은 이미지에 포함된 오브젝트 각각에 대응되는 바운딩 박스(bounding box)를 검출하고, 검출된 바운딩 박스를 구성하는 기 설정된 특징점들 각각의 2 차원 좌표 정보를 2 차원의 포즈 정보로서 획득할 수 있다. The 'first neural network model' refers to a neural network model trained to output two-dimensional pose information for an object included in an image based on input RGB data. In addition, 'two-dimensional pose information' is a general term for information that can specify the pose of an object in two dimensions. In particular, the first neural network model detects a bounding box corresponding to each object included in the image, and uses two-dimensional coordinate information of each of preset feature points constituting the detected bounding box as two-dimensional pose information. can be obtained
도 2를 참조하면, 제1 신경망 모델은 제1 이미지에서 '와인 잔'에 대응되는 3 차원의 바운딩 박스를 검출하고, 검출된 바운딩 박스를 구성하는 8 개의 꼭지점(210, 220, 230, 240, 250, 260, 270, 280)에 대응되는 2 차원 좌표 정보를 2 차원의 포즈 정보로서 획득할 수 있다. 마찬가지로 도 3을 참조하면, 제1 신경망 모델은 제2 이미지에서 '와인 잔'에 대응되는 3 차원의 바운딩 박스를 검출하고, 검출된 바운딩 박스를 구성하는 8 개의 꼭지점(310, 320, 330, 340, 350, 360, 370, 380)에 대응되는 2 차원 좌표 정보를 2 차원의 포즈 정보로서 획득할 수 있다. 도 2 및 도 3에 대한 설명에서는 기 설정된 특징점들의 예로서 검출된 바운딩 박스를 구성하는 8 개의 꼭지점을 예시하였으나, 본 개시가 이에 국한되는 것이 아님은 물론이다. Referring to Figure 2, the first neural network model detects a three-dimensional bounding box corresponding to a 'wine glass' in the first image, and eight vertices (210, 220, 230, 240, 250, 260, 270, 280) may be acquired as two-dimensional pose information. Similarly, referring to FIG. 3 , the first neural network model detects a three-dimensional bounding box corresponding to a 'wine glass' in the second image, and eight
한편, 전자 장치(100)는 복수의 이미지 중 적어도 하나의 이미지에 대한 RGB 데이터를 제2 신경망 모델에 입력하여 오브젝트의 투명 여부를 식별할 수 있다(S130). Meanwhile, the
'제2 신경망 모델'이란 입력된 이미지에 포함된 오브젝트의 특징을 분류하여 그 결과를 출력하도록 학습된 신경망 모델을 말한다. 구체적으로, 제2 신경망 모델은 입력된 RGB 데이터를 바탕으로 이미지에 포함된 오브젝트가 이미지의 다양한 특징에 따라 구분된 복수의 클래스(또는 카테고리, 도메인) 각각에 대응될 확률에 대한 정보를 출력할 수 있다. 그리고, 전자 장치(100)는 제2 신경망 모델로부터 출력된 확률에 대한 정보를 바탕으로, 입력된 이미지에 포함된 오브젝트의 특징을 식별할 수 있다. 여기서, 복수의 클래스란 오브젝트의 투명 여부 및 오브젝트의 대칭 여부 등과 같은 특징에 따라 기 정의될 수 있다. The 'second neural network model' refers to a neural network model trained to classify features of objects included in an input image and output the results. Specifically, the second neural network model can output information on the probability that an object included in an image corresponds to each of a plurality of classes (or categories, domains) classified according to various characteristics of the image based on the input RGB data. there is. Then, the
구체적으로, 전자 장치(100)는 제2 신경망 모델을 통해 오브젝트의 투명 여부에 대한 정보를 획득하고, 오브젝트의 투명 여부에 대한 정보를 바탕으로 오브젝트의 투명 여부를 식별할 수 있다. 본 개시에 있어서 오브젝트가 '투명'하다는 것은 오브젝트의 투명도가 100%인 경우만을 말하는 것은 아니며, 오브젝트의 투명도가 기 설정된 임계 값 이상인 경우를 말한다. 여기서, 기 설정된 임계 값은 후술하는 바와 같은 뎁스 센서에 의해 뎁스 정보를 획득할 수 있는 정도의 투명도와 뎁스 센서에 의해 뎁스 정보를 획득하기 어려운 정도의 투명도 사이의 경계를 구분할 수 있도록 설정되는 것이 바람직할 수 있다. 한편, 오브젝트가 투명하다는 것은 오브젝트 전체가 투명한 경우뿐만 아니라, 오브젝트의 전체 영역 중 기 설정된 비율 이상의 영역이 투명한 경우를 포함할 수 있다. 도 2 및 도 3에 도시된 바와 같은 '와인 잔'이 투명한 와인 잔이라면, 본 개시에 따른 제2 신경망 모델을 통해 투명한 오브젝트로 식별될 수 있다.Specifically, the
한편, 전술한 바와 같이, 본 개시에 따른 제2 신경망 모델은 오브젝트의 투명 여부뿐만 아니라 오브젝트의 대칭 여부를 식별할 수도 있다. 다만, 제2 신경망 모델을 통해 오브젝트의 대칭 여부를 식별하는 과정에 대해서는 도 5를 참조하여 상술한다. Meanwhile, as described above, the second neural network model according to the present disclosure may identify not only whether the object is transparent, but also whether the object is symmetrical. However, the process of identifying whether an object is symmetric through the second neural network model will be described in detail with reference to FIG. 5 .
이상에서 상술한 바와 같이, 오브젝트의 투명 여부에 대한 정보가 획득되면, 전자 장치(100)는 오브젝트의 투명 여부에 따라 상이한 방법으로 오브젝트에 대한 3 차원의 포즈 정보를 획득할 수 있다.As described above, when information on whether the object is transparent is obtained, the
식별 결과 오브젝트가 투명한 오브젝트이면(S140-Y), 전자 장치(100)는 복수의 이미지 별 2 차원의 포즈 정보를 바탕으로 스테레오 정합(stereo matching)을 수행하여, 오브젝트에 대한 3 차원의 포즈 정보를 획득할 수 있다(S150). 즉, 오브젝트가 투명한 오브젝트이면 오브젝트에 대한 뎁스 정보를 획득하기 어렵기 때문에, 전자 장치(100)는 복수의 이미지 각각에 대한 2 차원의 포즈 정보를 이용하여 3 차원의 포즈 정보를 획득할 수 있다. If the identification result object is a transparent object (S140-Y), the
'3 차원의 포즈 정보'란 오브젝트의 포즈를 3 차원으로 특정할 수 있는 정보를 총칭하기 위한 용어이다. 구체적으로, 3 차원의 포즈 정보는 오브젝트를 구성하는 픽셀들 중 기 설정된 특징점에 대응되는 픽셀들의 3 차원 좌표 값에 대한 정보를 포함할 수 있다. 예를 들어, 3 차원의 포즈 정보는 오브젝트의 뎁스(depth)에 대한 정보를 포함하는 뎁스 맵의 형태로 제공될 수 있다. 'Three-dimensional pose information' is a general term for information that can specify the pose of an object in three dimensions. Specifically, the three-dimensional pose information may include information on three-dimensional coordinate values of pixels corresponding to preset feature points among pixels constituting the object. For example, the three-dimensional pose information may be provided in the form of a depth map including information on the depth of the object.
'스테레오 정합'이란 2 차원의 포즈 정보를 바탕으로 3 차원의 포즈 정보를 획득할 수 있는 방법들 중 하나의 방법을 말한다. 구체적으로, 스테레오 정합 과정은 복수의 이미지 각각에서 획득된 2 차원의 포즈 정보 사이의 변위 차이를 바탕으로 3 차원의 포즈 정보를 획득하는 과정을 통해 수행될 수 있다. 넓은 의미의 스테레오 정합 과정은 복수의 이미지 각각에서 2 차원의 포즈 정보를 획득하는 과정을 포함할 수도 있으나, 본 개시를 설명함에 있어서는 2 차원의 포즈 정보가 획득된 이후의 과정을 지칭하는 의미로 사용된다. 'Stereo matching' refers to one of methods for acquiring three-dimensional pose information based on two-dimensional pose information. Specifically, the stereo matching process may be performed through a process of acquiring three-dimensional pose information based on a displacement difference between two-dimensional pose information obtained from each of a plurality of images. The stereo matching process in a broad sense may include a process of acquiring two-dimensional pose information from each of a plurality of images, but in the description of the present disclosure, it is used to refer to a process after two-dimensional pose information is acquired. do.
예를 들어, 복수의 이미지에 포함된 오브젝트가 카메라로부터 가까이 위치하는 경우에는 복수의 이미지 사이에서 큰 변위 차이가 나타나며, 복수의 이미지에 포함된 오브젝트가 카메라로부터 멀리 위치하는 경우에는 복수의 이미지 사이에서 작은 변위 차이가 나타난다. 따라서, 전자 장치(100)는 복수의 이미지 사이의 변위 차이를 바탕으로 3D 포즈 정보를 재구성할 수 있게 된다. 여기서, '변위'란 복수의 이미지에서 서로 대응되는 특징점들 사이의 거리를 나타내는 디스패리티(disparity)를 의미할 수 있다.For example, when an object included in a plurality of images is located close to the camera, a large displacement difference appears between the plurality of images. A small displacement difference appears. Accordingly, the
구체적으로, 전자 장치(100)는 복수의 이미지에서 서로 대응되는 특징점들을 식별할 수 있다. 예를 들어, 전자 장치(100)는 복수의 이미지의 각 픽셀들의 휘도 정보, 컬러 정보, 그래디언트(gradient) 정보 중 적어도 하나를 바탕으로 특징점들 사이의 유사도를 산출함으로써, 복수의 이미지에서 서로 대응되는 특징점을 식별할 수 있다. 대응되는 특징점들이 식별되면, 전자 장치(100)는 대응되는 특징점들 사이의 2 차원 좌표 정보를 바탕으로 대응되는 특징점들 사이의 디스패리티 정보를 획득할 수 있다. Specifically, the
디스패리티 정보가 획득되면, 전자 장치(100)는 디스패리티 정보, 카메라의 초점 거리 및 복수의 이미지를 획득하는 시점의 카메라들 사이의 위치 관계에 대한 정보를 바탕으로 3D 포즈 정보를 획득할 수 있다. 여기서, '카메라의 초점 거리에 대한 정보'는 전자 장치(100)의 메모리에 기 저장될 수 있으며, '카메라들 사이의 위치 관계에 대한 정보'는 카메라들 중 하나의 카메라의 위치를 나타내는 값에서 다른 카메라의 위치를 나타내는 값을 뺀 백터량을 바탕으로 결정될 수 있으며, 본 개시에 따른 카메라의 개수와 위치에 따라 상이하게 결정될 수 있다.When the disparity information is obtained, the
구체적으로, 고정된 위치를 갖는 복수의 카메라를 통해 복수의 이미지가 획득되는 경우, 전자 장치(100)는 메모리에 기 저장된 정보를 바탕으로 복수의 카메라 사이의 위치 관계에 대한 정보를 획득하고, 그에 기초하여 스테레오 정합을 수행할 수 있다. Specifically, when a plurality of images are acquired through a plurality of cameras having fixed positions, the
한편, 고정되지 않는 위치를 갖는 복수의 카메라를 통해 복수의 이미지가 획득되는 경우, 전자 장치(100)는 복수의 카메라 사이의 위치 관계에 대한 정보를 주기적으로 또는 실시간으로 획득하고, 획득된 정보를 바탕으로 스테레오 정합을 수행할 수 있다. 예를 들어, 전자 장치(100)가 로봇으로 구현되는 경우, 로봇은 헤드 카메라 및 핸드 카메라의 위치를 변경하면서 이미지 프레임들을 획득할 수 있다. 그리고, 로봇은 헤드 카메라 및 핸드 카메라 각각에 연결된 프레임들의 관절 각도 등에 대한 정보를 바탕으로 헤드 카메라 및 핸드 카메라 사이의 위치 관계에 대한 정보를 획득하고, 획득된 정보를 바탕으로 스테레오 정합을 수행할 수 있다.On the other hand, when a plurality of images are acquired through a plurality of cameras having non-fixed positions, the
한편, 전자 장치(100)가 이동하면서 하나의 카메라를 통해 복수의 이미지를 획득한 경우, 전자 장치(100)는 복수의 이미지 각각을 획득하는 시점의 카메라의 위치를 바탕으로 카메라들 사이의 위치 관계를 결정할 수 있다. On the other hand, when the
식별 결과 오브젝트가 불투명한 오브젝트이면(S140-N), 전자 장치(100)는 복수의 이미지 중 하나의 이미지 및 하나의 이미지에 대응되는 뎁스(depth) 정보를 바탕으로 오브젝트에 대한 3 차원의 포즈 정보를 획득할 수 있다(S160). 즉, 오브젝트가 불투명한 오브젝트이면 오브젝트에 대한 뎁스 정보를 획득하는 것이 용이하기 때문에, 전자 장치(100)는 뎁스 정보를 이용하여 3 차원의 포즈 정보를 획득할 수 있다.If the identification result object is an opaque object (S140-N), the
본 개시에 있어서 '뎁스 정보'란 오브젝트와 카메라 사이의 거리를 나타내는 정보로서, 특히 뎁스 센서를 통해 획득된 정보를 말한다. '뎁스 센서'는 카메라에 포함되어 뎁스 카메라의 형태로 구현될 수 있을 뿐만 아니라, 카메라와는 별개의 구성으로 전자 장치(100)에 포함될 수도 있다. 예를 들어, 뎁스 센서는 ToF(Time-of-Flight) 센서 또는 IR 뎁스 센서일 수 있으며, 다만 본 개시에 따른 뎁스 센서의 유형에 특별한 제한이 있는 것은 아니다. 본 개시에 따른 뎁스 센서가 TOF 센서로 구현되는 경우, 전자 장치(100)는 오브젝트에 광을 조사한 후 오브젝트로부터 반사되는 광이 뎁스 센서에 수광되기까지의 비행 시간을 측정함으로써, 뎁스 정보를 획득할 수 있다. 뎁스 센서르 통해 뎁스 정보가 획득되면, 전자 장치(100)는 복수의 이미지 중 하나의 이미지와 뎁스 정보를 바탕으로 오브젝트에 대한 3 차원의 포즈 정보를 획득할 수 있다. In the present disclosure, 'depth information' refers to information indicating a distance between an object and a camera, particularly information obtained through a depth sensor. The 'depth sensor' may be included in the camera to be implemented in the form of a depth camera, and may be included in the
한편, 이상에서는 복수의 이미지에 포함된 오브젝트가 하나인 경우를 전제로 설명하였으나, 이는 설명의 편의를 위한 것일 뿐 본 개시가 이에 국한되는 것은 아니다. 즉, 복수의 이미지가 복수의 오브젝트를 포함하는 경우, 전자 장치(100)는 복수의 오브젝트 각각에 대해 본 개시에 따른 다양한 실시 예를 적용할 수 있다. 그리고, 복수의 오브젝트 각각에 대해 상이한 방법으로 3D 포즈 정보가 획득되는 경우, 전자 장치(100)는 상이한 방법으로 획득된 3D 포즈 정보를 결합하여, 결합된 3D 포즈 정보를 포함하는 3D 뎁스 이미지를 출력할 수 있다.Meanwhile, in the above description, it is assumed that there is one object included in the plurality of images, but this is only for convenience of description and the present disclosure is not limited thereto. That is, when a plurality of images includes a plurality of objects, the
한편, 이상에서는 제1 신경망 모델 및 제2 신경망 모델이 각각 별개의 독립된 신경망 모델로 구현되는 경우를 전제로 설명하였으나, 제1 신경망 모델 및 제2 신경망 모델은 하나의 통합된 신경망 모델에 포함될 수 있다. 그리고, 제1 신경망 모델 및 제2 신경망 모델이 하나의 통합된 신경망 모델로 구현되는 경우, 그 하나의 통합된 신경망 모델의 전체 경로(pipeline)는 종단간(end-to-end)으로 통합적으로 학습(joint training)될 수 있다. Meanwhile, in the above description, the first neural network model and the second neural network model are each implemented as separate and independent neural network models, but the first neural network model and the second neural network model may be included in one integrated neural network model. . And, when the first neural network model and the second neural network model are implemented as one integrated neural network model, the entire pipeline of the one integrated neural network model is integrated and learned end-to-end. (joint training) can be done.
한편, 적어도 하나의 카메라를 통해 동영상 시퀀스를 획득하는 경우, 전자 장치(100)는 동영상 시퀀스에 포함된 이미지 프레임들 중 일부 이미지 프레임에 대해서는 상술한 바와 같은 방법으로 3 차원의 포즈 정보를 획득하고, 획득된 3 차원의 포즈 정보를 바탕으로 나머지 이미지 프레임에 대한 포즈 정보를 트래킹하는 방식으로 전체 이미지 프레임에 대한 포즈 정보를 획득할 수도 있다. 이 경우, 포즈 정보를 트래킹함에 있어서는 칼만 필터(kalman filter)와 같은 기 정의된 필터가 이용될 수 있다. On the other hand, when acquiring a moving picture sequence through at least one camera, the
도 1 내지 도 3을 참조하여 상술한 실시 예에 따르면, 전자 장치(100)는 이미지에 포함된 오브젝트가 투명한 오브젝트인지에 따라 효율적인 방법으로 오브젝트에 대한 3 차원의 포즈 정보를 획득할 수 있게 된다. According to the embodiment described above with reference to FIGS. 1 to 3 , the
도 4는 본 개시의 일 실시 예에 따른 전자 장치의 제어 방법을 상세하게 나타내는 흐름도이다. 그리고, 도 5 및 도 6은 본 개시에 따른 오브젝트가 대칭성을 갖는 경우의 실시 예에 대해 설명하기 위한 도면이다.4 is a flowchart illustrating in detail a method of controlling an electronic device according to an embodiment of the present disclosure. And, FIGS. 5 and 6 are diagrams for explaining an embodiment when an object according to the present disclosure has symmetry.
전술한 바와 같이, 본 개시에 따른 전자 장치(100)는 복수의 이미지에 포함된 오브젝트의 투명 여부에 따라 상이한 방식으로 3D 정보를 획득할 수 있을 뿐만 아니라, 복수의 오브젝트의 대칭 여부에 따라 상이한 방식으로 3D 정보를 획득할 수 있다. 도 4는 오브젝트의 투명 여부에 따라 상이한 방식으로 3D 정보를 획득하는 방법과 오브젝트의 대칭 여부에 따라 상이한 방식으로 3D 정보를 획득하는 방법을 결합하여 나타내는 도면이다. 다만, 오브젝트의 투명 여부에 따라 상이한 방식으로 3D 정보를 획득하는 방법에 대해서는 도 1을 참조하여 상술한 바 있으므로, 이하에서는 오브젝트의 대칭 여부에 따라 상이한 방식으로 3D 정보를 획득하는 방법에 대해 설명한다.As described above, the
도 4에 도시된 바와 같이, 전자 장치(100)는 복수의 이미지 중 적어도 하나의 이미지에 대한 RGB 데이터를 바탕으로 오브젝트의 대칭 여부 식별할 수 있다(S143). 도 4에서는 오브젝트가 투명한 오브젝트인 경우에 한하여(S140-Y) 오브젝트의 대칭 여부를 식별하는 것으로 도시하였으나, 본 개시가 이에 국한되는 것은 아니다. As shown in FIG. 4 , the
구체적으로, 전자 장치(100)는 제2 신경망 모델을 통해 오브젝트의 대칭 여부에 대한 정보를 획득하고, 오브젝트의 대칭 여부에 대한 정보를 바탕으로 오브젝트의 대칭 여부를 획득할 수 있다. 본 개시를 설명함에 있어서 오브젝트가 '대칭'이라는 것은 오브젝트를 통과하는 적어도 하나의 축(axis)을 기준으로 360 도 방향의 대칭성을 만족하는 경우를 말한다.Specifically, the
도 5 및 도 6의 예시와 같이 복수의 이미지에 포함된 오브젝트가 '와인 잔'인 경우, '와인 잔'의 중심부를 통과하는 축을 기준으로 360 도 방향의 대칭성을 만족하는 경우로서, 제2 신경망 모델을 통해 대칭성 있는 오브젝트로 식별될 수 있다.As in the examples of FIGS. 5 and 6 , when the object included in the plurality of images is a 'wine glass', the symmetry of the 360 degree direction is satisfied with respect to the axis passing through the center of the 'wine glass', and the second neural network It can be identified as a symmetrical object through the model.
식별 결과 오브젝트가 대칭성을 가지는 오브젝트이면(S145-Y), 전자 장치(100)는 2 차원의 포즈 정보에 포함된 제1 특징점들을 대칭성에 무관한 제2 특징점들로 변환하고(S153), 제2 특징점들을 바탕으로 스테레오 정합을 수행하여 오브젝트에 대한 3 차원의 포즈 정보를 획득할 수 있다(S155). If the identification result object is a symmetric object (S145-Y), the
여기서, '제1 특징점들'이란 도 2 및 도 3을 참조하여 설명한 바와 같은 특징점들을 말하며, '제2 특징점들'이란 제1 특징점들을 대칭성에 무관한 특징점들로 변환함에 따라 획득된 특징점들을 말한다. Here, the 'first feature points' refer to the feature points as described with reference to FIGS. 2 and 3, and the 'second feature points' refer to feature points obtained by converting the first feature points into feature points irrelevant to symmetry. .
도 5를 참조하면, 전자 장치(100)는 '와인 잔'에 대응되는 3 차원의 바운딩 박스를 구성하는 8 개의 꼭지점(210, 220, 230, 240, 250, 260, 270, 280)인 제1 특징점들을 '와인 잔'의 중심부를 통과하는 축 상의 3 개의 점(510, 520, 530)인 제2 특징점들로 변환하고, 그 제2 특징점들을 바탕으로 스테레오 정합을 수행하여 '와인 잔'에 대한 3 차원의 포즈 정보를 획득할 수 있다. 마찬가지로, 도 6을 참조하면, 전자 장치(100)는 '와인 잔'에 대응되는 3 차원의 바운딩 박스를 구성하는 8 개의 꼭지점(310, 320, 330, 340, 350, 360, 370, 380)인 제1 특징점들을 '와인 잔'의 중심부를 통과하는 축 상의 3 개의 점(610, 620, 630)인 제2 특징점들로 변환하고, 그 제2 특징점들을 바탕으로 스테레오 정합을 수행하여 '와인 잔'에 대한 3 차원의 포즈 정보를 획득할 수 있다.Referring to FIG. 5 , the
한편, 대칭성을 가지는 오브젝트의 경우, 오브젝트에 대응되는 바운딩 박스의 개수는 무한할 수 있기 때문에 제1 특징점을 식별하기 위한 기준이 특정될 필요가 있다. 예들 들어, 도 5 및 도 6를 참조하면, '와인 잔'의 중심부를 통과하는 축을 z 축으로 하는 바운딩 박스라면, 모두 '와인 잔'에 대응되는 바운딩 박스가 될 수 있다.Meanwhile, in the case of an object having symmetry, since the number of bounding boxes corresponding to the object may be infinite, a criterion for identifying the first feature point needs to be specified. For example, referring to FIGS. 5 and 6 , if the z-axis is a bounding box with an axis passing through the center of the 'wine glass', all of them may be a bounding box corresponding to the 'wine glass'.
따라서, 제1 신경망 모델의 학습을 위한 학습 데이터를 구축함에 있어서는, 대칭성을 가지는 오브젝트의 경우 x축 또는 y축이 카메라와 수직이 되는 3 차원 좌표계를 기준으로 어노테이션(annotation)이 수행될 수 있다. 이에 따라, 전자 장치(100)는 학습된 제1 신경망 모델을 통해, x축 또는 y축이 카메라와 수직이 되는 3 차원 좌표계를 바탕으로 제1 특징 점을 식별할 수 있게 된다. 구체적으로, 이미지에 포함된 오브젝트가 대칭성을 가지는 오브젝트이면, 전자 장치(100)는 x축 또는 y축이 카메라와 수직이 되는 3 차원 좌표계를 바탕으로 오브젝트에 대응되는 바운딩 박스를 식별하고, 식별된 바운딩 박스를 구성하는 8 개의 꼭지점을 제1 특징점으로 식별할 수 있다. 즉, 이에 따라, 전자 장치(100)는 대칭성을 가지는 오브젝트에 대해 일관된 기준 하에 제1 특징점들을 식별할 수 있게 된다.Accordingly, in constructing learning data for learning the first neural network model, in the case of an object having symmetry, annotation may be performed based on a three-dimensional coordinate system in which the x-axis or the y-axis is perpendicular to the camera. Accordingly, the
식별 결과 오브젝트가 대칭성을 가지지 않는 오브젝트이면(S145-N), 전자 장치(100)는 2 차원의 포즈 정보에 포함된 제1 특징점들을 바탕으로 스테레오 정합을 수행하여 오브젝트에 대한 3 차원의 포즈 정보를 획득할 수 있다(S157). 즉, 대칭성을 가지지 않는 오브젝트의 경우에는 제1 특징점들이 방향성을 가지기 때문에, 전자 장치(100)는 제1 특징점들을 제2 특징점들로 변환하지 않고 제1 특징점들을 바탕으로 스테레오 정합을 수행할 수 있다. If the identification result object is an object having no symmetry (S145-N), the
도 4 내지 도 7을 참조하여 상술한 실시 예에 따르면, 전자 장치(100)는 이미지에 포함된 오브젝트가 대칭성을 갖는 오브젝트인지에 따라 효율적인 방법으로 오브젝트에 대한 3 차원의 포즈 정보를 획득할 수 있게 된다.According to the embodiment described above with reference to FIGS. 4 to 7 , the
한편, 상술한 실시 예에 따른 전자 장치(100)의 제어 방법은 프로그램으로 구현되어 전자 장치(100)에 제공될 수 있다. 특히, 전자 장치(100)의 제어 방법을 포함하는 프로그램은 비일시적 판독 가능 매체(non-transitory computer readable medium)에 저장되어 제공될 수 있다. Meanwhile, the control method of the
구체적으로, 전자 장치(100)의 제어 방법을 실행하는 프로그램을 포함하는 비일시적 컴퓨터 판독 가능 기록매체에 있어서, 전자 장치(100)의 제어 방법은 적어도 하나의 카메라를 통해 복수의 이미지를 획득하는 단계, 복수의 이미지 각각에 대한 RGB 데이터를 제1 신경망 모델에 입력하여, 복수의 이미지에 포함된 오브젝트에 대한 2 차원의 포즈 정보를 획득하는 단계, 복수의 이미지 중 적어도 하나의 이미지에 대한 RGB 데이터를 제2 신경망 모델에 입력하여 오브젝트의 투명 여부를 식별하는 단계, 오브젝트가 투명한 오브젝트이면, 복수의 이미지 별 2 차원의 포즈 정보를 바탕으로 스테레오 정합(stereo matching)을 수행하여, 오브젝트에 대한 3 차원의 포즈 정보를 획득하는 단계 및 오브젝트가 불투명한 오브젝트이면, 복수의 이미지 중 하나의 이미지 및 하나의 이미지에 대응되는 뎁스(depth) 정보를 바탕으로 오브젝트에 대한 3 차원의 포즈 정보를 획득하는 단계를 포함한다.
Specifically, in a non-transitory computer-readable recording medium including a program for executing a control method of the
이상에서 전자 장치(100)의 제어 방법, 그리고 전자 장치(100)의 제어 방법을 실행하는 프로그램을 포함하는 컴퓨터 판독 가능 기록매체에 대해 간략하게 설명하였으나, 이는 중복 설명을 생략하기 위한 것일 뿐이며, 전자 장치(100)에 대한 다양한 실시 예는 전자 장치(100)의 제어 방법, 그리고 전자 장치(100)의 제어 방법을 실행하는 프로그램을 포함하는 컴퓨터 판독 가능 기록매체에 대해서도 적용될 수 있음은 물론이다.In the above, the control method of the
도 7은 본 개시의 일 실시 예에 따른 전자 장치의 구성을 간략하게 나타내는 블록도이고, 도 8은 본 개시의 일 실시 예에 따른 신경망 모델들과 모듈들을 상세하게 나타내는 블록도이다. 7 is a block diagram schematically illustrating the configuration of an electronic device according to an embodiment of the present disclosure, and FIG. 8 is a block diagram illustrating in detail neural network models and modules according to an embodiment of the present disclosure.
도 7에 도시된 바와 같이, 본 개시의 일 실시 예에 따른 전자 장치(100)는 카메라(110), 메모리(120) 및 프로세서(130)를 포함한다. 또한, 도 8에 도시된 바와 같이, 본 개시의 일 실시 예에 따른 프로세서(130)는 2D 포즈 정보 획득 모듈(131)(2D pose information acquisition module), 오브젝트 특징 식별 모듈(132)(object feature identification module) 및 3D 포즈 정보 획득 모듈(133)(3D pose information acquisition module)과 같은 복수의 모듈을 포함할 수 있다. 7 , the
카메라(110)는 적어도 하나의 오브젝트에 대한 이미지를 획득할 수 있다. 구체적으로, 카메라(110)는 이미지 센서를 포함하고, 이미지 센서는 렌즈를 통해 들어오는 빛을 전기적인 영상 신호로 변환할 수 있다. The
구체적으로, 본 개시에 따른 전자 장치(100)는 적어도 하나의 카메라(110), 즉 하나 또는 두 개 이상의 카메라(110)를 포함할 수 있다. 전자 장치(100)가 두 개 이상의 카메라(110)를 포함하는 경우, 그 두 개 이상의 카메라(110)들 사이의 위치 관계는 고정될 수 있고 변경될 수도 있다. 예를 들어, 전자 장치(100)는 전자 장치(100)의 후면 좌측에 배치된 카메라(110) 및 전자 장치(100)의 후면 우측에 배치된 카메라(110)를 포함할 수 있다. 전자 장치(100)가 로봇으로 구현되는 경우, 적어도 하나의 카메라(110)는 로봇의 머리 및 손 각각에 배치된 두 개의 카메라(110), 즉 헤드 카메라(110)(head camera) 및 핸드 카메라(110)(hand camera)를 포함할 수 있으며, 이 경우 헤드 카메라(110) 및 핸드 카메라(110) 중 적어도 하나의 카메라(110)의 위치가 변경됨에 따라 두 개의 카메라(110) 사이의 위치 관계는 변경될 수 있다.Specifically, the
한편, 본 개시에 따른 카메라(110)는 뎁스 카메라로서, 이미지 센서와 함께 뎁스 센서를 포함할 수 있다. 여기서, 뎁스 센서는 ToF(Time-of-Flight) 센서 또는 IR 뎁스 센서일 수 있으며, 다만 본 개시에 따른 뎁스 센서의 유형에 특별한 제한이 있는 것은 아니다.Meanwhile, the
메모리(120)에는 전자 장치(100)에 관한 적어도 하나의 인스트럭션(instruction)이 저장될 수 있다. 그리고, 메모리(120)에는 전자 장치(100)를 구동시키기 위한 O/S(Operating System)가 저장될 수 있다. 또한, 메모리(120)에는 본 개시의 다양한 실시 예들에 따라 전자 장치(100)가 동작하기 위한 각종 소프트웨어 프로그램이나 애플리케이션이 저장될 수도 있다. 그리고, 메모리(120)는 플래시 메모리(Flash Memory) 등과 같은 반도체 메모리나 하드디스크(Hard Disk) 등과 같은 자기 저장 매체 등을 포함할 수 있다.At least one instruction related to the
구체적으로, 메모리(120)에는 본 개시의 다양한 실시 예에 따라 전자 장치(100)가 동작하기 위한 각종 소프트웨어 모듈이 저장될 수 있으며, 프로세서(130)는 메모리(120)에 저장된 각종 소프트웨어 모듈을 실행하여 전자 장치(100)의 동작을 제어할 수 있다. 즉, 메모리(120)는 프로세서(130)에 의해 액세스되며, 프로세서(130)에 의한 데이터의 독취/기록/수정/삭제/갱신 등이 수행될 수 있다. Specifically, various software modules for operating the
한편, 본 개시에서 메모리(120)라는 용어는 메모리(120), 프로세서(130) 내 롬(미도시), 램(미도시) 또는 전자 장치(100)에 장착되는 메모리 카드(미도시)(예를 들어, micro SD 카드, 메모리 스틱)를 포함하는 의미로 사용될 수 있다.Meanwhile, in the present disclosure, the
특히, 본 개시에 따른 다양한 실시 예에 있어서, 메모리(120)에는 본 개시에 따른 이미지 각각에 대한 RGB 데이터, 뎁스 정보, 제1 신경망 모델(121) 및 제2 신경망 모델(122)에 대한 데이터 등을 포함할 수 있다. 그 밖에도 본 개시의 목적을 달성하기 위한 범위 내에서 필요한 다양한 정보가 메모리(120)에 저장될 수 있으며, 메모리(120)에 저장된 정보는 외부 장치로부터 수신되거나 사용자에 의해 입력됨에 따라 갱신될 수도 있다.In particular, in various embodiments according to the present disclosure, the
프로세서(130)는 전자 장치(100)의 전반적인 동작을 제어한다. 구체적으로, 프로세서(130)는 상술한 바와 같은 카메라(110) 및 메모리(120)를 포함하는 전자 장치(100)의 구성과 연결되며, 상술한 바와 같은 메모리(120)에 저장된 적어도 하나의 인스트럭션을 실행함으로써, 전자 장치(100)의 동작을 전반적으로 제어할 수 있다.The
프로세서(130)는 다양한 방식으로 구현될 수 있다. 예를 들어, 프로세서(130)는 주문형 집적 회로(Application Specific Integrated Circuit, ASIC), 임베디드 프로세서, 마이크로 프로세서, 하드웨어 컨트롤 로직, 하드웨어 유한 상태 기계(hardware Finite State Machine, FSM), 디지털 신호 프로세서(Digital Signal Processor, DSP) 중 적어도 하나로 구현될 수 있다. 한편, 본 개시에서 프로세서(130)라는 용어는 CPU(Central Processing Unit), GPU(Graphic Processing Unit) 및 MPU(Main Processing Unit)등을 포함하는 의미로 사용될 수 있다.The
특히, 본 개시에 따른 다양한 실시 예에 있어서, 프로세서(130)는 적어도 하나의 카메라(110)를 통해 복수의 이미지를 획득할 수 있으며, 복수의 모듈을 통해 복수의 이미지에 포함된 오브젝트에 대한 3 차원의 포즈 정보를 획득할 수 있다.In particular, in various embodiments according to the present disclosure, the
'2D 포즈 정보 획득 모듈(131)'란 이미지에 대한 RGB 데이터를 바탕으로 이미지에 포함된 오브젝트에 대한 2 차원의 포즈 정보를 획득할 수 있는 모듈을 말한다. 특히, 2D 포즈 정보 획득 모듈(131)은 본 개시에 따른 제1 신경망 모델(121)을 이용하여 이미지에 포함된 오브젝트에 대한 2 차원의 포즈 정보를 획득할 수 있다. 전술한 바와 같이, 제1 신경망 모델(121)이란 입력된 RGB 데이터를 바탕으로 이미지에 포함된 오브젝트에 대한 2 차원의 포즈 정보를 출력하도록 학습된 신경망 모델을 말하며, 프로세서(130)는 메모리(120)에 저장된 제1 신경망 모델(121)에 대한 데이터에 액세스함으로써 제1 신경망 모델(121)을 이용할 수 있다. 구체적으로, 2D 포즈 정보 획득 모듈(131)은 제1 신경망 모델(121)을 통해, 이미지에 포함된 오브젝트 각각에 대응되는 바운딩 박스(bounding box)를 검출하고, 검출된 바운딩 박스를 구성하는 기 설정된 특징점들 각각의 2 차원 좌표 정보를 2 차원의 포즈 정보로서 획득할 수 있다. The '2D pose information acquisition module 131' refers to a module capable of acquiring two-dimensional pose information on an object included in an image based on RGB data on the image. In particular, the 2D pose
'오브젝트 특징 식별 모듈(132)'은 이미지에 포함된 오브젝트의 특징을 식별할 수 있는 모듈을 말한다. 특히, 오브젝트 특징 식별 모듈(132)은 본 개시에 따른 제2 신경망 모델(122)을 이용하여 이미지에 포함된 오브젝트의 특징을 식별할 수 있다. 전술한 바와 같이, 제2 신경망 모델(122)이란 이미지에 포함된 오브젝트의 특징을 분류하여 그 결과를 출력하도록 학습된 신경망 모델을 말하며, 프로세서(130)는 메모리(120)에 저장된 제2 신경망 모델(122)에 대한 데이터에 액세스함으로써 제2 신경망 모델(122)을 이용할 수 있다. 구체적으로, 오브젝트 특징 식별 모듈(132)은 제2 신경망 모델(122)을 통해, 이미지에 포함된 오브젝트가 이미지의 다양한 특징에 따라 구분된 복수의 클래스(또는 카테고리, 도메인) 각각에 대응될 확률에 대한 정보를 획득하고, 그에 기초하여 입력된 이미지에 포함된 오브젝트의 특징을 식별할 수 있다. 여기서, 복수의 클래스란 오브젝트의 투명 여부 및 오브젝트의 대칭 여부 등과 같은 특징에 따라 기 정의될 수 있다. The 'object characteristic identification module 132' refers to a module capable of identifying characteristics of an object included in an image. In particular, the object
'3D 포즈 정보 획득 모듈(133)'이란 오브젝트에 대한 2 차원의 포즈 정보를 재구성하여 오브젝트에 대한 3 차원의 포즈 정보를 획득할 수 있는 모듈을 말한다. 특히, 3D 포즈 정보 획득 모듈(133)은 오브젝트의 특징에 따라 상이한 방법으로 3 차원의 포즈 정보를 획득할 수 있다. 구체적으로, 2D 포즈 정보 획득 모듈(131)을 통해 2D 포즈 정보가 수신되고, 오브젝트 특징 식별 모듈(132)을 통해 오브젝트가 투명한 오브젝트라는 정보가 수신되면, 3D 포즈 정보 획득 모듈(133)은 복수의 이미지 별 2 차원의 포즈 정보를 바탕으로 스테레오 정합(stereo matching)을 수행하여, 오브젝트에 대한 3 차원의 포즈 정보를 획득할 수 있다. 2D 포즈 정보 획득 모듈(131)을 통해 2D 포즈 정보가 수신되고, 오브젝트 특징 식별 모듈(132)을 통해 오브젝트가 불투명한 오브젝트라는 정보가 수신되면, 3D 포즈 정보 획득 모듈(133)은 복수의 이미지 중 하나의 이미지 및 하나의 이미지에 대응되는 뎁스(depth) 정보를 바탕으로 오브젝트에 대한 3 차원의 포즈 정보를 획득할 수 있다.The '3D pose information acquisition module 133' refers to a module capable of acquiring three-dimensional pose information on an object by reconstructing two-dimensional pose information on the object. In particular, the 3D pose
프로세서(130)의 제어를 바탕으로 한 본 개시에 따른 다양한 실시 예에 대해서는 도 1 내지 도 6를 참조하여 상술하였으므로 중복 설명은 생략한다.Various embodiments according to the present disclosure based on the control of the
도 9는 본 개시의 일 실시 예에 따른 전자 장치의 구성을 상세하게 나타내는 블록도이다.9 is a block diagram illustrating a detailed configuration of an electronic device according to an embodiment of the present disclosure.
도 9에 도시된 바와 같이, 본 개시의 일 실시 예에 따른 전자 장치(100)는 카메라(110), 메모리(120) 및 프로세서(130)뿐만 아니라, 구동부(140), 통신부(150), 입력부(160) 및 출력부(170)를 더 포함할 수 있다. 그러나, 도 7 내지 도 9에 도시된 바와 같은 구성들은 예시적인 것에 불과할 뿐이며, 본 개시를 실시함에 있어 도 7 내지 도 9에 도시된 바와 같은 구성에 더하여 새로운 구성이 추가되거나 일부 구성이 생략될 수 있음은 물론이다.As shown in FIG. 9 , the
구동부(140)는 구동 데이터를 바탕으로 전자 장치(100)의 다양한 동작을 구현하기 위한 동력을 발생시킬 수 있는 구성을 말한다. 그리고, 구동부(140)에 의해 발생된 동력은 구동부(140)에 물리적으로 연결된 지지부(미도시)에 전달되어 지지부(미도시)를 움직이게 할 수 있으며, 이에 따라 전자 장치(100)의 다양한 동작이 구현될 수 있다.The driving
구체적으로, 구동부(140)는 전자 장치(100)에 공급되는 전기 에너지를 바탕으로 소정 토크의 회전력을 발생시키는 모터를 포함할 수 있으며, 전자 장치(100)에 공급되는 유압이나 공기압을 바탕으로 회전력을 발생시키는 피스톤 또는 실린더 장치를 포함할 수도 있다. 그리고, 지지부(미도시)는 복수의 마디 및 복수의 마디를 연결하는 복수의 관절을 포함할 수 있으며, 그 밖에도 전자 장치(100)의 다양한 동작을 수행할 수 있도록 다양한 형상으로 구현될 수 있다. 한편, 본 개시에 따른 전자 장치(100)은 복수의 구동부(140) 또는 복수의 지지부(미도시)를 포함할 수 있다. 나아가, 각각의 구동부(140) 및 지지부(미도시)에 포함되는 구성들의 개수 또한 특별한 개수로 제한되지 않는다.Specifically, the driving
특히, 본 개시에 따른 다양한 실시 예에 있어서, 프로세서(130)는 제1 카메라(110) 및 제2 카메라(110) 중 적어도 하나의 카메라(110)의 위치가 변경되도록 구동부(140)를 제어할 수 있다. 구체적으로, 프로세서(130)에 의해 구동부(140)가 제어되면, 이에 따라 지지부(미도시)에 연결된 적어도 하나의 카메라(110)의 위치가 변경될 수 있다. 적어도 하나의 카메라(110)의 위치가 변경되면, 프로세서(130)는 변경된 적어도 하나의 카메라(110)의 위치를 바탕으로 제1 카메라(110) 및 제2 카메라(110) 사이의 위치 관계에 대한 위치 정보를 획득하고, 복수의 이미지 별 2 차원의 포즈 정보 및 획득된 위치 정보를 바탕으로 스테레오 정합을 수행할 수 있다. In particular, in various embodiments according to the present disclosure, the
통신부(150)는 회로를 포함하며, 외부 장치와의 통신을 수행할 수 있다. 구체적으로, 프로세서(130)는 통신부(150)를 통해 연결된 외부 장치로부터 각종 데이터 또는 정보를 수신할 수 있으며, 외부 장치로 각종 데이터 또는 정보를 전송할 수도 있다.The
통신부(150)는 WiFi 모듈, Bluetooth 모듈, 무선 통신 모듈, 및 NFC 모듈 중 적어도 하나를 포함할 수 있다. 구체적으로, WiFi 모듈과 Bluetooth 모듈 각각은 WiFi 방식, Bluetooth 방식으로 통신을 수행할 수 있다. WiFi 모듈이나 Bluetooth 모듈을 이용하는 경우에는 SSID 등과 같은 각종 연결 정보를 먼저 송수신하여, 이를 이용하여 통신 연결한 후 각종 정보들을 송수신할 수 있다. The
또한, 무선 통신 모듈은 IEEE, Zigbee, 3G(3rd Generation), 3GPP(3rd Generation Partnership Project), LTE(Long Term Evolution), 5G(5th Generation) 등과 같은 다양한 통신 규격에 따라 통신을 수행할 수 있다. 그리고, NFC 모듈은 135kHz, 13.56MHz, 433MHz, 860~960MHz, 2.45GHz 등과 같은 다양한 RF-ID 주파수 대역들 중에서 13.56MHz 대역을 사용하는 NFC(Near Field Communication) 방식으로 통신을 수행할 수 있다.In addition, the wireless communication module may perform communication according to various communication standards such as IEEE, Zigbee, 3rd Generation (3G), 3rd Generation Partnership Project (3GPP), Long Term Evolution (LTE), 5th Generation (5G), and the like. In addition, the NFC module may perform communication using a Near Field Communication (NFC) method using a 13.56 MHz band among various RF-ID frequency bands such as 135 kHz, 13.56 MHz, 433 MHz, 860 to 960 MHz, and 2.45 GHz.
특히, 본 개시에 따른 다양한 실시 예에 있어서, 프로세서(130)는 통신부(150)를 통해 외부 장치(예: 사용자 단말)로부터 복수의 이미지를 수신할 수 있다. 즉, 이상에서는 적어도 하나의 카메라(110)를 통해 복수의 이미지를 획득하는 경우를 전제로 본 개시의 다양한 실시 예에 대해 설명하였으나, 본 개시에 따른 복수의 이미지는 외부 장치에 포함된 카메라(110)에 의해 획득된 후 전자 장치(100)로 전송될 수도 있다. In particular, according to various embodiments of the present disclosure, the
한편, 이상에서는 제1 신경망 모델(121), 제2 신경망 모델(122)이 전자 장치(100)의 메모리(120)에 저장되어 온 디바이스(on-device)로 동작하는 것을 전제로 설명하였으나, 제1 신경망 모델(121) 및 제2 신경망 모델(122) 중 적어도 하나는 외부 장치(예: 서버)를 통해 구현될 수도 있다. 이 경우, 프로세서(130)는 복수의 이미지에 대한 데이터를 외부 장치로 전송하도록 통신부(150)를 제어하고, 통신부(150)를 통해 외부 장치로부터 제1 신경망 모델(121) 및 제2 신경망 모델(122) 중 적어도 하나의 출력에 대응되는 정보를 수신할 수도 있다. Meanwhile, in the above description, it is assumed that the first
한편, 본 개시에 따른 전자 장치(100)가 구동부(140)를 포함하는 경우, 프로세서(130)는 통신부(150)를 통해 외부 장치(예: 엣지 컴퓨팅 디바이스(edge computing device))로부터 구동부(140)를 제어하기 위한 구동 데이터를 수신하고, 수신된 구동 데이터를 바탕으로 구동부(140)의 동작을 제어할 수도 있다.Meanwhile, when the
입력부(160)는 회로를 포함하며, 프로세서(130)는 입력부(160)를 통해 전자 장치(100)의 동작을 제어하기 위한 사용자 명령을 수신할 수 있다. 구체적으로, 입력부(160)는 마이크(미도시), 및 리모컨 신호 수신부(미도시) 등을 포함할 수 있다. 그리고, 입력부(160)는 터치 스크린으로서 디스플레이에 포함된 형태로 구현될 수도 있다.The
특히, 본 개시에 따른 다양한 실시 예에 있어서, 입력부(160)는 복수의 이미지를 획득하기 위한 사용자 입력, 오브젝트에 대한 3 차원의 포즈 정보를 포함하는 뎁스 맵을 획득하기 위한 사용자 입력 등과 같은 다양한 종류의 사용자 입력을 수신할 수 있다.In particular, in various embodiments of the present disclosure, the
출력부(170)는 회로를 포함하며, 프로세서(130)는 출력부(170)를 통해 전자 장치(100)가 수행할 수 있는 다양한 기능을 출력할 수 있다. 그리고, 출력부(170)는 디스플레이, 스피커 및 인디케이터 중 적어도 하나를 포함할 수 있다. 디스플레이는 프로세서(130)의 제어에 의하여 영상 데이터를 출력할 수 있다. 구체적으로, 디스플레이는 프로세서(130)의 제어에 의하여 메모리(120)에 기 저장된 영상을 출력할 수 있다. 본 개시의 일 실시 예에 따른 디스플레이는 메모리(120)에 저장된 사용자 인터페이스(User Interface)를 표시할 수도 있다. 디스플레이는 LCD(Liquid Crystal Display Panel), OLED(Organic Light Emitting Diodes) 등으로 구현될 수 있으며, 또한 디스플레이는 경우에 따라 플렉서블 디스플레이, 투명 디스플레이 등으로 구현되는 것도 가능하다. 다만, 본 개시에 따른 디스플레이가 특정한 종류에 한정되는 것은 아니다. 스피커는 프로세서(130)의 제어에 의하여 오디오 데이터를 출력할 수 있으며, 인디케이터는 프로세서(130)의 제어에 의하여 점등될 수 있다.The
특히, 본 개시에 따른 다양한 실시 예에 있어서, 출력부(170)는 적어도 하나의 카메라(110)를 통해 획득된 복수의 이미지, 복수의 이미지에 포함된 오브젝트에 대한 2 차원의 포즈 정보, 오브젝트에 대한 3 차원의 포즈 정보를 포함하는 뎁스 맵 등을 출력할 수 있다. In particular, in various embodiments according to the present disclosure, the
상술한 바와 같은 본 개시의 다양한 실시 예에 따르면, 전자 장치(100)는 이미지에 포함된 오브젝트의 특징에 따라 효율적인 방법으로 오브젝트에 대한 3 차원의 포즈 정보를 획득할 수 있게 된다. According to various embodiments of the present disclosure as described above, the
한편, 이상에서 상술한 바와 같은 제1 신경망 모델(121) 및 제2 신경망 모델(122) 등에 관련된 기능은 메모리(120) 및 프로세서(130)를 통해 수행될 수 있다. 프로세서(130)는 하나 또는 복수의 프로세서(130)로 구성될 수 있다. 이때, 하나 또는 복수의 프로세서(130)는 CPU, AP 등과 같은 범용 프로세서(130), GPU. VPU 등과 같은 그래픽 전용 프로세서(130) 또는 NPU와 같은 인공 지능 전용 프로세서(130)일 수 있다.Meanwhile, functions related to the first
하나 또는 복수의 프로세서(130)는, 비휘발성 메모리(120) 및 휘발성 메모리(120)에 저장된 기 정의된 동작 규칙 또는 인공 지능 모델에 따라, 입력 데이터를 처리하도록 제어한다. 기 정의된 동작 규칙 또는 인공 지능 모델은 학습을 통해 만들어진 것을 특징으로 한다. One or
여기서, 학습을 통해 만들어진다는 것은, 다수의 학습 데이터들에 학습 알고리즘을 적용함으로써, 원하는 특성의 기 정의된 동작 규칙 또는 인공 지능 모델이 만들어짐을 의미한다. 이러한 학습은 본 개시에 따른 인공 지능이 수행되는 기기 자체에서 이루어질 수도 있고, 별도의 서버/시스템을 통해 이루어 질 수도 있다. Here, being made through learning means that a predefined operation rule or artificial intelligence model of a desired characteristic is created by applying a learning algorithm to a plurality of learning data. Such learning may be performed in the device itself on which artificial intelligence according to the present disclosure is performed, or may be performed through a separate server/system.
인공 지능 모델은, 복수의 신경망 레이어들로 구성될 수 있다. 각 레이어는 복수의 가중치(weight values)을 갖고 있으며, 이전(previous) 레이어의 연산 결과와 복수의 가중치의 연산을 통해 레이어의 연산을 수행한다. 신경망의 예로는, CNN (Convolutional Neural Network), DNN (Deep Neural Network), RNN (Recurrent Neural Network), RBM (Restricted Boltzmann Machine), DBN (Deep Belief Network), BRDNN(Bidirectional Recurrent Deep Neural Network), GAN(Generative Adversarial Networks) 및 심층 Q-네트워크 (Deep Q-Networks)이 있으며, 본 개시에서의 신경망은 명시한 경우를 제외하고 전술한 예에 한정되지 않는다.The artificial intelligence model may be composed of a plurality of neural network layers. Each layer has a plurality of weight values, and the layer operation is performed through the operation of the previous layer and the operation of the plurality of weights. Examples of neural networks include Convolutional Neural Network (CNN), Deep Neural Network (DNN), Recurrent Neural Network (RNN), Restricted Boltzmann Machine (RBM), Deep Belief Network (DBN), Bidirectional Recurrent Deep Neural Network (BRDNN), GAN. There are Generative Adversarial Networks and Deep Q-Networks, and the neural network in the present disclosure is not limited to the above-described examples, except as otherwise specified.
학습 알고리즘은, 다수의 학습 데이터들을 이용하여 소정의 대상 기기(예컨대, 로봇)을 훈련시켜 소정의 대상 기기 스스로 결정을 내리거나 예측을 할 수 있도록 하는 방법이다. 학습 알고리즘의 예로는, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)이 있으며, 본 개시에서의 학습 알고리즘은 명시한 경우를 제외하고 전술한 예에 한정되지 않는다.The learning algorithm is a method of training a predetermined target device (eg, a robot) using a plurality of learning data so that the predetermined target device can make a decision or make a prediction by itself. Examples of the learning algorithm include supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, and the learning algorithm in the present disclosure is specified when It is not limited to the above example except for.
기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적 저장매체'는 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다. 예로, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.The device-readable storage medium may be provided in the form of a non-transitory storage medium. Here, 'non-transitory storage medium' is a tangible device and only means that it does not contain a signal (eg, electromagnetic wave). It does not distinguish the case where it is stored as For example, the 'non-transitory storage medium' may include a buffer in which data is temporarily stored.
일 실시 예에 따르면, 본 문서에 개시된 다양한 실시 예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품(예: 다운로더블 앱(downloadable app))의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리(120)와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.According to an embodiment, the method according to various embodiments disclosed in this document may be provided by being included in a computer program product. Computer program products may be traded between sellers and buyers as commodities. The computer program product is distributed in the form of a machine-readable storage medium (eg compact disc read only memory (CD-ROM)), or via an application store (eg Play Store TM ) or on two user devices ( It can be distributed (eg downloaded or uploaded) directly or online between smartphones (eg: smartphones). In the case of online distribution, at least a portion of the computer program product (eg, a downloadable app) is stored in device-readable storage, such as the manufacturer's server, the server of an application store, or the
이상에서 상술한 바와 같은 본 개시의 다양한 실시 예들에 따른 구성 요소(예: 모듈 또는 프로그램) 각각은 단수 또는 복수의 개체로 구성될 수 있으며, 전술한 해당 서브 구성 요소들 중 일부 서브 구성 요소가 생략되거나, 또는 다른 서브 구성 요소가 다양한 실시 예에 더 포함될 수 있다. 대체적으로 또는 추가적으로, 일부 구성 요소들(예: 모듈 또는 프로그램)은 하나의 개체로 통합되어, 통합되기 이전의 각각의 해당 구성 요소에 의해 수행되는 기능을 동일 또는 유사하게 수행할 수 있다. As described above, each of the components (eg, a module or a program) according to various embodiments of the present disclosure may be composed of a singular or a plurality of entities, and some of the aforementioned sub-components are omitted. Alternatively, other sub-components may be further included in various embodiments. Alternatively or additionally, some components (eg, a module or a program) may be integrated into a single entity to perform the same or similar functions performed by each corresponding component prior to integration.
다양한 실시 예들에 따른, 모듈, 프로그램 또는 다른 구성 요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.According to various embodiments, operations performed by a module, program, or other component may be sequentially, parallelly, repetitively or heuristically executed, or at least some operations may be executed in a different order, omitted, or other operations may be added. can
한편, 본 개시에서 사용된 용어 "부" 또는 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구성된 유닛을 포함하며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. "부" 또는 "모듈"은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 모듈은 ASIC(application-specific integrated circuit)으로 구성될 수 있다.Meanwhile, the term “unit” or “module” used in the present disclosure includes a unit composed of hardware, software, or firmware, and may be used interchangeably with terms such as, for example, logic, logic block, part, or circuit. can A “unit” or “module” may be an integrally formed component or a minimum unit or a part of performing one or more functions. For example, the module may be configured as an application-specific integrated circuit (ASIC).
본 개시의 다양한 실시 예들은 기기(machine)(예: 컴퓨터)로 읽을 수 있는 저장 매체(machine-readable storage media에 저장된 명령어를 포함하는 소프트웨어로 구현될 수 있다. 기기는 저장 매체로부터 저장된 명령어를 호출하고, 호출된 명령어에 따라 동작이 가능한 장치로서, 개시된 실시 예들에 따른 전자 장치(예: 전자 장치(100))를 포함할 수 있다. Various embodiments of the present disclosure may be implemented as software including instructions stored in a machine-readable storage medium readable by a machine (eg, a computer). The device calls the stored instructions from the storage medium. and, as a device capable of operating according to the called command, the electronic device (eg, the electronic device 100) according to the disclosed embodiments may be included.
상기 명령이 프로세서에 의해 실행될 경우, 프로세서가 직접 또는 상기 프로세서의 제어 하에 다른 구성요소들을 이용하여 상기 명령에 해당하는 기능을 수행할 수 있다. 명령은 컴파일러 또는 인터프리터에 의해 생성 또는 실행되는 코드를 포함할 수 있다. When the instruction is executed by the processor, the processor may perform a function corresponding to the instruction by using other components directly or under the control of the processor. Instructions may include code generated or executed by a compiler or interpreter.
이상에서는 본 개시의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 개시는 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 개시의 요지를 벗어남이 없이 당해 개시가 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 개시의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안 될 것이다.In the above, preferred embodiments of the present disclosure have been illustrated and described, but the present disclosure is not limited to the specific embodiments described above, and is generally used in the technical field to which the present disclosure belongs without departing from the gist of the present disclosure as claimed in the claims. Various modifications may be made by those having the knowledge of
100: 전자 장치
110: 카메라
120: 메모리
130: 프로세서
140: 구동부
150: 통신부
160: 입력부
170: 출력부100: electronic device 110: camera
120: memory 130: processor
140: driving unit 150: communication unit
160: input unit 170: output unit
Claims (19)
적어도 하나의 카메라;
메모리; 및
상기 적어도 하나의 카메라를 통해 복수의 이미지를 획득하고,
상기 복수의 이미지 각각에 대한 RGB 데이터를 제1 신경망 모델에 입력하여, 상기 복수의 이미지에 포함된 오브젝트에 대한 2 차원의 포즈 정보를 획득하고,
상기 복수의 이미지 중 적어도 하나의 이미지에 대한 RGB 데이터를 제2 신경망 모델에 입력하여, 상기 오브젝트의 투명 여부를 식별하며,
상기 오브젝트가 투명한 오브젝트이면, 상기 복수의 이미지 별 2 차원의 포즈 정보를 바탕으로 스테레오 정합(stereo matching)을 수행하여, 상기 오브젝트에 대한 3 차원의 포즈 정보를 획득하고,
상기 오브젝트가 불투명한 오브젝트이면, 상기 복수의 이미지 중 하나의 이미지 및 상기 하나의 이미지에 대응되는 뎁스(depth) 정보를 바탕으로 상기 오브젝트에 대한 3 차원의 포즈 정보를 획득하는 프로세서; 를 포함하는 전자 장치.
In an electronic device,
at least one camera;
Memory; and
Acquire a plurality of images through the at least one camera,
Input RGB data for each of the plurality of images into a first neural network model to obtain two-dimensional pose information for an object included in the plurality of images,
Input RGB data for at least one image among the plurality of images into a second neural network model to identify whether the object is transparent,
If the object is a transparent object, stereo matching is performed based on the two-dimensional pose information for each of the plurality of images to obtain three-dimensional pose information for the object,
if the object is an opaque object, a processor for obtaining three-dimensional pose information on the object based on one image among the plurality of images and depth information corresponding to the one image; An electronic device comprising a.
상기 프로세서는,
상기 제2 신경망 모델을 통해 상기 오브젝트의 투명 여부에 대한 정보를 획득하고,
상기 오브젝트의 투명 여부에 대한 정보를 바탕으로 상기 오브젝트의 투명 여부를 식별하는 전자 장치.
According to claim 1,
The processor is
Obtaining information on whether the object is transparent through the second neural network model,
An electronic device that identifies whether the object is transparent based on information on whether the object is transparent.
상기 프로세서는,
상기 제2 신경망 모델을 통해 상기 오브젝트의 대칭 여부에 대한 정보를 획득하고,
상기 오브젝트의 대칭 여부에 대한 정보를 바탕으로 상기 오브젝트의 대칭 여부를 식별하며,
상기 오브젝트가 대칭성을 가지는 오브젝트이면, 상기 2 차원의 포즈 정보에 포함된 제1 특징점들을 대칭성에 무관한 제2 특징점들로 변환하고,
상기 제2 특징점들을 바탕으로 상기 스테레오 정합을 수행하여 상기 오브젝트에 대한 3 차원의 포즈 정보를 획득하는 전자 장치.
According to claim 1,
The processor is
Obtaining information on whether the object is symmetrical through the second neural network model,
Identifies whether the object is symmetrical based on the information on whether the object is symmetrical,
If the object is an object having symmetry, first feature points included in the two-dimensional pose information are converted into second feature points irrelevant to symmetry,
The electronic device obtains three-dimensional pose information on the object by performing the stereo matching based on the second feature points.
상기 오브젝트가 대칭성을 가지는 오브젝트이면, 상기 제1 특징점들은 x축 또는 y축이 상기 적어도 하나의 카메라와 수직인 3 차원 좌표계를 바탕으로 식별되는 전자 장치.
According to claim 1,
If the object is an object having symmetry, the first feature points are identified based on a three-dimensional coordinate system in which an x-axis or a y-axis is perpendicular to the at least one camera.
상기 복수의 이미지는 상기 적어도 하나의 카메라 중 제1 카메라를 통해 서로 다른 시점에 획득된 두 개의 이미지인 전자 장치.
According to claim 1,
The plurality of images are two images acquired at different time points through a first camera among the at least one camera.
상기 복수의 이미지는 상기 적어도 하나의 카메라 중 상기 제1 카메라 및 제2 카메라 각각을 통해 서로 동일한 시점에 획득된 두 개의 이미지인 전자 장치.
According to claim 1,
The plurality of images are two images acquired at the same time point through each of the first camera and the second camera among the at least one camera.
상기 프로세서는,
상기 제1 카메라 및 상기 제2 카메라 사이의 위치 관계에 대한 제1 위치 정보를 획득하고,
상기 복수의 이미지 별 2 차원의 포즈 정보 및 상기 제1 위치 정보를 바탕으로 상기 스테레오 정합을 수행하는 전자 장치.
7. The method of claim 6,
The processor is
obtaining first location information about a location relationship between the first camera and the second camera;
The electronic device performs the stereo matching based on the two-dimensional pose information for each of the plurality of images and the first location information.
구동부; 를 더 포함하고,
상기 프로세서는,
상기 제1 카메라 및 상기 제2 카메라 중 적어도 하나의 카메라의 위치가 변경되도록 상기 구동부를 제어하며,
상기 변경된 적어도 하나의 카메라의 위치를 바탕으로 상기 제1 카메라 및 상기 제2 카메라 사이의 위치 관계에 대한 제2 위치 정보를 획득하고,
상기 복수의 이미지 별 2 차원의 포즈 정보 및 상기 제2 위치 정보를 바탕으로 상기 스테레오 정합을 수행하는 전자 장치.
8. The method of claim 7,
drive unit; further comprising,
The processor is
controlling the driving unit to change the position of at least one of the first camera and the second camera,
Obtaining second position information about the positional relationship between the first camera and the second camera based on the changed position of the at least one camera,
The electronic device performs the stereo matching based on the two-dimensional pose information for each of the plurality of images and the second position information.
상기 제1 신경망 모델 및 상기 제2 신경망 모델은 하나의 통합된 신경망 모델에 포함되는 전자 장치.
According to claim 1,
The first neural network model and the second neural network model are included in one integrated neural network model.
적어도 하나의 카메라를 통해 복수의 이미지를 획득하는 단계;
상기 복수의 이미지 각각에 대한 RGB 데이터를 제1 신경망 모델에 입력하여, 상기 복수의 이미지에 포함된 오브젝트에 대한 2 차원의 포즈 정보를 획득하는 단계;
상기 복수의 이미지 중 적어도 하나의 이미지에 대한 RGB 데이터를 제2 신경망 모델에 입력하여 상기 오브젝트의 투명 여부를 식별하는 단계;
상기 오브젝트가 투명한 오브젝트이면, 상기 복수의 이미지 별 2 차원의 포즈 정보를 바탕으로 스테레오 정합(stereo matching)을 수행하여, 상기 오브젝트에 대한 3 차원의 포즈 정보를 획득하는 단계; 및
상기 오브젝트가 불투명한 오브젝트이면, 상기 복수의 이미지 중 하나의 이미지 및 상기 하나의 이미지에 대응되는 뎁스(depth) 정보를 바탕으로 상기 오브젝트에 대한 3 차원의 포즈 정보를 획득하는 단계; 를 포함하는 전자 장치의 제어 방법..
A method for controlling an electronic device, comprising:
acquiring a plurality of images through at least one camera;
inputting RGB data for each of the plurality of images into a first neural network model to obtain two-dimensional pose information for an object included in the plurality of images;
inputting RGB data for at least one image among the plurality of images into a second neural network model to identify whether the object is transparent;
if the object is a transparent object, performing stereo matching based on the two-dimensional pose information for each of the plurality of images to obtain three-dimensional pose information for the object; and
if the object is an opaque object, obtaining three-dimensional pose information on the object based on one image among the plurality of images and depth information corresponding to the one image; A control method of an electronic device comprising a..
상기 오브젝트의 투명 여부를 식별하는 단계는,
상기 제2 신경망 모델을 통해 상기 오브젝트의 투명 여부에 대한 정보를 획득하는 단계; 및
상기 오브젝트의 투명 여부에 대한 정보를 바탕으로 상기 오브젝트의 투명 여부를 식별하는 단계; 를 포함하는 전자 장치의 제어 방법.
11. The method of claim 10,
The step of identifying whether the object is transparent,
obtaining information on whether the object is transparent through the second neural network model; and
identifying whether the object is transparent based on information on whether the object is transparent; A control method of an electronic device comprising a.
상기 오브젝트의 대칭 여부를 식별하는 단계는,
상기 제2 신경망 모델을 통해 상기 오브젝트의 대칭 여부에 대한 정보를 획득하는 단계; 및
상기 오브젝트의 대칭 여부에 대한 정보를 바탕으로 상기 오브젝트의 대칭 여부를 식별하는 단계; 를 포함하고,
상기 전자 장치의 제어 방법은,
상기 오브젝트가 대칭성을 가지는 오브젝트이면, 상기 2 차원의 포즈 정보에 포함된 제1 특징점들을 대칭성에 무관한 제2 특징점들로 변환하는 단계; 및
상기 제2 특징점들을 바탕으로 상기 스테레오 정합을 수행하여 상기 오브젝트에 대한 3 차원의 포즈 정보를 획득하는 단계; 를 더 포함하는 전자 장치의 제어 방법.
11. The method of claim 10,
The step of identifying whether the object is symmetrical,
obtaining information on whether the object is symmetrical through the second neural network model; and
identifying whether the object is symmetric based on information on whether the object is symmetric; including,
The control method of the electronic device,
if the object is an object having symmetry, converting first feature points included in the two-dimensional pose information into second feature points irrelevant to symmetry; and
obtaining three-dimensional pose information on the object by performing the stereo matching based on the second feature points; Control method of an electronic device further comprising a.
상기 오브젝트가 대칭성을 가지는 오브젝트이면, 상기 제1 특징점들은 x축 또는 y축이 상기 적어도 하나의 카메라와 수직인 3 차원 좌표계를 바탕으로 식별되는 전자 장치의 제어 방법.
11. The method of claim 10,
If the object is an object having symmetry, the first feature points are identified based on a three-dimensional coordinate system in which an x-axis or a y-axis is perpendicular to the at least one camera.
상기 복수의 이미지는 상기 적어도 하나의 카메라 중 제1 카메라를 통해 서로 다른 시점에 획득된 두 개의 이미지인 전자 장치의 제어 방법.
11. The method of claim 10,
The plurality of images are two images acquired at different time points through a first camera among the at least one camera.
상기 복수의 이미지는 상기 적어도 하나의 카메라 중 상기 제1 카메라 및 제2 카메라 각각을 통해 서로 동일한 시점에 획득된 두 개의 이미지인 전자 장치의 제어 방법.
11. The method of claim 10,
The plurality of images are two images acquired at the same point in time through each of the first camera and the second camera among the at least one camera.
상기 전자 장치의 제어 방법은,
상기 제1 카메라 및 상기 제2 카메라 사이의 위치 관계에 대한 제1 위치 정보를 획득하는 단계; 및
상기 복수의 이미지 별 2 차원의 포즈 정보 및 상기 제1 위치 정보를 바탕으로 상기 스테레오 정합을 수행하는 단계; 를 더 포함하는 전자 장치의 제어 방법.
16. The method of claim 15,
The control method of the electronic device,
obtaining first location information on a location relationship between the first camera and the second camera; and
performing the stereo matching based on the two-dimensional pose information for each of the plurality of images and the first position information; Control method of an electronic device further comprising a.
상기 전자 장치의 제어 방법은,
상기 제1 카메라 및 상기 제2 카메라 중 적어도 하나의 카메라의 위치가 변경되도록 제어하는 단계;
상기 변경된 적어도 하나의 카메라의 위치를 바탕으로 상기 제1 카메라 및 상기 제2 카메라 사이의 위치 관계에 대한 제2 위치 정보를 획득하는 단계; 및
상기 복수의 이미지 별 2 차원의 포즈 정보 및 상기 제2 위치 정보를 바탕으로 상기 스테레오 정합을 수행하는 단계; 를 더 포함하는 전자 장치의 제어 방법.
17. The method of claim 16,
The control method of the electronic device,
controlling the position of at least one of the first camera and the second camera to be changed;
acquiring second position information on a positional relationship between the first camera and the second camera based on the changed position of the at least one camera; and
performing the stereo matching based on the two-dimensional pose information for each of the plurality of images and the second position information; Control method of an electronic device further comprising a.
상기 제1 신경망 모델 및 상기 제2 신경망 모델은 하나의 통합된 신경망 모델에 포함되는 전자 장치의 제어 방법.
11. The method of claim 10,
The method of controlling an electronic device in which the first neural network model and the second neural network model are included in one integrated neural network model.
상기 전자 장치의 제어 방법은,
적어도 하나의 카메라를 통해 복수의 이미지를 획득하는 단계;
상기 복수의 이미지 각각에 대한 RGB 데이터를 제1 신경망 모델에 입력하여, 상기 복수의 이미지에 포함된 오브젝트에 대한 2 차원의 포즈 정보를 획득하는 단계;
상기 복수의 이미지 중 적어도 하나의 이미지에 대한 RGB 데이터를 제2 신경망 모델에 입력하여 상기 오브젝트의 투명 여부를 식별하는 단계;
상기 오브젝트가 투명한 오브젝트이면, 상기 복수의 이미지 별 2 차원의 포즈 정보를 바탕으로 스테레오 정합(stereo matching)을 수행하여, 상기 오브젝트에 대한 3 차원의 포즈 정보를 획득하는 단계; 및
상기 오브젝트가 불투명한 오브젝트이면, 상기 복수의 이미지 중 하나의 이미지 및 상기 하나의 이미지에 대응되는 뎁스(depth) 정보를 바탕으로 상기 오브젝트에 대한 3 차원의 포즈 정보를 획득하는 단계; 를 포함하는 컴퓨터 판독 가능 기록매체.
A non-transitory computer-readable recording medium comprising a program for executing a control method of an electronic device,
The control method of the electronic device,
acquiring a plurality of images through at least one camera;
inputting RGB data for each of the plurality of images into a first neural network model to obtain two-dimensional pose information for an object included in the plurality of images;
inputting RGB data for at least one image among the plurality of images into a second neural network model to identify whether the object is transparent;
if the object is a transparent object, performing stereo matching based on the two-dimensional pose information for each of the plurality of images to obtain three-dimensional pose information for the object; and
if the object is an opaque object, obtaining three-dimensional pose information on the object based on one image among the plurality of images and depth information corresponding to the one image; A computer-readable recording medium comprising a.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/KR2021/016060 WO2022098164A1 (en) | 2020-11-06 | 2021-11-05 | Electronic device and control method of electronic device |
EP21889629.8A EP4206977A4 (en) | 2020-11-06 | 2021-11-05 | Electronic device and control method of electronic device |
US18/194,205 US20230245344A1 (en) | 2020-11-06 | 2023-03-31 | Electronic device and controlling method of electronic device |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20200147389 | 2020-11-06 | ||
KR1020200147389 | 2020-11-06 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20220061812A true KR20220061812A (en) | 2022-05-13 |
Family
ID=81583451
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210026660A KR20220061812A (en) | 2020-11-06 | 2021-02-26 | Electronic device and controlling method of electronic device |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20220061812A (en) |
-
2021
- 2021-02-26 KR KR1020210026660A patent/KR20220061812A/en active Search and Examination
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11989350B2 (en) | Hand key point recognition model training method, hand key point recognition method and device | |
US11557085B2 (en) | Neural network processing for multi-object 3D modeling | |
CA3035298C (en) | Predicting depth from image data using a statistical model | |
CN109683699B (en) | Method and device for realizing augmented reality based on deep learning and mobile terminal | |
TWI755762B (en) | Target tracking method, intelligent mobile device and storage medium thereof | |
US20220138977A1 (en) | Two-stage depth estimation machine learning algorithm and spherical warping layer for equi-rectangular projection stereo matching | |
KR102595787B1 (en) | Electronic device and control method thereof | |
US11748913B2 (en) | Modeling objects from monocular camera outputs | |
CN112487979B (en) | Target detection method, model training method, device, electronic equipment and medium | |
KR20210114952A (en) | Target object detection method, apparatus, device and storage medium | |
US11557086B2 (en) | Three-dimensional (3D) shape modeling based on two-dimensional (2D) warping | |
CN116194951A (en) | Method and apparatus for stereoscopic based 3D object detection and segmentation | |
US20230245344A1 (en) | Electronic device and controlling method of electronic device | |
KR20230133293A (en) | Enhancement of 3D models using multi-view refinement | |
US20240037788A1 (en) | 3d pose estimation in robotics | |
US20190096073A1 (en) | Histogram and entropy-based texture detection | |
US11417063B2 (en) | Determining a three-dimensional representation of a scene | |
KR20220061812A (en) | Electronic device and controlling method of electronic device | |
KR20240012426A (en) | Unconstrained image stabilization | |
US20240177414A1 (en) | 3d generation of diverse categories and scenes | |
US20230290057A1 (en) | Action-conditional implicit dynamics of deformable objects | |
US20220375110A1 (en) | Augmented reality guided depth estimation | |
US11983897B2 (en) | Camera intrinsic re-calibration in mono visual tracking system | |
US11681361B2 (en) | Reducing startup time of augmented reality experience | |
US20230360267A1 (en) | Intrinsic parameters estimation in visual tracking systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination |