WO2021221436A1 - 카메라를 이용하여 공간의 깊이를 획득하는 디바이스 및 방법 - Google Patents

카메라를 이용하여 공간의 깊이를 획득하는 디바이스 및 방법 Download PDF

Info

Publication number
WO2021221436A1
WO2021221436A1 PCT/KR2021/005307 KR2021005307W WO2021221436A1 WO 2021221436 A1 WO2021221436 A1 WO 2021221436A1 KR 2021005307 W KR2021005307 W KR 2021005307W WO 2021221436 A1 WO2021221436 A1 WO 2021221436A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
camera module
images
feature region
photographing
Prior art date
Application number
PCT/KR2021/005307
Other languages
English (en)
French (fr)
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 삼성전자 주식회사
Publication of WO2021221436A1 publication Critical patent/WO2021221436A1/ko
Priority to US17/975,209 priority Critical patent/US20230037866A1/en

Links

Images

Classifications

    • 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/61Control of cameras or camera modules based on recognised objects
    • 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/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/593Depth or shape recovery from multiple images from stereo images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/10Image acquisition
    • G06V10/16Image acquisition using multiple overlapping images; Image stitching
    • 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/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • 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
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/28Recognition of hand or arm movements, e.g. recognition of deaf sign language
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/207Image signal generators using stereoscopic image cameras using a single 2D image sensor
    • H04N13/221Image signal generators using stereoscopic image cameras using a single 2D image sensor using the relative movement between cameras and objects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/282Image signal generators for generating image signals corresponding to three or more geometrical viewpoints, e.g. multi-view systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/296Synchronisation thereof; Control thereof
    • 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/667Camera operation mode switching, e.g. between still and video, sport and normal or high- and low-resolution modes
    • 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/695Control of camera direction for changing a field of view, e.g. pan, tilt or based on tracking of objects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/271Image signal generators wherein the generated image signals comprise depth maps or disparity maps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N2013/0074Stereoscopic image analysis
    • H04N2013/0081Depth or disparity estimation from stereoscopic image signals

