KR102245470B1 - 다중-센서 비디오 카메라, 이를 위한 방법 및 파이프라인의 처리 - Google Patents

다중-센서 비디오 카메라, 이를 위한 방법 및 파이프라인의 처리 Download PDF

Info

Publication number
KR102245470B1
KR102245470B1 KR1020180058115A KR20180058115A KR102245470B1 KR 102245470 B1 KR102245470 B1 KR 102245470B1 KR 1020180058115 A KR1020180058115 A KR 1020180058115A KR 20180058115 A KR20180058115 A KR 20180058115A KR 102245470 B1 KR102245470 B1 KR 102245470B1
Authority
KR
South Korea
Prior art keywords
video
frame
image data
overlapping portion
video frame
Prior art date
Application number
KR1020180058115A
Other languages
English (en)
Other versions
KR20180138131A (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 엑시스 에이비
Publication of KR20180138131A publication Critical patent/KR20180138131A/ko
Application granted granted Critical
Publication of KR102245470B1 publication Critical patent/KR102245470B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/293Generating mixed stereoscopic images; Generating mixed monoscopic and stereoscopic images, e.g. a stereoscopic image overlay window on a monoscopic image background
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/80Camera processing pipelines; Components thereof
    • 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/2622Signal amplitude transition in the zone between image portions, e.g. soft edges
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/97Determining parameters from multiple pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/45Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from two or more image sensors being of different type or operating in different modes, e.g. with a CMOS sensor for moving images in combination with a charge-coupled device [CCD] for still images
    • 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
    • H04N5/2258

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Studio Devices (AREA)
  • Image Processing (AREA)

Abstract

부분적으로 중첩 시야를 갖는 제1 및 제2 센서를 갖는 다중-센서 비디오 카메라에서 수행되는 방법이 제공된다. 동시에 캡쳐되는 제1 및 제2 수신 비디오 프레임 각각은 비-중첩 부분 및 중첩 부분을 갖는다. 제1 비디오 스트림의 프레임은 제1 및 제2 비디오 프레임의 비-중첩 부분들로부터의 이미지 데이터를 제1 비디오 프레임의 중첩 부분으로부터의 이미지 데이터와 함께 혼합함으로써 생성되고, 제2 비디오 스트림의 프레임은 적어도 제2 비디오 프레임의 중첩 부분으로부터의 이미지 데이터를 포함하도록 생성된다. 제1 비디오 스트림의 프레임 및 제2 비디오 스트림의 프레임은 병렬로 처리되며, 제2 비디오 스트림의 프레임의 처리는 적어도 제2 비디오의 중첩 부분으로부터의 이미지 데이터에 기초하여 오버레이를 형성하는 단계를 포함한다. 오버레이는 제1 비디오 스트림의 중첩 부분에 대응하는 이의 부분에서 제1 비디오 스트림의 처리된 프레임에 추가된다. 오버레이를 형성하는 단계 및 오버레이를 추가하는 단계들 중 적어도 하나에서, 제1 비디오 프레임의 중첩 부분으로부터의 이미지 데이터는 제2 비디오 프레임의 중첩 부분으로부터의 이미지 데이터와 혼합된다.

Description

다중-센서 비디오 카메라, 이를 위한 방법 및 파이프라인의 처리{A MULTI-SENSOR VIDEO CAMERA, AND A METHOD AND PROCESSING PIPELINE FOR THE SAME}
본 발명은 다중-센서 비디오 카메라의 분야에 관한 것으로, 특히 다중-센서 비디오 카메라에 의해 캡쳐된 이미지들을 스티칭(stitching)하는 것에 관한 것이다.
부분적으로 중첩되는 시야(fields of view)를 가진 다중 센서를 갖는 비디오 카메라는 감시 시장에서 점점 더 대중화되고 있다. 이러한 비디오 카메라의 다중 센서에 의해 동시에 캡쳐된 이미지는 함께 스티칭되어 다중 센서의 결합된 시야를 나타내는 파노라마 이미지를 형성할 수 있다. 스티칭은 바람직하게 이미지들 간의 이음새 없는 전환(seamless transition)을 제공하기 위해 이루어진다.
다중 센서로부터 이미지들을 함께 스티칭하는 처리는 일반적으로 인텐스(intense) 처리하므로, 비디오 카메라의 처리 파이프라인(processing pipeline)에 지연(latency)을 제공하는 경향이 있다. 결국, 이는 비디오 카메라의 처리 파이프라인이 캡쳐된 프레임을 충분히 빠르게 처리하지 못할 수 있기 때문에 비디오 카메라의 프레임 속도를 제한할 수 있다.
현재 시장에서 이용 가능한 비디오 카메라에서 발견되는 이러한 문제에 대한 한 가지 해결책은 비디오 카메라의 처리 파이프라인의 업스트림에 필드-프로그래머블 게이트 어레이(Field-Programmable Gate Array; FPGA)를 포함시켜서, 처리 파이프라인으로 입력하기 전에 동시에 캡쳐된 이미지를 스티칭하는 것이다. 그러나, 이러한 해결책은 특히 FPGA가 이미지 스티칭으로 인한 바람직하지 않은 딜레이(delay)를 유발하지 않을 정도로 빠른 경우 비용이 많이 든다. 또한, 이러한 해결책은 비디오 카메라의 처리 파이프라인에서 수행되는 이미지 처리 중 일부가 스티칭이 수행되기 전에 개별 이미지에 대해 수행되는 것을 제외한다. 이는 일부 경우에 비디오 카메라의 처리 파이프라인의 말단에서 출력되는 최종 스티칭된 이미지의 품질을 저하시킬 수 있다는 것이다. 따라서 개선의 여지가 있다.
따라서, 본 발명의 목적은 비디오 카메라의 다중 센서에 의해 동시에 캡쳐되는 이미지들을 함께 스티칭하는 개선된 처리를 제공하는 것이다. 특히, 이미지를 스티칭하는 처리에 의해 야기되는 비디오 카메라의 처리 파이프라인에서의 지연을 감소시키는 것이 목적이다. 또 다른 목적은 비용-효율적으로 구현될 수 있는 스티칭 처리를 제공하는 것이다.
본 발명의 제1 양태에 따르면, 상기 목적은 부분적으로 중첩된 시야를 가진 제1 및 제2 센서를 갖는 다중-센서 비디오 카메라에서 수행되는 방법에 의해 달성되며,
상기 제1 센서 및 상기 제2 센서 각각에 의해 동시에 캡쳐되는 제1 비디오 프레임 및 제2 비디오 프레임을 각각 수신하는 단계,
상기 제1 및 제2 비디오 프레임 각각은 상기 제1 및 제2 비디오 프레임 중 다른 하나와 중첩되지 않는 비중첩 부분 및 상기 제1 및 제2 비디오 프레임 중 다른 하나와 중첩되는 중첩 부분을 가짐,
상기 제1 및 제2 비디오 프레임의 비-중첩 부분으로부터의 이미지 데이터를 상기 제1 비디오 프레임의 중첩 부분으로부터의 이미지 데이터와 함께 결합하여 제1 비디오 스트림의 프레임을 생성하는 단계,
제2 비디오 스트림의 프레임을 생성하는 단계, 여기서 상기 제2 비디오 스트림의 프레임은 적어도 상기 제2 비디오 프레임의 중첩 부분으로부터의 이미지 데이터를 포함함,
상기 제1 비디오 스트림의 프레임 및 상기 제2 비디오 스트림의 프레임을 병렬로 처리하는 단계, 여기서 상기 제2 비디오 스트림의 프레임을 처리하는 것은 적어도 상기 제2 비디오 프레임의 중첩 부분으로부터의 이미지 데이터에 기초하여 오버레이(overlay)를 형성하는 단계를 포함함, 및
상기 제1 비디오 프레임의 중첩 부분에 대응하는 부분에서 상기 제1 비디오 스트림의 상기 처리된 프레임에 상기 오버레이를 추가하는 단계를 포함하고,
상기 오버레이를 형성하는 단계 및 상기 오버레이를 추가하는 단계 중 적어도 하나에서 상기 제1 비디오 프레임의 중첩 부분으로부터의 이미지 데이터는 상기 제2 비디오 프레임의 중첩 부분으로부터의 이미지 데이터와 혼합하는 것을 포함한다.
임의의 스티칭 처리의 인텐스 부분의 처리는 이미지 데이터를 혼합하는 방법을 계산한 다음 이미지간 이음새 없는 전환을 제공하기 위해 이미지가 중첩되는 부분에서 상기 캡쳐된 이미지의 이미지 데이터를 혼합하는 것이다. 그러나 발명자들은 상기 캡쳐된 비디오 프레임의 이미지 데이터의 작은 부분만이 이미지 데이터를 혼합(blending)하는 방법을 계산하는 것, 혼합을 위해 이미지 데이터를 형성하는 것 또는 혼합을 수행하는 것을 위해 필요하다는 것을 깨달았다. 특히, 특정 실시 형태에 따라, 비디오 프레임 중 하나 또는 모두의 중첩 부분으로부터의 이미지 데이터만이 이들 단계들을 수행하는데 필요하다. 따라서 제1 비디오 스트림의 프레임에 포함되는 다수의 이미지 데이터와 병렬로 처리될 수 있는 제2 비디오 스트림의 프레임으로 소수의 이미지 데이터를 분리하는 것이 제안된다. 이러한 방법으로, 이미지 데이터의 소수 부분에 대해서만 작동하는 스티칭 처리의 인텐스 부분의 처리가 대부분의 이미지 데이터에 대해 수행되는 스티칭 처리의 덜 처리된 인텐스 부분과 서로 병렬로 수행될 수 있다. 따라서 지연이 감소된다.
상업적으로 이용 가능한 비디오 카메라는 종종 비디오 스트림의 상부에, 예를 들어, 로고(logo) 또는 유사한 형태로 오버레이를 추가하도록 적용된 하드웨어를 갖는다. 본 발명자들은 이러한 이용 가능한 기능이 이미지 스티칭과 관련하여 사용될 수 있음을 인지하였다. 예를 들어, 제2 비디오 스트림의 프레임(즉, 제1 및 제2 비디오 프레임 중 하나 또는 모두의 중첩 부분으로부터의 이미지 데이터)은 제1 비디오 스트림에서의 프레임에서 이미지 데이터의 교체 또는 제1 비디오 스트림에서의 프레임에서 이미지 데이터를 혼합함으로써 제1 비디오 스트림의 프레임의 상부에 추가되는 오버레이를 형성하는데 사용될 수 있다. 이러한 방법에서, 이용 가능한 기능이 사용될 수 있고, 따라서 구현 비용이 효율적이게 된다.
제1 및 제2 센서는 부분적으로 중첩되는 시야를 갖는다. 즉, 제1 센서와 제2 센서는 동일한 장면을 나타내지만, 서로 중첩되지만 다른 시야를 갖는다. 이는 장면의 동일한 부분으로부터 이미지 정보를 보유, 즉 나타내는 제 1 및 제 2 비디오 프레임에 픽셀(pixel)이 있음을 의미한다. 이러한 픽셀을 포함하는 제1 및 제2 비디오 프레임의 부분은 본 명세서에서 중첩 부분(overlapping portion)으로 나타낸다. 반대로, 픽셀이 제2 비디오 프레임에 의해 나타내지 않는 일부의 장면을 나타내는 제1 비디오 프레임의 부분은 비-중첩 부분(non-overlapping portion)으로 나타낸다.
오버레이는 일반적으로 다른 이미지 위에 놓이게 의도된 이미지를 의미한다. 프레임이나 이미지에 오버레이를 추가하는 것에 의해 일반적으로 오버레이가 프레임이나 이미지 위에 놓이거나 삽입되는 것을 의미한다. 오버레이는 프레임에서 이미지 데이터를 교체하거나 오버레이를 프레임에서 이미지 데이터와 혼합(예를 들어, 오버레이의 투명도(transparency)를 설정)함으로써 추가될 수 있다.
혼합은 일반적으로 가중 평균(weighted average)을 계산하는 것을 의미한다.
제1 그룹의 실시 형태에서, 제2 비디오 스트림의 프레임은 제2 및 제1 비디오 프레임의 중첩 부분으로부터의 이미지 데이터를 포함하고, 상기 오버레이를 형성하는 단계는 제2 비디오 프레임의 중첩 부분으로부터의 이미지 데이터를 제1 비디오 프레임의 중첩 부분으로부터의 이미지 데이터와 혼합하는 단계를 포함한다. 이러한 실시 형태에서, 제1 및 제2 비디오 프레임의 중첩 부분으로부터의 이미지 데이터는 따라서 오버레이의 형성 동안 혼합된다. 이러한 처리는 제1 비디오 스트림의 처리와 병렬로 수행되기 때문에, 혼합 처리에 의해 추가적인 시간 딜레이가 발생하지 않는다.
제1 그룹의 실시 형태에서, 제1 및 제2 비디오 프레임의 중첩 부분에 대응하는 이미지 데이터의 혼합은 오버레이의 형성 동안 수행된다. 따라서, 오버레이를 제1 비디오 스트림의 처리된 프레임에 추가할 때 더 이상의 혼합은 필요하지 않다. 이러한 경우, 오버레이는 교체 방법으로 추가될 수 있다. 보다 상세하게, 오버레이를 추가하는 단계에서, 오버레이는 제1 비디오 프레임의 중첩 부분에 대응하는 부분에서 제1 비디오 스트림의 처리된 프레임의 이미지 데이터를 교체한다. 제1 그룹의 실시 형태의 일반적인 이점은 혼합 알고리즘이 보다 자유롭게 선택될 수 있다는 것이다. 오버레이의 추가를 수행하는 이용 가능한 하드웨어에 의해 지원되지 않는 알고리즘조차도 선택될 수있다. 알고리즘의 예는 하기에서 설명될 것이다.
오버레이의 형성 동안 제1 및 제2 비디오 프레임의 중첩 부분으로부터의 이미지 데이터의 혼합은 다양한 방법으로 수행될 수 있다.
일반적으로, 혼합은 중첩 부분에서의 각각의 픽셀에 대해 제1 비디오 프레임으로부터의 이미지 데이터와 제2 비디오 프레임으로부터의 이미지 데이터의 가중 평균을 계산하는 것을 포함할 수 있다.
본 명세서에서 "알파-혼합(alpha-blending)"으로 나타내는 일 실시예에 따르면, 가중 평균의 가중치는 제1 및 제2 비디오 프레임의 중첩 부분과 비-중첩 부분 사이의 경계까지의 픽셀의 거리에 의존한다. 보다 상세하게, 제2 비디오 프레임의 중첩 부분으로부터의 이미지 데이터와 관련된 가중치는 픽셀로부터 제2 비디오 프레임의 중첩 부분과 비-중첩 부분 사이의 경계까지의 최단 거리에 의존하고, 제1 비디오 프레임의 중첩 부분으로부터의 이미지 데이터와 관련된 가중치는 픽셀로부터 제1 비디오 프레임의 중첩 부분과 비-중첩 부분 사이의 경계까지의 최단 거리에 의존한다.
본 명세서에서 "다중-대역 혼합(multi-bandblending)"으로 나타내는 추가 실시예에 따르면, 가중치는 공간적으로 고주파수 콘텐츠(content) 및 공간적으로 저주파 콘텐츠에 대해 다르게 선택될 수 있다. 예를 들어, 알파-혼합은 더 낮은 주파수가 적용될 수 있지만, 가중치는 픽셀이 제1 비디오 프레임의 비-중첩 부분의 경계 또는 제2 비디오 프레임의 비-중첩 부분의 경계에 더 가까운지에 따라 더 높은 주파수에 대해 0 또는 1로 설정된다. 보다 상세하게, 혼합은 하기를 포함할 수 있다:
상기 제1 비디오 프레임의 중첩 부분으로부터의 이미지 데이터와 제2 비디오 프레임의 중첩 부분으로부터의 이미지 데이터의 제1 가중 평균을 계산하는 단계, 여기서 상기 제1 가중 평균은 제1 임계값(threshold)보다 낮은 공간 주파수에 대해 계산됨,
상기 제1 비디오 프레임의 중첩 부분으로부터의 이미지 데이터와 상기 제2 비디오 프레임의 중첩 부분으로부터의 이미지 데이터의 제2 가중 평균을 계산하는 단계, 여기서 상기 제2 가중 평균은 제2 임계값 이상인 공간 주파수에 대해 계산되고, 상기 제2 임계값은 상기 제1 임계값 이상임,
상기 가중치는 상기 제1 가중 평균 및 상기 제2 가중 평균에 대해 다르게 선택됨, 및
상기 제1 가중 평균을 상기 제2 가중 평균에 추가함으로써 오버레이를 계산하는 단계.
본 명세서에서 "피처-기반 혼합(feature-based blending)"으로 나타내는 일 실시예에 따르면, 상기 혼합은 하기를 포함한다:
상기 제1 비디오 프레임의 중첩 부분 및 상기 제2 비디오 프레임의 중첩 부분에서 물체(object)를 식별하는 단계,
상기 중첩 부분에서 상기 제1 비디오 프레임으로부터의 이미지 데이터와 상기 제2 비디오 프레임으로부터의 이미지 데이터의 가중 평균을 계산하는 단계,
여기서, 상기 제1 비디오 프레임의 중첩 부분과 상기 제2 비디오 프레임의 중첩 부분 모두에서 물체가 식별되면, 상기 제1 비디오 프레임의 이미지 데이터 또는 상기 제2 비디오 프레임의 이미지 데이터 중 하나와 관련된 가중치는 물체에 속하는 것으로 식별된 픽셀에 대해 0으로 설정된다. 이러한 형태의 혼합으로, 예를 들어 사람과 같은 물체를 나타내는 이미지 데이터는 제1 비디오 프레임 및 제2 비디오 프레임 중 하나로부터만 포함되므로, 물체가 혼합된 이미지에서 약간 다른 위치에서 이중으로 나타나는 것을 피할 수 있다. 이는 그렇지 않으면 다중 센서의 시차 효과(parallax effect) 때문에 상기 경우일 수 있다.
제2 그룹의 실시 형태에 따르면, 혼합은 오버레이를 형성할 때보다, 오버레이를 제1 비디오 스트림의 처리된 프레임에 추가할 때 발생한다. 이러한 실시 형태에서, 오버레이는 제2 비디오 프레임의 중첩 부분으로부터의 이미지 데이터만을 포함하고, 오버레이를 추가하는 단계는 제1 비디오 프레임의 중첩 부분에 대응하는 부분에서 제1 비디오 스트림의 처리된 프레임과 오버레이를 혼합하는 단계를 포함한다. 오버레이의 추가는 일반적으로 응용 주문형 집적 회로(application specific integrated circuit; ASIC)의 형태로 전용 하드웨어에 의해 일반적으로 구현된다. 오버레이를 추가할 때 혼합을 수행함으로써, 예를 들어 중앙 처리 장치 또는 그래픽 처리 장치에서 사용자 알고리즘을 실행할 필요가 없다. 전용 하드웨어 대신 예를 들어 ASIC는 오버레이가 추가되는 것과 동시에 혼합을 수행하는데 활용되어, 혼합 처리를 가속화할 수 있다.
혼합은 예를 들어, 제1 비디오 스트림의 처리된 프레임에 오버레이를 추가할 때 오버레이의 투명도를 설정함으로써 수행될 수 있다. 오버레이의 투명도는 상이한 픽셀에 대해 상이한 값이 제공될 수 있다. 1의 투명도는 오버레이로부터의 이미지 데이터의 혼합으로 나타나지 않고, 오버레이를 추가한 후의 픽셀에서의 결과값은 제1 비디오 프레임의 결과값이다. 투명도가 0이면 오버레이의 총 혼합으로 나타난다. 이런 경우, 오버레이를 추가한 후의 픽셀에서의 결과값은 제2 비디오 프레임의 결과값이다. 0과 1 사이의 투명도는 오버레이를 다양한 정도로 혼합하는 것으로 나타날 것이고, 즉 오버레이를 추가한 후 픽셀에서 값으로 나타나는 이미지 데이터는 제1 비디오 프레임의 이미지 데이터와 제1 비디오 프레임의 이미지 데이터의 가중 평균이다. 따라서, 오버레이에서의 각각의 픽셀에 대해, 예를 들어, 0과 1 사이의 값에 대응하는 혼합의 정도는 오버레이의 형성 동안 특정될 수 있다. 이러한 혼합의 정도는 오버레이를 제1 비디오 스트림의 처리된 프레임에 추가할 때 오버레이의 투명도를 설정하는데 사용될 수 있다.
예를 들어, 제 1 비디오 스트림의 처리된 프레임과 오버레이의 혼합은 오버레이의 각각의 픽셀에 대해 혼합의 정도를 정의하는 마스크에 따라 이루어질 수 있다. 그런 다음 제1 비디오 스트림의 처리된 프레임에 오버레이를 추가할 때 오버레이의 투명도를 설정하기 위해 마스크가 사용될 수 있다.
마스크는 일반적으로 오버레이를 형성할 때 결정된다. 일부 실시 형태에 따르면, 마스크는 임의의 이미지 데이터와 독립적으로 결정된다. 예를 들어, 혼합의 정도는 픽셀로부터 제2 비디오 프레임의 비-중첩 부분의 경계까지의 거리에만 의존한다는 점에서 전술한 알파-혼합에 대응할 수 있다. 더욱 상세하게, 오버레이의 각각의 픽셀은 제2 비디오 프레임의 중첩 부분의 픽셀에 대응할 수 있고, 혼합의 정도는 픽셀로부터 제2 비디오 프레임의 중첩 부분과 비-중첩 부분 사이의 경계까지의 최단 거리에 의존한다.
일부 실시 형태에 따르면, 마스크는 추가 또는 대안으로 이미지 데이터에 기초하여 결정될 수 있다. 이미지 데이터는 제2 비디오 프레임의 중첩 부분에 대응할 수 있지만, 바람직하게 제1 비디오 프레임과 제2 비디오 프레임의 중첩 부분에 대응한다. 후자의 경우, 제2 비디오 스트림의 프레임은 제2 및 제1 비디오 프레임의 중첩 부분으로부터의 이미지 데이터를 포함하고, 오버레이를 형성하는 단계는 또한 제2 및 제1 비디오 스트림의 중첩 부분으로부터의 이미지 데이터에 기초하여 마스크를 계산하는 단계를 포함한다. 이러한 방법으로, 혼합은 중첩 부분의 이미지 콘텐츠에 적용될 수 있다.
제1 그룹의 실시 형태와 관련하여 전술한 바와 같이, 혼합은 제1 비디오 프레임의 중첩 부분에서의 이미지 데이터와 제2 비디오 프레임의 중첩 부분에서의 이미지 데이터의 가중 평균을 형성하는 것을 의미한다. 혼합의 정도, 즉 마스크에 의해 표시된 값은 제2 비디오 프레임으로부터의 이미지 데이터에 적용되는 가중치에 대응한다는 것을 유의해야 한다. 제1 비디오 프레임으로부터의 이미지 데이터에 적용될 가중치는 1에서 혼합의 정도를 뺀 값으로서 얻어질 수 있다.
따라서 제2 및 제1 비디오 프레임의 중첩 부분들로부터의 이미지 데이터에 기초하여 마스크를 계산하는 단계는 제2 및 제1 비디오 프레임들로부터의 이미지 데이터와 관련된 가중치를 계산하는 것에 대응한다. 제1 그룹의 실시 형태와 관련하여 상기의 이들 가중치를 계산하는 것에 대해 언급된 것은 혼합의 정도, 즉 마스크의 요소(element)의 계산에 동일하게 적용된다. 예를 들어, 마스크는 다중-대역 혼합 및/또는 피쳐-기반 혼합과 관련된 가중치를 포함하도록 계산될 수 있다.
특별한 경우에 따라, 이미지 데이터에 기초한 마스크를 계산하는 처리는 시간을 요구할 수 있다. 따라서 지연을 감소시키기 위해, 처리되는 각각의 프레임에 대해 새로운 마스크를 계산하지 않는 것이 바람직할 수 있다. 마스크가 계산되면, 대신 복수의 프레임에 대해 재사용될 수 있다. 보다 상세하게, 마스크는 비디오 프레임이 제1 및 제2 센서로부터 수신되는 속도(rate)보다 낮은 속도로 업데이트될 수 있다.
제1 비디오 프레임과 제2 비디오 프레임의 중첩 부분들로부터의 이미지 데이터를 혼합하기 전에, 제1 비디오 프레임과 제2 비디오 프레임은 바람직하게 정렬(align)된다. 따라서, 제1 비디오 스트림의 프레임의 처리 및 제2 비디오 스트림의 프레임의 처리는 제1 비디오 프레임의 이미지 데이터와 제2 비디오 프레임의 이미지 데이터를 정렬하는 것을 포함할 수 있다. 정렬은 특히, 배럴-보정(barrel-correction)을 수행하는 단계, 프레임을 회전하는 단계(일반적으로, 센서가 설치되어 장면의 정지 영상을 얻는 경우) 및 제1 비디오 프레임과 제2 비디오 프레임의 투영(projection)을 예를 들어 실린더에서 수행하는 단계를 포함할 수 있다. 후자는 제1 및 제2 센서가 동일한 위치에 장착되지 않는다는 사실을 보상하며, 이는 장면이 상이한 시점에서 나타남을 의미한다. 이는 투영을 수행함으로써 보정될 수 있으며, 이에 따라 시청자에게 동일 시점으로부터 캡쳐되는 프레임의 느낌(impression)을 제공한다. 적용할 특정 정렬은 일반적으로 각각의 프레임에 대해 동일하며, 센서의 보정(calibration) 동안 결정될 수 있다.
본 발명의 제2 양태에 따르면, 상기 목적은 부분적으로 중첩되는 시야를 가진 제1 및 제2 센서를 갖는 다중-센서 비디오 카메라용 처리 파이프라인에 의해 달성되며,
상기 제1 센서 및 상기 제2 센서에 의해 동시에 캡쳐되는 제1 비디오 프레임 및 제2 비디오 프레임을 개별적으로 수신하도록 구성된 리시버(receiver),
여기서 상기 제1 및 제2 비디오 프레임의 각각은 상기 제1 및 제2 비디오 프레임 중 다른 하나와 중첩되지 않는 비-중첩 부분 및 상기 제1 및 제2 비디오 프레임 중 다른 하나와 중첩되는 중첩 부분을 가지며,
상기 제1 및 제2 비디오 프레임의 비-중첩 부분으로부터의 이미지 데이터를 상기 제1 비디오 프레임의 중첩 부분으로부터의 이미지 데이터와 함께 결합함으로써 제1 비디오 스트림의 프레임을 생성하고, 제2 비디오 스트림의 프레임을 생성하도록 구성되는 프레임 생성 컴포넌트(component), 여기서 상기 제2 비디오 스트림의 프레임은 적어도 제2 비디오 프레임의 중첩 부분으로부터의 이미지 데이터를 포함함,
상기 제1 비디오 스트림의 상기 프레임을 처리하도록 구성된 제1 처리 컴포넌트,
상기 제1 비디오 스트림의 프레임을 처리하는 제1 처리 컴포넌트와 병렬로 상기 제2 비디오 스트림의 프레임을 처리하도록 구성된 제2 처리 컴포넌트, 여기서 상기 제2 비디오 스트림의 프레임의 처리는 적어도 상기 제2 비디오 프레임의 중첩 부분으로부터의 이미지 데이터에 기초하여 오버레이를 형성하는 단계를 포함함, 및
상기 제1 비디오 스트림의 중첩 부분에 대응하는 부분에서 상기 제1 비디오 스트림의 처리된 프레임에 상기 오버레이를 추가하도록 구성된 오버레이 컴포넌트를 포함하고,
여기서 상기 제2 처리 컴포넌트 및 상기 오버레이 컴포넌트 중 적어도 하나는 상기 오버레이를 형성하거나 추가할 때 상기 제1 비디오 프레임의 중첩 부분으로부터의 이미지 데이터를 상기 제2 비디오 프레임의 중첩 부분으로부터의 이미지 데이터와 혼합하도록 구성되는 것을 특징으로 한다.
본 발명의 제3 양태에 따르면, 상기 목적은 다중-센서 비디오 카메라에 의해 달성되는데,
제1 시야를 나타내는 비디오 프레임을 캡쳐하도록 배치되는 제1 센서;
상기 제1 센서와 동시에 비디오 프레임을 캡쳐하도록 배치되고, 상기 제1 시야와 부분적으로 중첩되는 제2 시야를 나타내는 제2 센서; 및
상기 제1 및 제2 센서에 의해 캡쳐된 비디오 프레임을 수신하기 위해 상기 제1 센서 및 제2 센서에 가동되게 연결되는 상기 제2 양태에 따른 처리 파이프라인을 포함한다.
본 발명의 제4 양태에 따르면, 상기 목적은 처리 능력을 갖는 장치에 의해 실행될 때 제1 양태의 방법을 수행하기 위해 이에 저장된 컴퓨터-코드 명령어를 갖는 컴퓨터-판독 가능 매체를 포함하는 컴퓨터 프로그램 제품에 의해 달성된다.
제2, 제3 및 제4 양태는 일반적으로 제1 양태와 동일한 특징 및 이점을 가질 수 있다. 또한 본 발명은 달리 명시적으로 언급되지 않는 한 특징의 모든 가능한 조합에 관한 것임을 주목한다.
일반적으로, 청구항에서 사용된 모든 용어는 달리 명시적으로 정의되지 않는 한, 기술 분야에서 통상적인 의미에 따라 해석되어야 한다. 본 명세서에 개시된 임의의 방법의 단계들은 명시적으로 언급되지 않는 한, 개시된 정확한 순서로 수행될 필요는 없다.
본 발명의 추가의 목적, 특징 및 이점뿐만 아니라 상기는 첨부된 도면을 참조하여 본 발명의 바람직한 실시 형태의 하기 예시적이고 비-제한적인 상세한 설명을 통해 더 잘 이해될 것이고, 동일한 참고 번호는 유사한 요소에 대해 사용된다.
도 1은 실시 형태들에 따른 다중-센서 비디오 카메라를 개략적으로 도시한다.
도 2는 도 1의 다중-센서 비디오 카메라의 처리 파이프라인을 개략적으로 도시한다.
도 3은 제1 그룹의 실시 형태에 따른 처리 파이프라인에서의 처리 흐름을 개략적으로 도시한다.
도 4는 제2 그룹의 실시 형태에 따른 처리 파이프라인에서의 처리 흐름을 개략적으로 도시한다.
도 5는 제1 및 제2 비디오 프레임의 중첩 부분의 이미지 데이터를 혼합하기 위해 가중치를 선택하는 방법을 개략적으로 도시하고 예시한다.
도 6은 제1 및 제2 비디오 프레임의 중첩 부분의 이미지 데이터를 혼합하기 위해 가중치를 선택하는 방법을 개략적으로 도시하고 예시한다.
도 7은 실시 형태들에 따른 다중-센서 비디오 카메라에서 수행되는 방법의 순서도이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시 형태를 상세히 설명한다. 본 발명에 개시된 시스템 및 장치는 작동 동안 설명될 것이다.
도 1은 다중-센서 비디오 카메라(100)를 도시한다. 비디오 카메라(100)는 복수의 이미지 센서(102a, 102b) 및 처리 파이프라인(104)를 포함한다. 비디오 카메라(100)는 또한 비디오 인코더(video encoder, 106)를 포함할 수 있다. 본 발명에서 설명과 간략화를 위해, 2개의 이미지 센서(102a, 102b)를 나타낸다. 그러나, 비디오 카메라(100)는 2개 이상의 이미지 센서를 포함할 수 있는 것으로 이해되어야 한다.
이미지 센서(102a, 102b)는 장면의 부분적으로 중첩되는 시야를 갖도록 서로에 대해 배치된다. 이는 이미지 센서(102a, 102b)에 의해 캡쳐된 비디오 프레임이 부분적으로 중첩되는 것을 암시하고, 이는 장면의 일부가 이미지 센서(102a, 102b)의 하나 이상(2개 이상의 이미지 센서가 있는 경우 모두가 아닐 수도 있음)에 의해 캡쳐된 비디오 프레임에 나타날 것을 의미한다. 따라서 장면의 동일한 부분을 나타내는 이미지 센서 중 적어도 두개에 의해 캡쳐된 비디오 프레임에 픽셀이 있다.
비디오 카메라(100)는 특정 프레임 속도(frame rate)로 비디오 프레임을 캡쳐하도록 배치된다. 특히, 비디오 카메라(100)는 복수의 센서(102a, 102a)를 사용하여 일정 속도로 동시에 비디오 프레임을 캡쳐한다. 특히, 비디오 카메라(100)는 제2 이미지 센서(102b)를 사용하여 제1 비디오 프레임(108a) 및 제2 이미지 센서(102b)을 사용한 제2 비디오 프레임(108b)을 동시에 캡쳐하도록 배치된다. 캡쳐된 비디오 프레임(108a, 108b)은 비디오 카메라(100)에서의 이미지 센서(102a, 102b)의 다운스트림(downstream)에 배치된 처리 파이프라인(104)에 입력된다.
처리 파이프라인(104)은 이미지 센서(102a, 102b)에 의해 캡쳐된 비디오 프레임(108a, 108b)을 처리하도록 배치된다. 처리 파이프라인은 일반적으로 연속하여 연결된 한 세트의 데이터 처리 요소를 의미하며, 하나의 요소의 출력은 다음 요소의 입력이다. 특히, 처리 파이프라인(104)은 비디오 프레임(108a, 108b)을 함께 스티칭하여 장면의 파노라마 이미지(110)를 생성하도록 구성된다. 따라서, 파노라마 이미지(110)는 이미지 센서(102a, 102)의 결합된 시야, 즉 시야의 합체에 해당할 수 있다. 파노라마 이미지(110)가 생성되면, 비디오 카메라(100)로부터 출력되기 전에, 예를 들어 네트워크를 통해 비디오 디코더(decoder)로 전송되는 비트스트림(bitstream, 112)의 형태로 파노라마 이미지를 인코딩하는 비디오 인코더(106)로 전송될 수 있다.
도 2는 처리 파이프라인(104)을 더욱 상세하게 도시한다. 처리 파이프라인은 리시버(202), 프레임 생성 컴포넌트(206), 제1 처리 컴포넌트(208), 제2 처리 컴포넌트(210) 및 오버레이 컴포넌트(212)를 포함한다. 처리 파이프라인은 또한 이미지 처리 컴포넌트(204)를 포함할 수 있다.
리시버는 도 1에 나타낸 이미지 센서(102a, 102b)에 의해 캡쳐된 비디오 프레임(108a, 108b)을 수신하도록 배치된다. 프레임 생성 컴포넌트(206)는 리시버(202)의 다운스트림에 배치되고, 선택적으로 프레임 생성 컴포넌트(206)의 업스트림에 배치되지만 리시버(202)의 다운스트림에 배치된 이미지 처리 컴포넌트(204)를 통해 리시버(202)로부터 비디오 프레임(108a, 108b)을 수신하도록 배치된다. 이미지 처리 컴포넌트(204)는 예를 들어, 결함 픽셀 보정, 열 고정 패턴 노이즈 보상 및 누화 보상(crosstalk compensation)과 같은 인공물 제거, 화이트 밸런싱(white balancing), 비네팅 보정(vignetting correction), 노이즈 필터링, 디모자이킹(demosaicing), 선명화(sharpening), 컬러 매트릭스 형성, 암 전류 보정(dark current correction) 및 감마 보정(gamma correction)과 같은 다양한 종류의 이미지 처리가 수행될 수 있고, 이는 비디오 카메라의 이미지 처리 파이프라인에서 일반적으로 수행된다. 그러나, 화이트 밸런스 처리와 같은 일부 또는 모든 이미지 처리는 제1 처리 컴포넌트(208) 및/또는 제2 처리 컴포넌트(210)에 의해 대신 수행될 수 있다. 프레임 생성 컴포넌트(206)는 차례로 제1 비디오 스트림(214) 및 제2 비디오 스트림(216)의 프레임을 생성할 것이다. 제1 비디오 비디오 스트림(214)의 프레임은 제1 처리 컴포넌트(208)로 전송되고, 제2 비디오 스트림(216)의 프레임은 제1 처리 컴포넌트(208)와 병렬로 배치된 제2 처리 컴포넌트(210)로 전송된다. 제1 처리 컴포넌트(208) 및 제2 처리 컴포넌트(210)의 출력은 다음으로 파노라마 이미지(110)를 출력하는 오버레이 컴포넌트(212)로 전송된다. 이러한 과정은 하기에서 더욱 상세히 설명될 것이다.
따라서 처리 파이프라인(104)은 처리 파이프라인(104)의 기능을 구현하도록 구성된 다양한 컴포넌트(202, 204, 206, 208, 210, 212)를 포함한다. 특히, 각각 설명된 컴포넌트는 처리 파이프라인(104)의 기능에 대응한다. 그러나, 당업자가 이해하는 바와 같이, 다양한 컴포넌트는 또한 컴포넌트의 기능을 구현하기 위해 처리 파이프라인(104)에 포함되는 구조와 관련된다. 당업자가 알고 있는 바와 같이, 특정 구조는 컴포넌트의 특정 구현예, 예를 들어 하드웨어, 소프트웨어 또는 이들의 조합으로 구현되는지 여부에 따라 달라질 수 있다.
일반적으로, 처리 파이프라인(104)은 컴포넌트(202, 204, 206, 208, 210, 212), 보다 구체적으로 이들의 기능을 구현하도록 구성된 회로를 포함할 수 있다.
하드웨어 구현에서, 컴포넌트(202, 204, 206, 208, 210, 212) 각각은 전용이고 컴포넌트의 기능을 제공하도록 특별히 설계된 회로에 해당할 수 있다. 회로는 하나 이상의 주문형 집적 회로와 같은 하나 이상의 집적 회로의 형태일 수 있다. 실시예로서, 프레임 생성 컴포넌트(206)는 사용시에 제1 비디오 스트림(214) 및 제2 비디오 스트림(216)을 생성하는 회로를 포함할 수 있다.
소프트웨어 구현에서, 회로는 대신 하나 이상의 마이크로 프로세서와 같은 하나 이상의 프로세서의 형태일 수 있으며, 이는 비-휘발성 메모리와 같은 (일시적이지 않은) 컴퓨터-판독가능 매체에 저장된 컴퓨터 코드 명령어와 관련하여, 처리 파이프라인(104)이 본 발명에 개시된 임의의 방법을 수행하게 한다. 이런 경우, 따라서 컴포넌트(202, 204, 206, 208, 210, 212)은 컴퓨터-판독가능 매체에 저장된 컴퓨터 코드 명령어의 일부에 각각 해당할 수 있으며, 프로세서에 의해 실행될 때 처리 파이프라인(104)은 컴포넌트의 기능을 수행하게 한다.
하드웨어 및 소프트웨어 구현의 조합을 가질 수도 있음을 이해해야 하며, 이는 컴포넌트(202, 204, 206, 208, 210, 212) 중 일부의 기능이 하드웨어 및 소프트웨어로 구현된다는 것을 의미한다.
처리 파이프라인(104)의 작동은 도 1-6 및 도 7의 순서도를 참조하여 하기에서 설명될 것이다.
단계(02)에서, 리시버(202)는 이미지 센서(102a, 102b)로부터 제1 비디오 프레임(108a) 및 제2 비디오 프레임(108b)을 수신한다. 제1 비디오 프레임(108a) 및 제2 비디오 프레임(108b)은 비디오 카메라(100)에 의해 동시에 캡쳐된다.
도 3 및 도 4는 제1 비디오 프레임(108a) 및 제2 비디오 프레임(108b)을 보다 상세히 도시한다. 제1 비디오 프레임(108a)은 제2 비디오 프레임(108b)과 중첩되지 않는 부분(118a)을 갖는다. 즉, 비-중첩 부분(118a)의 픽셀은 제2 비디오 프레임(108b)에 의해 나타나지 않는 장면의 부분을 나타낸다. 제1 비디오 프레임(108a)의 비-중첩 부분(118a)은 이미지 데이터(A)를 포함한다. 유사하게, 제2 비디오 프레임(108b)은 제2 비디오 프레임(108b)과 중첩되지 않는 부분(118b)을 갖는다. 제2 비디오 프레임(108b)의 비-중첩 부분(118b)은 이미지 데이터(B)를 포함한다. 제1 비디오 프레임(108a)은 제2 비디오 프레임(108b)의 부분(128b)과 중첩되는 부분(128a)을 더 갖는다. 즉, 부분(128a, 128b)의 픽셀은 장면의 동일한 부분을 나타낸다. 제1 비디오 프레임(108a)의 중첩 부분(128a)은 이미지 데이터(A')를 포함하고, 제2 비디오 프레임(128b)의 중첩 부분(128b)은 이미지 데이터(B')를 포함한다.
단계(S04)에서, 프레임 생성 컴포넌트(206)는 제1 비디오 스트림의 프레임(302)을 생성하도록 진행한다. 프레임(302)은 제1 비디오 프레임(108a)의 비-중첩 부분(118a)으로부터의 이미지 데이터(A), 제1 비디오 프레임(108a)의 중첩 부분(128a)으로부터의 이미지 데이터(A') 및 제2 비디오 프레임(108b)의 비-중첩 부분으로부터의 이미지 데이터(B)를 서로 결합하여 생성된다. 이러한 방법으로, 프레임(302)은 제1 비디오 프레임(108a) 전체로부터의 이미지 데이터(A, A') 및 제2 비디오 프레임(108b)의 비-중첩 부분으로부터의 이미지 데이터(B)를 포함한다. 특히, 제2 비디오 프레임(108b)의 중첩 부분(128b)으로부터의 이미지 데이터(B')는 프레임(302)에 포함되지 않는다. 따라서, 비디오 프레임(108a, 108b)이 중첩하는 부분에 대해, 비디오 프레임 중 하나만으로부터의 이미지 데이터가 프레임(302)에 포함된다.
제1 비디오 스트림의 프레임(302)은 이미지 센서(102a, 102b)의 결합된 시야를 커버하는 파노라마 이미지이다. 그러나, 이러한 파노라마 이미지를 생성할 때, 입력 비디오 프레임(108a, 108b)으로부터의 이미지 데이터의 혼합은 수행되지 않는다. 대신, 하나의 비디오 프레임으로부터의 이미지 데이터는 전술한 방법으로 파노라마 이미지에서의 각각의 픽셀에 대해 선택된다. 더욱 상세하게, 프레임(302)은 제1 및 제2 비디오 프레임(108a, 108b)의 부분(118, 128a, 118b)으로부터의 이미지 데이터(A, A', B)를 함께 결합함으로써 생성된다. 이는 이미지 데이터(A, A', B)가 이미지 센서(102a, 102b)의 결합된 시야를 커버하는 새로운 이미지, 즉 파노라마 이미지를 형성하도록 적절한 순서로 나란히 배치됨을 의미한다.
다음으로, 제1 비디오 스트림의 프레임(302)은 제1 처리 컴포넌트(208)로 전송된다.
프레임 생성 컴포넌트(206)는 제2 비디오 스트림의 프레임(304, 404)을 추가로 생성한다. 프레임(304, 404)은 적어도 제2 비디오 프레임(128b)의 중첩 부분의 이미지 데이터를 포함한다.
도 3에 도시된 제1 그룹의 실시 형태에서, 제2 비디오 스트림의 프레임(304)은 제1 비디오 프레임(108a)과 제2 비디오 프레임(108b) 모두의 중첩 부분(128a, 128b)으로부터의 이미지 데이터(A', B')를 포함한다. 도 4에 도시된 제2 그룹의 실시 형태에서, 제2 비디오 스트림의 프레임(404)은 제2 비디오 프레임(108b)만 또는 제1 비디오 프레임(108a) 및 제2 비디오 프레임(108b) 모두로부터의 이미지 데이터(B')를 포함한다. 이러한 두개의 대안은 도 4에서 "/"-기호로 구분된다.
프레임(304, 404)은 제2 처리 컴포넌트(210)에 입력된다.
단계(S08)에서, 제1 처리 컴포넌트(208)는 프레임(302)을 처리하고, 제2 처리 컴포넌트(210)는 프레임(304, 404)을 처리한다. 제1 비디오 스트림의 프레임(302) 및 제2 비디오 스트림의 프레임(304, 404)의 처리는 병렬로 이루어진다.
전술한 바와 같이, 제1 비디오 스트림의 프레임(302)의 처리는 결함 픽셀 보정, 열 고정 패턴 노이즈 보상 및 누화 보상과 같은 인공물 제거, 화이트 밸런싱, 비네팅 보정, 노이즈 필터링, 디모자이킹, 선명화, 컬러 패트릭스 형성, 암 전류 보정 및 감마 보정과 같은 다양한 이미지 처리 단계를 포함할 수 있다. 이미지 처리의 일부 또는 전부는 제1 및 제2 비디오 스트림을 생성하기 전에 이미지 처리 컴포넌트(204)에 의해 수행될 수 있고, 이미지 처리 단계의 일부 또는 전부는 제1 처리 컴포넌트(208)에 의해 제1 및 제2 비디오 스트림을 생성한 후 수행될 수 있다. 제1 비디오 스트림의 프레임(302)의 처리는 일반적으로 당업계에 공지된 정렬을 포함한다. 이는 프레임(302) 또는 이의 부분(즉, 제1 비디오 프레임(108a) 및 제2 비디오 프레임(108b)으로부터 나오는 부분은 서로 다른 보정을 필요할 수 있음)의 배럴-왜곡 보정, 프레임(302) 또는 이의 부분(예를 들어 비디오 카메라가 정지 포맷으로 장면을 찍도록 배치됨)의 회전, 프레임(302) 또는 비디오 프레임(108a, 108b) 중 하나로부터의 부분을 원통과 같은 표면 상의 투영을 포함할 수 있다. 후자는 비디오 프레임(108a, 108b)이 상이한 시점으로부터 캡쳐된다는 사실을 보상하도록 만들어진다. 일반적으로, 카메라의 초기 교정(calibration) 후 각각의 프레임에 대해 동일한 정렬이 만들어진다. 따라서, 정렬은 카메라의 이미지 센서의 교정으로부터의 파라미터에 기초하여 만들어질 수 있다.
프레임(302)의 처리된 버전은 도 3 및 도 4에서 308로 표시된다.
제2 비디오 스트림의 프레임(304, 404)의 처리는 또한 전술한 것에 따른 정렬 및 오버레이(306, 406)의 형성을 포함할 수 있다. 일반적으로, 프레임(302)은 프레임(304, 404)보다 더 커서, 프레임(302, 304)으로부터의 오버레이의 정렬 및 형성은 프레임(302)이 제1 처리 컴포넌트(208)에 의해 정렬되고 처리되는 동안 수행될 수 있다.
도 3에 나타낸 제1 그룹의 실시 형태에서, 오버레이(306)의 형성은 혼합, 즉 제1 및 제2 비디오 프레임(108a, 108b)으로부터 중첩 부분(128a, 128b)으로부터의 이미지 데이터(A' 및 B')의 혼합을 포함한다. 이러한 실시 형태에서, 제2 처리 컴포넌트(210)로부터 출력되는 오버레이(306)는 혼합된 이미지 데이터를 포함한다. 제2 처리 컴포넌트(210)는 중첩 부분(128a, 128b)에서의 각각의 대응 픽셀에 대해 이미지 데이터(A') 및 이미지 데이터(B')의 가중 평균을 계산함으로써 이미지 데이터(A', B')를 혼합할 수 있다. 가중 평균의 가중치는 픽셀마다 다를 수 있다. 픽셀(x)에서의 이미지 데이터(B')에 w(x)만큼 적용된 가중치(w, 0≤w≤1)를 표시하면, 혼합이 하기와 같이 설명될 수 있다:
Figure 112018079190223-pat00001
여기서, B'(x)는 픽셀(x)에서의 중첩 부분(128b)에서 이미지 데이터를 나타내고, A'(x)는 픽셀(x)에 대응하는 픽셀에서의 중첩 부분(128a)에서 이미지 데이터를 나타낸다.
가중치는 이미지 데이터(A', B')와 독립적으로 선택될 수 있다. 가중치는 시간에 대해 일정하게 유지될 수도 있다. 도 3의 제1 그룹의 실시 형태에 따른 일 실시 형태에 따르면, 이미지 데이터(B')와 관련된 가중치(w)는 제2 비디오 프레임(108b)의 중첩 부분(128b)에서의 픽셀로부터 제2 비디오 프레임(108b)의 비-중첩 부분(118b)에 경계까지 최단 거리에 의존한다. 이는 이미지 데이터(A')와 관련된 가중치(1-w)가 중첩 부분(128a)에서의 대응 픽셀 사이의 최단 거리 및 제1 비디오 프레임(108a)의 중첩 부분(128a)과 비-중첩 부분(118a) 사이의 경계에 의존한다는 것을 의미한다. 이는 이미지 데이터(B')에 적용되는 가중치(502b)가 중첩 부분(128b)과 비-중첩 부분(118b) 사이의 경계까지의 거리의 함수임을 나타내는 도 5에 추가로 도시된다. 또한, 이미지 데이터(A')에 적용된 가중치(502a)는 도 5에 도시된 바와 같이 중첩 부분(128a)과 비-중첩 부분(118a) 사이의 경계까지의 거리의 함수이다. 여기서, 가중치는 경계에 근접하게 비례하며, 즉 경계에 근접하여 선형적으로 증가한다. 그러나, 다른 기능적 관계가 동등하게 가능하다는 것을 이해될 것이다. 그러나, 가중치는 일반적으로 경계에 근접하게 증가한다.
가중치는 제1 임계값 이하의 공간 주파수와 같은 저-주파수 콘텐츠 및 제2 임계값 이상의 주파수와 같은 고-주파수 콘텐츠에 대해 상이하게 선택될 수 있다. 제2 임계값은 제1 임계값 이상일 수 있다. 이러한 경우, 이미지 데이터(A', B')는 공간적 고역 통과 필터링 및 공간적 저역 통과 필터링이 수행되어 이미지 데이터(A', B')의 저주파수 컨텐츠 및 고주파수 컨텐츠를 추출할 수 있다. 제1 방법으로 가중치를 선택함으로써 저주파수 콘텐츠에 대해 제1 가중 평균이 계산될 수 있다. 예를 들어, 저주파수 콘텐츠에 대한 가중치는 도 5와 관련하여 설명된 바와 같이 선택될 수 있다. 제2 방법으로 가중치를 선택함으로써 고주파수 콘텐츠에 대해 제2 가중 평균이 계산될 수 있다. 예를 들어, 고주파수 콘텐츠에 대한 가중치는 도 6에 나타낸 바와 같이 선택될 수 있으며, 이미지 데이터(B')에 적용된 가중치(602b)와 이미지 데이터(A')에 적용된 가중치(602a)가 표시된다. 이런 경우, 가중치는 0 또는 1이다. 가중치(602b)는 부분(128a)에서의 대응 픽셀에 대해 부분(118a, 128a) 사이의 경계까지의 거리보다 짧은, 부분(118b, 128b) 사이의 경계까지의 거리를 갖는 부분(128b)에서의 픽셀에 대해 1과 동일하다. 부분(128b)에서의 다른 픽셀에 대해, 가중치는 0이다.
또한 가중치는 화상 데이터(A', B')에 의존하도록 선택될 수 있다. 일 실시예에서, 가중치는 중첩 부분(118a, 118b)에서 사람과 같은 물체의 존재에 의해 지배될 수 있다. 보다 상세하게, 이미지 센서(102a, 102b)가 약간 다른 위치 및 각도로부터 장면을 보게 되므로, 제1 및 제2 비디오 프레임(108a, 108b)은 시차 효과를 겪게 된다. 결과적으로, 장면에 존재하는 물체가 존재하면, 정렬이 수행되더라도 중첩 부분(128a, 128b)에서 약간 다른 위치에 물체가 나타날 수 있다. 따라서, 중첩 부분(128a, 128b)에서의 이미지 데이터(A', B')를 가중 평균을 형성함으로써 혼합되면, 혼합된 이미지에서 물체가 이중으로 나타날 수 있다. 이러한 상황을 피하기 위해, 중첩 부분(128a, 128b) 중 하나로부터만 물체를 포함하도록 선택될 수 있다. 보다 상세하게, 물체는 표준 물체 검출 기술을 사용하여 중첩 부분(128a, 128b)에서 검출될 수 있다. 중첩 부분(128a, 128b)에서 물체에 속하는 것으로 식별되는 픽셀에 대해, 제1 비디오 프레임(108a)으로부터의 이미지 데이터(A') 및 제2 비디오 프레임(108b)으로부터의 이미지 데이터(B') 중 하나에 대한 가중치는 0으로 설정될 수 있고, 이는 제1 비디오 프레임(108a) 및 제2 비디오 프레임(108b) 중 오직 하나로부터의 이미지 데이터가 혼합된 이미지에 포함되는 것을 의미한다.
도 4에 도시된 제2 그룹의 실시 형태에서, 오버레이(406)의 형성은 이미지 데이터(A', B')의 혼합을 포함하지 않는다. 이들 실시 형태에서, 오버레이(406)는 제2 비디오 프레임(108b)만의 중첩 부분(128b)으로부터의 이미지 데이터(B')를 포함한다. 실제로, 오버레이(406)는 일반적으로 오버레이(406)의 각각의 픽셀이 제2 비디오 프레임(108b)의 중첩 부분(128b)의 픽셀에 대응한다는 점에서 제2 비디오 프레임(108b)의 중첩 부분(128b)에 직접 대응한다. 임의의 혼합을 수행하는 대신에, 제2 그룹의 실시 형태에 따른 제2 처리 컴포넌트(210)는 마스크(408)를 계산한다. 마스크(408)는 오버레이(408)의 각각의 값에 대해 정의되고, 이는 혼합의 정도로 나타낼 수 있다. 혼합의 정도는 0과 1 사이의 값이며, 이는 오버레이(408)와 다른 이미지 데이터의 혼합에 포함되어야 하는 오버레이(408)의 정도, 즉 얼마나 높은 비율인지를 기술한다. 오버레이(408)는 제2 비디오 프레임(108b)의 중첩 부분(128b)의 이미지 데이터(B')에 해당하고, 다른 이미지 데이터는 제1 비디오 프레임(108a)(후술함)의 이미지 데이터(A')에 해당하기 때문에, 혼합 정도는 제1 그룹의 실시 형태와 관련하여 전술한 바와 같이 제2 비디오 프레임(108b)으로부터의 이미지 데이터(B')에 적용될 가중치(w)와 동일하다. 즉, 제2 그룹의 실시 형태에서, 제2 처리 컴포넌트(210)는 가중치(w)를 계산하지만 실제 혼합을 수행하지는 않는다.
따라서 제1 그룹의 실시 형태와 관련하여, 이미지 데이터(B')에 적용될 가중치(w)를 계산하는 것에 관해 상기에서 언급한 것은 제2 그룹의 실시 형태에 동일하게 적용된다. 가중치가 이미지 데이터와 독립적으로 계산되는 경우, 제2 처리 컴포넌트(210)에 입력되는 프레임(404)은 제2 비디오 프레임(108b)의 중첩 부분(128b)으로부터의 이미지 데이터(B')만을 포함하는 것이 필요하다. 가중치가 이미지 데이터에 따라 계산되는 경우, 제2 처리 컴포넌트(210)에 입력되는 프레임(404)은 두 중첩 부분(128a, 128b)으로부터의 이미지 데이터(A', B')를 포함한다.
처리 속도를 더욱 높이기 위해, 이전 프레임의 처리로부터 마스크를 재사용할 수 있다. 예를 들어, 마스크는 비디오 프레임이 제1 및 제2 센서(102a, 102b)로부터 수신되는 속도보다 낮은 속도로 업데이트될 수 있다. 이러한 방법으로 처리 시간이 단축되므로, 시스템에서의 지연이 더욱 감소된다.
단계(S10)에서, 오버레이 컴포넌트(212)는 제1 비디오 스트림의 처리된 프레임(308)에 오버레이(306, 406)를 추가하는 것을 진행한다. 특히, 오버레이 컴포넌트(212)는 제1 비디오 프레임(108a)의 중첩 부분(128a)에 대응하는 처리된 프레임(308)의 부분(328a)에서 오버레이(306, 406)를 추가한다. 오버레이의 추가는 제1 그룹의 실시 형태에 대한 경우인 교체에 의해, 또는 제2 그룹의 실시 형태에 대한 경우인 혼합에 의해 수행될 수 있다.
보다 구체적으로, 도 3에 나타낸 제1 그룹의 실시 형태에서, 오버레이(306)를 형성할 때 이미지 데이터(A', B')가 이미 혼합되었다. 그러므로, 오버레이(306)를 제1 비디오 스트림의 처리된 프레임(308)에 추가하는 경우 추가 혼합이 필요하지 않다. 오버레이 컴포넌트(212)는 도 3에 도시된 바와 같이 처리된 프레임(308)의 부분(328a)에서 이미지 데이터를 교체할 수 있다. 이는 예를 들어 오버레이의 투명도 파라미터를 0과 동일하게 설정함으로써 달성될 수 있으며, 따라서 오버레이 컴포넌트(212)를 비-투명한 방법으로 오버레이(306)를 추가하도록 지시하는데, 이는 실제로 이미지 데이터를 교체함으로써 오버레이(306)를 추가하는 것과 동일한 것이다.
도 4에 나타낸 제2 그룹의 실시 형태에서, 오버레이 컴포넌트(212)는 오버레이(406)를 처리된 프레임(308)에 추가할 때 이미지 데이터(A', B')를 혼합하는 것을 진행한다. 오버레이 컴포넌트(212)는 제2 처리 컴포넌트(210)에 의해 계산된 마스크(408)에 따라 혼합이 수행된다. 더욱 상세하게, 오버레이 컴포넌트(212)는 오버레이(406) 및 처리된 프레임(308)의 부분(328a)의 가중 평균을 계산할 수 있다. 오버레이 픽셀의 가중치는 마스크(408)에 의해 제공되며, 부분(328a)에 적용되는 가중치는 대응 픽셀 위치에서 마스크의 값에 1을 차감하여 제공된다. 실제로, 이는 픽셀 단위로 오버레이의 투명도 레벨을 설정하기 위해 마스크를 사용하여 달성될 수 있다.
오버레이(306, 406)를 처리된 프레임(308)에 추가한 결과로서, 파노라마 이미지(110)가 생성된다. 파노라마 이미지(110)는 제1 비디오 프레임(108a) 및 제2 비디오 프레임(108b)의 스티칭이다. 파노라마 이미지(110)는 제1 비디오 프레임(108a)에는 나타나지만 제2 비디오 프레임(108b)에는 나타나지 않는 장면의 부분에 대한 제1 비디오 프레임(108a)으로부터의 이미지 데이터(A)를 포함한다. 유사하게, 파노라마 이미지(110)는 제2 비디오 프레임(108b)에 나타나지만 제1 비디오 프레임(108a)에 나타나지 않는 장면의 부분으로부터의 이미지 데이터(B)를 포함한다. 제1 비디오 프레임(108a) 및 제2 비디오 프레임(108b) 모두에 의해 나타나는 장면의 부분에 대해, 파노라마 이미지(110)는 전술한 바와 같이 제1 비디오 프레임(108a)으로부터의 이미지 데이터(A')와 제2 비디오 프레임(108b)으로부터의 이미지 데이터(B')의 혼합을 포함한다.
당업자는 다양한 방법으로 전술한 실시 형태를 변형할 수 있고, 상기 실시 형태에 나타낸 바와 같이 본 발명의 이점을 여전히 사용할 수 있음을 인지할 것이다. 예를 들어, 간략화를 위해, 상기 실시예는 두개의 센서를 갖는 비디오 카메라에 대해 제공된다. 그러나, 본 발명은 2개 이상의 센서를 갖는 경우에도 동일하게 적용된다. 따라서, 본 발명은 나타낸 실시 형태들로 제한되어서는 안되며, 첨부된 청구항에 의해서만 한정되어야 한다. 또한, 당업자가 이해하는 바와 같이, 나타낸 실시 형태들은 결합될 수 있다.

Claims (20)

  1. 부분적으로 중첩되는 시야를 갖는 제1 및 제2 센서(102a, 102b)를 갖는 다중-센서 비디오 카메라(100)에서 수행되는 방법에 있어서,
    상기 제1 센서(102a) 및 상기 제2 센서(102b)에 의해 동시에 캡쳐되는 제1 비디오 프레임(108a) 및 제2 비디오 프레임(108b)을 각각 수신하는 단계(S02),
    - 상기 제1 및 제2 비디오 프레임(108a, 108b) 각각은 상기 제1 및 상기 제2 비디오 프레임(108a, 108b) 중 다른 하나와 중첩되지 않는 비-중첩 부분(118a, 118b) 및 상기 제1 및 상기 제2 비디오 프레임(108a, 108b) 중 다른 하나와 중첩되는 중첩 부분(128a, 128b)을 가짐-,
    상기 제1 및 상기 제2 비디오 프레임(108a, 108b)의 상기 비-중첩 부분(118a, 118b)으로부터의 이미지 데이터(A, B)를 상기 제1 비디오 프레임(108a)의 상기 중첩 부분(128a)으로부터의 이미지 데이터(A')와 함께 결합하여 제1 비디오 스트림(214)의 프레임(302)을 생성하는 단계(S04),
    제2 비디오 스트림(216)의 프레임(304, 404)을 생성하는 단계(S06) -상기 제2 비디오 스트림의 상기 프레임(304, 404)은 적어도 상기 제2 비디오 프레임(108b)의 상기 중첩 부분(128b)으로부터의 이미지 데이터(B')를 포함함-,
    상기 제1 비디오 스트림의 상기 프레임(302) 및 상기 제2 비디오 스트림의 상기 프레임(304, 404)을 병렬로 처리하는 단계(S08) -상기 제2 비디오 스트림의 상기 프레임(304, 404)을 처리하는 것은 적어도 상기 제2 비디오 프레임(108b)의 상기 중첩 부분(128b)으로부터의 이미지 데이터(B')에 기초하여 오버레이를 형성하는 단계를 포함함-,
    상기 제1 비디오 프레임(108a)의 상기 중첩 부분(128a)에 대응하는 부분(328a)에서 상기 제1 비디오 스트림의 상기 처리된 프레임(308)에 상기 오버레이(306, 406)를 추가하는 단계(S10)를 포함하고,
    상기 오버레이를 형성하는 단계 및 상기 오버레이를 추가하는 단계 중 적어도 하나에서 상기 제1 비디오 프레임(108a)의 상기 중첩 부분(128a)으로부터의 이미지 데이터(A')는 상기 제2 비디오 프레임(108b)의 상기 중첩 부분(128b)으로부터의 이미지 데이터(B')와 혼합되는 것을 특징으로 하는 방법.
  2. 제1항에 있어서, 상기 제2 비디오 스트림의 상기 프레임(304)은 상기 제2 및 상기 제1 비디오 프레임(108a, 108b)의 상기 중첩 부분(128a, 128b)으로부터의 이미지 데이터(A')를 포함하고, 상기 오버레이를 형성하는 단계는 상기 제2 비디오 프레임(108b)의 상기 중첩 부분(128b)으로부터의 상기 이미지 데이터(B')를 상기 제1 비디오 프레임(108a)의 상기 중첩 부분(128a)으로부터의 상기 이미지 데이터(A')와 혼합하는 것을 포함하는 것을 특징으로 하는 방법.
  3. 제2항에 있어서, 상기 오버레이를 추가하는 단계에서, 상기 오버레이(306)는 상기 제1 비디오 프레임(108a)의 상기 중첩 부분(128a)에 대응하는 상기 부분(328a)에서 상기 제1 비디오 스트림의 상기 처리된 프레임(308)의 이미지 데이터(A')를 교체하는 것을 특징으로 하는 방법.
  4. 제2항 또는 제3항에 있어서, 상기 혼합은 상기 중첩 부분(128a, 128b)에서의 각각의 픽셀에 대해 상기 제1 비디오 프레임(108a)으로부터의 이미지 데이터(A')와 상기 제2 비디오 프레임(108b)으로부터의 이미지 데이터(B')의 가중 평균을 계산하는 것을 포함하고,
    상기 제2 비디오 프레임(108b)의 상기 중첩 부분(128b)으로부터의 상기 이미지 데이터(B')와 관련된 가중치는 상기 픽셀로부터 상기 제2 비디오 프레임(108b)의 상기 중첩 부분(128b)과 상기 비-중첩 부분(118b) 사이의 경계까지 최단 거리에 의존하며,
    상기 제1 비디오 프레임(108a)의 상기 중첩 부분(128a)으로부터의 상기 이미지 데이터(A')와 관련된 가중치는 상기 픽셀에서 상기 제1 비디오 프레임(108a)의 상기 중첩 부분(128a)과 상기 비-중첩 부분(118a) 사이의 경계까지의 최단 거리에 의존하는 것을 특징으로 하는 방법.
  5. 제2항 또는 제3항에 있어서, 상기 혼합은:
    상기 제1 비디오 프레임(108a)의 중첩 부분(128a)으로부터의 이미지 데이터(A')와 상기 제2 비디오 프레임(108b)의 상기 중첩 부분(128b)으로부터의 이미지 데이터(B')의 제1 가중 평균을 계산하는 단계, - 상기 제1 가중 평균은 제1 임계값보다 낮은 공간 주파수에 대해 계산됨 -,
    상기 제1 비디오 프레임(108a)의 상기 중첩 부분(128a)으로부터의 이미지 데이터(A')와 상기 제2 비디오 프레임(108b)의 상기 중첩 부분(128b)으로부터의 이미지 데이터(B')의 제2 가중 평균을 계산하는 단계 -상기 제2 가중 평균은 제2 임계값 이상인 공간 주파수에 대해 계산되고, 상기 제2 임계값은 상기 제1 임계값 이상이며,
    상기 가중치는 상기 제1 가중 평균 및 상기 제2 가중 평균에 대해 상이하게 선택됨-,
    상기 제1 가중 평균을 상기 제2 가중 평균에 추가함으로써 상기 오버레이를 계산하는 단계를 포함하는 방법.
  6. 제2항 또는 제3항에 있어서, 상기 혼합은:
    상기 제1 비디오 프레임(108a)의 상기 중첩 부분(128a) 및 상기 제2 비디오 프레임(108b)의 상기 중첩 부분(128b)에서 물체를 식별하는 단계,
    상기 중첩 부분(128a, 128b)에서 상기 제1 비디오 프레임(108a)으로부터의 이미지 데이터(A')와 상기 제2 비디오 프레임(108b)으로부터의 이미지 데이터(B')의 가중 평균을 계산하는 단계를 포함하고,
    상기 제1 비디오 프레임(108a)의 상기 중첩 부분(128a)과 상기 제2 비디오 프레임(108b)의 상기 중첩 부분(128b) 모두에서 물체가 식별되면, 상기 제1 비디오 프레임(108a)의 이미지 데이터(A') 또는 상기 제2 비디오 프레임(108b)의 이미지 데이터(B') 중 하나와 관련된 가중치는 상기 물체에 속하는 것으로 식별된 픽셀에 대해 0으로 설정되는 방법.
  7. 제1항에 있어서, 상기 오버레이(406)는 상기 제2 비디오 프레임(108b)의 상기 중첩 부분(128b)으로부터의 이미지 데이터(B')만을 포함하고, 상기 오버레이를 추가하는 단계는 상기 오버레이(406)를 상기 제1 비디오 프레임(108a)의 상기 중첩 부분(128a)에 대응하는 상기 부분(328a)에서의 상기 제1 비디오 스트림(108a)의 상기 처리된 프레임(308)과 혼합하는 것을 포함하는 방법.
  8. 제7항에 있어서, 상기 제1 비디오 스트림의 상기 처리된 프레임(308)과 상기 오버레이(406)의 혼합은 상기 오버레이(406)의 각각의 픽셀에 대해 혼합 정도를 정의하는 마스크(408)에 따라 만들어지는 방법.
  9. 제8항에 있어서, 상기 오버레이(406)의 각각의 픽셀은 상기 제2 비디오 프레임(108b)의 상기 중첩 부분(128b)의 픽셀에 대응하고, 상기 혼합 정도는 상기 픽셀에서부터 상기 제2 비디오 프레임(108b)의 상기 중첩 부분(128b)과 상기 비-중첩 부분(118b) 사이의 경계까지의 최단 거리에 의존하는 방법.
  10. 제8항에 있어서, 상기 제2 비디오 스트림의 상기 프레임(404)은 상기 제2 및 상기 제1 비디오 프레임(108a, 108b)의 상기 중첩 부분(128a, 128b)으로부터의 이미지 데이터(A', B')를 포함하고, 상기 오버레이를 형성하는 단계는 상기 제2 및 상기 제1 비디오 프레임(108a, 108b)의 상기 중첩 부분(128a, 128b)으로부터의 이미지 데이터(A', B')에 기초하여 상기 마스크(408)를 계산하는 것을 더 포함하는 방법.
  11. 제10항에 있어서, 상기 마스크(408)는 상기 비디오 프레임이 상기 제1 및 상기 제2 센서로부터 수신되는 속도보다 낮은 속도로 업데이트되는 방법.
  12. 제1항에 있어서, 상기 제1 비디오 스트림의 상기 프레임(302) 및 상기 제2 비디오 스트림의 상기 프레임(304, 404)을 처리하는 것은 상기 제1 비디오 프레임(108a)의 이미지 데이터와 상기 제2 비디오 프레임(108b)의 이미지 데이터를 정렬하는 것을 포함하는 방법.
  13. 부분적으로 중첩되는 시야를 가진 제1 및 제2 센서(102a, 102b)를 갖는 다중-센서 비디오 카메라(100)용 처리 파이프라인(104)으로서,
    상기 제1 센서 및 상기 제2 센서(102a, 102b)에 의해 동시에 캡쳐되는 제1 비디오 프레임 및 제2 비디오 프레임(108a, 108b)을 각각 수신하도록 구성된 리시버(202),
    -상기 제1 및 상기 제2 비디오 프레임(108a, 108b) 각각은 상기 제1 및 상기 제2 비디오 프레임(108a, 108b) 중 다른 하나와 중첩되지 않는 비-중첩 부분(118a, 118b) 및 상기 제1 및 상기 제2 비디오 프레임(108a, 108b) 중 다른 하나와 중첩되는 중첩 부분(128a, 128b)을 가짐-;
    상기 제1 및 상기 제2 비디오 프레임(108a, 108b)의 상기 비-중첩 부분(118a, 118b)로부터의 이미지 데이터(A, B)를 상기 제1 비디오 프레임(108a)의 상기 중첩 부분(128a, 128b)으로부터의 이미지 데이터와 함께 결합하여 제1 비디오 스트림(214)의 프레임(302)을 생성하고, 제2 비디오 스트림(216)의 프레임(304, 404)을 생성하도록 구성된 프레임 생성 컴포넌트(206) -상기 제2 비디오 스트림(216)의 상기 프레임(304, 404)은 적어도 상기 제2 비디오 프레임(108b)의 상기 중첩 부분(128b)으로부터의 이미지 데이터(B')를 포함함-,
    상기 제1 비디오 스트림(214)의 상기 프레임(302)을 처리하도록 구성된 제1 처리 컴포넌트(208),
    상기 제1 비디오 스트림(214)의 상기 프레임(302)을 처리하는 상기 제1 처리 컴포넌트(208)와 병렬로 상기 제2 비디오 스트림(216)의 상기 프레임(304, 404)을 처리하도록 구성된 제2 처리 컴포넌트(210) -상기 제2 비디오 스트림(108b)의 상기 프레임(304, 404)의 처리는 적어도 상기 제2 비디오 프레임(108b)의 상기 중첩 부분(128b)로부터의 상기 이미지 데이터(B')에 기초하여 오버레이를 형성하는 것을 포함함-; 및
    상기 제1 비디오의 프레임(108a)의 상기 중첩 부분(128a)에 대응하는 부분(328a)에서 상기 제1 비디오 스트림(214)의 상기 처리된 프레임(308)에 상기 오버레이(306, 406)를 추가하도록 구성된 오버레이 컴포넌트(212),
    -상기 제2 처리 컴포넌트(210) 및 상기 오버레이 컴포넌트(212) 중 적어도 하나는 상기 오버레이를 형성하거나 상기 오버레이를 추가할 때 상기 제1 비디오 프레임(108a)의 상기 중첩 부분(128a)으로부터의 이미지 데이터(A')를 상기 제2 비디오 프레임(108b)의 상기 중첩 부분(128b)으로부터의 이미지 데이터(B')와 혼합하도록 구성됨-를 포함하는 처리 파이프라인.
  14. 제1 시야를 나타내는 비디오 프레임을 캡쳐하도록 배치된 제1 센서(102a);
    상기 제1 센서(102a)와 동시에 비디오 프레임을 캡쳐하도록 배치되고, 상기 제1 시야와 부분적으로 중첩되는 제2 시야를 나타내는 제2 센서(102b); 및
    상기 제1 센서 및 상기 제2 센서(102a, 102b)에 의해 동시에 캡쳐되는 제1 비디오 프레임 및 제2 비디오 프레임(108a, 108b)을 각각 수신하도록 구성된 리시버(202),
    -상기 제1 및 상기 제2 비디오 프레임(108a, 108b) 각각은 상기 제1 및 상기 제2 비디오 프레임(108a, 108b) 중 다른 하나와 중첩되지 않는 비-중첩 부분(118a, 118b) 및 상기 제1 및 상기 제2 비디오 프레임(108a, 108b) 중 다른 하나와 중첩되는 중첩 부분(128a, 128b)을 가짐-;
    상기 제1 및 상기 제2 비디오 프레임(108a, 108b)의 상기 비-중첩 부분(118a, 118b)로부터의 이미지 데이터(A, B)를 상기 제1 비디오 프레임(108a)의 상기 중첩 부분(128a, 128b)으로부터의 이미지 데이터와 함께 결합하여 제1 비디오 스트림(214)의 프레임(302)을 생성하고, 제2 비디오 스트림(216)의 프레임(304, 404)을 생성하도록 구성된 프레임 생성 컴포넌트(206) -상기 제2 비디오 스트림(216)의 상기 프레임(304, 404)은 적어도 상기 제2 비디오 프레임(108b)의 상기 중첩 부분(128b)으로부터의 이미지 데이터(B')를 포함함-,
    상기 제1 비디오 스트림(214)의 상기 프레임(302)을 처리하도록 구성된 제1 처리 컴포넌트(208),
    상기 제1 비디오 스트림(214)의 상기 프레임(302)을 처리하는 상기 제1 처리 컴포넌트(208)와 병렬로 상기 제2 비디오 스트림(216)의 프레임(304, 404)을 처리하도록 구성된 제2 처리 컴포넌트(210) -상기 제2 비디오 스트림(108b)의 상기 프레임(304, 404)의 처리는 적어도 상기 제2 비디오 프레임(108b)의 상기 중첩 부분(128b)로부터의 상기 이미지 데이터(B')에 기초하여 오버레이를 형성하는 것을 포함함-; 및
    상기 제1 비디오의 프레임(108a)의 상기 중첩 부분(128a)에 대응하는 부분(328a)에서 상기 제1 비디오 스트림(214)의 상기 처리된 프레임(308)에 상기 오버레이(306, 406)를 추가하도록 구성된 오버레이 컴포넌트(212),
    -상기 제2 처리 컴포넌트(210) 및 상기 오버레이 컴포넌트(212) 중 적어도 하나는 상기 오버레이를 형성하거나 상기 오버레이를 추가할 때 상기 제1 비디오 프레임(108a)의 상기 중첩 부분(128a)으로부터의 이미지 데이터(A')를 상기 제2 비디오 프레임(108b)의 상기 중첩 부분(128b)으로부터의 이미지 데이터(B')와 혼합하도록 구성됨-를 포함하는 처리 파이프라인(104)을 포함하는 다중-센서 비디오 카메라(100).
  15. 제14항에 있어서, 상기 제2 비디오 스트림의 상기 프레임은 상기 제2 및 제1 비디오 프레임의 중첩 부분으로부터의 이미지 데이터를 포함하고, 상기 제2 처리 컴포넌트 또는 상기 오버레이 컴포넌트는 상기 오버레이를 형성하거나 상기 오버레이를 추가할 때, 상기 제2 비디오 프레임의 상기 중첩 부분으로부터의 이미지 데이터를 상기 제1 비디오 프레임의 상기 중첩 부분으로부터의 이미지 데이터와 혼합하도록 구성되는 다중-센서 비디오 카메라(100).
  16. 제15항에 있어서, 상기 오버레이를 추가할 때, 상기 제2 처리 컴포넌트 또는 상기 오버레이 컴포넌트는 상기 제1 비디오 프레임(108a)의 중첩 부분(128a)에 대응하는 부분(328a)에서 상기 제1 비디오 스트림의 처리된 프레임(308)의 이미지 데이터(A')를 상기 오버레이(306)와 교체하도록 구성되는 다중-센서 비디오 카메라(100).
  17. 제15항에 있어서, 상기 제2 처리 컴포넌트 또는 상기 오버레이 컴포넌트는 혼합할 때, 상기 중첩 부분(128a, 128b)에서의 각각의 픽셀에 대해 상기 제1 비디오 프레임(108a)으로부터의 이미지 데이터(A')와 상기 제2 비디오 프레임(108b)으로부터의 이미지 데이터(B')의 가중 평균을 계산하도록 구성되고,
    상기 제2 비디오 프레임(108b)의 중첩 부분(128b)으로부터의 이미지 데이터와 관련된 가중치는 상기 픽셀로부터의 상기 제2 비디오 프레임(108b)의 중첩 부분(128b)과 비-중첩 부분(118b) 사이의 경계까지의 최단 거리에 의존하며,
    상기 제1 비디오 프레임(108a)의 중첩 부분(128a)으로부터의 이미지 데이터(A')와 관련된 가중치는 상기 픽셀에서 상기 제1 비디오 프레임(108a)의 중첩 부분(128a)과 비-중첩 부분(118a) 사이의 경계까지의 최단 거리에 의존하는 다중-센서 비디오 카메라(100).
  18. 제15항에 있어서, 상기 제2 처리 컴포넌트 또는 상기 오버레이 컴포넌트는 혼합할 때,
    상기 제1 비디오 프레임(108a)의 중첩 부분(128a)으로부터의 이미지 데이터(A')와 상기 제2 비디오 프레임(108b)의 중첩 부분(128b)으로부터의 이미지 데이터(B')의 제1 가중 평균을 계산하고 -상기 제1 가중 평균은 제1 임계값보다 낮은 공간 주파수에 대해 계산됨-,
    상기 제1 비디오 프레임(108a)의 중첩 부분(128a)으로부터의 이미지 데이터(A')와 상기 제2 비디오 프레임(108b)의 중첩 부분(128b)으로부터 이미지 데이터(B')의 제2 가중 평균을 계산하며 -상기 제2 가중 평균은 제2 임계값 이상인 공간 주파수에 대해 계산되고, 상기 제2 임계값은 상기 제1 임계값 이하이며, 가중치는 상기 제1 가중 평균 및 상기 제2 가중 평균에 대해 상이하게 선택됨-, 및
    상기 제1 가중 평균을 상기 제2 가중 평균에 추가함으로써 상기 오버레이를 계산하도록 구성되는 다중-센서 비디오 카메라(100).
  19. 제15항에 있어서, 상기 제2 처리 컴포넌트 또는 상기 오버레이 컴포넌트는 혼합할 때,
    상기 제1 비디오 프레임(108a)의 중첩 부분(128a) 및 상기 제2 비디오 프레임(108b)의 중첩 부분(128b)에서 물체를 식별하고,
    상기 중첩 부분(128a, 128b)에서 상기 제1 비디오 프레임(108a)으로부터의 이미지 데이터(A')와 상기 제2 비디오 프레임(108b)으로부터의 이미지 데이터(B')의 가중 평균을 계산하며,
    상기 제1 비디오 프레임(108a)의 중첩 부분(128a)과 상기 제2 비디오 프레임(108b)의 중첩 부분(128b) 모두에서 물체가 식별되면, 상기 제1 비디오 프레임(108a)의 이미지 데이터(A') 또는 상기 제2 비디오 프레임(108b)의 이미지 데이터(B')와 관련된 가중치가 상기 물체에 속하는 것으로 식별된 픽셀에 대해 0으로 설정되도록 구성되는 다중-센서 비디오 카메라(100).
  20. 처리 능력을 갖는 장치에 의해 실행될 때, 상기 장치가
    제1 센서(102a) 및 제2 센서(102b)에 의해 동시에 캡쳐되는 제1 비디오 프레임(108a) 및 제2 비디오 프레임(108b)을 각각 수신하고,
    -상기 제1 및 제2 비디오 프레임(108a, 108b) 각각은 상기 제1 및 상기 제2 비디오 프레임(108a, 108b) 중 다른 하나와 중첩되지 않는 비-중첩 부분(118a, 118b) 및 상기 제1 및 상기 제2 비디오 프레임(108a, 108b) 중 다른 하나와 중첩되는 중첩 부분(128a, 128b)을 가짐-,
    상기 제1 및 상기 제2 비디오 프레임(108a, 108b)의 상기 비-중첩 부분(118a, 118b)으로부터의 이미지 데이터(A, B)를 상기 제1 비디오 프레임(108a)의 상기 중첩 부분(128a)으로부터의 이미지 데이터(A')와 함께 결합하여 제1 비디오 스트림(214)의 프레임(302)을 생성하며,
    제2 비디오 스트림(216)의 프레임(304, 404)을 생성하고 -상기 제2 비디오 스트림의 상기 프레임(304, 404)은 적어도 상기 제2 비디오 프레임(108b)의 상기 중첩 부분(128b)으로부터의 이미지 데이터(B')를 포함함-,
    상기 제1 비디오 스트림의 상기 프레임(302) 및 상기 제2 비디오 스트림의 상기 프레임(304, 404)을 병렬로 처리하며 -상기 제2 비디오 스트림의 상기 프레임(304, 404)을 처리하는 것은 적어도 상기 제2 비디오 프레임(108b)의 상기 중첩 부분(128b)으로부터의 이미지 데이터(B')에 기초하여 오버레이를 형성하는 단계를 포함함-, 및
    상기 제1 비디오 프레임(108a)의 상기 중첩 부분(128a)에 대응하는 부분(328a)에서 상기 제1 비디오 스트림의 상기 처리된 프레임(308)에 상기 오버레이(306, 406)를 추가 -상기 오버레이를 형성하거나 상기 오버레이를 추가할 때 상기 제1 비디오 프레임(108a)의 상기 중첩 부분(128a)으로부터의 이미지 데이터(A')는 상기 제2 비디오 프레임(108b)의 상기 중첩 부분(128b)으로부터의 이미지 데이터(B')와 혼합됨-하게 하는 방법을 수행하기 위해 이에 저장된 컴퓨터-코드 명령어를 갖는 컴퓨터-판독 가능 매체를 포함하는 컴퓨터 프로그램 제품.

KR1020180058115A 2017-06-20 2018-05-23 다중-센서 비디오 카메라, 이를 위한 방법 및 파이프라인의 처리 KR102245470B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP17176772.6 2017-06-20
EP17176772.6A EP3419278B1 (en) 2017-06-20 2017-06-20 A multi-sensor video camera, and a method and processing pipeline for the same

Publications (2)

Publication Number Publication Date
KR20180138131A KR20180138131A (ko) 2018-12-28
KR102245470B1 true KR102245470B1 (ko) 2021-04-27

Family

ID=59257975

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180058115A KR102245470B1 (ko) 2017-06-20 2018-05-23 다중-센서 비디오 카메라, 이를 위한 방법 및 파이프라인의 처리

Country Status (6)

Country Link
US (1) US10652523B2 (ko)
EP (1) EP3419278B1 (ko)
JP (1) JP6967489B2 (ko)
KR (1) KR102245470B1 (ko)
CN (1) CN109104551B (ko)
TW (1) TWI740048B (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3404913B1 (en) * 2017-05-16 2019-11-06 Axis AB A system comprising a video camera and a client device and a method performed by the same
WO2019079403A1 (en) * 2017-10-18 2019-04-25 Gopro, Inc. LOCAL EXPOSURE COMPENSATION
CN113272855B (zh) * 2018-11-06 2024-06-14 泰立戴恩菲力尔商业系统公司 用于重叠多图像应用的响应归一化
CN112399095A (zh) * 2019-08-15 2021-02-23 西安诺瓦星云科技股份有限公司 视频处理方法、装置和系统
EP3836527B1 (en) * 2019-12-13 2021-11-10 Axis AB Multi-sensor high dynamic range imaging
KR20220163994A (ko) * 2020-04-24 2022-12-12 엘지전자 주식회사 Pov 디스플레이 장치 및 그 제어방법
EP4060982B1 (en) * 2021-03-15 2023-06-28 Axis AB Method and monitoring camera for handling video streams

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100633712B1 (ko) 1998-03-04 2006-10-13 소니 인터내셔널(유로파) 게엠베하 하이퍼텍스트 전송 프로토콜로 원격 디바이스들 간의 접속들을 설정하는 방법
KR101743228B1 (ko) 2016-01-22 2017-06-05 네이버 주식회사 스트리밍 장치 및 그 방법, 이를 이용한 스트리밍 서비스 시스템 및 컴퓨터로 판독 가능한 기록매체
US20170245022A1 (en) 2014-10-17 2017-08-24 Zte Corporation Splicing method and splicing system for http live streaming media fragment
US20180192156A1 (en) 2015-07-02 2018-07-05 Zte Corporation Multicast transmission method, apparatus and system for ott media

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000209425A (ja) * 1998-11-09 2000-07-28 Canon Inc 画像処理装置及び方法並びに記憶媒体
TWI221262B (en) * 2002-07-25 2004-09-21 Via Tech Inc Device and method for alpha blending overlay frame
JP4763351B2 (ja) * 2004-07-14 2011-08-31 アレコント ビジョン,リミティド ライアビリティ カンパニー 多重センサパノラマネットワークカメラ
EP1718065A1 (en) * 2005-04-30 2006-11-02 STMicroelectronics (Research & Development) Limited Method and apparatus for processing image data
US8189100B2 (en) * 2006-07-25 2012-05-29 Qualcomm Incorporated Mobile device with dual digital camera sensors and methods of using the same
EP2355037A1 (en) 2009-12-18 2011-08-10 Nxp B.V. Method of and system for determining an average colour value for pixels
KR20110076831A (ko) * 2009-12-28 2011-07-06 (주)주인네트 분산 네트워크 pvr 시스템 및 그 서비스 방법
JP2012237937A (ja) * 2011-05-13 2012-12-06 Nikon Corp 電子機器
CN103167223A (zh) * 2011-12-09 2013-06-19 富泰华工业(深圳)有限公司 具有广角拍摄功能的移动装置及其影像撷取方法
CN102982515A (zh) * 2012-10-23 2013-03-20 中国电子科技集团公司第二十七研究所 一种无人机图像实时拼接的方法
KR20150011938A (ko) 2013-07-24 2015-02-03 한국전자통신연구원 멀티-카메라 플랫폼 기반으로 캡쳐된 파노라마 영상의 안정화 방법 및 장치
CN103997609A (zh) * 2014-06-12 2014-08-20 四川川大智胜软件股份有限公司 基于cuda的多视频实时全景融合拼接方法
CN104754228A (zh) * 2015-03-27 2015-07-01 广东欧珀移动通信有限公司 一种利用移动终端摄像头拍照的方法及移动终端
TWI543611B (zh) * 2015-11-20 2016-07-21 晶睿通訊股份有限公司 影像接合方法及具有影像接合功能的攝影系統
CN106385536A (zh) * 2016-09-19 2017-02-08 清华大学 用于视觉假体的双目图像采集方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100633712B1 (ko) 1998-03-04 2006-10-13 소니 인터내셔널(유로파) 게엠베하 하이퍼텍스트 전송 프로토콜로 원격 디바이스들 간의 접속들을 설정하는 방법
US20170245022A1 (en) 2014-10-17 2017-08-24 Zte Corporation Splicing method and splicing system for http live streaming media fragment
US20180192156A1 (en) 2015-07-02 2018-07-05 Zte Corporation Multicast transmission method, apparatus and system for ott media
KR101743228B1 (ko) 2016-01-22 2017-06-05 네이버 주식회사 스트리밍 장치 및 그 방법, 이를 이용한 스트리밍 서비스 시스템 및 컴퓨터로 판독 가능한 기록매체

Also Published As

Publication number Publication date
EP3419278A1 (en) 2018-12-26
JP6967489B2 (ja) 2021-11-17
US10652523B2 (en) 2020-05-12
CN109104551B (zh) 2021-06-25
CN109104551A (zh) 2018-12-28
TWI740048B (zh) 2021-09-21
EP3419278B1 (en) 2019-09-25
US20180367789A1 (en) 2018-12-20
JP2019033474A (ja) 2019-02-28
TW201906401A (zh) 2019-02-01
KR20180138131A (ko) 2018-12-28

Similar Documents

Publication Publication Date Title
KR102245470B1 (ko) 다중-센서 비디오 카메라, 이를 위한 방법 및 파이프라인의 처리
JP4783461B2 (ja) 画像合成装置及び方法
TWI407800B (zh) 馬賽克影像的改良處理
US7454081B2 (en) Method and system for video edge enhancement
US20130169834A1 (en) Photo extraction from video
US11330171B1 (en) Locally adaptive luminance and chrominance blending in a multiple imager video system
US8558875B2 (en) Video signal processing device
US20210051307A1 (en) Methods and Apparatus for Capturing, Processing and/or Communicating Images
JP2009164857A (ja) 画像データ処理方法および画像処理装置
KR102198217B1 (ko) 순람표에 기반한 스티칭 영상 생성 장치 및 방법
KR20190056292A (ko) 중첩 시야각을 갖는 제1 및 제2 이미지를 블렌딩하기 위한 방법, 장치 및 카메라
JP2019033474A5 (ko)
KR101915036B1 (ko) 실시간 비디오 스티칭 방법, 시스템 및 컴퓨터 판독 가능 기록매체
KR20150145725A (ko) Ldr 비디오 시퀀스의 동적 범위 확장을 위한 방법 및 장치
JP2016208306A (ja) 画像処理装置及びこれを備えた撮像システムならびに画像処理方法
KR20130001869A (ko) 영상처리장치 및 영상처리방법
JP2011250394A (ja) 画像処理装置及びその制御方法
JP4793449B2 (ja) ネットワーク映像合成表示システム
JP2013029995A (ja) 撮像システム
US20200120274A1 (en) Image processing apparatus and image processing method
JP2010152518A (ja) 画像処理装置及び画像処理方法
JP2015087851A (ja) 画像処理装置及び画像処理プログラム
US10091442B2 (en) Image processing apparatus and image processing method
JPWO2017154293A1 (ja) 画像処理装置、撮像装置、および画像処理方法、並びにプログラム
JP2020005084A (ja) 画像処理装置、画像処理方法、及びプログラム

Legal Events

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