KR102224272B1 - METHOD AND DEVICE FOR DETECTING PLANAR SURFACE USING DEPTH IMAGE, and Non-Transitory COMPUTER READABLE RECORDING MEDIUM - Google Patents

METHOD AND DEVICE FOR DETECTING PLANAR SURFACE USING DEPTH IMAGE, and Non-Transitory COMPUTER READABLE RECORDING MEDIUM Download PDF

Info

Publication number
KR102224272B1
KR102224272B1 KR1020190047808A KR20190047808A KR102224272B1 KR 102224272 B1 KR102224272 B1 KR 102224272B1 KR 1020190047808 A KR1020190047808 A KR 1020190047808A KR 20190047808 A KR20190047808 A KR 20190047808A KR 102224272 B1 KR102224272 B1 KR 102224272B1
Authority
KR
South Korea
Prior art keywords
plane
pixel
local
similarity
equation
Prior art date
Application number
KR1020190047808A
Other languages
Korean (ko)
Other versions
KR20200124463A (en
Inventor
권순각
이동석
Original Assignee
동의대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 동의대학교 산학협력단 filed Critical 동의대학교 산학협력단
Priority to KR1020190047808A priority Critical patent/KR102224272B1/en
Publication of KR20200124463A publication Critical patent/KR20200124463A/en
Application granted granted Critical
Publication of KR102224272B1 publication Critical patent/KR102224272B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Geometry (AREA)
  • Image Analysis (AREA)

Abstract

본 발명의 실시예는 깊이 영상 화소 각각에 대한 국소 평면을 생성하는 단계; 생성된 상기 국소 평면의 특징을 검출하는 단계; 검출된 상기 국소 평면의 특징을 이용하여 인접한 국소 평면간 유사도를 계산하는 단계; 및 상기 유사도가 소정의 유사도 이상이면 상기 인접한 국소 평면을 그룹화하고 동일 평면으로 검출하는 단계;를 포함하는 깊이 영상을 통한 평면 검출 방법을 제공할 수 있다.An embodiment of the present invention includes the steps of generating a local plane for each pixel of a depth image; Detecting a feature of the generated local plane; Calculating a similarity between adjacent local planes using the detected features of the local planes; And if the similarity is greater than or equal to a predetermined similarity, grouping the adjacent local planes and detecting them as the same plane.

Description

깊이 영상을 통한 평면 검출 방법 및 장치 그리고 비일시적 컴퓨터 판독가능 기록매체{METHOD AND DEVICE FOR DETECTING PLANAR SURFACE USING DEPTH IMAGE, and Non-Transitory COMPUTER READABLE RECORDING MEDIUM}Planar detection method and device through depth image, and non-transitory computer-readable recording medium {METHOD AND DEVICE FOR DETECTING PLANAR SURFACE USING DEPTH IMAGE, and Non-Transitory COMPUTER READABLE RECORDING MEDIUM}

본 발명은 깊이 영상을 통한 평면 검출 방법 및 장치 그리고 비일시적 컴퓨터 판독가능 기록매체에 관한 것이다. 상세하게는 본 발명은 깊이 영상에서 각각의 평면 영역을 검출하는 방법에 관한 것이다.The present invention relates to a method and apparatus for detecting a plane through a depth image, and to a non-transitory computer-readable recording medium. In detail, the present invention relates to a method of detecting each planar region in a depth image.

촬영된 영상의 거리를 나타내는 깊이 영상은 현재 SLAM(Simultaneous Localization And Mapping: 동시적 위치추정 및 지도작성), 사물 인식, 검출 및 추적 등의 분야에서 활발하게 연구되고 있다. The depth image representing the distance of the captured image is currently being actively studied in the fields of SLAM (Simultaneous Localization And Mapping: Simultaneous Localization And Mapping), object recognition, detection, and tracking.

평면은 영상에서 중요한 기하학적 특징으로, 영상의 평면 검출은 장면이해, 영상 재구축, 물체인식 등 다양한 컴퓨터 비전 분야에서 다뤄지는 주제이다. 지금까지 영상에서 평면을 검출하기 위하여 RANSAC(Random sample consensus), Hough Transform 등을 이용한 다양한 방법이 개발되었다. 지금까지 개발된 여러 방법들은 영상의 깊이 정보를 바탕으로 한다는 공통점이 있으며, 스테레오 영상 혹은 거리계(Range Finder)를 통해 얻은 깊이 정보로 만들어진 깊이 영상 혹은 3차원 점집합을 평면 검출에 사용한다. A plane is an important geometric feature in an image, and plane detection of an image is a subject covered in various computer vision fields such as scene understanding, image reconstruction, and object recognition. So far, various methods have been developed using random sample consensus (RANSAC) and Hough Transform to detect planes in images. Several methods developed so far have in common that they are based on depth information of an image, and a depth image or a 3D point set made of depth information obtained through a stereo image or a range finder is used for plane detection.

다만, RANSAC은 3D 공간 내의 평면이 복수 개가 아닌 단일의 평면일 때 유효하며, 복수 개의 평면을 포함하는 3D 공간의 평면 모델에서는 유효하지 못하다는 한계를 가진다. However, RANSAC is effective when a single plane in a 3D space is not plural, and has a limitation that it is not effective in a planar model of a 3D space including a plurality of planes.

복수 개의 평면을 추정할 수 있는 변형 기법들(variation), 이를테면 시퀀셜 RANSAC(Sequential RANSAC), 멀티 RANSAC 등이 소개되어 있으나, 여전히 최적의 솔루션을 제공하지 못하거나, 평면의 개수를 사용자가 미리 지정해야 하는 불편이 있고, 특히 노이즈가 많이 포함된 3D 정보에서는 신뢰하지 못한다.Variations that can estimate multiple planes, such as sequential RANSAC (Sequential RANSAC), and multi-RANSAC, have been introduced, but they still do not provide an optimal solution, or the number of planes must be specified by the user in advance. It is inconvenient to do so, and is not particularly reliable in 3D information containing a lot of noise.

또한, 기존의 평면 검출 방법들은 깊이를 알고 있는 모든 픽셀을 후보로 하여 평면을 검출하기 때문에 시간 복잡도가 크고, 깊이 값만을 이용하기 때문에 깊이 측정의 노이즈에 민감하다는 단점이 있다.In addition, conventional plane detection methods have a disadvantage in that they are sensitive to noise in depth measurement because they detect a plane by using all pixels with known depth as candidates, and because only a depth value is used.

KR 10-2016-0086941 A1KR 10-2016-0086941 A1

본 발명의 일 목적은 깊이 화면 내 평면으로 이루어진 영역의 깊이 값을 통해 평면을 추정할 수 있는 방법 및 장치 그리고 비일시적 컴퓨터 판독가능 기록매체를 제공하는데 있다.An object of the present invention is to provide a method and apparatus capable of estimating a plane through a depth value of an area consisting of a plane in a depth screen, and a non-transitory computer-readable recording medium.

또한, 본 발명은 깊이 영상으로부터 3D 공간의 평면 모델을 효율적이고 정확하게 추정하는 평면 검출 방법 및 장치 그리고 비일시적 컴퓨터 판독가능 기록매체를 제공하는데 있다.In addition, the present invention is to provide a plane detection method and apparatus and a non-transitory computer-readable recording medium for efficiently and accurately estimating a plane model of a 3D space from a depth image.

또한, 본 발명의 일 목적은 종래의 평면 검출 방식에서의 시간 복잡도가 큰 문제를 해결할 수 있는 평면 검출 방법 및 장치 그리고 비일시적 컴퓨터 판독가능 기록매체를 제공하는데 있다.In addition, an object of the present invention is to provide a plane detection method and apparatus and a non-transitory computer-readable recording medium capable of solving a problem of a large time complexity in a conventional plane detection method.

또한, 본 발명은 본 발명의 일 목적은 종래의 방식에서 깊이 값만을 이용함으로써 깊이 측정의 노이즈에 민감한 문제를 해결할 수 있는 평면 검출 방법 및 장치 그리고 비일시적 컴퓨터 판독가능 기록매체를 제공하는데 있다.In addition, an object of the present invention is to provide a plane detection method and apparatus and a non-transitory computer-readable recording medium capable of solving a problem sensitive to noise in depth measurement by using only a depth value in a conventional method.

또한, 본 발명은 본 발명의 일 목적은 종래의 방식보다 정밀하게 평면을 검출하는 평면 검출 방법 및 장치 그리고 비일시적 컴퓨터 판독가능 기록매체를 제공하는데 있다.In addition, an object of the present invention is to provide a plane detection method and apparatus and a non-transitory computer-readable recording medium that detects a plane more precisely than a conventional method.

본 발명의 실시예는 깊이 영상 화소 각각에 대한 국소 평면을 생성하는 단계; 생성된 상기 국소 평면의 특징을 검출하는 단계; 검출된 상기 국소 평면의 특징을 이용하여 인접한 국소 평면간 유사도를 계산하는 단계; 및 상기 유사도가 소정의 유사도 이상이면 상기 인접한 국소 평면을 그룹화하고 동일 평면으로 검출하는 단계;를 포함하는 깊이 영상을 통한 평면 검출 방법을 제공할 수 있다.An embodiment of the present invention includes the steps of generating a local plane for each pixel of a depth image; Detecting a feature of the generated local plane; Calculating a similarity between adjacent local planes using the detected features of the local planes; And if the similarity is greater than or equal to a predetermined similarity, grouping the adjacent local planes and detecting them as the same plane.

다른 측면에서, 상기 국소 평면을 생성하는 단계는, 상기 깊이 영상 내 일 화소에 대한 카메라를 원점으로 하는 3차원 좌표계의 중심 변환 좌표를 생성하는 단계; 상기 깊이 영상 내 일 화소의 주변 화소에 대한 카메라를 원점으로 하는 3차원 좌표계의 제1 내지 제4 주변 변환 좌표를 생성하는 단계; 및 상기 중심 변환 좌표 및 상기 제1 내지 제4 주변 변환 좌표를 포함하는 평면을 상기 일 화소의 국소 평면으로 생성하는 단계를 포함하는 깊이 영상을 통한 평면 검출 방법을 제공할 수 있다.In another aspect, the generating of the local plane includes: generating a center transform coordinate of a three-dimensional coordinate system with a camera as an origin for one pixel in the depth image; Generating first to fourth peripheral transformed coordinates of a three-dimensional coordinate system with a camera as an origin for a neighboring pixel of one pixel in the depth image; And generating a plane including the center transform coordinates and the first to fourth peripheral transform coordinates as a local plane of the one pixel.

또 다른 측면에서, 상기 주변 화소는 상기 일 화소에서 수직 하측 방향으로 k(k는 1이상의 자연수)번째 화소인 제1 수직 주변 화소, 상기 일 화소에서 수직 상측 방향으로 k번째 화소인 제2 수직 변환 화소, 상기 일 화소에서 수평 우측 방향으로 k번째 화소인 제1 수평 주변 화소 및 상기 일 화소에서 수평 좌측 방향으로 k번째 화소인 제2 수평 주변 화소를 포함하고, 상기 제1 수직 주변 화소는 상기 제1 주변 변환 좌표로 생성되고, 상기 제2 수직 주변 화소는 상기 제2 주변 변환 좌표로 생성되고, 상기 제1 수평 주변 화소는 상기 제3 주변 변환 좌표로 생성되고, 상기 제2 수평 주변 화소는 상기 제4 주변 변환 좌표로 생성되는 깊이 영상을 통한 평면 검출 방법을 제공할 수 있다.In another aspect, the peripheral pixel is a first vertical peripheral pixel that is a k-th pixel in a vertical downward direction from the one pixel (k is a natural number of 1 or more), and a second vertical transformation that is a k-th pixel in a vertical upward direction from the one pixel. A pixel, a first horizontal peripheral pixel that is a k-th pixel in a horizontal right direction from the one pixel, and a second horizontal peripheral pixel that is a k-th pixel in a horizontal left direction from the one pixel, and the first vertical peripheral pixel is the first 1 is generated as a peripheral transform coordinate, the second vertical peripheral pixel is generated as the second peripheral transform coordinate, the first horizontal peripheral pixel is generated as the third peripheral transform coordinate, and the second horizontal peripheral pixel is the A method of detecting a plane through a depth image generated by the fourth peripheral transform coordinate may be provided.

또 다른 측면에서, 상기 국소 평면의 특징을 검출하는 단계는, 상기 국소 평면의 제1 국소 벡터를 생성하는 단계; 상기 국소 평면의 제2 국소 벡터를 생성하는 단계; 상기 제1 국소 벡터 및 상기 제2 국소 벡터를 이용하여 상기 국소 평면의 법선 벡터를 생성하는 단계; 및 상기 중심 변환 좌표 및 상기 법선 벡터를 이용하여 상기 국소 평면과 상기 카메라의 거리인 상기 국소 평면의 특징 거리를 생성하는 단계를 포함하는 깊이 영상을 통한 평면 검출 방법을 제공할 수 있다.In yet another aspect, detecting a feature of the local plane comprises: generating a first local vector of the local plane; Generating a second local vector of the local plane; Generating a normal vector of the local plane by using the first local vector and the second local vector; And generating a feature distance of the local plane, which is a distance between the local plane and the camera, using the center transform coordinate and the normal vector.

또 다른 측면에서, 상기 제1 국소 벡터는 상기 중심 변환 좌표를 지나며 상기 제2 주변 변환 좌표에서 상기 제1 주변 변환 좌표를 지나는 제1 방향의 벡터이고, 상기 제2 국소 벡터는 상기 중심 변환 좌표를 지나며 상기 제4 주변 변환 좌표에서 상기 제3 주변 변환 좌표를 지나는 제2 방향의 벡터이고, 상기 법선 벡터는 상기 제1 국소 벡터와 상기 제2 국소 벡터의 외적으로 생성되는 깊이 영상을 통한 평면 검출 방법을 제공할 수 있다. In another aspect, the first local vector is a vector in a first direction passing through the center transformation coordinate and passing through the first peripheral transformation coordinate from the second peripheral transformation coordinate, and the second local vector is the center transformation coordinate. A method for detecting a plane through a depth image externally generated from the fourth peripheral transform coordinate and passing through the third peripheral transform coordinate, and the normal vector is an externally generated depth image of the first local vector and the second local vector. Can provide.

또 다른 측면에서, 상기 인접한 국소 평면간 유사도를 계산하는 단계는, 상기 일 화소의 국소 평면과 타 화소의 국소 평면의 법선 벡터를 이용한 제1 유사도를 계산하는 단계; 및 상기 일 화소의 국소 평명과 상기 타 화소의 국소 평면의 특징 거리를 이용한 제2 유사도를 계산하는 단계를 포함하는 깊이 영상을 통한 평면 검출 방법을 제공할 수 있다.In another aspect, the calculating of the similarity between adjacent local planes includes: calculating a first similarity using a normal vector of a local plane of one pixel and a local plane of another pixel; And calculating a second similarity using the local plane name of the one pixel and the feature distance of the local plane of the other pixel.

또 다른 측면에서, 상기 제1 유사도는 상기 일 화소의 국소 평면과 상기 타 화소의 국소 평면의 법선 벡터의 사이각이고, 상기 제2 유사도는 상기 일 화소의 국소 평면의 특징거리와 상기 타 화소의 국소 평면의 특징거리의 차이인 깊이 영상을 통한 평면 검출 방법을 제공할 수 있다.In another aspect, the first similarity is an angle between a local plane of the one pixel and a normal vector of a local plane of the other pixel, and the second similarity is a feature distance of the local plane of the one pixel and the other pixel. A method of detecting a plane through a depth image, which is a difference between a feature distance of a local plane, can be provided.

또 다른 측면에서, 상기 유사도가 소정의 유사도 이상이면 상기 인접한 국소 평면을 그룹화하고 동일 평면으로 검출하는 단계는, 상기 제1 유사도가 소정의 값 이상인지 판단하는 단계; 상기 제1 유사도가 소정의 값 이상이면 상기 제2 유사도가 소정의 값 이하인지 판단하는 단계; 상기 제2 유사도가 소정의 값 이하이면 상기 일 화소와 상기 타 화소를 그룹화하는 단계; 상기 일 화소와 비교하지 않은 주변의 다른 타 화소가 존재하는지 판단하는 단계; 및 일 화소와 비교하지 않은 주변의 다른 타 화소가 존재하지 않으면 그룹화된 화소를 같은 평면으로 검출하는 단계;를 포함하는 깊이 영상을 통한 평면 검출 방법을 제공할 수 있다.In another aspect, if the similarity is greater than or equal to a predetermined similarity, grouping the adjacent local planes and detecting the same plane may include determining whether the first similarity is greater than or equal to a predetermined value; Determining whether the second similarity is less than or equal to a predetermined value if the first similarity is greater than or equal to a predetermined value; Grouping the one pixel and the other pixel if the second similarity is less than or equal to a predetermined value; Determining whether there are other pixels in the vicinity that have not been compared with the one pixel; And detecting the grouped pixels as the same plane when there are no other surrounding pixels that are not compared with the one pixel.

또 다른 측면에서, 상기 국소 평면을 생성하는 단계는, 상기 깊이 영상 내 일 화소에 대한 카메라를 원점으로 하는 3차원 좌표계의 중심 변환 좌표를 생성하는 단계; 상기 깊이 영상 내 일 화소를 중심으로 N*N 사각형 영역의 주변 화소에 대한 카메라를 원점으로 하는 3차원 좌표계의 주변 변환 좌표들을 생성하는 단계; 및 상기 중심 변환 좌표 및 상기 주변 변환 좌표들을 포함하는 평면을 상기 일 화소의 국소 평면으로 생성하는 단계를 포함하는 깊이 영상을 통한 평면 검출 방법을 제공할 수 있다.In another aspect, the generating of the local plane includes: generating a center transform coordinate of a three-dimensional coordinate system with a camera as an origin for one pixel in the depth image; Generating peripheral transformed coordinates of a three-dimensional coordinate system with a camera as an origin for neighboring pixels in an N*N rectangular area centered on one pixel in the depth image; And generating a plane including the center transform coordinates and the peripheral transform coordinates as a local plane of the one pixel.

또 다른 측면에서, 상기 국소 평면의 특징을 검출하는 단계는, 상기 국소 평면의 제1 평균 국소 벡터를 생성하는 단계; 상기 국소 평면의 제2 평균 국소 벡터를 생성하는 단계; 상기 제1 및 제2 평균 국소 벡터를 이용하여 상기 국소 평면의 법선 벡터를 생성하는 단계; 및 상기 중심 변환 좌표 및 상기 법선 벡터를 이용하여 상기 국소 평면의 특징 거리를 생성하는 단계;를 포함하고, 상기 제1 평균 국소 벡터는 상기 국소 평면의 복수의 제1 국소 벡터의 합이고, 상기 제2 평균 국소 벡터는 상기 국소 평면의 복수의 제2 국소 벡터의 합인 깊이 영상을 통한 평면 검출 방법을 제공할 수 있다.In yet another aspect, detecting a feature of the local plane comprises: generating a first average local vector of the local plane; Generating a second average local vector of the local plane; Generating a normal vector of the local plane using the first and second average local vectors; And generating a feature distance of the local plane using the center transform coordinate and the normal vector, wherein the first average local vector is a sum of a plurality of first local vectors of the local plane, and the first 2 The average local vector may provide a plane detection method through a depth image that is a sum of a plurality of second local vectors of the local plane.

또 다른 측면에서, 명령들을 저장하는 적어도 하나의 메모리; 및 적어도 하나의 프로세서;를 포함하고, 상기 명령들은 상기 프로세서로 하여금 동작들을 수행하게 하기 위해 상기 프로세서에 의해 실행가능하고, 상기 동작들은:In yet another aspect, at least one memory for storing instructions; And at least one processor; wherein the instructions are executable by the processor to cause the processor to perform operations, wherein the operations are:

깊이 영상 화소 각각에 대한 국소 평면을 생성하고, 생성된 상기 국소 평면의 특징을 검출하고, 검출된 상기 국소 평면의 특징을 이용하여 인접한 국소 평면간 유사도를 계산하고, 상기 유사도가 소정의 유사도 이상이면 상기 인접한 국소 평면을 그룹화하고 동일 평면으로 검출하는 것을 포함하는 평면 검출 장치을 제공할 수 있다.A local plane is generated for each of the depth image pixels, a feature of the generated local plane is detected, and a similarity between adjacent local planes is calculated using the detected features of the local plane, and if the similarity is greater than or equal to a predetermined similarity, It is possible to provide a plane detection apparatus including grouping the adjacent local planes and detecting the same plane.

또 다른 측면에서, 상기 명령들을 저장하는 비일시적 컴퓨터 판독가능 매체를 제공할 수도 있다.In yet another aspect, a non-transitory computer-readable medium for storing the instructions may be provided.

본 발명의 실시예는 깊이 영상 내의 깊이 정보를 통해 평면을 빠르고 정확하게 추정할 수 있다.According to an embodiment of the present invention, a plane can be quickly and accurately estimated through depth information in a depth image.

또한, 본 발명의 실시예는 화소 단위로 평면의 영역을 검출함으로써 정밀도가 향상된다.Further, in the embodiment of the present invention, precision is improved by detecting a planar area in units of pixels.

또한, 본 발명의 실시예는 국소 평면 단위로 평면의 인자를 계산하고, 유사한 평면 인자를 가지는 인접 국소 평면을 같은 평면으로 그룹핑하여 각 평면의 영역을 검출함으로써 데이터 처리 속도가 향상된다.In addition, according to an embodiment of the present invention, the data processing speed is improved by calculating a planar factor in units of a local plane and grouping adjacent local planes having similar plane factors into the same plane to detect regions of each plane.

또한, 본 발명의 실시예는 깊이 영상에 노이즈가 많이 포함된 경우에도 신뢰할 수 있는 평면 추정이 가능하다.In addition, according to the exemplary embodiment of the present invention, even when a depth image contains a lot of noise, reliable plane estimation is possible.

본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 명확하게 이해될 수 있다.The effects obtainable in the present invention are not limited to the above-mentioned effects, and other effects not mentioned can be clearly understood from the following description.

도 1은 본 발명의 실시예에 따른 평면 검출 장치를 도시하는 블록도이다.
도 2는 본 발명의 실시예에 따른 평면 검출 방법에 대한 예시적은 다이어그램이다.
도 3은 일 실시예에 따른 국소 평면을 생성하는 방법을 설명하기 위한 순서도이다.
도 4는 카메라 좌표계 상의 한점이 영상 평면으로 투영되는 것을 나타낸 것이다.
도 5는 깊이 영상 내의 화소들을 3차원 좌표계로 변환한 모습을 나타낸 것이다.
도 6은 일 실시예에 따른 국소 평면의 특징을 검출하는 방법을 설명하기 위한 순서도이다.
도 7은 도 6의 국소 평면의 특징인 법선 벡터를 설명하기 위한 3차원 좌표계이다.
도 8은 일 실시예에 따른 국소 평면간 유사도를 계산하는 방법을 설명하기 위한 순서도이다.
도 9는 일 실시예에 따른 국소 평면간 유사도에 따른 그룹화를 통한 평면 검출 방법을 설명하기 위한 순서도이다.
도 10은 다른 실시예에 따른 국소 평면을 생성하는 방법을 설명하기 위한 순서도이다.
도 11은 다른 실시예에 따른 국소 평면의 특징을 검출하는 방법을 설명하기 위한 순서도이다.
도 12는 다른 실시예에 따른 국소 평면의 평균 국소 벡터를 구하기 위한 국소 평면 내의 복수의 국소 벡터를 나타낸 일 예이다.
도 13은 본 발명의 실시예에 따른 평면 검출 결과를 보여준다.
1 is a block diagram showing a plane detection apparatus according to an embodiment of the present invention.
2 is an exemplary diagram of a plane detection method according to an embodiment of the present invention.
3 is a flowchart illustrating a method of generating a local plane according to an exemplary embodiment.
4 shows that a point on the camera coordinate system is projected onto the image plane.
5 shows a state in which pixels in a depth image are transformed into a 3D coordinate system.
6 is a flowchart illustrating a method of detecting a feature of a local plane according to an exemplary embodiment.
7 is a three-dimensional coordinate system for describing a normal vector that is a feature of the local plane of FIG. 6.
8 is a flowchart illustrating a method of calculating a similarity between local planes according to an exemplary embodiment.
9 is a flowchart illustrating a method of detecting a plane through grouping according to a degree of similarity between local planes according to an exemplary embodiment.
10 is a flowchart illustrating a method of generating a local plane according to another exemplary embodiment.
11 is a flowchart illustrating a method of detecting a feature of a local plane according to another exemplary embodiment.
12 is an example of a plurality of local vectors in a local plane for obtaining an average local vector of the local plane according to another embodiment.
13 shows a result of plane detection according to an embodiment of the present invention.

본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 본 발명의 효과 및 특징, 그리고 그것들을 달성하는 방법은 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 다양한 형태로 구현될 수 있다. 이하의 실시예에서, 제1, 제2 등의 용어는 한정적인 의미가 아니라 하나의 구성 요소를 다른 구성 요소와 구별하는 목적으로 사용되었다. 또한, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, 포함하다 또는 가지다 등의 용어는 명세서상에 기재된 특징, 또는 구성요소가 존재함을 의미하는 것이고, 하나 이상의 다른 특징들 또는 구성요소가 부가될 가능성을 미리 배제하는 것은 아니다. 또한, 도면에서는 설명의 편의를 위하여 구성 요소들이 그 크기가 과장 또는 축소될 수 있다. 예컨대, 도면에서 나타난 각 구성의 크기 및 두께는 설명의 편의를 위해 임의로 나타내었으므로, 본 발명이 반드시 도시된 바에 한정되지 않는다.Since the present invention can apply various transformations and have various embodiments, specific embodiments are illustrated in the drawings and will be described in detail in the detailed description. Effects and features of the present invention, and a method of achieving them will become apparent with reference to the embodiments described below in detail together with the drawings. However, the present invention is not limited to the embodiments disclosed below and may be implemented in various forms. In the following embodiments, terms such as first and second are used for the purpose of distinguishing one constituent element from other constituent elements rather than a limiting meaning. In addition, expressions in the singular include plural expressions unless the context clearly indicates otherwise. In addition, terms such as include or have means that the features or components described in the specification are present, and do not preclude the possibility of adding one or more other features or components in advance. In addition, in the drawings, the size of components may be exaggerated or reduced for convenience of description. For example, the size and thickness of each component shown in the drawings are arbitrarily shown for convenience of description, and thus the present invention is not necessarily limited to what is shown.

이하, 첨부된 도면을 참조하여 본 발명의 실시예들을 상세히 설명하기로 하며, 도면을 참조하여 설명할 때 동일하거나 대응하는 구성 요소는 동일한 도면부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings, and when describing with reference to the drawings, the same or corresponding constituent elements are assigned the same reference numerals, and redundant descriptions thereof will be omitted. .

도 1은 본 발명의 실시예에 따른 평면 검출 장치를 도시하는 블록도이다.1 is a block diagram showing a plane detection apparatus according to an embodiment of the present invention.

평면 검출 장치(100)는 영상 데이터를 데이터수신장치(200)로 제공할 수 있다.The plane detection device 100 may provide image data to the data receiving device 200.

평면 검출 장치(100)와 데이터수신장치(200)는 데스크톱 컴퓨터들, 노트북 (즉, 랩톱) 컴퓨터들, 태블릿 컴퓨터들, 셋톱 박스들, 이른바 "스마트" 폰들과 같은 전화기 핸드셋들, 이른바 "스마트" 패드들, 텔레비전들, 카메라들, 디스플레이 디바이스들, 디지털 미디어 플레이어들, 비디오 게이밍 콘솔들, 비디오 스트리밍 디바이스 등을 포함한 매우 다양한 디바이스들 중 임의의 것을 포함할 수도 있다.The plane detection device 100 and the data receiving device 200 are desktop computers, notebook (ie, laptop) computers, tablet computers, set-top boxes, telephone handsets such as so-called "smart" phones, so-called "smart". It may include any of a wide variety of devices including pads, televisions, cameras, display devices, digital media players, video gaming consoles, video streaming devices, and the like.

일부 구현예에서는, 평면 검출 장치(100)와 데이터수신장치(200)는 무선 통신을 위한 구성(10)이 갖추어 질 수 있다.In some implementations, the plane detection device 100 and the data receiving device 200 may be equipped with a configuration 10 for wireless communication.

또한, 데이터수신장치(200)는 영상 처리된 영상 데이터를 컴퓨터 판독 가능 매체를 통해 수신할 수도 있다.In addition, the data receiving apparatus 200 may receive image-processed image data through a computer-readable medium.

컴퓨터 판독 가능 매체는 평면 검출 장치(100)로부터 영상처리된 영상 데이터를 데이터수신장치(200)로 이동시킬 수 있는 임의 유형의 매체 또는 디바이스를 포함할 수 있다. 일 예로, 컴퓨터 판독 가능 매체는 평면 검출 장치(100)가 영상 데이터를 데이터수신장치(200)로 직접 실시간으로 송신하는 것을 가능하게 하는 통신 매체, 이를테면 송신 채널을 포함할 수 있다.The computer-readable medium may include any type of medium or device capable of moving image data processed from the plane detection apparatus 100 to the data receiving apparatus 200. For example, the computer-readable medium may include a communication medium, such as a transmission channel, which enables the plane detection device 100 to directly transmit image data to the data receiving device 200 in real time.

영상 처리된 영상 데이터는 통신 표준, 이를테면 무선 통신 프로토콜에 따라 변조되고 데이터수신장치(200)로 송신될 수도 있다. 통신 매체는 임의의 무선 또는 유선 통신 매체, 이를테면 라디오 주파수 스펙트럼 또는 하나 이상의 물리적 송신 라인들을 포함할 수도 있다. 통신 매체는 패킷 기반 네트워크, 이를테면 로컬 영역 네트워크, 광역 네트워크, 또는 인터넷과 같은 글로벌 네트워크의 부분을 형성할 수도 있다. 통신 매체는 라우터들, 스위치들, 기지국들, 또는 평면 검출 장치(100)로부터 데이터수신장치(200)로의 통신을 용이하게 하는데 유용할 수도 있는 임의의 다른 장비를 포함할 수도 있다. 몇몇 예들에서 영상 처리된 영상 데이터가 출력 인터페이스(130)로부터 컴퓨터 판독 가능 저장 매체, 이를 테면 비일시적(non-transitory) 컴퓨터 판독가능 저장 매체, 즉, 데이터 저장 디바이스로 출력될 수도 있다. 마찬가지로 영상 데이터는 데이터수신장치(200)의 입력 인터페이스(220)에 의해 저장 디바이스로부터 엑세스될 수도 있다. 저장 디바이스는 하드 드라이브, 블루-레이 디스크들, DVD들, CD-ROM들, 플래시 메모리, 휘발성 또는 비휘발성 메모리, 또는 영상 데이터를 저장하기 위한 임의의 다른 적합한 디지털 저장 매체들과 같은 다양한 분산형 또는 국부적으로 액세스되는 비일시적 데이터 저장 매체들 중 임의의 것을 포함할 수도 있다. 추가의 예에서, 저장 디바이스는 평면 검출 장치(100)에 의해 생성된 영상 데이터를 저장할 수도 있는 파일 서버 또는 다른 중간 저장 디바이스에 해당할 수도 있다.The image-processed image data may be modulated according to a communication standard, such as a wireless communication protocol, and transmitted to the data receiving apparatus 200. The communication medium may comprise any wireless or wired communication medium, such as a radio frequency spectrum or one or more physical transmission lines. The communication medium may form part of a packet-based network, such as a local area network, a wide area network, or a global network such as the Internet. The communication medium may include routers, switches, base stations, or any other equipment that may be useful to facilitate communication from the plane detection device 100 to the data receiving device 200. In some examples, the image-processed image data may be output from the output interface 130 to a computer-readable storage medium, such as a non-transitory computer-readable storage medium, that is, a data storage device. Similarly, image data may be accessed from the storage device by the input interface 220 of the data receiving apparatus 200. The storage device can be any of a variety of distributed or distributed digital storage media, such as a hard drive, Blu-ray disks, DVDs, CD-ROMs, flash memory, volatile or nonvolatile memory, or any other suitable digital storage media for storing image data. It may include any of the non-transitory data storage media that are accessed locally. In a further example, the storage device may correspond to a file server or other intermediate storage device that may store image data generated by the plane detection apparatus 100.

데이터수신장치(200)는 저장 디바이스로부터의 저장된 영상 데이터에 스트리밍 또는 다운로드를 통해 액세스할 수도 있다.The data receiving apparatus 200 may access the stored image data from the storage device through streaming or download.

도 1의 예에서 평면 검출 장치(100)는 영상 소스(110) 및 영상처리부(120)를 포함할 수 있다. 또한, 평면 검출 장치(100)는 출력 인터페이스(130)를 더 포함할 수 있다. In the example of FIG. 1, the plane detection apparatus 100 may include an image source 110 and an image processing unit 120. In addition, the plane detection device 100 may further include an output interface 130.

데이터수신장치(200)는 입력 인터페이스(220) 및 데이터처리부(210)를 포함할 수 있다. The data receiving device 200 may include an input interface 220 and a data processing unit 210.

다른 예에서 평면 검출 장치(100)와 데이터처리부(210)는 다른 컴포넌트들을 포함할 수 있다.In another example, the plane detection apparatus 100 and the data processing unit 210 may include different components.

예를 들어 평면 검출 장치(100)는 외부 비디오 소스, 이를테면 외부 카메라로부터 영상을 수신할 수 있고, 외부 카메라는 깊이 영상(depth image)을 생성하는 깊이 영상 촬영 디바이스가 될 수 있다. For example, the plane detection apparatus 100 may receive an image from an external video source, such as an external camera, and the external camera may be a depth image photographing device that generates a depth image.

평면 검출 장치(100)의 영상 소스(110)는 깊이 영상 촬영 디바이스, 이를테면 카메라, 이전에 촬영된 깊이 영상을 포함하는 아카이브 (archive), 및/또는 깊이 영상 콘텐츠 제공자로부터의 깊이 영상을 수신하는 인터페이스를 포함할 수도 있다.The image source 110 of the plane detection apparatus 100 is a depth image photographing device, such as a camera, an archive including a previously photographed depth image, and/or an interface for receiving a depth image from a depth image content provider. It may also include.

일부 구현예에서 깊이 영상 촬영 디바이스는 장면의 깊이 정보를 픽셀(화소)당 16비트의 정수형 자료형으로 표현한 깊이 영상을 제공할 수 있다. 깊이 영상의 한 픽셀을 표현하기 위한 비트수는 변경될 수 있다. 깊이 영상 촬영 디바이스는 적외선 등을 이용하여 깊이 영상 촬영 디바이스로부터 객체 및 배경까지의 거리를 측정하여 거리에 비례 또는 반비례하는 값을 갖는 깊이 영상을 제공할 수 있다.In some implementations, the depth image capturing device may provide a depth image in which depth information of a scene is expressed in an integer data type of 16 bits per pixel (pixel). The number of bits for representing one pixel of the depth image may be changed. The depth image capturing device may provide a depth image having a value proportional or inversely proportional to the distance by measuring a distance from the depth image capturing device to an object and a background using infrared rays or the like.

깊이 영상의 화소 값은 예를 들어, RGB의 색상 정보가 아닌 일 예로 mm 단위(이에 한정하는 것은 아님)의 정수로 된 깊이 정보가 될 수 있다.The pixel value of the depth image may be, for example, not color information of RGB, but depth information of an integer of mm unit (but not limited thereto).

평면 검출 장치(100)와 데이터수신장치(200) 각각은 하나 이상의 메모리와 하나 이상의 마이크로프로세서들, 디지털 신호 프로세서들 (DSP들), 주문형 집적회로들 (ASIC들), 필드 프로그램가능 게이트 어레이들 (FPGA들), 개별 로직 회로, 소프트웨어, 하드웨어, 펌웨어 또는 그것들의 임의의 조합과 같은 다양한 형태로 구성될 수 있다.Each of the plane detection device 100 and the data receiving device 200 includes one or more memories and one or more microprocessors, digital signal processors (DSPs), custom integrated circuits (ASICs), field programmable gate arrays ( FPGAs), individual logic circuits, software, hardware, firmware, or any combination thereof.

메모리는 컴퓨터 판독가능 명령들 또는 프로세서 판독가능 명령들과 같은 명령들(예를 들어, 실행가능 명령들)을 포함한다. 명령들은 하나 이상의 프로세서들 각각에 의해서와 같이 컴퓨터에 의해 실행가능한 하나 이상의 명령어들을 포함할 수도 있다.The memory contains instructions (eg, executable instructions) such as computer readable instructions or processor readable instructions. Instructions may include one or more instructions executable by a computer, such as by each of one or more processors.

예를 들어 하나 이상의 명령들은 하나 이상의 프로세서들로 하여금 깊이 영상의 평면을 검출하기 위해 깊이 영상을 프로세싱하는 것을 포함하는 동작들을 수행하기 위한 하나 이상의 프로세서들에 의해 실행가능 할 수도 있다.For example, the one or more instructions may be executable by one or more processors to perform operations including processing the depth image to cause the one or more processors to detect a plane of the depth image.

상세하게는, 영상처리부(120)는 명령어들을 저장하는 하나 이상의 메모리(121)와 상기 명령어들을 실행하는 적어도 하나의 프로세서(122)를 포함할 수 있다.In detail, the image processing unit 120 may include one or more memories 121 for storing instructions and at least one processor 122 for executing the instructions.

영상처리부(120)의 프로세서 (122)는 깊이 영상 내의 평면을 검출하기 위한 기법들이 적용되도록 구성될 수 있다.The processor 122 of the image processing unit 120 may be configured to apply techniques for detecting a plane in the depth image.

일부 구현예에서는, 영상처리부(120)의 프로세서(122)는 깊이 영상 내의 유사한 평면들을 그룹핑하는 기법들이 적용되도록 구성될 수도 있다.In some implementations, the processor 122 of the image processing unit 120 may be configured to apply techniques for grouping similar planes in the depth image.

일부 구현예에서는, 영상처리부(120)의 프로세서(122)는 깊이 영상을 부호화하기 위한 기법들이 적용되도록 구성될 수 있다. In some implementations, the processor 122 of the image processing unit 120 may be configured to apply techniques for encoding a depth image.

다른 구현예에서는 영상처리부(120)의 프로세서(122)는 깊이 영상을 부호화 및 복호화하는 기법이 적용되도록 구성될 수도 있다.In another embodiment, the processor 122 of the image processing unit 120 may be configured to apply a technique of encoding and decoding a depth image.

데이터처리부(220)는 영상처리부(120)로부터의 깊이 영상 데이터를 외부 장치로 전송, 디스플레이, 분석 등을 수행할 수 있도록 구성될 수 있다.The data processing unit 220 may be configured to transmit, display, and analyze the depth image data from the image processing unit 120 to an external device.

일부 구현예에서는, 데이터처리부(220)는 영상처리부(120)로부터의 부호화된 깊이 영상 데이터를 복호화할 수 있도록 구성될 수도 있다.In some implementations, the data processing unit 220 may be configured to decode the encoded depth image data from the image processing unit 120.

도 1에 도시되지 않았지만, 몇몇 실시예에서, 평면 검출 장치(100)는 부호화 장치와 통합된 장치가 될 수 있다. 몇몇 실시예에서, 평면 검출 장치(100)와 데이터처리장치(200)는 통합된 장치가 될 수 있다. 이를테면 평면 검출 장치(100)는 깊이 화면을 부호화하고, 부호화된 깊이 화면을 복호화할 수 있도록 구성될 수도 있다.Although not shown in FIG. 1, in some embodiments, the plane detection device 100 may be a device integrated with an encoding device. In some embodiments, the plane detection device 100 and the data processing device 200 may be integrated devices. For example, the plane detection apparatus 100 may be configured to encode a depth screen and decode the encoded depth screen.

도 2는 본 발명의 실시예에 따른 평면 검출 방법에 대한 예시적은 다이어그램이다.2 is an exemplary diagram of a plane detection method according to an embodiment of the present invention.

도 2를 참조하면, 본 발명의 실시예에 따른 평면 검출 방법은, 평면 검출 장치(100)의 프로세서(122)가 깊이 영상의 화소 각각에 대한 국소 평면을 생성하는 단계(S100), 평면 검출 장치(100)의 프로세서(122)가 국소 평면의 특징을 검출하는 단계(S200), 평면 검출 장치(100)의 프로세서(122)가 검출된 국소 평면의 특징을 이용하여 인접한 국소 평면간 유사도를 계산하는 단계(S300) 및 평면 검출 장치(100)의 프로세서(122)가 인접한 국소 평면이 소정의 유사도 이상이면 그룹화하고 동일 평면으로 검출하는 단계(S400)를 포함할 수 있다. 도 2 내지 도 9를 참조하여 본 발명의 일 실시예에 따른 평면 검출 방법의 각 단계를 보다 상세하게 설명한다.Referring to FIG. 2, in the plane detection method according to an embodiment of the present invention, the processor 122 of the plane detection apparatus 100 generates a local plane for each pixel of a depth image (S100), and the plane detection apparatus The processor 122 of (100) detects a feature of a local plane (S200), and the processor 122 of the plane detection apparatus 100 calculates a similarity between adjacent local planes using the detected feature of the local plane. In operation S300 and the processor 122 of the plane detection apparatus 100, if the adjacent local planes are greater than or equal to a predetermined degree of similarity, grouping them and detecting them as the same plane (S400). Each step of the plane detection method according to an embodiment of the present invention will be described in more detail with reference to FIGS. 2 to 9.

도 3은 일 실시예에 따른 국소 평면을 생성하는 방법을 설명하기 위한 순서도이고, 도 4는 카메라 좌표계 상의 한점이 영상 평면으로 투영되는 것을 나타낸 것이고, 도 5는 깊이 영상 내의 화소들을 3차원 좌표계로 변환한 모습을 나타낸 것이다.3 is a flowchart illustrating a method of generating a local plane according to an exemplary embodiment, and FIG. 4 is a diagram illustrating that a point on a camera coordinate system is projected onto an image plane, and FIG. 5 is a diagram illustrating pixels in a depth image as a 3D coordinate system. It shows the transformed form.

도 3을 참조하면, 일 실시예에 따른 국소 평면을 생성하는 방법은 평면 검출 장치(100)의 프로세서(122)가 깊이 영상 내 일 화소에 대한 카메라를 원점으로 하는 3차원 좌표계의 중심 변환 좌표를 생성하는 단계(S110)를 포함할 수 있다. 보다 구체적으로, 도 4를 참조하면, 카메라 좌표계 상에서 객체의 임의의 한 점 P'는 (x`, y`, z`)좌표를 가지고, 여기서 P`(x`, y`)는 영상 평면의 P(x, y) 좌표를 가진 점으로 투영되며, z` 값은 P(x, y) 좌표에서의 깊이 값이 된다. 그리고 상기 깊이 값은 각 화소 단위로 표현될 수 있다. 상세하게는, 깊이 영상을 촬영할 때 촬영된 한 화면은 촬영 영역 내 각 점들이 가상의 평면인 영상 평면 위로 투영된다. 그리고 카메라 좌표계에서의 한점 P'≡(x`, y`, z`)가 중앙을 원점으로 하는 영상 평면 내 한점인 P=(x, y)로 투영된다면, P를 포함하는 화소에서의 깊이 값이 d일 때, P'와 P 사이의 관계는 수학식 1을 충족한다.Referring to FIG. 3, in a method of generating a local plane according to an embodiment, the processor 122 of the plane detection apparatus 100 calculates a center transform coordinate of a 3D coordinate system with a camera as an origin for a pixel in a depth image. It may include the step of generating (S110). More specifically, referring to FIG. 4, an arbitrary point P'of an object in the camera coordinate system has (x`, y`, z`) coordinates, where P`(x`, y`) is of the image plane. It is projected to a point with P(x, y) coordinates, and the z` value becomes the depth value at the P(x, y) coordinates. In addition, the depth value may be expressed in units of each pixel. Specifically, a screen captured when capturing a depth image is projected onto an image plane in which points in the capturing area are virtual planes. And if a point P'≡(x', y', z') in the camera coordinate system is projected to P = (x, y), which is a point in the image plane with the center as the origin, the depth value at the pixel containing P When this is d, the relationship between P'and P satisfies Equation 1.