Definitions

  • the present disclosure relates to a device and method for obtaining a depth of space using a camera, and to a device and method for calculating a depth value of a surrounding space using a rotating camera.
  • Augmented reality is a technology that projects a virtual image onto a physical environment space of the real world or a real world object and displays it as a single image.
  • the augmented reality device allows a real scene and a virtual image to be viewed together through a see-through display module that is disposed in front of the user's eyes while being worn on the user's face or head.
  • a wearable display device wearable glasses
  • a head mounted display device Head Mounted Display
  • a wearable display device that is currently released or is expected to be released.
  • the augmented reality device needs to measure the depth of the real object in order to recognize the user's gesture or display the virtual object in natural connection with the real object.
  • the existing augmented reality device measures the depth of the surrounding space by using a plurality of cameras or a Time of Flight (TOF) camera to recognize objects in the surrounding space, thereby increasing the weight or number of cameras. there was. Also, due to this, problems such as an increase in volume, weight, and battery consumption of the augmented reality device have occurred.
  • TOF Time of Flight
  • An embodiment of the present disclosure compares images obtained by photographing the periphery of the camera a plurality of times while sequentially rotating one camera module at a preset angle, thereby reducing the weight of the device and effectively calculating the depth of a specific area
  • a device and method can be provided.
  • an embodiment of the present disclosure efficiently identifies the same specific region in the images by comparing adjacent images among a plurality of sequentially photographed images, and the depth of specific regions based on the positions of the identified specific regions
  • a device and method capable of calculating a value may be provided.
  • an embodiment of the present disclosure may provide a device and method capable of setting a shooting angle range through a camera module according to a shooting mode.
  • a first aspect of the present disclosure includes: acquiring a plurality of images by photographing a periphery of the camera a plurality of times while sequentially rotating a camera module at a preset angle; By comparing adjacent images between a first image and an n-th image among the plurality of images, a first feature region in the first image and an n-th feature region identical to the first feature region in the n-th image are identified to do; Based on the arrangement of the camera module when capturing the first image and the arrangement of the camera module when capturing the n-th image, a base line value for the first image and the n-th image is calculated obtaining; obtaining a disparity value between the first feature region and the n-th feature region based on the position of the first feature region in the first image and the position of the n-th feature region in the n-th image step; and calculating the depth of the first feature region or the n-th feature region based on the base
  • a camera module a photographing direction control unit for rotating the camera module at a predetermined angle
  • display a memory storing one or more instructions
  • processor executing the one or more instructions, wherein the processor controls the photographing direction control unit and the camera module, thereby sequentially rotating the camera module at a preset angle to view the periphery of the camera.
  • a plurality of images are acquired by photographing a plurality of times, and by comparing adjacent images between a first image and an n-th image among the plurality of images, the first feature region in the first image and the first feature region in the n-th image Identifies an n-th feature region that is the same as the first feature region, and based on the arrangement of the camera module when capturing the first image and the arrangement of the camera module when capturing the n-th image, the first image and the obtain a base line value for an n-th image, and based on the position of the first feature region in the first image and the position of the n-th feature region in the n-th image, the first feature region and a camera module that obtains a disparity value between the nth feature regions and calculates a depth of the first feature region or the nth feature region based on the baseline value and the disparity value. It is possible to provide a device for obtaining the depth of the feature region by using it.
  • a third aspect of the present disclosure may provide a computer-readable recording medium in which a program for executing the method of the first aspect is recorded on a computer.
  • FIG. 1 is a schematic diagram of a method for a device to acquire a depth of a peripheral area according to an embodiment of the present disclosure
  • FIG. 2 is a block diagram of a device according to an embodiment of the present disclosure.
  • FIG. 3 is a diagram illustrating an example in which a camera module in a device is rotated according to an embodiment of the present disclosure.
  • FIG. 4A is a diagram illustrating an example of acquiring a plurality of images while rotating a camera module in a device according to an embodiment of the present disclosure.
  • 4B is a diagram illustrating an example in which the same feature region in adjacent images is sequentially identified according to an embodiment of the present disclosure
  • 4C is a diagram illustrating an example in which a device identifies identical identification regions in images having the largest angular difference according to an embodiment of the present disclosure.
  • 5A is a diagram illustrating an example in which the device captures the surroundings of the device according to an embodiment of the present disclosure.
  • 5B is a diagram illustrating an example in which a device according to an embodiment of the present disclosure virtually arranges a camera module.
  • 5C is a diagram illustrating an example in which a device calculates a disparity value according to an embodiment of the present disclosure.
  • FIG. 6 is a diagram illustrating an example in which a device calculates a depth of a feature region according to an embodiment of the present disclosure.
  • FIG. 7 is a flowchart of a method for a device to calculate a depth of a feature region in an image according to an embodiment of the present disclosure.
  • FIG. 8 is a diagram illustrating an example in which a device calculates a disparity value according to an embodiment of the present disclosure.
  • FIG. 9 is a flowchart of a method for a device to recognize surroundings of a device according to a photographing mode according to an embodiment of the present disclosure.
  • FIG. 10A is a diagram illustrating an example in which a device captures a user's hand motion in a gesture mode according to an embodiment of the present disclosure
  • 10B is a diagram illustrating an example in which the device 1000 recognizes a gesture from image sets according to an embodiment of the present disclosure.
  • 11A is a diagram illustrating an example in which a device groups a plurality of images obtained by photographing a periphery of the device into a plurality of image sets according to an embodiment of the present disclosure
  • 11B is a diagram illustrating an example of a plurality of image sets grouped by a device according to an embodiment of the present disclosure.
  • 11C is a diagram illustrating an example in which a device generates and analyzes a depth map indicating a space around the device from a depth map generated from a plurality of image sets according to an embodiment of the present disclosure
  • AR Augmented Reality
  • 'augmented reality means showing a virtual image together in a physical environment space of the real world or showing a real object and a virtual image together.
  • 'augmented reality device is a device capable of expressing 'augmented reality', and is generally an augmented reality glasses device in the form of glasses worn by a user on a face part ( Augmented Reality Glasses), as well as a head mounted display device (HMD: Head Mounted Display Apparatus) worn on the head, and an augmented reality helmet (Augmented Reality Helmet).
  • Augmented Reality Device is a device capable of expressing 'augmented reality', and is generally an augmented reality glasses device in the form of glasses worn by a user on a face part ( Augmented Reality Glasses), as well as a head mounted display device (HMD: Head Mounted Display Apparatus) worn on the head, and an augmented reality helmet (Augmented Reality Helmet).
  • HMD Head Mounted Display Apparatus
  • a 'real scene' is a scene of the real world that a user sees through the augmented reality device, and may include a real world object.
  • a 'virtual image' is an image generated through an optical engine and may include both a static image and a dynamic image. Such a virtual image is observed together with a real scene, and may be an image representing information about a real object in the real scene, information about an operation of an augmented reality device, or a control menu.
  • a general augmented reality device uses an optical engine for generating a virtual image composed of light generated from a light source, and a transparent material to guide the virtual image generated by the optical engine to the user's eyes and view the scene in the real world together.
  • a formed light guide plate (Wave guide) is provided.
  • an optical element for changing the path of light having a basic straightness (Optical element) is required.
  • the optical path may be changed by using reflection by a mirror or the like, or the optical path may be changed through diffraction by a diffractive element such as a diffractive optical element (DOE) or a holographic optical element (HOE), but is not limited thereto.
  • DOE diffractive optical element
  • HOE holographic optical element
  • the gesture recognition mode is a photographing mode for photographing a gesture by the user's body located in a short distance in a photographing angle range smaller than a predetermined threshold
  • the spatial recognition mode is a photographing mode of the device 1000 in a photographing angle range greater than a predetermined threshold.
  • the disparity value for the two images may be a value indicating how much a certain feature region in one image is shifted in the other image among the two photographed images.
  • the baseline value may be a value indicating a distance between a photographing center of the camera module when photographing one image and a photographing center of the camera module when photographing another image.
  • the photographing center of the camera module may be, for example, a center point of a lens of the camera module.
  • FIG. 1 is a schematic diagram of a method for a device to acquire a depth of a peripheral area according to an embodiment of the present disclosure
  • the device 1000 sequentially photographs the periphery of the device 1000 through the rotated camera module 1400 while rotating the camera module 1400 at a preset angle, and A plurality of images in which the surroundings are photographed may be acquired.
  • the device 1000 may identify the same feature regions in the plurality of images by acquiring a plurality of images including the first image to the n-th image and comparing adjacent images among the plurality of images. Also, through this, the device 1000 may obtain a disparity value between the same feature regions in the first image and the n-th image, and calculate a depth value for the feature region.
  • the device 1000 may be an augmented reality apparatus capable of expressing augmented reality.
  • the device 1000 includes, for example, augmented reality glasses in the form of glasses worn by the user on the face, and a head mounted display device (HMD) worn on the head.
  • HMD head mounted display device
  • Mounted Display Apparatus or an augmented reality helmet (Augmented Reality Helmet) may be included.
  • the device 1000 is a smart phone, a tablet PC, a PC, a smart TV, a mobile phone, a personal digital assistant (PDA), a laptop, a media player, a micro server, a global positioning system (GPS) device, an e-book terminal, a digital broadcasting terminal. , navigation, kiosks, MP3 players, digital cameras, consumer electronics and other mobile or non-mobile computing devices.
  • PDA personal digital assistant
  • GPS global positioning system
  • the present invention is not limited thereto, and the device 1000 may include any type of device capable of processing an image obtained by controlling a camera module.
  • FIG. 2 is a block diagram of a device according to an embodiment of the present disclosure.
  • the device 1000 includes a user input unit 1100, a microphone 1200, a display unit 1300, a camera module 1400, a shooting direction control unit 1500, It may include a communication interface 1600 , a storage unit 1700 , and a processor 1800 .
  • the user input unit 1100 means a means for a user to input data for controlling the device 1000 .
  • the user input unit 1100 may include a key pad, a dome switch, and a touch pad (contact capacitive method, pressure resistance film method, infrared sensing method, surface ultrasonic conduction method, integral type). a tension measurement method, a piezo effect method, etc.), a jog wheel, or a jog switch, but is not limited thereto.
  • the user input unit 1100 captures the surroundings of the device 1000 using a camera module 1400 to be described later, and provides a user input for receiving a service from the device 1000 or a server (not shown) based on the captured image. can receive
  • the microphone 1200 receives an external sound signal and processes it as electrical voice data.
  • the microphone 1200 may receive an acoustic signal from an external device or a speaker.
  • the microphone 1200 may use various noise removal algorithms for removing noise generated in the process of receiving an external sound signal.
  • the microphone 1200 may receive a user's voice input for controlling the device 1000 .
  • the display unit 1300 outputs information processed by the device 1000 .
  • the display unit 1300 may display a user interface for photographing the surroundings of the device 1000 and information related to services provided based on images photographed around the device 1000 .
  • the device 1000 may provide an augmented reality (AR) image to the display 1300 .
  • the display 1300 may include a wave guide (not shown) and a display module (not shown).
  • the wave guide (not shown) may be made of a transparent material through which a partial region of the rear surface is visible when the user wears the device 1000 .
  • the wave guide (not shown) may be formed of a flat plate having a single-layer or multi-layer structure made of a transparent material that can propagate while being reflected therein.
  • the wave guide may receive the light of the virtual image projected to face the emission surface of the display module.
  • the transparent material means a material through which light can pass, the transparency may not be 100%, and it may have a predetermined color.
  • the wave guide (not shown) is formed of a transparent material, the user can not only see the virtual object of the virtual image through the display 1300, but also see an external real scene,
  • the wave guide (not shown) may be referred to as a see through display.
  • the display 1300 may provide an augmented reality image by outputting a virtual object of a virtual image through a wave guide.
  • the camera module 1400 may photograph the surroundings of the device 1000 .
  • the camera module may obtain an image frame, such as a still image or a moving picture, through an image sensor when an application requiring a photographing function is executed.
  • the image captured through the image sensor may be processed through a processor 1800 to be described later or a separate image processing unit (not shown).
  • the photographing direction control unit 1500 may change the photographing direction of the camera module 1400 .
  • the photographing direction control unit 1500 may include a hardware structure capable of changing the photographing direction of the camera module 1400 by panning the camera module 1400 .
  • the camera module 1400 may be rotated clockwise or counterclockwise based on a predetermined axis, and the camera module 1400 rotates at a predetermined angle and sequentially moves around the device 1000 while rotating at a predetermined angle. can be filmed
  • the shooting direction control unit 1500 includes, for example, an electromagnet located in the vicinity of the camera module 1400, and controls the shooting direction of the camera module 1400 using a magnetic force generated by applying electricity to the electromagnet.
  • the photographing direction control unit 1500 may include, for example, a motor physically connected to the camera module 1400 and control the photographing direction of the camera module 1400 using the motor.
  • the method in which the shooting direction control unit 1500 controls the shooting direction of the camera module 1400 is not limited thereto, and the shooting direction of the camera module 1400 is controlled by rotating the camera module 1400 through various methods. can do.
  • the communication interface 1600 may transmit/receive data for receiving a service to and from an external device (not shown) and a server (not shown) based on an image obtained by photographing the surroundings of the device 1000 .
  • the storage unit 1700 may store a program to be executed by the processor 1800 , which will be described later, and may store data input to or output from the device 1000 .
  • the storage unit 1700 includes a flash memory type, a hard disk type, a multimedia card micro type, a card type memory (eg, SD or XD memory, etc.), RAM (Random Access Memory) SRAM (Static Random Access Memory), ROM (Read-Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory), PROM (Programmable Read-Only Memory), magnetic memory, magnetic It may include at least one type of storage medium among a disk and an optical disk.
  • a flash memory type e.g, a hard disk type, a multimedia card micro type, a card type memory (eg, SD or XD memory, etc.), RAM (Random Access Memory) SRAM (Static Random Access Memory), ROM (Read-Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory), PROM (Programmable Read-Only Memory), magnetic memory, magnetic It may include at least one type of storage medium among a disk and an optical disk.
  • Programs stored in the storage unit 1700 may be classified into a plurality of modules according to their functions.
  • the photographing mode identification module 1710 , the photographing angle determination module 1720 , the photographing module 1730 , and the image It may include a comparison module 1740 , an image arrangement module 1750 , a depth calculation module 1760 , a gesture recognition module 1770 , and a spatial recognition module 1780 .
  • the processor 1800 controls the overall operation of the device 1000 .
  • the processor 1800 executes the programs stored in the storage unit 1700, so that the user input unit 1100, the microphone 1200, the display unit 1300, the camera module 1400, the shooting direction control unit ( 1500), the communication interface 1600, the storage unit 1700, and the like can be generally controlled.
  • the processor 1800 may identify the photographing mode of the camera module 1400 by executing the photographing mode identification module 1710 stored in the storage 1700 .
  • the photographing mode of the camera module 1400 may include, for example, a gesture recognition mode for recognizing a user's gesture and a space recognition mode for recognizing a space around the device 1000 .
  • the gesture recognition mode is a photographing mode for photographing a gesture by the user's body located in a short distance in a photographing angle range smaller than a predetermined threshold, and the spatial recognition mode photographing a space around the device 1000 in a photographing angle range greater than a predetermined threshold. It may be a shooting mode for
  • the processor 1800 may identify the shooting mode of the camera module 1400 according to a preset criterion. For example, when the power of the device 1000 is turned on or the device 1000 is activated in an inactive state, the processor 1800 changes the shooting mode of the camera module 1400 to the gesture recognition mode in order to receive the user's gesture input. can be identified. Also, the processor 1800 may recognize the user's gesture in the gesture recognition mode and change the shooting mode of the camera module 1400 according to the recognized gesture. The processor 1800 may execute an application corresponding to the gesture and change the photographing mode of the camera module 1400 according to the photographing mode required by the executed application. Also, for example, when an application that does not require shooting through the camera module 1400 is executed, the processor 1800 may deactivate the camera module 1400 .
  • the device 1000 may identify the photographing mode of the camera module 1400 as a spatial recognition mode. Also, the processor 1800 may recognize the surrounding space of the device 1000 by photographing the surrounding of the device 1000 in the spatial recognition mode.
  • the processor 1800 may identify the photographing mode of the camera module 1400 as a gesture mode or a space recognition mode.
  • the processor 1800 may determine the range of the shooting angle of the camera module 1400 by executing the shooting angle determining module 1720 stored in the storage 1700 .
  • the processor 1800 may determine the range of the photographing angle according to the identified photographing mode. In this case, the range of the photographing angle according to the photographing mode may be preset.
  • the camera module 1400 may be set to photograph the surroundings of the device 1000 in a photographing angle range of -15 degrees to 15 degrees. For example, assuming that the angle when the camera module 1400 is facing the front is 0 degrees, when the shooting angle range of the camera module 1400 is -15 degrees to 15 degrees, the camera module 1400 is based on the front. It can be rotated up to -15 degrees to the left and up to 15 degrees to the right.
  • the camera module 1400 may be set to photograph the surroundings of the device 1000 in a photographing angle range of -60 degrees to 60 degrees. For example, assuming that the angle when the camera module 1400 is facing the front is 0 degrees, when the shooting angle range of the camera module 1400 is -60 degrees to 60 degrees, the camera module 1400 is based on the front. It can be rotated up to -60 degrees to the left and up to 60 degrees to the right.
  • the processor 1800 may determine the shooting interval of the camera module 1400 by executing the shooting angle determining module 1720 stored in the storage 1700 .
  • the processor 1800 may determine how many angular intervals to photograph the surroundings of the device 1000 within the photographing angle range. For example, the processor 1800 may determine the photographing interval to photograph the periphery of the device 1000 at intervals of 5 degrees within the photographing angle range.
  • the shooting interval of the camera module 1400 may be set differently according to, for example, a shooting mode and a shooting environment.
  • the photographing environment may include, but is not limited to, brightness around the device 1000 , the number of subjects, and movement of subjects.
  • the processor 1800 may photograph the surroundings of the device 1000 through the camera module 1400 by executing the photographing module 1730 stored in the storage 1700 .
  • the processor 1800 controls the camera module 1400 and the photographing direction control unit 1500 to sequentially photograph the periphery of the device 1000 according to the photographing interval determined within the identified photographing angle range, thereby capturing a plurality of images. can be obtained
  • the camera module 1400 may photograph the surroundings of the device 1000 a plurality of times according to a photographing interval while rotating within a photographing angle range. Some of the adjacent images among the images captured by the camera module 1400 may overlap each other.
  • the processor 1800 may take a video while rotating the camera module 1400 within a shooting angle range by controlling the camera module 1400 and the shooting direction control unit 1500 .
  • the processor 1800 may extract a plurality of frames from among the frames in the captured video according to the shooting interval. Some of the adjacent images among the images of the extracted frames may overlap each other.
  • the processor 1800 may change the focal length of the camera module 1400 by executing the photographing module 1730 stored in the storage unit 1700 .
  • the processor 1800 may not change the focal length of the camera module 1400 .
  • the focal length of the camera module 1400 may be set to measure a subject located at a close distance. The focal length of the camera module 1400 may not be changed. Also, since the focal length for photographing subjects at a close distance near a predetermined distance value is substantially the same, the processor 1800 may not change the focal length of the camera module 1400 .
  • the processor 1800 changes the focal length according to the subject while the camera module 1400 changes the focal length according to the changed focal length of the device 1000 .
  • the camera module 1400 may be controlled to photograph the surroundings of the .
  • the processor 1800 may compare adjacent images among a plurality of images acquired through the camera module 1400 by executing the image comparison module 1740 stored in the storage unit 1700 .
  • the processor 1800 may identify the same feature regions in the adjacent images by comparing the adjacent images with each other.
  • the processor 1800 compares the first image with the second image, compares the second image with the third image, and compares the third image with the third image.
  • the four images may be compared, and the fourth image and the fifth image may be compared.
  • the processor 1800 identifies that the first feature region in the first image is the same as the second feature region in the second image, and the second feature region in the second image is the same as the third feature region in the third image and identify that the third feature region in the third image is identical to the fourth feature region in the fourth image, and that the fourth feature region in the fourth image is identical to the fifth feature region in the fifth image. can be identified. Accordingly, the processor 1800 may more effectively identify that the first feature region in the first image and the fifth feature region in the fifth image are the same.
  • the feature region in the image may be a predetermined feature point.
  • the processor 1800 may arrange two selected images among a plurality of images by executing the image arrangement module 1750 stored in the storage unit 1700 .
  • the processor 1800 may select two images having different photographing angles by more than a predetermined threshold from among a plurality of images.
  • the processor 1800 may more accurately calculate the depth of the feature region by selecting two images having the same feature region despite the largest difference in shooting angle from among the plurality of images.
  • the processor 1800 may select a first image and a fifth image that are different by a predetermined value or more from among the five obtained images.
  • the processor 1800 may virtually arrange the two images to obtain a disparity value for the two selected images.
  • the disparity value for the two images may be a value indicating how much a certain feature area in one image is shifted in the other image among the two photographed images.
  • the processor 1800 may virtually arrange the camera module 1400 so that the photographing directions of the camera module 1400 are parallel to each other. For example, while maintaining the baseline value between the camera module 1400 when shooting the first image and the camera module 1400 when shooting the fifth image, the camera module 1400 when shooting the first image
  • the camera module 1400 when photographing the first image and the camera module 1400 when photographing the fifth image are virtual so that the photographing direction and the photographing direction of the camera module 1400 when photographing the fifth image are parallel.
  • the baseline value may be a value indicating a distance between the shooting center of the camera module 1400 when capturing one image and the capturing center of the camera module 1400 when capturing another image.
  • the photographing center of the camera module 1400 may be, for example, a center point of a lens of the camera module 1400 . A method of arranging the camera modules 1400 virtually will be described later.
  • the processor 1800 may arrange the images based on the position of the virtually arranged camera module 1400 . For example, based on the arrangement position of the camera module 1400 when capturing the first image and the arrangement position of the camera module when capturing the fifth image, the first image and the fifth image are to be arranged virtually. can In this case, the processor 1800 is configured to: based on the position of the first feature region in the virtually arranged first image and the position of the fifth feature region in the virtually arranged fifth image, the first feature region and A disparity value between the fifth feature regions in the fifth image may be obtained. For example, the disparity value may be calculated based on a distance between identical feature regions in the virtually arranged images.
  • the processor 1800 may calculate the depth of the feature region by executing the depth calculation module 1760 stored in the storage unit 1700 .
  • the processor 1800 determines the depth of the same feature region in the two images by using the disparity value for the same feature regions in the two images, the baseline value of the camera module 1400 and the focal length of the camera module 1400 . can be calculated.
  • the processor 1800 may calculate the depth of the feature region by using the same ratio between the baseline value and the focal length as the ratio between the disparity value and the depth.
  • the processor 1800 may generate a depth map of a space around the device 1000 by calculating the depths of the feature regions in the image.
  • the depth map is an image indicating 3D distance information of objects or spaces existing in the image, and each pixel value in the image may indicate depth information of the corresponding pixel.
  • the depth information may be a value indicating a distance from a view point to a space corresponding to a specific pixel.
  • the depth map may distinguish a part far from the viewpoint and a part close to the viewpoint. For example, in the depth map, from the user's point of view, from the distant part to the close part may be displayed in a gradation manner so that it gradually darkens from white to black. Accordingly, shapes and depths of objects in the surrounding space of the device 1000 may be differentiatedly expressed in the depth map.
  • the processor 1800 generates a plurality of depth maps for portions of a space around the device 1000 from image sets of a predetermined unit, and connects the plurality of depth maps to a depth map for a space around the device 1000 . can be completed. For example, when 20 images are acquired by photographing the periphery of the device 1000 while the camera module 1400 is rotated, the processor 1800 performs the first image from the first image set including the first to tenth images.
  • the processor 1800 may generate a full depth map by using the first partial depth map, the second partial depth map, and the third partial depth map.
  • the processor 1800 may identify the depth of the feature region using the artificial intelligence model.
  • the processor 1800 may acquire information about the depth of the feature region by inputting images photographed from the camera module 1400 into the artificial intelligence model trained to calculate the depth of the feature region from the images.
  • the depth information of the feature region obtained from the artificial intelligence model may be used to verify the depth information calculated by the depth calculation module 1760, but is not limited thereto.
  • images captured by the camera module 1400 and depth information calculated by the depth calculation module 1760 may be used to update an artificial intelligence model for depth calculation.
  • the processor 1800 may acquire a depth map using an artificial intelligence model.
  • the processor 1800 may obtain a depth map for the space around the device 1000 by inputting the images captured from the camera module 1400 into an artificial intelligence model trained to generate a depth map from the images. .
  • the depth map obtained from the artificial intelligence model may be used to verify the depth map generated by the depth calculation module 1760, but is not limited thereto.
  • the images captured by the camera module 1400 and the depth map generated by the depth calculation module 1760 may be used to update an artificial intelligence model for generating the depth map.
  • the processor 1800 may recognize the user's gesture by executing the gesture recognition module 1770 stored in the storage 1700 .
  • the processor 1800 may acquire images while rotating repeatedly a plurality of times within a photographing angle range. For example, the processor 1800 obtains a set of n first gesture images while first rotating within the shooting angle range, acquiring n second sets of gesture images while rotating for a second time within the shooting angle range, and capturing A third set of n third gesture images may be obtained while rotating for the third time within the angular range. Also, for example, the processor 1800 may calculate the depth of the user's hand from the images in the first gesture image set to identify the first shape and the first position of the user's hand.
  • the processor 1800 may calculate the depth of the user's hand from the images in the second set of gesture images to identify the second shape and the second position of the user's hand. For example, the processor 1800 may calculate the depth of the user's hand from the images in the third set of gesture images to identify the third shape and the third position of the user's hand. Also, the processor 1800 may identify a change in the shape of the user's hand based on the first shape, the second shape, and the third shape of the user's hand, and recognize a gesture according to the identified shape change of the hand.
  • the processor 1800 may identify a change in the position of the user's hand based on the first position, the second position, and the third position of the user's hand, and recognize a gesture according to the identified position change of the hand.
  • the processor 1800 may also recognize the gesture by considering the shape change and the position change of the user's hand. In the above, the gesture according to the user's hand has been described, but in order to recognize the gesture, a body part other than the user's hand may be recognized.
  • the processor 1800 may identify the gesture using the artificial intelligence model.
  • the processor 1800 may identify the user's gesture by inputting the images captured from the camera module 1400 into the AI model trained to identify the user's gesture from the images.
  • the gesture identified from the AI model may be used to verify the gesture recognized by the gesture recognition model, but is not limited thereto.
  • images captured by the camera module 1400 and gestures recognized by the gesture recognition module 1770 may be used to update an artificial intelligence model for gesture recognition.
  • the processor 1800 may recognize the space around the device 1000 by executing the space recognition module 1780 stored in the storage unit 1700 .
  • the processor 1800 may identify the feature regions around the device 1000 from the depth map generated with respect to the periphery of the device 1000 .
  • the processor 1800 may include identification information about an object corresponding to the feature region around the device 1000 , coordinate information indicating a relative position of the feature region with respect to the device 1000 , and the device 1000 and Depth information indicating the distance between the feature regions may be generated.
  • the processor 1800 may identify an unrecognized space among the spaces around the device 1000 , generate a depth map for the unrecognized space when the unrecognized space is photographed, and add it to the entire depth map. .
  • the processor 1800 may store a history of which area around the device 1000 was photographed by the camera module 1400, and based on the stored history, the camera module 1400 faces a space in which the photograph is not taken. In this case, the spatial awareness mode can be activated.
  • the processor 1800 may recognize a space using an artificial intelligence model.
  • the processor 1800 recognizes the surrounding space of the device 1000 by inputting the images or the depth map photographed from the camera module 1400 to the artificial intelligence model trained to identify the feature region in space from the images. can do.
  • the spatial information recognized by the artificial intelligence model may be used to verify the space recognized by the spatial recognition model, but is not limited thereto.
  • images or depth maps captured by the camera module 1400 and spatial information recognized by the spatial recognition module 1780 may be used to update an artificial intelligence model for spatial recognition.
  • FIG. 3 is a diagram illustrating an example in which a camera module in a device is rotated according to an embodiment of the present disclosure.
  • the photographing direction control unit 1500 may rotate the camera module 1400 clockwise or counterclockwise 32 based on the rotation center 30 . Accordingly, the camera module 1400 can sequentially photograph the periphery of the device 1000 while rotating at a predetermined angle. Also, the camera module 1400 may photograph the periphery of the device 1000 while panning or tilting at a predetermined angle around the rotation center 30 .
  • FIG. 4A is a diagram illustrating an example of acquiring a plurality of images while rotating a camera module in a device according to an embodiment of the present disclosure.
  • the camera module 1400 in the device 1000 may sequentially photograph the surroundings of the device 1000 while rotating by a predetermined angle in a clockwise or counterclockwise direction within a predetermined photographing angle range 40 .
  • the device 1000 may sequentially photograph the surroundings of the device 1000 while rotating the camera module 1400 clockwise by 5 degrees.
  • the photographing angle range 40 of the camera module 1400 may be set differently according to the photographing mode of the device 1000 .
  • the photographing angle range 40 may be set in a range of -15 degrees to +15 degrees with respect to the reference axis 42 .
  • the photographing angle range 40 may be in the range of -30 degrees to +30 degrees with respect to the reference axis 42 .
  • the reference axis 42 may be determined by the photographing direction of the camera module 1400 when the camera module 1400 faces the front of the device 1000 .
  • the device 1000 may acquire first to nth images by photographing the surroundings of the device 1000 through the camera module 1400 .
  • a predetermined portion of adjacent images among the first to n-th images may overlap each other.
  • 4B is a diagram illustrating an example in which the same feature region in adjacent images is sequentially identified according to an embodiment of the present disclosure
  • the device 1000 may identify identical feature regions in images through a stereo matching technique.
  • the device 1000 may identify that the first feature region in the first image is the same as the second feature region in the second image. Also, the device 1000 may identify that the second feature region in the second image is the same as the third feature region in the third image. As such, by sequentially comparing two adjacent images, the device 1000 may identify that the n-1 th feature region in the n-1 th image is the same as the n th feature region in the n th image.
  • 4C is a diagram illustrating an example in which a device identifies identical identification regions in images having the largest angular difference according to an embodiment of the present disclosure.
  • the device 1000 may identify that the first feature region in the first image is the same as the n-th feature region in the n-th image, based on the identification result in FIG. 4B . Accordingly, the device 1000 may identify the same feature region in two images having the largest photographing angle difference among the first to n-th images, and the device 1000 more accurately calculates the depth of the feature region to be described later. be able to do
  • Adjacent images overlap each other in many parts, and the same specific areas in the adjacent images are displayed at similar positions in the adjacent images, so that the device 1000 can more effectively identify the same specific areas by comparing adjacent images.
  • the first image overlaps the second image more than other images, and the position of the first feature region in the first image is less different from the position of the second feature region in the second image. Therefore, even when the device 1000 compares smaller portions of the first image and the second image with each other, the device 1000 can effectively and accurately identify that the first feature region and the second feature region are the same.
  • the device 1000 sequentially compares adjacent images and uses the sequentially compared results to more accurately identify that the first feature region of the first image and the nth feature region of the nth image are the same. do.
  • the device 1000 may identify the same feature regions in the plurality of selected images by selecting a plurality of images that are part of the captured images and comparing the plurality of selected images. For example, by selecting a third to n-3th image from among the first to nth images, and comparing adjacent images among the third to n-3th images, the third feature region and the third feature region in the third image It may be identified that the n-3th feature region in the n-3 image is the same.
  • the device 1000 has been described as identifying the same feature regions from the first image captured at the smallest angle and the n-th image captured at the largest angle within the capturing angle range.
  • the device 1000 may identify the same feature regions from two images having a photographing angle difference greater than or equal to a predetermined threshold, and calculate depths of the feature regions using the identified feature regions. For example, the device 1000 selects a first image and an n-3 th image having a difference in shooting angle equal to or greater than a predetermined threshold from among the first to n th images, and selects the same image from the selected first image and the n-3 th image. Feature regions can be identified.
  • 5A to 5C are diagrams for explaining an example in which a device arranges photographed images and obtains a disparity value of a feature region according to an embodiment of the present disclosure
  • 5A is a diagram illustrating an example in which the device captures the surroundings of the device according to an embodiment of the present disclosure.
  • the device 1000 may sequentially photograph the periphery of the device 1000 at predetermined photographing angle intervals within the photographing angle range.
  • the shooting center of the camera module 1400-1 when shooting the first image which is the two images with the largest difference within the shooting angle range
  • the shooting center of the camera module 1400-n when shooting the n-th image Accordingly, the baseline value b for the first image and the n-th image may be determined.
  • the distance between the lens center of the camera module 1400-1 when photographing the first image and the lens center of the camera module 1400-n when photographing the n-th image may be the baseline value (b). have.
  • 5B is a diagram illustrating an example in which a device according to an embodiment of the present disclosure virtually arranges a camera module.
  • the device 1000 maintains a baseline value b between the camera module 1400-1 when capturing the first image and the camera module 1400-n when capturing the n-th image. , so that the photographing direction 53 of the camera module 1400-1 when photographing the first image and the photographing direction 54 of the camera module 1400-n when photographing the n-th image are parallel to each other, the first The camera module 1400-1 for capturing an image and the camera module 1400-n for capturing the n-th image may be virtually disposed.
  • 5C is a diagram illustrating an example in which a device calculates a disparity value according to an embodiment of the present disclosure.
  • the device 1000 may arrange the first image and the nth image in order to calculate a disparity value d of the same feature regions in the first image and the nth image.
  • the device 1000 may arrange the first image and the nth image along the vertical axis 55 and the vertical axis 56 .
  • vertical sides of the first image and the n-th image may not coincide with the vertical axis 55 and the vertical axis 56 .
  • the device 1000 may rectify the first image and the nth image according to a predetermined algorithm so that the vertical sides of the first image and the nth image coincide with the vertical axis 55 and the vertical axis 56 .
  • the device 1000 determines a disparity value ( ( d) can be calculated.
  • the disparity value d between the first feature region and the nth feature region may be determined by the distance between the vertical line 57 crossing the first feature region and the vertical line 58 crossing the nth feature region. have.
  • FIG. 6 is a diagram illustrating an example in which a device calculates a depth of a feature region according to an embodiment of the present disclosure.
  • the depth of the same feature region in the two images can be calculated. For example, based on the ratio between the depth z of the feature region and the focal length f of the camera module 1400 being equal to the ratio of the disparity value d and the baseline value b, the following math As in Equation 1, the depth z of the feature region may be calculated.
  • Depth of feature area (z) ⁇ disparity value (d) x focal length (f) ⁇ /baseline value (b)
  • the depth z of the feature region is the depth of the first feature region and the n-th feature region, which are the same feature regions in the image
  • the disparity value d is the first feature region in the image and It is a disparity value for the n-th characteristic region
  • the baseline value (b) is the lens center of the camera module 1400 when photographing the first characteristic region and the lens of the camera module 1400 when photographing the n-th characteristic region
  • the distance between the centers, and the focal length f may be the focal length of the camera lens 1400 when the first and nth characteristic regions are photographed.
  • FIG. 7 is a flowchart of a method for a device to calculate a depth of a feature region in an image according to an embodiment of the present disclosure.
  • the device 1000 may continuously photograph the surroundings of the device 1000 while rotating the camera module 1400 .
  • the device 1000 controls the camera module 1400 and the photographing direction control unit 1500 to sequentially photograph the periphery of the device 1000 according to the photographing interval determined within the identified photographing angle range, thereby capturing a plurality of images.
  • the camera module 1400 may photograph the surroundings of the device 1000 a plurality of times according to a photographing interval while rotating within a photographing angle range. Some of the adjacent images among the images captured by the camera module 1400 may overlap each other.
  • the device 1000 may identify the same feature regions in the images by comparing adjacent images among the plurality of photographed images.
  • the device 1000 may identify that the first feature region in the first image is the same as the second feature region in the second image.
  • the device 1000 may identify that the second feature region in the second image is the same as the third feature region in the third image.
  • the device 1000 may identify that the n-1 th feature region in the n-1 th image is the same as the n th feature region in the n th image.
  • the device 1000 may select a first image and an nth image having a shooting angle equal to or greater than a predetermined value from among the plurality of images. For example, when n images are photographed, the first image photographed at the smallest photographing angle and the nth image photographed at the largest photographing angle within the photographing angle range may be selected, but the present invention is not limited thereto.
  • the device 1000 may identify the same feature regions from two images having a photographing angle difference greater than or equal to a predetermined threshold, and calculate depths of the feature regions using the identified feature regions.
  • the device 1000 selects a first image and an n-3 th image having a difference in shooting angle equal to or greater than a predetermined threshold from among the first to n th images, and selects the same image from the selected first image and the n-3 th image.
  • Feature regions may be identified.
  • the device 1000 may obtain a baseline value based on the photographing center of the camera module 1400 when photographing the first image and the photographing center of the camera module 1400 when photographing the second image.
  • the baseline value may be a value indicating a distance between the shooting center of the camera module 1400 when capturing one image and the capturing center of the camera module 1400 when capturing another image.
  • the photographing center of the camera module 1400 may be, for example, a center point of a lens of the camera module 1400 .
  • the device 1000 may calculate a disparity value between the first feature region in the first image and the nth feature region in the nth image.
  • the device 1000 virtually arranges a camera module when capturing a first image and a camera module when capturing an n-th image while maintaining a baseline value, and arranges the first image and the second image according to a predetermined criterion.
  • the device 1000 calculates a disparity value between the first feature region and the second feature region based on the position of the first feature region in the arranged first image and the position of the nth feature region in the arranged n-th image. can be calculated.
  • the device 1000 may calculate the depth of the feature region based on the disparity value, the baseline value, and the focal length of the camera module.
  • the device 1000 determines the depth of the same feature region in the two images by using the disparity value for the same feature regions in the two images, the baseline value of the camera module 1400 and the focal length of the camera module 1400 . can be calculated.
  • the device 1000 may calculate the depth of the feature region by using the same ratio between the base line value and the focal length as the ratio between the disparity value and the depth.
  • FIG. 8 is a diagram illustrating an example in which a device calculates a disparity value according to an embodiment of the present disclosure.
  • the device 1000 may virtually arrange the camera module 1400-1 for capturing the first image and the camera module 1400-n for capturing the n-th image while maintaining the baseline value. .
  • the device 1000 may photograph the first image so that the photographing direction of the camera module 1400-1 when photographing the first image and the photographing direction of the camera module 1400-n when photographing the n-th image are parallel to each other.
  • the camera module 1400-1 at the time and the camera module 1400-n at the time of capturing the n-th image may be virtually disposed.
  • the device 1000 may arrange the first image and the nth image.
  • the device 1000 may arrange the first image and the nth image along the vertical axis 55 and the vertical axis 56 .
  • the device 1000 determines that the vertical sides of the first image and the n-th image are aligned with the vertical axis 55 and the vertical axis ( 56), the first image and the n-th image may be rectified according to a predetermined algorithm.
  • the device 1000 may calculate a distance between the first feature region in the first image and the nth feature region in the nth image.
  • the device 1000 is configured to move between the first feature region and the n-th feature region based on the position of the first feature region in the first image arranged in operation S820 and the position of the second feature region in the second image arranged in operation S820 . distance can be calculated.
  • FIG. 9 is a flowchart of a method for a device to recognize surroundings of a device according to a photographing mode according to an embodiment of the present disclosure.
  • the device 1000 may identify a photographing mode. For example, when the power of the device 1000 is turned on or the device 1000 is activated in an inactive state, the device 1000 changes the shooting mode of the camera module 1400 to the gesture recognition mode in order to receive the user's gesture input. can be identified. Also, the device 1000 may recognize the user's gesture in the gesture recognition mode and change the photographing mode of the camera module 1400 according to the recognized gesture. The device 1000 may execute an application corresponding to the gesture and change the photographing mode of the camera module 1400 according to the photographing mode required by the executed application. Also, for example, when an application that does not require photographing through the camera module 1400 is executed, the device 1000 may deactivate the camera module 1400 .
  • the device 1000 may identify the photographing mode of the camera module 1400 as a spatial recognition mode.
  • the processor 1800 may identify the photographing mode of the camera module 1400 as a gesture mode or a space recognition mode.
  • the device 1000 may identify a first photographing angle range corresponding to the gesture mode. For example, when the photographing mode of the camera module 1400 is the gesture mode, the camera module 1400 may be set to photograph the surroundings of the device 1000 in a photographing angle range of -15 degrees to 15 degrees. For example, assuming that the angle when the camera module 1400 is facing the front is 0 degrees, when the shooting angle range of the camera module 1400 is -15 degrees to 15 degrees, the camera module 1400 is based on the front. It can be rotated up to -15 degrees to the left and up to 15 degrees to the right.
  • the device 1000 may photograph the surroundings of the device 1000 within the first photographing angle range.
  • the device 1000 controls the camera module 1400 and the photographing direction control unit 1500 to sequentially photograph the periphery of the device 1000 according to a predetermined photographing interval within the range of the first photographing angle to obtain a plurality of images. can be obtained.
  • the device 1000 may determine the shooting interval of the camera module 1400 .
  • the device 1000 may identify an object related to a gesture from the captured images.
  • the device 1000 may calculate depth values of feature regions related to various objects in the captured images and compare the calculated depth values.
  • the device 1000 may identify an object related to the user's gesture by comparing the calculated depth values. Also, the device 1000 may identify the shape and location of the identified object.
  • the device 1000 may identify a gesture based on the shape and location of the object.
  • the device 1000 may identify the user's gesture based on the change in the shape of the object and the change in the position of the object.
  • the device 1000 may identify a second photographing angle range corresponding to the spatial recognition mode.
  • the photographing mode of the camera module 1400 is the spatial recognition mode
  • the camera module 1400 may be set to photograph the surroundings of the device 1000 in a photographing angle range of -60 degrees to 60 degrees.
  • the camera module 1400 is based on the front. It can be rotated up to -60 degrees to the left and up to 60 degrees to the right.
  • the device 1000 may photograph the surroundings of the device 1000 within the second photographing angle range.
  • the device 1000 controls the camera module 1400 and the photographing direction control unit 1500 to sequentially photograph the periphery of the device 1000 according to a predetermined photographing interval within the range of the second photographing angle to obtain a plurality of images. can be obtained.
  • the device 1000 may determine the shooting interval of the camera module 1400 .
  • the device 1000 may identify surrounding objects from the captured images.
  • the device 1000 may calculate depth values of feature regions related to various objects in the captured images and compare the calculated depth values.
  • the device 1000 may recognize the surrounding space of the device 1000 by identifying objects around the device 1000 by comparing the calculated depth values.
  • the device 1000 may identify an object that the user gazes at.
  • the device 1000 may sequentially photograph the periphery of the user's viewing direction while rotating the camera module 1400 within a predetermined photographing angle range.
  • the device 1000 may generate a depth map around the direction in which the user looks, and identify the object the user gazes at.
  • the device 1000 may display additional information about the identified object.
  • the additional information may include, for example, an identification value of an object and a depth value of the object, but is not limited thereto.
  • the device 1000 may display a GUI for providing additional information about the identified object to the user.
  • FIG. 10A is a diagram illustrating an example in which a device captures a user's hand motion in a gesture mode according to an embodiment of the present disclosure
  • the user may perform a gesture of bending the finger 102 , and in the gesture mode, the device 1000 may sequentially photograph the bent finger 102 a plurality of times.
  • the device 1000 may sequentially photograph the finger 102 while rotating the camera module 1400 a plurality of times at a predetermined photographing interval within the first photographing angle range corresponding to the gesture mode.
  • the device 1000 may acquire a plurality of image sets including n images.
  • the device 1000 may acquire a first image set 104 photographed in a state in which the finger 102 is extended, and a second image set 105 photographed in a state in which the finger 102 is bent. have.
  • 10B is a diagram illustrating an example in which the device 1000 recognizes a gesture from image sets according to an embodiment of the present disclosure.
  • the device 1000 generates a first depth map 112 from the first image set 104 photographed in a state in which the finger 102 is extended, and captures the image in a state in which the finger 102 is bent.
  • a second depth map 113 may be generated from the obtained second image set 105 .
  • the device 1000 may identify the extended finger 115 from the first depth map 112 and the bent finger 116 from the second depth map 113 . Thereafter, the device 1000 may analyze the shape of the open finger 115 and the bent finger 116 to identify that the user's gesture is a 'click' operation.
  • FIGS. 11A to 11C are diagrams illustrating examples in which a device analyzes a space around a device according to an embodiment of the present disclosure
  • 11A is a diagram illustrating an example in which a device groups a plurality of images obtained by photographing a periphery of the device into a plurality of image sets according to an embodiment of the present disclosure
  • the device 1000 may sequentially photograph the periphery of the device 1000 while rotating the camera module 1400 a plurality of times at a predetermined photographing interval within the second photographing angle range corresponding to the spatial recognition mode. . Also, the device 1000 may obtain a plurality of image sets by grouping adjacent images among the plurality of images. The plurality of image sets may consist of consecutive images. Some of the successive images in an image set may overlap some of the successive images in an adjacent image set.
  • 11B is a diagram illustrating an example of a plurality of image sets grouped by a device according to an embodiment of the present disclosure.
  • the device 1000 may obtain a first image set 114 , a second image set 115 , and a third image set 116 from a plurality of images captured around the device 1000 .
  • the first set of images 114 may include images 1 , 2 , 3 and 4
  • the second set of images 115 includes images 3 , 4 , image 5 and image 6
  • third image set 116 may include image 5 , image 6 , image 7 , and image 8 .
  • the device 1000 calculates the depth value of the feature region 9 from the image set 114 . can be calculated.
  • 11C is a diagram illustrating an example in which a device generates and analyzes a depth map indicating a space around the device from a depth map generated from a plurality of image sets according to an embodiment of the present disclosure
  • the device 1000 generates a first partial depth map 117 from the first image set 114 , generates a second partial depth map 118 from the second image set 115 , and generates a third image A third partial depth map 119 may be generated from the set 116 . Also, the device 1000 may generate and analyze the full depth map 120 using the first partial depth map 117 , the second partial depth map 118 , and the third partial depth map 119 . .
  • Computer-readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media. Additionally, computer-readable media may include computer storage media and communication media. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Communication media may typically include computer readable instructions, data structures, or other data in a modulated data signal such as program modules.
  • the computer-readable storage medium may be provided in the form of a non-transitory storage medium.
  • 'non-transitory storage medium' is a tangible device and only means that it does not contain a signal (eg, electromagnetic wave). It does not distinguish the case where it is stored as
  • the 'non-transitory storage medium' may include a buffer in which data is temporarily stored.
  • the method according to various embodiments disclosed in this document may be provided as included in a computer program product.
  • Computer program products may be traded between sellers and buyers as commodities.
  • the computer program product is distributed in the form of a device-readable storage medium (eg compact disc read only memory (CD-ROM)), or through an application store (eg Play StoreTM) or on two user devices (eg, It can be distributed (eg downloaded or uploaded) directly, online between smartphones (eg: smartphones).
  • a portion of the computer program product eg, a downloadable app
  • a machine-readable storage medium such as a memory of a manufacturer's server, a server of an application store, or a relay server. It may be temporarily stored or temporarily created.
  • unit may be a hardware component such as a processor or circuit, and/or a software component executed by a hardware component such as a processor.
  • “comprising at least one of a, b, or c” means “including only a, including only b, including only c, including a and b, or including b and c, It may mean including a and c, or including both a, b and c.
  • the processor may consist of one or a plurality of processors.
  • one or more processors may be a general-purpose processor such as a CPU, an AP, a digital signal processor (DSP), or the like, a graphics-only processor such as a GPU, a VPU (Vision Processing Unit), or an artificial intelligence-only processor such as an NPU.
  • DSP digital signal processor
  • One or a plurality of processors control to process input data according to a predefined operation rule or artificial intelligence model stored in the memory.
  • the AI-only processor may be designed with a hardware structure specialized for processing a specific AI model.
  • the predefined action rule or artificial intelligence model is characterized in that it is created through learning.
  • being made through learning means that a basic artificial intelligence model is learned using a plurality of learning data by a learning algorithm, so that a predefined action rule or artificial intelligence model set to perform a desired characteristic (or purpose) is created means burden.
  • Such learning may be performed in the device itself on which the artificial intelligence according to the present disclosure is performed, or may be performed through a separate server and/or system.
  • Examples of the learning algorithm include, but are not limited to, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning.
  • the artificial intelligence model may be composed of a plurality of neural network layers.
  • Each of the plurality of neural network layers has a plurality of weight values, and a neural network operation is performed through an operation between an operation result of a previous layer and a plurality of weight values.
  • the plurality of weights of the plurality of neural network layers may be optimized by the learning result of the artificial intelligence model. For example, a plurality of weights may be updated so that a loss value or a cost value obtained from the artificial intelligence model during the learning process is reduced or minimized.
  • the artificial neural network may include a deep neural network (DNN), for example, a Convolutional Neural Network (CNN), a Deep Neural Network (DNN), a Recurrent Neural Network (RNN), a Restricted Boltzmann Machine (RBM), There may be a Deep Belief Network (DBN), a Bidirectional Recurrent Deep Neural Network (BRDNN), or a Deep Q-Networks, but is not limited to the above-described example.
  • DNN Deep Neural Network
  • DNN Deep Belief Network
  • BBDNN Bidirectional Recurrent Deep Neural Network
  • Deep Q-Networks Deep Q-Networks
  • the artificial intelligence model may use image data as input data of the artificial intelligence model to output an image or output data recognizing a feature region within the image.
  • AI models can be created through learning.
  • being made through learning means that a basic artificial intelligence model is learned using a plurality of learning data by a learning algorithm, so that a predefined action rule or artificial intelligence model set to perform a desired characteristic (or purpose) is created means burden.
  • the artificial intelligence model may be composed of a plurality of neural network layers. Each of the plurality of neural network layers has a plurality of weight values, and a neural network operation is performed through an operation between an operation result of a previous layer and a plurality of weight values.
  • Visual understanding is a technology that recognizes and processes objects as if they were human vision. Object Recognition, Object Tracking, Image Retrieval, Human Reconnition, Scene Understanding Recognition), spatial understanding (3D Reconstruction/Localization), and image enhancement (Image Enhancement).

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Psychiatry (AREA)
  • Social Psychology (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Studio Devices (AREA)

Abstract

카메라를 이용하여 공간의 깊이를 획득하는 디바이스 및 방법이 제공된다. 디바이스가 카메라 모듈을 이용하여 특징 영역의 깊이를 획득하는 방법은, 카메라 모듈을 기설정된 각도로 순차적으로 회전시키면서 상기 카메라의 주변을 복수회 촬영함으로써 복수의 이미지들을 획득하는 단계; 상기 복수의 이미지들 중 제1 이미지 및 제n 이미지 사이의 서로 인접한 이미지들을 비교함으로써, 상기 제1 이미지 내의 제1 특징 영역 및 상기 제n 이미지 내의 상기 제1 특징 영역과 동일한 제n 특징 영역을 식별하는 단계; 상기 제1 이미지 및 상기 제n 이미지에 대한 베이스 라인(base line) 값을 획득하는 단계; 상기 제1 특징 영역 및 상기 제n 특징 영역 간의 디스패리티(disparity) 값을 획득하는 단계; 및 상기 베이스 라인 값 및 상기 디스패리티 값에 기초하여, 상기 제1 특징 영역 또는 상기 제n 특징 영역의 깊이를 산출하는 단계;를 포함한다.

Description

카메라를 이용하여 공간의 깊이를 획득하는 디바이스 및 방법
본 개시는 카메라를 이용하여 공간의 깊이를 획득하는 디바이스 및 방법에 관한 것으로서, 회전하는 카메라를 이용하여 주변 공간의 깊이 값을 산출하는 디바이스 및 방법에 관한 것이다.
증강 현실(Augmented Reality)은 현실 세계의 물리적 환경 공간이나 현실 객체(real world object) 상에 가상 이미지를 투영시켜 하나의 이미지로 보여주는 기술이다.
증강 현실 장치는 사용자의 안면부나 두부에 착용된 상태에서 사용자의 눈앞에 배치되는, 시스루(see-through) 형태의 디스플레이 모듈을 통해 현실 장면과 가상 이미지를 함께 볼 수 있게 한다. 이러한 증강 현실 장치에 대한 연구가 활발히 진행됨에 따라 다양한 형태의 착용형 장치들이 출시되거나 출시가 예고 되고 있다. 예를 들어, 안경형 디스플레이 장치(wearable glasses)나 헤드마운트 디스플레이 장치(Head Mounted Display)가 현재 출시되거나 출시가 예고되고 있는 착용형 디스플레이 장치이다.
이러한 증강 현실 장치는 사용자의 제스처를 인식하거나 가상 객체를 실제 객체와 자연스럽게 연동하여 표시하기 위해 실제 객체의 깊이를 측정할 필요가 있다. 그런데, 기존의 증강 현실 장치는 주변 공간 내의 객체들을 인식하기 위하여 복수의 카메라 또는 TOF(Time of Flight) 카메라를 이용하여 주변 공간의 깊이를 측정하였으며, 이로 인하여 카메라의 무게 또는 개수가 증가하는 문제가 있었다. 또한, 이로 인하여 증강 현실 장치의 부피, 무게 및 배터리 소모량이 증가하는 등과 같은 문제가 발생하였다.
이에 따라, 증강 현실 장치가 사용자에 의해 장시간 착용되거나 자주 착용되는 경우에도, 사용자가 불편함을 느끼지 않도록, 증강 현실 장치를 경량화하고 소형화하는 것이 중요하다.
본 개시의 일 실시예는, 하나의 카메라 모듈을 기설정된 각도로 순차적으로 회전시키면서 상기 카메라의 주변을 복수회 촬영함으로써 획득되는 이미지들을 비교함으로써, 디바이스를 경량화하면서도 특정 영역의 깊이를 효과적으로 산출할 수 있는 디바이스 및 방법을 제공할 수 있다.
또한, 본 개시의 일 실시예는, 순차적으로 촬영된 복수의 이미지들 중 서로 인접한 이미지들을 비교하여 이미지들 내의 동일한 특정 영역을 효율적으로 식별하고, 식별된 특정 영역들의 위치에 기초하여 특정 영역들의 깊이 값을 산출할 수 있는 디바이스 및 방법을 제공할 수 있다.
또한, 본 개시의 일 실시예는, 촬영 모드에 따라 카메라 모듈을 통한 촬영 각도 범위를 설정할 수 있는 디바이스 및 방법을 제공할 수 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 개시의 제1 측면은, 카메라 모듈을 기설정된 각도로 순차적으로 회전시키면서 상기 카메라의 주변을 복수회 촬영함으로써 복수의 이미지들을 획득하는 단계; 상기 복수의 이미지들 중 제1 이미지 및 제n 이미지 사이의 서로 인접한 이미지들을 비교함으로써, 상기 제1 이미지 내의 제1 특징 영역 및 상기 제n 이미지 내의 상기 제1 특징 영역과 동일한 제n 특징 영역을 식별하는 단계; 상기 제1 이미지를 촬영할 때의 상기 카메라 모듈의 배치 및 상기 n번째 이미지를 촬영할 때의 상기 카메라 모듈의 배치에 기초하여, 상기 제1 이미지 및 상기 제n 이미지에 대한 베이스 라인(base line) 값을 획득하는 단계; 상기 제1 이미지 내의 상기 제1 특징 영역의 위치 및 상기 제n 이미지 내의 상기 제n 특징 영역의 위치에 기초하여, 상기 제1 특징 영역 및 상기 제n 특징 영역 간의 디스패리티(disparity) 값을 획득하는 단계; 및 상기 베이스 라인 값 및 상기 디스패리티 값에 기초하여, 상기 제1 특징 영역 또는 상기 제n 특징 영역의 깊이를 산출하는 단계;를 포함하는, 디바이스가 카메라 모듈을 이용하여 특징 영역의 깊이를 획득하는 방법을 제공할 수 있다.
또한, 본 개시의 제2 측면은, 카메라 모듈; 상기 카메라 모듈을 소정 각도로 회전시키는 촬영 방향 제어 유닛; 디스플레이; 하나 이상의 인스트럭션을 저장하는 메모리; 및 상기 하나 이상의 인스터럭션을 실행하는 프로세서;를 포함하며, 상기 프로세서는, 상기 촬영 방향 제어 유닛 및 상기 카메라 모듈을 제어함으로써, 상기 카메라 모듈을 기설정된 각도로 순차적으로 회전시키면서 상기 카메라의 주변을 복수회 촬영하여 복수의 이미지들을 획득하고, 상기 복수의 이미지들 중 제1 이미지 및 제n 이미지 사이의 서로 인접한 이미지들을 비교함으로써, 상기 제1 이미지 내의 제1 특징 영역 및 상기 제n 이미지 내의 상기 제1 특징 영역과 동일한 제n 특징 영역을 식별하고, 상기 제1 이미지를 촬영할 때의 상기 카메라 모듈의 배치 및 상기 n번째 이미지를 촬영할 때의 상기 카메라 모듈의 배치에 기초하여, 상기 제1 이미지 및 상기 제n 이미지에 대한 베이스 라인(base line) 값을 획득하고, 상기 제1 이미지 내의 상기 제1 특징 영역의 위치 및 상기 제n 이미지 내의 상기 제n 특징 영역의 위치에 기초하여, 상기 제1 특징 영역 및 상기 제n 특징 영역 간의 디스패리티(disparity) 값을 획득하고, 상기 베이스 라인 값 및 상기 디스패리티 값에 기초하여, 상기 제1 특징 영역 또는 상기 제n 특징 영역의 깊이를 산출하는, 카메라 모듈을 이용하여 특징 영역의 깊이를 획득하는 디바이스를 제공할 수 있다.
또한, 본 개시의 제3 측면은, 제1 측면의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공할 수 있다.
도 1은 본 개시의 일 실시예에 따른 디바이스가 주변 영역의 깊이를 획득하는 방법의 개요도이다.
도 2는 본 개시의 일 실시예에 따른 디바이스의 블록도이다.
도 3은 본 개시의 일 실시예에 따른 디바이스 내의 카메라 모듈이 회전하는 예시를 나타내는 도면이다.
도 4a는 본 개시의 일 실시예에 따른 디바이스 내의 카메라 모듈이 회전하면서 복수의 이미지를 획득하는 예시를 나타내는 도면이다.
도 4b는 본 개시의 일 실시예에 따른 인접한 이미지들 내의 동일한 특징 영역이 순차적으로 식별되는 예시를 나타내는 도면이다.
도 4c는 본 개시의 일 실시예에 따른 디바이스가 가장 큰 각도 차이가 나는 이미지들 내의 동일한 식별 영역들을 식별하는 예시를 나타내는 도면이다.
도 5a는 본 개시의 일 실시예에 따른 디바이스가 디바이스의 주변을 촬영하는 예시를 도시한 도면이다.
도 5b는 본 개시의 일 실시예에 따른 디바이스가 카메라 모듈을 가상으로 배치하는 예시를 나타내는 도면이다.
도 5c는 본 개시의 일 실시예에 따른 디바이스가 디스패리티 값을 산출하는 예시를 나타내는 도면이다.
도 6은 본 개시의 일 실시예에 따른 디바이스가 특징 영역의 깊이를 산출하는 예시를 나타내는 도면이다.
도 7은 본 개시의 일 실시예에 따른 디바이스가 이미지 내의 특징 영역의 깊이를 산출하는 방법의 흐름도이다.
도 8은 본 개시의 일 실시예에 따른 디바이스가 디스패리티 값을 산출하는 예시를 나타내는 도면이다.
도 9는 본 개시의 일 실시예에 따른 디바이스가 촬영 모드에 따라 디바이스의 주변을 인식하는 방법의 흐름도이다.
도 10a은 본 개시의 일 실시예에 따른 디바이스가 제스처 모드에서 사용자의 손 동작을 촬영하는 예시를 나타내는 도면이다.
도 10b는 본 개시의 일 실시예에 따른 디바이스(1000)가 이미지 세트들로부터 제스처를 인식하는 예시를 나타내는 도면이다.
도 11a는 본 개시의 일 실시예에 따른 디바이스가 디바이스 주변을 촬영하여 획득된 복수의 이미지들을 복수의 이미지 세트로 그룹핑하는 예시를 나타내는 도면이다.
도 11b는 본 개시의 일 실시예에 따른 디바이스에 의해 그룹핑된 복수의 이미지 세트들의 예시를 나타내는 도면이다.
도 11c는 본 개시의 일 실시예에 따른 디바이스가 복수의 이미지 세트로부터 생성된 깊이 맵으로부터 디바이스 주변 공간을 나타내는 깊이 맵을 생성하고 분석하는 예시를 나타내는 도면이다.
아래에서는 첨부한 도면을 참조하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 개시의 실시예를 상세히 설명한다. 그러나 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 개시를 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본 개시에서, '증강 현실(AR: Augmented Reality)'은 현실 세계의 물리적 환경 공간 내에 가상 이미지를 함께 보여주거나 현실 객체와 가상 이미지를 함께 보여주는 것을 의미한다.
아울러, '증강 현실 장치(Augmented Reality Device)'라 함은 '증강 현실(Augmented Reality)'을 표현할 수 있는 장치로서, 일반적으로 사용자가 안면부(顔面部)에 착용하는 안경 형상의 증강 현실 안경 장치(Augmented Reality Glasses) 뿐만 아니라, 두부(頭部)에 착용하는 헤드 마운트 디스플레이 장치 (HMD : Head Mounted Display Apparatus)나, 증강 현실 헬멧(Augmented Reality Helmet) 등을 포괄한다.
한편, '현실 장면(real scene)'이란 사용자가 증강 현실 장치를 통해서 보는 현실 세계의 장면으로서, 현실 객체(real world object)를 포함할 수 있다. 또한, '가상 이미지(virtual image)'는 광학 엔진을 통해 생성되는 이미지로 정적 이미지와 동적 이미지를 모두 포함할 수 있다. 이러한 가상 이미지는 현실 장면과 함께 관측되며, 현실 장면 속의 현실 객체에 대한 정보 또는 증강 현실 장치의 동작에 대한 정보나 제어 메뉴 등을 나타내는 이미지일 수 있다.
따라서, 일반적인 증강 현실 장치는 광원에서 생성된 광으로 구성되는 가상 이미지를 생성하기 위한 광학 엔진과 광학 엔진에서 생성된 가상 이미지를 사용자의 눈까지 안내하고 현실 세계의 장면도 함께 볼 수 있도록 투명한 재질로 형성된 도광판(Wave guide)을 구비한다. 전술한 바와 같이, 증강 현실 장치는 현실 세계의 장면도 함께 관측할 수 있어야 하므로 광학 엔진에서 생성된 광을 도광판을 통해 사용자의 눈까지 안내하기 위해서는 기본적으로 직진성을 가지는 광의 경로를 변경하기 위한 광학 소자(Optical element)가 필요하다. 이 때, 미러 등에 의한 반사를 이용하여 광 경로를 변경할 수도 있고, DOE(Diffractive optical element), HOE(Holographic optical element) 등과 같은 회절 소자에 의한 회절을 통해 광 경로를 변경할 수도 있으나 이에 한정되는 것은 아니다.
또한, 본 개시에서, 제스처 인식 모드는 소정 임계치보다 작은 촬영 각도 범위에서 근거리에 위치한 사용자의 신체에 의한 제스처를 촬영하기 위한 촬영 모드이며, 공간 인식 모드는 소정 임계치보다 큰 촬영 각도 범위에서 디바이스(1000) 주변의 공간을 촬영하기 위한 촬영 모드일 수 있다.
또한, 본 개시에서, 두 이미지에 대한 디스패리티 값은, 촬영된 두 이미지 중에서 한 이미지 내의 어떤 특징 영역이 다른 이미지에서 얼마나 쉬프트되었는 지를 나타내는 값일 수 있다.
또한, 본 개시에서, 베이스 라인 값은 한 이미지를 촬영할 때의 카메라 모듈의 촬영 중심 및 다른 이미지를 촬영할 때의 카메라 모듈의 촬영 중심 간의 거리를 나타내는 값일 수 있다. 카메라 모듈의 촬영 중심은, 예를 들어, 카메라 모듈의 렌즈의 중심점일 수 있다.
이하 첨부된 도면을 참고하여 본 개시를 상세히 설명하기로 한다.
도 1은 본 개시의 일 실시예에 따른 디바이스가 주변 영역의 깊이를 획득하는 방법의 개요도이다.
도 1을 참조하면, 디바이스(1000)는 카메라 모듈(1400)을 기설정된 각도로 회전시키면서, 회전되는 카메라 모듈(1400)을 통하여 디바이스(1000)의 주변을 순차적으로 촬영하고, 디바이스(1000)의 주변이 촬영된 복수의 이미지들을 획득할 수 있다. 디바이스(1000)는 제1 이미지 내지 제n 이미지를 포함하는 복수의 이미지들을 획득하고, 복수의 이미지들 중 인접한 이미지들을 비교함으로써, 복수의 이미지들 내의 동일한 특징 영역들을 식별할 수 있다. 또한, 이를 통하여, 디바이스(1000)는 제1 이미지 및 제n 이미지 내의 동일한 특징 영역들 간의 디스패리티 값을 획득하고, 특징 영역에 대한 깊이 값을 산출할 수 있다.
디바이스(1000)는 증강 현실(Augmented Reality)을 표현할 수 있는 증강 현실 장치일 수 있다. 디바이스(1000)는, 예를 들어, 사용자가 안면부(顔面部)에 착용하는 안경 형상의 증강 현실 안경 장치(Augmented Reality Glasses), 및 두부(頭部)에 착용하는 헤드 마운트 디스플레이 장치 (HMD : Head Mounted Display Apparatus)나, 증강 현실 헬멧(Augmented Reality Helmet) 등을 포함할 수 있다.
또한, 디바이스(1000)는 스마트폰, 태블릿 PC, PC, 스마트 TV, 휴대폰, PDA(personal digital assistant), 랩톱, 미디어 플레이어, 마이크로 서버, GPS(global positioning system) 장치, 전자책 단말기, 디지털방송용 단말기, 네비게이션, 키오스크, MP3 플레이어, 디지털 카메라, 가전기기 및 기타 모바일 또는 비모바일 컴퓨팅 장치일 수도 있다. 그러나, 이에 제한되지 않으며, 디바이스(1000)는 카메라 모듈을 제어하여 획득되는 이미지를 처리할 수 있는 모든 종류의 기기를 포함할 수 있다.
도 2는 본 개시의 일 실시예에 따른 디바이스의 블록도이다.
도 2를 참조하면, 본 개시의 일 실시예에 따른 디바이스(1000)는 사용자 입력부(1100), 마이크(1200), 디스플레이부(1300), 카메라 모듈(1400), 촬영 방향 제어 유닛(1500), 통신 인터페이스(1600), 저장부(1700) 및 프로세서(1800)를 포함할 수 있다.
사용자 입력부(1100)는, 사용자가 디바이스(1000)를 제어하기 위한 데이터를 입력하는 수단을 의미한다. 예를 들어, 사용자 입력부(1100)는 키 패드(key pad), 돔 스위치 (dome switch), 터치 패드(접촉식 정전 용량 방식, 압력식 저항막 방식, 적외선 감지 방식, 표면 초음파 전도 방식, 적분식 장력 측정 방식, 피에조 효과 방식 등), 조그 휠 또는 조그 스위치 중 적어도 하나를 포함할 수 있으나 이에 한정되는 것은 아니다.
사용자 입력부(1100)는 후술할 카메라 모듈(1400)을 이용하여 디바이스(1000)의 주변을 촬영하고 촬영된 이미지를 기반으로 디바이스(1000) 또는 서버(미도시)로부터의 서비스를 제공받기 위한 사용자 입력을 수신할 수 있다.
마이크(1200)는, 외부의 음향 신호를 입력 받아 전기적인 음성 데이터로 처리한다. 예를 들어, 마이크(1200)은 외부 디바이스 또는 화자로부터의 음향 신호를 수신할 수 있다. 마이크(1200)는 외부의 음향 신호를 입력 받는 과정에서 발생 되는 잡음(noise)를 제거하기 위한 다양한 잡음 제거 알고리즘을 이용할 수 있다. 마이크(1200)는 디바이스(1000)를 제어하기 위한 사용자의 음성 입력을 수신할 수 있다.
디스플레이부(1300)는 디바이스(1000)에서 처리되는 정보를 출력한다. 예를 들어, 디스플레이부(1300)는, 디바이스(1000)의 주변을 촬영하기 위한 사용자 인터페이스, 디바이스(1000) 주변의 촬영된 이미지를 기반으로 제공되는 서비스에 관련된 정보를 디스플레이할 수 있다. 디바이스(1000)는, 일 실시 예에 의하면, 디스플레이(1300)는 AR(Augmented Reality) 영상을 제공할 수 있다. 일 실시 예에 따른 디스플레이(1300)는 웨이브 가이드(미도시)와 디스플레이 모듈(미도시)을 포함할 수 있다. 웨이브 가이드(미도시)는 사용자가 디바이스(1000)를 착용할 때, 배면의 일부 영역이 보이는 투명한 소재로 구성될 수 있다. 웨이브 가이드(미도시)는 광이 내부에서 반사되면서 전파될 수 있는 투명 재질의 단층 혹은 다층 구조의 평판으로 구성될 수 있다. 웨이브 가이드(미도시)는 디스플레이 모듈의 출사면에 마주하여 투사된 가상 이미지의 광을 입력 받을 수 있다. 여기서, 투명 재질이라 함은, 광이 통과될 수 있는 재질이라는 의미이며, 투명도가 100%가 아닐 수 있으며, 소정의 색상을 지닐 수도 있다. 일 실시 예에서, 웨이브 가이드(미도시)는 투명 재질로 형성됨에 따라, 사용자는 디스플레이(1300)를 통해 가상 이미지의 가상 객체를 볼 수 있을 뿐만 아니라, 외부 실제 장면(scene)을 볼 수도 있으므로, 웨이브 가이드(미도시)는 시스루 디스플레이(see through display)로 지칭될 수 있다. 디스플레이(1300)는 웨이브 가이드를 통해 가상 이미지의 가상 객체를 출력함으로써, 증강 현실(argumented reality) 영상을 제공할 수 있다.
카메라 모듈(1400)은 디바이스(1000)의 주변을 촬영할 수 있다. 카메라 모듈은 촬영 기능을 요구하는 애플리케이션이 실행되는 경우에 이미지 센서를 통해 정지 영상 또는 동영상 등의 화상 프레임을 얻을 수 있다. 이미지 센서를 통해 캡쳐된 이미지는 후술할 프로세서(1800) 또는 별도의 이미지 처리부(미도시)를 통해 처리될 수 있다.
촬영 방향 제어 유닛(1500)은 카메라 모듈(1400)의 촬영 방향을 변경할 수 있다. 촬영 방향 제어 유닛(1500)은 카메라 모듈(1400)을 패닝시킴으로써 카메라 모듈(1400)의 촬영 방향을 변경할 수 있는 하드웨어 구조를 포함할 수 있다. 촬영 방향 제어 유닛(1500)을 통해 카메라 모듈(1400)은 소정의 축을 기준으로 시계 또는 반시계 방향으로 회전될 수 있으며, 카메라 모듈(1400)은 소정 각도로 회전하면서 디바이스(1000) 주변을 순차적으로 촬영할 수 있다. 촬영 방향 제어 유닛(1500)은, 예를 들어, 카메라 모듈(1400)의 근처에 위치한 전자석을 포함하며, 전자석에 전기를 인가함으로써 발생되는 자력을 이용하여 카메라 모듈(1400)의 촬영 방향을 제어할 수 있다. 또는, 촬영 방향 제어 유닛(1500)은, 예를 들어, 카메라 모듈(1400)에 물리적으로 연결되는 모터를 포함하며, 모터를 이용하여 카메라 모듈(1400)의 촬영 방향을 제어할 수 있다. 하지만, 촬영 방향 제어 유닛(1500)이 카메라 모듈(1400)의 촬영 방향을 제어하는 방법은 이에 제한되지 않으며, 다양한 방법을 통해 카메라 모듈(1400)을 회전시킴으로써 카메라 모듈(1400)의 촬영 방향을 제어할 수 있다.
통신 인터페이스(1600)는 디바이스(1000) 주변을 촬영하여 획득되는 이미지를 기반으로 서비스를 받기 위한 데이터를 외부 디바이스(미도시) 및 서버(미도시)와 송수신할 수 있다.
저장부(1700)는 후술할 프로세서(1800)에 의해 실행될 프로그램을 저장할 수 있고, 디바이스(1000)로 입력되거나 디바이스(1000)로부터 출력되는 데이터를 저장할 수 있다.
저장부(1700)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM, Random Access Memory) SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다.
저장부(1700)에 저장된 프로그램들은 그 기능에 따라 복수 개의 모듈들로 분류할 수 있는데, 예를 들어, 촬영 모드 식별 모듈(1710), 촬영 각도 결정 모듈(1720), 촬영 모듈(1730), 이미지 비교 모듈(1740), 이미지 배열 모듈(1750), 깊이 산출 모듈(1760), 제스처 인식 모듈(1770) 및 공간 인식 모듈(1780)을 포함할 수 있다.
프로세서(1800)는 디바이스(1000)의 전반적인 동작을 제어한다. 예를 들어, 프로세서(1800)는, 저장부(1700)에 저장된 프로그램들을 실행함으로써, 사용자 입력부(1100), 마이크(1200), 디스플레이부(1300), 카메라 모듈(1400), 촬영 방향 제어 유닛(1500), 통신 인터페이스(1600) 및 저장부(1700) 등을 전반적으로 제어할 수 있다.
프로세서(1800)는 저장부(1700)에 저장된 촬영 모드 식별 모듈(1710)을 실행함으로써, 카메라 모듈(1400)의 촬영 모드를 식별할 수 있다. 카메라 모듈(1400)의 촬영 모드는, 예를 들어, 사용자의 제스처를 인식하기 위한 제스처 인식 모드 및 디바이스(1000) 주변의 공간을 인식하기 위한 공간 인식 모드를 포함할 수 있다. 제스처 인식 모드는 소정 임계치보다 작은 촬영 각도 범위에서 근거리에 위치한 사용자의 신체에 의한 제스처를 촬영하기 위한 촬영 모드이며, 공간 인식 모드는 소정 임계치보다 큰 촬영 각도 범위에서 디바이스(1000) 주변의 공간을 촬영하기 위한 촬영 모드일 수 있다.
프로세서(1800)는 기설정된 기준에 따라 카메라 모듈(1400)의 촬영 모드를 식별할 수 있다. 예를 들어, 디바이스(1000)의 전원이 켜지거나 디바이스(1000)가 비활성화 상태에서 활성화되면, 프로세서(1800)는 사용자의 제스처 입력을 수신하기 위하여 카메라 모듈(1400)의 촬영 모드를 제스처 인식 모드로 식별할 수 있다. 또한, 프로세서(1800)는 제스처 인식 모드에서 사용자의 제스처를 인식하고 인식된 제스처에 따라 카메라 모듈(1400)의 촬영 모드를 변경할 수 있다. 프로세서(1800)는 제스처에 대응되는 애플리케이션을 실행하고, 실행된 애플리케이션이 요구하는 촬영 모드에 따라 카메라 모듈(1400)의 촬영 모드를 변경할 수 있다. 또한, 예를 들어, 프로세서(1800)는 카메라 모듈(1400)을 통한 촬영을 필요로 하지 않는 애플리케이션이 실행되면, 카메라 모듈(1400)을 비활성화할 수 있다.
또는, 예를 들어, 디바이스(1000)의 전원이 켜지거나 디바이스(1000)가 비활성화 상태에서 활성화되면 디바이스(1000)는 카메라 모듈(1400)의 촬영 모드를 공간 인식 모드로 식별할 수 있다. 또한, 프로세서(1800)는 공간 인식 모드에서 디바이스(1000)의 주변을 촬영함으로써 디바이스(1000)의 주변 공간을 인식할 수 있다.
또한, 예를 들어, 프로세서(1800)는 디바이스(1000)에 대한 기설정된 사용자 입력이 수신되면, 카메라 모듈(1400)의 촬영 모드를 제스처 모드로 또는 공간 인식 모드로 식별할 수 있다.
프로세서(1800)는 저장부(1700)에 저장된 촬영 각도 결정 모듈(1720)을 실행함으로써, 카메라 모듈(1400)의 촬영 각도의 범위를 결정할 수 있다. 프로세서(1800)는 식별된 촬영 모드에 따라 촬영 각도의 범위를 결정할 수 있다. 이 경우, 촬영 모드에 따른 촬영 각도의 범위가 미리 설정될 수 있다.
예를 들어, 카메라 모듈(1400)의 촬영 모드가 제스처 모드인 경우에 -15도 ~ 15도의 촬영 각도 범위에서 카메라 모듈(1400)이 디바이스(1000)의 주변을 촬영하도록 설정될 수 있다. 예를 들어, 카메라 모듈(1400)이 정면을 향하고 있을 때의 각도를 0도라고 하면, 카메라 모듈(1400)의 촬영 각도 범위가 -15도 ~ 15도인 경우에, 카메라 모듈(1400)은 정면을 기준으로 하여 좌측으로 -15도까지 회전하고 우측으로 15도까지 회전할 수 있다.
예를 들어, 카메라 모듈(1400)의 촬영 모드가 공간 인식 모드인 경우에 -60도 ~ 60도의 촬영 각도 범위에서 카메라 모듈(1400)이 디바이스(1000)의 주변을 촬영하도록 설정될 수 있다. 예를 들어, 카메라 모듈(1400)이 정면을 향하고 있을 때의 각도를 0도라고 하면, 카메라 모듈(1400)의 촬영 각도 범위가 -60도 ~ 60도인 경우에, 카메라 모듈(1400)은 정면을 기준으로 하여 좌측으로 -60도까지 회전하고 우측으로 60도까지 회전할 수 있다.
프로세서(1800)는 저장부(1700)에 저장된 촬영 각도 결정 모듈(1720)을 실행함으로써, 카메라 모듈(1400)의 촬영 간격을 결정할 수 있다. 프로세서(1800)는 촬영 각도 범위 내에서 얼마만큼의 각도 간격으로 디바이스(1000)의 주변을 촬영할 지를 결정할 수 있다. 예를 들어, 프로세서(1800)는 촬영 각도 범위 내에서 5도 간격으로 디바이스(1000)의 주변을 촬영하도록 촬영 간격을 결정할 수 있다. 또한, 카메라 모듈(1400)의 촬영 간격은, 예를 들어, 촬영 모드 및 촬영 환경에 따라 상이하게 설정될 수 있다. 촬영 환경은, 디바이스(1000) 주변의 밝기, 피사체의 개수 및 피사체의 움직임 등을 포함할 수 있으나, 이에 제한되지 않는다.
프로세서(1800)는 저장부(1700)에 저장된 촬영 모듈(1730)을 실행함으로써, 카메라 모듈(1400)을 통해 디바이스(1000)의 주변을 촬영할 수 있다. 프로세서(1800)는 카메라 모듈(1400) 및 촬영 방향 제어 유닛(1500)을 제어함으로써, 식별된 촬영 각도의 범위 내에서 결정된 촬영 간격에 따라 디바이스(1000)의 주변을 순차적으로 촬영함으로써 복수의 이미지를 획득할 수 있다. 카메라 모듈(1400)은 촬영 각도 범위 내에서 회전하면서 촬영 간격에 따라 디바이스(1000) 주변을 복수회 촬영할 수 있다. 카메라 모듈(1400)에 의해 촬영된 이미지들 중 인접한 이미지들의 일부는 서로 중첩될 수 있다.
또는, 프로세서(1800)는 카메라 모듈(1400) 및 촬영 방향 제어 유닛(1500)을 제어함으로써, 촬영 각도 범위 내에서 카메라 모듈(1400)을 회전시키면서 동영상을 촬영할 수 있다. 이 경우, 프로세서(1800)는 촬영된 동영상 내의 프레임들 중에서 복수의 프레임을 촬영 간격에 따라 추출할 수 있다. 추출된 프레임들의 이미지들 중 인접한 이미지들의 일부는 서로 중첩될 수 있다.
프로세서(1800)는 저장부(1700)에 저장된 촬영 모듈(1730)을 실행함으로써, 카메라 모듈(1400)의 초점 거리를 변경할 수 있다. 카메라 모듈(1400)이 소정 임계치보다 가까운 거리에 위치한 피사체들을 촬영하는 경우에, 프로세서(1800)는 카메라 모듈(1400)의 초점 거리를 변경하지 않을 수 있다. 카메라 모듈(1400)이 활성화되는 경우에 카메라 모듈(1400)의 초점 거리는 가까운 거리에 위치한 피사체를 측정할 수 있도록 설정되어 있을 수 있으며, 이로 인하여, 가까운 거리의 피사체를 촬영하기 위하여 프로세서(1800)는 카메라 모듈(1400)의 초점 거리를 변경하지 않을 수 있다. 또한, 소정 거리 값 부근의 가까운 거리의 피사체들을 촬영하기 위한 초점 거리는 실질적으로 거의 동일하기 때문에, 프로세서(1800)는 카메라 모듈(1400)의 초점 거리를 변경하지 않을 수 있다. 또한, 카메라 모듈(1400)이 소정 임계치보다 먼 거리에 위치한 피사체들을 촬영하는 경우에, 프로세서(1800)는 초점 거리를 피사체에 따라 변경하면서 카메라 모듈(1400)이 변경된 초점 거리에 따라 디바이스(1000)의 주변을 촬영을 하도록 카메라 모듈(1400)을 제어할 수 있다.
프로세서(1800)는 저장부(1700)에 저장된 이미지 비교 모듈(1740)을 실행함으로써, 카메라 모듈(1400)을 통해 획득된 복수의 이미지들 중 인접한 이미지들을 비교할 수 있다. 프로세서(1800)는 인접한 이미지들을 서로 비교함으로써, 인접한 이미지들 내의 동일한 특징 영역들을 식별할 수 있다.
예를 들어, 카메라 모듈(1400)로부터 5개의 이미지가 획득된 경우에 프로세서(1800)는 제1 이미지와 제2 이미지를 비교하고, 제2 이미지와 제3 이미지를 비교하고, 제3 이미지와 제4 이미지를 비교하고, 제4 이미지와 제5 이미지를 비교할 수 있다. 또한, 프로세서(1800)는 제1 이미지 내의 제1 특징 영역이 제2 이미지 내의 제2 특징 영역과 동일함을 식별하고, 제2 이미지 내의 제2 특징 영역이 제3 이미지 내의 제3 특징 영역과 동일함을 식별하고, 제3 이미지 내의 제3 특징 영역이 제4 이미지 내의 제4 특징 영역과 동일함을 식별하고, 제4 이미지 내의 제4 특징 영역이 제5 이미지 내의 제5 특징 영역과 동일함을 식별할 수 있다. 이에 따라, 프로세서(1800)는 제1 이미지 내의 제1 특징 영역과 제5 이미지 내의 제5 특징 영역이 동일함을 보다 효과적으로 식별할 수 있다. 또한, 예를 들어, 이미지 내의 특징 영역은 소정의 특징점(feature point)일 수 있다.
프로세서(1800)는 저장부(1700)에 저장된 이미지 배열 모듈(1750)을 실행함으로써, 복수의 이미지들 중 선택된 두 이미지를 배열할 수 있다. 프로세서(1800)는, 특징 영역의 깊이를 산출하기 위하여, 복수의 이미지들 중에서 소정 임계치 이상으로 촬영 각도가 상이한 두 이미지를 선택할 수 있다. 예를 들어, 프로세서(1800)는 복수의 이미지들 중에서 촬영 각도의 차이가 가장 크지만 동일한 특징 영역을 포함하고 있는 두 이미지를 선택함으로써, 특징 영역의 깊이가 보다 정확하게 산출되도록 할 수 있다. 예를 들어, 카메라 모듈(1400)로부터 5개의 이미지가 획득된 경우에 프로세서(1800)는 획득된 5개의 이미지들 중에서, 소정 수치 이상으로 상이한 제1 이미지 및 제5 이미지를 선택할 수 있다.
또한, 프로세서(1800)는 선택된 두 이미지에 대한 디스패리티 값을 획득하기 위하여 두 이미지를 가상으로 배열할 수 있다. 두 이미지에 대한 디스패리티 값은, 촬영된 두 이미지 중에서 한 이미지 내의 어떤 특징 영역이 다른 이미지에서 얼마나 쉬프트되었는 지를 나타내는 값일 수 있다.
프로세서(1800)는 카메라 모듈(1400)의 촬영 방향이 서로 평행해지도록 카메라 모듈(1400)을 가상으로 배치할 수 있다. 예를 들어, 제1 이미지를 촬영할 때의 카메라 모듈(1400)과 제5 이미지를 촬영할 때의 카메라 모듈(1400) 간의 베이스 라인 값을 유지하면서, 제1 이미지를 촬영할 때의 카메라 모듈(1400)의 촬영 방향 및 제5 이미지를 촬영할 때의 카메라 모듈(1400)의 촬영 방향이 평행해지도록, 제1 이미지를 촬영할 때의 카메라 모듈(1400)과 제5 이미지를 촬영할 때의 카메라 모듈(1400)을 가상으로 배치할 수 있다. 베이스 라인 값은 한 이미지를 촬영할 때의 카메라 모듈(1400)의 촬영 중심 및 다른 이미지를 촬영할 때의 카메라 모듈(1400)의 촬영 중심 간의 거리를 나타내는 값일 수 있다. 카메라 모듈(1400)의 촬영 중심은, 예를 들어, 카메라 모듈(1400)의 렌즈의 중심점일 수 있다. 카메라 모듈(1400)을 가상으로 배열하는 방법에 대하여는 후술하기로 한다.
프로세서(1800)는 가상으로 배치된 카메라 모듈(1400)의 위치를 기준으로 하여 이미지들을 배열할 수 있다. 예를 들어, 제1 이미지를 촬영할 때의 카메라 모듈(1400)의 배치된 위치 및 제5 이미지를 촬영할 때의 카메라 모듈의 배치된 위치를 기준으로, 제1 이미지 및 제5 이미지가 가상으로 배열될 수 있다. 이 경우, 프로세서(1800)는 가상으로 배열된 제1 이미지 내의 제1 특징 영역의 위치 및 가상으로 배열된 제5 이미지 내의 제5 특징 영역의 위치에 기초하여, 제1 이미지 내의 제1 특징 영역 및 제5 이미지 내의 제5 특징 영역 간의 디스패리티 값을 획득할 수 있다. 예를 들어, 디스패리티 값은 가상으로 배열된 이미지들 내의 동일한 특징 영역들 간의 거리에 기초하여 산출될 수 있다.
프로세서(1800)는 저장부(1700)에 저장된 깊이 산출 모듈(1760)을 실행함으로써, 특징 영역의 깊이를 산출할 수 있다. 프로세서(1800)는 두 이미지 내의 동일한 특징 영역들에 대한 디스패리티 값, 카메라 모듈(1400)의 베이스 라인 값 및 카메라 모듈(1400)의 초점 거리를 이용하여, 두 이미지 내의 동일한 특징 영역에 대한 깊이를 산출할 수 있다. 프로세서(1800)는 베이스 라인 값과 초점 거리 간의 비율이 디스패리티 값과 깊이 간의 비율과 동일함을 이용하여, 특징 영역의 깊이를 산출할 수 있다.
프로세서(1800)는 이미지 내의 특징 영역들의 깊이를 산출함으로써, 디바이스(1000) 주변 공간에 대한 깊이 맵(depth map)을 생성할 수 있다. 깊이 맵은 이미지 내에 존재하는 객체들 또는 공간들의 3차원 거리 정보를 나타내는 이미지로서, 이미지 내의 각 화소값은 해당 화소의 깊이 정보를 나타낼 수 있다. 깊이 정보는, 시점(view point)로부터 특정 화소에 대응되는 공간까지의 거리를 나타내는 값일 수 있다. 깊이 맵은 시점으로부터 먼 부분과 가까운 부분을 구별되게 나타낼 수 있다. 예를 들어, 깊이 맵에서, 사용자의 시점에서 먼 부분으로부터 가까운 부분까지가 흰색에서 검정색으로 점점 어두워지도록 그라데이션 방식으로 표시될 수 있다. 이에 따라, 디바이스(1000)의 주변 공간 내의 객체들의 형상 및 깊이가 깊이 맵에서 구별되게 표현될 수 있다.
프로세서(1800)는 소정 단위의 이미지 세트들로부터 디바이스(1000) 주변 공간의 일부들에 대한 복수의 깊이 맵을 생성하고, 생성된 복수의 깊이 맵을 연결함으로써 디바이스(1000) 주변 공간에 대한 깊이 맵을 완성할 수 있다. 예를 들어, 카메라 모듈(1400)이 회전하면서 디바이스(1000)의 주변을 촬영하여 20개의 이미지들을 획득한 경우에, 프로세서(1800)는 첫번째 내지 10번째 이미지를 포함하는 제1 이미지 세트로부터 제1 부분 깊이 맵을 생성하고, 6번째 내지 15번째 이미지를 포함하는 제2 이미지 세트로부터 제2 부분 깊이 맵을 생성하고, 11번째 내지 20번째 이미지를 포함하는 제3 이미지 세트로부터 제3 부분 깊이 맵을 생성할 수 있다. 또한, 프로세서(1800)는 제1 부분 깊이 맵, 제2 부분 깊이 맵 및 제3 부분 깊이 맵을 이용하여, 전체 깊이 맵을 생성할 수 있다.
한편, 프로세서(1800)는 인공지능 모델을 이용하여 특징 영역의 깊이를 식별할 수 있다. 이 경우, 프로세서(1800)는 이미지들로부터 특징 영역의 깊이를 산출하도록 훈련된 인공지능 모델에 카메라 모듈(1400)로부터 촬영된 이미지들을 입력함으로써 특징 영역의 깊이에 관한 정보를 획득할 수 있다. 인공지능 모델로부터 획득되는 특징 영역의 깊이 정보는 깊이 산출 모듈(1760)에 의해 산출된 깊이 정보를 검증하는데 이용될 수 있으나, 이에 제한되지 않는다. 또한, 카메라 모듈(1400)을 통해 촬영된 이미지들 및 깊이 산출 모듈(1760)에 의해 산출된 깊이 정보는, 깊이 산출을 위한 인공지능 모델을 업데이트하는데 이용될 수 있다.
또한, 프로세서(1800)는 인공지능 모델을 이용하여 깊이 맵을 획득할 수 있다. 이 경우, 프로세서(1800)는 이미지들로부터 깊이 맵을 생성하도록 훈련된 인공지능 모델에 카메라 모듈(1400)로부터 촬영된 이미지들을 입력함으로써, 디바이스(1000) 주변 공간에 대한 깊이 맵을 획득할 수 있다. 인공지능 모델로부터 획득되는 깊이 맵은 깊이 산출 모듈(1760)에 의해 생성된 깊이 맵을 검증하는데 이용될 수 있으나, 이에 제한되지 않는다. 또한, 카메라 모듈(1400)을 통해 촬영된 이미지들 및 깊이 산출 모듈(1760)에 의해 생성된 깊이 맵은, 깊이 맵 생성을 위한 인공지능 모델을 업데이트하는데 이용될 수 있다.
프로세서(1800)는 저장부(1700)에 저장된 제스처 인식 모듈(1770)을 실행함으로써, 사용자의 제스처를 인식할 수 있다. 프로세서(1800)는 촬영 각도 범위 내에서 복수회 반복하여 회전하면서 이미지들을 획득할 수 있다. 예를 들어, 프로세서(1800)는 촬영 각도 범위 내에서 첫번째로 회전하면서 n 개의 제1 제스처 이미지 세트를 획득하고, 촬영 각도 범위 내에서 두번째로 회전하면서 n 개의 제2 제스처 이미지 세트를 획득하고, 촬영 각도 범위 내에서 세번째로 회전하면서 n 개의 제3 제스처 이미지 세트를 획득할 수 있다. 또한, 예를 들어, 프로세서(1800)는 제1 제스처 이미지 세트 내의 이미지들로부터 사용자의 손의 깊이를 산출하여 사용자의 손의 제1 모양 및 제1 위치를 식별할 수 있다. 예를 들어, 프로세서(1800)는 제2 제스처 이미지 세트 내의 이미지들로부터 사용자의 손의 깊이를 산출하여 사용자의 손의 제2 모양 및 제2 위치를 식별할 수 있다. 예를 들어, 프로세서(1800)는 제3 제스처 이미지 세트 내의 이미지들로부터 사용자의 손의 깊이를 산출하여 사용자의 손의 제3 모양 및 제3 위치를 식별할 수 있다. 또한, 프로세서(1800)는 사용자의 손의 제1 모양, 제2 모양 및 제3 모양에 기초하여 사용자의 손의 모양 변화를 식별하고, 식별된 손의 모양 변화에 따른 제스처를 인식할 수 있다. 또한, 프로세서(1800)는 사용자의 손의 제1 위치, 제2 위치 및 제3 위치에 기초하여 손의 위치 변화를 식별하고, 식별된 손의 위치 변화에 따른 제스처를 인식할 수 있다. 프로세서(1800)는 사용자의 손의 모양 변화 및 위치 변화를 함께 고려하여 제스처를 인식할 수도 있다. 상기에서는, 사용자의 손에 따른 제스처에 대하여 설명되었지만, 제스처를 인식하기 위하여 사용자의 손이 아닌 다른 신체 부위가 인식될 수도 있다.
프로세서(1800)는 인공지능 모델을 이용하여 제스처를 식별할 수 있다. 이 경우, 프로세서(1800)는 이미지들로부터 사용자의 제스처를 식별하도록 훈련된 인공지능 모델에 카메라 모듈(1400)로부터 촬영된 이미지들을 입력함으로써, 사용자의 제스처를 식별할 수 있다. 인공지능 모델로부터 식별되는 제스처는 제스처 인식 모델에 의해 인식된 제스처를 검증하는데 이용될 수 있으나, 이에 제한되지 않는다. 또한, 카메라 모듈(1400)을 통해 촬영된 이미지들 및 제스처 인식 모듈(1770)에 의해 인식된 제스처는, 제스처 인식을 위한 인공지능 모델을 업데이트하는데 이용될 수 있다.
프로세서(1800)는 저장부(1700)에 저장된 공간 인식 모듈(1780)을 실행함으로써, 디바이스(1000) 주변의 공간을 인식할 수 있다. 프로세서(1800)는 디바이스(1000)의 주변에 대하여 생성된 깊이 맵으로부터 디바이스(1000) 주변의 특징 영역들이 무엇인지를 식별할 수 있다. 예를 들어, 프로세서(1800)는 디바이스(1000) 주변의 특징 영역에 대응되는 객체가 무엇인지에 대한 식별 정보, 디바이스(1000)에 대한 특징 영역의 상대적인 위치를 나타내는 좌표 정보, 디바이스(1000)와 특징 영역 간의 거리를 나타내는 깊이 정보 등을 생성할 수 있다.
또한, 프로세서(1800)는 디바이스(1000) 주변 공간 중에서 인식되지 않은 공간을 식별하고, 인식되지 않은 공간이 촬영되는 경우에 인식되지 않은 공간에 대한 깊이 맵을 생성하여 전체 깊이 맵에 추가할 수 있다. 이 경우, 프로세서(1800)는 카메라 모듈(1400)이 디바이스(1000) 주변의 어떤 영역을 촬영하였는 지에 관한 이력을 저장할 수 있으며, 저장된 이력에 기초하여 카메라 모듈(1400)이 촬영되지 않은 공간을 향하는 경우에 공간 인식 모드를 활성화할 수 있다.
프로세서(1800)는 인공지능 모델을 이용하여 공간을 인식할 수 있다. 이 경우, 프로세서(1800)는 이미지들로부터 공간 내의 특징 영역을 식별하도록 훈련된 인공지능 모델에 카메라 모듈(1400)로부터 촬영된 이미지들 또는 깊이 맵을 입력함으로써, 디바이스(1000)의 주변 공간을 인식할 수 있다. 인공지능 모델로부터 인식되는 공간 정보는 공간 인식 모델에 의해 인식된 공간을 검증하는데 이용될 수 있으나, 이에 제한되지 않는다. 또한, 카메라 모듈(1400)을 통해 촬영된 이미지들 또는 깊이 맵, 및 공간 인식 모듈(1780)에 의해 인식된 공간 정보는, 공간 인식을 위한 인공지능 모델을 업데이트하는데 이용될 수 있다.
도 3은 본 개시의 일 실시예에 따른 디바이스 내의 카메라 모듈이 회전하는 예시를 나타내는 도면이다.
도 3을 참조하면, 촬영 방향 제어 유닛(1500)은 회전 중심(30)을 기준으로 카메라 모듈(1400) 시계 또는 반시계 방향으로 회전(32)할 수 있다. 이에 따라, 카메라 모듈(1400)은 소정 각도로 회전하면서 디바이스(1000)의 주변을 순차적으로 촬영할 수 있게 된다. 또한, 카메라 모듈(1400)은 회전 중심(30)을 중심으로 소정 각도로 패닝(panning) 또는 틸팅(tilting)되면서 디바이스(1000)의 주변을 촬영할 수 있다.
도 4a는 본 개시의 일 실시예에 따른 디바이스 내의 카메라 모듈이 회전하면서 복수의 이미지를 획득하는 예시를 나타내는 도면이다.
도 4a를 참조하면, 디바이스(1000) 내의 카메라 모듈(1400)은 소정의 촬영 각도 범위(40) 내에서 시계 또는 반시계 방향으로 소정 각도씩 회전하면서 디바이스(1000)의 주변을 순차적으로 촬영할 수 있다. 예를 들어, 디바이스(1000)는 카메라 모듈(1400)을 시계 방향으로 5도씩 회전시키면서 디바이스(1000)의 주변을 순차적으로 촬영할 수 있다. 카메라 모듈(1400)의 촬영 각도 범위(40)는 디바이스(1000)의 촬영 모드에 따라 상이하게 설정될 수 있다. 예를 들어, 디바이스(1000)의 촬영 모드가 제스처 인식 모드인 경우에 촬영 각도 범위(40)는 기준축(42)을 기준으로 -15도 ~ +15도의 범위로 설정될 수 있다. 또한, 예를 들어, 디바이스(1000)의 촬영 모드가 공간 인식 모드인 경우에 촬영 각도 범위(40)는 기준축(42)을 기준으로 -30도 ~ +30도의 범위일 수 있다. 기준축(42)은 카메라 모듈(1400)이 디바이스(1000)의 정면을 향하고 있는 경우의 카메라 모듈(1400)의 촬영 방향에 의해 결정될 수 있다.
디바이스(1000)는 카메라 모듈(1400)을 통하여 디바이스(1000)의 주변을 촬영함으로써, 제1 내지 제n 이미지를 획득할 수 있다. 이 경우, 제1 내지 제n 이미지들 중 인접한 이미지들은 일정 부분이 서로 중첩될 수 있다.
도 4b는 본 개시의 일 실시예에 따른 인접한 이미지들 내의 동일한 특징 영역이 순차적으로 식별되는 예시를 나타내는 도면이다.
도 4b를 참조하면, 디바이스(1000)는 스테레오 매칭(stereo matching) 기법을 통하여 이미지들 내의 동일한 특징 영역들을 식별할 수 있다. 디바이스(1000)는 제1 이미지 내의 제1 특징 영역이 제2 이미지 내의 제2 특징 영역과 동일함을 식별할 수 있다. 또한, 디바이스(1000)는 제2 이미지 내의 제2 특징 영역이 제3 이미지 내의 제3 특징 영역과 동일함을 식별할 수 있다. 이와 같이, 디바이스(1000)는 인접한 2개의 이미지들을 순차적으로 비교함으로써, 제n-1 이미지 내의 제 n-1 특징 영역이 제n 이미지 내의 제n 특징 영역과 동일함을 식별할 수 있다.
도 4c는 본 개시의 일 실시예에 따른 디바이스가 가장 큰 각도 차이가 나는 이미지들 내의 동일한 식별 영역들을 식별하는 예시를 나타내는 도면이다.
도 4c를 참조하면, 디바이스(1000)는 도 4b에서의 식별 결과에 기초하여, 제1 이미지 내의 제1 특징 영역이 제n 이미지 내의 제n 특징 영역과 동일함을 식별할 수 있다. 이에 따라, 디바이스(1000)는 제1 내지 제n 이미지들 중에서 촬영 각도 차이가 가장 큰 두 개의 이미지에서 동일한 특징 영역을 식별할 수 있으며, 디바이스(1000)는 후술할 특징 영역의 깊이를 보다 정확하게 산출할 수 있게 된다.
인접한 이미지들은 많은 부분이 서로 중첩되며, 인접한 이미지들 내의 동일한 특정 영역들은 인접한 이미지들 내에서 서로 비슷한 위치에 표시되므로, 디바이스(1000)는 인접한 이미지들을 비교함으로써 보다 효과적으로 동일한 특정 영역들을 식별할 수 있게 된다. 예를 들어, 제1 이미지는 다른 이미지들보다 제2 이미지와 더 많은 부분이 중첩되며, 제1 이미지 내에서의 제1 특징 영역의 위치는 제2 이미지 내의 제2 특징 영역의 위치와 차이가 적기 때문에, 디바이스(1000)는 제1 이미지 및 제2 이미지의 보다 적은 부분을 서로 비교하더라도, 디바이스(1000)는 제1 특징 영역 및 제2 특징 영역이 동일함을 효과적으로 정확하게 식별할 수 있게 된다. 또한, 디바이스(1000)는 인접한 이미지들을 순차적으로 비교하고, 순차적으로 비교된 결과들을 이용함으로써 제1 이미지의 제1 특징 영역 및 제n 이미지의 제n 특징 영역이 동일함을 보다 정확하게 식별할 수 있게 된다.
도 4a 내지 도 4c에서는 디바이스(1000)가 촬영된 이미지 모두를 이용하여 이미지들 내의 동일한 특징 영역들을 식별하는 것으로 설명하였지만, 이에 제한되지 않는다. 디바이스(1000)는 촬영된 이미지들 중 일부인 복수의 이미지들을 선택하고, 선택된 복수의 이미지들을 비교함으로써 선택된 복수의 이미지들 내의 동일한 특징 영역들을 식별할 수도 있다. 예를 들어, 제1 내지 제n 이미지들 중에서 제3 내지 제n-3 이미지를 선택하고, 제3 내지 제n-3 이미지들 중 인접한 이미지들을 비교함으로써, 제3 이미지 내의 제3 특징 영역 및 제n-3 이미지 내의 제n-3 특징 영역이 동일함을 식별할 수도 있다.
도 4a 내지 도 4c에서는, 디바이스(1000)가 촬영 각도 범위 내에서 가장 작은 촬영 각도에서 촬영된 제1 이미지 및 가장 큰 촬영 각도에서 촬영된 제n 이미지로부터 동일한 특징 영역들을 식별하는 것으로 설명되었지만, 이에 제한되지 않는다. 디바이스(1000)는 소정 임계치 이상의 촬영 각도 차이를 가지는 두 이미지들로부터 동일한 특징 영역들을 식별하고, 식별된 특징 영역들을 이용하여 특징 영역들의 깊이를 산출할 수도 있다. 예를 들어, 디바이스(1000)는 제1 내지 제n 이미지들 중에서 촬영 각도의 차이가 소정 임계치 이상인 제1 이미지 및 제n-3 이미지를 선택하고, 선택된 제1 이미지 및 제n-3 이미지로부터 동일한 특징 영역들을 식별할 수 있다.
도 5a 내지 도 5c는 본 개시의 일 실시예에 따른 디바이스가 촬영된 이미지를 배열하고 특징 영역의 디스패리티 값을 획득하는 예시를 설명하기 위한 도면이다.
도 5a는 본 개시의 일 실시예에 따른 디바이스가 디바이스의 주변을 촬영하는 예시를 도시한 도면이다.
도 5a를 참조하면, 디바이스(1000)는 촬영 각도 범위 내에서 소정 촬영 각도 간격으로 디바이스(1000)의 주변을 순차적으로 촬영할 수 있다. 또한, 촬영 각도 범위 내에서 차이가 가장 큰 두 이미지인 제1 이미지를 촬영할 때의 카메라 모듈(1400-1)의 촬영 중심 및 제n 이미지를 촬영할 때의 카메라 모듈(1400-n)의 촬영 중심에 의해, 제1 이미지 및 제n 이미지에 대한 베이스라인 값(b)이 결정될 수 있다. 예를 들어, 제1 이미지를 촬영할 때의 카메라 모듈(1400-1)의 렌즈 중심 및 제n 이미지를 촬영할 때의 카메라 모듈(1400-n)의 렌즈 중심 간의 거리가 베이스 라인 값(b)일 수 있다.
도 5b는 본 개시의 일 실시예에 따른 디바이스가 카메라 모듈을 가상으로 배치하는 예시를 나타내는 도면이다.
도 5b를 참조하면, 디바이스(1000)는 제1 이미지를 촬영할 때의 카메라 모듈(1400-1)과 제n 이미지를 촬영할 때의 카메라 모듈(1400-n) 간의 베이스 라인 값(b)을 유지하면서, 제1 이미지를 촬영할 때의 카메라 모듈(1400-1)의 촬영 방향(53) 및 제n 이미지를 촬영할 때의 카메라 모듈(1400-n)의 촬영 방향(54)이 서로 평행해지도록, 제1 이미지를 촬영할 때의 카메라 모듈(1400-1)과 제n 이미지를 촬영할 때의 카메라 모듈(1400-n)을 가상으로 배치할 수 있다.
도 5c는 본 개시의 일 실시예에 따른 디바이스가 디스패리티 값을 산출하는 예시를 나타내는 도면이다.
도 5c를 참조하면, 디바이스(1000)는 제1 이미지 및 제n 이미지에서 동일한 특징 영역들의 디스패리티 값(d)을 산출하기 위하여, 제1 이미지 및 제n 이미지를 배열할 수 있다. 예를 들어, 디바이스(1000)는 제1 이미지 및 제n 이미지를 세로축(55) 및 세로축(56)을 따라 배열할 수 있다. 또한, 예를 들어, 제1 이미지 및 제n 이미지의 세로변들이 세로축(55) 및 세로축(56)에 일치하지 않을 수 있다. 이 경우 디바이스(1000)는 제1 이미지 및 제n 이미지의 세로변들이 세로축(55) 및 세로축(56)에 일치하도록 제1 이미지 및 제n 이미지를 소정 알고리즘에 따라 수정(rectification)할 수 있다.
또한, 디바이스(1000)는 배열된 제1 이미지 내의 제1 특징 영역의 위치 및 배열된 제 n 이미지 내의 제n 특징 영역의 위치에 기초하여, 제1 특징 영역 및 제n 특징 영역 간의 디스패리티 값(d)를 산출할 수 있다. 예를 들어, 제1 특징 영역 및 제n 특징 영역 간의 디스패리티 값(d)은 제1 특징 영역을 가로지르는 세로선(57) 및 제n 특징 영역을 가로지르는 세로선(58) 간의 거리에 의해 결정될 수 있다.
도 6은 본 개시의 일 실시예에 따른 디바이스가 특징 영역의 깊이를 산출하는 예시를 나타내는 도면이다.
도 6을 참조하면, 두 이미지 내의 동일한 특징 영역들에 대한 디스패리티 값, 카메라 모듈(1400)의 베이스 라인 값 및 카메라 모듈(1400)의 초점 거리를 이용하여, 두 이미지 내의 동일한 특징 영역에 대한 깊이가 산출될 수 있다. 예를 들어, 특징 영역의 깊이(z) 및 카메라 모듈(1400)의 초점 거리(f)간의 비율이 디스패리티 값(d) 및 베이스라인 값(b)의 비율과 동일함에 기초하여, 아래의 수학식 1과 같이, 특징 영역의 깊이(z)가 산출될 수 있다.
<수학식 1>
특징 영역의 깊이(z) = {디스패리티 값(d) x 초점거리(f)}/베이스라인값(b)
예를 들어, 수학식 1에서, 특징 영역의 깊이(z)는 이미지 내의 동일한 특징 영역들인 제1 특징 영역 및 제n 특징 영역의 깊이이며, 디스패리티 값(d)은 이미지 내의 제1 특징 영역 및 제n 특징 영역에 대한 디스패리티 값이며, 베이스 라인 값(b)은 제1 특징 영역을 촬영할 때의 카메라 모듈(1400)의 렌즈 중심과 제n 특징 영역을 촬영할 때의 카메라 모듈(1400)의 렌즈 중심 간의 거리하며, 초점 거리(f)는 제1 특징 영역 및 제n 특징 영역을 촬영할 때의 카메라 렌즈(1400)의 초점 거리일 수 있다.
도 7은 본 개시의 일 실시예에 따른 디바이스가 이미지 내의 특징 영역의 깊이를 산출하는 방법의 흐름도이다.
동작 S700에서 디바이스(1000)는 카메라 모듈(1400)을 회전시키면서 디바이스(1000)의 주변을 연속하여 촬영할 수 있다. 디바이스(1000)는 카메라 모듈(1400) 및 촬영 방향 제어 유닛(1500)을 제어함으로써, 식별된 촬영 각도의 범위 내에서 결정된 촬영 간격에 따라 디바이스(1000)의 주변을 순차적으로 촬영함으로써 복수의 이미지를 획득할 수 있다. 카메라 모듈(1400)은 촬영 각도 범위 내에서 회전하면서 촬영 간격에 따라 디바이스(1000) 주변을 복수회 촬영할 수 있다. 카메라 모듈(1400)에 의해 촬영된 이미지들 중 인접한 이미지들의 일부는 서로 중첩될 수 있다.
S710에서 디바이스(1000)는 촬영된 복수의 이미지들 중에서 서로 인접한 이미지들을 비교함으로써, 이미지들 내의 동일한 특징 영역들을 식별할 수 있다. 디바이스(1000)는 제1 이미지 내의 제1 특징 영역이 제2 이미지 내의 제2 특징 영역과 동일함을 식별할 수 있다. 또한, 디바이스(1000)는 제2 이미지 내의 제2 특징 영역이 제3 이미지 내의 제3 특징 영역과 동일함을 식별할 수 있다. 이와 같이, 디바이스(1000)는 인접한 2개의 이미지들을 순차적으로 비교함으로써, 제n-1 이미지 내의 제 n-1 특징 영역이 제n 이미지 내의 제n 특징 영역과 동일함을 식별할 수 있다.
동작 S720에서 디바이스(1000)는 복수의 이미지들 중에서 촬영 각도가 소정 값 이상이 제1 이미지 및 제n 이미지를 선택할 수 있다. 예를 들어, n 개의 이미지가 촬영된 경우에, 촬영 각도 범위 내에서 가장 작은 촬영 각도에서 촬영된 제1 이미지 및 가장 큰 촬영 각도에서 촬영된 제n 이미지를 선택할 수 있으나, 이에 제한되지 않는다. 디바이스(1000)는 소정 임계치 이상의 촬영 각도 차이를 가지는 두 이미지들로부터 동일한 특징 영역들을 식별하고, 식별된 특징 영역들을 이용하여 특징 영역들의 깊이를 산출할 수도 있다. 예를 들어, 디바이스(1000)는 제1 내지 제n 이미지들 중에서 촬영 각도의 차이가 소정 임계치 이상인 제1 이미지 및 제n-3 이미지를 선택하고, 선택된 제1 이미지 및 제n-3 이미지로부터 동일한 특징 영역들을 식별할 수도 있다.
동작 S730에서 디바이스(1000)는 제1 이미지를 촬영할 때의 카메라 모듈(1400)의 촬영 중심 및 제2 이미지를 촬영할 때의 카메라 모듈(1400)의 촬영 중심에 기초하여 베이스라인 값을 획득할 수 있다. 베이스 라인 값은 한 이미지를 촬영할 때의 카메라 모듈(1400)의 촬영 중심 및 다른 이미지를 촬영할 때의 카메라 모듈(1400)의 촬영 중심 간의 거리를 나타내는 값일 수 있다. 카메라 모듈(1400)의 촬영 중심은, 예를 들어, 카메라 모듈(1400)의 렌즈의 중심점일 수 있다.
동작 S740에서 디바이스(1000)는 제1 이미지 내의 제1 특징 영역 및 제n 이미지 내의 제n 특징 영역 간의 디스패리티 값을 산출할 수 있다. 디바이스(1000)는 베이스라인 값을 유지하면서 제1 이미지를 촬영할 때의 카메라 모듈과 제n 이미지를 촬영할 때의 카메라 모듈을 가상으로 배치하고, 제1 이미지 및 제2 이미지를 소정 기준에 따라 배열할 수 있다. 또한, 디바이스(1000)는 배열된 제1 이미지 내의 제1 특징 영역의 위치 및 배열된 제n 이미지 내의 제n 특징 영역의 위치에 기초하여, 제1 특징 영역 및 제2 특징 영역 간의 디스패리티 값을 산출할 수 있다.
동작 S750에서 디바이스(1000)는 디스패리티 값, 베이스라인 값 및 카메라 모듈의 초점 거리에 기초하여, 특징 영역의 깊이를 산출할 수 있다. 디바이스(1000)는 두 이미지 내의 동일한 특징 영역들에 대한 디스패리티 값, 카메라 모듈(1400)의 베이스 라인 값 및 카메라 모듈(1400)의 초점 거리를 이용하여, 두 이미지 내의 동일한 특징 영역에 대한 깊이를 산출할 수 있다. 디바이스(1000)는 베이스 라인 값과 초점 거리 간의 비율이 디스패리티 값과 깊이 간의 비율과 동일함을 이용하여, 특징 영역의 깊이를 산출할 수 있다.
도 8은 본 개시의 일 실시예에 따른 디바이스가 디스패리티 값을 산출하는 예시를 나타내는 도면이다.
S800에서 디바이스(1000)는 베이스라인 값을 유지하면서, 제1 이미지를 촬영할 때의 카메라 모듈(1400-1)과 제n 이미지를 촬영할 때의 카메라 모듈(1400-n)을 가상으로 배치할 수 있다. 디바이스(1000)는 제1 이미지를 촬영할 때의 카메라 모듈(1400-1)의 촬영 방향 및 제n 이미지를 촬영할 때의 카메라 모듈(1400-n)의 촬영 방향이 서로 평행해지도록 제1 이미지를 촬영할 때의 카메라 모듈(1400-1)과 제n 이미지를 촬영할 때의 카메라 모듈(1400-n)을 가상으로 배치할 수 있다.
S810에서 디바이스(1000)는 제1 이미지 및 제n 이미지를 배열할 수 있다. 디바이스(1000)는 제1 이미지 및 제n 이미지를 세로축(55) 및 세로축(56)을 따라 배열할 수 있다. 제1 이미지 및 제n 이미지의 세로변들이 세로축(55) 및 세로축(56)에 일치하지 않는 경우에, 디바이스(1000)는 제1 이미지 및 제n 이미지의 세로변들이 세로축(55) 및 세로축(56)에 일치하도록 제1 이미지 및 제n 이미지를 소정 알고리즘에 따라 수정(rectification)할 수 있다.
동작 S820에서 디바이스(1000)는 제1 이미지 내의 제1 특징 영역 및 제n 이미지 내의 제n 특징 영역 간의 거리를 산출할 수 있다. 디바이스(1000)는 동작 S820에서 배열된 제1 이미지 내의 제1 특징 영역의 위치 및 동작 S820에서 배열된 제2 이미지 내의 제2 특징 영역의 위치에 기초하여, 제1 특징 영역 및 제n 특징 영역 간의 거리를 산출할 수 있다.
도 9는 본 개시의 일 실시예에 따른 디바이스가 촬영 모드에 따라 디바이스의 주변을 인식하는 방법의 흐름도이다.
동작 S900에서 디바이스(1000)는 촬영 모드를 식별할 수 있다. 예를 들어, 디바이스(1000)의 전원이 켜지거나 디바이스(1000)가 비활성화 상태에서 활성화되면, 디바이스(1000)는 사용자의 제스처 입력을 수신하기 위하여 카메라 모듈(1400)의 촬영 모드를 제스처 인식 모드로 식별할 수 있다. 또한, 디바이스(1000)는 제스처 인식 모드에서 사용자의 제스처를 인식하고 인식된 제스처에 따라 카메라 모듈(1400)의 촬영 모드를 변경할 수 있다. 디바이스(1000)는 제스처에 대응되는 애플리케이션을 실행하고, 실행된 애플리케이션이 요구하는 촬영 모드에 따라 카메라 모듈(1400)의 촬영 모드를 변경할 수 있다. 또한, 예를 들어, 디바이스(1000)는 카메라 모듈(1400)을 통한 촬영을 필요로 하지 않는 애플리케이션이 실행되면, 카메라 모듈(1400)을 비활성화할 수 있다.
또는, 예를 들어, 디바이스(1000)의 전원이 켜지거나 디바이스(1000)가 비활성화 상태에서 활성화되면 디바이스(1000)는 카메라 모듈(1400)의 촬영 모드를 공간 인식 모드로 식별할 수 있다.
또한, 예를 들어, 프로세서(1800)는 디바이스(1000)에 대한 기설정된 사용자 입력이 수신되면, 카메라 모듈(1400)의 촬영 모드를 제스처 모드로 또는 공간 인식 모드로 식별할 수 있다.
동작 S900에서의 식별 결과, 촬영 모드가 제스처 모드라고 식별되면, 동작 S905에서 디바이스(1000)는 제스처 모드에 대응되는 제1 촬영 각도 범위를 식별할 수 있다. 예를 들어, 카메라 모듈(1400)의 촬영 모드가 제스처 모드인 경우에 -15도 ~ 15도의 촬영 각도 범위에서 카메라 모듈(1400)이 디바이스(1000)의 주변을 촬영하도록 설정될 수 있다. 예를 들어, 카메라 모듈(1400)이 정면을 향하고 있을 때의 각도를 0도라고 하면, 카메라 모듈(1400)의 촬영 각도 범위가 -15도 ~ 15도인 경우에, 카메라 모듈(1400)은 정면을 기준으로 하여 좌측으로 -15도까지 회전하고 우측으로 15도까지 회전할 수 있다.
동작 S910에서 디바이스(1000)는 제1 촬영 각도 범위 내에서 디바이스(1000)의 주변을 촬영할 수 있다. 디바이스(1000)는 카메라 모듈(1400) 및 촬영 방향 제어 유닛(1500)을 제어함으로써, 제1 촬영 각도의 범위 내에서 소정의 촬영 간격에 따라 디바이스(1000)의 주변을 순차적으로 촬영함으로써 복수의 이미지를 획득할 수 있다. 이 경우, 디바이스(1000)는 카메라 모듈(1400)의 촬영 간격을 결정할 수 있다.
동작 S915에서 디바이스(1000)는 촬영된 이미지들로부터 제스처에 관련된 객체를 식별할 수 있다. 디바이스(1000)는 촬영된 이미지들 내의 여러 객체들에 관련된 특징 영역들의 깊이 값들을 산출하고 산출된 깊이 값들을 비교할 수 있다. 디바이스(1000)는 산출된 깊이 값들을 비교함으로써, 사용자의 제스처에 관련된 객체를 식별할 수 있다. 또한, 디바이스(1000)는 식별된 객체의 모양 및 위치를 식별할 수 있다.
동작 S920에서 디바이스(1000)는 객체의 모양 및 위치에 기초하여 제스처를 식별할 수 있다. 디바이스(1000)는 객체의 모양 변화 및 객체의 위치 변화에 기초하여, 사용자의 제스처를 식별할 수 있다.
동작 S900에서의 식별 결과, 촬영 모드가 공간 인식 모드라고 식별되면, 동작 S950에서 디바이스(1000)는 공간 인식 모드에 대응되는 제2 촬영 각도 범위를 식별할 수 있다. 예를 들어, 카메라 모듈(1400)의 촬영 모드가 공간 인식 모드인 경우에 -60도 ~ 60도의 촬영 각도 범위에서 카메라 모듈(1400)이 디바이스(1000)의 주변을 촬영하도록 설정될 수 있다. 예를 들어, 카메라 모듈(1400)이 정면을 향하고 있을 때의 각도를 0도라고 하면, 카메라 모듈(1400)의 촬영 각도 범위가 -60도 ~ 60도인 경우에, 카메라 모듈(1400)은 정면을 기준으로 하여 좌측으로 -60도까지 회전하고 우측으로 60도까지 회전할 수 있다.
동작 S955에서 디바이스(1000)는 제2 촬영 각도 범위 내에서 디바이스(1000)의 주변을 촬영할 수 있다. 디바이스(1000)는 카메라 모듈(1400) 및 촬영 방향 제어 유닛(1500)을 제어함으로써, 제2 촬영 각도의 범위 내에서 소정의 촬영 간격에 따라 디바이스(1000)의 주변을 순차적으로 촬영함으로써 복수의 이미지를 획득할 수 있다. 이 경우, 디바이스(1000)는 카메라 모듈(1400)의 촬영 간격을 결정할 수 있다.
동작 S960에서 디바이스(1000)는 촬영된 이미지들로부터 주변 객체들을 식별할 수 있다. 디바이스(1000)는 디바이스(1000)는 촬영된 이미지들 내의 여러 객체들에 관련된 특징 영역들의 깊이 값들을 산출하고 산출된 깊이 값들을 비교할 수 있다. 디바이스(1000)는 산출된 깊이 값들을 비교함으로써, 디바이스(1000) 주변의 객체들을 식별함으로써 디바이스(1000)의 주변 공간을 인식할 수 있다.
일 실시예에 따르면, 디바이스(1000)는 사용자가 응시하는 물체를 식별할 수 있다. 사용자의 눈동자가 소정 시간이상 고정되면, 디바이스(1000)는 카메라 모듈(1400)을 소정 촬영 각도 범위 내에서 회전시키면서 사용자가 바라보는 방향 주변을 순차적으로 촬영할 수 있다. 또한, 디바이스(1000)는 사용자가 바라보는 방향 주변의 깊이 맵을 생성하고, 사용자가 응시한 물체를 식별할 수 있다. 또한, 디바이스(1000)는 식별된 물체에 관한 부가 정보를 디스플레이할 수 있다. 부가 정보는, 예를 들어, 물체의 식별 값, 물체의 깊이 값을 포함할 수 있으나, 이에 제한되지 않는다. 디바이스(1000)는 식별된 물체에 관한 부가 정보를 사용자에게 제공하기 위한 GUI를 디스플레이할 수도 있다.
도 10a은 본 개시의 일 실시예에 따른 디바이스가 제스처 모드에서 사용자의 손 동작을 촬영하는 예시를 나타내는 도면이다.
도 10a을 참조하면, 사용자는 손가락(102)을 구부리는 제스처를 행할 수 있으며, 제스처 모드에서 디바이스(1000)는 구부려지는 손가락(102)을 복수회 순차적으로 촬영할 수 있다. 예를 들어, 디바이스(1000)는 제스처 모드에 대응되는 제1 촬영 각도 범위 내에서 카메라 모듈(1400)을 소정 촬영 간격으로 복수회 회전시키면서 손가락(102)을 순차적으로 촬영할 수 있다. 이에 따라, 디바이스(1000)는 n개의 이미지들을 포함하는 복수의 이미지 세트들을 획득할 수 있다. 예를 들어, 디바이스(1000)는 손가락(102)이 펴진 상태에서 촬영된 제1 이미지 세트(104), 및 손가락(102)이 구부려진 상태에서 촬영된 제2 이미지 세트(105)를 획득할 수 있다.
도 10b는 본 개시의 일 실시예에 따른 디바이스(1000)가 이미지 세트들로부터 제스처를 인식하는 예시를 나타내는 도면이다.
도 10b를 참조하면, 디바이스(1000)는 손가락(102)이 펴진 상태에서 촬영된 제1 이미지 세트(104)로부터 제1 깊이 맵(112)을 생성하고, 손가락(102)이 구부려진 상태에서 촬영된 제2 이미지 세트(105)로부터 제2 깊이 맵(113)를 생성할 수 있다.
또한, 디바이스(1000)는 제1 깊이 맵(112)으로부터 펴진 손가락(115)을 식별하고, 제2 깊이 맵(113)으로부터 구부려진 손가락(116)을 식별할 수 있다. 이후, 디바이스(1000)는 펴진 손가락(115)의 모양 및 구부려진 손가락(116)의 모양을 분석하여, 사용자의 제스처가 ‘클릭’ 동작임을 식별할 수 있다.
도 11a 내지 도 11c는 본 개시의 일 실시예에 따른 디바이스가 디바이스 주변의 공간을 분석하는 예시를 나타내는 도면이다.
도 11a는 본 개시의 일 실시예에 따른 디바이스가 디바이스 주변을 촬영하여 획득된 복수의 이미지들을 복수의 이미지 세트로 그룹핑하는 예시를 나타내는 도면이다.
도 11a를 참조하면, 디바이스(1000)는 공간 인식 모드에 대응되는 제2 촬영 각도 범위 내에서 카메라 모듈(1400)을 소정 촬영 간격으로 복수회 회전시키면서 디바이스(1000)의 주변을 순차적으로 촬영할 수 있다. 또한, 디바이스(1000)는 복수의 이미지들 중 인접한 이미지들을 그룹핑함으로써 복수의 이미지 세트를 획득할 수 있다. 복수의 이미지 세트들은 연속되는 이미지들로 구성될 수 있다. 이미지 세트 내의 연속되는 이미지들 중 일부는, 인접한 이미지 세트 내의 연속되는 이미지들 중 일부와 중복될 수 있다.
도 11b는 본 개시의 일 실시예에 따른 디바이스에 의해 그룹핑된 복수의 이미지 세트들의 예시를 나타내는 도면이다.
도 11b를 참조하면, 디바이스(1000)는 디바이스(1000) 주변을 촬영된 복수의 이미지들로부터 제1 이미지 세트(114), 제2 이미지 세트(115) 및 제3 이미지 세트(116)를 획득할 수 있다. 제1 이미지 세트(114)는 이미지(1), 이미지 (2), 이미지 (3) 및 이미지 (4)를 포함할 수 있으며, 제2 이미지 세트(115)는 이미지(3), 이미지 (4), 이미지 (5) 및 이미지 (6)를 포함할 수 있으며, 제3 이미지 세트(116)는 이미지(5), 이미지 (6), 이미지 (7) 및 이미지 (8)를 포함할 수 있다.
또한, 특징 영역(9)은 이미지(5)에서는 사라지지만 제1 이미지 세트(114) 내의 이미지들 내에는 존재하므로, 디바이스(1000)는 이미지 세트(114)로부터 특징 영역(9)의 깊이 값을 산출할 수 있다.
도 11c는 본 개시의 일 실시예에 따른 디바이스가 복수의 이미지 세트로부터 생성된 깊이 맵으로부터 디바이스 주변 공간을 나타내는 깊이 맵을 생성하고 분석하는 예시를 나타내는 도면이다.
또한, 디바이스(1000)는 제1 이미지 세트(114)로부터 제1 부분 깊이 맵(117)을 생성하고, 제2 이미지 세트(115)로부터 제2 부분 깊이 맵(118)을 생성하고, 제3 이미지 세트(116)로부터 제3 부분 깊이 맵(119)을 생성할 수 있다. 또한, 디바이스(1000)는 제1 부분 깊이 맵(117), 제2 부분 깊이 맵(118) 및 제3 부분 깊이 맵(119)을 이용하여, 전체 깊이 맵(120)을 생성하고 분석할 수 있다.
본 개시의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 또는 프로그램 모듈과 같은 변조된 데이터 신호의 기타 데이터를 포함할 수 있다.
또한, 컴퓨터에 의해 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적 저장매체'는 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다. 예로, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.
일 실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품(예: 다운로더블 앱(downloadable app))의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
또한, 본 명세서에서, “부”는 프로세서 또는 회로와 같은 하드웨어 구성(hardware component), 및/또는 프로세서와 같은 하드웨어 구성에 의해 실행되는 소프트웨어 구성(software component)일 수 있다.
또한, 본 명세서에서, “a, b 또는 c 중 적어도 하나를 포함한다”는 “a만 포함하거나, b만 포함하거나, c만 포함하거나, a 및 b를 포함하거나, b 및 c를 포함하거나, a 및 c를 포함하거나, a, b 및 c를 모두 포함하는 것을 의미할 수 있다.
본 개시에 따른 인공지능과 관련된 기능은 프로세서와 메모리를 통해 동작된다. 프로세서는 하나 또는 복수의 프로세서로 구성될 수 있다. 이때, 하나 또는 복수의 프로세서는 CPU, AP, DSP(Digital Signal Processor) 등과 같은 범용 프로세서, GPU, VPU(Vision Processing Unit)와 같은 그래픽 전용 프로세서 또는 NPU와 같은 인공지능 전용 프로세서일 수 있다. 하나 또는 복수의 프로세서는, 메모리에 저장된 기 정의된 동작 규칙 또는 인공지능 모델에 따라, 입력 데이터를 처리하도록 제어한다. 또는, 하나 또는 복수의 프로세서가 인공지능 전용 프로세서인 경우, 인공지능 전용 프로세서는, 특정 인공지능 모델의 처리에 특화된 하드웨어 구조로 설계될 수 있다.
기 정의된 동작 규칙 또는 인공지능 모델은 학습을 통해 만들어진 것을 특징으로 한다. 여기서, 학습을 통해 만들어진다는 것은, 기본 인공지능 모델이 학습 알고리즘에 의하여 다수의 학습 데이터들을 이용하여 학습됨으로써, 원하는 특성(또는, 목적)을 수행하도록 설정된 기 정의된 동작 규칙 또는 인공지능 모델이 만들어짐을 의미한다. 이러한 학습은 본 개시에 따른 인공지능이 수행되는 기기 자체에서 이루어질 수도 있고, 별도의 서버 및/또는 시스템을 통해 이루어 질 수도 있다. 학습 알고리즘의 예로는, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)이 있으나, 전술한 예에 한정되지 않는다.
인공지능 모델은, 복수의 신경망 레이어들로 구성될 수 있다. 복수의 신경망 레이어들 각각은 복수의 가중치들(weight values)을 갖고 있으며, 이전(previous) 레이어의 연산 결과와 복수의 가중치들 간의 연산을 통해 신경망 연산을 수행한다. 복수의 신경망 레이어들이 갖고 있는 복수의 가중치들은 인공지능 모델의 학습 결과에 의해 최적화될 수 있다. 예를 들어, 학습 과정 동안 인공지능 모델에서 획득한 로스(loss) 값 또는 코스트(cost) 값이 감소 또는 최소화되도록 복수의 가중치들이 갱신될 수 있다. 인공 신경망은 심층 신경망(DNN:Deep Neural Network)를 포함할 수 있으며, 예를 들어, CNN (Convolutional Neural Network), DNN (Deep Neural Network), RNN (Recurrent Neural Network), RBM (Restricted Boltzmann Machine), DBN (Deep Belief Network), BRDNN(Bidirectional Recurrent Deep Neural Network) 또는 심층 Q-네트워크 (Deep Q-Networks) 등이 있으나, 전술한 예에 한정되지 않는다.
본 개시에 따른 인공지능 모델은 이미지 데이터를 인공지능 모델의 입력 데이터로 이용하여 이미지 또는 이미지 내 특징 영역을 인식한 출력 데이터를 출력할 수 있다. 인공지능 모델은 학습을 통해 만들어 질 수 있다. 여기서, 학습을 통해 만들어진다는 것은, 기본 인공지능 모델이 학습 알고리즘에 의하여 다수의 학습 데이터들을 이용하여 학습됨으로써, 원하는 특성(또는, 목적)을 수행하도록 설정된 기 정의된 동작 규칙 또는 인공지능 모델이 만들어짐을 의미한다. 인공지능 모델은, 복수의 신경망 레이어들로 구성될 수 있다. 복수의 신경망 레이어들 각각은 복수의 가중치들(weight values)을 갖고 있으며, 이전(previous) 레이어의 연산 결과와 복수의 가중치들 간의 연산을 통해 신경망 연산을 수행한다.
시각적 이해는 사물을 인간의 시각처럼 인식하여 처리하는 기술로서, 특징 영역 인식(Object Recognition), 특징 영역 추적(Object Tracking), 영상 검색(Image Retrieval), 사람 인식(Human Reconnition), 장면 이해(Scene Recognition), 공간 이해(3D Reconstruction/Localization), 영상 개선(Image Enhancement) 등을 포함한다.
전술한 본 개시의 설명은 예시를 위한 것이며, 본 개시가 속하는 기술분야의 통상의 지식을 가진 자는 본 개시의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 개시의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 개시의 범위에 포함되는 것으로 해석되어야 한다.

