KR20160031968A - 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법 - Google Patents
전방 프로젝션 환경에서 그림자를 제거하기 위한 방법 Download PDFInfo
- Publication number
- KR20160031968A KR20160031968A KR1020150128470A KR20150128470A KR20160031968A KR 20160031968 A KR20160031968 A KR 20160031968A KR 1020150128470 A KR1020150128470 A KR 1020150128470A KR 20150128470 A KR20150128470 A KR 20150128470A KR 20160031968 A KR20160031968 A KR 20160031968A
- Authority
- KR
- South Korea
- Prior art keywords
- shadow
- projector
- shadow region
- determining
- point
- Prior art date
Links
Images
Classifications
-
- 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
-
- 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/3182—Colour adjustment, e.g. white balance, shading or gamut
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Controls And Circuits For Display Device (AREA)
- Projection Apparatus (AREA)
Abstract
본 발명은 각기 다른 각도에서 투사 영역을 겹쳐서 투사하는 복수의 프로젝터들과 그림자를 생성하는 사용자를 인식하기 위한 깊이 카메라로 구성되는 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법으로서, 상기 깊이 카메라로부터 획득되는 깊이 정보로부터 사용자의 스켈레톤(skeleton) 정보를 획득하는 단계, 상기 스켈레톤 정보를 이용하여 그림자 영역을 유추하는 단계, 상기 그림자 영역을 이용하여 그림자를 제거하기 위한 마스크를 상기 복수의 프로젝터들의 각 프로젝터마다 생성하는 단계, 및 상기 복수의 프로젝터들의 각 프로젝터마다 상기 마스크를 적용하여 투사하는 단계를 포함하는, 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법을 제공한다.
Description
본 발명은 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법에 관한 것으로, 보다 상세하게는 깊이 카메라에서 획득가능한 스켈레톤 정보를 이용하여 적은 계산량으로도 최대한 정확하게 그림자를 유추할 수 있고 사용자가 움직이더라도 잔상이 남지 않도록 하는 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법에 관한 것이다.
임의의 공간 위에 콘텐츠를 투사하는 시스템은 프로젝션 방식을 이용하면 쉽게 구성이 가능하다. 이러한 이점 때문에 휴먼 컴퓨터 인터랙션 분야의 연구자들과 미디어 아티스트들은 프로젝션 시스템을 많이 활용하고 있다(선행기술문헌[1]).
프로젝션 시스템의 구성은 크게 전방 프로젝션 방법과 후방 프로젝션 방법으로 나눌 수가 있다. 전방 프로젝션 방법은 후방 프로젝션을 이용한 방법과 비교했을 때 동일한 공간 위에 콘텐츠를 투사하기 위해서 공간을 적게 차지한다는 장점이 있다. 이러한 이유로 전방 프로젝션을 이용한 방법이 많이 사용되고 있다. 다만, 전방 프로젝션은 사용자가 프로젝터와 투사되는 공간 사이에 위치하게 되면 그림자를 만들어 낸다는 단점이 있다. 생성된 그림자는 중요한 정보를 지우는 등의 문제가 있으며, 이에 따라, 전방 프로젝션 환경에서 인터랙션을 하는 사용자는 투사면의 그림자에 반감을 가지고 있다는 연구 결과가 있다(선행기술문헌[2]).
지난 십수년 동안 많은 연구자들은 전방 프로젝션 시스템에서 그림자를 지우기 위해서 많이 노력해 왔다. 그들이 제안한 대부분의 방법들은 여러 대의 프로젝터를 이용하여 그림자 영역 위에 투사되는 빛의 양을 보정해 주는 방법으로 공통적으로 접근하고 있다. 이 방법들은 구현 방식에 따라 크게 4가지로 요약할 수 있다.
첫번째는, 색상 카메라를 이용해 그림자 영역을 유추한 뒤에 지워주는 방법이다(선행기술문헌[3]-[7]). 이 방법의 경우 그림자 영역을 비교적 정확하게 유추할 수 있다는 장점이 있지만 색상카메라는 그림자가 나타난 뒤에 그림자를 인지할 수 있기 때문에 그림자의 잔상이 남는 문제가 있었다. 두번째는, 적외선 카메라를 이용하여 그림자 영역을 유추하는 방법이다(선행기술문헌[8]-[10]). 적외선을 이용한 방법은 한 대를 제외한 모든 프로젝터마다 적외선 카메라가 달려 있어야 하며 사용자와 프로젝션되는 투사 영역 사이에 적외선 발광 소자가 위치해야 한다는 단점이 존재한다. 세번째는, 스테레오카메라를 이용하여 그림자를 만들어내는 위치에 있는 물체를 인식한 뒤에 그림자 영역을 유추해서 지우는 방법이다(선행기술문헌[11]). 이 방법의 경우 그림자의 잔상이 남지 않게 지울 수 있지만 물체를 사각형으로 단순하게 유추하기 때문에 사용자가 손을 흔드는 것과 같은 인터랙션을 하게 되면 그림자를 지울 수 없는 단점이 존재한다. 마지막은, 여러 대의 색상 카메라를 이용해서 그림자를 생성하는 물체를 3차원(3D)으로 재생성한 뒤에 지워주는 방법이다 (선행기술문헌[12]). 이 방법은 물체를 3D로 재생성한 뒤에 그림자를 지우기 때문에 매우 정밀하게 그림자 영역을 유추하고 지울 수 있는 장점이 존재하지만 연산시간이 매우 많이 걸린다는 단점이 존재한다.
[1] S. S. Snibbe and H. S. Raffle, "Social immersive media: pursuing best practices for multi-user interactive camera/projector exhibits," in Proceedings of the SIGCHI Conference on Human Factors in Computing Systems. ACM, 2009, pp. 1447-1456.
[2] J. Summet, G. D. Abowd, G. M. Corso, and J. M. Rehg,"Virtual rear projection: Do shadows matter?" in CHI’05 Extended Abstracts on Human Factors in Computing Systems. ACM, 2005, pp. 1997-2000.
[3] R. S. T.-J. Cham and G. Sukthankar, "Dynamic shadow elimination for multi-projector displays," in Proc. IEEE Conf.Computer Vision and Pattern Recognition (CVPR), 2001.
[4] C. Jaynes, S. Webb, R. M. Steele, M. Brown, and W. B. Seales, "Dynamic shadow removal from front projection displays,"in Proceedings of the conference on Visualization’01. IEEE Computer Society, 2001, pp. 175-182.
[5] T.-J. Cham, J. M. Rehg, R. Sukthankar, and G. Sukthankar, "Shadow elimination and occluder light suppression for multi-projector displays," in Computer Vision and Pattern Recognition, 2003. Proceedings. 2003 IEEE Computer Society Conference on, vol. 2. IEEE, 2003, pp. II-513.
[6] C. Jaynes, S. Webb, and R. M. Steele, "Camera-based detection and removal of shadows from interactive multiprojector displays," Visualization and Computer Graphics, IEEE Transactions on, vol. 10, no. 3, pp. 290-301, 2004.
[7] Y. Sugaya, I. Miyagawa, and H. Koike, "Contrasting shadow for occluder light suppression from one-shot image," in Computer Vision and Pattern Recognition Workshops (CVPRW), 2010 IEEE Computer Society Conference on. IEEE, 2010, pp. 96-103.
[8] D. S. Tan and R. Pausch, "Pre-emptive shadows: Eliminating the blinding light from projectors," in CHI’02 extended abstracts on Human factors in computing systems. ACM, 2002, pp. 682-683.
[9] M. Flagg, J. Summet, and J. M. Rehg, "Improving the speed of virtual rear projection: A gpu-centric architecture," in Computer Vision and Pattern Recognition-Workshops, 2005. CVPR Workshops. IEEE Computer Society Conference on. IEEE, 2005, pp. 105-105.
[10] J. Summet, M. Flagg, T.-J. Cham, J. M. Rehg, and R. Sukthankar, "Shadow elimination and blinding light suppression for interactive projected displays," Visualization and Computer Graphics, IEEE Transactions on, vol. 13, no. 3, pp.508-517, 2007.
[11] S. Audet and J. R. Cooperstock, "Shadow removal in front projection environments using object tracking," in Computer Vision and Pattern Recognition, 2007. CVPR’07. IEEE Conference on. IEEE, 2007, pp. 1-8.
[12] D. Iwai, M. Nagase, and K. Sato, "Shadow removal of projected imagery by occluder shape measurement in a multiple overlapping projection system," Virtual Reality, vol. 18, no. 4, pp. 245-254, 2014.
[13] Z. Zhang, "A flexible new technique for camera calibration,"Pattern Analysis and Machine Intelligence, IEEE Transactions on, vol. 22, no. 11, pp. 1330-1334, 2000.
[14] D. Moreno and G. Taubin, "Simple, accurate, and robust projector-camera calibration," in 3D Imaging, Modeling, Processing, Visualization and Transmission (3DIMPVT), 2012 Second International Conference on. IEEE, 2012, pp. 464-471.
[15] D. Anguelov, P. Srinivasan, D. Koller, S. Thrun, J. Rodgers, and J. Davis, "Scape: shape completion and animation of people,"in ACM Transactions on Graphics (TOG), vol. 24, no. 3. ACM, 2005, pp. 408-416.
[16] N. Hasler, C. Stoll, M. Sunkel, B. Rosenhahn, and H.-P. Seidel, "A statistical model of human pose and body shape," in Computer Graphics Forum, vol. 28, no. 2. Wiley Online Library, 2009, pp. 337-346.
전술한 종래기술의 문제점을 해결하기 위한 본 발명은, 깊이 카메라에서 획득할 수 있는 스켈레톤 정보를 이용하여 계산량은 적지만 사용자가 생성하는 그림자에 가까운 모양을 유추하여 효과적으로 그림자를 지울 수 있으며, 사용자가 움직이더라도 그림자의 잔상이 남지 않으면서, 기존 전방 프로젝션 환경에 깊이 카메라만을 추가하는 것만으로도 구현이 가능하여, 비교적 손쉽게 전방 프로젝션 환경에서 사용자 인터랙션을 구현할 수 있도록 하는, 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법을 제공하는 것을 그 목적으로 한다.
전술한 목적을 달성하기 위한 본 발명의 일 실시예에 따른 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법은, 각기 다른 각도에서 투사 영역을 겹쳐서 투사하는 복수의 프로젝터들과 그림자를 생성하는 사용자를 인식하기 위한 깊이 카메라로 구성되는 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법으로서, 상기 깊이 카메라로부터 획득되는 깊이 정보로부터 사용자의 스켈레톤(skeleton) 정보를 획득하는 단계, 상기 스켈레톤 정보를 이용하여 그림자 영역을 유추하는 단계, 상기 그림자 영역을 이용하여 그림자를 제거하기 위한 마스크를 상기 복수의 프로젝터들의 각 프로젝터마다 생성하는 단계, 및 상기 복수의 프로젝터들의 각 프로젝터마다 상기 마스크를 적용하여 투사하는 단계를 포함한다.
상기 그림자 영역을 유추하는 단계는, 상기 깊이 카메라로부터 획득되는 스켈레톤 정보를 이용하여 상기 투사 영역에서 스켈레톤의 위치를 결정하는 단계, 상기 스켈레톤의 각 관절 상에서 원 형상으로 그림자 영역을 결정하는 단계, 및 상기 각 관절 간의 관계를 이용하여 상기 각 관절 상의 원 형상의 그림자 영역을 포함하는 사다리꼴 형상으로 관절 사이를 채워 상기 그림자 영역을 유추하는 단계를 포함할 수도 있다.
상기 각 관절 상에서 원 형상으로 그림자 영역을 결정하는 단계는, 상기 각 관절마다 상기 원 형상의 그림자 영역의 반경을 결정하는 단계를 포함할 수도 있다.
상기 원 형상의 그림자 영역의 반경을 결정하는 단계는, 관절의 위치에서 상기 깊이 카메라가 사용자를 촬상하는 방향과 수직인 평면을 결정하는 단계, 상기 촬상하는 방향과 수직인 평면 상에서 기 설정된 관절의 크기를 이용하여 상기 평면 상의 가상의 원을 결정하는 단계, 상기 평면 상의 가상의 원 상의 점들 중 프로젝터로부터 가장 거리가 먼 점이 상기 프로젝터에 의해 상기 투사 영역으로 투사되는 제 1 점을 결정하는 단계, 상기 관절이 상기 프로젝터에 의해 상기 투사 영역으로 투사되는 제 2 점을 결정하는 단계, 및 상기 제 1 점과 상기 제 2 점 간의 거리를 상기 원 형상의 그림자 영역의 반경으로 결정하는 단계를 포함할 수도 있다.
상기 그림자를 제거하기 위한 마스크는, 상기 유추된 그림자 영역으로부터의 거리에 따라 상기 복수의 프로젝터들의 밝기를 조절한다.
상기 그림자를 제거하기 위한 마스크를 생성하는 단계는, 디스턴스 필드(distance field)를 이용하여 상기 투사 영역 상의 점에 대하여 상기 유추된 그림자 영역으로부터의 거리를 결정하는 단계, 및 상기 투사 영역 상의 점에 대하여 결정된 상기 유추된 그림자 영역으로부터의 거리를 이용하여 상기 복수의 프로젝터들의 밝기를 결정하는 마스크를 생성하는 단계를 포함할 수도 있다.
본 발명에서 개시된 기술은 다음과 같은 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
본 발명에 따른 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법은, 깊이 카메라에서 획득할 수 있는 스켈레톤 정보를 이용하여 계산량은 적지만 사용자가 생성해내는 그림자에 가까운 모양을 유추하여 효과적으로 그림자를 지울 수 있고, 유추된 그림자 영역의 빛을 보정해 주는 마스크를 만들어 프로젝터의 밝기를 조절하여 사용자가 그림자를 인식할 수 없게 할 수 있으며, 사용자가 움직일 경우 나타나는 그림자의 잔상이 남지 않도록 그림자로부터 떨어진 정도에 따른 프로젝터의 밝기를 조절하여 잔상을 없앨 수 있으므로, 전방 프로젝션 환경에서 사용자 인터랙션을 구현하는데 유리하다.
또한, 종래 기술에 따른 색상 카메라나 적외선 카메라를 이용한 방법과 비교하면, 그림자 검출시 설치하여야 하는 카메라의 위치 제약을 완화할 수 있다. 그리고, 스테레오 카메라를 이용한 종래 기술에 비해, 깊이 정보 카메라로부터 획득한 스켈레톤을 이용하여 그림자의 모양을 유추하므로 사용자의 팔다리 모델에 더 적합하다. 또, 실시간으로 동작하기 때문에 기존에 설치된 전방 프로젝션 환경에 깊이 카메라를 설치하는 것만으로 그림자를 지울 수 있어, 설치의 편의성이나 비용 면에서 유리한 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법의 개략적인 흐름도를 나타낸 것이다.
도 2는 프로젝터에서 생성되는 그림자 영역과 유추된 그림자 영역을 비교하여 나타낸 것이다.
도 3은 사용자가 프로젝터를 가려 생성한 그림자와 깊이 카메라로부터 획득한 스켈레톤을 반대편 프로젝터에서 투사한 것을 나타낸다.
도 4는 투사 영역에서 각 관절에 대한 원 형상의 그림자 영역의 반경을 구하는 방법을 나타낸 것이다.
도 5는 그림자 영역을 유추하는 방법을 단계적으로 나타낸 것이다.
도 6은 디스턴스 필드(distance field)를 나타낸 것이다.
도 7은 도 6에 디스턴스 필드를 적용한 결과를 나타낸 것이다.
도 8은 사용자 파라미터 α값에 따른 마스크 값의 변화를 나타낸 것이다.
도 9는 손이 빠르게 움직일 때 잔상이 나타날 경우 사용자 파라미터 α값에 따른 결과를 나타낸 것이다.
도 10은 투사화면이 정적인 이미지일 경우 본 발명의 일 실시예에 따른 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법의 결과 영상을 나타낸 것이다.
도 11은 투사화면이 동영상일 경우 본 발명의 일 실시예에 따른 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법의 결과 영상을 나타낸 것이다.
도 12는 깊이 카메라의 위치 변화에 따른 결과 영상을 나타낸 것이다.
도 13은 종래 기술과 본 발명의 일 실시예에 따른 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법을 비교한 결과를 나타낸 것이다.
도 2는 프로젝터에서 생성되는 그림자 영역과 유추된 그림자 영역을 비교하여 나타낸 것이다.
도 3은 사용자가 프로젝터를 가려 생성한 그림자와 깊이 카메라로부터 획득한 스켈레톤을 반대편 프로젝터에서 투사한 것을 나타낸다.
도 4는 투사 영역에서 각 관절에 대한 원 형상의 그림자 영역의 반경을 구하는 방법을 나타낸 것이다.
도 5는 그림자 영역을 유추하는 방법을 단계적으로 나타낸 것이다.
도 6은 디스턴스 필드(distance field)를 나타낸 것이다.
도 7은 도 6에 디스턴스 필드를 적용한 결과를 나타낸 것이다.
도 8은 사용자 파라미터 α값에 따른 마스크 값의 변화를 나타낸 것이다.
도 9는 손이 빠르게 움직일 때 잔상이 나타날 경우 사용자 파라미터 α값에 따른 결과를 나타낸 것이다.
도 10은 투사화면이 정적인 이미지일 경우 본 발명의 일 실시예에 따른 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법의 결과 영상을 나타낸 것이다.
도 11은 투사화면이 동영상일 경우 본 발명의 일 실시예에 따른 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법의 결과 영상을 나타낸 것이다.
도 12는 깊이 카메라의 위치 변화에 따른 결과 영상을 나타낸 것이다.
도 13은 종래 기술과 본 발명의 일 실시예에 따른 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법을 비교한 결과를 나타낸 것이다.
본문에 개시되어 있는 본 발명의 실시예들에 대해서, 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 실시예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 실시예들은 다양한 형태로 실시될 수 있으며 본문에 설명된 실시예들에 한정되는 것으로 해석되어서는 아니 된다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로 사용될 수 있다. 예를 들어, 본 발명의 권리 범위로부터 이탈되지 않은 채 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미이다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미인 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 본 발명의 일 실시예에 따른 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법의 개략적인 흐름도를 나타낸 것이다. 도 1을 참조하면, 본 발명의 일 실시예에 따른 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법은, 각기 다른 각도에서 투사 영역을 겹쳐서 투사하는 복수의 프로젝터들과 그림자를 생성하는 사용자를 인식하기 위한 깊이 카메라로 구성되는 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법으로서, 깊이 카메라로부터 획득되는 깊이 정보로부터 사용자의 스켈레톤(skeleton) 정보를 획득하는 단계, 스켈레톤 정보를 이용하여 그림자 영역을 유추하는 단계, 그림자 영역을 이용하여 그림자를 제거하기 위한 마스크를 복수의 프로젝터들의 각 프로젝터마다 생성하는 단계, 및 복수의 프로젝터들의 각 프로젝터마다 마스크를 적용하여 투사하는 단계를 포함한다.
본 발명에서는 각 장치들의 내부파라미터, 깊이 카메라와 프로젝터간 관계, 사용자의 각 관절 위치와 크기 정보, 각 프로젝터가 투사할 영역에 대한 호모그라피 정보 등의 파라미터들이 필요한데, 이를 위하여 먼저 시스템 캘리브레이션이 필요하다. 먼저 카메라의 내부 파라미터는 Zhang's 캘리브레이션(선행기술문헌[13])을 사용하여 구할 수 있고, 프로젝터의 내부 파라미터와 깊이 카메라 간의 관계는 Moreno와 Taubin이 제안한 방법(선행기술문헌[14])을 이용하여 구할 수 있다. 그리고, 사용자의 각 관절 위치 정보는 윈도우용 키넥트에서 제공하는 API를 이용해서 추출할 수 있으며, 사용자의 각 관절의 크기 정보와 투사할 영역에 대한 호모그라피 정보가 설정될 수 있다.
전방 프로젝션 환경에서 그림자를 지워주기 위해서 제일 먼저 그림자 영역이 어디에 생성되는지 파악해야 한다. 그림자 영역은 앞선 캘리브레이션 과정에서 구한 파라미터를 이용해서 사용자 위치, 깊이 카메라와 프로젝터들 간의 관계를 통하여 유추해 낼 수 있다. 먼저 깊이 정보 카메라에서 백그라운드 영역을 제외한 사용자의 깊이 정보를 추출해내게 된다. 이 때 추출된 정보들이 그림자를 만들어 낼 가능성이 있는 깊이 정보가 된다.
이에 따라, 깊이 카메라로부터 추출된 사용자의 위치 정보들을 이용해서 그림자 영역을 유추해 내는 방법에 대해 여러가지 방안을 고려해 볼 수 있다. 가장 먼저, 사용자의 위치 정보를 모두 프로젝터가 바라봤을 때의 위치로 옮겨준 뒤에 투사하여 그림자 영역을 유추해내는 방법이 있는데, 이 방법은 깊이 카메라에서 인식된 깊이 정보의 경우 높은 정확도로 그림자 영역을 유추할 수 있다는 장점이 존재한다. 그러나 깊이 카메라와 프로젝터간 위치 차이에 의해 깊이 카메라에서 검출 되진 않지만 프로젝터에서는 가려지는 그림자 영역을 유추해 낼수 없다.
도 2는 프로젝터에서 생성되는 그림자 영역과 유추된 그림자 영역을 비교하여 나타낸 것이다. 도 2a는 각도 차이에 의해 그림자 영역을 검출할 수 없음을 보여 주는데, 한 개의 프로젝터에서 생성되는 그림자 영역과 유추된 그림자 영역을 비교하여 보여 준다. 먼저 그림자 영역을 만들어 내는 프로젝터에서는 전 화면에 걸쳐서 빨간 색상을 화면에 투사하여 준다. 그러면 실제 그림자 영역은 그림자가 생성되어 어두운 영역이 되고, 가려지지 않은 투사 영역은 빨간색으로 나타나게 된다. 실제 그림자 영역과 유추된 그림자 영역을 비교하기 위해 다른 각도의 프로젝터에서는 그림자로 유추된 영역을 다른 색으로 투사하게 된다. 그림자 영역으로 유추되어진 영역은 녹색으로 그림자 영역이 아닌 곳으로 유추된 영역은 파란색으로 투사하게 된다. 그 결과로 녹색으로 보이는 영역은 그림자 영역으로 정확히 유추된 영역, 파란색 영역은 그림자 영역이지만 유추하는데 실패한 영역,노란색 영역은 그림자가 아니지만 그림자 영역으로 유추한 영역이된다. 도 2a를 보면 깊이 카메라와 프로젝터의 각도차로 인해 파란색으로 그림자 영역으로 유추하는데 실패한 부분을 볼 수 있다. 그림자 영역을 유추하는데 실패한 파란색 부분을 없애기 위해 그림자 영역으로 유추된 부분을 강제로 확장하게되면 도 2b와 같이 키우지 말아야 할 영역도 너무 많이 키우게 된다.
이상의 이유로 인해 본 발명에서는 깊이 카메라로 부터 얻은 스켈레톤 데이터를 이용해서 그림자 영역을 유추하는 방법을 사용한다. 도 3은 사용자가 프로젝터를 가려 생성한 그림자와 깊이 카메라로부터 얻어낸 스켈레톤을 반대편 프로젝터에서 투사한 그림이다. 흰색은 각 관절을 의미하며 파란색 선이 스켈레톤 데이타를 의미한다. 이 그림을 통해서 사용자가 생성하는 그림자의 형태를 스켈레톤 데이타로부터 유추해낼 수 있다는 것을 알 수 있다.
투사된 스켈레톤 관절에서 그림자의 형태를 추출해 내기 위해서 투사된 스켈레톤을 확장하는 방법을 사용했다. 본 발명에 따른 방법은 실시간으로 동작하면서 종래기술(선행기술문헌[11])에서 유추한 방법보다 사용자가 생성하는 그림자에 가까운 그림자 영역을 유추해 낸다. 첫번째 단계는 도 5a와 같이 깊이 카메라에서 얻은 스켈레톤 데이터를 이용해서 프로젝터가 투사하는 영역에서 스켈레톤 위치를 도 5b와 같이 구해준다. 두번째로 각 관절 위에서 원의 형태로 그림자 영역을 결정해 준다. 원의 크기를 구하는 방법은 도 4에 나타나 있다. 구하고자 하는 관절의 그림자 크기인 r'을 구하기 위해서 각 관절 위치에서 카메라와 수직의 위치를 가진 평면 L을 가정한다. 평면 L 위에서 앞서 캘리브레이션 과정에서 구한 각 관절의 크기r을 이용해 원을 그려준다. 그 뒤에 프로젝터로부터 가장 멀리 떨어져 있는 평면 L의 원 위 점 pr을 프로젝터가 투사하고 있는 영역인 평면 L'에 투사하여 p'r을 구하여 준다. 그 뒤에 투사된 관절의 위치 p'j와 p'r의 거리를, 구하고자 하는 관절에서의 크기 r'로 결정하여 준다. 모든 관절마다 r'을 구하여 원을 그려주면 도 5c와 같은 결과를 얻을 수 있다. 마지막으로 관절의 관계를 이용해서 각 관절의 원을 포함하는 사다리꼴 형태로 관절 사이를 채워주면 도 5d와 같이 투사된 영역에서 그림자 영역을 유추할 수 있다. 관절 사이를 채워줄 때 몸통의 갈비뼈 와 배 부근의 볼륨도 함께 채우기 위해서 어깨와 명치, 골반과 명치도 함께 연결해준다.
그림자 영역은 프로젝터의 빛을 가린 영역을 다른 각도에서 보정함으로써 지울 수 있다. 그러므로 앞서 유추한 그림자 영역만을 보정하여 지워 준다면 멈춰 있는 사람의 경우 그림자를 지워줄 수 있다. 그러나 깊이 카메라로부터 스켈레톤을 받아 오는 과정부터 그림자 유추와 마스크 생성 후에 적용하는 시간까지 지연이 발생하게 된다. 그 결과로 움직이는 사람의 그림자를 지울 때 잔상이 남는 문제점이 발생을 하게 된다.
본 발명에서는 이러한 잔상을 없애주고자 그림자 영역으로부터 떨어진 거리에 따른 마스크를 생성한다. 잔상이 생성되는 위치는 이전의 그림자 위치에서 멀지 않은 곳이다. 따라서, 앞서 유추된 그림자 영역으로부터 떨어진 위치에 따라 프로젝터의 밝기를 조절하여 준다. 그림자 영역으로부터 떨어진 위치를 구하기 위해서 디스턴스 필드(distance field)를 이용한다. 도 6은 디스턴스 필드인 다음 수학식 1에 대해 설명해 준다.
(여기서, S는 그림자 영역으로 유추된 영역이고, p는 투사 영역 상의 점, q는 그림자 영역 내의 점, d(p,q)는 점 p와 점 q 간의 거리, D(p)는 디스턴스 필드이다.)
즉, 여기서 D(p) 함수는 p 위치에서 그림자 영역 S 중에 가장 가까운 거리에 있는 점 q와의 거리를 의미한다. 도 7은 도 6에 디스턴스 필드를 적용한 결과를 나타낸 것이다.
다음, 각각 프로젝터의 그림자 유추 영역에서 구한 디스턴스 필드를 이용해서 모든 프로젝터의 밝기를 결정해줄 마스크를 생성한다. 다음 수학식 2를 이용해서 프로젝터의 최종 밝기를 구한다.
(여기서, N은 전체 프로젝터의 개수, α는 사용자 파라미터, Dl(p)는 프로젝터 l에 대한 점 p의 디스턴스 필드, Ml(p)는 프로젝터 l에 대한 점 p의 밝기이다.)
즉, 여기서 Ml(p)는 프로젝터 l의 p 위치에 있는 점의 밝기를 결정한다.
도 7c와 도 7d는 수학식 2의 결과를 보여 준다. 도 7c와 도 7d를 하나의 화면으로 투사하게 되면 그림자가 없는 하나의 투사 영역을 획득할 수 있다. 각각의 프로젝터의 그림자 영역의 빛은 어두워지고 다른 프로젝터의 그림자위치에 빛을 밝게 하는 형태로 적용이 되는 것을 확인할 수 있다. α는 사용자 파라미터로 잔상이 생성되는 정도와 잔상이 생성되었을 때 진하기를 결정할 수 있다. α의 값에 큰 값을 적용하게 되면 밝은 영역은 더욱 밝아지게 되고 어두운 영역은 더 어두워 지게 된다.
도 8은 α값에 따른 마스크 값의 변화를 보여준다. α 값이 클수록 그림자의 잔상이 많이 안 나타나도록 막아주지만 잔상이 나타났을 경우에는 잔상이 진하게 나타나게 된다. 도 9는 손이 빠르게 움직일 때 잔상이 나타날 경우 α값에 따른 결과를 보여 주고 있다. α값이 작은 경우 잔상이 나타나도 흐릿하게 나타나는 반면 α값이 커질 경우 그림자가 진하게 나타나고 있는 것을 확인할 수 있다. 하지만, α 값이 작은 경우에는 빠르지 않은 움직임에도 잔상이 나타나는 반면, 큰 값의 경우 빠른 움직임이 아닌 이상 잔상이 나타나지 않는 것을 확인할 수 있었다. 최종적으로 구한 마스크에 감마 보정(gamma correction)을 적용한 뒤 투명도로 프로젝터에 적용하여 주면 모든 과정이 마무리된다.
이하에서는 본 발명에 따른 방법을 검증하기 위한 실험 결과에 대하여 기술하도록 한다.
본 실험에서 투사 영역은 하얀색으로 된 벽면을 활용했으며 프로젝터는 Viewsonic PJD7820HD 2대를 활용하였다. 깊이 카메라는 Kinect for window v2를 사용하였다. 프로젝터의 해상도는 1920ㅧ1080이며 깊이 카메라의 해상도는 514ㅧ424로 사용하였다. 하얀색 벽면의 투사 영역은 가로 395cm,세로 207cm이다. 다음의 표 1은 캘리브레이션 과정을 통해서 실험한 환경의 프로젝터와 깊이 카메라의 위치 정보를 의미한다. 표 1의 원점은 투사 영역의 왼쪽 아래 모서리를 기준으로 하였다. 회전 기준은 오른손방향이며 투사 영역의 수평방향을 x축, 수직방향을 y축으로 잡았다.
|
위치(cm) | 방향(도) | ||||||
x | y | z | Roll | Pitch | Yaw | |||
카메라 | 216.6 | 175.6 | 445.5 | 160.6 | 1.3 | -0.3 | ||
프로젝터1 | 12.0 | 221.7 | 463.2 | 153.5 | -19.0 | 2.4 | ||
프로젝터2 | 363.0 | 229.0 | 488.8 | 158.7 | 18.5 | -0.8 |
표 1의 환경에서, 도 10은 투사화면이 정적인 이미지일 경우, 도 11은 투사 화면이 동영상일 경우에 본 발명의 결과를 보여 주고 있다. 도 10a와 도 11a는 비교 이미지로 각각 그림의 왼쪽에 그림자가 생성되어 있는 것을 확인할 수 있다. 사용자가 같은 위치에 있어도 도 10 (b)-(h)와 도 11 (b)-(h)에서는 그림자를 발견할 수 없는 것을 확인할 수 있다.
본 발명은 깊이 카메라가 그림자가 생성되는 위치의 사용자를 볼 수 있는 곳이면 어디든지 적용할 수 있다. 도 12는 깊이 카메라를 다양한 위치에 두고 실험한 경우의 결과이다.하기 표 3에 나타나 있는 위치에 카메라를 두고 테스트한 결과이다. 카메라의 위치가 사용자를 바라볼 수 있는 곳이면 어디든지 그림자가 잘 지워지고 있는 것을 확인할 수 있었다.
본 실험에서 프로그램은 모두 C++로 제작되었다. 모든 결과는 Intel i7 3.40GHz CPU에 램 8GB의 환경에서 실험하였다. 밝기 마스크의 해상도는 960 ㅧ 540로 사용하였다. 표 2는 본 시스템의 각 단계의 소요되는 시간을 보여준다. 총 시간은 대략 21ms로 실시간으로 동작하는 것을 확인할 수 있다.
단계 | 시간 |
Skeleton data acquisition | 0.05ms+(SD)0.01 |
Shadow region estimation(single image) | 0.79ms+(SD)0.12 |
Mask generation(double image) | 19.02ms+(SD)1.67 |
Texture uploading(single image) | 1.20ms+(SD)0.12 |
Image display(single image) | 0.20ms+(SD)0.07 |
|
위치(cm) | 방향(도) | ||||||
x | y | z | Roll | Pitch | Yaw | |||
위치2 | 57.0 | 190.8 | 473.1 | 155.5 | -15.3 | 0.9 | ||
위치3 | 47.2 | 93.6 | 431.9 | 171.9 | -20.0 | -1.1 | ||
위치4 | 344.3 | 108.0 | 411.1 | 171.6 | 18.3 | 2.9 |
Calculation time | Redundant shadow region | |
선행기술문헌[11] | 14.59ms | 227.7% |
선행기술문헌[12] | (8.1ms) | (100.0%) |
본 발명 | 23.45ms | 138.4% |
표 4는 종래기술과 비교한 결과를 보여 준다. 동일 환경에서 선행기술문헌[11]의 방법은 본 발명보다 빠르지만 많은 불필요한 영역을 그림자 영역으로 유추하게 된다. 선행기술문헌[12]의 방법은 그림자 영역을 매우 정확하게 유추한다고 가정하고 연산시간은 선행기술문헌[12]에 표기되어 있는 시간으로 간접적으로 비교하였다. 선행기술문헌[12]의 방법은 매우 정확한 영역을 유추해 낼 수 있는 반면 매우 단순한 형태를 가진 물체의 그림자를 지우는데도 연산 시간이 많이 필요하다. 그렇기 때문에 사용자가 인터랙션하는 환경에서는 적합하지 않다는 것을 확인할 수 있다. 이에 대해, 본 발명에 따른 방법은 실시간으로 동작하면서 효율적으로 그림자를 지워주는 것을 확인할 수 있었다.
본 발명에 따른 방법은 스테레오 카메라를 이용해서 그림자 영역을 유추했던 방식인 선행기술문헌[11]의 방법보다 효과적으로 그림자 영역을 지울 수 있었다. 도 13은 종래 기술과 본 발명의 일 실시예에 따른 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법을 비교한 결과를 나타낸 것이다. 그림자 제거 방법이 적용되어 있지 않은 도 13a에서는 그림자가 화면에 나타나고 있는 것을 확인할 수가 있다. 도 13b는 사용자의 그림자 영역을 사각형으로 유추하여 많은 불필요한 영역을 그림자로 유추하고 있기 때문에 그림자를 지울 수 있는 영역임에도 불구하고 지울수 없는 영역으로 인식하여 검은색으로 표시가 되어지고 있다. 하지만 도 13c는 본 발명에 따른 방법이 적용된 화면으로 종래기술과 같은 상황에서도 그림자 없는 투사 영역을 확인할 수 있다.
색상 카메라 방식(선행기술문헌[3]-[7])과 적외선 카메라 방식(선행기술문헌[8]-[10])은 그림자 영역을 유추해 내기 위해 카메라와 투사면 사이에 사용자가위치하면 안된다는 단점이 존재한다. 하지만, 본 발명에서는 사용자를 바라볼 수 있는 위치에만 카메라가 설치되어 동작하므로 설치 위치에 대한 제약이 적다. 그리고, 본 발명은 깊이 카메라를 사용하므로 투사되는 이미지에 영향을 받지 않기 때문에 동영상을 벽면에 투사하는 경우에도 순조롭게 동작하는 것을 확인할 수 있다. 도 11은 비디오 환경에서도 본 발명에 따른 방법이 잘 동작하고 있는 것을 보여주고 있다.
상술한 바와 같은 본 발명에 따른 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법은, 깊이 카메라에서 획득할 수 있는 스켈레톤 정보를 이용하여 계산량은 적지만 사용자가 생성해내는 그림자에 가까운 모양을 유추하여 효과적으로 그림자를 지울 수 있고, 유추된 그림자 영역의 빛을 보정해 주는 마스크를 만들어 프로젝터의 밝기를 조절하여 사용자가 그림자를 인식할 수 없게 할 수 있으며, 사용자가 움직일 경우 나타나는 그림자의 잔상이 남지 않도록 그림자로부터 떨어진 정도에 따른 프로젝터의 밝기를 조절하여 잔상을 없앨 수 있으므로, 전방 프로젝션 환경에서 사용자 인터랙션을 구현하는데 유리하다.
또한, 종래 기술에 따른 색상 카메라나 적외선 카메라를 이용한 방법과 비교하면, 그림자 검출시 설치하여야 하는 카메라의 위치 제약을 완화할 수 있다. 그리고, 스테레오 카메라를 이용한 종래 기술에 비해, 깊이 정보 카메라로부터 획득한 스켈레톤을 이용하여 그림자의 모양을 유추하므로 사용자의 팔다리 모델에 더 적합하다. 또, 실시간으로 동작하기 때문에 기존에 설치된 전방 프로젝션 환경에 깊이 카메라를 설치하는 것만으로 그림자를 지울 수 있어, 설치의 편의성이나 비용 면에서 유리한 효과가 있다.
이상에서 전술한 바와 같은 본 발명에 따른 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법은, 이를 구현하기 위한 프로그램 명령어로서 구현될 수 있으며, 이러한 프로그램 명령어를 기록한 컴퓨터로 읽힐 수 있는 기록매체는, 일 예로, ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 미디어 저장장치 등이 있다.
또한, 전술한 바와 같은 프로그램을 기록한 컴퓨터로 읽힐 수 있는 기록매체는 네트워크로 커넥션된 컴퓨터 장치에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 이 경우, 다수의 분산된 컴퓨터 중 어느 하나 이상의 컴퓨터는 상기에 제시된 기능들 중 일부를 실행하고, 그 결과를 다른 분산된 컴퓨터들 중 하나 이상에 그 실행 결과를 전송할 수 있으며, 그 결과를 전송받은 컴퓨터 역시 상기에 제시된 기능들 중 일부를 실행하여, 그 결과를 역시 다른 분산된 컴퓨터들에 제공할 수 있다.
본 발명의 각 실시예에 따른 장치 및 방법을 구동시키기 위한 프로그램인 애플리케이션을 기록한 기록매체를 읽을 수 있는 컴퓨터는, 일반적인 데스크 탑이나 노트북 등의 일반 PC뿐 만 아니라, 스마트 폰, 태블릿 PC, PDA(Personal Digital Assistants) 및 이동통신 단말 등의 모바일 단말을 포함할 수 있으며, 이뿐만 아니라, 컴퓨팅(Computing) 가능한 모든 기기로 해석되어야 할 것이다.
이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체 (Computer Readable Storage Medium)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 등이 포함될 수 있다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
Claims (9)
- 각기 다른 각도에서 투사 영역을 겹쳐서 투사하는 복수의 프로젝터들과 그림자를 생성하는 사용자를 인식하기 위한 깊이 카메라로 구성되는 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법으로서,
상기 깊이 카메라로부터 획득되는 깊이 정보로부터 사용자의 스켈레톤(skeleton) 정보를 획득하는 단계;
상기 스켈레톤 정보를 이용하여 그림자 영역을 유추하는 단계;
상기 그림자 영역을 이용하여 그림자를 제거하기 위한 마스크를 상기 복수의 프로젝터들의 각 프로젝터마다 생성하는 단계; 및
상기 복수의 프로젝터들의 각 프로젝터마다 상기 마스크를 적용하여 투사하는 단계를 포함하는, 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법. - 제 1 항에 있어서,
상기 그림자 영역을 유추하는 단계는,
상기 깊이 카메라로부터 획득되는 스켈레톤 정보를 이용하여 상기 투사 영역에서 스켈레톤의 위치를 결정하는 단계;
상기 스켈레톤의 각 관절 상에서 원 형상으로 그림자 영역을 결정하는 단계; 및
상기 각 관절 간의 관계를 이용하여 상기 각 관절 상의 원 형상의 그림자 영역을 포함하는 사다리꼴 형상으로 관절 사이를 채워 상기 그림자 영역을 유추하는 단계를 포함하는, 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법. - 제 2 항에 있어서,
상기 각 관절 상에서 원 형상으로 그림자 영역을 결정하는 단계는,
상기 각 관절마다 상기 원 형상의 그림자 영역의 반경을 결정하는 단계를 포함하는, 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법. - 제 3 항에 있어서,
상기 원 형상의 그림자 영역의 반경을 결정하는 단계는,
관절의 위치에서 상기 깊이 카메라가 사용자를 촬상하는 방향과 수직인 평면을 결정하는 단계;
상기 촬상하는 방향과 수직인 평면 상에서 기 설정된 관절의 크기를 이용하여 상기 평면 상의 가상의 원을 결정하는 단계;
상기 평면 상의 가상의 원 상의 점들 중 프로젝터로부터 가장 거리가 먼 점이 상기 프로젝터에 의해 상기 투사 영역으로 투사되는 제 1 점을 결정하는 단계;
상기 관절이 상기 프로젝터에 의해 상기 투사 영역으로 투사되는 제 2 점을 결정하는 단계; 및
상기 제 1 점과 상기 제 2 점 간의 거리를 상기 원 형상의 그림자 영역의 반경으로 결정하는 단계를 포함하는, 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법. - 제 1 항에 있어서,
상기 그림자를 제거하기 위한 마스크는,
상기 유추된 그림자 영역으로부터의 거리에 따라 상기 복수의 프로젝터들의 밝기를 조절하는, 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법. - 제 1 항에 있어서,
상기 그림자를 제거하기 위한 마스크를 생성하는 단계는,
디스턴스 필드(distance field)를 이용하여 상기 투사 영역 상의 점에 대하여 상기 유추된 그림자 영역으로부터의 거리를 결정하는 단계; 및
상기 투사 영역 상의 점에 대하여 결정된 상기 유추된 그림자 영역으로부터의 거리를 이용하여 상기 복수의 프로젝터들의 밝기를 결정하는 마스크를 생성하는 단계를 포함하는, 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법. - 제 1 항 내지 제 8 항 중 어느 한 항의 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법을 구현하기 위한 프로그램 명령어가 기록되는 컴퓨터 판독가능 기록매체.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20140122180 | 2014-09-15 | ||
KR1020140122180 | 2014-09-15 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20160031968A true KR20160031968A (ko) | 2016-03-23 |
KR102103614B1 KR102103614B1 (ko) | 2020-04-23 |
Family
ID=55645283
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150128470A KR102103614B1 (ko) | 2014-09-15 | 2015-09-10 | 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102103614B1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112235553A (zh) * | 2020-10-12 | 2021-01-15 | 歌尔科技有限公司 | 投影亮度调整方法、装置、投影设备及可读存储介质 |
WO2024122852A1 (ko) * | 2022-12-05 | 2024-06-13 | 삼성전자주식회사 | 외부 객체의 모션에 대응하는 시각적 객체를 생성하기 위한 전자 장치 및 그 방법 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008305241A (ja) * | 2007-06-08 | 2008-12-18 | Samii Kk | 画像生成装置および画像生成プログラム |
KR20110032351A (ko) * | 2009-09-22 | 2011-03-30 | 삼성전자주식회사 | 영상 처리 장치 및 방법 |
JP2013182061A (ja) * | 2012-02-29 | 2013-09-12 | Nikon Corp | 投影システム |
-
2015
- 2015-09-10 KR KR1020150128470A patent/KR102103614B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008305241A (ja) * | 2007-06-08 | 2008-12-18 | Samii Kk | 画像生成装置および画像生成プログラム |
KR20110032351A (ko) * | 2009-09-22 | 2011-03-30 | 삼성전자주식회사 | 영상 처리 장치 및 방법 |
JP2013182061A (ja) * | 2012-02-29 | 2013-09-12 | Nikon Corp | 投影システム |
Non-Patent Citations (16)
Title |
---|
[1] S. S. Snibbe and H. S. Raffle, "Social immersive media: pursuing best practices for multi-user interactive camera/projector exhibits," in Proceedings of the SIGCHI Conference on Human Factors in Computing Systems. ACM, 2009, pp. 1447-1456. |
[10] J. Summet, M. Flagg, T.-J. Cham, J. M. Rehg, and R. Sukthankar, "Shadow elimination and blinding light suppression for interactive projected displays," Visualization and Computer Graphics, IEEE Transactions on, vol. 13, no. 3, pp.508-517, 2007. |
[11] S. Audet and J. R. Cooperstock, "Shadow removal in front projection environments using object tracking," in Computer Vision and Pattern Recognition, 2007. CVPR’07. IEEE Conference on. IEEE, 2007, pp. 1-8. |
[12] D. Iwai, M. Nagase, and K. Sato, "Shadow removal of projected imagery by occluder shape measurement in a multiple overlapping projection system," Virtual Reality, vol. 18, no. 4, pp. 245-254, 2014. |
[13] Z. Zhang, "A flexible new technique for camera calibration,"Pattern Analysis and Machine Intelligence, IEEE Transactions on, vol. 22, no. 11, pp. 1330-1334, 2000. |
[14] D. Moreno and G. Taubin, "Simple, accurate, and robust projector-camera calibration," in 3D Imaging, Modeling, Processing, Visualization and Transmission (3DIMPVT), 2012 Second International Conference on. IEEE, 2012, pp. 464-471. |
[15] D. Anguelov, P. Srinivasan, D. Koller, S. Thrun, J. Rodgers, and J. Davis, "Scape: shape completion and animation of people,"in ACM Transactions on Graphics (TOG), vol. 24, no. 3. ACM, 2005, pp. 408-416. |
[16] N. Hasler, C. Stoll, M. Sunkel, B. Rosenhahn, and H.-P. Seidel, "A statistical model of human pose and body shape," in Computer Graphics Forum, vol. 28, no. 2. Wiley Online Library, 2009, pp. 337-346. |
[2] J. Summet, G. D. Abowd, G. M. Corso, and J. M. Rehg,"Virtual rear projection: Do shadows matter?" in CHI’05 Extended Abstracts on Human Factors in Computing Systems. ACM, 2005, pp. 1997-2000. |
[3] R. S. T.-J. Cham and G. Sukthankar, "Dynamic shadow elimination for multi-projector displays," in Proc. IEEE Conf.Computer Vision and Pattern Recognition (CVPR), 2001. |
[4] C. Jaynes, S. Webb, R. M. Steele, M. Brown, and W. B. Seales, "Dynamic shadow removal from front projection displays,"in Proceedings of the conference on Visualization’01. IEEE Computer Society, 2001, pp. 175-182. |
[5] T.-J. Cham, J. M. Rehg, R. Sukthankar, and G. Sukthankar, "Shadow elimination and occluder light suppression for multi-projector displays," in Computer Vision and Pattern Recognition, 2003. Proceedings. 2003 IEEE Computer Society Conference on, vol. 2. IEEE, 2003, pp. II-513. |
[6] C. Jaynes, S. Webb, and R. M. Steele, "Camera-based detection and removal of shadows from interactive multiprojector displays," Visualization and Computer Graphics, IEEE Transactions on, vol. 10, no. 3, pp. 290-301, 2004. |
[7] Y. Sugaya, I. Miyagawa, and H. Koike, "Contrasting shadow for occluder light suppression from one-shot image," in Computer Vision and Pattern Recognition Workshops (CVPRW), 2010 IEEE Computer Society Conference on. IEEE, 2010, pp. 96-103. |
[8] D. S. Tan and R. Pausch, "Pre-emptive shadows: Eliminating the blinding light from projectors," in CHI’02 extended abstracts on Human factors in computing systems. ACM, 2002, pp. 682-683. |
[9] M. Flagg, J. Summet, and J. M. Rehg, "Improving the speed of virtual rear projection: A gpu-centric architecture," in Computer Vision and Pattern Recognition-Workshops, 2005. CVPR Workshops. IEEE Computer Society Conference on. IEEE, 2005, pp. 105-105. |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112235553A (zh) * | 2020-10-12 | 2021-01-15 | 歌尔科技有限公司 | 投影亮度调整方法、装置、投影设备及可读存储介质 |
WO2024122852A1 (ko) * | 2022-12-05 | 2024-06-13 | 삼성전자주식회사 | 외부 객체의 모션에 대응하는 시각적 객체를 생성하기 위한 전자 장치 및 그 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR102103614B1 (ko) | 2020-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Du et al. | DepthLab: Real-time 3D interaction with depth maps for mobile augmented reality | |
US6594616B2 (en) | System and method for providing a mobile input device | |
EP3769509B1 (en) | Multi-endpoint mixed-reality meetings | |
US20170372449A1 (en) | Smart capturing of whiteboard contents for remote conferencing | |
Tian et al. | Handling occlusions in augmented reality based on 3D reconstruction method | |
Zhang et al. | Visual panel: virtual mouse, keyboard and 3D controller with an ordinary piece of paper | |
JP5906922B2 (ja) | 消える筆記媒体を用いるインターラクティブホワイトボード | |
CN114785996B (zh) | 虚拟现实视差校正 | |
US9330500B2 (en) | Inserting objects into content | |
JP6089722B2 (ja) | 画像処理装置、画像処理方法および画像処理プログラム | |
US10891796B2 (en) | Systems and methods for augmented reality applications | |
WO2017112041A1 (en) | Morphological and edge filters for depth edge enhancement in digital images | |
JP2007011276A (ja) | 画像表示装置、画像表示方法及びコマンド入力方法 | |
JP2011022945A (ja) | 指先操作型情報提供システム、プログラム、記録媒体 | |
Du et al. | A virtual keyboard based on true-3D optical ranging | |
WO2020190547A1 (en) | Intelligent video presentation system | |
CN112912936A (zh) | 混合现实系统、程序、移动终端装置和方法 | |
CN112657176A (zh) | 一种结合人像行为信息的双目投影人机交互方法 | |
KR20160031968A (ko) | 전방 프로젝션 환경에서 그림자를 제거하기 위한 방법 | |
Liao et al. | Robust and accurate visual echo cancelation in a full-duplex projector-camera system | |
Kim et al. | Real‐Time Human Shadow Removal in a Front Projection System | |
Zhang | Vision-based interaction with fingers and papers | |
Xu et al. | Real-time keystone correction for hand-held projectors with an RGBD camera | |
Kolesnik et al. | Detecting, tracking, and interpretation of a pointing gesture by an overhead view camera | |
US20190325244A1 (en) | System and method to enable creative playing on a computing device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
N231 | Notification of change of applicant | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right |