KR20190129433A - 파노라마 영상 생성 방법 및 그 장치 - Google Patents

파노라마 영상 생성 방법 및 그 장치 Download PDF

Info

Publication number
KR20190129433A
KR20190129433A KR1020180054083A KR20180054083A KR20190129433A KR 20190129433 A KR20190129433 A KR 20190129433A KR 1020180054083 A KR1020180054083 A KR 1020180054083A KR 20180054083 A KR20180054083 A KR 20180054083A KR 20190129433 A KR20190129433 A KR 20190129433A
Authority
KR
South Korea
Prior art keywords
image
morphing
images
algorithm
generating
Prior art date
Application number
KR1020180054083A
Other languages
English (en)
Other versions
KR102082277B1 (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 KR1020180054083A priority Critical patent/KR102082277B1/ko
Publication of KR20190129433A publication Critical patent/KR20190129433A/ko
Application granted granted Critical
Publication of KR102082277B1 publication Critical patent/KR102082277B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • G06T3/4038Scaling the whole image or part thereof for image mosaicing, i.e. plane images composed of plane sub-images
    • G06K9/4671
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/46Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
    • G06V10/462Salient features, e.g. scale invariant feature transforms [SIFT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/698Control of cameras or camera modules for achieving an enlarged field of view, e.g. panoramic image capture
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/90Arrangement of cameras or camera modules, e.g. multiple cameras in TV studios or sports stadiums
    • H04N5/23238
    • H04N5/247
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/265Mixing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/44Morphing

Abstract

본 발명은 파노라마 영상 생성 방법에 관한 것으로, 제1 카메라로부터 특정 피사체에 관한 제1 이미지를 획득하고, 상기 제1 카메라와 다른 투영점을 갖는 제2 카메라로부터 상기 특정 피사체에 관한 제2 이미지를 획득하는 단계; 미리 결정된 이미지 모핑 알고리즘을 이용하여 상기 제1 이미지에 대응하는 제1 모핑 이미지와 상기 제2 이미지에 대응하는 제2 모핑 이미지를 생성하는 단계; 상기 제1 및 제2 모핑 이미지에 대해 유사도 측정 알고리즘을 적용하여 심 마스크(Seam Mask)를 생성하는 단계; 및 상기 심 마스크가 적용된 제1 및 제2 모핑 이미지를 합성하여 파노라마 영상을 생성하는 단계를 포함한다.

Description

파노라마 영상 생성 방법 및 그 장치{METHOD FOR GENERATING PANORAMIC IMAGE AND APPARATUS THEREOF}
본 발명은 복수의 카메라를 이용하여 파노라마 영상을 생성하는 방법 및 그 장치에 관한 것입니다. 보다 구체적으로는, 서로 다른 투영점을 갖도록 배치된 복수의 카메라에서 촬영한 영상들을 기반으로 파노라마 영상을 생성하는 방법 및 그 장치에 관한 것이다.
일반적으로 파노라마 영상(PANORAMIC IMAGE)이란 획득하고자 하는 영상의 궤적을 미리 설정하고 그 궤적을 따라 영상을 촬영한 후 얻어진 영상을 이어 붙임으로써 획득한 영상을 말한다.
최근 3D 컨텐츠 및 UHD(Ultra High Definition) 컨텐츠의 출현 이후, 파노라마 영상에 대한 수요가 전시관, 뉴스 룸, 옥외 구조물, 의료 시설 등을 통해 점차 증가하고 있는 추세이다. 3D 컨텐츠는 사용자에게 입체감을 제공하고, UHD 컨텐츠는 사용자에게 사실감을 제공함에 반해, 고품질 파노라마 서비스는 넓은 화각을 통해 사용자에게 극대화된 현장감을 제공한다.
종래의 파노라마 영상 장치는, 도 1의 (a) 및 (b)에 도시된 바와 같은 카메라 배치를 사용하여 파노라마 영상을 생성한다. 즉, 도 1의 (a)는 카메라 한대를 투영점을 기준으로 회전시키면서 촬영한 영상으로 파노라마 영상을 생성하는 방법이고, 도 1의 (b)는 두 카메라의 투영점을 동일한 위치에 고정시켜 촬영한 영상으로 파노라마 영상을 생성하는 방법이다. 이러한 방법들의 경우, 기존의 잘 알려진 파노라마 알고리즘을 이용하여 파노라마 영상을 생성할 수 있다.
그런데, 도 1의 (c)에 도시된 바와 같이, 두 카메라의 투영점들이 서로 이격되도록 배치되는 경우, 이전의 카메라 배치 방식에 비해 좀 더 넓은 시야각(a field of view)을 획득할 수 있지만, 기존의 잘 알려진 파노라마 알고리즘을 적용할 수 없다는 문제점이 있다. 따라서, 이와 같이 서로 다른 투영점을 갖도록 배치된 복수의 카메라에서 근거리 3차원 피사체를 촬영한 영상들을 기반으로 파노라마 영상을 자연스럽게 합성하기 위한 새로운 파노라마 알고리즘을 개발할 필요가 있다.
본 발명은 전술한 문제 및 다른 문제를 해결하는 것을 목적으로 한다. 또 다른 목적은 서로 다른 투영점을 갖도록 배치된 복수의 카메라에서 근거리 3차원 피사체를 촬영한 영상들을 기반으로 파노라마 영상을 생성하는 방법 및 그 장치를 제공함에 있다.
상기 또는 다른 목적을 달성하기 위해 본 발명의 일 측면에 따르면, 제1 카메라로부터 특정 피사체에 관한 제1 이미지를 획득하고, 상기 제1 카메라와 다른 투영점을 갖는 제2 카메라로부터 상기 특정 피사체에 관한 제2 이미지를 획득하는 단계; 미리 결정된 이미지 모핑 알고리즘을 이용하여 상기 제1 이미지에 대응하는 제1 모핑 이미지와 상기 제2 이미지에 대응하는 제2 모핑 이미지를 생성하는 단계; 상기 제1 및 제2 모핑 이미지에 대해 유사도 측정 알고리즘을 적용하여 심 마스크(Seam Mask)를 생성하는 단계; 및 상기 심 마스크가 적용된 제1 및 제2 모핑 이미지를 합성하여 파노라마 영상을 생성하는 단계를 포함하는 파노라마 영상 생성 방법을 제공한다.
좀 더 바람직하게는, 상기 파노라마 영상 생성 방법은, 상기 제1 및 제2 이미지의 특징점들(Feature points)을 검출하고, 상기 제1 및 제2 이미지의 특징점들을 서로 매칭한 대응점들(corresponding points)을 검출하는 단계를 더 포함하는 것을 특징으로 한다. 또한, 상기 파노라마 영상 생성 방법은, 파노라마 영상에 대해 영상 후처리를 수행하는 단계를 더 포함하는 것을 특징으로 한다.
좀 더 바람직하게는, 상기 특징점 및 대응점 검출 단계는, SIFT 알고리즘, Affine-SIFT 알고리즘, SUFT 알고리즘, KAZE 알고리즘, 및 Accelerated-KAZE 알고리즘 중 적어도 하나를 이용하여 제1 및 제2 이미지의 특징점 및 대응점들을 검출하는 것을 특징으로 한다. 또한, 상기 특징점 및 대응점 검출 단계는 레이저 장치 또는 프로젝터를 통해 미리 결정된 패턴을 특정 피사체에 조사하여 제1 및 제2 이미지들의 특징점 및 대응점들을 검출하는 것을 특징으로 한다.
좀 더 바람직하게는, 상기 제1 및 제2 모핑 이미지 생성 단계는, 제1 및 제2 이미지의 대응점들을 이용하여 상기 제1 및 제2 이미지를 복수의 영역으로 분할하고, 상기 분할된 제1 및 제2 이미지에 대해 이미지 모핑 알고리즘을 적용하여 제1 및 제2 모핑 이미지를 생성하는 것을 특징으로 한다. 또한, 상기 제1 및 제2 모핑 이미지 생성 단계는 델로네 삼각분할을 이용하여 제1 및 제2 이미지를 복수의 영역으로 분할하는 것을 특징으로 한다.
좀 더 바람직하게는, 상기 제1 및 제2 모핑 이미지 생성 단계는, 이미지 모핑 알고리즘이 직선 함수를 이용한 이미지 모핑 알고리즘인 경우, 수학식
Figure pat00001
을 이용하여 제1 및 제2 모핑 이미지를 생성하는 것을 특징으로 한다. 또한, 상기 제1 및 제2 모핑 이미지 생성 단계는, 이미지 모핑 알고리즘이 커브 함수를 이용한 이미지 모핑 알고리즘인 경우, 수학식
Figure pat00002
와 수학식
Figure pat00003
을 이용하여 제1 및 제2 모핑 이미지를 생성하는 것을 특징으로 한다.
좀 더 바람직하게는, 상기 심 마스크 생성 단계는, 제1 모핑 이미지와 제2 모핑 이미지 간 유사도 측정의 대상이 되는 제1 및 제2 영역들을 검출하는 단계와, 상기 제1 및 제2 영역들 간에 유사도를 측정하여 상기 유사도가 가장 높은 지점들을 검출하고, 상기 검출된 지점들을 선으로 연결하여 제1 모핑 이미지에 대응하는 제1 심 마스크와 제2 모핑 이미지에 대응하는 제2 심 마스크를 생성하는 단계를 포함하는 것을 특징으로 한다. 상기 심 마스크 생성 단계에서의 유사도 측정 알고리즘은 유클리디안 거리(Euclidean Distance, L2 norm) 알고리즘을 포함하는 것을 특징으로 한다.
본 발명의 다른 측면에 따르면, 제1 카메라로부터 특정 피사체에 관한 제1 이미지를 획득하고, 상기 제1 카메라와 다른 투영점을 갖는 제2 카메라로부터 상기 특정 피사체에 관한 제2 이미지를 획득하는 영상 획득부; 미리 결정된 이미지 모핑 알고리즘(Image Morphing Algorism)을 이용하여 상기 제1 이미지에 대응하는 제1 모핑 이미지와 상기 제2 이미지에 대응하는 제2 모핑 이미지를 생성하는 이미지 모핑부; 상기 제1 및 제2 모핑 이미지에 대해 유사도 측정 알고리즘을 적용하여 심 마스크(Seam Mask)를 생성하는 마스크 생성부; 및 상기 심 마스크가 적용된 제1 및 제2 모핑 이미지를 합성하여 파노라마 영상을 생성하는 영상 합성부를 포함하는 파노라마 영상 생성 장치를 제공한다.
좀 더 바람직하게는, 상기 파노라마 영상 생성 장치는, 제1 및 제2 이미지의 특징점들(Feature points)을 검출하고, 상기 제1 및 제2 이미지의 특징점들을 서로 매칭한 대응점들(corresponding points)을 검출하는 특징점 추출부를 더 포함하는 것을 특징으로 한다. 또한, 상기 파노라마 영상 생성 장치는, 파노라마 영상 또는 심 마스크에 대해 이미지 블렌딩을 수행하는 영상 후처리부를 더 포함하는 것을 특징으로 한다.
본 발명의 또 다른 측면에 따르면, 제1 카메라로부터 특정 피사체에 관한 제1 이미지를 획득하고, 상기 제1 카메라와 다른 투영점을 갖는 제2 카메라로부터 상기 특정 피사체에 관한 제2 이미지를 획득하는 단계; 미리 결정된 이미지 모핑 알고리즘(Image Morphing Algorism)을 이용하여 상기 제1 이미지에 대응하는 제1 모핑 이미지와 상기 제2 이미지에 대응하는 제2 모핑 이미지를 생성하는 단계; 상기 제1 및 제2 모핑 이미지에 대해 유사도 측정 알고리즘을 적용하여 심 마스크(Seam Mask)를 생성하는 단계; 및 상기 심 마스크가 적용된 제1 및 제2 모핑 이미지를 합성하여 파노라마 영상을 생성하는 단계를 컴퓨터 상에서 수행하기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체를 제공한다.
본 발명의 실시 예들에 따른 파노라마 영상 생성 방법 및 그 장치의 효과에 대해 설명하면 다음과 같다.
본 발명의 실시 예들 중 적어도 하나에 의하면, 서로 다른 투영점을 갖도록 배치된 복수의 카메라에서 촬영한 영상들에 대해 이미지 모핑 알고리즘을 적용하여 파노라마 영상을 생성함으로써, 종래의 카메라 배치 방식에 비해 좀 더 넓은 촬영 범위를 획득할 수 있다는 장점이 있다.
또한, 본 발명의 실시 예들 중 적어도 하나에 의하면, 레이저 또는 프로젝터로 특정 패턴을 피사체에 조사하여 복수의 카메라에서 촬영한 영상들의 특징점 및 대응점을 추출함으로써, 서로 다른 방향에서 촬영한 영상들을 하나의 파노라마 영상으로 자연스럽게 합성할 수 있다는 장점이 있다.
다만, 본 발명의 실시 예들에 따른 파노라마 영상 생성 방법 및 그 장치가 달성할 수 있는 효과는 이상에서 언급한 것들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 기존의 파노라마 알고리즘을 적용하기 위한 카메라 배치를 설명하는 도면;
도 2는 본 발명의 일 실시 예에 따른 파노라마 영상 생성 장치의 구성을 설명하기 위한 블록도;
도 3은 본 발명의 일 실시 예에 따른 파노라마 영상 생성부의 구성을 설명하기 위한 블록도;
도 4는 서로 다른 투영점을 갖는 듀얼 카메라를 통해 촬영된 이미지들을 획득하는 과정을 설명하기 위해 참조되는 도면;
도 5 내지 도 7은 프로젝터를 이용하여 촬영 이미지들의 특징점들 및 대응점들을 검출하는 과정을 설명하기 위해 참조되는 도면;
도 8은 촬영 이미지들의 특징점들 중에서 이상점을 제거하는 과정을 설명하기 위해 참조되는 도면;
도 9는 델로네 삼각분할을 이용하여 촬영 이미지를 분할하는 과정을 설명하기 위해 참조되는 도면;
도 10 내지 도 12는 이미지 모핑 알고리즘을 이용하여 모핑 이미지를 생성하는 과정을 설명하기 위해 참조되는 도면;
도 13a 및 도 13b는 유사도 측정 알고리즘을 이용하여 심 마스크(Seam Mask)를 생성하는 과정을 설명하기 위해 참조되는 도면;
도 14는 심 마스크가 적용된 모핑 이미지들을 합성하여 파노라마 이미지를 생성하는 과정을 설명하기 위해 참조되는 도면;
도 15는 본 발명의 일 실시 예에 따른 파노라마 영상 생성 장치의 동작을 설명하는 순서도.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 즉, 본 발명에서 사용되는 '부'라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, '부'는 어떤 역할들을 수행한다. 그렇지만 '부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 '부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '부'들로 결합되거나 추가적인 구성요소들과 '부'들로 더 분리될 수 있다.
또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 발명은 서로 다른 투영점을 갖도록 배치된 복수의 카메라에서 근거리 3차원 피사체를 촬영한 영상들을 기반으로 파노라마 영상을 생성하는 방법 및 그 장치를 제안한다.
이하에서는, 본 발명의 다양한 실시 예들에 대하여, 도면을 참조하여 상세히 설명한다.
도 2는 본 발명의 일 실시 예에 따른 파노라마 영상 생성 장치의 구성을 설명하기 위한 블록도이다.
도 2를 참조하면, 본 발명에 따른 파노라마 영상 생성 장치(100)는 제1 카메라(110), 제2 카메라(120), 프로젝터(130), 입력부(140), 출력부(150), 메모리(160), 파노라마 영상 생성부(170) 및 제어부(180) 등을 포함할 수 있다. 도 2에 도시된 구성요소들은 파노라마 영상 생성 장치를 구현하는데 있어서 필수적인 것은 아니어서, 본 명세서상에서 설명되는 파노라마 영상 생성 장치는 위에서 열거된 구성요소들보다 많거나, 또는 적은 구성요소들을 가질 수 있다.
제1 및 제2 카메라(110, 120)는, 카메라 센서(예를 들어, CCD, CMOS 등), 포토 센서(또는 이미지 센서) 및 레이저 센서 중 적어도 하나를 포함할 수 있다. 또한, 제1 및 제2 카메라(110, 120)는 적어도 하나의 라인을 따라 배열되는 복수의 렌즈를 포함할 수 있다. 상기 복수의 렌즈는 행렬(matrix) 형식으로 배열될 수 있다.
제1 및 제2 카메라(110, 120)는 촬영 모드에서 센서에 의해 얻어지는 정지영상 또는 동영상 등의 화상 프레임을 처리할 수 있다. 처리된 화상 프레임은 디스플레이부에 표시되거나, 메모리(150)에 저장되거나, 혹은 파노라마 영상 생성부(160)로 입력될 수 있다. 한편, 설명의 편의상, 본 실시 예에서는, 두 대의 카메라(즉, 듀얼 카메라)가 파노라마 영상 생성 장치(100)에 설치되는 것을 예시하고 있으나, 이를 제한하지는 않으며 그 보다 더 많은 개수의 카메라들이 설치될 수도 있다.
제1 및 제2 카메라(110, 120)는, 입체 영상(Stereoscopic Image) 또는 파노라마 영상(Panorama Image)을 구현하기 위한 영상들을 획득하기 위해, 스테레오 구조로 배치될 수 있다. 이때, 제1 및 제2 카메라(110, 120)는 서로 다른 투영점을 갖도록 일정 거리만큼 이격되어 설치될 수 있다. 이에 따라, 제1 및 제2 카메라(110, 120)는 투영점을 서로 달리하여 서로 다른 각도에서 근거리 3차원 피사체를 촬영할 수 있다. 제1 카메라(110)의 시선과 제2 카메라(120)의 시선이 이루는 각도는 30°와 150° 사이로 설정될 수 있으며 반드시 이에 제한되지는 않는다.
프로젝터(130)는 제1 카메라(110)와 제2 카메라(120) 사이의 중간 지점에 배치되어, 미리 결정된 패턴을 갖는 광을 근거리 3차원 피사체 방향으로 조사하는 동작을 수행할 수 있다. 이러한 동작을 수행하는 이유는 제1 및 제2 카메라(110, 120)에서 해당 피사체를 촬영한 영상들의 특징점들 및 대응점들을 검출하기 위함이다.
입력부(140)는 사용자로부터 정보를 입력받기 위한 사용자 입력부(예를 들어, 터치키(touch key), 푸시키(mechanical key) 등)를 포함할 수 있다. 사용자 입력부는 사용자로부터 정보를 입력받기 위한 것으로서, 사용자 입력부를 통해 정보가 입력되면, 입력된 정보에 대응되도록 파노라마 영상 생성 장치(100)의 동작을 제어할 수 있다. 이러한 사용자 입력부는 기계식 (mechanical) 입력수단(또는, 메커니컬 키, 예를 들어, 파노라마 영상 생성 장치(100)에 위치하는 버튼, 돔 스위치 (dome switch), 조그 휠, 조그 스위치 등) 및 터치식 입력수단을 포함할 수 있다.
출력부(150)는 시각, 청각 또는 촉각 등과 관련된 출력을 발생시키기 위한 것으로, 디스플레이부, 음향 출력부, 및 광 출력부 중 적어도 하나를 포함할 수 있다. 디스플레이부는 터치 센서와 상호 레이어 구조를 이루거나 일체형으로 형성됨으로써, 터치 스크린을 구현할 수 있다. 이러한 터치 스크린은, 파노라마 영상 생성 장치(100)와 사용자 사이의 입력 인터페이스를 제공하는 사용자 입력부로써 기능함과 동시에, 파노라마 영상 생성 장치(100)와 사용자 사이의 출력 인터페이스를 제공할 수 있다.
음향 출력부는 촬영 모드 또는 음성인식 모드 등에서 메모리(150)에 저장된 오디오 데이터를 출력할 수 있다. 음향 출력부는 파노라마 영상 생성 장치(100)에서 수행되는 기능과 관련된 다양한 음향 신호를 출력할 수 있다. 광 출력부는 파노라마 영상 생성 장치(100)에서 발생되는 이벤트를 사용자에게 알리기 위한 광 신호를 출력할 수 있다.
메모리(160)는 파노라마 영상 생성 장치(100)의 다양한 기능을 지원하는 데이터를 저장한다. 메모리(160)는 파노라마 영상 생성 장치(100)에서 구동되는 다수의 응용 프로그램(application program 또는 애플리케이션(application)), 파노라마 영상 생성 장치(100)의 동작을 위한 데이터들, 명령어들을 저장할 수 있다.
메모리(160)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), SSD 타입(Solid State Disk type), SDD 타입(Silicon Disk Drive type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(random access memory; RAM), SRAM(static random access memory), 롬(read-only memory; ROM), EEPROM(electrically erasable programmable read-only memory), PROM(programmable read-only memory), 자기 메모리, 자기 디스크 및 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다.
파노라마 영상 생성부(170)는 제1 및 제2 카메라(110, 120)로부터 입력된 영상들에 대해 미리 정의된 파노라마 알고리즘을 적용하여 파노라마 영상을 생성할 수 있다. 파노라마 영상 생성부(170)는 파노라마 영상을 메모리에 저장하거나 혹은 디스플레이부에 표시할 수 있다. 또한, 파노라마 영상 생성부(170)는 사용자 명령 등에 따라 파노라마 영상을 타 디바이스 또는 외부 서버 등으로 전송할 수 있다.
한편, 본 실시 예에서는 파노라마 영상 생성부(170)가 제어부(180) 외부에 독립적인 형태로 구성되는 것을 예시하고 있으나 이를 제한하지는 않으며, 제어부(180)의 내부에 하드웨어 및/또는 소프트웨어 형태로 구현될 수도 있다.
제어부(180)는 메모리(160)에 저장된 응용 프로그램과 관련된 동작과, 통상적으로 파노라마 영상 생성 장치(100)의 전반적인 동작을 제어한다. 나아가 제어부(180)는 이하에서 설명되는 다양한 실시 예들을 본 발명에 따른 파노라마 영상 생성 장치(100) 상에서 구현하기 위하여, 위에서 살펴본 구성요소들을 중 적어도 하나를 조합하여 제어할 수 있다.
도 3은 본 발명의 일 실시 예에 따른 파노라마 영상 생성부의 구성을 설명하기 위한 블록도이다.
도 3을 참조하면, 본 발명에 따른 파노라마 영상 생성부(160, 200)는, 영상 획득부(210), 특징점 추출부(220), 이미지 모핑부(230), 마스크 생성부(240), 영상 합성부(250), 및 영상 후처리부(260) 등을 포함할 수 있다. 도 3에 도시된 구성요소들은 파노라마 영상 생성부(200)를 구현하는데 있어서 필수적인 것은 아니어서, 본 명세서상에서 설명되는 파노라마 영상 생성부는 위에서 열거된 구성요소들보다 많거나, 또는 적은 구성요소들을 가질 수 있다.
영상 획득부(210)는 제1 카메라(110)를 통해 촬영된 제1 이미지와 제2 카메라(120)를 통해 촬영된 제2 이미지를 획득(또는 수집)하는 동작을 수행할 수 있다. 즉, 영상 획득부(210)는 서로 다른 투영점을 갖도록 배치된 제1 및 제2 카메라(110, 120)로부터 근거리 3차원 피사체를 포함하는 제1 및 제2 이미지들을 수신하고, 해당 이미지들을 메모리(150)에 임시로 저장할 수 있다.
예컨대, 도 4에 도시된 바와 같이, 영상 획득부(210)는 제1 카메라(110)를 통해 근거리 3차원 피사체(가령, 어깨 팬텀 모형, 410)의 좌측 영역을 촬영한 제1 이미지(420)를 획득할 수 있고, 제2 카메라(120)를 통해 해당 피사체(410)의 우측 영역을 촬영한 제2 이미지(430)를 획득할 수 있다. 이때, 제1 및 제2 이미지(420, 430)는 근거리 3차원 피사체(410)의 촬영 범위가 중첩되는 공통 영역을 포함할 수 있다.
특징점 추출부(220)는 제1 및 제2 이미지들의 특징점들(Feature points)을 추출하고, 상기 제1 및 제2 이미지들 간의 특징점들을 서로 매칭시켜 대응점들(corresponding points)을 검출할 수 있다.
일 예로, 특징점 추출부(220)는 SIFT(Scale-invariant feature transform), Affine-SIFT, SUFT(Speeded Up Robust Features), KAZE, Accelerated-KAZE 등과 같은 특징점 매칭 알고리즘을 사용하여 제1 및 제2 이미지들의 특징점들 및 대응점들을 검출할 수 있다.
한편, 다른 실시 예로, 특징점 추출부(220)는 레이저 또는 프로젝터 등을 통해 미리 결정된 패턴을 근거리 3차원 피사체에 조사하여 제1 및 제2 이미지들의 특징점들 및 대응점들을 검출할 수 있다.
가령, 도 5 내지 도 7에 도시된 바와 같이, 프로젝터(130)는, 제어부(180)의 제어 명령 등에 따라, 미리 결정된 패턴(415)을 근거리 3차원 피사체(410)에 조사할 수 있다. 이때, 상기 미리 결정된 패턴은 격자 모양의 패턴일 수 있으며 반드시 이에 제한되지는 않는다.
제1 및 제2 카메라(110, 120)는, 제어부(180)의 제어 명령 등에 따라, 미리 결정된 패턴(415)이 조사된 피사체(410)를 서로 다른 방향에서 촬영할 수 있다. 제1 및 제2 카메라(110, 120)는 촬영된 제1 및 제2 패턴 이미지를 특징점 추출부(220)로 제공할 수 있다.
특징점 추출부(220)는 제1 카메라(110)를 통해 촬영된 제1 패턴 이미지(425)를 분석하여 제1 이미지(420)의 특징점들을 검출할 수 있다. 즉, 특징점 추출부(220)는 제1 패턴 이미지(425)를 분석하여 피사체(410)의 모양에 맞게 변형된 패턴들을 검출하고, 각 패턴 영역의 무게 중심점(Centroid point)을 추출하여 제1 이미지(420)의 특징점들(427)을 획득할 수 있다.
마찬가지로, 특징점 추출부(220)는 제2 카메라(120)를 통해 촬영된 제2 패턴 이미지(435)를 분석하여 제2 이미지(430)의 특징점들을 검출할 수 있다. 즉, 특징점 추출부(220)는 제2 패턴 이미지(435)를 분석하여 피사체(410)의 모양에 맞게 변형된 패턴들을 검출하고, 각 패턴 영역의 무게 중심점(Centroid point)을 추출하여 제2 이미지(430)의 특징점들(437)을 획득할 수 있다.
특징점 추출부(220)는 제1 이미지(420)의 특징점들과 제2 이미지(430)의 특징점들을 서로 매칭하여 대응점들을 검출할 수 있다. 그런데, 제1 및 제2 이미지(420, 430)에서 추출된 특징점들 중에는 소정의 오차(error)를 갖는 특징점이 존재한다. 따라서, 파노라마 이미지의 자연스러운 합성을 위해, 이러한 오차를 갖는 특징점(이하, 설명의 편의상 '이상점(outlier)'라 칭함)을 제거할 필요가 있다.
가령, 도 8에 도시된 바와 같이, 특징점 추출부(220)는 공액 기하(Epipolar geometry) 성질을 이용하여 제1 및 제2 이미지(420, 430)의 특징점들 중에서 이상점들(Outliers)을 검출하고, 상기 검출된 이상점들을 제거할 수 있다.
제1 및 제2 카메라를 이용하여 근거리 3차원 피사체(410)의 일 지점(X)을 촬영하면, 제1 카메라에서 촬영한 이미지에는 해당 피사체의 일 지점(X)에 대응하는 제1 특징점(
Figure pat00004
)이 존재하게 되고, 제2 카메라에서 촬영한 이미지에는 해당 피사체의 일 지점(X)에 대응하는 제2 특징점(
Figure pat00005
)이 존재하게 된다. 제1 특징점(
Figure pat00006
)과 제2 특징점(
Figure pat00007
)이 서로 상응하는 대응점일 경우, 제1 특징점(
Figure pat00008
)에 대응하는 제2 특징점(
Figure pat00009
)은 공액선(Epipolar line) 상에 위치하는 성질을 가지게 되며, 이러한 성질을 공액 기하 성질(Epipolar geometry)이라 한다.
이론상으로는 제2 특징점이 공액선(Epipolar line) 상의 일 지점(
Figure pat00010
)에 위치해야 하지만, 실제상으로는 소정의 오차가 존재하여 공액선으로부터 일정 거리만큼 떨어진 지점(
Figure pat00011
)에 위치하는 경우가 있다. 통상 제2 특징점과 공액선 사이의 거리(distance, d)는 오차의 크기에 비례하기 때문에, 상기 제2 특징점과 공액선 간의 거리를 미리 설정하여 일정 거리를 초과하는 특징점들(즉, 이상점들)을 걸러낼 수 있다.
즉, 특징점 추출부(220)는 제1 및 제2 이미지의 특징점과 공액선 사이의 거리 값(d)이 임계치 이상인 경우, 해당 특징점을 이상점(outlier)으로 간주(결정)할 수 있다. 한편, 특징점 추출부(220)는 제1 및 제2 이미지의 특징점과 공액선 사이의 거리 값(d)이 임계치 미만인 경우, 해당 특징점을 정상점(inlier)으로 간주(결정)할 수 있다.
특징점 추출부(220)는 이러한 이상점들(Outliers)을 제1 및 제2 이미지(420, 430)의 특징점들에서 배제할 수 있다. 이에 따라, 특징점 추출부(220)는 제1 이미지(420)의 정상점들(inliers)과 제2 이미지(430)의 정상점들(inliers)을 서로 매칭하여 대응점들을 검출할 수 있다. 이때, 상기 검출된 대응점들은 이미지 모핑 알고리즘의 입력 값으로 사용될 수 있다.
다시, 도 3을 참조하면, 이미지 모핑부(230)는 특징점 추출부(220)에서 검출한 대응점들을 기반으로 제1 및 제2 이미지를 복수의 영역으로 분할하는 동작을 수행할 수 있다.
예컨대, 도 9에 도시된 바와 같이, 이미지 모핑부(230)는 대응점들을 삼각형 모양으로 연결하여 제1 및 제2 이미지(420, 430)를 복수의 영역으로 분할할 수 있다. 이때, 이미지 모핑부(230)는 델로네 삼각분할(Delaunay Triangulation) 기법을 이용하여 제1 및 제2 이미지(420, 430)를 분할할 수 있다. 상기 델로네 삼각분할 기법은 평면 위의 점들을 삼각형으로 연결하여 공간을 분할할 때 이 삼각형들의 내각의 최소값이 최대가 되도록 하는 분할을 의미한다.
이후, 이미지 모핑부(230)는 복수의 영역으로 분할된 제1 및 제2 이미지들에 대해 이미지 모핑 알고리즘(Image Morphing Algorism)을 적용하여 제1 모핑 이미지와 제2 모핑 이미지를 생성하는 동작을 수행할 수 있다.
예컨대, 도 10 내지 도 12에 도시된 바와 같이, 이미지 모핑부(230)는 델로네 삼각분할을 통해 제1 이미지(420)를 다수의 삼각형 영역으로 분할하여 I 이미지(또는 I 삼각형, 510)를 생성할 수 있다. 여기서, I 이미지(510)의 꼭지점들(A, B, C)은, 제1 이미지(420)에서 추출된 대응점들(corresponding points)에 해당한다.
이미지 모핑부(230)는 델로네 삼각분할을 통해 제2 이미지(430)를 다수의 삼각형 영역으로 분할하여 J 이미지(또는 J 삼각형, 520)를 생성할 수 있다. 여기서, J 이미지(520)의 꼭지점들(a, b, c)은 제2 이미지(430)에서 추출된 대응점들(corresponding points)에 해당한다.
이미지 모핑부(230)는, I 이미지(510)와 J 이미지(520)에 대해 이미지 모핑 알고리즘을 적용하여 모핑 이미지(즉, M 이미지, 530, 540)를 생성할 수 있다. 여기서, 이미지 모핑이란 어떤 형체가 서서히 모양을 바꿔 다른 형체로 변하는 이미지 기법이다.
일 실시 예로, 이미지 모핑부(230)는, 직선 함수를 이용한 이미지 모핑 알고리즘을 이용하여 모핑 이미지를 생성할 수 있다. 즉, 이미지 모핑부(230)는 아래 수학식 1을 이용하여 모핑 이미지(530)의 좌표 값들(x, y)을 계산하고, 이를 기반으로 모핑 이미지(530)를 생성할 수 있다.
Figure pat00012
여기서, M(x, y)는 모핑 이미지의 좌표 값, I(x, y)는 I 이미지의 좌표 값, J(x, y)는 J 이미지의 좌표 값, s는 가중치임.
상술한 수학식 1의 S 값이 0.5로 설정된 경우, 이미지 모핑부(230)는, I 이미지(510)의 좌표 값(x, y)과 J 이미지(520)의 좌표 값(x, y)을 기반으로 M 이미지(530)의 좌표 값(x, y)을 얻을 수 있다. 즉, I 이미지(510)의 세 꼭지점(A, B, C)에 관한 좌표 값과 J 이미지(520)의 세 꼭지점(a, b, c)에 관한 좌표 값을 상술한 수학식 1에 적용하면, 이미지 모핑부(230)는 M 이미지(530)의 세 꼭지점에 관한 좌표 값을 구할 수 있다.
M 이미지(530)의 세 꼭지점에 관한 좌표 값이 구해지면, 이미지 모핑부(230)는, I 이미지(510)와 M 이미지(530) 간의 Homography matrix(HIM)와, J 이미지(520)과 M 이미지(530) 간의 Homography matrix(HMJ)를 계산할 수 있다. 이미지 모핑부(230)는, I 이미지(510)에 HIM 매트릭스를 곱하여 I 이미지(510)을 M 이미지(530)로 변환할 수 있고, J 이미지(520)에 HMJ 매트릭스를 곱하여 J 이미지(520)를 M 이미지(530)로 변환할 수 있다.
이미지 모핑부(230)는, 제1 및 제2 이미지(420, 430)를 구성하는 모든 삼각형 이미지들에 대해 상술한 과정들을 반복하여 수행할 수 있다. 이와 같은 과정들이 모두 완료되면, 이미지 모핑부(230)는, 제1 이미지(420)에 대응하는 제1 모핑 이미지(미도시)와 제2 이미지(430)에 대응하는 제2 모핑 이미지(미도시)를 생성할 수 있다.
이러한 직선 함수를 이용한 이미지 모핑 알고리즘은, 도 11의 (a)에 도시된 바와 같이, 제1 및 제2 이미지(420, 430)의 특징점들(PiA, PiB, PjA, PjB)을 제1 이미지(420)의 특징점들(PiA, PiB)과 제2 이미지(430)의 특징점들(PjA, PjB)을 연결하는 직선들의 중간 지점들(PmA, PmB)로 변경하여 제1 및 제2 이미지(420, 430)에 관한 모핑 이미지들을 생성하게 된다.
한편, 다른 실시 예로, 이미지 모핑부(230)는, 커브 함수를 이용한 이미지 모핑 알고리즘을 이용하여 모핑 이미지를 생성할 수 있다. 이미지 모핑부(230)는 아래 수학식 2 및 3을 이용하여 모핑 이미지(530)의 좌표 값을 계산하고, 이를 기반으로 모핑 이미지(540)를 생성할 수 있다.
Figure pat00013
여기서, M(x)는 모핑 이미지의 x축 좌표 값, I(x)는 I 이미지의 x축 좌표 값, J(x)는 J 이미지의 x축 좌표 값, s는 가중치임.
Figure pat00014
여기서, M(y)는 모핑 이미지의 y축 좌표 값, F는 커브 함수(curve function)임. 상기 커브 함수로는 미리 결정된 다항식(Polynomial expression)이 사용될 수 있다.
상술한 수학식 2의 S 값이 0.5로 설정된 경우, 이미지 모핑부(230)는, I 이미지(510)의 좌표 값(x, y)과 J 이미지(520)의 좌표 값(x, y)을 기반으로 M 이미지(540)의 좌표 값(x, y)을 얻을 수 있다. 즉, I 이미지(510)의 세 꼭지점(A, B, C)에 관한 좌표 값과 J 이미지(520)의 세 꼭지점(a, b, c)에 관한 좌표 값을 상술한 수학식 2 및 3에 적용하면, 이미지 모핑부(230)는 M 이미지(540)의 세 꼭지점에 관한 좌표 값을 구할 수 있다.
M 이미지(540)의 세 꼭지점에 관한 좌표 값이 구해지면, 이미지 모핑부(230)는, I 이미지(510)와 M 이미지(540) 간의 Homography matrix(HIM)와, J 이미지(520)과 M 이미지(540) 간의 Homography matrix(HMJ)를 계산할 수 있다. 이미지 모핑부(230)는, I 이미지(510)에 HIM 매트릭스를 곱하여 I 이미지(510)을 M 이미지(540)로 변환할 수 있고, J 이미지(520)에 HMJ 매트릭스를 곱하여 J 이미지(520)를 M 이미지(540)로 변환할 수 있다.
이미지 모핑부(230)는, 제1 및 제2 이미지(420, 430)를 구성하는 모든 삼각형 이미지들에 대해 상술한 과정들을 반복하여 수행할 수 있다. 이와 같은 과정들이 모두 완료되면, 이미지 모핑부(230)는, 도 12에 도시된 바와 같이, 제1 이미지(420)에 대응하는 제1 모핑 이미지(440)와 제2 이미지(430)에 대응하는 제2 모핑 이미지(450)를 생성할 수 있다.
커브 함수를 이용한 이미지 모핑 알고리즘은, 도 11의 (b)에 도시된 바와 같이, 제1 및 제2 이미지(420, 430)의 특징점들(PiA, PiB, PjA, PjB)을 제1 이미지(420)의 특징점들(PiA, PiB)과 제2 이미지(430)의 특징점들(PjA, PjB)을 연결하는 곡선 상의 중간 지점들(PmA, PmB)로 변경하여 제1 및 제2 이미지(420, 430)에 관한 모핑 이미지들을 생성하게 된다.
커브 함수를 이용한 이미지 모핑 알고리즘은, 이미지 모핑 과정에서 구조적인 왜곡이 발생하여 영상 이음 부분에서 안쪽으로 들어가는 왜곡을 보정하기 위해 사용될 수 있다.
다시, 도 3을 참조하면, 마스크 생성부(240)는 제1 및 제2 모핑 이미지에 대해 유사도 측정 알고리즘을 적용하여 심 마스크(Seam Mask)를 생성하는 동작을 수행할 수 있다. 이때, 상기 유사도 측정 알고리즘으로는 코사인 유사도(cosine similarity) 측정 기법, 유클리디안 유사도(Euclidean similarity) 측정 기법, 자카드 계수를 이용한 유사도 측정 기법, 피어슨 상관계수를 이용한 유사도 측정 기법, 맨하튼 거리를 이용한 유사도 측정 기법 중 적어도 하나가 사용될 수 있으며 반드시 이에 제한되지는 않는다. 좀 더 바람직하게는, 상기 유사도 측정 알고리즘으로 유클리디안 거리(Euclidean Distance, L2 norm) 알고리즘이 사용될 수 있다.
가령, 도 13a 및 도 13b에 도시된 바와 같이, 마스크 생성부(240)는 제1 모핑 이미지(440)와 제2 모핑 이미지(450) 간 유사도 비교의 대상이 되는 제1 영역(445) 및 제2 영역(455)을 검출할 수 있다. 이때, 상기 제1 및 제2 영역(445, 455)은 32x32 픽셀 크기(pixel size)로 설정될 수 있으며 반드시 이에 제한되지는 않는다.
마스크 생성부(240)는 제1 이미지(420)와 제2 이미지(430)가 서로 중첩되는 영역을 기준으로 제1 및 제2 영역(445, 455)을 검출할 수 있다. 즉, 마스크 생성부(240)는 제1 및 제2 이미지(420, 430)에서 삼각형 모양의 분할 영역들이 많이 존재하는 이미지 영역들을 기준으로 유사도 비교 대상 영역들(445, 455)을 검출할 수 있다.
마스크 생성부(240)는 제1 이미지(420)의 제1 영역(445)과 제2 이미지(430)의 제2 영역(455)을 유클리디안 거리 값(즉, L2 norm similarity 값)으로 비교하여 가장 유사한 위치들을 검출할 수 있다. 마스크 생성부(240)는 제1 및 제2 영역(445, 455) 이외의 다른 인접 영역들에 대해서도 유클리디안 거리 값으로 비교하여 가장 유사한 위치들을 검출할 수 있다.
마스크 생성부(240)는 제1 모핑 이미지(440)에서 검출된 위치들을 선으로 연결하여 제1 심 경계(seam boundary, 447)를 결정하고, 이를 기반으로 제1 심 마스크(449)를 생성할 수 있다. 또한, 마스크 생성부(240)는 제2 모핑 이미지(450)에서 검출된 위치들을 선으로 연결하여 제2 심 경계(seam boundary, 457)를 결정하고, 이를 기반으로 제2 심 마스크(459)를 생성할 수 있다.
영상 합성부(250)는 제1 및 제2 모핑 이미지에 대해 심 마스크를 적용하여 파노라마 이미지를 합성하는 동작을 수행할 수 있다.
예컨대, 도 14에 도시된 바와 같이, 영상 합성부(250)는 제1 모핑 이미지(440)에 대해 제1 심 마스크(449)를 적용하고, 제2 모핑 이미지(450)에 대해 제2 심 마스크(459)를 적용할 수 있다.
영상 합성부(250)는 제1 심 마스크(449)가 적용된 제1 모핑 이미지(440)와 제2 심 마스크(459)가 적용된 제2 모핑 이미지(450)를 합성하여 하나의 파노라마 이미지(460)를 생성할 수 있다.
영상 후처리부(260)는, 영상 왜곡, 색상 왜곡, 기하학 왜곡 등을 보정하기 위해, 이미지 필터링(Image filtering), 이미지 블렌딩(Image blending)등과 같은 영상 처리를 파노라마 이미지에 대해 수행할 수 있다.
한편, 영상 후처리부(260)는, 영상 왜곡, 색상 왜곡, 기하학 왜곡 등을 보정하기 위해, 가우시안 블러(Gaussian Blur) 등과 같은 이미지 블렌딩 효과를 심 마스크에 대해 수행할 수도 있다.
도 15는 본 발명의 일 실시 예에 따른 파노라마 영상 생성 장치의 동작을 설명하는 순서도이다.
파노라마 영상 생성 장치(100)는, 서로 다른 투영점을 갖도록 배치된 제1 및 제2 카메라(110, 120)를 활성화하여 전방에 위치하는 근거리 3차원 피사체를 촬영할 수 있다(S1510).
파노라마 영상 생성 장치(100)는, 제1 카메라(110)로부터 근거리 3차원 피사체를 촬영한 제1 이미지를 획득할 수 있고, 제2 카메라(120)로부터 동일한 피사체를 촬영한 제2 이미지를 획득할 수 있다(S1520). 여기서, 제1 이미지는 제1 카메라(110)로 근거리 3차원 피사체를 제1 방향(가령, 왼쪽 방향)에서 촬영한 이미지이고, 제2 이미지는 제2 카메라(120)로 근거리 3차원 피사체를 제2 방향(가령, 오른쪽 방향)에서 촬영한 이미지일 수 있다.
파노라마 영상 생성 장치(100)는, 제1 이미지 및 제2 이미지의 특징점들(Feature points)을 추출하고, 제1 및 제2 이미지 간의 특징점들을 서로 매칭시켜 대응점들(corresponding points)을 검출할 수 있다(S1530). 이때, 파노라마 영상 생성 장치(100)는 SIFT, Affine-SIFT, SUFT, KAZE, AKAZE 등과 같은 특징점 매칭 알고리즘을 이용하여 복수의 대응점들을 검출할 수 있다.
한편, 다른 실시 예로, 파노라마 영상 생성 장치(100)는, 레이저 장치 또는 프로젝터 등을 통해 미리 결정된 패턴을 근거리 3차원 피사체에 조사하여 제1 및 제2 이미지들의 특징점들 및 대응점들을 검출할 수 있다.
파노라마 영상 생성 장치(100)는, 상기 검출된 대응점들을 기반으로 제1 및 제2 이미지를 복수의 영역으로 분할할 수 있다. 이때, 파노라마 영상 생성 장치(100)는 델로네 삼각분할(Delaunay Triangulation) 기법을 이용하여 제1 및 제2 이미지를 복수의 삼각형 영역으로 분할할 수 있다.
파노라마 영상 생성 장치(100)는, 복수의 영역으로 분할된 제1 및 제2 이미지들에 대해 커브 함수를 이용한 이미지 모핑 알고리즘을 적용하여 제1 모핑 이미지와 제2 모핑 이미지를 생성할 수 있다(S1540).
파노라마 영상 생성 장치(100)는, 제1 및 제2 모핑 이미지에 대해 유사도 측정 알고리즘을 적용하여 제1 및 제2 심 마스크(Seam Mask)를 생성할 수 있다(S1550). 이때, 상기 유사도 측정 알고리즘으로는 유클리디안 거리(Euclidean Distance, L2 norm) 알고리즘이 사용될 수 있다.
파노라마 영상 생성 장치(100)는, 제1 심 마스크가 적용된 제1 모핑 이미지와 제2 심 마스크가 적용된 제2 모핑 이미지를 자연스럽게 붙이는 동작을 수행할 수 있다(S1560). 즉, 파노라마 영상 생성 장치(100)는, 제1 및 제2 심 마스크가 적용된 제1 및 제2 모핑 이미지들을 합성하여 하나의 파노라마 이미지를 생성할 수 있다.
파노라마 영상 생성 장치(100)는, 상기 생성된 파노라마 이미지에 대해 이미지 필터링(Image filtering), 이미지 블렌딩(Image blending)등과 같은 영상 처리를 수행하여 파노라마 이미지의 색상 왜곡, 기하학 왜곡 및 영상 왜곡 등을 보정할 수 있다.
이상 상술한 바와 같이, 본 발명에 따른 파노라마 영상 생성 장치는 서로 다른 투영점을 갖도록 배치된 복수의 카메라에서 근거리 3차원 피사체를 촬영한 영상들에 대해 커브 함수를 이용한 이미지 모핑 알고리즘을 적용하여 자연스러운 파노라마 이미지를 생성할 수 있다.
전술한 본 발명은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. 또한, 상기 컴퓨터는 단말기의 제어부를 포함할 수도 있다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.
100: 파노라마 영상 생성 장치 110: 제1 카메라
120: 제2 카메라 130: 프로젝터
140: 입력부 150: 출력부
160: 메모리 170/200: 파노라마 영상 생성부
180: 제어부 210: 영상 획득부
220: 특징점 추출부 230: 이미지 모핑부
240: 마스크 생성부 250: 영상 합성부
260: 영상 후처리부

Claims (15)

  1. 제1 카메라로부터 특정 피사체에 관한 제1 이미지를 획득하고, 상기 제1 카메라와 다른 투영점을 갖는 제2 카메라로부터 상기 특정 피사체에 관한 제2 이미지를 획득하는 단계;
    미리 결정된 이미지 모핑 알고리즘(Image Morphing Algorism)을 이용하여 상기 제1 이미지에 대응하는 제1 모핑 이미지와 상기 제2 이미지에 대응하는 제2 모핑 이미지를 생성하는 단계;
    상기 제1 및 제2 모핑 이미지에 대해 유사도 측정 알고리즘을 적용하여 심 마스크(Seam Mask)를 생성하는 단계; 및
    상기 심 마스크가 적용된 제1 및 제2 모핑 이미지를 합성하여 파노라마 영상을 생성하는 단계를 포함하는 파노라마 영상 생성 방법.
  2. 제1항에 있어서,
    상기 제1 및 제2 이미지의 특징점들(Feature points)을 검출하고, 상기 제1 및 제2 이미지의 특징점들을 서로 매칭한 대응점들(corresponding points)을 검출하는 단계를 더 포함하는 파노라마 영상 생성 방법.
  3. 제2항에 있어서, 상기 특징점 및 대응점 검출 단계는,
    SIFT(Scale-invariant feature transform) 알고리즘, Affine-SIFT 알고리즘, SUFT(Speeded Up Robust Features) 알고리즘, KAZE 알고리즘, 및 Accelerated-KAZE 알고리즘 중 적어도 하나를 이용하여 상기 제1 및 제2 이미지의 특징점 및 대응점들을 검출하는 것을 특징으로 하는 파노라마 영상 생성 방법.
  4. 제2항에 있어서, 상기 특징점 및 대응점 검출 단계는,
    레이저 장치 또는 프로젝터를 통해 미리 결정된 패턴을 특정 피사체에 조사하여 상기 제1 및 제2 이미지들의 특징점 및 대응점들을 검출하는 것을 특징으로 하는 파노라마 영상 생성 방법.
  5. 제2항에 있어서, 상기 제1 및 제2 모핑 이미지 생성 단계는,
    상기 대응점들을 이용하여 상기 제1 및 제2 이미지를 복수의 영역으로 분할하고, 상기 분할된 제1 및 제2 이미지에 대해 상기 이미지 모핑 알고리즘을 적용하여 상기 제1 및 제2 모핑 이미지를 생성하는 것을 특징으로 하는 파노라마 영상 생성 방법.
  6. 제5항에 있어서, 상기 제1 및 제2 모핑 이미지 생성 단계는,
    델로네 삼각분할(Delaunay Triangulation) 방법을 이용하여 상기 제1 및 제2 이미지를 복수의 영역으로 분할하는 것을 특징으로 하는 파노라마 영상 생성 방법.
  7. 제1항에 있어서, 상기 제1 및 제2 모핑 이미지 생성 단계는,
    상기 이미지 모핑 알고리즘이 직선 함수를 이용한 이미지 모핑 알고리즘인 경우, 아래 수학식을 이용하여 상기 제1 및 제2 모핑 이미지를 생성하는 것을 특징으로 하는 파노라마 영상 생성 방법.
    [수학식]
    Figure pat00015

    여기서, M(x, y)는 모핑 이미지의 좌표 값, I(x, y)는 제1 이미지의 좌표 값, J(x, y)는 제2 이미지의 좌표 값, s는 가중치임.
  8. 제1항에 있어서, 상기 제1 및 제2 모핑 이미지 생성 단계는,
    상기 이미지 모핑 알고리즘이 커브 함수를 이용한 이미지 모핑 알고리즘인 경우, 아래 수학식을 이용하여 상기 제1 및 제2 모핑 이미지를 생성하는 것을 특징으로 하는 파노라마 영상 생성 방법.
    [수학식]
    Figure pat00016

    Figure pat00017

    여기서, M(x)는 모핑 이미지의 x축 좌표 값, I(x)는 제1 이미지의 x축 좌표 값, J(x)는 제2 이미지의 x축 좌표 값, s는 가중치, M(y)는 모핑 이미지의 y축 좌표 값, F는 커브 함수(curve function)임.
  9. 제1항에 있어서,
    상기 유사도 측정 알고리즘은, 유클리디안 거리(Euclidean Distance, L2 norm) 알고리즘을 포함하는 것을 특징으로 하는 파노라마 영상 생성 방법.
  10. 제1항에 있어서, 상기 심 마스크 생성 단계는,
    상기 제1 모핑 이미지와 상기 제2 모핑 이미지 간 유사도 측정의 대상이 되는 제1 및 제2 영역들을 검출하고, 상기 제1 및 제2 영역들 간에 유사도를 측정하는 단계; 및
    상기 측정된 유사도가 가장 높은 지점들을 검출하고, 상기 검출된 지점들을 선으로 연결하여 상기 제1 모핑 이미지에 대응하는 제1 심 마스크와 상기 제2 모핑 이미지에 대응하는 제2 심 마스크를 생성하는 단계를 포함하는 것을 특징으로 하는 파노라마 영상 생성 방법.
  11. 제1항에 있어서,
    상기 생성된 파노라마 영상에 대해 영상 후처리를 수행하는 단계를 더 포함하는 파노라마 영상 생성 방법.
  12. 제1 카메라로부터 특정 피사체에 관한 제1 이미지를 획득하고, 상기 제1 카메라와 다른 투영점을 갖는 제2 카메라로부터 상기 특정 피사체에 관한 제2 이미지를 획득하는 영상 획득부;
    미리 결정된 이미지 모핑 알고리즘(Image Morphing Algorism)을 이용하여 상기 제1 이미지에 대응하는 제1 모핑 이미지와 상기 제2 이미지에 대응하는 제2 모핑 이미지를 생성하는 이미지 모핑부;
    상기 제1 및 제2 모핑 이미지에 대해 유사도 측정 알고리즘을 적용하여 심 마스크(Seam Mask)를 생성하는 마스크 생성부; 및
    상기 심 마스크가 적용된 제1 및 제2 모핑 이미지를 합성하여 파노라마 영상을 생성하는 영상 합성부를 포함하는 파노라마 영상 생성 장치.
  13. 제12항에 있어서,
    상기 제1 및 제2 이미지의 특징점들(Feature points)을 검출하고, 상기 제1 및 제2 이미지의 특징점들을 서로 매칭한 대응점들(corresponding points)을 검출하는 특징점 추출부를 더 포함하는 파노라마 영상 생성 장치.
  14. 제12항에 있어서,
    상기 파노라마 영상 또는 상기 심 마스크에 대해 이미지 블렌딩을 수행하는 영상 후처리부를 더 포함하는 파노라마 영상 생성 장치.
  15. 제1항 내지 제11항 중 어느 하나의 항에 따른 방법을 컴퓨터 상에서 수행하기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체.
KR1020180054083A 2018-05-11 2018-05-11 파노라마 영상 생성 방법 및 그 장치 KR102082277B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180054083A KR102082277B1 (ko) 2018-05-11 2018-05-11 파노라마 영상 생성 방법 및 그 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180054083A KR102082277B1 (ko) 2018-05-11 2018-05-11 파노라마 영상 생성 방법 및 그 장치

Publications (2)

Publication Number Publication Date
KR20190129433A true KR20190129433A (ko) 2019-11-20
KR102082277B1 KR102082277B1 (ko) 2020-02-28

Family

ID=68728976

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180054083A KR102082277B1 (ko) 2018-05-11 2018-05-11 파노라마 영상 생성 방법 및 그 장치

Country Status (1)

Country Link
KR (1) KR102082277B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102332114B1 (ko) * 2020-11-24 2021-12-01 한국과학기술원 이미지 처리 방법 및 장치
US11790486B2 (en) 2020-11-24 2023-10-17 Korea Advanced Institute Of Science And Technology Image processing method and apparatus

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150118795A (ko) * 2014-04-15 2015-10-23 한국과학기술원 단일 이미지 표현을 이용한 다시점 영상의 렌더링 속도 및 편집 능률 향상을 위한 방법
JP2017097799A (ja) * 2015-11-27 2017-06-01 日本電信電話株式会社 画像処理装置、画像処理方法及びコンピュータプログラム
KR20170128739A (ko) * 2016-05-13 2017-11-23 주식회사 카이 몰입형 콘텐츠 제작 지원용 영상 제공 장치 및 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150118795A (ko) * 2014-04-15 2015-10-23 한국과학기술원 단일 이미지 표현을 이용한 다시점 영상의 렌더링 속도 및 편집 능률 향상을 위한 방법
JP2017097799A (ja) * 2015-11-27 2017-06-01 日本電信電話株式会社 画像処理装置、画像処理方法及びコンピュータプログラム
KR20170128739A (ko) * 2016-05-13 2017-11-23 주식회사 카이 몰입형 콘텐츠 제작 지원용 영상 제공 장치 및 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102332114B1 (ko) * 2020-11-24 2021-12-01 한국과학기술원 이미지 처리 방법 및 장치
US11790486B2 (en) 2020-11-24 2023-10-17 Korea Advanced Institute Of Science And Technology Image processing method and apparatus

Also Published As

Publication number Publication date
KR102082277B1 (ko) 2020-02-28

Similar Documents

Publication Publication Date Title
JP5538617B2 (ja) 複数カメラのキャリブレーション用の方法および構成
US20130335535A1 (en) Digital 3d camera using periodic illumination
KR102135770B1 (ko) 스테레오 카메라 기반의 3차원 얼굴 복원 방법 및 장치
KR101984496B1 (ko) 물체 영역에 근거하여 화상을 처리하는 장치 및 그 방법
JP2009536499A (ja) 2次元画像から3次元オブジェクトを再構成するシステム及び方法
US10785469B2 (en) Generation apparatus and method for generating a virtual viewpoint image
CN107798704B (zh) 一种用于增强现实的实时图像叠加方法及装置
WO2013190862A1 (ja) 画像処理装置及び画像処理方法
JP2019092076A (ja) 画像処理装置、画像処理方法、及びプログラム
US11620730B2 (en) Method for merging multiple images and post-processing of panorama
US20200175702A1 (en) Image processing apparatus, three-dimensional shape data generation method, and non-transitory computer readable storage medium
JP2020053774A (ja) 撮像装置および画像記録方法
JP2010140097A (ja) 画像生成方法、画像認証方法、画像生成装置、画像認証装置、プログラム、および記録媒体
CN110245549A (zh) 实时面部和对象操纵
KR102082277B1 (ko) 파노라마 영상 생성 방법 및 그 장치
JP6874850B2 (ja) 物体検知装置、物体検知方法、及びプログラム
US20210335010A1 (en) Calibration method and calibration apparatus
JP5667846B2 (ja) 対象物画像判定装置
KR101529820B1 (ko) 월드 좌표계 내의 피사체의 위치를 결정하는 방법 및 장치
KR20190055632A (ko) 모션 정보를 이용한 객체 복원 장치 및 이를 이용한 객체 복원 방법
US10148929B2 (en) Method of prompting proper rotation angle for image depth establishing
KR101868057B1 (ko) 파노라마 영상 생성 방법 및 그 장치
KR101718309B1 (ko) 색상 정보를 활용한 자동 정합·파노라믹 영상 생성 장치 및 방법
CN112312041A (zh) 基于拍摄的图像校正方法、装置、电子设备及存储介质
JP7265825B2 (ja) 生成装置、生成方法およびプログラム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right