Claims (15)

  1. 디바이스가 카메라 모듈을 이용하여 특징 영역의 깊이를 획득하는 방법에 있어서,
    카메라 모듈을 기설정된 각도로 순차적으로 회전시키면서 상기 카메라의 주변을 복수회 촬영함으로써 복수의 이미지들을 획득하는 단계;
    상기 복수의 이미지들 중 제1 이미지 및 제n 이미지 사이의 서로 인접한 이미지들을 비교함으로써, 상기 제1 이미지 내의 제1 특징 영역 및 상기 제n 이미지 내의 상기 제1 특징 영역과 동일한 제n 특징 영역을 식별하는 단계;
    상기 제1 이미지를 촬영할 때의 상기 카메라 모듈의 배치 및 상기 n번째 이미지를 촬영할 때의 상기 카메라 모듈의 배치에 기초하여, 상기 제1 이미지 및 상기 제n 이미지에 대한 베이스 라인(base line) 값을 획득하는 단계;
    상기 제1 이미지 내의 상기 제1 특징 영역의 위치 및 상기 제n 이미지 내의 상기 제n 특징 영역의 위치에 기초하여, 상기 제1 특징 영역 및 상기 제n 특징 영역 간의 디스패리티(disparity) 값을 획득하는 단계; 및
    상기 베이스 라인 값 및 상기 디스패리티 값에 기초하여, 상기 제1 특징 영역 또는 상기 제n 특징 영역의 깊이를 산출하는 단계;
    를 포함하는, 방법.
  2. 제1 항에 있어서,
    상기 복수의 이미지들을 획득하는 단계는,
    상기 카메라 모듈을 소정의 촬영 각도 범위 내에서 소정의 각도 간격으로 패닝시키면서 상기 카메라의 주변을 순차적으로 촬영하는 것인, 방법.
  3. 제1 항에 있어서,
    상기 제1 특징 영역 및 상기 제n 특징 영역을 식별하는 단계는,
    상기 복수의 이미지 내의 상기 제1 이미지 내지 상기 제n 이미지 중에서, 서로 인접한 이미지들을 순차적으로 비교함으로써, 상기 제1 이미지 내지 상기 제n 이미지 내의 특징 영역들 중에서, 상기 제1 특징 영역과 동일한 특징 영역들을 식별하는 단계;
    를 포함하는 것인, 방법.
  4. 제1 항에 있어서,
    상기 카메라 모듈이 기설정된 각도로 순차적으로 회전됨으로써, 상기 카메라 모듈의 촬영 각도가 변경되며,
    상기 제1 이미지 및 상기 제n 이미지에 대한 상기 베이스 라인 값은, 상기 제1 이미지를 획득할 때의 상기 카메라 모듈의 카메라 렌즈의 위치와 상기 제1 이미지를 획득할 때의 상기 카메라 모듈의 카메라 렌즈의 위치 사이의 거리 값에 기초하여 결정되는 것인, 방법.
  5. 제1 항에 있어서,
    상기 디스패리티 값을 획득하는 단계는,
    상기 제1 이미지를 촬영할 때의 상기 카메라 모듈의 촬영 방향 및 상기 제n 이미지를 촬영할 때의 상기 카메라 모듈의 촬영 방향이 서로 평행해지도록, 상기 제1 이미지를 촬영할 때의 상기 카메라 모듈 및 상기 제n 이미지를 촬영할 때의 상기 카메라 모듈을 가상으로 배치하는 단계;
    상기 배치된 카메라 모듈들의 촬영 방향에 기초하여 상기 제1 이미지 및 상기 제n 이미지를 배열하는 단계; 및
    상기 배열된 제1 이미지 내의 상기 제1 특징 영역 및 상기 배열된 상기 제n 이미지 내의 상기 제n 특징 영역 사이의 거리 값을 획득하는 단계;
    를 포함하는, 방법.
  6. 제5 항에 있어서,
    상기 배치하는 단계는, 상기 제1 이미지 및 상기 제n 이미지에 대한 상기 베이스 라인 값을 유지하면서, 상기 제1 이미지를 촬영할 때의 상기 카메라 모듈 및 상기 제n 이미지를 촬영할 때의 상기 카메라 모듈을 가상으로 배치하는 것인, 방법.
  7. 제1 항에 있어서,
    상기 깊이를 산출하는 단계는, 상기 베이스 라인 값, 상기 디스패리티 값 및 상기 제1 이미지 및 상기 제n 이미지를 촬영할 때의 상기 카메라 모듈의 초점 거리에 기초하여 상기 깊이를 산출하는 것인, 방법.
  8. 제1 항에 있어서,
    상기 카메라 모듈의 촬영 모드를 결정하는 단계; 및
    상기 촬영 모드에 따라 미리 설정된 촬영 각도 범위를 식별하는 단계;
    를 더 포함하며,
    상기 복수의 이미지들을 획득하는 단계는, 상기 식별된 촬영 각도 범위 내에서 상기 기설정된 각도로 상기 카메라 모듈을 순차적으로 회전시키면서 상기 복수의 이미지들을 획득하는 것인, 방법.
  9. 제8 항에 있어서,
    상기 촬영 모드는, 상기 카메라 모듈 주변의 사용자의 제스처를 식별하기 위한 제스처 인식 모드 및 상기 카메라 모듈 주변의 공간을 인식하기 위한 공간 인식 모드를 포함하는 것인, 방법.
  10. 제1 항에 있어서,
    상기 복수의 이미지들을 획득하는 단계는,
    상기 카메라 모듈의 초점 거리를 결정하는 단계;
    를 더 포함하며,
    상기 결정된 초점 거리에 따라, 상기 카메라의 주변이 촬영되는 것인, 방법.
  11. 카메라 모듈을 이용하여 특징 영역의 깊이를 획득하는 디바이스에 있어서,
    카메라 모듈;
    상기 카메라 모듈을 소정 각도로 회전시키는 촬영 방향 제어 유닛;
    디스플레이;
    하나 이상의 인스트럭션을 저장하는 메모리; 및
    상기 하나 이상의 인스터럭션을 실행하는 프로세서;
    를 포함하며,
    상기 프로세서는,
    상기 촬영 방향 제어 유닛 및 상기 카메라 모듈을 제어함으로써, 상기 카메라 모듈을 기설정된 각도로 순차적으로 회전시키면서 상기 카메라의 주변을 복수회 촬영하여 복수의 이미지들을 획득하고,
    상기 복수의 이미지들 중 제1 이미지 및 제n 이미지 사이의 서로 인접한 이미지들을 비교함으로써, 상기 제1 이미지 내의 제1 특징 영역 및 상기 제n 이미지 내의 상기 제1 특징 영역과 동일한 제n 특징 영역을 식별하고,
    상기 제1 이미지를 촬영할 때의 상기 카메라 모듈의 배치 및 상기 n번째 이미지를 촬영할 때의 상기 카메라 모듈의 배치에 기초하여, 상기 제1 이미지 및 상기 제n 이미지에 대한 베이스 라인(base line) 값을 획득하고,
    상기 제1 이미지 내의 상기 제1 특징 영역의 위치 및 상기 제n 이미지 내의 상기 제n 특징 영역의 위치에 기초하여, 상기 제1 특징 영역 및 상기 제n 특징 영역 간의 디스패리티(disparity) 값을 획득하고,
    상기 베이스 라인 값 및 상기 디스패리티 값에 기초하여, 상기 제1 특징 영역 또는 상기 제n 특징 영역의 깊이를 산출하는, 디바이스.
  12. 제11 항에 있어서,
    상기 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 카메라 모듈을 소정의 촬영 각도 범위 내에서 소정의 각도 간격으로 패닝시키면서 상기 카메라의 주변을 순차적으로 촬영하는 것인, 디바이스.
  13. 제11 항에 있어서,
    상기 프로세서는 상기 하나 이상의 인스트럭션을 실행하여,
    상기 복수의 이미지 내의 상기 제1 이미지 내지 상기 제n 이미지 중에서, 서로 인접한 이미지들을 순차적으로 비교함으로써, 상기 제1 이미지 내지 상기 제n 이미지 내의 특징 영역들 중에서, 상기 제1 특징 영역과 동일한 특징 영역들을 식별하는 것인, 디바이스.
  14. 제11 항에 있어서,
    상기 카메라 모듈이 기설정된 각도로 순차적으로 회전됨으로써, 상기 카메라 모듈의 촬영 각도가 변경되며,
    상기 제1 이미지 및 상기 제n 이미지에 대한 상기 베이스 라인 값은, 상기 제1 이미지를 획득할 때의 상기 카메라 모듈의 카메라 렌즈의 위치과 상기 제1 이미지를 획득할 때의 상기 카메라 모듈의 카메라 렌즈의 위치 사이의 거리 값에 기초하여 결정되는 것인, 디바이스.
  15. 제1 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
