KR20230039097A - 전자 장치 및 이의 제어 방법 - Google Patents

전자 장치 및 이의 제어 방법 Download PDF

Info

Publication number
KR20230039097A
KR20230039097A KR1020210121997A KR20210121997A KR20230039097A KR 20230039097 A KR20230039097 A KR 20230039097A KR 1020210121997 A KR1020210121997 A KR 1020210121997A KR 20210121997 A KR20210121997 A KR 20210121997A KR 20230039097 A KR20230039097 A KR 20230039097A
Authority
KR
South Korea
Prior art keywords
information
specific region
electronic device
image
camera
Prior art date
Application number
KR1020210121997A
Other languages
English (en)
Inventor
윤석언
김진호
이형석
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020210121997A priority Critical patent/KR20230039097A/ko
Priority to EP22867529.4A priority patent/EP4328892A1/en
Priority to PCT/KR2022/010027 priority patent/WO2023038260A1/ko
Publication of KR20230039097A publication Critical patent/KR20230039097A/ko
Priority to US18/197,906 priority patent/US20230290087A1/en

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B29/00Maps; Plans; Charts; Diagrams, e.g. route diagram
    • G09B29/003Maps
    • G09B29/004Map manufacture or repair; Tear or ink or water resistant maps; Long-life maps
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/002Specific input/output arrangements not covered by G06F3/01 - G06F3/16
    • G06F3/005Input arrangements through a video camera
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04817Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0486Drag-and-drop
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/60Rotation of whole images or parts thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • 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
    • G06V10/46Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/69Microscopic objects, e.g. biological cells or cellular parts
    • G06V20/698Matching; Classification
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B29/00Maps; Plans; Charts; Diagrams, e.g. route diagram
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/63Control of cameras or camera modules by using electronic viewfinders
    • H04N23/633Control of cameras or camera modules by using electronic viewfinders for displaying additional information relating to control or operation of the camera
    • H04N23/635Region indicators; Field of view indicators
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/64Computer-aided capture of images, e.g. transfer from script file into camera, check of taken image quality, advice or proposal for image composition or decision on when to take image
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/698Control of cameras or camera modules for achieving an enlarged field of view, e.g. panoramic image capture

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Graphics (AREA)
  • Educational Administration (AREA)
  • Educational Technology (AREA)
  • Business, Economics & Management (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Processing Or Creating Images (AREA)

Abstract

본 발명은 사용자 인터페이스, 카메라, 메모리, 프로세서를 포함하는 전자 장치에 관한 발명이다. 전자 장치는, 특정 영역에 존재하는 적어도 하나의 기기의 배치 상태를 나타내는 맵(Map)을 생성하기 위한 제1 사용자 명령을 사용자 인터페이스를 통해 입력 받고, 제1 사용자 명령이 입력되면, 카메라를 통해 특정 영역 및 적어도 하나의 기기를 촬영하여 이미지를 획득하고, 이미지를 바탕으로, 특정 영역의 크기 및 형상에 대한 정보를 획득하고, 이미지 내에 포함된 적어도 하나의 기기를 인식하여 적어도 하나의 기기에 대한 식별 정보 및 배치 정보를 획득하고, 특정 영역의 크기 및 형상에 대한 정보와 적어도 하나의 기기에 대한 식별 정보 및 배치 정보를 바탕으로 특정 영역에 대한 맵을 생성한다.

Description

전자 장치 및 이의 제어 방법 {ELECTRONIC APPARATUS AND METHOD FOR CONTROLLING THEREOF}
본 개시는 전자 장치 및 이의 제어 방법에 관한 것으로, 더욱 상세하게는, 카메라 촬영으로 특정 영역을 인식하여 맵을 생성하는 전자 장치 및 이의 제어 방법에 관한 것이다.
전자 장치는 집 내부에 존재하는 서버에 등록된 IoT(Internet of Things) 기기의 목록을 각 IoT 기기가 위치한 특정 영역 별로 분류 및 표시하여, IoT 기기의 상태 정보 및 제어 정보를 사용자에게 제공할 수 있다. 또한, 집 내부 특정 영역인 거실, 침실, 부엌, 화장실 등의 특정 영역 별 분류를 텍스트(Text) 목록 형식으로 사용자에게 제공할 수 있을 뿐만 아니라 집 내부 특정 영역을 도시한 평면도의 형식으로 사용자에게 제공할 수 있다.
전자 장치는 IoT 기기 및 집안 내부 특정 영역을 평면도 형식으로 사용자에게 제공하는 경우, IoT 기기의 위치 정보를 이용하여 집안 내부 특정 영역에서의 IoT 기기 위치가 적용된 평면도를 제공할 수 있고, 사용자는 사용자 인터페이스를 통해 IoT 기기의 위치 또는 집안 내부 특정 영역의 넓이, 집안 내부 특정 영역의 위치를 수정할 수 있다.
여기서, 종래 기술은 개념적인 특정 영역과 IoT 기기에 대한 정보를 사용자에게 텍스트 형식이나 임의의 특정 영역 이미지의 형태로 제공하였기 때문에 집 내부의 특정 영역의 형상, 특정 영역의 코너(Corner), 특정 영역의 높이, 특정 영역의 너비, 기기의 배치 위치에 대한 실제 특정 영역 및 기기에 대한 정확한 정보가 포함된 전체 특정 영역의 지도를 사용자에게 제공함에 있어 한계가 있었다.
본 개시는 상술한 문제를 개선하기 위해 고안된 것으로, 본 개시의 목적은 실제 특정 영역 및 기기에 대한 정확한 정보가 포함된 집 내부 특정 영역의 플로어 맵(Floor Map)을 생성하여 특정 영역의 크기 및 형상, 특정 영역 내에 존재하는 기기의 식별 정보 및 배치 정보를 제공하는 전자 장치 및 이의 제어 방법을 제공함에 있다.
상술한 목적을 달성하기 위한 본 실시 예에 따른 전자 장치는, 사용자 인터페이스, 카메라, 메모리 및 프로세서를 포함하고, 상기 프로세서는, 제1 사용자 명령을 상기 사용자 인터페이스를 통해 입력되면, 상기 카메라를 통해 특정 영역 및 적어도 하나의 기기에 대응하는 이미지를 획득하고, 상기 이미지에 기초하여 상기 특정 영역에 대응하는 정보와 상기 이미지에 포함된 상기 적어도 하나의 기기에 대한 식별 정보 및 배치 정보를 획득하고, 상기 특정 영역에 대응하는 정보와 상기 적어도 하나의 기기에 대한 식별 정보 및 배치 정보에 기초하여 상기 특정 영역에 대응하는 맵을 제공할 수 있다.
한편, 상기 프로세서는, 상기 카메라를 통한 파노라마 스캔(Panorama Scan)으로 상기 특정 영역 및 상기 적어도 하나의 기기의 파노라마 이미지를 획득할 수 있다.한편, 상기 프로세서는, 상기 파노라마 이미지의 굴곡 정보를 획득하고, 상기 획득한 파노라마 이미지의 굴곡 정보에 기초하여 상기 특정 영역의 코너, 상기 특정 영역의 높이, 상기 특정 영역의 너비 중 적어도 하나를 인식하여 상기 특정 영역의 형상에 대한 정보를 획득할 수 있다.
한편, 상기 프로세서는, 상기 파노라마 이미지의 굴곡 정보에 기초하여, 상기 특정 영역 중 곡률이 크게 나타나는 영역일수록, 상기 영역의 실제 너비를 상기 파노라마 이미지에 포함된 영역의 너비보다 작도록 획득하고, 상기 파노라마 이미지의 굴곡 정보에 기초하여, 상기 특정 영역 중 곡률이 작게 나타나는 영역일수록, 상기 영역의 실제 너비를 상기 파노라마 이미지에 포함된 영역의 너비보다 크도록 획득할 수 있다.
한편, 상기 프로세서는, 상기 카메라를 통한 증강 현실 스캔(Augmented Reality Scan)으로 상기 특정 영역 및 상기 적어도 하나의 기기의 증강 현실 이미지를 획득할 수 있다.
한편, 상기 프로세서는, 상기 카메라를 통해 상기 특정 영역의 코너를 증강 현실 스캔하여 상기 특정 영역의 코너에 대한 정보를 획득하고, 상기 카메라를 통해 상기 특정 영역의 바닥을 스캔하면, 상기 바닥의 패턴에 기초하여 상기 바닥의 넓이, 상기 특정 영역의 크기 및 형상에 대한 정보를 획득하고, 상기 카메라의 동선 및 상기 카메라를 통해 인식된 벽의 모양에 기초하여 상기 특정 영역의 크기 및 형상에 대한 정보를 획득할 수 있다.
한편, 상기 프로세서는, 상기 증강 현실 이미지로 획득된 상기 특정 영역의 중간에 임의의 점을 설정하고, 상기 임의의 점을 지나면서 상기 증강 현실 이미지로 획득된 상기 특정 영역의 바닥을 수직으로 지나는 가상의 축을 중심으로 상기 특정 영역 또는 상기 기기를 상기 획득된 이미지 상에서 회전시키는 코너 로테이션(Corner Rotation) 방법으로 사용자의 시각과 동일한 맵을 생성할 수 있다.
한편, 상기 프로세서는, 상기 카메라를 통해 상기 기기를 스캔하면, 기 학습된 데이터에 기초하여 상기 기기를 식별하여 상기 기기에 대한 정보를 출력하도록 제어하고, 상기 출력된 정보에 대응하는 제2 사용자 명령이 입력되면, 상기 기기에 대한 식별 정보 및 배치 정보에 기초하여 상기 특정 영역에 대응하는 맵을 제공할 수 있다.
한편, 상기 전자 장치는, 디스플레이를 더 포함하고, 상기 프로세서는, 상기 맵이 출력되도록 상기 디스플레이를 제어하고, 상기 출력된 맵에는 상기 특정 영역의 온도, 상기 특정 영역의 공기 질, 상기 특정 영역의 조명에 대한 정보 중 적어도 하나가 포함될 수 있다.
한편, 상기 맵은, 상기 특정 영역의 크기 및 형상에 대한 정보를 나타내는 외곽선 및 상기 기기의 배치 정보를 나타내는 아이콘을 포함하고, 상기 프로세서는, 상기 특정 영역의 외곽선에 대한 사용자의 드래그(Drag)에 기초하여 상기 특정 영역의 크기 및 형상에 대한 정보를 수정하고, 상기 아이콘에 대한 사용자의 드래그에 기초하여 상기 기기의 배치 정보를 수정할 수 있다.
본 개시의 일 실시 예에 따른 전자 장치의 제어 방법은, 제1 사용자 명령을 사용자 인터페이스를 통해 입력되면, 카메라를 통해 특정 영역 및 적어도 하나의 기기에 대응하는 이미지를 획득하는 단계, 상기 이미지에 기초하여 상기 특정 영역에 대응하는 정보와 상기 이미지에 포함된 상기 적어도 하나의 기기에 대한 식별 정보 및 배치 정보를 획득하는 단계 및 상기 특정 영역에 대응하는 정보와 상기 적어도 하나의 기기에 대한 식별 정보 및 배치 정보에 기초하여 상기 특정 영역에 대응하는 맵을 제공하는 단계를 포함할 수 있다.
한편, 상기 이미지를 획득하는 단계는, 상기 카메라를 통한 파노라마 스캔(Panorama Scan)으로 상기 특정 영역 및 상기 적어도 하나의 기기의 파노라마 이미지를 획득하는 단계를 포함할 수 있다.
한편, 상기 특정 영역의 크기 및 형상에 대한 정보를 획득하는 단계는, 상기 파노라마 이미지의 굴곡 정보를 획득하는 단계 및 상기 획득한 파노라마 이미지의 굴곡 정보에 기초하여 상기 특정 영역의 코너, 상기 특정 영역의 높이, 상기 특정 영역의 너비 중 적어도 하나를 인식하여 상기 특정 영역의 형상에 대한 정보를 획득하는 단계를 포함할 수 있다.
한편, 상기 특정 영역의 크기 및 형상에 대한 정보를 획득하는 단계는, 상기 파노라마 이미지의 굴곡 정보에 기초하여 상기 특정 영역 중 곡률이 크게 나타나는 영역일수록, 상기 영역의 실제 너비를 상기 파노라마 이미지에 포함된 영역의 너비보다 작도록 획득하고, 상기 파노라마 이미지의 굴곡 정보에 기초하여 상기 특정 영역 중 곡률이 작게 나타나는 영역일수록, 상기 영역의 실제 너비를 상기 파노라마 이미지에 포함된 영역의 너비보다 크도록 획득하는 단계를 포함할 수 있다.
한편, 상기 이미지를 획득하는 단계는, 상기 카메라를 통한 증강 현실 스캔(Augmented Reality Scan)으로 상기 특정 영역 및 상기 적어도 하나의 기기의 증강 현실 이미지를 획득하는 단계를 포함할 수 있다.
한편, 상기 특정 영역의 크기 및 형상에 대한 정보를 획득하는 단계는, 상기 카메라를 통해 상기 특정 영역의 코너를 증강 현실 스캔하여 상기 특정 영역의 코너에 대한 정보를 획득하는 단계, 상기 카메라를 통해 상기 특정 영역의 바닥을 스캔하면, 상기 바닥의 패턴에 기초하여 상기 바닥의 넓이, 상기 특정 영역의 크기 및 형상에 대한 정보를 획득하는 단계, 및 상기 카메라의 동선 및 상기 카메라를 통해 인식된 벽의 모양에 기초하여 상기 특정 영역의 크기 및 형상에 대한 정보를 획득하는 단계를 포함할 수 있다.
한편, 상기 특정 영역의 크기 및 형상에 대한 정보를 획득하는 단계는, 상기 증강 현실 이미지로 획득된 상기 특정 영역의 중간에 임의의 점을 설정하고, 상기 임의의 점을 지나면서 상기 증강 현실 이미지로 획득된 상기 특정 영역의 바닥을 수직으로 지나는 가상의 축을 중심으로 상기 인식된 특정 영역 또는 상기 기기를 상기 획득된 이미지 상에서 회전시키는 코너 로테이션(Corner Rotation) 방법으로 사용자의 시각과 동일한 맵을 생성하는 단계를 포함할 수 있다.
한편, 상기 맵을 제공하는 단계는, 상기 카메라를 통해 상기 기기를 스캔하면, 기 학습된 데이터에 기초하여 상기 기기를 식별하여 상기 기기에 대한 정보를 출력하도록 제어하는 단계 및 상기 출력된 정보에 대응하는 제2 사용자 명령이 입력되면, 상기 기기에 대한 식별 정보 및 배치 정보에 기초하여 상기 특정 영역에 대응하는 맵을 제공하는 단계를 포함할 수 있다.
한편, 상기 제어 방법은, 상기 맵이 출력되도록 디스플레이를 제어하는 단계;를 더 포함하고, 상기 출력된 맵에는 상기 특정 영역의 온도, 상기 특정 영역의 공기 질, 상기 특정 영역의 조명에 대한 정보 중 적어도 하나가 포함될 수 있다.
한편, 상기 맵은, 상기 특정 영역의 크기 및 형상에 대한 정보를 나타내는 외곽선 및 상기 기기의 배치 정보를 나타내는 아이콘을 포함하고, 상기 특정 영역의 외곽선에 대한 사용자의 드래그(Drag)에 기초하여 상기 특정 영역의 크기 및 형상에 대한 정보를 수정하고, 상기 아이콘에 대한 사용자의 드래그에 기초하여 상기 기기의 배치 정보를 수정하는 단계를 더 포함할 수 있다.
실제 집 내부 특정 영역에 대한 정확하고 상세한 정보 및 기기에 대한 정확한 정보가 포함된 집 내부 특정 영역의 플로어 맵(Floor Map)을 생성하여 특정 영역의 형상, 특정 영역의 높이, 특정 영역의 너비, 특정 영역의 온도, 특정 영역의 공기 질, 특정 영역의 조명, 특정 영역 내에 존재하는 기기의 식별 정보, 기기의 배치 정보를 사용자에게 제공하고, 사용자로 하여금 특정 영역의 상태 및 특정 영역 내에 존재하는 기기를 전자 장치를 통해 간편하게 제어할 수 있도록 한다.
도 1은 본 개시의 일 실시 예에 따른 전자 장치와 디스플레이 장치의 동작을 설명하기 위한 도면이다.
도 2는 본 개시의 일 실시 예에 따른 전자 장치의 구성을 설명하기 위한 블록도이다.
도 3은 본 개시의 다양한 실시 예에 따른 플로어 맵 생성 방법을 설명하기 위한 도면이다.
도 4는 본 개시의 다양한 실시 예에 따른 파노라마 스캔을 통한 플로어 맵 생성 방법을 설명하기 위한 도면이다.
도 5는 본 개시의 다양한 실시 예에 따른 파노라마 스캔을 통한 플로어 맵 생성 방법을 설명하기 위한 도면이다.
도 6a는 본 개시의 일 실시 예에 따른 파노라마 스캔을 통한 플로어 맵 생성 방법을 설명하기 위한 도면이다.
도 6b는 본 개시의 또 다른 실시 예에 따른 파노라마 스캔을 통한 플로어 맵 생성 방법을 설명하기 위한 도면이다.
도 6c는 본 개시의 또 다른 실시 예에 따른 파노라마 스캔을 통한 플로어 맵 생성 방법을 설명하기 위한 도면이다.
도 7은 본 개시의 다양한 실시 예에 따른 파노라마 스캔을 통한 플로어 맵 생성 방법을 설명하기 위한 도면이다.
도 8은 본 개시의 다양한 실시 예에 따른 증강 현실 스캔을 통한 플로어 맵 생성 방법을 설명하기 위한 도면이다.
도 9는 본 개시의 다양한 실시 예에 따른 증강 현실 스캔을 통한 플로어 맵 생성 방법을 설명하기 위한 도면이다.
도 10은 본 개시의 다양한 실시 예에 따른 바닥 스캔을 통한 플로어 맵 생성 방법을 설명하기 위한 도면이다.
도 11은 본 개시의 다양한 실시 예에 따른 특정 영역의 코너 인식을 통한 플로어 맵 생성 방법을 설명하기 위한 도면이다.
도 12는 본 개시의 다양한 실시 예에 따른 코너 로테이션 방법을 통한 플로어 맵 생성 방법을 설명하기 위한 도면이다.
도 13은 본 개시의 일 실시 예에 따른 플로어 맵 수정 방법을 설명하기 위한 도면이다.
도 14는 본 개시의 다양한 실시 예에 따른 플로어 맵 생성을 위한 전자 장치, 디스플레이 장치, IoT 클라우드, IoT 기기의 상호 작용 동작을 설명하기 위한 시퀀스도이다.
도 15는 본 개시의 일 실시 예에 따른 전자 장치의 동작 방법을 나타내는 흐름도이다.
본 실시 예들은 다양한 변환을 가할 수 있고 여러 가지 실시 예를 가질 수 있는바, 특정 실시 예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나 이는 특정한 실시 형태에 대해 범위를 한정하려는 것이 아니며, 본 개시의 실시 예의 다양한 변경(modifications), 균등물(equivalents), 및/또는 대체물(alternatives)을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다.
본 개시를 설명함에 있어서, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 개시의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그에 대한 상세한 설명은 생략한다.
덧붙여, 하기 실시 예는 여러 가지 다른 형태로 변형될 수 있으며, 본 개시의 기술적 사상의 범위가 하기 실시 예에 한정되는 것은 아니다. 오히려, 이들 실시 예는 본 개시를 더욱 충실하고 완전하게 하고, 당업자에게 본 개시의 기술적 사상을 완전하게 전달하기 위하여 제공되는 것이다.
본 개시에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 권리범위를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 개시에서, "가진다," "가질 수 있다," "포함한다," 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.
본 개시에서, "A 또는 B," "A 또는/및 B 중 적어도 하나," 또는 "A 또는/및 B 중 하나 또는 그 이상"등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. 예를 들면, "A 또는 B," "A 및 B 중 적어도 하나," 또는 "A 또는 B 중 적어도 하나"는, (1) 적어도 하나의 A를 포함, (2) 적어도 하나의 B를 포함, 또는 (3) 적어도 하나의 A 및 적어도 하나의 B 모두를 포함하는 경우를 모두 지칭할 수 있다.
본 개시에서 사용된 "제1," "제2," "첫째," 또는 "둘째,"등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다.
어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는, 어떤 구성요소가 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다.
반면에, 어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 어떤 구성요소와 다른 구성요소 사이에 다른 구성요소(예: 제3 구성요소)가 존재하지 않는 것으로 이해될 수 있다.
본 개시에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)," "~하는 능력을 가지는(having the capacity to)," "~하도록 설계된(designed to)," "~하도록 변경된(adapted to)," "~하도록 만들어진(made to)," 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성된(또는 설정된)"은 하드웨어적으로 "특별히 설계된(specifically designed to)" 것만을 반드시 의미하지 않을 수 있다.
대신, 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU 또는 application processor)를 의미할 수 있다.
실시 예에 있어서 '모듈' 혹은 '부'는 적어도 하나의 기능이나 동작을 수행하며, 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다. 또한, 복수의 '모듈' 혹은 복수의 '부'는 특정한 하드웨어로 구현될 필요가 있는 '모듈' 혹은 '부'를 제외하고는 적어도 하나의 모듈로 일체화되어 적어도 하나의 프로세서로 구현될 수 있다.
한편, 도면에서의 다양한 요소와 영역은 개략적으로 그려진 것이다. 따라서, 본 발명의 기술적 사상은 첨부한 도면에 그려진 상대적인 크기나 간격에 의해 제한되지 않는다.
이하에서는 첨부한 도면을 참고하여 본 개시에 따른 실시 예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다.
도 1은 본 개시의 일 실시 예에 따른 전자 장치와 디스플레이 장치의 동작을 설명하기 위한 도면이다.
전자 장치(100)는 예를 들어, 스마트폰(smartphone), 태블릿 PC(tablet Personal Computer), 랩탑 PC(laptop Personal Computer), 넷북 컴퓨터(netbook computer), 모바일 의료기기, 웨어러블 장치(wearable device) 중 적어도 하나를 포함할 수 있으나 이에 국한되는 것은 아니다. 따라서, 도 1에서는 전자 장치(100)가 스마트 폰으로 구현된 실시 예를 도시하고 있으나 이에 국한되지 아니한다.
외부 전자 장치(200)는 예를 들어, 스마트 TV, 태블릿, 모니터, 데스크톱 컴퓨터, 랩톱 컴퓨터 등과 같이 디스플레이를 구비하여 영상 컨텐츠를 재생할 수 있는 다양한 장치로 구현될 수 있다. 본 개시의 일 실시 예에 따른 외부 전자 장치(200)는 상술한 기기에 한정되지 않으며, 외부 전자 장치(200)는 상술한 기기들의 둘 이상의 기능을 갖춘 외부 전자 장치(200)로 구현될 수 있다.
도 1을 참조하면, 전자 장치(100)는 외부 전자 장치(200)와 통신 연결을 수행하여 생성된 플로어 맵을 사용자에게 제공하는 플로어 맵 생성 시스템(10)을 구성할 수 있다.
전자 장치(100)는 카메라를 통해 촬영된 영상을 이용하여 특정 영역 내에 적어도 하나의 기기에 대한 배치 정보를 나타내는 플로어 맵을 생성할 수 있다. 이때, 플로어 맵은 집 내부 특정 영역을 위에서 내려다 본 2D 평면도의 관점으로 보여지고, 특정 영역의 크기 및 형상에 대한 정보와 집 내부 기기의 식별 정보 및 배치 정보를 포함할 수 있다. 그리고, 전자 장치(100)는 플로어 맵을 내부에 저장하거나 외부 서버에 저장된 플로어 맵을 외부 전자 장치(200)가 디스플레이하도록 외부 전자 장치(200)로 플로어 맵을 전송할 수 있다.
외부 전자 장치(200)는 전자 장치(100)로부터 수신된 플로어 맵을 디스플레이 할 수 있다. 이때, 플로어 맵이 외부 전자 장치(200)에 디스플레이 된 상태에서, 전자 장치(100)를 통한 입력 또는 외부 전자 장치(200)에 대한 입력을 통해 플로어 맵에 표시된 특정 영역과 기기에 대한 정보를 수정할 수 있다.
또한, 본 개시의 또 다른 일 실시 예에 따르면, 외부 전자 장치(200)는 디스플레이가 장치에 내장된 경우에 국한되지 않고, 디스플레이가 디스플레이 장치의 내부 구성으로 구비되어 있지 않거나 사용자 알림 등을 위한 간단한 디스플레이만 포함되어 있는 경우를 포함할 수 있다. 여기서, 외부 전자 장치(200)에 구비된 비디오/오디오 출력 포트(미도시)를 통해 별도의 외부 TV, 모니터 등 또 다른 디스플레이 장치에 영상이 출력되도록 할 수 있다. 이렇게 별도의 TV, 모니터 등 또 다른 디스플레이 장치에 영상이 출력되도록 하는 경우, 외부 전자 장치(200)는 별도의 비디오/오디오 출력 포트(미도시)를 구비하거나, 유/무선 통신 등으로 해당 신호를 별도의 외부 TV, 모니터 등 또 다른 디스플레이 장치에 신호를 전송하기 위한 통신 인터페이스를 포함할 수 있다. 이 경우, 전자 장치(100)의 프로세서(190)는 컨텐츠 또는 UI출력을 위해 외부 전자 장치(200)가 별도의 외부 TV, 모니터 등 또 다른 디스플레이 장치에 컨텐츠, UI가 출력되도록 제어하는 신호를 전송하도록 외부 전자 장치(200)의 통신 인터페이스(미도시)를 제어할 수 있다.
도 2는 본 개시의 일 실시 예에 따른 전자 장치의 구성을 설명하기 위한 블록도이다.
전자 장치(100)는 도 1과 함께 상술한 기기를 포함할 수 있으며, 그들의 둘 이상의 기능을 갖춘 전자 장치(100)로 구현될 수 있다. 전자 장치(100)는 외부 기기와 연결되어 하나 이상의 기능 수행을 위한 동작을 할 수 있고, 도 1에서 도시한 바와 같이 둘 이상의 기기의 상호작용으로 구현될 수 있다.
또한, 본 개시의 다양한 실시 예에 따른 전자 장치(100)는, 사용자 인터페이스(110), 카메라(120), 마이크(130), 센서(140), 디스플레이(150), 메모리(160), 통신 인터페이스(170), 프로세서(190)를 포함할 수 있다.
사용자 인터페이스(110)는 버튼(button), 레버(lever), 스위치(switch), 터치(Touch)형 인터페이스 등을 포함할 수 있고, 구체적으로, 터치형 인터페이스는 전자 장치(100)의 디스플레이(150) 화면 상에서 사용자의 터치로 입력을 받는 방식으로 구현될 수 있다.
사용자 인터페이스(110)를 통해 플로어 맵 생성에 대한 사용자 명령을 입력 받을 수 있고, 구체적으로, 파노라마 스캔, 증강 현실 스캔 동작을 수행하는 카메라(120)의 동작을 제어하기 위한 입력이 이루어질 수 있다. 또한, 사용자 인터페이스(110)를 통해 플로어 맵 수정을 위한 사용자 터치, 사용자 드래그를 입력 받을 수 있다.
카메라(120)는 정지 영상 및 동영상을 촬영할 수 있다. 본 개시의 다양한 실시 예에 따른 카메라(120)는 하나 이상의 렌즈, 이미지 센서, 이미지 시그널 프로세서, 플래시를 포함할 수 있다. 하나 이상의 렌즈는, 전자 장치(100)의 표면에 배치된 망원 렌즈(telephoto lens), 광각 렌즈(wide angle lens) 및 초광각 렌즈(super wide angle lens)를 포함할 수 있으며, 3D 뎁스 렌즈(three dimensional depth lens)를 포함할 수도 있다.
카메라(120)는 전자 장치(100)의 표면(예: 후면)에 배치될 수 있으나, 이러한 구성에 국한되는 것은 아니고, 전자 장치(100)의 외부에 별도로 존재하는 카메라(120)와의 연결을 통해 본 개시에 따른 다양한 실시 예가 구현될 수 있다.
전자 장치(100)는 카메라(120)의 집 내부 특정 영역에 대한 파노라마 스캔, 증강 현실 스캔을 통해 파노라마 이미지 또는 증강 현실 이미지를 획득할 수 있다. 전자 장치(100)는 카메라(120)의 파노라마 스캔을 통해 집 내부 특정 영역의 굴곡에 대한 정보를 획득할 수 있고, 특정 영역의 코너, 특정 영역의 천장, 특정 영역의 바닥에 대한 정보를 획득할 수 있다. 또한, 전자 장치(100)는 카메라(120)를 통한 증강 현실 스캔으로, 집 내부 특정 영역의 바닥에 대한 정보를 획득할 수 있고, 카메라(120)를 통한 바닥 패턴 스캔으로 바닥의 넓이, 바닥의 형상에 대한 정보를 획득할 수 있다. 또한 전자 장치(100)는 카메라(120)통한 증강 현실 스캔 과정에서 집 내부 특정 영역의 벽에 대한 정보를 획득할 수 있다.
마이크(130)는 소리를 감지하여 전기 신호로 변환하는 장치를 의미할 수 있다. 예를 들어, 마이크(130)는 실시간으로 음성을 감지할 수 있으며, 감지된 음성을 전기 신호로 변환하여 전자 장치(100)는 전기 신호에 대응되는 동작을 수행할 수 있다. 마이크(130)는 TTS 모듈 또는 STT 모듈을 포함할 수 있다.
마이크(130)는 전자 장치(100)의 일 구성 요소로 포함되는 경우뿐만 아니라, 외부 전자 장치(200)를 제어하는 리모컨(미도시)의 일 구성 요소로 포함되는 경우도 포함할 수 있다.
구체적으로, 마이크(130)는 플로어 맵 생성에 대한 사용자 명령이 포함된 음성을 감지할 수 있고, 사용자 명령이 포함된 음성을 전기 신호로 변환하여 전자 장치(100)는 전기 신호에 기초하여 파노라마 스캔, 증강 현실 스캔을 위한 카메라(120) 동작을 제어할 수 있다. 또한, 마이크(130)가 외부 전자 장치(200)을 제어하는 리모컨(미도시)의 일 구성 요소로 포함된 경우, 리모컨에 구비된 마이크(130)를 통해 입력되는 사용자 명령에 의해 외부 전자 장치(200)를 통해 파노라마 스캔, 증강 현실 스캔, 맵 생성, 맵 수정 등의 동작을 수행할 수 있다.
전자 장치(100) 또는 외부 전자 장치(200)의 리모컨(미도시)는 마이크(130)를 포함할 수 있고, 음성 인식을 위한 음성을 전기 신호로 변환하는 구성을 포함할 수 있다.
본 개시의 또 다른 실시 예는 전자 장치(100)에 리모컨 APP이 설치되어, 마이크(130)를 통한 사용자 음성 명령을 감지하고, 음성 인식 기능을 통해 파노라마 스캔, 증강 현실 스캔, 맵 생성, 맵 수정 등의 동작을 수행하는 경우를 포함할 수 있다.
센서(140)는 전자 장치(100)의 상태(예: 움직임), 또는 외부의 환경 상태(예: 사용자 상태)를 감지하고, 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 센서(140)는, 예를 들면, 제스처(Gesture) 센서, 가속도 센서를 포함할 수 있다.
센서(140)는 제스처 센서로 이루어질 수 있고, 전자 장치(100)는 플로어 맵 생성을 위한 기 설정된 사용자 제스처를 감지하여 플로어 맵 생성 동작을 수행할 수 있다. 또한, 전자 장치(100)는 센서(140)를 통한 제스처 센서를 통한 사용자의 제스처를 감지할 수 있고, 사용자의 제스처에 대한 식별 정보를 바탕으로 카메라(120)의 파노라마 스캔 또는 증강 현실 스캔을 통해 파노라마 이미지 또는 증강 현실 이미지를 획득할 수 있다.
센서(140)는 가속도 센서로 이루어질 수 있고, 카메라(120)의 파노라마 스캔 과정에서 전자 장치(100)의 카메라(120)가 특정 영역의 특정 지점부터 바닥에 수평한 방향으로 움직이는 동안, 움직임을 감지하여 전자 장치(100)는 카메라(120)의 움직임에 대한 가속도 값을 획득할 수 있다. 전자 장치(100)는 획득된 가속도 값에 기초하여 전자 장치(100)의 움직임이 바닥에 수평이 아닌 수직으로 이루어지거나, 지나치게 빠르다면 디스플레이(150) 화면 상으로 올바른 파노라마 스캔이 이루어지기 위해 필요한 정보를 디스플레이 할 수 있다.
디스플레이(150)는 LCD(Liquid Crystal Display) 패널, OLED(Organic Light Emitting Diodes) 패널, AM-OLED(Active-Matrix Organic Light-Emitting Diode), LcoS(Liquid Crystal on Silicon), QLED(Quantum dot Light-Emitting Diode) 및 DLP(Digital Light Processing), PDP(Plasma Display Panel) 패널, 무기 LED 패널, 마이크로 LED 패널 등 다양한 종류의 디스플레이 패널을 포함할 수 있으나, 이에 한정되는 것은 아니다. 한편, 디스플레이(150)는 터치 패널과 함께 터치스크린을 구성할 수도 있으며, 플렉서블(flexible) 패널로 이루어질 수도 있다.
디스플레이(150)에는 플로어 맵 생성을 위한 각 단계가 디스플레이 될 수 있다. 구체적으로, 플로어 맵 생성을 위한 제1 사용자 명령을 입력 받는 초기 화면, 파노라마 스캔 또는 증강 현실 스캔을 위한 카메라 촬영 화면, 특정 영역의 크기 및 형상 또는 기기의 식별 정보 및 배치 정보 또는 특정 영역의 온도, 특정 영역의 공기의 질, 특정 영역의 조명에 대한 정보가 포함된 플로어 맵, 생성된 플로어 맵의 수정 화면이 디스플레이 될 수 있다. 이외에 날씨 정보, 시간 정보가 플로어 맵과 함께 디스플레이될 수 있다.
메모리(160)는, 각종 프로그램이나 데이터를 일시적 또는 비일시적으로 저장하고, 프로세서(190)의 호출에 따라서 저장된 정보를 프로세서(190)에 전달한다. 또한, 메모리(160)는, 프로세서(190)의 연산, 처리 또는 제어 동작 등에 필요한 각종 정보를 전자적 포맷으로 저장할 수 있다.
메모리(160)는, 예를 들어, 주기억장치 및 보조기억장치 중 적어도 하나를 포함할 수 있다. 주기억장치는 롬(ROM) 및/또는 램(RAM)과 같은 반도체 저장 매체를 이용하여 구현된 것일 수 있다. 롬은, 예를 들어, 통상적인 롬, 이피롬(EPROM), 이이피롬(EEPROM) 및/또는 마스크롬(MASK-ROM) 등을 포함할 수 있다. 램은 예를 들어, 디램(DRAM) 및/또는 에스램(SRAM) 등을 포함할 수 있다. 보조기억장치는, 플래시 메모리 장치, SD(Secure Digital) 카드, 솔리드 스테이트 드라이브(SSD, Solid State Drive), 하드 디스크 드라이브(HDD, Hard Disc Drive), 자기 드럼, 컴팩트 디스크(CD), 디브이디(DVD) 또는 레이저 디스크 등과 같은 광 기록 매체(optical media), 자기테이프, 광자기 디스크 및/또는 플로피 디스크 등과 같이 데이터를 영구적 또는 반영구적으로 저장 가능한 적어도 하나의 저장 매체를 이용하여 구현될 수 있다.
메모리(160)는, 플로어 맵 생성 초기 단계의 기본 특정 영역 구성에 대한 정보를 저장할 수 있다. 또한, 플로어 맵 생성 과정에서 카메라(120)를 통해 촬영되는 파노라마 이미지, 증강 현실 이미지를 저장할 수 있으며, 이미지를 통해 획득된 특정 영역의 크기 및 형상, 기기의 식별 정보 및 배치 정보를 저장할 수 있다. 메모리(160)는 파노라마 이미지의 굴곡 정보, 집 내부 특정 영역의 코너 인식에 필요한 정보, 바닥 패턴 인식 방법에 대한 정보, 코너 로테이션 방법에 대한 정보를 저장할 수 있다. 메모리(160)는 생성된 플로어 맵을 저장할 수 있다. 전자 장치(100)가 제스처 센서를 포함하는 경우, 메모리(160)는 플로어 맵 생성을 위한 사용자 제스처에 대한 정보를 저장할 수 있다.
통신 인터페이스(170)는, 무선 통신 인터페이스, 유선 통신 인터페이스 및 입력 인터페이스를 포함할 수 있다. 무선 통신 인터페이스는, 무선 통신 기술이나 이동 통신 기술을 이용하여 각종 외부 장치와 통신을 수행할 수 있다. 이러한 무선 통신 기술로는, 예를 들어, 블루투스(Bluetooth), 저전력 블루투스(Bluetooth Low Energy), 캔(CAN) 통신, 와이 파이(Wi-Fi), 와이 파이 다이렉트(Wi-Fi Direct), 초광대역 통신(UWB, ultrawide band), 지그비(zigbee), 적외선 통신(IrDA, infrared Data Association) 또는 엔에프씨(NFC, Near Field Communication) 등이 포함될 수 있으며, 이동 통신 기술 로는, 3GPP, 와이맥스(Wi-Max), LTE(Long Term Evolution), 5G 등이 포함될 수 있다. 무선 통신 인터페이스는 전자기파를 외부로 송신하거나 또는 외부에서 전달된 전자기파를 수신할 수 있는 안테나, 통신 칩 및 기판 등을 이용하여 구현될 수 있다. 유선 통신 인터페이스는 유선 통신 네트워크를 기반으로 각종 외부 장치와 통신을 수행할 수 있다. 여기서, 유선 통신 네트워크는, 예를 들어, 페어 케이블, 동축 케이블, 광섬유 케이블 또는 이더넷 케이블 등 물리적인 케이블을 이용하여 구현될 수 있다. 무선 통신 인터페이스 및 유선 통신 인터페이스는 실시 예에 따라 어느 하나가 생략될 수도 있다. 따라서, 전자 장치(100)는 무선 통신 인터페이스 만을 포함하거나 유선 통신 인터페이스 만을 포함할 수 있다. 뿐만 아니라, 전자 장치(100)는 무선 통신 인터페이스에 의한 무선 접속과 유선 통신 인터페이스에 의한 유선 접속을 모두 지원하는 통합된 통신 인터페이스를 구비할 수도 있다.
통신 인터페이스(170)는 전자 장치(100)는 외부 전자 장치(200)와 통신 연결을 수행하거나 외부 서버와 통신 연결을 수행할 수 있다. 구체적으로, 전자 장치(100)는 통신 인터페이스(170)를 통해 특정 영역의 크기 및 형상과 기기의 식별 정보 빛 배치 정보가 포함된 플로어 맵을 외부 전자 장치(200)로 전송하여 디스플레이 할 수 있다. 또한, 통신 인터페이스(170)는 외부 서버와의 통신 연결을 수행하여, 전자 장치(100)는 서버에 등록된 기기에 대한 식별 정보를 획득할 수 있다.
전자 장치(100)는 한 가지 방식의 통신 연결을 수행하는 한 개의 통신 인터페이스(170)를 포함하는 경우에 국한되지 않고, 와이파이 다이렉트, 블루투스, 적외선 통신을 위한 복수의 통신 인터페이스(170)를 포함할 수 있다.
전자 장치(100)는 통신 인터페이스(170)를 통해 외부 서버, 외부 기기 등과 통신 연결을 수행할 수 있다. 또한, 외부 기기와 비디오/오디오 데이터 전송을 위한 통신 연결을 수행할 수 있다.
전자 장치(100)는 외부 전자 장치(200) 또는 그 이외에 별도로 마련된 다른 장치, 예를 들어 외부 저장 장치와 연결 가능하도록 하는 입출력 인터페이스(180)를 포함할 수 있다. 예를 들어, 입출력 인터페이스(180)는, 범용 직렬 시스템 버스(USB: Universal Serial Bus) 단자일 수 있으며, 이외에도 HDMI(High Definition Multimedia Interface), MHL (Mobile High-Definition Link), USB (Universal Serial Bus), DP(Display Port), 썬더볼트(Thunderbolt), VGA(Video Graphics Array)포트, RGB 포트, D-SUB(D-subminiature), DVI(Digital Visual Interface) 중 어느 하나의 인터페이스일 수 있다. 입출력 인터페이스(160)는 오디오 및 비디오 신호 중 적어도 하나를 입출력 할 수 있다. 구현 예에 따라, 입출력 인터페이스(180)는 오디오 신호만을 입출력하는 포트와 비디오 신호만을 입출력하는 포트를 별개의 포트로 포함하거나, 오디오 신호 및 비디오 신호를 모두 입출력하는 하나의 포트로 구현될 수 있다.
상술한 입출력 인터페이스(180)는 외부 전자 장치(200)의 일 구성 요소로 포함될 수 있다.
전자 장치(100) 또는 외부 전자 장치(200)는 입출력 인터페이스(180)를 통해 외부 장치, 외부 디스플레이, 스피커 등과 연결되어 비디오/오디오 신호를 송수신할 수 있다.
프로세서(190)는, 전자 장치(100)의 전반적인 동작을 제어한다. 구체적으로, 프로세서(190)는 상술한 바와 메모리(160)를 포함하는 전자 장치(100)의 구성과 연결되며, 상술한 바와 같은 메모리(160)에 저장된 적어도 하나의 인스트럭션을 실행함으로써, 전자 장치(100)의 동작을 전반적으로 제어할 수 있다. 특히, 프로세서(190)는 하나의 프로세서(190)로 구현될 수 있을 뿐만 아니라 복수의 프로세서(190)로 구현될 수 있다.
그리고, 프로세서(190)는 다양한 방식으로 구현될 수 있다. 예를 들어, 프로세서(190)는 주문형 집적 회로(Application Specific Integrated Circuit, ASIC), 임베디드 프로세서, 마이크로 프로세서, 하드웨어 컨트롤 로직, 하드웨어 유한 상태 기계(hardware Finite State Machine, FSM), 디지털 신호 프로세서(Digital Signal Processor, DSP) 중 적어도 하나로 구현될 수 있다. 한편, 본 개시에서 프로세서(190)는 디지털 신호를 처리하는 중앙처리장치 (central processing unit(CPU)), MCU(Micro Controller Unit), MPU(micro processing unit), 컨트롤러(controller), 어플리케이션 프로세서(application processor(AP)), 또는 커뮤니케이션 프로세서(communication processor(CP)), ARM 프로세서 중 하나 또는 그 이상을 포함하거나, 해당 용어로 정의될 수 있다. 또한, 프로세서(130)는 프로세싱 알고리즘이 내장된 SoC(System on Chip), LSI(large scale integration)로 구현될 수도 있고, FPGA(Field Programmable gate array) 형 태로 구현될 수도 있다. 프로세서(190)는 메모리(160)에 저장된 컴퓨터 실행가능 명령어(computer executable instructions)를 실행함으로써 다양한 기능을 수행할 수 있다. 뿐만 아니라, 프로세서(190)는 인공지능 기능을 수행하기 위하여, 별도의 AI 전용 프로세서인 GPU(graphics-processing unit), NPU(Neural Processing Unit), VPU(Visual Processing UniT) 중 적어도 하나를 포함할 수 있다
프로세서(190)는, 거실, 침실, 부엌, 화장실 등의 특정 영역에 존재하는 TV, 세탁기, 에어컨, 건조기 등의 가전 제품 중 적어도 하나의 기기의 배치 상태를 나타내는 맵(Map)을 생성하기 위한 제1 사용자 명령을 사용자 인터페이스(110) 또는 마이크(130) 또는 센서(140)를 통해 입력 받을 수 있다. 프로세서(190)는 제1 사용자 명령이 입력되면, 카메라를 통해 특정 영역 및 적어도 하나의 기기를 촬영하여 이미지를 획득할 수 있다. 프로세서(190)는 획득한 이미지를 바탕으로 특정 영역의 코너를 인식하여 특정 영역의 크기 및 형상에 대한 정보를 획득할 수 있다. 특정 영역이 원형 또는 타원형으로 이루어져 코너가 없는 부분에 대해서는 별도의 사용자 입력을 통한 특정 영역 정보를 획득할 수 있다. 특정 영역의 크기 및 형상에 대한 정보는 특정 영역의 높이, 특정 영역의 너비에 대한 정보를 포함할 수 있다. 프로세서(190)는 이미지 내에 포함된 적어도 하나의 기기를 인식하여 적어도 하나의 기기에 대한 식별 정보 및 배치 정보를 획득할 수 있다. 기기에 대한 식별 정보는 상술한 바와 같이 메모리(160) 또는 외부 서버에 저장된 것일 수 있다. 프로세서(190)는 특정 영역의 크기 및 형상에 대한 정보와 적어도 하나의 기기에 대한 식별 정보 및 배치 정보를 바탕으로 특정 영역에 대한 맵을 생성할 수 있다. 프로세서(190)는 생성된 맵에 대한 정보를 통신 인터페이스(170)를 통해 외부 전자 장치(200)로 전송하여 생성된 맵이 디스플레이 되도록 할 수 있다.
본 개시의 다양한 실시 예에 따른 플로어 맵은 전자 장치(100)의 디스플레이(150) 또는 외부 전자 장치(200)에 디스플레이 될 수 있고, 디스플레이 된 맵에는 특정 영역의 온도, 특정 영역의 공기 질, 특정 영역의 조명에 대한 정보가 함께 표시될 수 있다.
프로세서(190)는 특정 영역의 온도에 대한 정보를 플로어 맵 상에서 각 특정 영역의 색으로 표시할 수 있다. 플로어 맵 상에서 각 특정 영역의 색은 빨강, 주황, 노랑, 초록, 파랑, 보라를 포함할 수 있다. 프로세서(190)는 특정 영역의 온도가 높을수록 플로어 맵 상의 해당 특정 영역에 대한 색을 붉은 계열의 색으로 표시할 수 있고, 특정 영역의 온도가 낮을수록 플로어 맵 상의 해당 특정 영역에 대한 색을 푸른 계열의 색으로 표시할 수 있다.
프로세서(190)는 특정 영역의 공기 질에 대한 정보를 플로어 맵 상에 우수, 보통, 열악 등으로 이루어진 복수의 항목 중 하나의 항목으로 표시할 수 있다.
프로세서(190)는 특정 영역의 조명에 대한 정보를 플로어 맵 상에서 각 on, off로 이루어진 복수의 항목 중 하나의 항목으로 표시할 수 있다.
프로세서(190)의 플로어 맵 상에서의 특정 영역의 온도, 특정 영역의 공기 질, 특정 영역의 조명에 대한 정보 표시 방법은 상술한 실시 예에 국한되지 않고 색, 문자, 그림, 아이콘 등 다양한 방법으로 구현될 수 있다.
프로세서(190)가 생성한 플로어 맵은, 특정 영역의 크기 및 형상에 대한 정보를 나타내는 외곽선 및 기기의 배치 정보를 나타내는 아이콘을 포함할 수 있고, 프로세서(190)는 특정 영역의 외곽선에 대한 사용자의 드래그(Drag)에 기초하여 특정 영역의 크기 및 형상에 대한 정보를 수정하고, 아이콘에 대한 사용자의 드래그에 기초하여 기기의 배치 정보를 수정할 수 있다. 프로세서(190)는 플로어 맵의 수정을 위한 사용자 명령을 사용자 제스처 또는 사용자 음성의 방식으로 입력 받을 수 있다.
프로세서(190)의 구체적인 전자 장치(100) 제어 방법은 도 3 내지 13과 함께 설명한다.
도 3은 본 개시의 다양한 실시 예에 따른 플로어 맵 생성 방법을 설명하기 위한 도면이다.
도 3을 참조하면, 프로세서(190)는 플로어 맵 생성을 위한 초기 화면을 디스플레이(150)에 표시할 수 있다. 초기 화면에는 생성될 플로어 맵의 제목이 화면의 상단에 표시될 수 있으며, 플로어 맵의 제목은 '우리 집'과 같이 플로어 맵이 나타내는 특정 영역을 지칭하는 정보로 이루어질 수 있다.
그리고, 초기 화면에는 기본 특정 영역을 나타내는 그림 항목과 기본 특정 영역의 명칭으로 이루어진 하나 이상의 항목이 GUI(Graphic User Interface)(310, 320, 330, 340)로 표시될 수 있다. 기본 특정 영역을 나타내는 항목은 거실에 대응되는 GUI(310), 침실에 대응되는 GUI(320), 부엌에 대응되는 GUI(330), 화장실에 대응되는 GUI(340)로 이루어질 수 있으나, 이에 국한되지 않고 다양한 생활 특정 영역을 포함할 수 있다. 또한, 초기 화면에서 하나 이상의 항목으로 이루어진 기본 특정 영역에 대한 정보는 임의의 크기, 배치를 갖는 기본 플로어 맵으로 표시될 수 있다. 프로세서(190)는 거실, 침실, 부엌, 화장실의 기본 특정 영역 항목으로 이루어진 GUI(310, 320, 330, 340)를 통한 제1 사용자 명령을 입력 받을 수 있다. 제1 사용자 명령은 사용자 터치에 의한 방식으로 이루어질 수 있다. 거실, 침실, 부엌, 화장실의 기본 특정 영역 항목으로 이루어진 GUI(310, 320, 330, 340) 중 하나의 특정 영역에 대한 GUI를 통해 제1 사용자 명령을 입력 받으면, 프로세서(190)는 카메라(120)의 파노라마 스캔 또는 증강 현실 스캔을 통해 특정 영역과 기기에 대한 이미지를 획득하여, 특정 영역의 크기 및 형상 또는 기기의 식별 정보 또는 배치 정보를 획득할 수 있다.
도 3을 참조하면, 프로세서(190)는 거실, 침실, 부엌, 화장실로 이루어진 기본 특정 영역 이외에 새로운 특정 영역을 카메라(120)로 촬영하여 획득된 파노라마 이미지 또는 증강현실 이미지를 바탕으로 플로어 맵을 생성하기 위한 제1 사용자 명령을 입력 받을 수 있는 GUI(350)를 디스플레이(150)에 표시할 수 있다. GUI에는 제1 사용자 명령을 유도하기 위한 '새로운 특정 영역 생성'과 같은 안내 정보가 포함될 수 있다. 프로세서(190)는 GUI(350)를 통해 제1 사용자 명령을 입력 받으면 카메라(120)가 파노라마 스캔 또는 증강 현실 스캔 동작을 수행하도록 카메라(120)를 제어할 수 있다.
도 4는 본 개시의 다양한 실시 예에 따른 파노라마 스캔을 통한 플로어 맵 생성 방법을 설명하기 위한 도면이다.
도 3에 따른 플로어 맵 생성을 위한 초기 화면에서, 거실, 침실, 부엌, 화장실의 기본 특정 영역 항목으로 이루어진 GUI(310, 320, 330, 340) 또는 기본 특정 영역 이외에 새로운 특정 영역 생성을 위한 GUI(350)을 통하여 제1 사용자 명령을 입력 받으면, 도 4에 도시된 바와 같이 프로세서(190)는 카메라(120)가 파노라마 스캔을 수행하기에 앞서 파노라마 스캔에 대한 안내 정보(410)를 디스플레이(150)에 표시할 수 있다. 안내 정보(410)는 상술한 문구에 국한되지 않고 다른 안내 문구를 포함할 수 있다. 또한, 같은 화면에서 프로세서(190)는 파노라마 스캔 시작 대한 사용자 명령을 입력 받을 수 있는 GUI(420)를 표시할 수 있다. 프로세서(190)는 파노라마 스캔 시작에 대한 사용자 명령을 GUI(420)를 통해 입력 받으면 카메라(120) 파노라마 스캔 동작을 수행하도록 카메라(120)를 제어할 수 있다. 또한, 프로세서(190)는 파노라마 스캔 시작에 대한 사용자 명령을 사용자의 제스처 또는 사용자 음성의 형태로 입력 받을 수 있다.
도 5는 본 개시의 다양한 실시 예에 따른 파노라마 스캔을 통한 플로어 맵 생성 방법을 설명하기 위한 도면이다.
도 4에 도시된 디스플레이(150) 화면에서 프로세서(190)가 파노라마 스캔 시작에 대한 사용자 명령을 GUI(420)를 통해 입력 받으면, 도 5에 도시된 바와 같이 프로세서(190)는 카메라(120)의 파노라마 스캔 화면을 디스플레이(150)에 표시할 수 있다.
도 5를 참조하면, 프로세서(190)는 현재 카메라(120)의 렌즈가 향하는 방향에 대응되는 촬영 이미지를 디스플레이(150)에 전체 화면으로 표시할 수 있고, 디스플레이(150) 중앙에 현재 카메라(120)의 렌즈가 향하는 방향에 대응되는 촬영 이미지가 전체 파노라마 이미지 중 어떤 부분을 나타내는지 실시간으로 보여주는 파노라마 스캔 가이드 라인(510)을 표시할 수 있다. 또한, 프로세서(190)는 카메라(120)의 파노라마 스캔 동작 수행에 대한 사용자 명령을 입력 받기 위한 GUI(520)를 디스플레이(150)에 표시할 수 있다.
프로세서(190)가 파노라마 스캔을 위한 사용자 명령을 GUI(520)를 통해 입력 받으면, 프로세서(190)는 카메라(120)가 파노라마 스캔 동작을 수행하도록 카메라(120)를 제어할 수 있다. 또한 프로세서(190)는 센서(140)를 통해 사용자 명령을 사용자의 제스처 또는 사용자의 음성의 형태로 입력 받을 수 있다. 카메라(120)가 파노라마 스캔 가이드 라인(510)에 기초하여 현재 특정 영역의 바닥에 수평한 방향으로 좌 또는 우로 움직이면 프로세서(190)는 연속적인 촬영에 의해 획득되는 복수의 이미지를 결합하여 하나의 파노라마 이미지를 획득할 수 있다.
도 6a는 본 개시의 일 실시 예에 따른 파노라마 스캔을 통한 플로어 맵 생성 방법을 설명하기 위한 도면이다.
도 6a를 참조하면, 프로세서(190)는 상술한 카메라(120)의 파노라마 스캔을 통해 하나의 파노라마 이미지(610-1)를 획득할 수 있다. 프로세서(190)는 획득된 파노라마 이미지(610-1)에 기초하여 TV, 냉장고, 침대 등의 기기 또는 사물의 식별 정보(610-2)를 획득할 수 있다. 또한, 프로세서(190)는 파노라마 이미지(610-1)에 기초하여 벽과 천장의 경계 선과 벽과 바닥의 경계 선에 대한 정보(610-3)를 획득할 수 있고, 이를 기초로 파노라마 이미지(610-1)의 굴곡 정보를 획득할 수 있다. 프로세서(190)는 파노라마 이미지의 굴곡 정보에 기초하여 특정 영역의 코너, 특정 영역의 높이, 특정 영역의 너비를 인식하여 특정 영역의 형상에 대한 정보, 기기의 배치 정보를 획득할 수 있고, 획득된 정보를 바탕으로 특정 영역을 위에서 내려다 본 형태를 갖는 플로어 맵(610-4)을 생성할 수 있다. 프로세서(190)는 플로어 맵(610-4)에 TV, 냉장고, 침대의 기기 또는 사물을 서로 구별되는 복수의 아이콘(Icon)으로 나타내어 해당 특정 영역에서의 기기 또는 사물의 배치 위치 정보를 플로어 맵(610-4) 상에 표시할 수 있다. 또한, 프로세서(190)는 카메라(120)가 파노라마 스캔을 시작하는 지점을 나타내는 아이콘과 카메라(120)의 파노라마 스캔 과정에서 연속적인 촬영 방향에 대한 정보를 화살표의 형태로 플로어 맵(610-4) 상에 표시할 수 있다. 화살표는 플로어 맵(610-4) 상에 나타난 특정 영역의 외곽선 바로 안 쪽에 표시될 수 있다. 플로어 맵(610-4) 상에 표시되는 특정 영역을 위에서 내려다 본 형상은 사각형에 국한되지 않고 다각형일 수도 있다. 특정 영역을 위에서 내려다 본 형상이 원형 또는 타원형인 경우, 별도의 사용자 입력을 통해 특정 영역의 형상에 대한 정보를 획득할 수 있다.
도 6b 및 도 6c는 본 개시의 또 다른 실시 예에 따른 파노라마 스캔을 통한 플로어 맵 생성 방법을 설명하기 위한 도면이다.
상술한 도 6a에 따른 일 실시 예와 같은 방식으로 프로세서(190)는 파노라마 이미지(620-1, 630-1), 기기 또는 사물의 식별 정보(620-2, 630-2), 벽과 천장의 경계 선과 벽과 바닥의 경계 선에 대한 정보(620-3, 630-3), 파노라마 이미지(620-1, 630-1)의 굴곡 정보를 획득할 수 있다.
프로세서(190)는 특정 영역 중 파노라마 이미지(620-1, 630-1)로부터 획득한 벽과 천장의 경계선과 벽과 바닥의 경계 선에 대한 정보(620-3, 630-3)를 바탕으로 획득한 굴곡 정보에서, 경계 선의 굴곡이 크게 나타나는 영역일수록, 해당 영역의 실제 너비를 파노라마 이미지(620-1, 630-1)에 포함된 영역의 너비보다 작도록 산출할 수 있다. 또한, 프로세서(190)는 특정 영역 중 경계 선의 굴곡이 작게 나타나는 영역일수록, 해당 영역의 실제 너비를 파노라마 이미지(620-1, 630-1)에 포함된 영역의 너비보다 크도록 산출할 수 있다. 프로세서(190)는 획득한 특정 영역 너비에 대한 산출 값에 기초하여 직사각형 모양을 갖는 특정 영역에 대한 플로어 맵(620-4, 630-4)을 생성할 수 있다. 상술한 도 6a에 따른 일 실시 예와 같이 생성된 플로어 맵(620-4, 630-4)은 기기 또는 사물에 대응되는 하나 이상의 아이콘을 포함할 수 있고, 카메라(120)가 파노라마 스캔을 시작하는 지점을 나타내는 시작점 아이콘, 카메라(120)의 파노라마 스캔 과정에서 연속적인 촬영 방향에 대한 정보를 나타내는 화살표를 포함할 수 있음은 물론이다.
도 7은 본 개시의 다양한 실시 예에 따른 파노라마 스캔을 통한 플로어 맵 생성 방법을 설명하기 위한 도면이다.
도 7에 따르면, 프로세서(190)는 획득된 파노라마 이미지 상에서 벽과 천장이 만나는 경계 선 위에 존재하는 임의의 제1 점(720)을 설정하고, 해당 임의의 제1 점(720)을 지나면서 특정 영역의 바닥에 수직인 가상의 선이 특정 영역의 바닥과 만나는 제2 점(730)을 획득할 수 있고, 파노라마 이미지 상에서 카메라(120)의 위치에 대응되는 임의의 제3 점(710)을 획득할 수 있다. 여기서, 임의의 제3 점(710)의 특정 영역의 바닥으로부터의 높이는 기 설정된 임의의 값(예: 1.6m)일 수 있으나, 이에 국한되지 않고 다양한 값으로 설정될 수 있다. 프로세서(190)는 제3 점(710)과 제1 점(720)을 지나는 가상의 제1 직선과 제3 점(710)과 제2 점(730)을 지나는 가상의 제2 직선을 획득할 수 있고, 파노라마 이미지 상에서 카메라(120)의 위치에 대응되는 임의의 제3 점(710)에서 특정 영역의 바닥에 수평한 가상의 제3 직선을 획득할 수 있다. 프로세서(190)는 제1 직선과 제3 직선이 이루는 제1 각도 값을 획득할 수 있고, 제2 직선과 제3 직선이 이루는 제2 각도 값을 획득할 수 있다. 프로세서(190)는 기 설정된 바닥으로부터 카메라(120)의 높이 값에 대응되는 파노라마 이미지 상에서의 바닥과 파노라마 이미지 상의 제3 점(710) 사이의 거리와 제2 각도 값을 바탕으로, 실제 특정 영역에서의 제2 점(730)의 3차원 좌표 값을 구할 수 있다. 프로세서(190)는 실제 특정 영역에서의 제2 점(730)의 3차원 좌표 값과 제1 각도를 바탕으로 실제 특정 영역에서의 제1 점(720)의 좌표 값을 구할 수 있다. 프로세서(190)는 상술한 바와 같이 벽과 천장이 만나는 경계 선 위에 존재하는 모든 점의 3차원 좌표 값과 벽과 바닥이 만나는 경계 선 위에 존재하는 모든 점의 3차원 좌표 값을 획득할 수 있고, 특정 영역의 너비, 특정 영역의 높이, 특정 영역의 크기에 대한 정보를 획득할 수 있고, 획득된 정보가 포함된 플로어 맵을 생성할 수 있다.
도 8은 본 개시의 다양한 실시 예에 따른 증강 현실 스캔을 통한 플로어 맵 생성 방법을 설명하기 위한 도면이다.
도 3에 따른 플로어 맵 생성을 위한 초기 화면에서, 거실, 침실, 부엌, 화장실의 기본 특정 영역 항목으로 이루어진 GUI(310, 320, 330, 340) 또는 기본 특정 영역 이외에 새로운 특정 영역 생성을 위한 GUI(350)을 통하여 제1 사용자 명령을 입력 받으면, 도 8에 도시된 바와 같이 프로세서(190)는 카메라(120)가 증강 현실 스캔 동작을 수행하기에 앞서 증강 현실 스캔에 대한 안내 정보(810)를 디스플레이(150)에 표시할 수 있다. 안내 정보(810)는 상술한 문구에 국한되지 않고 다른 안내 문구를 포함할 수 있다. 또한, 같은 화면에서 프로세서(190)는 증강 현실 스캔 시작 대한 사용자 명령을 입력 받을 수 있는 GUI(820)를 표시할 수 있다. 프로세서(190)는 증강 현실 스캔 시작에 대한 사용자 명령을 GUI(820)를 통해 입력 받으면 카메라(120)가 증강 현실 스캔 동작을 수행하도록 카메라(120)를 제어할 수 있다. 또한, 프로세서(190)는 센서(140)를 통해 증강 현실 스캔 시작에 대한 사용자 명령을 사용자의 제스처 또는 사용자 음성의 형태로 입력 받을 수 있다.
도 9는 본 개시의 다양한 실시 예에 따른 증강 현실 스캔을 통한 플로어 맵 생성 방법을 설명하기 위한 도면이다.
도 9를 참조하면, 프로세서(190)가 카메라(120)의 특정 영역 내에 존재하는 기기 스캔에 기초하여, 기 학습된 데이터에 기초하여 기기를 식별할 수 있다. 프로세서(190)는 증강 현실 스캔 화면을 디스플레이(150)에 표시하고 있는 상태에서 식별된 기기의 둘레에 외곽선(910)을 디스플레이(150)에 표시할 수 있고, 기기가 식별되었음을 나타내는 정보(920)를 디스플레이(150)에 표시할 수 있다. 프로세서(190)는 기기를 식별하여 기기에 대한 정보를 획득하여 디스플레이(150)에 표시할 수 있다. 기기에 대한 정보는 메모리(160) 또는 외부 서버에 저장된 것일 수 있다. 디스플레이(150)에 기기에 대한 정보가 표시되면, 프로세서(190)는 GUI(930)를 통해 제2 사용자 명령을 입력 받고, 제2 사용자 명령이 입력되면, 식별된 기기에 대한 식별 정보 및 배치 정보를 바탕으로 특정 영역에 대한 플로어 맵을 생성할 수 있다.
도 10은 본 개시의 다양한 실시 예에 따른 바닥 스캔을 통한 플로어 맵 생성 방법을 설명하기 위한 도면이다.
도 10을 참조하면, 프로세서(190)는 카메라(120)의 특정 영역의 바닥 스캔을 통해 바닥 이미지(1010)를 획득할 수 있다. 프로세서(190)는 바닥 이미지와 함께 바닥 패턴 분석을 위한 사용자 명령을 입력 받기 위한 GUI(1010-1)를 디스플레이(150)에 표시할 수 있고, 바닥 패턴 분석 진행 정도를 나타내는 프로그래스 바(Progress bar)(1010-2)를 디스플레이(150)에 표시할 수 있다. 프로세서(190)는 GUI(1010-1)를 통한 사용자 명령을 입력 받으면, 바닥 패턴 분석 화면(1020), 바닥 패턴 분석을 중지를 위한 사용자 명령을 입력 받는 GUI(1020-1), 바닥 패턴 분석의 진행 정도에 대응되는 프로그래스 바(1020-2)를 디스플레이(150)에 표시할 수 있다. 카메라(120)의 특정 영역 바닥 스캔 및 프로세서(190)의 바닥 패턴 분석은 카메라(120)를 통한 증강 현실 스캔 및 프로세서(190)의 증강 현실 이미지 분석 과정에 포함될 수 있다.
프로세서(190)는 바닥의 패턴 분석 정보에 기초하여 바닥의 넓이, 바닥의 크기, 바닥의 형상에 대한 정보를 획득할 수 있고, 이를 바탕으로, 특정 영역의 크기 및 형상에 대한 정보를 획득할 수 있다.
또한, 프로세서(190)는 카메라(120)의 동선 및 카메라(120)를 통해 인식된 벽의 모양에 기초하여 특정 영역의 크기 및 형상에 대한 정보를 획득할 수 있다.
도 11은 본 개시의 다양한 실시 예에 따른 특정 영역의 코너 인식을 통한 플로어 맵 생성 방법을 설명하기 위한 도면이다.
도 11을 참조하면, 프로세서(190)는 카메라(120)를 통해 특정 영역의 코너를 인식할 수 있다. 여기서, 특정 영역의 코너란 인접한 서로 다른 두 벽과 천장이 만나는 지점을 의미한다. 디스플레이(150) 상에서 외곽선(1110)으로 표시된 일정 영역 안에 특정 영역의 코너가 위치하면, 프로세서(190)는 카메라(120)를 통해 특정 영역의 코너를 인식할 수 있다. 이 때 프로세서(190)는 코너 인식에 대한 안내 정보(1120)를 디스플레이(150)에 함께 표시할 수 있다. 도 11에 도시된 안내 정보(1120)는 일 실시 예에 지나지 않으며, 프로세서(190)는 다른 안내 정보를 디스플레이(150)에 표시할 수 있다.
그리고, 프로세서(190)는 외곽선(1110) 안에 특정 영역의 코너가 위치하면 코너 인식 정보를 획득하기 위한 사용자 명령을 GUI(1130)를 통해 입력 받을 수 있다. 프로세서(190)는 카메라(120)를 통해 복수의 코너를 인식할 수 있다. 프로세서(190)는 도 11에 도시된 바와 같이 카메라(120)를 통해 코너를 인식함으로써, 특정 영역의 기본적인 형상에 대한 정보를 획득할 수 있고, 획득된 정보가 포함된 플로어 맵을 생성할 수 있다.
도 12는 본 개시의 다양한 실시 예에 따른 코너 로테이션 방법을 통한 플로어 맵 생성 방법을 설명하기 위한 도면이다.
도 12를 참조하면, 프로세서(190)는 카메라(120)의 증강 현실 스캔을 통해 증강 현실 이미지를 획득하고, 냉장고(1110-1), TV(1110-2), 세탁기(1110-3)에 대응되는 아이콘이 포함된 플로어 맵(1110)를 획득할 수 있다. 여기서, 프로세서(190)의 증강 현실 이미지 획득 및 플로어 맵 생성 과정에서 실제 기기의 위치와 플로어 맵 상에서의 기기에 대응되는 아이콘의 배치 위치가 맞지 않는 문제점이 발생할 수 있고, 이런 문제점을 코너 로테이션 방법으로 보정할 수 있다. 프로세서(190)는 획득된 증강 현실 이미지(1120) 상에 나타난 특정 영역의 중간에 임의의 점을 설정할 수 있고, 설정된 임의의 점을 지나면서 증강 현실 이미지(1120)로 획득된 특정 영역의 바닥을 수직으로 지나는 가상의 축을 중심으로 인식된 특정 영역과 기기를 획득된 이미지 상에서 회전시킬 수 있고, 실제 기기의 위치가 포함된 플로어 맵(1130)을 획득할 수 있다.
도 13은 본 개시의 일 실시 예에 따른 플로어 맵 수정 방법을 설명하기 위한 도면이다.
도 13을 참조하면, 프로세서(190)가 생성한 플로어 맵은, 특정 영역의 크기 및 형상에 대한 정보를 나타내는 외곽선(1310) 및 기기의 배치 정보를 나타내는 아이콘(1320)을 포함할 수 있고, 프로세서(190)는 특정 영역의 외곽선(1310)에 대한 사용자의 드래그(Drag)에 기초하여 특정 영역의 크기 및 형상에 대한 정보를 수정하고, 아이콘(1320)에 대한 사용자의 드래그에 기초하여 기기의 배치 정보를 수정할 수 있다. 프로세서(190)는 플로어 맵의 수정을 위한 사용자 명령을 센서(140)를 통해 사용자 제스처 또는 사용자 음성의 방식으로 입력 받을 수 있다.
본 개시의 다양한 실시 예에 따른 플로어 맵은 전자 장치(100)의 디스플레이(150) 또는 외부 전자 장치(200)에 디스플레이 될 수 있고, 디스플레이 된 맵에는 특정 영역의 온도, 특정 영역의 공기 질, 특정 영역의 조명에 대한 정보가 함께 표시될 수 있다.
프로세서(190)는 특정 영역의 온도에 대한 정보를 플로어 맵 상에서 특정 영역의 외곽선 내부 영역(1330)을 임의의 색으로 표시할 수 있다. 플로어 맵 상에서 특정 영역의 외곽선 내부 영역(1330)의 임의의 색은 빨강, 주황, 노랑, 초록, 파랑, 보라를 포함할 수 있다. 프로세서(190)는 특정 영역의 온도가 높을수록 플로어 맵 상에서 특정 영역의 외곽선 내부 영역(1330)의 임의의 색을 붉은 계열의 색으로 표시할 수 있고, 특정 영역의 온도가 낮을수록 플로어 맵 상의 해당 특정 영역에 대한 색을 푸른 계열의 색으로 표시할 수 있다.
프로세서(190)는 특정 영역의 공기 질에 대한 정보를 플로어 맵 상에 우수, 보통, 열악 등으로 이루어진 복수의 항목 중 하나의 항목으로 표시할 수 있다.
프로세서(190)는 특정 영역의 조명에 대한 정보를 플로어 맵 상에서 각 on, off로 이루어진 복수의 항목 중 하나의 항목으로 표시할 수 있다.
프로세서(190)의 플로어 맵 상에서의 특정 영역의 온도, 특정 영역의 공기 질, 특정 영역의 조명에 대한 정보 표시 방법은 상술한 실시 예에 국한되지 않고 색, 문자, 그림, 아이콘 등 다양한 방법으로 구현될 수 있다.
도 14는 본 개시의 다양한 실시 예에 따른 플로어 맵 생성을 위한 전자 장치, 디스플레이 장치, IoT 클라우드, IoT 기기의 상호 작용 동작을 설명하기 위한 시퀀스도이다.
도 14를 참조하면, 전자 장치(100)는 카메라(120)의 IoT 기기(1420)에 대한 파노라마 스캔 또는 증강 현실 스캔(S1410)을 통해 파노라마 이미지 또는 증강 현실 이미지를 획득할 수 있다 (S1420). 전자 장치(100)는 획득한 이미지를 통해 IoT 기기(1420)를 식별할 수 있다. 전자 장치(100)는 식별된 IoT 기기(1420)에 대한 정보가 전자 장치의 메모리(160)에 저장되어 있지 않으면 (S1430-N), IoT 클라우드(1410)에 IoT 기기(1420)에 대한 식별 정보를 요청 할 수 있고 (S1440), 전자 장치(100)는 IoT 기기(1420)에 대한 식별 정보를 획득할 수 있다 (S1450). 전자 장치(100)는 IoT 기기(1420)에 대한 식별 정보를 기초로 하여 플로어 맵을 생성 할 수 있고 (S1460), 사용자 명령을 입력 받아 플로어 맵을 수정할 수 있다 (S1470). 전자 장치(100)는 통신 인터페이스(170)를 통해 플로어 맵에 대한 정보를 외부 전자 장치(200)로 전송하여 플로어 맵이 외부 전자 장치(200)에 표시될 수 있다.
전자 장치(100)는 전자 장치(100) 또는 IoT 클라우드(1410)에 저장 또는 등록되어 있지 않은 IoT 기기(1420)에 대해 신규 기기 등록 절차를 거쳐 플로어 맵 상에 IoT 기기(1420)를 표시할 수 있다.
전자 장치(100)는 카메라(120)의 스캔을 통해 IoT 기기(1420)를 식별할 수 있고, 식별된 IoT 기기(1420)를 플로어 맵 상의 임의의 위치에 배치하여 플로어 맵을 생성할 수 있다. 전자 장치(100)가 플로어 맵을 생성한 후, 신규 기기 등록 절차를 거쳐 플로어 맵 상에 IoT 기기(1420)를 표시할 수 있다. 구체적으로, 전자 장치(100)가 IoT 기기(1420)를 Soft AP 또는 BLE로 검색하여, 전자 장치(100)는 IoT 기기(1420)와 와이 파이 또는 블루투스를 통해 통신 연결을 수행하고, 와이 파이와 Cloud 계정 설정 동작을 수행할 수 있다. 이 때, 전자 장치(100) 또는 외부 전자 장치(200)가 IR, 초음파 등의 신호에 기초하여 IoT 기기(1420)가 전자 장치(100) 또는 외부 전자 장치(200)와 동일한 특정 영역에 존재하는지 여부에 대한 정보를 획득하여 계정 설정 동작을 수행할 수 있다. IoT 기기(1420)가 IoT 클라우드(1410)에 등록되면, 전자 장치(100)는 플로어 맵 상에 배치된 IoT 기기(1420)에 대한 제어 동작을 수행할 수 있다. 전자 장치(100)는 계정 설정에 대한 정보를 외부 전자 장치(200)롤 전송하여 외부 전자 장치(200)가 계정 설정에 대한 정보를 디스플레이 할 수 있다.
상술한 신규 기기 등록 절차는 전자 장치(100)가 플로어 맵을 생성한 후, 신규 기기 등록 절차를 거쳐 플로어 맵 상에 IoT 기기(1420)를 표시하는 실시 예에 국한되지 않고, 전자 장치(100)가 신규 기기 등록 절차를 거친 후, 등록된 신규 IoT 기기(1420)를 바탕으로, 플로어 맵을 생성하는 또 다른 실시 예로 구현될 수 있다.
여기서, 신규 IoT기기(1420)의 등록은 기 등록된 IoT기기(1420)가 신규 IoT기기(1420)를 감지하여 인식하는 방식으로 이루어질 수 있다.
여기서, IoT기기(1420)의 배치가 사용자의 명령 입력에 의해 이루어지거나, IoT기기(1420)의 올바른 위치가 식별 정보 및 위치 정보에 기초하여 사용자 명령 없이 프로세서의 연산 과정에 의해 이루어질 수 있다.
도 15는 본 개시의 일 실시 예에 따른 전자 장치의 동작 방법을 나타내는 흐름도이다.
도 15를 참조하면, 전자 장치(100)는 특정 영역에 존재하는 적어도 하나의 기기의 배치 상태를 나타내는 맵(Map)을 생성하기 위한 제1 사용자 명령을 입력 받을 수 있다 (S1510). 전자 장치(100)는 제1 사용자 명령을 디스플레이(150) 상에 표시된 GUI(310. 320, 330, 340, 350)를 통해 입력 받을 수 있다. 전자 장치(100)는 제1 사용자 명령이 입력되면, 카메라(120)를 통해 특정 영역 및 적어도 하나의 기기를 촬영하여 이미지를 획득할 수 있다 (S1520). 전자 장치(100)가 획득한 이미지는 파노라마 이미지 또는 증강 현실 이미지를 포함할 수 있다. 전자 장치(100)는 획득한 이미지를 바탕으로, 특정 영역의 코너를 인식하여 특정 영역의 크기 및 형상에 대한 정보를 획득할 수 있다 (S1530). 전자 장치(100)는 획득한 파노라마 이미지를 바탕으로, 파노라마 이미지의 굴곡 정보를 획득하여 특정 영역의 높이, 특정 영역의 너비, 특정 영역의 크기에 대한 정보를 획득할 수 있고, 증강 현실 이미지를 바탕으로, 바닥 패턴 분석을 수행하여 바닥의 넓이, 바닥의 형상에 대한 정보를 획득할 수 있다. 전자 장치(100)는 획득된 이미지 내에 포함된 적어도 하나의 기기를 인식하여 적어도 하나의 기기에 대한 식별 정보 및 배치 정보를 획득할 수 있다 (S1540). 전자 장치(100)는 특정 영역의 크기 및 형상에 대한 정보와 적어도 하나의 기기에 대한 식별 정보 및 배치 정보를 바탕으로 특정 영역에 대한 플로어 맵을 생성할 수 있다 (S1550). 플로어 맵에는 특정 영역의 온도, 특정 영역의 공기 질, 특정 영역의 조명에 대한 정보가 포함될 수 있고, 사용자 입력에 의해 수정될 수 있다. 또한 외부 전자 장치(200)가 플로어 맵을 디스플레이 할 때, 전자 장치(100)가 플로어 맵 수정 명령을 외부 전자 장치(200)로 전송하여, 외부 전자 장치(200)가 수정된 플로어 맵을 디스플레이 할 수 있다.
또한, 전자 장치(100)의 플로어 맵 생성 방법은 상술한 전자 장치(100)의 카메라(120)를 통한 이미지 획득에 기초한 방법에 국한되지 않는다. 구체적으로, 전자 장치(100)가 기본 특정 영역의 크기, 기본 특정 영역의 배치, 기본 특정 영역의 형상 및 기기의 식별 정보 및 배치 정보를 포함하는 임의의 플로어 맵을 기본 플로어 맵으로 생성할 수 있고, 전자 장치(100)가 사용자 인터페이스(110)를 통한 사용자 터치, 사용자 드래그 등의 사용자 명령을 입력 받아 플로어 맵을 생성하는 방법을 포함할 수 있다.
본 개시의 또 다른 실시 예에 따른 맵 생성 과정은 전자 장치(100) 단독으로 구현되는 경우 이외에 전자 장치(100)는 맵 생성과 관련된 정보를 수신/출력하는 것일 뿐 구체적인 맵 생성 과정은 외부 서버에서 이루어질 수 있다.
또한, 본 개시의 또 다른 실시 예에 따른 맵 생성 과정은 전자 장치(100)와 외부 서버가 데이터 송수신을 통해 맵을 생성하는 경우를 포함할 수 있다. 여기서, 전자 장치(100)는 사용자의 명령을 사용자 인터페이스(110) 또는 마이크(130)를 통해 입력받고 맵 생성 과정, 맵 생성 결과에 대한 정보를 디스플레이(150) 또는 스피커(미도시)를 통해 출력할 수 있다. 외부 서버는 전자 장치(100)로부터 통신 연결을 수행하여 사용자 입력에 대응되는 특정 영역에 대한 정보를 획득하고, 획득한 정보에 기초하여 특정 영역을 인식하거나, 기기를 식별하고, 맵을 생성하는 동작을 수행할 수 있다. 외부 서버는 전자 장치(100) 또는 외부 전자 장치(200)와 통신 연결을 수행하여 전자 장치(100) 또는 외부 전자 장치(200)를 통해 생성된 맵이 출력되어 사용자에게 제공될 수 있도록 할 수 있다.
한편, 본 개시의 일시 예에 따르면, 이상에서 설명된 다양한 실시 예들은 기기(machine)(예: 컴퓨터)로 읽을 수 있는 저장 매체(machine-readable storage media에 저장된 명령어를 포함하는 소프트웨어로 구현될 수 있다. 기기는, 저장 매체로부터 저장된 명령어를 호출하고, 호출된 명령어에 따라 동작이 가능한 장치로서, 개시된 실시 예들에 따른 기기를 포함할 수 있다. 명령이 프로세서에 의해 실행될 경우, 프로세서가 직접, 또는 프로세서의 제어 하에 다른 구성요소들을 이용하여 명령에 해당하는 기능을 수행할 수 있다. 명령은 컴파일러 또는 인터프리터에 의해 생성 또는 실행되는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장 매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적 저장매체'는 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다. 예로, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.
일 실시 예에 따르면, 본 문서에 개시된 다양한 실시 예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품(예: 다운로더블 앱(downloadable app))의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
이상에서는 본 개시의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 개시는 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 개시의 요지를 벗어남이 없이 당해 개시에 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형 실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 개시의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.
100: 전자 장치
110: 사용자 인터페이스
120: 카메라
130: 마이크
140: 센서
150: 디스플레이
160: 메모리
170: 통신 인터페이스
180: 입출력 인터페이스
190: 프로세서
200: 디스플레이 장치

Claims (20)

  1. 전자 장치에 있어서,
    사용자 인터페이스;
    카메라;
    메모리; 및
    프로세서;를 포함하고,
    상기 프로세서는,
    제1 사용자 명령을 상기 사용자 인터페이스를 통해 입력되면, 상기 카메라를 통해 특정 영역 및 적어도 하나의 기기에 대응하는 이미지를 획득하고,
    상기 이미지에 기초하여 상기 특정 영역에 대응하는 정보와 상기 이미지에 포함된 상기 적어도 하나의 기기에 대한 식별 정보 및 배치 정보를 획득하고,
    상기 특정 영역에 대응하는 정보와 상기 적어도 하나의 기기에 대한 식별 정보 및 배치 정보에 기초하여 상기 특정 영역에 대응하는 맵을 제공하는, 전자 장치.
  2. 제1항에 있어서,
    상기 프로세서는,
    상기 카메라를 통한 파노라마 스캔(Panorama Scan)으로 상기 특정 영역 및 상기 적어도 하나의 기기의 파노라마 이미지를 획득하는, 전자 장치.
  3. 제2항에 있어서,
    상기 프로세서는,
    상기 파노라마 이미지의 굴곡 정보를 획득하고,
    상기 획득한 파노라마 이미지의 굴곡 정보에 기초하여 상기 특정 영역의 코너, 상기 특정 영역의 높이, 상기 특정 영역의 너비 중 적어도 하나를 인식하여 상기 특정 영역의 형상에 대한 정보를 획득하는, 전자 장치.
  4. 제3항에 있어서,
    상기 프로세서는,
    상기 파노라마 이미지의 굴곡 정보에 기초하여, 상기 특정 영역 중 곡률이 크게 나타나는 영역일수록, 상기 영역의 실제 너비를 상기 파노라마 이미지에 포함된 영역의 너비보다 작도록 획득하고,
    상기 파노라마 이미지의 굴곡 정보에 기초하여, 상기 특정 영역 중 곡률이 작게 나타나는 영역일수록, 상기 영역의 실제 너비를 상기 파노라마 이미지에 포함된 영역의 너비보다 크도록 획득하는, 전자 장치.
  5. 제1항에 있어서,
    상기 프로세서는,
    상기 카메라를 통한 증강 현실 스캔(Augmented Reality Scan)으로 상기 특정 영역 및 상기 적어도 하나의 기기의 증강 현실 이미지를 획득하는, 전자 장치.
  6. 제5항에 있어서,
    상기 프로세서는,
    상기 카메라를 통해 상기 특정 영역의 코너를 증강 현실 스캔하여 상기 특정 영역의 코너에 대한 정보를 획득하고,
    상기 카메라를 통해 상기 특정 영역의 바닥을 스캔하면, 상기 바닥의 패턴에 기초하여 상기 바닥의 넓이, 상기 특정 영역의 크기 및 형상에 대한 정보를 획득하고,
    상기 카메라의 동선 및 상기 카메라를 통해 인식된 벽의 모양에 기초하여 상기 특정 영역의 크기 및 형상에 대한 정보를 획득하는, 전자 장치.
  7. 제6항에 있어서,
    상기 프로세서는,
    상기 증강 현실 이미지로 획득된 상기 특정 영역의 중간에 임의의 점을 설정하고, 상기 임의의 점을 지나면서 상기 증강 현실 이미지로 획득된 상기 특정 영역의 바닥을 수직으로 지나는 가상의 축을 중심으로 상기 특정 영역 또는 상기 기기를 상기 획득된 이미지 상에서 회전시키는 코너 로테이션(Corner Rotation) 방법으로 사용자의 시각과 동일한 맵을 생성하는, 전자 장치.
  8. 제7항에 있어서,
    상기 프로세서는,
    상기 카메라를 통해 상기 기기를 스캔하면, 기 학습된 데이터에 기초하여 상기 기기를 식별하여 상기 기기에 대한 정보를 출력하도록 제어하고,
    상기 출력된 정보에 대응하는 제2 사용자 명령이 입력되면, 상기 기기에 대한 식별 정보 및 배치 정보에 기초하여 상기 특정 영역에 대응하는 맵을 제공하는 전자 장치.
  9. 제1항에 있어서,
    상기 전자 장치는,
    디스플레이를 더 포함하고,
    상기 프로세서는,
    상기 맵이 출력되도록 상기 디스플레이를 제어하고,
    상기 출력된 맵에는 상기 특정 영역의 온도, 상기 특정 영역의 공기 질, 상기 특정 영역의 조명에 대한 정보 중 적어도 하나가 포함되는, 전자 장치.
  10. 제1항에 있어서,
    상기 맵은,
    상기 특정 영역의 크기 및 형상에 대한 정보를 나타내는 외곽선 및 상기 기기의 배치 정보를 나타내는 아이콘을 포함하고,
    상기 프로세서는,
    상기 특정 영역의 외곽선에 대한 사용자의 드래그(Drag)에 기초하여 상기 특정 영역의 크기 및 형상에 대한 정보를 수정하고, 상기 아이콘에 대한 사용자의 드래그에 기초하여 상기 기기의 배치 정보를 수정하는, 전자 장치.
  11. 전자 장치의 제어 방법에 있어서,
    제1 사용자 명령을 사용자 인터페이스를 통해 입력되면, 카메라를 통해 특정 영역 및 적어도 하나의 기기에 대응하는 이미지를 획득하는 단계;
    상기 이미지에 기초하여 상기 특정 영역에 대응하는 정보와 상기 이미지에 포함된 상기 적어도 하나의 기기에 대한 식별 정보 및 배치 정보를 획득하는 단계; 및
    상기 특정 영역에 대응하는 정보와 상기 적어도 하나의 기기에 대한 식별 정보 및 배치 정보에 기초하여 상기 특정 영역에 대응하는 맵을 제공하는 단계;를 포함하는 제어 방법.
  12. 제11항에 있어서,
    상기 이미지를 획득하는 단계는,
    상기 카메라를 통한 파노라마 스캔(Panorama Scan)으로 상기 특정 영역 및 상기 적어도 하나의 기기의 파노라마 이미지를 획득하는 단계;를 포함하는 제어 방법.
  13. 제12항에 있어서,
    상기 특정 영역의 크기 및 형상에 대한 정보를 획득하는 단계는,
    상기 파노라마 이미지의 굴곡 정보를 획득하는 단계; 및
    상기 획득한 파노라마 이미지의 굴곡 정보에 기초하여 상기 특정 영역의 코너, 상기 특정 영역의 높이, 상기 특정 영역의 너비 중 적어도 하나를 인식하여 상기 특정 영역의 형상에 대한 정보를 획득하는 단계;를 포함하는 제어 방법.
  14. 제13항에 있어서,
    상기 특정 영역의 크기 및 형상에 대한 정보를 획득하는 단계는,
    상기 파노라마 이미지의 굴곡 정보에 기초하여 상기 특정 영역 중 곡률이 크게 나타나는 영역일수록, 상기 영역의 실제 너비를 상기 파노라마 이미지에 포함된 영역의 너비보다 작도록 획득하고,
    상기 파노라마 이미지의 굴곡 정보에 기초하여 상기 특정 영역 중 곡률이 작게 나타나는 영역일수록, 상기 영역의 실제 너비를 상기 파노라마 이미지에 포함된 영역의 너비보다 크도록 획득하는 단계;를 포함하는 제어 방법.
  15. 제11항에 있어서,
    상기 이미지를 획득하는 단계는,
    상기 카메라를 통한 증강 현실 스캔(Augmented Reality Scan)으로 상기 특정 영역 및 상기 적어도 하나의 기기의 증강 현실 이미지를 획득하는 단계;를 포함하는 제어 방법.
  16. 제15항에 있어서,
    상기 특정 영역의 크기 및 형상에 대한 정보를 획득하는 단계는,
    상기 카메라를 통해 상기 특정 영역의 코너를 증강 현실 스캔하여 상기 특정 영역의 코너에 대한 정보를 획득하는 단계;
    상기 카메라를 통해 상기 특정 영역의 바닥을 스캔하면, 상기 바닥의 패턴에 기초하여 상기 바닥의 넓이, 상기 특정 영역의 크기 및 형상에 대한 정보를 획득하는 단계; 및
    상기 카메라의 동선 및 상기 카메라를 통해 인식된 벽의 모양에 기초하여 상기 특정 영역의 크기 및 형상에 대한 정보를 획득하는 단계;를 포함하는 제어 방법.
  17. 제16항에 있어서,
    상기 특정 영역의 크기 및 형상에 대한 정보를 획득하는 단계는,
    상기 증강 현실 이미지로 획득된 상기 특정 영역의 중간에 임의의 점을 설정하고, 상기 임의의 점을 지나면서 상기 증강 현실 이미지로 획득된 상기 특정 영역의 바닥을 수직으로 지나는 가상의 축을 중심으로 상기 인식된 특정 영역 또는 상기 기기를 상기 획득된 이미지 상에서 회전시키는 코너 로테이션(Corner Rotation) 방법으로 사용자의 시각과 동일한 맵을 생성하는 단계;를 포함하는 제어 방법.
  18. 제17항에 있어서,
    상기 맵을 제공하는 단계는,
    상기 카메라를 통해 상기 기기를 스캔하면, 기 학습된 데이터에 기초하여 상기 기기를 식별하여 상기 기기에 대한 정보를 출력하도록 제어하는 단계; 및
    상기 출력된 정보에 대응하는 제2 사용자 명령이 입력되면, 상기 기기에 대한 식별 정보 및 배치 정보에 기초하여 상기 특정 영역에 대응하는 맵을 제공하는 단계;를 포함하는 제어 방법.
  19. 제11항에 있어서,
    상기 제어 방법은,
    상기 맵이 출력되도록 디스플레이를 제어하는 단계;를 더 포함하고,
    상기 출력된 맵에는 상기 특정 영역의 온도, 상기 특정 영역의 공기 질, 상기 특정 영역의 조명에 대한 정보 중 적어도 하나가 포함되는, 제어 방법.
  20. 제11항에 있어서,
    상기 맵은,
    상기 특정 영역의 크기 및 형상에 대한 정보를 나타내는 외곽선 및 상기 기기의 배치 정보를 나타내는 아이콘을 포함하고,
    상기 특정 영역의 외곽선에 대한 사용자의 드래그(Drag)에 기초하여 상기 특정 영역의 크기 및 형상에 대한 정보를 수정하고, 상기 아이콘에 대한 사용자의 드래그에 기초하여 상기 기기의 배치 정보를 수정하는 단계;를 더 포함하는 제어 방법.
KR1020210121997A 2021-09-13 2021-09-13 전자 장치 및 이의 제어 방법 KR20230039097A (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020210121997A KR20230039097A (ko) 2021-09-13 2021-09-13 전자 장치 및 이의 제어 방법
EP22867529.4A EP4328892A1 (en) 2021-09-13 2022-07-11 Electronic apparatus and method for controlling same
PCT/KR2022/010027 WO2023038260A1 (ko) 2021-09-13 2022-07-11 전자 장치 및 이의 제어 방법
US18/197,906 US20230290087A1 (en) 2021-09-13 2023-05-16 Electronic apparatus and method for controlling thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210121997A KR20230039097A (ko) 2021-09-13 2021-09-13 전자 장치 및 이의 제어 방법

Publications (1)

Publication Number Publication Date
KR20230039097A true KR20230039097A (ko) 2023-03-21

Family

ID=85506602

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210121997A KR20230039097A (ko) 2021-09-13 2021-09-13 전자 장치 및 이의 제어 방법

Country Status (4)

Country Link
US (1) US20230290087A1 (ko)
EP (1) EP4328892A1 (ko)
KR (1) KR20230039097A (ko)
WO (1) WO2023038260A1 (ko)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4809746B2 (ja) * 2006-09-20 2011-11-09 株式会社中電工 画像処理装置および画像処理プログラム
CN104700355A (zh) * 2015-03-31 2015-06-10 百度在线网络技术(北京)有限公司 室内二维平面图的生成方法、装置和系统
JP6703347B2 (ja) * 2016-04-07 2020-06-03 三菱電機ビルテクノサービス株式会社 メンテナンス用図面作成装置およびメンテナンス用図面作成方法、並びにメンテナンス情報管理システム
KR20190012599A (ko) * 2017-07-28 2019-02-11 주식회사 엘지유플러스 전자 장치를 제어하는 방법 및 장치
US11288510B2 (en) * 2017-09-15 2022-03-29 Kimberly-Clark Worldwide, Inc. Washroom device augmented reality installation system
JP2020095517A (ja) * 2018-12-13 2020-06-18 キヤノン株式会社 画像処理システム、画像処理方法、撮像装置、及びプログラム

Also Published As

Publication number Publication date
EP4328892A1 (en) 2024-02-28
US20230290087A1 (en) 2023-09-14
WO2023038260A1 (ko) 2023-03-16

Similar Documents

Publication Publication Date Title
US9501810B2 (en) Creating a virtual environment for touchless interaction
KR20200061279A (ko) 전자 장치 및 그 제어 방법
US11589222B2 (en) Electronic apparatus, user terminal, and method for controlling the electronic apparatus and the user terminal
US11709593B2 (en) Electronic apparatus for providing a virtual keyboard and controlling method thereof
CN109313532B (zh) 信息处理设备、信息处理方法和程序
KR20210083016A (ko) 전자 장치 및 그의 제어 방법
US10609305B2 (en) Electronic apparatus and operating method thereof
US20200167567A1 (en) Display apparatus and control method thereof
KR102640871B1 (ko) 증강 현실을 이용한 영상 데이터를 제공하는 전자 장치 및 그 제어 방법
US20200336676A1 (en) Electronic device and operation method thereof
KR20230039097A (ko) 전자 장치 및 이의 제어 방법
KR101405439B1 (ko) 동작인식 배경영상 제공시스템, 동작인식 배경영상 제공방법 및 그 기록매체
KR102581146B1 (ko) 디스플레이 장치 및 그 제어 방법
KR20200055433A (ko) 전자 장치 및 이의 제어 방법
US10922043B2 (en) Information processing device and information processing method for acquiring information associated with a target
EP3629229A1 (en) Method, and corresponding apparatus, for controlling display of images on a display in dependence on the surroundings of the display
US20230035360A1 (en) Mapping networked devices
US11221684B2 (en) Information processing device, information processing method, and recording medium
US20240160029A1 (en) Electronic device and method for controlling the electronic device thereof
JP2010224646A (ja) 展示物情報提供システム、方法、プログラム、記録媒体
KR20240068837A (ko) 전자 장치 및 그 ui 제공 방법
KR20230126495A (ko) 제어 대상 객체의 지도를 생성하는 방법, 장치, 비일시성의 컴퓨터 판독 가능 기록 매체
KR20230172855A (ko) 전자 장치 및 그 ui 제공 방법
KR20240000327A (ko) 영상을 투사하는 프로젝션부를 포함하며 영상 통화 기능을 제공하는 전자 장치 및 이의 제어 방법
KR20240059397A (ko) 디스플레이 장치 및 그 제어 방법