KR101409619B1 - Geometric Correction Apparatus and Method based on Recursive Bezier Patch Sub-Division - Google Patents

Geometric Correction Apparatus and Method based on Recursive Bezier Patch Sub-Division Download PDF

Info

Publication number
KR101409619B1
KR101409619B1 KR1020140038594A KR20140038594A KR101409619B1 KR 101409619 B1 KR101409619 B1 KR 101409619B1 KR 1020140038594 A KR1020140038594 A KR 1020140038594A KR 20140038594 A KR20140038594 A KR 20140038594A KR 101409619 B1 KR101409619 B1 KR 101409619B1
Authority
KR
South Korea
Prior art keywords
image
bezier
geometric correction
projection surface
projector
Prior art date
Application number
KR1020140038594A
Other languages
Korean (ko)
Other versions
KR20140049997A (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 KR1020140038594A priority Critical patent/KR101409619B1/en
Publication of KR20140049997A publication Critical patent/KR20140049997A/en
Application granted granted Critical
Publication of KR101409619B1 publication Critical patent/KR101409619B1/en

Links

Images

Classifications

    • G06T5/80
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/203Drawing of straight lines or curves
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/74Projection arrangements for image reproduction, e.g. using eidophor
    • H04N5/7408Direct viewing projectors, e.g. an image displayed on a video CRT or LCD display being projected on a screen

Abstract

회귀 베지어 패치 분할에 기반하는 기하 보정 장치 및 방법이 개시된다. 본 발명의 일실시예에 따른 기하 보정 방법은 프로젝터가 투사 표면에 투사하는 검은 화면을 촬영한 제1 영상을 카메라로부터 수신하는 단계; 상기 프로젝터가 상기 투사 표면에 투사하는 미리 설정된 패턴을 촬영한 제2 영상을 상기 카메라로부터 수신하는 단계; 상기 제2 영상으로부터 상기 제1 영상을 빼서 제3 영상을 생성하는 단계; 및 상기 미리 설정된 패턴과 상기 제3 영상 사이의 왜곡을 보정하기 위하여, 상기 미리 설정된 패턴에 대하여 기하 보정을 수행하는 단계를 포함할 수 있다.A geometry correction device and method based on regression Bezier patch partitioning is disclosed. According to an embodiment of the present invention, there is provided a geometric correction method including: receiving a first image of a black screen projected by a projector on a projection surface from a camera; Receiving a second image of the predetermined pattern projected on the projection surface by the projector from the camera; Subtracting the first image from the second image to generate a third image; And performing a geometric correction on the predetermined pattern to correct a distortion between the preset pattern and the third image.

Description

회귀 베지어 패치 분할에 기반하는 기하 보정 장치 및 방법{Geometric Correction Apparatus and Method based on Recursive Bezier Patch Sub-Division}[0001] The present invention relates to a geometric correction apparatus and a method based on a regression Bezier patch division,

본 발명의 실시예들은 기하 보정 장치 및 방법에 관한 것으로서, 보다 구체적으로는 회귀 베지어 패치 분할에 기반하는 기하 보정 장치 및 방법에 관한 것이다.Embodiments of the present invention relate to a geometry correction apparatus and method, and more particularly to a geometry correction apparatus and method based on a regression Bezier patch division.

최근 투사 기술(projection technology)의 출현과 함께 몰입형 투사 환경(immersive projection environments)도 함께 갖추어져 가고 있다. 몰입형 디스플레이는 고해상도 미디어 컨텐츠 기술에 대한 미래 기술이 되고 있다. Recently, with the emergence of projection technology, immersive projection environments have been established. Immersive displays are becoming a future technology for high-definition media content technology.

넓은 시야각 및 고해상도 미디어 컨텐츠의 목표는 사용자에게 '그곳에 있는' 느낌을 전달하여 줌으로써 궁극적인 몰입 경험을 제공하는 것이다. 한편, 극장의 대형 스크린과 같이 넓고 평평한 표면은 좋은 몰입 경험을 제공할 수 있지만, 곡선 스크린(curved screens), 돔 형태 스크린(dome shaped screens) 등과 같은 고차원 표면(higher order surface)은 사용자 주변에 가상 비쥬얼 환경을 창조할 수 있기 때문에 더욱 강한 몰입 경험을 제공할 수 있다. The goal of wide viewing angle and high resolution media content is to deliver the ultimate immersive experience by conveying the 'presence' feeling to the user. On the other hand, a large, flat surface, such as a theater's large screen, can provide a good immersion experience, but higher order surfaces such as curved screens, dome shaped screens, The ability to create a visual environment can provide a more immersive experience.

예를 들어, 사용자에게 더욱 강한 몰입 경험을 제공하기 위하여, 도 1에 표시된 것과 같이 평평하지 않은 투사 표면(projection surface)(120)이 제공될 수 있다. 즉, 프로젝터(110)는 미디어 컨텐츠를 평평하지 않고 굴곡진 투사 표면(120)에 투사할 수 있다. 다만, 이러한 경우, 투사 표면(120)이 평평하지 않기 때문에 투사 표면(120)에 투사되는 영상(130)은 본래 영상과 다르게 표시될 수 있다. 즉, 투사 표면(120)에 투사되는 영상(130)은 왜곡(distortion)될 수 있다.For example, to provide the user with a more immersive experience, a non-flat projection surface 120 may be provided as shown in FIG. That is, the projector 110 can project the media content onto the curved projection surface 120 without being flat. However, in this case, since the projection surface 120 is not flat, the image 130 projected on the projection surface 120 may be displayed differently from the original image. That is, the image 130 projected onto the projection surface 120 may be distorted.

따라서, 이러한 평평하지 않은 투사 표면에 투사되는 컨텐츠를 바로 보이게 하기 위한 기하 보정(geometrical correction) 기술에 대한 연구가 요구되고 있다. Therefore, there is a need for research on a geometrical correction technique for directly viewing the contents projected on such a non-flat projection surface.

본 발명의 일실시예에 따른 기하 보정 방법은 프로젝터가 투사 표면에 투사하는 검은 화면을 촬영한 제1 영상을 카메라로부터 수신하는 단계; 상기 프로젝터가 상기 투사 표면에 투사하는 미리 설정된 패턴을 촬영한 제2 영상을 상기 카메라로부터 수신하는 단계; 상기 제2 영상으로부터 상기 제1 영상을 빼서 제3 영상을 생성하는 단계; 및 상기 미리 설정된 패턴과 상기 제3 영상 사이의 왜곡을 보정하기 위하여, 상기 미리 설정된 패턴에 대하여 기하 보정을 수행하는 단계를 포함할 수 있다.According to an embodiment of the present invention, there is provided a geometric correction method including: receiving a first image of a black screen projected by a projector on a projection surface from a camera; Receiving a second image of the predetermined pattern projected on the projection surface by the projector from the camera; Subtracting the first image from the second image to generate a third image; And performing a geometric correction on the predetermined pattern to correct a distortion between the preset pattern and the third image.

본 발명의 일측에 따르면, 상기 기하 보정을 수행하는 단계는 상기 제3 영상으로부터 특징점을 추출하는 단계; 상기 상기 카메라를 통하여 촬영된 상기 제3 영상에 대한 도메인으로부터 상기 프로젝터를 통하여 투사된 상기 미리 설정된 패턴에 대한 도메인으로 상기 추출된 특징점을 이동시키는 단계; 상기 이동된 특징점에 기반하여, 상기 제3 영상에 대하여 베지어 변환을 적용하는 단계; 및 상기 베지어 변환을 회귀적으로 적용하여 상기 기하 보정을 수행하는 단계를 포함할 수 있다.According to an aspect of the present invention, performing the geometric correction includes extracting a feature point from the third image; Moving the extracted minutiae to the domain of the predetermined pattern projected through the projector from the domain of the third image photographed through the camera; Applying a Bezier transform to the third image based on the moved minutiae; And performing the geometric correction by applying the Bezier transformation recursively.

본 발명의 일실시예에 따른 기하 보정 장치는 프로젝터가 투사 표면에 투사하는 검은 화면을 촬영한 제1 영상을 카메라로부터 수신하고, 상기 프로젝터가 상기 투사 표면에 투사하는 미리 설정된 패턴을 촬영한 제2 영상을 상기 카메라로부터 수신하는 수신부; 상기 제2 영상으로부터 상기 제1 영상을 빼서, 원하지 않는 아티팩트가 제거된 제3 영상을 생성하는 생성부; 및 상기 미리 설정된 패턴과 상기 제3 영상 사이의 왜곡을 보정하기 위하여, 상기 미리 설정된 패턴에 대하여 기하 보정을 수행하는 처리부를 포함할 수 있다.A geometry correction apparatus according to an embodiment of the present invention includes a projector for receiving a first image of a black screen projected on a projection surface from a camera and projecting a second pattern A receiving unit for receiving an image from the camera; A generator for subtracting the first image from the second image to generate a third image from which undesired artifacts have been removed; And a processor for performing a geometric correction on the preset pattern to correct a distortion between the preset pattern and the third image.

평평하지 않은 투사 표면에 투사되는 미리 설정된 패턴에 대한 영상을 카메라를 통하여 촬영하고, 촬영된 영상에 대하여 베지어 변환을 수행함으로써, 평평하지 않은 투사 표면에 투사되는 컨텐츠가 왜곡되지 않고 본래 형상대로 투사될 수 있도록 할 수 있다. By photographing an image of a predetermined pattern projected on a non-flat projection surface through a camera and performing a Bezier transformation on the captured image, the contents projected on a non-flat projection surface are not distorted, .

또한, 본 발명의 실시예들에 따르면, 카메라 교정(camera calibration)이나 내부 또는 외부 파라미터(intrinsic or extrinsic parameters)를 추출하는 일 없이도 기하 보정을 수행할 수 있다. 또한, 기하 보정을 수행하기 위하여 사람이 직접 어떠한 동작을 취할 필요가 없이 자동적으로 기하 보정이 수행될 수 있다.Also, according to embodiments of the present invention, geometric correction can be performed without camera calibration or extraction of intrinsic or extrinsic parameters. In addition, geometric correction can be automatically performed without requiring a person to take any action to perform the geometric correction.

도 1은 평평하지 않은 투사 표면에 미디어 컨텐츠를 투사하는 프로젝터를 나타내는 도면이다.
도 2는 9개의 데이터 점을 갖는 사각형 표면을 나타내는 도면이다.
도 3 및 4는 본 발명의 일실시예에 따른 베지어 패치를 나타내는 도면이다.
도 5a는 본 발명의 일실시예에 따른 기하 보정 방법을 나타내는 흐름도이다.
도 5b는 본 발명의 일실시예에 따른 기하 보정 방법이 카메라로부터 영상을 수신하는 동작을 나타내는 도면이다.
도 6은 본 발명의 일실시예에 따른 기하 보정 방법이 기하 보정을 수행하는 동작을 나타내는 도면이다.
도 7은 본 발명의 일실시예에 따른 기하 보정 방법이 런 타임 어플리케이션을 실행하는 동작을 나타내는 도면이다.
도 8은 본 발명의 일실시예에 따른 기하 보정 장치의 구성을 나타내는 도면이다.
Figure 1 is a view of a projector that projects media content onto a non-flat projection surface.
Figure 2 is a diagram showing a rectangular surface with nine data points.
3 and 4 are views showing a Bezier patch according to an embodiment of the present invention.
5A is a flowchart illustrating a geometric correction method according to an embodiment of the present invention.
5B is a diagram illustrating an operation of receiving an image from a camera according to an exemplary embodiment of the present invention.
6 is a diagram illustrating an operation for performing a geometric correction by the geometric correction method according to an embodiment of the present invention.
7 is a diagram illustrating an operation of executing a runtime application according to an embodiment of the present invention.
8 is a diagram illustrating a configuration of a geometric correction apparatus according to an embodiment of the present invention.

이하에서, 본 발명에 따른 실시예를 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
Hereinafter, embodiments according to the present invention will be described in detail with reference to the accompanying drawings. However, the present invention is not limited to or limited by the embodiments. Like reference symbols in the drawings denote like elements.

본 발명의 일실시예에 따른 기하 보정 방법은 회귀 베지어 패치 분할(Recursive Bezier Patch Sub-Division)을 이용하여, 평평하지 않은 2차 투사 표면(Uneven Quadric Projection Surface)에 대한 기하 보정(Geometric Correction)을 수행할 수 있다. The geometric correction method according to an exemplary embodiment of the present invention uses a Recursive Bezier Patch Sub-Division to perform geometric correction on a non-flat quadric projection surface, Can be performed.

본 발명에 따른 기하 보정 방법을 설명하기 위하여 베지어 패치에 대해서 우선 설명한다.
To explain the geometric correction method according to the present invention, a Bezier patch will be described first.

베지어 표면은 별개의 제어점(Control Point)이라는 수단을 이용하여 2차 표면(2D Surface)을 생성하기 위하여 번스타인 다항식(Bernstein polynomials)을 사용하는 고차 표면(polynomial surface)의 종류일 수 있다. 이 때, 각 제어점의 위치는 베지어 표면의 형상 및 곡률을 결정할 수 있다. Bezier surfaces can be of the kind of polynomial surfaces that use Bernstein polynomials to create a 2D surface using a separate control point. In this case, the position of each control point can determine the shape and curvature of the Bezier surface.

완전한 사각형 표면은, 9개의 제어점을 갖는 2차 베지어 표면(2nd degree Bezier surface) - 이 때, 9개의 제어점은 4개의 코너 제어점(Corner Control Point), 4개의 가장자리 제어점(Edge Control Point) 및 1개의 중심 제어점(Center Control Point)이 됨 - 으로 볼 수 있다. 이 때, 복수 개의 제어점 중 어느 하나가 최초의 위치로부터 이동되는 경우, 표면도 그에 대응하여 변형될 수 있다. 또한, 제어점에 가까운 표면점일수록 더 강한 힘을 받게 될 수 있다.The complete rectangular surface is a 2nd degree Bezier surface with nine control points-nine control points are four corner control points, four edge control points, and one control point. (Center control point). At this time, when any one of the plurality of control points is moved from the initial position, the surface may be modified correspondingly. Also, a surface point near the control point may be subjected to a stronger force.

(n, m) 차(order)의 (u, v)-평면 상의 2차 베지어 표면은, 서로 직교하는 2개의 독립 매개 곡선(parametric curves)인 B(u)와 B(v)의 구성으로 볼 수 있고, (n+1)(m+1)의 제어점으로 정의될 수 있다. The secondary Bézier surface on the (u, v) -plane of the (n, m) order is composed of two mutually orthogonal parametric curves, B (u) and B (v) And can be defined as a control point of (n + 1) (m + 1).

각 베지어 파라미터 값은 0과 1사이의 범위 내에서 결정되며, 이를 수식으로 표현하면 수식 1과 같다.Each Bézier parameter value is determined within a range between 0 and 1, which can be expressed as in Equation 1.

수식 1Equation 1

Figure 112014031275704-pat00001
Figure 112014031275704-pat00001

이 때,

Figure 112014031275704-pat00002
이고,
Figure 112014031275704-pat00003
Figure 112014031275704-pat00004
은 u 매개축(u parametric axis) 및 v 매개축(v parametric axis) 상의 베지어 곡선을 나타내며,
Figure 112014031275704-pat00005
는 제어점들의 세트(set)를 나타낸다.At this time,
Figure 112014031275704-pat00002
ego,
Figure 112014031275704-pat00003
Wow
Figure 112014031275704-pat00004
Represents a Bezier curve on a u-parametric axis and v-parametric axis,
Figure 112014031275704-pat00005
Represents a set of control points.

본 발명의 일실시예에 따른 기하 보정 장치 및 방법은 베지어 표면의 다음 3가지 특성을 활용할 수 있다. 이 때의 3가지 특성은 (1) 베지어 표면은 제어점들의 컨백스 헐(Convex Hull) 내부에 위치하는 특성, (2) 코너에 있는 베지어 표면점(Bezier surface point)은 대응하는 제어점 바로 밑에 위치하는 점(단, 이 특성은 코너에 있는 제어점 외 다른 제어점에는 적용되지 않음), (3) 어느 하나의 매개축 값이 상수값을 갖는 경우, 베지어 곡선(Bezier curve)을 얻을 수 있는 점(따라서, 베지어 표면의 가장자리는, 어느 하나의 매개축이 0 또는 1의 값을 갖는 베지어 곡선으로 볼 수 있음)이 된다.
The geometry correction apparatus and method according to an embodiment of the present invention can utilize the following three characteristics of the Bézier surface. The three characteristics are: (1) the bezier surface is located inside the convex hull of the control points, (2) the bezier surface point at the corner is located just below the corresponding control point (This property does not apply to control points other than the control points in the corner), (3) a point at which a Bezier curve can be obtained if any one of the intermediate axis values has a constant value Thus, the edge of the Bezier surface can be seen as a Bezier curve in which one of the intermediate axes has a value of 0 or 1).