[수학식 1][Equation 1]

x`=dx/fx`=dx/f

y`=dy/fy`=dy/f

z`=dz`=d

수학식 1에서 f는 카메라의 초점 거리로써, 카메라 좌표계 상에서 원점과 영상 평면과의 거리로 정의한다. 일 예로, 도 5를 참조하면, 프로세서(122)는 깊이 영상 내 일 화소(P(x,y))를 수학식 1을 이용하여 3차원 좌표계인 중심 변환 좌표(Pc(x,y))로 변환할 수 있다. In Equation 1, f is the focal length of the camera and is defined as the distance between the origin and the image plane in the camera coordinate system. As an example, referring to FIG. 5, the processor 122 converts one pixel (P(x,y)) in the depth image into a center transformed coordinate (Pc(x,y)) which is a three-dimensional coordinate system using Equation 1 Can be converted.

일 실시예에 따른 국소 평면을 생성하는 방법은 평면 검출 장치(100)의 프로세서(122)가 깊이 영상 내 일 화소의 주변 화소에 대한 카메라를 원점으로 하는 3차원 좌표계의 제1 내지 제4 주변 변환 좌표를 생성하는 단계(S120)를 포함할 수 있다. 보다 구체적으로, 일 화소의 주변 화소는 일 화소와 인접한 위치에 있는 화소를 의미할 수 있다. 프로세서(122)는 일 화소(P(x,y))의 주변 화소 4개를 제1 내지 제4 주변 변환 좌표로 생성할 수 있다. 일 예로, 주변 화소는 일 화소에서 수직 하측 방향으로 k(k는 1이상의 자연수)번째 화소인 제1 수직 주변 화소, 일 화소에서 수직 상측 방향으로 k번째 화소인 제2 수직 주변 화소, 일 화소에서 수평 우측 방향으로 k번째 화소인 제1 수평 주변 화소, 일 화소에서 수평 좌측 방향으로 k번째 화소인 제2 수평 주변 화소를 포함할 수 있다. 프로세서(122)는 제1 수직 주변 화소를 제1 주변 변환 좌표로, 제2 수직 주변 화소를 제2 주변 변환 좌표로, 제1 수평 주변 화소를 제3 주변 변환 좌표로, 제2 수평 주변 화소를 제4 주변 변환 좌표로 변환할 수 있다.In the method of generating a local plane according to an embodiment, the processor 122 of the plane detection apparatus 100 transforms the first to fourth surroundings of a 3D coordinate system with a camera as an origin for a neighboring pixel of a pixel in a depth image. It may include generating coordinates (S120). More specifically, the surrounding pixels of one pixel may mean a pixel located adjacent to the one pixel. The processor 122 may generate four neighboring pixels of one pixel P(x,y) as first to fourth peripheral transform coordinates. As an example, the peripheral pixel is a first vertical peripheral pixel that is a k-th pixel vertically downward from one pixel (k is a natural number of 1 or more), a second vertical peripheral pixel that is a k-th pixel vertically upward from one pixel, and one pixel. A first horizontal peripheral pixel that is a k-th pixel in a horizontal right direction, and a second horizontal peripheral pixel that is a k-th pixel in a horizontal left direction from one pixel may be included. The processor 122 uses a first vertical peripheral pixel as a first peripheral transformed coordinate, a second vertical peripheral pixel as a second peripheral transformed coordinate, a first horizontal peripheral pixel as a third peripheral transformed coordinate, and a second horizontal peripheral pixel as a second peripheral transformed coordinate. It can be converted into a fourth peripheral transform coordinate.