PCT/KR2021/005307 2020-04-28 2021-04-27 카메라를 이용하여 공간의 깊이를 획득하는 디바이스 및 방법 WO2021221436A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/975,209 US20230037866A1 (en) 2020-04-28 2022-10-27 Device and method for acquiring depth of space by using camera

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2020-0051815 2020-04-28
KR1020200051815A KR20210133083A (ko) 2020-04-28 2020-04-28 카메라를 이용하여 공간의 깊이를 획득하는 디바이스 및 방법

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/975,209 Continuation US20230037866A1 (en) 2020-04-28 2022-10-27 Device and method for acquiring depth of space by using camera

Publications (1)

Publication Number Publication Date
WO2021221436A1 true WO2021221436A1 (ko) 2021-11-04

Family

ID=78373775

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2021/005307 WO2021221436A1 (ko) 2020-04-28 2021-04-27 카메라를 이용하여 공간의 깊이를 획득하는 디바이스 및 방법

Country Status (3)

Country Link
US (1) US20230037866A1 (ko)
KR (1) KR20210133083A (ko)
WO (1) WO2021221436A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019205069A1 (en) * 2018-04-27 2019-10-31 Beijing Didi Infinity Technology And Development Co., Ltd. Systems and methods for updating 3d model of building
CN114979470A (zh) * 2022-05-12 2022-08-30 咪咕文化科技有限公司 摄像机旋转角度分析方法、装置、设备与存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090072523A (ko) * 2007-12-28 2009-07-02 재단법인대구경북과학기술원 거리 추정 장치 및 추정 방법
KR20120108747A (ko) * 2011-03-25 2012-10-05 삼성테크윈 주식회사 3차원 영상을 생성하는 감시 카메라 및 그 방법
JP2015033047A (ja) * 2013-08-05 2015-02-16 Kddi株式会社 複数カメラを用いた奥行き推定装置
KR20150026201A (ko) * 2013-09-02 2015-03-11 엘지전자 주식회사 디지털 디바이스 및 제어 방법
KR20180108106A (ko) * 2017-03-24 2018-10-04 주식회사 씨오티커넥티드 360도 동영상에서의 가상현실 재생 장치

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090072523A (ko) * 2007-12-28 2009-07-02 재단법인대구경북과학기술원 거리 추정 장치 및 추정 방법
KR20120108747A (ko) * 2011-03-25 2012-10-05 삼성테크윈 주식회사 3차원 영상을 생성하는 감시 카메라 및 그 방법
JP2015033047A (ja) * 2013-08-05 2015-02-16 Kddi株式会社 複数カメラを用いた奥行き推定装置
KR20150026201A (ko) * 2013-09-02 2015-03-11 엘지전자 주식회사 디지털 디바이스 및 제어 방법
KR20180108106A (ko) * 2017-03-24 2018-10-04 주식회사 씨오티커넥티드 360도 동영상에서의 가상현실 재생 장치

