KR20220162595A - 전자 장치 및 그 제어 방법 - Google Patents

전자 장치 및 그 제어 방법 Download PDF

Info

Publication number
KR20220162595A
KR20220162595A KR1020210136104A KR20210136104A KR20220162595A KR 20220162595 A KR20220162595 A KR 20220162595A KR 1020210136104 A KR1020210136104 A KR 1020210136104A KR 20210136104 A KR20210136104 A KR 20210136104A KR 20220162595 A KR20220162595 A KR 20220162595A
Authority
KR
South Korea
Prior art keywords
information
image
markers
external device
projection surface
Prior art date
Application number
KR1020210136104A
Other languages
English (en)
Inventor
김지만
박재성
정성운
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to PCT/KR2022/002569 priority Critical patent/WO2022255594A1/ko
Priority to CN202280039016.6A priority patent/CN117413511A/zh
Priority to EP22816258.2A priority patent/EP4283986A1/en
Priority to US17/704,459 priority patent/US20220385867A1/en
Publication of KR20220162595A publication Critical patent/KR20220162595A/ko

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • 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/3141Constructional details thereof
    • H04N9/3173Constructional details thereof wherein the projection device is specially adapted for enhanced portability
    • H04N9/3176Constructional details thereof wherein the projection device is specially adapted for enhanced portability wherein the projection device is incorporated in a camera

Abstract

전자 장치가 개시된다. 전자 장치는, 영상 투사부 및 복수의 마커가 포함된 테스트 영상을 투사면으로 투사하도록 영상 투사부를 제어하고, 테스트 영상에서 복수의 마커의 위치를 나타내는 제1 정보 및 외부 장치에서 투사면을 촬영한 영상에서 복수의 마커의 위치를 나타내는 제2 정보에 기초하여 촬영 영상에서 테스트 영상의 꼭지점 위치를 나타내는 제3 정보를 획득하고, 외부 장치의 자세 정보에 기초하여 제3 정보를 보정하고, 보정된 제3 정보에 기초하여 키스톤 보정을 수행하는 프로세서를 포함한다.

Description

