더북(TheBook)

14.4 영상 이어 붙이기

 

 

영상 이어 붙이기(image stitching)는 여러 장의 영상을 서로 이어 붙여서 하나의 큰 영상을 만드는 기법입니다. 영상 이어 붙이기로 만들어진 영상을 파노라마 영상(panorama image)이라고 부르며, 많은 디지털 카메라 또는 스마트폰 카메라 앱에서도 파노라마 영상을 만들어 주는 기능을 제공하고 있습니다. 영상 이어 붙이기에서 입력으로 사용할 영상은 서로 일정 비율 이상으로 겹치는 영역이 존재해야 하며, 서로 같은 위치를 분간할 수 있도록 유효한 특징점이 많이 있어야 합니다.

영상 이어 붙이기를 수행하려면 입력 영상에서 특징점을 검출하고, 서로 매칭을 수행하여 호모그래피를 구해야 합니다. 그리고 구해진 호모그래피 행렬을 기반으로 입력 영상을 변형하여 서로 이어 붙이는 작업을 수행합니다. 이때 영상을 이어 붙인 결과가 자연스럽게 보이도록 이어 붙인 영상의 밝기를 적절하게 보정하는 블렌딩(blending) 처리도 해야 합니다. OpenCV는 이러한 일련의 영상 이어 붙이기 작업을 수행하는 Stitcher 클래스를 제공합니다. Stitcher 클래스를 사용하면 간단한 함수 호출을 통해 여러 영상을 서로 이어 붙일 수 있습니다.

Stitcher 클래스를 이용하여 여러 장의 영상을 이어 붙이려면 먼저 Stitcher 객체를 생성해야 합니다. Stitcher 클래스 객체를 생성하려면 Stitcher 클래스에서 제공하는 Stitcher::create() 정적 멤버 함수를 사용합니다. Stitcher::create() 함수 원형은 다음과 같습니다.

static Ptr<Stitcher> Stitcher::create(Mode mode = Stitcher::PANORAMA);

mode

이어 붙이기 방식. Stitcher::PANORAMA 또는 Stitcher::SCANS를 지정합니다.

반환값

Stitcher 객체를 참조하는 Ptr 스마트 포인터 객체

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.