일 실시예에 따른 국소 평면을 생성하는 방법은 평면 검출 장치(100)의 프로세서(122)가 중심 변환 좌표 및 제1 내지 제4 주변 변환 좌표를 포함하는 평면을 일 화소의 국소 평면으로 생성하는 단계(S130)를 포함할 수 있다. In the method of generating a local plane according to an embodiment, the processor 122 of the plane detection apparatus 100 generates a plane including a center transform coordinate and first to fourth peripheral transform coordinates as a local plane of one pixel. It may include (S130).

도 6은 일 실시예에 따른 국소 평면의 특징을 검출하는 방법을 설명하기 위한 순서도이고, 도 7은 도 6의 국소 평면의 특징인 법선 벡터를 설명하기 위한 3차원 좌표계이다.6 is a flowchart illustrating a method of detecting a feature of a local plane according to an exemplary embodiment, and FIG. 7 is a three-dimensional coordinate system for describing a normal vector that is a feature of the local plane of FIG. 6.

도 6을 참조하면, 일 실시예에 따른 국소 평면의 특징을 검출하는 방법은 평면 검출 장치(100)의 프로세서(122)가 국소 평면의 제1 국소 벡터(

Figure 112019042217662-pat00001
)를 생성하는 단계(S210)를 포함할 수 있다. 보다 구체적으로, 국소 평면의 제1 국소 벡터(
Figure 112019042217662-pat00002
)는 중심 변환 좌표(Pc(x,y))를 지나며 제2 주변 변환 좌표(Pc(x,y+k))에서 제1 주변 변환 좌표(Pc(x,y-k))를 지나는 제1 방향의 벡터 일 수 있다. 일 예로, 제1 방향은 수직 하측 방향 또는 수직 하측 방향에 가까운 방향일 수 있다. 제1 국소 벡터(
Figure 112019042217662-pat00003
)는 Pc(x,y-k)-Pc(x, y+k)로 나타낼 수 있다. Referring to FIG. 6, in a method of detecting a feature of a local plane according to an embodiment, the processor 122 of the plane detection apparatus 100 uses a first local vector of the local plane (
Figure 112019042217662-pat00001
) May include generating (S210). More specifically, the first local vector of the local plane (
Figure 112019042217662-pat00002
) Passes through the center transform coordinate (Pc(x,y)) and passes from the second peripheral transform coordinate (Pc(x,y+k)) to the first peripheral transform coordinate (Pc(x, yk)) in the first direction. It can be a vector. For example, the first direction may be a vertical downward direction or a direction close to a vertical downward direction. The first local vector (
Figure 112019042217662-pat00003
) Can be represented as Pc(x,yk)-Pc(x, y+k).