도 2는 9개의 데이터 점을 갖는 사각형 표면을 나타내는 도면이다. Figure 2 is a diagram showing a rectangular surface with nine data points.

도 2를 참조하면, 사각형 격자(rectangular grid)(210)는 9개의 데이터 점(data point)을 포함할 수 있다. 9개의 데이터 점은 4개의 코너 데이터 점, 4개의 가장자리 데이터 점 및 1개의 중심 데이터 점을 포함할 수 있다. 이 때, 사각형 격자(210)가 2차 변형(2nd order transformation)에 의해서 왜곡되면, 왜곡된 사각형 표면(220)과 같이 변형될 수 있다. Referring to FIG. 2, a rectangular grid 210 may include nine data points. The nine data points may include four corner data points, four edge data points, and one center data point. At this time, if the square grid 210 is distorted by a second order transformation, it can be deformed like the distorted rectangular surface 220.

한편, 이와 같이 2차원 표면 상에 있는 데이터 점들의 집합이 주어진 상태에서, 제어점들의 위치를 추정함으로써 2차 표면 상의 데이터 점들에 2차 베지어 표면(2nd order Bezier surface)이 맞추어질 수 있다. 예를 들어, 사각형(310)은 2차 베지어 표면을 나타내고, 왜곡된 사각형(320)은 2차 베지어 표면의 제어점이 이동함으로써 변형된 사각형을 나타낸다.On the other hand, a second order Bezier surface can be fitted to the data points on the secondary surface by estimating the position of the control points, given the set of data points on the two-dimensional surface. For example, the quadrangle 310 represents a quadratic Bezier surface, and the distorted quadrangle 320 represents a deformed quadrangle by moving the control points of the secondary Bezier surface.