전자 장치 및 그 제어 방법 { Electronic apparatus and control method thereof }
본 개시는 전자 장치 및 그 제어 방법에 관한 것으로, 더욱 상세하게는 영상을 투사하는 전자 장치 및 그 제어 방법에 관한 것이다.
최근 전자 기술 및 광학 기술의 발달로 다양한 프로젝터들이 활용되고 있다. 프로젝터란, 투사면(또는, 투사면)으로 빛을 투사하여, 투사면 상에 영상이 맺히도록 하는 전자 장치를 의미한다.
프로젝터를 이용하여 영상을 투사하는 경우, 프로젝터가 투사면 방향으로 평평한 곳에 똑바로 놓여진 경우에는 직사각형의 영상이 투사면에 표시된다. 그렇지 않은 경우는 상하 혹은 좌우 왜곡이 발생하거나 회전된 상태의 영상이 투사면에 나타나게 된다. 이러한 왜곡을 키스톤(keystone) 효과라고 한다.
종래의 경우, 프로젝터는 이미지 센서를 이용하여 투사면을 촬영한 후, 촬영된 이미지를 처리하여 투사면과 프로젝터 사이의 틀어진 각도를 계산하여 사용하였다. 이 경우, 프로젝터의 투사면과 이미지 센서의 측정 축을 일치하도록 하는 보정 과정을 수행해야 하는데, 이 보정 과정에서 오차가 발생하게 되면 각도 계산에 큰 영향을 주게 된다. 또한 이미지 센서에서 촬영된 이미지를 처리하는 과정 역시 많은 계산량이 요구된다는 문제점이 있었다. 또한, 키스톤 보정을 수행한 영상을 투사면에 투사한 경우, 그 영상의 크기는 투사면과 프로젝터 사이의 거리에 따라 달라지게 된다. 종래에는, 키스톤 보정을 수행한 영상을 투사면의 크기에 맞추기 어렵다는 문제점도 있었다.
본 개시는 상술한 필요성에 따른 것으로, 외부 장치에서 촬영된 영상에 기초하여 키스톤 보정을 수행하는 경우 외부 장치의 자세 정보를 반영하여 정확한 키스톤 보정을 수행하는 전자 장치 및 그 제어 방법을 제공함에 있다.
이상과 같은 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 전자 장치는, 영상 투사부 및, 복수의 마커(marker)가 포함된 테스트 영상을 투사면으로 투사하도록 상기 영상 투사부를 제어하고, 상기 테스트 영상에서 상기 복수의 마커의 위치를 나타내는 제1 정보 및 외부 장치에서 상기 투사면을 촬영한 영상에서 상기 복수의 마커의 위치를 나타내는 제2 정보에 기초하여 상기 촬영 영상에서 상기 테스트 영상의 꼭지점 영역의 위치를 나타내는 제3 정보를 획득하고, 상기 외부 장치의 자세 정보에 기초하여 상기 제3 정보를 보정하고, 상기 보정된 제3 정보에 기초하여 키스톤 보정을 수행하는 프로세서를 포함한다.
또한, 상기 프로세서는, 상기 외부 장치의 자세 정보에 기초하여 상기 제3 정보를 회전 보정하고, 상기 외부 장치와 상기 투사면 간 거리 정보에 기초하여 상기 회전 보정된 제3 정보를 투영 보정하여 상기 보정된 제3 정보를 획득할 수 있다.
또한, 상기 외부 장치의 자세 정보는, 롤(roll) 정보, 피치(pitch) 정보 또는 요(Yaw) 정보 중 적어도 하나를 포함하며, 상기 롤 정보 및 피치 정보는, 상기 외부 장치에 구비된 가속도 센서를 통해 획득되며, 상기 요 정보는, 상기 외부 장치에서 상기 투사면의 촬영에 이용된 카메라의 화각 정보에 기초하여 획득될 수 있다.
또한, 상기 프로세서는, 상기 외부 장치의 자세 정보에 기초하여 상기 투사면이 기 설정된 영역인 것으로 식별되면, 상기 가속도 센서의 출력 값 중 중력 방향 기준 값을 변경하여 상기 롤 정보, 상기 피치 정보 또는 상기 요 정보 중 적어도 하나를 획득하며, 상기 획득된 정보에 기초하여 상기 제3 좌표 정보를 보정할 수 있다.
또한, 상기 복수의 마커 각각은, 복수의 방향 각각으로 블랙 영역 및 화이트 영역이 기 설정된 비율로 구성된 패턴 형태일 수 있다.
또한, 상기 복수의 마커 각각은, 상기 테스트 영상의 네 꼭지점을 기준으로 기 설정된 비율 만큼 내측 영역에 위치되며, 상기 프로세서는, 상기 제1 정보 및 상기 기 설정된 비율에 기초하여 상기 테스트 영상의 꼭지점 위치를 나타내는 제4 정보를 획득하고, 상기 제4 정보 및 제1 변환 행렬에 기초하여 상기 촬영 영상에서 상기 제3 정보를 획득하며, 상기 제1 변환 행렬은, 상기 제1 정보 및 상기 제2 정보 간 맵핑 관계에 기초하여 획득될 수 있다.
또한, 상기 프로세서는, 상기 보정된 제3 정보 및 상기 테스트 영상의 꼭지점 좌표 정보에 기초하여 제2 변환 행렬을 획득하고, 상기 보정된 제3 정보에 기초하여 식별되는 영역 내에서 입력 영상의 종횡비에 대응되는 최대 크기의 사각형 영역을 식별하여 키스톤 보정을 수행할 수 있다.
또한, 상기 프로세서는, 상기 식별된 사각형 영역에 대응되는 제5 정보를 획득하고, 상기 획득된 제5 정보에 상기 제2 변환 행렬의 역행렬을 적용하여 키스톤 보정을 수행할 수 있다.
또한, 상기 프로세서는, 상기 보정된 제3 정보에 기초하여 획득되는 제1 영역의 꼭지점을 대각으로 이어 만나는 중심점에서 사각형을 확장하면서 확장된 사각형의 꼭지점과 상기 제1 영역의 모서리가 만나는지 확인하고, 상기 사각형의 꼭지점과 상기 제1 영역의 모서리와 만나면 상기 사각형의 작은 변은 기 설정된 픽셀 단위로 확장하고 상기 사각형의 큰 변은 상기 종횡비에 대응되도록 확장하고, 상기 사각형의 대각에 대응되는 꼭지점이 상기 제1 영역의 모서리와 만나는 위치에서 상기 최대 크기의 사각형 영역을 식별할 수 있다.
또한, 통신 인터페이스를 더 포함하며, 상기 프로세서는, 상기 외부 장치로부터 상기 복수의 마커의 위치를 나타내는 제2 정보를 상기 통신 인터페이스를 통해 수신하거나, 상기 통신 인터페이스를 통해 상기 외부 장치로부터 수신된 상기 촬영 영상에 기초하여 상기 복수의 마커의 위치를 나타내는 제2 정보를 획득할 수 있다.
또한, 상기 복수의 마커는, 투사면의 왜곡 보정을 위해 상기 테스트 영상에서 복수의 상이한 영역에 위치되며, 상기 복수의 마커 각각에 대응되는 위치를 식별하기 위해 상이한 형상일 수 있다.
한편, 일 실시 예에 따른 전자 장치의 제어 방법은, 복수의 마커가 포함된 테스트 영상을 투사면으로 투사하는 단계, 상기 테스트 영상에서 상기 복수의 마커의 위치를 나타내는 제1 정보 및 외부 장치에서 상기 투사면을 촬영한 영상에서 상기 복수의 마커의 위치를 나타내는 제2 정보에 기초하여 상기 촬영 영상에서 상기 테스트 영상의 꼭지점 위치를 나타내는 제3 정보를 획득하는 단계 및, 상기 외부 장치의 자세 정보에 기초하여 상기 제3 정보를 보정하고, 상기 보정된 제3 정보에 기초하여 키스톤 보정을 수행하는 단계를 포함할 수 있다.
또한, 상기 제3 정보를 보정하는 단계는, 상기 외부 장치의 자세 정보에 기초하여 상기 제3 정보를 회전 보정하는 단계 및, 상기 외부 장치와 상기 투사면 간 거리 정보에 기초하여 상기 회전 보정된 제3 정보를 투영 보정하여 상기 보정된 제3 정보를 획득하는 단계를 포함할 수 있다.
또한, 상기 외부 장치의 자세 정보는, 롤(roll) 정보, 피치(pitch) 정보 또는 요(Yaw) 정보 중 적어도 하나를 포함하며, 상기 롤 정보 및 피치 정보는, 상기 외부 장치에 구비된 가속도 센서를 통해 획득되며, 상기 요 정보는, 상기 외부 장치에서 상기 투사면의 촬영에 이용된 카메라의 화각 정보에 기초하여 획득될 수 있다.
또한, 상기 키스톤 보정을 수행하는 단계는, 상기 외부 장치의 자세 정보에 기초하여 상기 투사면이 기 설정된 영역인 것으로 식별되면, 상기 가속도 센서의 출력 값 중 중력 방향 기준 값을 변경하여
상기 롤 정보, 상기 피치 정보 또는 상기 요 정보 중 적어도 하나를 획득하는 단계 및, 상기 획득된 정보에 기초하여 상기 제3 좌표 정보를 보정하는 단계를 포함할 수 있다.
또한, 상기 복수의 마커 각각은, 복수의 방향 각각으로 블랙 영역 및 화이트 영역이 기 설정된 비율로 구성된 패턴 형태일 수 있다.
또한, 상기 복수의 마커 각각은, 상기 테스트 영상의 네 꼭지점을 기준으로 기 설정된 비율 만큼 내측 영역에 위치되며, 상기 제3 정보를 획득하는 단계는, 상기 제1 정보 및 상기 기 설정된 비율에 기초하여 상기 테스트 영상의 꼭지점 위치를 나타내는 제4 정보를 획득하고, 상기 제4 정보 및 제1 변환 행렬에 기초하여 상기 촬영 영상에서 상기 제3 정보를 획득하며, 상기 제1 변환 행렬은, 상기 제1 정보 및 상기 제2 정보 간 맵핑 관계에 기초하여 획득될 수 있다.
또한, 상기 키스톤 보정을 수행하는 단계는, 상기 보정된 제3 정보 및 상기 테스트 영상의 꼭지점 좌표 정보에 기초하여 제2 변환 행렬을 획득하는 단계 및, 상기 보정된 제3 정보에 기초하여 식별되는 영역 내에서 입력 영상의 종횡비에 대응되는 최대 크기의 사각형 영역을 식별하여 키스톤 보정을 수행하는 단계를 포함할 수 있다.
또한, 상기 키스톤 보정을 수행하는 단계는, 상기 식별된 사각형 영역에 대응되는 제5 정보를 획득하고, 상기 획득된 제5 정보에 상기 제2 변환 행렬의 역행렬을 적용하여 키스톤 보정을 수행할 수 있다.
또한, 상기 키스톤 보정을 수행하는 단계는, 상기 보정된 제3 정보에 기초하여 획득되는 제1 영역의 꼭지점을 대각으로 이어 만나는 중심점에서 사각형을 확장하면서 확장된 사각형의 꼭지점과 상기 제1 영역의 모서리가 만나는지 확인하는 단계, 상기 사각형의 꼭지점과 상기 제1 영역의 모서리와 만나면 상기 사각형의 작은 변은 기 설정된 픽셀 단위로 확장하고 상기 사각형의 큰 변은 상기 종횡비에 대응되도록 확장하는 단계 및 상기 사각형의 대각에 대응되는 꼭지점이 상기 제1 영역의 모서리와 만나는 위치에서 상기 최대 크기의 사각형 영역을 식별하는 단계를 포함할 수 있다.
또한, 상기 제2 정보를 획득하는 단계는, 상기 외부 장치로부터 상기 복수의 마커의 위치를 나타내는 제2 정보를 수신하거나, 상기 외부 장치로부터 수신된 상기 촬영 영상에 기초하여 상기 복수의 마커의 위치를 나타내는 제2 정보를 획득할 수 있다.
또한, 상기 복수의 마커는, 투사면의 왜곡 보정을 위해 상기 테스트 영상에서 복수의 상이한 영역에 위치되며, 상기 복수의 마커 각각에 대응되는 위치를 식별하기 위해 상이한 형상일 수 있다.
상술한 다양한 실시 예들에 따르면, 외부 장치에서 촬영된 영상에 기초하여 키스톤 보정을 수행하는 경우 외부 장치의 자세 정보를 반영하여 정확한 키스톤 보정을 수행할 수 있게 된다. 이에 따라 사용자의 편의성이 향상된다.
도 1a 및 도 1b은 이해를 돕기 위한 키스톤 보정 방법 및 좌표계의 개념을 설명하기 위한 도면들이다.
도 2는 일 실시 예에 따른 프로젝터의 구성을 나타내는 블럭도이다.
도 3a, 도 3b, 도 3c, 도 3d 및 도 3e는 일 실시 예에 따른 테스트 영상을 설명하기 위한 도면들이다.
도 4a 및 도 4b는 일 실시 예에 따른 좌표 정보를 설명하기 위한 도면들이다.
도 5는 일 예에 따른 제3 좌표 정보를 설명하기 위한 도면이다.
도 6a 및 도 6b는 일 예에 따른 롤 정보 및 피치 정보 획득 방법을 설명하기 위한 도면들이다.
도 7은 일 예에 따른 요 정보 획득 방법을 설명하기 위한 도면이다.
도 8a 및 도 8b는 일 예에 따른 사용자 단말과 투사면 간 거리 획득 방법을 설명하기 위한 도면들이다.
도 9는 일 실시 예에 따라 최대 크기의 사각형 영역을 식별하는 방법을 설명하기 위한 도면이다.
도 10은 일 실시 예에 따른 키스톤 보정에 따른 투사 영상을 설명하기 위한 도면이다.
도 11은 일 실시 예에 따른 전자 장치의 세부 구성을 설명하기 위한 도면이다.
도 12는 일 실시 예에 따른 사용자 단말의 구성을 나타내는 블럭도이다.
도 13은 일 실시 예에 따른 전자 장치의 제어 방법을 설명하기 위한 흐름도이다.
이하에서는 첨부 도면을 참조하여 본 개시를 상세히 설명한다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 개시에 대해 구체적으로 설명하기로 한다.
본 개시의 실시 예에서 사용되는 용어는 본 개시에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 개시의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 개시에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.
본 명세서에서, "가진다," "가질 수 있다," "포함한다," 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.
A 또는/및 B 중 적어도 하나라는 표현은 "A" 또는 "B" 또는 "A 및 B" 중 어느 하나를 나타내는 것으로 이해되어야 한다.
본 명세서에서 사용된 "제1," "제2," "첫째," 또는 "둘째,"등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다.
어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는, 어떤 구성요소가 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다.
본 개시에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)," "~하는 능력을 가지는(having the capacity to)," "~하도록 설계된(designed to)," "~하도록 변경된(adapted to)," "~하도록 만들어진(made to)," 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성된(또는 설정된)"은 하드웨어적으로 "특별히 설계된(specifically designed to)" 것만을 반드시 의미하지 않을 수 있다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "구성되다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 개시에서 "모듈" 혹은 "부"는 적어도 하나의 기능이나 동작을 수행하며, 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다. 또한, 복수의 "모듈" 혹은 복수의 "부"는 특정한 하드웨어로 구현될 필요가 있는 "모듈" 혹은 "부"를 제외하고는 적어도 하나의 모듈로 일체화되어 적어도 하나의 프로세서(미도시)로 구현될 수 있다.
이하 첨부된 도면들을 참조하여 본 개시의 일 실시 예를 보다 상세하게 설명한다.
도 1a 및 도 1b은 이해를 돕기 위한 키스톤 보정 방법 및 좌표계의 개념을 설명하기 위한 도면들이다.
영상을 투사하는 기능 즉, 프로젝터 기능을 구비한 전자 장치(100)는 프로젝터가 투사면과 직선 상에 위치해 있을 때에는 비교적 정확한 비율의 화면을 보여주게 되지만 공간의 여건 상 이를 만족하지 못하는 경우에는 화면이 투사면을 벗어나거나 혹은 상하좌우로 일그러진 마름모꼴 형태의 화면을 투사하게 된다. 이 경우 키스톤(Keystone) 보정이 필요할 수 있다. 여기서, 키스톤 보정이란 보여지는 화면 즉, 투사되는 화면의 모서리 부분을 강제적으로 이동시키듯 투사하여 원래의 형태인 사각형에 가깝도록 조정하는 기능을 의미한다.
일 실시 예에 따르면, 도 1a에 도시된 바와 같이 사용자 단말(200)을 이용하여 키스톤 보정을 수행할 수 있다. 예를 들어, 사용자 단말(200)에 구비된 카메라를 이용하여 영상이 투사된 투사면(10)을 촬영하고, 촬영 영상에 기초하여 키스톤 보정을 수행할 수 있다. 여기서, Projective Transformation이 이용될 수 있다. Projective Transformation는 3D 공간에서의 이미지를 2D 공간으로 투영시킨 변환이다. 즉, 3D 공간에서 서로 다른 두 시점에서 바라본 두 개의 이미지를 서로 변환하는 방법이다. 이때 서로 다른 두 이미지의 관계를 표현한 행렬을 homography matrix(이하 H matrix)라 한다. 예를 들어, H matrix의 크기는 3x3이 될 수 있다. H matrix를 획득하기 위해서는 4개의 대응쌍 좌표가 필요하다. 일 예에 따라 4개의 대응쌍 좌표는 월드 좌표계 상의 좌표가 될 수 있다.
도 1b는 이해를 돕기 위한 좌표계의 개념을 설명하기 위한 도면이다.
도 1b에 도시된 바와 같이 영상 geometry에는 월드 좌표계, 카메라 좌표계, 정규 좌표계 및 픽셀 좌표계의 4가지 좌표계가 존재한다. 여기서, 월드 좌표계와 카메라 좌표계는 3차원 좌표계이고, 정규 좌표계와 픽셀 좌표계는 2D 좌표계이다.
월드 좌표계(World Coordinate System)는 객체의 위치를 표현할 때 기준으로 삼는 좌표계이다. 월드 좌표계는 임의로 잡아서 사용할 수 있는 좌표계로서, 예를 들어, 공간 한쪽의 모서리를 원점으로 잡고 한쪽 벽면 방향을 X축, 다른쪽 벽면 방향을 Y축, 하늘을 바라보는 방향을 Z축으로 잡을 수 있다. 월드 좌표계 상의 점을 P(X, Y, Z)으로 나타낼 수 있다.
카메라 좌표계는 카메라를 기준으로 한 좌표계이다. 카메라 좌표계는 도 4에 도시된 바와 같이 카메라의 초점(렌즈의 중심)을 원점, 카메라의 정면 광학축 방향을 Z축, 카메라 아래쪽 방향을 Y축, 오른쪽 방향을 X축으로 잡는다. 카메라 좌표계 상의 점을 Pc(Xc, Yc, Zc)로 표기될 수 있다.
픽셀 좌표계(Pixel Image Coordinate System)는 영상 좌표계(Image Coordinate System)라고 불린다. 픽셀 좌표계는 실제 눈으로 보는 영상에 대한 좌표계로서 도 4에 도시된 바와 같이 이미지의 왼쪽 상단 모서리를 원점, 오른쪽 방향을 x축 증가방향, 아래쪽 방향을 y축 증가방향으로 한다. 그리고 픽셀 좌표계의 x축, y축에 의해 결정되는 평면을 이미지 평면이라 부른다.
기하학적으로 볼 때, 3D 공간 상의 한 점 P=(X,Y,Z)는 카메라의 초점(또는 렌즈의 초점)을 지나서 이미지 평면의 한 점 pimg=(x,y)에 투영된다. 점 P와 점 pimg를 잇는 선(ray) 상에 있는 모든 3D 점들은 모두 pimg로 투영된다. 따라서 3D 점 P로부터 pimg는 유일하게 결정할 수 있지만, 반대로 영상 픽셀 pimg로부터 P를 구하는 것은 부가적인 정보 없이는 불가능하다. 픽셀 좌표계의 단위는 픽셀(pixel)이며, pimg=(x,y)으로 표기될 수 있다.
정규 좌표계(normalize Image Coordinate System)는 카메라의 내부 파라미터의 영향을 제거한 이미지 좌표계로 볼 수 있다. 또한 정규 좌표계는 좌표계의 단위를 없앤(정규화된) 좌표계이며 카메라 초점과의 거리가 1인 가상의 이미지 평면을 정의하는 좌표계이다. 즉, 원래의 이미지 평면을 평행이동시켜서 카메라 초점과의 거리가 1인 지점으로 옮겨놓은 이미지 평면일 수 있다. 정규 좌표계의 원점은 이미지 평면의 중점(광학축 Zc와의 교점)이다. 정규 좌표계 상의 점은 p'=(u, v)로 표기될 수 있다. 동일한 장면을 동일한 위치와 동일한 각도에서 찍더라도 사용한 카메라에 따라서 또는 카메라 세팅에 따라서 서로 다른 영상을 얻게 된다. 이러한 요소를 제거한 정규화된 이미지 평면에서 공통된 기하학적 특성을 분석하고 이론을 수립하는 것이 보다 효과적이기 때문에 normalized image plane을 사용할 수 있다.
한편, 사용자 단말(200)에 구비된 카메라를 이용하여 촬영된 영상에 기초하여 전자 장치(100)에서 투사되는 영상에 대한 키스톤 보정을 수행하는 경우 사용자 단말(200)의 자세가 올바르지 않은 경우 정확한 키스톤 보정이 이루어지기 어렵게 된다.
이에 따라 이하에서는, 사용자 단말(200)의 자세 정보 및 기 설정된 패턴 영상에 기초하여 정확한 키스톤 보정을 수행하는 다양한 실시 예에 대해 설명하도록 한다.
도 2는 일 실시 예에 따른 전자 장치의 구성을 나타내는 블럭도이다.
도 2에 따르면, 전자 장치(100)는 영상 투사부(110) 및 적어도 하나의 프로세서(120)를 포함할 수 있다. 전자 장치(100)는 벽 또는 투사면으로 영상을 투사하는 프로젝터 또는 영상 투사 기능을 갖춘 다양한 타입의 장치로 구현 가능하다.
영상 투사부(110)는 영상을 표현하기 위한 광을 외부로 투사하여 이미지를 투사면에 출력하는 기능을 수행할 수 있다. 여기서, 투사면은 이미지가 출력되는 물리적 공간의 일부이거나 별도의 투사면일 수 있다. 영상 투사부(110)는 램프, LED, 레이저 중 적어도 하나의광원, 프로젝션 렌즈, 반사체 등 다양한 세부 구성을 포함할 수 있다.
영상 투사부(110)는 다양한 투사 방식(예를 들어, CRT(cathode-ray tube) 방식, LCD(Liquid Crystal Display) 방식, DLP(Digital Light Processing) 방식, 레이저 방식 등) 중 하나로 영상을 투사할 수 있다. 영상 투사부(110)는 적어도 하나의 광원을 포함할 수 있다.
영상 투사부(110)는 전자 장치(100)의 용도 또는 사용자의 설정 등에 따라 4:3 화면비, 5:4 화면비, 16:9 와이드 화면비로 이미지를 출력할 수 있고, 화면비에 따라 WVGA(854*480), SVGA(800*600), XGA(1024*768), WXGA(1280*720), WXGA(1280*800), SXGA(1280*1024), UXGA(1600*1200), Full HD(1920*1080) 등의 다양한 해상도로 이미지를 출력할 수 있다.
또한, 영상 투사부(110)는 프로세서(120)의 제어에 의해 투사 이미지를 조절하기 위한 다양한 기능을 수행할 수 있다. 예를 들어, 영상 투사부(110)는 줌 기능, 렌즈 시프트 기능 등을 수행할 수 있다.
적어도 하나의 프로세서(120)(이하, 프로세서)는 영상 투사부(110)와 전기적으로 연결되어 전자 장치(100)의 전반적인 동작을 제어한다. 프로세서(120)는 하나 또는 복수의 프로세서로 구성될 수 있다. 구체적으로, 프로세서(120)는 메모리(미도시)에 저장된 적어도 하나의 인스트럭션(instruction)을 실행함으로써, 본 개시의 다양한 실시 예에 따른 디스플레이 장치(100)의 동작을 수행할 수 있다.
일 실시 예에 따라 프로세서(120)는 디지털 영상 신호를 처리하는 디지털 시그널 프로세서(digital signal processor(DSP), 마이크로 프로세서(microprocessor), GPU(Graphics Processing Unit), AI(Artificial Intelligence) 프로세서, NPU (Neural Processing Unit), TCON(Time controller)으로 구현될 수 있다. 다만, 이에 한정되는 것은 아니며, 중앙처리장치(central processing unit(CPU)), MCU(Micro Controller Unit), MPU(micro processing unit), 컨트롤러(controller), 애플리케이션 프로세서(application processor(AP)), 또는 커뮤니케이션 프로세서(communication processor(CP)), ARM 프로세서 중 하나 또는 그 이상을 포함하거나, 해당 용어로 정의될 수 있다. 또한, 프로세서(140)는 프로세싱 알고리즘이 내장된 SoC(System on Chip), LSI(large scale integration)로 구현될 수도 있고, ASIC(application specific integrated circuit), FPGA(Field Programmable gate array) 형태로 구현될 수도 있다.
프로세서(120)는 복수의 마커(또는 태그) 각각이 상이한 영역에 포함된 테스트 영상을 투사면으로 투사하도록 영상 투사부(110)를 제어할 수 있다. 예를 들어, 테스트 영상은 복수의 마커 만을 포함한 영상일 수 있다. 다만, 테스트 영상은 복수의 마커 외에 다른 영상을 포함할 수 있으나, 다른 영상(예를 들어, 배경 영상)은 복수의 마커가 포함된 위치에 오버랩되지 않도록 포함될 수 있다.
일 예에 따라 복수의 마커 각각은 복수의 방향 각각으로 블랙 영역 및 화이트 영역이 기 설정된 비율로 구성된 패턴 형태일 수 있다.
일 예에 따라 복수의 마커는 기정의된 위치, 예를 들어, 영상의 테스트 영상의 네 꼭지점으로부터 임계 거리 내측 영역에 위치될 수 있다. 예를 들어, 복수의 마커는 테스트 영상의 네 꼭지점을 기준으로 영상 전체의 크기를 기준으로 기 설정된 비율 만큼 내측 영역에 위치될 수 있다.
도 3a 내지 도 3e는 일 실시 예에 따른 테스트 영상을 설명하기 위한 도면들이다.
도 3a는 일 예에 따른 마커(또는 태그)의 형태를 나타내는 도면이다. 여기서, 마커는 태그, 패턴 등의 다양한 용어로 대체 가능하다. 마커는 복수의 방향, 예를 들어, 좌우, 상하, 대각선 방향으로 블랙 영역 및 화이트 영역이 기 설정된 비율일 수 있다. 예를 들어, 도시된 바와 같이 A, B, C 어느 방향에서라도 화이트 픽셀과 블랙 픽셀의 비율이 반드시 1:1:3:1:1이 될 수 있다. 이 경우, 360° 모든 방향에서 마커의 식별이 가능할 수 있다. 다만, 수치는 일 예일 뿐이며, 1:2:3:2:1 또는 1:1:1:4:1:1 등 다양하게 변경가능함은 물론이다. 즉, 마커를 포함하는 테스트 영상을 투사하는 전자 장치(100)와 촬영 영상에서 마커의 위치를 식별하는 장치(예를 들어, 전자 장치(100) 또는 사용자 단말(200))에서 미리 약속된 패턴이면 비율은 어떤 형태로든 변경 가능하다.
도 3b는 일 예에 따른 마커의 위치를 설명하기 위한 도면이다.
테스트 영상에서 마커의 위치는 테스트 영상을 투사하는 전자 장치(100)와 촬영 영상을 분석하는 전자 장치(100) 또는 사용자 단말(200) 중 적어도 하나에서 기 알려진 위치일 수 있다. 다만, 전자 장치(100)에서 해당 위치 정보를 상대 장치로 전송하거나, 외부 서버를 통해 상대 장치가 해당 위치 정보를 수신할 수도 있다. 예를 들어 도 3b에 도시된 바와 같이 복수의 마커는 영상의 네 꼭지점으로부터 수직 및 수평 방향으로 α% 내측 영역에 위치될 수 있다.
도 3c는 다른 예에 따른 마커의 위치를 설명하기 위한 도면이다.
일 예에 따라 투사면에 왜곡이 있는 경우, 네 점의 좌표로는 투사면의 왜곡 현상은 확인하거나 보정할 수 없다. 이 경우 도 3c에 도시된 바와 같이 다양한 영역에 위치한 복수의 마커를 이용할 수 있다. 다만, 이 경우 각 마커가 어느 위치에 대응되는지 확인하기 위해 각 마커가 상이한 형상일 필요가 있다. 이에 따라 도 3c에 도시된 바와 같이 다양한 형상의 마커가 위치 표식으로 이용될 수 있다. 이와 같이 복수의 마커를 이용하여 투사면의 왜곡을 식별하는 경우 왜곡 영역에 투사되는 영상의 위치를 조정하거나, 영상의 크기를 스케일링하여 투사면 왜곡에 따른 영상 왜곡 현상을 해결할 수도 있다.
도 3d 및 도 3e는 다양한 마커의 형상을 설명하기 위한 도면들이다.
일 예에 따라 마커는 바코드와 유사하게 설계되어 특정 지점의 흑백을 통해 on/off 디지털 코드로 변환되어 어느 위치에 대응되는 마커인지 쉽게 확인이 가능하도록 구현될 수 있다. 일 예에 따라 도 3d 및 도 3e에 도시된 바와 같이 On/off 를 나타내는 표식의 길이나 on/off 위치 역시 자유롭게 조절 가능할 수 있다.
다시 도 2로 돌아와서, 프로세서(120)는 테스트 영상에서 복수의 마커의 위치를 나타내는 제1 정보 및 외부 장치에서 투사면을 촬영한 영상(이하, 촬영 영상)에서 복수의 마커의 위치를 나타내는 제2 정보를 획득할 수 있다. 여기서, 외부 장치는 도 1에 도시된 사용자 단말(200)일 수 있으며, 이하에서는 외부 장치를 사용자 단말(200)로 상정하여 설명하도록 한다.
일 예에 따라, 프로세서(120)는 영상 투사부(110)를 통해 투사한 원본 테스트 영상에서 복수의 마커의 위치를 나타내는 제1 정보를 획득할 수 있다.
또한, 프로세서(120)는 사용자 단말(200)로부터 제2 정보를 수신하거나, 사용자 단말(200)로부터 수신된 촬영 영상에 기초하여 제2 정보를 획득할 수 있다. 예를 들어, 사용자 단말(200)이 촬영 영상에서 복수의 마커의 위치를 나타내는 제2 정보를 직접 식별하여 전자 장치(100)로 전송할 수 있고, 프로세서(120)가 수신된 촬영 영상으로부터 직접 제2 정보를 획득할 수도 있다.
이하에서는 설명의 편의를 위하여 원본 테스트 영상에서의 좌표는 프로젝터 좌표계, 촬영 영상에서의 좌표는 카메라 좌표계로 설명하도록 한다. 이에 따라 제1 정보는 프로젝터 좌표계에 해당하고, 제2 정보는 카메라 좌표계에 해당할 수 있다. 이하에서는 설명의 편의를 위하여 제1 정보 및 제2 정보를 제1 좌표 정보 및 제2 좌표 정보로 명명하도록 한다.
도 4a 및 도 4b는 일 실시 예에 따른 좌표 정보를 설명하기 위한 도면들이다.
도 4a는 원본 테스트 영상 즉, 프로젝터 좌표계에서의 복수의 마커(411, 412, 413, 414)의 제1 좌표 정보를 나타내는 도면으로 제1 좌표 정보는 P1, P2, P3, P4일 수 있다. 예를 들어 제1 좌표 정보는 복수의 마커(411, 412, 413, 414)의 특정 지점, 예를 들어 중심점을 기초로 산출될 수 있다.
도 4b는 촬영 영상, 즉, 카메라 좌표계에서의 복수의 마커(411, 412, 413, 414)의 제2 좌표 정보를 나타내는 도면으로 제2 좌표 정보는 C1, C2, C3, C4일 수 있다. 예를 들어 제2 좌표 정보는 복수의 마커(411, 412, 413, 414)의 특정 지점(제1 좌표 정보와 동일한 지점), 예를 들어 중심점을 기초로 산출될 수 있다.
도 2로 돌아와서, 프로세서(120)는 제1 좌표 정보 및 제2 좌표 정보에 기초하여 촬영 영상에서 테스트 영상의 꼭지점 영역 위치를 나타내는 제3 정보를 획득할 수 있다. 여기서, 꼭지점 영역은 각 모서리 영역이 만나는 지점으로 네 개의 포인트일 수 있다. 여기서, 제3 정보는 카메라 좌표계의 좌표 정보가 될 수 있으며 설명의 편의를 위하여 제3 좌표 정보로 명명하도록 한다.
일 예에 따라 프로세서(120)는 제1 좌표 정보 및 마커의 위치 정보에 기초하여 테스트 영상에서 테스트 영상의 꼭지점 의 위치를 나타내는 제4 정보를 획득하고, 제4 정보 및 변환 행렬 즉, 제1 H matrix에 기초하여 촬영 영상에서 제3 좌표 정보를 획득할 수 있다. 여기서, 제4 정보는 프로젝터 좌표계의 좌표 정보가 될 수 있으며 설명의 편의를 위하여 제4 좌표 정보로 명명하도록 한다.
이 경우, 제1 H matrix는 제1 좌표 정보 및 제2 좌표 정보 간 맵핑 관계에 기초하여 획득될 수 있다. 일 예에 따라 프로세서(120)는 제1 좌표 정보(P1, P2, P3, P4) 및 제2 좌표 정보(C1, C2, C3, C4)에 기초하여 4 개의 좌표 쌍을 알고 있으므로 제1 H matrix를 획득할 수 있다.
프로세서(120)는 프로젝터 좌표계에서 네 꼭지점 좌표 즉, 제4 좌표 정보를 제1 H matrix 이용하여 카메라 좌표계 즉, 제3 좌표 정보로 변환할 수 있다. 예를 들어, 프로세서(120)는 테스트 영상에서 프로젝터 좌표계의 네 꼭지점 좌표 정보 즉, 제4 좌표 정보를 기 저장하고 있거나, 제1 좌표 정보에 기초하여 프로젝터 좌표계의 네 꼭지점 좌표 즉, 제4 좌표 정보를 산출할 수 있다.
예를 들어, 복수의 마커 각각은 테스트 영상의 네 꼭지점을 기준으로 기 설정된 비율 만큼 내측 영역에 위치될 수 있다. 이 경우, 프로세서(120)는 마커의 위치를 나타내는 제1 좌표 정보 및 기 설정된 비율에 기초하여 테스트 영상의 꼭지점 위치를 나타내는 제4 좌표 정보를 획득할 수 있다. 여기서, 제4 좌표 정보는 프로젝터 좌표계에 해당할 수 있다.
이어서, 프로세서(120)는 제1 H matrix 이용하여 프로젝터 좌표계에서 네 꼭지점 좌표(제4 좌표 정보)를 카메라 좌표계로 변환하여 제3 좌표 정보를 획득할 수 있다. 예를 들어, 도 5에 도시된 바와 같이 프로세서(120)는 촬영 영상에서 투사된 영상의 네 꼭지점(511, 512, 513, 514)에 대응되는 제3 좌표 정보(C5, C6, C7, C8), 즉 카메라 좌표계의 제3 좌표 정보를 획득할 수 있다.
도 2로 돌아와서, 프로세서(120)는 촬영 영상에서 테스트 영상의 꼭지점 위치를 나타내는 제3 좌표 정보를 획득하였지만, 사용자 단말(100)이 올바른 자세에서 촬영이 이루어졌다고 보기 어렵기 때문에 제3 좌표 정보에 대한 보정이 필요할 수 있다.
이에 따라 프로세서(120)는 사용자 단말(200)의 자세 정보에 기초하여 제3 좌표 정보를 보정할 수 있다. 여기서, 자세 정보는 롤(roll) 정보, 피치(pitch) 정보 또는 요(Yaw) 정보 중 적어도 하나를 포함할 수 있다. 일 예에 따라 롤 정보 및 피치 정보는, 사용자 단말(200)에 구비된 가속도 센서(또는 가속도 센서)를 통해 획득될 수 있다. 또한, 요 정보는 사용자 단말(200)에서 투사면의 촬영에 이용된 카메라의 화각 정보에 기초하여 획득될 수 있다.
또한, 프로세서(120)는 보정시 자세 정보 뿐 아니라, 사용자 단말(200)과 투사면 간 거리 정보에 기초하여 제3 좌표 정보를 보정할 수 있다. 예를 들어 프로세서(120)는 자세 정보에 기초하여 제3 좌표 정보를 회전 보정하고, 거리 정보에 기초하여 제3 좌표 정보를 투영 보정할 수 있다.
이하에서는 회전 보정 및 투영 보정 방법을 순차적으로 설명하도록 한다.
도 6a 및 도 6b는 일 예에 따른 롤 정보 및 피치 정보 획득 방법을 설명하기 위한 도면들이다.
일 예에 따라 사용자 단말(200)을 기준으로 도 6a에 도시된 바와 같이 Xc, Yc, Zc 축이 정의되면, y축 기준으로 회전하는 롤각(φ), x축을 기준으로 회전하는 피치각(
Figure pat00001
)은 하기와 같이 정의될 수 있다.
Figure pat00002
Figure pat00003
수학식 1에서 AX, AY, AZ 는 각각 사용자 단말(200)에 구비된 가속도 센서의 x, y, z축 가속도 값이다. 예를 들어, 도 6b에 도시된 바와 같이 관계에 기초하여 피치각(
Figure pat00004
)을 산출할 수 있다.
도 7은 일 예에 따른 요 정보 획득 방법을 설명하기 위한 도면이다.
중력 방향과 관계 있는 자세 정보 즉, 롤 정보 및 피치 정보는 상술한 바와 같이 가속도 센서(또는 중력 센서)의 출력 값을 이용하여 획득할 수 있으나, 중력 방향과 관계 없는 요 정보는 지자기 센서나 사용자가 임의로 지정한 방향을 기준으로 자이로 센서 등을 이용하여 획득할 수 있다. 하지만, 자이로 센서 등을 이용하지 않는 경우 카메라의 화각 정보를 기초로 요 정보를 획득할 수 있다. 예를 들어, 프로세서(120)는 촬영 영상에서 투사된 영상의 네 꼭지점(511, 512, 513, 514)에 대응되는 제3 좌표 정보(C5, C6, C7, C8)에 기초하여 카메라 좌표계에서 투사된 영상의 중심점 좌표를 획득할 수 있다. 이어서, 프로세서(120)는 투사된 영상의 중심점 좌표 및 촬영 영상의 중심점 좌표 간 픽셀 거리 값을 획득할 수 있다. 이후, 프로세서(120)는 전체 화각: 전체 픽셀 = 카메라 회전각: 픽셀 거리 값에 기초하여 카메라 회전각을 획득할 수 있다. 예를 들어, 전체 화각이 80'이고, 전체 픽셀이 4000px 이며, 픽셀 거리 값이 500px 인 경우 80':4000px = 카메라 회전각 : 500px 에 기초하여 카메라 회전각 10', 즉 요 정보를 획득할 수 있다.
한편, 일 실시 예에 따르면, 프로세서(120)는 외부 장치(200)의 자세 정보에 기초하여 투사면이 기 설정된 영역인 것으로 식별되면, 가속도 센서의 출력 값 중 중력 방향 기준 값을 변경하여 롤 정보, 피치 정보 또는 상기 요 정보 중 적어도 하나를 획득할 수 있다.
예를 들어, 투사면이 중력 방향과 동일/유사한 방향인 일반적인 벽면이 아닌 천장이거나 벽면이더라도 90도 돌려서 영상을 투사하는 경우가 있을 수 있다. 이 경우, 프로세서(130)는 가속도 센서의 출력 값 중 중력 방향 기준 값을 변경하여 롤 정보, 피치 정보 또는 요 정보 중 적어도 하나를 획득할 수 있다. 예를 들어, 투사면이 일반 벽면인 경우를 기준으로 가속도 센서의 출력 값 중 중력 방향 기준 값이 x축 값인 경우, 투사면이 천장인 경우 중력 방향 기준 값을 y축 값 또는 z축 값으로 변경하여 롤 정보, 피치 정보 또는 요 정보 중 적어도 하나를 획득할 수 있다. 이 경우 프로세서(130)는 중력 방향 기준 값인 x축 값이 임계 값 이상인 경우 투사면이 일반 벽면이 아닌 천장이거나, 벽면이더라도 90도 돌려서 영상을 투사하는 경우로 판단할 수 있다. 이에 따라 투사면이 일반 벽면이 아닌 천장이거나, 벽면이더라도 90도 돌려서 영상을 투사하는 경우에 있어서, 외부 장치(200)의 자세 정보로 인한 계산 오류를 방지할 수 있게 된다.
도 2로 돌아와서, 일 실시 예에 따라 프로세서(120)는 사용자 단말(200) 및 투사면 간 거리 정보를 획득할 수 있다.
일 실시 예에 따라 프로세서(120)는 실제 투사면이 아닌 카메라 영상이 투사되는 픽셀 단위의 가상면까지의 거리 정보를 획득할 수 있다. 여기서, 픽셀 단위의 가상면이란, 도 1b에서 설명한 픽셀 좌표계가 될 수 있다.
일 예에 따라 사용자 단말(200)에 거리 센서(예를 들어, tof센서)가 구비된 경우 사용자 단말(200)로부터 각 꼭지점의 거리(Z축 값)를 알 수 있다면, Z축 물리적 거리를 px 단위로 계산하여 Z축 값을 px 단위로 스케일링할 수 있다. x, y축 픽셀 간 거리는 촬영 영상을 통해 식별 가능하고 이에 대응되는 물리적 거리(real world distance)는 ToF 센서에 기초하여 식별 가능하므로 px 단위 및 물리적 거리 간 비율 계산이 가능하고 이를 이용하여 z축을 px로 계산할 수 있다.
다른 예에 따라 사용자 단말(200)에 거리 센서가 없고 카메라의 화각 정보를 알고 있는 경우, 렌즈(센서)의 화각 정보의 기초하여 거리 정보를 획득할 수 있다. 예를 들어, 렌즈의 화각 정보는 EXIF(exchangeable image file format)로부터 획득할 수 있다.
예를 들어, 도 8a에 도시된 바와 같이 화각에 따라 초점 거리와 화면 대각선의 물리적 비율이 고정된다. 화면의 대각선은 대각 방향 픽셀 수에 기초하여 획득 가능하고, 대상과의 거리는 초점 거리에 대응될 수 있다. 즉 촬상 대상의 두점이 xy 평면 상에서 1000px 거리이고 화면의 대각선이 2000px 이며 초점 거리와 화면 대각선이 2:1 비율이라면, xy 평면 상의 두 점의 카메라로부터 거리 값 z축의 값은 2:1 = x : 2000으로 거리 값이 4000px 가 될 수 있다. 즉, xy 평면은 카메라로부터 z축으로 4000px 떨어진 평면이 될 수 있다.
또 다른 예에 따라, 카메라에 TOF 센서가 없고, 초점 거리등의 정보도 없어 화각을 전혀 알 수 없는 경우, 일반적으로 사용자 단말에서 이용되는 렌즈 화각인 75 도 정도를 입력하여 오차를 감안하고 계산을 수행할 수 있다. 일 예에 따라 카메라에 대한 정보를 외부 서버를 통해 수신할 수 있다. 예를 들어, 카메라 제조사 혹은 키스톤 보정 서비스 제공자가 클라우드 서버 등에 카메라에 대한 정보를 저장해 놓을 수 있다. 이 경우, 전자 장치(100)는 외부 서버로부터 카메라 화각 정보를 수신할 수 있다. 예를 들어, 카메라 화각 정보는 센서 크기, 초점 거리 등의 정보를 포함할 수 있다. 도 8b에 도시된 바와 같이 촛점 거리와 카메라 화각은 반비례 관계에 있을 수 있다. 즉, 초점 거리가 짧을수록 화각은 넓고, 초점 거리가 길수록 화각은 좁게 된다.
도 2로 돌아와서, 프로세서(120)는 사용자 단말(200)의 자세 정보 및, 사용자 단말(200) 및 투사면 간 거리 정보가 획득되면, 획득된 정보에 기초하여 제3 좌표 정보를 보정할 수 있다.
구체적으로, 프로세서(120)는 사용자 단말(200)의 자세 정보에 기초하여 제3 좌표 정보를 회전 보정하고, 회전 보정된 제3 좌표 정보를 거리 정보에 기초하여 투영 보정하여 보정된 제3 좌표 정보를 획득할 수 있다.
촬영 영상는 카메라의 투사면 좌표는 인식하지만 실제로, 그 프로젝터 영상이 투사된 면이 3차원상으로 어떻게 위치하는지는 알 수 없으므로 3차원 회전 보정이 필요한다. 단 ToF 센서가 있다면 알 수 있지만 ToF 센서를 이용하지 않는 것을 가정한다. 또한, 보정 후 투사면이 기울어지지 않고 사용자 중력과 수직한 관계 임을 가정하여 가상의 이미지를 만드는 방식을 이용할 수 있다. 예를 들어, 가상의 네 점 a1, a2, a3, a4 를 생성하고 이 점들의 Z축 값은 모두 동일하다고 가정한다. 이 경우 자세 정보, 즉 롤, 피치 및 요 값의 역을 보정 값으로 적용하여 카메라 촬상 면과 기울어진 관계 면의 점 각 b1, b2, b3, b4 점을 획득한다. 이어서, b1, b2, b3, b4 점을 포함한 면에서 a1, a2, a3, a4 점으로의 면으로의 변환식을 획득한다. 구체적으로, 하기 수학식 3과 같은 회전 변환을 위한 변환식을 획득할 수 있다.
Figure pat00005
프로세서(120)는 수학식 3에 기초하여 제3 좌표 정보를 회전 보정하여 회전 보정된 제3 좌표 정보를 획득할 수 있다. 이에 따라 회전 보정된 제3 좌표 정보 즉, 3차원 상의 점에 대한 좌표가 획득될 수 있다.
이어서, 프로세서(120)는 상술한 회전 보정을 통해 획득된 3차원 좌표가 실제 카메라 촬상 면에 어떻게 투사될 지 계산할 수 있다. 즉, 프로세서(120)는 회전 보정을 통해 획득된 3차원 좌표를 투영 보정하여 최종 보정된 제3 좌표 정보를 획득할 수 있다. 도 1b를 참고하면, 카메라 좌표계 상의 3차원 상의 점은 카메라 센서를 거치는 가상의 소실점 선을 따라 촬상면에 투사된다. 이에 따라 프로세서(120)는 3차원 상의 점이 3차원 카메라 좌표계 상에서 2D 촬상면, 예를 들어 2차원 정규 좌표계에 어떻게 투사될지 계산할 수 있다.
예를 들어, 투영 기준점을 원점으로 잡은 경우 3차원 상의 점 P를 p'으로 투영시키는 변환식은 다음 수학식 4와 같이 주어질 수 있다.
Figure pat00006
수학식 4에 따르면, 투영 평면이 Zc = d일 경우 (Xc, Yc, Zc, 1)는 (Xc, Yc, Zc/d) = (d*Xc/Zc, d*Yc/Zc, 1)로 투영될 수 있다.
상술한 바와 같이 프로세서(120)는 회전 보정된 제3 좌표 정보를 투영 보정하여 최종 보정된 제3 좌표 정보를 획득할 수 있다.
다만, 상술한 실시 예에서는 회전 보정 후 투영 보정하는 것으로 설명하였으나, 투영 보정 후 회전 보정을 수행할 수 있음은 물론이다.
도 2로 돌아와서, 프로세서(120)는 최종 보정된 제3 좌표 정보 및 테스트 영상의 꼭지점 좌표에 기초하여 변환 행렬, 즉, 제2 H matrix를 을 획득할 수 있다. 여기서, 최종 보정된 제3 좌표 정보 및 테스트 영상의 꼭지점 좌표는 각각 정규 좌표계 좌표(또는 픽셀 좌표계 좌표)일 수 있다. 예를 들어, 최종 보정된 제3 좌표 정보 즉, 네 꼭지점 좌표가 d1, d2, d3, d4이고, 테스트 영상의 실제 투사 지점의 네 꼭지점 좌표가 e1, e2, e3, e4인 경우 (d1, e1), (d2, e2), (d3, e3), (d4, e4)의 4개의 쌍에 기초하여 제2 H matrix를 을 획득할 수 있다. 예를 들어 FHD 해상도 프로젝터라면 e1, e2, e3, e4는 (0,0), (1920,0), (0,1080), (1920,1080)가 될 수 있다.
또한, 프로세서(120)는 보정된 제3 좌표 정보에 기초하여 식별되는 영역 내에서 입력 영상의 종횡비에 대응되는 최대 크기의 사각형 영역을 식별하고, 식별된 사각형 영역에 대응되는 제5 정보를 획득할 수 있다. 예를 들어, 제5 정보는 식별된 사각형 영역의 꼭지점 각각의 좌표 정보를 포함할 수 있으며, 이하에서는 설명의 편의를 위하여 제5 좌표 정보로 명명하도록 한다.
이 경우, 프로세서(120)는 보정된 제3 좌표 정보에 기초하여 획득되는 제1 영역의 꼭지점을 대각으로 이어 만나는 중심점에서 상하좌우로 동일한 크기로 사각형을 확장하면서 사각형의 꼭지점과 제1 영역의 모서리가 만나는지 확인할 수 있다. 또한, 프로세서(120)는 확장된 사각형의 꼭지점과 제1 영역의 모서리와 만나면 사각형의 작은 변은 기 설정된 픽셀 단위로 확장하고 사각형의 큰 변은 종횡비에 대응되도록 확장할 수 있다. 이어서, 프로세서(120)는 확장된 사각형의 대각에 대응되는 꼭지점이 제1 영역의 모서리와 만나는 위치에서 최대 크기의 사각형 영역을 식별할 수 있다.
도 9는 일 실시 예에 따라 최대 크기의 사각형 영역을 식별하는 방법을 설명하기 위한 도면이다.
도 9에 도시된 바에 따르면, 보정된 제3 좌표 정보(d1, d2, d3, d4) 즉, 꼭지점(911, 912, 913, 914)가 획득되면, 해당 각 꼭지점을 대각으로 이어 만나는 중심점(920)을 시작점으로 하여 사각형을 확장한다.
일 예에 따라 시작점(920)에서부터 상하좌우로 동일한 크기로 사각형을 키우면서 프로젝터 투사면(910)을 넘는 부분이 있는지 확인한다. 투사면(910)을 넘는 부분이 없을 때는 화면의 기설정된 비율 만큼(예를 들어, 5%) 확장해 나가며 확장된 사각형의 꼭지점과 프로젝터 투사면 모서리와 만나는지 위치를 확인한다.
이어서, 투사면(910)의 모서리와 사각형(930)의 꼭지점(931, 932, 933, 934) 중 어느 하나(932)가 만난 경우, 작은 변 기준 기 설정된 픽셀 단위(예를 들어, 1px), 큰 변은 비율에 맞게 사각형을 확장할 수 있다. 예를 들어, 사각형(930)의 좌상단, 우상단, 좌하단, 우하단 모서리 등에서 투사면(910)의 한 점과 만난 경우 반대편 모서리로 1px 이동하여 꼭지점과 투사면(910) 모서리가 만나는지 확인하고 사이즈를 1px 확장하여 접촉하는 지점이 있는지 확인한다. 확장된 사각형(930)의 좌상단, 우상단, 좌하단, 우하단 모서리 등에서 대각이 아닌 꼭지점이 만난 경우 수직 수평 반대 방향으로 1px 횡 이동하여 다시 만나는 점을 확인하고 사이즈를 1px 확장하여 만나는 지점이 있는지 확인한다.
이어서, 확장된 사각형(930)의 대각에 존재하는 꼭지점(942, 943)이 투사면(910) 경계선과 만난 경우 확장을 종료하며 마지막 꼭지점(941, 942, 943, 944) 의 좌표(g1, g2, g3, g4)를 획득한다. 또한, 사각형 위치가 무한적으로 이동하는 것을 방지하기 위하여 사각형 사이즈가 동일한 상황에서 이동하였던 점으로 다시 이동한 경우 해당 프로세스를 종료할 수 있다.
도 2로 돌아와서, 프로세서(120)는 획득된 제5 좌표 정보에 제2 H matrix의 역행렬을 적용하여 키스톤 보정을 수행할 수 있다. 예를 들어 최대 크기의 사각형에 대응되는 꼭지점의 좌표 정보가 g1, g2, g3, g4인 경우 (g1, g2, g3, g4)에 제2 H matrix의 역행렬을 적용하여 전자 장치(100)에서 투사해야 할 투사 영역의 좌표를 획득할 수 있다. 즉, 전자 장치(100)가 해당 좌표에 기초하여 영상을 투사하게 되면 사용자 입장에서 최대 크기의 사각형 영역을 시청할 수 있게 된다.
다만, 상술한 실시 예에서는 카메라의 자세 정보에 기초하여 투사된 영상의 꼭지점 좌표를 보정하는 것으로 설명하였지만, 카메라의 자세 정보에 기초하여 마커 좌표를 보정하는 것도 가능하다. 이 경우, 마커 좌표를 보정한 후 보정된 마커 좌표에 기초하여 투사된 영상의 꼭지점 좌표를 획득할 수도 있다. 즉, 카메라의 자세 정보에 기초하여 마커 좌표를 보정한 경우에는 카메라의 자세 정보에 기초하여꼭지점 좌표를 보정할 필요가 없게 된다.
도 10은 일 실시 예에 따른 키스톤 보정에 따른 투사 영상을 설명하기 위한 도면이다.
도 10에서 꼭지점 941, 942, 943, 944은 제5 좌표 정보에 대응되며, 해당 꼭지점에 의해 식별되는 영역은 도 9에서 획득된 최대 크기의 사각형 영역을 의미한다. 이 경우, 프로세서(120)는 제5 좌표 정보에 제2 H matrix의 역행렬을 적용하여 투사해야 할 영상의 좌표를 결정할 수 있다. 즉, 프로세서(120)는 꼭지점 941, 942, 943, 944의 좌표에 제2 H matrix의 역행렬을 키스톤 보정된 영상의 꼭지점 좌표인 951, 952, 953, 954를 결정할 수 있다. 이 경우 프로세서(120)는 꼭지점 951, 952, 953, 954에 기초하여 영상을 투사하므로 비뚤어진 영상(950)을 투사하지만, 사용자는 직사각형의 영상(960)을 시청할 수 있게 된다.
도 11은 일 실시 예에 따른 전자 장치의 세부 구성을 설명하기 위한 도면이다.
도 11에 따르면, 전자 장치(100')는 영상 투사부(110), 프로세서(120), 통신 인터페이스(130), 사용자 인터페이스(140), 메모리(150) 및 센서(160)를 포함한다.
영상 투사부(110)는 투사면과의 거리(투사 거리)에 따라 이미지를 확대하거나 축소할 수 있다. 즉, 투사면과의 거리에 따라 줌 기능이 수행될 수 있다. 이때, 줌 기능은 렌즈를 이동시켜 화면의 크기를 조절하는 하드웨어 방식과 이미지를 크롭(crop) 등으로 화면의 크기를 조절하는 소프트웨어 방식을 포함할 수 있다. 한편, 줌 기능이 수행되면, 이미지의 초점의 조절이 필요하다. 예를 들어, 초점을 조절하는 방식은 수동 포커스 방식, 전동 방식 등을 포함할 수 있다.
또한, 영상 투사부(110)는 사용자 입력없이 자동으로 주변 환경 및 프로젝션 환경을 분석하여 줌/키스톤/포커스 기능을 제공할 수 있다. 구체적으로, 프로젝션부(111)는 센서(뎁스 카메라, 거리 센서, 적외선 센서, 조도 센서 등)를 통해 감지된 전자 장치(100)와 투사면과의 거리, 현재 전자 장치(100)가 위치하는 공간에 대한 정보, 주변 광량에 대한 정보 등을 바탕으로 줌/키스톤/포커스 기능을 자동으로 제공할 수 있다.
적어도 하나의 통신 인터페이스(130)(이하, 통신 인터페이스)는 전자 장치(100')의 구현 예에 따라 다양한 인터페이스로 구현될 수 있음은 물론이다. 예를 들어 통신 인터페이스(120)는 다양한 타입의 디지털 인터페이스, AP 기반의 Wi-Fi(와이파이, Wireless LAN 네트워크), 블루투스(Bluetooth), 지그비(Zigbee), 유/무선 LAN(Local Area Network), WAN(Wide Area Network), 이더넷(Ethernet), IEEE 1394, HDMI(High-Definition Multimedia Interface), USB(Universal Serial Bus), MHL(Mobile High-Definition Link), AES/EBU(Audio Engineering Society/ European Broadcasting Union), 옵티컬(Optical), 코액셜(Coaxial) 등과 같은 통신 방식을 통해 외부 장치(예를 들어, 사용자 단말(200)), 외부 저장 매체(예를 들어, USB 메모리), 외부 서버(예를 들어 웹 하드) 등과 통신을 수행할 수 있다.
사용자 인터페이스(140)는 버튼, 터치 패드, 마우스 및 키보드와 같은 장치로 구현되거나, 상술한 디스플레이 기능 및 조작 입력 기능도 함께 수행 가능한 터치 스크린, 리모콘 송수신부 등으로 구현될 수 있다. 리모콘 송수신부는 적외선 통신, 블루투스 통신 또는 와이파이 통신 중 적어도 하나의 통신 방식을 통해 외부 원격 제어 장치로부터 리모콘 신호를 수신하거나, 리모콘 신호를 송신할 수 있다.
메모리(150)는 본 개시의 다양한 실시 예를 위해 필요한 데이터를 저장할 수 있다. 메모리(150)는 데이터 저장 용도에 따라 전자 장치(100')에 임베디드된 메모리 형태로 구현되거나, 전자 장치(100')에 탈부착이 가능한 메모리 형태로 구현될 수도 있다. 예를 들어, 전자 장치(100')의 구동을 위한 데이터의 경우 전자 장치(100')에 임베디드된 메모리에 저장되고, 전자 장치(100')의 확장 기능을 위한 데이터의 경우 전자 장치(100')에 탈부착이 가능한 메모리에 저장될 수 있다. 한편, 전자 장치(100')에 임베디드된 메모리의 경우 휘발성 메모리(예: DRAM(dynamic RAM), SRAM(static RAM), 또는 SDRAM(synchronous dynamic RAM) 등), 비휘발성 메모리(non-volatile Memory)(예: OTPROM(one time programmable ROM), PROM(programmable ROM), EPROM(erasable and programmable ROM), EEPROM(electrically erasable and programmable ROM), mask ROM, flash ROM, 플래시 메모리(예: NAND flash 또는 NOR flash 등), 하드 드라이브, 또는 솔리드 스테이트 드라이브(solid state drive(SSD)) 중 적어도 하나로 구현될 수 있다. 또한, 디스플레이 장치(100)에 탈부착이 가능한 메모리의 경우 메모리 카드(예를 들어, CF(compact flash), SD(secure digital), Micro-SD(micro secure digital), Mini-SD(mini secure digital), xD(extreme digital), MMC(multi-media card) 등), USB 포트에 연결가능한 외부 메모리(예를 들어, USB 메모리) 등과 같은 형태로 구현될 수 있다.
센서(160)는 가속도 센서, 거리 센서 등 다양한 타입의 센서를 포함할 수 있다.
한편, 전자 장치(100')의 구현 예에 따라 스피커, 튜너 및 복조부를 추가적으로 포함할 수 있다. 튜너(미도시)는 안테나를 통해 수신되는 RF(Radio Frequency) 방송 신호 중 사용자에 의해 선택된 채널 또는 기 저장된 모든 채널을 튜닝하여 RF 방송 신호를 수신할 수 있다. 복조부(미도시)는 튜너에서 변환된 디지털 IF 신호(DIF)를 수신하여 복조하고, 채널 복호화 등을 수행할 수도 있다. 일 실시 예에 따라 튜너를 통해 수신된 입력 영상은 복조부(미도시)를 통해 처리된 후, 본 개시의 일 실시 예에 따른 톤 맵핑 처리를 위해 프로세서(120)로 제공될 수 있다.
도 12는 일 실시 예에 따른 사용자 단말의 구성을 나타내는 블럭도이다.
도 12에 따르면 사용자 단말(200)은 카메라(210), 센서(220), 디스플레이(230), 메모리(240), 통신 인터페이스(250), 사용자 인터페이스(260)를 포함할 수 있다.
카메라(210)는 기 설정된 이벤트에 따라 턴 온 되어 촬영을 수행할 수 있다. 카메라(210)는 촬상된 영상을 전기적인 신호로 변환하고 변환된 신호에 기초하여 영상 데이터를 생성할 수 있다. 예를 들어, 피사체는 반도체 광학소자(CCD; Charge Coupled Device)를 통해 전기적인 영상 신호로 변환되고, 이와 같이 변환된 영상 신호는 증폭 및 디지털 신호로 변환된 후 신호 처리될 수 있다.
일 예에 따라 카메라(210)는 영상이 투사된 투사면을 촬영하여 촬영 영상을 획득할 수 있다.
센서(220)는 적어도 하나의 가속도 센서(또는 중력 센서)를 포함할 수 있다. 일 예로 가속도 센서는 3축 가속도 센서일 수 있다. 3축 가속도 센서는 축 별로 중력 가속도를 측정하여, 로우 데이터를 프로세서(270)로 제공한다.
또한, 실시 예에 따라 센서(220)는 거리 센서, 지자기 센서 또는 자이로 센서 중 적어도 하나를 더 포함할 수 있다. 거리 센서는 투사면과의 거리를 감지하기 위한 구성요소이다. 거리 센서는 초음파 센서, 적외선 센서, 라이다 (LIDAR) 센서, 레이더 (RADAR) 센서, 포토 다이오드 센서 등 다양한 종류로 구현될 수 있다. 지자기 센서 또는 자이로 센서는 요 정보를 획득하는데 이용될 수 있다.
디스플레이(230)는 자발광 소자를 포함하는 디스플레이 또는, 비자발광 소자 및 백라이트를 포함하는 디스플레이로 구현될 수 있다. 예를 들어, LCD(Liquid Crystal Display), OLED(Organic Light Emitting Diodes) 디스플레이, LED(Light Emitting Diodes), 마이크로 LED(micro LED), Mini LED, PDP(Plasma Display Panel), QD(Quantum dot) 디스플레이, QLED(Quantum dot light-emitting diodes) 등과 같은 다양한 형태의 디스플레이로 구현될 수 있다. 디스플레이(110) 내에는 a-si TFT, LTPS(low temperature poly silicon) TFT, OTFT(organic TFT) 등과 같은 형태로 구현될 수 있는 구동 회로, 백라이트 유닛 등도 함께 포함될 수 있다. 한편, 디스플레이(230)는 터치 센서와 결합된 터치 스크린, 플렉시블 디스플레이(flexible display), 롤러블 디스플레이(rollable display), 3차원 디스플레이(3D display), 복수의 디스플레이 모듈이 물리적으로 연결된 디스플레이 등으로 구현될 수 있다. 또한, 디스플레이(230)는 터치 스크린을 내장하고 있어, 손가락 또는 펜(예를 들어, 스타일러스 펜)을 이용하여 프로그램을 실행시킬 수 있도록 구현될 수 있다.
그 밖의 메모리(240), 통신 인터페이스(250), 사용자 인터페이스(260)의 구현 형태는 도 11에 도시된 전자 장치(100')에 포함된 통신 인터페이스(130), 사용자 인터페이스(140), 메모리(150)의 구현 예와 동일/유사하므로 자세한 설명은 생략하도록 한다.
한편, 일 실시 예에 따라 프로세서(270)는 카메라(210)를 통해 투사면을 촬영한 영상이 획득되면, 촬영 영상에서 복수의 마커 각각의 위치를 나타내는 제2 좌표 정보를 획득하고, 획득된 제2 좌표 정보를 전자 장치(100)로 전송할 수 있다.
다른 실시 예에 따라 프로세서(270)는 촬영 영상을 분석하지 않고 그대로 전자 장치(100)로 전송하도록 통신 인터페이스(250)를 제어할 수 있다. 이 경우, 전자 장치(100)가 촬영 영상에서 복수의 마커 각각의 위치를 나타내는 제2 좌표 정보를 획득할 수 있다.
다만, 또 다른 실시 예에 따라 프로세서(270)는 전자 장치(100)에서 수행되는 상술한 다양한 프로세스 중 일부 프로세스를 수행하고 그 결과를 전자 장치(100)로 전송하는 것도 가능하다.
도 13은 일 실시 예에 따른 전자 장치의 제어 방법을 설명하기 위한 흐름도이다.
도 13에 도시된 흐름도에 도시된 제어 방법에 따르면, 복수의 마커(marker)가 포함된 테스트 영상을 투사면으로 투사한다(S1310).
이어서, 테스트 영상에서 복수의 마커 각각의 위치를 나타내는 제1 정보 및 외부 장치에서 투사면을 촬영한 영상에서 복수의 마커의 위치를 나타내는 제2 정보를 식별한다(S1320).
이어서, 제1 정보 및 제2 정보에 기초하여 촬영 영상에서 테스트 영상의 꼭지점 위치를 나타내는 제3 정보를 획득한다(S1330).
이 후, 외부 장치의 자세 정보에 기초하여 제3 정보를 보정하고, 보정된 제3 정보에 기초하여 키스톤 보정을 수행한다(S1340).
또한, S1340 단계에서는, 외부 장치의 자세 정보에 기초하여 제3 정보를 회전 보정하고, 외부 장치와 투사면 간 거리 정보에 기초하여 회전 보정된 제3 정보를 투영 보정하여 보정된 제3 정보를 획득할 수 있다.
여기서, 외부 장치의 자세 정보는, 롤(roll) 정보, 피치(pitch) 정보 또는 요(Yaw) 정보 중 적어도 하나를 포함하며, 롤 정보 및 피치 정보는, 외부 장치에 구비된 가속도 센서를 통해 획득되며, 요 정보는, 외부 장치에서 투사면의 촬영에 이용된 카메라의 화각 정보에 기초하여 획득될 수 있다.
또한, S1340 단계에서는, 외부 장치의 자세 정보에 기초하여 투사면이 기 설정된 영역인 것으로 식별되면, 가속도 센서의 출력 값 중 중력 방향 기준 값을 변경하여 롤 정보, 피치 정보 또는 요 정보 중 적어도 하나를 획득하고, 획득된 정보에 기초하여 제3 좌표 정보를 보정할 수 있다.
이 경우, 복수의 마커 각각은, 복수의 방향 각각으로 블랙 영역 및 화이트 영역이 기 설정된 비율로 구성된 패턴 형태일 수 있다.
또한, 복수의 마커 각각은, 테스트 영상의 네 꼭지점을 기준으로 기 설정된 비율 만큼 내측 영역에 위치될 수 있다. 이 경우, S1330 단계에서는, 제1 정보 및 기 설정된 비율에 기초하여 테스트 영상의 꼭지점 위치를 나타내는 제4 정보를 획득하고, 제4 정보 및 제1 변환 행렬에 기초하여 촬영 영상에서 제3 정보를 획득할 수 있다. 이 경우, 제1 변환 행렬은, 제1 정보 및 제2 정보 간 맵핑 관계에 기초하여 획득될 수 있다.
또한, S1340 단계에서는, 보정된 제3 정보 및 테스트 영상의 꼭지점 좌표 정보에 기초하여 제2 변환 행렬을 획득하고, 보정된 제3 정보에 기초하여 식별되는 영역 내에서 입력 영상의 종횡비에 대응되는 최대 크기의 사각형 영역을 식별하여 키스톤 보정을 수행할 수 있다.
또한, S1340 단계에서는, 식별된 사각형 영역에 대응되는 제5 정보를 획득하고, 획득된 제5 정보에 제2 변환 행렬의 역행렬을 적용하여 키스톤 보정을 수행할 수 있다.
또한, S1340 단계는, 보정된 제3 정보에 기초하여 획득되는 제1 영역의 꼭지점을 대각으로 이어 만나는 중심점에서 사각형을 확장하면서 확장된 사각형의 꼭지점과 제1 영역의 모서리가 만나는지 확인하는 단계, 사각형의 꼭지점과 제1 영역의 모서리와 만나면 사각형의 작은 변은 기 설정된 픽셀 단위로 확장하고 사각형의 큰 변은 종횡비에 대응되도록 확장하는 단계, 및 사각형의 대각에 대응되는 꼭지점이 제1 영역의 모서리와 만나는 위치에서 최대 크기의 사각형 영역을 식별하는 단계를 포함할 수 있다.
또한, S1320 단계에서는, 외부 장치로부터 복수의 마커 각각의 위치를 나타내는 제2 정보를 수신하거나, 외부 장치로부터 수신된 촬영 영상에 기초하여 복수의 마커 각각의 위치를 나타내는 제2 정보를 획득할 수 있다.
또한, 복수의 마커는, 투사면의 왜곡 보정을 위해 테스트 영상에서 복수의 상이한 영역에 위치되며, 복수의 마커 각각에 대응되는 위치를 식별하기 위해 상이한 형상일 수 있다.
상술한 다양한 실시 예들에 따르면, 상술한 다양한 실시 예들에 따르면, 외부 장치에서 촬영된 영상에 기초하여 키스톤 보정을 수행하는 경우 외부 장치의 자세 정보를 반영하여 정확한 키스톤 보정을 수행할 수 있게 된다. 이에 따라 사용자의 편의성이 향상된다.
한편, 상술한 본 개시의 다양한 실시 예들에 따른 방법들은, 기존 전자 장치에 설치 가능한 어플리케이션 형태로 구현될 수 있다. 또는 상술한 본 개시의 다양한 실시 예들에 따른 방법들은 딥 러닝 기반의 인공 신경망(또는 심층 인공 신경망) 즉, 학습 네트워크 모델을 이용하여 수행될 수 있다.
또한, 상술한 본 개시의 다양한 실시 예들에 따른 방법들은, 기존 전자 장치에 대한 소프트웨어 업그레이드, 또는 하드웨어 업그레이드 만으로도 구현될 수 있다.
또한, 상술한 본 개시의 다양한 실시 예들은 전자 장치에 구비된 임베디드 서버, 또는 전자 장치의 외부 서버를 통해 수행되는 것도 가능하다.
한편, 본 개시의 일시 예에 따르면, 이상에서 설명된 다양한 실시 예들은 기기(machine)(예: 컴퓨터)로 읽을 수 있는 저장 매체(machine-readable storage media)에 저장된 명령어를 포함하는 소프트웨어로 구현될 수 있다. 기기는, 저장 매체로부터 저장된 명령어를 호출하고, 호출된 명령어에 따라 동작이 가능한 장치로서, 개시된 실시 예들에 따른 전자 장치(예: 전자 장치(A))를 포함할 수 있다. 명령이 프로세서에 의해 실행될 경우, 프로세서가 직접, 또는 프로세서의 제어 하에 다른 구성요소들을 이용하여 명령에 해당하는 기능을 수행할 수 있다. 명령은 컴파일러 또는 인터프리터에 의해 생성 또는 실행되는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장 매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적'은 저장매체가 신호(signal)를 포함하지 않으며 실재(tangible)한다는 것을 의미할 뿐 데이터가 저장매체에 반영구적 또는 임시적으로 저장됨을 구분하지 않는다.
또한, 본 개시의 일 실시 예에 따르면, 이상에서 설명된 다양한 실시 예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 온라인으로 배포될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
또한, 상술한 다양한 실시 예들에 따른 구성 요소(예: 모듈 또는 프로그램) 각각은 단수 또는 복수의 개체로 구성될 수 있으며, 전술한 해당 서브 구성 요소들 중 일부 서브 구성 요소가 생략되거나, 또는 다른 서브 구성 요소가 다양한 실시 예에 더 포함될 수 있다. 대체적으로 또는 추가적으로, 일부 구성 요소들(예: 모듈 또는 프로그램)은 하나의 개체로 통합되어, 통합되기 이전의 각각의 해당 구성 요소에 의해 수행되는 기능을 동일 또는 유사하게 수행할 수 있다. 다양한 실시 예들에 따른, 모듈, 프로그램 또는 다른 구성 요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.
이상에서는 본 개시의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 개시는 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 개시의 요지를 벗어남이 없이 당해 개시에 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 개시의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안될 것이다.
100: 전자 장치 110: 영상 투사부
120: 프로세서

Claims (20)

  1. 영상 투사부; 및
    복수의 마커(marker)가 포함된 테스트 영상을 투사면으로 투사하도록 상기 영상 투사부를 제어하고,
    상기 테스트 영상에서 상기 복수의 마커의 위치를 나타내는 제1 정보 및 외부 장치에서 상기 투사면을 촬영한 영상에서 상기 복수의 마커의 위치를 나타내는 제2 정보에 기초하여 상기 촬영 영상에서 상기 테스트 영상의 꼭지점 위치를 나타내는 제3 정보를 획득하고,
    상기 외부 장치의 자세 정보에 기초하여 상기 제3 정보를 보정하고,
    상기 보정된 제3 정보에 기초하여 키스톤 보정을 수행하는 프로세서;를 포함하는 전자 장치.
  2. 제1항에 있어서,
    상기 프로세서는,
    상기 외부 장치의 자세 정보에 기초하여 상기 제3 정보를 회전 보정하고,
    상기 외부 장치와 상기 투사면 간 거리 정보에 기초하여 상기 회전 보정된 제3 정보를 투영 보정하여 상기 보정된 제3 좌표 정보를 획득하는, 전자 장치.
  3. 제2항에 있어서,
    상기 외부 장치의 자세 정보는, 롤(roll) 정보, 피치(pitch) 정보 또는 요(Yaw) 정보 중 적어도 하나를 포함하며,
    상기 롤 정보 및 상기 피치 정보는, 상기 외부 장치에 구비된 가속도 센서를 통해 획득되며,
    상기 요 정보는, 상기 외부 장치에서 상기 투사면의 촬영에 이용된 카메라의 화각 정보에 기초하여 획득되는, 전자 장치.
  4. 제3항에 있어서,
    상기 프로세서는,
    상기 외부 장치의 자세 정보에 기초하여 상기 투사면이 기 설정된 영역인 것으로 식별되면, 상기 가속도 센서의 출력 값 중 중력 방향 기준 값을 변경하여 상기 롤 정보, 상기 피치 정보 또는 상기 요 정보 중 적어도 하나를 획득하며,
    상기 획득된 정보에 기초하여 상기 제3 좌표 정보를 보정하는, 전자 장치.
  5. 제1항에 있어서,
    상기 복수의 마커 각각은,
    복수의 방향 각각으로 블랙 영역 및 화이트 영역이 기 설정된 비율로 구성된 패턴 형태인, 전자 장치.
  6. 제1항에 있어서,
    상기 복수의 마커 각각은,
    상기 테스트 영상의 네 꼭지점을 기준으로 기 설정된 비율 만큼 내측 영역에 위치되며,
    상기 프로세서는,
    상기 제1 정보 및 상기 기 설정된 비율에 기초하여 상기 테스트 영상의 꼭지점 위치를 나타내는 제4 정보를 획득하고,
    상기 제4 정보 및 제1 변환 행렬에 기초하여 상기 촬영 영상에서 상기 제3 정보를 획득하며,
    상기 제1 변환 행렬은,
    상기 제1 정보 및 상기 제2 정보 간 맵핑 관계에 기초하여 획득되는, 전자 장치.
  7. 제1항에 있어서,
    상기 프로세서는,
    상기 보정된 제3 정보 및 상기 테스트 영상의 꼭지점 좌표 정보에 기초하여 제2 변환 행렬을 획득하고,
    상기 보정된 제3 정보에 기초하여 식별되는 영역 내에서 입력 영상의 종횡비에 대응되는 최대 크기의 사각형 영역을 식별하여 키스톤 보정을 수행하는, 전자 장치.
  8. 제7항에 있어서,
    상기 프로세서는,
    상기 식별된 사각형 영역에 대응되는 제5 정보를 획득하고,
    상기 획득된 제5 좌표 정보에 상기 제2 변환 행렬의 역행렬을 적용하여 키스톤 보정을 수행하는, 전자 장치.
  9. 제7항에 있어서,
    상기 프로세서는,
    상기 보정된 제3 정보에 기초하여 획득되는 제1 영역의 꼭지점을 대각으로 이어 만나는 중심점에서 사각형을 확장하면서 확장된 사각형의 꼭지점과 상기 제1 영역의 모서리가 만나는지 확인하고,
    상기 사각형의 꼭지점과 상기 제1 영역의 모서리와 만나면 상기 사각형의 작은 변은 기 설정된 픽셀 단위로 확장하고 상기 사각형의 큰 변은 상기 종횡비에 대응되도록 확장하고,
    상기 사각형의 대각에 대응되는 꼭지점이 상기 제1 영역의 모서리와 만나는 위치에서 상기 최대 크기의 사각형 영역을 식별하는, 전자 장치.
  10. 제1항에 있어서,
    통신 인터페이스;를 더 포함하며,
    상기 프로세서는,
    상기 외부 장치로부터 상기 복수의 마커의 위치를 나타내는 제2 정보를 상기 통신 인터페이스를 통해 수신하거나,
    상기 통신 인터페이스를 통해 상기 외부 장치로부터 수신된 상기 촬영 영상에 기초하여 상기 복수의 마커의 위치를 나타내는 제2 정보를 획득하는, 전자 장치.
  11. 제1항에 있어서,
    상기 복수의 마커는,
    투사면의 왜곡 보정을 위해 상기 테스트 영상에서 복수의 상이한 영역에 위치되며,
    상기 복수의 마커 각각에 대응되는 위치를 식별하기 위해 상이한 형상을 가지는, 전자 장치.
  12. 전자 장치의 제어 방법에 있어서,
    복수의 마커(marker)가 포함된 테스트 영상을 투사면으로 투사하는 단계;
    상기 테스트 영상에서 상기 복수의 마커의 위치를 나타내는 제1 정보 및 외부 장치에서 상기 투사면을 촬영한 영상에서 상기 복수의 마커의 위치를 나타내는 제2 정보 기초하여 상기 촬영 영상에서 상기 테스트 영상의 꼭지점 위치를 나타내는 제3 정보를 획득하는 단계; 및
    상기 외부 장치의 자세 정보에 기초하여 상기 제3 정보를 보정하고, 상기 보정된 제3 정보에 기초하여 키스톤 보정을 수행하는 단계;를 포함하는 제어 방법.
  13. 제12항에 있어서,
    상기 제3 정보를 보정하는 단계는,
    상기 외부 장치의 자세 정보에 기초하여 상기 제3 정보를 회전 보정하는 단계; 및
    상기 외부 장치와 상기 투사면 간 거리 정보에 기초하여 상기 회전 보정된 제3 정보를 투영 보정하여 상기 보정된 제3 정보를 획득하는 단계;를 포함하는, 제어 방법.
  14. 제13항에 있어서,
    상기 외부 장치의 자세 정보는, 롤(roll) 정보, 피치(pitch) 정보 또는 요(Yaw) 정보 중 적어도 하나를 포함하며,
    상기 롤 정보 및 피치 정보는, 상기 외부 장치에 구비된 가속도 센서를 통해 획득되며,
    상기 요 정보는, 상기 외부 장치에서 상기 투사면의 촬영에 이용된 카메라의 화각 정보에 기초하여 획득되는, 제어 방법.
  15. 제14항에 있어서,
    상기 키스톤 보정을 수행하는 단계는,
    상기 외부 장치의 자세 정보에 기초하여 상기 투사면이 기 설정된 영역인 것으로 식별되면, 상기 가속도 센서의 출력 값 중 중력 방향 기준 값을 변경하여
    상기 롤 정보, 상기 피치 정보 또는 상기 요 정보 중 적어도 하나를 획득하는 단계; 및
    상기 획득된 정보에 기초하여 상기 제3 좌표 정보를 보정하는 단계;를 포함하는, 제어 방법.
  16. 제12항에 있어서,
    상기 복수의 마커 각각은,
    복수의 방향 각각으로 블랙 영역 및 화이트 영역이 기 설정된 비율로 구성된 패턴 형태인, 제어 방법.
  17. 제12항에 있어서,
    상기 복수의 마커 각각은,
    상기 테스트 영상의 네 꼭지점을 기준으로 기 설정된 비율 만큼 내측 영역에 위치되며,
    상기 제3 정보를 획득하는 단계는,
    상기 제1 정보 및 상기 기 설정된 비율에 기초하여 상기 테스트 영상의 꼭지점 위치를 나타내는 제4 정보를 획득하고,
    상기 제4 정보 및 제1 변환 행렬에 기초하여 상기 촬영 영상에서 상기 제3 정보를 획득하며,
    상기 제1 변환 행렬은,
    상기 제1 정보 및 상기 제2 정보 간 맵핑 관계에 기초하여 획득되는, 제어 방법.
  18. 제12항에 있어서,
    상기 키스톤 보정을 수행하는 단계는,
    상기 보정된 제3 정보 및 상기 테스트 영상의 꼭지점 좌표 정보에 기초하여 제2 변환 행렬을 획득하는 단계; 및
    상기 보정된 제3 정보에 기초하여 식별되는 영역 내에서 입력 영상의 종횡비에 대응되는 최대 크기의 사각형 영역을 식별하여 키스톤 보정을 수행하는 단계;를 포함하는, 제어 방법.
  19. 제18항에 있어서,
    상기 키스톤 보정을 수행하는 단계는,
    상기 식별된 사각형 영역에 대응되는 제5 정보를 획득하고,
    상기 획득된 제5 정보에 상기 제2 변환 행렬의 역행렬을 적용하여 키스톤 보정을 수행하는, 제어 방법.
  20. 제18항에 있어서,
    상기 키스톤 보정을 수행하는 단계는,
    상기 보정된 제3 정보에 기초하여 획득되는 제1 영역의 꼭지점을 대각으로 이어 만나는 중심점에서 사각형을 확장하면서 확장된 사각형의 꼭지점과 상기 제1 영역의 모서리가 만나는지 확인하는 단계;
    상기 사각형의 꼭지점과 상기 제1 영역의 모서리와 만나면 상기 사각형의 작은 변은 기 설정된 픽셀 단위로 확장하고 상기 사각형의 큰 변은 상기 종횡비에 대응되도록 확장하는 단계; 및
    상기 사각형의 대각에 대응되는 꼭지점이 상기 제1 영역의 모서리와 만나는 위치에서 상기 최대 크기의 사각형 영역을 식별하는 단계;를 포함하는, 제어 방법.
KR1020210136104A 2021-06-01 2021-10-13 전자 장치 및 그 제어 방법 KR20220162595A (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
PCT/KR2022/002569 WO2022255594A1 (ko) 2021-06-01 2022-02-22 전자 장치 및 그 제어 방법
CN202280039016.6A CN117413511A (zh) 2021-06-01 2022-02-22 电子装置及其控制方法
EP22816258.2A EP4283986A1 (en) 2021-06-01 2022-02-22 Electronic apparatus and control method thereof
US17/704,459 US20220385867A1 (en) 2021-06-01 2022-03-25 Electronic apparatus and method for controlling thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20210070793 2021-06-01
KR1020210070793 2021-06-01

Publications (1)

Publication Number Publication Date
KR20220162595A true KR20220162595A (ko) 2022-12-08

Family

ID=84436866

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210136104A KR20220162595A (ko) 2021-06-01 2021-10-13 전자 장치 및 그 제어 방법

Country Status (1)

Country Link
KR (1) KR20220162595A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117288151A (zh) * 2023-11-21 2023-12-26 深圳市橙子数字科技有限公司 一种投影设备的三维姿态确定方法、装置和电子设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117288151A (zh) * 2023-11-21 2023-12-26 深圳市橙子数字科技有限公司 一种投影设备的三维姿态确定方法、装置和电子设备
CN117288151B (zh) * 2023-11-21 2024-02-13 深圳市橙子数字科技有限公司 一种投影设备的三维姿态确定方法、装置和电子设备

Similar Documents

Publication Publication Date Title
CN111935465B (zh) 投影系统、投影装置以及其显示影像的校正方法
CN101656858B (zh) 投影型显示装置及显示方法
CN110300292B (zh) 投影畸变校正方法、装置、系统及存储介质
US20170180689A1 (en) Multi-projector alignment refinement
US8398246B2 (en) Real-time projection management
CN111694528B (zh) 显示墙的排版辨识方法以及使用此方法的电子装置
US20140267593A1 (en) Method for processing image and electronic device thereof
TW201905573A (zh) 投影系統以及顯示影像的校正方法
US10276075B1 (en) Device, system and method for automatic calibration of image devices
CN112272292B (zh) 投影校正方法、装置和存储介质
CN112399158B (zh) 投影图像校准方法、装置及投影设备
JP2014192808A (ja) 投影装置、プログラム
US9691357B2 (en) Information processing method and electronic device thereof, image calibration method and apparatus, and electronic device thereof
CN110784691A (zh) 投影装置、投影系统及影像校正方法
US20240015272A1 (en) Electronic apparatus and control method thereof
US20220385867A1 (en) Electronic apparatus and method for controlling thereof
CN110784692B (zh) 投影装置、投影系统及影像校正方法
KR20220162595A (ko) 전자 장치 및 그 제어 방법
JPWO2018042582A1 (ja) 投射型映像表示装置および投射映像の調整方法
JP5187480B2 (ja) プロジェクタ、プログラム、情報記憶媒体および画像生成方法
CN115086631B (zh) 图像生成方法和信息处理装置
CN114339179A (zh) 投影校正方法、装置、存储介质以及投影设备
KR20220166699A (ko) 전자 장치 및 그 제어 방법
KR101920323B1 (ko) 논리적 화면 표시장치 생성 시스템 및 방법
CN117413511A (zh) 电子装置及其控制方法