일 실시예에 따른 국소 평면의 특징을 검출하는 방법은 평면 검출 장치(100)의 프로세서(122)가 국소 평면의 제2 국소 벡터(

Figure 112019042217662-pat00004
)를 생성하는 단계(S220)를 포함할 수 있다. 보다 구체적으로, 국소 평면의 제2 국소 벡터(
Figure 112019042217662-pat00005
)는 중심 변환 좌표(Pc(x,y))를 지나며 제4 주변 변환 좌표(Pc(x-k,y))에서 제3 주변 변환 좌표(Pc(x+k,y))를 지나는 제2 방향의 벡터 일 수 있다. 일 예로, 제2 방향은 수평 우측 방향 또는 수평 우측 방향에 가까운 방향일 수 있다. 제2 국소 벡터(
Figure 112019042217662-pat00006
)는 Pc(x+k,y)-Pc(x-k, y)로 나타낼 수 있다.In a method of detecting a feature of a local plane according to an embodiment, the processor 122 of the plane detection apparatus 100 may use a second local vector (
Figure 112019042217662-pat00004
) May include generating (S220). More specifically, the second local vector of the local plane (
Figure 112019042217662-pat00005
) Passes through the center transform coordinate (Pc(x,y)) and passes from the fourth peripheral transform coordinate (Pc(xk,y)) to the third peripheral transform coordinate (Pc(x+k,y)) in the second direction. It can be a vector. For example, the second direction may be a horizontal right direction or a direction close to a horizontal right direction. The second local vector (
Figure 112019042217662-pat00006
) May be represented as Pc(x+k,y)-Pc(xk, y).