제어점들의 위치는 수식 2와 같은 방법을 통하여 추정될 수 있다The position of the control points can be estimated through the same method as in Equation 2

수식 2Equation 2

Figure 112014031275704-pat00006
Figure 112014031275704-pat00006

이 때, t는 베지어 파라미터를 나타내고, B(t)는 표면 상에 있는 미리 알고 있는 데이터 점의 위치를 나타낸다. 도 3을 참조하면, P0(311), P2(313), P6 및 P8의 코너 제어점은 4개의 코너 데이터 점과 일치하게 된다. Where t represents the Bezier parameter and B (t) represents the position of a previously known data point on the surface. Referring to FIG. 3, the corner control points of P0 311, P2 313, P6 and P8 coincide with the four corner data points.

한편, 가장자리 제어점 P1(312)은 P0(311)과 P2(313)의 중간에 위치하기 때문에, 수식 2에서 t값은 0.5이 되고, B(t)는 P1(312)에 대응하는 가장자리 데이터 점의 위치가 될 수 있다.On the other hand, since the edge control point P1 312 is located between P0 311 and P2 313, the t value in equation (2) is 0.5, and B (t) is the edge data point corresponding to P1 As shown in FIG.

마찬가지로, P3, P5 및 P7의 가장자리 제어점의 위치는 각각에 대응하는 데이터 점을 이용하여 연산될 수 있다.Similarly, the positions of the edge control points of P3, P5 and P7 can be calculated using the corresponding data points.

또한, P4(314)의 앞면 제어점(face control point)은, 추정된 베지어 표면의 중심 픽셀이 이미지의 중심과 일치하도록 반복 조정됨으로써 추정될 수 있다.In addition, the face control point of P4 314 can be estimated by repeatedly adjusting the center pixel of the estimated Bézier surface to match the center of the image.

고차원의 왜곡을 갖는 표면일 경우, 표면에 대한 매핑(mapping) 및 보상 작업을 위하여 더욱 많은 제어점이 요구된다. 하지만, 이러한 결과는 수학적 복잡성을 증가시키기 때문에 연산 시간이 올라가는 문제가 있다. 그러나, 본 발명의 일실시예에 따른 기하 보정 방법은 높은 차원을 요구하지 않고도, 높은 차원과 비슷한 수준의 표면 매핑 결과(level of surface mapping)를 얻을 수 있다.In the case of surfaces with high dimensional distortion, more control points are required for mapping and compensating surfaces. However, this results in increased mathematical complexity, which raises the computation time. However, the geometric correction method according to an embodiment of the present invention can obtain a level of surface mapping similar to a high dimensional level without requiring a high level.

즉, 본 발명의 일실시예에 따른 기하 보정 방법은 희박한 초기에 알려져 있는 점(sparse initial known points)을 이용하여 매끄러운 표면(smooth surface)에서부터 시작할 수 있다. 그리고, 표면 그물망(surface mesh)의 높은 정확성을 얻기 위하여, 2차 평면 상의 표면에 대한 더욱 밀도가 높은 추정을 회귀적으로 생성할 수 있다.That is, the geometric correction method according to an embodiment of the present invention can start from a smooth surface using sparse initial known points. And, to obtain high accuracy of the surface mesh, a more dense estimate of the surface on the secondary plane can be regressively generated.

더욱 자세히 설명하면, 모든 베지어 패치는 9개의 제어점을 갖는 2차 베지어 표면을 이용하여 정의될 수 있다. 제1 레벨 분할(1st level of sub-division)은 2차 베이저 표면에 대한 4개의 베지어 패치 각각을 4개의 부분 패치(sub-patches) 또는 사분면(quadrants)으로 나눔으로써 얻어질 수 있다. 이 때, 나누어진 부분 패치 각각은 9개의 제어점을 갖는다(4개의 코너 제어점, 4개의 가장자리 제어점 및 1개의 중심 제어점). 도 4를 참조하면, 사각형(410)은 제1 레벨 분할 상태의 베이저 패치를 나타낸다. 한편, 왜곡된 사각형(420)에 나타나는 것과 같이, 높은 레벨 분할의 경우 높은 제어를 제공할 수 있다. 즉, 도 4에 표시되어 있는 점선(430)은 0레벨 분할 상태에서의 변형을 보여주고 있는데, 왜곡된 사각형(420)의 외곽선과 비교할 때, 더 낮은 제어를 보여주고 있다.More specifically, all Bezier patches can be defined using a secondary Bezier surface with nine control points. The first level of sub-division can be obtained by dividing each of the four Bezier patches on the secondary basal surface into four partial patches (sub-patches) or quadrants. At this time, each of the divided partial patches has nine control points (four corner control points, four edge control points, and one center control point). Referring to FIG. 4, the rectangle 410 represents a base level patch in the first level division state. On the other hand, as shown in the distorted rectangle 420, high control can be provided in the case of a high level division. That is, the dotted line 430 shown in FIG. 4 shows the deformation in the 0 level split state, which shows a lower control when compared to the outline of the distorted rectangle 420.

제2 레벨 분할은, 앞에서 설명한 동작과 마찬가지로, 제1 레벨 분할 상태에서의 베지어 패치 각각을 다시 4개의 부분 패치로 분할함으로써, 16개의 베지어 표면 패치를 갖게 된다. In the second level division, similarly to the above-described operation, each of the Bezier patches in the first level division state is divided again into four partial patches, thereby having 16 Bezier surface patches.

이 때, 2개의 부분 패치 사이의 경계에 있는 제어점은 2개의 부분 패치 모두에 공통적으로 적용되는 공통 제어점으로 동작할 수 있다. 따라서, 제i 레벨 분할 상태에서의 가장자리 제어점은 제i+1 레벨 분할 상태에서 코너 제어점이 된다.
At this time, the control point at the boundary between the two partial patches can operate as a common control point commonly applied to both partial patches. Therefore, the edge control point in the i-th level split state becomes the corner control point in the (i + 1) -th level split state.

이하, 도 5a 및 도 5b을 참조하여 본 발명의 일실시예에 따른 기하 보정 방법의 동작에 대해서 설명한다.Hereinafter, the operation of the geometric correction method according to an embodiment of the present invention will be described with reference to FIGS. 5A and 5B. FIG.

본 발명의 일실시예에 따른 기하 보정 방법은 오프 라인 교정 단계 및 온라인 렌더링 단계에 적용될 수 있다. 이 때, 기하 보정 방법은 오프라인 교정 단계 동안은 1번 적용될 수 있으며, 온라인 렌더링 단계 동안은 매 프레임마다 적용될 수 있다. The geometric correction method according to an embodiment of the present invention can be applied to the offline calibration step and the online rendering step. At this time, the geometric correction method may be applied once during the offline correction step, and may be applied every frame during the online rendering step.

