WO2024096248A1 - 깊이 맵을 생성하기 위한 방법 및 장치 - Google Patents
깊이 맵을 생성하기 위한 방법 및 장치 Download PDFInfo
- Publication number
- WO2024096248A1 WO2024096248A1 PCT/KR2023/010103 KR2023010103W WO2024096248A1 WO 2024096248 A1 WO2024096248 A1 WO 2024096248A1 KR 2023010103 W KR2023010103 W KR 2023010103W WO 2024096248 A1 WO2024096248 A1 WO 2024096248A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- depth
- depth map
- reflective
- opaque
- depth value
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 239000002131 composite material Substances 0.000 claims 2
- 230000002194 synthesizing effect Effects 0.000 claims 2
- 230000008447 perception Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 7
- 230000014509 gene expression Effects 0.000 description 6
- 238000002372 labelling Methods 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000003786 synthesis reaction Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000002310 reflectometry Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/514—Depth or shape recovery from specularities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
- G06T7/593—Depth or shape recovery from multiple images from stereo images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
Definitions
- This disclosure relates to a method and apparatus for generating a depth map. Specifically, this disclosure relates to generating a depth map when reflective or semi-transparent objects exist within a scene.
- Three-dimensional (3D) environment reconstruction is widely used in fields such as augmented reality (AR), virtual reality (VR), robotics, autonomous driving, and Metaverse.
- AR augmented reality
- VR virtual reality
- robotics autonomous driving
- Metaverse Metaverse
- Depth perception is an essential skill that enables 3D environment reconstruction. Existing depth recognition methods may not operate properly when reflective objects (or reflective surfaces) or translucent objects exist in the scene.
- FIG. 12A and 12B illustrate depth perception and a reconstructed 3D environment when a translucent object exists in a scene, according to related technologies. If a translucent object 1200 exists in the scene, the translucent object 1200 may not be recognized, as shown in FIG. 12A, and therefore, the translucent object may not exist in the reconstructed 3D environment. Otherwise, objects behind the semi-transparent object may not be recognized, as shown in FIG. 12B. Accordingly, objects behind the semi-transparent object 1200 may not exist within the reconstructed 3D environment.
- FIG. 13 shows depth recognition and a reconstructed 3D environment when a reflective object 1300 exists in the scene, according to related technology.
- a reflective object 1300 exists in a scene, as shown in FIG. 13, objects reflected by the reflective object and displayed may be recognized as existing behind the reflective object 1300. Accordingly, in the reconstructed 3D environment, objects located in front of the reflective object 1300 may be inappropriately located behind the reflective objects.
- a method for generating a depth map may include acquiring at least one image of a scene including reflective or semi-transparent objects.
- the method may include obtaining a first depth map from the at least one image including a depth value for at least one opaque object reflected by the reflective object or viewed through the translucent object.
- the method may include obtaining a second depth map including depth values for the reflective object or the translucent object from the at least one image.
- the method may include generating a depth map for the scene based on the obtained first depth map and the obtained second depth map.
- the generated depth map may include a depth value for the reflective object or the translucent object and a depth value for the at least one opaque object reflected by the reflective object or viewed through the translucent object.
- Obtaining the second depth map comprises an intersection of the opaque surface and the reflective object's surface, based on the scene including the reflective object, and the reflective object being positioned perpendicularly above the opaque surface. It may include the step of identifying (intersection line). Obtaining the second depth map may include determining a depth value of the intersection line. Obtaining the second depth map may include determining the depth value of the intersection line as the depth value for the face of the reflective object.
- Obtaining the second depth map includes determining a depth value of the opaque side based on the scene including the reflective object and the reflective object being positioned parallel to the opaque side. can do.
- Obtaining the second depth map may include determining the depth value of the opaque side as the depth value of the side of the reflective object.
- Obtaining the first depth map includes generating a third depth map that does not include a depth value for the at least one opaque object reflected by the reflective object or viewed through the translucent object. can do.
- Obtaining the first depth map may include estimating a depth value for the opaque object reflected by the reflective object or viewed through the translucent object.
- Obtaining the first depth map may include combining the estimated depth value for the at least one opaque object with the third depth map.
- Obtaining the first depth map may include predicting a depth map for at least one opaque object from a sequence of RGB frames for the scene.
- Obtaining the first depth map may include predicting a depth value for the at least one opaque object based on the reflective object and the at least one opaque object.
- Obtaining the first depth map may include combining the predicted depth value and the predicted depth map for the at least one opaque object.
- Obtaining the second depth map may include generating a fourth depth map that does not include depth values for the reflective object or the translucent object.
- Obtaining the second depth map may include estimating a depth value for the reflective object or the translucent object.
- Obtaining the second depth map may include combining a depth value estimated for the reflective object or the translucent object with the fourth depth map.
- the method may further include reconstructing a three-dimensional (3D) environment for the scene based on the generated depth map.
- the at least one image may include an RGB-D image.
- an electronic device for generating a depth map may include a memory and a controller connected to the memory.
- the controller may be configured to acquire at least one image of a scene including reflective objects or semi-transparent objects.
- the controller may be configured to obtain a first depth map from the at least one image including a depth value for at least one opaque object reflected by the reflective object or viewed through the translucent object. It may be configured to obtain a second depth map including a depth value for the reflective object or the translucent object from the at least one image.
- the controller may be configured to generate a depth map for the scene based on the acquired first depth map and the acquired second depth map.
- the generated depth map may include a depth value for the reflective object or the translucent object and a depth value for the at least one opaque object reflected by the reflective object or viewed through the translucent object.
- a non-transitory computer-readable storage medium storing instructions for generating a depth map.
- the commands may cause the electronic device to perform operations.
- the operations may include acquiring at least one image of a scene including a reflective object or a semi-transparent object.
- the operations may include obtaining a first depth map from the at least one image that includes a depth value for at least one opaque object reflected by the reflective object or viewed through the translucent object.
- the operations may include obtaining a second depth map including depth values for the reflective object or the translucent object from the at least one image.
- the operations may include generating a depth map for the scene based on the acquired first depth map and the acquired second depth map.
- the generated depth map may include a depth value for the reflective object or the translucent object and a depth value for the at least one opaque object reflected by the reflective object or viewed through the translucent object.
- the efficiency of spatial recognition and movement path construction of devices can be improved. Additionally, users can more easily reconstruct the real environment into a 3D environment using a camera. In an AR environment, reflective objects and objects that are visible after being reflected by the reflective object can be expressed efficiently.
- FIG. 1 shows a block diagram of an electronic device according to an embodiment of the present disclosure.
- Figure 2 shows a flowchart of a method for generating a depth map according to an embodiment of the present disclosure.
- FIG 3 illustrates a process for reconstructing a scene according to an embodiment of the present disclosure.
- Figure 4 shows a depth recognition method when a reflective surface exists according to an embodiment of the present disclosure.
- Figure 5 shows a depth recognition method when a translucent surface exists according to an embodiment of the present disclosure.
- Figure 6 shows a depth recognition method for a reflective surface according to an embodiment of the present disclosure.
- Figure 7 shows a depth recognition method for a reflective surface according to an embodiment of the present disclosure.
- 8A, 8B, and 8C show example depth maps when there is a semi-transparent object in the scene.
- 9A, 9B, and 9C show example depth maps when reflective objects are present in the scene.
- FIG. 10 illustrates an example depth perception and reconstructed 3D environment when there is a semi-transparent object in the scene according to an embodiment of the present disclosure.
- FIG. 11 illustrates an example depth perception and reconstructed 3D environment when reflective objects are present in a scene according to an embodiment of the present disclosure.
- 12A and 12B illustrate depth perception and a reconstructed 3D environment when a translucent object exists in a scene, according to related technologies.
- Figure 13 shows depth perception and reconstructed 3D environment when reflective objects exist in the scene, according to related technology.
- a “component surface” includes one or more component surfaces.
- first, second, etc. may be used to describe various components, but the components are not limited by the terms. The above terms are used only for the purpose of distinguishing one component from another. For example, a first component may be referred to as a second component, and similarly, the second component may be referred to as a first component without departing from the scope of the present disclosure.
- the term and/or includes any of a plurality of related stated items or a combination of a plurality of related stated items.
- the electronic device 100 may include a controller 110 and a memory 120.
- the electronic device 100 may be a smartphone, personal digital assistance (PDA), personal computer, AR device, VR device, or a combination thereof, but is not limited thereto.
- the electronic device 100 may be any device with computational capabilities capable of executing the operations described through this disclosure.
- Controller 110 may be implemented through at least one processor. Controller 110 may also be referred to as at least one processor. The controller 110 may be connected to other elements included in the electronic device 100 and control the operations of the other elements. The controller 110 may allow the electronic device 100 to perform operations by controlling the operations of other elements. Operations performed by the electronic device 100 may be interpreted as being substantially performed by the controller 110.
- Memory 120 may be referred to as a 'non-transitory computer readable storage medium' to distinguish it from a medium for transmission of information.
- the memory 120 may be implemented through at least one of random access memory (RAM), read-only memory (ROM), hard disk, CD-ROM, and solid state drive (SSD), but is not necessarily limited thereto and is used as information It can be implemented through all possible types of storage media that can store and read.
- Memory 120 may store commands executable by controller 110 . When the commands are executed by the controller 110, the controller 110 (or the electronic device 100) may execute at least one of the operations of the electronic device 100 described in this disclosure.
- the memory 120 may further store temporary or permanent data necessary for the operation of the controller 110.
- the electronic device 100 may further include at least one of a camera 130, a display 140, and a transceiver 150.
- the camera 130 may be a camera for taking images or a camera for acquiring depth information.
- a camera for acquiring depth information may acquire depth information for a scene using a stereo method, a time of flight (ToF) method, or a structured pattern method.
- the camera 130 may be an RGB-D camera capable of acquiring both RGB images and depth information for a scene.
- the electronic device 100 may include a plurality of cameras.
- the plurality of cameras may be a plurality of RGB-depth (RGB-D) cameras, or a combination of a camera for capturing one or more images and a camera for acquiring one or more depth information.
- the display 140 may display an image based on the control of the controller 110. For example, the display 140 may display an image acquired using the camera 130. If the electronic device 100 is an AR device or a VR device, the display 140 may display a reconstructed 3D environment.
- the transceiver 150 may include circuitry (i.e., communication circuitry) necessary for communication.
- the electronic device 100 can communicate with other devices through the transceiver 150.
- the transceiver 150 uses at least one of various wireless access technologies, such as long term evolution (LTE), LTE-Advanced (LTE-A), code division multiple access (CDMA), orthogonal frequency division multiplexing (OFDM), Bluetooth, etc. Support is available, but is not necessarily limited to this.
- LTE long term evolution
- LTE-A LTE-Advanced
- CDMA code division multiple access
- OFDM orthogonal frequency division multiplexing
- Bluetooth etc. Support is available, but is not necessarily limited to this.
- the transceiver 150 may provide communication functionality to the electronic device 100 using any known wireless access technologies.
- Figure 2 shows a flowchart of a method for generating a depth map according to an embodiment of the present disclosure. Operations described with reference to FIG. 2 may be executed by the electronic device 100.
- the electronic device 100 may acquire at least one image of a scene including a reflective object or a translucent object (210).
- the electronic device 100 may acquire at least one image using the camera 130 included in the electronic device 100, or may receive at least one image from another device using the transceiver 150.
- the at least one image may be a sequence of RGB image frames.
- the at least one image may be an RGB image for a scene, a depth image representing depth information for a scene, or a combination thereof.
- at least one image may include a plurality of images acquired at different locations.
- the electronic device 100 may obtain a first depth map including a depth value for at least one opaque object reflected by a reflective object or viewed through a translucent object from at least one image (220).
- the first depth map may include a depth map corresponding to the actual location of at least one opaque object reflected by a reflective object or viewed through a semi-transparent object.
- the first depth map may be obtained from the depth image. If at least one image does not include a depth image, the first depth map is It can be obtained from at least one image.
- the electronic device 100 may obtain a second depth map including a depth value for a reflective object or a translucent object from at least one image (230).
- the second depth map may be obtained from the depth image.
- a second depth map is generated using a stereo method or machine learning (e.g., a regression neural network (RNN)) trained to obtain a depth map from the image. can be obtained from at least one image.
- RNN regression neural network
- the electronic device 100 may identify a reflective object or a translucent object and assign a corresponding depth value to the surface of the identified reflective object or the identified translucent object.
- a reflective object or a translucent object may be identified by applying machine learning (eg, regression neural network (RNN)) to at least one image.
- the electronic device 100 may generate a depth map for the scene based on the acquired first depth map and the acquired second depth map (240).
- the generated depth map is a depth value for a first point on the reflective object or the translucent object and a depth value for the first point on the reflective object or the first point on the opaque object that is reflected or otherwise visible through the first point on the semitransparent object. Depth values for 2 points can be included.
- the depth map created in this way includes both depth values for translucent or reflective objects included in the scene and depth values for opaque objects seen through the translucent object or reflected in the reflective object. Through this, the electronic device 100 of the present disclosure can generate a depth map that effectively reflects the actual composition of the scene even when the scene includes reflective objects or translucent objects.
- the electronic device 100 may configure a 3D environment for the scene based on the depth map generated in step 240.
- the electronic device 100 may transmit an image of the configured 3D environment to another device, or, if the electronic device 100 includes the display 140, may display an image of the configured 3D environment.
- FIG. 3 illustrates a process for reconstructing a scene according to an embodiment of the present disclosure.
- the process of FIG. 3 may be executed by electronic device 100.
- the electronic device 100 may predict a first depth map from a sequence of RGB frames for the scene (310).
- a sequence of RGB frames may be referred to as at least one image.
- the first depth map may be obtained not only from a sequence of RGB frames, but also from a depth image or a combination of a depth image and an RGB image.
- the predicted first depth map may not include depth information about an object reflected by a reflective object or an object seen through a semi-transparent object.
- the electronic device 100 may perform label prediction on the scene (340).
- labeling may be performed for each object included in the scene.
- reflective objects or translucent objects among objects included in the scene can be identified through labeling.
- an object reflected by a reflective object or an object visible through a translucent object can be identified.
- the electronic device 100 may predict or estimate the depth of an object reflected by a reflective object included in the scene (320).
- the depth for an object reflected by a reflective object may be predicted or estimated based on the reflective object identified through labeling and the identified reflected object. If the scene includes a semi-transparent object, the depth for the object seen through the semi-transparent object can be predicted.
- the electronic device 100 stores the predicted (or estimated) depth for the object reflected by the reflective object (or the object seen through the semi-transparent object) predicted in operation 320 in the first depth map. can be synthesized (330).
- the first depth map derived through such depth synthesis may correspond to the first depth map mentioned in step 220.
- the electronic device 100 may predict a second depth map for a reflective object or a translucent object from a sequence of RGB frames (350).
- the first depth map may be obtained not only from a sequence of RGB frames, but also from a depth image or a combination of a depth image and an RGB image.
- the predicted second depth map may not include depth information for reflective or translucent objects.
- the electronic device 100 may predict or estimate the depth of a reflective object or a translucent object.
- the electronic device 100 may synthesize the depth of the reflective object (or translucent object) with the second depth map predicted in step 350 (360).
- the second depth map derived through this depth synthesis may correspond to the second depth map mentioned in step 230.
- the electronic device 100 may synthesize meshes and labels from the first depth map, the second depth map, and the predicted labels (370). Through this synthesis, a mesh for the reconstructed scene can be created. From the first depth map, a mesh may be generated for an opaque object, including an object reflected by a reflective object or an object seen through a translucent object. A mesh for a reflective object or a translucent object may be generated from the second depth map. According to one embodiment, a depth comprising a depth value for a reflective object or a translucent object and a depth value for an object reflected by the reflective object or an object seen through the semitransparent object from the first depth map and the second depth map.
- the depth map generated here may correspond to the depth map generated in step 240.
- Figure 4 shows a depth recognition method when a reflective surface exists according to an embodiment of the present disclosure.
- the reflective surface refers to one surface of a reflective object.
- the electronic device 100 may extract features from at least one image and determine distances to faces based on the extracted features. In one embodiment, the electronic device 100 may use a feature extractor using machine learning for this purpose. First, the electronic device 100 can predict the depth to opaque surfaces included in at least one image excluding the reflective surface. The electronic device 100 can identify the reflective surface based on the extracted features and predict the depth to the reflective surface. According to one embodiment, the depth to a reflective surface may be predicted based on the depth to an opaque surface adjacent to the reflective surface. The electronic device 100 can predict the depth of opaque surfaces perceived by reflection by the reflective surface. For example, referring to FIG. 4, opaque walls outside the camera's shooting range may be reflected by a mirror and recognized by the camera.
- the predicted depth for reflected opaque surfaces may correspond to the distance to the opaque surfaces perceived when the opaque surfaces are perceived to be located behind the reflecting surface.
- the first depth map obtained in step 220 may have a depth value corresponding to the depth to the wall shown in FIG. 4 with respect to the position of the reflective surface
- the second depth map obtained in step 230 may have The position of the reflective surface may have a depth value corresponding to the depth to the reflective surface shown in FIG. 4.
- the depth map generated in step 240 may have both a depth value corresponding to the depth to the wall and a depth value corresponding to the depth to the reflective surface with respect to the position of the reflective surface.
- the depth to an opaque surface reflected by a reflective surface can be predicted by considering the opaque surface to be at a position symmetrical with respect to the surface on which the mirror is present from the position recognized by the camera.
- FIG. 5 shows a depth recognition method when a transparent surface exists according to an embodiment of the present disclosure.
- depth values for objects may be expressed as depth difference values for grid points.
- depth values can be set for specified points on the horizontal axis representing a location, and the depth value for one of the specified points on the horizontal axis may be set to the specified values on the vertical axis representing the location and depth of that point.
- intersecting grids it can be expressed by the difference between the corresponding depth value and the depth value of the nearest grid. If there is both a surface of a translucent object and a surface of an opaque object that is visible through the translucent (or transparent) object for a single position value, there may be two depth values for that single position value.
- the scene may be represented as a set of fronto-parallel planes.
- Front-parallel planes can be represented by transverse lines in Figure 5.
- Front-parallel planes may have a value (i.e., depth probability volume) that represents the probability of occupancy by an object at a particular point.
- depth probability volume i.e., depth probability volume
- a depth shift volume can be used for non-fronto-parallel planes.
- the values of the depth translation volume can provide translation values for moving the corresponding front parallel plane point to the surface of the actual object.
- a transparency/reflectivity volume can assign transparency and reflection coefficients to corresponding elements of the depth probability volume.
- An expression method such as that in Figure 5 may be suitable for complex scenes.
- the scheme of Figure 5 may not provide an appropriate representation when there are two actual planes between two adjacent front-parallel planes, but this problem can be solved by increasing the number of front-parallel planes.
- a feature extractor using machine learning may be used to obtain a depth probability volume, a depth translation volume, and a transparent/reflective volume from at least one image.
- the depth expression method using front-parallel planes as shown in FIG. 5 is used not only when a translucent (or transparent) object exists in the scene, but also when a reflective object exists in the scene and a translucent object in the scene. And it may be applicable even when no reflective object exists.
- Figure 6 shows a depth recognition method for a reflective surface according to an embodiment of the present disclosure.
- the reflective surface 610 e.g., the front of a mirror
- an opaque plane 620 e.g., a table
- the electronic device 100 may A line (intersection line) 630 where 610) and the plane 620 intersect can be identified.
- the electronic device 100 determines a depth value for the position of the intersection line 630, and converts the depth value for the location of the intersection line 630 into a depth value for the surface of the reflective object (i.e., the reflective surface 610). can be decided.
- the depth value for the reflective object of the second depth map obtained in step 230 can be determined.
- Figure 7 shows a depth recognition method for a reflective surface according to an embodiment of the present disclosure.
- the reflective surface 710 e.g., the front of a mirror
- the opaque plane 720 e.g., the surface of a wall
- the electronic device 100 determines the depth value for the plane 720. can be determined, and the depth value for the plane 720 can be determined as the depth value for the reflective surface 710.
- the thickness of a reflective object such as a mirror is typically very thin, so the depth value for the plane 720 is applied to the reflective surface 710.
- the depth value for the reflective surface 710 can be easily determined with a small error. Through this method, the depth value for the reflective object of the second depth map obtained in step 230 can be determined.
- FIG. 8A, 8B, and 8C show example depth maps when there is a semi-transparent object in the scene.
- Figure 8a shows an image (e.g. an RGB image) for a scene.
- the scene may include a translucent object 800, such as a translucent door.
- Figure 8B shows a first depth map for the scene.
- the first depth map may include a depth value for at least one object or at least one surface seen through the semi-transparent object 800.
- Figure 8C shows a second depth map for the scene.
- the second depth map may include a depth value for the semi-transparent object 800 or the surface of the semi-transparent object 800.
- the electronic device 100 may generate a depth map with a plurality of depth values for the area of the semi-transparent object 800 from the first depth map and the second depth map.
- the generated depth map may correspond to the depth map generated in step 240.
- Figure 9A, 9B, and 9C show example depth maps when reflective objects are present in the scene.
- Figure 9a shows an image (e.g. RGB image) for a scene.
- the scene may include reflective objects 900, such as mirrors.
- Figure 9B shows a first depth map for the scene.
- the first depth map may include a depth value for at least one object or at least one surface reflected by the reflective object 900.
- Figure 9C shows a second depth map for the scene.
- the second depth map may include a depth value for the reflective object 900 or the surface of the reflective object 900.
- the electronic device 100 may generate a depth map having a plurality of depth indices for the area of the reflective object 900 from the first depth map and the second depth map.
- the generated depth map may correspond to the depth map generated in step 240.
- FIG. 10 illustrates an example depth perception and reconstructed 3D environment when there is a semi-transparent object in the scene according to an embodiment of the present disclosure.
- the user can detect the translucent object 1000 and the background of the translucent object 1000 through the electronic device 100. It is possible to recognize the depth of surfaces or objects seen through the translucent object 1000.
- a 3D environment reconstructed based on a depth recognition method according to an embodiment of the present disclosure can reconstruct and represent a semi-transparent object (e.g., through a mesh) and surfaces or objects visible through the semi-transparent object.
- FIG. 11 illustrates an example depth perception and reconstructed 3D environment when reflective objects are present in a scene according to an embodiment of the present disclosure.
- the user can use the electronic device 100 to detect the reflection object 1100 and the reflection object 1100. You can recognize the depth of surfaces or objects that are visible.
- a 3D environment reconstructed based on a depth recognition method according to an embodiment of the present disclosure may reconstruct and represent a reflective object (eg, through a mesh) and surfaces or objects reflected by the reflective object.
- the efficiency of spatial recognition and movement path setting of devices can be improved in an environment containing translucent or reflective objects.
- the possibility of collision with translucent or reflective objects of flying devices such as drones can be reduced.
- Users can more easily reconstruct the real environment into a 3D environment by using the camera.
- users can more easily interact with translucent or reflective objects.
- both reflective objects and objects reflected on reflective objects can be expressed effectively.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
깊이 맵을 생성하기 위한 방법이 제공된다. 상기 방법은 반사(reflective) 오브젝트 또는 반투명(semi-transparent) 오브젝트를 포함하는 장면에 대한 적어도 하나의 이미지를 획득하는 단계; 상기 적어도 하나의 이미지로부터 상기 반사 오브젝트에 의해 반사되거나 또는 상기 반투명 오브젝트를 통과하여 보여지는 적어도 하나의 불투명 오브젝트에 대한 깊이 값을 포함하는 제1 깊이 맵을 획득하는 단계; 상기 적어도 하나의 이미지로부터 상기 반사 오브젝트 또는 상기 반투명 오브젝트에 대한 깊이 값을 포함하는 제2 깊이 맵을 획득하는 단계; 및 상기 획득된 제1 깊이 맵 및 상기 획득된 제2 깊이 맵에 기초하여 상기 장면에 대한 깊이 맵을 생성하는 단계를 포함한다. 상기 생성된 깊이 맵은 상기 반사 오브젝트 또는 상기 반투명 오브젝트에 대한 깊이 값 및 상기 반사 오브젝트에 의해 반사되거나 또는 상기 반투명 오브젝트를 통과하여 보여지는 상기 적어도 하나의 불투명 오브젝트에 대한 깊이 값을 포함한다.
Description
본 개시는 깊이 맵(depth map)을 생성하기 위한 방법 및 장치에 관련된다. 구체적으로, 본 개시는 장면 내에 반사 오브젝트(reflective object) 또는 반투명(semi-transparent) 오브젝트가 존재하는 경우에 깊이 맵을 생성하는 것에 관련된다.
3차원(3D) 환경 재구성은 증강 현실(AR: augmented reality), 가상 현실(VR: virtual reality), 로보틱스, 자동 주행(autonomous driving) 및 메타버스(Metaverse) 등의 분야에서 널리 이용된다.
깊이 인식(perception)은 3D 환경 재구성을 가능하게 하는 필수적인 기술이다. 기존의 깊이 인식 방법은 장면 내에 반사 오브젝트(또는 반사 표면) 또는 반투명 오브젝트가 존재하는 경우 적절하게 동작하지 못할 수 있다.
도 12a 및 도 12b는 관련 기술에 따른, 장면 내에 반투명 오브젝트가 존재하는 경우의 깊이 인식 및 재구성된 3D 환경을 나타낸다. 장면 내에 반투명 오브젝트(1200)가 존재하는 경우, 도 12a에 도시된 바와 같이 반투명 오브젝트(1200)가 인식되지 않을 수 있으며, 따라서, 재구성된 3D 환경 내에 반투명 오브젝트가 존재하지 않을 수 있다. 그렇지 않으면, 도 12b에 도시된 바와 같이 반투명 오브젝트의 배후의 오브젝트들이 인식되지 않을 수 있다. 따라서, 재구성된 3D 환경 내에 반투명 오브젝트 (1200) 배후의 오브젝트들이 존재하지 않을 수 있다.
도 13은 관련 기술에 따른, 장면 내에 반사 오브젝트(1300)가 존재하는 경우의 깊이 인식 및 재구성된 3D 환경을 나타낸다. 장면 내에 반사 오브젝트(1300)가 존재하는 경우, 도 13에 도시된 바와 같이 반사 오브젝트에 의해 반사되어 표시되는 오브젝트들이 반사 오브젝트(1300)의 배후에 존재하는 것으로 인식될 수 있다. 따라서, 재구성된 3D 환경 내에는 반사 오브젝트(1300)의 전면에 위치한 오브젝트들이 반사 오브젝트들의 후면에도 부적절하게 위치될 수 있다.
관련 기술에서, 반투명 오브젝트 또는 반사 오브젝트가 장면 내에 존재하는 경우, 반투명 오브젝트 또는 반사 오브젝트에 의해 반사된 오브젝트는 재구성된 3D 환경에서 적절하게 인식되지 않을 수 있다.
본 개시의 일 실시예에 따르면, 깊이 맵을 생성하기 위한 방법이 제공된다. 상기 방법은 반사(reflective) 오브젝트 또는 반투명(semi-transparent) 오브젝트를 포함하는 장면에 대한 적어도 하나의 이미지를 획득하는 단계를 포함할 수 있다. 상기 방법은 상기 적어도 하나의 이미지로부터 상기 반사 오브젝트에 의해 반사되거나 또는 상기 반투명 오브젝트를 통과하여 보여지는 적어도 하나의 불투명 오브젝트에 대한 깊이 값을 포함하는 제1 깊이 맵을 획득하는 단계를 포함할 수 있다. 상기 방법은 상기 적어도 하나의 이미지로부터 상기 반사 오브젝트 또는 상기 반투명 오브젝트에 대한 깊이 값을 포함하는 제2 깊이 맵을 획득하는 단계를 포함할 수 있다. 상기 방법은 상기 획득된 제1 깊이 맵 및 상기 획득된 제2 깊이 맵에 기초하여 상기 장면에 대한 깊이 맵을 생성하는 단계를 포함할 수 있다. 상기 생성된 깊이 맵은 상기 반사 오브젝트 또는 상기 반투명 오브젝트에 대한 깊이 값 및 상기 반사 오브젝트에 의해 반사되거나 또는 상기 반투명 오브젝트를 통과하여 보여지는 상기 적어도 하나의 불투명 오브젝트에 대한 깊이 값을 포함할 수 있다.
상기 제2 깊이 맵을 획득하는 단계는 상기 장면이 상기 반사 오브젝트를 포함하고, 그리고 상기 반사 오브젝트가 불투명한 면 위에 수직으로 배치되는 것에 기초하여, 상기 불투명한 면과 상기 반사 오브젝트의 면의 교차선(intersection line)을 식별하는 단계를 포함할 수 있다. 상기 제2 깊이 맵을 획득하는 단계는 상기 교차선의 깊이 값을 결정하는 단계를 포함할 수 있다. 상기 제2 깊이 맵을 획득하는 단계는 상기 교차선의 깊이 값을 상기 반사 오브젝트의 면에 대한 깊이 값으로 결정하는 단계를 포함할 수 있다.
상기 제2 깊이 맵을 획득하는 단계는 상기 장면이 상기 반사 오브젝트를 포함하고, 그리고 상기 반사 오브젝트가 불투명한 면 위에 평행하게 배치되는 것에 기초하여, 상기 불투명한 면의 깊이 값을 결정하는 단계를 포함할 수 있다. 상기 제2 깊이 맵을 획득하는 단계는 상기 불투명한 면의 깊이 값을 상기 반사 오브젝트의 면에 대한 깊이 값으로 결정하는 단계를 포함할 수 있다.
상기 제1 깊이 맵을 획득하는 단계는 상기 반사 오브젝트에 의해 반사되거나 또는 상기 반투명 오브젝트를 통과하여 보여지는 상기 적어도 하나의 불투명 오브젝트에 대한 깊이 값을 포함하지 않는 제3 깊이 맵을 생성하는 단계를 포함할 수 있다. 상기 제1 깊이 맵을 획득하는 단계는 상기 반사 오브젝트에 의해 반사되거나 또는 상기 반투명 오브젝트를 통과하여 보여지는 상기 불투명 오브젝트에 대한 깊이 값을 추정하는 단계를 포함할 수 있다. 상기 제1 깊이 맵을 획득하는 단계는 상기 제3 깊이 맵에 상기 적어도 하나의 불투명 오브젝트에 대한 추정된 깊이 값을 합성하는 단계를 포함할 수 있다.
상기 제1 깊이 맵을 획득하는 단계는 상기 장면에 대한 RGB 프레임들의 시퀀스로부터 적어도 하나의 불투명 오브젝트에 대한 깊이 맵을 예측하는 단계를 포함할 수 있다. 상기 제1 깊이 맵을 획득하는 단계는 상기 반사 오브젝트 및 상기 적어도 하나의 불투명 오브젝트에 기초하여 상기 적어도 하나의 불투명 오브젝트에 대한 깊이 값을 예측하는 단계를 포함할 수 있다. 상기 제1 깊이 맵을 획득하는 단계는 상기 적어도 하나의 불투명 오브젝트에 대한 상기 예측된 깊이 값과 상기 예측된 깊이 맵을 합성하는 단계를 포함할 수 있다.
상기 제2 깊이 맵을 획득하는 단계는 상기 반사 오브젝트 또는 상기 반투명 오브젝트에 대한 깊이 값을 포함하지 않는 제4 깊이 맵을 생성하는 단계를 포함할 수 있다. 상기 제2 깊이 맵을 획득하는 단계는 상기 반사 오브젝트 또는 상기 반투명 오브젝트에 대한 깊이 값을 추정하는 단계를 포함할 수 있다. 상기 제2 깊이 맵을 획득하는 단계는 상기 제4 깊이 맵에 상기 반사 오브젝트 또는 상기 반투명 오브젝트에 대해 추정된 깊이 값을 합성하는 단계를 포함할 수 있다.
상기 방법은 상기 생성된 깊이 맵에 기반하여 상기 장면에 대한 3차원(3D) 환경을 재구성하는 단계를 더 포함할 수 있다.
상기 적어도 하나의 이미지는 RGB-D 이미지를 포함할 수 있다.
본 개시의 일 실시예에 따르면, 깊이 맵을 생성하기 위한 전자 장치가 제공된다. 상기 전자 장치는 메모리 및 상기 메모리에 연결된 제어기를 포함할 수 있다. 상기 제어기는 반사(reflective) 오브젝트 또는 반투명(semi-transparent) 오브젝트를 포함하는 장면에 대한 적어도 하나의 이미지를 획득하도록 구성될 수 있다. 상기 제어기는 상기 적어도 하나의 이미지로부터 상기 반사 오브젝트에 의해 반사되거나 또는 상기 반투명 오브젝트를 통과하여 보여지는 적어도 하나의 불투명 오브젝트에 대한 깊이 값을 포함하는 제1 깊이 맵을 획득하도록 구성될 수 있다. 상기 적어도 하나의 이미지로부터 상기 반사 오브젝트 또는 상기 반투명 오브젝트에 대한 깊이 값을 포함하는 제2 깊이 맵을 획득하도록 구성될 수 있다. 상기 제어기는 상기 획득된 제1 깊이 맵 및 상기 획득된 제2 깊이 맵에 기초하여 상기 장면에 대한 깊이 맵을 생성하도록 구성될 수 있다. 상기 생성된 깊이 맵은 상기 반사 오브젝트 또는 상기 반투명 오브젝트에 대한 깊이 값 및 상기 반사 오브젝트에 의해 반사되거나 또는 상기 반투명 오브젝트를 통과하여 보여지는 상기 적어도 하나의 불투명 오브젝트에 대한 깊이 값을 포함할 수 있다.
본 개시의 일 실시예에 따르면, 깊이 맵(depth map)을 생성하기 위한 명령들을 저장하는 비-일시적 컴퓨터-판독가능 저장 매체를 개시한다. 상기 명령들은 전자 장치의 제어기에 의해 실행될 때, 상기 전자 장치가 동작들을 실행하도록 할 수 있다. 상기 동작들은 반사(reflective) 오브젝트 또는 반투명(semi-transparent) 오브젝트를 포함하는 장면에 대한 적어도 하나의 이미지를 획득하는 것을 포함할 수 있다. 상기 동작들은 상기 적어도 하나의 이미지로부터 상기 반사 오브젝트에 의해 반사되거나 또는 상기 반투명 오브젝트를 통과하여 보여지는 적어도 하나의 불투명 오브젝트에 대한 깊이 값을 포함하는 제1 깊이 맵을 획득하는 것을 포함할 수 있다. 상기 동작들은 상기 적어도 하나의 이미지로부터 상기 반사 오브젝트 또는 상기 반투명 오브젝트에 대한 깊이 값을 포함하는 제2 깊이 맵을 획득하는 것을 포함할 수 있다. 상기 동작들은 상기 획득된 제1 깊이 맵 및 상기 획득된 제2 깊이 맵에 기초하여 상기 장면에 대한 깊이 맵을 생성하는 것을 포함할 수 있다. 상기 생성된 깊이 맵은 상기 반사 오브젝트 또는 상기 반투명 오브젝트에 대한 깊이 값 및 상기 반사 오브젝트에 의해 반사되거나 또는 상기 반투명 오브젝트를 통과하여 보여지는 상기 적어도 하나의 불투명 오브젝트에 대한 깊이 값을 포함할 수 있다.
본 개시에 따른 3D 환경 재구성 및 깊이 인식을 위한 방법에 따르면, 디바이스들의 공간 인식 및 이동 경로 구성의 효율이 향상될 수 있다. 추가적으로, 사용자는 카메라를 이용하여 실제 환경을 3D 환경으로 보다 용이하게 재구성할 수 있다. AR 환경에서, 반사 오브젝트 및 반사 오브젝트에 반사된 이후 보여지는 오브젝트가 효율적으로 표현될 수 있다.
도 1은 본 개시의 일 실시예에 따른 전자 장치의 블록도를 나타낸다.
도 2는 본 개시의 일 실시예에 따른 깊이 맵을 생성하기 위한 방법에 대한 흐름도를 나타낸다.
도 3은 본 개시의 일 실시예에 따른 장면을 재구성하기 위한 프로세스를 나타낸다.
도 4는 본 개시의 일 실시예에 따른 반사면이 존재하는 경우의 깊이 인식 방법을 나타낸다.
도 5는 본 개시의 일 실시예에 따른 반투명 표면이 존재하는 경우 대한 깊이 인식 방법을 나타낸다.
도 6은 본 개시의 일 실시예에 따른 반사면에 대한 깊이 인식 방법을 나타낸다.
도 7은 본 개시의 일 실시예에 따른 반사면에 대한 깊이 인식 방법을 나타낸다.
도 8a, 도 8b 및 도 8c는 장면 내에 반투명 오브젝트가 존재하는 경우의 예시적인 깊이 맵을 나타낸다.
도 9a, 도 9b 및 도 9c는 장면 내에 반사 오브젝트가 존재하는 경우의 예시적인 깊이 맵을 나타낸다.
도 10은 본 개시의 일 실시예에 따른 장면 내에 반투명 오브젝트가 존재하는 경우의 예시적인 깊이 인식 및 재구성된 3D 환경을 나타낸다.
도 11은 본 개시의 일 실시예에 따른 장면 내에 반사 오브젝트가 존재하는 경우의 예시적인 깊이 인식 및 재구성된 3D 환경을 나타낸다.
도 12a 및 도 12b는 관련 기술에 따른, 장면 내에 반투명 오브젝트가 존재하는 경우의 깊이 인식 및 재구성된 3D 환경을 나타낸다.
도 13은 관련 기술에 따른, 장면 내에 반사 오브젝트가 존재하는 경우의 깊이 인식 및 재구성된 3D 환경을 나타낸다.
이하 첨부된 도면을 참조하여 본 개시의 바람직한 실시 예에 대한 동작 원리를 상세히 설명한다. 도면상에 표시된 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 참조번호로 나타내었으며, 다음에서 본 개시를 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 개시의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 개시에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
본 개시는 다양한 변경을 가할 수 있고 여러 가지 실시 예들을 가질 수 있는 바, 특정 실시 예들을 도면들에 예시하여 상세하게 설명한다. 그러나, 이는 본 개시를 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 개시의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
또한, 본 명세서에서 명백하게 다른 내용을 지시하지 않는 “한”과, “상기”와 같은 단수 표현들은 복수 표현들을 포함한다는 것이 이해될 수 있을 것이다. 따라서, 일 예로, “컴포넌트 표면(component surface)”은 하나 혹은 그 이상의 컴포넌트 표면들을 포함한다.
또한, 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 개시의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
또한, 본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 개시를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
또한, 본 개시의 실시 예들에서, 별도로 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 개시의 실시 예에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
도 1은 본 개시의 일 실시예에 따른 전자 장치의 블록도를 나타낸다. 전자 장치(100)는 제어기(110) 및 메모리(120)를 포함할 수 있다. 전자 장치(100)는 스마트폰, PDA(personal digital assistance), 개인용 컴퓨터, AR 디바이스, VR 디바이스 또는 이들의 조합일 수 있으나, 이에 한정되는 것은 아니다. 전자 장치(100)는 본 개시를 통해 설명되는 동작들을 실행할 수 있는 연산 능력을 가진 임의의 장치일 수 있다.
제어기(110)는 적어도 하나의 프로세서를 통해 구현될 수 있다. 제어기(110)는 적어도 하나의 프로세서로 지칭될 수도 있다. 제어기(110)는 전자 장치(100)에 포함된 다른 엘리먼트들과 연결되어 다른 엘리먼트들의 동작을 제어할 수 있다. 제어기(110)는 다른 엘리먼트들의 동작을 제어함으로써 전자 장치(100)가 동작들을 수행하도록 할 수 있다. 전자 장치(100)에 의해 수행되는 동작들은 실질적으로 제어기(110)에 의해 수행되는 것으로 해석될 수도 있다.
메모리(120)는 정보의 전송을 위한 매체와 구별될 수 있도록 '비-일시적 컴퓨터-판독가능 저장 매체(non-transitory computer readable storage medium)'로서 지칭될 수 있다. 메모리(120)는 RAM(random access memory), ROM(read-only memory), 하드 디스크, CD-ROM, SSD(solid state drive) 중 적어도 하나를 통하여 구현될 수 있으나, 반드시 이에 한정되는 것은 아니며 정보를 저장 및 판독할 수 있는 가능한 모든 종류의 저장 매체를 통해 구현될 수 있다. 메모리(120)는 제어기(110)에 의해 실행 가능한 명령들을 저장할 수 있다. 명령들이 제어기(110)에 의해 실행되는 경우 제어기(110)(또는 전자 디바이스(100))는 본 개시에서 설명되는 전자 디바이스(100)의 동작들 중 적어도 하나를 실행할 수 있다. 메모리(120)는 제어기(110)의 동작을 위해 필요한 일시적 또는 영구적 데이터를 더 저장할 수도 있다.
일 실시예에 따르면, 전자 장치(100)는 카메라(130) 디스플레이(140) 및 송수신기(150) 중 적어도 하나를 더 포함할 수도 있다.
카메라(130)는 이미지를 촬영하기 위한 카메라 또는 깊이 정보를 획득하기 위한 카메라일 수 있다. 깊이 정보를 획득하기 위한 카메라는 스테레오 방식, ToF(time of flight) 방식, 또는 구조화된 패턴(structured pattern) 방식을 이용하여 장면에 대한 깊이 정보를 획득할 수 있다. 일 실시예에 따르면, 카메라(130)는 장면에 대한 RGB 이미지와 깊이 정보를 모두 획득할 수 있는 RGB-D 카메라일 수 있다. 전자 장치(100)는 복수의 카메라들을 포함할 수도 있다. 복수의 카메라들은 복수의 RGB-depth(RGB-D) 카메라들이거나, 하나 이상의 이미지를 촬영하기 위한 카메라와 하나 이상의 깊이 정보를 획득하기 위한 카메라의 조합일 수 있다.
디스플레이(140)는 제어기(110)의 제어에 기초하여 이미지를 표시할 수 있다. 예를 들어, 디스플레이(140)는 카메라(130)를 이용하여 획득된 이미지를 표시할 수 있다. 만약, 전자 장치(100)가 AR 디바이스 또는 VR 디바이스인 경우, 디스플레이(140)는 재구성된 3D 환경을 디스플레이할 수도 있다.
송수신기(150)는 통신을 위해 필요한 회로(즉, 통신 회로(communication circuitry))를 포함할 수 있다. 전자 장치(100)는 송수신기(150)를 통해 다른 장치와 통신을 수행할 수 있다. 송수신기(150)는 LTE(long term evolution), LTE-A(LTE-Advanced), CDMA(code division multiple access), OFDM(orthogonal frequency division multiplexing), 블루투스, 등과 같은 다양한 무선 액세스 기술들 중 적어도 하나를 지원할 수 있으며, 반드시 이에 한정되는 것은 아니다. 송수신기(150)는 알려진 임의의 무선 액세스 기술들을 이용하여 전자 장치(100)에 대해 통신 기능을 제공할 수 있다.
도 2는 본 개시의 일 실시예에 따른 깊이 맵을 생성하기 위한 방법에 대한 흐름도를 나타낸다. 도 2를 통해 설명되는 동작들은 전자 장치(100)에 의해 실행될 수 있다.
전자 장치(100)는 반사 오브젝트 또는 반투명 오브젝트를 포함하는 장면에 대한 적어도 하나의 이미지를 획득할 수 있다 (210). 전자 장치(100)는 전자 장치(100)에 포함된 카메라(130)를 이용하여 적어도 하나의 이미지를 획득하거나, 다른 장치로부터 송수신기(150)를 이용하여 적어도 하나의 이미지를 수신할 수 있다. 일 실시예에 따르면, 적어도 하나의 이미지는 RGB 이미지 프레임들의 시퀀스 일 수 있다. 일 실시예에 따르면, 적어도 하나의 이미지는 장면에 대한 RGB 이미지, 장면에 대한 깊이 정보를 나타내는 깊이 이미지, 또는 이들의 조합일 수 있다. 일 실시예에 따르면, 적어도 하나의 이미지는 상이한 위치들에서 획득된 복수의 이미지들을 포함할 수 있다.
전자 장치(100)는 적어도 하나의 이미지로부터 반사 오브젝트에 의해 반사되거나 또는 반투명 오브젝트를 통과하여 보여지는 적어도 하나의 불투명 오브젝트에 대한 깊이 값을 포함하는 제1 깊이 맵을 획득할 수 있다 (220). 제1 깊이 맵은 적어도 반사 오브젝트에 의해 반사되거나 또는 반투명 오브젝트를 통과하여 보여지는 적어도 하나의 불투명 오브젝트의 실제의 위치에 대응하는 깊이 갚을 포함할 수 있다. 적어도 하나의 이미지가 깊이 이미지를 포함하는 경우 제1 깊이 맵은 깊이 이미지로부터 획득될 수 있다. 적어도 하나의 이미지가 깊이 이미지를 포함하지 않는 경우, 스테레오 방식을 이용하거나, 이미지로부터 깊이 맵을 획득하도록 트레이닝된 머신 러닝(예를 들어, RNN: regression neural network)을 이용하여, 제1 깊이 맵은 적어도 하나의 이미지로부터 획득될 수 있다.
전자 장치(100)는 적어도 하나의 이미지로부터 반사 오브젝트 또는 반투명 오브젝트에 대한 깊이 값을 포함하는 제2 깊이 맵을 획득할 수 있다 (230). 적어도 하나의 이미지가 깊이 이미지를 포함하는 경우 제2 깊이 맵은 깊이 이미지로부터 획득될 수 있다. 적어도 하나의 이미지가 깊이 이미지를 포함하지 않는 경우, 스테레오 방식을 이용하거나, 이미지로부터 깊이 맵을 획득하도록 트레이닝된 머신 러닝(예를 들어, RNN(regression neural network))을 이용하여, 제2 깊이 맵은 적어도 하나의 이미지로부터 획득될 수 있다. 제2 깊이 맵을 획득하기 위해 전자 장치(100)는 반사 오브젝트 또는 반투명 오브젝트를 식별하고, 식별된 반사 오브젝트 또는 식별된 반투명 오브젝트의 표면에 대해 대응하는 깊이 값을 할당할 수 있다. 일 실시예에 따르면, 반사 오브젝트 또는 반투명 오브젝트는 적어도 하나의 이미지에 머신 러닝(예를 들어, RNN(regression neural network))을 적용하여 식별될 수 있다.
전자 장치(100)는 획득된 제1 깊이 맵 및 획득된 제2 깊이 맵에 기초하여 장면에 대한 깊이 맵을 생성할 수 있다 (240). 생성된 깊이 맵은 상기 반사 오브젝트 또는 상기 반투명 오브젝트 상의 제1 지점에 대한 깊이 값 및 상기 반사 오브젝트의 상기 제1 지점에 반사되거나 아니면 상기 반투명 오브젝트의 상기 제1 지점을 통과하여 보여지는 불투명 오브젝트 상의 제2 지점에 대한 깊이 값을 포함할 수 있다. 이와 같이 생성된 깊이 맵은 장면에 포함된 반투명 오브젝트 또는 반사 오브젝트에 대한 깊이 값과 반투명 오브젝트를 통과하여 보여지거나 또는 반사 오브젝트에 반사되어 보여지는 불투명 오브젝트에 대한 깊이 값을 모두 포함한다. 이를 통해 본 개시의 전자 디바이스(100)는 장면이 반사 오브젝트 또는 반투명 오브젝트를 포함하는 경우에도, 장면의 실제 구성이 효과적으로 반영된 깊이 맵을 생성할 수 있다.
일 실시예에 따르면, 전자 장치(100)는 단계 240에서 생성된 깊이 맵에 기초하여 장면에 대한 3D 환경을 구성할 수 있다. 전자 장치(100)는 구성된 3D 환경에 대한 이미지를 다른 디바이스로 전송하거나, 전자 장치(100)가 디스플레이(140)를 포함하는 경우, 구성된 3D 환경에 대한 이미지를 디스플레이할 수 있다.
도 3은 본 개시의 일 실시예에 따른 장면을 재구성하기 위한 프로세스를 나타낸다. 도 3의 프로세스는 전자 장치(100)에 의해 실행될 수 있다.
전자 장치(100)는 장면에 대한 RGB 프레임들의 시퀀스로부터 제1 깊이 맵을 예측할 수 있다 (310). RGB 프레임들의 시퀀스는 적어도 하나의 이미지로 지칭될 수 있다. 일 실시예에 따르면, 제1 깊이 맵은 RGB 프레임들의 시퀀스뿐만 아니라, 깊이 이미지 또는 깊이 이미지와 RGB 이미지의 조합으로부터 획득될 수도 있다. 예측된 제1 깊이 맵은 반사 오브젝트에 의해 반사된 오브젝트 또는 반투명 오브젝트를 통과하여 보여지는 오브젝트에 대한 깊이 정보를 포함하지 않을 수 있다.
전자 장치(100)는 장면에 대해 라벨 예측을 수행할 수 있다 (340). 해당 동작에서 장면에 포함된 오브젝트들 각각에 대한 라벨링이 수행될 수 있다. 일 실시예에서, 라벨링을 통해 장면에 포함된 오브젝트들 중 반사 오브젝트 또는 반투명 오브젝트가 식별될 수 있다. 라벨링을 통해 반사 오브젝트에 의해 반사된 오브젝트 또는 반투명 오브젝트를 통하여 보여지는 오브젝트가 식별될 수 있다.
전자 장치(100)는 장면에 포함된 반사 오브젝트에 의해 반사된 오브젝트에 대한 깊이를 예측 또는 추정할 수 있다 (320). 반사 오브젝트에 의해 반사된 오브젝트에 대한 깊이는 라벨링을 통해 식별된 반사 오브젝트 및 식별된 반사된 오브젝트에 기반하여 예측 또는 추정될 수 있다. 장면이 반투명 오브젝트를 포함하는 경우, 반투명 오브젝트를 통과하여 보여지는 오브젝트에 대한 깊이가 예측될 수 있다.
전자 장치(100)는 동작 310에서 예측된 깊이 제1 깊이 맵에 동작 320에서 예측된 반사 오브젝트에 의해 반사된 오브젝트(또는 반투명 오브젝트를 통과하여 보여지는 오브젝트)에 대해 예측된(또는 추정된) 깊이를 합성할 수 있다 (330). 이와 같은 깊이 합성을 통해 도출된 제1 깊이 맵은 단계 220에서 언급된 제1 깊이 맵에 대응할 수 있다.
전자 장치(100)는 RGB 프레임들의 시퀀스로부터 반사 오브젝트 또는 반투명 오브젝트에 대한 제2 깊이 맵을 예측할 수 있다 (350). 일 실시예에 따르면, 제1 깊이 맵은 RGB 프레임들의 시퀀스뿐만 아니라, 깊이 이미지 또는 깊이 이미지와 RGB 이미지의 조합으로부터 획득될 수도 있다. 예측된 제2 깊이 맵은 반사 오브젝트 또는 반투명 오브젝트에 대한 깊이 정보를 포함하지 않을 수도 있다. 전자 디바이스(100)는 반사 오브젝트 또는 반투명 오브젝트의 깊이를 예측 또는 추정할 수 있다.
전자 장치(100)는 단계 350에서 예측된 깊이 제2 깊이 맵에 반사 오브젝트(또는 반투명 오브젝트)의 깊이를 합성할 수 있다 (360). 이러한 깊이 합성을 통해 도출된 제2 깊이 맵은 단계 230에서 언급되는 제2 깊이 맵에 대응될 수 있다.
전자 장치(100)는 제1 깊이 맵, 제2 깊이 맵 및 예측된 라벨들로부터 메쉬(mesh)들 및 라벨들을 합성할 수 있다 (370). 이러한 합성을 통해 재구성된 장면에 대한 메쉬가 생성될 수 있다. 제1 깊이 맵으로부터 반사 오브젝트에 의해 반사된 오브젝트 또는 반투명 오브젝트를 통과하여 보여지는 오브젝트를 포함하는 불투명 오브젝트에 대한 메쉬가 생성될 수 있다. 제2 깊이 맵으로부터 반사 오브젝트 또는 반투명 오브젝트에 대한 메쉬가 생성될 수 있다. 일 실시예에 따르면, 제1 깊이 맵 및 제2 깊이 맵으로부터 반사 오브젝트 또는 반투명 오브젝트에 대한 깊이 값과 반사 오브젝트에 의해 반사된 오브젝트 또는 반투명 오브젝트를 통과하여 보여지는 오브젝트에 대한 깊이 값을 포함하는 깊이 맵을 생성하고, 생성된 깊이 맵으로부터 반사 오브젝트에 의해 반사된 오브젝트 또는 반투명 오브젝트를 통과하여 보여지는 오브젝트를 포함하는 불투명 오브젝트에 대한 메쉬 및 반사 오브젝트 또는 반투명 오브젝트에 대한 메쉬를 생성할 수 있다. 여기서 생성된 깊이 맵은 단계 240에서 생성된 깊이 맵에 대응할 수 있다.
도 4는 본 개시의 일 실시예에 따른 반사면이 존재하는 경우의 깊이 인식 방법을 나타낸다. 여기서 반사면은 반사 오브젝트의 일 표면을 지칭한다.
전자 장치(100)는 적어도 하나의 이미지로부터 특징들을 추출하고, 추출된 특징들에 기반하여 면들까지의 거리를 결정할 수 있다. 일 실시예에서, 전자 장치(100)는 이를 위해 머신 러닝을 이용한 특징 추출기(feature extractor)를 이용할 수 있다. 우선, 전자 장치(100)는 반사면을 제외한 적어도 하나의 이미지에 포함된 불투명한 표면들까지의 깊이를 예측할 수 있다. 전자 장치(100)는 추출된 특징들에 기반하여 반사면을 식별하고, 반사면까지 깊이를 예측할 수 있다. 일 실시예에 따르면, 반사면까지의 깊이는 반사면에 인접한 불투명 표면에 대한 깊이에 기반하여 예측될 수 있다. 전자 장치(100)는 반사면에 의해 반사됨으로써 인지된 불투명 표면들에 대한 깊이를 예측할 수 있다. 예를 들어, 도 4를 참고하면, 카메라의 촬영 범위를 벗어난 불투명 벽들이 거울에 의해 반사되어 카메라에 의해 인식될 수 있다. 반사된 불투명 표면들에 대해 예측된 깊이는, 불투명 표면들이 반사면의 배후에 위치하는 것으로 인식될 때 인식되는 불투명 표면들까지의 거리에 대응할 수 있다. 일 실시예에 따르면, 단계 220에서 획득된 제1 깊이 맵은 반사면의 위치에 대하여 도 4에서 표시된 벽까지의 깊이에 대응하는 깊이 값을 가질 수 있으며, 단계 230에서 획득된 제2 깊이 맵은 반사면의 위치에 대하여 도 4에서 표시된 반사면까지의 깊이에 대응하는 깊이 값을 가질 수 있다. 단계 240에서 생성된 깊이 맵은 반사면의 위치에 대하여 벽까지의 깊이에 대응하는 깊이 값과 반사면까지의 깊이에 대응하는 깊이 값 모두를 가질 수 있다.
일 실시예에 따르면, 반사면에 의해 반사된 불투명 표면에 대한 깊이는 불투명 표면이 카메라를 통해 인식되는 위치로부터 거울이 존재하는 면에 대하여 대칭인 위치에 존재하는 것으로 간주하여 예측될 수 있다.
도 5는 본 개시의 일 실시예에 따른 투명 표면이 존재하는 경우 대한 깊이 인식 방법을 나타낸다. 도 5의 실시예에 따르면, 오브젝트들에 대한 깊이 값들은 격자 지점들에 대한 깊이의 차이 값으로 표현될 수 있다. 예를 들어, 깊이 값들은 위치를 나타내는 가로 축 상의 지정된 지점들에 대하여 설정될 수 있으며, 가로 축 상의 지정된 지점들 중 하나에 대한 깊이 값은 해당 지점의 위치와 깊이를 나타내는 세로 축 상의 지정된 값들이 교차하는 격자들 중, 해당 깊이 값과 가장 인접한 격자와의 깊이 값의 차이에 의해 표현될 수 있다. 단일의 위치 값에 대해 반투명 오브젝트의 표면과 반투명(또는 투명) 오브젝트에 의해 투과되어 보여지는 불투명한 오브젝트의 표면이 모두 존재하는 경우, 해당 단일의 위치 값에 대하여 2 개의 깊이 값들이 존재할 수 있다.
도 5의 실시예에서 장면은 전면-평행 평면들(fronto-parallel planes)의 세트로서 표현될 수 있다. 전면-평행 평면들은 도 5에서 가로의 선들에 의해 표현될 수 있다. 전면-평행 평면들은 특정한 지점에서의 오브젝트에 의한 점유의 가능성을 나타내는 값(즉, 깊이 확률 볼륨(depth probability volume))을 가질 수 있다. 비-전면-평행(on-fronto-parallel) 평면들에 대하여, 깊이 이동 볼륨(depth shift volume)이 사용될 수 있다. 깊이 이동 볼륨의 값들은 대응하는 전면 평행 평면의 지점을 실제 물체의 표면으로 이동시키기 위한 이동 값을 제공할 수 있다. 투명/반사 볼륨(transparency/reflectivity volume)은 깊이 확률 볼륨의 대응하는 엘리먼트들에 투명도 및 반사 계수를 할당할 수 있다. 도 5에서와 같은 표현 방식은 복잡한 장면들에 적합할 수 있다. 인접한 두 전면-평행 평면들 사이에 두 개의 실제 평면들이 존재하는 경우 도 5의 방식은 적절한 표현을 제공하지 못할 수도 있으나, 이러한 문제는 전면-평행 평면들의 수를 증가시키는 것에 의해 해소될 수 있다.
적어도 하나의 이미지로부터 깊이 확률 볼륨, 깊이 이동 볼륨 및 투명/반사 볼륨을 획득하기 위해 머신 러닝을 이용하는 특징 추출기(feature extractor)가 이용될 수 있다.
일 실시예에 따르면, 도 5에서와 같은 전면-평행 평면들을 이용한 깊이의 표현 방식은 장면 내에 반투명(또는 투명) 오브젝트가 존재하는 경우뿐만 아니라, 장면 내에 반사 오브젝트가 존재하는 경우 및 장면 내에 반투명 오브젝트 및 반사 오브젝트가 존재하지 않는 경우에도 적용 가능할 수 있다.
도 6은 본 개시의 일 실시예에 따른 반사면에 대한 깊이 인식 방법을 나타낸다. 반사면(610)(예를 들어, 거울의 전면)이 불투명한 평면(620)(예를 들어, 테이블) 상에 평면(620)에 대해 수직으로 위치한 경우, 전자 장치(100)는 반사면(610)과 평면(620)이 교차하는 선(교차선)(630)을 식별할 수 있다. 전자 장치(100)는 교차선(630)의 위치에 대한 깊이 값을 결정하고, 교차선(630)의 위치에 대한 깊이 값을 반사 오브젝트의 표면(즉, 반사면(610))에 대한 깊이 값으로 결정할 수 있다. 이와 같은 방법을 통해 단계 230에서 획득된 제2 깊이 맵의 반사 오브젝트에 대한 깊이 값이 결정될 수 있다.
도 7은 본 개시의 일 실시예에 따른 반사면에 대한 깊이 인식 방법을 나타낸다. 반사면(710)(예를 들어, 거울의 전면)이 불투명한 평면(720)(예를 들어, 벽의 표면)에 평행하게 위치한 경우, 전자 장치(100)는 평면(720)에 대한 깊이 값을 결정하고, 평면(720)에 대한 깊이 값을 반사면(710)에 대한 깊이 값으로 결정할 수 있다. 반사면(710)을 포함하는 반사 오브젝트가 평면(720)상에 부착된 경우, 거울과 같은 반사 오브젝트의 두께는 통상적으로 매우 얇으므로, 평면(720)에 대한 깊이 값을 반사면(710)에 대한 깊이 값으로 결정하는 경우 적은 오차와 함께 간편하게 반사면(710)에 대한 깊이 값을 결정할 수 있다. 이와 같은 방법을 통해 단계 230에서 획득된 제2 깊이 맵의 반사 오브젝트에 대한 깊이 값이 결정될 수 있다.
도 8a, 도 8b 및 도 8c는 장면 내에 반투명 오브젝트가 존재하는 경우의 예시적인 깊이 맵을 나타낸다. 도 8a는 장면에 대한 이미지(예를 들어 RGB 이미지)를 나타낸다. 장면은 반투명 문과 같은 반투명 오브젝트(800)를 포함할 수 있다 도 8b는 장면에 대한 제1 깊이 맵을 나타낸다. 제1 깊이 맵은 반투명 오브젝트(800)를 통과하여 보여지는 적어도 하나의 오브젝트 또는 적어도 하나의 표면에 대한 깊이 값을 포함할 수 있다. 도 8c는 장면에 대한 제2 깊이 맵을 나타낸다. 제2 깊이 맵은 반투명 오브젝트(800) 또는 반투명 오브젝트(800)의 표면에 대한 깊이 값을 포함할 수 있다. 일 실시예에 따르면, 전자 장치(100)는 제1 깊이 맵과 제2 깊이 맵으로부터 반투명 오브젝트(800)의 영역에 대하여 복수의 깊이 갚들을 갖는 깊이 맵을 생성할 수 있다. 생성된 깊이 맵은 단계 240에서 생성된 깊이 맵에 대응할 수 있다.
도 9a, 도 9b 및 도 9c는 장면 내에 반사 오브젝트가 존재하는 경우의 예시적인 깊이 맵을 나타낸다. 도 9a는 장면에 대한 이미지(예를 들어 RGB 이미지)를 나타낸다. 장면은 거울과 같은 반사 오브젝트(900)를 포함할 수 있다 도 9b는 장면에 대한 제1 깊이 맵을 나타낸다. 제1 깊이 맵은 반사 오브젝트(900)에 의해 반사되어 보여지는 적어도 하나의 오브젝트 또는 적어도 하나의 표면에 대한 깊이 값을 포함할 수 있다. 도 9c는 장면에 대한 제2 깊이 맵을 나타낸다. 제2 깊이 맵은 반사 오브젝트(900) 또는 반사 오브젝트(900)의 표면에 대한 깊이 값을 포함할 수 있다. 일 실시예에 따르면, 전자 장치(100)는 제1 깊이 맵과 제2 깊이 맵으로부터 반사 오브젝트(900)의 영역에 대하여 복수의 깊이 갚들을 갖는 깊이 맵을 생성할 수 있다. 생성된 깊이 맵은 단계 240에서 생성된 깊이 맵에 대응할 수 있다.
도 10은 본 개시의 일 실시예에 따른 장면 내에 반투명 오브젝트가 존재하는 경우의 예시적인 깊이 인식 및 재구성된 3D 환경을 나타낸다. 본 개시의 일 실시예에 따르면, 도 10에서 보여지는 바와 같이, 장면 내에 반투명 오브젝트(1000)가 존재하는 경우 사용자는 전자 장치(100)를 통해 반투명 오브젝트(1000)와 반투명 오브젝트(1000)의 배후에 위치하여 반투명 오브젝트(1000)를 투과하여 보여지는 표면들 또는 오브젝트들에 대한 깊이를 인식할 수 있다. 본 개시의 일 실시예에 따른 깊이 인식 방법에 기반하여 재구성된 3D 환경은 (예를 들어, 메쉬를 통해) 반투명 오브젝트 및 반투명 오브젝트를 투과하여 보여지는 표면들 또는 오브젝트들을 재구성하고 표현할 수 있다.
도 11은 본 개시의 일 실시예에 따른 장면 내에 반사 오브젝트가 존재하는 경우의 예시적인 깊이 인식 및 재구성된 3D 환경을 나타낸다. 본 개시의 일 실시예에 따르면, 도 11에서 보여지는 바와 같이, 장면 내에 반사 오브젝트(1100)가 존재하는 경우 사용자는 전자 장치(100)를 통해 반사 오브젝트(1100)와 반사 오브젝트(1100)에 반사되어 보여지는 표면들 또는 오브젝트들에 대한 깊이를 인식할 수 있다. 본 개시의 일 실시예에 따른 깊이 인식 방법에 기반하여 재구성된 3D 환경은 (예를 들어, 메쉬를 통해) 반사 오브젝트 및 반사 오브젝트에 반사되어는 표면들 또는 오브젝트들을 재구성하고 표현할 수 있다.
본 개시의 일 실시예에 따른 깊이 인식 및 3D 환경 재구성 방법에 의하면, 반투명 오브젝트 또는 반사 오브젝트를 포함하는 환경 하에서, 로봇 청소기와 같은 디바이스들의 공간 인식 몇 이동 경로 설정의 효율성이 향상될 수 있다. 드론과 같은 비행 디바이스의 반투명 오브젝트 또는 반사 오브젝트에 대한 충돌 가능성을 낮출 수 있다. 사용자는 보다 용이하게 카메라를 이용하여 실제 환경을 3D 환경으로 보다 용이하게 재구성할 수 있다. AR 환경에서 사용자는 반투명 오브젝트 또는 반사 오브젝트와 보다 용이하게 상호작용할 수 있다. AR 환경에서 반사 오브젝트와 반사 오브젝트 상에 반사되어 보여지는 오브젝트가 모두 효과적으로 표현될 수 있다.
한편 본 개시의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 개시의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 개시의 범위는 설명된 실시 예에 국한되어 정해져서는 아니 되며 후술하는 청구범위뿐만 아니라 이 청구범위와 균등한 것들에 의해 정해져야 한다.
Claims (15)
- 깊이 맵(depth map)을 생성하기 위한 방법으로서,반사(reflective) 오브젝트 또는 반투명(semi-transparent) 오브젝트를 포함하는 장면에 대한 적어도 하나의 이미지를 획득하는 단계(210);상기 적어도 하나의 이미지로부터 상기 반사 오브젝트에 의해 반사되거나 또는 상기 반투명 오브젝트를 통과하여 보여지는 적어도 하나의 불투명 오브젝트에 대한 깊이 값을 포함하는 제1 깊이 맵을 획득하는 단계(220);상기 적어도 하나의 이미지로부터 상기 반사 오브젝트 또는 상기 반투명 오브젝트에 대한 깊이 값을 포함하는 제2 깊이 맵을 획득하는 단계(230); 및상기 획득된 제1 깊이 맵 및 상기 획득된 제2 깊이 맵에 기초하여 상기 장면에 대한 깊이 맵을 생성하는 단계(240)를 포함하고,상기 생성된 깊이 맵은 상기 반사 오브젝트 또는 상기 반투명 오브젝트에 대한 깊이 값 및 상기 반사 오브젝트에 의해 반사되거나 또는 상기 반투명 오브젝트를 통과하여 보여지는 상기 적어도 하나의 불투명 오브젝트에 대한 깊이 값을 포함하는,방법.
- 제1 항에 있어서,상기 제2 깊이 맵을 획득하는 단계는:상기 장면이 상기 반사 오브젝트를 포함하고, 그리고 상기 반사 오브젝트가 불투명한 면 위에 수직으로 배치되는 것에 기초하여, 상기 불투명한 면과 상기 반사 오브젝트의 면의 교차선(intersection line)을 식별하는 단계;상기 교차선의 깊이 값을 결정하는 단계; 및상기 교차선의 깊이 값을 상기 반사 오브젝트의 면에 대한 깊이 값으로 결정하는 단계를 포함하는,방법.
- 제1 항 및 제2 항 중 어느 한 항에 있어서,상기 제2 깊이 맵을 획득하는 단계는:상기 장면이 상기 반사 오브젝트를 포함하고, 그리고 상기 반사 오브젝트가 불투명한 면 위에 평행하게 배치되는 것에 기초하여, 상기 불투명한 면의 깊이 값을 결정하는 단계; 및상기 불투명한 면의 깊이 값을 상기 반사 오브젝트의 면에 대한 깊이 값으로 결정하는 단계를 포함하는,방법.
- 제1 항 내지 제3 항 중 어느 한 항에 있어서,상기 제1 깊이 맵을 획득하는 단계는:상기 반사 오브젝트에 의해 반사되거나 또는 상기 반투명 오브젝트를 통과하여 보여지는 상기 적어도 하나의 불투명 오브젝트에 대한 깊이 값을 포함하지 않는 제3 깊이 맵을 생성하는 단계;상기 반사 오브젝트에 의해 반사되거나 또는 상기 반투명 오브젝트를 통과하여 보여지는 상기 불투명 오브젝트에 대한 깊이 값을 추정하는 단계; 및상기 제3 깊이 맵에 상기 적어도 하나의 불투명 오브젝트에 대한 추정된 깊이 값을 합성하는 단계를 포함하는,방법.
- 제1 항 내지 제4 항 중 어느 한 항에 있어서,상기 제1 깊이 맵을 획득하는 단계는:상기 장면에 대한 RGB 프레임들의 시퀀스로부터 적어도 하나의 불투명 오브젝트에 대한 깊이 맵을 예측하는 단계;상기 반사 오브젝트 및 상기 적어도 하나의 불투명 오브젝트에 기초하여 상기 적어도 하나의 불투명 오브젝트에 대한 깊이 값을 예측하는 단계; 및상기 적어도 하나의 불투명 오브젝트에 대한 상기 예측된 깊이 값과 상기 예측된 깊이 맵을 합성하는 단계를 포함하는,방법.
- 제1 항 내지 제5 항 중 어느 한 항에 있어서,상기 제2 깊이 맵을 획득하는 단계는:상기 반사 오브젝트 또는 상기 반투명 오브젝트에 대한 깊이 값을 포함하지 않는 제4 깊이 맵을 생성하는 단계;상기 반사 오브젝트 또는 상기 반투명 오브젝트에 대한 깊이 값을 추정하는 단계; 및상기 제4 깊이 맵에 상기 반사 오브젝트 또는 상기 반투명 오브젝트에 대해 추정된 깊이 값을 합성하는 단계를 포함하는,방법.
- 제1 항 내지 제6 항 중 어느 한 항에 있어서,상기 생성된 깊이 맵에 기반하여 상기 장면에 대한 3차원(3D) 환경을 재구성하는 단계를 더 포함하는,방법.
- 깊이 맵(depth map)을 생성하기 위한 전자 장치(100)로서,명령들을 저장하는 메모리(120); 및상기 메모리에 연결된 제어기(110)를 포함하고, 상기 제어기(110)는:반사(reflective) 오브젝트 또는 반투명(semi-transparent) 오브젝트를 포함하는 장면에 대한 적어도 하나의 이미지를 획득하고,상기 적어도 하나의 이미지로부터 상기 반사 오브젝트에 의해 반사되거나 또는 상기 반투명 오브젝트를 통과하여 보여지는 적어도 하나의 불투명 오브젝트에 대한 깊이 값을 포함하는 제1 깊이 맵을 획득하고,상기 적어도 하나의 이미지로부터 상기 반사 오브젝트 또는 상기 반투명 오브젝트에 대한 깊이 값을 포함하는 제2 깊이 맵을 획득하고, 그리고상기 획득된 제1 깊이 맵 및 상기 획득된 제2 깊이 맵에 기초하여 상기 장면에 대한 깊이 맵을 생성하기 위해 상기 명령들을 실행하도록 구성되고,상기 생성된 깊이 맵은 상기 반사 오브젝트 또는 상기 반투명 오브젝트에 대한 깊이 값 및 상기 반사 오브젝트에 의해 반사되거나 또는 상기 반투명 오브젝트를 통과하여 보여지는 상기 적어도 하나의 불투명 오브젝트에 대한 깊이 값을 포함하는,전자 장치.
- 제8 항에 있어서,상기 제어기는:상기 장면이 상기 반사 오브젝트를 포함하고, 그리고 상기 반사 오브젝트가 불투명한 면 위에 수직으로 배치되는 것에 기초하여, 상기 불투명한 면과 상기 반사 오브젝트의 면의 교차선(intersection line)을 식별하고;상기 교차선의 깊이 값을 결정하고; 그리고상기 교차선의 깊이 값을 상기 반사 오브젝트의 면에 대한 깊이 값으로 결정하기 위해 상기 명령들을 실행하도록 추가로 구성되는,전자 장치.
- 제8 항 및 제9 항 중 어느 한 항에 있어서,상기 제어기는:상기 장면이 상기 반사 오브젝트를 포함하고, 그리고 상기 반사 오브젝트가 불투명한 면 위에 평행하게 배치되는 것에 기초하여, 상기 불투명한 면의 깊이 값을 결정하고; 그리고상기 불투명한 면의 깊이 값을 상기 반사 오브젝트의 면에 대한 깊이 값으로 결정하기 위해 상기 명령들을 실행하도록 추가로 구성되는,전자 장치.
- 제8 항 내지 제10 항 중 어느 한 항에 있어서,상기 제어기는:상기 반사 오브젝트에 의해 반사되거나 또는 상기 반투명 오브젝트를 통과하여 보여지는 상기 적어도 하나의 불투명 오브젝트에 대한 깊이 값을 포함하지 않는 제3 깊이 맵을 생성하고;상기 반사 오브젝트에 의해 반사되거나 또는 상기 반투명 오브젝트를 통과하여 보여지는 상기 적어도 하나의 불투명 오브젝트에 대한 깊이 값을 추정하고; 그리고상기 제3 깊이 맵에 상기 적어도 하나의 불투명 오브젝트에 대한 추정된 깊이 값을 합성하기 위해 상기 명령들을 실행하도록 추가로 구성되는,전자 장치.
- 제8 항 내지 제11 항 중 어느 한 항에 있어서,상기 제어기는:상기 장면에 대한 RGB 프레임들의 시퀀스로부터 적어도 하나의 불투명 오브젝트에 대한 깊이 맵을 예측하는 단계;상기 반사 오브젝트 및 상기 적어도 하나의 불투명 오브젝트에 기초하여 상기 적어도 하나의 불투명 오브젝트에 대한 깊이 값을 예측하는 단계; 및상기 적어도 하나의 불투명 오브젝트에 대한 상기 예측된 깊이 값과 상기 예측된 깊이 맵을 합성하기 위해 상기 명령들을 실행하도록 추가로 구성되는,전자 장치.
- 제8 항 내지 제12 항 중 어느 한 항에 있어서,상기 제어기는:상기 반사 오브젝트 또는 상기 반투명 오브젝트에 대한 깊이 값을 포함하지 않는 제4 깊이 맵을 생성하고;상기 반사 오브젝트 또는 상기 반투명 오브젝트에 대한 깊이 값을 추정하고; 그리고상기 제4 깊이 맵에 상기 반사 오브젝트 또는 상기 반투명 오브젝트에 대해 추정된 깊이 값을 합성하기 위해 상기 명령들을 실행하도록 추가로 구성되는,전자 장치.
- 제8 항 내지 제13 항 중 어느 한 항에 있어서,상기 제어기는 상기 생성된 깊이 맵에 기반하여 상기 장면에 대한 3차원(3D) 환경을 재구성하기 위해 상기 명령들을 실행하도록 추가로 구성되는,전자 장치.
- 깊이 맵(depth map)을 생성하기 위한 명령들을 저장하는 비-일시적 컴퓨터-판독가능 저장 매체로서, 상기 명령들은, 전자 장치(100)의 제어기(110)에 의해 실행될 때, 상기 전자 장치(100)가 청구항 1항 내지 7항 중 어느 한 항의 방법에 따라 동작하도록 하는, 비-일시적 컴퓨터-판독가능 저장 매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US18/235,211 US20240144503A1 (en) | 2022-10-31 | 2023-08-17 | Method and device for generating depth map |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220142637A KR20240061215A (ko) | 2022-10-31 | 2022-10-31 | 깊이 맵을 생성하기 위한 방법 및 장치 |
KR10-2022-0142637 | 2022-10-31 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US18/235,211 Continuation US20240144503A1 (en) | 2022-10-31 | 2023-08-17 | Method and device for generating depth map |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024096248A1 true WO2024096248A1 (ko) | 2024-05-10 |
Family
ID=90930662
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2023/010103 WO2024096248A1 (ko) | 2022-10-31 | 2023-07-14 | 깊이 맵을 생성하기 위한 방법 및 장치 |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR20240061215A (ko) |
WO (1) | WO2024096248A1 (ko) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6241793B2 (ja) * | 2012-12-20 | 2017-12-06 | パナソニックIpマネジメント株式会社 | 3次元測定装置および3次元測定方法 |
KR20190039663A (ko) * | 2016-03-31 | 2019-04-15 | 인텔 코포레이션 | 거울상을 포함하는 시야 내의 증강 현실 |
US10460460B2 (en) * | 2016-05-17 | 2019-10-29 | Wistron Corporation | Method and system for generating depth information |
JP2021056142A (ja) * | 2019-09-30 | 2021-04-08 | ソニーセミコンダクタソリューションズ株式会社 | 測距センサ、信号処理方法、および、測距モジュール |
WO2021215236A1 (ja) * | 2020-04-21 | 2021-10-28 | ソニーグループ株式会社 | 情報処理装置、情報処理方法および記録媒体 |
-
2022
- 2022-10-31 KR KR1020220142637A patent/KR20240061215A/ko unknown
-
2023
- 2023-07-14 WO PCT/KR2023/010103 patent/WO2024096248A1/ko unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6241793B2 (ja) * | 2012-12-20 | 2017-12-06 | パナソニックIpマネジメント株式会社 | 3次元測定装置および3次元測定方法 |
KR20190039663A (ko) * | 2016-03-31 | 2019-04-15 | 인텔 코포레이션 | 거울상을 포함하는 시야 내의 증강 현실 |
US10460460B2 (en) * | 2016-05-17 | 2019-10-29 | Wistron Corporation | Method and system for generating depth information |
JP2021056142A (ja) * | 2019-09-30 | 2021-04-08 | ソニーセミコンダクタソリューションズ株式会社 | 測距センサ、信号処理方法、および、測距モジュール |
WO2021215236A1 (ja) * | 2020-04-21 | 2021-10-28 | ソニーグループ株式会社 | 情報処理装置、情報処理方法および記録媒体 |
Also Published As
Publication number | Publication date |
---|---|
KR20240061215A (ko) | 2024-05-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10679369B2 (en) | System and method for object recognition using depth mapping | |
WO2011093581A2 (ko) | 비전 영상 정보 저장 시스템과 그 방법, 및 상기 방법을 구현하는 프로그램이 기록된 기록매체 | |
WO2023093217A1 (zh) | 数据标注方法、装置、计算机设备、存储介质和程序 | |
WO2018004154A1 (ko) | 혼합현실 디스플레이 장치 | |
CN112907620B (zh) | 相机位姿的估计方法、装置、可读存储介质及电子设备 | |
WO2011087289A2 (en) | Method and system for rendering three dimensional views of a scene | |
CN109618108B (zh) | 电子设备和移动平台 | |
WO2011149159A1 (ko) | 증강현실을 위한 실시간 마커리스 3차원 객체추적 시스템 및 그 방법 | |
WO2021101045A1 (en) | Electronic apparatus and method for controlling thereof | |
US11238604B1 (en) | Densifying sparse depth maps | |
EP3832601A1 (en) | Image processing device and three-dimensional measuring system | |
WO2020071849A1 (ko) | 실측 깊이정보를 이용한 정밀한 360 이미지 제작기법 | |
WO2016186236A1 (ko) | 3차원 오브젝트의 색상 처리 시스템 및 방법 | |
WO2015008932A1 (ko) | 증강현실에서의 원격 협업을 위한 디지로그 공간 생성기 및 그를 이용한 디지로그 공간 생성 방법 | |
WO2014010820A1 (en) | Method and apparatus for estimating image motion using disparity information of a multi-view image | |
WO2015199470A1 (ko) | 머리 착용형 컬러 깊이 카메라를 활용한 손 위치 추정 장치 및 방법, 이를 이용한 맨 손 상호작용 시스템 | |
WO2024096248A1 (ko) | 깊이 맵을 생성하기 위한 방법 및 장치 | |
WO2022025565A1 (en) | System and method for generating bokeh image for dslr quality depth-of-field rendering and refinement and training method for the same | |
CN114529800A (zh) | 一种旋翼无人机避障方法、系统、装置及介质 | |
CN110310325A (zh) | 一种虚拟测量方法、电子设备及计算机可读存储介质 | |
WO2019098421A1 (ko) | 모션 정보를 이용한 객체 복원 장치 및 이를 이용한 객체 복원 방법 | |
WO2021256642A1 (ko) | 평면 정보를 활용한 깊이 영상 추정 방법 및 시스템 | |
WO2021040342A2 (ko) | 2d 이미지를 활용하여 3d 컨텐츠를 생성하는 영상 처리 방법 및 영상 처리 장치 | |
US20240144503A1 (en) | Method and device for generating depth map | |
US20220207832A1 (en) | Method and apparatus for providing virtual contents in virtual space based on common coordinate system |
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: 23885945 Country of ref document: EP Kind code of ref document: A1 |