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 PDFInfo
- 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
Links
- 238000012937 correction Methods 0.000 title claims abstract description 84
- 238000000034 method Methods 0.000 title claims abstract description 59
- 230000009466 transformation Effects 0.000 claims description 18
- 238000001514 detection method Methods 0.000 claims description 5
- 238000000638 solvent extraction Methods 0.000 abstract 1
- 238000012545 processing Methods 0.000 description 25
- 238000010586 diagram Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 7
- 230000007613 environmental effect Effects 0.000 description 4
- 230000002950 deficient Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 1
- 238000007654 immersion Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001373 regressive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G06T5/80—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/203—Drawing of straight lines or curves
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/74—Projection arrangements for image reproduction, e.g. using eidophor
- H04N5/7408—Direct 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
본 발명의 실시예들은 기하 보정 장치 및 방법에 관한 것으로서, 보다 구체적으로는 회귀 베지어 패치 분할에 기반하는 기하 보정 장치 및 방법에 관한 것이다.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
따라서, 이러한 평평하지 않은 투사 표면에 투사되는 컨텐츠를 바로 보이게 하기 위한 기하 보정(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
이 때, 이고, 와 은 u 매개축(u parametric axis) 및 v 매개축(v parametric axis) 상의 베지어 곡선을 나타내며, 는 제어점들의 세트(set)를 나타낸다.At this time, ego, Wow Represents a Bezier curve on a u-parametric axis and v-parametric axis, 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
한편, 이와 같이 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
제어점들의 위치는 수식 2와 같은 방법을 통하여 추정될 수 있다The position of the control points can be estimated through the same method as in Equation 2
수식 2Equation 2
이 때, 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
한편, 가장자리 제어점 P1(312)은 P0(311)과 P2(313)의 중간에 위치하기 때문에, 수식 2에서 t값은 0.5이 되고, B(t)는 P1(312)에 대응하는 가장자리 데이터 점의 위치가 될 수 있다.On the other hand, since the edge
마찬가지로, 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
고차원의 왜곡을 갖는 표면일 경우, 표면에 대한 매핑(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
제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
프로젝터(projector)(520)는 표면 경계 영역(surface boundary) 내에서 투사 표면(510) 앞에 임의로 놓일 수 있다. 실시예에 따라서는, 프로젝터(520)는 복수 개 설치되어 멀티 프로젝터(Multi Projector)로 제공될 수 있다. 즉, 본 발명의 일실시예에 따른 기하 보정 방법은 멀티 프로젝터 환경에서도 동일하게 적용될 수 있다.A
또한, 카메라(530)는 투사 표면(510)의 모든 영역을 포함할 수 있는 위치에 놓일 수 있다.In addition, the
상술한 것과 같이 카메라(530) 및 프로젝터(520)가 세팅되면, 프로젝터(520)는 검은 화면을 투사 표면(510)에 투사할 수 있다. 이 때, 카메라(530)는 프로젝터(520)가 투사 표면(510)에 투사하는 검은 화면을 촬영할 수 있고, 검은 화면을 촬영한 제1 영상(531)을 기하 보정 장치로 전송할 수 있다. 또한, 기하 보정 방법은 카메라(530)로부터 제1 영상(531)을 수신할 수 있다(501). When the
검은 화면을 촬영한 제1 영상(531)은 환경적 영향, 표면 영향 및 카메라 영향을 제거하는데 이용될 수 있다. 이 때, 예를 들어, 환경적 영향은 또 다른 광원에 의한 주변 빛 등이 될 수 있다. 또한, 표면 영향은 특징점 검출 실패를 야기할 수 있는 투사 표면(510) 상의 검은 점 등이 될 수 있다. 또한, 카메라 영향은 색조 퍼짐 및 불량 픽셀 등이 될 수 있다. The
검은 화면에 대한 제1 영상(531)의 수신이 완료되면, 프로젝터(520)는 미리 설정된 패턴(pattern)을 투사 표면(510)으로 투사할 수 있다. 일실시예에 따른 미리 설정된 패턴은 점(point)으로 이루어진 사각형 격자일 수 있다. 이 때, 사각형 격자를 형성하는 점의 개수는 베지어 분할의 레벨에 기반하여 선택될 수 있다. When the reception of the
카메라(530)는 프로젝터(520)가 투사 표면(510)에 투사하는 미리 설정된 패턴을 촬영할 수 있고, 미리 설정된 패턴을 촬영한 제2 영상(532)을 기하 보정 장치로 전송할 수 있다. 기하 보정 방법은 카메라(530)로부터 제2 영상(532)을 수신할 수 있다(502).
The
제1 영상(531) 및 제2 영상(532)을 카메라(530)로부터 수신하면, 기하 보정 방법은 제2 영상(532)으로부터 제1 영상(531)을 빼는(subtract) 동작을 수행함으로써, 원하지 않은 아티팩트(unwanted artifacts)가 제거된 제3 영상(533)을 생성할 수 있다(503).When the
기하 보정 방법은 미리 설정된 패턴과 제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
도 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
수신부(810)는 카메라로부터 제1 영상을 수신할 수 있다. The receiving
검은 화면을 촬영한 제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
제1 영상 및 제2 영상을 카메라로부터 수신하면, 생성부(820)는 제2 영상으로부터 제1 영상을 빼는(subtract) 동작을 수행함으로써, 원하지 않은 아티팩트(unwanted artifacts)가 제거된 제3 영상을 생성할 수 있다.Upon receiving the first image and the second image from the camera, the generating
또한, 처리부(830)는 미리 설정된 패턴과 제3 영상 사이의 왜곡을 보정하기 위하여, 미리 설정된 패턴에 대하여 기하 보정을 수행할 수 있다.
In addition, the
이하, 처리부(830)가 왜곡을 보정하기 위하여 미리 설정된 패턴에 대하여 기하 보정을 수행하는 동작에 대해서 상세히 설명한다.Hereinafter, the operation of the
처리부(830)는 기하 보정을 수행하기 위하여 제3 영상으로부터 특징점(feature points)을 추출할 수 있다. 실시예에 따라서는, 처리부(830)는 해리스 코너 검출법(Harris corner detection)을 이용하여 제3 영상으로부터 특징점을 추출할 수 있다.The
또한, 처리부(830)는 카메라를 통하여 촬영된 제3 영상에 대한 도메인(Domain)으로부터 프로젝터를 통하여 투사된 미리 설정된 패턴에 대한 도메인으로 추출된 특징점을 이동시킬 수 있다. In addition, the
자세히 설명하면, 처리부(830)는 카메라를 통하여 촬영된 제3 영상을 프로젝터를 통하여 투사된 미리 설정된 패턴과 연관(relate)시킬 수 있다. 즉, 투사 표면의 형상으로 인하여, 미리 설정된 패턴과 제3 영상 사이에는 왜곡이 발생하였기 때문에, 처리부(830)가 두 영상을 서로 연관시키는 동작을 수행하는 것이 요구된다. In detail, the
예를 들어, 프로젝터가 투사하는 미리 설정된 패턴은 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
또한, 호모그라피가 연산되면, 처리부(830)는 연산된 호모그라피를 이용하여 제3 영상에 대한 도메인으로부터 미리 설정된 패턴에 대한 도메인으로 추출된 특징점을 이동시킬 수 있다. 즉, 처리부(830)는 호모그라피를 이용하여 제3 영상에 대하여 추출된 모든 특징점을 미리 설정된 패턴에 대한 도메인으로 이동시킬 수 있다.
In addition, when the homography is calculated, the
특징점이 모두 이동되면, 처리부(830)는 이동된 특징점에 기반하여 제3 영상에 대하여 베지어 변환을 적용할 수 있다. 또한, 처리부(830)는 베지어 변환을 회귀적으로 적용하여 기하 보정을 수행할 수 있다.
When all of the minutiae are moved, the
본 발명의 일측에 따른 처리부(830)는 제3 영상에 대하여 베지어 변환을 적용하기 위하여, 제3 영상 전체를 하나의 2차 베지어 패치(single second order Bezier patch)로 설정할 수 있다. 이 때, 2차 베지어 패치는 4개의 코너 제어점(corner control point)으로 동작하는 4개의 코너 특징점을 포함할 수 있다.The
처리부(830)는 이동된 특징점에 기반하여, 2차 베지어 패치에 대한 제어점의 위치를 연산할 수 있다. 실시예에 따라서는, 처리부(830)는 2차 베지어 패치에 대한 코너 제어점의 위치를 우선 연산하고, 연산된 코너 제어점의 위치에 기반하여 가장자리 제어점(edge control point) 및 중심 제어점(center control point)의 위치를 각각 연산할 수 있다. The
제어점들의 위치가 모두 연산되면, 2차원 표면(quadric surface)에 의한 왜곡(2차 왜곡, 2nd degree distortion)을 보정하기 위하여, 처리부(830)는 2차 베지어 패치 내의 모든 특징점에 대하여 베지어 변환(Bezier transformation)을 적용할 수 있다.
When all of the positions of the control points are calculated, the
또한, 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
본 발명의 일측에 따르면, 처리부(830)는 투사 표면의 작은 부분에 대해서도 분할 동작을 회귀적으로 수행할 수 있고, 따라서, 분할 레벨은 증가될 수 있다. According to one aspect of the present invention, the
또한, 부분 패치 안의 모든 특징점에 대하여 베지어 변환을 적용할 때, 처리부(830)는 분할 동작을 수행한 순서의 역순으로 베지어 변환을 적용할 수 있다. 예를 들어, 처리부(830)는 가장 높은 분할 레벨을 갖는 부분 패치에 대하여 베지어 변환을 가장 먼저 적용하고, 그 다음 분할 레벨부터 가장 낮은 분할 레벨까지 순차적으로 베지어 변환을 적용할 수 있다.
Also, when applying Bezier transform to all the feature points in the partial patch, the
본 발명의 일측에 따르면, 처리부(830)는 베지어 적용을 회귀적으로 적용하는 동작을 수행하면서, 부분 패치에 대한 정보를 룩-업 테이블에 기록할 수 있다. 이렇게 기록된 룩-업 테이블은 런 타임 어플리케이션(run time application)을 실행하는데 이용될 수 있다. According to one aspect of the present invention, the
즉, 일실시예에 따른 처리부(830)는 프로젝터가 투사 표면에 투사하는 컨텐츠가 투사 표면에서 왜곡되지 않은 채 투사될 수 있도록, 룩-업 테이블을 이용하여 컨텐츠의 매 프레임(frame)을 뒤트는(warp) OpenGL(Open Graphics Library)을 이용하여 런 타임 어플리케이션(run time application)을 실행할 수 있다.
In other words, the
본 발명에 따른 실시예들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(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)
상기 프로젝터가 상기 투사 표면에 투사하는 미리 설정된 패턴을 촬영한 제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 >
상기 기하 보정을 수행하는 단계는
상기 제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 >
상기 특징점을 추출하는 단계는
해리스 코너 검출법(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.
상기 추출된 특징점을 이동시키는 단계는
상기 제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 >
상기 제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 >
상기 베지어 변환을 회귀적으로 적용하여 상기 기하 보정을 수행하는 단계는
상기 분할된 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 >
상기 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.
상기 부분 패치에 대한 정보를 룩-업 테이블에 기록하는 단계
를 더 포함하는 기하 보정 방법.The method according to claim 6,
Writing information on the partial patch to a look-up table
The geometric correction method further comprising:
상기 기하 보정을 수행하는 단계는,
상기 룩-업 테이블에 기초하여 컨텐츠의 매 프레임마다 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:
상기 제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.
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)
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)
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 |
-
2014
- 2014-04-01 KR KR1020140038594A patent/KR101409619B1/en active IP Right Grant
Patent Citations (2)
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)
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 |