카메라(530)는 투사 표면(510)(Projection Surface)에 투사되는 컨텐츠를 촬영할 수 있다. 투사 표면(510)은 평평한 평면이 아니라, 평평하지 않은 2차 투사 표면(Uneven Quadric Projection Surface)일 수 있다. 따라서, 기하 보정이 되지 않은 컨텐츠 등이 투사 표면(510)에 투사되는 경우, 투사되는 컨텐츠는 본래 컨텐츠의 형상과 다른 모습으로 왜곡되어 투사될 수 있다. 따라서, 본 발명의 일실시예에 따른 기하 보정 방법은 표면 때문에 투사되는 패턴에 생기는 변형을 회귀적 베지어 패치 분할을 이용하여 추정할 수 있다. The camera 530 may capture the content projected onto the projection surface 510 (Projection Surface). The projection surface 510 may be a flat, non-flat, uneven quadric projection surface. Therefore, when content without geometry correction is projected onto the projection surface 510, the projected content may be distorted and projected in a different shape from the original shape of the content. Therefore, the geometric correction method according to an embodiment of the present invention can estimate a deformation occurring in a projected pattern due to a surface using a regressive Bezier patch division.

프로젝터(projector)(520)는 표면 경계 영역(surface boundary) 내에서 투사 표면(510) 앞에 임의로 놓일 수 있다. 실시예에 따라서는, 프로젝터(520)는 복수 개 설치되어 멀티 프로젝터(Multi Projector)로 제공될 수 있다. 즉, 본 발명의 일실시예에 따른 기하 보정 방법은 멀티 프로젝터 환경에서도 동일하게 적용될 수 있다.A projector 520 may be arbitrarily placed in front of the projection surface 510 within a surface boundary. In some embodiments, a plurality of projectors 520 may be provided and provided as a multi projector. That is, the geometric correction method according to an embodiment of the present invention can be equally applied to a multi-projector environment.

