KR20200045176A - 깊이 카메라와 비행체를 이용한 강건한 디스플레이 시스템 및 방법 - Google Patents

깊이 카메라와 비행체를 이용한 강건한 디스플레이 시스템 및 방법 Download PDF

Info

Publication number
KR20200045176A
KR20200045176A KR1020180125888A KR20180125888A KR20200045176A KR 20200045176 A KR20200045176 A KR 20200045176A KR 1020180125888 A KR1020180125888 A KR 1020180125888A KR 20180125888 A KR20180125888 A KR 20180125888A KR 20200045176 A KR20200045176 A KR 20200045176A
Authority
KR
South Korea
Prior art keywords
image
coordinate system
depth
projector
projection
Prior art date
Application number
KR1020180125888A
Other languages
English (en)
Other versions
KR102133492B1 (ko
Inventor
배성호
유병용
이강호
이승룡
Original Assignee
경희대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 경희대학교 산학협력단 filed Critical 경희대학교 산학협력단
Priority to KR1020180125888A priority Critical patent/KR102133492B1/ko
Publication of KR20200045176A publication Critical patent/KR20200045176A/ko
Application granted granted Critical
Publication of KR102133492B1 publication Critical patent/KR102133492B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03BAPPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
    • G03B21/00Projectors or projection-type viewers; Accessories therefor
    • G03B21/54Accessories
    • G03B21/56Projection screens
    • G03B21/562Screens moving during projection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/271Image signal generators wherein the generated image signals comprise depth maps or disparity maps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/12Picture reproducers
    • H04N9/31Projection devices for colour picture display, e.g. using electronic spatial light modulators [ESLM]
    • H04N9/3179Video signal processing therefor
    • H04N9/3185Geometric adjustment, e.g. keystone or convergence

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Geometry (AREA)
  • Transforming Electric Information Into Light Information (AREA)
  • Projection Apparatus (AREA)

Abstract

디스플레이 시스템이 개시된다. 상기 디스플레이 시스템은 적어도 하나 이상의 비행체, 상기 적어도 하나 이상의 비행체에 분리 가능하도록 설치된 스크린, 상기 스크린에 영상을 투사하는 프로젝터, 상기 스크린에 대한 깊이 영상을 획득하는 깊이 카메라, 및 상기 깊이 영상을 이용하여 상기 스크린에 투사되는 투사 영상에 발생하는 왜곡을 실시간으로 보정하고, 상기 보정된 투사 영상을 상기 프로젝터에 제공하는 영상 보정 장치를 포함한다.

Description

깊이 카메라와 비행체를 이용한 강건한 디스플레이 시스템 및 방법{ROBUST DISPLAY SYSTEM AND METHOD USING DEPTH CAMERA AND FLIGHT VEHICLE}
본 발명은 디스플레이 시스템에 대한 것으로서, 보다 구체적으로 깊이 카메라와 비행체를 이용하여 외부 환경에도 강건한 디스플레이 시스템에 대한 것이다.
콘서트장이나 야외 공연시 프로젝터를 대형 스크린에 투사하여 관중들에게 정보를 전달하는 것은 이미 일반적이다. 프로젝터는 다른 디스플레이 장치에 비해 비교적 저렴한 가격에 큰 스크린을 제공할 수 있다는 장점이 있다. 그러나, 스크린의 모양이 변하거나 투사 각도가 변하는 경우 화면의 왜곡이 발생하는 단점이 있다.
따라서, 이러한 문제점을 막기 위하여 프로젝터 투사에 사용되는 스크린은 큰 구조물을 이용하여 미리 설치하며, 설치된 스크린의 위치나 크기에 맞춰 프로젝터를 설치를 한다. 여기서, 프로젝터는 평면 스크린과 고정된 투사 각도를 설정해서 사용한다. 즉, 종래의 디스플레이 시스템은 고정된 크기의 고정된 공간에서만 프로젝터를 이용하여 스크린을 생성할 수 있으며, 스크린은 계속 그 평평함을 유지해야 하는 제약이 따른다는 문제점이 있다.
대한민국 공개특허 제2016-0023534호 대한민국 공개특허 제2018-0055348호
본 발명의 목적은 야외 공연시 프로젝터와 스크린을 고정된 위치에 설치해야 한다는 제약을 받지 않고 외부 환경에도 강건한 디스플레이 시스템을 제공하는데 있다.
본 발명의 일 실시 예에 따른 디스플레이 시스템은 적어도 하나 이상의 비행체, 상기 적어도 하나 이상의 비행체에 분리 가능하도록 설치된 스크린, 상기 스크린에 영상을 투사하는 프로젝터, 상기 스크린에 대한 깊이 영상을 획득하는 깊이 카메라, 및 상기 깊이 영상을 이용하여 상기 스크린에 투사되는 투사 영상에 발생하는 왜곡을 실시간으로 보정하고, 상기 보정된 투사 영상을 상기 프로젝터에 제공하는 영상 보정 장치를 포함할 수 있다.
여기에, 상기 영상 보정 장치는 상기 프로젝터를 통해 투사되는 투사 영상에 포함된 특정 지점의 좌표와 상기 깊이 카메라를 이용하여 획득한 상기 특정 지점의 3차원 좌표를 이용하여 깊이 카메라 좌표계의 3차원 위치 정보와 프로젝터 좌표계의 3차원 위치 정보 간 상관 관계를 나타내는 캘리브레이션 변환 계수를 산출하는 캘리브레이션부, 상기 캘리브레이션 변환 계수를 이용하여 상기 깊이 카메라로부터 획득한 깊이 영상의 3차원 좌표를 정규화된 이미지 좌표로 변환하고, 상기 정규화된 이미지 좌표가 투사 영상 크기 범위에 포함되면 해당 좌표를 투사 예측 영역으로 설정하는 투사 영역 예측부, 상기 투사 예측 영역을 이용하여 사용자의 위치를 기준으로 사용자 시점의 보정 영역을 예측하는 보정 영역 예측부, 및 상기 프로젝터가 투사하는 투사 영상에서 상기 사용자 시점 보정 영역에 속하는 픽셀을 보정하는 영상 보정부를 포함할 수 있다.
여기에, 상기 보정 영역 예측부는 상기 투사 예측 영역의 외곽 픽셀을 검출하는 외곽 픽셀 검출부, 상기 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 계산하고, 상기 캘리브레이션 변환 계수를 이용하여 도출한 깊이-프로젝터 좌표계 변환 행렬을 이용하여 상기 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 프로젝터 좌표계 3차원 좌표로 변환하는 제1 좌표계 변환부, 프로젝터 좌표계의 3차원 위치 정보를 사용자 위치를 기준으로 하는 사용자 좌표계의 3차원 위치 정보로 변환하는 프로젝터-사용자 좌표계 변환 매트릭스를 이용하여 상기 외곽 픽셀의 프로젝터 좌표계 3차원 좌표를 사용자 좌표계 3차원 좌표로 변환하는 제2 좌표계 변환부, 및 상기 외곽 픽셀의 사용자 좌표계 3차원 좌표를 사용자 위치에 따라 투사하여 2차원의 사용자 시점 보정 영역을 검출하는 보정 영역 검출부를 포함할 수 있다.
여기에, 상기 영상 보정부는 상기 투사 영상에 대응되는 희소 투사 깊이 영상에서 깊이값이 존재하지 않 는 픽셀의 깊이값을 계산하고 계산된 깊이값을 반영하여 보간 투사 깊이 영상을 생 성하는 보간 투사 깊이 영상 생성부, 상기 프로젝터의 시야각(field of view)을 이용하여 보간 투사 깊이 영상의 프로젝터 좌표계 3차원 좌표를 산출하고, 상기 보간 투사 깊이 영상의 프로젝터 좌 표계 3차원 좌표를 사용자 좌표계 3차원 좌표로 변환하며, 상기 보간 투사 깊이 영 상의 사용자 좌표계 3차원 좌표가 상기 사용자 시점 보정 영역에 속하면 해당 픽셀을 보정하는 보정부를 포함하는 디스플레이 시스템..
여기에, 상기 보정부는 상기 보간 투사 깊이 영상의 사용자 좌표계 3차원 좌표가 상기 사용자 시점 투사 보정 영역에 속하면 해당 픽셀을 보정함에 있어서, 상기 보간 투사 깊이 영상의 (x, y) 위치에서의 비교 시야각이 상기 사용자 시점 투사 보정 영역의 시야각보다 작거나 같으면, 상기 (x, y) 위치를 보정 영역 으로 지정하고, 상기 보정 영역의 (x, y) 위치에 상기 투사 영상의 픽셀 (xc,yc)을 맵핑하는 것을 특징으로 할 수 있다.
여기에, 상기 스크린은 상기 적어도 하나 이상의 비행체에 의해 공중에 뜰 수 있도록 가벼운 소재로 형성될 수 있다.
여기에, 상기 적어도 하나 이상의 비행체의 동작을 제어할 수 있는 컨트롤러를 더 포함할 수 있다.
여기에, 상기 컨트롤러는 상기 적어도 하나 이상의 비행체에 상기 스크린이 설치되면 상기 적어도 하나 이상의 비행체의 동작을 동시에 제어할 수 있다.
본 발명의 일 실시 예에 따른 디스플레이 시스템은 각각 적어도 하나 이상의 비행체를 포함하는 제1 비행체 그룹 및 제2 비행체 그룹, 상기 제1 비행체 그룹에 분리 가능하도록 설치된 스크린, 상기 제2 비행체 그룹에 분리 가능하도록 설치되고, 상기 스크린에 영상을 투사하는 프로젝터, 상기 제2 비행체 그룹에 분리 가능하도록 설치되고, 상기 스크린에 대한 깊이 영상을 획득하는 깊이 카메라, 및 상기 깊이 영상을 이용하여 상기 스크린에 투사되는 투사 영상에 발생하는 왜곡을 실시간으로 보정하고, 상기 보정된 투사 영상을 상기 프로젝터에 제공하는 영상 보정 장치를 포함할 수 있다.
본 발명의 일 실시 예에 따른 디스플레이 방법은 디스플레이 시스템에 의해 수행되는 디스플레이 방법으로서, 적어도 하나 이상의 비행체를 제어하여 스크린이 비행체에 설치되도록 하는 단계, 상기 스크린이 설치된 비행체를 제어하여 프로젝터에서 투사되는 영상이 상기 스크린을 벗어나지 않는 위치에 이동시키는 단계, 상기 프로젝터가 상기 스크린에 영상을 투사하는 단계, 깊이 카메라가 상기 스크린에 대한 깊이 영상을 획득하는 단계, 영상 보정 장치가 상기 획득한 깊이 영상을 이용하여 상기 스크린에 투사되는 투사 영상에 발생하는 왜곡을 실시간으로 보정하는 단계, 및 상기 영상 보정 장치가 보정된 영상을 상기 프로젝터에 전송하고, 상기 프로젝터가 상기 보정된 영상을 상기 스크린에 투사하는 단계를 포함할 수 있다.
여기에, 상기 보정하는 단계는 상기 프로젝터를 통해 투사되는 이미지에 포함된 특정 지점의 이미지 좌표와 상기 깊이 카메라를 이용하여 획득한 상기 특정 지점의 3차원 좌표를 이용하여 깊이 카메라 좌표계의 3차원 위치 정보와 프로젝터 좌표계의 3차원 위치 정보 간 상관 관계를 나타내는 캘리브레이션 변환 계수를 산출하는 단계, 상기 캘리브레이션 변환 계수를 이용하여 상기 깊이 카메라로부터 획득한 깊 이 영상의 3차원 좌표를 정규화된 이미지 좌표로 변환하는 단계, 상기 정규화된 이미지 좌표가 이미지 크기 범위에 포함되면, 해당 좌표를 투사 예측 영역으로 설정하는 단계, 상기 투사 예측 영역의 외곽 픽셀을 검출하는 단계, 상기 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 계산하는 단계, 상기 캘리브레이션 변환 계수를 이용하여 도출한 깊이-프로젝터 좌표계 변환 행렬을 이용하여 상기 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 프로젝터 좌표계 3차원 좌표로 변환하는 단계, 프로젝터 좌표계의 3차원 위치 정보를 사용자 위치를 기준으로 하는 사용자 좌표계의 3차원 위치 정보로 변환하는 프로젝터-사용자 좌표계 변환 행렬을 이용하 여 상기 외곽 픽셀의 프로젝터 좌표계 3차원 좌표를 사용자 좌표계 3차원 좌표로 변환하는 단계, 상기 외곽 픽셀의 사용자 좌표계 3차원 좌표를 사용자 위치에 따라 투사하여 2차원의 사용자 시점 보정 영역을 검출하는 단계, 및 상기 프로젝터가 투사하는 투사 영상에서 상기 사용자 시점 보정 영역에 속하는 픽셀을 보정하는 단계를 포함할 수 있다.
여기에, 상기 사용자 시점 보정 영역에 속하는 픽셀을 보정하는 단계는 상기 투사 영상에 대응되는 희소 투사 깊이 영상에서 깊이값이 존재하지 않는 픽셀의 깊이값을 계산하고, 계산된 깊이값을 반영하여 보간 투사 깊이 영상을 생성하는 단계, 상기 프로젝터의 시야각(field of view)을 이용하여 보간 투사 깊이 영상의 프로젝터 좌표계 3차원 좌표를 산출하는 단계, 상기 보간 투사 깊이 영상의 프로젝터 좌표계 3차원 좌표를 사용자 좌표계 3차원 좌표로 변환하는 단계, 및 상기 보간 투사 깊이 영상의 사용자 좌표계 3차원 좌표가 상기 사용자 시점 보정 영역에 속하면 해당 픽셀을 보정하는 단계를 포함할 수 있다.
여기에, 상기 보간 투사 깊이 영상을 생성하는 단계는 상기 희소 투사 깊이 영상의 제1 픽셀이 유효 픽셀인지 판단하는 a 단계, 상기 제1 픽셀이 유효 픽셀이 아니고 상기 제1 픽셀에 대한 가우시안 마스크 적용 범위 내에 유효 픽셀이 존재하면, 상기 제1 픽셀에 기 설정된 가우시안 마스크를 적용하여 상기 제1 픽셀의 깊이값을 산출하는 b 단계, 상기 제1 픽셀이 유효 픽셀이거나, 상기 제1 픽셀에 대한 가우시안 마스크 적용 범위 내에 유효 픽셀이 존재하지 않으면 상기 제1 픽셀에 상기 가우시안 마스크를 적용하지 않는 c 단계, 및 상기 희소 투사 깊이 영상의 픽셀 전부가 유효 픽셀이 될 때까지 상기 희소 투사 깊이 영상의 각 픽셀에 대해 상기 a 내지 c 단계를 반복 수행하는 단계를 포함하며, 상기 제1 픽셀에 가우시안 마스크를 적용하는 단계는 상기 가우시안 마스크 적용 범위 내에 존재하는 모든 제1 유효 픽셀에 대하여 상기 제1 유효 픽셀의 깊이값과 상기 제1 유효 픽셀에 대응되는 가우시안 마스크의 가중치를 이용한 가중 평균을 산출하는 단계, 및 상기 가중 평균을 상기 제1 픽셀의 깊이값으로 설정하는 단계를 포함할 수 있다.
여기에, 상기 보간 투사 깊이 영상의 사용자 좌표계 3차원 좌표가 상기 사용자 시점 투사 보정 영역에 속하면 해당 픽셀을 보정하는 단계는 상기 보간 투사 깊이 영상의 (x, y) 위치에서의 비교 시야각이 상기 사용자 시점 투사 보정 영역의 시야각보다 작거나 같으면, 상기 (x, y) 위치를 보정 영역으로 지정하는 단계, 및 상기 보정 영역의 (x, y) 위치에 상기 투사 영상의 픽셀 (xc, yc)을 맵핑하는 단계를 포함할 수 있다.
본 발명의 일 실시 예에 따르면 공연시 원하는 위치와 원하는 크기로 스크린을 생성할 수 있다.
또한, 스크린의 위치, 재질이나 형태에 대한 제약을 받지 않기 때문에 다양한 활용이 가능한 디스플레이 시스템을 제공할 수 있다.
도 1은 본 발명의 일 실시 예에 따른 디스플레이 시스템을 도시한 것이다.
도 2는 본 발명의 일 실시 예에 따른 실시간 영상 보정 장치를 설명하기 위한 블록도이다.
도 3은 본 발명의 일 실시 예에 따른 깊이 카메라 좌표계 및 프로젝터 좌표계를 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시 예에 따른 캘리브레이션부의 동작을 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시 예에 따른 투사 영역 예측부의 동작을 설명하기 위한 도면이다.
도 6은 본 발명의 일 실시 예에 따른 보정 영역 예측부를 설명하기 위한 블록도이다.
도 7은 본 발명의 일 실시 예에 따른 사용자 시점의 실시간 투사 보정 방법의 전체적인 과정을 도시한 것이다.
도 8은 본 발명의 일 실시 예에 따른 희소 투사 깊이 영상의 생성 예를 도시한 것이다.
도 9는 본 발명의 일 실시 예에 따른 보간 투사 깊이 영상 생성 방법을 도시한 것이다.
도 10은 본 발명의 일 실시 예에 따른 디스플레이 방법의 순서도이다.
도 11은 본 발명의 일 실시 예에 따른 영상 보정 방법을 설명하기 위한 순서도이다.
도 12는 본 발명의 일 실시 예에 따른 보정 영역 보정 방법을 설명하기 위한 순서도이다.
도 13은 본 발명의 일 실시 예에 따른 보간 투사 깊이 영상 생성 방법을 설명하기 위한 순서도이다.
도 14는 본 발명의 일 실시 예에 따른 픽셀 보정 방법을 설명하기 위한 순서도이다.
본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시예들에 대해서 특정한 구조적 또는 기능적 설명들은 단지 본 발명의 개념에 따른 실시예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시예들은 다양한 형태로 실시될 수 있으며 본 명세서에 설명된 실시예들에 한정되지 않는다.
본 발명의 개념에 따른 실시예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시예들을 도면에 예시하고 본 명세서에 상세하게 설명하고자 한다. 그러나 이는 본 발명의 개념에 따른 실시예들을 특정한 개시형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만, 예를 들어 본 발명의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 표현들, 예를 들어 "~사이에"와 "바로~사이에" 또는 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 명세서에서 사용한 용어는 단지 특정한 실시예들을 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일 실시 예에 따른 디스플레이 시스템을 도시한 것이다. 도 1을 참조하면, 본 발명의 일 실시 예에 따른 디스플레이 시스템(1)은 비행체(10), 스크린(20), 프로젝터(30), 깊이 카메라(40) 및 영상 보정 장치(50)를 포함하며, 여기에 컨트롤러를 더 포함할 수 있다.
비행체(10)는 적어도 하나 이상이 포함될 수 있다. 예를 들어, 하나의 비행체(10)가 포함될 경우 스크린(20)의 상부면의 중심이 비행체(10)에 설치될 수 있으며, 2개의 비행체(10)가 포함될 경우 스크린(20)의 상부면의 일측 모서리와 타측 모서리가 각각 비행체(10)에 설치될 수 있다. 또한, 스크린(20)에 대한 외부 환경 요인을 최소화하기 위하여 3개 이상의 비행체(10)가 포함되어 일부는 스크린(20)의 상부면을 파지하고, 나머지 일부는 스크린(20)의 하부면을 파지하도록 할 수도 있다.
비행체(10)는 무인 항공기(Unmanned Aerial Vehicle, UAV), 즉 드론일 수 있다. 본 발명에 포함되는 비행체(10)는 스크린(20)을 홀딩하거나 스크린(20)과 결합될 수 있는 구성(이하, 홀딩부라고 명명함)을 채용한 형태라면 비행 반경, 고도, 비행체(10)의 크기나 로터(rotor) 수 등을 불문하고 다양한 종류나 형태의 비행체(10)가 사용될 수 있다. 비행체(10)에 포함될 수 있는 홀딩부(미도시)는 스크린(20)을 고정하여 스크린(20)이 비행체(10)에 설치될 수 있도록 컨트롤러에 의해 제어될 수 있다.
한편, 비행체(10)는 컨트롤러에 의하여 그 동작이 제어될 수 있으며, 또한 하나의 컨트롤러에 의하여 복수개의 비행체(10)가 제어될 수 있다.
컨트롤러는 적어도 하나 이상의 비행체(10)의 동작을 원거리에서 제어한다. 컨트롤러는 적어도 하나 이상의 비행체(10) 중 어느 하나 또는 동시에 제어 신호를 전송하여 비행체(10)를 제어한다. 여기서, 제어 신호는 예를 들면 비행체(10)의 이동 방향, 모터나 로터의 회전 속도, 이동 또는 정지 명령 등 비행체(10)를 제어하기 위한 다양한 형태의 신호를 포함할 수 있다.
컨트롤러는 적어도 하나 이상의 비행체(10)에 스크린(20)이 설치되면 적어도 하나 이상의 비행체(10)의 동작을 동시에 제어할 수 있다. 즉, 복수개의 비행체(10)들이 있을 경우 복수개의 비행체(10)들 각각에 대하여 동시에 동일한 제어 신호를 전송하여 복수개의 비행체(10)들이 동일한 동작을 수행하도록 제어할 수 있다. 이러한 동시 제어를 통해 스크린(20)이 설치된 복수개의 비행체(10)들이 스크린(20)을 공중에 띄운채 정지된 상태를 유지하도록 하거나, 프로젝터(30)의 투사각에 따라 스크린(20)의 위치를 적절하게 조절하도록 할 수 있다.
또한, 컨트롤러는 스크린(20)을 설치할 때 비행체(10)에 홀딩부(미도시)를 제어하기 위한 제어 신호를 비행체(10)에 전송하여 스크린(20)이 비행체(10)에 고정되도록 할 수 있다.
스크린(20)은 적어도 하나 이상의 비행체(10)에 분리 가능하도록 설치된다. 스크린(20)의 소재는 천 또는 합성수지 필름과 같은 가요성을 갖는 소재로 형성되거나, 유리, 또는 PE(Polyethylene), PP(Polypropene), 아크릴 등의 합성수지 또는 금속과 같은 소재로 형성될 수 있으나, 이에 한정되지 않고 스크린(20)이 설치되는 비행체(10)의 수나 적재 중량을 고려하여 다양한 소재가 사용될 수 있다. 바람직하게는, 스크린(20)은 비행체(10)의 적재 중량과 무관하게 공중에 뜰 수 있도록 가벼운 소재로 형성될 수 있다.
스크린(20)은 비행체(10)에 설치될 수 있도록 비행체(10)의 홀딩부(미도시)와 결합하는 부분에 별도로 결합부(미도시)를 포함할 수 있다. 결합부(미도시)를 통해 스크린(20)은 비행체(10)에 고정설치되어 비행체(10)의 움직임에 따라 함께 움직일 수 있다.
프로젝터(30)는 스크린(20)에 영상을 투사한다. 보다 구체적으로, 프로젝터(30)는 스크린(20)과 소정 거리만큼 이격되어 배치되며, 스마트폰(smartphone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 데스크탑 PC(desktop personal computer) 등과 같은 단말기나 TV, VCR, DVD 등과 같은 각종 영상 기기들의 영상 신호를 입력받아 렌즈를 통해 스크린(20)에 영상을 투사한다.
프로젝터(30)는 스크린(20)의 위치나 프로젝터(30)의 투사각 등을 고려하여 투사되는 영상이 스크린(20)을 벗어나지 않을 수 있는 위치에 배치되는 것이 바람직하다.
깊이 카메라(40)는 적외선 등을 이용하여 카메라로부터 피사체나 배경까지의 거리를 측정하여 거리에 비례 또는 반비례하는 값을 갖는 깊이(depth) 영상을 획득한다. 본 발명에서 깊이 카메라(40)가 촬영하는 피사체는 스크린(20)이므로, 스크린(20)에 대한 깊이 영상을 획득하게 된다. 깊이 영상을 획득하는 방식은 공지된 바와 같이 피사체에 대하여 조사한 적외선이 반사되어 돌아오는 시간을 이용하는 ToF(Time of Flight) 방식 등을 활용할 수 있다.
영상 보정 장치(50)는 깊이 카메라(40)를 통해 획득한 깊이 영상을 이용하여 스크린(20)에 투사되는 투사 영상에 발생하는 왜곡을 실시간으로 보정하고, 상기 보정된 투사 영상을 프로젝터(30)에 제공한다.
본 발명의 디스플레이 시스템(1)과 달리, 단순히 비행체(10), 스크린(20) 및 프로젝터(30)를 포함하는 시스템을 예로 들면 비행체(10)에 설치되는 스크린(20)이 비행체(10)에 의하여 공중에 띄워질 경우 비행체(10)의 날개에서 발생하는 바람이나 자연적으로 발생하는 바람에 의하여 흔들릴 수 있으므로 스크린(20)이 평면상태를 유지하기 어렵다. 이에 따라 프로젝터(30)를 통해 스크린(20)에 영상을 투사할 경우 영상에 왜곡이 발생하고 이러한 왜곡을 보정할 수단이 없게 된다.
한편, 이러한 비평면 스크린(20)에 투사되는 영상 왜곡을 보정하기 위하여 일반적으로 구조광 패턴(structure light pattern)을 프로젝터(30)로 투사하고 이를 RGB 카메라로 캡쳐하여 스크린(20)의 왜곡 형태를 3D 정보로 계산하고 보정을 수행한다. 그러나, 이러한 방법은 보정을 위해서 프로젝터(30)를 사용해야 하기 때문에 비평면 스크린(20)이 계속 변하는 경우 실시간으로 보정을 수행하기 어려운 문제점이 있다. 이에 따라, 본 발명의 디스플레이 시스템(1)은 깊이 카메라(40)와, 실시간으로 계속 변화하는 비평면 스크린(20)에 왜곡되지 않은 화면을 생성할 수 있는 영상 보정 장치(50)를 이용하여 비행체(10)에 설치된 스크린(20)이 외부 환경에 의하여 비평면 상태이더라도 실시간으로 투사 영상에 발생하는 왜곡을 보정할 수 있다. 영상 보정 장치(50)에 대한 상세한 설명은 후술하기로 한다.
상술한 구성들을 포함하는 본 발명의 디스플레이 시스템(1)은 적어도 하나 이상의 비행체(10)에 스크린(20)을 설치하여 공중에 띄우고, 공중에 띄워진 스크린(20)에 프로젝터(30)를 통해 영상을 투사한다. 이때, 공중에 띄워진 스크린(20)이 외부 환경에 의해 비평면 상태가 되어 투사된 영상에 왜곡이 발생할 경우 깊이 카메라(40)를 통해 스크린(20)에 대한 깊이 영상을 획득하고, 획득한 깊이 영상을 이용하여 영상 보정 장치(50)를 통해 해당 투사 영상에 대하여 실시간으로 보정을 수행함으로써 왜곡을 최소화할 수 있다.
한편, 본 발명의 디스플레이 시스템(1)에 포함되는 프로젝터(30) 및 깊이 카메라(40)는 고정된 곳에 설치될 수도 있으며, 스크린(20)과 마찬가지로 비행체(10)에 설치되어 공중에 띄워져 정지된 상태를 유지하며 영상을 투사하거나 깊이 영상을 획득할 수도 있다. 이를 위하여, 복수개의 비행체(10)들은 스크린(20)이 설치되는 제1 비행체 그룹 및 프로젝터(30) 및 깊이 카메라(40)가 설치되는 제2 비행체 그룹을 포함할 수 있다.
제1 비행체 그룹 및 제2 비행체 그룹은 각각 적어도 하나 이상의 비행체를 포함할 수 있으며, 제1 비행체 그룹과 제2 비행체 그룹은 각각 서로 다른 컨트롤러에 의해 제어될 수 있다. 한편, 스크린(20)이 외부 환경에 의해 비평면 상태가 됨에 따라 투사된 영상에 발생하는 왜곡을 보정하는 것과 별개로 제1 비행체 그룹 및 제2 비행체 그룹 중 적어도 어느 하나가 외부 환경에 의해 흔들림에 따라 깊이 카메라(40), 프로젝터(30) 및 스크린(20) 중 적어도 어느 하나가 흔들리는 경우 투사 영상이 스크린(20)을 벗어날 수도 있다. 이에 따라, 제1 비행체 그룹과 제2 비행체 그룹은 컨트롤러에 의하여 투사 영상이 스크린(20)을 벗어나지 않도록 하기 위하여 제어되는 것이 바람직하다.
예를 들어, 제1 비행체 그룹 및 제2 비행체 그룹 중 어느 하나의 그룹이 기 설정된 위치값에 해당하는 위치를 벗어나는 경우 자동적으로 기 설정된 위치값에 해당하는 위치로 복귀하도록 제어될 수 있다.
이하에서는 도 2를 참조하여 본 발명의 디스플레이 시스템(1)에 포함되는 영상 보정 장치(50)에 대하여 상세히 설명하도록 한다.
도 2는 본 발명의 일 실시 예에 따른 실시간 영상 보정 장치를 설명하기 위한 블록도이다. 영상 보정 장치(50)는 프로젝터에 물리적으로 포함되어 기능을 수행할 수 있으며, 프로젝터와는 별도의 장치로서 깊이 카메라 및 프로젝터와 연결되어 동작할 수도 있다.
영상 보정 장치(50)는 깊이 카메라에 깊이 영상 획득을 위한 제어신호를 전송할 수 있으며, 깊이 카메라로부터 깊이 영상을 획득할 수 있다. 또한, 영상 보정 장치(50)는 프로젝터를 통해 투사되는 투사 영상을 실시간으로 보정하고, 보정된 투사 영상을 프로젝터에 제공함으로써, 프로젝터가 보정된 투사 영상을 투사하도록 할 수 있다.
도 2를 참조하면, 본 발명의 일 실시 예에 따른 영상 보정 장치(50)는 상술한 기능을 수행하기 위하여 캘리브레이션부(510), 투사 영역 예측부(530), 보정 영역 예측부(550), 영상 보정부(570)를 포함할 수 있다.
캘리브레이션부(510)는 프로젝터를 통해 투사되는 투사 영상에 포함된 특정 지점의 좌표와 깊이 카메라를 이용하여 획득한 특정 지점의 3차원 좌표를 이용하여 깊이 카메라 좌표계의 3차원 위치 정보와 프로젝터 좌표계의 3차원 위치 정보 간 상관 관계를 나타내는 캘리브레이션 변환 계수를 산출할 수 있다. 또한, 캘리브레이션 변환 계수를 이용하여 깊이-프로젝터 좌표계 변환 행렬을 도출할 수 있다. 깊이-프로젝터 좌표계 변환 행렬은 깊이 카메라 좌표계를 프로젝터 좌표계로 변환하는 변환 행렬을 의미한다.
이는 투사 영역 예측부(530)에서 이루어지는 불규칙한 투사 영역의 예측 정확도를 높이기 위한 것으로, 캘리브레이션부(510)는 깊이 카메라 프로젝터 간의 상대적인 위치 관계를 수학적으로 계산함으로써 캘리브레이션을 수행한다.
이를 위해서 캘리브레이션부(510)는 깊이 카메라를 이용하여 획득한 깊이 영상이 실제 3차원 공간에서 어떤 위치에 존재하는지를 정확하게 알고 있어야 하며, 프로젝터를 통해 투사되는 투사 영상의 일 지점이 실제 3차원 공간에서 어떤 위치에 존재하는지를 알고 있어야 한다.
본 발명의 일 실시 예에 따른 깊이 카메라 좌표계 및 프로젝터 좌표계를 설명하기 위한 도 3을 참조하면, 캘리브레이션부(510)는 캘리브레이션을 수행하기 위하여 깊이 카메라의 위치를 원점으로 측정 방향을 z축, 측정 방향의 오른쪽을 x축, 위쪽을 y축으로 하는 깊이 카메라 좌표계를 정의할 수 있으며, 프로젝터의 위치를 원점으로 측정 방향을 x축, 측정 방향의 오른쪽을 x축, 위쪽을 y축으로 하는 프로젝터 좌표계를 정의할 수 있다.
본 발명의 일 실시 예에서, 캘리브레이션부(510)는 깊이 카메라 좌표계의 한 점을
Figure pat00001
, 프로젝터 좌표계의 한 점을
Figure pat00002
로 설정하고, 이를 바탕으로 캘리브레이션을 수행할 수 있다. 깊이 카메라는 깊이값을 갖는 이미지를 제공하기 때문에 측정된 깊이 영상으로 깊이 카메라 좌표계에서의 3차원 위치 정보를 구할 수 있다.
캘리브레이션부(510)는 캘리브레이션을 위한 사전 작업으로 깊이 카메라의 카메라 고유 매개 변수
Figure pat00003
값을 이용하여 특정 지점(
Figure pat00004
)의 깊이 카메라 좌표계에서의 3차원
Figure pat00005
)를 계산할 수 있다. 이는 좀 더 정확한 깊이 카메라 좌표계에서의 3차원 위치 정보를 계산하기 위한 것으로, 캘리브레이션부(510)는 깊이 카메라의 렌즈 왜곡을 고려하여 렌즈의 반경 및 접선 계수를 이용한 아래의 수학식 1을 이용하여 깊이 영상을 보정한 후 3차원 변환을 수행할 수 있다.
Figure pat00006
Figure pat00007
위 식에서
Figure pat00008
는 왜곡된 영상의 좌표 값이고
Figure pat00009
는 왜곡되지 않은 영상의 좌표 값, Kn은 n차 반경 왜곡 계수, Pn은 n차 접선 왜곡 계수이다. 본 발명의 일 실시 예에 의한 캘리브레이션부(510)는 깊이 카메라에서 제공하는 보정 파라미터를 사용하거나 깊이 영상과 특정 패턴(체스 보드, 물방울 패턴 등)을 이용한 왜곡 계수 계산 방법을 사용할 수 있다.
캘리브레이션부(510)는 깊이 카메라와 프로젝터의 상대적인 위치를 계산하기 위하여 캘리브레이션을 수행할 수 있다. 이때 상대적인 위치 관계는 동차 변환 행렬(homogeneous transform matrix)로 표현할 수 있으며, 이는 다음과 같이 나타낼 수 있다. 본 명세서에서는 깊이 카메라와 프로젝터의 상대적인 위치 관계를 나타내는 행렬을 깊이-프로젝터 좌표계 변환 행렬로 명명한다.
Figure pat00010
상기 수학식 2에서
Figure pat00011
는 깊이 카메라 좌표계의 한 점을 나타내고
Figure pat00012
는 프로젝터 좌표계의 한 점, r은 회전 변환, t는 위치 변환을 나타낸다. 깊이-프로젝터 좌표계 변환 행렬은 깊이 영상으로부터 구해진 깊이 카메라 좌표계의 3차원 위치 정보를 프로젝터 좌표계 3차원 위치 정보로 변환할 수 있다.
프로젝터 좌표계의 3차원 위치 정보를 별도로 측정할 방법이 없기 때문에 캘리브레이션부(510)는 상대적인 위치 관계를 나타내는 변환 행렬 값을 구하기 위해서 프로젝터가 투사하는 투사 영상(이미지)의 좌표를 이용할 수 있다.
본 발명의 일 실시 예에 따른 캘리브레이션부(510)의 동작을 설명하기 위한 도 4를 참조하면, 캘리브레이션부(510)는 프로젝터가 투사하고자 하는 이미지에 포함된 특정 지점의 이미지 좌표 (
Figure pat00013
)와 이미지의 크기 h,w를 이용하여 원점이 중심이고 y축 방향이 반대인 정규화된 이미지 좌표값 (
Figure pat00014
)을 아래의 수학식 3과 같이 계산할 수 있다.
Figure pat00015
Figure pat00016
다음으로, 프로젝터의 시야각(Field of View)을
Figure pat00017
라고 할 때, 캘리브레이션부(510)는 아래의 수학식 4를 이용하여 프로젝터의 초점 길이(Focal length)인
Figure pat00018
를 계산할 수 있다.
Figure pat00019
Figure pat00020
한편, 여러 점에 대하여 깊이 카메라와 프로젝터 간의 위치 및 회전 변화식은 아래의 수학식 5와 같다.
Figure pat00021
여기서, l1 내지 l11은 캘리브레이션 변환 계수,
Figure pat00022
, 0 < i ≤ N(point index)이다.
상기 수학식 5에서 캘리브레이션 변환 계수를 산출하기 위하여 특정 지점의 이미지 좌표에 해당하는 깊이 카메라의 3차원 좌표를 알아야 하는바, 캘리브레이션부(510)는 다음과 같은 방법으로 이미지 좌표에 해당하는 깊이 카메라의 3차원 좌표를 획득할 수 있다. 여기서 '이미지 좌표'란 프로젝터를 통해 투사하고자 하는 이미지에 서의 특정 지점의 좌표로, 예를 들어 1920ⅹ1080 해상도의 영상을 프로젝터로 투사하고자 할 때 위 영상 내에서의 일 지점의 좌표값이 이미지 좌표인 것으로 이해될 수 있다.
일 예로, 캘리브레이션부(510)는 도 4에 도시된 바와 같이 체스 보드 이미지를 프로젝터를 통해 투사면에 투사하고, 깊이 카메라에 내장된 적외선 또는 RGB 입력값을 통해 체스 보드의 검은색 흰색 교차점을 깊이 영상에서 검출할 수 있다. 캘리브레이션부(510)는 검출된 교차점 위치의 깊이값을 이용하여 깊이 카메라 좌표계의 3차원 좌표를 획득할 수 있다.
체스 보드 이미지의 교차점(특정 지점의 이미지 좌표)의 값은 미리 설정된 값이므로, 특정 지점에 대응되는 깊이 카메라 좌표계의 3차원 좌표를 획득하면 캘리브레이션 변환 계수를 산출할 수 있다. 각 좌표를 깊이-프로젝터 좌표계 변환 행렬에 대입하고,
Figure pat00023
형태로 계산하여 변환 계수
Figure pat00024
을 계산하면 다음과 같다. 여기서, 변환 계수
Figure pat00025
는 최초의 변환식에서의 변환 계수인
Figure pat00026
Figure pat00027
값을 편의상 치환한 것이므로, 다음과 같은 방법으로 캘리브레이션 변환 계수
Figure pat00028
Figure pat00029
를 산출할 수 있다.
예를 들어, 캘리브레이션부(510)는 아래의 수학식 6을 이용하여
Figure pat00030
Figure pat00031
를 계산할 수 있다.
Figure pat00032
Figure pat00033
여기서,
Figure pat00034
이므로
Figure pat00035
값을 복원할 수 있으며, 따라서
Figure pat00036
Figure pat00037
값을 곱해주면 깊이-프로젝터 좌표계 변환 행렬을 도출할 수 있다. 캘리브레이션부(510)는 이와 같은 수학적 방법을 통해 깊이 카메라와 프로젝터 간의 상대적인 위치 관계를 정확하게 계산하는 캘리브레이션을 수행할 수 있다.
투사 영역 예측부(530)는 캘리브레이션 변환 계수를 이용하여 상기 깊이 카메라로부터 획득한 깊이 영상의 3차원 좌표를 정규화된 이미지 좌표로 변환하고, 정규화된 이미지 좌표가 투사 영상 크기 범위에 포함되면, 해당 좌표를 투사 예측 영역으로 설정할 수 있다.
보다 구체적으로, 투사 영역 예측부(530)는 캘리브레이션을 통해 얻어진 변환 계수
Figure pat00038
를 이용하여 깊이 카메라 좌표계의 3차원 좌표로부터 정규화된 이미지 좌표를 계산할 수 있다.
투사 영역 예측부(530)는 깊이 영상의 3차원 좌표(깊이 카메라 좌표계의 3차원 좌표) 각각에 대응되는 정규화된 이미지 좌표를 아래의 수학식 7을 이용해 계산(변환)할 수 있다.
Figure pat00039
Figure pat00040
다음으로, 정규화된 이미지 좌표가 아래의 수학식 8에 해당하는 조건을 모두 만족하면, 해당 좌표를 투사 예측 영역으로 설정할 수 있다.
Figure pat00041
Figure pat00042
투사 영역 예측부(530)는 정규화된 이미지 좌표가 위 두 조건을 모두 만족하면, 해당 좌표를 투사 예측 영역으로 설정할 수 있다. 이러한 방법으로 깊이 카메라와 프로젝터를 이용하여 실제 투사 영역을 예측한 결과는 도 5에 도시된 바와 같다.
본 발명의 일 실시 예에 따른 투사 영역 예측부(530)의 동작을 설명하기 위한 도 5를 참조하면, (a)에는 프로젝터를 통해 이미지를 투사했을 때의 투사 영역을 확인할 수 있다. (a)에서의 투사 영역은 RGB 카메라를 통해 확인 가능하다. 투사 영역 예측의 정확도를 확인하기 위해 (c)에서 깊이 영상(b)을 통해 예측한 투사 예측 영역을 붉은색으로 표시하여 RGB 영상에 추가하였다. (c)를 통해 본 발명의 일 실시 예에 따른 투사 영역 예측부(530)가 정확히 투사 영역(투사 예측 영역)을 설정한 것을 확인할 수 있다.
보정 영역 예측부(550)는 투사 예측 영역을 이용하여 사용자의 위치를 기준으로 사용자 시점의 보정 영역을 예측할 수 있다. 깊이 카메라 좌표계의 3차원 좌표를 이용하여 예측된 투사 예측 영역은 깊이 카메라가 바라본 투사면 영역이다. 이를 이용하여 보정을 수행하면, 사용자가 바라보는 투사면과 그 모양이 상이하여 보정이 제대로 이루어지지 않을 수 있다.
따라서 보정 영역 예측부(550)는 사용자의 위치를 기준으로 - 사용자의 위치를 원점으로 하고 투사면을 바라보는 방향을 z축, 오른쪽을 x축, 위쪽을 y축으로- 하는 사용자 좌표계를 정의하고, 프로젝터 좌표계와 사용자 좌표계를 변환하는 동차 변환 행렬(이하, '프로젝터-사용자 좌표계 변환 행렬'이라 함)을 사용하여 투사 예측 영역의 좌표계를 변환할 수 있다.
프로젝터-사용자 좌표계 변환 행렬(Tu)은 아래의 수학식 9와 같이 나타낼 수 있다.
Figure pat00043
깊이-프로젝터 좌표계 변환 행렬을 Tp라고 하면, 사용자 위치에서 바라보는 3차원 좌표
Figure pat00044
는 아래의 수학식 10과 같이 정의될 수 있다.
Figure pat00045
위와 같은 식을 이용하면 프로젝터 좌표계의 3차원 좌표를 사용자 좌표계의 3차원 좌표로 변환 가능하다. 보정 영역 예측부(550)는 보정을 수행하기 전 빠르게 사용자 시점의 투사 영역 및/또는 보정 영역을 예측하기 위해서 깊이 영상의 투사 예측 영역의 외각 픽셀만을 이용하여 사용자 시점의 투사 영역 및/또는 보정 영역을 예측할 수 있다.
보정 영역을 예측하는 방법을 보다 자세하게 설명하면 다음과 같다.
본 발명의 일 실시 예에 따른 보정 영역 예측부를 설명하기 위한 블록도인 도 6을 참조하면, 보정 영역 예측부(550)는 외곽 픽셀 검출부(551), 제1 좌표계 변환부(553), 제2 좌표계 변환부(555), 보정 영역 검출부(557)를 포함할 수 있다.
외곽 픽셀 검출부(551)는 깊이 영상의 투사 예측 영역의 외곽 픽셀을 검출할 수 있다.
제1 좌표계 변환부(553)는 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 계산하고, 깊이-프로젝터 좌표계 변환 행렬을 이용하여 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 프로젝터 좌표계 3차원 좌표로 변환할 수 있다.
제2 좌표계 변환부(555)는 프로젝터-사용자 좌표계 변환 행렬을 이용하여 외곽 픽셀의 프로젝터 좌표계 3차원 좌표를 사용자 좌표계 3차원 좌표로 변환할 수 있다. 전술한 바와 같이 프로젝터-사용자 좌표계 변환 행렬은 프로젝터 좌표계의 3차원 위치 정보를 사용자 위치를 기준으로 하는 사용자 좌표계의 3차원 위치 정보로 변환하는 행렬을 의미한다.
보정 영역 검출부(557)는 외곽 픽셀의 사용자 좌표계 3차원 좌표를 사용자 시점에 따라 투사하여 2차원의 사용자 시점 보정 영역을 검출할 수 있다.
참고로, 이차원의 이미지로 표현되는 사용자 시점의 투사면에서 사용자 시점의 직사각형 보정 영역을 빨리 찾을 수 있기 때문에, 보정 영역 검출부(557)는 사용자 시점 투사면이 이차원 이미지인 경우를 상정한다. 사용자 위치를 고려한 이차원 이미지 상의 사용자 시점 보정 영역을 찾기 위해 선행문헌("The maximal rectangle problem", Vandevoorde et al, 1998)에 개시된 최대 직사각형 영역 검출 방법을 사용할 수 있으나, 본 발명은 이에 한정되지는 않는다.
검출된 사용자 시점 보정 영역은 2차원 이미지 상의 영역이기 때문에 사용자 시점 보정 영역이 사용자 좌표계에서 어떤 위치에 해당하는지 계산이 필요하다. 그러나 본 발명은 빠른 계산을 위해 외곽 픽셀만을 이용하기 때문에, 영역 내부의 정보는 알 수 없다. 만일 내부 영역의 정보가 존재한다 해도 투사되는 점 각각을 모두 정의하는 데는 한계가 있다.
본 발명은 이러한 문제를 해결하기 위하여 시야각과 변환값을 이용하여 최대 사각형 영역을 재정의하고, 이를 통해 단순한 크기 비교만으로 보정 영역에 해당하는 사용자 좌표계의 3차원 좌표를 계산할 수 있다. 보정 영역 직사각형을 재정의 하기 위한 시야각과 변환값은 아래의 수학식 11을 이용하여 계산될 수 있다.
Figure pat00046
Figure pat00047
Figure pat00048
Figure pat00049
위 식에서
Figure pat00050
는 2차원 이미지 상의 보정 영역 직사각형의 시작점 및 크기를,
Figure pat00051
Figure pat00052
는 사용자 시점 보정 영역을 재정의한 시야 각(FOV)값과 변환값(Transformation)을,
Figure pat00053
은 2차원 이미지를 생성할 때 사용된 투사면의 Z값을,
Figure pat00054
는 투사면의 크기,
Figure pat00055
은 이미지로 래스터화(Rasterization)된 크기,
Figure pat00056
,
Figure pat00057
를 나타낸다.
3차원 좌표계에 표현된 다각형 또는 점을 모니터 화면에 출력하기 위해서는 보통 두 단계를 거치는데, 첫 번째로 다각형의 꼭지점을 2차원 이미지에 투사하는 단계와, 두 번째로 2차원 이미지에 투사된 꼭지점을 연결하고 색을 채워 실제 화면에 출력하기 위한 이미지를 생성하는 래스터화(rasterization) 단계이다. 예를 들어, 가로 세로 크기가 1ⅹ1인 2차원 이미지에 3차원 다각형을 투사하면,
Figure pat00058
는 각각 1이 될 것이다. 첫 번째 투사 단계에서는 3차원 다각형의 모양(투사면의 모양)이 이미지로 표현되지 않고 꼭지점의 위치만 나타나므로, 이를 실제 다각형 이미지로 표현하기 위해서는 래스터화 단계가 수행되어야 한다. 즉,
Figure pat00059
은 래스터화가 수행되는 이미지의 크기를 의미하는 것으로 이해될 수 있다.
이와 같이 구해진 보정 영역 재정의 시야각 값과 변환값은 영상 보정부(570)가 보정을 수행함에 있어서, 보정 영역에 속한 3차원 좌표와 이미지 좌표를 계산할 때 사용될 수 있다.
영상 보정부(570)는 투사 영상에서 사용자 시점 보정 영역에 속하는 픽셀을 보정할 수 있다. 보다 구체적으로, 영상 보정부(570)는 투사 영상을 이루는 픽셀 각각의 깊이값을 계산하고, 프로젝터의 시야각을 이용하여 깊이값이 반영된 보간 투사 깊이 영상(Interpolated Projector Depth Image)의 프로젝터 좌표계 3차원 좌표를 산출할 수 있다. 다음으로 영상 보정부(570)는 보간 투사 깊이 영상의 프로젝터 좌표계 3차원 좌표를 사용자 좌표계를 변환하고, 사용자 좌표계 3차원 좌표가 사용자 시점 보정 영역에 속하는지 여부를 판단하여, 보간 투사 깊이 영상의 사용자 좌표계 3차원 좌표가 사용자 시점 보정 영역에 속하면 해당 픽셀을 보정할 수 있다.
일반적으로 프로젝터의 투사 영상 해상도가 깊이 카메라의 깊이 영상 해상도 보다 훨씬 높다. 따라서 캘리브레이션을 이용하여 깊이 카메라로부터 획득한 깊이 영상의 3차원 좌표를 프로젝터 좌표계 상의 투사 영상 좌표로 변환하는 것은 가능하나, 투사 영상의 좌표를 깊이 카메라 좌표계로 변환하거나 깊이 영상의 좌표로 변환하는 것은 불가능하다.
그러나 보정을 위한 워핑 테이블(warping table)을 생성하기 위해서는 프로젝터가 투사하는 투사 영상의 모든 3차원 좌표를 알아야 한다. 투사 영상의 3차원 좌표를 알기 위해서는 투사 영상을 이루는 각 픽셀의 깊이값을 알아야 하는 데, 상술한 바와 같이 투사 영상의 모든 픽셀의 좌표값에 대응되는 깊이 영상의 좌표를 알 수 없다는 문제가 있다.
이러한 문제를 해결하기 위하여 본 발명의 일 실시 예에 따른 영상 보정부(570)는 투사 영상의 모든 3차원 좌표를 재귀 가우시안 가중치 보간법 (Recursive Gaussian Weight Interpolation)을 사용하여 빠르게 계산할 수 있다. 또한, 영상 보정부(570)는 사용자 위치, 사용자 시점 보정 영역으로 정의된 시야각값과 변환값을 이용하여 빠르게 워핑 테이블을 생성할 수 있다.
본 발명의 영상 보정부(570)에서 수행되는 사용자 시점의 실시간 투사 보정 방법의 전체적인 과정은 본 발명의 일 실시 예에 따른 사용자 시점의 실시간 투사 보정 방법의 전체적인 과정을 도시한 도 7에 도시된 바와 같다.
한편, 전술한 바와 같이 본 발명의 캘리브레이션부(510)가 수행하는 캘리브레이션에 의하면 깊이 영상에서 투사 영역을 예측하는 것은 가능하나, 깊이 영상에서 프로젝터가 투사하는 투사 영상의 3차원 좌표를 모두 계산하는 것은 불가능하다. 대신 투사 영상의 해상도가 깊이 영상보다 훨씬 높으므로, 투사 영상의 3차원 좌표 중에서 깊이값을 알 수 없는 픽셀들의 3차원 좌표값을 투사 영상을 이용하여 계산할 수 있다.
투사 영상의 좌표계를 기준으로 투사 영상과 깊이 영상을 매칭시켰을 때, 해상도의 차이로 인해 깊이 정보의 일부는 알 수 없는 상태인바, 본 명세서에서는 이처럼 픽셀 전체의 깊이 정보가 모두 채워지지 않은 깊이 영상을 희소 투사 깊이 영상(sparse projector depth image)으로 명명한다. 도 8은 희소 투사 깊이 영상의 생성 예를 보여준다.
본 발명의 일 실시 예에 따른 희소 투사 깊이 영상의 생성 예를 도시한 도 8을 참조하면, (a)는 저해상도 512x424에서 검출한 투사영역을 도시한 것으로, (a)에서는 저해상도의 깊이 영상의 일부만이 투사면으로 검출되었기 때문에 투사 영상의 모든 깊이 정보를 알 수 없다.
(b)는 깊이 영상에서 검출한 투사 영역의 픽셀을 실제 투사 영상에 매칭시켰을 때 얼마나 정보가 비는지를 보여주는 도면이다.
(c)는 깊이 영상에서 검출한 투사 영역의 깊이 정보를 투사 영상에 삽입했을 때의 도면이다. 검은색은 깊이 정보가 없음을 의미하며, 회색은 깊이 영상으로부터 얻어진 깊이 정보를 나타낸다.
종래에는 이와 같은 희소 투사 깊이 영상의 깊이 정보를 계산하기 위하여 고차원의 표면 피팅(surface fitting) 방법을 사용하였다. 종래의 표면 피팅 방법의 경우, 투사면이 변하지 않는 것을 전제로 하기 때문에 매우 큰 연산량이 요구되는 방식으로 워핑 테이블을 한 번 생성하여 최초 한 번만 보정을 수행한다.
그러나 본 발명은 지속적으로 변화하는 투사면에 대응할 수 있는 보정 방법의 제공을 그 목적으로 하는바, 투사면 변화에 대응하기에는 처리 속도가 느린 표면 피팅 방식을 사용하지 않으며, 처리 시간을 크게 단축시킬 수 있는 재귀 가우시안 가중치 보간법(Recursive Gaussian Weight Interpolation)을 사용하여 투사 영상을 이루는 각 픽셀의 깊이값을 계산함으로써 모든 픽셀 각각에 대응되는 3차원 좌표를 획득할 수 있다.
영상 보정부(570)가 재귀 가우시안 가중치 보간법을 사용하여 투사 영상의 3차원 좌표를 획득함에 있어서, 투사 영상에 대응되는 희소 투사 깊이 영상에서 깊이값이 존재하지 않는 픽셀의 깊이값을 계산하고, 계산된 깊이값을 반영하여 보간 투사 깊이 영상을 생성하는 방법은 도 9에 도시된 바와 같다.
본 발명의 일 실시 예에 따른 보간 투사 깊이 영상 생성 방법을 도시한 도 9를 참조하면, 영상 보정부(570)는 희소 투사 깊이 영상의 각 픽셀에 도 9의 (a)에 도시된 바와 같은 가우시안 마스크(커널)을 적용할 수 있다. 영상 보정부(570)는 가우시안 마스크를 각 픽셀에 적용하기에 앞서, 마스크를 적용하고자 하는 제1 픽셀이 유효 픽셀인지를 판단할 수 있다. 여기서 유효 픽셀은 유효한 깊이값을 갖는 픽셀을 의미한다.
영상 보정부(570)는 제1 픽셀이 유효 픽셀이 아니고 - 제1 픽셀의 깊이값이 존재하지 않고 -, 제1 픽셀에 대한 가우시안 마스크 적용 범위 내에 유효 픽셀이 존재하면, 제1 픽셀에 가우시안 마스크를 적용하여 제1 픽셀의 깊이값을 산출할 수 있다.
영상 보정부(570)는 가우시안 마스크 적용 범위 내에 존재하는 모든 제1 유효 픽셀에 대하여 제1 유효 픽셀의 깊이값과 제1 유효 픽셀에 대응되는 가우시안 마스크의 가중치를 이용한 가중 평균을 산출하고, 가중 평균을 제1 픽셀의 깊이값으로 설정하는 방법으로 제1 픽셀에 가우시안 마스크를 적용할 수 있다.
예를 들어, 도 9에 도시된 일 실시 예를 살펴보자. 도 9에서 영상 보정부(570)는 (b)에서 중앙의 빗금 표시된 제1 픽셀(1)에 5ⅹ5 가우시안 마스크 (5)를 적용하고자 한다. 가우시안 마스크 적용 범위 내에는 유효 픽셀(3)이 2개 존재하며, 각 유효 픽셀의 깊이값은 각각 100과 108이다. 영상 보정부(570)는 모든 유효 픽셀에 대하여 유효 픽셀의 깊이값과 유효 픽셀에 대응되는 가우시안 마스크의 가중치를 이용하여 가중 평균을 산출할 수 있으며, 가중 평균을 제1 픽셀의 깊이값으로 설정할 수 있다. 따라서, 도 9의 예시에서, 제1 픽셀의 깊이값은
Figure pat00060
로 설정될 수 있다.
영상 보정부(570)는 제1 픽셀이 유효 픽셀이거나, 제1 픽셀에 대한 가우시안 마스크 적용 범위 내에 유효 픽셀이 존재하지 않으면 제1 픽셀에 가우시안 마스크를 적용하지 않고, 다른 픽셀에 대하여 위 과정을 반복할 수 있다.
영상 보정부(570)의 보간 투사 깊이 영상 생성부(571)는 희소 투사 깊이 영상의 픽셀 전부의 깊이값이 산출될 때까지, 즉 희소 투사 깊이 영상의 픽셀 전부가 유효 픽셀이 될 때까지 희소 투사 깊이 영상의 각 픽셀에 대해 위 과정을 반복 수행함으로써 보간 투사 깊이 영상을 생성할 수 있다. 보간 투사 깊이 영상(Interpolated Projector Depth Image)은 깊이값이 모두 채워진 깊이 영상으로, 프로젝터 좌표계로 변환 가능한 깊이 영상을 의미한다.
프로젝터의 시야각을 이용하면, 보간 투사 깊이 영상의 프로젝터 좌표계 3차원 좌표를 계산할 수 있는데, 계산된 프로젝터 좌표계 3차원 좌표는 보정을 위한 워핑 테이블(warping table) 생성을 위해 사용될 수 있다. 워핑 테이블을 생성하기 위해서는 사용자 시점의 투사 영역에서 보정을 수행해야 하므로, 영상 보정부(570)의 보정부(573)는 보간 투사 깊이 영상을 프로젝터 좌표계의 3차원 좌표로 변환을 수행하고, 이를 다시 사용자 좌표계로 변환할 수 있다. 이와 같은 과정은 보간 투사 깊이 영상의 각 픽셀 단위로 수행되기 때문에, 각 픽셀마다 사용자 좌표계의 좌표값을 계산하여 각 픽셀이 사용자 시점 보정 영역에 속하는지 여부를 판단할 수 있다.
각 픽셀이 사용자 시점 보정 영역에 속하는지 여부에 대한 판단은 다음과 같이 이루어질 수 있다. 예를 들어, 보정부(573)는 보간 투사 깊이 영상의 (x, y) 위치에 해당하는 픽셀을 프로젝터 좌표계의 3차원 좌표로 변환하고, 이를 다시 사용자 좌표계의 3차원 좌표
Figure pat00061
,
Figure pat00062
,
Figure pat00063
로 변환할 수 있다.
보정부(573)는 사용자 시점 보정 영역을 정의한
Figure pat00064
Figure pat00065
를 이용하여 사용자 좌표계의 3차원 좌표가 사용자 시점 보정 영역에 해당되는지를 계산할 수 있는데 이때 아래의 수학식 12와 같은 식을 이용할 수 있다.
Figure pat00066
Figure pat00067
상기 수학식 12에서
Figure pat00068
은 2차원의 사용자 시점 보정 영역을 검출할 때 사용된 프로젝터 평면(투사면)의 z값이며,
Figure pat00069
,
Figure pat00070
는 보간 투사 깊이 영상의 x, y 위치에서의 비교 시야각이다.
예를 들어, 프로젝터 평면의 왜곡된 영상이 사용자 위치에서 사각형으로 보이도록 하기 위해 사용자 시점을 기준으로 투사가 이루어지는데, 사용자 시점에서 사각형으로 보이는 영역을 수학적으로 쉽게 계산하기 위한 것이 시야각 (Field of view)이다. 이때 각 픽셀이 시야각에서 벗어났는지 포함되는지를 계산하기 위해 사용하는 값이 비교 시야각
Figure pat00071
,
Figure pat00072
으로, 각각 픽셀의 x축 방향의 투사 각도와 픽셀의 y축 방향의 투사 각도를 의미하는 것으로 이해될 수 있다.
보간 투사 깊이 영상의 각 픽셀 위치 x, y와 해당 위치의 깊이값을 알면, 픽셀이 시야각을 벗어났는지 확인이 가능하며, 영상 보정부(570)는 이를 확인하기 위해
Figure pat00073
,
Figure pat00074
를 계산할 수 있다.
보정부(573)는 계산된 비교 시야각 값
Figure pat00075
,
Figure pat00076
을 사용자 시점 투사 보정 영역의 시야각
Figure pat00077
과 비교하여 아래의 수학식 13에 해당하는 조건을 만족하는지 확인할 수 있다.
Figure pat00078
위와 같은 조건을 만족하면 보간 투사 깊이 영상의 (x, y) 위치는 사용자 시점에서 보정 영역으로 보여지는 위치에 해당한다. 즉, 위 픽셀은 사용자 시점 투사 보정 영역에 속하는 것으로 볼 수 있다.
사용자 시점 투사 보정 영역에 해당하는 픽셀을 어떤 픽셀로 대체해야 하는 지를 계산하기 위한 식은 아래의 수학식 14와 같다.
Figure pat00079
Figure pat00080
상기 수학식 14에서 w,h는 보정을 수행할 프로젝터 투사 영상의 크기이며,
Figure pat00081
는 보정 영역 (x, y)에 보여질 투사 영상의 픽셀의 좌표를 나타낸다. 영상 보정부(570)는 아래의 수학식 15에 의해 생성된 맵핑 테이블을 기준으로 보정 영역의 픽셀 을 다른 픽셀로 대체함으로써 보정을 수행할 수 있다.
Figure pat00082
여기에서
Figure pat00083
는 워핑된 영상(대체 픽셀을 맵핑한 영상)을, f()는 프로젝터의 투사 원본 영상, h()는 x,y에 해당되는
Figure pat00084
값을 맵핑 해주는 함수다.
이와 같은 과정을 통해 영상을 보정하면, 역방향 맵핑으로 영상을 워핑할 수 있기 때문에 빠르게 보정 영상을 만들 수 있다.
도 10은 본 발명의 일 실시 예에 따른 디스플레이 방법의 순서도이다. 이하에서는 앞서 설명한 부분과 중복되는 부분에 대한 상세한 설명은 생략하기로 한다.
도 10을 참조하면, 본 발명의 일 실시 예에 따른 디스플레이 방법은 디스플레이 시스템에 의해 수행되며, 스크린 설치 단계(S10), 스크린 이동 단계(S20), 영상 투사 단계(S30), 깊이 영상 획득 단계(S40), 영상 보정 단계(S50) 및 보정 영상 투사 단계(S60)를 포함한다.
스크린 설치 단계(S10)에서는 적어도 하나 이상의 비행체를 제어하여 스크린이 비행체에 설치되도록 하는 단계이다. 단계 S10에서는 비행체를 제어하여 스크린과 결합하는 부분에 비행체를 위치시키고, 비행체에 포함된 홀딩부(미도시)를 제어하여 스크린을 비행체에 고정한다. 단계 S10은 비행체에 이미 스크린이 설치된 경우 생략될 수 있다.
스크린 이동 단계(S20)에서는 스크린이 설치된 비행체를 제어하여 프로젝터에서 투사되는 영상이 스크린을 벗어나지 않고 적절하게 투사될 수 있는 위치에 이동시킨다. 단계 S20은 프로젝터 및 깊이 카메라가 설치된 위치와 프로젝터의 투사각 등을 고려하여 수행될 수 있다.
영상 투사 단계(S30)에서는 프로젝터가 특정 위치로 이동된 스크린에 영상을 투사하는 단계이다.
깊이 영상 획득 단계(S40)는 영상 투사 단계를 통해 스크린에 투사된 영상에 왜곡이 발생할 경우 영상 보정 장치는 깊이 카메라에 깊이 영상 획득을 위한 제어 신호를 전송하며, 깊이 카메라는 상기 제어 신호를 전송받으면 스크린에 대한 깊이 영상을 획득하고 이를 영상 보정 장치에 전송한다.
영상 보정 단계(S50)는 영상 보정 장치가 획득한 깊이 영상을 이용하여 스크린에 투사된 영상에 발생하는 왜곡을 보정하는 단계이다. 이에 대한 상세한 설명은 후술하기로 한다.
보정 영상 투사 단계(S60)는 단계 S50을 통해 영상 보정 장치가 투사 영상에 대한 보정을 수행하여 보정 영상을 획득하면, 이를 프로젝터에 전송하여 프로젝터가 보정 영상을 스크린에 투사하도록 한다. 이에 따라, 스크린의 투사면이 계속 변화하는 경우에도 왜곡없이 보정된 영상을 투사할 수 있다.
이하에서는 도 11 내지 도 14를 참조하여, 본 발명의 일 실시 예에 따른 영상 보정 장치의 영상 보정 방법을 설명한다.
도 11은 본 발명의 일 실시 예에 따른 영상 보정 방법을 설명하기 위한 순서도이고, 도 12는 본 발명의 일 실시 예에 따른 보정 영역 보정 방법을 설명하기 위한 순서도이고, 도 13은 본 발명의 일 실시 예에 따른 보간 투사 깊이 영상 생성 방법을 설명하기 위한 순서도이고, 도 14는 본 발명의 일 실시 예에 따른 픽셀 보정 방법을 설명하기 위한 순서도이다.
도 11을 참조하면, 본 발명의 일 실시 예에 따른 영상 보정 장치는 프로젝터를 통해 투사되는 이미지에 포함된 특정 지점의 이미지 좌표와 깊이 카메라를 이용하여 획득한 상기 특정 지점의 3차원 좌표를 이용하여 깊이 카메라 좌표계의 3차원 위치 정보와 프로젝터 좌표계의 3차원 위치 정보 간 상관 관계를 나타내는 캘리브레이션 변환 계수를 산출할 수 있다(S100).
전자 장치는 캘리브레이션 변환 계수를 산출하면, 상기 캘리브레이션 변환 계수를 이용하여 상기 깊이 카메라로부터 획득한 깊이 영상의 3차원 좌표를 정규화된 이미지 좌표로 변환할 수 있다(S200). 그리고 상기 정규화된 이미지 좌표가 이미지 크기 범위에 포함되면, 해당 좌표를 투사 예측 영역으로 설정할 수 있다(S300).
전자 장치는 투사 예측 영역이 설정되면, 투사 예측 영역의 외곽 픽셀을 검출하고(S400), 상기 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 계산할 수 있다. 그리고 캘리브레이션 변환 계수를 이용하여 도출한 깊이-프로젝터 좌표계 변환 행렬을 이용하여 상기 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 프로젝터 좌표계 3차원 좌표로 변환할 수 있다(S500).
다음으로 전자 장치는 프로젝터 좌표계의 3차원 위치 정보를 사용자 위치를 기준으로 하는 사용자 좌표계의 3차원 위치 정보로 변환하는 프로젝터-사용자 좌표계 변환 행렬을 이용하여 상기 외곽 픽셀의 프로젝터 좌표계 3차원 좌표를 사용자 좌표계 3차원 좌표로 변환할 수 있으며(S600), 상기 외곽 픽셀의 사용자 좌표계 3차원 좌표를 사용자 위치에 따라 투사하여 2차원의 사용자 시점 보정 영역을 검출할 수 있다(S700).
사용자 시점의 보정 영역을 검출한 전자 장치는 프로젝터가 투사하는 투사 영상에서 상기 사용자 시점 보정 영역에 속하는 픽셀을 보정함으로써 프로젝터 영상을 실시간으로 보정할 수 있다(S800).
도 12를 참조하여 프로젝터 영상을 실시간으로 보정하는 단계 800을 보다 구체적으로 살펴보면, 전자 장치는 상기 투사 영상에 대응되는 희소 투사 깊이 영상에서 깊이값이 존재하지 않는 픽셀의 깊이값을 계산하고, 계산된 깊이값을 반영하여 보간 투사 깊이 영상을 생성하고(S810), 상기 프로젝터의 시야각(field of view)을 이용하여 보간 투사 깊이 영상의 프로젝터 좌표계 3차원 좌표를 산출할 수 있다(S820).
단계 810의 일 예를 도시한 도 13을 참조하면, 전자 장치는 먼저 투사 영상에 대응되는 희소 투사 깊이 영상의 일 픽셀이 유효 픽셀인지 여부를 판단할 수 있다(S811). 만약 단계 811의 판단 결과, 제1 픽셀이 유효 픽셀이 아니면, 전자 장치는 제1 픽셀에 대한 가우시안 마스크 적용 범위 내에 유효 픽셀이 존재하는지 여부를 추가적으로 판단할 수 있다(S813). 만약 가우시안 마스크 적용 범위 내에 유효 픽셀이 존재하면, 전자 장치는 제1 픽셀에 가우시안 마스크를 적용하여 제1 픽셀의 깊이값을 산출할 수 있다. 이때 단계 811과 단계 813은 도 13에 도시된 순서에 의해 종속되지 아니한다.
만일 단계 811의 판단 결과, 가우시안 마스크를 적용하고자 하는 대상 픽셀이 유효 픽셀이거나, 대상 픽셀이 유효 픽셀이 아니더라도 대상 픽셀에 대한 가우시안 마스크 적용 범위 내에 유효 픽셀이 존재하지 않으면, 전자 장치는 희소 투사 깊이 영상의 다른 픽셀에 대하여 단계 811 내지 단계 812를 수행할 수 있 다(S814).
이러한 방법으로 전자 장치는 희소 투사 깊이 영상의 픽셀 전부가 유효 픽셀이 될 때까지 단계 811 내지 단계 815를 반복적으로 수행함으로써, 깊이 값이 존재하지 않는 모든 픽셀의 깊이값을 계산하여 각 픽셀에 깊이값을 채워넣을 수 있다.
가우시안 마스크를 적용하는 방법은 도 9를 참조하여 상술하였으므로 중복되는 설명은 생략한다.
깊이값이 모두 채워진 깊이 영상을 보간 투사 깊이 영상이라고 하며, 전자 장치는 상기 보간 투사 깊이 영상의 프로젝터 좌표계 3차원 좌표를 사용자 좌표계 3차원 좌표로 변환하고(S830), 보간 투사 깊이 영상의 사용자 좌표계 3차원 좌표가 상기 사용자 시점 보정 영역에 속하면 해당 픽셀을 보정할 수 있다(S840).
사용자 시점 보정 영역에 속하는 픽셀을 보정하는 방법은 도 14에 보다 자세하게 도시되어 있다. 전자 장치는 보간 투사 깊이 영상의 (x, y)에 위치한 픽셀에 대하여, 해당 위치에서의 비교 시야각이 사용자 시점 투사 보정 영역의 시야각 보다 작거나 같은지 여부를 판단하고(S841), 단계 841에서의 조건을 만족하면, (x, y) 위치를 보정 영역으로 지정할 수 있다(S843).
전자 장치는 보정 영역의 (x, y) 위치에 투사 영상의 픽셀 (xc, yc) 를 맵핑함으로써 보정 영역의 픽셀을 워핑(보정)할 수 있으며, 보정 영역에 맵핑되는 투사 영상의 픽셀 위치는 상술한 수학식 14에 의해 계산된 것일 수 있다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (14)

  1. 적어도 하나 이상의 비행체;
    상기 적어도 하나 이상의 비행체에 분리 가능하도록 설치된 스크린;
    상기 스크린에 영상을 투사하는 프로젝터;
    상기 스크린에 대한 깊이 영상을 획득하는 깊이 카메라; 및
    상기 깊이 영상을 이용하여 상기 스크린에 투사되는 투사 영상에 발생하는 왜곡을 실시간으로 보정하고, 상기 보정된 투사 영상을 상기 프로젝터에 제공하는 영상 보정 장치를 포함하는 디스플레이 시스템.
  2. 제1항에 있어서,
    상기 영상 보정 장치는
    상기 프로젝터를 통해 투사되는 투사 영상에 포함된 특정 지점의 좌표와 상기 깊이 카메라를 이용하여 획득한 상기 특정 지점의 3차원 좌표를 이용하여 깊이 카메라 좌표계의 3차원 위치 정보와 프로젝터 좌표계의 3차원 위치 정보 간 상관 관계를 나타내는 캘리브레이션 변환 계수를 산출하는 캘리브레이션부;
    상기 캘리브레이션 변환 계수를 이용하여 상기 깊이 카메라로부터 획득한 깊이 영상의 3차원 좌표를 정규화된 이미지 좌표로 변환하고, 상기 정규화된 이미지 좌표가 투사 영상 크기 범위에 포함되면 해당 좌표를 투사 예측 영역으로 설정하는 투사 영역 예측부;
    상기 투사 예측 영역을 이용하여 사용자의 위치를 기준으로 사용자 시점의 보정 영역을 예측하는 보정 영역 예측부; 및
    상기 프로젝터가 투사하는 투사 영상에서 상기 사용자 시점 보정 영역에 속하는 픽셀을 보정하는 영상 보정부를 포함하는 디스플레이 시스템.
  3. 제2항에 있어서,
    상기 보정 영역 예측부는
    상기 투사 예측 영역의 외곽 픽셀을 검출하는 외곽 픽셀 검출부;
    상기 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 계산하고, 상기 캘리브레이션 변환 계수를 이용하여 도출한 깊이-프로젝터 좌표계 변환 행렬을 이용하여 상기 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 프로젝터 좌표계 3차원 좌표로 변환하는 제1 좌표계 변환부;
    프로젝터 좌표계의 3차원 위치 정보를 사용자 위치를 기준으로 하는 사용자 좌표계의 3차원 위치 정보로 변환하는 프로젝터-사용자 좌표계 변환 매트릭스를 이용하여 상기 외곽 픽셀의 프로젝터 좌표계 3차원 좌표를 사용자 좌표계 3차원 좌표로 변환하는 제2 좌표계 변환부; 및
    상기 외곽 픽셀의 사용자 좌표계 3차원 좌표를 사용자 위치에 따라 투사하여 2차원의 사용자 시점 보정 영역을 검출하는 보정 영역 검출부를 포함하는 디스플레이 시스템.
  4. 제3항에 있어서,
    상기 영상 보정부는
    상기 투사 영상에 대응되는 희소 투사 깊이 영상에서 깊이값이 존재하지 않 는 픽셀의 깊이값을 계산하고 계산된 깊이값을 반영하여 보간 투사 깊이 영상을 생 성하는 보간 투사 깊이 영상 생성부;
    상기 프로젝터의 시야각(field of view)을 이용하여 보간 투사 깊이 영상의 프로젝터 좌표계 3차원 좌표를 산출하고, 상기 보간 투사 깊이 영상의 프로젝터 좌 표계 3차원 좌표를 사용자 좌표계 3차원 좌표로 변환하며, 상기 보간 투사 깊이 영 상의 사용자 좌표계 3차원 좌표가 상기 사용자 시점 보정 영역에 속하면 해당 픽셀 을 보정하는 보정부를 포함하는 디스플레이 시스템.
  5. 제4항에 있어서,
    상기 보정부는
    상기 보간 투사 깊이 영상의 사용자 좌표계 3차원 좌표가 상기 사용자 시점 투사 보정 영역에 속하면 해당 픽셀을 보정함에 있어서,
    상기 보간 투사 깊이 영상의 (x, y) 위치에서의 비교 시야각이 상기 사용자 시점 투사 보정 영역의 시야각보다 작거나 같으면, 상기 (x, y) 위치를 보정 영역 으로 지정하고, 상기 보정 영역의 (x, y) 위치에 상기 투사 영상의 픽셀 (xc,yc)을 맵핑하는 것을 특징으로 하는 디스플레이 시스템.
  6. 제1항에 있어서,
    상기 스크린은 상기 적어도 하나 이상의 비행체에 의해 공중에 뜰 수 있도록 가벼운 소재로 형성되는 디스플레이 시스템.
  7. 제1항에 있어서,
    상기 적어도 하나 이상의 비행체의 동작을 제어할 수 있는 컨트롤러를 더 포함하는 디스플레이 시스템.
  8. 제5항에 있어서,
    상기 컨트롤러는 상기 적어도 하나 이상의 비행체에 상기 스크린이 설치되면 상기 적어도 하나 이상의 비행체의 동작을 동시에 제어하는 디스플레이 시스템.
  9. 각각 적어도 하나 이상의 비행체를 포함하는 제1 비행체 그룹 및 제2 비행체 그룹;
    상기 제1 비행체 그룹에 분리 가능하도록 설치된 스크린;
    상기 제2 비행체 그룹에 분리 가능하도록 설치되고, 상기 스크린에 영상을 투사하는 프로젝터;
    상기 제2 비행체 그룹에 분리 가능하도록 설치되고, 상기 스크린에 대한 깊이 영상을 획득하는 깊이 카메라; 및
    상기 깊이 영상을 이용하여 상기 스크린에 투사되는 투사 영상에 발생하는 왜곡을 실시간으로 보정하고, 상기 보정된 투사 영상을 상기 프로젝터에 제공하는 영상 보정 장치를 포함하는 디스플레이 시스템.
  10. 디스플레이 시스템에 의해 수행되는 디스플레이 방법으로서,
    적어도 하나 이상의 비행체를 제어하여 스크린이 비행체에 설치되도록 하는 단계;
    상기 스크린이 설치된 비행체를 제어하여 프로젝터에서 투사되는 영상이 상기 스크린을 벗어나지 않는 위치에 이동시키는 단계;
    상기 프로젝터가 상기 스크린에 영상을 투사하는 단계;
    깊이 카메라가 상기 스크린에 대한 깊이 영상을 획득하는 단계;
    영상 보정 장치가 상기 획득한 깊이 영상을 이용하여 상기 스크린에 투사되는 투사 영상에 발생하는 왜곡을 실시간으로 보정하는 단계; 및
    상기 영상 보정 장치가 보정된 영상을 상기 프로젝터에 전송하고, 상기 프로젝터가 상기 보정된 영상을 상기 스크린에 투사하는 단계를 포함하는 디스플레이 방법.
  11. 제10항에 있어서,
    상기 보정하는 단계는
    상기 프로젝터를 통해 투사되는 이미지에 포함된 특정 지점의 이미지 좌표와 상기 깊이 카메라를 이용하여 획득한 상기 특정 지점의 3차원 좌표를 이용하여 깊이 카메라 좌표계의 3차원 위치 정보와 프로젝터 좌표계의 3차원 위치 정보 간 상관 관계를 나타내는 캘리브레이션 변환 계수를 산출하는 단계;
    상기 캘리브레이션 변환 계수를 이용하여 상기 깊이 카메라로부터 획득한 깊 이 영상의 3차원 좌표를 정규화된 이미지 좌표로 변환하는 단계;
    상기 정규화된 이미지 좌표가 이미지 크기 범위에 포함되면, 해당 좌표를 투 사 예측 영역으로 설정하는 단계;
    상기 투사 예측 영역의 외곽 픽셀을 검출하는 단계;
    상기 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 계산하는 단계;
    상기 캘리브레이션 변환 계수를 이용하여 도출한 깊이-프로젝터 좌표계 변환 행렬을 이용하여 상기 외곽 픽셀의 깊이 카메라 좌표계 3차원 좌표를 프로젝터 좌 표계 3차원 좌표로 변환하는 단계;
    프로젝터 좌표계의 3차원 위치 정보를 사용자 위치를 기준으로 하는 사용자 좌표계의 3차원 위치 정보로 변환하는 프로젝터-사용자 좌표계 변환 행렬을 이용하 여 상기 외곽 픽셀의 프로젝터 좌표계 3차원 좌표를 사용자 좌표계 3차원 좌표로 변환하는 단계;
    상기 외곽 픽셀의 사용자 좌표계 3차원 좌표를 사용자 위치에 따라 투사하여 2차원의 사용자 시점 보정 영역을 검출하는 단계; 및
    상기 프로젝터가 투사하는 투사 영상에서 상기 사용자 시점 보정 영역에 속 하는 픽셀을 보정하는 단계를 포함하는 디스플레이 방법.
  12. 제11항에 있어서,
    상기 사용자 시점 보정 영역에 속하는 픽셀을 보정하는 단계는
    상기 투사 영상에 대응되는 희소 투사 깊이 영상에서 깊이값이 존재하지 않 는 픽셀의 깊이값을 계산하고, 계산된 깊이값을 반영하여 보간 투사 깊이 영상을 생성하는 단계;
    상기 프로젝터의 시야각(field of view)을 이용하여 보간 투사 깊이 영상의 프로젝터 좌표계 3차원 좌표를 산출하는 단계;
    상기 보간 투사 깊이 영상의 프로젝터 좌표계 3차원 좌표를 사용자 좌표계 3차원 좌표로 변환하는 단계; 및
    상기 보간 투사 깊이 영상의 사용자 좌표계 3차원 좌표가 상기 사용자 시점 보정 영역에 속하면 해당 픽셀을 보정하는 단계를 포함하는 디스플레이 방법.
  13. 제12항에 있어서,
    상기 보간 투사 깊이 영상을 생성하는 단계는
    상기 희소 투사 깊이 영상의 제1 픽셀이 유효 픽셀인지 판단하는 a 단계;
    상기 제1 픽셀이 유효 픽셀이 아니고 상기 제1 픽셀에 대한 가우시안 마스크 적용 범위 내에 유효 픽셀이 존재하면, 상기 제1 픽셀에 기 설정된 가우시안 마스크를 적용하여 상기 제1 픽셀의 깊이값을 산출하는 b 단계;
    상기 제1 픽셀이 유효 픽셀이거나, 상기 제1 픽셀에 대한 가우시안 마스크 적용 범위 내에 유효 픽셀이 존재하지 않으면 상기 제1 픽셀에 상기 가우시안 마스 크를 적용하지 않는 c 단계; 및
    상기 희소 투사 깊이 영상의 픽셀 전부가 유효 픽셀이 될 때까지 상기 희소 투사 깊이 영상의 각 픽셀에 대해 상기 a 내지 c 단계를 반복 수행하는 단계를 포 함하며,
    상기 제1 픽셀에 가우시안 마스크를 적용하는 단계는
    상기 가우시안 마스크 적용 범위 내에 존재하는 모든 제1 유효 픽셀에 대하 여 상기 제1 유효 픽셀의 깊이값과 상기 제1 유효 픽셀에 대응되는 가우시안 마스 크의 가중치를 이용한 가중 평균을 산출하는 단계; 및
    상기 가중 평균을 상기 제1 픽셀의 깊이값으로 설정하는 단계를 포함하는 디스플레이 방법.
  14. 제13항에 있어서,
    상기 보간 투사 깊이 영상의 사용자 좌표계 3차원 좌표가 상기 사용자 시점 투사 보정 영역에 속하면 해당 픽셀을 보정하는 단계는
    상기 보간 투사 깊이 영상의 (x, y) 위치에서의 비교 시야각이 상기 사용자 시점 투사 보정 영역의 시야각보다 작거나 같으면, 상기 (x, y) 위치를 보정 영역 으로 지정하는 단계; 및
    상기 보정 영역의 (x, y) 위치에 상기 투사 영상의 픽셀 (xc, yc)을 맵핑하는 단계를 포함하는 디스플레이 방법.
KR1020180125888A 2018-10-22 2018-10-22 깊이 카메라와 비행체를 이용한 강건한 디스플레이 시스템 및 방법 KR102133492B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180125888A KR102133492B1 (ko) 2018-10-22 2018-10-22 깊이 카메라와 비행체를 이용한 강건한 디스플레이 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180125888A KR102133492B1 (ko) 2018-10-22 2018-10-22 깊이 카메라와 비행체를 이용한 강건한 디스플레이 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20200045176A true KR20200045176A (ko) 2020-05-04
KR102133492B1 KR102133492B1 (ko) 2020-07-13

Family

ID=70732531

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180125888A KR102133492B1 (ko) 2018-10-22 2018-10-22 깊이 카메라와 비행체를 이용한 강건한 디스플레이 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR102133492B1 (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111669557A (zh) * 2020-06-24 2020-09-15 歌尔光学科技有限公司 投影图像校正方法和校正装置
CN113706632A (zh) * 2021-08-31 2021-11-26 上海景吾智能科技有限公司 基于三维视觉标定板的标定方法和系统
US11214386B2 (en) * 2018-08-02 2022-01-04 Hapsmobile Inc. System, control device and light aircraft
KR102467381B1 (ko) * 2021-08-23 2022-11-16 (주)브이브이알 깊이 카메라를 이용한 평면 터치 인식 방법 및 이를 실행하는 장치
CN116704572A (zh) * 2022-12-30 2023-09-05 荣耀终端有限公司 一种基于深度摄像头的眼动追踪方法和装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120138633A (ko) * 2011-06-15 2012-12-26 후지쯔 가부시끼가이샤 영상 처리 방법, 영상 처리 장치 및 스캐너
KR101408295B1 (ko) * 2013-05-31 2014-06-17 (주)린소프트 비평면 스크린을 이용한 프로젝션 장치 및 방법
KR20160023534A (ko) 2015-01-08 2016-03-03 심상근 공중에 떠있는 영사기와 스크린
KR20180039954A (ko) * 2016-10-11 2018-04-19 삼성전자주식회사 영상을 처리하는 방법, 디바이스 및 기록매체
KR20180055348A (ko) 2016-11-17 2018-05-25 최윤진 드론을 이용한 옥외 광고 시스템

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120138633A (ko) * 2011-06-15 2012-12-26 후지쯔 가부시끼가이샤 영상 처리 방법, 영상 처리 장치 및 스캐너
KR101408295B1 (ko) * 2013-05-31 2014-06-17 (주)린소프트 비평면 스크린을 이용한 프로젝션 장치 및 방법
KR20160023534A (ko) 2015-01-08 2016-03-03 심상근 공중에 떠있는 영사기와 스크린
KR20180039954A (ko) * 2016-10-11 2018-04-19 삼성전자주식회사 영상을 처리하는 방법, 디바이스 및 기록매체
KR20180055348A (ko) 2016-11-17 2018-05-25 최윤진 드론을 이용한 옥외 광고 시스템

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11214386B2 (en) * 2018-08-02 2022-01-04 Hapsmobile Inc. System, control device and light aircraft
CN111669557A (zh) * 2020-06-24 2020-09-15 歌尔光学科技有限公司 投影图像校正方法和校正装置
CN111669557B (zh) * 2020-06-24 2022-05-13 歌尔光学科技有限公司 投影图像校正方法和校正装置
KR102467381B1 (ko) * 2021-08-23 2022-11-16 (주)브이브이알 깊이 카메라를 이용한 평면 터치 인식 방법 및 이를 실행하는 장치
CN113706632A (zh) * 2021-08-31 2021-11-26 上海景吾智能科技有限公司 基于三维视觉标定板的标定方法和系统
CN113706632B (zh) * 2021-08-31 2024-01-16 上海景吾智能科技有限公司 基于三维视觉标定板的标定方法和系统
CN116704572A (zh) * 2022-12-30 2023-09-05 荣耀终端有限公司 一种基于深度摄像头的眼动追踪方法和装置
CN116704572B (zh) * 2022-12-30 2024-05-28 荣耀终端有限公司 一种基于深度摄像头的眼动追踪方法和装置

Also Published As

Publication number Publication date
KR102133492B1 (ko) 2020-07-13

Similar Documents

Publication Publication Date Title
KR102133492B1 (ko) 깊이 카메라와 비행체를 이용한 강건한 디스플레이 시스템 및 방법
EP3236286B1 (en) Auto commissioning system and method
EP1608160B1 (en) Projector and image correction method
KR102093622B1 (ko) 깊이 카메라를 이용한 실시간 프로젝터 영상 보정 방법 및 장치
US8571302B2 (en) Method and apparatus to build 3-dimensional grid map and method and apparatus to control automatic traveling apparatus using the same
JP4435145B2 (ja) 幾何情報を校正してパノラマ映像を提供する方法および装置
US20190295290A1 (en) System and method of calibrating a directional light source relative to a camera&#39;s field of view
EP1508876A2 (en) Image projection method and device
EP3321884B1 (en) System and method for advanced lens geometry fitting for imaging devices
US11488354B2 (en) Information processing apparatus and information processing method
US11620732B2 (en) Multi-projection system, image projection method and projector
KR101408295B1 (ko) 비평면 스크린을 이용한 프로젝션 장치 및 방법
CN108007344B (zh) 用于可视地表示扫描数据的方法、存储介质和测量系统
JP2016178448A (ja) 投影システム、プロジェクター装置、撮像装置、および、プログラム
Vechersky et al. Colourising point clouds using independent cameras
JP2023546739A (ja) シーンの3次元モデルを生成するための方法、装置、およびシステム
WO2018167918A1 (ja) プロジェクタ、マッピング用データ作成方法、プログラム及びプロジェクションマッピングシステム
EP3606061B1 (en) Projection device, projection system and an image calibration method
US9319649B2 (en) Projector drift corrected compensated projection
US11284052B2 (en) Method for automatically restoring a calibrated state of a projection system
JP2018009927A (ja) 画像処理装置、画像処理方法及びプログラム
US20230162442A1 (en) Image processing apparatus, image processing method, and storage medium
US20160253780A1 (en) Image processing apparatus, image processing method, and storage medium
US20230209035A1 (en) Artificial panorama image production and in-painting for occluded areas in images
KR101996226B1 (ko) 피사체의 3차원 위치 측정 장치 및 그 방법

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant