KR102093622B1 - Method and apparatus for real-time correction of projector image using depth camera - Google Patents
Method and apparatus for real-time correction of projector image using depth camera Download PDFInfo
- Publication number
- KR102093622B1 KR102093622B1 KR1020180076532A KR20180076532A KR102093622B1 KR 102093622 B1 KR102093622 B1 KR 102093622B1 KR 1020180076532 A KR1020180076532 A KR 1020180076532A KR 20180076532 A KR20180076532 A KR 20180076532A KR 102093622 B1 KR102093622 B1 KR 102093622B1
- Authority
- KR
- South Korea
- Prior art keywords
- image
- coordinate system
- user
- projector
- pixel
- Prior art date
Links
- 238000012937 correction Methods 0.000 title claims abstract description 121
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000003702 image correction Methods 0.000 claims abstract description 45
- 239000011159 matrix material Substances 0.000 claims abstract description 31
- 230000009466 transformation Effects 0.000 claims abstract description 30
- 238000006243 chemical reaction Methods 0.000 claims description 18
- 238000001514 detection method Methods 0.000 claims description 5
- 238000013507 mapping Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000005259 measurement Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- BQCADISMDOOEFD-UHFFFAOYSA-N Silver Chemical compound [Ag] BQCADISMDOOEFD-UHFFFAOYSA-N 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012067 mathematical method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 229910052709 silver Inorganic materials 0.000 description 1
- 239000004332 silver Substances 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/12—Picture reproducers
- H04N9/31—Projection devices for colour picture display, e.g. using electronic spatial light modulators [ESLM]
- H04N9/3179—Video signal processing therefor
- H04N9/3185—Geometric adjustment, e.g. keystone or convergence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4015—Image demosaicing, e.g. colour filter arrays [CFA] or Bayer patterns
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Geometry (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Transforming Electric Information Into Light Information (AREA)
- Projection Apparatus (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
본 발명은 실시간 프로젝터 영상 보정 방법 및 장치에 관한 것이다. 본 발명은 실시간 프로젝터 영상 보정 방법에 있어서, 프로젝터를 통해 투사되는 이미지에 포함된 특정 지점의 이미지 좌표와 깊이 카메라를 이용하여 획득한 상기 특정 지점의 3차원 좌표를 이용하여 깊이 카메라 좌표계의 3차원 위치 정보와 프로젝터 좌표계의 3차원 위치 정보 간 상관 관계를 나타내는 캘리브레이션 변환 계수를 산출하는 단계, 상기 캘리브레이션 변환 계수를 이용하여 상기 깊이 카메라로부터 획득한 깊이 영상의 3차원 좌표를 정규화된 이미지 좌표로 변환하는 단계, 상기 정규화된 이미지 좌표가 이미지 크기 범위에 포함되면, 해당 좌표를 투사 예측 영역으로 설정하는 단계, 상기 투사 예측 영역의 외곽 픽셀을 검출하는 단계, 상기 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 계산하는 단계, 상기 캘리브레이션 변환 계수를 이용하여 도출한 깊이-프로젝터 좌표계 변환 행렬을 이용하여 상기 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 프로젝터 좌표계 3차원 좌표로 변환하는 단계, 프로젝터 좌표계의 3차원 위치 정보를 사용자 위치를 기준으로 하는 사용자 좌표계의 3차원 위치 정보로 변환하는 프로젝터-사용자 좌표계 변환 행렬을 이용하여 상기 외곽 픽셀의 프로젝터 좌표계 3차원 좌표를 사용자 좌표계 3차원 좌표로 변환하는 단계, 상기 외곽 픽셀의 사용자 좌표계 3차원 좌표를 사용자 위치에 따라 투사하여 2차원의 사용자 시점 보정 영역을 검출하는 단계, 상기 프로젝터가 투사하는 투사 영상에서 상기 사용자 시점 보정 영역에 속하는 픽셀을 보정하는 단계를 포함하는 것을 일 특징으로 한다. 본 발명에 의하면, 투사면이 계속 변화하는 경우에도 왜곡 없이 투사 영상을 실시간으로 보정할 수 있다. The present invention relates to a method and apparatus for real-time projector image correction. In the present invention, in a real-time projector image correction method, a three-dimensional position of a depth camera coordinate system using image coordinates of a specific point included in an image projected through a projector and three-dimensional coordinates of the specific point obtained using a depth camera Calculating a calibration transform coefficient indicating a correlation between information and 3D position information of the projector coordinate system, and converting the 3D coordinates of the depth image obtained from the depth camera into normalized image coordinates using the calibration transform coefficient , If the normalized image coordinates are included in the image size range, setting the coordinates as a projection prediction area, detecting an outer pixel of the projection prediction area, and calculating the depth camera coordinate system 3D coordinates of the outer pixel Step, the calibration conversion factor Converting the 3D coordinates of the depth camera coordinate system of the outer pixel into the 3D coordinates of the projector coordinate system using the depth-projector coordinate system transformation matrix derived by using the 3D coordinate information of the projector coordinate system based on the user's position Converting the projector coordinate system 3D coordinates of the outer pixel into a user coordinate system 3D coordinate using a projector-user coordinate system transformation matrix that converts the 3D position information into 3D coordinates of the user pixel, and converting the user coordinate system 3D coordinates of the outer pixel according to the user position. And projecting to detect a two-dimensional user viewpoint correction area, and correcting a pixel belonging to the user viewpoint correction area in a projection image projected by the projector. According to the present invention, the projection image can be corrected in real time without distortion even when the projection surface is continuously changing.
Description
본 발명은 실시간 프로젝터 영상 보정 방법 및 장치에 관한 것으로, 보다 자세하게는 깊이 카메라를 이용하여 프로젝터 영상의 투사 시 왜곡될 형태를 예측하고, 예측된 왜곡과 사용자 시점을 바탕으로 투사 영상을 실시간으로 보정하여 출력할 수 있는 방법 및 장치에 관한 것이다. The present invention relates to a real-time projector image correction method and apparatus, and more specifically, to predict a shape to be distorted when projecting a projector image using a depth camera, and to correct a projected image in real time based on the predicted distortion and the user's viewpoint. It relates to a method and apparatus that can be output.
홈시어터 구축 및 프레젠테이션 환경 구축을 위한 대형 화면에의 요구, 프로젝터의 가격 하락 등으로 프로젝터의 보급과 사용이 증가하고 있다. 프로젝터는 전통적인 3관식 빔 프로젝터에서 색 재현성이 좋은 LCD(Liquid Crystal Display), DLP(Digital Light Processing) 방식으로 발전하고 있다. 프로젝터의 성능 향상을 위한 기술 개발의 결과로 밝고 선명한 안시(ANSI lumens), 고 대비(High Contrast), 고 해상도 프로젝터가 개발되었고, 최근에는 공간을 절약할 수 있는 단초점 프로젝터, 배터리를 내장한 휴대용 소형 프로젝터도 개발되어 활발하게 보급되고 있다. The distribution and use of projectors are increasing due to the demand for a large screen for the construction of a home theater and a presentation environment, and the falling price of the projector. The projector is evolving from a traditional three-tube beam projector to a liquid crystal display (LCD) and digital light processing (DLP) method with good color reproducibility. As a result of the development of technology to improve the performance of the projector, bright and clear ANSI lumens, high contrast, and high resolution projectors have been developed. Recently, a short-focus projector that saves space and a portable battery built-in battery Small projectors have also been developed and are actively spreading.
프로젝터는 텔레비전과 같은 영상 장치에 비해 화면 크기 대비 가격이 저렴하다는 장점이 있다. 그러나 설치한 프로젝터가 스크린과 수직을 이루지 않는 경우 뒤틀림(keystoning)이 발생하고 스크린의 비 평면 상태에 따라 스크린의 왜곡이 발생하는 문제점이 있다. The projector has the advantage of being cheaper than the screen size compared to a video device such as a television. However, if the installed projector is not perpendicular to the screen, there is a problem in that distortion occurs on the screen according to the non-planar state of the screen.
과거 고가의 프로젝터는 별도의 평면 스크린과 같이 사용되는 것이 일반적이었으며, 프로젝터의 위치가 고정되어 있었기 때문에 비평면 스크린에 따른 왜곡이 거의 존재하지 않았다. 따라서 사용자는 설치 시에만 뒤틀림(keystoning)을 조절하면 왜곡 없는 화면을 이용할 수 있었다. In the past, it was common for expensive projectors to be used as separate flat screens, and because the position of the projectors was fixed, there was little distortion caused by non-planar screens. Therefore, the user could use a distortion-free screen by adjusting the keystoning only during installation.
하지만 최근에는 별도의 평면 스크린 없이 벽면 같은 유사 평면을 스크린으로 사용하는 경우가 많아지고 있으며, 프로젝터가 소형화되고 휴대성이 개선되면서 평면이 아닌 곳을 스크린으로 사용하는 경우도 많아지고 있다. 이러한 환경에서 발생하는 비 평면 스크린 왜곡은 기존의 수동 뒤틀림(keystoning) 보정 방법으로는 보정이 매우 어렵기 때문에 스크린에 따른 투사 영상 왜곡을 보정하기 위한 많은 연구들이 진행되고 있다. However, in recent years, a similar plane such as a wall surface is often used as a screen without a separate flat screen, and as the projector is miniaturized and portability is improved, a non-planar screen is often used as a screen. Since non-planar screen distortion occurring in such an environment is very difficult to correct using a conventional manual keystoning correction method, many studies have been conducted to correct the projection image distortion according to the screen.
비 평면 스크린에 따른 투사 영상 왜곡 보정의 대표적인 방법으로는 보정 패턴을 이용하는 방법이 있다. 이 방법은 보정을 위한 특정 패턴(스프라이트 패턴, 물방울 패턴 등)을 프로젝터를 이용해서 투사 시키고 실제 왜곡된 영상을 카메라로부터 입력 받아 왜곡된 패턴을 분석한다. 그리고 분석된 패턴에 따라서 스크린의 왜곡을 판단하며, 분석된 패턴에 따른 보정 영상을 생성하여 보정을 수행한다. 이러한 방법은 비교적 가격이 저렴한 일반 카메라와 프로젝터 영상을 이용해서 보정을 수행할 수 있다는 장점이 있다. As a typical method of correcting a projected image distortion according to a non-flat screen, there is a method using a correction pattern. This method projects a specific pattern for correction (sprite pattern, droplet pattern, etc.) using a projector and analyzes the distorted pattern by receiving the actual distorted image from the camera. Then, the distortion of the screen is determined according to the analyzed pattern, and a correction image according to the analyzed pattern is generated to perform correction. This method has an advantage in that calibration can be performed using a relatively inexpensive general camera and projector image.
그러나 보정 패턴과 카메라를 이용하는 방법은 보정을 수행할 때 프로젝터를 사용할 수 없고, 따라서 투사 면이 계속 변화하는 상황에서 실시간으로 프로젝터 영상 보정을 수행할 수 없다는 문제점이 있다. 예를 들어 투사 면이 확실하게 고정되지 않고 흔들리거나 뒤틀리기 쉬운 상황, 사람이 많이 지나다녀 투사 면과 사람이 자주 겹치는 상황, 투사하는 투사 면 스크린의 형태가 계속 바뀌는 상황(프로젝터를 이용한 소환 현실)에서는 기존의 보정 패턴을 이용한 방법을 사용하기가 어렵다. 따라서 투사 면이 계속 변화하여 스크린의 형태가 계속 바뀌는 경우에도 왜곡 없이 투사 영상을 시청할 수 있는 새로운 방법이 요구된다. However, the method using the correction pattern and the camera has a problem that the projector cannot be used when performing the correction, and therefore the projector image correction cannot be performed in real time in a situation where the projection surface is constantly changing. For example, a situation where the projection surface is not securely fixed and is easily shaken or distorted, a situation where the projection surface and the person frequently overlap due to a lot of people passing through, and the shape of the projecting projection screen is constantly changing (recall reality using the projector) It is difficult to use the method using the existing correction pattern. Therefore, a new method for viewing a projected image without distortion is required even when the shape of the screen is constantly changing due to the constantly changing projection surface.
본 발명은 전술한 문제점을 해결하기 위한 것으로서, 투사면이 계속 변화하는 경우에도 왜곡 없이 투사 영상을 실시간으로 보정할 수 있는 실시간 프로젝터 영상 보정 방법을 제공하는 것을 일 목적으로 한다. An object of the present invention is to provide a real-time projector image correction method capable of correcting a projected image in real time without distortion even when the projection surface is continuously changing, in order to solve the aforementioned problems.
또한 본 발명은 재귀 가우시안 가중치 보간법을 사용하여 투사 영상의 3차원 좌표를 빠르게 획득함으로써 처리 시간을 크게 단축시키는 것을 다른 목적으로 한다. Another object of the present invention is to significantly reduce processing time by rapidly acquiring three-dimensional coordinates of a projected image using a recursive Gaussian weight interpolation method.
또한 본 발명은 사용자 시점의 보정 영역을 검출하고 해당 영역만으로 보정함으로써 빠르게 보정 영상을 생성하는 것을 다른 목적으로 한다. In addition, another object of the present invention is to quickly generate a correction image by detecting a correction area at a user's point of view and correcting only the corresponding area.
또한 본 발명은 깊이 카메라를 이용하여 프로젝터 영상의 보정의 정확도 및 적용 속도를 높이는 것을 다른 목적으로 한다. In addition, another object of the present invention is to increase the accuracy and application speed of the correction of the projector image using a depth camera.
본 발명은 실시간 프로젝터 영상 보정 방법에 있어서, 프로젝터를 통해 투사되는 이미지에 포함된 특정 지점의 이미지 좌표와 깊이 카메라를 이용하여 획득한 상기 특정 지점의 3차원 좌표를 이용하여 깊이 카메라 좌표계의 3차원 위치 정보와 프로젝터 좌표계의 3차원 위치 정보 간 상관 관계를 나타내는 캘리브레이션 변환 계수를 산출하는 단계, 상기 캘리브레이션 변환 계수를 이용하여 상기 깊이 카메라로부터 획득한 깊이 영상의 3차원 좌표를 정규화된 이미지 좌표로 변환하는 단계, 상기 정규화된 이미지 좌표가 이미지 크기 범위에 포함되면, 해당 좌표를 투사 예측 영역으로 설정하는 단계, 상기 투사 예측 영역의 외곽 픽셀을 검출하는 단계, 상기 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 계산하는 단계, 상기 캘리브레이션 변환 계수를 이용하여 도출한 깊이-프로젝터 좌표계 변환 행렬을 이용하여 상기 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 프로젝터 좌표계 3차원 좌표로 변환하는 단계, 프로젝터 좌표계의 3차원 위치 정보를 사용자 위치를 기준으로 하는 사용자 좌표계의 3차원 위치 정보로 변환하는 프로젝터-사용자 좌표계 변환 행렬을 이용하여 상기 외곽 픽셀의 프로젝터 좌표계 3차원 좌표를 사용자 좌표계 3차원 좌표로 변환하는 단계, 상기 외곽 픽셀의 사용자 좌표계 3차원 좌표를 사용자 위치에 따라 투사하여 2차원의 사용자 시점 보정 영역을 검출하는 단계, 상기 프로젝터가 투사하는 투사 영상에서 상기 사용자 시점 보정 영역에 속하는 픽셀을 보정하는 단계를 포함하는 것을 일 특징으로 한다. In the present invention, in a real-time projector image correction method, a three-dimensional position of a depth camera coordinate system using image coordinates of a specific point included in an image projected through a projector and three-dimensional coordinates of the specific point obtained using a depth camera Calculating a calibration transform coefficient indicating a correlation between information and 3D position information of the projector coordinate system, and converting the 3D coordinates of the depth image obtained from the depth camera into normalized image coordinates using the calibration transform coefficient , If the normalized image coordinates are included in the image size range, setting the coordinates as a projection prediction area, detecting an outer pixel of the projection prediction area, and calculating the depth
또한 본 발명은 실시간 프로젝터 영상 보정 장치에 있어서, 프로젝터를 통해 투사되는 투사 영상에 포함된 특정 지점의 좌표와 깊이 카메라를 이용하여 획득한 상기 특정 지점의 3차원 좌표를 이용하여 깊이 카메라 좌표계의 3차원 위치 정보와 프로젝터 좌표계의 3차원 위치 정보 간 상관 관계를 나타내는 캘리브레이션 변환 계수를 산출하는 캘리브레이션부, 상기 캘리브레이션 변환 계수를 이용하여 상기 깊이 카메라로부터 획득한 깊이 영상의 3차원 좌표를 정규화된 이미지 좌표로 변환하고, 상기 정규화된 이미지 좌표가 투사 영상 크기 범위에 포함되면 해당 좌표를 투사 예측 영역으로 설정하는 투사 영역 예측부, 상기 투사 예측 영역을 이용하여 사용자의 위치를 기준으로 사용자 시점의 보정 영역을 예측하는 보정 영역 예측부, 상기 프로젝터가 투사하는 투사 영상에서 상기 사용자 시점 보정 영역에 속하는 픽셀을 보정하는 영상 보정부를 포함하며, 상기 보정 영역 예측부는 상기 투사 예측 영역의 외곽 픽셀을 검출하는 외곽 픽셀 검출부, 상기 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 계산하고, 상기 캘리브레이션 변환 계수를 이용하여 도출한 깊이-프로젝터 좌표계 변환 행렬을 이용하여 상기 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 프로젝터 좌표계 3차원 좌표로 변환하는 제1 좌표계 변환부, 프로젝터 좌표계의 3차원 위치 정보를 사용자 위치를 기준으로 하는 사용자 좌표계의 3차원 위치 정보로 변환하는 프로젝터-사용자 좌표계 변환 매트릭스를 이용하여 상기 외곽 픽셀의 프로젝터 좌표계 3차원 좌표를 사용자 좌표계 3차원 좌표로 변환하는 제2 좌표계 변환부, 상기 외곽 픽셀의 사용자 좌표계 3차원 좌표를 사용자 위치에 따라 투사하여 2차원의 사용자 시점 보정 영역을 검출하는 보정 영역 검출부를 포함하는 것을 다른 특징으로 한다. In addition, in the real-time projector image correction apparatus, the present invention provides a three-dimensional depth camera coordinate system using the coordinates of a specific point included in the projected image projected through the projector and the three-dimensional coordinates of the specific point obtained using a depth camera. A calibration unit that calculates a calibration conversion coefficient indicating a correlation between the position information and the 3D position information of the projector coordinate system, and converts the 3D coordinates of the depth image obtained from the depth camera into normalized image coordinates using the calibration conversion coefficient And, when the normalized image coordinates are included in the projection image size range, a projection area prediction unit that sets the coordinates as a projection prediction area, and predicts a correction area of a user's viewpoint based on the user's position using the projection prediction area Correction area prediction unit, the projector An image correcting unit for correcting a pixel belonging to the user's viewpoint correction region in a projected projected image, the correction region predicting unit detecting an outer pixel of the projection predicting region, an outer pixel detecting unit, a depth of the outer pixel
전술한 바와 같은 본 발명에 의하면, 투사면이 계속 변화하는 경우에도 왜곡 없이 투사 영상을 실시간으로 보정할 수 있다. According to the present invention as described above, the projection image can be corrected in real time without distortion even when the projection surface continuously changes.
또한 본 발명에 의하면, 재귀 가우시안 가중치 보간법을 사용하여 투사 영상의 3차원 좌표를 빠르게 획득함으로써 종래 대비 처리 시간이 크게 단축되는 효과가 있다. In addition, according to the present invention, by using the recursive Gaussian weight interpolation method, the 3D coordinates of the projected image are rapidly obtained, thereby significantly reducing the processing time compared to the conventional method.
또한 본 발명에 의하면 사용자 시점의 보정 영역을 검출하고 해당 영역만으로 보정하게되어, 빠르게 보정 영상을 생성할 수 있다. In addition, according to the present invention, a correction region at a user's viewpoint is detected and corrected only with the corresponding region, so that a correction image can be quickly generated.
또한 본 발명에 의하면 깊이 카메라를 이용하여 프로젝터 영상의 보정의 정확도 및 적용 속도를 높일 수 있다. In addition, according to the present invention, it is possible to increase the accuracy and application speed of the correction of the projector image by using the depth camera.
도 1은 본 발명의 일 실시 예에 따른 실시간 프로젝터 영상 보정 시스템을 도시한 도면,
도 2는 본 발명의 일 실시 예에 따른 실시간 프로젝터 영상 보정 장치의 구성을 설명하기 위한 블록도,
도 3은 본 발명의 일 실시 예에 따른 보정 영역 예측부 구성을 설명하기 위한 블록도,
도 4는 본 발명의 일 실시 예에 따른 깊이 카메라 좌표계 및 프로젝터 좌표계를 설명하기 위한 도면,
도 5는 본 발명의 일 실시 예에 따른 캘리브레이션부의 동작을 설명하기 위한 도면,
도 6은 본 발명의 일 실시 예에 따른 투사 영역 예측부의 동작을 설명하기 위한 도면,
도 7은 본 발명의 일 실시 예에 따른 사용자 시점의 실시간 투사 보정 방법의 전체적인 과정을 도시한 도면,
도 8은 본 발명의 일 실시 예에 따른 희소 투사 깊이 영상의 생성 예를 도시한 도면,
도 9는 본 발명의 일 실시 예에 따른 보간 투사 깊이 영상 생성 방법을 도시한 도면,
도 10은 본 발명의 일 실시 예에 따른 실시간 프로젝터 영상 보정 방법을 설명하기 위한 순서도,
도 11은 본 발명의 일 실시 예에 따른 보정 영역 보정 방법을 설명하기 위한 순서도,
도 12는 본 발명의 일 실시 예에 따른 보간 투사 깊이 영상 생성 방법을 설명하기 위한 순서도,
도 13은 본 발명의 일 실시 예에 따른 픽셀 보정 방법을 설명하기 위한 순서도이다. 1 is a view showing a real-time projector image correction system according to an embodiment of the present invention,
Figure 2 is a block diagram for explaining the configuration of a real-time projector image correction apparatus according to an embodiment of the present invention,
3 is a block diagram for explaining a configuration of a correction region prediction unit according to an embodiment of the present invention;
4 is a view for explaining a depth camera coordinate system and a projector coordinate system according to an embodiment of the present invention;
5 is a view for explaining the operation of the calibration unit according to an embodiment of the present invention,
6 is a view for explaining the operation of the projection area prediction unit according to an embodiment of the present invention,
7 is a view showing the overall process of a real-time projection correction method at the user's point of view according to an embodiment of the present invention,
8 is a diagram illustrating an example of generating a rare projection depth image according to an embodiment of the present invention;
9 is a diagram illustrating a method for generating an interpolation projection depth image according to an embodiment of the present invention,
10 is a flowchart illustrating a real-time projector image correction method according to an embodiment of the present invention,
11 is a flow chart for explaining a correction area correction method according to an embodiment of the present invention,
12 is a flowchart illustrating a method for generating an interpolation projection depth image according to an embodiment of the present invention,
13 is a flowchart illustrating a pixel correction method according to an embodiment of the present invention.
전술한 목적, 특징 및 장점은 첨부된 도면을 참조하여 상세하게 후술되며, 이에 따라 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 상세한 설명을 생략한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시 예를 상세히 설명하기로 한다. 도면에서 동일한 참조부호는 동일 또는 유사한 구성요소를 가리키는 것으로 사용되며, 명세서 및 특허청구의 범위에 기재된 모든 조합은 임의의 방식으로 조합될 수 있다. 그리고 다른 식으로 규정하지 않는 한, 단수에 대한 언급은 하나 이상을 포함할 수 있고, 단수 표현에 대한 언급은 또한 복수 표현을 포함할 수 있음이 이해되어야 한다. The above-described objects, features, and advantages will be described in detail below with reference to the accompanying drawings, and accordingly, a person skilled in the art to which the present invention pertains can easily implement the technical spirit of the present invention. In the description of the present invention, when it is determined that detailed descriptions of known technologies related to the present invention may unnecessarily obscure the subject matter of the present invention, detailed descriptions will be omitted. Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. The same reference numbers in the drawings are used to indicate the same or similar elements, and all combinations described in the specification and claims can be combined in any way. And it should be understood that unless otherwise specified, a reference to a singular may include one or more, and a reference to a singular expression may also include a plural expression.
도 1은 본 발명의 일 실시 예에 따른 실시간 프로젝터 영상 보정 시스템(10)(이하, '영상 보정 시스템(10)'이라 함)을 설명하기 위한 블록도이다. 영상 보정 시스템(10)은 깊이 카메라(50), 실시간 프로젝터 영상 보정 장치(100)(이하, '영상 보정 장치(100)'라 함), 프로젝터(200)를 포함할 수 있으며, 영상 보정 장치(100)는 프로젝터(200)에 물리적으로 포함되어 기능을 수행할 수 있으며, 프로젝터(200)와는 별도의 장치로 깊이 카메라(50) 및 프로젝터(200)와 연결되어 동작할 수 있다. 1 is a block diagram illustrating a real-time projector image correction system 10 (hereinafter referred to as 'image correction system 10') according to an embodiment of the present invention. The
영상 보정 장치(100)는 깊이 카메라(50)에 깊이 영상 획득을 위한 제어신호를 전송할 수 있으며, 깊이 카메라(50)로부터 깊이 영상을 획득할 수 있다. 또한, 영상 보정 장치(100)는 프로젝터를 통해 투사되는 투사 영상을 실시간으로 보정하고, 보정된 투사 영상을 프로젝터(200)에 제공함으로써, 프로젝터(200)가 보정된 투사 영상을 투사하도록 할 수 있다. The
도 2는 본 발명의 일 실시 예에 따른 실시간 프로젝터 영상 보정 장치(100)의 구성을 설명하기 위한 블록도이다. 도 2를 참조하면, 본 발명의 일 실시 예에 따른 영상 보정 장치(100)는 캘리브레이션부(130), 투사 영역 예측부(150), 보정 영역 예측부(170), 영상 보정부(190)를 포함할 수 있다. 2 is a block diagram illustrating a configuration of a real-time projector
캘리브레이션부(130)는 프로젝터를 통해 투사되는 투사 영상에 포함된 특정 지점의 좌표와 깊이 카메라를 이용하여 획득한 특정 지점의 3차원 좌표를 이용하여 깊이 카메라 좌표계의 3차원 위치 정보와 프로젝터 좌표계의 3차원 위치 정보 간 상관 관계를 나타내는 캘리브레이션 변환 계수를 산출할 수 있다. 또한 캘리브레이션 변환 계수를 이용하여 깊이-프로젝터 좌표계 변환 행렬을 도출할 수 있다. 깊이-프로젝터 좌표계 변환 행렬은 깊이 카메라 좌표계를 프로젝터 좌표계로 변환하는 변환 행렬을 의미한다.The
이는 투사 영역 예측부(150)에서 이루어지는 불규칙한 투사 영역의 예측 정확도를 높이기 위한 것으로, 캘리브레이션부(130)는 깊이 카메라(50) 프로젝터(200) 간의 상대적인 위치 관계를 수학적으로 계산함으로써 캘리브레이션을 수행한다. This is to increase the prediction accuracy of the irregular projection area made by the projection
이를 위해서 캘리브레이션부(130)는 깊이 카메라를 이용하여 획득한 깊이 영상이 실제 3차원 공간에서 어떤 위치에 존재하는지를 정확하게 알고 있어야 하며, 프로젝터를 통해 투사되는 투사 영상의 일 지점이 실제 3차원 공간에서 어떤 위치에 존재하는지를 알고 있어야 한다. To this end, the
캘리브레이션부(130)는 캘리브레이션을 수행하기 위하여 도 4에 도시된 바와 같이 깊이 카메라의 위치를 원점으로 측정 방향을 z 축, 측정 방향의 오른쪽을 x 축, 위쪽을 y 축으로 하는 깊이 카메라 좌표계를 정의할 수 있으며, 프로젝터의 위치를 원점으로 측정 방향을 x 축, 측정 방향의 오른쪽을 x 축, 위쪽을 y 축으로 하는 프로젝터 좌표계를 정의할 수 있다. In order to perform the calibration, the
본 발명의 일 실시 예에서, 캘리브레이션부(130)는 깊이 카메라 좌표계의 한 점을 , 프로젝터 좌표계의 한 점을 로 설정하고, 이를 바탕으로 캘리브레이션을 수행할 수 있다. In one embodiment of the invention, the
깊이 카메라는 깊이값을 갖는 이미지를 제공하기 때문에 측정된 깊이 영상으로 깊이 카메라 좌표계에서의 3차원 위치 정보를 구할 수 있다. Since the depth camera provides an image having a depth value, 3D position information in a depth camera coordinate system can be obtained from the measured depth image.
캘리브레이션부(130)는 캘리브레이션을 위한 사전 작업으로 깊이 카메라의 카메라 고유 매개 변수 값을 이용하여 특정 지점()의 깊이 카메라 좌표계에서의 3차원 좌표()를 계산할 수 있다. 이는 좀 더 정확한 깊이 카메라 좌표계에서의 3차원 위치 정보를 계산하기 위한 것으로, 캘리브레이션부(130)는 깊이 카메라의 렌즈 왜곡을 고려하여 렌즈의 반경 및 접선 계수를 이용한 [수학식 1]을 이용하여 깊이 영상을 보정한 후 3차원 변환을 수행할 수 있다. The
위 식에서 는 왜곡된 영상의 좌표 값이고 는 왜곡되지 않은 영상의 좌표 값, 은 n차 반경 왜곡 계수, 은 n차 접선 왜곡 계수이다. 본 발명의 일 실시 예에 의한 캘리브레이션부(130)는 깊이 카메라(50)에서 제공하는 보정 파라미터를 사용하거나 깊이 영상과 특정 패턴(체스 보드, 물방울 패턴 등)을 이용한 왜곡 계수 계산 방법을 사용할 수 있다. In the above equation Is the coordinate value of the distorted image Is the coordinate value of the undistorted image, Is the nth-order radius distortion factor, Is the nth order tangential distortion coefficient. The
캘리브레이션부(130)는 깊이 카메라와 프로젝터의 상대적인 위치를 계산하기 위하여 캘리브레이션을 수행할 수 있다. 이 때 상대적인 위치 관계는 동차 변환 행렬(homogeneous transform matrix)로 표현할 수 있으며, 이는 다음과 같이 나타낼 수 있다. 본 명세서에서는 깊이 카메라와 프로젝터의 상대적인 위치 관계를 나타내는 행렬을 깊이-프로젝터 좌표계 변환 행렬로 명명한다. The
[수학식 2]에서 는 깊이 카메라 좌표계의 한 점을 나타내고 는 프로젝터 좌표계의 한 점, 은 회전 변환, 는 위치 변환을 나타낸다. 깊이-프로젝터 좌표계 변환 행렬은 깊이 영상으로부터 구해진 깊이 카메라 좌표계의 3차원 위치 정보를 프로젝터 좌표계 3차원 위치 정보로 변환할 수 있다. In [Equation 2] Denotes a point in the depth camera coordinate system Is a point in the projector coordinate system, Silver rotation transformation, Indicates position conversion. The depth-projector coordinate system transformation matrix may convert 3D position information of the depth camera coordinate system obtained from the depth image into 3D position information of the projector coordinate system.
프로젝터 좌표계의 3차원 위치 정보를 별도로 측정 할 방법이 없기 때문에 캘리브레이션부(130)는 상대적인 위치 관계를 나타내는 변환 행렬 값을 구하기 위해서 프로젝터가 투사하는 투사 영상(이미지)의 좌표를 이용할 수 있다.Since there is no method for separately measuring the 3D position information of the projector coordinate system, the
도 5를 참조하면, 캘리브레이션부(130)는 프로젝터가 투사하고자 하는 이미지에 포함된 특정 지점의 이미지 좌표 ()와 이미지의 크기 를 이용하여 원점이 중심이고 y축 방향이 반대인 정규화된 이미지 좌표값 ()을 다음과 같이 계산할 수 있다. Referring to FIG. 5, the
다음으로, 프로젝터의 시야각(Field of View)을 라고 할 때, 캘리브레이션부(130)는 [수학식 4]를 이용하여 프로젝터의 초점 길이(Focal length)인 를 계산할 수 있다.Next, the projector's Field of View When it is said, the
위 식에서 계산된 와 를 이용하여 프로젝터 좌표계의 3차원 좌표를 정규화된 이미지 좌표값 ()로 변환하는 식은 다음과 같다. Calculated from the above formula Wow Using 3D coordinates of the projector coordinate system, normalized image coordinate values ( The formula to convert) is as follows.
[수학식 5]에서 계산된 정규화된 이미지 좌표를 깊이-프로젝터 좌표계 변환 행렬에 대입하여 계산하면 다음과 같다. Calculating by substituting the normalized image coordinate calculated in [Equation 5] into the depth-projector coordinate system transformation matrix is as follows.
[수학식 6]에서 우변의 분자와 분모를 모두 으로 나눠주고 나눠준 값을 로 치환 하면 다음과 같은 식을 얻을 수 있다.In
[수학식 7]은 또는 중 임의의 값으로 나누어도 식이 성립되나, 깊이 카메라와 프로젝터 간 위치 및 회전 변화가 크지 않을 때, 0이 생성될 수 있는 값으로 식을 나누면 캘리브레이션 오류가 크게 발생할 수 있다. 따라서, 본 명세서에서는 위치 변화가 없어도 1의 값을 갖는 안전한 값을 선택하였으며 이를 이용하여 [수학식 7]을 나누는 경우의 일 실시 예를 설명하였으나, 본 발명은 이에 한정되는 것은 아니다. [Equation 7] or Even if divided by any of the values, the expression is established, but when the position and rotation change between the depth camera and the projector is not large, dividing the expression by a value that can generate 0 can cause a large calibration error. Therefore, in this specification, a safe value having a value of 1 was selected even if there was no position change, and an example of dividing [Equation 7] using this was described, but the present invention is not limited thereto.
[수학식 8]의 회전 변환 식에서, 회전 변화가 없을 때 0의 값이 산출되는성분이 들어가 있지 않은 회전 변환 값은 이다. 따라서 이 중 으로 [수학식 7]을 나누면, 변환 계수 중 은 다음과 같이 계산된다. In the rotation conversion equation of Equation 8, the value of 0 is calculated when there is no rotation change. The rotation conversion value without the component to be. Therefore, of these Dividing [Equation 7] by, Is calculated as follows.
즉, 성분이 들어가 있지 않은 회전 변환 값으로 변환식을 나누면 후에 변환식을 복원하기 수월하다는 장점이 있는 바, 본 명세서에서는 캘리브레이션 식을 으로 나누어 깊이 카메라 좌표계의 3차원 좌표를 정규화된 프로젝터 투사 영상 좌표로 변환하는 식을 정리하였다. 여기서 계산의 편의를 위하여 일부 값을 [수학식 10]과 같이 치환할 수 있다. In other words, Dividing the conversion equation by the rotation conversion value that does not contain components has the advantage of making it easier to restore the conversion equation afterwards. The equation for converting the three-dimensional coordinates of the depth camera coordinate system to the normalized projection image coordinates of the camera is summarized. Here, for convenience of calculation, some values may be substituted as shown in [Equation 10].
치환된 위 값을 이용하여 깊이 카메라와 프로젝터 간의 위치 및 회전 변화식을 계산하면 [수학식 11]과 같다. When the position and rotation change equation between the depth camera and the projector is calculated using the substituted above value, it is as shown in Equation 11.
[수학식 11]은 정규화된 투사 영상 좌표에 해당하는 와 깊이 카메라 좌표계의 3차원 좌표 값 을 이용하여 연산 가능하다. 이 식은 한 점에 대한 식이므로 여러 점에 대한 선형식을 형태로 만들면 다음과 같이 나타낼 수 있다. [Equation 11] corresponds to the normalized projection image coordinates And
캘리브레이션 변환 계수를 산출하기 위하여 특정 지점의 이미지 좌표에 해당하는 깊이 카메라의 3차원 좌표를 알아야 하는 바, 캘리브레이션부(130)는 다음과 같은 방법으로 이미지 좌표에 해당하는 깊이 카메라의 3차원 좌표를 획득할 수 있다. 여기서 '이미지 좌표'란 프로젝터를 통해 투사하고자 하는 이미지에서의 특정 지점의 좌표로, 예를 들어 1920ⅹ1080 해상도의 영상을 프로젝터로 투사하고자 할 때 위 영상 내에서의 일 지점의 좌표값이 이미지 좌표인 것으로 이해될 수 있다. In order to calculate the calibration transform coefficient, it is necessary to know the 3D coordinates of the depth camera corresponding to the image coordinates of a specific point, and the
일 예로, 캘리브레이션부(130)는 도 5에 도시된 바와 같이 체스 보드 이미지를 프로젝터를 통해 투사면에 투사하고, 깊이 카메라에 내장된 적외선 또는 RGB 입력값을 통해 체스 보드의 검은색 흰색 교차점을 깊이 영상에서 검출할 수 있다. 캘리브레이션부(130)는 검출된 교차점 위치의 깊이값을 이용하여 깊이 카메라 좌표계의 3차원 좌표를 획득할 수 있다. As an example, the
체스 보드 이미지의 교차점(특정 지점의 이미지 좌표)의 값은 미리 설정된 값이므로, 특정 지점에 대응되는 깊이 카메라 좌표계의 3차원 좌표를 획득하면 캘리브레이션 변환 계수를 산출할 수 있다. 각 좌표를 깊이-프로젝터 좌표계 변환 행렬에 대입하고, 형태로 계산하여 변환 계수 을 계산하면 다음과 같다. 여기서, 변환 계수 는 최초의 변환식에서의 변환 계수인 과 값을 편의상 치환한 것이므로, 다음과 같은 방법으로 캘리브레이션 변환 계수 과 를 산출할 수 있다. Since the value of the crossing point (image coordinates of a specific point) of the chess board image is a preset value, when the 3D coordinates of the depth camera coordinate system corresponding to the specific point are obtained, a calibration transform coefficient can be calculated. Assign each coordinate to a depth-projector coordinate system transformation matrix, Transform coefficients Is calculated as follows. Where the conversion factor Is the transform coefficient in the first transform expression and Since the value is substituted for convenience, the calibration conversion factor is as follows. and Can be calculated.
예를 들어, 캘리브레이션부(130)는 [수학식 9]를 이용하여 를 계산하고, 다음 식을 이용하여 를 계산할 수 있다. For example, the
여기서, 이므로 값을 복원 할 수 있으며, 따라서 에 값을 곱해주면 깊이-프로젝터 좌표계 변환 행렬을 도출할 수 있다. 캘리브레이션부(130)는 이와 같은 수학적 방법을 통해 깊이 카메라와 프로젝터 간의 상대적인 위치 관계를 정확하게 계산하는 캘리브레이션을 수행할 수 있다. here, Because of The value can be restored and thus on By multiplying the values, we can derive the depth-projector coordinate system transformation matrix. The
투사 영역 예측부(150)는 캘리브레이션 변환 계수를 이용하여 상기 깊이 카메라로부터 획득한 깊이 영상의 3차원 좌표를 정규화된 이미지 좌표로 변환하고, 정규화된 이미지 좌표가 투사 영상 크기 범위에 포함되면, 해당 좌표를 투사 예측 영역으로 설정할 수 있다. The projection
보다 자세하게, 투사 영역 예측부(150)는 캘리브레이션을 통해 얻어진 변환 계수 를 이용하여 깊이 카메라 좌표계의 3차원 좌표로부터 정규화된 이미지 좌표를 계산할 수 있다. 깊이 카메라 좌표계의 3차원 좌표는 깊이 카메라가 획득한 깊이 영상을 이용해 계산할 수 있다. In more detail, the projection
투사 영역 예측부(150)는 깊이 영상의 3차원 좌표(깊이 카메라 좌표계의 3차원 좌표) 각각에 대응되는 정규화된 이미지 좌표를 다음 식을 이용해 계산(변환)할 수 있다. The projection
다음으로 투사 영역 예측부(150)는 위 식을 이용해 계산된 정규화된 이미지 좌표가 이미지 크기 범위 내에 포함되는지 여부를 다음과 같은 조건을 이용하여 검사할 수 있다. Next, the projection
투사 영역 예측부(150)는 정규화된 이미지 좌표가 위 두 조건을 모두 만족하면, 해당 좌표를 투사 예측 영역으로 설정할 수 있다. 이러한 방법으로 깊이 카메라와 프로젝터를 이용하여 실제 투사 영역을 예측한 결과는 도 6에 도시된 바와 같다. When the normalized image coordinates satisfy both of the above conditions, the projection
도 6을 참조하면, (a)에는 프로젝터를 통해 이미지를 투사했을 때의 투사 영역을 확인할 수 있다. (a)에서의 투사 영역은 RGB 카메라를 통해 확인 가능하다. 투사 영역 예측의 정확도를 확인하기 위해 (c)에서 깊이 영상(b)을 통해 예측한 투사 예측 영역을 붉은색으로 표시하여 RGB 영상에 추가하였다. (c)를 통해 본 발명의 일 실시 예에 따른 투사 영역 예측부(150)가 정확히 투사 영역(투사 예측 영역)을 설정한 것을 확인할 수 있다. Referring to FIG. 6, in (a), a projection area when an image is projected through a projector can be confirmed. The projection area in (a) can be confirmed with an RGB camera. In order to confirm the accuracy of the projection area prediction, the projection prediction area predicted through the depth image (b) in (c) is displayed in red color and added to the RGB image. Through (c), it can be confirmed that the projection
보정 영역 예측부(170)는 투사 예측 영역을 이용하여 사용자의 위치를 기준으로 사용자 시점의 보정 영역을 예측할 수 있다. 깊이 카메라 좌표계의 3차원 좌표를 이용하여 예측된 투사 예측 영역은 깊이 카메라가 바라본 투사면 영역이다. 이를 이용하여 보정을 수행하면, 사용자가 바라보는 투사면과 그 모양이 상이하여 보정이 제대로 이루어지지 않을 수 있다. The correction
따라서 보정 영역 예측부(170)는 사용자의 위치를 기준으로 - 사용자의 위치를 원점으로 하고 투사면을 바라보는 방향을 z축, 오른쪽을 x 축, 위쪽을 y 축으로- 하는 사용자 좌표계를 정의하고, 프로젝터 좌표계와 사용자 좌표계를 변환하는 동차 변환 행렬(이하, '프로젝터-사용자 좌표계 변환 행렬'이라 함)을 사용하여 투사 예측 영역의 좌표계를 변환할 수 있다. Therefore, the correction
프로젝터-사용자 좌표계 변환 행렬()은 다음과 같이 나타낼 수 있다. Projector-user coordinate system transformation matrix ( ) Can be represented as
깊이-프로젝터 좌표계 변환 행렬을 라고 하면, 사용자 위치에서 바라보는 3차원 좌표 는 다음과 같이 정의될 수 있다. Depth-projector coordinate system transformation matrix Speaking of, 3D coordinate viewed from the user's position Can be defined as
위와 같은 식을 이용하면 프로젝터 좌표계의 3차원 좌표를 사용자 좌표계 의 3차원 좌표로 변환 가능하다. 보정 영역 예측부(170)는 보정을 수행하기 전 빠르게 사용자 시점의 투사 영역 및/또는 보정 영역을 예측하기 위해서 깊이 영상의 투사 예측 영역의 외각 픽셀만을 이용하여 사용자 시점의 투사 영역 및/또는 보정 영역을 예측할 수 있다. Using the above formula, it is possible to convert the 3D coordinates of the projector coordinate system to the 3D coordinates of the user coordinate system. The correction
보정 영역을 예측하는 방법을 보다 자세하게 설명하면 다음과 같다. 보정 영역 예측부(170)는 도 3에 도시된 바와 같이 외곽 픽셀 검출부(173), 제1 좌표계 변환부(175), 제2 좌표계 변환부(177), 보정 영역 검출부(179)를 포함할 수 있다. The method for predicting the correction region will be described in more detail as follows. The correction
외곽 픽셀 검출부(173)는 깊이 영상의 투사 예측 영역의 외곽 픽셀을 검출할 수 있다.The outer pixel detector 173 may detect outer pixels of the projection prediction area of the depth image.
제1 좌표계 변환부(175)는 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 계산하고, 깊이-프로젝터 좌표계 변환 행렬을 이용하여 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 프로젝터 좌표계 3차원 좌표로 변환할 수 있다. The first coordinate
제2 좌표계 변환부(177)는 프로젝터-사용자 좌표계 변환 행렬을 이용하여 외곽 픽셀의 프로젝터 좌표계 3차원 좌표를 사용자 좌표계 3차원 좌표로 변환할 수 있다. 전술한 바와 같이 프로젝터-사용자 좌표계 변환 행렬은 프로젝터 좌표계의 3차원 위치 정보를 사용자 위치를 기준으로 하는 사용자 좌표계의 3차원 위치 정보로 변환하는 행렬을 의미한다. The second coordinate
보정 영역 검출부(179)는 외곽 픽셀의 사용자 좌표계 3차원 좌표를 사용자 시점에 따라 투사하여 2차원의 사용자 시점 보정 영역을 검출할 수 있다. The
참고로, 이차원의 이미지로 표현되는 사용자 시점의 투사면에서 사용자 시점의 직사각형 보정 영역을 빨리 찾을 수 있기 때문에, 보정 영역 검출부(179)는 사용자 시점 투사면이 이차원 이미지인 경우를 상정한다. 사용자 위치를 고려한 이차원 이미지 상의 사용자 시점 보정 영역을 찾기 위해 선행문헌("The maximal rectangle problem", Vandevoorde et al, 1998)에 개시된 최대 직사각형 영역 검출 방법을 사용할 수 있으나, 본 발명은 이에 한정되지는 않는다. For reference, since the rectangular correction area of the user's viewpoint can be quickly found on the projection surface of the user's viewpoint expressed as a two-dimensional image, the correction
검출된 사용자 시점 보정 영역은 2차원 이미지 상의 영역이기 때문에 사용자 시점 보정 영역이 사용자 좌표계에서 어떤 위치에 해당하는지 계산이 필요하다. 그러나 본 발명은 빠른 계산을 위해 외곽 픽셀만을 이용하기 때문에, 영역 내부의 정보는 알 수 없다. 만일 내부 영역의 정보가 존재한다 해도 투사되는 점 각각을 모두 정의하는 데는 한계가 있다.Since the detected user viewpoint correction area is an area on a 2D image, it is necessary to calculate what position the user viewpoint correction area corresponds to in the user coordinate system. However, since the present invention uses only outer pixels for fast calculation, information inside the region is unknown. Even if the information in the inner region exists, there is a limit to defining each of the projected points.
본 발명은 이러한 문제를 해결하기 위하여 시야각과 변환값을 이용하여 최대 사각형 영역을 재정의하고, 이를 통해 단순한 크기 비교만으로 보정 영역에 해당하는 사용자 좌표계의 3차원 좌표를 계산할 수 있다. 보정 영역 직사각형을 재정의 하기 위한 시야각과 변환값은 다음 식을 이용하여 계산될 수 있다. In order to solve this problem, the present invention redefines the maximum square area using the viewing angle and the transformed value, and through this, it is possible to calculate the 3D coordinates of the user coordinate system corresponding to the correction area by simply comparing the size. The viewing angle and the conversion value for redefining the correction area rectangle can be calculated using the following equation.
위 식에서 는 2차원 이미지 상의 보정 영역 직사각형의 시작점 및 크기를, 와 는 사용자 시점 보정 영역을 재정의한 시야각(FOV)값과 변환값(Transformation)을, 은 2차원 이미지를 생성할 때 사용된 투사면의 Z값을, 는 투사면의 크기, 은 이미지로 래스터화(Rasterization)된 크기, , 를 나타낸다. In the above equation Is the starting point and size of the correction area rectangle on the 2D image, Wow Is the field of view (FOV) and transformation values that redefine the user's viewpoint correction area, Is the Z value of the projection plane used to create the 2D image, Is the size of the projection surface, The size of the image is rasterized, , Indicates.
3차원 좌표계에 표현된 다각형 또는 점을 모니터 화면에 출력하기 위해서는 보통 두 단계를 거치는 데, 첫번째로 다각형의 꼭지점을 2차원 이미지에 투사하는 단계와, 두번째로 2차원 이미지에 투사된 꼭지점을 연결하고 색을 채워 실제 화면에 출력하기 위한 이미지를 생성하는 래스터화(rasterization) 단계이다. 예를 들어, 가로 세로 크기가 1ⅹ1인 2차원 이미지에 3차원 다각형을 투사하면, 는 각각 1이 될 것이다. 첫번째 투사 단계에서는 3차원 다각형의 모양(투사면의 모양)이 이미지로 표현되지 않고 꼭지점의 위치만 나타나므로, 이를 실제 다각형 이미지로 표현하기 위해서는 래스터화 단계가 수행되어야 한다. 즉, 은 래스터화가 수행되는 이미지의 크기를 의미하는 것으로 이해될 수 있다. To output a polygon or a point expressed in a 3D coordinate system to a monitor screen, there are usually two steps, firstly projecting the vertices of the polygon into a two-dimensional image, and secondly connecting the vertices projected into the two-dimensional image. This is a rasterization step of creating an image to fill the color and output it to the actual screen. For example, if you project a 3D polygon onto a 2D image with a width and height of 1ⅹ1, Will be 1 each. In the first projection step, since the shape of the 3D polygon (the shape of the projection surface) is not expressed as an image, only the position of the vertex appears, a rasterization step must be performed to express it as an actual polygon image. In other words, Can be understood to mean the size of the image on which rasterization is performed.
이와 같이 구해진 보정 영역 재정의 시야각 값과 변환값은 영상 보정부(179)가 보정을 수행함에 있어서, 보정 영역에 속한 3차원 좌표와 이미지 좌표를 계산할 때 사용될 수 있다. The obtained viewing angle value and the converted value of the correction region redefinition may be used when calculating the 3D coordinates and image coordinates belonging to the correction region when the
영상 보정부(190)는 투사 영상에서 사용자 시점 보정 영역에 속하는 픽셀을 보정할 수 있다. 보다 자세하게, 영상 보정부(190)는 투사 영상을 이루는 픽셀 각각의 깊이값을 계산하고, 프로젝터의 시야각을 이용하여 깊이값이 반영된 보간 투사 깊이 영상(Interpolated Projector Depth Imgae)의 프로젝터 좌표계 3차원 좌표를 산출할 수 있다. 다음으로 영상 보정부(190)는 보간 투사 깊이 영상의 프로젝터 좌표계 3차원 좌표를 사용자 좌표계를 변환하고, 사용자 좌표계 3차원 좌표가 사용자 시점 보정 영역에 속하는지 여부를 판단하여, 보간 투사 깊이 영상의 사용자 좌표계 3차원 좌표가 사용자 시점 보정 영역에 속하면 해당 픽셀을 보정할 수 있다. The
일반적으로 프로젝터의 투사 영상 해상도가 깊이 카메라의 깊이 영상 해상도 보다 훨씬 높다. 따라서 캘리브레이션을 이용하여 깊이 카메라로부터 획득한 깊이 영상의 3차원 좌표를 프로젝터 좌표계 상의 투사 영상 좌표로 변환하는 것은 가능하나, 투사 영상의 좌표를 깊이 카메라 좌표계로 변환하거나 깊이 영상의 좌표로 변환하는 것은 불가능하다. In general, the projection image resolution of the projector is much higher than the depth image resolution of the depth camera. Therefore, it is possible to convert the three-dimensional coordinates of the depth image obtained from the depth camera to the projection image coordinates on the projector coordinate system using the calibration, but it is not possible to convert the coordinates of the projected image to the depth camera coordinate system or the depth image coordinates. Do.
그러나 보정을 위한 워핑 테이블(warping table)을 생성하기 위해서는 프로젝터가 투사하는 투사 영상의 모든 3차원 좌표를 알아야 한다. 투사 영상의 3차원 좌표를 알기 위해서는 투사 영상을 이루는 각 픽셀의 깊이값을 알아야 하는데, 상술한 바와 같이 투사 영상의 모든 픽셀의 좌표값에 대응되는 깊이 영상의 좌표를 알 수 없다는 문제가 있다. However, in order to create a warping table for correction, it is necessary to know all three-dimensional coordinates of the projected image projected by the projector. In order to know the 3D coordinates of the projected image, it is necessary to know the depth value of each pixel constituting the projected image. As described above, there is a problem that the coordinates of the depth image corresponding to the coordinate values of all pixels of the projected image are unknown.
이러한 문제를 해결하기 위하여 본 발명의 일 실시 예에 따른 영상 보정부(190)는 투사 영상의 모든 3차원 좌표를 재귀 가우시안 가중치 보간법(Recursive Gaussian Weight Interpolation)을 사용하여 빠르게 계산할 수 있다. 또한 영상 보정부는 사용자 위치, 사용자 시점 보정 영역으로 정의된 시야각값과 변환값을 이용하여 빠르게 워핑 테이블을 생성할 수 있다. To solve this problem, the
본 발명의 영상 보정부(190)에서 수행되는 사용자 시점의 실시간 투사 보정 방법의 전체적인 과정은 도 7에 도시된 바와 같다. The overall process of the real-time projection correction method of the user's viewpoint performed by the
한편, 전술한 바와 같이 본 발명의 캘리브레이션부(130)가 수행하는 캘리브레이션에 의하면 깊이 영상에서 투사 영역을 예측하는 것은 가능하나, 깊이 영상에서 프로젝터가 투사하는 투사 영상의 3차원 좌표를 모두 계산하는 것은 불가능하다. 대신 투사 영상의 해상도가 깊이 영상보다 훨씬 높으므로, 투사 영상의 3차원 좌표 중에서 깊이값을 알 수 없는 픽셀들의 3차원 좌표값을 투사 영상을 이용하여 계산할 수 있다. On the other hand, as described above, according to the calibration performed by the
투사 영상의 좌표계를 기준으로 투사 영상과 깊이 영상을 매칭시켰을 때, 해상도의 차이로 인해 깊이 정보의 일부는 알 수 없는 상태인 바, 본 명세서에서는 이처럼 픽셀 전체의 깊이 정보가 모두 채워지지 않은 깊이 영상을 희소 투사 깊이 영상(sparse projector depth image)으로 명명한다. 도 8은 희소 투사 깊이 영상의 생성 예를 보여준다. When the projection image and the depth image are matched based on the coordinate system of the projected image, a part of the depth information is unknown due to a difference in resolution, and thus, in this specification, a depth image in which all of the depth information of the entire pixel is not filled. Is referred to as a sparse projector depth image. 8 shows an example of generating a rare projection depth image.
(a)는 저해상도 512x424에서 검출한 투사영역을 도시한 것으로, (a)에서는 저해상도의 깊이 영상의 일부만이 투사면으로 검출되었기 때문에 투사 영상의 모든 깊이 정보를 알 수 없다. (a) shows the projection area detected by the low resolution 512x424. In (a), since only a part of the low resolution depth image is detected as the projection surface, all depth information of the projection image cannot be known.
(b)는 깊이 영상에서 검출한 투사 영역의 픽셀을 실제 투사 영상에 매칭시켰을 때 얼마나 정보가 비는지를 보여주는 도면이다. (b) is a diagram showing how much information is emptied when pixels of the projection area detected in the depth image are matched to the actual projection image.
(c)는 깊이 영상에서 검출한 투사 영역의 깊이 정보를 투사 영상에 삽입했을 때의 도면이다. 검은색은 깊이 정보가 없음을 의미하며, 회색은 깊이 영상으로부터 얻어진 깊이 정보를 나타낸다. (c) is a diagram when depth information of the projection area detected from the depth image is inserted into the projection image. Black indicates no depth information, and gray indicates depth information obtained from a depth image.
종래에는 이와 같은 희소 투사 깊이 영상의 깊이 정보를 계산하기 위하여 고차원의 표면 피팅(surface fitting) 방법을 사용하였다. 종래의 표면 피팅 방법의 경우, 투사면이 변하지 않는 것을 전제로 하기 때문에 매우 큰 연산량이 요구되는 방식으로 워핑 테이블을 한 번 생성하여 최초 한번만 보정을 수행한다. Conventionally, a high-dimensional surface fitting method was used to calculate depth information of such a rare projection depth image. In the case of the conventional surface fitting method, since it is premised that the projection surface does not change, the warping table is generated once in a manner that requires a very large amount of computation, and correction is performed only once for the first time.
그러나 본 발명은 지속적으로 변화하는 투사면에 대응할 수 있는 보정 방법의 제공을 그 목적으로 하는 바, 투사면 변화에 대응하기에는 처리 속도가 느린 표면 피팅 방식을 사용하지 않으며, 처리 시간을 크게 단축시킬 수 있는 재귀 가우시안 가중치 보간법(Recursive Gaussian Weight Interpolation)을 사용하여 투사 영상을 이루는 각 픽셀의 깊이값을 계산함으로써 모든 픽셀 각각에 대응되는 3차원 좌표를 획득할 수 있다. However, the present invention aims to provide a correction method capable of responding to a continuously changing projection surface, and does not use a surface fitting method having a slow processing speed to respond to a projection surface change, and can significantly reduce processing time. By using the recursive Gaussian Weight Interpolation, the depth value of each pixel constituting the projected image can be calculated to obtain 3D coordinates corresponding to each pixel.
영상 보정부(190)가 재귀 가우시안 가중치 보간법을 사용하여 투사 영상의 3차원 좌표를 획득함에 있어서, 투사 영상에 대응되는 희소 투사 깊이 영상에서 깊이값이 존재하지 않는 픽셀의 깊이값을 계산하고, 계산된 깊이값을 반영하여 보간 투사 깊이 영상을 생성하는 방법은 도 9에 도시된 바와 같다. When the
도 9를 참조하면, 영상 보정부(190)는 희소 투사 깊이 영상의 각 픽셀에 도 9의 (a)에 도시된 바와 같은 가우시안 마스크(커널)을 적용할 수 있다. 영상 보정부(190)는 가우시안 마스크를 각 픽셀에 적용하기에 앞서, 마스크를 적용하고자 하는 제1 픽셀이 유효 픽셀인지를 판단할 수 있다. 여기서 유효 픽셀은 유효한 깊이값을 갖는 픽셀을 의미한다. Referring to FIG. 9, the
영상 보정부(190)는 제1 픽셀이 유효 픽셀이 아니고 - 제1 픽셀의 깊이값이 존재하지 않고-, 제1 픽셀에 대한 가우시안 마스크 적용 범위 내에 유효 픽셀이 존재하면, 제1 픽셀에 가우시안 마스크를 적용하여 제1 픽셀의 깊이값을 산출할 수 있다. When the first pixel is not an effective pixel-the depth value of the first pixel does not exist-and an effective pixel exists within a gaussian mask application range for the first pixel, the
영상 보정부(190)는 가우시안 마스크 적용 범위 내에 존재하는 모든 제1 유효 픽셀에 대하여 제1 유효 픽셀의 깊이값과 제1 유효 픽셀에 대응되는 가우시안 마스크의 가중치를 이용한 가중 평균을 산출하고, 가중 평균을 제1 픽셀의 깊이값으로 설정하는 방법으로 제1 픽셀에 가우시안 마스크를 적용할 수 있다. The
예를 들어, 도 9에 도시된 일 실시 예를 살펴보자. 도 9에서 영상 보정부(190)는 (b)에서 중앙의 빗금 표시된 제1 픽셀(1)에 5ⅹ5 가우시안 마스크(5)를 적용하고자 한다. 가우시안 마스크 적용 범위 내에는 유효 픽셀(3)이 2개 존재하며, 각 유효 픽셀의 깊이값은 각각 100과 108이다. 영상 보정부(190)는 모든 유효 픽셀에 대하여 유효 픽셀의 깊이값과 유효 픽셀에 대응되는 가우시안 마스크의 가중치를 이용하여 가중 평균을 산출할 수 있으며, 가중 평균을 제1 픽셀의 깊이값으로 설정할 수 있다. 따라서, 도 9의 예시에서, 제1 픽셀의 깊이값은 로 설정될 수 있다. For example, consider an embodiment shown in FIG. 9. In FIG. 9, the
영상 보정부(190)는 제1 픽셀이 유효 픽셀이거나, 제1 픽셀에 대한 가우시안 마스크 적용 범위 내에 유효 픽셀이 존재하지 않으면 제1 픽셀에 가우시안 마스크를 적용하지 않고, 다른 픽셀에 대하여 위 과정을 반복할 수 있다. The
영상 보정부(190)의 보간 투사 깊이 영상 생성부(193)는 희소 투사 깊이 영상의 픽셀 전부의 깊이값이 산출될 때까지, 즉 희소 투사 깊이 영상의 픽셀 전부가 유효 픽셀이 될 때까지 희소 투사 깊이 영상의 각 픽셀에 대해 위 과정을 반복 수행함으로써 보간 투사 깊이 영상을 생성할 수 있다. 보간 투사 깊이 영상(Interpolated Projector Depth Image)는 깊이값이 모두 채워진 깊이 영상으로, 프로젝터 좌표계로 변환 가능한 깊이 영상을 의미한다. The interpolation projection depth image generation unit 193 of the
프로젝터의 시야각을 이용하면, 보간 투사 깊이 영상의 프로젝터 좌표계 3차원 좌표를 계산할 수 있는데, 계산된 프로젝터 좌표계 3차원 좌표는 보정을 위한 워핑 테이블(warping table) 생성을 위해 사용될 수 있다. 워핑 테이블을 생성하기 위해서는 사용자 시점의 투사 영역에서 보정을 수행해야 하므로, 영상 보정부(190)의 보정부(195)는 보간 투사 깊이 영상을 프로젝터 좌표계의 3차원 좌표로 변환을 수행하고, 이를 다시 사용자 좌표계로 변환할 수 있다. 이와 같은 과정은 보간 투사 깊이 영상의 각 픽셀 단위로 수행되기 때문에, 각 픽셀마다 사용자 좌표계의 좌표값을 계산하여 각 픽셀이 사용자 시점 보정 영역에 속하는지 여부를 판단할 수 있다.Using the projector's viewing angle, the projector coordinate
각 픽셀이 사용자 시점 보정 영역에 속하는지 여부에 대한 판단은 다음과 같이 이루어질 수 있다. 예를 들어, 보정부(195)는 보간 투사 깊이 영상의 (x, y) 위치에 해당하는 픽셀을 프로젝터 좌표계의 3차원 좌표로 변환하고, 이를 다시 사용자 좌표계의 3차원 좌표 , , 로 변환할 수 있다. The determination as to whether each pixel belongs to the user viewpoint correction area may be performed as follows. For example, the correction unit 195 converts the pixel corresponding to the (x, y) position of the interpolation projection depth image into three-dimensional coordinates of the projector coordinate system, and again, the three-dimensional coordinates of the user coordinate system. , , Can be converted to
보정부(195)는 사용자 시점 보정 영역을 정의한 와 를 이용하여 사용자 좌표계의 3차원 좌표가 사용자 시점 보정 영역에 해당되는지를 계산할 수 있는데 이때 다음과 같은 식을 이용할 수 있다. The correction unit 195 defines a user viewpoint correction area Wow It is possible to calculate whether the 3D coordinates of the user coordinate system correspond to the user's viewpoint correction area using the following equation.
수학식 19에서 은 2차원의 사용자 시점 보정 영역을 검출할 때 사용된 프로젝터 평면(투사면)의 z값이며, , 는 보간 투사 깊이 영상의 x, y 위치에서의 비교 시야각이다. In Equation 19 Is the z value of the projector plane (projection plane) used to detect the 2D user viewpoint correction area, , Is a comparative viewing angle at the x and y positions of the interpolated projection depth image.
예를 들어, 프로젝터 평면의 왜곡된 영상이 사용자 위치에서 사각형으로 보이도록 하기 위해 사용자 시점을 기준으로 투사가 이루어지는데, 사용자 시점에서 사각형으로 보이는 영역을 수학적으로 쉽게 계산하기 위한 것이 시야각(Field of view)이다. 이 때 각 픽셀이 시야각에서 벗어났는지 포함되는지를 계산하기 위해 사용하는 값이 비교 시야각 , 으로, 각각 픽셀의 x축 방향의 투사 각도와 픽셀의 y축 방향의 투사 각도를 의미하는 것으로 이해될 수 있다. For example, projection is made based on the user's viewpoint to make the distorted image of the projector plane appear to be square from the user's position. )to be. At this time, the value used to calculate whether each pixel deviates from the viewing angle or not is included. , As a result, it can be understood that each means a projection angle in the x-axis direction of the pixel and a projection angle in the y-axis direction of the pixel.
보간 투사 깊이 영상의 각 픽셀 위치 x, y와 해당 위치의 깊이값을 알면, 픽셀이 시야각을 벗어났는지 확인이 가능하며, 영상 보정부(190)는 이를 확인하기 위해 , 를 계산할 수 있다. If the interpolation projection depth image of each pixel position x, y and the depth value of the corresponding position are known, it is possible to check whether the pixel is out of the viewing angle, and the
보정부(195)는 계산된 비교 시야각 값 , 을 사용자 시점 투사 보정 영역의 시야각 과 비교하여 다음의 조건을 만족하는 지 확인할 수 있다. Compensation unit 195 is a calculated comparison viewing angle value , The viewing angle of the user's perspective projection correction area It can be confirmed that the following conditions are satisfied by comparing with.
위와 같은 식을 만족하면 보간 투사 깊이 영상의 (x, y) 위치는 사용자 시점에서 보정 영역으로 보여지는 위치에 해당한다. 즉, 위 픽셀은 사용자 시점 투사 보정 영역에 속하는 것으로 볼 수 있다. If the above expression is satisfied, the (x, y) position of the interpolated projection depth image corresponds to the position shown as the correction area from the user's point of view. That is, the above pixel can be regarded as belonging to the user perspective projection correction area.
사용자 시점 투사 보정 영역에 해당하는 픽셀을 어떤 픽셀로 대체해야하는 지를 계산하기 위한 식은 다음과 같다.The equation for calculating which pixel should be replaced with the pixel corresponding to the user perspective projection correction area is as follows.
수학식 21에서 는 보정을 수행할 프로젝터 투사 영상의 크기이며, 는 보정 영역 (x, y)에 보여질 투사 영상의 픽셀의 좌표를 나타낸다. 영상 보정부(190)는 수학식 22에 의해 생성된 맵핑 테이블을 기준으로 보정 영역의 픽셀을 다른 픽셀로 대체함으로써 보정을 수행할 수 있다. In Equation 21 Is the size of the projector projection image to be corrected, Denotes the coordinates of pixels of the projected image to be displayed in the correction area (x, y). The
여기에서 는 워핑된 영상(대체 픽셀을 맵핑한 영상)을, 는 프로젝터의 투사 원본 영상, 는 에 해당되는 값을 맵핑 해주는 함수다. 이와 같은 과정을 통해 영상을 보정하면, 역방향 맵핑으로 영상을 워핑할 수 있기 때문에 빠르게 보정 영상을 만들 수 있다.From here Is a warped image (an image mapped with a replacement pixel), Projection original image of the projector, The Applicable to It is a function that maps values. When the image is corrected through the above-described process, since the image can be warped by reverse mapping, a corrected image can be quickly generated.
이하에서는 도 10 내지 도 13을 참조하여, 본 발명의 일 실시 예에 따른 전자 장치의 실시간 프로젝터 영상 보정 방법을 설명한다. 본 발명의 실시간 프로젝터 영상 보정 방법을 수행하는 전자 장치는 컴퓨터 프로세서를 포함하는 하드웨어로, 프로젝터 또는 깊이 카메라 내에 내장되어 상기 방법을 수행할 수 있으며, 프로젝터나 깊이 카메라와는 별도의 장치로 상기 방법을 수행할 수 있다. Hereinafter, a real-time projector image correction method of an electronic device according to an embodiment of the present invention will be described with reference to FIGS. 10 to 13. An electronic device for performing the real-time projector image correction method of the present invention is hardware including a computer processor, and is embedded in a projector or a depth camera to perform the method, and the method can be performed as a device separate from the projector or depth camera. Can be done.
도 10을 참조하면, 본 발명의 일 실시 예에 따른 전자 장치는 프로젝터를 통해 투사되는 이미지에 포함된 특정 지점의 이미지 좌표와 깊이 카메라를 이용하여 획득한 상기 특정 지점의 3차원 좌표를 이용하여 깊이 카메라 좌표계의 3차원 위치 정보와 프로젝터 좌표계의 3차원 위치 정보 간 상관 관계를 나타내는 캘리브레이션 변환 계수를 산출할 수 있다(S100).Referring to FIG. 10, an electronic device according to an embodiment of the present invention uses a 3D coordinate of a specific point obtained using an image coordinate and a depth camera of a specific point included in an image projected through a projector. A calibration transform coefficient indicating a correlation between the 3D position information of the camera coordinate system and the 3D position information of the projector coordinate system may be calculated (S100).
전자 장치는 캘리브레이션 변환 계수를 산출하면, 상기 캘리브레이션 변환 계수를 이용하여 상기 깊이 카메라로부터 획득한 깊이 영상의 3차원 좌표를 정규화된 이미지 좌표로 변환할 수 있다(S200). 그리고 상기 정규화된 이미지 좌표가 이미지 크기 범위에 포함되면, 해당 좌표를 투사 예측 영역으로 설정할 수 있다(S300).If the electronic device calculates a calibration transform coefficient, the electronic device may convert the three-dimensional coordinates of the depth image obtained from the depth camera into normalized image coordinates using the calibration transform coefficient (S200). Then, when the normalized image coordinates are included in the image size range, the coordinates may be set as a projection prediction area (S300).
전자 장치는 투사 예측 영역이 설정되면, 투사 예측 영역의 외곽 픽셀을 검출하고(S400), 상기 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 계산할 수 있다. 그리고 캘리브레이션 변환 계수를 이용하여 도출한 깊이-프로젝터 좌표계 변환 행렬을 이용하여 상기 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 프로젝터 좌표계 3차원 좌표로 변환할 수 있다(S500).When the projection prediction region is set, the electronic device may detect an outer pixel of the projection prediction region (S400), and calculate a depth camera coordinate
다음으로 전자 장치는 프로젝터 좌표계의 3차원 위치 정보를 사용자 위치를 기준으로 하는 사용자 좌표계의 3차원 위치 정보로 변환하는 프로젝터-사용자 좌표계 변환 행렬을 이용하여 상기 외곽 픽셀의 프로젝터 좌표계 3차원 좌표를 사용자 좌표계 3차원 좌표로 변환할 수 있으며(S600), 상기 외곽 픽셀의 사용자 좌표계 3차원 좌표를 사용자 위치에 따라 투사하여 2차원의 사용자 시점 보정 영역을 검출할 수 있다(S700). Next, the electronic device converts the 3D coordinates of the projector coordinate system of the outer pixel to the user coordinate system by using a projector-user coordinate system transformation matrix that converts the 3D location information of the projector coordinate system into 3D location information of the user coordinate system based on the user's location. It can be converted into three-dimensional coordinates (S600), and the three-dimensional coordinates of the user's viewpoint can be detected by projecting the three-dimensional coordinates of the user coordinate system of the outer pixel according to the user's location (S700).
사용자 시점의 보정 영역을 검출한 전자 장치는 프로젝터가 투사하는 투사 영상에서 상기 사용자 시점 보정 영역에 속하는 픽셀을 보정함으로써 프로젝터 영상을 실시간으로 보정할수 있다(S800). The electronic device detecting the correction area of the user's viewpoint may correct the projector image in real time by correcting pixels belonging to the user viewpoint correction area in the projected image projected by the projector (S800).
도 11을 참조하여 프로젝터 영상을 실시간으로 보정하는 단계 800을 보다 구체적으로 살펴보면, 전자 장치는 상기 투사 영상에 대응되는 희소 투사 깊이 영상에서 깊이값이 존재하지 않는 픽셀의 깊이값을 계산하고, 계산된 깊이값을 반영하여 보간 투사 깊이 영상을 생성하고(S810), 상기 프로젝터의 시야각(field of view)을 이용하여 보간 투사 깊이 영상의 프로젝터 좌표계 3차원 좌표를 산출할 수 있다(S820). Referring to FIG. 11, in more detail, step 800 of real-time correcting a projector image, the electronic device calculates a depth value of a pixel in which a depth value does not exist in the rare projection depth image corresponding to the projected image, and calculates the calculated value. An interpolation projection depth image is generated by reflecting the depth value (S810), and the projector coordinate
단계 810의 일 예를 도시한 도 12를 참조하면, 전자 장치는 먼저 투사 영상에 대응되는 희소 투사 깊이 영상의 일 픽셀이 유효 픽셀인지 여부를 판단할 수 있다(S811). 만약 단계 811의 판단 결과, 제1 픽셀이 유효 픽셀이 아니면, 전자 장치는 제1 픽셀에 대한 가우시안 마스크 적용 범위 내에 유효 픽셀이 존재하는지 여부를 추가적으로 판단할 수 있다(S813). 만약 가우시안 마스크 적용 범위 내에 유효 픽셀이 존재하면, 전자 장치는 제1 픽셀에 가우시안 마스크를 적용하여 제1 픽셀의 깊이값을 산출할 수 있다. 이 때 단계 811과 단계 813은 도 12에 도시된 순서에 의해 종속되지 아니한다. Referring to FIG. 12 showing an example of step 810, the electronic device may first determine whether one pixel of the rare projection depth image corresponding to the projected image is an effective pixel (S811). If the result of the determination in step 811 is that the first pixel is not an effective pixel, the electronic device may additionally determine whether an effective pixel exists within a gaussian mask application range for the first pixel (S813). If an effective pixel exists within a gaussian mask application range, the electronic device may calculate a depth value of the first pixel by applying a gaussian mask to the first pixel. At this time, steps 811 and 813 are not dependent on the order shown in FIG. 12.
만일 단계 811의 판단 결과, 가우시안 마스크를 적용하고자 하는 대상 픽셀이 유효 픽셀이거나, 대상 픽셀이 유효 픽셀이 아니더라도 대상 픽셀에 대한 가우시안 마스크 적용 범위 내에 유효 픽셀이 존재하지 않으면, 전자 장치는 희소 투사 깊이 영상의 다른 픽셀에 대하여 단계 811 내지 단계 812를 수행할 수 있다(S814).If, as a result of the determination in step 811, the target pixel to which the Gaussian mask is to be applied is an effective pixel or the target pixel is not an effective pixel, if there is no effective pixel within the gaussian mask application range for the target pixel, the electronic device generates a rare projection depth image Steps 811 to 812 may be performed with respect to other pixels in step S814.
이러한 방법으로 전자 장치는 희소 투사 깊이 영상의 픽셀 전부가 유효 픽셀이 될 때까지 단계 811 내지 단계 815를 반복적으로 수행함으로써, 깊이값이 존재하지 않는 모든 픽셀의 깊이값을 계산하여 각 픽셀에 깊이값을 채워넣을 수 있다. In this way, the electronic device repeatedly performs steps 811 to 815 until all of the pixels of the rare projection depth image become effective pixels, thereby calculating depth values of all pixels that do not have a depth value and depth values for each pixel. You can fill in
가우시안 마스크를 적용하는 방법은 도 9를 참조하여 상술하였으므로 중복되는 설명은 생략한다. The method of applying the Gaussian mask has been described above with reference to FIG. 9, and thus redundant description is omitted.
깊이값이 모두 채워진 깊이 영상을 보간 투사 깊이 영상이라고 하며, 전자 장치는 상기 보간 투사 깊이 영상의 프로젝터 좌표계 3차원 좌표를 사용자 좌표계 3차원 좌표로 변환하고(S830), 보간 투사 깊이 영상의 사용자 좌표계 3차원 좌표가 상기 사용자 시점 보정 영역에 속하면 해당 픽셀을 보정할 수 있다(S840). The depth image in which all the depth values are filled is called an interpolation projection depth image, and the electronic device converts the projector coordinate
사용자 시점 보정 영역에 속하는 픽셀을 보정하는 방법은 도 13에 보다 자세하게 도시되어 있다. 전자 장치는 보간 투사 깊이 영상의 (x, y)에 위치한 픽셀에 대하여, 해당 위치에서의 비교 시야각이 사용자 시점 투사 보정 영역의 시야각 보다 작거나 같은지 여부를 판단하고(S841), 단계 841에서의 조건을 만족하면, (x, y) 위치를 보정 영역으로 지정할 수 있다(S843). A method of correcting a pixel belonging to a user viewpoint correction area is illustrated in more detail in FIG. 13. The electronic device determines whether the comparison viewing angle at the corresponding position is less than or equal to the viewing angle of the user's viewpoint projection correction area for the pixel located at (x, y) of the interpolation projection depth image (S841), and the condition in step 841 If is satisfied, the (x, y) position can be designated as the correction area (S843).
전자 장치는 보정 영역의 (x, y) 위치에 투사 영상의 픽셀 (xc, yc)를 맵핑함으로써 보정 영역의 픽셀을 워핑(보정)할 수 있으며, 보정 영역에 맵핑되는 투사 영상의 픽셀 위치는 상술한 수학식 21에 의해 계산된 것일 수 있다. The electronic device may warp (correct) pixels of the correction region by mapping pixels (x c , y c ) of the projection image to (x, y) positions of the correction region, and pixel positions of the projection image mapped to the correction region May be calculated by Equation 21 described above.
본 명세서에서 생략된 일부 실시 예는 그 실시 주체가 동일한 경우 동일하게 적용 가능하다. 또한, 전술한 본 발명은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시 예 및 첨부된 도면에 의해 한정되는 것이 아니다.Some embodiments omitted in the present specification are equally applicable to the same subject. In addition, the above-described present invention is to those skilled in the art to which the present invention pertains, various substitutions, modifications and changes are possible within the scope not departing from the technical spirit of the present invention. It is not limited by the drawings.
100: 실시간 프로젝터 영상 보정 장치
130: 캘리브레이션부
150: 투사 영역 예측부
170: 보정 영역 예측부
190: 영상 보정부100: real-time projector image correction device
130: calibration unit
150: projection area prediction unit
170: correction area prediction unit
190: image correction unit
Claims (9)
상기 캘리브레이션 변환 계수를 이용하여 상기 깊이 카메라로부터 획득한 깊이 영상의 3차원 좌표를 정규화된 이미지 좌표로 변환하는 단계;
상기 정규화된 이미지 좌표가 이미지 크기 범위에 포함되면, 해당 좌표를 투사 예측 영역으로 설정하는 단계;
상기 투사 예측 영역의 외곽 픽셀을 검출하는 단계;
상기 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 계산하는 단계;
상기 캘리브레이션 변환 계수를 이용하여 도출한 깊이-프로젝터 좌표계 변환 행렬을 이용하여 상기 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 프로젝터 좌표계 3차원 좌표로 변환하는 단계;
프로젝터 좌표계의 3차원 위치 정보를 사용자 위치를 기준으로 하는 사용자 좌표계의 3차원 위치 정보로 변환하는 프로젝터-사용자 좌표계 변환 행렬을 이용하여 상기 외곽 픽셀의 프로젝터 좌표계 3차원 좌표를 사용자 좌표계 3차원 좌표로 변환하는 단계;
상기 외곽 픽셀의 사용자 좌표계 3차원 좌표를 사용자 위치에 따라 투사하여 2차원의 사용자 시점 보정 영역을 검출하는 단계;
상기 투사 영상에 대응되는 희소 투사 깊이 영상의 깊이값에 따라 생성된 보간 투사 깊이 영상 및 상기 사용자 시점 보정 영역을 이용하여 보정 영역을 지정한 후 상기 보정 영역의 위치에 상기 투사 영상의 픽셀을 맵핑하여 상기 사용자 시점 보정 영역에 속하는 픽셀을 보정하는 단계를 포함하는 실시간 프로젝터 영상 보정 방법.
Correlation between 3D position information in the depth camera coordinate system and 3D position information in the projector coordinate system using 3D coordinates of the specific point obtained using a depth camera and image coordinates of a specific point included in an image projected through a projector. Calculating a calibration transform coefficient representing the relationship;
Converting three-dimensional coordinates of the depth image obtained from the depth camera into normalized image coordinates using the calibration transform coefficients;
If the normalized image coordinates are included in the image size range, setting the coordinates as a projection prediction area;
Detecting an outer pixel of the projection prediction area;
Calculating three-dimensional coordinates of the depth camera coordinate system of the outer pixel;
Converting a depth camera coordinate system 3D coordinate of the outer pixel into a projector coordinate system 3D coordinate using a depth-projector coordinate system transformation matrix derived using the calibration transform coefficients;
Convert the 3D coordinates of the projector coordinate system of the outer pixel to the 3D coordinates of the user coordinate system by using the projector-user coordinate system transformation matrix that converts the 3D location information of the projector coordinate system into 3D location information of the user coordinate system based on the user's location. To do;
Projecting a 3D coordinate of the user coordinate system of the outer pixel according to a user position to detect a 2D user viewpoint correction area;
The interpolation projection depth image generated according to the depth value of the rare projection depth image corresponding to the projection image and the user's viewpoint correction region are used to designate a correction region, and then the pixels of the projection image are mapped to the location of the correction region to And correcting a pixel belonging to a user viewpoint correction area.
상기 사용자 시점 보정 영역에 속하는 픽셀을 보정하는 단계는
상기 투사 영상에 대응되는 희소 투사 깊이 영상에서 깊이값이 존재하지 않는 픽셀의 깊이값을 계산하고, 계산된 깊이값을 반영하여 보간 투사 깊이 영상을 생성하는 단계;
상기 프로젝터의 시야각(field of view)을 이용하여 보간 투사 깊이 영상의 프로젝터 좌표계 3차원 좌표를 산출하는 단계;
상기 보간 투사 깊이 영상의 프로젝터 좌표계 3차원 좌표를 사용자 좌표계 3차원 좌표로 변환하는 단계;
상기 보간 투사 깊이 영상의 사용자 좌표계 3차원 좌표가 상기 사용자 시점 보정 영역에 속하면 해당 픽셀을 보정하는 단계를 포함하는 실시간 프로젝터 영상 보정 방법.
According to claim 1,
The step of correcting a pixel belonging to the user viewpoint correction area is
Calculating a depth value of a pixel having no depth value in the rare projection depth image corresponding to the projected image, and generating an interpolated projection depth image by reflecting the calculated depth value;
Calculating a 3D coordinate of a projector coordinate system of an interpolated projection depth image using a field of view of the projector;
Converting a 3D coordinate of a projector coordinate system of the interpolation projection depth image into a 3D coordinate of a user coordinate system;
And if a user coordinate system 3D coordinate of the interpolation projection depth image belongs to the user viewpoint correction area, correcting a corresponding pixel.
상기 보간 투사 깊이 영상을 생성하는 단계는
상기 희소 투사 깊이 영상의 제1 픽셀이 유효 픽셀인지 판단하는 a 단계;
상기 제1 픽셀이 유효 픽셀이 아니고 상기 제1 픽셀에 대한 가우시안 마스크 적용 범위 내에 유효 픽셀이 존재하면, 상기 제1 픽셀에 기 설정된 가우시안 마스크를 적용하여 상기 제1 픽셀의 깊이값을 산출하는 b 단계;
상기 제1 픽셀이 유효 픽셀이거나, 상기 제1 픽셀에 대한 가우시안 마스크 적용 범위 내에 유효 픽셀이 존재하지 않으면 상기 제1 픽셀에 상기 가우시안 마스크를 적용하지 않는 c 단계;
상기 희소 투사 깊이 영상의 픽셀 전부가 유효 픽셀이 될 때까지 상기 희소 투사 깊이 영상의 각 픽셀에 대해 상기 a 내지 c 단계를 반복 수행하는 단계를 포함하며,
상기 제1 픽셀에 가우시안 마스크를 적용하는 단계는
상기 가우시안 마스크 적용 범위 내에 존재하는 모든 제1 유효 픽셀에 대하여 상기 제1 유효 픽셀의 깊이값과 상기 제1 유효 픽셀에 대응되는 가우시안 마스크의 가중치를 이용한 가중 평균을 산출하는 단계;
상기 가중 평균을 상기 제1 픽셀의 깊이값으로 설정하는 단계를 포함하는 실시간 프로젝터 영상 보정 방법.
According to claim 2,
The step of generating the interpolation projection depth image is
A step of determining whether a first pixel of the sparse projection depth image is an effective pixel;
When the first pixel is not an effective pixel and an effective pixel exists within a gaussian mask application range for the first pixel, step b is calculated by applying a preset Gaussian mask to the first pixel to calculate the depth value of the first pixel ;
A step c of not applying the Gaussian mask to the first pixel if the first pixel is an effective pixel or there is no effective pixel within a gaussian mask application range for the first pixel;
And repeating steps a to c for each pixel of the sparse projection depth image until all of the pixels of the sparse projection depth image become effective pixels,
Applying a Gaussian mask to the first pixel
Calculating a weighted average using a depth value of the first effective pixel and a weight of a Gaussian mask corresponding to the first effective pixel for all the first effective pixels existing in the gaussian mask application range;
And setting the weighted average to a depth value of the first pixel.
상기 보간 투사 깊이 영상의 사용자 좌표계 3차원 좌표가 상기 사용자 시점 보정 영역에 속하면 해당 픽셀을 보정하는 단계는
상기 보간 투사 깊이 영상의 (x, y) 위치에서의 비교 시야각이 상기 사용자 시점 보정 영역의 시야각보다 작거나 같으면, 상기 (x, y) 위치를 보정 영역으로 지정하는 단계;
상기 보정 영역의 (x, y) 위치에 상기 투사 영상의 픽셀 (xc, yc)을 맵핑하는 단계를 포함하는 실시간 프로젝터 영상 보정 방법.
The method of claim 2
If the user coordinate system 3D coordinates of the interpolation projection depth image belong to the user viewpoint correction area, correcting the corresponding pixel
If the comparison viewing angle at the (x, y) position of the interpolation projection depth image is less than or equal to the viewing angle of the user viewpoint correction area, designating the (x, y) position as a compensation area;
And mapping pixels (x c , y c ) of the projected image to (x, y) positions of the correction area.
상기 투사 영상의 픽셀 (xc, yc)은 하기 식
( = 투사 영상의 높이, = 보간 투사 깊이 영상의 (x, y) 위치에서의 x축 비교 시야각, 보간 투사 깊이 영상의 (x, y) 위치에서의 y축 비교 시야각, 사용자 시점 보정 영역의 x축 시야각, 사용자 시점 보정 영역의 y축 시야각)
에 의해 산출되는 것을 특징으로 하는 실시간 프로젝터 영상 보정 방법.
According to claim 4,
The pixel (x c , y c ) of the projected image is
( = Height of projected image, = X-axis comparison viewing angle at (x, y) position of interpolation projection depth image, Y-axis comparison viewing angle at (x, y) position of interpolation projection depth image, X-axis viewing angle of the user's viewpoint correction area, Y-axis viewing angle of the user's viewpoint correction area)
Real-time projector image correction method, characterized in that calculated by.
상기 캘리브레이션 변환 계수를 이용하여 상기 깊이 카메라로부터 획득한 깊이 영상의 3차원 좌표를 정규화된 이미지 좌표로 변환하고, 상기 정규화된 이미지 좌표가 투사 영상 크기 범위에 포함되면 해당 좌표를 투사 예측 영역으로 설정하는 투사 영역 예측부;
상기 투사 예측 영역을 이용하여 사용자의 위치를 기준으로 사용자 시점의 보정 영역을 예측하는 보정 영역 예측부;
상기 투사 영상에 대응되는 희소 투사 깊이 영상의 깊이값에 따라 생성된 보간 투사 깊이 영상 및 상기 사용자 시점 보정 영역을 이용하여 보정 영역을 지정한 후 상기 보정 영역의 위치에 상기 투사 영상의 픽셀을 맵핑하여 상기 사용자 시점 보정 영역에 속하는 픽셀을 보정하는 영상 보정부를 포함하며,
상기 보정 영역 예측부는
상기 투사 예측 영역의 외곽 픽셀을 검출하는 외곽 픽셀 검출부;
상기 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 계산하고, 상기 캘리브레이션 변환 계수를 이용하여 도출한 깊이-프로젝터 좌표계 변환 행렬을 이용하여 상기 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 프로젝터 좌표계 3차원 좌표로 변환하는 제1 좌표계 변환부;
프로젝터 좌표계의 3차원 위치 정보를 사용자 위치를 기준으로 하는 사용자 좌표계의 3차원 위치 정보로 변환하는 프로젝터-사용자 좌표계 변환 매트릭스를 이용하여 상기 외곽 픽셀의 프로젝터 좌표계 3차원 좌표를 사용자 좌표계 3차원 좌표로 변환하는 제2 좌표계 변환부;
상기 외곽 픽셀의 사용자 좌표계 3차원 좌표를 사용자 위치에 따라 투사하여 2차원의 사용자 시점 보정 영역을 검출하는 보정 영역 검출부를 포함하는 실시간 프로젝터 영상 보정 장치.
Correlation between 3D position information of the depth camera coordinate system and 3D position information of the projector coordinate system using 3D coordinates of the specific point obtained using the depth camera and coordinates of a specific point included in the projected image projected through the projector. A calibration unit for calculating a calibration transform coefficient indicating the relationship;
The 3D coordinates of the depth image obtained from the depth camera are converted into normalized image coordinates using the calibration transform coefficients, and when the normalized image coordinates are included in the projected image size range, the corresponding coordinates are set as a projection prediction area. Projection area prediction unit;
A correction region predicting unit predicting a correction region of a user's viewpoint based on a user's position using the projection prediction region;
The interpolation projection depth image generated according to the depth value of the rare projection depth image corresponding to the projection image and the user's viewpoint correction region are used to designate a correction region, and then the pixels of the projection image are mapped to the location of the correction region to It includes an image correction unit for correcting the pixels belonging to the user viewpoint correction area,
The correction region prediction unit
An outer pixel detecting unit detecting an outer pixel of the projection prediction area;
Calculate the depth camera coordinate system 3D coordinates of the outer pixel, and convert the depth camera coordinate system 3D coordinates of the outer pixel to the projector coordinate system 3D coordinates using the depth-projector coordinate system transformation matrix derived using the calibration transform coefficients. A first coordinate system conversion unit;
Convert the 3D coordinates of the projector coordinate system of the outer pixel to the 3D coordinates of the user coordinate system by using the projector-user coordinate system conversion matrix that converts the 3D position information of the projector coordinate system into 3D position information of the user coordinate system based on the user's location. A second coordinate system conversion unit;
A real-time projector image correction device comprising a correction area detection unit that detects a 2D user viewpoint correction area by projecting a 3D coordinate of a user coordinate system of the outer pixel according to a user position.
상기 영상 보정부는
상기 투사 영상에 대응되는 희소 투사 깊이 영상에서 깊이값이 존재하지 않는 픽셀의 깊이값을 계산하고 계산된 깊이값을 반영하여 보간 투사 깊이 영상을 생성하는 보간 투사 깊이 영상 생성부;
상기 프로젝터의 시야각(field of view)을 이용하여 보간 투사 깊이 영상의 프로젝터 좌표계 3차원 좌표를 산출하고, 상기 보간 투사 깊이 영상의 프로젝터 좌표계 3차원 좌표를 사용자 좌표계 3차원 좌표로 변환하며, 상기 보간 투사 깊이 영상의 사용자 좌표계 3차원 좌표가 상기 사용자 시점 보정 영역에 속하면 해당 픽셀을 보정하는 보정부를 포함하는 실시간 프로젝터 영상 보정 장치.
The method of claim 6,
The image correction unit
An interpolation projection depth image generation unit for calculating a depth value of a pixel having no depth value in the rare projection depth image corresponding to the projection image and generating an interpolation projection depth image by reflecting the calculated depth value;
The projector coordinate system 3D coordinates of the interpolation projection depth image are calculated using the field of view of the projector, the projector coordinate system 3D coordinates of the interpolation projection depth image are converted to the user coordinate system 3D coordinates, and the interpolation projection is performed. A real-time projector image correction apparatus including a correction unit that corrects a corresponding pixel when a user coordinate system 3D coordinate of a depth image belongs to the user viewpoint correction region.
상기 영상 보정부는
상기 보간 투사 깊이 영상의 사용자 좌표계 3차원 좌표가 상기 사용자 시점 투사 보정 영역에 속하면 해당 픽셀을 보정함에 있어서,
상기 보간 투사 깊이 영상의 (x, y) 위치에서의 비교 시야각이 상기 사용자 시점 투사 보정 영역의 시야각보다 작거나 같으면, 상기 (x, y) 위치를 보정 영역으로 지정하고, 상기 보정 영역의 (x, y) 위치에 상기 투사 영상의 픽셀 (xc,yc)을 맵핑하는 것을 특징으로 하는 실시간 프로젝터 영상 보정 장치.
The method of claim 7,
The image correction unit
When the user coordinate system 3D coordinate of the interpolation projection depth image belongs to the user perspective projection correction area, in correcting a corresponding pixel,
If the comparison viewing angle at the (x, y) position of the interpolation projection depth image is less than or equal to the viewing angle of the user's viewpoint projection correction area, the (x, y) position is designated as a correction area, and (x , y) Mapping a pixel (x c , y c ) of the projected image to a location.
상기 투사 영상의 픽셀 (xc, yc)은 하기 식
( = 투사 영상의 높이, = 보간 투사 깊이 영상의 (x, y) 위치에서의 x축 비교 시야각, 보간 투사 깊이 영상의 (x, y) 위치에서의 y축 비교 시야각, 사용자 시점 투사 보정 영역의 x축 시야각, 사용자 시점 투사 보정 영역의 y축 시야각)
에 의해 산출되는 것을 특징으로 하는 실시간 프로젝터 영상 보정 장치.
The method of claim 8,
The pixel (x c , y c ) of the projected image is
( = Height of projected image, = X-axis comparison viewing angle at (x, y) position of interpolation projection depth image, Y-axis comparison viewing angle at (x, y) position of interpolation projection depth image, X-axis viewing angle of the user's point of view projection correction area, Y-axis viewing angle of the user perspective projection correction area)
Real-time projector image correction device, characterized in that calculated by.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180076532A KR102093622B1 (en) | 2018-07-02 | 2018-07-02 | Method and apparatus for real-time correction of projector image using depth camera |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180076532A KR102093622B1 (en) | 2018-07-02 | 2018-07-02 | Method and apparatus for real-time correction of projector image using depth camera |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200003584A KR20200003584A (en) | 2020-01-10 |
KR102093622B1 true KR102093622B1 (en) | 2020-03-27 |
Family
ID=69158663
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180076532A KR102093622B1 (en) | 2018-07-02 | 2018-07-02 | Method and apparatus for real-time correction of projector image using depth camera |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102093622B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230135322A (en) | 2022-03-16 | 2023-09-25 | 한국항공대학교산학협력단 | Apparatus and method for processing depth video |
KR20240008726A (en) | 2022-07-12 | 2024-01-19 | 한국항공대학교산학협력단 | Apparatus and method for processing depth video |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102218805B1 (en) * | 2020-08-26 | 2021-02-22 | 한국기술교육대학교 산학협력단 | Augmented reality system based on mobile robot equipped with beam projector and depth camera, and the system's coordinate system calibration method |
KR102495545B1 (en) * | 2021-06-16 | 2023-02-06 | (주)브이브이알 | Method of correcting a beam projector image and recognizing a touch area, and apparatus performing the same |
CN114615478B (en) * | 2022-02-28 | 2023-12-01 | 青岛信芯微电子科技股份有限公司 | Projection screen correction method, projection screen correction system, projection apparatus, and storage medium |
CN116719009A (en) * | 2023-07-20 | 2023-09-08 | 北京东土科技股份有限公司 | Laser point cloud coordinate calibration method and device for tower crane automatic driving |
CN118400503B (en) * | 2024-06-27 | 2024-10-15 | 福建歌航电子信息科技有限公司 | Trapezoidal correction method and terminal |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011103534A (en) * | 2009-11-10 | 2011-05-26 | Panasonic Electric Works Co Ltd | Video display system |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101385514B1 (en) * | 2010-06-08 | 2014-04-16 | 주식회사 에스칩스 | Method And Apparatus for Transforming Stereoscopic Image by Using Depth Map Information |
KR102085228B1 (en) * | 2014-03-27 | 2020-03-05 | 한국전자통신연구원 | Imaging processing method and apparatus for calibrating depth of depth sensor |
-
2018
- 2018-07-02 KR KR1020180076532A patent/KR102093622B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011103534A (en) * | 2009-11-10 | 2011-05-26 | Panasonic Electric Works Co Ltd | Video display system |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230135322A (en) | 2022-03-16 | 2023-09-25 | 한국항공대학교산학협력단 | Apparatus and method for processing depth video |
KR20240008726A (en) | 2022-07-12 | 2024-01-19 | 한국항공대학교산학협력단 | Apparatus and method for processing depth video |
Also Published As
Publication number | Publication date |
---|---|
KR20200003584A (en) | 2020-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102093622B1 (en) | Method and apparatus for real-time correction of projector image using depth camera | |
KR100653200B1 (en) | Method and apparatus for providing panoramic view with geometry correction | |
KR102133492B1 (en) | Robust display system and method using depth camera and flight vehicle | |
EP1508876B1 (en) | Image projection method and device | |
US7119833B2 (en) | Monitoring and correction of geometric distortion in projected displays | |
JP5257616B2 (en) | Projector, program, information storage medium, and trapezoidal distortion correction method | |
US20070091334A1 (en) | Method of calculating correction data for correcting display characteristic, program for calculating correction data for correcting display characteristic and apparatus for calculating correction data for correcting display characteristic | |
US7133083B2 (en) | Dynamic shadow removal from front projection displays | |
US7167645B2 (en) | Image processing system, projector, information storage medium, and image processing method | |
US7773827B2 (en) | Hybrid system for multi-projector geometry calibration | |
US20130222776A1 (en) | Image projector, method of image projection, and computer-readable storage medium storing program for causing computer to execute image projection | |
WO2021031781A1 (en) | Method and device for calibrating projection image and projection device | |
CN108028900B (en) | Projection apparatus, projection method, and program storage medium | |
KR20060031685A (en) | Image projector, inclination angle detection method, and projection image correction method | |
JPWO2014069247A1 (en) | Image processing apparatus, image processing method, and program | |
US20120063698A1 (en) | Image processing system, projector, method and computer program product | |
JP2010283674A (en) | Projection system and projection method | |
TW202028694A (en) | Optical phase profilometry system | |
WO2005084017A1 (en) | Multiprojection system | |
JP2007036482A (en) | Information projection display and program | |
TWI722703B (en) | Projecting appartus and projecting calibration method | |
JP2011155412A (en) | Projection system and distortion correction method in the same | |
EP3606061B1 (en) | Projection device, projection system and an image calibration method | |
US20220006989A1 (en) | Method for Automatically Restoring a Calibrated State of a Projection System | |
JP2018009927A (en) | Image processing device, image processing method and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E90F | Notification of reason for final refusal | ||
E701 | Decision to grant or registration of patent right |