KR20230149705A - Electronic device for processing image and method of operating the same - Google Patents
Electronic device for processing image and method of operating the same Download PDFInfo
- Publication number
- KR20230149705A KR20230149705A KR1020220133618A KR20220133618A KR20230149705A KR 20230149705 A KR20230149705 A KR 20230149705A KR 1020220133618 A KR1020220133618 A KR 1020220133618A KR 20220133618 A KR20220133618 A KR 20220133618A KR 20230149705 A KR20230149705 A KR 20230149705A
- Authority
- KR
- South Korea
- Prior art keywords
- image
- electronic device
- label
- interest
- camera
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 91
- 238000012545 processing Methods 0.000 title description 21
- 230000009466 transformation Effects 0.000 claims abstract description 33
- 238000012015 optical character recognition Methods 0.000 claims description 31
- 238000013473 artificial intelligence Methods 0.000 claims description 24
- 238000013519 translation Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 56
- 238000012549 training Methods 0.000 description 53
- 238000001514 detection method Methods 0.000 description 52
- 235000014101 wine Nutrition 0.000 description 47
- 239000000047 product Substances 0.000 description 32
- 238000004891 communication Methods 0.000 description 20
- 239000000284 extract Substances 0.000 description 19
- 238000003860 storage Methods 0.000 description 12
- 238000000605 extraction Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 11
- 238000004422 calculation algorithm Methods 0.000 description 10
- 238000013528 artificial neural network Methods 0.000 description 8
- 230000003213 activating effect Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000003190 augmentative effect Effects 0.000 description 3
- 238000013434 data augmentation Methods 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000005520 cutting process Methods 0.000 description 2
- 239000004615 ingredient Substances 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 239000013589 supplement Substances 0.000 description 2
- LFQSCWFLJHTTHZ-UHFFFAOYSA-N Ethanol Chemical compound CCO LFQSCWFLJHTTHZ-UHFFFAOYSA-N 0.000 description 1
- 238000005452 bending Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 235000013365 dairy product Nutrition 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 239000010408 film Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 235000013324 preserved food Nutrition 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 239000010409 thin film Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/148—Segmentation of character regions
- G06V30/153—Segmentation of character regions using recognition of characters or words
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- 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/20—Image preprocessing
- G06V10/24—Aligning, centring, orientation detection or correction of the image
- G06V10/243—Aligning, centring, orientation detection or correction of the image by compensating for image skew or non-uniform image deformations
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/146—Aligning or centring of the image pick-up or image-field
- G06V30/147—Determination of region of interest
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/148—Segmentation of character regions
- G06V30/15—Cutting or merging image elements, e.g. region growing, watershed or clustering-based techniques
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Image Analysis (AREA)
Abstract
전자 장치가 이미지를 처리하는 방법이 제공된다. 상기 방법은, 제1 카메라를 이용하여 적어도 하나의 라벨을 포함하는 객체의 제1 이미지를 획득하는 단계; 상기 제1 이미지를 제1 AI 모델에 적용함으로써, 상기 제1 이미지 내에서 상기 적어도 하나의 라벨에 대응하는 영역을 관심 영역으로 식별하는 단계; 상기 제1 이미지를 제2 AI 모델에 적용함으로써, 상기 객체의 3차원 형상 타입에 관한 데이터를 획득하는 단계; 상기 관심 영역으로 식별된 상기 적어도 하나의 라벨에 대응하는 영역 및 상기 객체의 3차원 형상 타입에 관한 데이터에 기초하여, 상기 객체, 상기 적어도 하나의 라벨 및 상기 제1 카메라 중 적어도 하나와 관련된 3차원 파라미터 값들을 획득하는 단계; 상기 3차원 파라미터 값들에 기초하여, 상기 적어도 하나의 라벨의 굴곡 형상을 추정하는 단계; 및 상기 적어도 하나의 라벨에 대한 원근 변환(perspective transformation)을 수행함으로써, 상기 적어도 하나의 라벨의 굴곡 형상이 평평하게 된 플랫(flat) 라벨 이미지를 획득하는 단계를 포함할 수 있다.A method for an electronic device to process an image is provided. The method includes acquiring a first image of an object including at least one label using a first camera; identifying a region corresponding to the at least one label within the first image as a region of interest by applying the first image to a first AI model; Obtaining data about the three-dimensional shape type of the object by applying the first image to a second AI model; A three-dimensional image associated with at least one of the object, the at least one label, and the first camera based on data regarding a three-dimensional shape type of the object and a region corresponding to the at least one label identified as the region of interest. obtaining parameter values; based on the 3D parameter values, estimating a curved shape of the at least one label; And it may include obtaining a flat label image in which the curved shape of the at least one label is flattened by performing perspective transformation on the at least one label.
Description
이미지 내 관심 영역의 왜곡을 제거하는 알고리즘을 적용하는, 전자 장치 및 그 동작 방법이 제공된다.An electronic device and method of operating the same are provided, which apply an algorithm to remove distortion of a region of interest in an image.
3차원 공간을 촬영한 디지털 이미지에서는, 3차원 객체의 곡면 등으로 인한 물리적인 왜곡, 촬영 관점(perspective)으로 인한 왜곡 등이 존재한다. 이러한 3차원 특성으로 인한 왜곡을 제거하기 위해 3차원 정보를 활용하는 다양한 기술/기법이 개발되고 있다. 3차원 정보를 활용한 이미지 왜곡 제거 방법에 있어서, 3차원 정보 획득을 위한 센서 등의 하드웨어 없이, 알고리즘을 이용하여 객체의 3차원 정보를 추론하고, 이미지 내 왜곡을 제거하기 위한 알고리즘들이 최근 사용되고 있다.In digital images captured in a 3D space, there are physical distortions due to the curved surface of the 3D object, distortions due to the shooting perspective, etc. In order to remove distortion caused by these 3D characteristics, various technologies/techniques that utilize 3D information are being developed. In the image distortion removal method using 3D information, algorithms have recently been used to infer the 3D information of an object and remove distortion in the image using an algorithm without hardware such as a sensor for acquiring 3D information. .
본 개시의 일 측면에 따르면, 전자 장치가 이미지를 처리하는 방법이 제공될 수 있다. 상기 방법은, 제1 카메라를 이용하여 적어도 하나의 라벨을 포함하는 객체의 제1 이미지를 획득하는 단계를 포함할 수 있다. 상기 방법은, 상기 제1 이미지를 제1 AI 모델에 적용함으로써, 상기 제1 이미지 내에서 상기 적어도 하나의 라벨에 대응하는 영역을 관심 영역으로 식별하는 단계를 포함할 수 있다. 상기 방법은, 상기 제1 이미지를 제2 AI 모델에 적용함으로써, 상기 객체의 3차원 형상 타입에 관한 데이터를 획득하는 단계를 포함할 수 있다. 상기 방법은, 상기 관심 영역으로 식별된 상기 적어도 하나의 라벨에 대응하는 영역 및 상기 객체의 3차원 형상 타입에 관한 데이터에 기초하여, 상기 객체, 상기 적어도 하나의 라벨 및 상기 제1 카메라 중 적어도 하나와 관련된 3차원 파라미터 값들을 획득하는 단계를 포함할 수 있다. 상기 방법은, 상기 3차원 파라미터 값들에 기초하여, 상기 적어도 하나의 라벨의 굴곡 형상을 추정하는 단계를 포함할 수 있다. 상기 방법은, 상기 적어도 하나의 라벨에 대한 원근 변환(perspective transformation)을 수행함으로써, 상기 적어도 하나의 라벨의 굴곡 형상이 평평하게 된 플랫(flat) 라벨 이미지를 획득하는 단계를 포함할 수 있다.According to one aspect of the present disclosure, a method for an electronic device to process an image may be provided. The method may include acquiring a first image of an object including at least one label using a first camera. The method may include identifying a region corresponding to the at least one label within the first image as a region of interest by applying the first image to a first AI model. The method may include obtaining data regarding the three-dimensional shape type of the object by applying the first image to a second AI model. The method, based on data regarding a three-dimensional shape type of the object and a region corresponding to the at least one label identified as the region of interest, at least one of the object, the at least one label, and the first camera. It may include obtaining three-dimensional parameter values related to . The method may include estimating a curved shape of the at least one label based on the 3D parameter values. The method may include obtaining a flat label image in which the curved shape of the at least one label is flattened by performing perspective transformation on the at least one label.
본 개시의 일 측면에 따르면, 이미지를 처리하는 전자 장치가 제공될 수 있다. 상기 전자 장치는, 제1 카메라, 하나 이상의 인스트럭션을 저장하는 메모리, 및 상기 메모리에 저장된 상기 하나 이상의 인스트럭션을 실행하는 적어도 하나의 프로세서를 포함할 수 있다. 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 제1 카메라를 이용하여 적어도 하나의 라벨을 포함하는 3차원의 객체의 제1 이미지를 획득할 수 있다. 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 제1 이미지를 제1 AI 모델에 적용함으로써, 상기 제1 이미지 내에서 상기 적어도 하나의 라벨에 대응하는 영역을 관심 영역으로 식별할 수 있다. 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 제1 이미지를 제2 AI 모델에 적용함으로써, 상기 객체의 3차원 형상 타입에 관한 데이터를 획득할 수 있다. 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 관심 영역으로 식별된 상기 적어도 하나의 라벨에 대응하는 영역 및 상기 객체의 3차원 형상 타입에 관한 데이터에 기초하여, 상기 객체, 상기 적어도 하나의 라벨 및 상기 제1 카메라와 중 적어도 하나와 관련된 3차원 파라미터를 획득할 수 있다. 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 3차원 파라미터에 기초하여, 상기 적어도 하나의 라벨의 굴곡 형상을 추정할 수 있다. 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 적어도 하나의 라벨에 대한 원근 변환(perspective transformation)을 수행함으로써, 상기 적어도 하나의 라벨의 굴곡 형상이 평평하게 된 플랫(flat) 라벨 이미지를 획득할 수 있다.According to one aspect of the present disclosure, an electronic device that processes images may be provided. The electronic device may include a first camera, a memory that stores one or more instructions, and at least one processor that executes the one or more instructions stored in the memory. The at least one processor may acquire a first image of a three-dimensional object including at least one label using a first camera by executing the one or more instructions. The at least one processor may identify a region corresponding to the at least one label in the first image as a region of interest by executing the one or more instructions and applying the first image to a first AI model. there is. The at least one processor may acquire data about the three-dimensional shape type of the object by executing the one or more instructions and applying the first image to a second AI model. The at least one processor, by executing the one or more instructions, based on data about a three-dimensional shape type of the object and a region corresponding to the at least one label identified as the region of interest, the object, the at least 3D parameters related to at least one of a label and the first camera may be obtained. The at least one processor may estimate a curved shape of the at least one label based on the three-dimensional parameter by executing the one or more instructions. The at least one processor, by executing the one or more instructions, performs a perspective transformation on the at least one label, thereby creating a flat label image in which the curved shape of the at least one label is flattened. can be obtained.
본 개시의 일 측면에 따르면, 전자 장치가 이미지를 처리하는 방법이 제공될 수 있다. 상기 방법은, 제1 카메라를 이용하여 객체의 라벨을 포함하는 상기 객체의 일부 이미지를 획득하는 단계를 포함할 수 있다. 상기 방법은, 상기 객체의 일부 이미지를 제1 AI 모델에 적용함으로써 상기 객체의 상기 라벨에 대응하는 영역을 관심 영역으로 식별하는 단계를 포함할 수 있다. 상기 방법은, 상기 제1 카메라보다 화각이 넓은 제2 카메라를 이용하여 상기 객체의 전체 이미지를 획득하는 단계를 포함할 수 있다. 상기 방법은, 상기 객체의 전체 이미지를 제2 AI 모델에 적용함으로써 상기 객체의 3차원 형상 타입을 식별하는 단계를 포함할 수 있다. 상기 방법은, 상기 객체의 3차원 형상 타입에 대응하는 3차원 파라미터를 획득하는 단계를 포함할 수 있다. 상기 방법은, 상기 관심 영역에 관한 정보 및 상기 3차원 파라미터에 기초하여 상기 라벨의 원근 변환(perspective transformation)을 수행함으로써, 상기 라벨의 굴곡 형상이 평평하게 된 플랫 라벨 이미지를 획득하는 단계를 포함할 수 있다. 상기 방법은, 상기 플랫 라벨 이미지로부터 상기 객체와 관련된 정보를 획득하는 단계를 포함할 수 있다.According to one aspect of the present disclosure, a method for an electronic device to process an image may be provided. The method may include obtaining a partial image of the object including a label of the object using a first camera. The method may include identifying a region corresponding to the label of the object as a region of interest by applying a partial image of the object to a first AI model. The method may include acquiring an entire image of the object using a second camera that has a wider angle of view than the first camera. The method may include identifying the three-dimensional shape type of the object by applying the entire image of the object to a second AI model. The method may include obtaining a 3D parameter corresponding to a 3D shape type of the object. The method may include obtaining a flat label image in which the curved shape of the label is flattened by performing a perspective transformation of the label based on the information about the region of interest and the three-dimensional parameters. You can. The method may include obtaining information related to the object from the flat label image.
본 개시의 일 측면에 따르면, 이미지를 처리하는 전자 장치가 제공될 수 있다. 상기 전자 장치는, 제1 카메라, 제2 카메라, 하나 이상의 인스트럭션을 저장하는 메모리, 및 상기 메모리에 저장된 상기 하나 이상의 인스트럭션을 실행하는 적어도 하나의 프로세서를 포함할 수 있다. 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 제1 카메라를 이용하여 객체의 라벨을 포함하는 상기 객체의 일부 이미지를 획득할 수 있다. 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 객체의 일부 이미지를 제1 AI 모델에 적용함으로써 상기 객체의 상기 라벨에 대응하는 영역을 관심 영역으로 식별할 수 있다. 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 제1 카메라보다 화각이 넓은 상기 제2 카메라를 이용하여 상기 객체의 전체 이미지를 획득할 수 있다. 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 객체의 전체 이미지를 제2 AI 모델에 적용함으로써 상기 객체의 3차원 형상 타입을 식별할 수 있다. 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 객체의 3차원 형상 타입에 대응하는 3차원 파라미터를 획득할 수 있다. 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 관심 영역에 관한 정보 및 상기 3차원 파라미터에 기초하여 상기 라벨의 원근 변환(perspective transformation)을 수행함으로써, 상기 라벨의 굴곡 형상이 평평하게 된 플랫 라벨 이미지를 획득할 수 있다. 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 플랫 라벨 이미지로부터 상기 객체와 관련된 정보를 획득할 수 있다.According to one aspect of the present disclosure, an electronic device that processes images may be provided. The electronic device may include a first camera, a second camera, a memory that stores one or more instructions, and at least one processor that executes the one or more instructions stored in the memory. The at least one processor may acquire a partial image of the object including a label of the object using the first camera by executing the one or more instructions. The at least one processor may identify an area corresponding to the label of the object as a region of interest by executing the one or more instructions and applying a partial image of the object to a first AI model. By executing the one or more instructions, the at least one processor may obtain an entire image of the object using the second camera, which has a wider field of view than the first camera. The at least one processor may identify the three-dimensional shape type of the object by executing the one or more instructions and applying the entire image of the object to a second AI model. The at least one processor may obtain 3D parameters corresponding to the 3D shape type of the object by executing the one or more instructions. The at least one processor, by executing the one or more instructions, performs a perspective transformation of the label based on the information about the region of interest and the three-dimensional parameters, so that the curved shape of the label is flat. A flat label image can be obtained. The at least one processor may obtain information related to the object from the flat label image by executing the one or more instructions.
본 개시의 일 측면에 따르면, 전자 장치가 이미지를 처리하여 왜곡을 제거하는, 전술 및 후술하는 방법들 중 어느 하나를 실행시키기 위한 프로그램이 기록된 컴퓨터 판독 가능 기록매체를 제공할 수 있다.According to one aspect of the present disclosure, an electronic device may provide a computer-readable recording medium on which a program for executing any one of the above and below-described methods of processing an image to remove distortion is recorded.
도 1은 본 개시의 일 실시예에 따른 전자 장치가 이미지의 왜곡을 제거하는 일 예시를 나타내는 도면이다.
도 2는 본 개시의 일 실시예에 따른 전자 장치가 이미지를 처리하는 방법을 설명하기 위한 흐름도이다.
도 3은 본 개시의 일 실시예에 따른 전자 장치가 이미지를 처리하는 동작을 전반적으로 설명하기 위한 도면이다.
도 4는 본 개시의 일 실시예에 따른 전자 장치가 객체의 3차원 형상을 식별하는 동작을 설명하기 위한 도면이다.
도 5는 본 개시의 일 실시예에 따른 전자 장치가 객체의 표면의 관심 영역을 식별하는 동작을 설명하기 위한 도면이다.
도 6a는 본 개시의 일 실시예에 따른 전자 장치가 객체의 3차원 정보를 획득하는 동작을 설명하기 위한 도면이다.
도 6b는 본 개시의 일 실시예에 따른 전자 장치가 객체의 3차원 정보에 기초하여 관심 영역의 왜곡을 제거하는 동작을 설명하기 위한 도면이다.
도 7은 본 개시의 일 실시예에 따른 전자 장치가 관심 영역 내의 정보를 추출하는 동작을 설명하기 위한 도면이다.
도 8a는 본 개시의 일 실시예에 따른 전자 장치가 3차원 정보를 획득하여 왜곡 없는 이미지를 획득한 제1 예시를 설명하기 위한 도면이다.
도 8b는 본 개시의 일 실시예에 따른 전자 장치가 3차원 정보를 획득하여 왜곡 없는 이미지를 획득한 제2 예시를 설명하기 위한 도면이다.
도 8c는 본 개시의 일 실시예에 따른 전자 장치가 3차원 정보를 획득하여 왜곡 없는 이미지를 획득한 제3 예시를 설명하기 위한 도면이다.
도 9a는 본 개시의 일 실시예에 따른 전자 장치가 왜곡 없는 이미지로부터 정보를 추출한 제1 예시를 설명하기 위한 도면이다.
도 9b는 본 개시의 일 실시예에 따른 전자 장치가 왜곡 없는 이미지로부터 정보를 추출한 제2 예시를 설명하기 위한 도면이다.
도 10a는 본 개시의 일 실시예에 따른 전자 장치가 객체 3차원 형상 식별 모델을 훈련시키는 동작을 설명하기 위한 도면이다.
도 10b는 본 개시의 일 실시예에 따른 전자 장치가 객체 3차원 형상 식별 모델을 훈련시키는 다른 동작을 설명하기 위한 도면이다.
도 10c는 본 개시의 일 실시예에 따른 전자 장치가 객체의 3차원 형상을 식별하는 실시예를 설명하기 위한 도면이다.
도 10d는 본 개시의 일 실시예에 따른 전자 장치가 객체의 3차원 형상을 식별하는 실시예를 설명하기 위한 도면이다.
도 11은 본 개시의 일 실시예에 따른 전자 장치가 관심 영역 식별 모델을 훈련시키는 동작을 설명하기 위한 도면이다.
도 12는 본 개시의 일 실시예에 따른 전자 장치가 왜곡 제거 모델을 훈련시키는 동작을 설명하기 위한 도면이다.
도 13은 본 개시의 일 실시예에 따른 전자 장치에 포함되는 멀티 카메라를 설명하기 위한 도면이다.
도 14a는 본 개시의 일 실시예에 따른 전자 장치가 멀티 카메라를 이용하는 동작을 설명하기 위한 흐름도이다.
도 14b는 도 14a를 보충적으로 더 설명하기 위한 도면이다.
도 15a는 본 개시의 일 실시예에 따른 전자 장치가 멀티 카메라를 이용하는 동작을 설명하기 위한 흐름도이다.
도 15b는 도 15a를 보충적으로 더 설명하기 위한 도면이다.
도 16a는 본 개시의 일 실시예에 따른 전자 장치가 멀티 카메라를 이용하는 동작을 설명하기 위한 흐름도이다.
도 16b는 도 16a를 보충적으로 더 설명하기 위한 도면이다.
도 16c는 도 16a를 보충적으로 더 설명하기 위한 도면이다.
도 17은 본 개시의 일 실시예에 따른 전자 장치가 이미지를 처리하여 추출된 정보를 제공하는 동작을 설명하기 위한 도면이다.
도 18은 본 개시의 일 실시예에 따른 전자 장치가 이미지를 처리하는 동작에 관련된 시스템의 일 예시를 설명하기 위한 도면이다.
도 19는 본 개시의 일 실시예에 따른 전자 장치가 서버를 이용하여 이미지를 처리하는 동작에 관련된 시스템의 일 예시를 설명하기 위한 도면이다.
도 20은 본 개시의 일 실시예에 따른 전자 장치의 구성을 도시한 블록도이다.
도 21은 본 개시의 일 실시예에 따른 서버의 구성을 도시한 블록도이다.FIG. 1 is a diagram illustrating an example in which an electronic device removes distortion of an image according to an embodiment of the present disclosure.
FIG. 2 is a flowchart illustrating a method of processing an image by an electronic device according to an embodiment of the present disclosure.
FIG. 3 is a diagram for generally explaining an image processing operation by an electronic device according to an embodiment of the present disclosure.
FIG. 4 is a diagram illustrating an operation of an electronic device identifying the three-dimensional shape of an object according to an embodiment of the present disclosure.
FIG. 5 is a diagram illustrating an operation of an electronic device identifying a region of interest on the surface of an object according to an embodiment of the present disclosure.
FIG. 6A is a diagram illustrating an operation of an electronic device acquiring 3D information of an object according to an embodiment of the present disclosure.
FIG. 6B is a diagram illustrating an operation of an electronic device removing distortion of a region of interest based on 3D information of an object according to an embodiment of the present disclosure.
FIG. 7 is a diagram illustrating an operation of extracting information within a region of interest by an electronic device according to an embodiment of the present disclosure.
FIG. 8A is a diagram illustrating a first example in which an electronic device acquires 3D information and obtains an image without distortion, according to an embodiment of the present disclosure.
FIG. 8B is a diagram illustrating a second example in which an electronic device acquires 3D information and obtains an image without distortion, according to an embodiment of the present disclosure.
FIG. 8C is a diagram illustrating a third example in which an electronic device acquires 3D information and obtains an image without distortion, according to an embodiment of the present disclosure.
FIG. 9A is a diagram illustrating a first example in which an electronic device extracts information from an image without distortion, according to an embodiment of the present disclosure.
FIG. 9B is a diagram for explaining a second example in which an electronic device extracts information from an image without distortion, according to an embodiment of the present disclosure.
FIG. 10A is a diagram illustrating an operation of training an
FIG. 10B is a diagram illustrating another operation in which an electronic device trains an
FIG. 10C is a diagram illustrating an example in which an electronic device identifies the three-dimensional shape of an object according to an embodiment of the present disclosure.
FIG. 10D is a diagram illustrating an example in which an electronic device identifies the three-dimensional shape of an object according to an embodiment of the present disclosure.
FIG. 11 is a diagram illustrating an operation of an electronic device training a region-of-interest identification model according to an embodiment of the present disclosure.
FIG. 12 is a diagram illustrating an operation of an electronic device training a distortion removal model according to an embodiment of the present disclosure.
FIG. 13 is a diagram for explaining a multi-camera included in an electronic device according to an embodiment of the present disclosure.
FIG. 14A is a flowchart illustrating an operation in which an electronic device uses a multi-camera according to an embodiment of the present disclosure.
FIG. 14B is a diagram for further supplementary explanation of FIG. 14A.
FIG. 15A is a flowchart illustrating an operation in which an electronic device uses a multi-camera according to an embodiment of the present disclosure.
FIG. 15B is a diagram for further supplementary explanation of FIG. 15A.
FIG. 16A is a flowchart illustrating an operation in which an electronic device uses a multi-camera according to an embodiment of the present disclosure.
FIG. 16B is a diagram for further supplementary explanation of FIG. 16A.
FIG. 16C is a diagram for further supplementary explanation of FIG. 16A.
FIG. 17 is a diagram illustrating an operation in which an electronic device processes an image and provides extracted information according to an embodiment of the present disclosure.
FIG. 18 is a diagram for explaining an example of a system related to an image processing operation by an electronic device according to an embodiment of the present disclosure.
FIG. 19 is a diagram illustrating an example of a system related to an operation in which an electronic device processes an image using a server according to an embodiment of the present disclosure.
Figure 20 is a block diagram showing the configuration of an electronic device according to an embodiment of the present disclosure.
Figure 21 is a block diagram showing the configuration of a server according to an embodiment of the present disclosure.
본 개시에서, "a, b 또는 c 중 적어도 하나" 표현은 " a", " b", " c", "a 및 b", "a 및 c", "b 및 c", "a, b 및 c 모두", 혹은 그 변형들을 지칭할 수 있다.In the present disclosure, the expression “at least one of a, b, or c” refers to “a”, “b”, “c”, “a and b”, “a and c”, “b and c”, “a, b and c", or variations thereof.
본 개시에서 사용되는 용어는 본 개시에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 개시에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.The terms used in the present disclosure have selected general terms that are currently widely used as much as possible while considering the functions in the present disclosure, but this may vary depending on the intention or precedents of those skilled in the art, the emergence of new technologies, etc. In addition, in certain cases, there are terms arbitrarily selected by the applicant, and in this case, the meaning will be described in detail in the relevant description. Therefore, the terms used in this disclosure should be defined based on the meaning of the term and the overall content of this disclosure, rather than simply the name of the term.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 명세서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 또한, 본 명세서에서 사용되는 '제1' 또는 '제2' 등과 같이 서수를 포함하는 용어는 다양한 구성 요소들을 설명하는데 사용할 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만 사용된다.Singular expressions may include plural expressions, unless the context clearly indicates otherwise. Terms used herein, including technical or scientific terms, may have the same meaning as generally understood by a person of ordinary skill in the technical field described herein. Additionally, terms including ordinal numbers, such as 'first' or 'second', used in this specification may be used to describe various components, but the components should not be limited by the terms. The above terms are used only for the purpose of distinguishing one component from another.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에 기재된 "부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.When it is said that a part "includes" a certain element throughout the specification, this means that, unless specifically stated to the contrary, it does not exclude other elements but may further include other elements. Additionally, terms such as “unit” and “module” used in the specification refer to a unit that processes at least one function or operation, which may be implemented as hardware or software, or as a combination of hardware and software.
아래에서는 첨부한 도면을 참고하여 본 개시의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 개시를 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. 또한, 각각의 도면에서 사용된 도면 부호는 각각의 도면을 설명하기 위한 것일 뿐, 상이한 도면들 각각에서 사용된 상이한 도면 부호가 상이한 요소를 나타내기 위한 것은 아니다. 이하 첨부된 도면을 참고하여 본 개시를 상세히 설명하기로 한다.Below, with reference to the attached drawings, embodiments of the present disclosure will be described in detail so that those skilled in the art can easily implement the present invention. However, the present disclosure may be implemented in many different forms and is not limited to the embodiments described herein. In order to clearly explain the present disclosure in the drawings, parts that are not related to the description are omitted, and similar parts are given similar reference numerals throughout the specification. In addition, the reference numerals used in each drawing are only for explaining each drawing, and the different reference numerals used in each of the different drawings are not intended to indicate different elements. Hereinafter, the present disclosure will be described in detail with reference to the attached drawings.
도 1은 본 개시의 일 실시예에 따른 전자 장치가 이미지의 왜곡을 제거하는 일 예시를 나타내는 도면이다.FIG. 1 is a diagram illustrating an example in which an electronic device removes distortion of an image according to an embodiment of the present disclosure.
도 1을 참조하면, 일 실시예에 따른 전자 장치(2000)는 카메라 및 디스플레이를 포함하는 장치일 수 있다. 전자 장치(2000)는 카메라를 통해 이미지(정지 이미지 및/또는 비디오)를 촬영하고, 디스플레이를 통해 이미지를 출력하는 장치일 수 있다. 예를 들어, 전자 장치(2000)는 스마트 TV, 스마트 폰, 태블릿 PC, 랩탑 PC, 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. 전자 장치(2000)는 카메라 및 디스플레이를 포함하는 다양한 종류 및 형태의 전자 장치로 구현될 수 있다. 또한, 전자 장치(2000)는 오디오를 출력하기 위한 스피커를 포함할 수도 있다.Referring to FIG. 1, an
일 실시예에서, 전자 장치(2000)의 사용자는 전자 장치(2000)의 카메라를 이용하여 객체(100)를 촬영할 수 있다. 전자 장치(2000)는 객체(100)의 적어도 일부를 포함하는 이미지(110)를 획득할 수 있다.In one embodiment, a user of the
본 개시에서, 이미지 내의 객체(100)의 표면에 인식되어야 할 정보가 있는 경우, 이를 '관심 영역(120)'이라 지칭한다. 예를 들어, 객체(100)의 표면에 부착된 라벨 영역이 관심 영역이 될 수 있다. 일 실시예에서, 전자 장치(2000)는 객체(100)의 관심 영역(120)으로부터, 객체(100)와 관련된 정보를 추출할 수 있다.In the present disclosure, if there is information to be recognized on the surface of the
본 개시에서는, 관심 영역(120)의 일 예시로, 상품의 '라벨'에 대한 왜곡을 제거하는 것을 설명한다. 여기서 라벨이란, 종이, 스티커, 천 등으로 제작되어 상품에 부착되는 것으로, 라벨에는 상품의 상표나 상품명 등이 인쇄되어 있을 수 있다. 또한, 상품의 라벨은 상품과 관련된 다양한 정보, 예를 들어, 상품의 성분, 사용법, 사용량, 취급상의 주의 사항, 상품의 가격, 부피, 용량 등이 포함될 수 있다.In this disclosure, as an example of the region of
본 개시에서 전자 장치(2000)는 객체(100)에 포함된 적어도 하나의 라벨에 대응하는 영역을 관심 영역(120)으로 식별하고, 적어도 하나의 라벨에 대응하는 영역으로부터 객체(100)와 관련된 정보를 획득할 수 있다. 객체(100)가 3차원 형상인 경우, 2차원적인 이미지(110) 내에서 객체(100)의 라벨의 형상이 왜곡될 수 있다. 이에 따라, 전자 장치(200)가 객체(100)의 라벨로부터 획득한 정보(예를 들어, 로고, 아이콘, 텍스트 등)의 정확도가 저하될 수 있다. 일 실시예에 따른 전자 장치(2000)는, 관심 영역(120)(예를 들어, 적어도 하나의 라벨)으로부터 정확한 정보를 추출하기 위해, 객체(100)의 이미지(110)를 이용하여 왜곡 없는 라벨 이미지(130)를 획득할 수 있다. 여기서, 왜곡 없는 라벨 이미지(130)는 객체(100)의 관심 영역(120)의 왜곡을 감소시키거나 및/또는 제거한 이미지를 말한다. 예를 들어, 왜곡 없는 라벨 이미지(130)는 라벨 영역의 굴곡 왜곡이 감소되거나 제거되어 평평하게 된 이미지일 수 있다. 본 개시에서, 왜곡 없는 라벨 이미지(130)는 플랫 라벨 이미지로도 지칭될 수 있다.In the present disclosure, the
일 실시예에 따른 전자 장치(2000)는 왜곡 없는 이미지(130)를 생성하기 위해, 객체(100)의 3차원 정보를 추정할 수 있다. 전자 장치(2000)는 객체(100)의 3차원 정보에 기초하여 관심 영역(120)을 평면으로 변환함으로써, 왜곡 없는 이미지(130)를 획득한다. 객체(100)의 3차원 정보는, 객체(100)의 3차원 형상과 관련된 3차원 파라미터 또는 객체를 촬영하는 카메라와 관련된 3차원 파라미터를 포함할 수 있다. 또한, 3차원 형상은 구, 정육면체, 실린더 등을 포함할 수 있으나 이에 한정되는 것은 아니다.The
본 개시에서, '3차원 파라미터'란, 객체(100)의 3차원 형상과 관련된 기하학적 특징을 나타내는 요소들을 말한다. 3차원 파라미터는 예를 들어, 객체(100)의 높이 및 반지름 정보(또는, 가로, 세로 정보), 객체(100)의 3차원 공간 상에서의 3차원 기하학적 변환을 위한 이동(translation) 및 회전(rotation) 정보, 객체(100)를 촬영한 전자 장치(2000)의 카메라의 초점 거리 정보 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. 3차원 파라미터는 변수이며, 3차원 파라미터 중 어느 하나의 값이 변경됨에 따라 3차원 형상 또한 변경될 수 있다. 3차원 파라미터 요소들이 모여 3차원 파라미터 셋을 구성할 수 있다. 이러한 3차원 파라미터 셋에 따라 결정되는, 객체(100)의 3차원 형상을 나타낼 수 있는 정보를 본 개시에서는 '3차원 정보'로 지칭한다.In the present disclosure, ‘3D parameters’ refer to elements representing geometric characteristics related to the 3D shape of the
본 개시에서, '객체(100)의 3차원 정보'란 이미지(110)에 포함되는 객체(100)의 3차원 형상을 나타낼 수 있도록 파라미터 값(예를 들어, 가로 값, 세로 값, 높이 값, 반지름 값 등)이 튜닝된 3차원 파라미터를 말한다. 객체(100)의 3차원 정보는 반드시 객체(100)의 절대적인 가로, 세로, 높이, 반지름 등의 값을 나타내는 3차원 파라미터들로 구성될 필요는 없으며, 객체(100)의 3차원 비율을 나타내는 상대적인 값을 나타내는 3차원 파라미터들로 구성될 수 있다. 즉, 전자 장치(2000)는 객체(100)의 3차원 정보가 있으면, 객체(100)와 동일한 비율을 갖는 3차원 형상의 객체(100)를 렌더링할 수 있다.In the present disclosure, '3D information of the object 100' refers to parameter values (e.g., horizontal value, vertical value, height value, This refers to a 3D parameter where the radius value, etc.) has been tuned. The 3D information of the
일 실시예에 따른 전자 장치(2000)는, 관심 영역(120)의 왜곡을 제거하는 이미지 처리 동작을 수행하기 위해, 객체(100)의 적어도 일부를 포함하는 이미지(110)로부터 관심 영역(120)을 식별하고, 객체(100)의 3차원 형상 타입을 식별하며, 객체(100)의 관심 영역(120) 및 객체(100)의 3차원 형상 타입에 기초하여, 객체(100)의 3차원 정보를 추정할 수 있다. 그리고 전자 장치(2000)는 객체(100)의 3차원 정보에 기초하여 왜곡 없는 이미지(130)를 생성할 수 있다.The
일 실시예에 의하면, 전자 장치(2000)는 왜곡 없는 이미지(130)로부터 객체 정보(140)를 추출하고, 왜곡 없는 이미지(130) 및/또는 왜곡 없는 이미지(130)로부터 추출된 객체 정보(140)를 사용자에게 제공할 수도 있다.According to one embodiment, the
전자 장치(2000)가 이미지 처리 동작들을 통해 관심 영역(120)의 왜곡을 제거하거나 왜곡 없는 이미지(130)로부터 정보를 추출하는 구체적인 동작들에 대해서는, 후술하는 도면들과 그에 대한 설명에서 더 상세하게 서술하기로 한다.Specific operations in which the
도 2는 본 개시의 일 실시예에 따른 전자 장치가 이미지를 처리하는 방법을 설명하기 위한 흐름도이다.FIG. 2 is a flowchart illustrating a method of processing an image by an electronic device according to an embodiment of the present disclosure.
단계 S210에서, 일 실시예에 전자 장치(2000)는 제1 카메라를 이용하여 적어도 하나의 라벨을 포함하는 객체의 제1 이미지를 획득한다. 전자 장치(2000)는 사용자의 조작을 통해 제1 카메라를 활성화할 수 있다. 예를 들어, 사용자는 객체에 관한 정보를 얻기 위해 전자 장치(2000)의 카메라를 활성화하여 객체를 촬영할 수 있다. 사용자는 카메라를 실행하기 위한 하드웨어 버튼 또는 아이콘을 터치하여 카메라를 활성화할 수도 있고, 음성 명령(예: 하이 빅스비 카메라 켜줘, 하이 빅스비 사진 찍어서 라벨 정보 보여줘)을 통해 카메라를 활성화할 수도 있다.In step S210, in one embodiment, the
일 실시예에서, 제1 카메라는 망원 카메라, 광각 카메라, 초광각 카메라 중 하나일 수 있으며, 제1 이미지는, 망원 카메라로 촬영된 이미지, 광각 카메라로 촬영된 이미지, 초광각 카메라로 촬영된 이미지 중 하나일 수 있다.In one embodiment, the first camera may be one of a telephoto camera, a wide-angle camera, and an ultra-wide-angle camera, and the first image may be one of an image captured with a telephoto camera, an image captured with a wide-angle camera, and an image captured with an ultra-wide-angle camera. It can be.
일 실시예에서, 전자 장치(2000)는 하나 이상의 카메라를 포함할 수 있다. 예를 들어, 전자 장치(2000)는 제1 카메라, 제2 카메라 등으로 구성되는 멀티카메라를 포함할 수 있다. 전자 장치(2000)에 카메라가 복수 개 포함되는 경우, 각각의 카메라의 사양은 상이할 수 있다. 예를 들어 복수의 카메라는, 서로 다른 초점 거리 및 화각을 갖는, 망원 카메라, 광각 카메라, 초광각 카메라 등을 포함할 수 있다. 다만, 전자 장치(2000)에 포함되는 카메라의 종류는 전술한 예시에 한정되는 것은 아니다. 전자 장치(2000)에 카메라가 복수 개 포함된 경우, 제1 이미지는, 복수의 카메라를 통해 획득된 이미지들을 합성한 이미지일 수도 있다. 제1 이미지는 전자 장치(2000)의 화면에서 표시되는 프리뷰 이미지를 캡쳐하여 저장한 것일 수 있고, 이미 촬영되어 전자 장치에 저장된 것일 수 있으며, 전자 장치(2000)의 외부로부터 획득된 이미지일 수 있다. 제1 이미지는 적어도 하나의 라벨을 포함하는 객체의 일부를 촬영한 이미지일 수 있으며, 또는, 객체의 전체를 촬영한 이미지일 수 있다. 한편, 일 실시예에 의하면, 제1 이미지는, 제1 카메라에 의해 연속적으로 촬영된 파노라마 이미지일 수도 있다.In one embodiment, the
단계 S220에서, 일 실시예에 따른 전자 장치(2000)는 제1 이미지를 제1 AI 모델에 적용함으로써, 제1 이미지 내에서 적어도 하나의 라벨에 대응하는 영역을 관심 영역으로 식별한다. 예를 들어, 전자 장치(2000)는 제1 카메라를 통해 제1 이미지가 획득된 경우, 제1 이미지를 제1 AI 모델에 적용할 수 있다. 이때, 제1 AI 모델은 제1 이미지 내에서 관심 영역을 추론하고, 관심 영역에 관련된 데이터를 출력할 수 있다. 한편, 본 개시에서 제1 이미지를 제1 AI 모델에 적용한다는 것은, 제1 이미지 자체를 제1 AI 모델에 적용하는 것뿐만 아니라, 제1 이미지를 전처리하여 제1 AI 모델에 적용하는 것도 포함할 수도 있다. 예를 들어, 전자 장치(2000)는 제1 이미지에서 일부 영역을 잘라낸 이미지(cropped image), 제1 이미지를 리사이즈한 이미지, 또는 제1 이미지에서 일부를 잘라내고 리사이즈한 이미지를 제1 AI 모델에 적용할 수도 있다.In step S220, the
본 개시에서, 제1 AI 모델은 관심 영역 식별 모델로 지칭될 수 있다. 관심 영역 식별 모델은, 이미지를 입력 받아 이미지 내 객체의 관심 영역에 관련된 데이터를 출력하도록 훈련된 인공지능 모델일 수 있다. 예를 들어, 관심 영역 식별 모델은 이미지 내에서 라벨에 대응하는 영역을 관심 영역으로 추론하도록 훈련된 인공지능 모델일 수 있다. 일부 실시예에서, 전자 장치(2000)는 관심 영역 식별 모델을 이용하여, 객체의 표면의 관심 영역(예를 들어, 상품에 부착된 라벨 등)을 식별할 수 있다. 일부 실시예에서, 전자 장치(2000)는 관심 영역 식별 모델을 이용하여 객체의 관심 영역을 나타내는 키포인트들(본 개시에서, 제1 키포인트들로도 지칭됨)을 식별할 수 있다. 예를 들어, 제1 AI 모델은 제1 이미지 내에서 적어도 하나의 라벨의 가장자리(edge)를 나타내는 키포인트들 (또는 좌표 값)에 관한 정보를 출력할 수 있다. 제1 AI 모델이 제1 이미지 내에서 관심 영역을 추정하는 동작에 대해서는 도 5를 참조하여 더 자세히 살펴보기로 한다.In this disclosure, the first AI model may be referred to as a region of interest identification model. The region of interest identification model may be an artificial intelligence model trained to receive an image as input and output data related to the region of interest of an object in the image. For example, the region of interest identification model may be an artificial intelligence model trained to infer the region corresponding to a label within an image as the region of interest. In some embodiments, the
한편, 본 개시에서는 설명의 편의를 위해 객체의 관심 영역으로 라벨 영역을 예시로 설명하나, 관심 영역은 이에 한정되지 않는다. 전자 장치(2000)에 의해, 객체로부터 추출하고자 하는 정보가 있는 또다른 영역들도 관심 영역으로 설정될 수 있으며, 본 개시의 실시예들이 동일/유사하게 적용될 수 있다.Meanwhile, in this disclosure, for convenience of explanation, a label area is explained as an example of an object's interest area, but the interest area is not limited to this. Other areas containing information to be extracted from an object may also be set as areas of interest by the
단계 S230에서, 일 실시예에 따른 전자 장치(2000)는 제1 이미지를 제2 AI 모델에 적용함으로써 객체의 3차원 형상 타입에 관한 데이터를 획득한다. 예를 들어, 전자 장치(2000)는 제1 카메라를 통해 제1 이미지가 획득된 경우, 제1 이미지를 제2 AI 모델에 적용할 수 있다. 이때, 제2 AI 모델은 제1 이미지에 포함된 객체의 3차원 형상 타입을 추론하고, 객체의 3차원 형상 타입에 관련된 데이터를 출력할 수 있다. 본 개시에서, 제2 AI 모델은 객체 3차원 형상 식별 모델로 지칭될 수 있다. 객체 3차원 형상 식별 모델은, 이미지를 입력 받아 이미지 내 객체의 3차원 형상 타입에 관련된 데이터를 출력하도록 훈련된 인공지능 모델일 수 있다. 예를 들어, 객체 3차원 형상 식별 모델은, 이미지 내 객체의 3차원 형상 타입을 추론하도록 훈련된 인공지능 모델일 수 있다. 일부 실시예에서, 전자 장치(2000)는 3차원 객체 형상 식별 모델을 이용하여, 제1 이미지 내에 포함된 객체의 3차원 형상 타입(예를 들어, 구, 정육면체, 실린더 등)을 식별할 수 있다. 전자 장치(2000)가 3차원 객체 형상 식별 모델을 이용하여 객체의 3차원 형상 타입을 식별하는 동작에 대해서는 도 4를 참조하여 후에 더 살펴보기로 한다.In step S230, the
이미지 내의 객체가 3차원 형상인 경우, 2차원적인 이미지 내에서 3차원 객체의 표면에 부착되어있는 관심 영역이 왜곡됨으로 인해 관심 영역 내의 정보(예를 들어, 로고, 아이콘, 텍스트 등)의 식별의 정확도가 저하될 수 있다. 예를 들어, 객체가 실린더 타입의 상품인 경우, 실린더 표면에 달라붙는 상품의 라벨은 객체의 곡면 표면에 부착되어 있으므로, 실린더 타입의 상품을 촬영한 이미지 내에서 관심 영역인 상품의 라벨은 왜곡되어 있다. 일 실시예에 따른 전자 장치(2000)는 객체의 3차원 형상을 식별하고, 관심 영역의 왜곡을 제거하기 위하여, 식별된 객체의 3차원 형상 타입에 관한 데이터를 이용할 수 있다.When the object in the image has a three-dimensional shape, the region of interest attached to the surface of the three-dimensional object in the two-dimensional image is distorted, making it difficult to identify the information (e.g., logo, icon, text, etc.) within the region of interest. Accuracy may decrease. For example, if the object is a cylinder-type product, the label of the product that sticks to the surface of the cylinder is attached to the curved surface of the object, so the label of the product that is the area of interest in the image taken of the cylinder-type product is distorted. there is. The
일 실시예에 의하면, 제1 이미지를 제1 AI 모델에 적용하여 제1 이미지 내에서 적어도 하나의 라벨에 대응하는 영역을 관심 영역으로 식별하는 단계 S220과 제1 이미지를 제2 모델에 적용하여 제1 이미지에 포함된 객체의 3차원 형상 타입에 관한 데이터를 획득하는 단계 S230은 병렬적으로 수행될 수 있다. 예를 들어, 전자 장치(2000)는, 제1 카메라를 통해 제1 이미지를 획득하는 경우, 제1 이미지를 제1 AI 모델과 제2 AI 모델에 각각 입력할 수 있다. 이때, 제1 AI 모델이 제1 이미지 내에서 적어도 하나의 라벨에 대응하는 영역을 관심 영역으로 추론하는 동작과 제2 AI 모델이 제1 이미지에 포함된 객체의 3차원 형상 타입을 추론하는 동작은 병렬적으로 이루어질 수 있다. According to one embodiment, step S220 of identifying a region corresponding to at least one label in the first image as a region of interest by applying the first image to the first AI model and applying the first image to the second model to identify the region of interest. 1 Step S230 of acquiring data about the 3D shape type of the object included in the image may be performed in parallel. For example, when acquiring a first image through a first camera, the
일 실시예에 의하면, 단계 S220과 단계 S230 중 어느 하나의 단계가 먼저 수행될 수도 있다. 예를 들어, 전자 장치(2000)는, 제1 이미지를 제1 AI 모델에 먼저 입력하여 제1 AI 모델이 관심 영역을 추론한 결과를 확인한 후에 제1 이미지를 제2 AI 모델에 입력할 수도 있다. 반대로, 전자 장치(2000)는, 제1 이미지를 제2 AI 모델에 먼저 입력하여 제2 AI 모델이 제1 이미지 내에 포함된 객체의 3차원 형상 타입을 추론한 결과를 확인한 후에 제1 이미지를 제1 AI 모델에 입력할 수도 있다.According to one embodiment, either step S220 or step S230 may be performed first. For example, the
단계 S240에서, 일 실시예에 따른 전자 장치(2000)는 관심 영역으로 식별된 적어도 하나의 라벨에 대응하는 영역 및 객체의 3차원 형상 타입에 관한 데이터에 기초하여, 객체, 적어도 하나의 라벨 및 제1 카메라 중 적어도 하나와 관련된 3차원 파라미터 값들을 획득한다. 일부 실시예에서, 3차원 파라미터의 요소들은 객체의 3차원 형상과 관련된 가로, 세로, 높이, 반지름 정보 등을 포함할 수 있다. 일부 실시예에서, 3차원 파라미터의 요소들은 객체의 3차원 공간 상에서의 3차원 기하학적 변환을 위한 이동(translation) 및 회전(rotation) 정보를 포함할 수 있다. 이동 및 회전 정보는 전자 장치(2000)의 카메라가 객체를 어떤 위치에서 어떤 각도로 바라보고 촬영한 것인지를 나타내는 정보일 수 있다. 일부 실시예에서, 3차원 파라미터의 요소들은 객체를 촬영한 전자 장치(2000)의 카메라의 초점 거리 정보를 포함할 수 있다. 다만, 3차원 파라미터는 전술한 예시에 한정되는 것은 아니며, 전자 장치(2000)가 객체의 3차원 기하학적 특징을 식별하고 관심 영역의 왜곡을 제거하기 위한 다른 정보들을 더 포함할 수 있다.In step S240, the
일 실시예에서, 3차원 파라미터는 객체의 3차원 형상에 대응하도록 결정된다. 즉, 각각의 3차원 형상의 타입(이하, 3차원 형상 타입)마다 이에 대응하는 3차원 파라미터의 요소는 상이할 수 있다. 예를 들어, 3차원 형상이 실린더 타입인 경우, 실린더 타입에 대응하는 3차원 파라미터는 반지름을 포함할 수 있으나, 3차원 형상이 정육면체 타입인 경우, 정육면체 타입에 3차원 파라미터는 반지름을 포함하지 않을 수 있다. 단계 S230에서 획득되는 객체의 3차원 형상 타입에 대응하는 3차원 파라미터란, 객체의 정확한 3차원 정보를 획득하기 위해 사용되는 초기값들로 설정되어 있을 수 있다. 전자 장치(2000)는 초기값을 갖는 3차원 파라미터를 객체의 3차원 정보를 나타내도록 파라미터 값들을 미세 조정하여, 객체의 3차원 정보를 나타내는 3차원 파라미터를 획득할 수 있다.In one embodiment, the three-dimensional parameters are determined to correspond to the three-dimensional shape of the object. That is, for each 3D shape type (hereinafter referred to as 3D shape type), the corresponding 3D parameter elements may be different. For example, if the 3D shape is a cylinder type, the 3D parameter corresponding to the cylinder type may include the radius, but if the 3D shape is a cube type, the 3D parameter for the cube type may not include the radius. You can. The 3D parameters corresponding to the 3D shape type of the object obtained in step S230 may be set to initial values used to obtain accurate 3D information of the object. The
일 실시예에서, 객체의 3차원 형상 타입이 실린더(또는, 병(bottle))인 경우, 3차원 파라미터의 요소는 객체의 가로, 세로, 높이, 반지름 정보, 객체의 3차원 공간 상에서의 이동 및 회전 정보, 객체를 촬영한 전자 장치(2000)의 카메라의 초점 거리 정보를 포함할 수 있으나, 이에 한정되는 것은 아니다. 전술한 것과 같이, 객체의 3차원 형상 타입이 직육면체인 경우, 직육면체 타입에 대응하는 3차원 파라미터의 요소는 실린더 타입에 대응하는 3차원 파라미터의 요소와 상이할 수 있다.In one embodiment, when the three-dimensional shape type of the object is a cylinder (or bottle), the elements of the three-dimensional parameters include the object's width, length, height, and radius information, the object's movement in three-dimensional space, and It may include rotation information and focal length information of the camera of the
일 실시예에서, 전자 장치(2000)는 적어도 하나의 라벨의 굴곡 형상을 나타내는 3차원 정보를 획득할 수 있다. 전자 장치(2000)는 3차원 파라미터의 초기값이 객체의 3차원 파라미터의 정답 값에 근사 또는 정합하도록 미세 조정함으로써, 조정된 3차원 파라미터의 최종 값이 객체의 3차원 정보를 나타내도록 만들 수 있다. 전술한 예시인, 3차원 형상 타입이 실린더(또는, 병)인 경우를 계속하여 설명하면, 전자 장치(2000)는 3차원 파라미터의 값들 중 가로, 세로, 높이, 반지름이 객체의 가로, 세로, 높이의 상대적인 비율 또는 절대적인 값을 나타내도록 조정할 수 있다. 또한, 전자 장치(2000)는 3차원 파라미터의 값들 중 이동 및 회전 값이, 객체의 3차원 공간 상에서의 이동 정도 및 회전 정도를 나타내는 값이 되도록 조정할 수 있다. 또한, 전자 장치(2000)는 3차원 파라미터의 값들 중 초점 거리 값이, 객체를 촬영한 전자 장치(2000)의 카메라의 초점 거리를 나타내는 값이 되도록 조정할 수 있다.In one embodiment, the
일 실시예에서, 전자 장치(2000)는 객체의 3차원 정보를 추정하기 위해 임의의 가상 객체를 설정할 수 있다. 가상 객체는, 단계 S230에서 식별된 객체의 3차원 형상 타입과 동일한 형상 타입을 가지며, 초기 파라미터 값들을 갖는 3차원 파라미터를 이용하여 렌더링 가능한 객체일 수 있다. 전자 장치(2000)는 3차원 가상 객체를 2차원으로 투영하고, 가상 객체의 키포인트들(본 개시에서, 제2 키포인트들로도 지칭됨)을 설정할 수 있다.In one embodiment, the
전자 장치(2000)는 가상 객체의 키포인트들이 단계 S220에서 획득된 객체의 키포인트들(제1 키포인트들)에 정합하도록 3차원 파라미터 값들을 미세 조정할 수 있다. 3차원 파라미터의 미세 조정 작업이 반복 수행됨에 따라, 3차원 파라미터의 최종 값들이 결정되고, 3차원 파라미터의 최종 값들이 객체의 3차원 정보를 나타내게 되면, 가상 객체로부터 획득된 제2 키포인트들이 객체의 제1 키포인트들에 정합된다. 전자 장치(2000)가 미세 조정 작업을 통해 객체의 3차원 정보를 나타내도록 3차원 파라미터의 값들을 변경하는 동작은, 도 6a에 대한 설명에서 더 기술한다.The
단계 S240에서 서술한, 전자 장치(2000)가 3차원 파라미터 값들을 획득한다고 하는 것은, 전술한 조정 작업을 통해 획득된 3차원 파라미터의 최종 값을 획득하는 것을 말한다.The fact that the
단계 S250에서, 일 실시예에 따른 전자 장치(2000)는 3차원 파라미터 값들에 기초하여, 적어도 하나의 라벨의 굴곡 형상을 추정한다.In step S250, the
전술한 단계들을 통해 값이 조정된 3차원 파라미터는, 이미지 내 객체의 3차원 정보(예를 들어, 객체의 가로, 세로, 높이, 반지름, 객체의 표면에 부착된 라벨의 굴곡 정도(각도) 등)를 나타낸다. 전자 장치(2000)는 3차원 파라미터를 이용하여 객체의 표면의 관심 영역인, 라벨을 나타내는 2차원 메시(mesh)를 생성할 수 있다. 여기서 2차원 메시(mesh) 데이터는 3차원 파라미터 값들을 이용하여, 3차원 공간 상의 라벨 표면 좌표를 2차원으로 투영한 결과로서, 제1 이미지 내의 라벨 표면 왜곡 정보를 의미할 수 있다. 다만, 이에 한정되는 것은 아니며, 전자 장치(2000)는 라벨의 굴곡 형상 뿐 아니라 라벨이 부착되어 있는 객체 표면의 굴곡 형상을 추정할 수도 있다.The 3D parameters whose values are adjusted through the above steps include 3D information of the object in the image (e.g., width, height, height, radius of the object, degree of curvature (angle) of the label attached to the surface of the object, etc. ). The
단계 S260에서, 일 실시예에 따른 전자 장치(2000)는 적어도 하나의 라벨에 대한 원근 변환을 수행함으로써, 라벨의 굴곡 형상이 평평하게 된, 플랫 라벨 이미지를 획득한다.In step S260, the
전자 장치(2000)는 원근 변환(perspective transform)을 이용하여, 라벨의 굴곡 형상을 평평하게 변환할 수 있다. 평평하게 변환된 라벨의 이미지는, 객체의 3차원 형상으로 인한 촬영 시 왜곡 등이 제거 및/또는 감소된 이미지이므로, 본 개시에서는 왜곡 없는 이미지, 또는 플랫 라벨 이미지로 지칭될 수 있다.The
한편, 단계 S240 내지 단계 S260의 동작에는 왜곡 제거 모델이 이용될 수 있다. 왜곡 제거 모델은, 객체 내의 관심 영역 정보 및 객체와 관련된 3차원 파라미터 값들을 입력 받아 왜곡 없는 이미지를 출력하도록 훈련된 인공지능 모델일 수 있다. 관심 영역 정보는 관심 영역의 이미지 및 관심 영역의 키포인트들의 좌표를 포함할 수 있다. 예를 들어, 왜곡 제거 모델은, 곡면을 포함하는 3차원 객체의 표면에 부착되어 굴곡이 있는 채로 촬영된 라벨을 포함하는 이미지를 입력 받아, 라벨이 평평하게 된 플랫 라벨 이미지를 획득할 수 있다.Meanwhile, a distortion removal model may be used in the operations of steps S240 to S260. The distortion removal model may be an artificial intelligence model trained to output a distortion-free image by receiving information on the area of interest within the object and 3D parameter values related to the object. Region of interest information may include an image of the region of interest and coordinates of key points of the region of interest. For example, the distortion removal model can receive an image containing a label attached to the surface of a three-dimensional object including a curved surface and photographed while it is curved, and obtain a flat label image with the label flat.
일 실시예에서, 전자 장치(2000)는 플랫 라벨 이미지로부터 객체와 관련된 정보를 획득할 수 있다. 전자 장치(2000)는 관심 영역 내 정보를 추출하기 위한 검출 모델을 이용하여 관심 영역 내의 로고, 아이콘, 텍스트 등을 식별할 수 있다. 정보 검출 모델은 전자 장치(2000)의 메모리에 저장될 수도 있고, 외부 서버에 저장될 수도 있다. 전자 장치(2000)는 전술한 단계들을 통해, 이미지 내 객체의 3차원 정보를 추론하고, 추론된 객체의 3차원 정보를 이용하여 정밀한 원근 변환을 수행함으로써 관심 영역의 왜곡을 제거하므로, 향상된 정확도로 관심 영역 내의 정보를 추출할 수 있다. 전자 장치(2000)가 정보 검출 모델을 이용하여 플랫 라벨 이미지로부터 객체와 관련된 정보를 획득하는 동작에 대해서는 도 7을 참조하여 후에 조금 더 살펴보기로 한다.In one embodiment, the
이하에서는, 도 3을 참조하여, 전자 장치(2000)가 제1 AI 모델(관심 영역 식별 모델) 및 제2 AI 모델(객체 3차원 형상 식별 모델)을 이용하여, 기하학적 왜곡이 포함된 제1 이미지로부터 왜곡이 제거된 플랫 라벨 이미지를 획득하는 동작에 대해서 더 살펴보기로 한다.Hereinafter, with reference to FIG. 3, the
도 3은 본 개시의 일 실시예에 따른 전자 장치가 이미지를 처리하는 동작을 전반적으로 설명하기 위한 도면이다.FIG. 3 is a diagram for generally explaining an image processing operation by an electronic device according to an embodiment of the present disclosure.
도 3을 참조하면, 일 실시예에 따른 전자 장치(2000)는 객체(300)의 이미지 이하, 객체 이미지(304)를 획득할 수 있다. 객체(300)는 적어도 하나의 라벨을 포함할 수 있다.Referring to FIG. 3 , the
일 실시예에서, 전자 장치(2000)는 사용자의 카메라 제어에 의해 객체(300)를 캡쳐함으로써 객체(300)의 이미지를 획득할 수 있다. 또는, 전자 장치(2000)는 이미 캡쳐된 객체(300)의 이미지를 다른 전자 장치(예를 들어, 서버, 다른 사용자의 전자 장치 등)로부터 수신할 수 있다.In one embodiment, the
일 실시예에서, 전자 장치(2000)는 관심 영역 식별 모델(310)을 이용하여 관심 영역(312)을 식별할 수 있다. 관심 영역 식별 모델(310)은 이미지를 입력 받아 이미지 내 객체(300)의 관심 영역(312)에 관련된 데이터를 출력하도록 훈련된 인공지능 모델일 수 있다. 관심 영역(312)에 관련된 데이터는 예를 들어, 관심 영역(312)의 키포인트들 및/또는 이들의 좌표 등일 수 있으나, 이에 한정되는 것은 아니다. 이하에서, 관심 영역(312)에 관련된 데이터는 설명의 편의를 위해 관심 영역(312)으로 지칭된다. 도 3의 예시에서, 관심 영역(312)은 객체(300)의 표면에 부착된 라벨이지만, 관심 영역(312)의 종류는 이에 한정되는 것은 아니다.In one embodiment, the
일 실시예에서, 전자 장치(2000)는 객체 이미지(304)를 관심 영역 식별 모델(310)의 입력 데이터로 사용할 수 있다. 또한, 전자 장치(2000)는 객체 이미지(304)에 소정의 전처리 알고리즘을 적용하여 관심 영역(312)을 식별하기에 보다 적합하도록 처리할 수 있다. 예를 들어, 전자 장치(2000)는 객체 이미지(304)의 일부를 잘라내고 리사이즈하여 획득된, 잘라낸 객체 이미지(302)를 관심 영역 식별 모델(310)의 입력 데이터로 사용할 수 있다. 이 경우, 객체 이미지(304)에서 잘라내어진 영역은, 관심 영역 이외의 영역일 수 있다. 또한, 잘라낸 객체 이미지(302)에는 객체(300)의 적어도 일부가 포함될 수 있으며, 객체(300)의 관심 영역(312)이 포함될 수 있다.In one embodiment, the
일 실시예에서, 전자 장치(2000)는 객체 3차원 형상 식별 모델(320)을 이용하여 객체의 3차원 형상 타입(322)을 식별할 수 있다. 객체 3차원 형상 식별 모델(320)은 이미지를 입력 받아 이미지 내 객체(300)의 3차원 형상 타입(322)에 관한 데이터를 출력하도록 훈련된 인공지능 모델일 수 있다. 도 3의 예시에서, 3차원 형상 타입(322)은 예시적으로 실린더로 도시되었지만, 이에 한정되는 것은 아니다. 예를 들어, 3차원 형상 타입(322)은 구, 정육면체 등일 수 있다. 이하에서, 3차원 형상 타입(322)에 관련된 데이터는 설명의 편의를 위해 3차원 형상 타입(322)으로 지칭된다.In one embodiment, the
전자 장치(2000)는 3차원 형상 타입(322)에 기초하여 3차원 파라미터(324)의 초기 값들을 획득할 수 있다. 3차원 파라미터(324)는 3차원 형상 타입(322)에 기초하여 결정할 수 있다. 예를 들어, 3차원 형상 타입(322)이 실린더 타입인 경우, 실린더 타입에 대응하는 3차원 파라미터(324)의 요소들은 높이, 반지름, 객체 표면의 관심 영역의 각도, 3차원 공간 상의 이동 좌표 및 화전 좌표, 카메라의 초점 거리 중 적어도 하나를 포함할 수 있다.The
일 실시예에서, 전자 장치(2000)는 왜곡 제거 모델(330)을 이용하여 왜곡 없는 이미지(332)를 획득할 수 있다. 왜곡 제거 모델(330)은, 관심 영역(312), 3차원 파라미터(324), 객체 이미지(304)(또는, 잘라낸 객체 이미지(302))를 입력 받아, 왜곡 없는 이미지(332)를 출력하도록 훈련된 인공지능 모델일 수 있다. 도 3의 예시에서는, 관심 영역(312)이 라벨이고, 객체(300)는 병이므로, 왜곡 없는 이미지(332)는 병 표면에 부착된 라벨의 왜곡을 제거한, 플랫 라벨 이미지일 수 있다. 다만, 왜곡 없는 이미지(332)는 플랫 라벨 이미지에 한정되는 것은 아니다. 왜곡 없는 이미지(332)는, 관심 영역(312)의 타입, 3차원 형상 타입(322)에 따라 획득 가능한 모든 유형의 이미지를 포함할 수 있다.In one embodiment, the
일 실시예에서, 왜곡 제거 모델(330)은 3차원 파라미터(324)의 초기 값들을 튜닝하여, 3차원 파라미터(324)의 최종 값들이 객체(300)의 3차원 정보를 나타내도록 할 수 있다. 예를 들어, 왜곡 제거 모델(330)에 의해, 객체(300)의 가로, 세로, 높이, 반지름, 객체의 표면에 부착된 라벨의 굴곡 정도(각도) 등의 상대적 또는 절대적인 값들이 획득될 수 있다. 왜곡 제거 모델(330)은, 객체(300)의 3차원 정보를 나타내는 3차원 파라미터(324)의 최종 값들에 기초하여, 왜곡 없는 이미지(332)를 생성할 수 있다. 예를 들어, 왜곡 제거 모델(330)은 3차원 파라미터(324)의 최종 값들에 기초하여, 굴곡진 객체(300)의 표면에 부착된 라벨의 굴곡이 평평하게 되도록 변환함으로써, 라벨의 왜곡이 제거된 플랫 라벨 이미지를 왜곡 없는 이미지(332)로 획득할 수 있다.In one embodiment, the
일 실시예에서, 전자 장치(2000)는 왜곡 제거 모델(330)의 동작은 일련의 데이터 처리/연산으로 대체될 수 있다. 전자 장치(2000)는 왜곡 제거 모델(330)을 이용하지 않고, 일련의 데이터 처리/연산을 수행하여 왜곡 없는 이미지(332)를 획득할 수 있다. 예를 들어, 전자 장치(2000)는 객체의 3차원 정보를 추정하기 위해 임의의 가상 객체를 설정할 수 있다. 임의의 가상 객체는 3차원 파라미터(324)의 초기 값들에 기초하여 생성될 수 있다. 전자 장치(2000)는 임의의 가상 객체로부터 임의의 관심 영역을 설정하고, 임의의 가상 객체의 임의의 관심 영역과 객체(300)의 관심 영역(312)이 매칭되도록 3차원 파라미터의 값들을 조정함으로써, 3차원 파라미터(324)의 최종 값들을 획득할 수 있다. 전자 장치(2000)는 3차원 파라미터(324)의 최종 값들에 기초하여, 왜곡 없는 이미지(332)를 생성할 수 있다.In one embodiment, the
전자 장치(2000)가 객체의 3차원 정보를 추정하기 위해 임의의 가상 객체를 설정하는 동작에 대해서는 도 6a를 참조하여 후에 더 살펴보기로 한다.The operation of the
도 4는 본 개시의 일 실시예에 따른 전자 장치가 객체의 3차원 형상을 식별하는 동작을 설명하기 위한 도면이다.FIG. 4 is a diagram illustrating an operation of an electronic device identifying the three-dimensional shape of an object according to an embodiment of the present disclosure.
일 실시예에서, 전자 장치(2000)는 객체 3차원 형상 식별 모델(410)을 이용하여 객체의 3차원 형상 타입(420)을 식별할 수 있다. 전자 장치(2000)는 객체의 이미지(400)를 입력 받아 피쳐들을 추출하는 객체 3차원 형상 식별 모델(410)의 신경망 연산을 통해 객체의 3차원 형상 타입(420)을 식별할 수 있다.In one embodiment, the
객체 3차원 형상 식별 모델(410)은, 3차원 객체를 포함하는 다양한 이미지들로 구성되는 트레이닝 데이터셋에 기초하여 훈련된 것일 수 있다. 객체 3차원 형상 식별 모델(410)의 트레이닝 데이터셋의 객체 이미지들에는, 객체의 3차원 형상 타입(420)이 레이블링 되어 있을 수 있다. 객체의 3차원 형상 타입(420)은 예를 들어, 구, 정육면체, 각뿔, 원뿔, 잘린 원뿔, 반구, 직육면체 등이 포함될 수 있으나, 이에 한정되는 것은 아니다.The
일 실시예에서, 전자 장치(2000)는 식별된 3차원 형상 타입(420)에 기초하여 객체의 3차원 형상 타입(420)에 대응하는 3차원 파라미터(430)를 획득할 수 있다. '3차원 파라미터(430)'란, 객체의 3차원 형상과 관련된 기하학적 특징을 나타내는 요소들을 말한다. 예를 들어, 3차원 형상 타입(420)이 '구'인 경우, '구'의 3차원 파라미터(430)가 획득되고, 3차원 형상 타입(420)이 '정육면체'인 경우, '정육면체'의 3차원 파라미터(430)가 획득될 수 있다. 3차원 파라미터(430)를 구성하는 요소들은 3차원 형상 타입(420) 마다 상이할 수 있다. 예를 들어, '구'의 3차원 파라미터(430)에는 반지름 및/또는 직경 등의 요소가 포함될 수 있으며, '정육면체'의 3차원 파라미터(430)에는 가로, 세로, 높이 등의 요소가 포함될 수 있다.In one embodiment, the
한편, 도 4에 도시된 3차원 파라미터(430)는 설명의 편의를 위해 기하학적 특징인 가로, 세로, 반지름, 깊이 등의 요소들만 도시되었으나, 3차원 파라미터(430)는 이에 한정되는 것은 아니다. 3차원 파라미터(430)는 공간 상에서 객체의 회전 좌표 정보, 공간 상에서 객체의 이동 좌표 정보, 객체를 촬영한 카메라의 초점 거리 정보 및 객체의 관심 영역에 관한 3차원 정보(예를 들어, 관심 영역의 가로, 세로, 곡률 등) 등을 더 포함할 수 있다. 즉, 도시된 3차원 파라미터(430)는 시각적 이해를 돕기 위한 예시일 뿐이며, 3차원 파라미터(430),는 전술한 예시들 외에 이미지 내 객체의 3차원 정보를 추정하기 위해 활용 가능한 어떠한 유형의 요소든지 더 포함될 수 있고, 전술한 예시들 중에서 일부 요소들이 제외될 수도 있다.Meanwhile, the
다시 구체적인 예를 들면, 일 실시예에 따른 전자 장치(2000)는 이미지(400)를 객체 3차원 형상 식별 모델(410)에 적용하여, 이미지(400) 내의 객체의 3차원 형상 타입(420)인 실린더 타입(422)을 식별할 수 있다. 전자 장치(2000)는 실린더 타입(422)에 대응하는, 실린더의 3차원 파라미터(432)를 획득할 수 있다. 실린더의 3차원 파라미터(432)는 예를 들어, 실린더의 직경 D, 실린더의 반지름 r, 3차원 공간상에서의 실린더의 회전 정보 R, 3차원 공간상에서의 실린더의 이동 정보 T, 실린더의 높이 h, 실린더 표면의 관심 영역의 높이 h', 실린더 표면에서 관심 영역(예를 들어, 상품의 라벨 등)이 차지하는 각도 θ, 카메라의 초점거리 정보 F 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.To give another specific example, the
일 실시예에서, 3차원 파라미터(430)에 포함되는 각각의 요소들은, 임의의 객체의 3차원 정보를 나타내는 초기 값이 설정되어 있을 수 있다. 일 실시예에 따른 전자 장치(2000)는, 3차원 파라미터(430)가 객체의 3차원 정보를 나타내도록 매칭할 수 있다. 예를 들어, 전자 장치(2000)는 실린더의 3차원 파라미터(432) 값들을 조정하여, 실린더의 3차원 파라미터(432) 값들이 이미지(400) 내의 객체의 3차원 정보를 나타내도록 할 수 있다. 즉, 전자 장치(2000)는 이미지(400) 내 객체의 3차원 정보를 나타내는 3차원 파라미터(430) 값들을 획득할 수 있다. 이에 대하여는 도 6a에 대한 설명에서 더 기술한다.In one embodiment, each element included in the
한편, 본 개시의 도면들에서는 이미지(400) 내 객체가 '와인' 이고 관심 영역이 '와인 라벨'인 것을 예시로 설명하지만, 본 개시는 이에 한정되는 것은 아니다.Meanwhile, in the drawings of the present disclosure, the object in the
예를 들어, 본 개시에서 와인 병의 3차원 형상 타입(420)은 실린더 타입(422)로 식별되는 것을 설명하지만, 객체 3차원 형상 식별 모델(410)의 훈련 및 튜닝에 따라서는 와인 병이 병(bottle) 타입으로 식별될 수도 있고, 이에 따라 획득되는 3차원 파라미터도 병 타입에 대응하는 3차원 파라미터일 수 있다.For example, in the present disclosure, the three-
또다른 예를 들면, 이미지 내 객체가 다른 타입의 3차원 형상인 '구, 원뿔, 직육면체' 등의 객체일 수도 있다. 이 경우, 전자 장치(2000)는 각각의 객체 별로 3차원 형상 타입(420)을 식별하고, 3차원 파라미터(430)를 획득할 수 있다.For another example, the object in the image may be another type of three-dimensional object such as a sphere, cone, or cuboid. In this case, the
또다른 예를 들면, 이미지 내 관심 영역은 상품의 라벨이 아닌, 상품의 성분, 사용법, 사용량 등 상품(객체)에 관련된 정보를 나타내는 영역일 수도 있다. 이 경우, 전자 장치(2000)는 객체의 관심 영역에 포함되는 정보를 정확하게 식별하기 위해, 본 개시의 실시예들에 따른 왜곡 제거 동작들을 수행하고, 왜곡 없는 이미지로부터 객체와 관련된 정보를 획득할 수 있다.For another example, the area of interest in the image may not be the product's label, but rather an area that represents information related to the product (object), such as the product's ingredients, usage instructions, and usage amount. In this case, the
도 5는 본 개시의 일 실시예에 따른 전자 장치가 객체의 표면의 관심 영역을 식별하는 동작을 설명하기 위한 도면이다.FIG. 5 is a diagram illustrating an operation of an electronic device identifying a region of interest on the surface of an object according to an embodiment of the present disclosure.
일 실시예에서, 전자 장치(2000)는 관심 영역 식별 모델(510)을 이용하여 관심 영역(520)을 식별할 수 있다. 전자 장치(2000)는 객체 이미지(500)(이하, 이미지(500))를 입력 받아 피쳐들을 추출하는 관심 영역 식별 모델(510)의 신경망 연산을 통해 관심 영역(520)을 식별할 수 있다.In one embodiment, the
일 실시예에서, 전자 장치(2000)는 관심 영역 식별 모델(510)에 입력될 이미지(500)를 전처리할 수 있다. 전자 장치(2000)는 이미지(500)의 일부를 잘라내고 리사이즈하여 획득된, 입력 이미지(502)를 관심 영역 식별 모델(510)의 입력 데이터로 사용할 수 있다. 일 실시예에서, 전자 장치(2000)는 관심 영역 식별 모델(510)에 입력될 이미지를 다른 카메라를 이용하여 획득할 수 있다. 예를 들어, 전자 장치(2000)는 사용자가 객체를 촬영할 때, 다른 고해상도 카메라를 이용하여 관심 영역의 고해상도 이미지를 획득할 수 있다. 이 경우, 사용자가 촬영하는 이미지는 객체 이미지(500)와 같은 포맷일 수 있고, 전자 장치(2000)가 관심 영역 식별을 위해 별도로 저장하는 이미지는 입력 이미지(502)와 같은 포맷일 수 있다.In one embodiment, the
관심 영역 식별 모델(510)은, 관심 영역을 포함하는 다양한 이미지들로 구성되는 트레이닝 데이터셋에 기초하여 훈련된 것일 수 있다. 관심 영역 식별 모델(510)의 트레이닝 데이터셋의 관심 영역 이미지들에는, 관심 영역을 나타내는 키포인트들이 레이블링 되어 있을 수 있다. 전자 장치(2000)가 관심 영역 식별 모델(510)을 이용하여 식별하는 관심 영역(520)은, 검출된 관심 영역(520)이 표시된 이미지, 관심 영역을 나타내는 키포인트들 및/또는 이미지 내에서 키포인트들의 좌표 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.The region of
관심 영역 식별 모델(510)은, 백본(backbone) 네트워크 및 회귀 모듈을 포함할 수 있다. 백본 네트워크는 입력 이미지(502)로부터 다양한 피쳐들을 추출하기 위한 알려진 신경망(예를 들어, CNN 등) 알고리즘들이 사용될 수 있다. 예를 들어, 백본 네트워크는 미리-훈련된(pre-trained) 네트워크 모델일 수 있으며, 관심 영역 식별 모델(510)의 성능 개선을 위해 다른 타입의 신경망으로 변경될 수 있다. 회귀 모듈은 관심 영역(520)을 검출하는 태스크를 수행한다. 예를 들어, 회귀 모듈은 관심 영역을 나타내는 경계 박스, 키포인트들 등이 정답 값에 수렴하도록 학습하기 위한 회귀 알고리즘을 포함할 수 있다. 회귀 모듈은 관심 영역(520)을 검출하기 위한 신경망 레이어 및 가중치들을 포함할 수 있다. 예를 들어, 회귀 모듈은 관심 영역을 검출하기 위한 R-CNN(Regions with Convolutional Neuron Networks features) 등으로 구성될 수 있으나, 이에 한정되는 것은 아니다. 전자 장치(2000)는 관심 영역 식별 모델(510)의 트레이닝 데이터셋을 이용하여 회귀 모듈의 레이어들을 훈련시킬 수 있다.The region of
도 6a는 본 개시의 일 실시예에 따른 전자 장치가 객체의 3차원 정보를 획득하는 동작을 설명하기 위한 도면이다.FIG. 6A is a diagram illustrating an operation of an electronic device acquiring 3D information of an object according to an embodiment of the present disclosure.
도 6a를 설명함에 있어서, 설명의 편의를 위해 객체의 3차원 형상 타입은 실린더로 식별된 경우를 예시로 들어 설명한다. 다만, 객체의 3차원 형상 타입은 실린더에 한정되는 것은 아니며, 전술한 예시를 포함하여 기하학적 특징을 3차원 파라미터로 나타낼 수 있는 어떠한 3차원 형상 타입에 대해서도 적용될 수 있다.In explaining FIG. 6A, for convenience of explanation, an example will be given where the three-dimensional shape type of the object is identified as a cylinder. However, the three-dimensional shape type of the object is not limited to a cylinder, and can be applied to any three-dimensional shape type whose geometric features can be expressed as three-dimensional parameters, including the examples described above.
일 실시예에 따른 전자 장치(2000)는, 객체의 3차원 정보를 획득하기 위해 후술되는 동작들을 수행할 수 있다. 전자 장치(2000)는 객체의 3차원 정보에 기초하여 원근 변환을 수행하므로, 객체의 3차원 정보 없이 일반적으로 원근 변환을 수행하는 것보다 정밀하게 이미지 내 왜곡을 제거할 수 있다. 이미지 내의 왜곡은 3차원 객체 표면의 곡선면으로 인한 관심 영역의 왜곡 등을 포함할 수 있다. 예를 들어, 객체의 3차원 형상의 곡선면으로 인해, 객체 표면에 부착된 라벨이 2차원의 이미지 내에서 왜곡된 것을 예로 들 수 있으나, 이에 한정되는 것은 아니다.The
일 실시예에서, 전자 장치(2000)는 기 저장된 다양한 3차원 형상 타입(예를 들어, 실린더, 구, 정육면체 등)에 대응하는 3차원 파라미터 중에서, 식별된 3차원 형상 타입인 '실린더'에 대응하는 3차원 파라미터(610)를 획득할 수 있다. 실린더 타입에 대응하는 3차원 파라미터(610)는 예를 들어, 실린더의 반지름 r, 3차원 공간상에서의 실린더의 회전 정보 R, 3차원 공간상에서의 실린더의 이동 정보 T, 관심 영역의 높이 h, 실린더 표면에서 관심 영역(예를 들어, 상품의 라벨 등)이 차지하는 각도 θ, 카메라의 초점거리 정보 F 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. 3차원 파라미터(610)에 포함되는 각각의 요소들은, 초기값이 설정되어 있을 수 있다.In one embodiment, the
일 실시예에서, 전자 장치(2000)는 이미지 내 객체의 3차원 정보를 추정하기 위해, 가상 객체(620)를 설정할 수 있다. 가상 객체(620)는, 이미지 내 객체의 3차원 형상 타입과 동일한 형상 타입으로 설정되며, 3차원 파라미터(610)의 초기 값으로 렌더링되는 객체일 수 있다. 즉, 도 6a의 예시에서는, 가상 객체(620)는 실린더 타입이고, 3차원 파라미터(610)의 초기값(r, R, T, h, θ, F)을 3차원 정보로 하는 객체이다. 또한, 가상 객체(620)는 가상 객체에 대하여 임의로 설정된 초기 관심 영역(622)을 포함할 수 있다.In one embodiment, the
전자 장치(2000)는 가상 객체의 3차원 정보를 나타내는 3차원 파라미터(610) 값들이 이미지 내 객체의 3차원 정보를 나타내도록, 3차원 파라미터(610) 값들을 미세 조정할 수 있다.The
전자 장치(2000)는 가상 객체(620)를 2차원으로 투영하고, 가상 객체(620)의 관심 영역(예를 들어, 라벨)을 나타내는 키포인트들(또한, 제2 키포인트들로도 지칭됨)(630)을 설정할 수 있다. 전자 장치(2000)는 제2 키포인트들(630)이 이미지 내 객체의 관심 영역을 나타내는 키포인트들(또한, 제1 키포인트들로도 지칭됨)(640)에 정합하도록 3차원 파라미터(610) 값들을 미세 조정할 수 있다. 전자 장치(2000)가 이미지 내 객체의 관심 영역을 나타내는 제1 키포인트들(640)을 획득하는 동작은 전술하였으므로, 동일한 설명은 생략한다.The
전자 장치(2000)는 손실 함수에 기초하여 제2 키포인트들(630)이 제1 키포인트들(640)에 정합하도록 조정할 수 있다. 함수 f는 실린더의 3차원 파라미터(610)인 r, R, T, h, θ, F 를 변수로 포함하는 함수일 수 있다. 전자 장치(2000)는 함수 f를 이용하여 가상 객체(620)의 제2 키포인트들(630)을 추정할 수 있으며, 손실 함수를 이용하여 제2 키포인트들(630)과 제1 키포인트들(640)의 오차가 최소화 되도록 제2 키포인트들(630)을 조정할 수 있다. 전자 장치(2000)는 제2 키포인트들(630)이 제1 키포인트들에 정합하도록 3차원 파라미터(610)의 값들을 변경할 수 있다. 전자 장치(2000)는 변경된 3차원 파라미터(610)의 값들에 기초하여 가상 객체(620)를 재생성(업데이트)하고, 전술한 동작을 반복할 수 있다. 즉, 전자 장치(2000)는, 3차원 파라미터(610)의 값을 조정하고, 3차원 파라미터(610)의 조정된 값들의 3차원 정보를 갖는 가상 객체의 생성을 반복하면서, 가상 객체(620)를 2차원으로 투영하여 획득된 제2 키포인트들(630)과 이미지 내 객체의 관심 영역을 나타내는 제1 키포인트들(640)의 차이가 최소가 되는 3차원 파라미터(610)의 값들을 획득할 수 있다. 위 조정 작업이 반복됨에 따라, 가상 객체에 대하여 설정된 3차원 파라미터(610)의 초기값들은, 객체의 3차원 파라미터(610)의 정답 값에 근사하도록 조정될 수 있다. 제2 키포인트들(630)이 제1 키포인트들(640)에 정합되면, 이 때의 가상 객체(620)에 대응되는 3차원 파라미터(610)의 값들은 이미지 내 객체의 3차원 정보를 나타낸다. 전자 장치(2000)는 최종적으로 이미지 내 객체의 3차원 정보를 나타내는 3차원 파라미터(610)를 획득할 수 있다.The
도 6b는 본 개시의 일 실시예에 따른 전자 장치가 객체의 3차원 정보에 기초하여 관심 영역의 왜곡을 제거하는 동작을 설명하기 위한 도면이다.FIG. 6B is a diagram illustrating an operation of an electronic device removing distortion of a region of interest based on 3D information of an object according to an embodiment of the present disclosure.
도 6b를 설명함에 있어서, 도 6a에서 예시로 설명한 내용을 계속하여 설명한다. 도 6b를 참조하면, 일 실시예에 따른 전자 장치(2000)는 3차원 파라미터(610)의 값들의 미세 조정 과정을 통해, 이미지 내 객체의 3차원 정보를 나타내는 3차원 파라미터(610) 값들을 획득할 수 있다.In explaining FIG. 6B, the content explained as an example in FIG. 6A will be continued. Referring to FIG. 6B, the
전자 장치(2000)는 3차원 파라미터(610) 값들을 이용하여 이미지 내 객체의 표면의 관심 영역을 나타내는 2차원 메시(mesh) 데이터(650)를 생성할 수 있다. 2차원 메시 데이터(650)는, 획득된 3차원 파라미터(610) 값들에 기초하여, 3차원 공간 상에서 객체의 관심 영역 좌표를 2차원으로 투영하여 생성된 데이터를 말하며, 객체의 관심 영역의 왜곡 정보를 포함한다. 예를 들어, 굴곡 형상을 갖는 3차원 객체인 '와인 병'의 표면에 부착된 관심 영역은 '와인 라벨'일 수 있다. 이 경우, 2차원 메시 데이터(650)는 와인 병의 표면에 부착된 와인 라벨의 3차원 공간상 좌표를 2차원으로 투영한 것으로, 와인 병을 포함하는 이미지 내에서 관심 영역인 와인 라벨의 왜곡 정보를 나타낼 수 있다.The
전자 장치(2000)는 굴곡 왜곡이 반영된 2차원 메시 데이터(650)를 평면(flat) 데이터(660)로 변환할 수 있다. 이 경우, 데이터 변환을 위한 다양한 알고리즘이 적용될 수 있다. 예를 들어, 전자 장치(2000)는 원근 변환 알고리즘을 이용할 수 있으나, 이에 한정되는 것은 아니다. The
일 실시예에 따른 전자 장치(2000)는 평면 데이터(660)를 생성함으로써, 평면 데이터(660)에 대응하는, 왜곡 없는 이미지(670)를 획득할 수 있다. 예를 들어, 왜곡 없는 이미지(670)는, 와인 병의 곡선 면에 부착되어 있는, 굴곡 형상을 갖는 와인의 라벨을 평평하게 편 이미지일 수 있으나, 이에 한정되는 것은 아니다. 일부 실시예에서, 전자 장치(2000)는 왜곡 없는 이미지(670)를 획득할 때, 픽셀 간 보간을 수행하여 이미지 품질을 개선할 수 있다.The
전자 장치(2000)는 관심 영역의 왜곡 없는 이미지(670)를 이용하여, 관심 영역 내 정보를 추출할 수 있다. 왜곡 없는 이미지(670)는 객체의 정확한 3차원 정보를 추론한 결과에 기초하여 생성된 것이므로, 이미지 내 정보를 추출하기 위한 일반적인 정보 검출 모델(예: OCR 모델)을 이용하더라도 관심 영역 내의 로고, 아이콘, 텍스트 등이 보다 더 정확하게 검출될 수 있다. 즉, 왜곡된 이미지 내에서 정보를 추출하기 위해 이미지 내의 왜곡을 반영하여 별도로 정보 검출 모델을 훈련시키지 않더라도, 일반적인 정보 검출 모델을 통해서도 정확한 정보 추출이 가능할 수 있다. 다만, 전술한 일반적인 정보 검출 모델은 예시일 뿐이며, 전자 장치(2000)는 로고, 아이콘, 텍스트 등에 왜곡이 있는 훈련 데이터를 포함하여 훈련된 검출 모델 또한 이용할 수 있다.The
도 7은 본 개시의 일 실시예에 따른 전자 장치가 관심 영역 내의 정보를 추출하는 동작을 설명하기 위한 도면이다.FIG. 7 is a diagram illustrating an operation of extracting information within a region of interest by an electronic device according to an embodiment of the present disclosure.
도 7을 설명함에 있어서, 전자 장치(2000)가 전술한 실시예들에 따라, 이미지 내에 객체가 있고, 객체의 전체 영역 중 적어도 일부의 영역이 관심 영역이며, 관심 영역의 왜곡 없는 이미지(700)를 획득한 것을 전제로 설명한다. 구체적으로, 왜곡 없는 이미지(700)는 상품의 라벨의 왜곡(예를 들어, 굴곡으로 인한 왜곡 등)을 제거한 플랫 라벨 이미지일 수 있다.In describing FIG. 7 , according to the above-described embodiments, the
일 실시예에서, 전자 장치(2000)는 정보 검출 모델(710)을 이용하여 관심 영역의 왜곡 없는 이미지(700)로부터 관심 영역 내 정보(720)를 추출할 수 있다. 관심 영역 내 정보(720)는 객체와 관련된 정보일 수 있다. 예를 들어, 전자 장치(2000)는 정보 검출 모델(710)을 이용하여, 객체에 포함된 상품 라벨의 왜곡 없는 이미지(700)를 획득하고, 상품 라벨에 포함되는 객체와 관련된, 관심 영역 내 정보(720)를 획득할 수 있다.In one embodiment, the
일 실시예에서, 정보 검출 모델(710)은 왜곡 없는 이미지(700)를 이용하여 정보를 추출하므로, 정보 추출을 위해 사용되는 알려진 검출 모델들이 이용될 수 있다. 예를 들어, 정보 검출 모델(710)은 OCR 모델일 수 있다. 전자 장치(2000)는 OCR 모델을 이용하여 관심 영역 내의 텍스트들을 검출할 수 있다. OCR 모델은, 일반 문자, 특수 문자(special character) 및 기호(symbol) 등을 인식할 수 있다. 다만, 관심 영역 내 정보(720)는 이에 한정되는 것은 아니며, 관심 영역 내의 로고, 아이콘, 이미지 등을 검출하기 위한 다양한 검출 모델들이 이용될 수 있다. 구체적으로, 로고 검출 모델, 아이콘 검출 모델, 이미지 검출 모델, 객체 검출 모델 등이 포함될 수 있다.In one embodiment, the
일 실시예에서, 정보 검출 모델(710)은 왜곡 없는 이미지(700)에 기초하여 훈련된 인공지능 모델일 수 있다. 전술한 실시예들에 따라 획득되는 왜곡 없는 이미지(700)로부터 정보 추출의 정밀성을 확보하기 위해, 전자 장치(2000) 왜곡 없는 이미지(700) 및 관심 영역 내 정보(720)를 트레이닝 데이터셋에 포함시켜 정보 검출 모델(710)을 더 훈련시킬 수 있다. 이 경우, 전자 장치(2000)는 알려진 검출 모델들을 미리-훈련된 모델로 하여, 관심 영역 내 정보(720)가 보다 정밀하게 추출되도록 정보 검출 모델(710)을 훈련시킬 수 있다. 일부 실시예에서, 전자 장치(2000)는 하나 이상의 정보 검출 모델(710)을 용할 수 있다. 예를 들어, 전자 장치(2000)는 둘 이상의 정보 검출 모델(710) 각각으로부터 획득된 정보를 독립적으로 표시/제공하거나, 둘 이상의 정보 검출 모델(710) 각각으로부터 획득된 정보를 조합 및/또는 가공하여, 새로운 2차 정보를 생성하고, 생성된 2차 정보를 표시/제공할 수 있다.In one embodiment, the
도 8a는 본 개시의 일 실시예에 따른 전자 장치가 3차원 정보를 획득하여 왜곡 없는 이미지를 획득한 제1 예시를 설명하기 위한 도면이다.FIG. 8A is a diagram illustrating a first example in which an electronic device acquires 3D information and obtains an image without distortion, according to an embodiment of the present disclosure.
도 8a 내지 도 8c에서, 시점이란, 전자 장치(2000)의 카메라가 객체(800)를 바라본 방향 및/또는 각도를 나타내기 위해 임의로 선정된 용어이다.In FIGS. 8A to 8C , the viewpoint is a term arbitrarily selected to indicate the direction and/or angle from which the camera of the
도 8a를 참조하면, 일 실시예에 따른 전자 장치(2000)는 제1 시점에서 객체(800)를 촬영한 객체 이미지(810)로부터 관심 영역(812)을 식별하고, 왜곡 없는 이미지(814)(예를 들어, 플랫 라벨 이미지)를 획득할 수 있다.Referring to FIG. 8A, the
일 실시예에서, 제1 시점은 전자 장치(2000)의 카메라가 객체(800)를 정면에서 바라본 것일 수 있다. 이 경우, 전자 장치(2000)가 객체(800)를 정면에서 촬영하더라도, 3차원 형상의 객체를 촬영한 이미지는 2차원이기 때문에, 객체(800)에 부착된 라벨에는 객체(800) 자체에 존재하는 곡면으로 인한 왜곡이 있을 수 있다.In one embodiment, the first viewpoint may be when the camera of the
일 실시예에 따른 전자 장치(2000)는, 객체 이미지(810)로부터 관심 영역(812)을 잘라내고, 관심 영역(812)을 포함하는 왜곡 없는 이미지(814)를 획득할 수 있다. 전자 장치(2000)는 왜곡 없는 이미지(814)를 획득하기 위해, 객체(800)의 3차원 정보를 이용할 수 있다. 3차원 정보는 객체(800)에 대하여 튜닝된 3차원 파라미터 값들로 구성될 수 있다. 예를 들어, 3차원 정보는 실린더 형상의 객체(800)의 반지름, 3차원 공간 상에서의 객체(800)의 회전 좌표, 3차원 공간상에서의 객체(800)의 이동 좌표, 객체(800)의 표면에서 관심 영역(812)이 차지하는 각도(즉, 객체(800)의 3차원 형상인 실린더의 중심 축으로부터 관심 영역 양 끝단 사이의 각도), 전자 장치(2000)가 객체 이미지(810)를 촬영하였을 때 카메라의 초점 거리 등을 포함할 수 있다.The
전자 장치(2000)는 3차원 정보에 기초하여, 관심 영역(812)이 2차원 평면에서 왜곡 없이 표현될 수 있도록 원근 변환을 수행할 수 있다. 이에 대한 구체적인 동작들은 전술하였으므로, 동일한 설명은 생략한다.Based on 3D information, the
한편, 전자 장치(2000)가 객체(800)를 바라보는 시점이 변경됨에 따라 관심 영역(812)에 발생하는 왜곡의 정도가 상이해질 수 있다. 일 실시예에 따른 전자 장치(2000)는 3차원 정보를 활용함으로써 왜곡의 정도에 관계 없이 강건한 왜곡 제거를 수행할 수 있다. 이를 도 8b 및 도 8c를 참조하여 더 설명하기로 한다.Meanwhile, as the viewpoint from which the
도 8b는 본 개시의 일 실시예에 따른 전자 장치가 3차원 정보를 획득하여 왜곡 없는 이미지를 획득한 제2 예시를 설명하기 위한 도면이다.FIG. 8B is a diagram illustrating a second example in which an electronic device acquires 3D information and obtains an image without distortion, according to an embodiment of the present disclosure.
도 8b를 참조하면, 일 실시예에 따른 전자 장치(2000)는 제2 시점에서 객체(800)를 촬영한 객체 이미지(820)로부터 관심 영역(822)을 식별하고, 왜곡 없는 이미지(826)(예를 들어, 플랫 라벨 이미지)를 획득할 수 있다.Referring to FIG. 8B, the
일 실시예에서, 제2 시점은 전자 장치(2000)의 카메라가 객체(800)를 수직 위 방향으로 기울여서 바라본 것일 수 있다. 이 경우, 객체 이미지(820)에 포함되는 관심 영역(822)에는, 객체(800)의 3차원 형상으로 인한 왜곡 외에도, 전자 장치(2000)의 카메라의 시점으로 인한 왜곡 또한 존재할 수 있다. 전자 장치(2000)는 객체(800)의 3차원 정보를 이용함으로써, 객체(800)의 3차원 형상으로 인한 왜곡 및 전자 장치(2000)의 카메라의 시점으로 인한 왜곡을 제거한, 왜곡 없는 이미지(826)를 획득할 수 있다.In one embodiment, the second viewpoint may be when the camera of the
예를 들어, 변환 이미지(824)는 관심 영역(822)을 평평하게 원근 변환하여 생성된 이미지이다. 원근 변환은 알려진 원근 변환 알고리즘이 이용될 수 있으므로, 구체적인 설명은 생략한다. 변환 이미지(824)를 참조하면, 관심 영역(822)을 평평하게 변환하더라도 객체(800)의 3차원 형상으로 인한 왜곡 및/또는 카메라의 시점으로 인한 왜곡(824-1, 824-2) 등이 잔존할 수 있다. (도 8b의 왜곡(824-1, 824-2)은, 기준 직선 대비 글자가 곡선으로 휘어진 왜곡을 예시적으로 나타낸다.)For example, the transformed
일 실시예에서, 3차원 정보는 객체(800)의 3차원 정보를 나타내도록 튜닝된 3차원 파라미터 값들로 구성될 수 있다. 예를 들어, 3차원 정보는 객체(800)의 반지름, 3차원 공간 상에서의 객체(800)의 회전 좌표, 3차원 공간상에서의 객체(800)의 이동 좌표, 객체(800)의 표면에서 관심 영역(812)이 차지하는 각도(즉, 객체(800)의 3차원 형상인 실린더의 중심 축으로부터 관심 영역 양 끝단 사이의 각도), 전자 장치(2000)가 객체 이미지(820)를 촬영하였을 때 카메라의 초점 거리 등을 포함할 수 있다. 일 실시예에 따른 전자 장치(2000)는 3차원 정보를 이용하여 정밀하게 원근 변환을 수행함으로써, 객체의 3차원 형상 및 카메라의 촬영 시점으로 인해 발생하는 왜곡을 제거한, 왜곡 없는 이미지(826)를 획득할 수 있다.In one embodiment, the 3D information may consist of 3D parameter values tuned to represent 3D information of the
도 8c는 본 개시의 일 실시예에 따른 전자 장치가 3차원 정보를 획득하여 왜곡 없는 이미지를 획득한 제3 예시를 설명하기 위한 도면이다.FIG. 8C is a diagram illustrating a third example in which an electronic device acquires 3D information and obtains an image without distortion, according to an embodiment of the present disclosure.
도 8c를 참조하면, 일 실시예에 따른 전자 장치(2000)는 제3 시점에서 객체(800)를 촬영한 객체 이미지(830)로부터 관심 영역(832)을 식별하고, 왜곡 없는 이미지(836)(예를 들어, 플랫 라벨 이미지)를 획득할 수 있다.Referring to FIG. 8C, the
일 실시예에서, 제3 시점은 전자 장치(2000)의 카메라가 객체(800)를 수직 아래 방향으로 기울여서 바라본 것일 수 있다. 이 경우, 객체(800)의 이미지에 포함되는 관심 영역(832)에는, 객체(800)의 3차원 형상으로 인한 왜곡 외에도, 전자 장치(2000)의 카메라의 시점으로 인한 왜곡 또한 존재할 수 있다. In one embodiment, the third viewpoint may be when the camera of the
예를 들어, 변환 이미지(834)는 관심 영역(832)을 평평하게 원근 변환하여 생성된 이미지이다. 변환 이미지(834)를 참조하면, 관심 영역(832)을 평평하게 변환하더라도 객체(800)의 3차원 형상으로 인한 왜곡 및/또는 카메라의 시점으로 인한 왜곡(834-1, 834-2) 등이 잔존할 수 있다. (도 8c의 왜곡(834-1, 834-2)은, 기준 직선 대비 글자가 곡선으로 휘어진 왜곡을 예시적으로 나타낸다.)For example, the transformed
전자 장치(2000)는 객체(800)의 3차원 정보를 이용함으로써, 정밀한 왜곡 없는 이미지(836)를 획득할 수 있다. 이에 대하여는 도 8b에서 이미 기술하였으므로, 동일한 설명은 생략한다.The
일 실시예에서, 3차원 정보에 포함되는 3차원 파라미터는, 3차원 공간 상에서의 객체(800)의 회전 좌표, 3차원 공간상에서의 객체(800)의 이동 좌표 등이 포함될 수 있다. 이에 따라, 전자 장치(2000)는 왜곡 없는 이미지(836)를 생성할 때, 관심 영역(832)을 이동 및 회전시키고, 원근 변환을 수행할 수 있다.In one embodiment, 3D parameters included in 3D information may include rotation coordinates of the
일 실시예에서, 3차원 정보에 포함되는 3차원 파라미터는, 전자 장치(2000)가 객체 이미지(830)를 촬영하였을 때 카메라의 초점 거리를 포함할 수 있다. 이에 따라, 전자 장치(2000)는 왜곡 없는 이미지(836)를 생성할 때, 초점 거리에 기초하여 관심 영역(832)을 포함하는 이미지를 전처리하고, 원근 변환을 수행할 수 있다.In one embodiment, 3D parameters included in 3D information may include the focal length of the camera when the
즉, 전자 장치(2000)는 왜곡 없는 이미지(836)를 생성할 때, 3차원 정보를 이용함으로써, 객체(800)의 3차원 형상으로 인한 왜곡 및/또는 카메라의 시점으로 인한 왜곡 등을 제거한다. 이에 따라, 전자 장치(2000)는 이미지 내 관심 영역(832)의 왜곡의 정도에 관계 없이 강건한 왜곡 제거를 수행할 수 있다.That is, when the
도 9a는 본 개시의 일 실시예에 따른 전자 장치가 왜곡 없는 이미지로부터 정보를 추출한 제1 예시를 설명하기 위한 도면이다.FIG. 9A is a diagram illustrating a first example in which an electronic device extracts information from an image without distortion, according to an embodiment of the present disclosure.
도 9a를 참조하면, 원본 이미지(910), 잘라낸 이미지(920), 및 왜곡 없는 이미지(930)가 도시되어 있다.Referring to Figure 9A, an original image 910, a cropped image 920, and an undistorted image 930 are shown.
일 실시예에서, 전자 장치(2000)는 정보 검출 모델을 이용하여 이미지 내 존재하는 정보를 추출할 수 있다. 전자 장치(2000)는 왜곡 없는 이미지(930)를 획득하면, 일반적인 정보 검출 모델을 이용하여 관심 영역 내 정보를 검출할 수 있다. 즉, 전자 장치(2000)는 왜곡된 이미지 내에서 정보를 추출하기 위해 이미지 내의 왜곡을 반영하여 별도로 검출 모델을 훈련시키지 않더라도, 왜곡 없는 이미지(930)를 생성하고, 왜곡 없는 이미지(930)에 일반적인 검출 모델을 적용할 수 있다. 이에 따라, 전자 장치(2000)는 별도로 정보 검출 모델을 훈련/업데이트하기 위한 컴퓨팅 자원을 절약할 수 있다.In one embodiment, the
예를 들어, 전자 장치(2000)는 OCR 모델을 이용하여, 이미지 내 존재하는 텍스트들을 검출할 수 있다. 이하에서, 전자 장치(2000)가 OCR 모델을 이용하여 이미지로부터 텍스트를 추출하는 것을 예시로 설명한다.For example, the
일 실시예에서, 원본 이미지(910)는 전자 장치(2000)가 카메라를 이용하여 획득한 원시 이미지(raw image)이다. 원본 이미지(910)는 객체의 3차원 형상으로 인한 관심 영역의 왜곡이 포함될 수 있으며, 이미지 내에 관심 영역 외에 다른 여백 공간들이 더 포함될 수 있다. 즉, 관심 영역 외 노이즈 픽셀들이 포함될 수 있다. 전자 장치(2000)가 원본 이미지(910)에 대하여 OCR을 적용한다면, 전술한 원본 이미지(910)의 특징들로 인하여, 관심 영역 내 텍스트들 중 적어도 일부가 미인식되거나, 오인식 될 수 있다. 예를 들어, 원본 이미지(910) 내에서, 텍스트의 검출 영역은 사각 박스로 표시되어 있으며, 텍스트가 검출된 영역들 중에서 검출 영역 내 검출 텍스트가 오인식된 것은 빗금친 화살표로 표시(오인식된 경우)되어 있다. 또한, 텍스트가 있으나 검출 영역으로 식별되지 않은 것은 검은 화살표로 표시(미인식된 경우)되어 있다. 보다 구체적인 예시로, 관심 영역 내에서 검출해야하는 텍스트 블록의 수가 14개일 때, 원본 이미지(910)에 대하여 OCR을 적용한 결과(즉, 원본 이미지(910)로부터 검출된 텍스트(911)를 참조하면), 검출된 텍스트 블록은 8개이며, 이 중 적어도 일부는 텍스트 검출 결과가 정확하지 않을 수 있다.In one embodiment, the original image 910 is a raw image acquired by the
보다 명확한 이해를 돕기 위해, 원본 이미지(910)로부터 검출된 텍스트(911)를 참조하여, 본 개시에서 예시적으로 설명하는 미인식된 경우 및 오인식된 경우를 더 설명하고, 잘라낸 이미지(920) 및 왜곡 없는 이미지(930)로부터 정보를 추출한 예시적인 결과를 설명한다.To facilitate clearer understanding, the unrecognized and misrecognized cases illustratively described in this disclosure will be further explained with reference to the text 911 detected from the original image 910, and the cropped image 920 and Example results of extracting information from the distortion-free image 930 will be described.
일 실시예에서, OCR 모델은 이미지 내에서 텍스트를 검출하고, 검출된 텍스트를 인식하며, 인식한 결과를 신뢰도가 소정 임계값(예를 들어, 0.5) 이상인 것에 기초하여 인식 결과를 출력할 수 있다.In one embodiment, the OCR model can detect text in an image, recognize the detected text, and output a recognition result based on the reliability of the recognition result being greater than or equal to a predetermined threshold (e.g., 0.5). .
본 개시의 예시들에서 '미인식된 경우'란 이미지에 대하여 텍스트 검출 및 인식을 수행하였음에도 불구하고, 이미지로부터 텍스트 검출 및 인식 결과가 출력되지 않은 것을 의미할 수 있다. 예를 들어, '미인식된 경우'란, 1)텍스트가 검출되지 않은 경우, 2) 텍스트가 검출되고 텍스트 인식이 수행되었으나, 인식 결과의 신뢰도가 소정 임계값(예를 들어, 0.5) 미만이어서 인식 결과가 출력되지 않은 경우를 포함할 수 있다.In the examples of the present disclosure, 'unrecognized case' may mean that the text detection and recognition results are not output from the image even though text detection and recognition are performed on the image. For example, 'unrecognized case' means 1) when the text is not detected, 2) when the text is detected and text recognition is performed, but the reliability of the recognition result is less than a certain threshold (for example, 0.5). This may include cases where recognition results are not output.
본 개시의 예시들에서, '인식된 경우'란 텍스트가 검출되고 텍스트 인식이 수행되었으며, 인식 결과의 신뢰도가 소정 임계값(예를 들어, 0.5) 이상이어서 인식 결과가 출력된 것을 포함할 수 있다. 여기서, '인식된 경우'는 '잘 인식된 경우'와 '오인식된 경우'로 구별될 수 있다. 본 개시의 예시들에서 '잘 인식된 경우'와 '오인식된 경우'는 상대적인 개념으로써 사용될 수 있다. 예를 들어, '오인식된 경우'란, 인식된 결과의 신뢰도가 낮은 경우(예를 들어, 신뢰도 0.5 이상 0.8 미만)를 의미할 수 있으며, '잘 인식된 경우'란, 인식된 결과의 신뢰도가 '오인식된 경우'보다 상대적으로 높은 경우(예를 들어, 신뢰도 0.8 이상)를 의미할 수 있다. 이에 따라, '오인식된 경우'에 해당하는 텍스트 인식 결과들은, 인식 결과가 출력되었으나 실제 텍스트의 정확한 인식 결과가 아닐 수 있다. 예를 들어, 원본 이미지(910)로부터 검출된 텍스트(911)의 인식 결과들 중에서 두번째 인식 텍스트를 나타내는, '2: "A *^"mfr~ y*D' 는 인식 결과의 신뢰도가 0.598 이므로 상대적으로 낮은 값이고, 인식 결과 또한 부정확한 텍스트이므로, '오인식된 경우'로 지칭될 수 있다. 마찬가지의 예시로, 원본 이미지(910)로부터 검출된 텍스트(911)의 인식 결과들 중에서 첫번째 인식 텍스트를 나타내는 '1: ELEVE'는 인식 결과의 신뢰도가 0.888이므로 상대적으로 높은 값이고, 인식 결과 또한 정확한 텍스트이므로 '잘 인식된 경우'로 지칭될 수 있다.In examples of the present disclosure, 'if recognized' may include that the text was detected, text recognition was performed, and the recognition result was output because the reliability of the recognition result was greater than a predetermined threshold (e.g., 0.5). . Here, ‘recognized cases’ can be divided into ‘well-recognized cases’ and ‘misrecognized cases’. In the examples of the present disclosure, 'well-recognized case' and 'misrecognized case' may be used as relative concepts. For example, 'if it is misrecognized' may mean when the reliability of the recognized result is low (for example, reliability of 0.5 or more but less than 0.8), and 'if it is well recognized' may mean that the reliability of the recognized result is low. This may mean a case that is relatively higher than a 'case of misrecognition' (for example, a reliability of 0.8 or higher). Accordingly, text recognition results corresponding to 'misrecognition cases' may not be accurate recognition results of the actual text, although the recognition results are output. For example, among the recognition results of the text 911 detected from the original image 910, '2: "A *^"mfr~ y*D', which represents the second recognized text, has a reliability of the recognition result of 0.598, so it is a relative It is a low value, and the recognition result is also an inaccurate text, so it can be referred to as a 'case of misrecognition'. As a similar example, among the recognition results of the text 911 detected from the original image 910, '1: ELEVE', which represents the first recognized text, is a relatively high value because the reliability of the recognition result is 0.888, and the recognition result is also accurate. Since it is text, it can be referred to as a ‘well-recognized case’.
한편, OCR 모델에 의해 텍스트를 검출/인식한 결과의 신뢰도가 높더라도, 이미지 자체의 왜곡으로 인해 텍스트 검출/인식의 결과가 정확하지 않을 수 있다. 예를 들어, 원본 이미지(910)로부터 검출된 텍스트(911)의 인식 결과들 중에서 세번째 인식 텍스트를 나타내는 '3: pour cette cuv6e'는 인식 결과의 신뢰도가 0.960이지만, 실제 정확한 텍스트는 'pour cette cuvee'이다. 이는, 원본 이미지(910) 자체에 존재하는 곡면 왜곡으로 인해 발생하는 것으로, 별도로 왜곡에 관련된 특징들을 학습한 것이 아닌 일반적인 OCR 모델을 이용함으로 인한 것일 수 있다. 일 실시예에 따른 전자 장치(2000)는 왜곡 없는 이미지(930)을 생성하고, 왜곡 없는 이미지(930)에 대하여 OCR을 수행하므로, 일반적인 OCR 모델을 이용하더라도 정확한 텍스트가 검출되도록 할 수 있다.Meanwhile, even if the reliability of the results of text detection/recognition using the OCR model is high, the text detection/recognition results may be inaccurate due to distortion of the image itself. For example, among the recognition results of the text 911 detected from the original image 910, '3: pour cette cuv6e', which represents the third recognized text, has a reliability of the recognition result of 0.960, but the actual accurate text is 'pour cette cuvee' 'am. This occurs due to curved distortion existing in the original image 910 itself, and may be due to using a general OCR model rather than learning features related to distortion separately. The
이하에서, 서로 다른 특징을 갖는 이미지들인 잘라낸 이미지(920) 및 왜곡 없는 이미지(930)에 대하여, 일반적인 OCR 모델을 이용하여 텍스트를 검출하는 예시를 더 설명할 것이다. 전술한 미인식/오인식에 관련된 설명은, 후술되는 잘라낸 이미지(920)로부터 검출된 텍스트(921) 왜곡 없는 이미지(930)로부터 검출된 텍스트(931)에도 동일하게 적용될 수 있다. 또한, 도 9b에서 설명되는 원본 이미지(912)로부터 검출된 텍스트(913), 잘라낸 이미지(922)로부터 검출된 텍스트(923) 및 왜곡 없는 이미지(930)로부터 검출된 텍스트(933)에도 동일하게 적용될 수 있다.Below, an example of detecting text using a general OCR model for the cropped image 920 and the undistorted image 930, which are images with different characteristics, will be further described. The description related to non-recognition/misrecognition described above can be equally applied to the text 921 detected from the cropped image 920 and the text 931 detected from the undistorted image 930, which will be described later. In addition, the same applies to the text 913 detected from the original image 912, the text 923 detected from the cropped image 922, and the text 933 detected from the undistorted image 930 described in FIG. 9B. You can.
일 실시예에서, 잘라낸 이미지(920)는 원본 이미지(910)로부터 관심 영역을 검출하고, 관심 영역만을 잘라낸 이미지이다. 잘라낸 이미지(920)는 객체의 3차원 형상으로 인한 관심 영역의 왜곡이 포함될 수 있다. 전자 장치(2000)가 잘라낸 이미지(920)에 대하여 OCR을 적용한다면, 전술한 잘라낸 이미지(920)의 특징으로 인하여, 관심 영역 내 텍스트들 중 적어도 일부가 미인식되거나, 오인식될 수 있다. 구체적인 예시로, 관심 영역 내에서 검출해야하는 텍스트 블록의 수가 14개일 때, 잘라낸 이미지(920)에 대하여 OCR을 적용한 결과(즉, 잘라낸 이미지(920)로부터 검출된 텍스트(921)를 참조하면), 검출된 텍스트 블록은 9개이며, 이 중 적어도 일부는 텍스트 검출 결과가 정확하지 않을 수 있다.In one embodiment, the cropped image 920 is an image in which a region of interest is detected from the original image 910 and only the region of interest is cropped. The cropped image 920 may include distortion of the region of interest due to the three-dimensional shape of the object. If the
일 실시예에서, 왜곡 없는 이미지(930)는 전자 장치(2000)가 전술한 실시예들에 따라, 객체의 3차원 형상을 식별하고, 관심 영역을 식별하며, 객체의 3차원 정보를 나타내는 3차원 파라미터 값들을 획득하고, 3차원 파라미터 값들에 기초하여 원근 변환을 수행한 이미지이다. 왜곡 없는 이미지(930)는 3차원 정보에 기초하여 정밀하게 2차원으로 원근 변환된 이미지이므로, 전자 장치(2000)는 보다 정확한 텍스트 검출 결과를 획득할 수 있다. 전자 장치(2000)가 왜곡 없는 이미지(930)에 대하여 OCR을 적용한다면, 관심 영역 내 텍스트들이 정확하게 검출될 수 있다. 구체적인 예시로, 관심 영역 내에서 검출해야 하는 텍스트 블록의 수가 14개일 때, 왜곡 없는 이미지(930)에 대하여 OCR을 적용한 결과(즉, 왜곡 없는 이미지(930)로부터 검출된 텍스트(931)를 참조하면), 검출된 텍스트 블록은 14개이며, 정확한 텍스트 검출 결과가 획득될 수 있다.In one embodiment, the distortion-free image 930 is a three-dimensional image that the
한편, 전술한 검출해야 하는 텍스트 블록의 수, 미인식된 텍스트 블록들, 오인식된 텍스트 블록들은 설명의 편의를 위한 예시일 뿐, 텍스트 인식 결과를 단정하기 위한 것은 아니다. 즉, 원본 이미지(910) 및 잘라낸 이미지(920)에 대하여 텍스트를 검출한 결과보다, 왜곡 없는 이미지(930)에 대하여 텍스트를 검출한 결과가 상대적으로 정확도가 높다는 것을 설명하고자 하는 것임이 이해되어야 할 것이다.Meanwhile, the above-described number of text blocks to be detected, unrecognized text blocks, and misrecognized text blocks are only examples for convenience of explanation and are not intended to determine the text recognition result. In other words, it should be understood that this is intended to explain that the results of text detection for the undistorted image 930 are relatively more accurate than the results of text detection for the original image 910 and the cropped image 920. will be.
도 9b는 본 개시의 일 실시예에 따른 전자 장치가 왜곡 없는 이미지로부터 정보를 추출한 제2 예시를 설명하기 위한 도면이다.FIG. 9B is a diagram for explaining a second example in which an electronic device extracts information from an image without distortion, according to an embodiment of the present disclosure.
도 9b를 참조하면, 원본 이미지(912), 잘라낸 이미지(922), 및 왜곡 없는 이미지(932)가 도시되어 있다.Referring to Figure 9B, the original image 912, the cropped image 922, and the undistorted image 932 are shown.
일 실시예에서, 원본 이미지(912) 및 잘라낸 이미지(922)는, 객체의 3차원 형상으로 인한 왜곡 외에도, 전자 장치(2000)가 객체를 촬영한 시점(거리, 각도 등)으로 인한 왜곡이 존재할 수 있다.In one embodiment, the original image 912 and the cropped image 922 may have distortion due to the point in time (distance, angle, etc.) at which the
전자 장치(2000)는 객체의 3차원 형상을 식별하고, 관심 영역을 식별하며, 객체의 3차원 정보를 나타내는 3차원 파라미터 값들을 획득하고, 3차원 파라미터 값들에 기초하여 원근 변환을 수행함으로써 왜곡 없는 이미지(932)를 획득할 수 있다. 여기서, 3차원 파라미터에는 3차원 공간 상에서의 객체의 회전 좌표, 3차원 공간상에서의 객체의 이동 좌표, 카메라의 초점거리 등이 포함될 수 있으므로, 전자 장치(2000)는 관심 영역을 이동 및/또는 회전시키고, 원근 변환을 수행할 수 있다. 구체적으로, 전자 장치(2000)는 원본 이미지(912)에서, 3차원 공간을 촬영한 이미지의 중심부에 객체가 있지 않은 경우, 3차원 파라미터에 포함되는 공간상에서의 객체의 이동 정보에 기초하여 객체를 중심으로 이동시킬 수 있다. 또한, 전자 장치(2000)는 원본 이미지(912)에서 객체가 3차원 공간을 촬영한 이미지 내에서 회전되어 있는 경우, 3차원 파라미터에 포함되는 공간상에서의 객체의 회전 정보에 기초하여, 객체가 수평/수직 정렬되도록 회전시킬 수 있다. 또한, 전자 장치(2000)는 원본 이미지(912)를 촬영한 카메라의 초점 거리를 이용하여, 객체의 이동/회전 정도를 보완할 수 있다. 일 실시예에서, 객체의 이동/회전 등은, 전술한 실시예들에서 객체의 3차원 정보를 나타내는 3차원 파라미터 값들을 획득하는 동작에 포함될 수 있다. 즉, 전자 장치(2000)가 객체의 3차원 정보를 나타내는 3차원 파라미터 값들을 획득하기 위한 미세 조정 작업을 수행함에 따라, 이동 정보, 회전 정보 및 초점거리 정보 등이 활용될 수 있다.The
이에 따라, 도 9b에 도시된 것과 같이, 원본 이미지(912) 내에 객체가 비스듬하게 촬영되어 있을 지라도, 왜곡 없는 이미지(932)는 관심 영역의 수평/수직 정렬이 된 상태로 획득될 수 있다.Accordingly, as shown in FIG. 9B, even if an object is photographed obliquely in the original image 912, a distortion-free image 932 can be obtained with the region of interest aligned horizontally/vertically.
일 실시예에서, 원본 이미지(912) 및 잘라낸 이미지(922)에 대하여 텍스트를 검출한 결과보다, 왜곡 없는 이미지(932)에 대하여 텍스트를 검출한 결과가 상대적으로 정확도가 높을 수 있다. 즉, 원본 이미지(912)로부터 검출된 텍스트(913), 잘라낸 이미지(922)로부터 검출된 텍스트(923) 및 왜곡 없는 이미지(930)로부터 검출된 텍스트(933)를 참조하면, 왜곡 없는 이미지(930)로부터 검출된 텍스트(933)가 가장 정확하게 식별됨을 알 수 있다.In one embodiment, the accuracy of the text detection result for the undistorted image 932 may be relatively higher than the text detection result for the original image 912 and the cropped image 922. That is, referring to the text 913 detected from the original image 912, the text 923 detected from the cropped image 922, and the text 933 detected from the undistorted image 930, the undistorted image 930 ) It can be seen that the text 933 detected from ) is most accurately identified.
한편, 미인식된 텍스트 블록들, 오인식된 텍스트 블록들은 설명의 편의를 위한 예시일 뿐, 텍스트 인식 결과를 단정하기 위한 것은 아니다. 즉, 원본 이미지(910) 및 잘라낸 이미지(920)에 대하여 텍스트를 검출한 결과보다, 왜곡 없는 이미지(930)에 대하여 텍스트를 검출한 결과가 상대적으로 정확도가 높다는 것을 설명하고자 하는 것임이 이해되어야 할 것이다.Meanwhile, unrecognized text blocks and misrecognized text blocks are only examples for convenience of explanation and are not intended to determine the text recognition result. In other words, it should be understood that this is intended to explain that the results of text detection for the undistorted image 930 are relatively more accurate than the results of text detection for the original image 910 and the cropped image 920. will be.
도 10a는 본 개시의 일 실시예에 따른 전자 장치가 객체 3차원 형상 식별 모델을 훈련시키는 동작을 설명하기 위한 도면이다.FIG. 10A is a diagram illustrating an operation of training an
일 실시예에서, 전자 장치(2000)는 객체 3차원 형상 식별 모델(1000)을 훈련시킬 수 있다. 전자 장치(2000)는 3차원 객체를 포함하는 다양한 이미지들로 구성되는 트레이닝 데이터셋을 이용하여, 객체 3차원 형상 식별 모델(1000)을 훈련시킬 수 있다. 트레이닝 데이터셋에는 객체의 3차원 형상 전체를 포함하는 트레이닝 이미지(들)(1010)가 포함될 수 있다.In one embodiment, the
일 실시예에서, 전자 장치(2000)는 객체 3차원 형상 식별 모델(1000)의 추론 성능을 향상시키기 위하여 객체의 3차원 형상 일부를 포함하는 트레이닝 이미지들(1012)을 이용할 수 있다. 객체의 3차원 형상 일부를 포함하는 트레이닝 이미지들(1012)은, 다양한 각도, 거리에서 객체의 전체 또는 일부를 촬영함으로써 획득된 것일 수 있다. 예를 들어, 제1 방향(1012-1)에서 객체의 전체 또는 일부를 촬영한 이미지가 획득될 수 있으며, 제2 방향(1012-2)에서 객체의 전체 또는 일부를 촬영한 이미지가 획득될 수 있다. 전술한 예시와 같이, 객체를 촬영 가능한 모든 방향에 대하여, 객체의 전체 도는 일부를 촬영한 이미지가 트레이닝 이미지들(1012)에 포함되어, 트레이닝 데이터로 사용될 수 있다.In one embodiment, the
일부 실시예에서, 객체의 3차원 형상 일부를 포함하는 트레이닝 이미지들(1012)은 트레이닝 데이터셋에 이미 포함되어 있을 수 있다. 일부 실시예에서, 전자 장치(2000)는 객체의 3차원 형상 일부를 포함하는 트레이닝 이미지들(1012)을 외부 장치(예를 들어, 서버 등)로부터 수신할 수 있다. 일부 실시예에서, 전자 장치(2000)는 카메라를 이용하여 객체의 3차원 형상 일부를 포함하는 트레이닝 이미지들(1012)을 획득할 수 있다. 예를 들어, 전자 장치(2000)는 사용자에게 객체의 일부를 촬영하도록 가이드하는 인터페이스를 제공할 수 있다.In some embodiments,
일 실시예에 따른 전자 장치(2000)는, 객체의 3차원 형상 전체를 포함하는 트레이닝 이미지(들)(1010) 및 객체의 3차원 형상 일부를 포함하는 트레이닝 이미지들(1012)을 이용하여 훈련된 객체 3차원 형상 식별 모델을 이용하여, 객체의 3차원 형상을 추론할 수 있다. 예를 들어, 객체의 일부만이 촬영된 입력 이미지(1020)만이 입력되더라도, 전자 장치(2000)는 입력 이미지(1020) 내 객체의 3차원 형상 타입이 실린더(1030)임을 추론할 수 있다.The
도 10b는 본 개시의 일 실시예에 따른 전자 장치가 객체 3차원 형상 식별 모델을 훈련시키는 다른 동작을 설명하기 위한 도면이다.FIG. 10B is a diagram illustrating another operation in which an electronic device trains an
도 10b를 참조하면, 전자 장치(2000)는 객체 3차원 형상 모델(1000)을 훈련시키기 위한 트레이닝 데이터들을 생성할 수 있다.Referring to FIG. 10B, the
일 실시예에서, 트레이닝 데이터셋에는 객체의 3차원 형상 전체를 포함하는 트레이닝 이미지(들)(1010)가 포함될 수 있다. 전자 장치(2000)는 트레이닝 데이터셋에 포함되는 이미지들에 대하여 소정의 데이터 증강 작업을 수행함으로써, 트레이닝 데이터들을 생성할 수 있다. 예를 들어, 전자 장치(2000)는 객체의 3차원 형상 전체를 포함하는 트레이닝 이미지(들)(1010)를 크롭하여, 객체의 3차원 형상 일부를 포함하는 트레이닝 이미지들(1014)을 생성할 수 있다. 구체적인 예를 들면, 전자 장치(2000)는 트레이닝 이미지(1010)을 6분할함으로써, 1개의 트레이닝 데이터가 6개의 트레이닝 데이터가 되도록 데이터를 증강할 수 있다. 예를 들어, 트레이닝 이미지(1010)의 제1 영역(1014-1)이 분할 영역으로 결정되면, 잘라낸 제1 이미지(1014-2)가 훈련 데이터로 사용될 수 있다. 한편, 도 10b에는 크롭만이 예시로 도시되어 있으나, 로테이션, 플립 등 다양한 다른 데이터 증강 방식이 적용될 수도 있다.In one embodiment, the training dataset may include training image(s) 1010 that include the entire three-dimensional shape of the object. The
일 실시예에 따른 전자 장치(2000)는, 객체의 3차원 형상 전체를 포함하는 트레이닝 이미지(들)(1010) 및 객체의 3차원 형상 일부를 포함하는 트레이닝 이미지들(1014)을 이용하여 훈련된 객체 3차원 형상 식별 모델을 이용하여, 객체의 3차원 형상을 추론할 수 있다. 예를 들어, 객체의 일부만이 촬영된 입력 이미지(1020)만이 입력되더라도, 전자 장치(2000)는 입력 이미지(1020) 내 객체의 3차원 형상 타입이 실린더(1030)임을 추론할 수 있다.The
한편, 전자 장치(2000)는 전술한 트레이닝 데이터들에 대하여도, 소정의 데이터 증강 작업을 수행하고, 증강된 데이터를 더 이용하여 객체 3차원 형상 식별 모델(1000)을 훈련시킴으로써, 객체 3차원 형상 식별 모델(1000)의 추론 성능을 향상시킬 수 있다. 예를 들어, 전자 장치(2000)는 객체의 3차원 형상 전체를 포함하는 트레이닝 이미지(들)(1010), 3차원 형상 일부를 포함하는 트레이닝 이미지들(1012, 1014)에 대하여, 크롭, 로테이션, 플립 등의 다양한 데이터 증강 방식을 적용하고, 증강된 데이터를 훈련 데이터셋에 포함시킬 수 있다.Meanwhile, the
도 10c는 본 개시의 일 실시예에 따른 전자 장치가 객체의 3차원 형상을 식별하는 실시예를 설명하기 위한 도면이다.FIG. 10C is a diagram illustrating an example in which an electronic device identifies the three-dimensional shape of an object according to an embodiment of the present disclosure.
일 실시예에서, 전자 장치(2000)는 객체의 일부만이 촬영된 입력 이미지(1020)(이하에서, 입력 이미지)를 객체 3차원 형상 식별 모델(1000)에 입력하고, 객체 3차원 형상 추론 결과(1026)를 획득할 수 있다. 이 경우, 입력 이미지(1020)가 객체의 전체 형상을 포함하지 않기 때문에, 객체 3차원 형상 추론 결과(1026)의 보완이 필요할 수 있다. 예를 들어, 객체 3차원 형상 추론 결과(1026)는 실린더 타입일 확률 50%, 잘린 원뿔 타입일 확률 50% 일 수 있으며, 객체 3차원 형상 식별 모델(1000)이 객체 3차원 형상을 확정하기 위한 임계 값은 확률 값: 80% 이상일 수 있다. 이 경우, 실린더 타입일 확률(50%)과 원뿔 타입일 확률(50%) 모두 객체 3차원 형상을 확정하기 위한 임계 값(80%)을 초과하지 않으므로, 전자 장치(2000)는 객체 3차원 형상 추론 결과(1026)를 보완하기 위한 동작을 수행할 수 있다.In one embodiment, the
일 실시예에서, 전자 장치(2000)는 객체 3차원 형상 추론 결과(1026) 값이 기 설정된 임계 값 미만인 것에 기초하여, 객체 3차원 형상 추론 결과(1026)를 보완하기 위한 정보 검출 동작을 수행할 수 있다. 정보 검출 동작은 예를 들어, 로고, 아이콘, 텍스트 등을 검출하는 것일 수 있으나, 이에 한정되는 것은 아니다. 보다 구체적 예를 들면, 전자 장치(2000)는 입력 이미지(1020)에 대하여 OCR을 수행하여, 입력 이미지(1020) 내에서 텍스트를 검출할 수 있다. 이 경우, 검출된 텍스트는 상품명인 'ABCDE'일 수 있다. 전자 장치(2000)는 검출된 텍스트에 기초하여, 데이터베이스 내에서 또는 외부 서버를 통해서 상품을 검색할 수 있다. 예를 들어, 전자 장치(2000)는 'ABCDE'의 상품을 데이터베이스에서 검색할 수 있다. 전자 장치(2000)는 상품 검색 결과에 기초하여, 3차원 형상 타입의 가중치를 결정할 수 있다. 예를 들어, 'ABCDE' 상품의 검색 결과, 시중에서 유통되는 'ABCDE' 상품의 95% 이상이 실린더 타입임을 식별할 수 있다. 이 경우, 전자 장치(2000)는 실린더 타입에 가중치를 적용할 것으로 결정할 수 있다. 전자 장치(2000)는 객체 3차원 형상 추론 결과(1026)에 결정된 가중치를 적용할 수 있다. 가중치 적용 결과, 최종적으로 결정된 객체의 3차원 형상 타입이 실린더(1030)인 것으로 결정될 수 있다.In one embodiment, the
일 실시예에서, 전자 장치(2000)는 객체 3차원 형상 식별 모델(1000)에 입력 이미지(1020)를 입력하는 것과 병렬적으로, 정보 검출 동작을 수행할 수 있다 예를 들어, 전자 장치(2000)는 입력 이미지(1020)에 대하여 OCR을 수행할 수 있다. 전자 장치(2000)는 병렬적으로 수행한 OCR 결과에 기초하여, 객체 3차원 형상 추론 결과(1026)에 적용될 가중치를 결정할 수 있다.In one embodiment, the
도 10d는 본 개시의 일 실시예에 따른 전자 장치가 객체의 3차원 형상을 식별하는 실시예를 설명하기 위한 도면이다.FIG. 10D is a diagram illustrating an example in which an electronic device identifies the three-dimensional shape of an object according to an embodiment of the present disclosure.
일 실시예에서, 전자 장치(2000)는 입력 이미지(1024)를 객체 3차원 형상 식별 모델(1000)에 입력하고, 객체 3차원 형상 추론 결과(1026)를 획득할 수 있다.In one embodiment, the
전자 장치(2000)는 입력 이미지(1024)를 객체 3차원 형상 식별 모델(1000)에 적용하기 이전에, 객체 검색 도메인 선택을 위한 사용자 인터페이스를 표시할 수 있다. 예를 들어, 전자 장치(2000)는 유제품, 와인, 통조림 등의 선택 가능한 도메인을 표시하고, 도메인을 선택하는 사용자 입력을 수신할 수 있다.Before applying the
전자 장치(2000)는 검색 도메인을 선택하는 사용자 입력에 기초하여, 3차원 형상 타입의 가중치를 결정할 수 있다. 예를 들어, 사용자가 와인 라벨 검색을 선택한 경우, 시중에서 유통되는 와인 상품의 95% 이상이 실린더 타입임을 식별할 수 있다. 이 경우, 전자 장치(2000)는 실린더 타입에 가중치를 적용할 것으로 결정할 수 있다. 전자 장치(2000)는 객체 3차원 형상 추론 결과(1026)에 결정된 가중치를 적용할 수 있다. 가중치 적용 결과, 최종적으로 결정된 객체의 3차원 형상 타입이 실린더(1030)인 것으로 결정될 수 있다.The
도 11은 본 개시의 일 실시예에 따른 전자 장치가 관심 영역 식별 모델을 훈련시키는 동작을 설명하기 위한 도면이다.FIG. 11 is a diagram illustrating an operation of an electronic device training a region-of-interest identification model according to an embodiment of the present disclosure.
일 실시예에서, 전자 장치(2000)는 관심 영역 식별 모델(1120)을 훈련시킬 수 있다. 전자 장치(2000)는 관심 영역을 포함하는 다양한 이미지들로 구성되는 트레이닝 데이터셋(1110)에 기초하여 관심 영역 식별 모델(1120)을 훈련시킬 수 있다. 트레이닝 데이터셋(1110)의 관심 영역 이미지들에는, 관심 영역을 나타내는 키포인트들이 레이블링 되어 있을 수 있다. 전자 장치(2000)가 관심 영역 식별 모델(1120)을 이용하여 식별하는 관심 영역은, 검출된 관심 영역이 표시된 이미지, 관심 영역을 나타내는 키포인트들 및/또는 이미지 내에서 키포인트들의 좌표 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.In one embodiment, the
일 실시예에서, 전자 장치(2000)는 훈련된 관심 영역 식별 모델(1120)을 전자 장치(2000)에 저장할 수 있다. 전자 장치(2000)는 전술한 실시예들에 따라 전자 장치(2000)가 이미지 내 왜곡을 제거하는 동작들을 수행할 때, 훈련된 관심 영역 식별 모델(1120)을 실행시킬 수 있다. 일 실시예에 의하면, 전자 장치(2000)는 훈련된 관심 영역 식별 모델(1120)을 외부 서버에 업로드할 수도 있다.In one embodiment, the
도 12는 본 개시의 일 실시예에 따른 전자 장치가 왜곡 제거 모델을 훈련시키는 동작을 설명하기 위한 도면이다.FIG. 12 is a diagram illustrating an operation of an electronic device training a distortion removal model according to an embodiment of the present disclosure.
일 실시예에서, 전자 장치(2000)는 왜곡 제거 모델(1220)을 훈련시킬 수 있다. 왜곡 제거 모델(1220)을 훈련시키기 위한 훈련 데이터셋(1210)은, 관심 영역 데이터 및 3차원 파라미터 데이터가 포함될 수 있다. 관심 영역 데이터는 예를 들어, 관심 영역을 포함하는 이미지, 관심 영역을 나타내는 키포인트들이 포함될 수 있으나, 이에 한정되는 것은 아니다. 3차원 파라미터 데이터는 예를 들어, 객체의 가로, 세로, 높이 및 반지름 정보, 객체의 3차원 공간 상에서의 3차원 기하학적 변환을 위한 이동(translation) 및 회전(rotation) 정보, 객체를 촬영한 전자 장치(2000)의 카메라의 초점 거리 정보 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.In one embodiment, the
일 실시예에서, 왜곡 제거 모델(1210)은 관심 영역 데이터 및 3차원 파라미터 데이터를 입력 받아, 왜곡 없는 이미지를 출력할 수 있다. 따라서, 왜곡 제거 모델(1220)은, 특정 3차원 형상을 갖는 객체에 대하여, 해당 객체의 관심 영역이 어느 부분이고, 이에 대응하는 객체의 3차원 정보는 어떤 값들인지를 학습하기 위한 신경망이 이용될 수 있다.In one embodiment, the
일 실시예에서, 전자 장치(2000)는 훈련된 왜곡 제거 모델(1220)을 전자 장치(2000)에 저장할 수 있다. 전자 장치(2000)는 전술한 실시예들에 따라 전자 장치(2000)가 이미지 내 왜곡을 제거하는 동작들을 수행할 때, 훈련된 왜곡 제거 모델(1220)을 실행시킬 수 있다. 일 실시예에 의하면, 전자 장치(2000)는 훈련된 왜곡 제거 모델(1220)을 외부 서버에 업로드할 수도 있다.In one embodiment, the
도 13은 본 개시의 일 실시예에 따른 전자 장치에 멀티 카메라를 설명하기 위한 도면이다.FIG. 13 is a diagram for explaining a multi-camera in an electronic device according to an embodiment of the present disclosure.
일 실시예에서, 전자 장치(2000)는 멀티 카메라를 포함할 수 있다. 예를 들어, 전자 장치(2000)는 제1 카메라(1310), 제2 카메라(1320) 및 제3 카메라(1330)를 포함할 수 있다. 다만, 도 13에서 설명의 편의를 위해 카메라를 3개 도시하였으나, 이에 한정되는 것은 아니며 멀티 카메라는 2개 이상의 카메라를 의미한다.In one embodiment, the
멀티 카메라에 포함되는 각각의 카메라의 사양은 상이할 수 있다. 예를 들어, 제1 카메라(1310)는 망원 카메라, 제2 카메라(1320)는 광각 카메라, 제3 카메라(1330)는 초광각 카메라로 구성될 수 있다. 다만, 카메라의 종류는 이에 한정되는 것은 아니며, 표준 카메라 등이 포함될 수 있다.The specifications of each camera included in the multi-camera may be different. For example, the
각각의 카메라는 서로 다른 특징의 이미지를 획득할 수 있다. 예를 들어, 제1 카메라(1310)에 의해 획득된 제1 이미지(1312)는, 객체를 확대하여 촬영하여 객체의 일부가 포함되는 이미지일 수 있다. 제2 카메라(1320)에 의해 획득된 제2 이미지(1322)는, 제1 카메라(1310)보다 넓은 화각으로 객체를 촬영하여 객체의 전체가 포함되는 이미지일 수 있다. 제3 카메라(1330)에 의해 획득된 제3 이미지(1332)는, 제1 카메라(1310), 제2 카메라(1320)보다 더 넓은 화각으로 객체를 촬영하여 객체의 전체 및 장면의 넓은 영역이 포함되는 이미지일 수 있다.Each camera can acquire images with different characteristics. For example, the
일 실시예에서, 전자 장치(2000)에 포함되는 멀티 카메라의 각각으로부터 획득되는 이미지의 특징이 상이하므로, 어떠한 카메라를 이용하여 획득된 이미지가 이용되는지에 따라, 전술한 동작들에 따른 전자 장치(2000)가 이미지 내 객체로부터 정보를 추출하는 결과 또한 상이할 수 있다. 이미지에 포함되는 객체를 인식하고 객체의 관심 영역으로부터 정보를 추출하기 위해, 전자 장치(2000)는 멀티 카메라 중 어느 카메라를 활성화할지 여부를 결정할 수 있다.In one embodiment, since the characteristics of images acquired from each of the multi-cameras included in the
일 실시예에서, 전자 장치(2000)는 제1 카메라(1310)를 활성화하고 객체를 촬영하여 제1 이미지(1312)를 획득할 수 있다. 전자 장치(2000)는 제1 이미지(1312)를 이용하여 이미지 내의 객체의 3차원 형상 타입 및 객체의 관심 영역을 식별할 수 있다. 일부 실시예에서, 전술한 예시에 따르면 제1 이미지(1312)는 망원 카메라인 제1 카메라(1310)를 이용하여 획득된 이미지일 수 있다. 이 경우, 제1 이미지(1312)에는 객체의 일부만이 포함되어, 제1 이미지(1312) 내의 객체의 관심 영역은 충분한 신뢰도(예를 들어, 소정의 값 이상)로 식별되나, 제1 이미지(1312) 내의 객체의 3차원 형상 타입은 불충분한 신뢰도로 식별될 수 있다. 전자 장치(2000)는 객체의 3차원 형상 타입을 식별하기 위해, 제2 카메라(1320) 및/또는 제3 카메라(1330)를 활성화함으로써, 객체의 전체를 포함하는 제2 이미지(1322) 및/또는 제3 이미지(1332)를 획득하고, 제2 이미지(1322) 및/또는 제3 이미지(1332)를 이용하여 객체의 3차원 형상 타입을 식별할 수 있다. 즉, 전자 장치(2000)는 객체의 관심 영역과 3차원 형상 타입을 식별하기에 적합한 이미지를 선택적으로 이용할 수 있다.In one embodiment, the
일 실시예에서, 전자 장치(2000)는 제1 카메라(1310) 및 제2 카메라(1322)를 활성화하고 객체를 촬영하여 제1 이미지(1312) 및 제2 이미지(1322)를 획득할 수 있다. 전자 장치(2000)는 객체의 일부를 포함하는 제1 이미지(1312)를 이용하여 객체의 관심 영역을 식별하고, 객체의 전체를 포함하는 제2 이미지(1322) 및/또는 제3 이미지(1332)를 이용하여 객체의 3차원 형상 타입을 식별할 수 있다.In one embodiment, the
일 실시예에 따른 전자 장치(2000)가 카메라를 활성화하는 동작은, 전술한 예시에 한정되지 않는다. 전자 장치(2000)는 멀티 카메라에 포함되는 카메라의 가능한 모든 조합을 이용할 수 있다. 예를 들어, 전자 장치(2000)는 제2 카메라(1320) 및 제3 카메라(1330)만을 활성화하거나, 제1 카메라(1310), 제2 카메라(1320) 및 제3 카메라(1330) 모두를 활성화할 수 있다.The operation of activating the camera by the
한편, 일 실시예에 따른 전자 장치(2000)가 객체의 관심 영역을 식별하는 동작, 객체의 3차원 형상 타입을 식별하는 동작, 및 관심 영역의 왜곡을 제거하는 동작에는, 전술한 인공지능 모델들(예를 들어, 객체 3차원 형상 식별 모델, 관심 영역 식별 모델, 왜곡 제거 모델 등)이 이용될 수 있다. 이에 대한 동일한 설명은 생략한다. Meanwhile, the
전자 장치(2000)가 멀티 카메라를 이용하여 이미지를 처리하고 왜곡을 제거하는 구체적인 동작들은, 후술하는 도면들 및 그에 대한 설명에서 더 기술하기로 한다.Specific operations in which the
도 14a는 본 개시의 일 실시예에 따른 전자 장치가 멀티 카메라를 이용하는 동작을 설명하기 위한 흐름도이다.FIG. 14A is a flowchart illustrating an operation in which an electronic device uses a multi-camera according to an embodiment of the present disclosure.
도 2의 단계 S210에서와 같이, 일 실시예에 따른 전자 장치(2000)는 제1 카메라를 이용하여 적어도 하나의 라벨을 포함하는 객체의 제1 이미지를 획득할 수 있다. 전자 장치(2000)가 객체의 제1 이미지를 획득하는 동작에 대해서는 자세하게 전술하였으므로, 중복되는 설명은 생략하기로 한다. 단계 S210 이후에 단계 S230이 수행될 수 있으며, 그 이후에 단계 S1410이 수행될 수 있다.As in step S210 of FIG. 2 , the
단계 S1410에서, 일 실시예에 따른 전자 장치(2000)는 제1 카메라를 이용하여 획득된 객체의 제1 이미지로부터 객체의 3차원 형상 타입이 식별되었는지 여부를 체크한다. 예를 들어, 제1 카메라를 이용하여 획득한 제1 이미지가 객체의 일부만을 포함하고 있는 경우, 전자 장치(2000)가 제1 이미지를 제2 AI 모델에 입력하더라도 제2 AI 모델은 객체의 3차원 형상 타입을 정확히 추론할 수 없다. 이때, 제2 AI 모델은 객체의 3차원 형상 타입을 추론할 수 없다는 결과를 출력하거나, 3차원 형상 타입 추론에 대한 낮은 신뢰도 값을 출력할 수 있다. 전자 장치(2000)는 제2 AI 모델로부터 임계값 이하의 신뢰도 값을 갖는 결과가 출력되는 경우, 제1 이미지로부터 객체의 3차원 형상 타입이 식별되지 않았다고 판단할 수 있다. In step S1410, the
일 실시예에서, 전자 장치(2000)는 제1 이미지로부터 객체의 3차원 형상 타입이 식별되지 않는 경우, 단계 S1420을 수행할 수 있다. 한편, 단계 S1420는 전자 장치(2000)는 도 10c 및 도 10d에서 전술한, 3차원 형상 타입에 가중치를 결정하고, 가중치를 적용하여 3차원 형상을 식별하는 동작과 선택적 또는 중복적으로 적용될 수 있다. 전자 장치(2000)는 객체의 3차원 형상 타입이 식별되는 경우, 왜곡 제거 동작을 계속하기 위해 단계 S1450의 동작을 수행할 수 있다.In one embodiment, the
단계 S1420에서, 일 실시예에 따른 전자 장치(2000)는 제2 카메라를 활성화한다. 제2 카메라는 제1 카메라보다 넓은 화각을 갖는 카메라일 수 있다. 제2 카메라는 예를 들어, 광각 카메라, 초광각 카메라 등일 수 있으나, 이에 한정되는 것은 아니다.In step S1420, the
단계 S1430에서, 일 실시예에 따른 전자 장치(2000)는 제2 카메라를 이용하여 제2 이미지를 획득한다. 제2 카메라는 제1 카메라보다 화각이 넓으므로, 제1 카메라를 이용하여 획득한 제1 이미지에는 객체의 일부 3차원 형상만이 포함되더라도, 제2 카메라를 이용하여 획득한 제2 이미지는 객체의 전체 3차원 형상이 포함될 수 있다.In step S1430, the
단계 S1440에서, 일 실시예에 따른 전자 장치(2000)는 제2 이미지를 제2 AI 모델에 적용함으로써 객체의 3차원 형상 타입에 관한 데이터를 획득한다. 제2 이미지에는 객체의 전체 3차원 형상이 포함될 수 있다. 단계 S1440의 동작은 도 2의 단계 S230의 동작과 동일하므로, 구체적인 설명은 생략한다.In step S1440, the
단계 S1450에서, 일 실시예에 따른 전자 장치(2000)는 제1 이미지 및 제2 이미지 중 적어도 하나를 제1 AI 모델에 적용함으로써 객체의 3차원 형상을 식별한다.In step S1450, the
일 실시예에서, 제1 이미지에는 객체의 일부 3차원 형상만이 포함되더라도, 관심 영역은 온전히 포함될 수 있다. 전자 장치(2000)는 제1 이미지를 제1 AI 모델(관심 영역 식별 모델)에 적용함으로써, 제1 이미지 내에서 적어도 하나의 라벨에 대응하는 영역을 관심 영역으로 식별할 수 있다.In one embodiment, even if the first image includes only a partial three-dimensional shape of the object, the region of interest may be completely included. The
일 실시예에서, 제2 이미지에는 객체의 전체 3차원 형상이 포함되므로, 관심 영역 또한 전부 포함될 수 있다. 전자 장치(2000)는 제2 이미지를 제1 AI 모델(관심 영역 식별 모델)에 적용함으로써, 제2 이미지 내에서 적어도 하나의 라벨에 대응하는 영역을 관심 영역으로 식별할 수 있다.In one embodiment, the second image includes the entire three-dimensional shape of the object and thus may also include the entire region of interest. The
일 실시예에서, 전자 장치(2000)는 제1 이미지 및 제2 이미지를 각각 제1 AI 모델(관심 영역 식별 모델)에 적용하고, 각각의 이미지로부터 획득된 관심 영역 식별 결과를 선택하거나, 조합함으로써 관심 영역을 식별할 수 있다. 전자 장치(2000)는 단계 S1450을 수행한 후, 도 2의 단계 S240을 수행할 수 있다. 이 경우, 도 2의 단계 S240 내지 단계 S270에서 제1 카메라와 관련된 동작/데이터 등은, 제2 카메라에도 동일하게 적용될 수 있다.In one embodiment, the
도 14b는 도 14a를 보충적으로 더 설명하기 위한 도면이다.FIG. 14B is a diagram for further supplementary explanation of FIG. 14A.
일 실시예에서, 전자 장치(2000)가 제1 카메라를 이용하여 획득한 제1 이미지(1410)는, 객체의 일부만이 포함될 수 있다. 이때, 객체 3차원 형상 식별 모델(1400)은 제1 이미지(1410)로부터 객체의 3차원 형상 타입을 식별하지 못할 수 있다. 이 경우, 전자 장치(2000)는 단계 S1420을 수행하여, 제1 카메라보다 화각이 넓은 제2 카메라를 활성화하고, 활성화된 제2 카메라를 이용하여 제2 이미지(1420)를 획득할 수 있다. 전자 장치(2000)는 제2 이미지(1420)를 객체 3차원 형상 식별 모델(1400)에 입력함으로써, 객체의 3차원 형상 타입을 식별할 수 있다.In one embodiment, the
한편, 전자 장치(2000)가 제2 이미지를 이용하여 객체의 3차원 형상 타입을 식별하는 동작은, 도 10c 및 도 10d에서 전술한, 전자 장치(2000)가 3차원 형상 타입에 가중치를 결정하고, 가중치를 적용하여 3차원 형상을 식별하는 동작과 선택적 또는 중복적으로 적용될 수 있다.Meanwhile, the operation of the
도 15a는 본 개시의 일 실시예에 따른 전자 장치가 멀티 카메라를 이용하는 동작을 설명하기 위한 흐름도이다.FIG. 15A is a flowchart illustrating an operation in which an electronic device uses a multi-camera according to an embodiment of the present disclosure.
단계 S1510에서, 일 실시예에 따른 전자 장치(2000)는 제1 카메라를 이용하여 객체의 일부(예를 들어, 라벨)를 포함하는 제1 이미지를 획득하고, 제2 카메라를 이용하여 객체의 전체를 포함하는 제2 이미지를 획득한다. 제2 카메라는, 제1 카메라보다 화각이 넓은 카메라일 수 있다. 예를 들어, 제1 카메라는 망원 카메라이고, 제2 카메라는 광각 카메라, 초광각 카메라 등일 수 있으나, 이에 한정되는 것은 아니다. 일 실시예에서, 전자 장치(2000)의 카메라를 활성화하여 객체를 촬영할 수 있다. 사용자는 카메라를 실행하기 위한 하드웨어 버튼 또는 아이콘을 터치하여 카메라를 활성화할 수도 있고, 음성 명령을 통해 카메라를 활성화할 수도 있다In step S1510, the
사용자가 객체의 라벨로부터 정보를 추출하기 위해, 제1 카메라에 대응하는 프리뷰 영역에 라벨이 전반적으로 나타나도록 전자 장치(2000)의 위치를 조정하는 경우, 전자 장치(2000)가 제1 카메라를 이용하여 획득한 제1 이미지에는 객체의 라벨은 명확히 나타날 수 있으나, 객체의 전체 형상은 나타나지 않을 수 있다. 하지만, 제1 카메라보다 화각이 넓은 제2 카메라를 이용하여 획득된 제2 이미지에는 객체의 전체 형상이 나타날 수 있다.When the user adjusts the position of the
단계 S1520에서, 일 실시예에 따른 전자 장치(2000)는 제1 이미지를 제1 AI 모델(관심 영역 식별 모델)에 적용함으로써 객체의 표면의 관심 영역(예를 들어, 적어도 하나의 라벨에 대응하는 영역)을 식별한다. 제1 이미지는 관심 영역이 포커싱된 이미지이므로, 제1 이미지를 제1 AI 모델에 적용함으로써, 관심 영역을 정확히 식별할 수 있다. 단계 S1520은, 도 2의 단계 S220에 대응하므로, 동일한 설명은 생략한다.In step S1520, the
단계 S1530에서, 일 실시예에 따른 전자 장치(2000)는 제2 이미지를 제2 AI 모델에 적용함으로써 객체의 3차원 형상 타입을 식별한다. 단계 S1530은, 제2 이미지를 이용한다는 것만 차이가 있을 뿐 도 2의 단계 S230에 대응하므로, 동일한 설명은 생략한다.In step S1530, the
단계 S1540에서, 일 실시예에 따른 전자 장치(2000)는 객체의 3차원 형상 타입에 대응하는 3차원 파라미터 값들을 획득한다. 단계 S1540은, 도 2의 단계 S240에 대응하므로, 동일한 설명은 생략한다.In step S1540, the
도 15b는 도 15a를 보충적으로 더 설명하기 위한 도면이다.FIG. 15B is a diagram for further supplementary explanation of FIG. 15A.
일 실시예에서, 전자 장치(2000)가 제1 카메라를 이용하여 획득한 제1 이미지(1502)는, 망원 카메라를 이용하여 획득된 이미지일 수 있다. 제1 이미지(1502)는 객체의 전체 3차원 형상을 포함하지 않고 관심 영역을 확대하여 포함하고 있으므로, 관심 영역을 식별하기에 적합한 이미지일 수 있다. 이 경우, 전자 장치(2000)는 제1 이미지(1502)를 관심 영역 식별 모델(1510)에 입력함으로써, 제1 이미지 내에서 적어도 하나의 라벨에 대응하는 영역을 관심 영역으로 식별할 수 있다.In one embodiment, the
일 실시예에서, 전자 장치(2000)가 제2 카메라를 이용하여 획득한 제2 이미지(1504)는, 광각 카메라 및/또는 초광각 카메라를 이용하여 획득된 이미지일 수 있다. 제2 이미지(1504)는 객체의 전체 3차원 형상을 포함하고 있으므로, 객체의 3차원 형상을 식별하기에 적합한 이미지일 수 있다. 이 경우, 전자 장치(2000)는 제2 이미지(1504)를 객체 3차원 형상 식별 모델(1520)에 입력함으로써, 제2 이미지 내의 객체의 3차원 형상 타입을 식별할 수 있다.In one embodiment, the
도 16a는 본 개시의 일 실시예에 따른 전자 장치가 멀티 카메라를 이용하는 동작을 설명하기 위한 흐름도이다.FIG. 16A is a flowchart illustrating an operation in which an electronic device uses a multi-camera according to an embodiment of the present disclosure.
단계 S1610에서, 일 실시예에 따른 전자 장치(2000)는 제1 카메라를 이용하여 실시간으로 촬영되는 제1 이미지를 제1 AI 모델(관심 영역 식별 모델)에 적용하여 관심 영역의 신뢰도를 획득한다. 제1 카메라는 망원 카메라일 수 있다.In step S1610, the
일 실시예에서, 전자 장치(2000)의 사용자가 객체를 인식하고자 하는 경우(예를 들어, 상품의 라벨을 검색하고자 하는 경우 등), 사용자는 카메라 애플리케이션을 활성화할 수 있다. 사용자는 전자 장치(2000)의 화면에 표시되는 프리뷰 이미지 등을 보면서 카메라가 객체를 응시하도록 카메라의 시야를 계속하여 조정할 수 있다. 전자 장치(2000)는 제1 카메라를 통해 실시간으로 획득되는 제1 이미지 프레임들에 대하여, 각각의 제1 이미지 프레임들을 관심 영역 식별 모델에 입력할 수 있다. 전자 장치(2000)는 각각의 제1 이미지 프레임들에 대한 관심 영역 식별의 정확도를 나타내는, 관심 영역의 신뢰도를 획득할 수 있다.In one embodiment, when the user of the
단계 S1620에서, 일 실시예에 따른 전자 장치(2000)는 제2 카메라를 이용하여 실시간으로 촬영되는 제2 이미지를 제2 AI 모델에 적용하여 객체의 3차원 형상 타입의 신뢰도를 획득한다. 제2 카메라는, 광각 카메라 또는 초광각 카메라일 수 있다.In step S1620, the
일 실시예에서, 전자 장치(2000)는 제2 카메라를 통해 실시간으로 획득되는 제2 이미지 프레임들에 대하여, 각각의 제2 이미지 프레임들을 객체 3차원 형상 추정 모델에 입력할 수 있다. 전자 장치(2000)는 각각의 제2 이미지 프레임들에 대한 객체 3차원 형상 추정의 정확도를 나타내는, 객체의 3차원 형상 타입의 신뢰도를 획득할 수 있다.In one embodiment, the
단계 S1630에서, 일 실시예에 따른 전자 장치(2000)는 관심 영역의 신뢰도가 제1 임계 값을 초과하는지 여부를 판단한다. 제1 임계 값은 관심 영역에 대하여 기 설정된 임계 값일 수 있다. 전자 장치(2000)는 관심 영역의 신뢰도가 제1 임계 값 이하인 경우, 제1 임계 값을 초과하는 신뢰도가 획득될 때까지 단계 S1610을 계속하여 수행할 수 있다.In step S1630, the
단계 S1640에서, 일 실시예에 따른 전자 장치(2000)는 객체의 3차원 형상 타입의 신뢰도가 제2 임계 값을 초과하는지 여부를 판단한다. 제2 임계 값은 객체의 3차원 형상에 대하여 기 설정된 임계 값일 수 있다. 전자 장치(2000)는 객체의 3차원 형상 타입의 신뢰도가 제2 임계 값 이하인 경우, 제2 임계 값을 초과하는 신뢰도가 획득될 때까지 단계 S1620을 계속하여 수행할 수 있다.In step S1640, the
단계 S1650에서, 일 실시예에 따른 전자 장치(2000)는 제1 이미지 및 제2 이미지를 각각 캡쳐한다.In step S1650, the
일 실시예에서, 단계 S1650이 수행되는 조건은 관심 영역의 신뢰도가 제1 임계 값을 초과하고, 3차원 형상 타입의 신뢰도가 제2 임계 값을 초과하는 AND 조건이다. 전자 장치(2000)는 제1 이미지 및 제2 이미지를 각각 캡쳐하여 저장하고, 단계 S1520 및 그 이후의 단계들을 수행할 수 있다. 이 경우, 전자 장치(2000)는 제1 이미지를 관심 영역 식별 모델에 적용함으로써 객체의 표면의 관심 영역을 식별하고, 제2 이미지를 객체 3차원 형상 식별 모델에 적용함으로써 객체의 3차원 형상을 식별할 수 있다. 이에 대한 구체적인 동작들은 전술하였으므로, 동일한 설명은 생략한다.In one embodiment, the condition under which step S1650 is performed is an AND condition in which the reliability of the region of interest exceeds a first threshold and the reliability of the 3D shape type exceeds a second threshold. The
도 16b는 도 16a를 보충적으로 더 설명하기 위한 도면이다.FIG. 16B is a diagram for further supplementary explanation of FIG. 16A.
도 16b 및 도 16c를 설명함에 있어서, 사용자가 와인의 라벨을 인식하고자 하는 경우를 예시로 설명한다.In explaining FIGS. 16B and 16C, a case where a user wishes to recognize a wine label will be described as an example.
도 16b를 참조하면, 일 실시예에 따른 전자 장치(2000)는 객체 인식을 위한 제1 화면(1600)을 표시할 수 있다. 제1 화면(1600)은 전자 장치(2000)의 사용자가 객체 인식을 수행할 수 있도록 가이드하는 인터페이스를 포함할 수 있다. 예를 들어, 전자 장치(2000)는 제1 화면(1600)에 객체의 관심 영역이 포함되도록 가이드하는 사각 박스(1606)(다만, 사각형에 한정되지 않으며 원형 등 유사한 기능을 할 수 있는 다른 형태를 포함함)를 표시하고, '와인 라벨을 검색합니다(1608)' 등의 가이드를 표시할 수 있다. 일부 실시예에서, 전자 장치(2000)는 제1 화면(1600)에 표시되는 이미지로부터 객체가 인식되지 않는 경우, '카메라를 통해 상품을 비춰 주세요' 등의 가이드를 표시할 수 있다.Referring to FIG. 16B, the
일 실시예에서, 전자 장치(2000)는 카메라로부터 획득되는 프리뷰 이미지를 나타내는 제2 화면(1602)을 표시할 수 있다. 사용자는 제2 화면(1602)을 보면서, 객체가 이미지 내에 완전히 포함되도록 카메라의 시야를 조정할 수 있다. 전자 장치(2000)는 카메라의 프리뷰 이미지인 제2 화면(1602)이 표시되는 동안, 관심 영역의 신뢰도 및 객체의 3차원 형상 타입의 신뢰도를 계산할 수 있다. 이는, 전술하였으므로 동일한 설명은 생략한다.In one embodiment, the
관심 영역의 신뢰도가 제1 임계값을 초과하고, 객체의 3차원 형상 타입의 신뢰도가 제2 임계값을 초과하는 경우, 전자 장치(2000)는 관심 영역으로 식별된 적어도 하나의 라벨에 대응하는 영역 및 객체의 3차원 형상 타입에 관한 데이터에 기초하여, 객체와 관련된 3차원 파라미터 값들을 획득할 수 있다. 그리고 전자 장치(2000)는 객체와 관련된 3차원 파라미터 값들을 이용하여 적어도 하나의 라벨의 굴곡 형상을 추정하고, 원근 변환을 수행함으로써, 적어도 하나의 라벨의 굴곡 형상이 평평하게 된 플랫 라벨 이미지를 획득할 수 있다. 전자 장치(2000)는 플랫 라벨 이미지가 획득되고 플랫 라벨 이미지로부터 객체에 관련된 정보가 추출되는 경우(즉, 상품이 인식되는 경우), '와인 정보가 검색되었습니다(1610)'와 같은 알림을 프리뷰 이미지 상에 출력할 수 있다. 그리고 전자 장치(2000)는 플랫 라벨 이미지로부터 추출된 객체에 관련된 정보(1604)를 출력할 수 있다. 예를 들어, 전자 장치(2000)는 와인 라벨 이미지 및 와인에 관한 상세 정보를 출력할 수 있다.When the reliability of the region of interest exceeds the first threshold and the reliability of the three-dimensional shape type of the object exceeds the second threshold, the
도 16c는 도 16a를 보충적으로 더 설명하기 위한 도면이다.FIG. 16C is a diagram for further supplementary explanation of FIG. 16A.
도 16c를 참조하면, 일 실시예에 따른 전자 장치(2000)는 객체 인식을 위한 제1 화면(1600)을 표시할 수 있다. 제1 화면(1600)은 전자 장치(2000)의 사용자가 객체 인식을 수행할 수 있도록 가이드하는 인터페이스를 포함할 수 있다. 예를 들어, 전자 장치(2000)는 제1 화면(1600)에 객체의 관심 영역이 포함되도록 가이드하는 사각 박스(1606)(다만, 사각형에 한정되지 않으며 원형 등 유사한 기능을 할 수 있는 다른 형태를 포함함)를 표시하고, '와인 라벨을 검색합니다(1608)' 등의 가이드를 표시할 수 있다. 일부 실시예에서, 전자 장치(2000)는 제1 화면(1600)에 표시되는 이미지로부터 객체가 인식되지 않는 경우, '카메라를 통해 상품을 비춰 주세요' 등의 가이드를 표시할 수 있다.Referring to FIG. 16C, the
일 실시예에서, 전자 장치(2000)는 카메라의 프리뷰 이미지인 제2 화면(1602)이 표시되는 동안, 관심 영역의 신뢰도 및 객체의 3차원 형상 타입의 신뢰도를 계산할 수 있다. 전자 장치(2000)는 관심 영역의 신뢰도가 제1 임계 값을 초과하고, 객체의 3차원 형상 타입의 신뢰도가 제2 임계 값을 초과하여야 이미지로부터 왜곡을 제거하기 위한 이후의 동작들을 수행한다. 따라서, 관심 영역의 신뢰도가 제1 임계 값 이하 및/또는 객체의 3차원 형상 타입의 신뢰도가 제2 임계 값 이하인 경우, 전자 장치(2000)는 제1 이미지 및 제2 이미지를 획득하기 위해 사용자에게 카메라 시야를 조정할 수 있도록 가이드하는 알림을 출력할 수 있다. 예를 들어, 전자 장치(2000)는 '와인 라벨을 인식할 수 없습니다. 카메라 각도를 조정해 주세요(1612)'와 같은 알림을 화면에 표시하거나, 오디오로 출력할 수 있다.In one embodiment, the
도 17은 본 개시의 일 실시예에 따른 전자 장치가 이미지를 처리하여 추출된 정보를 제공하는 동작을 설명하기 위한 도면이다.FIG. 17 is a diagram illustrating an operation in which an electronic device processes an image and provides extracted information according to an embodiment of the present disclosure.
일 실시예에서, 전자 장치(2000)는 왜곡 없는 이미지인 플랫 라벨 이미지를 생성하고, 플랫 라벨 이미지로부터 객체와 관련된 정보를 추출하여 사용자에게 제공할 수 있다.In one embodiment, the
일 실시예에서, 전자 장치(2000)는 객체 인식을 시작하기 위한 제1 화면(1700)을 표시할 수 있다. 제1 화면(1700)에는 '와인 라벨 스캔(1701)'과 같은 사용자 인터페이스가 포함될 수 있다. 전자 장치(2000)의 사용자는 사용자 인터페이스를 통해 객체 인식 동작을 시작할 수 있다.In one embodiment, the
일 실시예에서, 전자 장치(2000)는 객체 인식을 수행하기 위한 제2 화면(1702)을 표시할 수 있다. 제2 화면(1702)은 전자 장치(2000)의 사용자가 객체 인식을 수행할 수 있도록 가이드하는 인터페이스를 포함할 수 있다. 예를 들어, 전자 장치(2000)는 제2 화면(1702)에 객체의 관심 영역이 포함되도록 가이드하는 가이드 영역(1702-1)를 표시하고, '와인 전면 라벨을 촬영하세요' 등의 가이드 문구(1702-2)를 표시할 수 있다. 전자 장치(2000)는 멀티 카메라를 통해 복수의 이미지들(예를 들어, 망원 이미지, 광각 이미지, 초광각 이미지 등)을 획득하고, 전술한 실시예들에 따른 3차원 정보에 기초한 왜곡 제거 동작들을 수행할 수 있다. 즉, 전자 장치(2000)는 이미지 내에서 와인 라벨 영역을 추출하고, 왜곡을 제거하는 보정을 수행하여 왜곡 없는 와인 라벨 이미지를 생성한다. 또한, 전자 장치(2000)는 왜곡 없는 와인 라벨 이미지에 OCR을 적용하여, 와인과 관련된 정보들을 추출할 수 있다. 전자 장치(2000)는 와인 라벨에서 식별된 텍스트 정보를 이용하여, 와인 정보를 검색할 수 있다.In one embodiment, the
일 실시예에서, 전자 장치(2000)가 1)와인 라벨 영역을 추출/보정하고, 2)와인 라벨에서 식별된 텍스트 정보를 이용하여 와인 정보를 검색 하면, 전자 장치(2000)는 객체 인식 및 검색 결과를 나타내는 제3 화면(1704)을 표시할 수 있다. 제3 화면(1704)에는 전자 장치(2000)가 전술한 실시예들에 따라 생성한 왜곡 없는 이미지가 표시될 수 있다. 도 17의 예시에서 왜곡 없는 이미지는, 와인 라벨 이미지일 수 있다. 와인 라벨 이미지는 와인 병에 곡선형으로 부착된 와인 라벨이 평평하게 변환된, 플랫 라벨 이미지일 수 있다.In one embodiment, when the
제3 화면(1704)에는, 전자 장치(2000)가 전술한 실시예들에 따라 획득한 객체와 관련된 정보가 표시될 수 있다. 도 17의 예시에서 객체와 관련된 정보는, 와인 상세 정보일 수 있다. 이 경우, 와인 라벨 이미지로부터 OCR을 수행한 결과인, 와인 이름, 원산지, 생산 년도 등이 표시될 수 있다.On the
일 실시예에서, 제3 화면(1704)에는, 와인 라벨 이미지로부터 획득된 객체와 관련된 정보 외에도, 서버로부터 획득되거나 전자 장치(2000)의 데이터베이스로부터 획득된, 객체에 관련된 추가 정보가 더 표시될 수 있다. 예를 들어, 와인 라벨 이미지로부터 획득될 수 없는 와인의 산도, 바디감, 알코올 도수 등이 표시될 수 있다.In one embodiment, in addition to information related to the object obtained from the wine label image, additional information related to the object obtained from the server or from the database of the
일 실시예에서, 제3 화면(1704)에는 다른 전자 장치로부터 획득되는 정보 및/또는 사용자 입력에 기초하여 획득되는 정보가 더 표시될 수 있다. 예를 들어, 와인의 별명, 입고일, 보관 위치, 등이 표시될 수 있다.In one embodiment, the
다만, 와인 라벨 이미지로부터 획득 가능한 정보 및 와인 라벨 이미지 외 다른 경로로부터 획득 되어 표시되는 정보는 예시적으로 설명한 것이며, 전술한 것으로 한정되는 것은 아니다.However, the information that can be obtained from the wine label image and the information that is obtained and displayed from a route other than the wine label image are described as examples and are not limited to the above.
일 실시예에서, 전자 장치(2000)는 객체 인식 및 검색 결과를 데이터베이스화한 제4 화면(1706)을 표시할 수 있다. 이 경우, 전자 장치(2000)는 왜곡 없는 이미지인 플랫 라벨 이미지들을 미리보기 형태(1708)로 표시할 수 있다. 각각의 플랫 라벨 이미지들을 선택하면, 제 3화면(1704)과 같이, 선택된 플랫 라벨 이미지에 대응하는 와인 정보들이 다시 표시될 수 있다.In one embodiment, the
도 18은 본 개시의 일 실시예에 따른 전자 장치가 이미지를 처리하는 동작에 관련된 시스템의 일 예시를 설명하기 위한 도면이다.FIG. 18 is a diagram for explaining an example of a system related to an image processing operation by an electronic device according to an embodiment of the present disclosure.
일 실시예에서, 전자 장치(2000)가 사용하는 모델들은, 신경망 연산을 수행하기에 적합한 다른 전자 장치(예를 들어, 로컬 PC 등)에서 훈련된 것일 수 있다. 예를 들어, 객체 3차원 형상 추정 모델, 관심 영역 식별 모델, 왜곡 제거 모델, 정보 추출 모델 등이 다른 전자 장치에서 훈련되어 학습 완료된 상태로 저장되어 있을 수 있다.In one embodiment, the models used by the
일 실시예에서, 전자 장치(2000)는 다른 전자 장치에 저장된, 훈련된 모델들을 수신할 수 있다. 전자 장치(2000)는 수신된 모델들에 기초하여, 전술한 이미지 처리 동작들을 수행할 수 있다. 이 경우, 전자 장치(2000)는 훈련된 모델들을 실행하여 추론 동작을 수행하고, 플랫 라벨 이미지와 라벨 정보를 생성할 수 있다. 생성된 플랫 라벨 이미지 및 라벨 정보는, 애플리케이션 등을 통해 사용자에게 제공될 수 있다. 도 18에서는, 전자 장치(2000)의 예시로 모바일 폰에 모델이 저장되어 사용되는 것을 예시로 설명하였으나, 이에 한정되는 것은 아니다. 전자 장치(2000)는 TV, 태블릿 PC, 스마트 냉장고 등등, 애플리케이션을 실행 가능하고 디스플레이 및 카메라가 탑재된 모든 전자 장치를 포함할 수 있다.In one embodiment, the
한편, 이전 도면들의 설명에서 기술한 것처럼, 전자 장치(2000)가 사용하는 모델들은, 전자 장치(2000)의 컴퓨팅 자원을 이용하여 훈련될 수 있다. 이에 대한 구체적인 설명은 전술하였으므로, 생략한다.Meanwhile, as described in the description of the previous drawings, models used by the
도 19는 본 개시의 일 실시예에 따른 전자 장치가 서버를 이용하여 이미지를 처리하는 동작에 관련된 시스템의 일 예시를 설명하기 위한 도면이다.FIG. 19 is a diagram illustrating an example of a system related to an operation in which an electronic device processes an image using a server according to an embodiment of the present disclosure.
일 실시예에서, 전자 장치(2000)가 사용하는 모델들은, 신경망 연산을 수행하기에 적합한 다른 전자 장치(예를 들어, 로컬 PC 등)에서 훈련된 것일 수 있다. 예를 들어, 객체 3차원 형상 추정 모델, 관심 영역 식별 모델, 왜곡 제거 모델, 정보 추출 모델 등이 다른 전자 장치에서 훈련되어 학습 완료된 상태로 저장되어 있을 수 있다. 또한, 다른 전자 장치(예를 들어, 로컬 PC 등)에서 훈련된 모델들은, 또다른 전자 장치(예를 들어, 서버 등)로 전송되어 저장될 수 있다.In one embodiment, the models used by the
일 실시예에서, 전자 장치(2000)는 서버를 이용하여 이미지 처리 동작들을 수행할 수 있다. 전자 장치(2000)는 카메라를 이용하여 객체 이미지들(예를 들어, 망원 이미지, 광각 이미지, 초광각 이미지 등)을 촬영하고, 이미지들을 서버로 전송할 수 있다. 이 경우, 서버는 훈련된 모델들을 실행하여 추론 동작을 수행하고, 플랫 라벨 이미지와 라벨 정보를 생성할 수 있다. 전자 장치(2000)는 서버로부터 플랫 라벨 이미지와 라벨 정보를 수신할 수 있다. 수신된 플랫 라벨 이미지 및 라벨 정보는, 애플리케이션 등을 통해 사용자에게 제공될 수 있다. 도 19에서는, 전자 장치(2000)의 예시로 모바일 폰에 모델이 저장되어 사용되는 것을 예시로 설명하였으나, 이에 한정되는 것은 아니다. 전자 장치(2000)는 TV, 태블릿 PC, 스마트 냉장고 등등, 애플리케이션을 실행 가능하고 디스플레이 및 카메라가 탑재된 모든 전자 장치를 포함할 수 있다.In one embodiment, the
한편, 이전 도면들의 설명에서 기술한 것처럼, 전자 장치(2000)가 사용하는 모델들은, 전자 장치(2000)의 컴퓨팅 자원을 이용하여 훈련될 수 있다. 이에 대한 구체적인 설명은 전술하였으므로, 생략한다.Meanwhile, as described in the description of the previous drawings, models used by the
도 20은 본 개시의 일 실시예에 따른 전자 장치의 구성을 도시한 블록도이다.Figure 20 is a block diagram showing the configuration of an electronic device according to an embodiment of the present disclosure.
일 실시예에 따른 전자 장치(2000)는 통신 인터페이스(2100), 카메라(들)(2200), 메모리(2300) 및 프로세서(2400)를 포함할 수 있다.The
통신 인터페이스(2100)는 프로세서(2400)의 제어에 의해 다른 전자 장치들과 데이터 통신을 수행할 수 있다.The
통신 인터페이스(2100)는 통신 회로를 포함할 수 있다. 통신 인터페이스(2100)는 예를 들어, 유선 랜, 무선 랜(Wireless LAN), 와이파이(Wi-Fi), 블루투스(Bluetooth), 지그비(ZigBee), WFD(Wi-Fi Direct), 적외선 통신(IrDA, infrared Data Association), BLE (Bluetooth Low Energy), NFC(Near Field Communication), 와이브로(Wireless Broadband Internet, Wibro), 와이맥스(World Interoperability for Microwave Access, WiMAX), SWAP(Shared Wireless Access Protocol), 와이기그(Wireless Gigabit Alliances, WiGig) 및 RF 통신을 포함하는 데이터 통신 방식 중 적어도 하나를 이용하여, 전자 장치(2000)와 다른 디바이스들 간의 데이터 통신을 수행할 수 있는, 통신 회로를 포함할 수 있다.The
통신 인터페이스(2100)는 전자 장치(2000)의 이미지 처리 동작을 수행하기 위한 데이터를 외부 전자 장치와 송수신할 수 있다. 예를 들어, 통신 인터페이스(2100)는 전자 장치(2000)가 이용하는 인공지능 모델들을 송수신하거나, 인공지능 모델들의 훈련 데이터셋을 서버 등과 송수신할 수 있다. 또한, 전자 장치(2000)는 왜곡이 제거되어야 할 이미지를 서버 등으로부터 획득할 수 있다. 또한, 전자 장치(2000)는 객체와 관련된 정보를 검색하기 위해 서버 등과 데이터를 송수신할 수 있다.The
카메라(들)(2200)는 객체를 촬영하여 비디오 및/또는 이미지를 획득할 수 있다. 카메라(들)(2200)는 하나 이상일 수 있다. 카메라(들)(2200)는 예를 들어, RGB 카메라, 망원 카메라, 광각 카메라, 초광각 카메라 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. 카메라(들)(2200)는 복수의 프레임들을 포함하는 비디오를 획득할 수 있다. 카메라(들)(2200)의 구체적인 종류 및 세부 기능은 통상의 기술자가 명확하게 추론할 수 있으므로, 설명을 생략한다.Camera(s) 2200 may acquire video and/or images by photographing an object. There may be more than one camera(s) 2200. The camera(s) 2200 may include, for example, an RGB camera, a telephoto camera, a wide-angle camera, an ultra-wide-angle camera, etc., but is not limited thereto. Camera(s) 2200 may acquire video including a plurality of frames. Since the specific type and detailed functions of the camera(s) 2200 can be clearly deduced by a person skilled in the art, descriptions are omitted.
메모리(2300)는 프로세서(2400)가 판독할 수 있는 명령어들, 데이터 구조, 및 프로그램 코드(program code)가 저장될 수 있다. 메모리(2300)는 하나 이상일 수 있다. 개시된 실시예들에서, 프로세서(2400)가 수행하는 동작들은 메모리(2300)에 저장된 프로그램의 명령어들 또는 코드들을 실행함으로써 구현될 수 있다.The
메모리(2300)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등)를 포함할 수 있으며, 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나를 포함하는 비 휘발성 메모리 및 램(RAM, Random Access Memory) 또는 SRAM(Static Random Access Memory)과 같은 휘발성 메모리를 포함할 수 있다.The
일 실시예에 따른 메모리(2300)는 전자 장치(2000)가 이미지 내 왜곡을 제거하기 위해 동작하도록 하는 하나 이상의 인스트럭션 및/또는 프로그램을 저장할 수 있다. 예를 들어, 메모리(2300)에는 관심 영역 식별 모듈(2310), 객체 3차원 형상 식별 모듈(2320), 3차원 정보 획득 모듈(2330), 왜곡 제거 모듈(2340) 및 정보 추출 모듈(2350)이 저장될 수 있다.
프로세서(2400)는 전자 장치(2000)의 전반적인 동작들을 제어할 수 있다. 예를 들어, 프로세서(2400)는 메모리(2300)에 저장된 프로그램의 하나 이상의 명령어들(instructions)을 실행함으로써, 전자 장치(2000)가 이미지에서 왜곡을 제거하기 위한 전반적인 동작들을 제어할 수 있다. 프로세서(2400)는 하나 이상일 수 있다.The
본 개시에 따른 하나 이상의 프로세서(2400)는 CPU (Central Processing Unit), GPU (Graphics Processing Unit), APU (Accelerated Processing Unit), MIC (Many Integrated Core), DSP (Digital Signal Processor), 및 NPU (Neural Processing Unit) 중 적어도 하나를 포함할 수 있다. 하나 이상의 프로세서(2400)는, 하나 이상의 전자부품을 포함하는 집적된 시스템 온 칩(SoC) 형태로 구현될 수 있다. 하나 이상의 프로세서 각각은 별개의 하드웨어(H/W)로 구현될 수도 있다.One or
프로세서(2400)는 관심 영역 식별 모듈(2310)을 실행하여, 이미지 내에서 적어도 하나의 라벨에 대응하는 영역을 관심 영역으로 식별할 수 있다. 관심 영역 식별 모듈(2310)은 관심 영역 식별 모델을 포함할 수 있다. 관심 영역 식별 모듈(2310)에 관련된 구체적인 동작들은, 이전의 도면들에서 상세하게 설명하였으므로, 동일한 설명은 생략한다.The
프로세서(2400)는 객체 3차원 형상 식별 모듈(2320)을 실행하여, 이미지 내의 객체의 3차원 형상 타입에 관한 데이터를 획득한다. 객체 3차원 형상 식별 모듈(2320)은 객체 3차원 형상 식별 모델을 포함할 수 있다. 객체 3차원 형상 식별 모듈(2320)에 관련된 구체적인 동작들은, 이전의 도면들에서 상세하게 설명하였으므로, 동일한 설명은 생략한다.The
프로세서(2400)는 3차원 정보 획득 모듈(2330)을 실행하여, 이미지 내의 객체의 3차원 정보를 추론할 수 있다. 프로세서(2400)는 관심 영역 및 객체의 3차원 형상 타입에 관한 데이터에 기초하여, 객체, 적어도 하나의 라벨 및 제1 카메라 중 적어도 하나와 관련된 3차원 파라미터 값들을 획득한다. 여기서, 3차원 파라미터 값들을 획득한다고 하는 것은, 객체의 3차원 형상에 대응하는 3차원 파라미터의 초기값들을 미세 조정하여, 객체의 3차원 정보를 나타내도록 한 것일 수 있다. 3차원 정보 획득 모듈(2330)에 관련된 구체적인 동작들은, 이전의 도면들에서 상세하게 설명하였으므로, 동일한 설명은 생략한다.The
프로세서(2400)는 왜곡 제거 모듈(2340)을 실행하여, 이미지의 왜곡을 제거할 수 있다. 왜곡 제거 모듈(2340)은 왜곡 제거 모델을 포함할 수 있다. 프로세서(2400)는 3차원 파라미터에 기초하여, 적어도 하나의 라벨의 굴곡 형상을 추정할 수 있다. 프로세서(2400)는 적어도 하나의 라벨에 대한 원근 변환을 수행함으로써, 라벨의 굴곡 형상이 평평하게 된, 플랫 라벨 이미지를 획득할 수 있다. 왜곡 제거 모듈(2340)에 관련된 구체적인 동작들은, 이전의 도면들에서 상세하게 설명하였으므로, 동일한 설명은 생략한다.The
프로세서(2400)는 정보 추출 모듈(2350)을 실행하여, 왜곡 없는 이미지로부터 정보를 추출할 수 있다. 정보 추출 모듈(2350)은 정보 추출 모델을 포함할 수 있다. 프로세서(2400)는 정보 추출 모듈을 이용하여 관심 영역 내 정보를 추출하며, 예를 들어, 관심 영역 내의 로고, 아이콘, 텍스트 등을 식별할 수 있다. 정보 추출 모듈(2350)에 관련된 구체적인 동작들은, 이전의 도면들에서 상세하게 설명하였으므로, 동일한 설명은 생략한다.The
한편, 전술한 메모리(2300)에 저장된 모듈들은, 설명의 편의를 위한 것이며 반드시 이에 한정되는 것은 아니다. 전술한 실시예들을 구현하기 위해 다른 모듈이 추가될 수 있으며, 전술한 모듈들 중 일부의 모듈들은 하나의 모듈로 구현될 수도 있다.Meanwhile, the modules stored in the above-described
본 개시의 일 실시예에 따른 방법이 복수의 동작을 포함하는 경우, 복수의 동작은 하나의 프로세서에 의해 수행될 수도 있고, 복수의 프로세서에 의해 수행될 수도 있다. 예를 들어, 일 실시예에 따른 방법에 의해 제1 동작, 제2 동작, 제3 동작이 수행될 때, 제1 동작, 제2 동작, 및 제3 동작 모두 제1 프로세서에 의해 수행될 수도 있고, 제1 동작 및 제2 동작은 제1 프로세서(예를 들어, 범용 프로세서)에 의해 수행되고 제3 동작은 제2 프로세서(예를 들어, 인공지능 전용 프로세서)에 의해 수행될 수도 있다. 여기서, 제2 프로세서의 예시인 인공지능 전용 프로세서는, 인공지능 모델의 훈련/추론을 위한 연산들이 수행될 수도 있다. 그러나, 본 개시의 실시예들이 이에 한정되는 것은 아니다.When the method according to an embodiment of the present disclosure includes a plurality of operations, the plurality of operations may be performed by one processor or by a plurality of processors. For example, when the first operation, the second operation, and the third operation are performed by the method according to one embodiment, the first operation, the second operation, and the third operation may all be performed by the first processor. , the first operation and the second operation may be performed by a first processor (e.g., a general-purpose processor) and the third operation may be performed by a second processor (e.g., an artificial intelligence-specific processor). Here, the artificial intelligence dedicated processor, which is an example of the second processor, may perform operations for training/inference of the artificial intelligence model. However, embodiments of the present disclosure are not limited thereto.
본 개시에 따른 하나 이상의 프로세서는 싱글 코어 프로세서(single-core processor)로 구현될 수도 있고, 멀티 코어 프로세서(multi-core processor)로 구현될 수도 있다.One or more processors according to the present disclosure may be implemented as a single-core processor or as a multi-core processor.
본 개시의 일 실시예에 따른 방법이 복수의 동작을 포함하는 경우, 복수의 동작은 하나의 코어에 의해 수행될 수도 있고, 하나 이상의 프로세서에 포함된 복수의 코어에 의해 수행될 수도 있다.When the method according to an embodiment of the present disclosure includes a plurality of operations, the plurality of operations may be performed by one core or by a plurality of cores included in one or more processors.
도 20에 도시 되지는 않았지만, 전자 장치(2000)는 사용자 인터페이스를 더 포함할 수 있다. 사용자 인터페이스는 사용자의 입력을 수신하는 입력 인터페이스와 정보를 출력하는 출력 인터페이스를 포함할 수 있다. Although not shown in FIG. 20, the
출력 인터페이스는 비디오 신호 또는 오디오 신호의 출력을 위한 것이다. 출력 인터페이스는 디스플레이부, 음향 출력부, 진동 모터 등을 포함할 수 있다. 디스플레이부와 터치패드가 레이어 구조를 이루어 터치스크린으로 구성되는 경우, 디스플레이부는 출력 인터페이스 이외에 입력 인터페이스로도 사용될 수 있다. 디스플레이부는 액정 디스플레이(liquid crystal display), 박막 트랜지스터 액정 디스플레이(thin film transistor-liquid crystal display), 발광 다이오드(LED, light-emitting diode), 유기 발광 다이오드(organic light-emitting diode), 플렉시블 디스플레이(flexible display), 3차원 디스플레이(3D display), 전기영동 디스플레이(electrophoretic display) 중에서 적어도 하나를 포함할 수 있다. 그리고 전자 장치(2000)의 구현 형태에 따라 전자 장치(2000)는 디스플레이부를 2개 이상 포함할 수도 있다. The output interface is for output of video signals or audio signals. The output interface may include a display unit, an audio output unit, a vibration motor, etc. When the display unit and the touch pad form a layered structure to form a touch screen, the display unit can be used as an input interface in addition to an output interface. The display unit includes a liquid crystal display, a thin film transistor-liquid crystal display, a light-emitting diode (LED), an organic light-emitting diode, and a flexible display. It may include at least one of a display, a 3D display, and an electrophoretic display. Additionally, depending on the implementation form of the
음향 출력부는 통신 인터페이스(2100)로부터 수신되거나 메모리(2300)에 저장된 오디오 신호를 출력할 수 있다. 또한, 음향 출력부는 전자 장치(2000)에서 수행되는 기능과 관련된 음향 신호를 출력할 수 있다. 음향 출력부는 스피커(speaker), 부저(Buzzer) 등을 포함할 수 있다. The audio output unit may output an audio signal received from the
입력 인터페이스는, 사용자로부터의 입력을 수신하기 위한 것이다. 입력 인터페이스는, 키 패드(key pad), 돔 스위치 (dome switch), 터치 패드(접촉식 정전 용량 방식, 압력식 저항막 방식, 적외선 감지 방식, 표면 초음파 전도 방식, 적분식 장력 측정 방식, 피에조 효과 방식 등), 조그 휠, 조그 스위치 중 적어도 하나일 수 있으나, 이에 한정되는 것은 아니다.The input interface is for receiving input from the user. The input interface is a key pad, dome switch, and touch pad (contact capacitance method, pressure resistance film method, infrared detection method, surface ultrasonic conduction method, integral tension measurement method, piezo effect) method, etc.), a jog wheel, or a jog switch, but is not limited thereto.
입력 인터페이스는, 음성 인식 모듈을 포함할 수 있다. 예를 들어, 전자 장치(2000)는 마이크로폰을 통해 아날로그 신호인 음성 신호를 수신하고, ASR(Automatic Speech Recognition) 모델을 이용하여 음성 부분을 컴퓨터로 판독 가능한 텍스트로 변환할 수 있다. 전자 장치(2000)는 자연어 이해(Natural Language Understanding, NLU) 모델을 이용하여 변환된 텍스트를 해석하여, 사용자의 발화 의도를 획득할 수 있다. 여기서 ASR 모델 또는 NLU 모델은 인공지능 모델일 수 있다. 언어적 이해는 인간의 언어/문자를 인식하고 응용/처리하는 기술로서, 자연어 처리(Natural Language Processing), 기계 번역(Machine Translation), 대화 시스템(Dialog System), 질의 응답(Question Answering), 음성 인식/합성(Speech Recognition/Synthesis) 등을 포함한다.The input interface may include a voice recognition module. For example, the
도 21은 본 개시의 일 실시예에 따른 서버의 구성을 도시한 블록도이다.Figure 21 is a block diagram showing the configuration of a server according to an embodiment of the present disclosure.
일 실시예에서, 전술한 전자 장치(2000)의 동작들은, 서버(3000)에서 수행될 수 있다.In one embodiment, the operations of the
일 실시예에 따른 서버(3000)는 통신 인터페이스(3100), 메모리(3200) 및 프로세서(3300)를 포함할 수 있다. 서버(3000)의 통신 인터페이스(3100), 메모리(3200) 및 프로세서(3300)는 도 20의 전자 장치(2000)의 통신 인터페이스(2100), 메모리(2300) 및 프로세서(2400)에 각각 대응되므로, 동일한 설명은 생략한다.The
일 실시예에 따른 서버(3000)는, 전자 장치(2000) 보다 연산량이 많은 연산을 수행 가능하도록, 컴퓨팅 성능이 전자 장치(2000)보다 높은 장치일 수 있다. 서버(3000)는 추론에 비해 상대적으로 많은 연산량이 요구되는, 인공지능 모델의 훈련을 수행할 수 있다. 서버(3000)는 인공지능 모델을 이용하여 추론을 수행하고, 추론 결과를 전자 장치(2000)로 전송할 수 있다.The
본 개시는, 3차원 정보를 활용한 이미지 왜곡 제거 방법에 있어서, 3차원 정보 획득을 위한 센서 등의 하드웨어 없이, 알고리즘을 이용하여 객체의 3차원 정보를 추론하고, 이미지 내 왜곡을 제거하는 이미지 처리 방법을 제시하고자 한다.The present disclosure relates to an image distortion removal method using 3D information, which involves inferring 3D information of an object using an algorithm and removing distortion within the image without hardware such as a sensor for acquiring 3D information. I would like to suggest a method.
본 개시에서 이루고자 하는 기술적 과제는, 이상에서 언급한 것으로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The technical problems to be achieved in the present disclosure are not limited to those mentioned above, and other technical problems not mentioned can be clearly understood by those skilled in the art from the description below. will be.
본 개시의 일 측면에 따르면, 전자 장치(2000)가 이미지를 처리하는 방법이 제공될 수 있다. 상기 방법은, 제1 카메라를 이용하여 적어도 하나의 라벨을 포함하는 객체의 제1 이미지를 획득하는 단계를 포함할 수 있다. 상기 방법은, 상기 제1 이미지를 제1 AI 모델에 적용함으로써, 상기 제1 이미지 내에서 상기 적어도 하나의 라벨에 대응하는 영역을 관심 영역으로 식별하는 단계를 포함할 수 있다. 상기 방법은, 상기 제1 이미지를 제2 AI 모델에 적용함으로써, 상기 객체의 3차원 형상 타입에 관한 데이터를 획득하는 단계를 포함할 수 있다. 상기 방법은, 상기 관심 영역으로 식별된 상기 적어도 하나의 라벨에 대응하는 영역 및 상기 객체의 3차원 형상 타입에 관한 데이터에 기초하여, 상기 객체, 상기 적어도 하나의 라벨 및 상기 제1 카메라 중 적어도 하나와 관련된 3차원 파라미터 값들을 획득하는 단계를 포함할 수 있다. 상기 방법은, 상기 3차원 파라미터 값들에 기초하여, 상기 적어도 하나의 라벨의 굴곡 형상을 추정하는 단계를 포함할 수 있다. 상기 방법은, 상기 적어도 하나의 라벨에 대한 원근 변환(perspective transformation)을 수행함으로써, 상기 적어도 하나의 라벨의 굴곡 형상이 평평하게 된 플랫(flat) 라벨 이미지를 획득하는 단계를 포함할 수 있다.According to one aspect of the present disclosure, a method for an
상기 3차원 파라미터 값들은, 상기 객체의 3차원 형상과 관련된 가로, 값 세로 값 , 높이 값 및 반지름 값, 상기 객체의 표면의 관심 영역의 각도 값, 3차원 기하학적 변환을 위한 이동(translation) 값 및 회전(rotation) 값, 및 상기 카메라의 초점 거리 값 중 적어도 하나를 포함할 수 있다.The 3D parameter values include horizontal, vertical, height, and radius values related to the 3D shape of the object, angle values of the region of interest on the surface of the object, translation values for 3D geometric transformation, and It may include at least one of a rotation value and a focal length value of the camera.
상기 제1 AI 모델은, 이미지 내에서 라벨에 대응하는 영역을 관심 영역으로 추론하도록 훈련된 인공지능 모델일 수 있다. 상기 제2 AI 모델은, 이미지 내 객체의 3차원 형상 타입을 추론하도록 훈련된 인공지능 모델일 수 있다.The first AI model may be an artificial intelligence model trained to infer the area corresponding to the label in the image as the area of interest. The second AI model may be an artificial intelligence model trained to infer the 3D shape type of an object in an image.
상기 객체의 3차원 형상 타입에 관한 데이터를 획득하는 단계는, 사용자로부터 상기 객체의 3차원 형상 타입에 관련된 사용자 입력을 수신하는 단계를 포함할 수 있다. 상기 객체의 3차원 형상 타입에 관한 데이터를 획득하는 단계는, 복수의 3차원 형상 타입 중에서 상기 사용자 입력에 대응하는 3차원 형상 타입에 가중치를 적용하여 상기 객체의 3차원 형상 타입을 식별하는 단계를 더 포함할 수 있다.Obtaining data regarding the 3D shape type of the object may include receiving a user input related to the 3D shape type of the object from a user. The step of acquiring data about the 3D shape type of the object includes identifying the 3D shape type of the object by applying a weight to the 3D shape type corresponding to the user input among a plurality of 3D shape types. More may be included.
상기 적어도 하나의 라벨에 대응하는 영역을 상기 관심 영역으로 식별하는 단계는, 상기 적어도 하나의 라벨에 대응하는 영역을 나타내는 제1 키포인트들을 식별하는 단계를 포함할 수 있다. 상기 3차원 파라미터 값들을 획득하는 단계는, 상기 객체의 3차원 형상 타입에 대응하는 가상 객체 및 상기 가상 객체의 3차원 파라미터 초기값들을 획득하는 단계를 포함할 수 있다. 상기 3차원 파라미터 값들을 획득하는 단계는, 상기 제1 키포인트들에 기초하여, 상기 가상 객체의 3차원 파라미터 초기값들을 조정하는 단계를 더 포함할 수 있다. 상기 3차원 파라미터 값들을 획득하는 단계는, 상기 조정된 3차원 파라미터 초기 값들을 상기 3차원 파라미터 값들로 획득하는 단계를 더 포함할 수 있다.Identifying the area corresponding to the at least one label as the area of interest may include identifying first key points indicating the area corresponding to the at least one label. Obtaining the 3D parameter values may include acquiring a virtual object corresponding to a 3D shape type of the object and initial 3D parameter values of the virtual object. Obtaining the 3D parameter values may further include adjusting initial 3D parameter values of the virtual object based on the first keypoints. Obtaining the 3D parameter values may further include obtaining the adjusted initial 3D parameter values as the 3D parameter values.
상기 제1 키포인트들에 기초하여, 상기 가상 객체의 3차원 파라미터의 초기값들을 조정하는 단계는, 상기 가상 객체의 가상 라벨에 대응하는 영역을 나타내는 제2 키포인트들을 설정하는 단계를 포함할 수 있다. 상기 제1 키포인트들에 기초하여, 상기 가상 객체의 3차원 파라미터의 초기값들을 조정하는 단계는, 상기 제2 키포인트들이 상기 제1 키포인트들에 정합하도록 상기 가상 객체의 3차원 파라미터 초기값들을 조정하는 단계를 더 포함할 수 있다.Adjusting initial values of 3D parameters of the virtual object based on the first keypoints may include setting second keypoints indicating an area corresponding to the virtual label of the virtual object. Based on the first keypoints, adjusting the initial values of the three-dimensional parameters of the virtual object includes adjusting the initial values of the three-dimensional parameters of the virtual object so that the second keypoints match the first keypoints. Additional steps may be included.
상기 플랫 라벨 이미지로부터 상기 객체와 관련된 정보를 획득하는 단계는, 상기 플랫 이미지에 광학 문자 인식(Optical character recognition; OCR)을 적용하는 단계를 포함할 수 있다.Obtaining information related to the object from the flat label image may include applying optical character recognition (OCR) to the flat image.
상기 전자 장치는, 상기 제1 카메라보다 화각이 넓은 제2 카메라를 더 포함할 수 있다.The electronic device may further include a second camera having a wider viewing angle than the first camera.
상기 객체의 3차원 형상 타입에 관한 데이터를 획득하는 단계는, 상기 제2 카메라를 통해 상기 객체의 제2 이미지를 획득하는 단계를 포함할 수 있다. 상기 객체의 3차원 형상 타입에 관한 데이터를 획득하는 단계는, 상기 제2 이미지를 상기 제2 AI 모델에 더 적용함으로써, 상기 객체의 3차원 형상 타입에 관련된 정보를 획득하는 단계를 더 포함할 수 있다.Obtaining data about the three-dimensional shape type of the object may include acquiring a second image of the object through the second camera. Obtaining data regarding the three-dimensional shape type of the object may further include obtaining information related to the three-dimensional shape type of the object by further applying the second image to the second AI model. there is.
상기 방법은, 상기 제1 카메라를 이용하여 실시간으로 촬영되는 상기 제1 이미지를 상기 제1 AI 모델에 적용하여 상기 관심 영역의 신뢰도를 획득하는 단계를 더 포함할 수 있다. 상기 방법은, 상기 제2 카메라를 이용하여 실시간으로 촬영되는 제2 이미지를 상기 제2 AI 모델에 적용하여 상기 객체의 3차원 형상 타입의 신뢰도를 획득하는 단계를 더 포함할 수 있다. 상기 방법은, 상기 객체의 3차원 형상 타입의 신뢰도 및 상기 관심 영역의 신뢰도 각각의 임계 값에 기초하여, 상기 제1 이미지 및 상기 제2 이미지를 각각 캡쳐하는 단계를 더 포함할 수 있다.The method may further include obtaining reliability of the region of interest by applying the first image captured in real time using the first camera to the first AI model. The method may further include obtaining reliability of the three-dimensional shape type of the object by applying a second image captured in real time using the second camera to the second AI model. The method may further include capturing the first image and the second image, respectively, based on threshold values of the reliability of the 3D shape type of the object and the reliability of the region of interest.
상기 방법은, 상기 플랫 라벨 이미지 또는 상기 플랫 라벨 이미지로부터 획득된 정보에 기초하여, 데이터베이스 내에서 일치하는 데이터를 검색하는 단계를 더 포함할 수 있다. 상기 방법은, 상기 검색 결과를 표시하는 단계를 더 포함하되, 상기 데이터베이스는, 상기 전자 장치가 이전에 획득한 또다른 플랫 라벨 이미지들 및 또다른 객체들과 관련된 정보가 저장된 것일 수 있다.The method may further include searching for matching data in a database based on the flat label image or information obtained from the flat label image. The method further includes displaying the search results, wherein the database may store information related to other flat label images and other objects previously acquired by the electronic device.
본 개시의 일 측면에 따르면, 이미지를 처리하는 전자 장치가 제공될 수 있다. 상기 전자 장치는, 제1 카메라, 하나 이상의 인스트럭션을 저장하는 메모리, 및 상기 메모리에 저장된 상기 하나 이상의 인스트럭션을 실행하는 적어도 하나의 프로세서를 포함할 수 있다. 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 제1 카메라를 이용하여 적어도 하나의 라벨을 포함하는 3차원의 객체의 제1 이미지를 획득할 수 있다. 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 제1 이미지를 제1 AI 모델에 적용함으로써, 상기 제1 이미지 내에서 상기 적어도 하나의 라벨에 대응하는 영역을 관심 영역으로 식별할 수 있다. 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 제1 이미지를 제2 AI 모델에 적용함으로써, 상기 객체의 3차원 형상 타입에 관한 데이터를 획득할 수 있다. 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 관심 영역으로 식별된 상기 적어도 하나의 라벨에 대응하는 영역 및 상기 객체의 3차원 형상 타입에 관한 데이터에 기초하여, 상기 객체, 상기 적어도 하나의 라벨 및 상기 제1 카메라와 중 적어도 하나와 관련된 3차원 파라미터를 획득할 수 있다. 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 3차원 파라미터에 기초하여, 상기 적어도 하나의 라벨의 굴곡 형상을 추정할 수 있다. 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 적어도 하나의 라벨에 대한 원근 변환(perspective transformation)을 수행함으로써, 상기 적어도 하나의 라벨의 굴곡 형상이 평평하게 된 플랫(flat) 라벨 이미지를 획득할 수 있다.According to one aspect of the present disclosure, an electronic device that processes images may be provided. The electronic device may include a first camera, a memory that stores one or more instructions, and at least one processor that executes the one or more instructions stored in the memory. The at least one processor may acquire a first image of a three-dimensional object including at least one label using a first camera by executing the one or more instructions. The at least one processor may identify a region corresponding to the at least one label in the first image as a region of interest by executing the one or more instructions and applying the first image to a first AI model. there is. The at least one processor may acquire data about the three-dimensional shape type of the object by executing the one or more instructions and applying the first image to a second AI model. The at least one processor, by executing the one or more instructions, based on data about a three-dimensional shape type of the object and a region corresponding to the at least one label identified as the region of interest, the object, the at least 3D parameters related to at least one of a label and the first camera may be obtained. The at least one processor may estimate a curved shape of the at least one label based on the three-dimensional parameter by executing the one or more instructions. The at least one processor, by executing the one or more instructions, performs a perspective transformation on the at least one label, thereby creating a flat label image in which the curved shape of the at least one label is flattened. can be obtained.
상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 사용자로부터 상기 객체의 3차원 형상 타입에 관련된 사용자 입력을 수신할 수 있다. 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 복수의 3차원 형상 타입 중에서 상기 사용자 입력에 대응하는 3차원 형상 타입에 가중치를 적용하여 상기 객체의 3차원 형상 타입을 식별할 수 있다.The at least one processor may receive user input related to the three-dimensional shape type of the object from the user by executing the one or more instructions. By executing the one or more instructions, the at least one processor may identify the 3D shape type of the object by applying a weight to the 3D shape type corresponding to the user input among a plurality of 3D shape types.
상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 적어도 하나의 라벨에 대응하는 영역을 나타내는 제1 키포인트들을 식별할 수 있다. 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 객체의 3차원 형상 타입에 대응하는 가상 객체 및 상기 가상 객체의 3차원 파라미터의 초기값들을 획득할 수 있다. 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 제1 키포인트들에 기초하여, 상기 가상 객체의 3차원 파라미터의 초기값들을 조정할 수 있다. 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 조정된 3차원 파라미터의 값들을 상기 3차원 파라미터의 값들로 획득할 수 있다.The at least one processor may identify first key points indicating an area corresponding to the at least one label by executing the one or more instructions. The at least one processor may obtain initial values of a virtual object corresponding to a 3D shape type of the object and 3D parameters of the virtual object by executing the one or more instructions. The at least one processor may adjust initial values of 3D parameters of the virtual object based on the first keypoints by executing the one or more instructions. The at least one processor may obtain the adjusted 3D parameter values as the 3D parameter values by executing the one or more instructions.
상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 가상 객체의 가상 라벨에 대응하는 영역을 나타내는 제2 키포인트들을 설정할 수 있다. 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 제2 키포인트들이 상기 제1 키포인트들에 정합하도록 조정함으로써, 상기 가상 객체의 3차원 파라미터의 초기값들이 상기 객체의 3차원 파라미터의 정답 값에 근사하도록 조정할 수 있다.The at least one processor may set second keypoints indicating an area corresponding to the virtual label of the virtual object by executing the one or more instructions. The at least one processor, by executing the one or more instructions, adjusts the second keypoints to match the first keypoints, so that the initial values of the 3D parameters of the virtual object are correct values of the 3D parameters of the object. It can be adjusted to approximate the value.
상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 플랫 라벨 이미지에 광학 문자 인식(Optical character recognition; OCR)을 적용할 수 있다.The at least one processor may apply optical character recognition (OCR) to the flat label image by executing the one or more instructions.
상기 전자 장치는, 상기 제1 카메라보다 화각이 넓은 제2 카메라를 더 포함하고, 상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 제2 카메라를 통해 상기 객체의 제2 이미지를 획득할 수 있다.The electronic device further includes a second camera having a wider angle of view than the first camera, and the at least one processor acquires a second image of the object through the second camera by executing the one or more instructions. can do.
상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 제2 이미지를 상기 제2 AI 모델에 더 적용함으로써, 상기 객체의 3차원 형상 타입에 관련된 정보를 획득할 수 있다.The at least one processor may obtain information related to the three-dimensional shape type of the object by executing the one or more instructions and further applying the second image to the second AI model.
일 실시예에 따른 전자 장치가 이미지를 처리하는 방법은, 제1 카메라를 이용하여 객체의 라벨을 포함하는 객체의 일부 이미지를 획득하는 단계를 포함할 수 있다. 상기 방법은, 객체의 일부 이미지를 제1 AI 모델에 적용함으로써 객체의 상기 라벨에 대응하는 영역을 관심 영역으로 식별하는 단계를 포함할 수 있다. 상기 방법은, 제1 카메라보다 화각이 넓은 제2 카메라를 이용하여 객체의 전체 이미지를 획득하는 단계를 포함할 수 있다. 상기 방법은, 객체의 전체 이미지를 제2 AI 모델에 적용함으로써 객체의 3차원 형상 타입을 식별하는 단계를 포함할 수 있다. 상기 방법은, 객체의 3차원 형상 타입에 대응하는 3차원 파라미터를 획득하는 단계를 포함할 수 있다. 상기 방법은, 관심 영역에 관한 정보 및 3차원 파라미터에 기초하여 상기 라벨의 원근 변환(perspective transformation)을 수행함으로써, 라벨의 굴곡 형상이 평평하게 된 플랫 라벨 이미지를 획득하는 단계를 포함할 수 있다. 상기 방법은, 상기 플랫 라벨 이미지로부터 객체와 관련된 정보를 획득하는 단계를 포함할 수 있다.A method of processing an image by an electronic device according to an embodiment may include acquiring a partial image of an object including a label of the object using a first camera. The method may include identifying a region corresponding to the label of an object as a region of interest by applying a partial image of the object to a first AI model. The method may include acquiring an entire image of the object using a second camera that has a wider angle of view than the first camera. The method may include identifying the three-dimensional shape type of the object by applying the entire image of the object to the second AI model. The method may include obtaining 3D parameters corresponding to the 3D shape type of the object. The method may include obtaining a flat label image in which the curved shape of the label is flattened by performing a perspective transformation of the label based on information about the region of interest and three-dimensional parameters. The method may include obtaining information related to an object from the flat label image.
한편, 본 개시의 실시예들은 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스 될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독 가능 매체는 컴퓨터 저장 매체 및 통신 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독 가능 명령어, 데이터 구조, 또는 프로그램 모듈과 같은 변조된 데이터 신호의 기타 데이터를 포함할 수 있다.Meanwhile, embodiments of the present disclosure may also be implemented in the form of a recording medium containing instructions executable by a computer, such as program modules executed by a computer. Computer-readable media can be any available media that can be accessed by a computer and includes both volatile and non-volatile media, removable and non-removable media. Additionally, computer-readable media may include computer storage media and communication media. Computer storage media includes both volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules, or other data. Communication media typically may include computer readable instructions, data structures, or other data, such as modulated data signals, or program modules.
또한, 컴퓨터에 의해 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적 저장매체'는 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다. 예로, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.Additionally, computer-readable storage media may be provided in the form of non-transitory storage media. Here, 'non-transitory storage medium' simply means that it is a tangible device and does not contain signals (e.g. electromagnetic waves). This term refers to cases where data is semi-permanently stored in a storage medium and temporary storage media. It does not distinguish between cases where it is stored as . For example, a 'non-transitory storage medium' may include a buffer where data is temporarily stored.
일 실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품(예: 다운로더블 앱(downloadable app))의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.According to one embodiment, methods according to various embodiments disclosed in this document may be provided and included in a computer program product. Computer program products are commodities and can be traded between sellers and buyers. A computer program product may be distributed in the form of a machine-readable storage medium (e.g. compact disc read only memory (CD-ROM)) or through an application store or between two user devices (e.g. smartphones). It may be distributed in person or online (e.g., downloaded or uploaded). In the case of online distribution, at least a portion of the computer program product (e.g., a downloadable app) is stored on a machine-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or a relay server. It can be temporarily stored or created temporarily.
전술한 본 개시의 설명은 예시를 위한 것이며, 본 개시가 속하는 기술분야의 통상의 지식을 가진 자는 본 개시의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The foregoing description of the present disclosure is for illustrative purposes, and a person skilled in the art to which the present disclosure pertains will understand that the present disclosure can be easily modified into another specific form without changing its technical idea or essential features. will be. Therefore, the embodiments described above should be understood in all respects as illustrative and not restrictive. For example, each component described as unitary may be implemented in a distributed manner, and similarly, components described as distributed may also be implemented in a combined form.
본 개시의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 개시의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present disclosure is indicated by the claims described below rather than the detailed description above, and all changes or modified forms derived from the meaning and scope of the claims and their equivalent concepts should be construed as being included in the scope of the present disclosure. do.
Claims (20)
제1 카메라를 이용하여 적어도 하나의 라벨을 포함하는 객체의 제1 이미지를 획득하는 단계(S210);
상기 제1 이미지를 제1 AI 모델에 적용함으로써, 상기 제1 이미지 내에서 상기 적어도 하나의 라벨에 대응하는 영역을 관심 영역으로 식별하는 단계(S220);
상기 제1 이미지를 제2 AI 모델에 적용함으로써, 상기 객체의 3차원 형상 타입에 관한 데이터를 획득하는 단계(S230);
상기 관심 영역으로 식별된 상기 적어도 하나의 라벨에 대응하는 영역 및 상기 객체의 3차원 형상 타입에 관한 데이터에 기초하여, 상기 객체, 상기 적어도 하나의 라벨 및 상기 제1 카메라 중 적어도 하나와 관련된 3차원 파라미터 값들을 획득하는 단계(S240);
상기 3차원 파라미터 값들에 기초하여, 상기 적어도 하나의 라벨의 굴곡 형상을 추정하는 단계(S250); 및
상기 적어도 하나의 라벨에 대한 원근 변환(perspective transformation)을 수행함으로써, 상기 적어도 하나의 라벨의 굴곡 형상이 평평하게 된 플랫(flat) 라벨 이미지를 획득하는 단계(S260)를 포함하는, 방법.
In a method for an electronic device to process an image,
Obtaining a first image of an object including at least one label using a first camera (S210);
Identifying a region corresponding to the at least one label within the first image as a region of interest by applying the first image to a first AI model (S220);
Obtaining data about the three-dimensional shape type of the object by applying the first image to a second AI model (S230);
A three-dimensional image associated with at least one of the object, the at least one label, and the first camera based on data regarding a three-dimensional shape type of the object and a region corresponding to the at least one label identified as the region of interest. Obtaining parameter values (S240);
Estimating a curved shape of the at least one label based on the 3D parameter values (S250); and
A method comprising obtaining a flat label image in which the curved shape of the at least one label is flattened by performing perspective transformation on the at least one label (S260).
상기 객체의 3차원 형상과 관련된 높이 값 및 반지름 값, 상기 객체의 표면의 관심 영역의 각도 값, 3차원 기하학적 변환을 위한 이동(translation) 값 및 회전(rotation) 값, 및 상기 카메라의 초점 거리 값 중 적어도 하나를 포함하는 것인, 방법.
The method of claim 1, wherein the three-dimensional parameter values are:
Height and radius values related to the three-dimensional shape of the object, angle values of the region of interest on the surface of the object, translation and rotation values for three-dimensional geometric transformation, and focal length values of the camera. A method comprising at least one of the following:
상기 제1 AI 모델은, 이미지 내에서 라벨에 대응하는 영역을 관심 영역으로 추론하도록 훈련된 인공지능 모델이고,
상기 제2 AI 모델은, 이미지 내 객체의 3차원 형상 타입을 추론하도록 훈련된 인공지능 모델인 것인, 방법.
According to any one of claims 1 and 2,
The first AI model is an artificial intelligence model trained to infer the area corresponding to the label in the image as the area of interest,
The method wherein the second AI model is an artificial intelligence model trained to infer the three-dimensional shape type of the object in the image.
상기 객체의 3차원 형상 타입에 관한 데이터를 획득하는 단계는,
사용자로부터 상기 객체의 3차원 형상 타입에 관련된 사용자 입력을 수신하는 단계; 및
복수의 3차원 형상 타입 중에서 상기 사용자 입력에 대응하는 3차원 형상 타입에 가중치를 적용하여 상기 객체의 3차원 형상 타입을 식별하는 단계를 포함하는, 방법.
According to any one of claims 1 to 3,
The step of acquiring data about the three-dimensional shape type of the object,
Receiving a user input related to a three-dimensional shape type of the object from a user; and
A method comprising: identifying the 3D shape type of the object by applying a weight to the 3D shape type corresponding to the user input among a plurality of 3D shape types.
상기 적어도 하나의 라벨에 대응하는 영역을 상기 관심 영역으로 식별하는 단계는,
상기 적어도 하나의 라벨에 대응하는 영역을 나타내는 제1 키포인트들을 식별하는 단계를 포함하고,
상기 3차원 파라미터 값들을 획득하는 단계는,
상기 객체의 3차원 형상 타입에 대응하는 가상 객체 및 상기 가상 객체의 3차원 파라미터 초기값들을 획득하는 단계;
상기 제1 키포인트들에 기초하여, 상기 가상 객체의 3차원 파라미터 초기값들을 조정하는 단계; 및
상기 조정된 3차원 파라미터 초기 값들을 상기 3차원 파라미터 값들로 획득하는 단계를 포함하는, 방법.
According to any one of claims 1 to 4,
Identifying a region corresponding to the at least one label as the region of interest includes:
Identifying first keypoints representing a region corresponding to the at least one label,
The step of acquiring the three-dimensional parameter values is,
Obtaining a virtual object corresponding to a 3D shape type of the object and initial values of 3D parameters of the virtual object;
adjusting initial values of 3D parameters of the virtual object based on the first keypoints; and
A method comprising obtaining the adjusted three-dimensional parameter initial values as the three-dimensional parameter values.
상기 제1 키포인트들에 기초하여, 상기 가상 객체의 3차원 파라미터의 초기값들을 조정하는 단계는,
상기 가상 객체의 가상 라벨에 대응하는 영역을 나타내는 제2 키포인트들을 설정하는 단계; 및
상기 제2 키포인트들이 상기 제1 키포인트들에 정합하도록 상기 가상 객체의 3차원 파라미터 초기값들을 조정하는 단계를 포함하는, 방법.
According to clause 5,
The step of adjusting initial values of 3D parameters of the virtual object based on the first keypoints includes:
setting second keypoints indicating an area corresponding to the virtual label of the virtual object; and
and adjusting initial values of three-dimensional parameters of the virtual object so that the second keypoints match the first keypoints.
상기 플랫 라벨 이미지로부터 상기 객체와 관련된 정보를 획득하는 단계는,
상기 플랫 라벨 이미지에 광학 문자 인식(Optical character recognition; OCR)을 적용하는 단계를 포함하는, 방법.
According to any one of claims 1 to 6,
The step of obtaining information related to the object from the flat label image,
A method comprising applying optical character recognition (OCR) to the flat label image.
상기 전자 장치는,
상기 제1 카메라보다 화각이 넓은 제2 카메라를 더 포함하는, 방법.
According to any one of claims 1 to 7,
The electronic device is,
The method further includes a second camera having a wider angle of view than the first camera.
상기 객체의 3차원 형상 타입에 관한 데이터를 획득하는 단계는,
상기 제2 카메라를 통해 상기 객체의 제2 이미지를 획득하는 단계; 및
상기 제2 이미지를 상기 제2 AI 모델에 더 적용함으로써, 상기 객체의 3차원 형상 타입에 관련된 정보를 획득하는 단계를 포함하는, 방법.
According to clause 8,
The step of acquiring data about the three-dimensional shape type of the object,
acquiring a second image of the object through the second camera; and
Obtaining information related to the three-dimensional shape type of the object by further applying the second image to the second AI model.
상기 방법은,
상기 제1 카메라를 이용하여 실시간으로 촬영되는 상기 제1 이미지를 상기 제1 AI 모델에 적용하여 상기 관심 영역의 신뢰도를 획득하는 단계;
상기 제2 카메라를 이용하여 실시간으로 촬영되는 제2 이미지를 상기 제2 AI 모델에 적용하여 상기 객체의 3차원 형상 타입의 신뢰도를 획득하는 단계; 및
상기 객체의 3차원 형상 타입의 신뢰도 및 상기 관심 영역의 신뢰도 각각의 임계 값에 기초하여, 상기 제1 이미지 및 상기 제2 이미지를 각각 캡쳐하는 단계를 더 포함하는, 방법.
According to clause 8,
The above method is,
Obtaining reliability of the region of interest by applying the first image captured in real time using the first camera to the first AI model;
Obtaining reliability of the three-dimensional shape type of the object by applying a second image captured in real time using the second camera to the second AI model; and
The method further includes capturing the first image and the second image, respectively, based on threshold values of the reliability of the three-dimensional shape type of the object and the reliability of the region of interest.
상기 방법은,
상기 플랫 라벨 이미지 또는 상기 플랫 라벨 이미지로부터 획득된 정보에 기초하여, 데이터베이스 내에서 일치하는 데이터를 검색하는 단계; 및
상기 검색 결과를 표시하는 단계를 더 포함하되,
상기 데이터베이스는, 상기 전자 장치가 이전에 획득한 또다른 플랫 라벨 이미지들 및 또다른 객체들과 관련된 정보가 저장된 것인, 방법.
According to clause 10,
The above method is,
Based on the flat label image or information obtained from the flat label image, searching for matching data in a database; and
Further comprising displaying the search results,
The method of claim 1, wherein the database stores information related to other flat label images and other objects previously acquired by the electronic device.
제1 카메라(2200);
하나 이상의 인스트럭션을 저장하는 메모리(2300); 및
상기 메모리에 저장된 상기 하나 이상의 인스트럭션을 실행하는 적어도 하나의 프로세서(2400)를 포함하고,
상기 적어도 하나의 프로세서(2400)는, 상기 하나 이상의 인스트럭션을 실행함으로써,
제1 카메라(2200)를 이용하여 적어도 하나의 라벨을 포함하는 3차원의 객체의 제1 이미지를 획득하고,
상기 제1 이미지를 제1 AI 모델에 적용함으로써, 상기 제1 이미지 내에서 상기 적어도 하나의 라벨에 대응하는 영역을 관심 영역으로 식별하고,
상기 제1 이미지를 제2 AI 모델에 적용함으로써, 상기 객체의 3차원 형상 타입에 관한 데이터를 획득하고,
상기 관심 영역으로 식별된 상기 적어도 하나의 라벨에 대응하는 영역 및 상기 객체의 3차원 형상 타입에 관한 데이터에 기초하여, 상기 객체, 상기 적어도 하나의 라벨 및 상기 제1 카메라와 중 적어도 하나와 관련된 3차원 파라미터를 획득하고,
상기 3차원 파라미터에 기초하여, 상기 적어도 하나의 라벨의 굴곡 형상을 추정하고,
상기 적어도 하나의 라벨에 대한 원근 변환(perspective transformation)을 수행함으로써, 상기 적어도 하나의 라벨의 굴곡 형상이 평평하게 된 플랫(flat) 라벨 이미지를 획득하는, 전자 장치.
In an electronic device that processes images,
first camera 2200;
A memory 2300 that stores one or more instructions; and
At least one processor (2400) executing the one or more instructions stored in the memory,
The at least one processor 2400 executes the one or more instructions,
Obtaining a first image of a three-dimensional object including at least one label using the first camera 2200,
By applying the first image to the first AI model, an area corresponding to the at least one label within the first image is identified as a region of interest,
By applying the first image to a second AI model, data regarding the three-dimensional shape type of the object is obtained,
3 associated with at least one of the object, the at least one label, and the first camera, based on data regarding a three-dimensional shape type of the object and a region corresponding to the at least one label identified as the region of interest. Obtain the dimension parameters,
Based on the three-dimensional parameters, estimate a curved shape of the at least one label,
An electronic device that obtains a flat label image in which the curved shape of the at least one label is flattened by performing perspective transformation on the at least one label.
상기 객체의 3차원 형상과 관련된 높이 값 및 반지름 값, 상기 객체의 표면의 관심 영역의 각도 값, 3차원 기하학적 변환을 위한 이동(translation) 값 및 회전(rotation) 값, 및 상기 카메라의 초점 거리 값 중 적어도 하나를 포함하는 것인, 전자 장치.
The method of claim 12, wherein the three-dimensional parameter values are:
Height and radius values related to the three-dimensional shape of the object, angle values of the region of interest on the surface of the object, translation and rotation values for three-dimensional geometric transformation, and focal length values of the camera. An electronic device comprising at least one of:
상기 제1 AI 모델은, 이미지 내에서 라벨에 대응하는 영역을 관심 영역으로 추론하도록 훈련된 인공지능 모델이고,
상기 제2 AI 모델은, 이미지 내 객체의 3차원 형상 타입을 추론하도록 훈련된 인공지능 모델인 것인, 전자 장치.
According to clause 12,
The first AI model is an artificial intelligence model trained to infer the area corresponding to the label in the image as the area of interest,
The second AI model is an artificial intelligence model trained to infer the three-dimensional shape type of the object in the image.
상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써,
사용자로부터 상기 객체의 3차원 형상 타입에 관련된 사용자 입력을 수신하고,
복수의 3차원 형상 타입 중에서 상기 사용자 입력에 대응하는 3차원 형상 타입에 가중치를 적용하여 상기 객체의 3차원 형상 타입을 식별하는, 전자 장치.
According to clause 12,
The at least one processor executes the one or more instructions,
Receiving user input related to the three-dimensional shape type of the object from the user,
An electronic device that identifies the 3D shape type of the object by applying a weight to the 3D shape type corresponding to the user input among a plurality of 3D shape types.
상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써,
상기 적어도 하나의 라벨에 대응하는 영역을 나타내는 제1 키포인트들을 식별하고,
상기 객체의 3차원 형상 타입에 대응하는 가상 객체 및 상기 가상 객체의 3차원 파라미터의 초기값들을 획득하고,
상기 제1 키포인트들에 기초하여, 상기 가상 객체의 3차원 파라미터의 초기값들을 조정하고,
상기 조정된 3차원 파라미터의 값들을 상기 3차원 파라미터의 값들로 획득하는, 전자 장치.
According to clause 12,
The at least one processor executes the one or more instructions,
Identifying first keypoints representing a region corresponding to the at least one label,
Obtain initial values of a virtual object corresponding to the three-dimensional shape type of the object and three-dimensional parameters of the virtual object,
Based on the first keypoints, adjust initial values of 3D parameters of the virtual object,
An electronic device that obtains the values of the adjusted three-dimensional parameters as values of the three-dimensional parameters.
상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써,
상기 가상 객체의 가상 라벨에 대응하는 영역을 나타내는 제2 키포인트들을 설정하고,
상기 제2 키포인트들이 상기 제1 키포인트들에 정합하도록 조정함으로써, 상기 가상 객체의 3차원 파라미터의 초기값들이 상기 객체의 3차원 파라미터의 정답 값에 근사하도록 조정하는, 전자 장치.
According to clause 16,
The at least one processor executes the one or more instructions,
Setting second keypoints indicating an area corresponding to the virtual label of the virtual object,
By adjusting the second keypoints to match the first keypoints, the electronic device adjusts initial values of the 3D parameters of the virtual object to approximate correct values of the 3D parameters of the object.
상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써,
상기 플랫 라벨 이미지에 광학 문자 인식(Optical character recognition; OCR)을 적용하는, 전자 장치.
According to clause 12,
The at least one processor executes the one or more instructions,
An electronic device that applies optical character recognition (OCR) to the flat label image.
상기 전자 장치는,
상기 제1 카메라보다 화각이 넓은 제2 카메라를 더 포함하고,
상기 적어도 하나의 프로세서는, 상기 하나 이상의 인스트럭션을 실행함으로써,
상기 제2 카메라를 통해 상기 객체의 제2 이미지를 획득하고,
상기 제2 이미지를 상기 제2 AI 모델에 더 적용함으로써, 상기 객체의 3차원 형상 타입에 관련된 정보를 획득하는, 전자 장치.
According to clause 12,
The electronic device is,
Further comprising a second camera having a wider angle of view than the first camera,
The at least one processor executes the one or more instructions,
Obtaining a second image of the object through the second camera,
An electronic device that obtains information related to the three-dimensional shape type of the object by further applying the second image to the second AI model.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/KR2023/005164 WO2023204548A1 (en) | 2022-04-20 | 2023-04-17 | Electronic device for processing image, and method for operating same |
US18/137,266 US20230343061A1 (en) | 2022-04-20 | 2023-04-20 | Electronic device for processing image, and operation method of electronic device |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220049149 | 2022-04-20 | ||
KR20220049149 | 2022-04-20 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230149705A true KR20230149705A (en) | 2023-10-27 |
Family
ID=88514333
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220133618A KR20230149705A (en) | 2022-04-20 | 2022-10-17 | Electronic device for processing image and method of operating the same |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20230149705A (en) |
-
2022
- 2022-10-17 KR KR1020220133618A patent/KR20230149705A/en unknown
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108710847B (en) | Scene recognition method and device and electronic equipment | |
AU2019268184B2 (en) | Precise and robust camera calibration | |
WO2021036059A1 (en) | Image conversion model training method, heterogeneous face recognition method, device and apparatus | |
US9036905B2 (en) | Training classifiers for deblurring images | |
CN114333078B (en) | Living body detection method, living body detection device, electronic equipment and storage medium | |
AU2018202767B2 (en) | Data structure and algorithm for tag less search and svg retrieval | |
US10554957B2 (en) | Learning-based matching for active stereo systems | |
CN111507333B (en) | Image correction method and device, electronic equipment and storage medium | |
US20210271857A1 (en) | Method and apparatus for identity verification, electronic device, computer program, and storage medium | |
JP2012174222A (en) | Image recognition program, method, and device | |
CN111104813A (en) | Two-dimensional code image key point detection method and device, electronic equipment and storage medium | |
JP2022550195A (en) | Text recognition method, device, equipment, storage medium and computer program | |
CN114241003A (en) | All-weather lightweight high-real-time sea surface ship detection and tracking method | |
CN113837257A (en) | Target detection method and device | |
WO2018120082A1 (en) | Apparatus, method and computer program product for deep learning | |
CN113516665A (en) | Training method of image segmentation model, image segmentation method, device and equipment | |
CN113436222A (en) | Image processing method, image processing apparatus, electronic device, and storage medium | |
CN117252791A (en) | Image processing method, device, electronic equipment and storage medium | |
CN114511702A (en) | Remote sensing image segmentation method and system based on multi-scale weighted attention | |
KR20230149705A (en) | Electronic device for processing image and method of operating the same | |
US20230343061A1 (en) | Electronic device for processing image, and operation method of electronic device | |
KR20240109156A (en) | Electronic device for processing image and method of operating the same | |
US20230127555A1 (en) | Grading apparatus and method based on digital data | |
WO2023056833A1 (en) | Background picture generation method and apparatus, image fusion method and apparatus, and electronic device and readable medium | |
WO2024039362A1 (en) | Methods and systems for text recognition with image preprocessing |