일 실시예에 따른 국소 평면의 특징을 검출하는 방법은 평면 검출 장치(100)의 프로세서(122)가 제1 국소 벡터(

Figure 112019042217662-pat00007
) 및 제2 국소 벡터(
Figure 112019042217662-pat00008
)를 이용하여 일 화소(P)에 대한 국소 평면의 법선 벡터(n(x,y))를 생성하는 단계(S230)를 생성하는 단계를 포함할 수 있다. 보다 구체적으로, 법선 벡터(n(x,y))는 수학식 2에 따라 제1 국소 벡터(
Figure 112019042217662-pat00009
)와 제2 국소 벡터(
Figure 112019042217662-pat00010
)의 외적으로 구할 수 있다. In a method of detecting a feature of a local plane according to an embodiment, the processor 122 of the plane detection apparatus 100 may use a first local vector (
Figure 112019042217662-pat00007
) And the second local vector (
Figure 112019042217662-pat00008
) To generate a local plane normal vector (n(x,y)) for one pixel P (S230). More specifically, the normal vector (n(x,y)) is the first local vector (
Figure 112019042217662-pat00009
) And the second local vector (
Figure 112019042217662-pat00010
) Can be obtained externally.

[수학식 2][Equation 2]

Figure 112019042217662-pat00011
Figure 112019042217662-pat00011

이에 제한되는 것은 아니고, 법선 벡터(n(x,y))는 제2 국소 벡터(

Figure 112019042217662-pat00012
)와 제1 국소 벡터(
Figure 112019042217662-pat00013
)의 곱으로 순서를 달리하여 구할 수 있다.It is not limited thereto, and the normal vector (n(x,y)) is the second local vector (
Figure 112019042217662-pat00012
) And the first local vector (
Figure 112019042217662-pat00013
It can be obtained in a different order by multiplying by ).

일 실시예에 따른 국소 평면의 특징을 검출하는 방법은 평면 검출 장치(100)의 프로세서(122)가 중심 변환 좌표(Pc(x,y)) 및 법선 벡터(n(x,y))를 이용하여 국소 평면과 카메라의 거리인 국소 평면의 특징 거리(

Figure 112019042217662-pat00014
)를 생성하는 단계(S240)를 포함할 수 있다. 보다 구체적으로, 중심 변환 좌표(Pc(x,y))의 국소 평면의 법선 벡터(n(x,y))의 성분을 (
Figure 112019042217662-pat00015
)이라고 했을 때, 중심 변환 좌표(Pc(x,y))를 지나고 법선 벡터(n(x,y))를 가지는 평면은 수학식 3과 같이 표현 할 수 있다.In the method of detecting a feature of a local plane according to an embodiment, the processor 122 of the plane detection apparatus 100 uses a center transform coordinate (Pc(x,y)) and a normal vector (n(x,y)). And the feature distance of the local plane, which is the distance between the local plane and the camera (
Figure 112019042217662-pat00014
) May include the step of generating (S240). More specifically, the component of the local plane normal vector (n(x,y)) of the center transform coordinate (Pc(x,y)) is (
Figure 112019042217662-pat00015
), a plane passing through the center transform coordinate (Pc(x,y)) and having a normal vector (n(x,y)) can be expressed as Equation 3.

[수학식 3][Equation 3]

Figure 112019042217662-pat00016
Figure 112019042217662-pat00016

이 때, 국소 평면의 카메라로부터의 거리인 특징 거리(

Figure 112019042217662-pat00017
)는 수학식 4를 통해 계산될 수 있다. At this time, the feature distance, which is the distance from the camera on the local plane (
Figure 112019042217662-pat00017
) Can be calculated through Equation 4.

[수학식 4][Equation 4]

Figure 112019042217662-pat00018
Figure 112019042217662-pat00018

도 8은 일 실시예에 따른 국소 평면간 유사도를 계산하는 방법을 설명하기 위한 순서도이다.8 is a flowchart illustrating a method of calculating a similarity between local planes according to an exemplary embodiment.

도 8을 참조하면, 일 실시예에 따른 국소 평면간 유사도를 계산하는 방법은, 평면 검출 장치(100)의 프로세서(122)가 일 화소의 국소 평면과 타 화소의 국소 평면의 법선 벡터를 이용한 제1 유사도(U) 계산하는 단계(S310)을 포함할 수 있다. 보다 구체적으로, 제1 유사도(U)는 일 화소의 국소 평면의 법선벡터(n(x,y))과 타 화소의 국소 평면의 법선벡터(m(x,y))의 사이각으로 결정될 수 있다. 일 예로 제1 유사도(U)는 수학식 5에 따라 결정될 수 있다.Referring to FIG. 8, in a method of calculating the similarity between local planes according to an embodiment, the processor 122 of the plane detection apparatus 100 uses a local plane of one pixel and a normal vector of a local plane of another pixel. 1 It may include the step of calculating the similarity (U) (S310). More specifically, the first degree of similarity (U) can be determined by the angle between the normal vector (n(x,y)) of the local plane of one pixel and the normal vector (m(x,y)) of the local plane of another pixel. have. For example, the first similarity U may be determined according to Equation 5.

[수학식 5][Equation 5]

Figure 112019042217662-pat00019
Figure 112019042217662-pat00019

또한, 일 실시예에 따른 국소 평면간 유사도를 계산하는 방법은, 평면 검출 장치(100)의 프로세서(122)가 일 화소의 국소 평면과 타 화소의 국소 평면의 특징 거리를 이용한 제2 유사도(D) 계산하는 단계(S320)을 포함할 수 있다. 보다 구체적으로 제2 유사도(D)는 일 화소의 국소 평면의 특징거리(Dn)과 타 화소의 국소 평면의 특징거리(Dm)의 차이로 결정될 수 있다. 일 예로, 제2 유사도(D)는 수학식 6에 따라 결정될 수 있다.In addition, in a method of calculating the similarity between local planes according to an embodiment, the processor 122 of the plane detection apparatus 100 uses a second similarity (D) using a feature distance between a local plane of one pixel and a local plane of another pixel. ) It may include a calculating step (S320). More specifically, the second similarity D may be determined by a difference between a feature distance Dn of a local plane of one pixel and a feature distance Dm of a local plane of another pixel. For example, the second similarity D may be determined according to Equation 6.

[수학식 6][Equation 6]

Figure 112019042217662-pat00020
Figure 112019042217662-pat00020

도 9는 일 실시예에 따른 국소 평면간 유사도에 따른 그룹화를 통한 평면 검출 방법을 설명하기 위한 순서도이다.9 is a flowchart illustrating a method of detecting a plane through grouping according to a degree of similarity between local planes according to an exemplary embodiment.

도 9를 참조하면, 일 실시예에 따른 국소 평면간 유사도에 따른 그룹화를 통한 평면 검출 방법은, 평면 검출 장치(100)의 프로세서(122)가 제1 유사도(U)가 소정의 값 이상인지 판단하는 단계(S410)을 포함할 수 있다. 보다 구체적으로, 제1 유사도(U)는 수준에 따라서 미리 설정될 수 있고, 메모리(121)의 프로그래밍을 통해 조절될 수 있다. Referring to FIG. 9, in the method for detecting a plane through grouping according to the similarity between local planes according to an embodiment, the processor 122 of the plane detection apparatus 100 determines whether the first similarity U is greater than or equal to a predetermined value. It may include a step (S410). More specifically, the first similarity U may be set in advance according to the level, and may be adjusted through programming of the memory 121.

또한, 일 실시예에 따른 국소 평면간 유사도에 따른 그룹화를 통한 평면 검출 방법은, 평면 검출 장치(100)의 프로세서(122)가 제1 유사도(U)를 만족하면 제2 유사도(D)가 소정의 값 이하인지 판단하는 단계(S420, S430)을 포함할 수 있다. 보다 구체적으로, 제1 유사도(U)를 만족하는 것은 제1 유사도(U)가 소정의 값 이상인 경우 일 수 있다. 프로세서(122)는 제1 유사도(U)를 만족하지 않는다고 판단하면 일 화소와 비교하지 않은 주변의 다른 타 화소와 비교하는 단계(S420, S470)를 수행할 수 있다. 즉 프로세서(122)는 일 화소와 다른 타 화소의 제1 유사도(U)가 소정의 값 이상인지 판단할 수 있다(S470, S410).In addition, in the plane detection method through grouping according to the similarity between local planes according to an embodiment, when the processor 122 of the plane detection apparatus 100 satisfies the first similarity U, the second similarity D is predetermined. It may include determining whether the value is less than or equal to (S420, S430). More specifically, the first similarity U may be satisfied when the first similarity U is greater than or equal to a predetermined value. If it is determined that the first similarity U is not satisfied, the processor 122 may perform steps S420 and S470 of comparing one pixel with other surrounding pixels that have not been compared. That is, the processor 122 may determine whether the first similarity U of one pixel and another pixel is equal to or greater than a predetermined value (S470 and S410).

또한, 일 실시예에 따른 국소 평면간 유사도에 따른 그룹화를 통한 평면 검출 방법은, 평면 검출 장치(100)의 프로세서(122)가 제2 유사도(D)를 만족하면 일 화소와 타 화소를 그룹화 하는 단계(S440, S450)을 포함할 수 있다. 보다 구체적으로, 제2 유사도(D)를 만족하는 것은 제2 유사도(D)가 소정의 값 이하인 경우일 수 있다. 제2 유사도(D)는 수준에 따라서 미리 설정될 수 있고, 메모리(121)의 프로그래밍을 통해 조절될 수 있다. 프로세서(122)는 제2 유사도(D)를 만족하지 않는다고 판단하면 일 화소와 비교하지 않은 주변의 다른 타 화소와 비교하는 단계(S440, S470)를 수행할 수 있다. 즉 프로세서(122)는 일 화소와 다른 타 화소의 제1 유사도(U)가 소정의 값 이상인지 판단할 수 있다(S470, S410).In addition, in the method of detecting a plane through grouping according to the similarity between local planes according to an embodiment, when the processor 122 of the plane detection apparatus 100 satisfies the second similarity (D), one pixel and the other pixel are grouped. It may include steps S440 and S450. More specifically, satisfying the second degree of similarity (D) may be a case where the second degree of similarity (D) is less than or equal to a predetermined value. The second similarity D may be set in advance according to the level, and may be adjusted through programming of the memory 121. If it is determined that the second similarity D is not satisfied, the processor 122 may perform steps (S440, S470) of comparing one pixel with other surrounding pixels that have not been compared. That is, the processor 122 may determine whether the first similarity U of one pixel and another pixel is equal to or greater than a predetermined value (S470 and S410).

또한, 일 실시예에 따른 국소 평면간 유사도에 따른 그룹화를 통한 평면 검출 방법은, 평면 검출 장치(100)의 프로세서(122)가 일 화소와 비교하지 않은 주변의 다른 타 화소가 존재하는지 판단하는 단계(S460)를 포함할 수 있다. 프로세서(122)는 일 화소와 비교하지 않은 주변의 다른 타 화소가 존재하면 일 화소와 비교하지 않은 주변의 다른 타 화소와 비교하는 단계(S460, S470)를 수행할 수 있다. 즉 프로세서(122)는 일 화소와 다른 타 화소의 제1 유사도(U)가 소정의 값 이상인지 판단할 수 있다(S470, S410).In addition, in the method for detecting a plane through grouping according to the degree of similarity between local planes according to an exemplary embodiment, the processor 122 of the plane detecting apparatus 100 determines whether there is another pixel in the vicinity that has not been compared with one pixel. It may include (S460). The processor 122 may perform steps (S460, S470) of comparing one pixel with other surrounding pixels that have not been compared with other pixels in the surrounding area if there is another pixel in the vicinity that has not been compared with one pixel. That is, the processor 122 may determine whether the first similarity U of one pixel and another pixel is equal to or greater than a predetermined value (S470 and S410).

또한, 일 실시예에 따른 국소 평면간 유사도에 따른 그룹화를 통한 평면 검출 방법은, 평면 검출 장치(100)의 프로세서(122)가 일 화소와 비교하지 않은 주변의 다른 타 화소가 존재하지 않으면 그룹화된 화소를 같은 평면으로 검출하는 단계(S480)를 포함할 수 있다. 본 발명의 실시예는 깊이 영상 내의 깊이 정보를 통해 평면을 빠르고 정확하게 추정할 수 있다.In addition, in the plane detection method through grouping according to the degree of similarity between local planes according to an embodiment, the processor 122 of the plane detection apparatus 100 is grouped if there is no other surrounding pixels that are not compared with one pixel. It may include the step (S480) of detecting the pixels in the same plane. According to an embodiment of the present invention, a plane can be quickly and accurately estimated through depth information in a depth image.