Also Published As

Publication number Publication date
KR20210133083A (ko) 2021-11-05
US20230037866A1 (en) 2023-02-09

Similar Documents

Publication Publication Date Title
WO2021221436A1 (ko) 카메라를 이용하여 공간의 깊이를 획득하는 디바이스 및 방법
WO2018236058A1 (en) ELECTRONIC DEVICE FOR PROVIDING PROPERTY INFORMATION OF AN EXTERNAL LIGHT SOURCE FOR AN OBJECT OF INTEREST
WO2019164092A1 (ko) 디스플레이를 통해 표시된 제 1 콘텐트에 대해 제 2 콘텐트를 외부 객체의 움직임에 따라 제공하기 위한 전자 장치 및 그의 동작 방법
CN110544272A (zh) 脸部跟踪方法、装置、计算机设备及存储介质
WO2020171621A1 (en) Method of controlling display of avatar and electronic device therefor
CN110968190B (zh) 用于触摸检测的imu
CN111242090A (zh) 基于人工智能的人脸识别方法、装置、设备及介质
WO2020256325A1 (en) Electronic device and method for providing function by using corneal image in electronic device
CN112257552A (zh) 图像处理方法、装置、设备及存储介质
WO2022010152A1 (ko) 사용자의 시력을 교정하고 캘리브레이션을 수행하는 디바이스 및 방법
CN110968248B (zh) 生成用于视觉触摸检测的指尖的3d模型
WO2020122513A1 (ko) 2차원 이미지 처리 방법 및 이 방법을 실행하는 디바이스
WO2022075686A1 (ko) 전자 장치 및 그 동작 방법
WO2021261619A1 (ko) 영상에서 평면을 검출하는 전자 장치 및 그 동작 방법
WO2022108001A1 (ko) 카메라 시야(fov) 가장자리에서 움직임을 인식하여 전자 장치를 제어하는 방법 및 그 전자 장치
WO2023132633A1 (ko) 복수의 카메라를 이용하여 3차원 이미지를 생성하는 방법 및 장치
KR20190101802A (ko) 전자 장치 및 그의 증강 현실 객체 제공 방법
WO2019164179A1 (ko) 정보 표시 방법 및 이를 위한 전자 장치
WO2024053895A1 (ko) 현실 공간에서 객체를 제어하는 증강 현실 서비스를 제공하는 증강 현실 디바이스 및 그 동작 방법
WO2023113471A1 (ko) 복수의 카메라를 이용하여 촬영된 객체의 3차원 골격 데이터를 획득하는 전자 장치 및 방법
WO2024090844A1 (ko) 화면의 상태를 변경하기 위한 웨어러블 장치 및 그 방법
WO2024122992A1 (ko) 복수의 가상 공간들로 진입하기 위한 시각적 객체들을 표시하기 위한 웨어러블 장치 및 그 방법
WO2024117649A1 (ko) 외부 객체에 대한 그립 형태에 기반하여 미디어 콘텐트를 표시하기 위한 웨어러블 장치 및 그 방법
WO2024090825A1 (ko) 센서에 의해 식별된 데이터를 이용하여 시각적 객체를 변경하기 위한 웨어러블 장치 및 그 방법
US11281337B1 (en) Mirror accessory for camera based touch detection

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21796918

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21796918

Country of ref document: EP

Kind code of ref document: A1