또한, 카메라(530)는 투사 표면(510)의 모든 영역을 포함할 수 있는 위치에 놓일 수 있다.In addition, the camera 530 may be placed in a position that may include all areas of the projection surface 510. [

상술한 것과 같이 카메라(530) 및 프로젝터(520)가 세팅되면, 프로젝터(520)는 검은 화면을 투사 표면(510)에 투사할 수 있다. 이 때, 카메라(530)는 프로젝터(520)가 투사 표면(510)에 투사하는 검은 화면을 촬영할 수 있고, 검은 화면을 촬영한 제1 영상(531)을 기하 보정 장치로 전송할 수 있다. 또한, 기하 보정 방법은 카메라(530)로부터 제1 영상(531)을 수신할 수 있다(501). When the camera 530 and the projector 520 are set as described above, the projector 520 can project a black screen onto the projection surface 510. [ At this time, the camera 530 can take a black screen projected on the projection surface 510 by the projector 520, and can transmit the first image 531, which has taken a black screen, to the geometry correction apparatus. Also, the geometry correction method may receive the first image 531 from the camera 530 (501).

검은 화면을 촬영한 제1 영상(531)은 환경적 영향, 표면 영향 및 카메라 영향을 제거하는데 이용될 수 있다. 이 때, 예를 들어, 환경적 영향은 또 다른 광원에 의한 주변 빛 등이 될 수 있다. 또한, 표면 영향은 특징점 검출 실패를 야기할 수 있는 투사 표면(510) 상의 검은 점 등이 될 수 있다. 또한, 카메라 영향은 색조 퍼짐 및 불량 픽셀 등이 될 수 있다. The first image 531 of the black screen may be used to remove environmental effects, surface effects, and camera effects. At this time, for example, the environmental influence may be ambient light by another light source. Also, the surface effect may be a black point on the projection surface 510 that may cause a feature point detection failure. Also, the camera effect can be a hue spread and a defective pixel.

검은 화면에 대한 제1 영상(531)의 수신이 완료되면, 프로젝터(520)는 미리 설정된 패턴(pattern)을 투사 표면(510)으로 투사할 수 있다. 일실시예에 따른 미리 설정된 패턴은 점(point)으로 이루어진 사각형 격자일 수 있다. 이 때, 사각형 격자를 형성하는 점의 개수는 베지어 분할의 레벨에 기반하여 선택될 수 있다. When the reception of the first image 531 on the black screen is completed, the projector 520 can project a predetermined pattern onto the projection surface 510. [ The predetermined pattern according to an exemplary embodiment may be a rectangular grid consisting of points. At this time, the number of points forming the square lattice can be selected based on the level of Bezier division.

카메라(530)는 프로젝터(520)가 투사 표면(510)에 투사하는 미리 설정된 패턴을 촬영할 수 있고, 미리 설정된 패턴을 촬영한 제2 영상(532)을 기하 보정 장치로 전송할 수 있다. 기하 보정 방법은 카메라(530)로부터 제2 영상(532)을 수신할 수 있다(502).
The camera 530 can take a predetermined pattern projected on the projection surface 510 by the projector 520 and transmit the second image 532 of the preset pattern to the geometry correction device. The geometry correction method may receive the second image 532 from the camera 530 (502).

제1 영상(531) 및 제2 영상(532)을 카메라(530)로부터 수신하면, 기하 보정 방법은 제2 영상(532)으로부터 제1 영상(531)을 빼는(subtract) 동작을 수행함으로써, 원하지 않은 아티팩트(unwanted artifacts)가 제거된 제3 영상(533)을 생성할 수 있다(503).When the first image 531 and the second image 532 are received from the camera 530, the geometric correction method subtracts the first image 531 from the second image 532, A third image 533 from which unwanted artifacts have been removed may be generated 503.

기하 보정 방법은 미리 설정된 패턴과 제3 영상(533) 사이의 왜곡을 보정하기 위하여, 미리 설정된 패턴에 대하여 기하 보정을 수행할 수 있다(504).
In the geometric correction method, a geometric correction may be performed on a preset pattern in order to correct the distortion between the preset pattern and the third image 533 (504).

이하, 도 6을 참조하여, 본 발명의 일실시예에 따른 기하 보정 방법이 왜곡을 보정하기 위하여 미리 설정된 패턴에 대하여 기하 보정을 수행하는 동작에 대해서 상세히 설명한다.Hereinafter, with reference to FIG. 6, an operation of performing a geometric correction on a predetermined pattern to correct distortion according to an embodiment of the present invention will be described in detail.

기하 보정 방법은 기하 보정을 수행하기 위하여 제3 영상으로부터 특징점(feature points)을 추출할 수 있다(610). 실시예에 따라서는, 기하 보정 방법은 해리스 코너 검출법(Harris corner detection)을 이용하여 제3 영상으로부터 특징점을 추출할 수 있다.The geometry correction method may extract feature points from the third image to perform the geometric correction (610). In some embodiments, the geometry correction method may extract feature points from the third image using Harris corner detection.

또한, 기하 보정 방법은 카메라를 통하여 촬영된 제3 영상에 대한 도메인(Domain)으로부터 프로젝터를 통하여 투사된 미리 설정된 패턴에 대한 도메인으로 추출된 특징점을 이동시킬 수 있다(620). In addition, the geometric correction method may move 620 the extracted minutiae to the domain of the predetermined pattern projected through the projector from the domain for the third image photographed through the camera.

자세히 설명하면, 기하 보정 방법은 카메라를 통하여 촬영된 제3 영상을 프로젝터를 통하여 투사된 미리 설정된 패턴과 연관(relate)시킬 수 있다. 즉, 투사 표면의 형상으로 인하여, 미리 설정된 패턴과 제3 영상 사이에는 왜곡이 발생하였기 때문에, 기하 보정 방법은 두 영상을 서로 연관시키는 동작을 수행하는 것이 요구된다. More specifically, the geometric correction method may relate the third image photographed through the camera to a predetermined pattern projected through the projector. That is, due to the shape of the projection surface, distortion occurs between the preset pattern and the third image, and therefore, the geometric correction method is required to perform an operation of associating the two images with each other.

예를 들어, 프로젝터가 투사하는 미리 설정된 패턴은 P(x, y) 도메인에 있고, 카메라가 촬영한 제3 영상은 C(x, y) 도메인에 있다고 할 때, C(x, y) 도메인 상의 제3 영상을 P(x, y) 도메인 상의 미리 설정된 패턴과 연결시키기 위하여, 기하 보정 방법은 호모그라피(homography)를 연산할 수 있다. 실시예에 따라서는, 기하 보정 방법은 제3 영상의 4개의 코너 특징점(Corner Feature Point)(베지어 코너 제어점이 될 수 있음)을 미리 설정된 패턴의 4개의 코너 점(Corner Point)으로 대응하는 방법을 통하여 호모그라피를 연산할 수 있다.
For example, assuming that a predetermined pattern projected by the projector is in the domain P (x, y) and the third image captured by the camera is in the domain C (x, y) In order to associate the third image with a predetermined pattern on the P (x, y) domain, the geometric correction method may calculate homography. According to an embodiment, the geometric correction method is a method in which four corner feature points (which may be bezier corner control points) of a third image are corresponded to four corner points of a preset pattern It is possible to calculate the homography through the above method.

*또한, 호모그라피가 연산되면, 기하 보정 방법은 연산된 호모그라피를 이용하여 제3 영상에 대한 도메인으로부터 미리 설정된 패턴에 대한 도메인으로 추출된 특징점을 이동시킬 수 있다. 즉, 기하 보정 방법은 호모그라피를 이용하여 제3 영상에 대하여 추출된 모든 특징점을 미리 설정된 패턴에 대한 도메인으로 이동시킬 수 있다.
In addition, when the homography is calculated, the geometric correction method can move the extracted minutiae to the domain for the preset pattern from the domain for the third image using the calculated homography. That is, the geometric correction method can move all the feature points extracted for the third image to the domain for the predetermined pattern by using the homography.

특징점이 모두 이동되면, 기하 보정 방법은 이동된 특징점에 기반하여 제3 영상에 대하여 베지어 변환을 적용할 수 있다. 또한, 기하 보정 방법은 베지어 변환을 회귀적으로 적용하여 기하 보정을 수행할 수 있다.
Once all minutiae are moved, the geometric correction method can apply a Bezier transformation to the third image based on the shifted minutiae. In addition, the geometric correction method can perform geometric correction by applying the Bezier transformation recursively.

본 발명의 일측에 따른 기하 보정 방법은 제3 영상에 대하여 베지어 변환을 적용하기 위하여, 제3 영상 전체를 하나의 2차 베지어 패치(single second order Bezier patch)로 설정할 수 있다. 이 때, 2차 베지어 패치는 4개의 코너 제어점(corner control point)으로 동작하는 4개의 코너 특징점을 포함할 수 있다.The geometry correction method according to one aspect of the present invention can set the entire third image as a single second order Bezier patch in order to apply Bezier transform to the third image. At this time, the secondary Bezier patch may include four corner feature points operating as four corner control points.

기하 보정 방법은 이동된 특징점에 기반하여, 2차 베지어 패치에 대한 제어점의 위치를 연산할 수 있다(630). 실시예에 따라서는, 기하 보정 방법은 2차 베지어 패치에 대한 코너 제어점의 위치를 우선 연산하고, 연산된 코너 제어점의 위치에 기반하여 가장자리 제어점(edge control point) 및 중심 제어점(center control point)의 위치를 각각 연산할 수 있다. The geometry correction method can calculate the position of the control point for the secondary Bezier patch based on the moved minutiae (630). According to an embodiment, the geometric correction method first computes the position of a corner control point for a secondary Bezier patch, and calculates an edge control point and a center control point based on the calculated position of the corner control point, Respectively.

제어점들의 위치가 모두 연산되면, 2차원 표면(quadric surface)에 의한 왜곡(2차 왜곡, 2nd degree distortion)을 보정하기 위하여, 기하 보정 방법은 2차 베지어 패치 내의 모든 특징점에 대하여 베지어 변환(Bezier transformation)을 적용할 수 있다(640).
In order to correct the distortion (second-order distortion, 2nd degree distortion) due to the quadric surface when all of the positions of the control points are computed, the geometric correction method is used to perform a Bezier transformation Bezier transformation can be applied (640).

또한, 2차 베지어 근사치(2nd degree Bezier approximation)을 이용하여 보정될 수 없는 기하 왜곡(geometric distortions)이 있는 평면의 경우, 기하 보정 방법은 2차 베지어 패치를 4개의 부분 패치로 분할하는 분할 동작을 수행할 수 있다. 이 때, 각각의 부분 패치는 9개의 제어점을 갖게 된다. 또한, 기하 보정 방법은 각 부분 패치에 대한 제어점의 위치를 연산하고(650), 부분 패치 내의 모든 특징점에 대하여 베지어 변환을 적용함으로써, 베지어 변환을 회귀적으로 적용하여 미리 설정된 패턴에 대한 기하 보정을 수행할 수 있다(660). 이 때, 분할 동작을 i번 수행하여 생성되는 제i 레벨 부분 패치(ith level sub-patches)는 독립적인 2차 표면으로 취급될 수 있다. Also, in the case of a plane with geometric distortions that can not be corrected using a 2nd degree Bezier approximation, the geometric correction method is divided into four partial patches Operation can be performed. At this time, each partial patch has nine control points. The geometry correction method also calculates the position of the control points for each partial patch (650) and applies the Bezier transform to all feature points in the partial patch, Correction may be performed (660). At this time, ith level sub-patches generated by performing the dividing operation i times can be treated as independent secondary surfaces.

본 발명의 일측에 따르면, 기하 보정 방법은 투사 표면의 작은 부분에 대해서도 분할 동작을 회귀적으로 수행할 수 있고(670, 680), 따라서, 분할 레벨은 증가될 수 있다. According to one aspect of the present invention, the geometric correction method can also perform (670, 680) a segmentation operation on a small portion of the projection surface (670, 680) and thus the segmentation level can be increased.

또한, 부분 패치 안의 모든 특징점에 대하여 베지어 변환을 적용할 때, 기하 보정 방법은 분할 동작을 수행한 순서의 역순으로 베지어 변환을 적용할 수 있다. 예를 들어, 기하 보정 방법은 가장 높은 분할 레벨을 갖는 부분 패치에 대하여 베지어 변환을 가장 먼저 적용하고, 그 다음 분할 레벨부터 가장 낮은 분할 레벨까지 순차적으로 베지어 변환을 적용할 수 있다.
Also, when applying Bezier transform to all the feature points in the partial patch, the geometry correction method can apply Bezier transform in the reverse order of the dividing operation. For example, the geometry correction method may apply Bezier transform first for a partial patch with the highest split level, then sequentially apply Bezier transform from the next split level to the lowest split level.

본 발명의 일측에 따르면, 기하 보정 방법은 베지어 적용을 회귀적으로 적용하는 동작을 수행하면서, 부분 패치에 대한 정보를 룩-업 테이블에 기록할 수 있다. 이렇게 기록된 룩-업 테이블은 런 타임 어플리케이션(run time application)을 실행하는데 이용될 수 있다. According to one aspect of the present invention, the geometric correction method can record information on a partial patch to a look-up table while performing an operation of applying a Bezier application recursively. The recorded look-up table can then be used to execute a run time application.

즉, 도 7을 참조하면, 일실시예에 따른 기하 보정 방법은 프로젝터(730)가 투사 표면에 투사하는 컨텐츠(710)가 투사 표면에서 왜곡되지 않은 채 투사될 수 있도록, 룩-업 테이블을 이용하여 컨텐츠의 매 프레임(frame)을 뒤트는(warp) OpenGL(Open Graphics Library)을 이용하여 런 타임 어플리케이션(run time application)을 실행할 수 있다. 프래임(720)은 투사 표면에서 왜곡되지 않도록 룩-업 테이블이 적용되어 뒤틀어진 프래임을 나타낸다.
7, the geometric correction method according to an exemplary embodiment uses a look-up table so that the contents 710 projected on the projection surface by the projector 730 can be projected without distortion on the projection surface A runtime application can be executed using OpenGL (Open Graphics Library) which warp each frame of the content. The frame 720 represents a twisted frame to which a look-up table is applied so that it is not distorted at the projection surface.

도 8은 본 발명의 일실시예에 따른 기하 보정 장치의 구성을 나타내는 도면이다. 8 is a diagram illustrating a configuration of a geometric correction apparatus according to an embodiment of the present invention.

도 8을 참조하면, 본 발명의 일실시예에 따른 기하 보정 장치(800)는 수신부(810), 생성부(820) 및 처리부(830)를 포함할 수 있다.Referring to FIG. 8, a geometry correction apparatus 800 according to an embodiment of the present invention may include a receiving unit 810, a generating unit 820, and a processing unit 830.

수신부(810)는 카메라로부터 제1 영상을 수신할 수 있다. The receiving unit 810 can receive the first image from the camera.

검은 화면을 촬영한 제1 영상은 환경적 영향, 표면 영향 및 카메라 영향을 제거하는데 이용될 수 있다. 이 때, 예를 들어, 환경적 영향은 또 다른 광원에 의한 주변 빛 등이 될 수 있다. 또한, 표면 영향은 특징점 검출 실패를 야기할 수 있는 투사 표면 상의 검은 점 등이 될 수 있다. 또한, 카메라 영향은 색조 퍼짐 및 불량 픽셀 등이 될 수 있다. A first image of a black screen can be used to eliminate environmental, surface, and camera effects. At this time, for example, the environmental influence may be ambient light by another light source. Also, the surface effect may be a black dot on the projection surface, which may cause a feature point detection failure. Also, the camera effect can be a hue spread and a defective pixel.

검은 화면에 대한 제1 영상의 수신이 완료되면, 프로젝터는 미리 설정된 패턴(pattern)을 투사 표면으로 투사할 수 있다. 일실시예에 따른 미리 설정된 패턴은 점(point)으로 이루어진 사각형 격자일 수 있다. 이 때, 사각형 격자를 형성하는 점의 개수는 베지어 분할의 레벨에 기반하여 선택될 수 있다. When the reception of the first image for the black screen is completed, the projector can project a predetermined pattern onto the projection surface. The predetermined pattern according to an exemplary embodiment may be a rectangular grid consisting of points. At this time, the number of points forming the square lattice can be selected based on the level of Bezier division.

카메라는 프로젝터가 투사 표면에 투사하는 미리 설정된 패턴을 촬영할 수 있고, 미리 설정된 패턴을 촬영한 제2 영상을 기하 보정 장치(800)로 전송할 수 있다. 수신부(810)는 카메라로부터 제2 영상을 수신할 수 있다.
The camera can take a predetermined pattern projected by the projector onto the projection surface and transmit the second image of the preset pattern to the geometry correction device 800. [ The receiving unit 810 can receive the second image from the camera.

제1 영상 및 제2 영상을 카메라로부터 수신하면, 생성부(820)는 제2 영상으로부터 제1 영상을 빼는(subtract) 동작을 수행함으로써, 원하지 않은 아티팩트(unwanted artifacts)가 제거된 제3 영상을 생성할 수 있다.Upon receiving the first image and the second image from the camera, the generating unit 820 subtracts the first image from the second image, thereby generating a third image from which unwanted artifacts have been removed Can be generated.

또한, 처리부(830)는 미리 설정된 패턴과 제3 영상 사이의 왜곡을 보정하기 위하여, 미리 설정된 패턴에 대하여 기하 보정을 수행할 수 있다.
In addition, the processing unit 830 may perform geometric correction on a preset pattern in order to correct the distortion between the preset pattern and the third image.

이하, 처리부(830)가 왜곡을 보정하기 위하여 미리 설정된 패턴에 대하여 기하 보정을 수행하는 동작에 대해서 상세히 설명한다.Hereinafter, the operation of the processing unit 830 to perform the geometric correction on a predetermined pattern for correcting the distortion will be described in detail.

처리부(830)는 기하 보정을 수행하기 위하여 제3 영상으로부터 특징점(feature points)을 추출할 수 있다. 실시예에 따라서는, 처리부(830)는 해리스 코너 검출법(Harris corner detection)을 이용하여 제3 영상으로부터 특징점을 추출할 수 있다.The processing unit 830 may extract feature points from the third image to perform geometric correction. In some embodiments, the processing unit 830 may extract feature points from the third image using Harris corner detection.

또한, 처리부(830)는 카메라를 통하여 촬영된 제3 영상에 대한 도메인(Domain)으로부터 프로젝터를 통하여 투사된 미리 설정된 패턴에 대한 도메인으로 추출된 특징점을 이동시킬 수 있다. In addition, the processing unit 830 can move the extracted minutiae to the domain of the preset pattern projected through the projector from the domain for the third image photographed through the camera.

자세히 설명하면, 처리부(830)는 카메라를 통하여 촬영된 제3 영상을 프로젝터를 통하여 투사된 미리 설정된 패턴과 연관(relate)시킬 수 있다. 즉, 투사 표면의 형상으로 인하여, 미리 설정된 패턴과 제3 영상 사이에는 왜곡이 발생하였기 때문에, 처리부(830)가 두 영상을 서로 연관시키는 동작을 수행하는 것이 요구된다. In detail, the processing unit 830 may relate the third image photographed through the camera to a predetermined pattern projected through the projector. That is, due to the shape of the projection surface, distortion occurs between the preset pattern and the third image, so it is required that the processing unit 830 perform an operation of associating the two images.

예를 들어, 프로젝터가 투사하는 미리 설정된 패턴은 P(x, y) 도메인에 있고, 카메라가 촬영한 제3 영상은 C(x, y) 도메인에 있다고 할 때, C(x, y) 도메인 상의 제3 영상을 P(x, y) 도메인 상의 미리 설정된 패턴과 연결시키기 위하여, 처리부(830)는 호모그라피(homography)를 연산할 수 있다. 실시예에 따라서는, 처리부(830)는 제3 영상의 4개의 코너 특징점(Corner Feature Point)(베지어 코너 제어점이 될 수 있음)을 미리 설정된 패턴의 4개의 코너 점(Corner Point)으로 대응하는 방법을 통하여 호모그라피를 연산할 수 있다.For example, assuming that a predetermined pattern projected by the projector is in the domain P (x, y) and the third image captured by the camera is in the domain C (x, y) In order to associate the third image with a predetermined pattern on the P (x, y) domain, the processing unit 830 may calculate homography. According to an embodiment, the processing unit 830 may include four corner feature points (which may be bezier corner control points) of the third image, corresponding to four corner points of a predetermined pattern It is possible to calculate the homography through the method.

또한, 호모그라피가 연산되면, 처리부(830)는 연산된 호모그라피를 이용하여 제3 영상에 대한 도메인으로부터 미리 설정된 패턴에 대한 도메인으로 추출된 특징점을 이동시킬 수 있다. 즉, 처리부(830)는 호모그라피를 이용하여 제3 영상에 대하여 추출된 모든 특징점을 미리 설정된 패턴에 대한 도메인으로 이동시킬 수 있다.
In addition, when the homography is calculated, the processing unit 830 can use the computed homography to move the extracted minutiae to the domain for the preset pattern from the domain for the third image. That is, the processing unit 830 can move all the feature points extracted for the third image to the domain for the predetermined pattern by using the homography.

특징점이 모두 이동되면, 처리부(830)는 이동된 특징점에 기반하여 제3 영상에 대하여 베지어 변환을 적용할 수 있다. 또한, 처리부(830)는 베지어 변환을 회귀적으로 적용하여 기하 보정을 수행할 수 있다.
When all of the minutiae are moved, the processing unit 830 may apply the Bezier transformation to the third image based on the minutiae that have been moved. In addition, the processing unit 830 can perform geometric correction by applying a Bezier transformation recursively.

본 발명의 일측에 따른 처리부(830)는 제3 영상에 대하여 베지어 변환을 적용하기 위하여, 제3 영상 전체를 하나의 2차 베지어 패치(single second order Bezier patch)로 설정할 수 있다. 이 때, 2차 베지어 패치는 4개의 코너 제어점(corner control point)으로 동작하는 4개의 코너 특징점을 포함할 수 있다.The processing unit 830 according to an aspect of the present invention may set the entire third image to be a single second order Bezier patch in order to apply the Bezier transformation to the third image. At this time, the secondary Bezier patch may include four corner feature points operating as four corner control points.

처리부(830)는 이동된 특징점에 기반하여, 2차 베지어 패치에 대한 제어점의 위치를 연산할 수 있다. 실시예에 따라서는, 처리부(830)는 2차 베지어 패치에 대한 코너 제어점의 위치를 우선 연산하고, 연산된 코너 제어점의 위치에 기반하여 가장자리 제어점(edge control point) 및 중심 제어점(center control point)의 위치를 각각 연산할 수 있다. The processing unit 830 can calculate the position of the control point for the secondary Bezier patch based on the moved minutiae. According to an embodiment, the processing unit 830 first computes the position of the corner control point for the secondary Bezier patch and calculates an edge control point and a center control point based on the calculated position of the corner control point ) Can be calculated, respectively.

제어점들의 위치가 모두 연산되면, 2차원 표면(quadric surface)에 의한 왜곡(2차 왜곡, 2nd degree distortion)을 보정하기 위하여, 처리부(830)는 2차 베지어 패치 내의 모든 특징점에 대하여 베지어 변환(Bezier transformation)을 적용할 수 있다.
When all of the positions of the control points are calculated, the processing unit 830 performs a Bezier transformation on all the feature points in the secondary Bezier patch to correct the distortion (second-order distortion, 2nd degree distortion) due to the quadric surface, (Bezier transformation) can be applied.

또한, 2차 베지어 근사치(2nd degree Bezier approximation)을 이용하여 보정될 수 없는 기하 왜곡(geometric distortions)이 있는 평면의 경우, 처리부(830)는 2차 베지어 패치를 4개의 부분 패치로 분할하는 분할 동작을 수행할 수 있다. 이 때, 각각의 부분 패치는 9개의 제어점을 갖게 된다. 또한, 처리부(830)는 각 부분 패치에 대한 제어점의 위치를 연산하고, 부분 패치 내의 모든 특징점에 대하여 베지어 변환을 적용함으로써, 베지어 변환을 회귀적으로 적용하여 미리 설정된 패턴에 대한 기하 보정을 수행할 수 있다. 이 때, 분할 동작을 i번 수행하여 생성되는 제i 레벨 부분 패치(ith level sub-patches)는 독립적인 2차 표면으로 취급될 수 있다. Also, in the case of a plane having geometric distortions that can not be corrected using a 2nd degree Bezier approximation, the processing unit 830 divides the secondary Bezier patch into four partial patches It is possible to perform the dividing operation. At this time, each partial patch has nine control points. In addition, the processing unit 830 calculates the position of the control point for each partial patch, applies a Bezier transformation to all the feature points in the partial patch, and applies a Bezier transformation to the geometric correction for the preset pattern Can be performed. At this time, ith level sub-patches generated by performing the dividing operation i times can be treated as independent secondary surfaces.

본 발명의 일측에 따르면, 처리부(830)는 투사 표면의 작은 부분에 대해서도 분할 동작을 회귀적으로 수행할 수 있고, 따라서, 분할 레벨은 증가될 수 있다. According to one aspect of the present invention, the processing unit 830 can perform the dividing operation recursively on a small portion of the projection surface, and therefore, the dividing level can be increased.

또한, 부분 패치 안의 모든 특징점에 대하여 베지어 변환을 적용할 때, 처리부(830)는 분할 동작을 수행한 순서의 역순으로 베지어 변환을 적용할 수 있다. 예를 들어, 처리부(830)는 가장 높은 분할 레벨을 갖는 부분 패치에 대하여 베지어 변환을 가장 먼저 적용하고, 그 다음 분할 레벨부터 가장 낮은 분할 레벨까지 순차적으로 베지어 변환을 적용할 수 있다.
Also, when applying Bezier transform to all the feature points in the partial patch, the processing unit 830 can apply Bezier transform in the reverse order of the order of performing the dividing operation. For example, the processing unit 830 may first apply a Bezier transformation to a partial patch having the highest division level, and then sequentially apply a Bezier transformation from the division level to the lowest division level.

본 발명의 일측에 따르면, 처리부(830)는 베지어 적용을 회귀적으로 적용하는 동작을 수행하면서, 부분 패치에 대한 정보를 룩-업 테이블에 기록할 수 있다. 이렇게 기록된 룩-업 테이블은 런 타임 어플리케이션(run time application)을 실행하는데 이용될 수 있다. According to one aspect of the present invention, the processing unit 830 may write information on the partial patch to the look-up table while performing an operation of applying the Bezier application recursively. The recorded look-up table can then be used to execute a run time application.

즉, 일실시예에 따른 처리부(830)는 프로젝터가 투사 표면에 투사하는 컨텐츠가 투사 표면에서 왜곡되지 않은 채 투사될 수 있도록, 룩-업 테이블을 이용하여 컨텐츠의 매 프레임(frame)을 뒤트는(warp) OpenGL(Open Graphics Library)을 이용하여 런 타임 어플리케이션(run time application)을 실행할 수 있다.
In other words, the processing unit 830 according to an exemplary embodiment may use a look-up table to twist every frame of the content so that the content that the projector projects on the projection surface may be projected without distortion on the projection surface (warp) You can run a run time application using OpenGL (Open Graphics Library).

본 발명에 따른 실시예들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(Floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Embodiments according to the present invention 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 those specially designed and constructed for the present invention or may be available to those skilled in the art of computer software. Examples of the computer-readable recording medium include magnetic media such as a hard disk, a floppy disk, and a magnetic tape; optical media such as CD-ROM and DVD; magnetic recording media such as a floppy disk; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.While the invention has been shown and described with reference to certain preferred embodiments thereof, it will be understood by those of ordinary skill in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims. This is possible.

그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined by the equivalents of the claims, as well as the claims.

110: 프로잭터
120: 투사 표면
130: 투사된 영상
110: PROJECTOR
120: projection surface
130: Projected image

Claims (10)

프로젝터가 투사 표면에 투사하는 검은 화면을 촬영한 제1 영상을 카메라로부터 수신하는 단계;
상기 프로젝터가 상기 투사 표면에 투사하는 미리 설정된 패턴을 촬영한 제2 영상을 상기 카메라로부터 수신하는 단계;
상기 제2 영상으로부터 상기 제1 영상을 빼서 제3 영상을 생성하는 단계; 및
상기 미리 설정된 패턴과 상기 제3 영상 사이의 왜곡을 보정하기 위하여, 상기 미리 설정된 패턴에 대하여 기하 보정을 수행하는 단계를 포함하고,
상기 기하 보정을 수행하는 단계는,
상기 제3 영상 전체를 하나의 2차 베지어 패치로 설정하고 상기 2차 베지어 패치를 4개의 부분 패치로 분할하고 상기 4개의 부분 패치 각각에 대한 제어점은 베지어 분할의 레벨에 기반하여 사각형 격자로 형성되는 기하 보정 방법.
Receiving a first image of a black screen projected by a projector on a projection surface from a camera;
Receiving a second image of the predetermined pattern projected on the projection surface by the projector from the camera;
Subtracting the first image from the second image to generate a third image; And
And performing a geometric correction on the predetermined pattern to correct distortion between the preset pattern and the third image,
Wherein the step of performing the geometric correction comprises:
The entirety of the third image is set as one secondary Bézier patch, the secondary Bézier patch is divided into four partial patches, and the control points for each of the four partial patches are divided into a rectangular grid . ≪ / RTI >
제1항에 있어서,
상기 기하 보정을 수행하는 단계는
상기 제3 영상으로부터 특징점을 추출하는 단계;
상기 카메라를 통하여 촬영된 상기 제3 영상에 대한 도메인으로부터 상기 프로젝터를 통하여 투사된 상기 미리 설정된 패턴에 대한 도메인으로 상기 추출된 특징점을 이동시키는 단계;
상기 이동된 특징점에 기반하여, 상기 제3 영상에 대하여 베지어 변환을 적용하는 단계; 및
상기 베지어 변환을 회귀적으로 적용하여 상기 기하 보정을 수행하는 단계
를 포함하는 기하 보정 방법.
The method according to claim 1,
The step of performing the geometric correction
Extracting feature points from the third image;
Moving the extracted minutiae to a domain for the predetermined pattern projected through the projector from the domain for the third image photographed through the camera;
Applying a Bezier transform to the third image based on the moved minutiae; And
Performing the geometric correction by applying the Bezier transformation recursively
/ RTI >
제2항에 있어서,
상기 특징점을 추출하는 단계는
해리스 코너 검출법(Harris corner detection)을 이용하여 상기 특징점을 추출하는 단계인 기하 보정 방법.
3. The method of claim 2,
The step of extracting the feature points
And extracting the feature points using Harris corner detection.
제2항에 있어서,
상기 추출된 특징점을 이동시키는 단계는
상기 제3 영상의 4개의 코너 특징점을 상기 미리 설정된 패턴의 4개의 코너 점으로 대응하는 방법을 통하여 호모그래피를 연산하는 단계; 및
상기 연산된 호모그래피를 이용하여, 상기 제3 영상에 대한 도메인으로부터 상기 미리 설정된 패턴에 대한 도메인으로 상기 추출된 특징점을 이동시키는 단계
를 포함하는 기하 보정 방법.
3. The method of claim 2,
The step of moving the extracted feature points
Calculating homomorphisms of four corners of the third image through four corner points of the predetermined pattern; And
Moving the extracted feature point from the domain for the third image to the domain for the predetermined pattern using the computed homography
/ RTI >
제2항에 있어서,
상기 제3 영상에 대하여 베지어 변환을 적용하는 단계는
상기 이동된 특징점에 기반하여, 상기 설정된 2차 베지어 패치에 대한 제어점의 위치를 연산하는 단계; 및
상기 2차 베지어 패치 내의 모든 특징점에 대하여 상기 베지어 변환을 적용하는 단계
를 포함하는 기하 보정 방법.
3. The method of claim 2,
Wherein applying the Bezier transform to the third image comprises:
Calculating a position of a control point for the set secondary Bezier patch based on the moved minutiae; And
Applying the Bezier transform to all feature points in the secondary Bezier patch
/ RTI >
제5항에 있어서,
상기 베지어 변환을 회귀적으로 적용하여 상기 기하 보정을 수행하는 단계는
상기 분할된 2차 베지어 패치의 4개의 부분 패치 각각에 대한 제어점의 위치를 연산하는 단계; 및
상기 4개의 부분 패치 각각 안에 있는 모든 특정점에 대하여 상기 베지어 변환을 적용하는 단계
를 포함하는 기하 보정 방법.
6. The method of claim 5,
The step of applying the Bezier transformation recursively to perform the geometric correction comprises:
Calculating a position of a control point for each of the four partial patches of the divided secondary Bézier patch; And
Applying the Bezier transform to all the specific points within each of the four partial patches
/ RTI >
제6항에 있어서,
상기 4개의 부분 패치 각각 안에 있는 모든 특정점에 대하여 상기 베지어 변환을 적용하는 단계는
상기 분할 동작을 수행한 순서의 역순으로 상기 베지어 변환을 적용하는 단계인 기하 보정 방법.
The method according to claim 6,
Applying the Bezier transform to all the particular points within each of the four partial patches
And applying the Bezier transform in an order reverse to the order of performing the dividing operation.
제6항에 있어서,
상기 부분 패치에 대한 정보를 룩-업 테이블에 기록하는 단계
를 더 포함하는 기하 보정 방법.
The method according to claim 6,
Writing information on the partial patch to a look-up table
The geometric correction method further comprising:
제8항에 있어서,
상기 기하 보정을 수행하는 단계는,
상기 룩-업 테이블에 기초하여 컨텐츠의 매 프레임마다 OpenGL(Open Graphics Library)을 적용해 상기 프로젝터가 상기 투사 표면에 투사하는 컨텐츠가 상기 투사 표면에서 왜곡되지 않은 채 투사될 수 있도록 기하 보정을 수행하는 단계
를 더 포함하는 기하 보정 방법.
9. The method of claim 8,
Wherein the step of performing the geometric correction comprises:
(Open Graphics Library) is applied to every frame of the content on the basis of the look-up table so that the content projected on the projection surface by the projector can be projected without distortion on the projection surface step
The geometric correction method further comprising:
프로젝터가 투사 표면에 투사하는 검은 화면을 촬영한 제1 영상을 카메라로부터 수신하고, 상기 프로젝터가 상기 투사 표면에 투사하는 미리 설정된 패턴을 촬영한 제2 영상을 상기 카메라로부터 수신하는 수신부;
상기 제2 영상으로부터 상기 제1 영상을 빼서, 아티팩트가 제거된 제3 영상을 생성하는 생성부; 및
상기 미리 설정된 패턴과 상기 제3 영상 사이의 왜곡을 보정하기 위하여, 상기 미리 설정된 패턴에 대하여 기하 보정을 수행하는 처리부를 포함하고,
상기 처리부는,
상기 제3 영상 전체를 하나의 2차 베지어 패치로 설정하고 상기 2차 베지어 패치를 4개의 부분 패치로 분할하고, 상기 4개의 부분 패치 각각에 대한 제어점은 베지어 분할의 레벨에 기반하여 사각형 격자로 형성되는 기하 보정 장치.
A receiving unit that receives a first image of a black screen projected by a projector on a projection surface from a camera and receives a second image of the preset pattern projected by the projector on the projection surface from the camera;
A generator for subtracting the first image from the second image and generating a third image from which the artifact is removed; And
And a processor for performing a geometric correction on the predetermined pattern to correct a distortion between the preset pattern and the third image,
Wherein,
The entirety of the third image is set as one secondary Bézier patch, the secondary Bézier patch is divided into four partial patches, and the control points for each of the four partial patches are divided into a quadrangle A geometry correction device formed in a lattice.
KR1020140038594A 2014-04-01 2014-04-01 Geometric Correction Apparatus and Method based on Recursive Bezier Patch Sub-Division KR101409619B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140038594A KR101409619B1 (en) 2014-04-01 2014-04-01 Geometric Correction Apparatus and Method based on Recursive Bezier Patch Sub-Division

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140038594A KR101409619B1 (en) 2014-04-01 2014-04-01 Geometric Correction Apparatus and Method based on Recursive Bezier Patch Sub-Division

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR2020140001733 Division 2014-03-05

Publications (2)

Publication Number Publication Date
KR20140049997A KR20140049997A (en) 2014-04-28
KR101409619B1 true KR101409619B1 (en) 2014-07-02

Family

ID=50655349

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140038594A KR101409619B1 (en) 2014-04-01 2014-04-01 Geometric Correction Apparatus and Method based on Recursive Bezier Patch Sub-Division

Country Status (1)

Country Link
KR (1) KR101409619B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101588780B1 (en) * 2014-09-02 2016-01-26 재단법인 실감교류인체감응솔루션연구단 Method, appratus and computer-readable recording medium for detecting boundary of object in depth image
CN104376560B (en) * 2014-11-17 2024-04-09 国家电网公司 Multifunctional camera calibration method and device based on optical projector

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005151418A (en) 2003-11-19 2005-06-09 Nec Viewtechnology Ltd Projector
JP2012243307A (en) 2011-05-19 2012-12-10 Seiko Epson Corp Method for detecting strain in input image, device for detecting strain in input image and computer readable medium

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005151418A (en) 2003-11-19 2005-06-09 Nec Viewtechnology Ltd Projector
JP2012243307A (en) 2011-05-19 2012-12-10 Seiko Epson Corp Method for detecting strain in input image, device for detecting strain in input image and computer readable medium

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
IEEE논문1
IEEE논문2

Also Published As

Publication number Publication date
KR20140049997A (en) 2014-04-28

Similar Documents

Publication Publication Date Title
KR20130054868A (en) Geometric correction apparatus and method based on recursive bezier patch sub-division
US10728513B2 (en) Image processing apparatus, image processing method, and storage medium
US8586904B2 (en) Correction information calculator, image correction device, image display system, correction information calculation method
JP6914268B2 (en) Perspective correction for curved display screens
US9122946B2 (en) Systems, methods, and media for capturing scene images and depth geometry and generating a compensation image
JP6568223B2 (en) Projection device, projection method, and projection program
US20150077584A1 (en) Image processing system, image processing apparatus, and image processing method
JP6115214B2 (en) Pattern processing apparatus, pattern processing method, and pattern processing program
JP2018524896A (en) Method and apparatus for determining a depth map of an image
CN110996083A (en) Trapezoidal correction method and device, electronic equipment and readable storage medium
CN110971827B (en) Portrait mode shooting method and device, terminal equipment and storage medium
US10685474B2 (en) Method for repairing incomplete 3D depth image using 2D image information
JP2019220887A (en) Image processing system, image processing method, and program
KR101409619B1 (en) Geometric Correction Apparatus and Method based on Recursive Bezier Patch Sub-Division
US20100321408A1 (en) Viewpoint Compensation for Curved Display Surfaces in Projector-Based Display Systems
US9967528B2 (en) Image processing apparatus and image processing method
CN109587463A (en) Calibration method, projector and the calibration system of projector
US8274613B2 (en) Display masks for display and calibration in projector-based display systems
US9581439B1 (en) Image capture device with a calibration function and calibration method of an image capture device
US10229474B2 (en) Image processing apparatus, image processing method, and storage medium
JP5955003B2 (en) Image processing apparatus, image processing method, and program
JP2016072691A (en) Image processing system, control method of the same, and program
JP2004165944A (en) Method and device for projection information correction, program, and recording medium
Manevarthe et al. Geometric correction for projection on non planar surfaces using point clouds
US20160212395A1 (en) Method of determining an optimal point in three-dimensional space

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170529

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180529

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190527

Year of fee payment: 6