따라서, 본 발명의 일 실시예는 화소 단위로 평면의 영역을 검출함으로써 정밀도가 향상된다. 또한, 본 발명의 실시예는 국소 평면 단위로 평면의 인자를 계산하고, 유사한 평면 인자를 가지는 인접 국소 평면을 같은 평면으로 그룹핑하여 각 평면의 영역을 검출함으로써 데이터 처리 속도가 향상된다. 또한, 본 발명의 실시예는 깊이 영상에 노이즈가 많이 포함된 경우에도 신뢰할 수 있는 평면 추정이 가능하다. Accordingly, according to an exemplary embodiment of the present invention, precision is improved by detecting a planar area in units of pixels. In addition, according to an embodiment of the present invention, the data processing speed is improved by calculating a planar factor in units of a local plane and grouping adjacent local planes having similar plane factors into the same plane to detect regions of each plane. In addition, according to the exemplary embodiment of the present invention, even when a depth image contains a lot of noise, reliable plane estimation is possible.

일부 실시예에서, 프로세서(122)는 전술한 과정에 따라 깊이 영상 내에 복수의 화소들 중 국소 평면의 제1 및 제2 유사도를 만족하는 화소들을 그룹핑하여 평면이 검출될 수 있고, 이러한 그룹핑으로 구성된 평면은 복수개가 검출될 수 있다. 깊이 영상 내에서 복수의 평면들이 검출되는 것은 검출된 평면들간에 제1 및 제2 유사도를 충족하지 못하는 경우라 할 수 있다. 즉, 검출된 복수의 평면들은 서로 하나의 평면으로 그룹핑되지 않는 평면들이다. 검출된 평면들은 다른 응용의 사용을 위해 각 평면 영역의 정보를 다른 응용 프로그램에 전달될 수 있다. 여기서 평면의 정보는 가령 검출된 평면의 개수, 각 평면의 깊이 영상 내에서의 좌상단의 위치, 깊이 영상 내에서의 평면의 높이와 너비가 될 수 있다. 프로세서(122)는 이러한 다른 소프트웨어의 요청에 응답하여 평면의 정보를 제공할 수 있다.하나의 깊이 영상 내의 복수의 평면들에 대해 보다 구체적으로 설명하면, 프로세서(122)는 평면들 중 어느 하나의 평면에 포함된 화소의 국소 평면들의 각각의 특징 거리 정보를 이용하여 해당 평면 내의 모든 화소들의 특징 거리의 평균 값을 생성할 수 있다. 예시적으로, 프로세서(122)는 제1 평면 내의 제1 화소들의 특징 거리에 대한 제1 평균 값을 생성하고, 제2 평면 내의 제2 화소들의 특징 거리에 대한 제2 평균 값을 생성할 수 있다. 프로세서(122)는 제1 및 제2 평균 값의 차이 정보를 저장할 수 있다. 여기서의 제1 및 제2 평균 값의 차이 정보는 전술한 프로세서(122)가 사용자에게 제공하는 평면들 분포 정보들 중 하나가 될 수 있다. 실시예는, 깊이 영상 내에 복수의 촬영 면에 평면을 가진 복수의 물체가 존재하는 경우 이들 물체간의 분포 정보를 제공할 수 있다. 따라서, 촬영 영역 내에 서로 단차를 가지는 물체가 존재하는 경우 해당 단차 정보를 검출할 수 있다. 예를들어, 공간에 배치된 책상을 촬영하는 경우 책상의 상면과 공간의 바닥면의 높이 차이를 검출함으로써 책상의 높이를 추정할 수 있다. 뿐만 아니라, 평면을 가지는 물체의 단차 정보를 추정함으로써 물체에 대한 다양한 정보를 얻는데 기초 자료로 사용할 수 있다.In some embodiments, the processor 122 may group pixels satisfying the first and second similarities of a local plane among a plurality of pixels in the depth image according to the above-described process to detect a plane, and A plurality of planes may be detected. The detection of a plurality of planes in the depth image may be a case in which the first and second similarities between the detected planes are not satisfied. That is, the detected plurality of planes are planes that are not grouped together into one plane. The detected planes may transfer information of each plane area to other applications for use in other applications. Here, the plane information may be, for example, the number of detected planes, the position of the upper left corner in the depth image of each plane, and the height and width of the plane in the depth image. The processor 122 may provide information on a plane in response to a request from such other software. [0038] In more detail, a plurality of planes within one depth image may be described. An average value of the feature distances of all pixels in the corresponding plane may be generated by using feature distance information of each of the local planes of a pixel included in the plane. For example, the processor 122 may generate a first average value for the feature distances of the first pixels in the first plane, and may generate a second average value for the feature distances of the second pixels in the second plane. . The processor 122 may store difference information between the first and second average values. Herein, the difference information between the first and second average values may be one of plane distribution information provided by the processor 122 to the user. The embodiment may provide distribution information between the objects when a plurality of objects having planes on a plurality of photographing planes exist in a depth image. Accordingly, when objects having a level difference from each other exist in the photographing area, the corresponding level difference information can be detected. For example, when photographing a desk arranged in a space, the height of the desk can be estimated by detecting a difference in height between the upper surface of the desk and the floor surface of the space. In addition, it can be used as basic data to obtain various information about an object by estimating the step information of an object having a plane.

도 2, 도 10 내지 도 13을 참조하여 본 발명의 다른 실시예에 따른 평면 검출 방법의 각 단계를 보다 상세하게 설명한다. 본 발명의 다른 실시예는 본 발명의 일 실시예와 같은 설명은 제외하고 차이가 나는 국소 평면을 생성하는 방법과 국소 평면의 특징을 검출하는 방법을 중점으로 설명한다.Each step of a plane detection method according to another embodiment of the present invention will be described in more detail with reference to FIGS. 2 and 10 to 13. Other embodiments of the present invention will focus on a method of generating a local plane having a difference and a method of detecting a feature of the local plane, except for the same description as in the embodiment of the present invention.

도 10은 다른 실시예에 따른 국소 평면을 생성하는 방법을 설명하기 위한 순서도이다.10 is a flowchart illustrating a method of generating a local plane according to another exemplary embodiment.

도 10을 참조하면, 다른 실시예에 따른 국소 평면을 생성하는 방법은, 평면 검출 장치(100)의 프로세서(122)가 깊이 영상 내 일 화소에 대한 카메라를 원점으로 하는 3차원 좌표계의 중심 변환 좌표를 생성하는 단계(S1110)를 포함할 수 있다. 일 예로, 도 5를 참조하면, 프로세서(122)는 깊이 영상 내 일 화소(P(x,y))를 수학식 1을 이용하여 3차원 좌표계인 중심 변환 좌표(Pc(x,y))로 변환할 수 있다.Referring to FIG. 10, in a method of generating a local plane according to another embodiment, the processor 122 of the plane detection apparatus 100 uses a camera for one pixel in a depth image as an origin. It may include a step of generating (S1110). As an example, referring to FIG. 5, the processor 122 converts one pixel (P(x,y)) in the depth image into a center transformed coordinate (Pc(x,y)) which is a three-dimensional coordinate system using Equation 1 Can be converted.

또한, 다른 실시예에 따른 국소 평면을 생성하는 방법은, 평면 검출 장치(100)의 프로세서(122)가 깊이 영상 내 일 화소를 중심으로 N*N(N은 3, 5, 7, …) 사각형 영역의 주변 화소에 대한 카메라를 원점으로 하는 3차원 좌표계의 주변 변환 좌표들을 생성하는 단계(S1120)을 포함할 수 있다. 이에, 다른 실시예는 잡음이 많은 깊이 영상에서 정확한 국소 평면을 구할 수 있게 한다. 보다 구체적으로, 프로세서(122)는 일 화소(P(x,y))를 중심으로 N*N 사각형 영역 내 외곽에 위치한 화소들을 주변 화소들로 정의하고 주변 화소들을 복수의 주변 변환 좌표로 생성할 수 있다. 일 예로, 복수의 주변 변환 좌표는 4(N-1)개 일 수 있다. In addition, in a method of generating a local plane according to another exemplary embodiment, the processor 122 of the plane detection apparatus 100 uses an N*N (N is 3, 5, 7, …) rectangle centered on one pixel in the depth image. It may include generating (S1120) peripheral transformed coordinates of a 3D coordinate system with a camera as an origin of the surrounding pixels of the region. Accordingly, another embodiment makes it possible to obtain an accurate local plane from a noisy depth image. More specifically, the processor 122 defines pixels located outside the N*N rectangular area around one pixel (P(x,y)) as surrounding pixels, and generates the surrounding pixels as a plurality of peripheral transform coordinates. I can. As an example, the plurality of peripheral transform coordinates may be 4 (N-1).

또한, 다른 실시예에 따른 국소 평면을 생성하는 방법은, 평면 검출 장치(100)의 프로세서(122)가 중심 변환 좌표 및 주변 변환 좌표들을 포함하는 평면을 일 화소의 국소 평면으로 생성하는 단계(S1130)를 포함할 수 있다.In addition, in the method of generating a local plane according to another embodiment, the processor 122 of the plane detection apparatus 100 generates a plane including the center transform coordinates and the peripheral transform coordinates as a local plane of one pixel (S1130). ) Can be included.

도 11은 다른 실시예에 따른 국소 평면의 특징을 검출하는 방법을 설명하기 위한 순서도이고, 도 12는 다른 실시예에 따른 국소 평면의 평균 국소 벡터를 구하기 위한 국소 평면 내의 복수의 국소 벡터를 나타낸 일 예이다.FIG. 11 is a flowchart illustrating a method of detecting a feature of a local plane according to another embodiment, and FIG. 12 is a diagram illustrating a plurality of local vectors in a local plane for obtaining an average local vector of the local plane according to another embodiment. Yes.

도 11을 참조하면, 다른 실시예에 따른 국소 평면의 특징을 검출하는 방법은 평면 검출 장치(100)의 프로세서(122)가 국소 평면의 제1 평균 국소 벡터(

Figure 112019042217662-pat00021
)를 생성하는 단계(S1210)을 포함할 수 있다. 보다 구체적으로, 제1 평균 국소 벡터(
Figure 112019042217662-pat00022
)는 국소 평면의 복수의 제1 국소 벡터의 평균 일 수 있다. 복수의 제1 국소 벡터는 주변 변환 좌표들 중 상측에 위치한 주변 변환 좌표들과 하측에 위치한 주변 변환 좌표들이 각각 쌍을 이루어 상측 주변 변환 좌표에서 하측 주변 변환 좌표로 향한 수직 성분의 벡터들일 수 있다. 이에 제한되는 것은 아니고, 복수의 제1 국소 벡터는 주변 변환 좌표들 중 하측에 위치한 주변 변환 좌표들과 상측에 위치한 주변 변환 좌표들이 각각 쌍을 이루어 하측 주변 변환 좌표에서 상측 주변 변환 좌표로 향한 수직 성분의 벡터들일 수 있다. 또한, 복수의 제1 국소 벡터 중 임의의 제1 국소 벡터(
Figure 112019042217662-pat00023
)는 수학식 7에 따라 결정될 수 있다.Referring to FIG. 11, in a method of detecting a feature of a local plane according to another embodiment, the processor 122 of the plane detection apparatus 100 uses a first average local vector of the local plane (
Figure 112019042217662-pat00021
) May include the step of generating (S1210). More specifically, the first average local vector (
Figure 112019042217662-pat00022
) May be an average of a plurality of first local vectors in the local plane. The plurality of first local vectors may be vectors of vertical components from the upper peripheral transform coordinates to the lower peripheral transform coordinates by pairing the upper peripheral transform coordinates and the lower peripheral transform coordinates among the peripheral transform coordinates. It is not limited thereto, and the plurality of first local vectors is a vertical component from the lower peripheral transform coordinates to the upper peripheral transform coordinates by pairing the lower peripheral transform coordinates and the upper peripheral transform coordinates among the peripheral transform coordinates. May be vectors of. In addition, any first local vector from among the plurality of first local vectors (
Figure 112019042217662-pat00023
) May be determined according to Equation 7.

[수학식 7][Equation 7]

Figure 112019042217662-pat00024
Figure 112019042217662-pat00024

일 예로, 도 12를 참조하면, 프로세서(122)는 N=3이면 수학식 7에 따라 3개의 제1 국소 벡터(

Figure 112019042217662-pat00025
)를 결정할 수 있다. 제1 평균 국소 벡터(
Figure 112019042217662-pat00026
)는 수학식 8에 따라 복수의 제1 국소 벡터들을 합하여 각 벡터가 가지는 방향의 평균 방향을 가지도록 생성될 수 있다.As an example, referring to FIG. 12, if N=3, the processor 122 has three first local vectors according to Equation 7 (
Figure 112019042217662-pat00025
) Can be determined. First mean local vector (
Figure 112019042217662-pat00026
) May be generated to have an average direction of a direction of each vector by summing a plurality of first local vectors according to Equation 8.

[수학식 8][Equation 8]

Figure 112019042217662-pat00027
Figure 112019042217662-pat00027

또한, 다른 실시예에 따른 국소 평면의 특징을 검출하는 방법은 평면 검출 장치(100)의 프로세서(122)가 국소 평면의 제2 평균 국소 벡터(

Figure 112019042217662-pat00028
)를 생성하는 단계(S1220)을 포함할 수 있다. 보다 구체적으로, 제2 평균 국소 벡터(
Figure 112019042217662-pat00029
)는 국소 평면의 복수의 제2 국소 벡터의 평균 일 수 있다. 복수의 제2 국소 벡터는 주변 변환 좌표들 중 좌측에 위치한 주변 변환 좌표들과 우측에 위치한 주변 변환 좌표들이 각각 쌍을 이루어 좌측 주변 변환 좌표에서 우측 주변 변환 좌표로 향한 수평 성분의 벡터들일 수 있다. 이에 제한되는 것은 아니고, 복수의 제2 국소 벡터는 주변 변환 좌표들 중 우측에 위치한 주변 변환 좌표들과 좌측에 위치한 주변 변환 좌표들이 각각 쌍을 이루어 우측 주변 변환 좌표에서 좌측 주변 변환 좌표로 향한 수평 성분의 벡터들일 수 있다. 또한, 복수의 제2 국소 벡터 중 임의의 제2 국소 벡터(
Figure 112019042217662-pat00030
)는 수학식 7에 따라 결정될 수 있다. 일 예로, 도 12를 참조하면, 프로세서(122)는 N=3이면 수학식 7에 따라 3개의 제2 국소 벡터(
Figure 112019042217662-pat00031
)를 결정할 수 있다. 제2 평균 국소 벡터(
Figure 112019042217662-pat00032
)는 수학식 8에 따라 복수의 제2 국소 벡터들을 합하여 각 벡터가 가지는 방향의 평균 방향을 가지도록 생성될 수 있다.In addition, in a method of detecting a feature of a local plane according to another exemplary embodiment, the processor 122 of the plane detection apparatus 100 uses the second average local vector of the local plane (
Figure 112019042217662-pat00028
) May include generating (S1220). More specifically, the second average local vector (
Figure 112019042217662-pat00029
) May be an average of a plurality of second local vectors in the local plane. The plurality of second local vectors may be vectors of a horizontal component from a left peripheral transform coordinate to a right peripheral transform coordinate by forming a pair of peripheral transform coordinates located at the left and the surrounding transform coordinates located at the right among the surrounding transform coordinates. It is not limited thereto, and the plurality of second local vectors is a horizontal component of the peripheral transformation coordinates located at the right and the surrounding transformation coordinates located at the left of the surrounding transformation coordinates, respectively, forming a pair from the surrounding transformation coordinates on the right to the transformation coordinates on the left May be vectors of. In addition, any second local vector from among the plurality of second local vectors (
Figure 112019042217662-pat00030
) May be determined according to Equation 7. As an example, referring to FIG. 12, if N=3, the processor 122 has three second local vectors according to Equation 7 (
Figure 112019042217662-pat00031
) Can be determined. Second mean local vector (
Figure 112019042217662-pat00032
) May be generated to have an average direction of a direction of each vector by summing a plurality of second local vectors according to Equation 8.

또한, 다른 실시예에 따른 국소 평면의 특징을 검출하는 방법은 평면 검출 장치(100)의 프로세서(122)가 제1 평균 국소 벡터(

Figure 112019042217662-pat00033
) 및 제2 평균 국소 벡터(
Figure 112019042217662-pat00034
)를 이용하여 일 화소(P)에 대한 국소 평면의 법선 벡터(
Figure 112019042217662-pat00035
)를 생성하는 단계(S1230)를 생성하는 단계를 포함할 수 있다. 보다 구체적으로, 법선 벡터(
Figure 112019042217662-pat00036
)는 수학식 9에 따라 제1 평균 국소 벡터(
Figure 112019042217662-pat00037
)와 제2 평균 국소 벡터(
Figure 112019042217662-pat00038
)의 외적으로 구할 수 있다. In addition, in a method of detecting a feature of a local plane according to another embodiment, the processor 122 of the plane detection apparatus 100 uses a first average local vector (
Figure 112019042217662-pat00033
) And the second mean local vector (
Figure 112019042217662-pat00034
) Using the local plane normal vector (
Figure 112019042217662-pat00035
) May include the step of generating the generating step (S1230). More specifically, the normal vector (
Figure 112019042217662-pat00036
) Is the first average local vector (
Figure 112019042217662-pat00037
) And the second mean local vector (
Figure 112019042217662-pat00038
) Can be obtained externally.

[수학식 9][Equation 9]

Figure 112019042217662-pat00039
Figure 112019042217662-pat00039

이에 제한되는 것은 아니고, 법선 벡터(

Figure 112019042217662-pat00040
)는 제2 평균 국소 벡터(
Figure 112019042217662-pat00041
)와 제1 평균 국소 벡터(
Figure 112019042217662-pat00042
)의 곱으로 순서를 달리하여 구할 수 있다.It is not limited thereto, and the normal vector (
Figure 112019042217662-pat00040
) Is the second mean local vector (
Figure 112019042217662-pat00041
) And the first mean local vector (
Figure 112019042217662-pat00042
It can be obtained in a different order by multiplying by ).

또한, 다른 실시예에 따른 국소 평면의 특징을 검출하는 방법은 평면 검출 장치(100)의 프로세서(122)가 중심 변환 좌표(Pc(x,y)) 및 법선 벡터(

Figure 112019042217662-pat00043
)를 이용하여 국소 평면과 카메라의 거리인 국소 평면의 특징 거리(
Figure 112019042217662-pat00044
)를 생성하는 단계(S1240)를 포함할 수 있다. 보다 구체적으로, 중심 변환 좌표(Pc(x,y))의 국소 평면의 법선 벡터(
Figure 112019042217662-pat00045
)의 성분을 (
Figure 112019042217662-pat00046
)이라고 했을 때, 중심 변환 좌표(Pc(x,y))를 지나고 법선 벡터(n(x,y))를 가지는 평면은 수학식 3과 같이 표현 할 수 있다. 이 때, 국소 평면의 카메라로부터의 거리인 특징 거리(
Figure 112019042217662-pat00047
)는 수학식 4를 통해 계산될 수 있다. In addition, in a method of detecting a feature of a local plane according to another embodiment, the processor 122 of the plane detection apparatus 100 performs a center transform coordinate (Pc(x,y)) and a normal vector (
Figure 112019042217662-pat00043
) Using the feature distance of the local plane, the distance between the local plane and the camera (
Figure 112019042217662-pat00044
) May include generating (S1240). More specifically, the normal vector of the local plane of the center transform coordinate (Pc(x,y)) (
Figure 112019042217662-pat00045
) Of the component (
Figure 112019042217662-pat00046
), a plane passing through the center transform coordinate (Pc(x,y)) and having a normal vector (n(x,y)) can be expressed as Equation 3. At this time, the feature distance, which is the distance from the camera on the local plane (
Figure 112019042217662-pat00047
) Can be calculated through Equation 4.

도 13은 본 발명의 실시예에 따른 평면 검출 결과를 보여준다.13 shows a result of plane detection according to an embodiment of the present invention.

도 13을 참조하면, 본 발명은 평면 검출 장치(100)를 이용한 결과물에서 나타난 바와 같이 매우 높은 정확도로 깊이 영상 내의 평면 검출이 가능하다. 따라서, 본 발명의 실시예는 화소 단위로 평면의 영역을 검출함으로써 정밀도가 향상된다. 또한, 본 발명의 실시예는 국소 평면 단위로 평면의 인자를 계산하고, 유사한 평면 인자를 가지는 인접 국소 평면을 같은 평면으로 그룹핑하여 각 평면의 영역을 검출함으로써 데이터 처리 속도가 향상된다. 또한, 본 발명의 실시예는 깊이 영상에 노이즈가 많이 포함된 경우에도 신뢰할 수 있는 평면 추정이 가능하다. Referring to FIG. 13, the present invention enables detection of a plane in a depth image with very high accuracy as shown in a result using the plane detection device 100. Accordingly, in the embodiment of the present invention, precision is improved by detecting a planar area on a pixel-by-pixel basis. In addition, according to an embodiment of the present invention, the data processing speed is improved by calculating a planar factor in units of a local plane and grouping adjacent local planes having similar plane factors into the same plane to detect regions of each plane. In addition, according to the exemplary embodiment of the present invention, even when a depth image contains a lot of noise, reliable plane estimation is possible.

이상 설명된 본 발명에 따른 실시예는 다양한 컴퓨터 구성요소를 통하여 실행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 수학식 1 내지 수학식 9를 전술한 바와 같이 프로세서(122)가 연산하도록 프로세서(122)에 의해 수행되는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등과 같은, 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의하여 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용하여 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위하여 하나 이상의 소프트웨어 모듈로 변경될 수 있으며, 그 역도 마찬가지이다.The embodiments according to the present invention described above may be implemented in the form of program instructions that can be executed through various computer components and recorded in a computer-readable recording medium. The computer-readable recording medium includes, singly or in combination, program instructions, data files, data structures, etc. executed by the processor 122 so that the processor 122 calculates Equations 1 to 9 as described above. can do. The program instructions recorded in the computer-readable recording medium may be specially designed and constructed for the present invention or may be known and usable to those skilled in the computer software field. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks and magnetic tapes, optical recording media such as CD-ROMs and DVDs, magnetic-optical media such as floptical disks. medium), and a hardware device specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of 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 can be changed to one or more software modules to perform the processing according to the present invention, and vice versa.

본 발명에서 설명하는 특정 실행들은 일 실시 예들로서, 어떠한 방법으로도 본 발명의 범위를 한정하는 것은 아니다. 명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어 시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다. 또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다. 또한, “필수적인”, “중요하게” 등과 같이 구체적인 언급이 없다면 본 발명의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.Specific implementations described in the present invention are examples, and do not limit the scope of the present invention in any way. For brevity of the specification, descriptions of conventional electronic configurations, control systems, software, and other functional aspects of the systems may be omitted. In addition, the connection or connection members of the lines between the components shown in the drawings exemplarily represent functional connections and/or physical or circuit connections. It may be referred to as a connection, or circuit connections. In addition, if there is no specific mention such as “essential” or “important”, it may not be a necessary component for the application of the present invention.

또한 설명한 본 발명의 상세한 설명에서는 본 발명의 바람직한 실시 예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자 또는 해당 기술분야에 통상의 지식을 갖는 자라면 후술할 특허청구범위에 기재된 본 발명의 사상 및 기술 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. 따라서, 본 발명의 기술적 범위는 명세서의 상세한 설명에 기재된 내용으로 한정되는 것이 아니라 특허청구범위에 의해 정하여져야만 할 것이다.In addition, although the detailed description of the present invention has been described with reference to a preferred embodiment of the present invention, the spirit of the present invention described in the claims to be described later if one of ordinary skill in the relevant technical field or those of ordinary skill in the relevant technical field And it will be understood that various modifications and changes can be made to the present invention within a range not departing from the technical field. Therefore, the technical scope of the present invention should not be limited to the contents described in the detailed description of the specification, but should be determined by the claims.

100: 평면 검출 장치
110: 영상 소스
120: 영상처리부
121: 메모리
122: 프로세서
130: 출력인터페이스
200: 데이터수신장치
210: 데이터 처리부
220: 입력 인터페이스
100: plane detection device
110: video source
120: image processing unit
121: memory
122: processor
130: output interface
200: data receiving device
210: data processing unit
220: input interface

Claims (12)

3차원 좌표계로 변환된 깊이 영상 내의 화소들 중 일 화소와 상기 일 화소를 중심으로 사각형 영역의 주변 화소를 포함하는 국소 평면을 생성하는 단계;
상기 사각형 영역 내에서 상기 일 화소를 중심으로 상측에 위치한 주변 화소와 하측에 위치한 주변 화소를 지나는 복수의 수직 벡터들의 제1 평균 국소 벡터 및 상기 일 화소를 중심으로 좌측에 위치한 주변 화소와 우측에 위치한 주변 화소를 지나는 복수의 수평 벡터들의 제2 평균 국소 벡터의 외적에 따른 상기 국소 평면의 법선 벡터를 검출하고, 상기 일 화소의 좌표와 상기 법선 벡터를 가지는 평면을 검출하고 수학식 1에 따른 카메라로부터 상기 평면까지의 거리인 특징 거리를 검출하는 단계;
상기 국소 평면에서의 법선 벡터와 상기 일 화소와 인접한 타 화소를 포함한 다른 국소 평면의 법선 벡터의 수학식 2에 따른 사이각 및 상기 국소 평면에서의 특징 거리와 상기 다른 국소 평면에서의 특징 거리의 차이에 기초하여 상기 국소 평면과 상기 다른 국소 평면의 유사도를 계산하는 단계;
상기 유사도가 소정의 유사도 이상이면 상기 국소 평면와 상기 다른 국소 평면을 서로 그룹화하는 단계;
상기 일 화소와 비교하지 않은 주변의 다른 타 화소의 존부를 판단하여 상기 다른 타 화소가 존재하지 않으면 이미 그룹화된 국소 평면들을 하나의 평면의 영역으로 검출하는 단계;
서로 간에는 그룹화되지 않은 복수의 그룹화된 평면을 검출하는 단계; 및
상기 복수의 그룹화된 평면 각각의 특징 거리의 평균 값을 서로 비교하여 상기 깊이 영상 내의 객체들의 단차 정보를 추정하는 단계;
를 포함하는 깊이 영상을 통한 평면 검출 방법.
수학식 1
Figure 112020072455436-pat00061

