WO2020251151A1 - 3차원 가상 공간 모델을 이용한 사용자 포즈 추정 방법 및 장치 - Google Patents
3차원 가상 공간 모델을 이용한 사용자 포즈 추정 방법 및 장치 Download PDFInfo
- Publication number
- WO2020251151A1 WO2020251151A1 PCT/KR2020/004685 KR2020004685W WO2020251151A1 WO 2020251151 A1 WO2020251151 A1 WO 2020251151A1 KR 2020004685 W KR2020004685 W KR 2020004685W WO 2020251151 A1 WO2020251151 A1 WO 2020251151A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- information
- user
- space
- pose
- image
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/64—Three-dimensional objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
- G06T7/75—Determining position or orientation of objects or cameras using feature-based methods involving models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/194—Segmentation; Edge detection involving foreground-background segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/20—Scenes; Scene-specific elements in augmented reality scenes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
-
- 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
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/12—Acquisition of 3D measurements of objects
Definitions
- the technical field relates to the generation and utilization of a spatial map, and more specifically, to a method and apparatus for estimating a user's pose in a real space using a 3D virtual space model.
- Methods of estimating a user pose using a spatial map include a method of using a geometry value, a method of using an image value, and a method of using a mixture of a terrain value and an image value.
- point cloud information is acquired using LiDAR or a depth measuring device having a similar operating principle
- image information is acquired using a camera or an image measuring device having a similar operating principle
- Kinect Alternatively, color-point cloud information may be acquired using a depth-image measuring device having a similar operation principle, or a spatial map representing a real space may be constructed by a combination of these.
- Image information, depth information, and depth-image linkage information about a real space may be referred to as'space information'.
- the user pose can be estimated by comparing user information acquired through the user device in real space with a spatial map.
- 'user information' is information including an image acquired through a user device in a real space.
- 'pose' is a concept that includes both position and orientation. Accordingly, the'user pose' may be information including location information obtained by obtaining image data and direction information obtained by obtaining image data for a real space.
- the user pose estimation using a spatial map according to the prior art has the following problems.
- the spatial map may be sensitive to a pose that acquires spatial information. Accordingly, when the spatial map is sensitive to a pose for acquiring spatial information, the accuracy of user pose estimation may be degraded. For example, when spatial information is obtained from all theoretically possible poses and a spatial map is constructed, user pose estimation with high precision is possible.
- the spatial map may not sufficiently represent the real space.
- the path for acquiring the spatial map is changed, the reliability of the spatial map is deteriorated, and the real space cannot be expressed robustly.
- a spatial map that does not strongly express the real space may degrade the accuracy of user pose estimation.
- discontinuous spatial maps may reduce the accuracy of user pose estimation.
- 1 is a diagram illustrating an example of a discontinuous spatial map constructed using point cloud information.
- point cloud information may not be densely acquired according to a spatial information acquisition range and path. If the point cloud information is not obtained densely, a discontinuous spatial map may be generated, which may reduce the accuracy of user pose estimation.
- the accuracy of user pose estimation may be degraded due to a difference between a time point at which spatial information for constructing a spatial map is acquired and a time point at which user information is acquired.
- 2 and 3 are exemplary diagrams illustrating changes in space over time.
- FIG. 2 show examples in which the amount of illumination or light introduced from the outside in the same space is changed over time.
- FIGS. 3A and 3B illustrate examples in which objects are changed according to the passage of time in the same space.
- spatial information for constructing a spatial map for the space shown in FIG. 2 may be obtained through (a), and user information may be obtained in (c).
- spatial information for constructing a spatial map for the space shown in FIG. 3 may be obtained in (a) and user information may be obtained in (b).
- image information may not match due to a difference between a time point at which spatial information is acquired for the same space and a time point at which user information is acquired. Accordingly, the accuracy of user pose estimation may be degraded due to a difference between a time point at which spatial information is acquired and a time point at which user information is acquired for the same space.
- an object of the present invention is to provide a method of estimating a user pose using a 3D virtual space model constructed based on spatial information acquired in a real space and user information acquired by a user.
- a method for estimating a user pose for a 3D space includes the steps of acquiring spatial information including depth information and image data for a 3D space using a depth measuring device and an image acquisition device, and the spatial information Constructing depth-image association information based on, and constructing a 3D virtual space model corresponding to the 3D space based on the depth-image association information, and acquired by a user device in the 3D space.
- Receiving user information including an image generating corresponding information corresponding to the user information in the 3D virtual space model, calculating a similarity between the corresponding information and the user information, and the similarity And estimating a user pose based on the.
- the background area related to the structure of the 3D space and a non-background area corresponding to an object placed in the 3D space are distinguished from the image data of the 3D space, and the It may include constructing the 3D virtual space model using the background area.
- the generating of the correspondence information includes the steps of distinguishing a background area related to the structure of the 3D space and a non-background area corresponding to an object placed in the 3D space in the image included in the user information, and the user information It may include processing the user information using a background area of the included image and generating corresponding information corresponding to the processed user information in the 3D virtual space model.
- the calculating of the similarity may include regenerating the correspondence information in a direction of increasing the similarity, and recalculating the similarity based on the regenerated correspondence information.
- the calculating of the similarity may include extracting a comparison target region for comparing the user information and the correspondence information, and a common region between the comparison target region extracted from the user information and the comparison target region extracted from the correspondence information. And re-generating the user information and the corresponding information based on the common area.
- the calculating of the similarity may include obtaining additional user information about the user device and calculating a similarity based on the user information and the additional user information.
- the user additional information which is additional information used for estimating the user pose
- the user additional information is used together with the user information or the additional user information.
- it may include estimating the user pose.
- the obtaining of the additional user information may include transmitting guide information for obtaining additional user information to the user device based on the 3D virtual space model.
- the guide information includes a user information acquisition pose for a preset feature point in the 3D virtual space model, and the step of obtaining the additional user information may be repeatedly performed in a direction to increase the similarity.
- a method for estimating a user's pose including position and orientation information of a user in a 3D space includes receiving user information including an image acquired in the 3D space. And confirming a 3D virtual space model constructed based on spatial information including depth information and image information for the 3D space, and corresponding to the user information in the 3D virtual space model. And generating correspondence information, calculating a similarity between the correspondence information and the user information, and estimating a user pose based on the similarity.
- the apparatus for estimating a user pose for a 3D space includes a spatial information acquisition unit that acquires spatial information including depth information and image data about the 3D space, and depth-image association information based on the spatial information. And a virtual space model generator that generates a 3D virtual space model corresponding to the 3D space based on the depth-image association information, and an image acquired by a user device in the 3D space.
- a user information receiving unit that receives user information and a user information receiving unit that generates correspondence information corresponding to the user information in the 3D virtual space model, calculates a degree of similarity between the correspondence information and the user information, and poses the user based on the degree of similarity.
- a control unit including at least one processor configured to estimate.
- the spatial model generation unit divides a background area related to the structure of the 3D space and a non-background area corresponding to an object placed in the 3D space from the image data of the 3D space, and uses the background area You can build a 3D virtual space model.
- the controller distinguishes between a background area related to the structure of the 3D space and a non-background area corresponding to an object placed in the 3D space from the image included in the user information, and determines the background area of the image included in the user information.
- a background area related to the structure of the 3D space and a non-background area corresponding to an object placed in the 3D space from the image included in the user information, and determines the background area of the image included in the user information.
- an apparatus for estimating a user's pose including position and orientation information of a user in a 3D space includes spatial information including depth information and image information about the 3D space
- a virtual space model providing unit that provides a 3D virtual space model built on the basis of, a user information receiving unit that receives user information including an image acquired by a user device in the 3D space, and the 3D virtual space model
- a control unit including at least one processor configured to generate correspondence information corresponding to the user information within, calculate a similarity between the correspondence information and the user information, and estimate the user pose based on the similarity.
- the apparatus for estimating a user pose for a 3D space includes a user information generator for generating user information including an image for the 3D space, and transmits the user information to a user pose estimation server, Controls the operation of the communication unit and the user information generation unit and communication unit receiving information on the user pose estimated from the 3D virtual space model from the server, and transfers the information on the user pose to the currently running application or driving system And a control unit including at least one processor configured to perform.
- Embodiments of the present invention can construct a 3D virtual space model that is robust to a path for obtaining spatial information by using a 3D virtual space model as a spatial map, and can reduce the sensitivity of the user's pose estimation accuracy according to the spatial information acquisition pose. have.
- the 3D virtual space model according to an embodiment of the present invention may be configured similarly to a real space, the spatial information acquisition time, the spatial information capacity, the data processing speed, and the like may be reduced.
- a method for estimating a user's pose that is robust against changes in real space over time may be provided.
- embodiments of the present invention can be utilized when estimating a user pose in mixed reality.
- embodiments of the present invention can contribute to commercialization and development of mixed reality related technologies.
- FIG. 1 is a diagram illustrating an example of a discontinuous spatial map constructed using point cloud information.
- FIG. 2 is an exemplary view showing a change in space over time.
- 3 is another exemplary diagram showing a change in space over time.
- FIG. 4 is a diagram illustrating an example of a 3D virtual space model according to an embodiment of the present invention.
- FIG. 5 is a diagram for describing an example of generating a 3D virtual space model according to an embodiment.
- FIG. 6 is a diagram illustrating a user pose estimation system using a 3D virtual space model according to an exemplary embodiment.
- FIG. 7 is a diagram illustrating a configuration of an apparatus for estimating a user's pose in a 3D space according to an exemplary embodiment.
- FIG. 8 is a diagram for describing a configuration of a user device according to an exemplary embodiment.
- FIG. 9 is an exemplary diagram for explaining the concept of a pose according to an embodiment.
- FIG. 10 is a flowchart illustrating a method of estimating a user pose in a 3D space according to an exemplary embodiment.
- 11 is a flowchart illustrating a method of estimating a user pose in a 3D space according to another exemplary embodiment.
- FIG. 12 is a diagram for describing an example of a method of obtaining an additional user pose according to an exemplary embodiment.
- an embodiment As used herein, “an embodiment”, “example”, “side”, “example”, etc. should be construed as having any aspect or design that is better or advantageous than other aspects or designs. Is not.
- the term'or' means an inclusive OR'inclusive or' rather than an exclusive OR'exclusive or'. That is, unless otherwise stated or clear from the context, the expression'x uses a or b'means any one of natural inclusive permutations.
- FIG. 4 is a diagram illustrating an example of a 3D virtual space model according to an embodiment of the present invention.
- FIG. 5 is a diagram for describing an example of generating a 3D virtual space model according to an embodiment.
- a 3D virtual space model is a model for a real space constructed using depth-image-linked information such as obj and x3d.
- the 3D virtual space model is a model in which obj, x3d, etc. are generated through Korean Patent Registration No. 10-1835434 (title of the invention: a projection image generation method and its device, a mapping method between image pixels and depth values)
- it may include a'TeeVR model'.
- the 3D virtual space model according to an exemplary embodiment may be configured by dividing a background area and a non-background area to construct a 3D virtual space model as shown in FIG. 5 and using only the background area.
- FIG. 5 shows image data included in spatial information
- (b) shows an image from which a non-background area is removed
- (c) shows an example in which image data is generated by expanding the background area.
- the background area may mean a structure of a building itself forming a three-dimensional space, or may be a structure attached to the building, such as a door or a window.
- the background region may be defined as a region related to the structure of a 3D space.
- an area corresponding to various objects (desks, bookshelves, chairs, etc.) located in an indoor space may correspond to a non-background area.
- (b) shows a cast area from which various objects (areas indicated in white) located in an indoor space have been removed.
- the 3D virtual space model is a concept that includes both an indoor space and an outdoor space, and may be an independent indoor space, an independent outdoor space, or a space connected indoors and outdoors. Models (people, objects, etc.) such as obj and x3d may be added to the 3D virtual space model, and the 3D virtual space model may be a concept including a 3D virtual space model to which a model is added.
- the spatial map may use a 2D virtual space model by lowering the dimension instead of 3D.
- the 3D spatial model may use pre-built models such as obj and x3d, newly acquire and construct spatial information, or update and use pre-built models.
- the three-dimensional space model can be determined to be similar to the real space.
- FIG. 6 is a diagram illustrating a user pose estimation system using a 3D virtual space model according to an exemplary embodiment.
- a user pose estimation system using a 3D virtual space model includes a user device 610 and a user pose estimation apparatus 620.
- the apparatus 620 for estimating a user pose may be provided in a server (not shown) or may be provided in the user device 610.
- the user device 610 may acquire the user information 611 in the real space 601 and transmit the user information 611 to the user device 610.
- the user pose estimation apparatus 620 may estimate a user pose using the 3D virtual space model 630 and user information 611 stored in the storage system 602 inside or outside the apparatus.
- the user pose estimation apparatus 620 may estimate an accurate user pose by comparing correspondence information 621 having a high probability of corresponding to a user pose in the 3D virtual space model 630 with the user information 611.
- FIG. 7 is a diagram illustrating a configuration of an apparatus for estimating a user's pose in a 3D space according to an exemplary embodiment.
- a user pose estimation apparatus 620 for a 3D space includes a virtual space model providing unit 730, a control unit 740, and a user government receiving unit 750.
- the user pose estimation apparatus 620 may further include a spatial information acquisition unit 710 and a virtual space model generation unit 720.
- the user pose estimation apparatus 620 may further include a user information request unit 760.
- the spatial information acquisition unit 710 acquires spatial information including depth information and image data for a 3D space.
- spatial information may be obtained using a depth measuring device and an image measuring device.
- the 3D virtual space model can be constructed similarly to the real space, and can be efficient because the spatial information acquisition time, spatial information capacity, data processing speed, etc. can be reduced.
- Image information is a two-dimensional image of a three-dimensional space and can have a form that can be expressed as a basis vector of two degrees of freedom, and a form that expresses three dimensions in two dimensions, such as a camera, or an infrared filter is attached to the camera. It may be a form in which three-dimensional thermal information is expressed in two dimensions.
- Depth information has a point shape that can be expressed as a basis vector of 3 degrees of freedom, and may be acquired using a depth measuring device, or may be estimated using two or more images taken from different places.
- Examples of the former include depth information acquired through a LiDAR, SONAR, infrared (InfraRed), and TOF (Time Of Flight) distance detector, and examples of the latter include a stereo camera, multi-camera, omnidirectional stereo. There is depth information acquired through a camera or the like. Meanwhile, when a device such as Kinect, JUMP, PrimeSense, or Project Beyond is used, depth information and image information can be simultaneously acquired.
- depth information may be newly estimated and used through interpolation as well as depth information acquired through a depth measuring device. More specifically, after selecting three or more depth information from a plurality of acquired depth information to construct a polygon (including triangle) mesh, new depth information can be estimated and added to the inside of the polygon mesh through interpolation. have.
- acquisition depth information and image information according to an embodiment of the present invention may be simultaneously acquired by using an integrated sensor system.
- a calibration process may be required to obtain the coordinate relationship between the sensors.
- an inertial measurement device (IMU) can be additionally used, or when measuring by attaching a sensor to a wheel-type mobile robot, odometry can be used.
- IMU inertial measurement device
- odometry can be used.
- spatial information can be obtained by rotating, moving or combining the sensor.
- the 3D pose from which the individual spatial information is acquired may be different, and in order to predict the pose from which the individual spatial information is acquired, SLAM (simultaneous localization and mapping), image-inertia distance information (VIO, Visual Inertial Odometry) and image distance information (VO, Visual Odometry) can be used.
- VIO Visual Inertial Odometry
- VO Visual Odometry
- the configuration of the spatial information may be different depending on the type of measuring device.
- the pre-measurement information is composed of camera image information
- the relative distance between pixels in the case of a single camera and the absolute distance between pixels in the case of a plurality of cameras are calculated using the image information. It is predictable.
- the depth of the pixel can be predicted using accumulated image information without extracting the feature points, and in the case of a plurality of cameras, the depth of the pixel can also be predicted using multiple camera images or the accumulated image information. have.
- spatial information may be processed according to the unique characteristics of each measuring device.
- inertial information can be obtained using an inertial measurement device, it is used to improve the performance of the slam, or correction for the image acquisition point by using it as prediction information on the image acquisition point when processing image information ( correction) can be made easier.
- the actual moving distance can be estimated by using the acceleration value or the angular velocity value of the inertia information, and this can be used to correct the scale of depth information extracted from a single camera or a plurality of cameras.
- the virtual space model generator 720 configures depth-image linkage information based on spatial information, and generates a 3D virtual space model corresponding to the three-dimensional space based on the depth-image linkage information.
- the spatial information acquisition unit 710 may acquire an indoor space image that is spatial information about the indoor space.
- the indoor space image may be an image captured at various locations inside the indoor space.
- the virtual space model generation unit 720 may distinguish between a background area, which is an area corresponding to the structure of the indoor space, and a non-background area, which is an area corresponding to an object located in the indoor space or a moving person.
- the virtual space model generator 720 may classify a background region and a non-background region based on pixel values of an image constituting the indoor space image.
- the background area is partially covered by other elements, so the data is not intact, but it is inferred that it may have similarity to the uncovered area, so that the uncovered area is hole filling or inpainting technique. It may correspond to a part that can be reconstructed using.
- the background area can cover other objects such as a large signboard or information desk inside a building, but the degree of matching between the image and the terrain at the edge of the object can be matched within all data or through a separate matching process. It may be the part that is there.
- the virtual space model generator 720 may generate at least one extended indoor space image by extending a background region from an indoor space image to a non-background region. For example, in (b) of FIG. 5, a portion of the background area represented by white from which the non-background area is removed may be expanded.
- the virtual space model generator 720 extends through the inference that when an edge included in the background area is disconnected from the boundary line with the non-background area, the extension line of the edge crosses the boundary line between the background area and the non-background area and leads to the non-background area. Generated images.
- one or more indoor space images other than a specific indoor space image may be designated as a supplementary image of the background, and an area corresponding to a non-background region of the specific indoor space image may be reduced by using information on the supplementary image of the background.
- the virtual space model generator 720 may generate depth-image linkage information based on terrain information including at least one extended indoor space image and information on a depth value for the indoor space.
- the depth-image association information may be information in which a depth value of an indoor space corresponding to pixels of at least one extended indoor space image is matched.
- the virtual space model generation unit 720 includes an image acquisition pose including information on an acquisition position and acquisition angle of each of the at least one expanded indoor space image and topographic information, in addition to the at least one expanded indoor space image and topographic information. Depth-image linking information can be generated by further using the depth acquisition pose.
- the virtual space model generation unit 720 generates a three-dimensional virtual space model for a real three-dimensional space by using at least one expanded indoor space image, topographic information, and depth-image linkage information.
- the virtual space model providing unit 730 provides a 3D virtual space model built on the basis of spatial information including depth information and image information about the 3D space when user pose estimation is required.
- the user pose estimation may be performed after the application installed in the user device 610 or the user pose estimation apparatus 620 is driven.
- the virtual space model providing unit 730 may provide a 3D virtual space model to an application running in the user device 610 or the user pose estimation apparatus 620 or a driving system of the corresponding device.
- the control unit 740 may include at least one processor. At this time, the control unit 740 may be connected to at least one computer-readable storage media in which instructions or programs are recorded.
- control unit 740 generates at least one processor configured to generate correspondence information corresponding to user information in the 3D virtual space model, calculate a similarity between the correspondence information and the user information, and estimate a user pose based on the similarity. Includes.
- the user pose estimation according to an embodiment may be performed by learning a 3D virtual space model using deep learning or a neural network.
- a vast amount of training data required in the learning stage may be required, and training data may consist of data including image information and data including poses from which the data was acquired, and the amount of training data In order to increase it, noise may be added to the two types of data to be modified and used.
- a convolutional neural network (CNN) or all or part of various neural networks may be used.
- CNN convolutional neural network
- one or more GPUs may be used, and parallel operations may be performed.
- the result of deep learning can be expressed as a scalar, vector, probability, etc., and using this result, a user pose expected to be a pose from which user information is acquired can be estimated.
- Image information of user information can be used as input, and additional user information can be used together.
- a layer can be added to a neural network, a function can be changed, a parameter number can be adjusted, or its value can be changed.
- You can also use a computer language consisting of Python, Sea Language, MATLAB, etc., or a combination of these to construct a neural network.
- particle filter When user information is sequentially acquired, particle filter, EKF.
- User poses can be estimated using techniques such as EIF and UKF.
- the estimated user pose can be corrected.
- the value of the particle filter may converge to a specific pose according to the sequentially acquired user information, and the converged point may be estimated as the user pose.
- a weight When estimating a user pose, a weight may be imposed and a user pose may be determined among a plurality of convergence points.
- the user pose can be estimated by fusing the pose estimated by deep learning and the pose estimated by particle filters.
- a user pose may be estimated by performing a particle filter around a pose estimated by deep learning, and the user pose may be estimated by deep learning around a pose converged by a particle filter in the opposite way.
- a weight may be imposed and a user pose may be determined among a plurality of convergence points.
- the degree of similarity refers to the degree of similarity between the corresponding information generated in the 3D virtual space model and the user information, and the higher the similarity, the more the corresponding information and the user information are similar.
- the pose of the virtual space model can be estimated as a user pose from which user information is acquired. Similarity can be expressed as a scalar, vector, covariance matrix, etc., and can be expressed as euclidean distance, manhattan distance, mahalanobis distance, It can also be calculated from structural similarity (SSIM), normalized information distance (NID), Minimun Mean Square Error (MMSE), and entropy.
- SSIM structural similarity
- NID normalized information distance
- MMSE Minimun Mean Square Error
- the 3D virtual space model is constructed using the background area by dividing the background area related to the structure of the 3D space and the non-background area corresponding to the object placed in the 3D space from the image data of the 3D space. I can.
- the user government receiving unit 750 receives user information including an image acquired by a user device in a 3D space.
- User information is information that includes image information, includes one or more image measuring devices, and can be obtained by using a depth measuring device or an additional device. If sufficient user information cannot be obtained due to a narrow viewing angle of the measuring device, user information can be obtained by rotating, moving or combining the measuring device.
- User information may be acquired by a single or a plurality of image sensors (cameras), and may be acquired in a pin-hole model, a fisheye lens, or a panorama format. It may be acquired as single image information, a plurality of image information, or sequential image information. Using the acquired user information, image information, depth information, or depth-image linkage information can be configured.
- image information can be obtained, and depth information can be calculated using sequentially acquired image information, through which depth-image linking information can be configured.
- depth information can be calculated by using the relationship between the image information acquired by each image measuring device and the image measuring device, and through this, depth-image linking information can be configured.
- the relationship between the image measuring devices may be calibration information between image measuring devices or a Homography matrix between image information acquired from each image measuring device.
- the depth-image linking information may be configured using calibration information between the two devices.
- Deep learning can also be used to extract depth information from image information.
- a neural network network can be constructed, and a convolutional network can be used.
- a large number of data may be required for learning and testing, and a neural network network may consist of linear functions, nonlinear functions, and multiple layers, and the results of deep learning can be expressed as probability, scalar, vector, etc. Iterative learning may be performed, and parameter tuning may be required.
- Depth-image linkage information can be constructed using depth information extracted by deep learning. Processed image information obtained by processing the image information may be used, for example, changing the contrast, saturation, etc. of the image, or converting the panoramic image into a corrected image.
- the user information request unit 760 may transmit guide information to the user device 610 when it is necessary to obtain additional user information. A detailed description related to the guide information will be described with reference to FIG. 12.
- FIG. 8 is a diagram for describing a configuration of a user device according to an exemplary embodiment.
- a user device 610 includes a user information generation unit 810, a communication unit 820, and a control unit 830.
- the user device 610 may further include a user interface unit 840 including a display, an input means, and an output means for interfacing with a user.
- the user information generation unit 810 generates user information including an image of a 3D space. Accordingly, the user information generation unit 810 may include at least one of an image measuring device and a depth measuring device.
- the communication unit 820 transmits user information to the user pose estimation server, and receives information on the user pose estimated in the 3D virtual space model from the server.
- the user pose estimation server may be the user pose estimation apparatus 620 illustrated in FIG. 7, or may be a separate server that provides a user pose estimation service.
- the control unit 830 includes at least one processor configured to control the operation of the user information generation unit 810 and the communication unit 830, and to transmit information on a user pose to an application or driving system currently being driven.
- FIG. 9 is an exemplary diagram for explaining the concept of a pose according to an embodiment.
- Spatial information used to construct a 3D virtual space model may be considered as discontinuous information acquired from some poses in real space.
- pose is a concept that includes both position and orientation.
- a pose may be expressed by x and y, which are the positions of the measuring device, and the angle a of the measuring device.
- the measuring device moves at 10 cm intervals in the range of 0 to 1 m with respect to the x-axis and y-axis in a square plane of 1 m in width and height, and the rotation angle is 10 degrees in the range of 0 to 360 degrees. Shows an example that can be rotated.
- the total number of possible poses is 11*11*37, which is 4477.
- the pose can be expressed as x, y, and z, which are the positions of the sensor, and the angle roll, pitch, and yaw of the measuring device.
- a 3D virtual space model is constructed. Spatial information acquired from some poses can be expanded.
- the 3D virtual space model can be constructed based on the spatial information acquired from some poses, but because it utilizes the depth-image-linked information constructed from the spatial information, any pose in the 3D virtual space model can be acquired from the same pose in the real space. Corresponding information similar to the configured spatial information or the configured depth-image linkage information may be generated.
- the 3D virtual space model may convert spatial information, which is discontinuous information, into corresponding information, which is continuous information.
- FIG. 10 is a flowchart illustrating a method of estimating a user pose in a 3D space according to an exemplary embodiment.
- the method illustrated in FIG. 10 may be performed by the user pose estimation apparatus 620 illustrated in FIG. 7.
- step S1010 the device acquires spatial information including depth information and image data for a 3D space using a depth measuring device and an image acquisition device.
- step S1020 the device configures depth-image linkage information based on spatial information, and builds a 3D virtual space model corresponding to a three-dimensional space based on depth-image linkage information.
- step S1030 the apparatus receives user information including an image acquired by a user device in a 3D space.
- the user information may further include depth information on a space corresponding to the acquired image.
- step S1040 the device generates correspondence information corresponding to user information in the 3D virtual space model.
- the 3D virtual space model is used, even a pose for which spatial information has not been acquired, corresponding information that may be similar to the spatial information or depth-image association information acquired from the corresponding pose can be generated.
- Correspondence information may be expressed as depth information, image information, or depth-image association information. Correspondence information can be generated from a pose expressed as a basis vector of three degrees of freedom in a three-dimensional virtual space model.
- the corresponding information may be generated from a pose expressed as a basis vector of two degrees of freedom in a 3D virtual space model.
- Corresponding information may be generated through a process such as a viewing angle, image information conversion, and depth information conversion.
- the step S1040 of generating the corresponding information is the step of dividing a background area related to the structure of the 3D space and a non-background area corresponding to an object placed in the 3D space in the image included in the user information, including in the user information It may include processing the user information using a background area of the image and generating corresponding information corresponding to the processed user information in a 3D virtual space model.
- the real space When a user acquires user information from the real space that is the background of the 3D virtual space model, the real space may not be the same as the time point at which the spatial information was acquired to construct the 3D virtual space model.
- the appearance of the space, such as the interior, may have changed.
- the background portion and the non-background portion may be distinguished from the user information, the non-background portion may be removed from the user information, and the user information may be converted using the background portion.
- User information can be processed and used to remove effects from lighting, light, etc.
- the user information or the form of the corresponding information may be converted and compared.
- step S1050 the device calculates a degree of similarity between the correspondence information and the user information.
- calculating the similarity may include regenerating the correspondence information in a direction to increase the similarity, and recalculating the similarity based on the regenerated correspondence information.
- the direction of increasing the degree of similarity includes reacquiring user information, regenerating corresponding information corresponding to user information, or using additional information in addition to user information.
- the step of extracting a comparison target region for comparing user information and corresponding information, a common region from the comparison target region extracted from user information and the comparison target region extracted from the correspondence information may include determining and regenerating user information and corresponding information, respectively, based on the common area.
- the corresponding information to be used in the comparison process can be regenerated by removing a certain area according to a predetermined criterion, such as an area distorted due to structural simplification from the response information, and removing the area corresponding to the non-background part of user information. have.
- a predetermined criterion such as an area distorted due to structural simplification from the response information
- regenerate user information to be used in the comparison process by removing the area corresponding to the distorted area of the corresponding information along with the non-background part from the user information.
- the method of calculating the similarity between the corresponding information generated in the 3D virtual space model and the user information acquired by the user is a method of comparing the image information of the corresponding information with the image information of the user information, the depth information of the corresponding information and the depth of the user information. There may be a method of comparing information or a method of comparing depth-image-linked information.
- the comparison between image information may require conversion of image information to make the format of each image information similar. For example, there may be a conversion between a panoramic image and a rectified image, a size of image information may be normalized, and a viewing angle may be converted.
- the rectified image can be transformed into a panorama format and used.
- a feature point of the image information can be found and similar feature point pairs can be connected.
- the feature points may be an edge, a straight line, a line segment, a corner, a circle, an ellipse, or a combination thereof, and may have different sizes and rotations.
- Similarity between image information can be calculated through techniques such as Feature Matching, Structural Similarity (SSIM), Normalized Information Distance (NID), and Homography Matrix.
- a homography matrix can be calculated using a plurality of pixel coordinates formed by matching feature points, and a difference (error) between two image information can be calculated using this.
- SSIM is a method of calculating the similarity between two images
- NID is a probabilistic calculation method.
- Depth information When depth information can be extracted from user information, depth information and similarity of corresponding information can be compared.
- Depth information may be expressed as 3D point cloud information (PCD, Point Cloud Data), depth map, mesh, etc., and a process of unifying the format of the two depth information may be necessary.
- the depth information may be compared between pixels (per point), and may be compared in consideration of the surrounding area.
- Depth information may be newly estimated and compared through interpolation, or may be calculated by adding a weight.
- the depth-image linkage information When the depth-image linkage information is configurable in the user information, it can be compared with the depth-image linkage information of the corresponding information. Each similarity can be calculated by comparing depth information and image information, and the overall similarity can be calculated, and each similarity can be calculated by giving a weight. Alternatively, the depth-image linkage information may be compared in a complex manner, and a combination of methods for calculating the similarity between depth information and image information may be performed.
- the corresponding information and the user information may be different even in the same pose. Therefore, it is possible to compare strong feature points in the correspondence information and user information. For example, in response information and user information, a background part and a non-background part can be distinguished, and similarity can be calculated using the background part, and the corresponding information is generated from a 3D virtual space model built using the background part. The degree of similarity with the background part can be calculated. The light source effect for lighting or light can be removed from the corresponding information and the user information, and the similarity can be calculated, and the similarity can be calculated by comparing features that are robust to the light source effect.
- the step S1050 of calculating the similarity may include obtaining additional user information around the user device and calculating the similarity based on the user information and the additional user information.
- guide information may be used as shown in FIG. 12.
- step S1060 the device checks candidate correspondence information having a value equal to or greater than a preset value, and estimates a pose matching the candidate correspondence information as a user pose.
- the similarity As the similarity is higher, it may be considered that the pose of the 3D virtual space model in which the corresponding information is generated and the pose in which the user information is obtained are the same.
- the two data are acquired and reconstructed poses can be considered to be almost the same, and the reference value may vary according to the environment of the real space.
- a pose having the highest similarity to a user pose among corresponding information generated from a plurality of candidate poses or a pose selected by a certain determination method may be considered as the user pose.
- the user pose may be estimated by performing the steps of generating the correspondence information and calculating the similarity only once, or it may be performed repeatedly.
- the iteration can be precisely re-estimated around the culled pose, randomly re-estimated for the entire area, and weighted to select a new pose to be re-estimated. This step may be repeated a predetermined number of times, the similarity may be equal to or greater than the reference value, or may be repeated until the estimated pose converges. Optimization techniques can also be used to increase similarity.
- Correspondence information may be regenerated to increase the degree of similarity, and the re-generated correspondence information may be re-generated from a pose expected as a user pose according to the relationship between the pose in which the existing correspondence information was created and the degree of similarity. After regeneration of the corresponding information, the degree of similarity can be calculated, and if necessary, the process of regenerating the corresponding information and calculating the degree of similarity can be repeated.
- corresponding information can be created and reproduced in a pose that is expected to increase similarity. Thereafter, the similarity between the corresponding information and the user information is calculated, and if necessary, the corresponding information may be regenerated using the user additional information, and the similarity calculation process may be repeated.
- the user additional information is information that may be helpful in estimating a user's pose in addition to the image information acquired by the user, and may be composed of inertia information (IMU), distance information (odometry), and the like.
- IMU inertia information
- distance information odometry
- inertia information can be obtained using an inertial measurement device, it may be used as prediction information for an image acquisition pose during image information processing to facilitate correction of an image acquisition pose.
- step S1050 of calculating the similarity or step S1060 of estimating the user pose when the user additional information, which is additional information used for estimating the user pose, is obtained through the user device, the user information or the additional user information Together, it may include estimating the user pose by using the user additional information.
- the actual moving distance may be estimated by using the acceleration value or the angular velocity value of the inertial information, and this may be used to correct the scale of depth information extracted from a single or multiple image measuring devices.
- Distance information can be distance information predicted using VO (Visual Odometry) and VIO (Visual Inertial Odometry), which are configured based on image information acquired by the user, and acquire user information by attaching a measuring device to a wheeled mobile robot.
- the distance information may be distance information of the mobile robot. Accordingly, if inertia information is used, it can be used to correct distance information extracted by the above methods.
- the user can control the mobile robot, the mobile robot can run autonomously, or a combination of the two can obtain user information.
- the mobile robot pose can be considered as a user pose, and if the coordinate transformation relationship between the mobile robot and the user's field of view is known, or if coordinate transformation is possible, the mobile robot pose can be converted into a user pose.
- the mobile robot may acquire user information including images as well as odometry of the mobile robot as user additional information.
- User poses can be corrected using distance information. Using the distance information acquired sequentially, the relative expected pose of the mobile robot can be predicted, and information such as the covariance matrix can be calculated using techniques such as EKF, EIF, UKF, or a similar method. You can update and correct the user pose.
- ROS robot operating system
- Spatial information, depth-image association information, 3D virtual space model, user information, user additional information, etc. may be stored and processed in an external server.
- depth-image linkage information can be constructed and a three-dimensional virtual space model can be constructed.
- a user pose can be estimated in real time, and there may be latency. It may be processed after the user pose acquisition is finished.
- additional spatial information may not be acquired, and additional spatial information may be acquired for some spaces.
- the constructed 3D virtual space model can be used.
- the constructed 3D virtual space model can be partially or completely updated and rebuilt.
- User poses can be estimated by constructing a 3D virtual space model by pre-acquisition of user information and spatial information, and user poses can be obtained by acquiring user information after pre-acquisition of spatial information to build a 3D virtual space model. Can be estimated.
- the present invention may be implemented in a system in which a sensor system and a computer are fused, or may be performed in an independent sensor system and a computer.
- the pose of each measuring device and the pose of the entire user sensor system may be different, but it can be converted using the coordinate transformation relationship of each measuring device and sensor system.
- a center or an appropriate position of the user sensor system may be assumed as a user pose, or a user pose may be assumed based on the user sensor system.
- the required calibration information or the relative pose from the user sensor system to the user pose can be known or assumed to be a certain value.
- 11 is a flowchart illustrating a method of estimating a user pose in a 3D space according to another exemplary embodiment.
- the method shown in FIG. 11 may be performed by the user pose estimation apparatus 620 shown in FIG. 7.
- step S1110 the device receives user information including an image acquired in a 3D space.
- step S1120 the device checks a 3D virtual space model constructed based on spatial information including depth information and image information on the 3D space.
- the 3D virtual space model may be provided by the virtual space model providing unit 730 of FIG. 7.
- step S1130 the device generates corresponding information corresponding to the user information in the 3D virtual space model.
- step S1140 the device calculates a degree of similarity between the correspondence information and the user information.
- the device estimates a user pose based on the similarity.
- the user pose may be, for example, a pose of corresponding information having the highest similarity to the user information.
- FIG. 12 is a diagram for describing an example of a method of obtaining an additional user pose according to an exemplary embodiment.
- additional user information can be acquired, a pose for obtaining additional user information can be guided to the user by using a 3D virtual space model, and the user can acquire additional user information from the guided pose.
- acquiring additional user information may include transmitting guide information for acquiring additional user information to the user device 610 based on the 3D virtual space model.
- the guide information includes a pose for acquiring user information about a preset feature point in the 3D virtual space model, and the step of acquiring additional user information may be repeatedly performed in a direction to increase similarity.
- a pose for obtaining additional user information may be guided in consideration of feature points in a 3D virtual space model.
- the additional user information acquisition pose may be a pose for sequentially obtaining images for feature points 1, 2, and 3, or may be a pose for any one of feature points 1, 2, and 3.
- the apparatus described above may be implemented as a hardware component, a software component, and/or a combination of a hardware component and a software component.
- the devices and components described in the embodiments include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable array (FPA), It can be implemented using one or more general purpose computers or special purpose computers, such as a programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions.
- the processing device may execute an operating system (OS) and one or more software applications executed on the operating system.
- the processing device may access, store, manipulate, process, and generate data in response to the execution of software.
- OS operating system
- the processing device may access, store, manipulate, process, and generate data in response to the execution of software.
- the processing device is a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that it may include.
- the processing device may include a plurality of processors or one processor and one controller.
- other processing configurations are possible, such as a parallel processor.
- the software may include a computer program, code, instructions, or a combination of one or more of these, configuring the processing unit to behave as desired or processed independently or collectively. You can command the device.
- Software and/or data may be interpreted by a processing device or to provide instructions or data to a processing device, of any type of machine, component, physical device, virtual equipment, computer storage medium or device. , Or may be permanently or temporarily embodyed in a transmitted signal wave.
- the software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored on one or more computer-readable recording media.
- the method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium.
- the computer-readable medium may include program instructions, data files, data structures, and the like alone or in combination.
- the program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and usable to those skilled in computer software.
- Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks.
- -A hardware device specially configured to store and execute program instructions such as magneto-optical media, and ROM, RAM, flash memory, and the like.
- Examples of the program instructions include not only machine language codes such as those produced by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like.
- the hardware device described above may be configured to operate as one or more software modules to perform the operation of the embodiment, and vice versa.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Processing Or Creating Images (AREA)
- Image Analysis (AREA)
Abstract
3차원 가상 공간 모델을 이용한 사용자 포즈 추정 방법 및 장치를 개시한다. 3차원 공간에 대한 사용자의 위치(position) 및 방향(orientation) 정보를 포함하는 사용자 포즈를 추정하는 방법은, 상기 3차원 공간에서 획득된 영상을 포함하는 사용자 정보를 수신하는 단계와, 상기 3차원 공간에 대한 깊이 정보 및 영상 정보를 포함하는 공간 정보에 기초하여 구축된 3차원 가상 공간 모델을 확인하는 단계와, 상기 3차원 가상 공간 모델 내에서 상기 사용자 정보에 대응하는 대응 정보를 생성하는 단계와, 상기 대응 정보와 상기 사용자 정보의 유사도를 산출하는 단계 및 상기 유사도에 기초하여 사용자 포즈를 추정하는 단계를 포함한다.
Description
기술분야는 공간 지도의 생성 및 활용에 관한 것으로서, 보다 구체적으로 3차원 가상 공간 모델을 이용하여 현실 공간 내 사용자의 포즈를 추정하는 방법 및 장치에 관한 것이다.
공간지도를 활용하여 사용자 포즈(pose)를 추정하는 방법은 지형 값(geometry)을 사용하는 방식, 영상 값을 사용하는 방식, 지형 값과 영상 값을 혼합하여 사용하는 방식이 있다.
이때, 라이다(LiDAR) 혹은 유사한 동작원리를 가지는 깊이측정장치를 활용하여 점구름정보를 취득하거나, 카메라 혹은 유사한 동작원리를 가지는 영상측정장치를 활용하여 영상정보를 취득하거나, 키넥트(Kinect) 혹은 유사한 동작원리를 가지는 깊이-영상측정장치를 활용하여 색-점구름정보를 취득하거나 이들의 조합으로 현실 공간을 표현하는 공간지도를 구성할 수 있다.
현실 공간에 대한 영상 정보, 깊이 정보 및 깊이-영상 연계 정보는 '공간 정보'라 칭해질 수 있다.
현실 공간에서 사용자 디바이스를 통해 획득한 사용자 정보를 공간 지도와 비교함으로써, 사용자 포즈를 추정할 수 있다.
여기서, '사용자 정보'는 현실 공간에서 사용자 디바이스를 통해 획득한 영상을 포함하는 정보이다. 그리고, '포즈'는 위치(position)와 방향(orientation)을 모두 포함하는 개념이다. 따라서, '사용자 포즈'는 현실 공간에 대해 영상 데이터를 획득한 위치 정보 및 영상 데이터를 획득한 방향 정보를 포함하는 정보일 수 있다.
한편, 종래 기술에 따른 공간 지도를 이용한 사용자 포즈 추정은 다음과 같은 문제점들이 있다.
첫째, 공간 지도는 공간 정보를 획득하는 포즈에 민감할 수 있다. 따라서, 공간 지도가 공간 정보를 획득하는 포즈에 민감한 경우 사용자 포즈 추정의 정밀도는 저하될 수 있다. 예를 들어, 이론적으로 가능한 모든 포즈에서 공간 정보를 획득하고 공간 지도를 구성하는 경우, 정밀도가 높은 사용자 포즈 추정이 가능하다.
그러나, 현실 공간에 대해 모든 포즈에서 공간 정보를 획득하는 것은 사실상 불가능하다. 공간 지도를 구성하기 위해 현실 공간에서 고른 분포로 다수의 포즈에서 공간 정보를 획득한 경우 공간 정보를 획득하는 포즈의 분포에 의해 사용자 포즈 추정의 민감도를 낮출 수 있다. 그러나, 이 경우 공간 정보의 취득 시간, 공간 정보의 용량 및 처리 속도 등의 시스템 부하 문제가 야기될 수 있다.
한편, 시스템 부하 문제의 효율을 고려하여 소수의 포즈에서 공간 정보를 획득하는 경우, 공간 지도가 현실 공간을 충분히 표현하지 못할 수 있다. 또한, 공간 지도를 획득하는 경로가 변경되면 공간 지도의 신뢰성이 저하되어 현실 공간을 강인하게 표현하지 못하게 된다. 현실 공간을 강인하게 표현하지 못하는 공간 지도는 사용자 포즈 추정의 정밀도를 저하시킬 수 있다.
둘째, 불연속적인 공간 지도는 사용자 포즈 추정의 정밀도를 저하시킬 수 있다. 도 1은 점구름정보를 활용하여 구성된 불연속적인 공간 지도의 예를 나타내는 도면이다.
도 1에 도시된 바와 같이, 점구름정보를 활용하여 공간지도를 구성하는 경우 공간 정보 취득 범위, 경로에 따라 점구름정보가 조밀하게 획득되지 못할 수 있다. 점구름정보가 조밀하게 획득되지 못한 경우 불연속 공간지도가 생성될 수 있고, 이는 사용자 포즈 추정의 정밀도를 저하시킬 수 있다.
셋째, 공간지도를 구성하기 위한 공간 정보가 취득된 시점과 사용자 정보를 취득하는 시점의 차이로 인해 사용자 포즈 추정의 정밀도가 저하될 수 있다.
도 2 및 도 3은 시간의 흐름에 따른 공간의 변화를 나타내는 예시도들이다.
도 2는 빛 또는 조명이 시간의 변화에 따라 변하는 예를 나타낸다.
보다 구체적으로, 도 2의 (a), (b) 및 (c)는 동일한 공간이 시간의 흐름에 따라 조명이나 외부로부터 유입되는 빛의 양이 변경된 예시를 나타낸다.
또한, 도 3의 (a) 및 (b)는 동일한 공간에서 시간의 흐름에 따라 사물이 달라진 예를 나타낸다.
도 3의 (a)에서 탁자(210) 위에는 아무런 사물이 놓여 있지 않지만, 도 3의 (b)는 탁자(220) 위에 여러가지 사물이 놓여 있음을 나타낸다.
예를 들어, 도 2에 도시된 공간에 대해 공간 지도를 구성하기 위한 공간 정보는 (a)를 통해 획득되고, 사용자 정보는 (c)에서 획득될 수 있다. 또한, 도 3에 도시된 공간에 대해 공간 지도를 구성하기 위한 공간 정보는 (a)에서 획득되고 사용자 정보는 (b)에서 획득될 수 있다.
이와 같이 동일한 공간에 대해 공간 정보가 획득된 시점과 사용자 정보를 획득하는 시점(time)의 차이로 인해 영상 정보는 일치하지 않을 수 있다. 따라서, 동일한 공간에 대해 공간 정보가 획득된 시점과 사용자 정보를 획득하는 시점의 차이로 인해 사용자 포즈 추정의 정밀도는 저하될 수 있다.
현실 공간은 시간의 흐름에 따라 빛 또는 조명의 변화, 사람 등 동적인 움직임의 변화, 사물 또는 인테리어 등의 변화가 발생할 수 있다. 이런 변화들을 갱신하지 않은 공간지도를 사용할 경우 사용자 정보와 유사성이 적을 수 있고, 이는 사용자 포즈 추정의 정밀도를 저하시킬 수 있다.
따라서, 공간 지도를 바탕으로 사용자 포즈 추정 시 발생하는 기존의 문제점들을 해결할 수 있는 방법이 필요하다.
본 발명은 상술한 문제점을 해결하기 위해 현실 공간에서 획득된 공간 정보를 바탕으로 구성된 3차원 가상 공간 모델과 사용자가 취득한 사용자 정보를 활용하여 사용자 포즈를 추정하는 방법을 제공하고자 한다.
일 실시예에 따른 3차원 공간에 대한 사용자 포즈 추정 방법은, 깊이 측정 장치 및 영상 획득 장치를 이용하여 3차원 공간에 대한 깊이 정보 및 영상 데이터를 포함하는 공간 정보를 획득하는 단계와, 상기 공간 정보에 기초하여 깊이-영상 연계 정보를 구성하고, 상기 깊이-영상 연계 정보에 기초하여 상기 3차원 공간에 대응하는 3차원 가상 공간 모델을 구축하는 단계와, 상기 3차원 공간에서 사용자 디바이스에 의해 획득된 영상을 포함하는 사용자 정보를 수신하는 단계와, 상기 3차원 가상 공간 모델 내에서 상기 사용자 정보에 대응하는 대응 정보를 생성하는 단계와, 상기 대응 정보와 상기 사용자 정보의 유사도를 산출하는 단계 및 상기 유사도에 기초하여 사용자 포즈를 추정하는 단계를 포함한다.
상기 3차원 가상 공간 모델을 구축하는 단계는, 상기 3차원 공간에 대한 영상 데이터에서 상기 3차원 공간의 구조와 관련된 배경 영역과 상기 3차원 공간에 놓인 물체에 해당하는 비배경 영역을 구분하고, 상기 배경 영역을 이용하여 상기 3차원 가상 공간 모델을 구축하는 것을 포함할 수 있다.
상기 대응 정보를 생성하는 단계는 상기 사용자 정보에 포함된 영상에서 상기 3차원 공간의 구조와 관련된 배경 영역과 상기 3차원 공간에 놓인 물체에 해당하는 비배경 영역을 구분하는 단계와, 상기 사용자 정보에 포함된 영상의 배경 영역을 이용하여 상기 사용자 정보를 가공하는 단계 및 상기 3차원 가상 공간 모델 내에서 가공된 사용자 정보에 대응하는 대응 정보를 생성하는 단계를 포함할 수 있다.
상기 유사도를 산출하는 단계는, 상기 유사도를 높이는 방향으로 상기 대응 정보를 재 생성하는 단계 및 재 생성된 대응 정보에 기초하여 유사도를 재 산출하는 단계를 포함할 수 있다.
상기 유사도를 산출하는 단계는, 상기 사용자 정보 및 상기 대응 정보를 비교하기 위한 비교 대상 영역을 추출하는 단계와, 상기 사용자 정보에서 추출된 비교 대상 영역과 상기 대응 정보에서 추출된 비교 대상 영역에서 공통 영역을 결정하는 단계 및 상기 공통 영역에 기초하여 상기 사용자 정보 및 상기 대응 정보를 각각 재 생성하는 단계를 포함할 수 있다.
상기 유사도를 산출하는 단계는, 상기 사용자 디바이스 주변에 대한 추가적인 사용자 정보를 획득하는 단계 및 상기 사용자 정보 및 추가적인 사용자 정보에 기초하여 유사도를 산출하는 단계를 포함할 수 있다.
상기 사용자 포즈를 추정하는 단계는, 상기 사용자 디바이스를 통해 상기 사용자 포즈의 추정에 이용되는 부가적인 정보인 사용자 부가 정보가 획득되는 경우, 상기 사용자 정보 또는 상기 추가적인 사용자 정보와 함께 상기 사용자 부가 정보를 이용하여 상기 사용자 포즈를 추정하는 것을 포함할 수 있다.
상기 추가적인 사용자 정보를 획득하는 단계는, 상기 3차원 가상 공간 모델에 기초하여 추가적인 사용자 정보 취득을 위한 안내 정보를 상기 사용자 디바이스로 전송하는 것을 포함할 수 있다.
상기 안내 정보는 상기 3차원 가상 공간 모델 내의 기 설정된 특징점에 대한 사용자 정보 취득 포즈를 포함하고, 상기 추가적인 사용자 정보를 획득하는 단계는 상기 유사도를 높이는 방향으로 반복 수행될 수 있다.
다른 일 실시예에 따른, 3차원 공간에 대한 사용자의 위치(position) 및 방향(orientation) 정보를 포함하는 사용자 포즈를 추정하는 방법은, 상기 3차원 공간에서 획득된 영상을 포함하는 사용자 정보를 수신하는 단계와, 상기 3차원 공간에 대한 깊이 정보 및 영상 정보를 포함하는 공간 정보에 기초하여 구축된 3차원 가상 공간 모델을 확인하는 단계와, 상기 3차원 가상 공간 모델 내에서 상기 사용자 정보에 대응하는 대응 정보를 생성하는 단계와, 상기 대응 정보와 상기 사용자 정보의 유사도를 산출하는 단계 및 상기 유사도에 기초하여 사용자 포즈를 추정하는 단계를 포함한다.
일 실시예에 따른 3차원 공간에 대한 사용자 포즈 추정 장치는 3차원 공간에 대한 깊이 정보 및 영상 데이터를 포함하는 공간 정보를 획득하는 공간 정보 획득부와, 상기 공간 정보에 기초하여 깊이-영상 연계 정보를 구성하고, 상기 깊이-영상 연계 정보에 기초하여 상기 3차원 공간에 대응하는 3차원 가상 공간 모델을 생성하는 가상 공간 모델 생성부와, 상기 3차원 공간에서 사용자 디바이스에 의해 획득된 영상을 포함하는 사용자 정보를 수신하는 사용자 정보 수신부 및 상기 3차원 가상 공간 모델 내에서 상기 사용자 정보에 대응하는 대응 정보를 생성하고, 상기 대응 정보와 상기 사용자 정보의 유사도를 산출하고, 상기 유사도에 기초하여 상기 사용자 포즈를 추정하도록 구성된 적어도 하나의 프로세서를 포함하는 제어부를 포함한다.
상기 공간 모델 생성부는, 상기 3차원 공간에 대한 영상 데이터에서 상기 3차원 공간의 구조와 관련된 배경 영역과 상기 3차원 공간에 놓인 물체에 해당하는 비배경 영역을 구분하고, 상기 배경 영역을 이용하여 상기 3차원 가상 공간 모델을 구축할 수 있다.
상기 제어부는 상기 사용자 정보에 포함된 영상에서 상기 3차원 공간의 구조와 관련된 배경 영역과 상기 3차원 공간에 놓인 물체에 해당하는 비배경 영역을 구분하고, 상기 사용자 정보에 포함된 영상의 배경 영역을 이용하여 상기 사용자 정보를 가공하고, 상기 3차원 가상 공간 모델 내에서 가공된 사용자 정보에 대응하는 대응 정보를 생성할 수 있다.
다른 일 실시예에 따른 3차원 공간에 대한 사용자의 위치(position) 및 방향(orientation) 정보를 포함하는 사용자 포즈를 추정하는 장치는, 상기 3차원 공간에 대한 깊이 정보 및 영상 정보를 포함하는 공간 정보에 기초하여 구축된 3차원 가상 공간 모델을 제공하는 가상 공간 모델 제공부와, 상기 3차원 공간에서 사용자 디바이스에 의해 획득된 영상을 포함하는 사용자 정보를 수신하는 사용자 정보 수신부 및 상기 3차원 가상 공간 모델 내에서 상기 사용자 정보에 대응하는 대응 정보를 생성하고, 상기 대응 정보와 상기 사용자 정보의 유사도를 산출하고, 상기 유사도에 기초하여 상기 사용자 포즈를 추정하도록 구성된 적어도 하나의 프로세서를 포함하는 제어부를 포함한다.
또 다른 일 실시예에 따른 3차원 공간에 대한 사용자 포즈 추정 장치는, 3차원 공간에 대한 영상을 포함하는 사용자 정보를 생성하는 사용자 정보 생성부와, 상기 사용자 정보를 사용자 포즈 추정 서버로 전송하고, 3차원 가상 공간 모델에서 추정된 사용자 포즈에 대한 정보를 상기 서버로부터 수신하는 통신부 및 상기 사용자 정보 생성부 및 통신부의 동작을 제어하고, 상기 사용자 포즈에 대한 정보를 현재 구동 중인 어플리케이션 또는 구동 시스템으로 전달하도록 구성된 적어도 하나의 프로세서를 포함하는 제어부를 포함한다.
본 발명의 실시예들은 공간지도로 3차원 가상 공간 모델을 사용함으로써 공간 정보 획득 경로에 강인한 3차원 가상 공간 모델을 구축할 수 있고, 공간 정보 획득 포즈에 따른 사용자 포즈 추정 정밀도의 민감도를 감소시킬 수 있다.
또한, 본 발명의 실시예에 따른 3차원 가상 공간 모델은 현실 공간과 유사하게 구성될 수 있음에도 불구하고, 공간 정보 취득시간, 공간 정보 용량, 데이터 처리속도 등이 감소할 수 있다.
또한, 시간의 흐름에 따른 현실 공간의 변화에도 강인한 사용자 포즈 추정 방법이 제공될 수 있다.
또한, 본 발명의 실시예들은 혼합 현실(Mixed Reality)에서 사용자 포즈를 추정할 때 활용될 수 있다.
또한, 정밀한 사용자 포즈 추정으로 인해 현실 공간과 가상 공간 사이의 어색함이 감소할 수 있으며, 혼합 현실에서 사용자의 몰입도를 증가시킬 수 있다. 따라서, 본 발명의 실시예들은 혼합 현실 관련 기술의 상용화 및 발전에 기여할 수 있다.
도 1은 점구름정보를 활용하여 구성된 불연속적인 공간 지도의 예를 나타내는 도면이다.
도 2는 시간의 흐름에 따른 공간의 변화를 나타내는 예시도이다.
도 3은 시간에 흐름에 따른 공간의 변화를 나타내는 다른 예시도이다.
도 4는 본 발명의 일 실시예에 따른 3차원 가상 공간 모델의 예를 나타내는 도면이다.
도 5는 일 실시예에 따른 3차원 가상 공간 모델 생성의 예를 설명하기 위한 도면이다.
도 6은 일 실시예에 따른 3차원 가상 공간 모델을 이용한 사용자 포즈 추정 시스템을 설명하기 위한 도면이다.
도 7은 일 실시예에 따른 3차원 공간에 대한 사용자 포즈 추정 장치의 구성을 설명하기 위한 도면이다.
도 8은 일 실시예에 따른 사용자 디바이스의 구성을 설명하기 위한 도면이다.
도 9는 일 실시예에 따른 포즈의 개념을 설명하기 위한 예시도이다.
도 10은 일 실시예에 따른 3차원 공간에 대한 사용자 포즈 추정 방법을 설명하기 위한 흐름도이다.
도 11은 다른 일 실시예에 따른 3차원 공간에 대한 사용자 포즈 추정 방법을 설명하기 위한 흐름도이다.
도 12는 일 실시예에 따른 추가 사용자 포즈 획득 방법의 예를 설명하기 위한 도면이다.
이하 첨부 도면들 및 첨부 도면들에 기재된 내용들을 참조하여 본 발명의 실시예를 상세하게 설명하지만, 본 발명이 실시예에 의해 제한되거나 한정되는 것은 아니다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
본 명세서에서 사용되는 “실시예”, “예”, “측면”, “예시” 등은 기술된 임의의 양상(aspect) 또는 설계가 다른 양상 또는 설계들보다 양호하다거나, 이점이 있는 것으로 해석되어야 하는 것은 아니다.
또한, '또는' 이라는 용어는 배타적 논리합 'exclusive or' 이기보다는 포함적인 논리합 'inclusive or' 를 의미한다. 즉, 달리 언급되지 않는 한 또는 문맥으로부터 명확하지 않는 한, 'x가 a 또는 b를 이용한다' 라는 표현은 포함적인 자연 순열들(natural inclusive permutations) 중 어느 하나를 의미한다.
또한, 본 명세서 및 청구항들에서 사용되는 단수 표현("a" 또는 "an")은, 달리 언급하지 않는 한 또는 단수 형태에 관한 것이라고 문맥으로부터 명확하지 않는 한, 일반적으로 "하나 이상"을 의미하는 것으로 해석되어야 한다.
또한, 본 명세서 및 청구항들에서 사용되는 제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
한편, 본 발명을 설명함에 있어서, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는, 그 상세한 설명을 생략할 것이다. 그리고, 본 명세서에서 사용되는 용어(terminology)들은 본 발명의 실시예를 적절히 표현하기 위해 사용된 용어들로서, 이는 사용자, 운용자의 의도 또는 본 발명이 속하는 분야의 관례 등에 따라 달라질 수 있다. 따라서, 본 용어들에 대한 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 4는 본 발명의 일 실시예에 따른 3차원 가상 공간 모델의 예를 나타내는 도면이다.
도 5는 일 실시예에 따른 3차원 가상 공간 모델 생성의 예를 설명하기 위한 도면이다.
도 4를 참조하면, 통상적으로 3차원 가상 공간 모델은 obj, x3d 등과 같은 깊이-영상연계정보를 이용하여 구성된 현실 공간에 대한 모델이다. 예를 들어, 3차원 가상 공간 모델은 한국등록특허 제10-1835434호(발명의 명칭: 투영 이미지 생성 방법 및 그 장치, 이미지 픽셀과 깊이 값 간의 매핑 방법)를 통해 obj, x3d 등이 생성된 모델 또는 'TeeVR 모델'을 포함할 수도 있다.
이때, 일 실시예에 따른 3차원 가상 공간 모델은 도 5에 도시된 바와 같이 3차원 가상 공간 모델을 구성하기 위해 배경 영역과 비배경 영역을 구분하고, 배경 영역 만을 사용하여 구성될 수 있다.
도 5에서 (a)는 공간 정보에 포함된 영상 데이터이고, (b)는 비배경 영역을 제거한 영상을 나타내고, (c)는 배경 영역을 확장하여 영상 데이터를 생성한 예를 나타낸다.
예를 들어, 배경 영역은 3차원 공간을 형성하는 건축물 자체의 구조를 의미하거나 또는 방문이나 창문과 같이 그 건축물에 부착된 구조물일 수 있다. 따라서, 영상 데이터에서 배경 영역은 3차원 공간의 구조와 관련된 영역이라 정의될 수 있다.
도 5의 (a)에서 실내 공간에 위치한 다양한 물체들(책상, 책장, 의자 등)에 대응되는 영역은 비배경 영역에 해당될 수 있다. 도 5에서 (b)는 실내 공간에 위치한 다양한 물체들(흰색으로 표시된 영역)이 제거된 배역 영역을 나타낸다.
3차원 가상 공간 모델은 실내 공간과 실외 공간을 모두 포함하는 개념으로, 독립적인 실내 공간, 독립적인 실외 공간 또는 실내와 실외가 연결된 공간 일수도 있다. 3차원 가상 공간 모델에 obj, x3d 등과 같은 모델(사람, 사물 등)을 추가할 수도 있으며, 3차원 가상 공간 모델은 모델이 추가된 3차원 가상 공간 모델 또한 포함하는 개념일 수 있다. 한편, 공간 지도는 3차원 대신 차원을 낮춰 2차원 가상 공간 모델을 사용할 수도 있다.
3차원 공간 모델은 사전에 구축된 obj, x3d와 같은 모델을 사용할 수도 있고, 공간 정보를 새로 획득하여 구축할 수도 있고, 사전에 구축된 모델을 갱신하여 사용할 수도 있다. 3차원 공간 모델은 현실 공간과 유사하다고 판단될 수 있다.
도 6은 일 실시예에 따른 3차원 가상 공간 모델을 이용한 사용자 포즈 추정 시스템을 설명하기 위한 도면이다.
도 6을 참조하면, 3차원 가상 공간 모델을 이용한 사용자 포즈 추정 시스템은 사용자 디바이스(610) 및 사용자 포즈 추정 장치(620)를 포함한다. 일 실시예에 따른 사용자 포즈 추정 장치(620)는 서버(도시 되지 않음)에 구비되거나 사용자 디바이스(610)에 구비될 수도 있다.
사용자 디바이스(610)는 현실 공간(601)에서 사용자 정보(611)를 획득하고 사용자 디바이스(610)에 사용자 정보(611)를 전송할 수 있다.
사용자 포즈 추정 장치(620)는 장치 내부 또는 외부의 스토리지 시스템(602)에 저장된 3차원 가상 공간 모델(630) 및 사용자 정보(611)를 이용하여 사용자 포즈를 추정할 수 있다.
사용자 포즈 추정 장치(620)는 3차원 가상 공간 모델(630)에서 사용자 포즈에 해당할 확률이 높은 대응 정보들(621)을 사용자 정보(611)와 비교함으로써 정확한 사용자 포즈를 추정할 수 있다.
도 7은 일 실시예에 따른 3차원 공간에 대한 사용자 포즈 추정 장치의 구성을 설명하기 위한 도면이다.
도 7을 참조하면, 일 실시예에 따른 3차원 공간에 대한 사용자 포즈 추정 장치(620)는 가상 공간 모델 제공부(730), 제어부(740) 및 사용자 정부 수신부(750)를 포함한다. 또한, 사용자 포즈 추정 장치(620)는 공간 정보 획득부(710) 및 가상 공간 모델 생성부(720)를 더 포함할 수 있다. 또한, 사용자 포즈 추정 장치(620)는 사용자 정보 요청부(760)를 더 포함할 수 있다.
공간 정보 획득부(710)는 3차원 공간에 대한 깊이 정보 및 영상 데이터를 포함하는 공간 정보를 획득한다. 예를 들어, 공간 정보는 깊이측정장치 및 영상측정장치를 이용하여 획득될 수 있다.
3차원 가상 공간 모델을 구성하기 위한 공간 정보를 취득하는 깊이측정장치 또는 영상측정장치 등으로 구성된 측정 장치의 시야각(FoV, Field of View)이 현실 공간을 확보할 수 있는 경로로 공간 정보를 취득하면, 3차원 가상 공간 모델은 현실 공간과 유사하게 구성될 수 있으며, 공간 정보 취득시간, 공간 정보 용량, 데이터 처리속도 등이 감소할 수 있어 효율적일 수 있다.
영상정보는 3차원 공간에 대한 2차원 이미지로서 2자유도의 기저벡터(basis vector)로 표현 가능한 형태를 가질 수 있으며, 카메라와 같이 3차원을 2차원으로 표현하는 형태 또는 카메라에 적외선 필터를 장착하여 3차원 열정보를 2차원으로 표현한 형태일 수 있다.
깊이정보는 3자유도의 기저 벡터로 표현 가능한 점 형태를 가지며, 깊이측정장치를 사용하여 취득될 수도 있고, 서로 다른 곳에서 촬영된 두 개 이상의 이미지를 활용하여 추정될 수도 있다. 전자의 예로는 라이다(LiDAR), 소나(SONAR), 적외선(InfraRed), TOF(Time Of Flight) 거리탐지기를 통해 취득된 깊이정보가 있고, 후자의 예로는 스테레오카메라, 다중카메라, 전방향 스테레오카메라 등을 통해 취득된 깊이정보가 있다. 한편, Kinect, JUMP, PrimeSense, Project Beyond 등의 디바이스를 이용하게 되면 깊이정보 및 영상정보를 동시에 취득할 수도 있다.
예컨대, 본 발명의 일 실시예 에서는 깊이 측정 장치를 통해 취득한 깊이정보 뿐만 아니라 내삽법(interpolation)을 통해 깊이정보를 새롭게 추정하여 사용할 수도 있다. 보다 구체적으로는, 복수의 취득 깊이정보 중에서 3개 이상의 깊이정보를 선별하여 다각형(삼각형 포함) 메쉬(Mesh)를 구성한 후, 그 다각형 메쉬 내부에 내삽법을 통해 새로운 깊이정보를 추정하여 추가할 수 있다.
한편, 본 발명의 일 실시예에 따른 취득 깊이정보 및 영상정보는 통합 센서 시스템을 이용하여 동시에 취득될 수도 있다. 여러 개의 측정장치를 사용하는 경우, 센서 간의 좌표 관계를 구하는 캘리브레이션 과정이 필요할 수 있다.
공간 정보를 취득하는 과정에서 관성측정장치(IMU) 등을 추가적으로 사용할 수도 있고, 바퀴형 이동로봇에 센서를 부착하여 측정하는 경우 거리정보(odometry)를 활용할 수도 있다. 현실 공간이 측정장치의 시야각보다 넓은 경우, 센서의 회전, 이동 또는 이를 조합하여 공간 정보를 취득할 수 있다. 이때, 개별 공간 정보가 취득된 3차원 포즈(pose)가 각각 상이할 수 있으며, 개별 공간 정보가 취득된 포즈를 예측하기 위해 슬램(SLAM, Simultaneous Localization And Mapping), 영상-관성 거리정보(VIO, Visual Inertial Odometry), 영상 거리정보(VO, Visual Odometry) 등의 기법을 활용할 수 있다.
한편, 공간 정보의 구성은 측정장치의 종류에 따라 상이할 수 있다. 일예로 측정장치가 단일 카메라로만 구성된 경우 사전측정정보는 카메라 영상정보로 구성되며, 해당 영상정보를 활용하여 단일 카메라인 경우 픽셀들 간의 상대적 거리를, 복수의 카메라인 경우에는 픽셀들 간의 절대 거리를 예측할 수 있다. 특히, 특징점을 추출하지 않고도 단일 카메라의 경우 누적된 영상정보를 활용하여 픽셀의 깊이를 예측할 수 있으며, 복수의 카메라의 경우 복수의 카메라 영상이나 이의 누적된 영상정보를 활용하여 픽셀의 깊이를 예측할 수도 있다.
나아가, 추가적인 깊이정보, 관성정보 등의 정보가 함께 활용된 경우, 각 측정장치의 고유특성에 맞게 공간 정보 처리가 가능할 수 있다. 일예로 관성측정장치를 사용하여 관성정보가 획득 가능한 경우에 이를 활용하여 슬램의 성능을 향상시키거나, 영상정보 처리 시 영상 취득지점에 대한 추정(prediction) 정보로 사용하여 영상 취득지점에 대한 보정(correction)이 보다 용이하도록 할 수 있다. 또한, 관성정보의 가속도 값 혹은 각속도 값을 활용하여 실제 이동 거리를 예상할 수 있고, 이를 단일 카메라 혹은 복수의 카메라로부터 추출된 깊이정보의 크기(scale)을 보정하는데 활용할 수도 있다.
가상 공간 모델 생성부(720)는 공간 정보에 기초하여 깊이-영상 연계 정보를 구성하고, 상기 깊이-영상 연계 정보에 기초하여 상기 3차원 공간에 대응하는 3차원 가상 공간 모델을 생성한다.
예를 들어, 실내 공간의 3차원 가상 공간 모델을 생성하는 경우 공간 정보 획득부(710)는 실내 공간에 대한 공간 정보인 실내 공간 이미지를 획득할 수 있다. 이때, 실내 공간 이미지는 실내 공간 내부의 다양한 위치에서 촬영된 이미지일 수 있다.
이때, 가상 공간 모델 생성부(720)는 실내 공간의 구조에 대응되는 영역인 배경 영역 및 실내 공간에 위치한 물체 또는 이동 중인 사람에 대응되는 영역인 비배경 영역을 구분할 수 있다.
가상 공간 모델 생성부(720)는 실내 공간 이미지를 구성하는 이미지의 픽셀 값에 기초하여 배경 영역과 비배경 영역을 구분할 수 있다.
배경영역은 다른 요소들로 인해 일부 가려져 있어 데이터가 온전하지 않으나, 가려지지 않은 부분과 유사성을 가질 수 있을 것으로 추론되어, 가려지지 않은 부분을 홀필링(hole filling)이나 인페이팅(inpainting)기법을 사용하여 재구성해 낼 수 있는 부분에 해당할 수 있다. 또한, 배경영역은 건물 내부의 큰 간판이나 안내데스크 등과 같이 다른 물체를 가릴 수 있으나, 해당 물체의 엣지 부분에서 영상과 지형의 정합도가 모든 데이터내에서 일치하거나 별도의 정합 과정을 통해 일치시킬 수 있는 부분일 수 있다.
가상 공간 모델 생성부(720)는 실내 공간 이미지에서 배경영역을 비배경영역으로 확장하여 적어도 하나의 확장 실내 공간 이미지를 생성할 수 있다. 예를 들어, 도 5의 (b)에서 배경 영역을 비배경 영역이 제거된 흰색으로 표현된 부분을 확장할 수 있다.
가상 공간 모델 생성부(720)는 배경 영역에 포함된 엣지가 비배경 영역과의 경계선에서 단절된 경우, 엣지의 연장선이 배경 영역과 비배경 영역 간의 경계선을 넘어 비배경 영역으로 이어진다는 추론을 통해 확장된 이미지를 생성할 수 있다.
이때, 특정한 실내 공간 이미지 이외에 다른 하나 이상의 실내 공간 이미지를 배경의 보완 이미지로 지정하고, 특정한 실내 공간 이미지의 비배경 영역에 해당하는 영역을 그 배경의 보완 이미지의 정보를 사용하여 줄여 나갈 수 있다.
가상 공간 모델 생성부(720)는 적어도 하나의 확장된 실내 공간 이미지와 실내 공간에 대한 깊이 값의 정보를 포함하는 지형 정보에 기초하여 깊이-영상 연계 정보를 생성할 수 있다. 깊이-영상 연계 정보는 적어도 하나의 확장된 실내 공간 이미지의 픽셀들에 대응되는 실내 공간의 깊이 값이 매칭된 정보일 수 있다.
가상 공간 모델 생성부(720)는 적어도 하나의 확장된 실내 공간 이미지와 지형정보 외에도, 적어도 하나의 확장된 실내 공간 이미지와 지형정보 각각의 취득 위치 및 취득 각도에 대한 정보를 포함하는 이미지 취득 포즈와 깊이 취득 포즈를 더 이용하여 깊이-이미지연계정보를 생성할 수 있다.
가상 공간 모델 생성부(720)는 적어도 하나의 확장된 실내 공간 이미지, 지형정보 및 깊이-영상 연계정보를 이용하여 현실의 3차원 공간에 대한 3차원 가상 공간 모델을 생성한다.
가상 공간 모델 제공부(730)는 사용자 포즈 추정이 필요한 경우 3차원 공간에 대한 깊이 정보 및 영상 정보를 포함하는 공간 정보에 기초하여 구축된 3차원 가상 공간 모델을 제공한다.
이때, 사용자 포즈 추정은 사용자 디바이스(610) 또는 사용자 포즈 추정 장치(620)에 설치된 어플리케이션이 구동된 후 수행될 수 있다. 가상 공간 모델 제공부(730)는 사용자 디바이스(610) 또는 사용자 포즈 추정 장치(620)에서 구동중인 어플리케이션 또는 해당 장치의 구동 시스템에게 3차원 가상 공간 모델을 제공할 수 있다.
제어부(740)는 적어도 하나의 프로세서를 포함할 수 있다. 이때 제어부(740)는 명령어(instructions) 또는 프로그램이 기록된 적어도 하나의 컴퓨터 인식 가능 스토리지(one or more computer - readable storage media)와 연결될 수 있다.
따라서, 제어부(740)는 3차원 가상 공간 모델 내에서 사용자 정보에 대응하는 대응 정보를 생성하고, 대응 정보와 사용자 정보의 유사도를 산출하고, 유사도에 기초하여 사용자 포즈를 추정하도록 구성된 적어도 하나의 프로세서를 포함한다.
일 실시예에 따른 사용자 포즈 추정은 딥러닝(Deep Learning) 또는 신경망 네트워크를 활용하여 3차원 가상 공간 모델을 학습함으로써 수행될 수 있다.
학습 문제의 형태에 따라 강화학습(reinforcement learning), 지도학습(supervised learning), 비지도학습(unsupervised learning)로 나눠질 수 있다. 학습단계에서 필요한 방대한 양의 훈련데이터(training test)가 필요할 수 있으며, 훈련데이터는 영상정보가 포함된 데이터와 그 데이터가 취득된 포즈가 포함된 데이터 등으로 구성될 수 있으며, 학습데이터의 양을 증가시키기 위하여 상기 두 종류의 데이터에 노이즈(noise)를 추가하여 변형시켜 사용할 수도 있다. 합성곱 신경망(CNN) 또는 다양한 신경망의 전체 또는 일부를 사용할 수도 있다. 딥러닝의 성능 또는 속도 향상을 위해 하나 이상의 GPU를 사용할 수도 있으며, 병렬 연산을 수행할 수도 있다. 딥러닝의 결과는 스칼라, 벡터, 확률 등으로 표현될 수 있으며, 이 결과를 이용하여 사용자 정보가 취득된 포즈로 예상되는 사용자 포즈를 추정할 수 있다. 입력으로 사용자 정보의 영상정보를 사용할 수 있으며, 사용자부가정보를 함께 사용할 수 있다. 사용자부가정보를 함께 사용하는 경우, 신경망에 레이어(layer)를 추가하거나 함수를 변화시키거나 파라미터 수를 조절하거나 그 값을 변경할 수도 있다. 신경망 네트워크를 구성하기 위해 파이썬, 씨언어, 매트랩 등 또는 이들의 조합으로 된 컴퓨터언어를 사용할 수도 있다.
사용자 정보가 순차적으로 취득되는 경우, 3차원 가상 공간 모델을 기반으로 파티클 필터(Particle Filter), EKF. EIF, UKF 등의 기법을 활용하여 사용자 포즈를 추정할 수 있다. 사용자부가정보로 관성정보 또는 거리정보가 취득되는 경우 추정된 사용자 포즈를 보정할 수 있다. 순차적으로 취득된 사용자 정보에 따라 파티클 필터의 값이 특정 포즈로 수렴할 수 있으며, 이때 수렴된 지점을 사용자 포즈로 추정할 수 있다. 사용자 포즈 추정 시, 가중치(Weight)를 부과할 수 있고 다수의 수렴지점 중에서 사용자 포즈를 결정할 수도 있다.
딥러닝으로 추정한 포즈와 파티클 필터 등으로 추정된 포즈를 융합하여 사용자 포즈를 추정할 수 있다. 예컨대, 딥러닝으로 추정한 포즈 주위에서 파티클 필터를 수행하여 사용자 포즈를 추정할 수 있으며, 반대의 방법으로 파티클 필터로 수렴된 포즈 주위에서 딥러닝으로 사용자 포즈를 추정할 수 있다. 사용자 포즈 추정 시, 가중치(Weight)를 부과할 수 있고 다수의 수렴지점 중에서 사용자 포즈를 결정할 수도 있다.
유사도는 3차원 가상 공간 모델에서 생성한 대응 정보와 사용자 정보의 유사한 정도를 의미하며, 유사도가 높을수록 상기 대응 정보와 상기 사용자 정보가 비슷하다고 볼 수 있으며, 유사도가 높은 대응 정보가 생성된 3차원 가상 공간 모델의 포즈를 사용자 정보가 취득된 사용자 포즈로 추정할 수 있다. 유사도는 스칼라(scalar), 벡터(vector), 공분산행렬(covariance matrix) 등으로 표현될 수 있고, 유클리디안거리(euclidean distance), 맨해턴거리(manhattan distance), 마하라노비스거리(mahalanobis distance), 구조적유사도(SSIM, structural similarity), 정규정보거리(NID, normalized information distance), 최소평균제곱오차(MMSE, Minimun Mean Square Error), 엔트로피(Entropy) 등으로 산출될 수도 있다.
유사도 산출 및 사용자 포즈 추정의 보다 상세한 설명은 도 10을 통해 설명하기로 한다.
이때, 3차원 가상 공간 모델은 3차원 공간에 대한 영상 데이터에서 3차원 공간의 구조와 관련된 배경 영역과 3차원 공간에 놓인 물체에 해당하는 비배경 영역을 구분하고, 배경 영역을 이용하여 구축된 것일 수 있다.
사용자 정부 수신부(750)는 3차원 공간에서 사용자 디바이스에 의해 획득된 영상을 포함하는 사용자 정보를 수신한다.
사용자 정보는 영상정보가 포함된 정보로, 영상측정장치를 하나 이상 포함하고, 깊이측정장치 또는 부가장치 등을 이용하여 취득할 수 있다. 측정장치의 시야각이 좁아 충분한 사용자 정보가 취득되지 않는 경우 측정장치 회전, 이동 또는 이를 조합하여 사용자 정보를 취득할 수 있다. 사용자 정보는 단일 또는 복수의 영상센서(카메라)로 취득할 수 있고, 핀홀(pin-hole)모델이나 어안렌즈, 또는 파노라마 형식으로 취득될 수도 있다. 단일 영상정보, 복수의 영상정보 또는 순차적인 영상정보로 취득될 수 있다. 취득한 사용자 정보를 이용하여 영상정보, 깊이정보 또는 깊이-영상연계정보 등을 구성할 수 있다.
예컨대, 단일 영상측정장치를 사용하면 영상정보를 취득할 수 있고, 순차적으로 취득된 영상정보를 사용하면 깊이정보를 계산할 수 있고, 이를 통해 깊이-영상연계정보를 구성할 수 있다.
예컨대, 복수의 영상측정장치를 사용하면 각 영상측정장치에서 취득된 영상정보와 영상측정장치 간의 관계를 활용하여 깊이정보를 계산할 수 있고, 이를 통해 깊이-영상연계정보를 구성할 수 있다. 영상측정장치 간의 관계는 영상측정장치 간의 캘리브레이션(Calibration)정보 또는 각 영상측정장치에서 취득된 영상정보 간의 변환정보(Homography matrix) 일 수 있다.
예컨대, 적어도 하나 이상의 영상측정장치와 적어도 하나 이상의 깊이측정장치를 사용하는 경우 두 장치 간의 캘리브레이션 정보를 이용하여 깊이-영상연계정보를 구성할 수 있다. 딥러닝(Deep Learning)을 활용하여 영상정보에서 깊이정보를 추출할 수도 있다. 신경망 네트워크가 구성될 수 있고, 컨볼루션 네트워크가 사용될 수 있다. 학습 및 시험을 위한 다수의 데이터가 필요할 수 있고, 신경망 네트워크는 선형함수, 비선형함수, 다수의 레이어 등으로 구성될 수 있으며, 딥러닝의 결과는 확률, 스칼라, 벡터 등으로 표현할 수 있다. 반복 학습을 수행할 수도 있으며, 파라미터 튜닝이 필요할 수도 있다. 딥러닝으로 추출된 깊이정보를 활용하여 깊이-영상연계정보를 구성할 수 있다. 영상정보를 가공한 가공된 영상정보를 사용할 수도 있으며, 예컨대, 이미지의 명암, 채도 등을 변화시키거나, 파노라마 이미지를 교정 이미지(Rectified Image)로 변환시키는 작업 등이 수행될 수 있다.
사용자 정보 요청부(760)는 추가적인 사용자 정보의 획득이 필요한 경우 사용자 디바이스(610)로 안내 정보를 전송할 수 있다. 안내 정보와 관련된 구체적인 설명은 도 12를 통해 설명하기로 한다.
도 8은 일 실시예에 따른 사용자 디바이스의 구성을 설명하기 위한 도면이다.
도 8을 참조하면, 사용자 디바이스(610)는 사용자 정보 생성부(810), 통신부(820) 및 제어부(830)를 포함한다. 사용자 디바이스(610)는 사용자와 인터페이스하기 위한 디스플레이, 입력 수단 및 출력 수단을 포함하는 사용자 인터페이스부(840)를 더 포함할 수 있다.
사용자 정보 생성부(810)는 3차원 공간에 대한 영상을 포함하는 사용자 정보를 생성한다. 따라서, 사용자 정보 생성부(810)는 영상 측정 장치 및 깊이 측정 장치 중 적어도 하나를 포함할 수 있다.
통신부(820)는 사용자 정보를 사용자 포즈 추정 서버로 전송하고, 3차원 가상 공간 모델에서 추정된 사용자 포즈에 대한 정보를 상기 서버로부터 수신한다.
이때, 사용자 포즈 추정 서버는 도 7에 도시된 사용자 포즈 추정 장치(620)일 수 있고, 사용자 포즈 추정 서비스를 제공하는 별도의 서버일수 도 있다.
제어부(830)는 사용자 정보 생성부(810) 및 통신부(830)의 동작을 제어하고, 사용자 포즈에 대한 정보를 현재 구동 중인 어플리케이션 또는 구동 시스템으로 전달하도록 구성된 적어도 하나의 프로세서를 포함한다.
도 9는 일 실시예에 따른 포즈의 개념을 설명하기 위한 예시도이다.
3차원 가상 공간 모델을 구축하는데 사용되는 공간 정보는 현실 공간의 일부 포즈에서 취득된 불연속정보로 고려될 수 있다. 여기서 포즈(pose)는 위치(position)과 방향(orientation)을 모두 포함하는 개념이다. 일예로, 2차원에서 포즈는 측정장치의 위치인 x, y와 측정장치의 각도 a로 표현될 수 있다.
도 9에 도시된 예는 가로와 세로가 1m인 정사각형의 평면에서 측정장치가 x축, y축에 대해 0~1m의 범위에서 10cm 간격으로 이동하고, 회전각도는 0~360도의 범위에서 10도씩 회전할 수 있는 예를 나타낸다.
이때, 가능한 전체 포즈의 경우의 수는 11*11*37으로 4477 가지이다. 마찬가지로, 3차원에서 포즈는 센서의 위치인 x, y, z와 측정장치의 각도 롤(roll), 피치(pitch), 요(yaw)로 표현될 수 있다.
가로, 세로. 높이가 각 1m인 정육면체의 공간에서 센서가 x축, y축, z축에 대해 0~1m의 범위에서 10cm 간격으로 움직이고, 회전각도는 0~360도의 범위에서 각 10도씩 회전한다고 가정하면 가능한 전체 포즈의 경우의 수는 11*11*11*37*37*19이다. 즉, 약 3400만 가지의 경우의 수가 존재할 수 있다.
측정장치의 이동간격과 회전각도 간격을 감소시키면 불연속정보를 연속정보처럼 보이게 할 순 있으나, 가능한 포즈의 수가 기하급수적으로 커질 것이며, 현실 공간의 부피는 1m3 보다 매우 크기 때문에 가능한 모든 포즈에서 공간 정보를 취득하는 것은 현실적으로 불가능하다.
위와 같은 이유로 공간 정보를 취득하는 단계에서는 현실 공간을 충분히 담을 수 있는 일부 포즈에서 데이터를 취득하고, 상기 취득된 공간 정보를 기초로 하여 깊이-영상연계정보를 구성하여 3차원 가상 공간 모델을 구축함으로써 일부 포즈에서 취득한 공간 정보를 확장시킬 수 있다.
3차원 가상 공간 모델은 일부 포즈에서 취득된 공간 정보를 기반으로 구성될 수 있지만, 공간 정보로부터 구성된 깊이-영상연계정보를 활용하기 때문에 3차원 가상 공간 모델 내 어떤 포즈에서도 동일한 현실 공간 내 포즈에서 취득된 공간 정보 또는 구성된 깊이-영상연계정보와 유사한 대응 정보를 생성할 수도 있다.
즉, 공간 정보가 취득되지 않은 포즈에서도 3차원 가상 공간 모델을 사용하면 해당 포즈에서의 깊이-영상연계정보 또는 공간 정보와 유사한 대응 정보를 생성할 수 있으며, 상기 생성된 대응 정보는 현실 공간의 같은 포즈에서 취득한 공간 정보로부터 구성된 깊이-영상연계정보와 유사하다고 고려될 수 있다. 3차원 가상 공간 모델은 불연속정보인 공간 정보를 연속정보인 대응 정보로 변환시킬 수 있다.
도 10은 일 실시예에 따른 3차원 공간에 대한 사용자 포즈 추정 방법을 설명하기 위한 흐름도이다.
도 10에 도시된 방법은 도 7에 도시된 사용자 포즈 추정 장치(620)에 의해 수행될 수 있다.
S1010 단계에서 장치는, 깊이 측정 장치 및 영상 획득 장치를 이용하여 3차원 공간에 대한 깊이 정보 및 영상 데이터를 포함하는 공간 정보를 획득한다.
S1020 단계에서 장치는, 공간 정보에 기초하여 깊이-영상 연계 정보를 구성하고, 깊이-영상 연계 정보에 기초하여 3차원 공간에 대응하는 3차원 가상 공간 모델을 구축한다.
S1030 단계에서 장치는, 3차원 공간에서 사용자 디바이스에 의해 획득된 영상을 포함하는 사용자 정보를 수신한다. 이때, 사용자 정보는 획득된 영상에 대응하는 공간에 대한 깊이 정보를 더 포함할 수 있다.
S1040 단계에서 장치는, 3차원 가상 공간 모델 내에서 사용자 정보에 대응하는 대응 정보를 생성한다.
3차원 가상 공간 모델을 이용하면 공간 정보가 취득되지 않은 포즈일지라도 해당 포즈에서 취득된 공간 정보 또는 깊이-영상 연계정보와 유사할 수 있는 대응 정보를 생성할 수 있다.
대응 정보는 깊이정보, 영상정보 또는 깊이-영상연계정보로 표현될 수 있다. 3차원 가상 공간 모델 내에서 3자유도의 기저벡터로 표현되는 포즈에서 대응 정보를 생성할 수 있다.
예컨대, 사용자 정보 취득 포즈의 높이가 변하지 않는다면 3차원 가상 공간 모델 내에서 2자유도의 기저벡터로 표현되는 포즈에서 대응 정보를 생성할 수 있다. 대응 정보는 시야각, 영상정보 변환, 깊이정보 변환 등의 과정을 거쳐 생성될 수도 있다.
이때, 대응 정보를 생성하는 S1040 단계는 사용자 정보에 포함된 영상에서 상기 3차원 공간의 구조와 관련된 배경 영역과 상기 3차원 공간에 놓인 물체에 해당하는 비배경 영역을 구분하는 단계, 사용자 정보에 포함된 영상의 배경 영역을 이용하여 상기 사용자 정보를 가공하는 단계 및 3차원 가상 공간 모델 내에서 가공된 사용자 정보에 대응하는 대응 정보를 생성하는 단계를 포함할 수 있다.
사용자가 3차원 가상 공간 모델의 배경이 된 현실 공간에서 사용자 정보를 획득할 때, 현실 공간은 3차원 가상 공간 모델을 구성하기 위해 공간 정보를 획득한 시점과 동일하지 않을 수 있고, 사람, 사물, 인테리어 등 공간의 모습이 바뀌었을 수도 있다.
따라서, 사용자 정보에서 배경부분과 비배경부분을 구분하고 사용자 정보에서 비배경부분을 제거할 수도 있고, 배경부분을 사용하여 사용자 정보를 변환시킬 수 있다. 조명, 빛 등에 의한 효과를 제거하기 위해 사용자 정보를 가공하여 사용할 수 있다. 사용자 정보를 3차원 공간 모델에서 생성한 대응 정보와 비교하는 과정에서 사용자 정보 또는 대응 정보의 형태를 변환하여 비교할 수 있다.
S1050 단계에서 장치는, 대응 정보와 사용자 정보의 유사도를 산출한다.
이때, 유사도를 산출하는 단계는 유사도를 높이는 방향으로 대응 정보를 재 생성하고, 재 생성된 대응 정보에 기초하여 유사도를 재 산출하는 단계를 포함할 수 있다. 이때, 유사도를 높이는 방향은, 사용자 정보를 재 획득하거나 사용자 정보에 대응하는 대응 정보를 재 생성하거나 사용자 정보 이외에 부가적인 정보를 사용하는 것을 포함한다.
유사도를 높이기 위하여 유사도를 산출하는 S1050 단계는, 사용자 정보 및 대응 정보를 비교하기 위한 비교 대상 영역을 추출하는 단계, 사용자 정보에서 추출된 비교 대상 영역과 대응 정보에서 추출된 비교 대상 영역에서 공통 영역을 결정하는 단계 및 공통 영역에 기초하여 사용자 정보 및 대응 정보를 각각 재 생성하는 단계를 포함할 수 있다.
예를 들어, 대응 정보에서 구조 단순화로 인해 왜곡된 영역 등 소정의 기준에 따른 일정 영역을 제거하고, 사용자 정보의 비배경부분에 대응되는 영역을 제거하여 비교 과정에 사용될 대응 정보를 재 생성할 수 있다. 또한 사용자 정보에서 비배경 부분과 함께 대응 정보의 왜곡된 영역 등에 해당하는 영역을 제거하여 비교과정에 사용될 사용자 정보를 재 생성할 수 있다
3차원 가상 공간 모델에서 생성된 대응 정보와 사용자가 획득한 사용자 정보의 유사성을 계산하는 방법은 대응 정보의 영상정보와 사용자 정보의 영상정보를 비교하는 방법, 대응 정보의 깊이정보와 사용자 정보의 깊이정보를 비교하는 방법 또는 깊이-영상연계정보를 비교하는 방법 등이 있을 수 있다.
이때, 대응 정보와 사용자 정보의 크기(scale)가 다를 수 있으므로 정규화(Normalization)가 요구되거나 상대적인 비교가 필요할 수도 있다.
한편, 영상 정보 간의 비교는, 각 영상 정보의 형식을 비슷하게 하기 위한 영상 정보의 변환이 필요할 수 있다. 예컨대, 파노라마 이미지(Panorama Image)와 보정 이미지(Rectified image) 간의 변환이 있을 수 있으며, 영상 정보의 크기를 정규화 할 수 있으며, 시야각의 변환이 있을 수 있다.
반대로 정류된 이미지를 파노라마 형식으로 변형시켜 사용할 수도 있다. 두 영상정보에서 RANSAC, SIFT, FAST, SURF 등의 기법 혹은 이들의 조합을 이용하여 영상정보의 특징점(Feature)을 찾고 유사한 특징점 쌍을 연결할 수 있다. 특징점은 에지(Edge), 직선, 선분, 코너(Corner), 원, 타원 등 또는 이들의 조합이 될 수 있고, 크기(scale), 회전(rotation) 등이 다를 수 있다. 특징점 매칭(Feature Matching), SSIM(Structural Similarity), NID(Normalized Information Distance), 호모 그래피 행렬(Homography Matrix) 등의 기법을 통해 영상 정보 간의 유사도를 계산할 수 있다.
특징점 매칭으로 맺어진 다수의 픽셀 좌표를 사용하여 호모그래피 행렬을 계산할 수 있으며, 이를 이용하여 두 이미지정보의 차이(오차, error)를 계산할 수 있다. SSIM는 두 이미지 간의 유사도를 계산하는 방법이고, NID는 확률적인 계산법이다.
사용자 정보에서 깊이정보를 추출할 수 있는 경우, 대응 정보의 깊이정보와 유사도를 비교할 수 있다. 깊이 정보는 3차원 점구름정보(PCD, Point Cloud Data), 깊이지도(Depth Map), 메쉬(Mesh) 등으로 표현될 수 있으며, 두 깊이정보의 형식을 통일하는 과정이 필요할 수 있다. 깊이정보는 픽셀 간(포인트 당) 비교가 이루어질 수 있으며, 주변 영역을 고려하여 비교할 수도 있다. 내삽법(interpolation)을 통해 깊이정보를 새롭게 추정하여 비교할 수도 있으며, 가중치를 부과하여 산출할 수도 있다.
사용자 정보에서 깊이-영상연계정보가 구성 가능한 경우, 대응 정보의 깊이-영상연계정보와 비교할 수 있다. 깊이정보와 영상정보를 각각 비교하여 각 유사도를 산출하고, 전체 유사도를 산출할 수 있으며, 각 유사도에 가중치를 주어 산출할 수 있다. 또는 깊이-영상연계정보를 복합적으로 비교할 수 있으며, 깊이정보와 영상정보의 유사도를 산출하는 방법들을 조합하여 수행될 수 있다.
3차원 가상 공간 모델을 구축하기 위한 공간 정보가 취득된 시점과 사용자 정보가 취득된 시점이 다를 수 있기 때문에, 동일 포즈일지라도 대응 정보와 사용자 정보가 다를 수 있다. 따라서, 대응 정보와 사용자 정보에서 강인한 특징점을 비교할 수 있다. 예컨대, 대응 정보와 사용자 정보에서 배경부분과 비배경부분을 구분하고 배경부분을 사용하여 유사도를 산출할 수 있으며, 배경부분을 이용하여 구축된 3차원 가상 공간 모델에서 대응 정보를 생성하여 사용자 정보의 배경부분과의 유사도를 산출할 수 있다. 대응 정보와 사용자 정보에서 조명 또는 빛에 대한 광원효과를 제거하고 유사도를 산출할 수 있고, 광원효과에 강인한 특징을 비교하여 유사도를 산출할 수 있다.
이때, 유사도를 산출하는 S1050 단계는, 사용자 디바이스 주변에 대한 추가적인 사용자 정보를 획득하는 단계 및 사용자 정보 및 추가적인 사용자 정보에 기초하여 유사도를 산출하는 단계를 포함할 수 있다. 추가적인 사용자 정보를 획득하기 위해, 도 12에 도시된 바와 같이 안내 정보를 이용할 수 있다.
S1060 단계에서 장치는, 유사도가 기 설정된 값 이상인 값을 갖는 후보 대응 정보를 확인하고, 상기 후보 대응 정보에 매칭되는 포즈를 사용자 포즈로 추정한다.
유사도가 높을수록 대응 정보가 생성된 3차원 가상 공간 모델의 포즈와 사용자 정보가 취득된 포즈가 동일하다고 고려될 수 있다. 또는, 유사도가 기준값(threshold)보다 높으면 두 데이터가 취득되고 재구성된 포즈는 거의 같다고 볼 수 있으며 기준값은 현실 공간의 환경에 따라 달라질 수 있다. 또는, 다수의 후보 포즈에서 생성된 대응 정보 중 사용자 포즈와 유사도가 제일 높거나 어떤 판단 방식에 의해 선택된 포즈가 사용자 포즈로 고려될 수도 있다.
대응 정보 생성, 유사도 계산 단계를 한 번만 수행하여 사용자 포즈를 추정할 수도 있고, 반복수행 할 수도 있다. 반복수행은 추려진 포즈 주위에서 정밀하게 재 추정할 수도 있고, 전체 영역에 대해 무작위(random)로 재 추정할 수도 있으며, 가중치를 부과하여 재 추정할 새로운 포즈를 선택할 수도 있다. 이러한 단계는 정해진 횟수만큼 반복될 수도 있으며, 유사도가 기준값 이상이거나, 반복되어 추정된 포즈가 수렴할 때까지 반복할 수도 있다. 유사도가 높아지도록 최적화기법(Optimization)을 사용할 수도 있다.
유사도가 높아지도록 대응 정보를 재생성 할 수도 있으며, 재 생성된 대응 정보는 기존 대응 정보가 생성된 포즈와 유사도의 관계에 따라 사용자 포즈로 예상되는 포즈에서 재 생성될 수 있다. 대응 정보 재 생성 이후에 유사도를 산출하고 필요한 경우 대응 정보 재생성 및 유사도계산과정을 반복할 수 있다.
관성정보 및 거리정보 등의 사용자부가정보를 사용하여 유사도가 높아질 것이라 기대되는 포즈에서 대응 정보를 생성 및 재생성 할 수 있다. 이후에 대응 정보와 사용자 정보의 유사도를 산출하고, 필요한 경우 사용자 부가 정보를 활용하여 대응 정보를 재생성하고 유사도산출과정을 반복할 수 있다.
이때, 사용자 부가 정보란 사용자가 취득한 영상정보 외에 사용자 포즈를 추정하는데 도움이 될 수도 있는 정보로, 관성정보(IMU), 거리정보(odometry) 등으로 구성될 수 있다. 일 예로 관성측정장치를 사용하여 관성정보가 획득 가능한 경우에 영상정보 처리 시 영상 취득 포즈에 대한 추정(prediction)정보로 사용하여 영상 취득 포즈에 대한 보정(correction)이 보다 용이하도록 할 수 있다.
따라서, 유사도를 산출하는 S1050 단계 또는 사용자 포즈를 추정하는 S1060단계는 사용자 디바이스를 통해 상기 사용자 포즈의 추정에 이용되는 부가적인 정보인 사용자 부가 정보가 획득되는 경우, 상기 사용자 정보 또는 상기 추가적인 사용자 정보와 함께 상기 사용자 부가 정보를 이용하여 상기 사용자 포즈를 추정하는 것을 포함할 수 있다.
이때, 관성 정보의 가속도 값 혹은 각속도 값을 활용하여 실제 이동 거리를 예상할 수 있고, 이를 단일 혹은 복수의 영상측정장치로부터 추출된 깊이정보의 크기(scale)을 보정하는데 활용할 수도 있다.
거리정보는 사용자가 취득한 영상정보를 기반으로 구성된 VO(Visual Odometry), VIO(Visual Inertial Odometry)를 활용하여 예측한 거리정보일 수 있으며, 바퀴형 이동 로봇에 측정장치를 부착하여 사용자 정보를 취득하는 경우, 거리정보는 이동 로봇의 거리정보일 수 있다. 이에 관성정보를 활용하면 상기 방법들로 추출된 거리정보를 보정하는데 활용할 수도 있다.
사용자 대신 바퀴형 이동 로봇에 센서를 부착하여 사용자 정보를 취득하는 경우, 사용자가 이동 로봇을 조종할 수도 있고, 이동 로봇이 자율주행을 할 수도 있고, 이 둘의 조합으로 사용자 정보를 취득할 수 있다. 이동 로봇 포즈를 사용자 포즈로 고려할 수 있으며, 이동 로봇과 사용자 시야 간의 좌표변환 관계를 알고 있거나, 좌표변환이 가능하면 이동 로봇 포즈를 사용자 포즈로 변환시킬 수 있다.
이동 로봇은 영상이 포함된 사용자 정보뿐 아니라 모바일로봇의 거리정보(odometry)를 사용자부가정보로 취득할 수 있다. 거리정보를 활용하여 사용자 포즈를 보정할 수 있다. 순차적으로 취득한 거리정보를 활용하여 이동 로봇의 상대 예상 포즈를 예측할 수 있으며, EKF, EIF, UKF 등의 기법 또는 비슷한 방법을 활용하여 공분산행렬(Covariance matrix) 등의 정보를 계산할 수 있고, 이 정보를 갱신하여 사용자 포즈를 보정할 수 있다.
이동 로봇을 이용할 경우, 이동 로봇의 동작, 운전, 조종, 이동, 데이터 취득, 저장 및 처리 등 관련 알고리즘은 로봇운영체제(ROS, robot operating system) 상에서 수행될 수 있다.
공간 정보, 깊이-영상연계정보, 3차원 가상 공간 모델, 사용자 정보, 사용자부가정보 등은 외부의 서버(Server)에 저장 및 처리될 수 있다.
공간 정보가 취득되는 동시에 깊이-영상연계정보가 구성되고 3차원 가상 공간 모델이 구축될 수 있으며, 사용자 정보가 취득되는 동시에 사용자 포즈를 실시간으로 추정할 수도 있고, 지연(Latency)이 있을 수도 있으며, 사용자 포즈 취득이 끝난 후에 처리될 수도 있다.
3차원 가상 공간 모델이 구축되어 있다면, 추가 공간 정보를 취득하지 않을 수 있고, 일부의 공간에 대해 추가공간 정보가 취득될 수 있다. 추가 공간 정보가 취득되지 않은 경우 구축된 3차원 가상 공간 모델을 사용할 수 있고, 추가공간 정보가 취득된 경우 구축된 3차원 가상 공간 모델을 부분 또는 전체 갱신하여 재구축하여 사용할 수 있다.
사용자 정보를 선취득 후 공간 정보를 후 취득하여 3차원 가상 공간 모델을 구축하여 사용자 포즈를 추정할 수도 있고, 3차원 가상 공간 모델을 구축하기 위한 공간 정보를 선취득 후 사용자 정보를 후 취득하여 사용자 포즈를 추정할 수 있다.
본 발명은 센서시스템과 컴퓨터가 융합된 시스템에서 수행될 수 있으며, 독립적인 센서시스템과 컴퓨터에서 수행될 수도 있다.
사용자 정보 획 득시, 각 측정장치의 포즈와 사용자센서시스템 전체의 포즈가 다를 순 있으나, 각 측정장치 및 센서시스템의 좌표변환 관계를 사용하여 변환이 가능하다. 예컨대, 사용자 센서 시스템의 중심 또는 적절한 위치를 사용자 포즈로 가정하거나, 사용자 센서 시스템을 기준으로 사용자 포즈로 가정할 수 있다. 이 경우 필요한 캘리브레이션 정보 또는 사용자센서시스템으로부터 사용자 포즈까지의 상대 포즈를 알고 있거나 어떤 값으로 가정할 수 있다.
도 11은 다른 일 실시예에 따른 3차원 공간에 대한 사용자 포즈 추정 방법을 설명하기 위한 흐름도이다.
도 11에 도시된 방법은 도 7에 도시된 사용자 포즈 추정 장치(620)에 의해 수행될 수 있다.
S1110 단계에서 장치는 3차원 공간에서 획득된 영상을 포함하는 사용자 정보를 수신한다.
S1120 단계에서 장치는 3차원 공간에 대한 깊이 정보 및 영상 정보를 포함하는 공간 정보에 기초하여 구축된 3차원 가상 공간 모델을 확인한다. 이때, 3차원 가상 공간 모델은 도 7의 가상 공간 모델 제공부(730)에 의해 제공될 수 있다.
S1130 단계에서 장치는 3차원 가상 공간 모델 내에서 상기 사용자 정보에 대응하는 대응 정보를 생성한다.
S1140 단계에서 장치는 대응 정보와 상기 사용자 정보의 유사도를 산출한다.
S1150 단계에서 장치는 유사도에 기초하여 사용자 포즈를 추정한다. 이때, 사용자 포즈는 예를 들어 사용자 정보와 가장 유사도가 높은 대응 정보의 포즈 일 수 있다.
도 12는 일 실시예에 따른 추가 사용자 포즈 획득 방법의 예를 설명하기 위한 도면이다.
유사도를 향상시키기 위하여 추가사용자 정보를 취득할 수 있으며, 3차원 가상 공간 모델을 활용하여 추가사용자 정보 취득 포즈를 사용자에게 안내할 수 있고, 사용자는 안내받은 포즈에서 추가사용자 정보를 취득할 수 있다.
따라서, 도 10의 설명에서 추가적인 사용자 정보를 획득하는 단계는 3차원 가상 공간 모델에 기초하여 추가적인 사용자 정보 취득을 위한 안내 정보를 사용자 디바이스(610)로 전송하는 것을 포함할 수 있다.
이때, 안내 정보는 3차원 가상 공간 모델 내의 기 설정된 특징점에 대한 사용자 정보 취득 포즈를 포함하고, 추가적인 사용자 정보를 획득하는 단계는 유사도를 높이는 방향으로 반복 수행될 수 있다.
예컨대, 도 12에 도시된 바와 같이, 비슷한 환경이 많은 긴 복도의 경우, 3차원 가상 공간 모델에서 특징점을 고려하여 추가 사용자 정보 취득 포즈를 안내할 수 있다.
도 12에서 추가 사용자 정보 취득 포즈는 특징점 1, 2, 3에 대해 순차적으로 영상을 획득하는 포즈 이거나, 특징점 1, 2, 3 중 어느 하나에 대한 포즈일 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
Claims (25)
- 깊이 측정 장치 및 영상 획득 장치를 이용하여 3차원 공간에 대한 깊이 정보 및 영상 데이터를 포함하는 공간 정보를 획득하는 단계;상기 공간 정보에 기초하여 깊이-영상 연계 정보를 구성하고, 상기 깊이-영상 연계 정보에 기초하여 상기 3차원 공간에 대응하는 3차원 가상 공간 모델을 구축하는 단계;상기 3차원 공간에서 사용자 디바이스에 의해 획득된 영상을 포함하는 사용자 정보를 수신하는 단계;상기 3차원 가상 공간 모델 내에서 상기 사용자 정보에 대응하는 대응 정보를 생성하는 단계;상기 대응 정보와 상기 사용자 정보의 유사도를 산출하는 단계; 및상기 유사도에 기초하여 사용자 포즈로 추정하는 단계를 포함하는 3차원 공간에 대한 사용자 포즈 추정 방법.
- 제1항에 있어서,상기 3차원 가상 공간 모델을 구축하는 단계는,상기 3차원 공간에 대한 영상 데이터에서 상기 3차원 공간의 구조와 관련된 배경 영역과 상기 3차원 공간에 놓인 물체에 해당하는 비배경 영역을 구분하고, 상기 배경 영역을 이용하여 상기 3차원 가상 공간 모델을 구축하는 것을 특징으로하는3차원 공간에 대한 사용자 포즈 추정 방법.
- 제1항에 있어서,상기 대응 정보를 생성하는 단계는,상기 사용자 정보에 포함된 영상에서 상기 3차원 공간의 구조와 관련된 배경 영역과 상기 3차원 공간에 놓인 물체에 해당하는 비배경 영역을 구분하는 단계;상기 사용자 정보에 포함된 영상의 배경 영역을 이용하여 상기 사용자 정보를 가공하는 단계; 및상기 3차원 가상 공간 모델 내에서 가공된 사용자 정보에 대응하는 대응 정보를 생성하는 단계를 포함하는3차원 공간에 대한 사용자 포즈 추정 방법.
- 제1항에 있어서,상기 유사도를 산출하는 단계는,상기 유사도를 높이는 방향으로 상기 대응 정보를 재 생성하는 단계; 및재 생성된 대응 정보에 기초하여 유사도를 재 산출하는 단계를 포함하는3차원 공간에 대한 사용자 포즈 추정 방법.
- 제1항에 있어서,상기 유사도를 산출하는 단계는,상기 사용자 정보 및 상기 대응 정보를 비교하기 위한 비교 대상 영역을 추출하는 단계;상기 사용자 정보에서 추출된 비교 대상 영역과 상기 대응 정보에서 추출된 비교 대상 영역에서 공통 영역을 결정하는 단계; 및상기 공통 영역에 기초하여 상기 사용자 정보 및 상기 대응 정보를 각각 재 생성하는 단계를 포함하는3차원 공간에 대한 사용자 포즈 추정 방법.
- 제1항에 있어서,상기 유사도를 산출하는 단계는,상기 사용자 디바이스 주변에 대한 추가적인 사용자 정보를 획득하는 단계; 및상기 사용자 정보 및 추가적인 사용자 정보에 기초하여 유사도를 산출하는 단계를 포함하는3차원 공간에 대한 사용자 포즈 추정 방법.
- 제6항에 있어서,상기 사용자 포즈를 추정하는 단계는,상기 사용자 디바이스를 통해 상기 사용자 포즈의 추정에 이용되는 부가적인 정보인 사용자 부가 정보가 획득되는 경우, 상기 사용자 정보 또는 상기 추가적인 사용자 정보와 함께 상기 사용자 부가 정보를 이용하여 상기 사용자 포즈를 추정하는 것을 포함하는3차원 공간에 대한 사용자 포즈 추정 방법.
- 제6항에 있어서,상기 추가적인 사용자 정보를 획득하는 단계는,상기 3차원 가상 공간 모델에 기초하여 추가적인 사용자 정보 취득을 위한 안내 정보를 상기 사용자 디바이스로 전송하는 것을 포함하는3차원 공간에 대한 사용자 포즈 추정 방법.
- 제8항에 있어서,상기 안내 정보는 상기 3차원 가상 공간 모델 내의 기 설정된 특징점에 대한 사용자 정보 취득 포즈를 포함하고,상기 추가적인 사용자 정보를 획득하는 단계는 상기 유사도를 높이는 방향으로 반복 수행되는 것을 특징으로 하는3차원 공간에 대한 사용자 포즈 추정 방법.
- 3차원 공간에 대한 사용자의 위치(position) 및 방향(orientation) 정보를 포함하는 사용자 포즈를 추정하는 방법에 있어서,상기 3차원 공간에서 획득된 영상을 포함하는 사용자 정보를 수신하는 단계;상기 3차원 공간에 대한 깊이 정보 및 영상 정보를 포함하는 공간 정보에 기초하여 구축된 3차원 가상 공간 모델을 확인하는 단계;상기 3차원 가상 공간 모델 내에서 상기 사용자 정보에 대응하는 대응 정보를 생성하는 단계;상기 대응 정보와 상기 사용자 정보의 유사도를 산출하는 단계; 및상기 유사도에 기초하여 사용자 포즈를 추정하는 단계를 포함하는 3차원 공간에 대한 사용자 포즈 추정 방법.
- 제10항에 있어서,상기 3차원 가상 공간 모델은 상기 3차원 공간에 대한 영상 데이터에서 상기 3차원 공간의 구조와 관련된 배경 영역과 상기 3차원 공간에 놓인 물체에 해당하는 비배경 영역을 구분하고, 상기 배경 영역을 이용하여 구축된 것임을 특징으로 하는3차원 공간에 대한 사용자 포즈 추정 방법.
- 제10항에 있어서,상기 대응 정보를 생성하는 단계는,상기 사용자 정보에 포함된 영상에서 상기 3차원 공간의 구조와 관련된 배경 영역과 상기 3차원 공간에 놓인 물체에 해당하는 비배경 영역을 구분하는 단계;상기 사용자 정보에 포함된 영상의 배경 영역을 이용하여 상기 사용자 정보를 가공하는 단계; 및상기 3차원 가상 공간 모델 내에서 가공된 사용자 정보에 대응하는 대응 정보를 생성하는 단계를 포함하는3차원 공간에 대한 사용자 포즈 추정 방법.
- 제10항에 있어서,상기 유사도를 산출하는 단계는,상기 유사도를 높이는 방향으로 상기 대응 정보를 재 생성하는 단계; 및재 생성된 대응 정보에 기초하여 유사도를 재 산출하는 단계를 포함하는3차원 공간에 대한 사용자 포즈 추정 방법.
- 제10항에 있어서,상기 유사도를 산출하는 단계는,상기 사용자 정보 및 상기 대응 정보를 비교하기 위한 비교 대상 영역을 추출하는 단계;상기 사용자 정보에서 추출된 비교 대상 영역과 상기 대응 정보에서 추출된 비교 대상 영역에서 공통 영역을 결정하는 단계; 및상기 공통 영역에 기초하여 상기 사용자 정보 및 상기 대응 정보를 각각 재 생성하는 단계를 포함하는3차원 공간에 대한 사용자 포즈 추정 방법.
- 제10항에 있어서,상기 유사도를 산출하는 단계는,사용자 디바이스 주변에 대한 추가적인 사용자 정보를 획득하는 단계; 및상기 사용자 정보 및 추가적인 사용자 정보에 기초하여 유사도를 산출하는 단계를 포함하는3차원 공간에 대한 사용자 포즈 추정 방법.
- 제15항에 있어서,상기 사용자 포즈를 추정하는 단계는,상기 사용자 디바이스를 통해 상기 사용자 포즈의 추정에 이용되는 부가적인 정보인 사용자 부가 정보가 획득되는 경우, 상기 사용자 정보 또는 상기 추가적인 사용자 정보와 함께 상기 사용자 부가 정보를 이용하여 상기 사용자 포즈를 추정하는 것을 포함하는3차원 공간에 대한 사용자 포즈 추정 방법.
- 제15항에 있어서,상기 추가적인 사용자 정보를 획득하는 단계는,상기 3차원 가상 공간 모델에 기초하여 추가적인 사용자 정보 취득을 위한 안내 정보를 상기 사용자 디바이스로 전송하는 것을 포함하는3차원 공간에 대한 사용자 포즈 추정 방법.
- 제17항에 있어서,상기 안내 정보는 상기 3차원 가상 공간 모델 내의 기 설정된 특징점에 대한 사용자 정보 취득 포즈를 포함하고,상기 추가적인 사용자 정보를 획득하는 단계는 상기 유사도를 높이는 방향으로 반복 수행되는 것을 특징으로 하는3차원 공간에 대한 사용자 포즈 추정 방법.
- 3차원 공간에 대한 깊이 정보 및 영상 데이터를 포함하는 공간 정보를 획득하는 공간 정보 획득부;상기 공간 정보에 기초하여 깊이-영상 연계 정보를 구성하고, 상기 깊이-영상 연계 정보에 기초하여 상기 3차원 공간에 대응하는 3차원 가상 공간 모델을 생성하는 가상 공간 모델 생성부;상기 3차원 공간에서 사용자 디바이스에 의해 획득된 영상을 포함하는 사용자 정보를 수신하는 사용자 정보 수신부; 및상기 3차원 가상 공간 모델 내에서 상기 사용자 정보에 대응하는 대응 정보를 생성하고, 상기 대응 정보와 상기 사용자 정보의 유사도를 산출하고, 상기 유사도에 기초하여 상기 사용자 포즈를 추정하도록 구성된 적어도 하나의 프로세서를 포함하는 제어부를 포함하는 3차원 공간에 대한 사용자 포즈 추정 장치.
- 제19항에 있어서,상기 공간 모델 생성부는,상기 3차원 공간에 대한 영상 데이터에서 상기 3차원 공간의 구조와 관련된 배경 영역과 상기 3차원 공간에 놓인 물체에 해당하는 비배경 영역을 구분하고, 상기 배경 영역을 이용하여 상기 3차원 가상 공간 모델을 구축하는 것을 특징으로하는3차원 공간에 대한 사용자 포즈 추정 장치.
- 제19항에 있어서,상기 제어부는상기 사용자 정보에 포함된 영상에서 상기 3차원 공간의 구조와 관련된 배경 영역과 상기 3차원 공간에 놓인 물체에 해당하는 비배경 영역을 구분하고, 상기 사용자 정보에 포함된 영상의 배경 영역을 이용하여 상기 사용자 정보를 가공하고, 상기 3차원 가상 공간 모델 내에서 가공된 사용자 정보에 대응하는 대응 정보를 생성하는3차원 공간에 대한 사용자 포즈 추정 장치.
- 3차원 공간에 대한 사용자의 위치(position) 및 방향(orientation) 정보를 포함하는 사용자 포즈를 추정하는 장치에 있어서,상기 3차원 공간에 대한 깊이 정보 및 영상 정보를 포함하는 공간 정보에 기초하여 구축된 3차원 가상 공간 모델을 제공하는 가상 공간 모델 제공부;상기 3차원 공간에서 사용자 디바이스에 의해 획득된 영상을 포함하는 사용자 정보를 수신하는 사용자 정보 수신부; 및상기 3차원 가상 공간 모델 내에서 상기 사용자 정보에 대응하는 대응 정보를 생성하고, 상기 대응 정보와 상기 사용자 정보의 유사도를 산출하고, 상기 유사도에 기초하여 상기 사용자 포즈를 추정하도록 구성된 적어도 하나의 프로세서를 포함하는 제어부를 포함하는 3차원 공간에 대한 사용자 포즈 추정 장치.
- 제22항에 있어서,상기 3차원 가상 공간 모델은 상기 3차원 공간에 대한 영상 데이터에서 상기 3차원 공간의 구조와 관련된 배경 영역과 상기 3차원 공간에 놓인 물체에 해당하는 비배경 영역을 구분하고, 상기 배경 영역을 이용하여 구축된 것임을 특징으로 하는3차원 공간에 대한 사용자 포즈 추정 장치.
- 3차원 공간에 대한 영상을 포함하는 사용자 정보를 생성하는 사용자 정보 생성부;상기 사용자 정보를 사용자 포즈 추정 서버로 전송하고, 3차원 가상 공간 모델에서 추정된 사용자 포즈에 대한 정보를 상기 서버로부터 수신하는 통신부; 및상기 사용자 정보 생성부 및 통신부의 동작을 제어하고, 상기 사용자 포즈에 대한 정보를 현재 구동 중인 어플리케이션 또는 구동 시스템으로 전달하도록 구성된 적어도 하나의 프로세서를 포함하는 제어부를 포함하는 3차원 공간에 대한 사용자 포즈 추정 장치.
- 제24항에 있어서,상기 3차원 가상 공간 모델은 상기 3차원 공간에 대한 깊이 정보 및 영상 정보를 포함하는 공간 정보에 기초하여 생성되고, 상기 3차원 공간에 대한 영상 데이터에서 상기 3차원 공간의 구조와 관련된 배경 영역과 상기 3차원 공간에 놓인 물체에 해당하는 비배경 영역을 구분하고, 상기 배경 영역을 이용하여 구축된 것임을 특징으로 하는3차원 공간에 대한 사용자 포즈 추정 장치.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020548924A JP7138361B2 (ja) | 2019-06-14 | 2020-04-07 | 3次元仮想空間モデルを利用したユーザポーズ推定方法および装置 |
US16/967,181 US11915449B2 (en) | 2019-06-14 | 2020-04-07 | Method and apparatus for estimating user pose using three-dimensional virtual space model |
EP20757508.5A EP3770809A4 (en) | 2019-06-14 | 2020-04-07 | METHOD AND APPARATUS FOR ESTIMATING A USER'S POSE USING A VIRTUAL THREE-DIMENSIONAL SPACE MODEL |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20190070829 | 2019-06-14 | ||
KR10-2019-0070829 | 2019-06-14 | ||
KR1020200039564A KR102387797B1 (ko) | 2019-06-14 | 2020-04-01 | 3차원 가상 공간 모델을 이용한 사용자 포즈 추정 방법 및 장치 |
KR10-2020-0039564 | 2020-04-01 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020251151A1 true WO2020251151A1 (ko) | 2020-12-17 |
Family
ID=73781019
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2020/004685 WO2020251151A1 (ko) | 2019-06-14 | 2020-04-07 | 3차원 가상 공간 모델을 이용한 사용자 포즈 추정 방법 및 장치 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11915449B2 (ko) |
EP (1) | EP3770809A4 (ko) |
WO (1) | WO2020251151A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102339472B1 (ko) * | 2020-12-23 | 2021-12-16 | 고려대학교 산학협력단 | 3차원 공간 모델 생성 방법 및 장치 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013186718A (ja) * | 2012-03-08 | 2013-09-19 | Nissan Motor Co Ltd | 移動物体位置姿勢推定装置及び方法 |
KR20170008505A (ko) * | 2015-07-14 | 2017-01-24 | 서울대학교산학협력단 | 자유 공간 지도 생성 방법, 자유 공간 지도 생성 시스템, 자유 공간 지도를 이용한 전경/배경 추출 방법 및 전경/배경 추출 시스템 |
KR20170012316A (ko) * | 2014-05-30 | 2017-02-02 | 옥스포드 유니버시티 이노베이션 리미티드 | 차량 위치결정 방법 |
US20170358093A1 (en) * | 2016-06-08 | 2017-12-14 | Axis Ab | Method and apparatus for updating a background model |
KR101835434B1 (ko) | 2015-07-08 | 2018-03-09 | 고려대학교 산학협력단 | 투영 이미지 생성 방법 및 그 장치, 이미지 픽셀과 깊이값간의 매핑 방법 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5965293B2 (ja) | 2012-11-07 | 2016-08-03 | 日本電信電話株式会社 | カメラポーズ推定装置、及びカメラポーズ推定プログラム |
KR102137264B1 (ko) * | 2013-07-09 | 2020-07-24 | 삼성전자주식회사 | 카메라 포즈 추정 장치 및 방법 |
MA41117A (fr) | 2014-12-05 | 2017-10-10 | Myfiziq Ltd | Imagerie d'un corps |
JP6309913B2 (ja) | 2015-03-31 | 2018-04-11 | セコム株式会社 | 物体検出装置 |
WO2018235219A1 (ja) | 2017-06-22 | 2018-12-27 | 日本電気株式会社 | 自己位置推定方法、自己位置推定装置および自己位置推定プログラム |
-
2020
- 2020-04-07 WO PCT/KR2020/004685 patent/WO2020251151A1/ko unknown
- 2020-04-07 EP EP20757508.5A patent/EP3770809A4/en active Pending
- 2020-04-07 US US16/967,181 patent/US11915449B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013186718A (ja) * | 2012-03-08 | 2013-09-19 | Nissan Motor Co Ltd | 移動物体位置姿勢推定装置及び方法 |
KR20170012316A (ko) * | 2014-05-30 | 2017-02-02 | 옥스포드 유니버시티 이노베이션 리미티드 | 차량 위치결정 방법 |
KR101835434B1 (ko) | 2015-07-08 | 2018-03-09 | 고려대학교 산학협력단 | 투영 이미지 생성 방법 및 그 장치, 이미지 픽셀과 깊이값간의 매핑 방법 |
KR20170008505A (ko) * | 2015-07-14 | 2017-01-24 | 서울대학교산학협력단 | 자유 공간 지도 생성 방법, 자유 공간 지도 생성 시스템, 자유 공간 지도를 이용한 전경/배경 추출 방법 및 전경/배경 추출 시스템 |
US20170358093A1 (en) * | 2016-06-08 | 2017-12-14 | Axis Ab | Method and apparatus for updating a background model |
Non-Patent Citations (1)
Title |
---|
See also references of EP3770809A4 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102339472B1 (ko) * | 2020-12-23 | 2021-12-16 | 고려대학교 산학협력단 | 3차원 공간 모델 생성 방법 및 장치 |
Also Published As
Publication number | Publication date |
---|---|
US20230177723A1 (en) | 2023-06-08 |
EP3770809A1 (en) | 2021-01-27 |
US11915449B2 (en) | 2024-02-27 |
EP3770809A4 (en) | 2022-03-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2015194864A1 (ko) | 이동 로봇의 맵을 업데이트하기 위한 장치 및 그 방법 | |
WO2015194867A1 (ko) | 다이렉트 트래킹을 이용하여 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법 | |
WO2017091008A1 (ko) | 이동 로봇 및 그 제어 방법 | |
WO2015194866A1 (ko) | 에지 기반 재조정을 이용하여 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법 | |
WO2015194868A1 (ko) | 광각 카메라가 탑재된 이동 로봇의 주행을 제어하기 위한 장치 및 그 방법 | |
WO2015194865A1 (ko) | 검색 기반 상관 매칭을 이용하여 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법 | |
WO2016106715A1 (en) | Selective processing of sensor data | |
WO2011013862A1 (ko) | 이동 로봇의 위치 인식 및 주행 제어 방법과 이를 이용한 이동 로봇 | |
WO2020046038A1 (ko) | 로봇 및 그의 제어 방법 | |
WO2020027515A1 (ko) | 속성 블록을 설정하는 이동 로봇 | |
WO2020241934A1 (ko) | 멀티 센서를 동기화시켜 위치를 추정하는 방법 및 이를 구현하는 로봇 | |
WO2020180084A1 (ko) | 타겟 이미지의 채색 완성 방법, 장치 및 컴퓨터 프로그램 | |
WO2017007166A1 (ko) | 투영 이미지 생성 방법 및 그 장치, 이미지 픽셀과 깊이값간의 매핑 방법 | |
WO2022025441A1 (ko) | 전방위 이미지 촬영 어셈블리 및 이에 의해 수행되는 방법 | |
KR102387797B1 (ko) | 3차원 가상 공간 모델을 이용한 사용자 포즈 추정 방법 및 장치 | |
WO2019031825A1 (ko) | 전자 장치 및 그 동작 방법 | |
WO2022039404A1 (ko) | 광시야각의 스테레오 카메라 장치 및 이를 이용한 깊이 영상 처리 방법 | |
WO2016126083A1 (ko) | 주변 상황 정보를 통지하기 위한 방법, 전자 장치 및 저장 매체 | |
WO2020171561A1 (en) | Electronic apparatus and controlling method thereof | |
WO2020262721A1 (ko) | 인공 지능을 이용하여, 복수의 로봇들을 제어하는 관제 시스템 | |
WO2021125578A1 (ko) | 시각 정보 처리 기반의 위치 인식 방법 및 시스템 | |
WO2023055033A1 (en) | Method and apparatus for enhancing texture details of images | |
WO2020189909A2 (ko) | 3d-vr 멀티센서 시스템 기반의 도로 시설물 관리 솔루션을 구현하는 시스템 및 그 방법 | |
WO2020251151A1 (ko) | 3차원 가상 공간 모델을 이용한 사용자 포즈 추정 방법 및 장치 | |
WO2019245320A1 (ko) | 이미지 센서와 복수의 지자기 센서를 융합하여 위치 보정하는 이동 로봇 장치 및 제어 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ENP | Entry into the national phase |
Ref document number: 2020548924 Country of ref document: JP Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: 2020757508 Country of ref document: EP Effective date: 20200826 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |