KR102661590B1 - 이미지 내에서 객체를 인식하기 위한 장치 및 방법 - Google Patents

이미지 내에서 객체를 인식하기 위한 장치 및 방법 Download PDF

Info

Publication number
KR102661590B1
KR102661590B1 KR1020180038752A KR20180038752A KR102661590B1 KR 102661590 B1 KR102661590 B1 KR 102661590B1 KR 1020180038752 A KR1020180038752 A KR 1020180038752A KR 20180038752 A KR20180038752 A KR 20180038752A KR 102661590 B1 KR102661590 B1 KR 102661590B1
Authority
KR
South Korea
Prior art keywords
image
electronic device
camera
information
view
Prior art date
Application number
KR1020180038752A
Other languages
English (en)
Other versions
KR20190115722A (ko
Inventor
김상헌
정인형
백종우
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020180038752A priority Critical patent/KR102661590B1/ko
Priority to PCT/KR2019/003548 priority patent/WO2019194455A1/en
Priority to US16/366,660 priority patent/US11017263B2/en
Priority to CN201980022475.1A priority patent/CN111919222B/zh
Priority to EP19782109.3A priority patent/EP3746940A4/en
Publication of KR20190115722A publication Critical patent/KR20190115722A/ko
Application granted granted Critical
Publication of KR102661590B1 publication Critical patent/KR102661590B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/10Image acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5854Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using shape and object relationship
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/10Image acquisition
    • G06V10/12Details of acquisition arrangements; Constructional details thereof
    • G06V10/14Optical characteristics of the device performing the acquisition or on the illumination arrangements
    • G06V10/147Details of sensors, e.g. sensor lenses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/45Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from two or more image sensors being of different type or operating in different modes, e.g. with a CMOS sensor for moving images in combination with a charge-coupled device [CCD] for still images

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Vascular Medicine (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Studio Devices (AREA)
  • Library & Information Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

본 개시의 다양한 실시예들에 따른 전자 장치(electronic device)는, 제1 외면(external surface)을 포함하는 하우징; 상기 제1 외면의 제1 부분을 통해 노출되고, 제1 시야를 포함하는 제1 이미징 장치; 상기 제1 부분에 인접한 제2 부분을 통해 노출되고, 상기 제1 시야보다 넓은 제2 시야를 포함하는 제2 이미징 장치; 무선 통신 회로; 상기 제1 이미징 장치, 상기 제2 이미징 장치, 및 상기 무선 통신 회로에 작동적으로 연결되는 적어도 하나의 프로세서; 및 상기 적어도 하나의 프로세서에 작동적으로 연결되고, 실행될 때 상기 적어도 하나의 프로세서를 통해 동작하도록 하는 명령어들을 저장하는 메모리를 포함하고, 상기 메모리는, 상기 적어도 하나의 프로세서를 통해, 제1 시점으로부터 상기 제1 이미징 장치를 이용하여, 제1 객체 및 제2 객체를 포함하는 제1 이미지를 생성하고, 상기 제1 시점으로부터 상기 제2 이미징 장치를 이용하여, 상기 제1 이미지의 생성과 실질적으로 동시에, 상기 제1 객체 및 제2 객체를 포함하는 제2 이미지를 생성하고, 상기 무선 통신 회로를 이용하여, 외부 서버에게 상기 제1 이미지 및 상기 제2 이미지를 송신하고, 상기 제1 객체 및 상기 제2 객체에 대한 객체 인식 정보를 수신하고, 상기 전자 장치의 움직임을 감지하고, 상기 제1 시점과 상이한 제2 시점으로부터, 상기 제2 이미징 장치를 이용하여, 상기 제2 객체를 포함하는 제4 이미지를 생성하고, 상기 정보 및/또는 상기 검출된 움직임에 적어도 부분적으로 기반하여, 상기 제4 이미지로부터 객체 이미지를 추출하고, 상기 객체 이미지는 상기 제4 이미지보다 크기가 작고, 상기 무선 통신 회로를 이용하여, 상기 외부 서버로 상기 객체 이미지 및 상기 객체 인식 정보를 전송할 수 있다.

Description

이미지 내에서 객체를 인식하기 위한 장치 및 방법{APPARATUS AND METHOD FOR RECOGNIZING OBJECT IN IMAGE}
본 개시의 다양한 실시예들은 이미지 내에서 객체를 인식하기 위한 장치 및 방법에 관한 것이다.
기술(technology)의 발달(development)로 인하여, 다양한 종류의 이미지 (image)들에 대한 요구가 증가하고 있다. 이러한 이미지들을 제공하기 위해, 복수의 이미지 센서(image sensor)들을 포함하는 전자 장치(electronic device)가 보급되고 있다.
전자 장치는 사용자의 편의성을 높이기 위해 카메라를 이용한 객체 인식 서비스를 제공할 수 있다. 예를 들어, 전자 장치는 카메라를 통해 획득한 프리뷰 이미지에 기반하여 객체를 인식하고, 인식된 객체와 관련된 검색 서비스를 제공할 수 있다.
전자 장치는 넓은 시야(field of view, FOV)에 상응하고, 저 배율의 프리뷰 이미지를 제공하기 위한 제1 카메라 및 좁은 시야에 상응하고, 고 배율의 프리뷰 이미지를 제공하기 위한 제2 카메라를 포함하는 카메라 모듈을 포함할 수 있다. 사용자가 프리뷰 이미지를 확대하는 경우, 전자 장치는 제1 카메라로부터 제2 카메라로 전환함으로써, 확대된 프리뷰 이미지를 제공할 수 있다. 이에 따라, 전자 장치는 확대된 프리뷰에 기반한 트래킹 동작을 수행하는 경우, 전자 장치의 움직임 또는 객체의 움직임에 대한 변화에 민감해지므로 트래킹 엔진의 호출 주기가 높아지는 부하가 발생하므로, 전자 장치의 부하를 개선하기 위한 방안이 요구된다.
후술되는 본 개시의 다양한 실시예들은, 전자 장치의 부하를 감소시키고 객체 인식을 위한 서버와의 데이터 소모를 감소시키기 위해, 제1 카메라에 기반하여 인식된 객체에 대한 정보를 이용하여 제2 카메라에 기반하여 획득된 객체의 인식을 수행하기 위한 전자 장치 및 방법을 제공할 수 있다.
본 개시의 다양한 실시예들에 따른 전자 장치(electronic device)는, 제1 외면(external surface)을 포함하는 하우징; 상기 제1 외면의 제1 부분을 통해 노출되고, 제1 시야를 포함하는 제1 이미징 장치; 상기 제1 부분에 인접한 제2 부분을 통해 노출되고, 상기 제1 시야보다 넓은 제2 시야를 포함하는 제2 이미징 장치; 무선 통신 회로; 상기 제1 이미징 장치, 상기 제2 이미징 장치, 및 상기 무선 통신 회로에 작동적으로 연결되는 적어도 하나의 프로세서; 및 상기 적어도 하나의 프로세서에 작동적으로 연결되고, 실행될 때 상기 적어도 하나의 프로세서를 통해 동작하도록 하는 명령어들을 저장하는 메모리를 포함하고, 상기 메모리는, 상기 적어도 하나의 프로세서를 통해, 제1 시점으로부터 상기 제1 이미징 장치를 이용하여, 제1 객체 및 제2 객체를 포함하는 제1 이미지를 생성하고, 상기 제1 시점으로부터 상기 제2 이미징 장치를 이용하여, 상기 제1 이미지의 생성과 실질적으로 동시에, 상기 제1 객체 및 제2 객체를 포함하는 제2 이미지를 생성하고, 상기 무선 통신 회로를 이용하여, 외부 서버에게 상기 제1 이미지 및 상기 제2 이미지를 송신하고, 상기 제1 객체 및 상기 제2 객체에 대한 객체 인식 정보를 수신하고, 상기 전자 장치의 움직임을 감지하고, 상기 제1 시점과 상이한 제2 시점으로부터, 상기 제2 이미징 장치를 이용하여, 상기 제2 객체를 포함하는 제4 이미지를 생성하고, 상기 정보 및/또는 상기 검출된 움직임에 적어도 부분적으로 기반하여, 상기 제4 이미지로부터 객체 이미지를 추출하고, 상기 객체 이미지는 상기 제4 이미지보다 크기가 작고, 상기 무선 통신 회로를 이용하여, 상기 외부 서버로 상기 객체 이미지 및 상기 객체 인식 정보를 전송할 수 있다.
본 개시의 다양한 실시예들에 따른 전자 장치의 동작 방법은, 제1 시점에, 제1 이미징 장치를 이용하여, 제1 객체 및 제2 객체를 포함하는 제1 이미지를 생성하는 동작과, 상기 제1 시점에, 제2 이미징 장치를 이용하여, 상기 제1 이미지의 생성과 실질적으로 동시에, 상기 제1 객체를 포함하는 제2 이미지를 생성하는 동작과, 외부 서버에게, 상기 제1 이미지 및 상기 제2 이미지를 송신하는 동작과, 상기 외부 서버로부터, 상기 제1 객체 및 상기 제2 객체에 대한 객체 인식 정보를 수신하는 동작과, 상기 전자 장치의 움직임을 감지하는 동작과, 상기 제1 시점과 상이한 제2 시점에, 상기 제2 이미징 장치를 이용하여, 상기 제2 객체를 포함하는 제4 이미지를 생성하는 동작과, 상기 정보 및/또는 상기 검출된 움직임에 적어도 부분적으로 기반하여, 상기 제4 이미지로부터 객체 이미지를 추출하는 동작과, 상기 객체 이미지는, 상기 제4 이미지보다 크기가 작고, 상기 외부 서버에게 상기 객체 이미지 및 상기 객체 인식 정보를 전송하는 동작을 포함할 수 있다. 상기 제1 이미징 장치는, 제1 시야를 포함하고, 상기 제2 이미징 장치는, 상기 제1 시야보다 좁은 제2 시야를 포함할 수 있다.
본 개시의 다양한 실시예들에 따른 전자 장치(electronic device)는, 명령어들(instructions)을 저장하는 메모리; 제1 시야(field of view, FOV)에 상응하는 제1 카메라; 상기 제1 시야보다 좁은 제2 시야에 상응하는 제2 카메라; 센서 모듈; 및 프로세서를 포함하고, 상기 프로세서는, 상기 제1 카메라를 이용하여, 상기 제1 시야에 상응하는 제1 영역과 관련된 제1 이미지를 획득하고, 상기 제1 이미지는 제1 객체 및 제2 객체를 포함하고, 상기 제2 카메라를 이용하여, 상기 제2 시야에 상응하고, 상기 제1 영역에 포함되는 제2 영역과 관련된 제2 이미지를 획득하고, 상기 제2 이미지는 상기 제2 객체를 포함하고, 상기 제1 이미지 및 제2 이미지에 기반하여, 상기 제1 영역과 상기 제2 영역 사이의 상대적 위치에 대한 제1 정보를 획득하고, 상기 제2 카메라를 이용하여, 상기 전자 장치의 움직임에 따라 상기 제2 영역으로부터 변경된 제3 영역에 상응하는 제4 이미지를 획득하고, 상기 전자 장치의 움직임에 대한 제2 정보 및 상기 제1 정보에 기반하여, 상기 제4 이미지에 포함되고, 상기 제2 객체를 제4 이미지로부터 식별하고, 상기 제1 이미지의 획득에 기반하여 인식된 상기 제2 객체에 대한 정보에 기반하여 상기 제2 객체에 대한 정보를 획득하고, 상기 제2 객체에 대한 정보를 상기 메모리에 저장할 수 있다.
본 개시의 다양한 실시예들에 따른 전자 장치 및 그 동작 방법은, 광각 카메라로부터 획득한 이미지의 인식 정보를 이용하여 객체 인식을 수행함으로써, 객체 인식 엔진의 호출 주기를 감소시켜 전자 장치의 부하를 감소시킬 수 있다.
본 개시의 다양한 실시예들에 따른 전자 장치 및 그 동작 방법은, 광각 카메라로부터 획득한 이미지의 인식 정보를 이용하여 객체 인식을 수행함으로써, 서버와의 데이터 소모를 감소시키고, 데이터 전송에 따른 인식 지연을 감소시킬 수 있다.
본 개시에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 개시(disclosure)의 다양한 실시예들에 따른, 네트워크 환경 내의 전자 장치의 블럭도이다.
도 2는 본 개시의 다양한 실시예들에 따른 전자 장치의 기능적 블록도를 도시한다.
도 3a는 본 개시의 다양한 실시예들에 따른 전자 장치의 제1 카메라 및 제2 카메라에 의해 획득되는 프리뷰 이미지의 영역을 도시한다.
도 3b는 본 개시의 다양한 실시예들에 따른 전자 장치의 제1 카메라 및 제2 카메라에 의해 획득되는 각각의 프리뷰 이미지를 도시한다.
도 4a는 본 개시의 다양한 실시예들에 따른 전자 장치의 객체 인식을 위한 동작 순서를 도시한다.
도 4b는 본 개시의 다양한 실시예들에 따른 전자 장치의 이동에 따라 변화되는 프리뷰 이미지의 개념도를 도시한다.
도 4c는 본 개시의 다양한 실시예들에 따른 전자 장치의 이동에 따라 변화되는 프리뷰 이미지의 예를 도시한다.
도 5a는 본 개시의 다양한 실시예들에 따른 전자 장치의 객체 인식을 위한 동작 순서를 도시한다.
도 5b는 본 개시의 다양한 실시예들에 따른 전자 장치의 움직임 이전에 수신되는 이미지를 도시한다.
도 5c는 본 개시의 다양한 실시예들에 따른 전자 장치의 움직임 이후에 수신되는 이미지를 도시한다.
도 6은 본 개시의 다양한 실시예들에 따른 제2 텔레 이미지를 획득하기 위한 전자 장치의 동작 순서를 도시한다.
도 7은 본 개시의 다양한 실시예들에 따른 제2 텔레 이미지 내에서 제2 객체를 식별하기 위한 전자 장치의 동작 순서를 도시한다.
도 8은 본 개시의 다양한 실시예들에 따른 전자 장치의 제1 와이드 이미지에 포함되는 제1 객체에 대한 정보를 획득하기 위한 동작 순서를 도시한다.
도 9는 본 개시의 다양한 실시예들에 따른 전자 장치의 제1 와이드 이미지의 인식 정보 내에 제2 텔레 이미지가 포함되는지 여부를 결정하기 위한 동작 순서를 도시한다.
도 10a는 본 개시의 다양한 실시예들에 따른 제2 텔레 이미지를 제1 와이드 이미지의 인식 정보에 매핑하기 위한 전자 장치의 동작 순서를 도시한다.
도 10b는 본 개시의 다양한 실시예들에 따른 제2 텔레 이미지와 제1 와이드 이미지의 매핑의 예를 도시한다.
도 11a는 본 개시의 다양한 실시예들에 따른 전자 장치의 제1 와이드 이미지의 인식 정보 내에 제2 텔레 이미지가 포함되는지 여부를 결정하기 위한 동작 순서를 도시한다.
도 11b는 본 개시의 다양한 실시예들에 따른 전자 장치의 제2 카메라에 의해 획득되는 제2 텔레 이미지의 예를 도시한다.
도 1은, 다양한 실시예들에 따른, 네트워크 환경(100) 내의 전자 장치(101)의 블럭도이다. 도 1을 참조하면, 네트워크 환경(100)에서 전자 장치(101)는 제 1 네트워크(198)(예: 근거리 무선 통신 네트워크)를 통하여 전자 장치(102)와 통신하거나, 또는 제 2 네트워크(199)(예: 원거리 무선 통신 네트워크)를 통하여 전자 장치(104) 또는 서버(108)와 통신할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 서버(108)를 통하여 전자 장치(104)와 통신할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 프로세서(120), 메모리(130), 입력 장치(150), 음향 출력 장치(155), 표시 장치(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈(188), 배터리(189), 통신 모듈(190), 가입자 식별 모듈(196), 또는 안테나 모듈(197)을 포함할 수 있다. 어떤 실시예에서는, 전자 장치(101)에는, 이 구성요소들 중 적어도 하나(예: 표시 장치(160) 또는 카메라 모듈(180))가 생략되거나, 하나 이상의 다른 구성 요소가 추가될 수 있다. 어떤 실시예에서는, 이 구성요소들 중 일부들은 하나의 통합된 회로로 구현될 수 있다. 예를 들면, 센서 모듈(176)(예: 지문 센서, 홍채 센서, 또는 조도 센서)은 표시 장치(160)(예: 디스플레이)에 임베디드된 채 구현될 수 있다
프로세서(120)는, 예를 들면, 소프트웨어(예: 프로그램(140))를 실행하여 프로세서(120)에 연결된 전자 장치(101)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)을 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일 실시예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(120)는 다른 구성요소(예: 센서 모듈(176) 또는 통신 모듈(190))로부터 수신된 명령 또는 데이터를 휘발성 메모리(132)에 로드하고, 휘발성 메모리(132)에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리(134)에 저장할 수 있다. 일 실시예에 따르면, 프로세서(120)는 메인 프로세서(121)(예: 중앙 처리 장치 또는 어플리케이션 프로세서), 및 이와는 독립적으로 또는 함께 운영 가능한 보조 프로세서(123)(예: 그래픽 처리 장치, 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 추가적으로 또는 대체적으로, 보조 프로세서(123)은 메인 프로세서(121)보다 저전력을 사용하거나, 또는 지정된 기능에 특화되도록 설정될 수 있다. 보조 프로세서(123)는 메인 프로세서(121)와 별개로, 또는 그 일부로서 구현될 수 있다.
보조 프로세서(123)는, 예를 들면, 메인 프로세서(121)가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서(121)를 대신하여, 또는 메인 프로세서(121)가 액티브(예: 어플리케이션 실행) 상태에 있는 동안 메인 프로세서(121)와 함께, 전자 장치(101)의 구성요소들 중 적어도 하나의 구성요소(예: 표시 장치(160), 센서 모듈(176), 또는 통신 모듈(190))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일 실시예에 따르면, 보조 프로세서(123)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성 요소(예: 카메라 모듈(180) 또는 통신 모듈(190))의 일부로서 구현될 수 있다.
메모리(130)는, 전자 장치(101)의 적어도 하나의 구성요소(예: 프로세서(120) 또는 센서모듈(176))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어(예: 프로그램(140)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(130)는, 휘발성 메모리(132) 또는 비휘발성 메모리(134)를 포함할 수 있다.
프로그램(140)은 메모리(130)에 소프트웨어로서 저장될 수 있으며, 예를 들면, 운영 체제(142), 미들 웨어(144) 또는 어플리케이션(146)을 포함할 수 있다.
입력 장치(150)는, 전자 장치(101)의 구성요소(예: 프로세서(120))에 사용될 명령 또는 데이터를 전자 장치(101)의 외부(예: 사용자)로부터 수신할 수 있다. 입력 장치(150)은, 예를 들면, 마이크, 마우스, 또는 키보드를 포함할 수 있다.
음향 출력 장치(155)는 음향 신호를 전자 장치(101)의 외부로 출력할 수 있다. 음향 출력 장치(155)는, 예를 들면, 스피커 또는 리시버를 포함할 수 있다. 스피커는 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용될 수 있고, 리시버는 착신 전화를 수신하기 위해 사용될 수 있다. 일 실시예에 따르면, 리시버는 스피커와 별개로, 또는 그 일부로서 구현될 수 있다.
표시 장치(160)는 전자 장치(101)의 외부(예: 사용자)로 정보를 시각적으로 제공할 수 있다. 표시 장치(160)은, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일 실시예에 따르면, 표시 장치(160)는 터치를 감지하도록 설정된 터치 회로(touch circuitry), 또는 상기 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 센서 회로(예: 압력 센서)를 포함할 수 있다.
오디오 모듈(170)은 소리를 전기 신호로 변환시키거나, 반대로 전기 신호를 소리로 변환시킬 수 있다. 일 실시예에 따르면, 오디오 모듈(170)은, 입력 장치(150)를 통해 소리를 획득하거나, 음향 출력 장치(155), 또는 전자 장치(101)와 직접 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(102)) (예: 스피커 또는 헤드폰))를 통해 소리를 출력할 수 있다.
센서 모듈(176)은 전자 장치(101)의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태(예: 사용자 상태)를 감지하고, 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 일 실시예에 따르면, 센서 모듈(176)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서를 포함할 수 있다.
인터페이스(177)는 전자 장치(101)이 외부 전자 장치(예: 전자 장치(102))와 직접 또는 무선으로 연결되기 위해 사용될 수 있는 하나 이상의 지정된 프로토콜들을 지원할 수 있다. 일 실시예에 따르면, 인터페이스(177)는, 예를 들면, HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.
연결 단자(178)는, 그를 통해서 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 물리적으로 연결될 수 있는 커넥터를 포함할 수 있다. 일 실시예에 따르면, 연결 단자(178)은, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.
햅틱 모듈(179)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 일 실시예에 따르면, 햅틱 모듈(179)은, 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.
카메라 모듈(180)은 정지 영상 및 동영상을 촬영할 수 있다. 일 실시예에 따르면, 카메라 모듈(180)은 하나 이상의 렌즈들, 이미지 센서들, 이미지 시그널 프로세서들, 또는 플래시들을 포함할 수 있다.
전력 관리 모듈(188)은 전자 장치(101)에 공급되는 전력을 관리할 수 있다. 일 실시예에 따르면, 전력 관리 모듈(388)은, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구현될 수 있다.
배터리(189)는 전자 장치(101)의 적어도 하나의 구성 요소에 전력을 공급할 수 있다. 일 실시예에 따르면, 배터리(189)는, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.
통신 모듈(190)은 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102), 전자 장치(104), 또는 서버(108))간의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(190)은 프로세서(120)(예: 어플리케이션 프로세서)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일 실시예에 따르면, 통신 모듈(190)은 무선 통신 모듈(192)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(194)(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다. 이들 통신 모듈 중 해당하는 통신 모듈은 제 1 네트워크(198)(예: 블루투스, WiFi direct 또는 IrDA(infrared data association) 같은 근거리 통신 네트워크) 또는 제 2 네트워크(199)(예: 셀룰러 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부 전자 장치와 통신할 수 있다. 이런 여러 종류의 통신 모듈들은 하나의 구성 요소(예: 단일 칩)으로 통합되거나, 또는 서로 별도의 복수의 구성 요소들(예: 복수 칩들)로 구현될 수 있다. 무선 통신 모듈(192)은 가입자 식별 모듈(196)에 저장된 가입자 정보(예: 국제 모바일 가입자 식별자(IMSI))를 이용하여 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크 내에서 전자 장치(101)를 확인 및 인증할 수 있다.
안테나 모듈(197)은 신호 또는 전력을 외부(예: 외부 전자 장치)로 송신하거나 외부로부터 수신할 수 있다. 일 실시예에 따르면, 안테나 모듈(197)은 하나 이상의 안테나들을 포함할 수 있고, 이로부터, 제 1 네트워크 198 또는 제 2 네트워크 199와 같은 통신 네트워크에서 사용되는 통신 방식에 적합한 적어도 하나의 안테나가, 예를 들면, 통신 모듈(190)에 의하여 선택될 수 있다. 신호 또는 전력은 상기 선택된 적어도 하나의 안테나를 통하여 통신 모듈(190)과 외부 전자 장치 간에 송신되거나 수신될 수 있다.
상기 구성요소들 중 적어도 일부는 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input and output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))를 통해 서로 연결되고 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.
일 실시예에 따르면, 명령 또는 데이터는 제 2 네트워크(199)에 연결된 서버(108)를 통해서 전자 장치(101)와 외부의 전자 장치(104)간에 송신 또는 수신될 수 있다. 전자 장치(102, 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 일 실시예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 외부 전자 장치들(102, 104, or 108) 중 하나 이상의 외부 장치들에서 실행될 수 있다. 예를 들면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로, 또는 사용자 또는 다른 장치로부터의 요청에 반응하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 하나 이상의 외부 전자 장치들에게 그 기능 또는 그 서비스의 적어도 일부를 수행하라고 요청할 수 있다. 상기 요청을 수신한 하나 이상의 외부 전자 장치들은 요청된 기능 또는 서비스의 적어도 일부, 또는 상기 요청과 관련된 추가 기능 또는 서비스를 실행하고, 그 실행의 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 상기 결과를, 그대로 또는 추가적으로 처리하여, 상기 요청에 대한 응답의 적어도 일부로서 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다.
본 문서에 개시된 다양한 실시예들에 따른 전자 장치는 다양한 형태의 장치가 될 수 있다. 전자 장치는, 예를 들면, 휴대용 통신 장치 (예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 휴대용 의료 기기, 카메라, 웨어러블 장치, 또는 가전 장치를 포함할 수 있다. 본 문서의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다.
본 문서의 다양한 실시예들 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시예들로 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 또는 관련된 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 아이템에 대응하는 명사의 단수 형은 관련된 문맥상 명백하게 다르게 지시하지 않는 한, 상기 아이템 한 개 또는 복수 개를 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나", “A 또는 B 중 적어도 하나,”"A, B 또는 C," "A, B 및 C 중 적어도 하나,”및 “A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", 또는 "첫째" 또는 "둘째"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에, “기능적으로” 또는 “통신적으로”라는 용어와 함께 또는 이런 용어 없이, “커플드” 또는 “커넥티드”라고 언급된 경우, 그것은 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로(예: 유선으로), 무선으로, 또는 제 3 구성요소를 통하여 연결될 수 있다는 것을 의미한다.
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구현된 유닛을 포함할 수 있으며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는, 상기 부품의 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 일 실시예에 따르면, 모듈은 ASIC(application-specific integrated circuit)의 형태로 구현될 수 있다.
본 문서의 다양한 실시예들은 기기(machine)(예: 전자 장치(101)) 의해 읽을 수 있는 저장 매체(storage medium)(예: 내장 메모리(136) 또는 외장 메모리(138))에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어(예: 프로그램(140))로서 구현될 수 있다. 예를 들면, 기기(예: 전자 장치(101))의 프로세서(예: 프로세서(120))는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체 는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적’은 저장매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.
일 실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
다양한 실시예들에 따르면, 상기 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있다. 다양한 실시예들에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 상기 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 상기 통합 이전에 상기 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.
도 2는 본 개시의 다양한 실시예들에 따른 전자 장치의 기능적 블록도를 도시한다. 이러한 전자 장치의 기능적 구성은 도 1에 도시된 전자 장치(101) 내에 포함될 수 있다.
도 2를 참조하면, 전자 장치(101)는 카메라 모듈(180), 서비스 모듈(200), 사용자 입력 모듈(260), 표시 장치(160), 메모리(130), 센서 모듈(176), 데이터베이스(270)를 포함할 수 있다.
다양한 실시예들에 따라, 표시 장치(160)는 데이터 또는 신호를 영상 또는 이미지의 형태로 출력할 수 있다. 일 실시예에 따라, 표시 장치(160)는 카메라 모듈(180)의 이미지 신호 프로세서(image signal processor, ISP)(181)로부터 데이터 또는 신호를 수신하고, 프리뷰(preview) 이미지를 표시할 수 있다. 상기 프리뷰 이미지는, 상기 카메라 모듈(180)의 카메라 렌즈를 통해 수신되는 실시간(real time) 이미지로서 사용자의 정지 화상(still image) 획득을 위해 제공되는 이미지를 포함할 수 있다.
메모리(130)는 전자 장치(101)를 제어하는 명령어(instruction), 제어 명령어코드, 제어 데이터 또는 사용자 데이터를 저장할 수 있다. 예를 들어, 메모리(130)는 어플리케이션(application)(146), OS(operating system)(142), 미들웨어(middleware)(144), 장치 드라이버(device driver)(미도시)를 포함할 수 있다. 일 실시예에 따라, 메모리(130)는 객체 인식을 위한 정보를 저장할 수 있다. 예를 들어, 메모리(130)는 다수의 객체들을 분류하기 위한 유형(type) 정보, 상기 유형 정보에 포함되는 다수의 유형들 각각에 대한 특징점(keypoint)에 관한 정보를 포함할 수 있다. 상기 유형 정보는, 공통의 유형으로 분류될 수 있는, 다수의 객체들이 가지는 공통점에 기반하여 생성된 정보일 수 있다. 상기 특징점 정보는, 이미지 처리를 통해 획득되는 정보일 수 있다. 예를 들어, 각각의 유형에 대응하는 객체들은, 공통의 특징적인 코너점을 포함하는 형상에 대응될 수 있다. 메모리(130)는 상기 각각의 유형이 가지는 특징적인 형상에 관한 정보를 특징점 정보로서 저장할 수 있다. 다른 실시예에 따라, 메모리(130)는 이미지를 통해 획득한 객체에 관한 인식 정보를 저장할 수 있다. 예를 들어, 메모리(130)는 넓은 시야에 상응하는 카메라를 통해 획득한 이미지에 포함되는 다수의 객체들의 인식 결과에 대한 정보를 포함할 수 있다. 상기 인식 결과에 대한 정보는, 객체의 유형, 넓은 시야에 상응하는 카메라를 통해 획득한 이미지 내에서 상기 객체의 위치에 관한 정보를 포함할 수 있다. 상기 인식 결과에 대한 정보는, 전자 장치(101)가 외부 장치(예: 서버(108))에게 프리뷰 이미지를 제공하고, 상기 외부 장치에 의해 처리되어 수신한 정보일 수 있다. 또한, 상기 인식 결과에 대한 정보는, 전자 장치(101)의 서비스 모듈(200)에 포함되는 이미지 인식 엔진(advanced image recognition framework, AIR framework)(210)에 의해 처리되는 정보일 수 있다.
카메라 모듈(180)은 복수의 이미지 센서들로부터 수신된 영상 또는 이미지들을 실시간으로 화면에 표시하기 위한 이미지 처리를 수행하고, 메모리(130)에 저장하기 위한 이미지를 압축하는 작업을 수행할 수 있다. 일 실시예에 따라, 카메라 모듈(180)은 복수의 이미지 센서들, 이미지 신호 프로세서(image signal processor, ISP)(181), 버퍼(buffer)(183), 리사이저(resizer)(185)를 더 포함할 수 있다. 예를 들어, 카메라 모듈(180)은 서로 다른 화각을 가지는 복수의 이미지 센서를 포함하고, 복수의 이미지 센서들로부터 수신된 영상 또는 이미지들을 실시간으로 화면에 표시하기 위한 스크린 이미지, 메모리에 저장하기 위한 이미지를 압축하는 등의 작업을 수행할 수 있다. 일 실시예에 따라, 스크린 표시 이미지는 전자 장치(101)의 디스플레이 규격에 따라 다를 수 있다. 예를 들어, FHD(full high definition) 화면에 표시될 이미지는 FHD 해상도로 프리뷰 이미지를 생성할 수 있다. 다른 예를 들어, 촬영 이미지의 경우에는 보다 큰 해상도로 저장될 수 있다. 큰 해상도는 카메라의 화소에 따라 최고 해상도가 결정될 수 있고, 사용자 정의에 따라 다른 해상도가 저장될 수 있다. 예를 들어, 사용자는 5MB, 3MB 등의 용량에 상응하는 해상도를 갖는 이미지를 저장하도록 설정할 수 있다. 또한, 카메라 모듈(180)은 복수의 센서들로부터 수신된 복수의 영상 또는 이미지들을 이용하여 표시할 이미지에 대한 정보를 결정하고, 생성할 수 있다. 다른 실시예에 따라, 카메라 모듈(180)은 복수의 이미지 센서들을 통해 수신된 이미지들을 동시에 처리하기 위해, 병렬로 구성되는 다수의 ISP들(181), 리사이저들(185)을 포함할 수 있다. 상기 다수의 ISP들(181) 및 상기 다수의 리사이저들(185)을 통해, 카메라 모듈(180)은 넓은 시야에 상응하는 이미지와 좁은 시야에 상응하는 이미지에 대한 처리(processing)를 동시에 수행할 수 있다. 다양한 실시예들에 따라, 카메라 모듈(180)은,이미징(imaging) 장치 또는 이미지 장치로 언급될 수 있다.
서비스 모듈(200)은 이미지 인식 엔진(210), 사용자 인터페이스 모듈(220), 에이전트 관리 모듈(230), 정보 관리 모듈(240) 및 시각 인공지능 모듈(250)을 더 포함하도록 구성될 수 있다. 상기 이미지 인식 엔진 (Advanced Image Recognition Framework)(210)은 객체 검출 엔진(212) 및 트랙킹 엔진(214), 객체 인식 엔진(216)을 포함할 수 있다. 상기 이미지 인식 엔진(210)은 메모리(130) 또는 카메라 모듈(180)로부터 수신된 이미지를 분석할 수 있다. 상기 분석 결과는 표시 장치(160)로 출력되거나 분석 결과 중 사용자의 피드백이 필요한 부분에 대하여 사용자 입력 모듈(260)을 통한 사용자의 입력을 가이드하는 정보를 출력할 수 있다. 이미지 분석은 전자 장치(101)에서 수행될 수도 있지만, 이미지와 관련 정보(이미지 파일, 특징점, 분석 내용, 키워드, 메타데이터)를 네트워크(199)를 통해 서비스 에이전트 서버(108)에 전송하고, 상기 서비스 에이전트 서버(108)에 의해 수행된 분석 정보를 전달받을 수 있다.
사용자 인터페이스 모듈(220)은 카메라 어플리케이션에서 사용자 입력 모듈(260)을 통해 수신된 사용자 입력에 따른 이미지 분석 결과를 표시 장치(160)로 출력하거나 상기 분석 결과 중 사용자의 피드백이 필요할 경우, 사용자 입력을 수신하기 위한 사용자 인터페이스를 제공할 수 있다.
에이전트 관리 모듈(230)에서는 어떤 에이전트 서버(108)로 쿼리를 해야 할지 확인할 수 있다. 에이전트 관리 모듈(230)은, 영상 자체 분석 결과 또는 사용자의 입력에 따라 쿼리(query)를 요청할 에이전트 서버(108)를 결정할 수 있다. 예를 들어, 카메라 프리뷰로 들어오는 이미지를 분석하여 이미지가 코드검색과 상품검색에 관련이 있다는 사용자 인터페이스를 화면에 표시할 때, 사용자가 상품 검색을 선택할 경우 에이전트 서버(108)는 이 이미지와 상품이 검색된 관심 영역(region of interest, ROI)의 정보를 상품 검색 사이트(예: 아마존, 알리바바, 타오바오 등)으로 쿼리를 전송할 수 있다. 만약 이미지 분석에 더 큰 해상도의 사진이 필요할 경우에는 카메라 모듈(180)로 고해상도 영상을 요청할 수 있다. 카메라 모듈(180)은 사용자 요청 시점에 기반하여 고해상도 영상을 서비스 모듈(200)에 전달하고, 서비스 모듈(200)은 고해상도 영상을 기반으로 이미지 분석을 수행할 수 있다. 예를 들어, 고해상도 영상은 사용자 입력이 수신된 시점의 고해상도 영상, 카메라 링 버퍼(ring buffer) 내부에 저장된 영상 중 가장 품질이 좋은 영상, 기 저장된 영상 또는 사용자 요청 기반의 지정 해상도로 새로 촬영한 영상을 포함할 수 있다.
정보 관리 모듈(240)은 이미지 인식 엔진(210)이 검출한 정보들을 통합하고, 통합된 정보들을 파싱(parsing)하여 어플리케이션(예: Info Camera App)으로 전달 할 수 있다. 일 실시예에 따라, 상기 어플리케이션으로 전달되는 정보들의 우선순위는 우선순위 엔진의 관심 영역(region of interest), QR 코드 정보, 바코드 정보, 식별자(classifier) 정보, 인식된 엔진의 유형의 순서로 결정될 수 있다. 예를 들어, 우선순위 엔진의 관심 영역은, QR 코드, 바코드, 풍경, 객체, 문서의 순서에 기반하여 결정될 수 있다. 상기 어플리케이션은 정보 관리 모듈(240)로부터 전달받은 정보에 기반하여 표시 장치(160)를 통해 표시할 수 있고, 서버(108)와 통신에 필요한 정보를 사용할 수 있다. 일 실시예에 따라, 정보 관리 모듈(240)은 모션 트래커(미도시)를 포함할 수 있다. 모션 센서는 전자 장치(101)의 움직임의 정도를 검출하기 위한 모션 벡터를 포함할 수 있고, 상기 모션 벡터에 기반하여 전자 장치(101)의 스태빌리티(stability)를 체크할 수 있다. 전자 장치(101)의 움직임이 크지 않은 경우 또는 전자 장치(101)의 움직임의 양이 임계 값 이하인 경우, 예컨대, 상기 스태빌리티가 임계 값 이하인 경우, 서비스 모듈(200)의 이미지 인식 엔진(210)에서 객체를 검출할 수 있도록 움직임 값을 송신할 수 있다. 모션 트래커는 검출되는 객체의 특징 정보의 크기에 따라 검출되는 객체의 복잡도를 계산할 수 있다. 다른 실시예에 따라, 정보 관리 모듈(240)은 시각 특징 엔진(visual feature engine)(미도시)을 포함할 수 있다. 시각 특징 엔진(미도시)은 정보 관리 모듈(240)에서 측정된 전자 장치(101)의 움직임 정도, 객체를 검출할 때 측정할 수 있는 객체의 복잡도에 기반하여 객체를 검출하는 특징 효과를 나타낼 수 있다. 또한, 시각 특징 엔진(미도시)은 객체를 트래킹하는 효과를 연속적으로 표시할 수 있다. 일 실시예에 따라, 시각 특징 엔진은 객체에 관한 깊이 정보, 색차 변화 등에 기반하여 효과를 표시하거나, 전자 장치(101)의 움직임 또는 객체의 움직임에 기반하여 트래킹 효과를 표시할 수 있다. 미 도시되었지만, 정보 관리 모듈(240)은, 인식 전처리 모듈을 더 포함할 수 있다. 상기 인식 전처리 모듈은 제1 카메라와 제2 카메라의 화각 차이, 초점거리를 포함하는 설정에 기반하여 촬영 영역의 매핑 정보를 결정할 수 있다. 상기 전처리 인식 모듈은 센서 모듈(176)로부터 수신한 상기 전자 장치(101)의 움직임에 대한 정보 및 상기 제1 카메라에 상응하는 제1 화각(angle of view) 및 상기 제2 카메라에 상응하는 제2 화각에 대한 정보에 기반하여, 기 인식된 객체의 위치를 매핑하고, 상기 인식된 객체에 대한 유형 정보를 생성할 수 있다.
데이터베이스(270)은 시각 인공지능 서비스를 제공하기 위한 정보를 저장할 수 있다. 예를 들어, 데이터베이스(270)는 미리 정의된 객체의 유형에 대한 정보(예: 원통형 용기, 튜브형 용기, 사람, 피아노, 강아지 등등)를 저장할 수 있다. 이에 따라, 전자 장치(101)는 이미지 분석을 위해, 서버(108)로 이미지를 송신하지 않고, 전자 장치(101) 내부에서 이미지 분석 프로세스를 처리할 수 있다. 또 다른 예를 들어, 데이터베이스(270)는 기 검색된 객체에 대한 정보를 저장할 수 있다. 일 실시예에 따라, 전자 장치(101)는 사용자의 요청에 따라 음료 A에 대한 객체 인식 서비스를 제공하고, 해당 정보를 데이터베이스(270)에 저장할 수 있다. 이에 따라, 전자 장치(101)는 음료 A와 동일한 객체가 인식되는 경우, 서버(108)에 이미지를 송신하고, 서버(108)로부터 이미지 분석 결과를 수신하지 않고, 기 저장된 정보에 기반하여, 음료 A에 대응하는 객체 인식에 대한 정보를 표시할 수 있다.
시각 인공지능 모듈(Vision Intelligence Agent)(250)은 입력된 영상에 대해서 분석한 결과를 미리 카테고리 해서 저장할 수 있다. 예를 들어, 시각 인공지능 모듈(250)은 입력된 영상에 대해서 크게는 사람, 가구, 의복, 자동차 등으로 나누어 카테고리화 할 수 있고, 보다 세분화하여 가구의 종류(예: 의자, 책상, 스탠드, 전등 등), 의복의 종류(예: 상의, 하의, 스커트, 바지, 티셔츠, 코트 등)로 분류하여 저장할 수 있다. 시각 인공지능 모듈(250)은 이미지의 색깔 및 분위기, 풍경을 포함하여, 이미지의 저장 시점, 이미지의 촬영 위치 등 이미지 데이터가 갖고 있는 정보를 데이터베이스화 하여 저장하여, 입력된 이미지를 활용한 검색에 사용 할 수 있다.
도 3a는 본 개시의 다양한 실시예들에 따른 전자 장치의 제1 카메라 및 제2 카메라에 의해 획득되는 프리뷰 이미지의 영역을 도시한다. 도 3a에 도시된 전자 장치(301)는 도 1의 전자 장치(101)에 상응할 수 있다.
도 3a를 참조하면, 전자 장치(301)는 제1 카메라(310) 및 제2 카메라(320)를 포함할 수 있다. 일 실시예에 따라, 전자 장치(101)는 하우징(미도시)을 포함할 수 있으며, 상기 제1 카메라(310) 및 상기 제2 카메라(320)는 상기 하우징(미도시)의 일 면(one surface)상에 배치될 수 있다. 예를 들어, 상기 제1 카메라(310) 및 상기 제2 카메라(320)는 상기 전자 장치(101)의 표시 장치(160)를 포함하는 면에 배치되는 일 면에 배치될 수 있다. 다른 예를 들어, 상기 제1 카메라(310) 및 상기 제2 카메라(320)는 원근법에 기반하여 깊이(depth) 정보를 획득하도록 일정 거리의 간격을 두고 나란히 배치될 수 있다. 상기 제1 카메라(310) 및 상기 제2 카메라(320)는 각각 상이한 배율(magnification)에 상응할 수 있다. 예를 들어, 상기 제1 카메라(310)는 낮은 배율(예: x1 내지 x2)의 프리뷰 이미지를 획득하기 위한 카메라일 수 있고, 상기 제2 카메라(320)는 높은 배율(예: x2 내지 x4)의 프리뷰 이미지를 획득하기 위한 카메라일 수 있다.
일 실시예에 따라, 제1 카메라(310)는 넓은 시야(field of view, FOV)에 상응하는 카메라일 수 있다. 제1 카메라(310)에 의해 획득되는 이미지는 제1 이미지(330)에 상응할 수 있다. 넓은 시야에 상응하는 상기 제1 카메라(310)는 광각(wide angle) 카메라, 와이드(wide) 카메라, 저 배율 카메라로 언급될 수 있다. 상기 제1 카메라(310)에 의해 획득되는 제1 이미지(330)는 와이드 이미지, 광각 이미지, 저 배율 이미지로 언급될 수 있다. 도 3a를 참조하면, 제1 이미지(330)는 제1 길이의 폭(width)(311)에 상응하는 넓은 시야에 대한 이미지일 수 있다. 도 3b를 참조하면, 제1 이미지(330)는 제1 객체(331) 내지 제3 객체(333)를 모두 포함할 수 있다.
다른 실시예에 따라, 제2 카메라(320)는 좁은 시야에 상응하는 카메라일 수 있다. 제2 카메라(320)에 의해 획득되는 이미지는 제2 이미지(340)에 상응할 수 있다. 좁은 시야에 상응하는 상기 제2 카메라(320)는 고 배율 카메라로 언급될 수 있다. 상기 제2 카메라(320)에 의해 획득되는 제2 이미지(340)는 저 배율 이미지로 언급될 수 있다. 도 3a를 참조하면, 제2 이미지(340)는 제2 길이의 폭(321)에 상응하는 좁은 시야에 대한 이미지일 수 있다. 도 3b를 참조하면, 제2 이미지(340)는 제1 객체(331) 내지 제3 객체(333) 중 일부 객체들을 포함할 수 있다. 예를 들어, 제2 이미지(340)는 제1 객체(331)만을 포함할 수 있다.
도 4a는 본 개시의 다양한 실시예들에 따른 전자 장치의 객체 인식을 위한 동작 순서를 도시한다. 도 4a의 동작 401 내지 동작 415는 예를 들어, 도 1의 전자 장치(101) 또는 도 3a의 전자 장치(301)에 의하여 수행될 수 있다. 이하, 동작 401 내지 동작 415는 전자 장치(101)의 프로세서(120)에 의하여 수행될 수 있는 인스트럭션(명령어)들로 구현될 수 있다.
도 4a를 참조하면, 동작 401에서 전자 장치(101)의 프로세서(120)는 제1 객체(331) 내지 제3 객체(333)를 포함하는 제1 와이드 이미지(410)를 생성할 수 있다. 상기 제1 와이드 이미지(410)는 제1 카메라(310)에 의해 획득되는 제1 이미지(330)에 대응될 수 있다. 상기 제1 카메라(310)는 넓은 시야에 상응하는 카메라에 상응할 수 있고, 이에 따라, 전자 장치(101)는 다수의 객체들(예: 제1 객체(331) 내지 제3 객체(333))을 포함하는 제1 이미지(330)를 획득할 수 있다. 예를 들어, 도 4b를 참조하면, 상기 제1 이미지(330)는 제 1 와이드(wide) 이미지(410)에 상응할 수 있다. 상기 제1 와이드 이미지(410)는, 상기 제1 카메라(310)를 통해 획득되는 제1 시점의 이미지를 지칭할 수 있다. 즉, 상기 제1 이미지(330)는, 상기 제1 카메라(310)를 통해, 상기 제1 시점에 획득되는 정지 화상(still image)를 포함할 수 있고, 상기 제1 카메라(310)는 넓은 시야에 상응하는 카메라에 대응되므로, 상기 다수의 객체들(예: 제1 객체(331) 내지 제3 객체(333))을 포함하는 이미지를 획득할 수 있다.
동작 403에서, 전자 장치(101)는 제1 객체(331)를 포함하는 제1 텔레 이미지(420)를 생성할 수 있다. 상기 제1 텔레 이미지(420)는 제2 카메라(320)에 의해 획득되는 제2 이미지(340)에 대응될 수 있다. 예를 들어, 도 4b를 참조하면, 제2 이미지(340)는 제1 텔레(tele) 이미지(420)에 상응할 수 있다. 상기 제1 텔레 이미지(420)는, 상기 제2 카메라(320)를 통해 획득되는 제1 시점의 이미지를 지칭할 수 있다. 즉, 상기 제1 이미지(330) 및 상기 제2 이미지(340)는 동일한 상기 제1 시점에 획득될 수 있다. 전자 장치(101)의 카메라 모듈(180)은 상기 제1 시점에 상기 제1 이미지(330) 및 상기 제2 이미지(340)를 처리하기 위해, 병렬로 구성되는 2개 이상의 이미지 신호 프로세서들(181), 버퍼(183) 및 리사이저들(185)을 포함할 수 있다. 상기 제2 이미지(340)는, 좁은 시야에 상응하는 상기 제2 카메라(320)에 의해 획득된 이미지이므로, 제2 객체(332) 및 제3 객체(333)를 제외한 제1 객체(331)만을 포함할 수 있다.
일 실시예에 따라, 전자 장치(101)의 사용자는 프리뷰 이미지의 배율을 조절할 수 있다. 전자 장치(101)는 일정 배율 이하의 경우, 제1 카메라(310)를 통해 수신된 이미지를 프리뷰 이미지로 표시하고, 일정 배율 이상의 경우, 제2 카메라(320)를 통해 수신된 이미지를 프리뷰 이미지로 표시할 수 있다. 다른 실시예에 따라, 전자 장치(101)는 제1 카메라(310) 및 제2 카메라(320)를 통해 동시에 이미지를 수신하고 처리할 수 있다. 즉, 동일한 제1 시점에, 제1 카메라(310)는 넓은 영역에 상응하는 제1 와이드 이미지(410)를 수신할 수 있고, 제2 카메라(320)는 좁은 영역에 상응하는 제1 텔레 이미지(420)를 수신할 수 있다. 전자 장치(101)는 상기 병렬로 구성되는 2개 이상의 이미지 신호 프로세서들(181), 버퍼(183) 및 리사이저들(185)을 이용하여, 상기 제1 카메라(310) 및 상기 제2 카메라(320)를 통해 상기 제1 시점에 수신된 이미지들을 각각 상기 제1 이미지(330) 및 상기 제2 이미지(340)로 변환할 수 있다.
동작 405에서, 전자 장치(101)는 제1 와이드 이미지(410) 및 제1 텔레 이미지(420)를 서버(108)(예: 도 2 의 서비스 에이전트 서버(108))로 송신할 수 있다. 전자 장치(101)는 제1 와이드 이미지(410)에 포함되는 제1 객체(331) 내지 제3 객체(333)의 객체 인식을 수행하기 위해 서버(108)로 상기 제1 이미지(330) 및 상기 제1 텔레 이미지(420)를 송신할 수 있다. 일 실시예에 따라, 서버(108)는 이미지 분석 엔진을 포함할 수 있고, 전자 장치(101)로부터 수신한 제1 와이드 이미지(410) 및 제1 텔레 이미지(420)에 포함되는 제1 객체(331) 내지 제3 객체(333)에 관한 객체 인식을 수행할 수 있다.
일 실시예에 따라, 서버(108)는 저 배율의 넓은 시야를 갖는 제1 이미지(330)를 수신하고, 제1 이미지(330)에 포함되는 다수의 객체들(예: 제1 객체(331) 내지 제3 객체(333))의 특징점을 추출함으로써 상기 다수의 객체들에 상응하는 각각의 유형(예: 사람, 원통형 용기, 튜브형 용기, 강아지, 피아노 등등)을 결정할 수 있다. 예를 들어, 도 4c를 참조하면, 서버(108)는 저 배율로 촬영되고, 넓은 시야에 상응하는 제1 와이드 이미지(410)을 수신하고, 제1 객체(331) 내지 제3 객체(333)를 인식할 수 있다. 서버(108)는 상기 제1 객체(331) 내지 제3 객체(333)의 특징점을 추출하고, 제1 객체(331) 내지 제3 객체(333) 각각의 유형을 결정할 수 있다. 예를 들어, 서버(108)는 제1 객체(331) 내지 제3 객체(333)는 원통형 용기에 각각 상응함을 결정할 수 있다.
다른 실시예에 따라, 서버(108)는 고 배율로 촬영되고, 좁은 시야에 상응하는 제1 객체(331)에 관한 제2 이미지(340)를 수신하고, 추가적인 정보를 획득할 수 있다. 예를 들어, 도 4c를 참조하면, 서버(108)는 고 배율로 촬영되고, 좁은 시야에 상응하는 제1 텔레 이미지(420)를 수신하고, 제1 객체(331)를 식별할 수 있다. 서버(108)는 고 배율로 촬영되어 획득할 수 있는 정보에 기반하여, 추가적인 인식 정보를 생성할 수 있다. 예를 들어, 서버(108)는 제1 텔레 이미지(420)에 포함되는 객체(예: 제 1 객체(331))의 상품명을 식별할 수 있다. 이에 따라, 서버(108)는 식별된 상품명에 기반하여 제공될 수 있는 추가적인 인식 결과에 대한 정보를 전자 장치(101)로 송신할 수 있다. 예를 들어, 서버(108)는 제1 객체(331)의 상품명을 식별하고, 상기 식별된 제1 객체(331)의 상품명, 온라인 마켓에서 판매중인 가격, 전자 장치(101)의 주변 편의점에서 판매중인 가격에 관한 정보를 전자 장치(101)에 추가적으로 송신할 수 있다.
전술한 실시예에서, 제1 이미지(330) 및 제2 이미지(340)는 서버(108)로 송신되는 것으로 도시되었지만, 본 개시는 이에 제한되지 않는다. 일 실시예에 따라, 전자 장치(101)는 서비스 모듈(200)에 포함되는 이미지 인식 엔진(210, AIR framework)에 기반하여, 제1 이미지(330) 또는 제2 이미지(340)에 포함되는 제1 객체(331) 내지 제3 객체(333)의 객체 인식을 수행할 수 있다.
동작 407에서, 전자 장치(101)는 제1 객체(331)의 객체 인식에 대한 정보를 수신할 수 있다. 서버(108)는 전자 장치(101)로부터 수신한 제1 와이드 이미지(410) 및 제1 텔레 이미지(420)의 객체 인식을 수행하고, 인식된 객체에 관한 정보를 전자 장치(101)에 송신할 수 있다. 일 실시예에 따라, 상기 제1 와이드 이미지(410)에 대한 인식 정보는, 상기 제1 와이드 이미지(410)에 포함되는 상기 제1 객체(331) 내지 제3 객체(333)의 유형에 관한 정보를 포함할 수 있다. 예를 들어, 상기 제1 객체(331) 내지 제3 객체(333)의 유형은 원통형 용기에 대응될 수 있다. 다른 실시예에 따라, 상기 제1 텔레 이미지(420)에 대한 인식 정보는, 상기 제1 텔레 이미지(420)에 포함되는 상기 제1 객체(331)의 상품명, 온라인 마켓에서 판매중인 가격, 전자 장치(101)의 주변 편의점에서 판매중인 가격에 관한 정보를 포함할 수 있다.
동작 409에서, 전자 장치(101)는 상기 전자 장치(101)의 움직임을 감지할 수 있다. 전자 장치(101)는 센서 모듈(176)을 통해 상기 전자 장치(101)의 움직임에 대한 센싱 데이터를 획득할 수 있다. 일 실시예에 따라, 센서 모듈(176)은 자이로 센서, 가속도 센서, 중력 센서를 더 포함할 수 있다. 예를 들어, 전자 장치(101)는 자이로 센서에 의해 측정된 각 속도에 관련된 센싱 데이터를 획득하고, 상기 센싱 데이터에 기반하여 전자 장치(101)가 왼쪽 또는 오른쪽으로 얼마나 회전하였는지 획득할 수 있다. 다른 예를 들어, 전자 장치(101)는 중력 센서에 의해 측정된 센싱 데이터를 획득하고, 상기 센싱 데이터에 기반하여 전자 장치(101)가 상하로 얼마나 이동하였는지 획득할 수 있다. 전자 장치(101)는 상기 획득한 좌우 회전에 대한 센싱 데이터 및 상하 회전에 대한 센싱 데이터를 획득함으로써 전자 장치(101)의 움직임을 검출할 수 있다.
동작 411에서, 전자 장치(101)는 제2 객체(332)를 포함하는 제2 텔레 이미지(440)를 생성할 수 있다. 상기 제2 텔레 이미지(440)는 상기 검출된 전자 장치(101)의 움직임 이후의 제2 시점에 제2 카메라¬(320)를 통해 획득된 이미지에 상응할 수 있다. 예를 들어, 도 4b를 참조하면, 상기 제2 텔레 이미지(440)는 상기 전자 장치(101)의 움직임 이후, 좁은 시야에 상응하는 제2 카메라(320)에 의해 획득된 이미지에 대응될 수 있다. 도 4c를 참조하면, 제2 텔레 이미지(440)는 제2 객체(332)를 포함하는 이미지에 상응할 수 있다. 일 실시예에 따라, 전자 장치(101)는 제1 와이드 이미지(410) 및 제1 텔레 이미지(420)의 줌 정보와 상기 전자 장치(101)의 움직임에 대한 정보에 기반하여, 제2 텔레 이미지(440)를 생성할 것을 결정할 수 있다. 전자 장치(101)는 제2 카메라(320)의 줌 배율에 관한 정보와 상기 움직임에 대한 정보를 이용하여, 제2 시점에 제2 텔레 이미지(440)가 제1 와이드 이미지(410) 내에 위치할 것인지 결정할 수 있다. 따라서, 전자 장치(101)는 상기 제2 텔레 이미지(440)가 상기 제1 와이드 이미지(410) 내에 위치하는 것으로 결정한 경우, 제2 카메라(320)로부터 수신된 이미지를 처리하지 않음으로써 제2 와이드 이미지(430)를 생성하지 않을 수 있다. 다른 실시예에 따라, 전자 장치(101)는 상기 제2 텔레 이미지(440)가 제1 와이드 이미지(410) 내에 위치하지 않는 것으로 결정한 경우, 제2 카메라(320)로부터 수신된 이미지를 처리하여, 제2 와이드 이미지(430)를 생성할 수 있다. 전자 장치(101)는 새롭게 생성한 제2 와이드 이미지(430)에 포함되는 객체들의 유형에 관한 정보를 획득하기 위해, 상기 생성한 제2 와이드 이미지(430)를 서버(108)로 송신하거나, 전자 장치(101)의 이미지 인식 엔진(210)을 이용할 수 있다.
동작 413에서, 전자 장치(101)는 제2 텔레 이미지(440)로부터 객체 이미지를 추출할 수 있다. 상기 객체 이미지는, 상기 제2 텔레 이미지(440)의 일부 영역에 상응하는 이미지일 수 있다. 구체적으로, 상기 객체 이미지는 상기 제2 텔레 이미지(440) 내에 객체를 포함하는 영역에 대한 이미지일 수 있다. 일 실시예에 따라, 전자 장치(101)는 제2 텔레 이미지(440) 내에 제2 객체(332)와 제1 와이드 이미지(410) 내에 제2 객체(332)의 특징점을 추출하고, 상기 추출한 특징점을 비교하여 정합하는 특징점의 개수를 획득할 수 있다. 상기 정합하는 특징점의 개수가 미리 설정된 개수보다 크거나 같은 경우, 전자 장치(101)는 제1 와이드 이미지(410)의 제2 객체(332)와 제2 텔레 이미지(440)의 제2 객체(332)를 동일한 객체로 결정할 수 있다. 전자 장치(101)는 제1 와이드 이미지(410)의 제2 객체(332)와 제2 텔레 이미지(440)의 제2 객체(332)를 동일한 객체로 결정한 경우, 상기 추출한 특징점에 기반하여 제2 텔레 이미지(440)에 포함되는 제2 객체(332)에 관련된 좌표 정보를 획득할 수 있다. 전자 장치(101)는 상기 획득한 좌표 정보에 기반하여 상기 제2 텔레 이미지(440) 내에 상기 제2 객체(332)가 위치하는 일부 영역을 추출할 수 있다. 상기 추출된 제2 객체(332)에 대응하는 일부 영역은 상기 객체 이미지에 대응될 수 있다.
동작 415에서 전자 장치(101)는 객체 이미지를 서버(108)로 송신할 수 있다. 전자 장치(101)는 상기 제2 텔레 이미지(440)로부터 추출한 객체 이미지를 서버(108)로 송신할 수 있다. 상기 객체 이미지는 제2 텔레 이미지(440)의 일부 영역에 대응되는 이미지일 수 있고, 상기 객체 이미지는 상기 제2 텔레 이미지(440)의 제2 객체(332)에 관련된 영역만을 포함할 수 있다. 일 실시예에 따라, 전자 장치(101)는 제1 와이드 이미지(410)의 제2 객체(332)와 제2 텔레 이미지(440)의 제2 객체(332)가 대응되는 것으로 판단할 수 있고, 이 경우, 전자 장치(101)는 제1 와이드 이미지(410)에 대한 인식 정보 중 상기 제2 객체(332)에 대한 유형 정보를 상기 제2 텔레 이미지(440)의 제2 객체(332)에 대한 유형 정보로서 결정할 수 있다. 따라서, 전자 장치(101)는 상기 객체 이미지 및 상기 제2 객체(332)에 대한 유형 정보를 서버(108)에 송신할 수 있다. 이에 따라, 전자 장치(101)는 서버(108)와 통신하는 데이터의 양을 감소시킬 수 있고, 서버(108)는 제2 텔레 이미지(440) 중 상기 제2 객체(332)에 대한 영역만을 포함하는 객체 이미지에 기반하여 상기 제2 객체(332)에 대한 인식을 수행하므로, 객체 인식의 속도를 개선할 수 있다.
도 5a는 다양한 실시예들에 따른 전자 장치의 객체 인식을 위한 순서도를 도시한다. 도 5a는 동작 501 내지 동작 513은, 예를 들어, 도 1의 전자 장치(101) 또는 도 3a의 전자 장치(301)에 의하여 수행될 수 있다. 이하, 동작 501 내지 동작 513이 설명에 도 1 또는 도 3의 참조부호를 이용할 수 있다. 동작 501 내지 동작 513은 전자 장치(101)의 프로세서(120)에 의하여 수행될 수 있는 인스트럭션(명령어)들로 구현될 수 있다.
도 5a를 참조하면, 동작 501에서, 전자 장치(101)의 프로세서(120)는 제1 카메라(310)를 이용하여 제1 시야에 상응하는 제1 영역과 관련된 제1 와이드 이미지(410)를 획득할 수 있다. 전자 장치(101)는 넓은 시야에 상응하는 제1 영역에 배치된 제1 객체(331) 내지 제3 객체(333)를 포함하는 제1 와이드 이미지(410)를 획득할 수 있다. 예를 들어, 도 5b를 참조하면, 제1 카메라(310)의 시야는 각도 B(510)를 가지고, 제1 객체(331), 제2 객체(332), 및 제3 객체(333)를 포함하는 이미지를 획득할 수 있다.
동작 503에서, 전자 장치(101)는 제2 카메라(320)를 이용하여 제2 시야에 상응하는 제2 영역과 관련된 제1 텔레 이미지(420)를 획득할 수 있다. 전자 장치(101)는 제2 카메라(320)를 이용하여 제2 시야에 상응하는 제2 영역과 관련된 제1 텔레 이미지(420)를 획득할 수 있다. 전자 장치(101)는 좁은 시야에 상응하는 제2 영역에 배치된 제1 객체(331)를 포함하는 제1 텔레 이미지(420)를 획득할 수 있다. 예를 들어, 도 5b를 참조하면, 제2 카메라(320)의 시야는 각도 A(520)를 가지고, 제1 객체(331)만을 포함하는 이미지를 획득할 수 있다.
동작 505에서, 전자 장치(101)는 제1 영역과 제2 영역 사이의 상대적 위치에 대한 제1 정보를 획득할 수 있다. 전자 장치(101)는 제2 영역의 제1 영역 내에서 위치하는 상대적 위치에 관련된 정보를 획득할 수 있다. 즉, 전자 장치(101)는 제1 영역의 일부 영역에 대응되는 제2 영역을 식별함으로써 상기 상대적 위치에 대한 제1 정보를 획득할 수 있다. 예를 들면, 상기 제1 정보는, 상기 제2 영역은 상기 제1 영역의 중앙부에 위치 또는 우측 상단에 위치함을 지시하는 정보를 포함할 수 있다.
동작 507에서, 전자 장치(101)는 제2 카메라(320)를 이용하여, 제2 영역으로부터 변경된 제3 영역과 관련된 제2 텔레 이미지(440)를 획득할 수 있다. 전자 장치(101)는 센서 모듈(176)을 통해 움직임을 검출할 수 있고, 상기 검출된 움직임에 대한 제2 정보에 기반하여, 변경된 제2 카메라(320)의 제2 시야에 대응하는 제3 영역에 대한 제2 텔레 이미지(440)를 획득할 수 있다. 상기 제2 정보는, 센서 모듈(176)로부터 수신한 정보에 대응할 수 있고, 좌우 방향으로 전자 장치(101)의 움직임 크기, 상하 방향으로 전자 장치(101)의 움직임 크기에 대한 정보를 포함할 수 있다. 예를 들어, 도 5c를 참조하면, 전자 장치(101)의 프로세서(120)는 상기 전자 장치(101)가 각도 C(530)만큼 왼쪽으로 회전하였음을 검출할 수 있다. 전자 장치(101)는 제2 카메라(320)를 통해, 상기 전자 장치(101)의 움직임 이전에 제1 텔레 이미지(420) 내에서 검출되지 않고, 상기 움직임에 대응하여 제2 텔레 이미지(440) 내에서 새롭게 검출되는 제2 객체(332)를 포함하는 이미지를 획득할 수 있다.
동작 509에서, 전자 장치(101)는 제1 정보 및 제2 정보에 기반하여 제2 텔레 이미지(440) 내에 제2 객체(332)를 식별할 수 있다. 전자 장치(101)는 제1 와이드 이미지(410) 내에서 제1 텔레 이미지(420)가 위치하는 정보에 대한 제1 정보 및 상기 전자 장치(101)의 움직임에 관련된 상기 제2 정보에 기반하여, 제2 텔레 이미지(440)에 관한 위치를 결정할 수 있다. 전자 장치(101)는 상기 결정된 제2 텔레 이미지(440)의 위치가 상기 제1 와이드 이미지(410)를 벗어나는 경우, 넓은 시야에 상응하는 제2 와이드 이미지(430)를 새롭게 생성할 수 있다. 상기 결정된 제2 텔레 이미지(440)의 위치가 상기 제1 와이드 이미지(410)를 벗어나지 않는 경우, 전자 장치(101)는 전자 장치(101)의 움직임에 따라 변경된 제2 텔레 이미지(440) 내에 포함되는 제2 객체(332)를 식별할 수 있다. 상기 제2 객체(332)는, 상기 제1 와이드 이미지(410) 내에 포함된 객체들 중 하나에 대응될 수 있다.
동작 511에서, 전자 장치(101)는 제2 텔레 이미지(440)에 포함되는 제2 객체(332)에 대한 정보를 획득할 수 있다. 전자 장치(101)는 제2 텔레 이미지(440) 내에 제2 객체(332)와 제1 와이드 이미지(410) 내에 제2 객체(332)의 특징점을 추출하고, 상기 추출한 특징점을 비교하여 정합하는 특징점의 개수를 획득할 수 있다. 상기 정합하는 특징점의 개수가 미리 설정된 개수보다 크거나 같은 경우, 전자 장치(101)는 제1 와이드 이미지(410)의 제2 객체(332)와 제2 텔레 이미지(440)의 제2 객체(332)를 동일한 객체로 결정할 수 있다. 전자 장치(101)는, 제1 와이드 이미지(410)의 제2 객체(332)와 제2 텔레 이미지(440)의 제2 객체(332)를 동일한 객체로 결정한 경우, 상기 추출한 특징점에 기반하여 제2 텔레 이미지(440)에 포함되는 제2 객체(332)에 관련된 좌표 정보를 획득할 수 있다. 전자 장치(101)는 상기 획득한 좌표 정보에 기반하여 상기 제2 텔레 이미지(440) 내에 제2 객체(332)가 위치하는 일부 영역을 추출할 수 있다.
동작 513에서, 전자 장치(101)는 제2 객체(332)에 대한 정보를 저장할 수 있다. 전자 장치(101)는 상기 추출한 일부 영역을 제2 객체(332)에 대한 객체 이미지로 저장할 수 있다. 또한, 전자 장치(101)는 상기 제1 와이드 이미지(410)의 인식 정보에 포함된 제2 객체(332)에 대한 정보를 상기 제2 객체(332)에 대한 유형 정보로 이용할 수 있다. 일 실시예에 따라, 전자 장치(101)는 객체 인식에 대한 정확도를 추가적으로 저장할 수 있다. 전자 장치(101)는 이전에 수행한 객체 인식 및 이에 대한 사용자의 피드백에 대한 정보를 객체 인식에 대한 정확도로 저장하고, 객체 인식에 사용할 수 있다. 예를 들어, 전자 장치(101)는 이전에 수행된 객체 인식의 정확도가 미리 정의된 기준 이상인 경우, 해당 객체에 대한 객체 인식은 오인식할 확률이 낮으므로, 객체 정보를 그대로 표시할 수 있다. 다른 예를 들어, 전자 장치(101)는 이전에 수행된 객체 인식의 정확도가 미리 정의된 기준 이하인 경우, 해당 객체에 대한 객체 인식의 오인식 확률이 높으므로, 고 배율의 제2 카메라(320)에 의해 획득된 객체에 대한 이미지를 이용하여 해당 객체를 다시 한번 인식하도록 설정될 수 있다. 이 경우, 재인식된 객체와 기 인식된 객체에 대한 결과가 동일한 경우, 객체 정보를 표시할 수 있다.
도 6은 본 개시의 다양한 실시예들에 따른 제2 텔레 이미지를 획득하기 위한 전자 장치의 동작 순서를 도시한다. 제2 텔레 이미지를 획득하기 위한 동작은 도 5에 도시된 동작 507의 상세 동작에 대응될 수 있다.
도 6을 참조하면, 동작 601에서, 전자 장치(101)의 프로세서(120)는 카메라의 이동이 감지되는지 결정할 수 있다. 전자 장치(101)는 센서 모듈(176)로부터 센싱 데이터를 획득하고, 상기 센싱 데이터에 기반하여 전자 장치(101)의 움직임을 검출할 수 있다. 상기 제1 카메라(310) 및 상기 제2 카메라(320)는 상기 전자 장치(101)의 하우징(미도시)의 일 면에 배치되므로, 상기 전자 장치(101)의 움직임을 검출한 경우, 전자 장치(101)는 상기 제1 카메라(310) 및 상기 제2 카메라(320)의 이동을 검출할 수 있다. 예를 들어, 전자 장치(101)의 움직임을 검출한 경우, 전자 장치(101)는 동작 603을 수행할 수 있다. 다른 예를 들어, 전자 장치(101)의 움직임이 검출되지 않은 경우, 전자 장치(101)는 지속적으로 전자 장치(101)의 움직임이 검출되는지 확인할 수 있다.
동작 603에서, 전자 장치(101)는 제2 텔레 이미지(440)를 획득할 수 있다. 일 실시예에 따라, 상기 검출된 전자 장치(101)의 움직임에 따라, 상기 제1 카메라(310) 및 상기 제2 카메라(320)를 통해 수신되는 이미지가 변경될 수 있다. 예를 들어, 도 4c를 참조하면, 상기 제1 카메라(310)는 상기 전자 장치의 이동 이전에는 제1 와이드 이미지(410)를 획득할 수 있고, 상기 전자 장치(101)의 이동에 따라 변경된 제2 와이드 이미지(430)를 획득할 수 있다. 상기 제2 카메라(320)는 상기 전자 장치(101)의 이동 이전에는 제1 텔레 이미지(420)를 획득할 수 있고, 상기 전자 장치(101)의 이동에 따라 변경된 제2 텔레 이미지(440)를 획득할 수 있다.
동작 605에서, 전자 장치(101)는 제1 와이드 이미지(410)의 인식 정보가 존재하는지 결정할 수 있다. 전자 장치(101)는 상기 제1 카메라(310)를 통해 제1 와이드 이미지(410)를 획득하고, 상기 획득된 제1 와이드 이미지(410)를 서버(108)로 송신할 수 있다. 따라서, 전자 장치(101)는 상기 송신에 대응하여, 상기 서버(108)에 의해 수행된 제1 와이드 이미지(410)에 대한 인식 정보를 수신하였는지 판단할 수 있다. 상기 제1 와이드 이미지(410)에 대한 인식 정보는 제1 와이드 이미지(410)에 포함되는 다수의 객체들에 대한 유형 정보를 포함할 수 있다. 예를 들어, 제1 와이드 이미지(410)에 대한 인식 정보는 상기 제1 객체(331) 내지 상기 제3 객체(333)의 유형은 원형 용기에 대응하는 것을 지시하는 정보를 포함할 수 있다.
동작 607에서, 전자 장치(101)는 제2 와이드 이미지(430)의 인식 정보를 생성 및 표시할 수 있다. 전자 장치(101)는 제1 와이드 이미지(410)의 인식 정보를 서버(108)로부터 수신하지 못한 경우, 제1 와이드 이미지(410)의 인식 정보를 이용하여 제2 텔레 이미지(440)의 인식 정보를 생성하는 것이 불가능할 수 있다. 따라서, 전자 장치(101)는 서버(108)로 제2 와이드 이미지(430)를 송신하고, 상기 서버(108)에 의해 수행된 객체 인식의 결과를 수신함으로써 제2 와이드 이미지(430)의 인식 정보를 획득하고, 표시할 수 있다.
도 7은 본 개시의 다양한 실시예들에 따른 제2 텔레 이미지 내에서 제2 객체를 식별하기 위한 전자 장치의 동작 순서를 도시한다. 상기 제2 객체를 식별하기 위한 동작은 도 5에 도시된 동작 509의 상세 동작에 대응될 수 있다.
도 7을 참조하면, 동작 701에서, 전자 장치(101)의 프로세서(120)는 움직임에 기반하여 제2 텔레 이미지(440)가 제1 와이드 이미지(410)의 인식 정보에 포함되는지 여부를 결정할 수 있다. 전자 장치(101)는 센서 모듈(176)(예: 자이로 센서)을 통해 상기 전자 장치(101)의 움직임에 대한 정보를 획득할 수 있다. 전자 장치(101)는 상기 움직임에 대한 정보에 기반하여, 움직임 이후의 제2 카메라(320)에 의해 획득된 제2 텔레 이미지(440)가 움직임 이전의 제1 카메라(310)에 의해 획득된 제1 와이드 이미지(410)에 포함되는지 여부를 결정할 수 있다. 일 실시예에 따라, 전자 장치(101)는 줌(zoom) 정보, 상기 전자 장치(101)의 움직임에 대한 정보, 및 움직임 이전의 제 1 카메라(310)에 의해 획득된 제1 이미지(410) 내에서 제2 카메라(320)에 의해 획득된 제2 이미지(420)의 상대적 위치 정보에 기반하여, 움직임 이후의 제2 카메라(320)에 의해 획득된 제2 텔레 이미지(440)가 움직임 이전의 제 1 카메라(310)에 의해 획득된 제1 와이드 이미지(410)에 포함되는지 여부를 결정할 수 있다.
일 실시예에 따라, 전자 장치(101)는 제1 카메라(310) 및 제2 카메라(320)의 줌 정보에 기반하여 제2 텔레 이미지(440)가 제1 와이드 이미지(410)에 포함되는지 여부를 결정할 수 있다. 예를 들어, 제2 카메라(320)의 줌 정보가 광학 4배 줌에 상응하는 경우, 제1 와이드 이미지(410)의 넓이(예: 도 3a 의 311)는 100이라면, 제1 텔레 이미지(420) 및 제2 텔레 이미지(440)의 넓이(예: 도 3a의 321)는 25에 상응할 수 있다. 제2 카메라(320)의 줌 정보가 10배 줌에 상응하는 경우, 제1 텔레 이미지(420) 및 제2 텔레 이미지(440)의 넓이는 10에 상응할 수 있다. 10배 줌의 경우, 제1 와이드 이미지(410) 내에서 제2 텔레 이미지(440)가 차지하는 영역이 매우 작으며, 따라서 상대적으로 전자 장치(101)의 큰 움직임에도 상기 제2 텔레 이미지(440)는 제1 와이드 이미지(410) 내에 포함될 수도 있다. 반면, 4배 줌의 경우, 제1 와이드 이미지(410) 내에서 제2 텔레 이미지(440)가 차지하는 영역이 일정 크기 이상일 수 있다. 따라서, 상대적으로 전자 장치(101)의 작은 움직임에도 불구하고, 상기 제2 텔레 이미지(440)는, 상기 제1 와이드 이미지(410)에 포함되지 않는 이미지를 포함할 수 있다.
다른 실시예에 따라, 전자 장치(101)는 제1 와이드 이미지(410) 내에서 제1 텔레 이미지(420)의 상대적 위치 정보에 기반하여 제2 텔레 이미지(440)가 제1 와이드 이미지(410)에 포함되는지 여부를 결정할 수 있다. 예를 들어, 전자 장치(101)의 움직임 이전 제1 와이드 이미지(410) 내의 우측에 제1 텔레 이미지(420)가 위치하는 경우, 전자 장치(101)는 좌측 방향으로 상대적으로 큰 움직임이 있더라도, 여전히 제1 와이드 이미지(410) 내에 위치할 수 있다. 다른 예를 들어, 전자 장치(101)의 움직임 이전 제1 와이드 이미지(410) 내의 좌측에 제1 텔레 이미지(420)가 위치하는 경우, 전자 장치(101)는 우측 방향으로 상대적으로 큰 움직임이 있더라도, 여전히 제1 와이드 이미지(410) 내에 위치할 수 있다. 따라서, 전자 장치(101)는 제1 와이드 이미지(410) 내에서 제1 텔레 이미지(420)의 상대적 위치 정보, 제1 카메라(310) 및 제2 카메라(320)의 줌 정보 및 상기 전자 장치의 움직임에 대한 정보에 기반하여, 제2 텔레 이미지(440)가 제1 와이드 이미지(410)에 포함되는지 여부를 결정할 수 있다.
동작 703에서, 전자 장치(101)는 전자 장치(101)의 움직임 정보 및 카메라 배율 정보에 기반하여, 제2 텔레 이미지(440)를 제1 와이드 이미지(410)에 대한 인식 정보로 매핑할 수 있다. 일 실시예에 따라, 전자 장치(101)는 제1 와이드 이미지(410)에 포함되는 제2 객체(332)에 대한 특징점을 추출하고, 제2 텔레 이미지(440)에 포함되는 제2 객체(332)에 대한 특징점을 추출함으로써 정합하는 특징점의 개수를 획득할 수 있다. 제1 카메라(310) 및 제2 카메라(320)는 서로 상이한 배율에 대응하므로, 배율 정보를 고려하지 않고 특징점을 비교하는 경우, 정합하는 특징점을 추출하는데 실패할 수 있다. 따라서, 전자 장치(101)는 상기 배율에 대한 제1 줌 정보 및 제2 줌 정보에 기반하여, 정합하는 특징점을 추출할 수 있다. 상기 정합하는 특징점이 미리 정의된 개수 이상인 경우, 전자 장치(101)는 제1 와이드 이미지(410) 내에 상기 제2 객체(332)와 제2 텔레 이미지(440) 내에 상기 제2 객체(332)가 동일한 객체임을 결정하고, 제1 와이드 이미지(410)에 대한 인식 정보 중 상기 제2 객체(332)에 대한 인식 정보를 상기 제2 텔레 이미지(440)의 상기 제2 객체(332)에 대한 인식 정보로 매핑할 수 있다.
동작 705에서, 전자 장치(101)는 제2 와이드 이미지(430)를 획득할 수 있다. 제2 텔레 이미지(440)가 제1 와이드 이미지(410)의 인식 정보 내에 포함되지 않는 경우, 전자 장치(101)는 새로운 객체 인식을 위해, 상기 제1 카메라(310)를 통해 제2 와이드 이미지(430)를 획득할 수 있다. 상기 제2 와이드 이미지(430)는 넓은 시야에 상응하는 카메라에 의해 획득된 이미지에 대응할 수 있다. 일 실시예에 따라, 전자 장치(101)는 전자 장치(101)의 움직임에 대한 정보에 기반하여 제2 와이드 이미지(430)의 인식 정보를 생성하기 위한 동작 주기를 적응적으로 변경할 수 있다. 예컨대, 전자 장치(101)는 센서 모듈(176)에 포함되는 가속도 센서(미도시)를 이용함으로써 전자 장치(101)가 얼마나 빠르게 움직이는지에 대한 정보를 획득할 수 있다. 일 예로, 전자 장치(101)는 가속도 센서(미도시)로부터 수신한 정보에 기반하여, 미리 정의된 속도보다 빠르게 움직이는 것으로 판단하는 경우, 제2 텔레 이미지(440)가 제1 와이드 이미지(410)에 포함되는지 여부를 결정하기 위한 동작을 수행하지 않을 수 있다. 전자 장치(101)가 빠르게 움직이는 경우, 제2 시점의 제2 텔레 이미지(440)는 대부분 제1 시점의 제1 와이드 이미지(410)에 포함되지 않을 수 있기 때문에, 상기 제2 텔레 이미지(440)가 제1 와이드 이미지(410)에 포함되는지 결정하는 동작을 생략하고, 서버(108)로 제2 와이드 이미지(430)를 송신함으로써 객체 인식 정보를 획득하도록 동작할 수 있다. 다른 예로, 전자 장치(101)는 가속도 센서(미도시)로부터 수신한 정보에 기반하여, 전자 장치(101)가 미리 정의된 속도보다 느리게 움직이는 것으로 판단하는 경우, 상기 제1 와이드 이미지(410)에 상기 제2 텔레 이미지(440)가 포함되는지 여부를 결정하도록 동작할 수 있다. 전자 장치(101)가 느리게 움직이는 경우, 동작 주기에 따라 제2 텔레 이미지(440)가 제1 와이드 이미지(410)에 포함되는 확률이 높을 수 있기 때문이다.
동작 709에서, 전자 장치(101)는 제2 텔레 이미지(440)에 대한 인식 정보를 생성할 수 있다. 즉, 전자 장치(101)는 상기 움직임에 따라 획득한 제2 텔레 이미지(440)에 포함된 다수의 객체들에 대한 인식 정보를 획득하기 위해, 서버(108)로 제2 텔레 이미지(440)를 송신할 수 있다. 상기 서버(108)는 상기 제2 텔레 이미지(440)를 수신하고, 이미지 인식 엔진을 기반으로 객체 인식 프로세스를 수행할 수 있다. 이후, 상기 서버(108)는 상기 전자 장치(101)에 제2 텔레 이미지(440)에 대한 객체 인식 프로세서의 결과를 송신함으로써, 전자 장치(101)는 제2 텔레 이미지(440)에 대한 인식 정보를 획득할 수 있다. 본 개시의 다양한 실시예들에 따라, 전자 장치(101)는 서버(108)로 제2 텔레 이미지(440)를 송신하는 대신 전자 장치(101)의 서비스 모듈(200)에 포함된 이미지 인식 엔진(210)을 기반으로 제2 텔레 이미지(440)의 인식 정보를 생성할 수도 있다.
도 8은 본 개시의 다양한 실시예들에 따른 전자 장치의 제3 이미지에 포함되는 제2 객체에 대한 정보를 획득하기 위한 동작 순서를 도시한다. 제2 객체(332)에 대한 정보를 획득하기 위한 동작은 도 5에 도시된 동작 511의 상세 동작에 대응될 수 있다.
동작 801에서, 전자 장치(101)의 프로세서(120)는 제1 와이드 이미지(410)의 영역 정보에 기반하여, 제2 텔레 이미지(440) 내의 제2 객체(332)의 예상 위치 및 유형을 결정할 수 있다. 전자 장치(101)는 상기 전자 장치(101)의 움직임 이후 획득한 제2 텔레 이미지(440)가 제1 와이드 이미지(410)의 인식 정보 내에 포함되는 경우, 제1 와이드 이미지의 인식 정보를 이용하여 제2 텔레 이미지(440)의 제2 객체(332) 인식을 수행할 수 있다.
일 실시예에 따라, 전자 장치(101)는 제3 이미지에 포함되는 제2 객체(332)의 예상 위치를 결정할 수 있다. 예를 들어, 전자 장치(101)는 제2 카메라(320)의 줌 정보를 통해 제2 텔레 이미지(440)가 제1 와이드 이미지(410) 내에서 위치되는 영역의 크기를 결정할 수 있다. 또한, 전자 장치(101)는 제1 와이드 이미지(410) 내에서 제1 텔레 이미지(420)가 위치하는 영역 정보 및 상기 전자 장치(101)의 움직임에 대한 정보에 기반하여, 제1 와이드 이미지(410) 내에서 제2 텔레 이미지(440)의 예상 위치를 결정할 수 있다. 예를 들어, 전자 장치(101)가 움직이기 이전의 제1 텔레 이미지(420)는 제1 와이드 이미지(410)의 중앙에 위치할 수 있고, 전자 장치(101)는 좌측으로 1cm, 위쪽 방향으로 1cm씩 이동할 수 있다. 전자 장치(101)는 움직임 이후의 제2 텔레 이미지(440)는, 제1 와이드 이미지(410)의 중앙으로부터 좌측으로 1cm, 위쪽 방향으로 1cm 이동한 영역상에 위치할 것으로 예상할 수 있다. 전자 장치(101)는 제1 와이드 이미지(410)의 인식 정보에 포함되는 유형 정보를 기반으로 제2 텔레 이미지(440)의 제2 객체(332) 유형을 결정할 수 있다. 전자 장치(101)는 제1 와이드 이미지(410) 내의 상기 획득한 예상 위치 상의 제2 객체(332)를 제2 텔레 이미지(440)의 제2 객체(332)와 비교함으로써, 제1 와이드 이미지(410)의 제2 객체(332) 유형 정보를 제2 텔레 이미지(440)의 제2 객체(332) 유형 정보로 사용할 것인지 여부를 결정할 수 있다. 예를 들어, 줌 정보에 따른 리사이징(resizing), 특징점의 추출 및 비교를 통해 제1 와이드 이미지(410)의 예상 위치에 대응되는 제2 객체(332)와 제2 텔레 이미지(440)에 포함되는 제2 객체(332)가 동일하다고 결정할 수 있다. 상기 제1 와이드 이미지(410)의 예상 위치에 대응되는 제2 객체(332)와 제2 텔레 이미지(440)에 포함되는 제2 객체(332)가 동일한 경우, 전자 장치(101)는 제2 텔레 이미지(440)의 제2 객체(332)의 유형을 식별하기 위해 서버(108)로 제2 와이드 이미지(430)를 전송하지 않고, 제1 와이드 이미지(410)의 인식 정보에 포함되는 제2 객체(332)에 대한 유형 정보를 제2 텔레 이미지(440)의 제2 객체(332)에 대한 유형 정보와 동일한 것으로 결정할 수 있다. 일 실시예에 따라, 전자 장치(101)는 제1 카메라(310) 및 제2 카메라(320)의 배율에 관한 정보에 기반하여 특징점의 정합 여부를 판단할 수 있다. 예를 들어, 전자 장치(101)는 제1 와이드 이미지(410)의 제2 객체(332)의 특징점 및 제2 텔레 이미지(440)의 제2 객체(332)의 특징점을 각각 추출하고, 상기 배율에 관한 정보를 이용하여 특징점을 비교할 수 있다. 전자 장치(101)는 상기 배율에 관한 정보를 고려하지 않고 제1 와이드 이미지(410)에서 추출한 특징점과 제2 텔레 이미지(440)에서 추출한 특징점을 비교하는 경우, 실질적으로 동일한 제2 객체(332)임에도 불구하고, 특징점의 정합에 실패할 수 있다. 따라서, 전자 장치(101)는 제2 텔레 이미지(440)에서 추출한 특징점을 제1 카메라(310)의 배율에 따라 축소하고 제1 와이드 이미지(410)의 특징점과 비교하거나, 제1 와이드 이미지(410)에서 추출한 제2 객체(332)에 대한 특징점을 제2 카메라(320)의 배율에 따라 확대하고 제2 텔레 이미지(440)에서 추출한 특징점과 비교를 수행할 수 있다. 이에 따라, 전자 장치(101)는 상이한 배율에 대응되는 제1 카메라(310) 및 제2 카메라(320)간의 배율 차이를 고려한 특징점 정합을 수행할 수 있다.
동작 803에서, 전자 장치(101)는 상기 결정된 제2 객체(332)의 예상 위치와 연관되는 부분 이미지를 추출하고, 유형에 기반한 인식 데이터를 생성 및 전달할 수 있다. 예를 들어, 전자 장치(101)는 제2 텔레 이미지(440)에 포함된 제2 객체(332)를 인식하기 위해, 서버(108)로 제2 와이드 이미지(430)를 송신하지 않고 제1 와이드 이미지(410)의 예상 영역을 기반으로 제2 객체(332)에 대응되는 제2 텔레 이미지(440)의 일부 영역만을 추출함으로써 객체 이미지를 획득하고, 상기 객체 이미지를 서버(108)로 송신할 수 있다. 또한, 전자 장치(101)는 제1 와이드 이미지(410)의 인식 정보에 포함된 상기 제2 객체(332)에 대한 유형 정보를 상기 객체 이미지와 함께 서버(108)로 송신할 수 있다. 이에 따라, 서버(108)는 상기 제2 객체(332)만으로 이루어진 객체 이미지 및 상기 제2 객체(332)에 대한 유형 정보에 기반하여, 제2 객체(332) 인식을 수행할 수 있다. 예를 들어, 서버(108)는 제2 와이드 이미지(430)의 전체 이미지에 대해 객체 인식 처리를 수행하지 않고, 제2 텔레 이미지(440)에 포함된 제2 객체(332)만을 포함하는 영역(예: 음료 A의 텍스트를 포함)에 대한 객체 이미지(440) 및 상기 유형 정보(예: 원통형 용기)에 기반하여, 상기 원통형 용기에 상응하는 제2 객체(332)는 음료 A라는 인식 정보를 생성하고 상기 전자 장치(101)로 송신할 수 있다.
도 9a는 본 개시의 다양한 실시예들에 따른, 전자 장치의 제1 와이드 이미지의 인식 정보 내에 제2 텔레 이미지가 포함되는지 여부를 결정하기 위한 동작 순서를 도시한다. 도 9a의 동작들은, 도 7에 도시된 동작 701의 상세 동작들을 포함할 수 있다. 도 9에 도시된 동작들은 도 1에 도시된 프로세서(120)에 의해 수행될 수 있다.
동작 901에서, 프로세서(120)는, 줌 정보 및 상대적 위치를 식별할 수 있다. 다양한 실시예들에 따라, 프로세서(120)는, 제1 카메라(310) 및 제2 카메라(320)의 배율에 관한 정보를 식별할 수 있다. 예를 들어, 넓은 시야에 상응하는 제1 카메라(310)는, 1 배율 내지 2 배율에 상응할 수 있다. 다른 예를 들어, 좁은 시야에 상응하는 제2 카메라(320)는, 2 배율 내지 4 배율에 상응할 수 있다. 다양한 실시예들에 따라, 프로세서(120)는, 제1 영역 내에서 제2 영역의 상대적 위치를 식별할 수 있다. 상기 제1 영역은, 제1 카메라(310)에 의해 획득되는 이미지에 대한 영역을 포함할 수 있다. 상기 제2 영역은, 제2 카메라(320)에 의해 획득되는 이미지에 대한 영역을 포함할 수 있다. 예를 들어, 상기 제1 영역은, 제1 와이드 이미지(410)에 포함되는 영역을 지칭할 수 있다. 다른 예를 들어, 상기 제2 영역은, 제1 텔레 이미지(420)에 포함되는 영역을 지칭할 수 있다.
동작 903에서, 프로세서(120)는, 전자 장치(101)의 움직임에 대한 센서 데이터를 획득할 수 있다. 다양한 실시예들에 따라, 프로세서(120)는, 센서 모듈(176)로부터 전자 장치(101)의 움직임에 대한 데이터를 획득할 수 있다. 예를 들어, 센서 모듈(176)은, 가속도(acceleration) 센서 및 자이로(gyro) 센서를 포함할 수 있다. 상기 가속도 센서는, 전자 장치(101)의 속도의 변화에 대한 센싱 데이터를 포함할 수 있다. 상기 자이로 센서는, 전자 장치(101)의 기울어짐에 대한 센싱 데이터를 획득할 수 있다. 상기 기울어짐에 대한 센싱 데이터는, 피치(pitch), 롤(roll), 요(yaw)에 관련된 변화량을 지시하는 데이터를 포함할 수 있다.
동작 905에서, 프로세서(120)는, 센서 데이터, 줌 정보 및 상대적 위치에 대한 정보에 기반하여, 제1 와이드 이미지 이내에 위치하는지 결정할 수 있다. 다양한 실시예들에서, 프로세서(120)는, 센서 데이터 및 줌 정보에 기반하여, 전자 장치(101)의 움직임 이후에 대응하는 제2 시점에 제2 카메라(320)의 시야에 상응하는 제3 영역을 예측할 수 있다. 예를 들어, 프로세서(120)는, 전자 장치(101)의 상기 속도의 변화에 대한 센싱 데이터 및 상기 기울어짐에 대한 센싱 데이터를 이용하여, 전자 장치(101)의 움직임 즉, 제1 카메라(310) 및 제2 카메라(320)의 움직임에 대한 정보를 획득할 수 있다. 다양한 실시예들에서, 프로세서(120)는, 상기 획득된 제2 카메라(310)의 움직임에 대한 정보와 제2 카메라(320)의 줌 정보 및 상대적 위치에 대한 정보에 기반하여, 상기 제2 시점에 예측되는 제3 영역을 결정할 수 있다. 예를 들어, 프로세서(120)는, 제2 영역이 제1 영역 내부의 왼쪽에 위치된 경우, 전자 장치(101)가 왼쪽으로 움직이는 경우보다 오른쪽으로 움직이는 경우에 상기 제2 영역이 상기 제1 영역 내부에 위치될 확률이 더 크다고 판단할 수 있다. 다른 예를 들어, 프로세서(120)는, 제2 카메라(320)의 배율이 고 배율에 상응하는 경우, 제2 영역의 크기가 작다고 판단할 수 있다. 프로세서(120)는, 제2 영역의 크기에 기반하여, 제1 영역을 이탈하게 되는 전자 장치(101)의 움직임에 대한 임계 값을 크게 설정할 수 있다.
도 10a는 본 개시의 다양한 실시예들에 따른 제2 텔레 이미지를 제1 와이드 이미지의 인식 정보에 매핑하기 위한 전자 장치의 동작 순서를 도시한다. 제2 텔레 이미지를 제1 와이드 이미지의 인식 정보에 매핑하기 위한 전자 장치의 동작 순서는 도 7에 도시된 동작 703의 상세 동작에 상응할 수 있다.
도 10a를 참조하면, 동작 1001에서, 전자 장치(101)의 프로세서(120)는 제1 와이드 이미지(410)에 대한 인식 정보로부터 객체의 특징점을 추출할 수 있다. 전자 장치(101)는 제1 와이드 이미지(410)를 기반으로 관심 영역을 추출하고, 추출된 관심 영역 중 제2 객체(332)에 상응하는 영역이 포함하는 다수의 코너점들을 기반으로 특징점을 추출할 수 있다.
동작 1003에서, 전자 장치(101)는 추출된 특징점에 기초하여 객체 좌표를 생성할 수 있다. 전자 장치(101)는 다수의 코너점들을 기반으로 생성된 특징점에 기초하여, 상기 제1 와이드 이미지(410)에 포함되는 제2 객체에 대한 좌표 정보를 생성할 수 있다. 예를 들어, 도 10b를 참조하면, 상기 좌표 정보는, 제1 카메라(310)에 상응하는 제1 줌 정보에 기반한 제1 와이드 이미지(410) 상의 좌표 값을 포함할 수 있다. 동일한 객체를 포함하는 제2 텔레 이미지(440) 상의 좌표 값은 상이한 제2 줌 정보 값에 기반하므로, 좌표 값이 상이할 수 있다.
동작 1005에서, 전자 장치(101)는 생성된 객체 좌표를 설정된 제2 텔레 이미지(440)의 객체에 대한 위치 정보에 대응하는 제1 와이드 이미지(410)의 특징점과 정합할 수 있다. 전자 장치(101)는 제1 줌 정보와 제2 줌 정보가 상이한 값을 가지는 경우, 제1 줌 정보 및 제2 줌 정보의 비율을 획득하고, 상기 획득한 비율에 기반한 연산을 통해 제2 텔레 이미지(440)에 포함되는 객체의 크기를 조절할 수 있다.
동작 1007에서, 전자 장치(101)는 특징점의 개수가 미리 설정된 개수보다 같거나 많은지 여부를 판단할 수 있다. 전자 장치(101)는 제1 와이드 이미지(410)로부터 획득된 특징점과 제2 텔레 이미지(440)로부터 획득된 특징점 중 정합하는 특징점의 개수를 획득할 수 있다. 전자 장치(101)는 상기 정합하는 특징점의 개수가 미리 설정된 개수보다 크거나 같은지 여부를 결정할 수 있다. 상기 결정에 기반하여, 제1 와이드 이미지(410)에 포함된 객체와 제2 텔레 이미지(440)에 포함된 객체가 동일한 객체인지 여부를 결정할 수 있다. 예를 들어, 상기 정합하는 특징점의 개수가 미리 설정된 개수보다 작은 경우, 제1 와이드 이미지(410)의 객체와 제2 텔레 이미지(440)의 객체는 상이한 객체이므로 정합하는 특징점이 적을 수 있다. 따라서, 전자 장치(101)는 제1 와이드 이미지(410)의 객체와 제2 텔레 이미지(440)의 객체가 상이한 객체임을 결정하고, 제2 텔레 이미지(440)에 포함되는 객체에 대한 인식 정보를 획득하기 위해 서버(108)로 제2 와이드 이미지(430)를 송신할 수 있다.
동작 1009에서, 전자 장치(101)는 제1 와이드 이미지(410)의 객체와 제2 텔레 이미지(440)의 객체를 동일한 객체로 결정할 수 있다. 상기 정합하는 특징점의 개수가 미리 설정된 개수보다 크거나 같은 경우, 제1 와이드 이미지(410)의 객체와 제2 텔레 이미지(440)의 객체는 동일한 객체이므로 상기 정합하는 특징점의 개수가 미리 설정된 개수보다 많을 수 있다. 따라서, 전자 장치(101)는 제1 와이드 이미지(410)의 객체와 제2 텔레 이미지(440)의 객체가 동일한 객체임을 결정할 수 있다. 이후, 전자 장치(101)는 제2 텔레 이미지(440)의 객체를 인식하기 위해, 서버(108)로 제2 와이드 이미지(430)를 송신하지 않을 수 있다. 예를 들어, 전자 장치(101)는 제2 텔레 이미지(440)에 포함되는 제2 객체(332)에 상응하는 객체 이미지 및 제1 와이드 이미지(410)의 제2 객체(332)에 대한 유형 정보만을 서버(108)로 송신함으로써 인식 정보를 획득할 수 있다.
도 11a는 본 개시의 다양한 실시예들에 따른 전자 장치의 제1 와이드 이미지의 인식 정보 내에 제2 텔레 이미지가 포함되는지 여부를 결정하기 위한 동작 순서를 도시한다. 도 11a에 도시된 동작들은 도 10a에 도시된 동작 1001 내지 동작 1003의 상세 동작에 대응될 수 있다.
도 11a를 참조하면, 동작 1101에서, 전자 장치(101)의 프로세서(120)는 제1 와이드 이미지(410)와 제1 텔레 이미지(420)의 좌표를 매핑할 수 있다. 전자 장치(101)는 넓은 시야에 관련된 제1 카메라(310)에 상응하는 제1 줌 정보 및 좁은 시야에 관련된 제2 카메라(320)에 상응하는 제2 줌 정보를 기반으로 상기 제1 와이드 이미지(410) 및 상기 제1 텔레 이미지(420)의 크기를 결정할 수 있다. 예를 들어, 도 11b를 참조하면, 전자 장치(101)는 상기 제1 줌 정보가 1배율에 상응하는 경우, 제1 와이드 이미지(410)의 넓이를 100으로 결정하고, 상기 제2 줌 정보가 4배율에 상응하는 경우, 제1 텔레 이미지(420)의 넓이를 25로 결정할 수 있다. 전자 장치(101)는 각 이미지 내에 표시되는 객체를 비교함으로써, 제1 와이드 이미지(410)에 상응하는 영역에서 제1 텔레 이미지(420)에 상응하는 영역이 위치하는 좌표를 매핑할 수 있다.
동작 1103에서, 전자 장치(101)는 제1 텔레 이미지(420)가 줌 인(zoom in) 상태에 대응하는지 결정할 수 있다. 전자 장치(101)는 제2 카메라(320)에 상응하는 제1 줌 정보에 기반하여 제1 텔레 이미지(420)가 줌 인 상태에 대응되는지 결정할 수 있다. 전자 장치(101)는 제1 텔레 이미지(420)가 줌 인 상태에 대응되지 않는 경우, 제1 줌 정보와 제2 줌 정보에 기반하여, 배율 차이를 고려한 좌표 매핑이 필요하지 않으므로, 절차를 종료할 수 있다.
동작 1105에서, 전자 장치(101)는 제1 텔레 이미지(420)를 제1 와이드 이미지(410)에 매핑하여 제1 와이드 이미지(410) 내의 제1 텔레 이미지(420)의 좌표 정보를 획득할 수 있다. 전자 장치(101)는 제1 와이드 이미지(410)가 줌 인 상태에 대응되는 것으로 결정한 경우, 제1 텔레 이미지(420)의 좌표를 제1 와이드 이미지(410)로 매핑할 수 있다. 전자 장치(101)는, 넓은 시야에 상응하는 제1 카메라(310)에 의해 획득되는 제1 와이드 이미지(410)가 줌 인 상태에 대응되므로, 제1 와이드 이미지(410)의 확대 비율을 고려한 좌표 정보를 계산할 수 있다.
동작 1107에서, 전자 장치(101)는 제1 텔레 이미지(420)의 좌표 정보를 산출할 수 있다. 전자 장치(101)는 상기 획득한 좌표 정보에 기반하여, 제1 텔레 이미지(420) 내에서 객체가 표시되는 영역에 대한 좌표 정보를 산출할 수 있다. 전자 장치(101)는 상기 산출한 좌표 정보에 기반하여 제1 텔레 이미지(420)의 일부 영역만을 추출하고, 서버(108)에게 송신함으로써 상기 객체에 대한 인식 정보를 수신할 수 있다.
다양한 실시예들에서, 전자 장치(101)는, 명령어들(instructions)을 저장하는 메모리, 제1 시야(field of view, FOV)에 상응하는 제1 카메라(310), 상기 제1 시야보다 좁은 제2 시야에 상응하는 제2 카메라(320), 센서 모듈(176), 및 프로세서(120)를 포함할 수 있다. 상기 프로세서(120)는, 상기 제1 카메라(310)를 이용하여, 상기 제1 시야에 상응하는 제1 영역과 관련된 제1 이미지(예: 제1 와이드 이미지(410))를 획득하고, 상기 제1 이미지는 제1 객체(331) 및 제2 객체(332)를 포함하고, 상기 제2 카메라(320)를 이용하여, 상기 제2 시야에 상응하고, 상기 제1 영역에 포함되는 제2 영역과 관련된 제2 이미지(예: 제1 텔레 이미지(420))를 획득하고, 상기 제2 이미지(예: 제1 텔레 이미지(420))는 상기 제2 객체(332)를 포함하고, 상기 제1 이미지(예: 제1 와이드 이미지(410)) 및 제2 이미지(예: 제1 텔레 이미지(420))에 기반하여, 상기 제1 영역과 상기 제2 영역 사이의 상대적 위치에 대한 제1 정보를 획득하고, 상기 제2 카메라(320)를 이용하여, 상기 전자 장치의 움직임에 따라 상기 제2 영역으로부터 변경된 제3 영역에 상응하는 제4 이미지(예: 제2 텔레 이미지(440))를 획득하고, 상기 전자 장치의 움직임에 대한 제2 정보 및 상기 제1 정보에 기반하여, 상기 제4 이미지에 포함되는 상기 제2 객체(332)를 상기 제4 이미지(예: 제2 텔레 이미지(440))로부터 식별하고, 상기 제1 이미지(예: 제1 와이드 이미지(410))의 획득에 기반하여 인식된 상기 제2 객체(332)에 대한 정보에 기반하여 상기 제2 객체(332)에 대한 정보를 획득하고, 상기 제2 객체(332)에 대한 정보를 상기 메모리에 저장할 수 있다.
다양한 실시예들에서, 상기 프로세서는, 상기 제1 이미지(예: 제1 와이드 이미지(410))를 획득하고, 상기 획득된 상기 제1 이미지(예: 제1 와이드 이미지(410))에 대한 정보를 서버에게 송신할 수 있다.
다양한 실시예들에서, 상기 제4 이미지(예: 제2 텔레 이미지(440))는, 상기 제1 정보, 상기 제2 정보, 상기 제1 카메라(310)에 상응하는 제1 줌(zoom) 정보, 및 상기 제2 카메라(320)에 상응하는 제2 줌 정보 중 적어도 하나에 기반하여 결정될 수 있다.
다양한 실시예들에서, 상기 프로세서(120)는, 상기 제2 객체(332)의 영역에 상응하는 객체 이미지를 추출하고, 상기 제2 객체(332)의 유형에 기반하여, 상기 제2 객체(332)의 인식 정보를 생성하고, 상기 생성된 인식 정보 및 상기 추출된 객체 이미지를 송신할 수 있다.
다양한 실시예들에서, 상기 프로세서(120)는, 상기 제2 정보에 기반하여 제 1 이미지(예: 제1 와이드 이미지(410))의 인식 정보의 생성에 관련된 제1 주기를 결정하고, 상기 제3 이미지(예: 제2 와이드 이미지(430))를 상기 제1 이미지(예: 제1 와이드 이미지(410))로의 매핑에 관련된 제2 주기를 결정할 수 있다.
다양한 실시예들에서, 상기 전자 장치는, 상기 제1 이미지(예: 제1 와이드 이미지(410))에 기반하여 제 1 인식 정보를 생성하고, 제2 이미지(예: 제2 텔레 이미지(440))에 기반하여 제 2 인식 정보를 생성하는 이미지 인식 엔진을 더 포함할 수 있다.
다양한 실시예들에서, 상기 센서 모듈(176)은 자이로 센서(미도시), 중력 센서(미도시)를 포함할 수 있다. 다양한 실시예들에서, 상기 프로세서(120)는, 상기 자이로 센서를 이용하여, 상기 제2 정보 중 회전에 관련된 정보를 획득하고, 상기 중력 센서를 이용하여, 상기 제2 정보 중 수직 이동 및 수평 이동에 관련된 정보를 획득할 수 있다.
다양한 실시예들에서, 상기 프로세서는, 상기 제2 이미지(예: 제1 텔레 이미지(420))가, 상기 제1 이미지(예: 제1 와이드 이미지(410))의 범위를 벗어난 경우, 상기 제2 카메라(310)로부터 제3 이미지(예: 제2 텔레 이미지(440))를 수신하고, 상기 제3 이미지 중 상기 제1 이미지 영역을 제외한 영역에 대한 인식 정보를 생성할 수 있다.
다양한 실시예들에서, 상기 제1 인식 정보는, 상기 제1 객체(331) 및 상기 제2 객체(332)의 유형에 관련된 정보를 포함할 수 있고, 상기 제2 인식 정보는, 상기 제2 객체(332)에 관한 상품명, 판매 장소, 가격 비교의 정보를 포함할 수 있다.
다양한 실시예들에서, 상기 매핑은, 상기 제1 카메라(310)에 상응하는 제1 줌 정보 및 상기 제2 카메라(320)에 상응하는 제2 줌 정보에 기반하여 결정될 수 있다.
다양한 실시예들에서, 상기 프로세서(120)는, 객체 인식 정확도를 함께 저장하고, 정확도에 기반하여 객체 정보를 그대로 표시할 수 있다.
다양한 실시예들에서, 상기 프로세서(120)는, 상기 객체 인식 정확도에 기반하여, 상기 제2 카메라(320)를 이용하여 상기 객체를 다시 인식할 수 있다.
다양한 실시예들에서, 상기 프로세서(120)는, 상기 제2 정보에 기반하여, 상기 움직임의 범위가 미리 결정된 범위를 초과하는 경우, 상기 제1 카메라(310)를 이용하여, 제3 이미지(예: 제2 와이드 이미지(430))를 생성할 수 있다.
본 개시의 청구항 또는 명세서에 기재된 실시예들에 따른 방법들은 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합의 형태로 구현될(implemented) 수 있다.
소프트웨어로 구현하는 경우, 하나 이상의 프로그램(소프트웨어 모듈)을 저장하는 컴퓨터 판독 가능 저장 매체가 제공될 수 있다. 컴퓨터 판독 가능 저장 매체에 저장되는 하나 이상의 프로그램은, 전자 장치(device) 내의 하나 이상의 프로세서에 의해 실행 가능하도록 구성된다(configured for execution). 하나 이상의 프로그램은, 전자 장치로 하여금 본 개시의 청구항 또는 명세서에 기재된 실시예들에 따른 방법들을 실행하게 하는 명령어(instructions)를 포함한다.
이러한 프로그램(소프트웨어 모듈, 소프트웨어)은 랜덤 액세스 메모리 (random access memory), 플래시(flash) 메모리를 포함하는 불휘발성(non-volatile) 메모리, 롬(read only memory, ROM), 전기적 삭제가능 프로그램가능 롬(electrically erasable programmable read only memory, EEPROM), 자기 디스크 저장 장치(magnetic disc storage device), 컴팩트 디스크 롬(compact disc-ROM, CD-ROM), 디지털 다목적 디스크(digital versatile discs, DVDs) 또는 다른 형태의 광학 저장 장치, 마그네틱 카세트(magnetic cassette)에 저장될 수 있다. 또는, 이들의 일부 또는 전부의 조합으로 구성된 메모리에 저장될 수 있다. 또한, 각각의 구성 메모리는 다수 개 포함될 수도 있다.
또한, 프로그램은 인터넷(Internet), 인트라넷(Intranet), LAN(local area network), WAN(wide area network), 또는 SAN(storage area network)과 같은 통신 네트워크, 또는 이들의 조합으로 구성된 통신 네트워크를 통하여 접근(access)할 수 있는 부착 가능한(attachable) 저장 장치(storage device)에 저장될 수 있다. 이러한 저장 장치는 외부 포트를 통하여 본 개시의 실시예를 수행하는 장치에 접속할 수 있다. 또한, 통신 네트워크상의 별도의 저장장치가 본 개시의 실시예를 수행하는 장치에 접속할 수도 있다.
상술한 본 개시의 구체적인 실시예들에서, 개시에 포함되는 구성 요소는 제시된 구체적인 실시예에 따라 단수 또는 복수로 표현되었다. 그러나, 단수 또는 복수의 표현은 설명의 편의를 위해 제시한 상황에 적합하게 선택된 것으로서, 본 개시가 단수 또는 복수의 구성 요소에 제한되는 것은 아니며, 복수로 표현된 구성 요소라 하더라도 단수로 구성되거나, 단수로 표현된 구성 요소라 하더라도 복수로 구성될 수 있다.
한편 본 개시의 상세한 설명에서는 구체적인 실시예에 관해 설명하였으나, 본 개시의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 개시의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.

Claims (20)

  1. 전자 장치에 있어서,
    하우징;
    제1 화각(field of view, FOV)을 갖는 제1 카메라;
    상기 제1 카메라에 인접하여 배치되고, 상기 제1 화각보다 좁은 제2 화각을 갖는 제2 카메라;
    통신 회로;
    상기 전자 장치의 움직임을 감지하기 위한 적어도 하나의 센서 모듈;
    실행 가능한 명령어들을 저장하는 메모리; 및
    상기 제1 카메라, 상기 제2 카메라, 상기 통신 회로, 및 상기 적어도 하나의 센서 모듈에 작동적으로(operatively) 연결되고, 상기 메모리에 액세스하여 상기 명령어들을 실행하는 적어도 하나의 프로세서를 포함하고,
    상기 적어도 하나의 프로세서는,
    제1 시점에서 상기 제1 카메라를 이용하여, 상기 제1 화각을 갖는 제1 이미지를 생성하고,
    상기 제1 시점에서 상기 제2 카메라를 이용하여, 상기 제2 화각을 갖는 제2 이미지를 생성하고,
    상기 제1 이미지 및 상기 제2 이미지에 기반하여 상기 제1 이미지 내에 포함된 적어도 하나의 객체 및 상기 제2 이미지 내에 포함된 객체에 대한 객체 인식 정보를 획득하고,
    상기 적어도 하나의 센서 모듈을 통해 상기 전자 장치의 움직임을 검출하고,
    상기 전자 장치의 움직임에 기반하여 제2 시점에서, 상기 제2 카메라를 이용하여 상기 제2 화각을 갖는 제4 이미지를 생성하고,
    상기 제2 화각의 상기 제4 이미지 내의 객체가 상기 제1 이미지 내에 포함된 경우, 상기 제2 시점에서 생성된 상기 제4 이미지와 상기 제1 시점에서 생성된 상기 제1 이미지를 매핑하고,
    상기 제4 이미지와 매핑된 상기 제1 이미지와 중첩되는 상기 제4 이미지 내의 객체에 대한 객체 인식 정보를 획득하도록 설정된 전자 장치.
  2. 청구항 1에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 통신 회로를 이용하여, 외부 서버에 상기 제1 이미지 및 상기 제2 이미지를 송신하고,
    상기 통신 회로를 이용하여, 상기 외부 서버로부터 상기 제1 이미지 내에 포함된 적어도 하나의 객체 및 상기 제2 이미지 내에 포함된 객체에 대한 객체 인식 정보를 수신하도록 설정된 전자 장치.
  3. 청구항 1에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 제2 화각의 상기 제4 이미지 내의 객체가 상기 제1 화각의 상기 제1 이미지 내에 포함되지 않은 경우, 상기 제2 시점에서 상기 제2 카메라를 이용하여 상기 제2 화각을 갖는 상기 제4 이미지와, 상기 제2 시점에서 상기 제1 카메라를 이용하여 상기 제1 화각을 갖는 제3 이미지를 생성하도록 더 설정된 전자 장치.
  4. 청구항 3에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 전자 장치의 움직임에 대한 정보에 기반하여 상기 제2 화각을 갖는 상기 제4 이미지의 인식 정보의 생성에 관련된 제1 주기를 결정하고,
    상기 제4 이미지와 상기 제1 이미지의 매핑에 관련된 제2 주기를 결정하도록 설정된 전자 장치.
  5. 청구항 1에 있어서,
    상기 전자 장치는,
    상기 제1 이미지에 기반하여 상기 제1 이미지 내에 포함된 적어도 하나의 객체에 대한 제 1 인식 정보를 생성하고, 상기 제2 이미지에 기반하여 상기 제2 이미지에 포함된 객체에 대한 제 2 인식 정보를 생성하는 이미지 인식 엔진을 더 포함하는 전자 장치.
  6. 청구항 1에 있어서,
    상기 적어도 하나의 프로세서는,
    객체 인식 정확도를 함께 저장하고, 정확도에 기반하여 객체 정보를 그대로 표시하도록 설정된 전자 장치.
  7. 청구항 6에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 객체 인식 정확도에 기반하여, 상기 제2 카메라를 이용하여 상기 제4 이미지에 포함된 객체를 다시 인식하도록 설정된 전자 장치.
  8. 청구항 7에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 제4 이미지가, 상기 제1 이미지의 범위를 벗어난 경우, 상기 제2 카메라로부터 제3 이미지 정보를 수신하고,
    상기 제3 이미지 중 상기 제1 이미지와 중첩되는 영역을 제외한 나머지 영역에 대한 인식 정보를 생성하도록 더 설정된 전자 장치.
  9. 청구항 1에 있어서,
    상기 검출된 전자 장치의 움직임의 범위가 미리 결정된 범위를 초과하는 경우, 상기 제1 카메라를 이용하여, 상기 제1 화각을 갖는 제3 이미지를 생성하도록 설정된 전자 장치.
  10. 청구항 5에 있어서,
    상기 제1 인식 정보는, 상기 제1 이미지 내에 포함된 적어도 하나의 객체의 유형(type)에 관련된 정보를 포함하고,
    상기 제2 인식 정보는, 상기 제2 이미지 내에 포함된 객체에 관한 상품명, 판매 장소, 가격 비교의 정보를 포함하는 전자 장치.
  11. 전자 장치의 동작 방법에 있어서,
    상기 전자 장치의 적어도 하나의 프로세서가, 제1 시점에서 제1 카메라를 이용하여, 제1 화각을 갖는 제1 이미지를 생성하는 동작과,
    상기 적어도 하나의 프로세서가, 상기 제1 시점에서 제2 카메라를 이용하여, 제2 화각을 갖는 제2 이미지를 생성하는 동작과,
    상기 적어도 하나의 프로세서가, 상기 제1 이미지 및 상기 제2 이미지에 기반하여, 상기 제1 이미지 내에 포함된 적어도 하나의 객체 및 상기 제2 이미지 내에 포함된 객체에 대한 객체 인식 정보를 획득하는 동작과,
    상기 적어도 하나의 프로세서가, 상기 전자 장치의 적어도 하나의 센서를 이용하여, 상기 전자 장치의 움직임을 검출하는 동작과,
    상기 적어도 하나의 프로세서가, 상기 전자 장치의 움직임에 기반하여 제2 시점에서 상기 제2 카메라를 이용하여, 상기 제2 화각을 갖는 제4 이미지를 생성하는 동작과,
    상기 적어도 하나의 프로세서가, 상기 제2 화각의 상기 제4 이미지 내의 객체가 상기 제1 이미지 내에 포함된 경우, 상기 제2 시점에서 생성된 상기 제4 이미지와 상기 제1 시점에서 생성된 상기 제1 이미지를 매핑하는 동작과,
    상기 적어도 하나의 프로세서가, 상기 제4 이미지와 매핑된 상기 제1 이미지와 중첩되는 상기 제4 이미지 내의 객체에 대한 객체 인식 정보를 획득하는 동작을 포함하는 동작 방법.
  12. 청구항 11에 있어서,
    상기 전자 장치의 통신 회로를 통해, 상기 제1 이미지 및 상기 제2 이미지를 외부 서버로 송신하는 동작과,
    상기 통신 회로를 통해, 상기 외부 서버로부터, 상기 제1 이미지 내에 포함된 적어도 하나의 객체 및 상기 제2 이미지 내에 포함된 객체에 대한 객체 인식 정보를 수신하는 동작을 더 포함하는 동작 방법.
  13. 청구항 11에 있어서,
    상기 제2 화각의 상기 제4 이미지 내의 객체가 상기 제1 화각의 상기 제1 이미지 내에 포함되지 않은 경우, 상기 제2 시점에서 상기 제2 카메라를 이용하여 상기 제2 화각을 갖는 상기 제4 이미지와, 상기 제2 시점에서 상기 제1 카메라를 이용하여 상기 제1 화각을 갖는 제3 이미지를 생성하는 동작을 더 포함하는 동작 방법.
  14. 청구항 11에 있어서,
    상기 전자 장치의 움직임에 대한 정보에 기반하여, 상기 제2 화각을 갖는 상기 제4 이미지의 인식 정보의 생성에 관련된 제1 주기를 결정하는 동작과,
    상기 제4 이미지와 상기 제1 이미지의 매핑에 관련된 제2 주기를 결정하는 동작을 더 포함하는 동작 방법.
  15. 청구항 11에 있어서,
    상기 제1 이미지에 기반하여 상기 제1 이미지 내에 포함된 적어도 하나의 객체에 대한 제1 인식 정보를 생성하는 동작과,
    상기 제2 이미지에 기반하여 상기 제2 이미지에 포함된 객체에 대한 제2 인식 정보를 생성하는 동작을 더 포함하는 동작 방법.
  16. 청구항 11에 있어서,
    객체 인식 정확도를 저장하는 동작과,
    상기 객체 인식 정확도에 기반하여, 객체 정보를 그대로 표시하는 동작을 더 포함하는 동작 방법.
  17. 청구항 16에 있어서,
    상기 객체 인식 정확도에 기반하여, 상기 제2 카메라를 이용하여, 상기 제4 이미지에 포함된 객체를 다시 인식하는 동작을 더 포함하는 동작 방법.
  18. 청구항 17에 있어서,
    상기 제4 이미지가, 상기 제1 이미지의 범위를 벗어난 경우, 상기 제2 카메라로부터 제3 이미지 정보를 수신하는 동작과,
    상기 제3 이미지 중 상기 제1 이미지와 중첩되는 영역을 제외한 나머지 영역에 대한 인식 정보를 생성하는 동작을 더 포함하는 동작 방법.
  19. 청구항 11에 있어서,
    상기 검출된 상기 전자 장치의 움직임의 범위가 미리 결정된 범위를 초과하는 경우, 상기 제1 카메라를 이용하여, 상기 제1 화각을 갖는 제3 이미지를 생성하는 동작을 더 포함하는 동작 방법.
  20. 청구항 15에 있어서,
    상기 제1 인식 정보는, 상기 제1 이미지 내에 포함된 적어도 하나의 객체의 유형(type)에 관련된 정보를 포함하고,
    상기 제2 인식 정보는, 상기 제2 이미지 내에 포함된 객체에 관한 상품명, 판매 장소, 가격 비교의 정보를 포함하는 동작 방법.
KR1020180038752A 2018-04-03 2018-04-03 이미지 내에서 객체를 인식하기 위한 장치 및 방법 KR102661590B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020180038752A KR102661590B1 (ko) 2018-04-03 2018-04-03 이미지 내에서 객체를 인식하기 위한 장치 및 방법
PCT/KR2019/003548 WO2019194455A1 (en) 2018-04-03 2019-03-27 Apparatus and method for recognizing object in image
US16/366,660 US11017263B2 (en) 2018-04-03 2019-03-27 Apparatus and method for recognizing object in image
CN201980022475.1A CN111919222B (zh) 2018-04-03 2019-03-27 识别图像中的对象的装置和方法
EP19782109.3A EP3746940A4 (en) 2018-04-03 2019-03-27 APPARATUS AND METHOD FOR RECOGNIZING AN OBJECT IN AN IMAGE

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180038752A KR102661590B1 (ko) 2018-04-03 2018-04-03 이미지 내에서 객체를 인식하기 위한 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20190115722A KR20190115722A (ko) 2019-10-14
KR102661590B1 true KR102661590B1 (ko) 2024-04-29

Family

ID=68054446

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180038752A KR102661590B1 (ko) 2018-04-03 2018-04-03 이미지 내에서 객체를 인식하기 위한 장치 및 방법

Country Status (5)

Country Link
US (1) US11017263B2 (ko)
EP (1) EP3746940A4 (ko)
KR (1) KR102661590B1 (ko)
CN (1) CN111919222B (ko)
WO (1) WO2019194455A1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102661596B1 (ko) * 2018-08-08 2024-04-29 삼성전자주식회사 이미지에 대한 인식 정보, 인식 정보와 관련된 유사 인식 정보, 및 계층 정보를 이용하여 외부 객체에 대한 인식 결과를 제공하는 전자 장치 및 그의 동작 방법
KR102661185B1 (ko) * 2018-10-18 2024-04-29 삼성전자주식회사 전자 장치 및 그의 이미지 촬영 방법
US10956694B2 (en) * 2019-04-05 2021-03-23 Zebra Technologies Corporation Device and method for data capture aiming assistance
US11601589B2 (en) * 2020-09-15 2023-03-07 Micron Technology, Inc. Actuating an image sensor
US11727678B2 (en) * 2020-10-30 2023-08-15 Tiliter Pty Ltd. Method and apparatus for image recognition in mobile communication device to identify and weigh items
EP4060982B1 (en) * 2021-03-15 2023-06-28 Axis AB Method and monitoring camera for handling video streams
US11816176B2 (en) * 2021-07-27 2023-11-14 Locker 2.0, Inc. Systems and methods for enhancing online shopping experience

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014154062A (ja) * 2013-02-13 2014-08-25 Nissan Motor Co Ltd 物体検知装置
US20160381289A1 (en) * 2015-06-23 2016-12-29 Samsung Electronics Co., Ltd. Digital photographing apparatus and method of operating the same

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8861864B2 (en) 2010-03-11 2014-10-14 Qualcomm Incorporated Image feature detection based on application of multiple feature detectors
JP5699557B2 (ja) * 2010-11-16 2015-04-15 住友電気工業株式会社 対象識別装置及び対象識別方法
KR102166719B1 (ko) * 2013-06-27 2020-10-16 삼성전자주식회사 전자장치 및 전자장치를 이용한 정보교환 방법
KR20150135895A (ko) * 2014-05-26 2015-12-04 삼성전자주식회사 이미지 처리 방법 및 그 전자 장치
US9524418B2 (en) * 2014-06-05 2016-12-20 Promethean Limited Systems and methods for detecting, identifying and tracking objects and events over time
EP3012777B1 (en) * 2014-10-23 2017-03-15 Axis AB Modification of at least one parameter used by a video processing algorithm for monitoring of a scene
KR20160058519A (ko) * 2014-11-17 2016-05-25 삼성전자주식회사 복수의 영상들에 대한 영상 처리
KR102618495B1 (ko) * 2015-01-18 2023-12-29 삼성전자주식회사 영상 처리 장치 및 방법
KR101731568B1 (ko) 2015-02-16 2017-05-02 한국과학기술원 시간적 일관성을 유지하는 다시점 이미지의 기하 왜곡 보정 방법 및 장치
KR102352682B1 (ko) * 2015-06-23 2022-01-18 삼성전자주식회사 디지털 촬영 장치 및 그 동작 방법
US10194080B2 (en) * 2015-10-07 2019-01-29 Sensors Unlimited, Inc. Multiple channel imaging system
US10102448B2 (en) * 2015-10-16 2018-10-16 Ehdp Studios, Llc Virtual clothing match app and image recognition computing device associated therewith
KR102561572B1 (ko) * 2016-01-20 2023-07-31 삼성전자주식회사 센서 활용 방법 및 이를 구현한 전자 장치
US20180070010A1 (en) * 2016-09-02 2018-03-08 Altek Semiconductor Corp. Image capturing apparatus and image zooming method thereof
KR102622754B1 (ko) * 2016-09-07 2024-01-10 삼성전자주식회사 이미지 합성 방법 및 이를 지원하는 전자 장치
KR20190008610A (ko) * 2017-07-17 2019-01-25 엘지전자 주식회사 이동 단말기 및 그 제어 방법
US11282389B2 (en) * 2018-02-20 2022-03-22 Nortek Security & Control Llc Pedestrian detection for vehicle driving assistance

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014154062A (ja) * 2013-02-13 2014-08-25 Nissan Motor Co Ltd 物体検知装置
US20160381289A1 (en) * 2015-06-23 2016-12-29 Samsung Electronics Co., Ltd. Digital photographing apparatus and method of operating the same

Also Published As

Publication number Publication date
EP3746940A1 (en) 2020-12-09
CN111919222B (zh) 2024-04-26
US20190303708A1 (en) 2019-10-03
CN111919222A (zh) 2020-11-10
EP3746940A4 (en) 2021-03-17
WO2019194455A1 (en) 2019-10-10
US11017263B2 (en) 2021-05-25
KR20190115722A (ko) 2019-10-14

Similar Documents

Publication Publication Date Title
KR102661590B1 (ko) 이미지 내에서 객체를 인식하기 위한 장치 및 방법
US10891671B2 (en) Image recognition result culling
KR102664688B1 (ko) 가상 캐릭터 기반 촬영 모드를 제공하는 전자 장치 및 이의 동작 방법
KR102597518B1 (ko) 영상에 보케 효과를 적용하는 전자 장치 및 그 제어 방법
US11604820B2 (en) Method for providing information related to goods on basis of priority and electronic device therefor
KR102402148B1 (ko) 전자 장치 및 그의 문자 인식 방법
US11270420B2 (en) Method of correcting image on basis of category and recognition rate of object included in image and electronic device implementing same
US11048923B2 (en) Electronic device and gesture recognition method thereof
EP3718296B1 (en) Electronic device and method for controlling autofocus of camera
US20220189175A1 (en) Electronic device and method for providing service corresponding to selection of object in image
KR102661596B1 (ko) 이미지에 대한 인식 정보, 인식 정보와 관련된 유사 인식 정보, 및 계층 정보를 이용하여 외부 객체에 대한 인식 결과를 제공하는 전자 장치 및 그의 동작 방법
US10769475B2 (en) Method of identifying objects based on region of interest and electronic device supporting the same
KR102646344B1 (ko) 이미지를 합성하기 위한 전자 장치 및 그의 동작 방법
KR102603254B1 (ko) 웹 콘텐츠를 ar모드에서 표시하는 전자 장치 및 방법
US11956530B2 (en) Electronic device comprising multi-camera, and photographing method
US11889181B2 (en) Electronic device having plurality of lenses where the device changes a visual object corresponding to a recommended lens
KR102570009B1 (ko) Ar 객체 생성 방법 및 전자 장치
KR102607789B1 (ko) 이미지 처리 방법 및 그 전자 장치
KR20210068853A (ko) 카메라를 포함하는 폴더블 전자 장치
KR102665643B1 (ko) 아바타 표시를 제어하기 위한 방법 및 그 전자 장치
KR102605451B1 (ko) 이미지 내에 포함된 복수의 외부 객체들 각각에 대응하는 복수의 서비스들을 제공하는 전자 장치 및 방법
KR20210100341A (ko) 깊이 정보에 기반한 이미지 보정 방법 및 장치
KR20210121522A (ko) 카메라의 자동 초점 검출 방법 및 이를 지원하는 전자 장치
KR20210115786A (ko) 자기 이미지 캡쳐 방법 및 이를 위한 전자 장치

Legal Events

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