수학식 2
Figure 112020072455436-pat00062

수학식 1에서 (xc, yc)는 상기 일 화소의 좌표 값이고, zc는 상기 일 화소의 깊이값이며, (an, bn, cn)은 상기 법선 벡터의 성분이고, 수학식 2에서 n은 국소 평면의 법선 벡터이고 m은 다른 국소 평면의 법선 벡터이다.
Generating a local plane including one pixel among pixels in the depth image converted into a 3D coordinate system and surrounding pixels in a rectangular area around the one pixel;
In the rectangular area, a first average local vector of a plurality of vertical vectors passing through an upper peripheral pixel and a lower peripheral pixel centered on the one pixel, and a peripheral pixel located on the left side and a right side of the one pixel. Detecting a normal vector of the local plane according to an external product of a second average local vector of a plurality of horizontal vectors passing through a neighboring pixel, detecting a plane having the coordinates of the one pixel and the normal vector, and from the camera according to Equation 1 Detecting a feature distance that is a distance to the plane;
A difference between a normal vector in the local plane and a normal vector of another local plane including the one pixel and another pixel adjacent to the one pixel according to Equation 2, and a feature distance in the local plane and a feature distance in the other local plane Calculating a degree of similarity between the local plane and the other local plane on the basis of;
Grouping the local plane and the other local plane with each other if the similarity is greater than or equal to a predetermined similarity;
Determining the presence or absence of other surrounding pixels that are not compared with the one pixel, and if the other pixels do not exist, detecting already grouped local planes as an area of one plane;
Detecting a plurality of grouped planes that are not grouped from each other; And
Estimating step difference information of objects in the depth image by comparing average values of feature distances of each of the plurality of grouped planes;
Plane detection method through a depth image comprising a.
Equation 1
Figure 112020072455436-pat00061

Equation 2
Figure 112020072455436-pat00062

In Equation 1, (xc, yc) is a coordinate value of the one pixel, zc is a depth value of the one pixel, (an, bn, cn) is a component of the normal vector, and in Equation 2, n is a local The plane's normal vector and m is the other local plane's normal vector.
제1 항에 있어서,
상기 주변 화소는 상기 일 화소를 중심으로 N*N(N은 3이상의 홀수) 사각형 영역 내 외곽에 위치한 화소들인
깊이 영상을 통한 평면 검출 방법.
The method of claim 1,
The surrounding pixels are pixels located outside the rectangular area N*N (N is an odd number of 3 or more) around the one pixel.
Plane detection method through depth image.
삭제delete 삭제delete 삭제delete 삭제delete 제1 항에 있어서,
상기 사이각은 제1 유사도이고, 상기 특징 거리의 차이는 제2 유사도이고,
상기 제1 유사도가 소정의 값 이상인지 판단하고,
상기 제1 유사도가 소정의 값 이상이면 상기 제2 유사도가 소정의 값 이하인지 판단하고,
상기 제2 유사도가 소정의 값 이하이면 상기 국소 평면과 상기 다른 국소 평면을 그룹화하는
깊이 영상을 통한 평면 검출 방법.
The method of claim 1,
The inter-angle is a first degree of similarity, the difference between the feature distances is a second degree of similarity,
It is determined whether the first similarity is greater than or equal to a predetermined value,
If the first similarity is greater than or equal to a predetermined value, it is determined whether the second similarity is less than or equal to a predetermined value,
If the second similarity is less than or equal to a predetermined value, the local plane and the other local plane are grouped.
Plane detection method through depth image.
삭제delete 삭제delete 삭제delete 명령들을 저장하는 적어도 하나의 메모리; 및
적어도 하나의 프로세서;를 포함하고,
상기 명령들은 상기 프로세서로 하여금 동작들을 수행하게 하기 위해 상기 프로세서에 의해 실행가능하고,
상기 동작들은:
3차원 좌표계로 변환된 깊이 영상 내의 화소들 중 일 화소와 상기 일 화소를 중심으로 사각형 영역의 주변 화소를 포함하는 국소 평면을 생성하고,
상기 사각형 영역 내에서 상기 일 화소를 중심으로 상측에 위치한 주변 화소와 하측에 위치한 주변 화소를 지나는 복수의 수직 벡터들의 제1 평균 국소 벡터 및 상기 일 화소를 중심으로 좌측에 위치한 주변 화소와 우측에 위치한 주변 화소를 지나는 복수의 수평 벡터들의 제2 평균 국소 벡터의 외적에 따른 상기 국소 평면의 법선 벡터를 검출하고, 상기 일 화소의 좌표와 상기 법선 벡터를 가지는 평면을 검출하고 수학식 3에 따른 카메라로부터의 상기 평면의 특징 거리를 검출하고,
상기 국소 평면에서의 법선 벡터와 상기 일 화소와 인접한 타 화소를 포함한 다른 국소 평면의 법선 벡터의 수학식 4에 따른 사이각 및 상기 국소 평면에서의 특징 거리와 상기 다른 국소 평면에서의 특징 거리의 차이에 기초하여 상기 국소 평면과 상기 다른 국소 평면의 유사도를 계산하고,
상기 유사도가 소정의 유사도 이상이면 상기 국소 평면와 상기 다른 국소 평면을 서로 그룹화하고,
상기 일 화소와 비교하지 않은 주변의 다른 타 화소의 존부를 판단하여 상기 다른 타 화소가 존재하지 않으면 이미 그룹화된 국소 평면들을 하나의 평면의 영역으로 검출하고,
서로 간에는 그룹화되지 않은 복수의 그룹화된 평면을 검출하며,
상기 복수의 그룹화된 평면 각각의 특징 거리의 평균 값을 서로 비교하여 상기 깊이 영상 내의 객체들의 단차 정보를 추정하는
것을 포함하는
평면 검출 장치.
수학식 3
Figure 112020072455436-pat00063

수학식 4
Figure 112020072455436-pat00064

수학식 3에서 (xc, yc)는 상기 일 화소의 좌표 값이고, zc는 상기 일 화소의 깊이값이며, (an, bn, cn)은 상기 법선 벡터의 성분이고, 수학식 4에서 n은 국소 평면의 법선 벡터이고 m은 다른 국소 평면의 법선 벡터이다.
At least one memory for storing instructions; And
At least one processor; Including,
The instructions are executable by the processor to cause the processor to perform operations,
The above actions are:
A local plane including one pixel of the pixels in the depth image converted to the 3D coordinate system and the neighboring pixels in a rectangular area around the one pixel is generated,
In the rectangular area, a first average local vector of a plurality of vertical vectors passing through an upper peripheral pixel and a lower peripheral pixel centered on the one pixel, and a peripheral pixel located on the left side and a right side of the one pixel. Detecting a normal vector of the local plane according to an external product of a second average local vector of a plurality of horizontal vectors passing through a neighboring pixel, detecting a plane having the coordinates of the one pixel and the normal vector, and from the camera according to Equation 3 Detect the feature distance of the plane of,
A difference between a normal vector in the local plane and a normal vector of another local plane including the one pixel and another pixel adjacent to the one pixel according to Equation 4, and a feature distance in the local plane and a feature distance in the other local plane Calculate the similarity between the local plane and the other local plane based on,
If the similarity is greater than or equal to a predetermined similarity, the local plane and the other local plane are grouped with each other,
The presence or absence of other pixels in the surrounding area not compared with the one pixel is determined, and if the other pixels do not exist, the grouped local planes are detected as an area of one plane,
Detects a plurality of grouped planes that are not grouped between each other,
Comparing the average value of the feature distances of each of the plurality of grouped planes to estimate step information of the objects in the depth image
Containing
Plane detection device.
Equation 3
Figure 112020072455436-pat00063

Equation 4
Figure 112020072455436-pat00064

In Equation 3, (xc, yc) is a coordinate value of the one pixel, zc is a depth value of the one pixel, (an, bn, cn) is a component of the normal vector, and in Equation 4, n is a local The plane's normal vector and m is the other local plane's normal vector.
제11 항에 따른 상기 명령들을 저장하는 비일시적 컴퓨터 판독가능 기록 매체.A non-transitory computer-readable recording medium storing the instructions according to claim 11.
KR1020190047808A 2019-04-24 2019-04-24 METHOD AND DEVICE FOR DETECTING PLANAR SURFACE USING DEPTH IMAGE, and Non-Transitory COMPUTER READABLE RECORDING MEDIUM KR102224272B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190047808A KR102224272B1 (en) 2019-04-24 2019-04-24 METHOD AND DEVICE FOR DETECTING PLANAR SURFACE USING DEPTH IMAGE, and Non-Transitory COMPUTER READABLE RECORDING MEDIUM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190047808A KR102224272B1 (en) 2019-04-24 2019-04-24 METHOD AND DEVICE FOR DETECTING PLANAR SURFACE USING DEPTH IMAGE, and Non-Transitory COMPUTER READABLE RECORDING MEDIUM

Publications (2)

Publication Number Publication Date
KR20200124463A KR20200124463A (en) 2020-11-03
KR102224272B1 true KR102224272B1 (en) 2021-03-08

Family

ID=73197663

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190047808A KR102224272B1 (en) 2019-04-24 2019-04-24 METHOD AND DEVICE FOR DETECTING PLANAR SURFACE USING DEPTH IMAGE, and Non-Transitory COMPUTER READABLE RECORDING MEDIUM

Country Status (1)

Country Link
KR (1) KR102224272B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240002559A (en) * 2022-06-29 2024-01-05 삼성전자주식회사 Electronic device for image display and method thereof

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160316224A1 (en) 2013-12-27 2016-10-27 Nippon Telegraph And Telephone Corporation Video Encoding Method, Video Decoding Method, Video Encoding Apparatus, Video Decoding Apparatus, Video Encoding Program, And Video Decoding Program

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
이동석외 2인,"깊이맵을 이용한 차량 번호판 검출", 한국멀티미디어학회 춘계학술발표대회,(2015.05.31.) 1부.*

Also Published As

Publication number Publication date
KR20200124463A (en) 2020-11-03

Similar Documents

Publication Publication Date Title
US10217221B2 (en) Place recognition algorithm
US10573018B2 (en) Three dimensional scene reconstruction based on contextual analysis
US9674505B2 (en) Disparity search range determination for images from an image sensor array
US8755630B2 (en) Object pose recognition apparatus and object pose recognition method using the same
US9600744B2 (en) Adaptive interest rate control for visual search
US20180261005A1 (en) Method and Apparatus for Constructing Three-Dimensional Map
US9916667B2 (en) Stereo matching apparatus and method through learning of unary confidence and pairwise confidence
US20130163853A1 (en) Apparatus for estimating robot position and method thereof
KR20180056685A (en) System and method for non-obstacle area detection
JP2017520050A (en) Local adaptive histogram flattening
US9214025B2 (en) Depth estimation using normalized displacement of image pairs
KR102080694B1 (en) Method and Device of Motion Estimation for Depth Video Coding by curved surface Modeling, and NON-TRANSITORY COMPUTER READABLE RECORDING MEDIUM
CN109661815B (en) Robust disparity estimation in the presence of significant intensity variations of the camera array
KR102074929B1 (en) METHOD AND DEVICE FOR DETECTING PLANE AREA USING DEPTH IMAGE, and Non-Transitory COMPUTER READABLE RECORDING MEDIUM
KR101904120B1 (en) VIDEO PROCESSING Device and Method For Depth Video by Eclipse Surface Modeling
KR102224272B1 (en) METHOD AND DEVICE FOR DETECTING PLANAR SURFACE USING DEPTH IMAGE, and Non-Transitory COMPUTER READABLE RECORDING MEDIUM
KR102098322B1 (en) Method and Device of Motion Estimation for Depth Video Coding by Plane Modeling, and NON-TRANSITORY COMPUTER READABLE RECORDING MEDIUM
KR20140043159A (en) Line tracking with automatic model initialization by graph matching and cycle detection
CN105631850B (en) Aligned multi-view scanning
KR101904125B1 (en) VIDEO PROCESSING Device and Method For Depth Video by Concave Curved Surface Modeling
US11257235B2 (en) Efficient sub-pixel disparity estimation for all sub-aperture images from densely sampled light field cameras
US10346680B2 (en) Imaging apparatus and control method for determining a posture of an object
KR102231759B1 (en) VIDEO PROCESSING Device and Method For Depth Video by Surface Modeling, and Non-Transitory COMPUTER READABLE RECORDING MEDIUM
KR102262030B1 (en) VIDEO PROCESSING Device and Method For Depth Video by Spherical Modeling, and Non-Transitory COMPUTER READABLE RECORDING MEDIUM
KR102224315B1 (en) Intra Prediction Coding Method and Device for Depth Image

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant