KR20220111203A - 스티칭된 이미지들의 정렬을 평가하기 위한 방법 및 이미지 프로세싱 디바이스 - Google Patents

스티칭된 이미지들의 정렬을 평가하기 위한 방법 및 이미지 프로세싱 디바이스 Download PDF

Info

Publication number
KR20220111203A
KR20220111203A KR1020220013115A KR20220013115A KR20220111203A KR 20220111203 A KR20220111203 A KR 20220111203A KR 1020220013115 A KR1020220013115 A KR 1020220013115A KR 20220013115 A KR20220013115 A KR 20220013115A KR 20220111203 A KR20220111203 A KR 20220111203A
Authority
KR
South Korea
Prior art keywords
alignment
image
stitched
image frame
frame
Prior art date
Application number
KR1020220013115A
Other languages
English (en)
Inventor
비욘 아르도
Original Assignee
엑시스 에이비
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엑시스 에이비 filed Critical 엑시스 에이비
Publication of KR20220111203A publication Critical patent/KR20220111203A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • H04N17/02Diagnosis, testing or measuring for television systems or their details for colour television signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4038Image mosaicing, e.g. composing plane images from plane sub-images
    • 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
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/04Context-preserving transformations, e.g. by using an importance map
    • G06T3/047Fisheye or wide-angle transformations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/38Registration of image sequences
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • 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/50Constructional details
    • H04N23/54Mounting of pick-up tubes, electronic image sensors, deviation or focusing coils
    • 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/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/682Vibration or motion blur correction
    • H04N23/684Vibration or motion blur correction performed by controlling the image sensor readout, e.g. by controlling the integration time
    • H04N23/6845Vibration or motion blur correction performed by controlling the image sensor readout, e.g. by controlling the integration time by combination of a plurality of images sequentially taken
    • 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
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/60Noise processing, e.g. detecting, correcting, reducing or removing noise
    • H04N5/2253
    • H04N5/2258
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • H04N7/181Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a plurality of remote sources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/32Indexing scheme for image data processing or generation, in general involving image mosaicing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • G06T2207/10021Stereoscopic video; Stereoscopic image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20212Image combination
    • G06T2207/20221Image fusion; Image merging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30168Image quality inspection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30232Surveillance

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)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Quality & Reliability (AREA)
  • Image Processing (AREA)
  • Closed-Circuit Television Systems (AREA)
  • Studio Devices (AREA)
  • Stereoscopic And Panoramic Photography (AREA)
  • Apparatus For Radiation Diagnosis (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)

Abstract

방법은,
제 1 정렬에 따라 제 1 이미지 센서로부터의 이미지들의 제 1 스트림의 제 1 이미지 프레임 및 제 2 이미지 센서로부터의 이미지들의 제 2 스트림의 또 다른 제 1 이미지 프레임을 정렬하는 단계,
제 1 정렬에 따라 이미지들의 제 1 스트림의 제 2 이미지 프레임 및 이미지들의 제 2 스트림의 또 다른 제 2 이미지 프레임을 정렬하는 단계,
제 1 혼합 함수에 따라 제 1 혼합 영역에서 정렬된 제 1 이미지 프레임 및 또 다른 제 1 이미지 프레임을 혼합함으로써 제 1 스티칭된 이미지 프레임을 얻는 단계,
제 2 혼합 함수에 따라 제 2 혼합 영역에서 정렬된 제 2 이미지 프레임 및 또 다른 제 2 이미지 프레임을 혼합함으로써 제 2 스티칭된 이미지 프레임을 얻는 단계, 및
제 1 스티칭된 프레임 및 제 2 스티칭된 프레임의 픽셀들의 값들에 기초하여 산출된 차 패턴에 기초하여 제 1 정렬을 평가하는 단계를 포함한다. 픽셀들은 각각의 제 1 및 제 2 스티칭된 이미지 프레임들에서 제 1 및 제 2 혼합 영역들의 적어도 하나의 고정된 부분 내에 포함된다.

Description

스티칭된 이미지들의 정렬을 평가하기 위한 방법 및 이미지 프로세싱 디바이스{METHOD AND IMAGE-PROCESSING DEVICE FOR EVALUATING AN ALIGNMENT OF STITCHED IMAGES}
본 명세서의 실시예들은 스티칭(stitching)된 이미지들의 정렬을 평가하기 위한 방법 및 이미지 프로세싱 디바이스에 관한 것이다. 대응하는 컴퓨터 프로그램 및 컴퓨터 프로그램 캐리어가 또한 개시된다.
이미징, 특히 비디오 이미징을 사용하는 대중의 감시는 전 세계의 많은 영역들에서 공통적이다. 모니터링이 필요할 수 있는 영역들은 예를 들면, 은행들, 상점들, 및 학교들 및 정부 시설들과 같은, 보안이 필요한 다른 영역들이다. 모니터링이 필요할 수 있는 다른 영역들은 비디오 감시가 주로 프로세스들을 모니터링하기 위해 사용되는 프로세싱, 제조 및 물류 애플리케이션들이다.
일부 애플리케이션들에 대해, 비디오의 넓은 시야들이 최소한 가끔 요구된다. 이것은 여러 가지 수단에 의해 성취될 수 있다. 예를 들면, 단일 센서 카메라들에는 카메라를 이동시키고 시야를 변경하는 팬-틸트-줌(pan-tilt-zoom) 기술이 구비될 수 있다. 이 해결책은 일반적으로, 고정된 카메라에 비해 오히려 비용이 많이 든다. 단일 센서 어안 카메라들은 저렴한 가격들로 파노라마 뷰들을 제공하지만, 더 먼 거리들에서 더 많은 상세를 얻는 기능이 제한적이다. 또 다른 해결책은 단일 센서 이미지들을 스티칭함으로써 파노라마 이미지들이 생성되는 다중 센서 파노라마 카메라들을 사용하는 것이다.
이미지 스티칭된 또는 사진 스티칭은 다수의 사진 이미지들을 중첩하는 시야들과 조합하여 하나의 균일한 이미지 예컨대, 분할된 고해상도, 가능하게 파노라마 이미지를 생성하는 프로세스이다. 예를 들면, 중첩 이미지 센서들로부터의 이미지 데이터는 센서들로부터의 이미지들 사이에 중첩이 있는 부분들에서 상이한 가중치들을 사용하여 혼합될 수 있다. 공통적으로 소프트웨어로 수행된, 이미지 스티칭에 대한 대부분의 접근법들은 매끄러운 결과들을 생성하기 위해 이미지와 동일한 노출들 사이에 거의 정확한 중첩들을 요구한다. 센서들로부터의 이미지들이 중첩 부분들에서 정확하게 정렬되는 것이 중요하다. 정확하게 정렬되지 않으면, 동일한 객체의 일부가 중첩에 두 번 나타나거나, 객체의 부분들이 누락되는 것과 같은 오차가 나타날 수 있다.
일반적으로, 정렬 오차들은 예컨대, 병진 정렬 오차들, 회전 정렬 오차들 및 스큐로 인한 정렬 오차들로서 분류될 수 있다. 다른 정렬 오차들이 또한 존재한다.
이미지들 사이의 정렬은 센서들의 장착 위치들에 대한 지식으로부터, 또는 공통 특징들을 찾기 위해 스티칭될 별개의 이미지들을 분석하는 것으로부터 발견될 수 있고 이들을 이미지들의 정렬 및/또는 뒤틀림을 위해 사용할 수 있다. 원래 이미지들을 정렬하는 한 가지 방식은 원래 이미지들의 좌표들을 최종 이미지의 그들의 새로운 좌표들에 매핑하는 테이블을 생성하는 것이다. 이들 테이블들은 센서들의 장착 위치들과 관련된 파라미터들과 같은 카메라의 특정 파라미터들에 의존할 수 있다. 파라미터들은 공장 교정 후에 카메라에 미리 설치되고 나중에 카메라에 의해 공급될 수 있다. 공장 교정이 일반적으로, 약간의 정렬 오차들을 야기할지라도, 카메라를 현장에 설치할 때 원래 이미지들의 정렬은 여전히 약간의 조정이 필요할 수 있다. 예를 들면, 카메라가 운송 동안 기계적으로 방해를 받거나, 현장 환경이 공장의 테스트 환경과 크게 상이하거나, 현장에서 캡쳐되는 객체들이 공장에서 정렬의 교정을 위해 사용된 객체들과 유사한 거리에 있지 않은 경우 정렬의 조정이 필요할 수 있다.
카메라가 현장에 설치되었을 때 재조정이 수행될 수 있을지라도, 이러한 재조정은 즉, 카메라의 실행 시간/라이브 뷰가 아니라 오프라인에서 결정될 필요가 있을 수 있고, 이는 카메라로부터의 이미지 스트림이 특정 시간 동안 사용될 수 없음을 의미한다.
카메라의 실행 시간 동안 수행된 정렬 방법들의 문제는 그들이 정렬의 평가를 위해 별개의 이미지 스트림들을 요구할 수 있다는 것이다. 예를 들면, 정렬되지 않은 이미지들이 평가될 수 있다. 이러한 정렬 방법들은 어떠한 정렬도 수행되지 않은 경우와 비교하여, 추가의 복잡성 및 프로세싱 능력, 그리고 이러한 데이터가 전송되는 네트워크에서 가능하게 추가의 대역폭을 요구한다.
카메라의 실행 시간 동안 수행된 다른 정렬 방법들은 스티칭된 이미지들의 품질에 영향을 미칠 수 있다. 스티칭된 이미지들의 낮춰진 품질은 스티칭된 후의 비디오 프로세싱에 부정적인 영향을 미칠 수 있으며, 결국 최종 뷰어에 의해 낮은 품질의 이미지들로서 인지될 수 있다.
선행 기술 US8600193B2는 스티칭 품질의 평가를 포함하는 이미지들을 스티칭하는 방법을 개시한다.
본 명세서의 실시예들의 목적은 따라서, 상기 언급된 문제들 중 일부를 제거하거나, 적어도 그들의 영향을 감소시키는 것일 수 있다. 구체적으로, 목적은 스티칭 동작을 수행하는 이미지 프로세싱 디바이스의 실행 시간에서, 스티칭된 이미지들의 정렬을 동적으로 개선하는 것, 또는 즉 다수의 이미지 센서들에 의해 캡쳐된, 이미지들의 스티칭을 동적으로 교정하는 것일 수 있다. 이미지 프로세싱 디바이스는 카메라일 수 있다. 이미지 프로세싱 디바이스의 실행 시간에 교정을 수행하는 것은 이미지 프로세싱 디바이스를 사용하는 동안 교정을 수행하는 것을 의미할 수 있다.
정렬 또는 교정의 개선의 일부로서, 정렬 또는 오정렬 오차의 크기, 유형 및/또는 방향의 결정과 같은, 정렬의 정도 또는 품질의 결정을 포함할 수 있는 정렬의 평가가 수행될 수 있다. 표현들 정렬의 정도, 정렬의 품질 및 정렬 품질은 본 명세서에서 상호교환가능하게 사용되고 동일한 의미를 가질 것이다. 유사하게, 표현들 정렬 오차 및 오정렬 오차는 또한, 본 명세서에서 상호교환가능하게 사용될 것이다.
일 양태에 따르면, 목적은 이미지 캡쳐링 디바이스와 같은 이미지 프로세싱 디바이스에 의해 수행된 방법에 의해 성취된다. 방법은 중첩하는 시야들을 가지는 2개의 이미지 센서들로부터 스티칭된 이미지들의 정렬을 평가하기 위한 것 예컨대, 제 1 이미지 센서로부터의 이미지들의 제 1 스트림 및 제 2 이미지 센서로부터의 이미지들의 제 2 스트림의 정렬을 평가하기 위한 것일 수 있고, 제 1 및 제 2 이미지 센서들은 중첩하는 시야들을 갖는다. 이미지 센서들은 이미지 캡쳐링 디바이스에 포함될 수 있다.
방법은 제 1 정렬에 따라 제 1 이미지 센서로부터의 이미지들의 제 1 스트림의 제 1 이미지 프레임 및 제 2 이미지 센서로부터의 이미지들의 제 2 스트림의 또 다른 제 1 이미지 프레임을 정렬하는 단계, 및 제 1 정렬에 따라 이미지들의 제 1 스트림의 제 2 이미지 프레임 및 이미지들의 제 2 스트림의 또 다른 제 2 이미지 프레임을 정렬하는 단계를 포함한다.
방법은 제 1 혼합 함수에 따라 제 1 및 또 다른 제 1 이미지 프레임들의 제 1 혼합 영역에서 정렬된 제 1 이미지 프레임 및 또 다른 제 1 이미지 프레임을 혼합함으로써 제 1 스티칭된 이미지 프레임을 얻는 단계, 및 제 1 혼합 함수와 상이한 제 2 혼합 함수에 따라 제 2 및 또 다른 제 2 이미지 프레임들의 제 2 혼합 영역에서 정렬된 제 2 이미지 프레임 및 또 다른 제 2 이미지 프레임을 혼합함으로써 제 2 스티칭된 이미지 프레임을 얻는 단계를 더 포함한다.
방법은 제 1 스티칭된 프레임 및 제 2 스티칭된 프레임의 픽셀들의 값들에 기초하여 산출된 차 패턴에 기초하여 제 1 정렬을 평가하는 단계를 더 포함한다. 픽셀들은 각각의 제 1 및 제 2 스티칭된 이미지 프레임들에서 제 1 및 제 2 혼합 영역들의 적어도 하나의 고정된 부분 내에 포함된다.
또 다른 양태에 따르면, 목적은 상기 방법을 수행하도록 구성된 이미지 프로세싱 디바이스에 의해 성취된다.
또 다른 양태들에 따르면, 목적은 상기 양태들에 대응하는 컴퓨터 프로그램 및 컴퓨터 프로그램 캐리어에 의해 성취된다.
차 패턴이 적어도 하나의 고정된 부분에 기초하기 때문에, 차 패턴은 서로의 다음에 취해진 상이한 이미지들 사이에서 장면의 이동들에 의존하지 않는다. 대신에, 차 패턴은 혼합 함수의 변동 및 정렬에 의존한다. 혼합 함수의 변동은 가장 많이 정렬된 이미지들에 대한 차 패턴에 가장 적은 영향을 미칠 것이다. 예를 들면, 제 1 및 또 다른 제 1 이미지들의 혼합 함수들의 합이 제 2 및 또 다른 제 2 이미지들의 혼합 함수들의 합과 같은 혼합 함수들에 대해, 상이한 혼합 함수들은 완벽하게 정렬된 이미지들에 대한 제로 차 패턴을 야기해야 한다. 오정렬 오차들이 있는 이미지들에 대해, 상이한 혼합 함수들은 제로가 아닌 차 패턴들을 생성할 것이다.
따라서, 제 1 스티칭된 프레임 및 제 2 스티칭된 프레임이 상이한 혼합 함수들을 사용하여 스티칭되었고, 차 패턴이 적어도 하나의 고정된 부분에 기초하므로, 제 1 스티칭된 이미지 프레임 및 제 2 스티칭된 이미지 프레임의 픽셀들의 값들에 기초하여 산출된 차 패턴에 기초하여 제 1 정렬을 평가함으로써 스티칭된 이미지들의 정렬을 동적으로 평가하고 개선하는 것이 가능하다.
본 명세서의 실시예들의 또 다른 장점은 그들이, 이미지 프로세싱 디바이스의 동작을 중단하지 않고 정렬의 동적 재교정이 수행될 수 있도록 이미지 프로세싱 디바이스의 실행 시간 동안 정렬의 평가를 허용한다는 것이다. 특히, 충분히 양호한 정렬들의 평가들은 결과적인 비디오 스트림에 거의 영향을 미치지 않을 것이고, 따라서 최종 뷰어에 의해 인지되지 못하게 될 것이다.
게다가, 스티칭된 이미지 스트림으로부터 차 패턴이 계산될 수 있기 때문에, 정렬을 평가하기 위한 별개의 이미지 스트림에 대한 어떠한 필요성도 존재하지 않는다.
본 명세서의 실시예들의 여전히 또 다른 장점은 그들이 혼합 영역들에 걸쳐 퍼지는 많은 작은 고정된 부분들에서 병진 오정렬로서 오정렬을 평가함으로써, 스티칭되는 원래 이미지들의 회전들과 같은, 스티칭된 이미지의 복잡한 비선형 오정렬 오차들의 평가를 단순화하는 것을 허용한다는 것이다.
도면들에서, 일부 실시예들에서 나타나는 특징들은 파선들로 표시된다.
특정한 특징들 및 그들의 장점들을 포함하는, 본 명세서에 개시된 실시예들의 다양한 양태들은 다음의 상세한 설명 및 첨부 도면들로부터 용이하게 이해될 것이고, 여기서:
도 1은 본 명세서에서 이미지 캡쳐링 디바이스와 같은 이미지 프로세싱 디바이스의 예시적인 실시예들을 도시하는 개략적인 개요를 도시한 도면,
도 2는 이미지 프로세싱 디바이스들을 포함하는 비디오 네트워크 시스템의 예시적인 실시예들을 도시한 도면,
도 3a는 본 명세서의 예시적인 실시예들을 도시하는 개략적인 개요를 도시한 도면,
도 3b는 본 명세서의 예시적인 실시예들을 도시하는 개략적인 개요를 도시한 도면,
도 3c는 본 명세서의 예시적인 실시예들을 도시하는 개략적인 개요를 도시한 도면,
도 3d는 2개의 이미지 프레임들의 스티칭의 예시적인 실시예들을 도시한 도면,
도 3e는 혼합 함수의 예시적인 실시예들을 도시한 도면,
도 3f는 다중 혼합 함수들의 예시적인 실시예들을 도시한 도면,
도 4는 이미지 프로세싱 디바이스에서의 방법의 실시예들을 도시하는 흐름도,
도 5는 정렬의 함수로서 차의 측정치를 도시한 도면,
도 6은 이미지 프로세싱 디바이스의 실시예들을 도시하는 블록도.
상기 언급된 바와 같이, 2개 이상의 센서들로부터 스티칭된 이미지들의 정렬을 개선하는 것이 흥미로울 수 있다. 일례로서, 정렬은 예컨대, 센서들의 장착 위치들의 지식으로부터 공장에서 결정될 수 있다.
그러나, 카메라가 현장에 설치될 때, 원래 이미지들의 정렬은 여전히, 일부 조정을 필요로 할 수 있다.
상기 언급된 바와 같이, 카메라의 실행 시간 동안 수행된 정렬 방법들의 문제는 그들이 정렬의 평가를 위해 하나 이상의 별개의 이미지 스트림들을 요구할 수 있다는 것이다.
본 명세서의 실시예들에서, 이들 문제들은 중첩하는 시야들을 갖는 센서들로부터의 이미지들의 2개의 스트림들의 정렬을 평가하는 방법에 의해 해결된다. 더 구체적으로, 이들 문제들은 스티칭된 이미지 스트림, 즉 스티칭된 이미지들의 이미지 스트림에서 정렬의 분석을 위해 사용될 수 있는 정보를 내장함으로써 스티칭된 이미지들의 정렬을 동적으로 개선함으로써 해결될 수 있다.
내장된 정보는 스티칭되는 원래 이미지들의 혼합 함수를 변경한 다음 정렬을 평가함으로써 예컨대, 이미지 센서들로부터 나오는 2개의 이미지들을 혼합함으로써 각각 형성된 2개의 스티칭된 이미지들 사이의 차 패턴, 즉 차 이미지를 계산함으로써 정렬의 정도 또는 품질을 결정함으로써 얻어진다. 예를 들면, 차 패턴은 2개의 스티칭된 이미지들의 대응하는 픽셀 값들에 기초하여 차를 계산함으로써 계산될 수 있다. 본 명세서의 일부 실시예들에서, 차 패턴은 2개의 스티칭된 이미지들의 가중된 픽셀들 값 사이의 차를 계산함으로써 계산된다. 일부 실시예들에서, 가중치들은 차 패턴이 2개의 스티칭된 이미지들의 픽셀 값들 사이의 차를 계산함으로써 계산되도록 1과 같다.
본 명세서의 일부 실시예들에서, 차 패턴에 기초하여 정렬을 평가하는 것은 제 1 정렬에 대한 차 패턴을 제 2 정렬과 같은 하나 이상의 또 다른 정렬들에 대한 차 패턴과 비교하는 것을 포함한다. 그 다음, 최소 차 패턴을 초래하는 정렬이 선택될 수 있다. 그들 실시예들에 대해, 차 패턴은 2개의 스티칭된 이미지들의 픽셀 값들 사이의 차를 계산함으로써 계산될 수 있다.
일부 다른 실시예들에서, 단일 차 패턴과 같은 차 패턴은 차 패턴을 생성하기 위해 사용된 스티칭된 이미지들 중 하나와 함께 신경망에 대한 입력으로서 사용된다. 초기 트레이닝 후에, 신경망은 차 패턴 및 스티칭된 이미지에 기초하여 정렬을 평가할 수 있다.
여전히 일부 실시예들에서, 차 패턴은 고정된 부분 내의 원래 이미지들의 재구성을 계산하기 위해 (스티칭된 이미지들 중 하나와 함께) 사용된다. 그 다음, 정렬을 평가하는 것은 이들 원래 이미지들 사이의 차들 및/또는 유사성들을 추출하기 위한 임의의 알려진 방법에 기초하고 이들 차들 및/또는 유사성들을 평가할 수 있다. 이러한 특징 매칭 방법들은 SSD(sum of the squared differences), NCC(Normalized Cross Correlation), 또는 SIFT(Scale-Invariant Feature Transform)를 포함할 수 있다.
즉, 본 명세서의 실시예들은 혼합 함수, 즉 스티칭된 이미지 프레임들의 혼합 인자 또는 혼합 가중치를 변경함으로써, 카메라와 같은 이미지 프로세싱 디바이스의 실행 시간에서 스티칭된 이미지 프레임들의 정렬을 개선하고 원래 이미지들 사이의 중첩 영역에 포함된 혼합 영역의 8x8 픽셀들의 작은 패치와 같은 고정된 부분의 차 패턴에 대한 이 변화의 효과를 연구한다. 고정된 부분은 혼합 함수가 동일한 경우 상이한 이미지 프레임들 사이에 불변인 부분이다.
원본 이미지들이 잘 정렬되면, 혼합의 변화는 스티칭된 이미지들에 최소한의 영향을 주어야 하지만, 원래 이미지들이 잘 정렬되지 않으면, 혼합의 변화는 중첩하는 이미지 영역의 고정된 부분에서 픽셀 값들의 변화를 야기할 것이다. 즉, 혼합의 변화는 상이한 혼합 함수들로 혼합된 상이한 스티칭된 이미지들로 하여금 상이하게 할 것이며, 이는 대응하는 픽셀 위치들에서 상이한 픽셀 값들을 포함하는 것이다. 대응하는 픽셀 위치들에서의 픽셀 값들에 기초한 차는 모니터링 및 평가될 수 있고 차의 평가에 기초하여 정렬이 충분히 양호한지의 여부의 결정이 행해질 수 있다.
본 명세서의 실시예들의 장점은 변화가 스티칭된 이미지들의 뷰어에게 매우 눈에 띌 정도로 크지 않다는 것이다. 게다가, 본 명세서의 실시예들은 혼합 영역들에 걸쳐 퍼져 있는 많은 작은 고정된 부분들에서 병진 오정렬로서 오정렬을 평가함으로써, 스티칭되는 원래 이미지들의 회전들과 같은, 스티칭된 이미지의 복잡한 비선형 오정렬 오차들의 평가를 단순화하는 것을 허용한다.
본 명세서의 실시예들은 이미지 캡쳐링 디바이스 예컨대, 디지털 카메라와 같은 하나 이상의 이미지 프로세싱 디바이스들에서 구현될 수 있다. 도 1은 다양한 예시적인 이미지 캡쳐링 디바이스들(110)을 묘사한다. 이미지 캡쳐링 디바이스(110)는 예컨대, 캠코더, 비디오 레코더, 감시 카메라 또는 모니터링 카메라와 같은 비디오 카메라(120), 디지털 카메라, 이미지 센서를 포함하는 스마트폰(130), 또는 이미지 센서를 포함하는 자동차(140)일 수 있다.
도 2는 본 명세서의 실시예들이 구현될 수 있는 일 예시적인 비디오 네트워크 시스템(250)을 묘사한다. 비디오 네트워크 시스템(250)은 디지털 비디오 이미지와 같은 디지털 이미지(201)를 캡쳐하고 이에 대한 이미지 프로세싱을 수행할 수 있는 비디오 카메라(120, 220)를 포함할 수 있다. 도 2의 비디오 서버(260)는 예를 들면, 네트워크 등을 통해 비디오 카메라(120, 220)로부터 이미지를 얻을 수 있다.
비디오 서버는 비디오를 전달하는데 전용인 컴퓨터 기반 디바이스이다. 비디오 서버들은 다수의 애플리케이션들에서 사용되며, 특정한 애플리케이션들의 필요성들을 해결하는 부가적인 기능들 및 능력들을 종종 갖는다. 예를 들면, 보안, 감시 및 검사 애플리케이션들에서 사용된 비디오 서버들은 전형적으로, 하나 이상의 카메라들로부터 비디오를 캡쳐하고 컴퓨터 네트워크를 통해 비디오를 전달하도록 설계된다. 비디오 생성 및 방송 애플리케이션들에서, 비디오 서버는 비디오를 녹화하고 녹화된 비디오를 재생하며, 많은 비디오 스트림들을 동시에 전달하는 능력을 가질 수 있다. 도 2에서, 비디오 서버(260)는 네트워크(250)를 통해, 비디오 카메라(120, 220)에 의해 예시화되는 이미지 캡쳐링 디바이스에 연결된다. 비디오 서버(260)는 또한, 비디오 이미지들의 저장을 위해 비디오 저장장치(270)에 연결되고/거나, 비디오 이미지들의 디스플레이를 위해 모니터(280)에 연결될 수 있다.
본 명세서의 실시예들은 몇몇 이미지 프로세싱 디바이스들에서 구현될 수 있다. 예를 들면, 본 명세서의 일부 실시예들에서, 이미지들의 2개의 스트림들의 정렬을 평가하는 방법은 비디오 카메라(120, 220)와 같은 이미지 캡쳐링 디바이스, 및 비디오 서버(250)와 같은 하나 이상의 또 다른 이미지 프로세싱 디바이스들 둘 모두에서 분산된 방식으로 수행된다. 하나 이상의 또 다른 이미지 프로세싱 디바이스들은 또한, 비디오 관리 시스템(VMS), 또는 컴퓨터 클라우드에 포함될 수 있다. 더 구체적으로, 이미지들의 정렬 및 혼합과 같은, 방법의 일부 부분들은 이미지 캡쳐링 디바이스에 의해 수행될 수 있고, 정렬의 평가와 같은 다른 부분들은 하나 이상의 또 다른 이미지 프로세싱 디바이스들에 의해 수행될 수 있다. 이것은 혼합과 관련된 정보가 이미지 캡쳐링 디바이스를 떠나는 이미지 스트림으로 내장되기 때문에 가능하다.
본 명세서의 실시예들을 더 양호하게 이해하기 위해, 이미징 시스템이 먼저 설명될 것이다.
도 3a는 비디오 카메라(120, 220)와 같은 디지털 비디오 카메라의 이 경우에서, 이미징 시스템(300)의 개략도이다. 이미징 시스템은 하나 이상의 이미지 센서 예컨대, 제 1 이미지 센서(301a) 및 제 2 이미지 센서(301b)에서 장면을 이미징한다. 제 1 및 제 2 이미지 센서들(301a, 301b)에는 상이한 픽셀들이 알려진 패턴으로 특정한 파장 영역의 방사선을 수신하도록, 각각의 베이어 필터(Bayer filter)가 제공될 수 있다. 전형적으로, 캡쳐된 이미지의 각각의 픽셀은 특정 파장 대역 내에서 캡쳐된 광의 세기를 표현하는 하나 이상의 값들로 표현된다. 이들 값들은 일반적으로, 컬러 구성요소들, 또는 컬러 채널들로서 언급된다. 용어 "이미지"는 이미지를 캡쳐한 이미지 센서로부터 발생하는 정보를 포함하는 이미지 프레임 또는 비디오 프레임을 언급할 수 있다.
이미지 센서들(301a, 301b)의 개별적인 센서 픽셀들의 신호를 판독한 후에, 상이한 이미지 프로세싱 동작들이 이미지 프로세싱 파이프라인(302)에 의해 수행될 수 있다. 전형적으로, 비디오 프로세싱을 위해, 이미지들은 이미지들의 스트림에 포함된다. 도 3a는 제 1 이미지 센서(301a)로부터의 이미지들의 제 1 스트림(310a) 및 제 2 이미지 센서(301b)로부터의 이미지들의 제 2 스트림(310b)을 도시한다.
이미지 프로세싱은 디모자이싱(demosaicing), 컬러 정정, 잡음 필터링(공간 및/또는 시간 잡음을 제거하기 위함), 왜곡 정정(예컨대, 배럴 왜곡의 효과들을 제거하기 위함), 전역 및/또는 로컬 톤 매핑(예컨대, 광범위한 세기들을 포함하는 장면들의 이미징을 가능하게 함), 변형(예컨대, 수정 및 회전), 평면 필드 정정(예컨대, 비네팅 효과들의 제거를 위함), 오버레이들의 적용(예컨대, 프라이버시 마스크들, 설명 텍스트), 등을 포함할 수 있다. 이미지 프로세싱 파이프라인(302)은 또한, 객체 검출, 인식, 알람들, 등을 수행하는 분석 엔진과 연관될 수 있다.
이미지 프로세싱 파이프라인(302)은 이미지 프로세싱 부분(302a) 및 비디오 후 프로세싱 부분(302b)을 포함할 수 있다. 이미지 프로세싱 부분(302a)은 예컨대, 이미지 안정화, 잡음 필터링 적용, 왜곡 정정, 전역 및/또는 로컬 톤 매핑, 변형, 및 평면 필드 정정을 수행할 수 있다. 비디오 후 프로세싱 부분(302b)은 예를 들면, 이미지의 부분들을 자르고, 오버레이들을 적용하며, 분석 엔진을 포함할 수 있다.
구체적으로, 본 명세서의 실시예들에서, 이미지의 프로세싱은 또한, 제 1 및 제 2 이미지 센서들(301a, 301b)로부터의 2개의 이미지들을 함께 스티칭하는 것을 포함할 것이다. 스티칭은 이미지 프로세싱 파이프라인(302)에서 예컨대, 비디오 후 프로세싱 부분(302b)에서 상대적으로 늦게 수행될 수 있다. 일부 실시예들에서, 스티칭이 수행되기 전에 적어도 잡음 필터링이 수행되었다. 도 3a는 제 1 및 제 2 이미지 스트림들(310a, 310b)이 스티칭된 이미지 스트림(310c)을 형성하기 위해 어떻게 조합되는지를 개략적으로 도시한다.
도 3b는 이러한 이미지 스티칭된 프로세스들을 개략적으로 도시하며, 이러한 제 1 스티칭된 프로세스에서, 각각의 제 1 및 제 2 이미지 센서들(301a, 301b)로부터 발생하는 제 1 이미지 프레임(311a) 및 또 다른 제 1 이미지 프레임(311b)은 제 1 스티칭된 이미지 프레임(321)을 생성하기 위해 스티칭된다. 이러한 제 2 스티칭된 프로세스에서, 각각의 제 1 및 제 2 이미지 센서들(301a, 301b)로부터 발생하는 제 2 이미지 프레임(312a) 및 또 다른 제 2 이미지 프레임(312b)은 제 2 스티칭된 이미지 프레임(322)을 생성하기 위해 스티칭된다. 제 1 이미지 프레임(311a) 및 또 다른 제 1 이미지 프레임(311b)은 이미지 프레임들에 의해 캡쳐된 장면에서 객체들의 이동들로 인해 2개의 이미지 프레임들(311a, 311b) 사이에 가능한 한 적은 변동을 성취하기 위해 동일하거나 유사한 시점들에서 캡쳐되었을 수 있다. 유사하게, 제 2 이미지 프레임(312a) 및 또 다른 제 2 이미지 프레임(312b)은 또한, 동일하거나 유사한 시점들에서 캡쳐되었을 수 있다.
2개보다 많은 프레임들은 또한, 함께 스티칭될 수 있다.
비디오 카메라들에 대해, 비디오 카메라부터의 나가는 프레임 레이트 예컨대, 30fps 또는 60fps와 같은 디스플레이에 대한 이미지 프레임들의 디스플레이 레이트에 대응하는 레이트가 구체적으로 라이브 비디오 스트림들이 필요한 경우, 이미지 프로세싱에 소요될 수 있는 시간에 대한 제한들을 설정할 수 있음에 유의해야 한다. 본 명세서의 실시예들은 프레임 레이트를 낮추지 않고 수행될 수 있다. 구체적으로, 혼합 함수의 변동은 스티칭된 이미지들의 프레임 레이트에 영향을 미치지 않고 수행될 수 있다.
이미지 프로세싱 파이프라인(302)에 이어서, 이미지는 인코더(303)로 전달될 수 있으며, 이미지 프레임들의 정보는 H.264와 같은 인코딩 프로토콜에 따라 코딩되고 예를 들면, 본 명세서에서 모니터(280), 비디오 서버(260), 저장장치(270), 등으로 예시화된 수신 클라이언트로 전달된다.
본 명세서에서 일 예시적인 시나리오 및 예시적인 실시예들이 이제 도 3c를 참조하여 설명될 것이다. 도 3c는 비디오 카메라(325)의 형태로 일 예시적인 이미지 프로세싱 디바이스 및 몇몇 객체들을 포함하는 장면을 도시한다. 비디오 카메라(325)는 상기 논의된 도 3a의 이미징 시스템(300)을 포함할 수 있다. 예를 들면, 비디오 카메라(325)는 제 1 이미지 센서(301a) 및 제 2 이미지 센서(301b)를 포함할 수 있다. 제 1 및 제 2 이미지 센서들은 도 3c에서 빗금친 영역으로 도시된 중첩하는 시야(328)를 갖는다. 중첩하는 시야(328) 내에 고정된 객체(330)가 배치되고, 따라서 고정된 객체(330)의 적어도 일부가 제 1 이미지 센서(301a) 및 제 2 이미지 센서(301b) 둘 모두에 이미징된다.
본 명세서의 실시예들에 따른 예시적인 방법들은 이제, 도 3d, 도 3e 및 도 3f를 참조하고, 도 4의 흐름도를 참조하며, 도 3a 내지 도 3c를 또한 참조하여 설명될 것이다.
2개의 이미지 프레임들을 스티칭하기 위해, 이미지 프레임들이 정렬된다. 초기 정렬은 공장에서 수행되었을 수 있다. 그러나, 이미지 프로세싱 디바이스가 현장에 설치되어 가동 중일 때 수시로 재정렬이 필요할 수 있다. 따라서, 다음은 이러한 재정렬, 또는 정렬의 재교정을 위한 방법을 제공할 것이다. 정렬의 재교정은 정렬의 정도를 결정하고/거나 오정렬 오차를 산출하는 것을 포함할 수 있는 현재 정렬 또는 오정렬의 평가를 포함한다.
중첩하는 시야들을 갖는 센서들로부터의 이미지들의 2개의 스트림들의 정렬을 평가하기 위한 방법의 실시예들이 이제 설명될 것이다. 먼저, 상이한 동작들이 상호작용하는 방법을 설명하기 위해 일부 특정 실시예들의 덜 상세한 설명이 설명될 것이다.
방법은 다음 동작들을 포함할 수 있다.
1. 제 1 및 또 다른 제 1 이미지 프레임들(311a, 311b)을 제 1 정렬에 따라 정렬하고 정렬된 제 1 및 또 다른 제 1 이미지 프레임들(311a, 311b)을 제 1 혼합 영역(331a)에서 혼합함으로써 제 1 스티칭된 이미지 프레임(321)을 준비하는 것; 정렬된 제 1 및 또 다른 제 1 이미지 프레임들(311a, 311b)이 혼합되는 제 1 혼합 영역(331a)은 정렬된 제 1 및 또 다른 제 1 이미지 프레임들(311a, 311b)의 제 1 중첩 영역(332a)에 포함된다. 제 1 중첩 영역(332a)은 장면의 대응하는 콘텐츠를 갖는 픽셀들을 포함하는 제 1 및 또 다른 제 1 이미지 프레임들(311a, 311b)의 각각의 영역으로서 정의될 수 있다.
2. 스티칭된 이미지 프레임들(321, 322)에서 제 1 혼합 영역(331a)의 복수의 고정된 부분들(334a, 334b)을 선택하는 것, 및 각각의 이러한 고정된 부분(334a, 334b)에 대해,
a. 제 2 스티칭된 이미지 프레임(322)에 대해, 제 2 혼합 영역(331b)에서 제 2 및 또 다른 제 2 이미지들(321a, 312b) 중 하나에 대한 혼합 가중치를 특정 양 예컨대, 10%만큼 증가시키고, 다른 이미지 프레임의 가중치를 대응하는 양만큼 감소시킴으로써 정렬의 품질을 결정하는 것. 정렬된 제 1 및 또 다른 제 1 이미지 프레임들(311a, 311b)이 혼합되는 제 2 혼합 영역(331b)은 정렬된 제 2 및 또 다른 제 2 이미지 프레임들(311a, 311b)의 제 2 중첩 영역(332b)에 포함된다;
b. 혼합 영역(331a, 331b)의 고정된 부분들(334a, 334b)에서 제 2 스티칭된 이미지 프레임(322) 및 제 1 스티칭된 이미지 프레임(321)의 픽셀들의 값들에 기초하여 차 패턴을 산출함으로써 예를 들면, 혼합 영역(331a, 331b)의 고정된 부분들(334a, 334b)에서 제 2 스티칭된 이미지 프레임(322)과 제 1 스티칭된 이미지 프레임(321) 사이의 차 패턴을 산출함으로써 정렬의 품질을 결정하는 것.
3. 개선된 정렬에 관한 가설을 결정하기 위해 차 패턴을 평가하는 것, 평가는 제 1 버전에서 다음을 포함한다:
a. 차 패턴이 제로보다 크면, 정렬이 완벽하지 않고 또 다른 정렬을 선택하며 다시 테스트한다;
b. 차 패턴이 제로와 같으면, 정렬이 양호하고, 평가가 완료된다.
c. 평가는 제 2 버전에서 다음을 포함한다:
i. 미리 트레이닝된 신경망을 사용하여 혼합 영역(331a, 331b)의 스티칭된 이미지(321, 322) 및 차 패턴들에 기초하여 개선된 정렬을 결정한다.
다음에서, 각각의 동작의 더 상세한 설명이 주어질 것이다. 중첩하는 시야들을 가지는 2개의 이미지 센서들로부터의 스티칭된 이미지들의 정렬을 평가하기 위한, 또는 즉, 제 1 이미지 센서(301a)로부터의 이미지들의 제 1 스트림(310a) 및 제 2 이미지 센서(301b)로부터의 이미지들의 제 2 스트림(310b)의 정렬을 평가하기 위한 것과 같은, 중첩하는 시야들을 가지는 2개의 이미지 센서들로부터의 이미지들의 2개의 스트림들의 정렬을 평가하기 위한 본 명세서의 방법들은 도 2a의 이미지 캡쳐링 디바이스들(110) 중 임의의 것, 특히 도 3c의 비디오 카메라(325)와 같은 이미지 프로세싱 디바이스에서 구현될 수 있다. 이미지 센서들(301a, 301b)은 비디오 카메라(325)와 같은 이미지 캡쳐링 디바이스(110)에 포함될 수 있다.
상기 언급된 바와 같이, 공장 교정이 수행되었더라도, 비디오 카메라(325)가 현장에 설치될 때 원래 이미지들의 정렬은 여전히 약간의 조정이 필요할 수 있다. 본 명세서에서 비디오 카메라(325)에서의 실시예들의 구현은 비디오 카메라(325)의 실행 시간에 수행될 때 특히 관련이 있는데, 이는 그들이 정렬의 평가를 위한 별개의 이미지 스트림들을 제공하지 않고 스티칭된 이미지 스트림에서 사소한 영향들을 갖는 비디오 카메라(325)에서 수행될 수 있기 때문이다. 따라서, 방법은 이미지 프로세싱 디바이스의 정상적인 사용에 큰 영향을 미치지 않고 수행될 수 있다.
도 4에서 제공된 다음 동작들 중 하나 이상은 다음의 예시적인 순서로 수행될 수 있다. 다른 예들에서, 순서는 하기에 설명된 것과 상이할 수 있다.
동작(401a)
도 3d는 일부 정렬 오차가 있는 일부 정렬에 따라 2개의 이미지 센서들로부터 발생하는 2개의 이미지 프레임들의 오버레이를 개략적으로 도시한다. 2개의 이미지 프레임들은 예를 들면, 제 1 이미지 프레임(311a) 및 또 다른 제 1 이미지 프레임(311b)일 수 있다. 또 다른 예에서, 2개의 이미지 프레임들은 제 2 이미지 프레임(312a) 및 또 다른 제 2 이미지 프레임(312b)이다.
상기 언급된 바와 같이, 제 1 이미지 프레임(311a) 및 또 다른 제 1 이미지 프레임(311b)을 스티칭하기 위해 사용될 정렬의 산출 또는 결정은 정렬을 평가하기 위한 방법이 예컨대, 공장에서 시작되기 전에 수행되었을 수 있다. 예를 들면, 원래 이미지들(311a, 311b)의 좌표들을 스티칭된 이미지(321)의 그들의 새로운 좌표들에 매핑하는 테이블을 사용하는 것이 가능하다. 일부 다른 실시예들은 스티칭된 이미지(321)의 좌표들을 원래 이미지들(311a, 311b)의 좌표들에 매핑하는 또 다른 테이블을 사용한다. 이들 테이블들은 센서들(301a, 301b)의 장착 위치들과 관련된 파라미터들과 같은, 비디오 카메라(325)의 특정 파라미터들에 의존할 수 있다. 따라서, 동작(401a) 및 다음 동작(401b)은 정렬의 임의의 평가 및 업데이팅 없이, 알려지거나 결정된 정렬에 따라 2개의 이미지 프레임들을 정렬한다. 즉, 동작(401a 및 401b)은 알려지거나 결정된 정렬에 따라 2개의 이미지 프레임들을 조합하거나 오버레이한다. 이것은 정상적인 스티칭된 프로세스의 일부이다. 정렬의 평가는 하기의 동작(406)에서 수행된다.
도 3d에서, 정렬 오차는 수직 픽셀 방향의 병진 오정렬로 예시화된다. 회전 및/또는 비스듬한 오정렬들과 같은 다른 오정렬들이 또한 발생할 수 있으며, 본 명세서의 실시예들의 하기의 설명은 이러한 다른 오정렬 오차들에 동일하게 적용가능하다. 더 상세하게, 도 3d는 제 1 정렬에 따른 제 1 이미지 센서(301a)로부터의 이미지들의 제 1 스트림(310a)의 제 1 이미지 프레임(311a) 및 제 2 이미지 센서(301b)로부터의 이미지들의 제 1 스트림(310b)의 또 다른 제 1 이미지 프레임(311b)의 오버레이 또는 정렬을 도시한다. 제 1 정렬은 제 1 정렬 오차와 연관된다. 제 1 이미지 프레임(311a) 및 또 다른 제 1 이미지 프레임(311b)은 2개의 이미지 프레임들(311a, 311b) 사이의 예컨대, 장면에서 객체의 이동들로 인한 변동이 제 1 혼합 영역(331a) 내에서 가능한 한 작도록 동일하거나 유사한 시점들에서 캡쳐되었을 수 있다. 본 명세서의 실시예들이 장점을 취하거나, 상이하게 표현하면, 혼합 프로세스에서 차들에 의해 야기되는 스티칭된 이미지들의 이러한 변동들을 분석하기 때문에, 장면에서 객체들의 이동들로 인해 가능한 한 작은 변동을 갖는 것이 바람직하다.
따라서, 제 1 이미지 프레임(311a) 및 또 다른 제 1 이미지 프레임(311b)을 스티칭하기 위해, 그들은 제 1 정렬에 따라 정렬된다.
동작(401b)
상기 동작(401a)에서와 같은 대응하는 방식으로, 이미지 프로세싱 디바이스는 제 1 정렬에 따라 제 1 이미지 센서(301a)로부터의 이미지들의 제 1 스트림(310a)의 제 2 이미지 프레임(312a) 및 제 2 이미지 센서(301b)로부터의 이미지들의 제 2 스트림(310b)의 또 다른 제 2 이미지 프레임(312b)을 정렬한다.
제 2 이미지 프레임(312a) 및 또 다른 제 2 이미지 프레임(312b)은 예컨대, 장면에서 객체들의 이동들로 인한 2개의 이미지 프레임들(312a, 312b) 사이의 변동이 제 2 혼합 영역(331b) 내에서 가능한 한 작도록 동일하거나 유사한 시점들에서 캡쳐되었을 수 있다. 그러나, 제 1 및 또 다른 제 1 이미지 프레임들(311a, 311b)과 관련하여, 제 2 이미지 프레임(312a) 및 또 다른 제 2 이미지 프레임(312b)은 나중 시점과 같은 상이한 시점에서 캡쳐되었을 수 있다.
동작(402)
제 1 이미지 프레임(311a) 및 또 다른 제 1 이미지 프레임(311b)이 예컨대, 상기 동작들(401a 및 401b)에 따라 정렬되거나 조합되었을 때, 이미지 프로세싱 디바이스는 제 1 혼합 함수(333a)에 따라 제 1 및 또 다른 제 1 이미지 프레임들(311a, 311b)의 제 1 혼합 영역(331a)에서 정렬된 제 1 이미지 프레임(311a) 및 또 다른 제 1 이미지 프레임(311b)을 혼합함으로써 제 1 스티칭된 이미지 프레임(321)을 획득하고, 그의 일례는 도 3e에 도시된다.
본 명세서의 실시예들에서, 혼합 함수는 이미지들의 혼합 영역 내의 픽셀 위치의 함수로서 또 다른 대응하는 이미지 프레임과 혼합된 이미지 프레임의 각각의 혼합 가중치들 또는 혼합 인자들을 정의할 수 있다. 따라서, 혼합 함수는 2개의 대응하는 이미지 프레임들의 각각의 혼합 가중치들을 정의하는 다수의 각각의 기능들을 포함할 수 있다. 특히, 제 1 혼합 함수(333a)는 정렬된 제 1 이미지 프레임(311a) 및 또 다른 제 1 이미지 프레임(311b)의 각각의 혼합 가중치를 제 1 혼합 영역(331a)에서의 픽셀 위치의 함수로서 정의할 수 있다.
혼합 함수는 임의의 알려진 혼합 함수 예컨대, 알파 혼합 함수일 수 있다.
몇몇 버전들의 알파 혼합이 존재하지만, 공통적인 개념은 혼합 함수 예컨대, 선형 혼합 함수를 사용하여 각각의 픽셀에 가중치를 부여한다는 것이다. 각각의 픽셀은 그 다음, 그것이 위치되는 각각의 혼합 영역(331a, 331b)의 위치 또는 각각의 고정된 부분(334a, 334b)의 위치에 의존하여 우선순위화된다. 일 예시적인 구현은 마스크를 사용하고 각각의 고정된 부분(334a, 334b)을 마스크 또는 1-마스크와 곱한다.
알파 혼합은 2개의 이미지들 사이의 전환들을 더 부드럽게 만들기 위해 사용된다. 그러나, 이것은 또한 잘못된 스티칭에 존재하는 에지들 및 아티팩트(artifact)들이 또한 매끄럽게 됨을 의미한다. 이것은 그것들을 검출하기 어렵게 만들 수 있으며, 심지어 그들의 각각의 크기는 더욱 그렇다. 그러나, 본 명세서의 실시예들이 혼합 함수의 변동으로 인한 차인 2개의 스티칭된 이미지들의 픽셀들의 값들에 기초하여 산출된 차 패턴에 기초하여 정렬을 평가하기 때문에, 알파 혼합에 대해서도 이들 오차들을 검출하는 것이 가능하다.
차 패턴에 기초하여 정렬을 평가하기 위해 알파 혼합 함수를 사용하는 장점은 차 패턴이 각각의 픽셀에 대해 동일한 함수로 산출된다는 것이고, 이는 고정된 부분(334)에 대한 총 차의 값이 각각의 픽셀들의 차들의 합에 기초함을 의미한다. 일례가 이제 이어질 것이다. 예는 제 1 스티칭된 이미지 프레임(321)에 대한 특정한 픽셀에 대한 혼합 가중치들의 합이 제 2 스티칭된 이미지 프레임(322)에 대한 동일한 픽셀에 대한 혼합 가중치들의 합과 동일하다고 가정한다. 합은 예를 들면, 1, 또는 100%에 대응할 수 있다.
도 3e에서, 제 1 혼합 함수(333a)는 도 3e의 제 1 혼합 함수(333a) 아래에 도시된 제 1 혼합 영역(331a) 내의 선형적으로 변동하는 함수이다. 이 예에서, 선형적으로 변동하는 함수는 제 1 혼합 영역(331a) 내의 수평 픽셀 위치의 함수로서 퍼센트의 제 1 및 또 다른 제 1 이미지의 각각의 혼합 가중치의 선형 변동을 포함한다. 도 3e에서 사선으로 도시된 제 1 혼합 가중치는 제 1 이미지 프레임(311a)에 적용될 수 있고, 도 3e에서 실선으로 도시된 또 다른 제 1 혼합 가중치는 또 다른 제 1 이미지 프레임(311b)에 적용될 수 있다.
도 3e에 따르면, 제 1 혼합 가중치는 또 다른 제 1 이미지 프레임(311b)과의 중첩이 없는 제 1 이미지 프레임(311a) 내의 픽셀 위치들에 대해 즉, 도 3e의 혼합 영역(331a)의 우측에서 100%이다. 혼합 영역(331a) 내의 픽셀 위치들에 대해, 제 1 혼합 가중치는 또 다른 제 1 이미지 프레임(311b)이 끝나는 픽셀 위치에서 100%로부터 제 1 이미지 프레임(311a)이 끝나는 픽셀 위치에서 0%로 달라진다. 그 다음, 제 1 혼합 가중치는 제 1 이미지 프레임(311a)과의 중첩이 없는 또 다른 제 1 이미지 프레임(311b) 내의 픽셀 위치들에 대해 0%이다.
또 다른 제 1 이미지 프레임(311b)에 대한 또 다른 제 1 혼합 가중치는 상기 내용에 대응하여 정의될 수 있다.
이제, 제 1 스티칭된 이미지 프레임(321)의 고정된 부분(334)의 특정 픽셀 위치에 대해, 제 1 이미지 프레임(311a)에 적용된 제 1 혼합 가중치는 30%일 수 있다. 그 다음, 동일한 픽셀 위치에 대해, 또 다른 제 1 이미지 프레임(311b)에 적용된 또 다른 제 1 혼합 가중치는 70%일 수 있다. 대응하는 제 2 스티칭된 이미지 프레임(322) 및 제 2 혼합 함수에 대해, 제 2 이미지 프레임(312a)에 적용된 제 2 혼합 가중치는 40%일 수 있다. 그 다음, 동일한 픽셀 위치에 대해, 또 다른 제 2 이미지 프레임(312b)에 적용된 또 다른 제 2 혼합 가중치는 60%일 수 있다.
제 1 혼합 함수(333a)는 또한, 다수의 혼합 함수들 예컨대, 제 1 이미지 프레임 및 또 다른 제 1 이미지 프레임에 대응하는 각각의 혼합 함수를 포함하는 것으로서 설명될 수 있다.
동작(403)
상기 동작(401a)에서와 같은 대응하는 방식으로, 이미지 프로세싱 디바이스(110)는 제 1 혼합 함수(333a)와 상이한 제 2 혼합 함수(333b)에 따라 정렬된 제 2 이미지 프레임(312a) 및 또 다른 제 2 이미지 프레임(312b)을 제 2 및 또 다른 제 2 이미지 프레임들(312a, 312b)의 제 2 혼합 영역(331b)에서 혼합함으로써 제 2 스티칭된 이미지 프레임(322)을 얻는다. 도 3f는 픽셀 위치의 함수로서, 빗금친 선들과 조합된 실선들로 도시된 제 1 혼합 함수(333a), 및 점으로 빗금친 선들과 조합된 점선들로 도시된 제 2 혼합 함수(333b) 둘 모두의 예들을 도시한다.
제 1 혼합 함수(333a)에 대한 것과 유사하게, 제 2 혼합 함수(333b)는 정렬된 제 2 이미지 프레임(312a) 및 또 다른 제 2 이미지 프레임(312b)의 각각의 혼합 가중치를 제 2 혼합 영역(331b) 내의 픽셀 위치의 함수로서 정의할 수 있다.
본 명세서의 실시예들에서, 제 1 중첩 영역(332a)은 제 2 중첩 영역(332b)과 동일한 픽셀들을 커버할 수 있다. 제 1 및 제 2 중첩 영역들(332a, 332b)은 픽셀 위치 축 아래에 끊어지지 않은 수평선으로 도 3f에 도시된다. 그럼에도 불구하고, 제 1 혼합 영역(331a)은 제 2 혼합 영역(331b)과 상이할 수 있다. 제 2 혼합 영역(331b)은 예를 들면, 제 1 혼합 영역(331a)과 관련하여 병진될 수 있다. 본 명세서의 일부 실시예들에서, 각각의 혼합 영역(331a, 331b)은 혼합 함수의 혼합 가중치들의 선형 변동과 중첩하는 중첩 영역으로서 정의된다.
도 3f에서, 상이한 영역들은 수평 픽셀 위치 축 아래에 배치되는 상이한 유형들의 수평선들로서 도시된다.
제 1 혼합 영역(331a)은 두꺼운 선 아래에 가는 수평선을 갖는 두꺼운 수평선으로 도시되고, 제 2 혼합 영역(331b)은 두꺼운 수평선 위에 얇은 수평선을 갖는 두꺼운 수평선으로 도시된다. 그러나, 제 2 혼합 영역(331b)이 제 1 혼합 영역(331a)과 동일한 영역을 커버하는 것이 또한 가능하다. 예를 들면, 제 2 혼합 영역(331b) 및 제 1 혼합 영역(331a)은 2개의 굵은 실선들로 도시되는 전체 중첩 영역(332a, 332b)을 커버하도록 정의될 수 있다.
어쨌든, 2개의 굵은 빗금친 수평선들로 도시된 제 1 및 제 2 혼합 영역들(331a, 331b)의 선형 변동 부분들을 커버하는 영역은 정렬을 평가하기 위해 예컨대, 차 패턴을 산출하기 위해 사용될 수 있다.
도 3f에서 점으로 빗금친 선으로 도시된 제 2 혼합 가중치는 제 2 이미지 프레임(311b)에 적용될 수 있고, 도 3f에서 점선으로 도시된 또 다른 제 2 혼합 가중치는 또 다른 제 2 이미지 프레임(312b)에 적용될 수 있다.
도 3f에 도시된 바와 같이, 제 2 혼합 함수(333b)는 제 2 이미지 프레임(312a)에 적용된 제 2 혼합 가중치가 혼합 영역(331a) 내에서 제 1 이미지 프레임(311a)에 적용된 제 1 혼합 가중치보다 높고, 또 다른 제 2 이미지 프레임(312b)에 적용된 또 다른 제 2 혼합 가중치가 혼합 영역(331a) 내의 또 다른 제 1 이미지 프레임(311b)에 적용된 또 다른 제 1 혼합 가중치보다 낮다는 점에서 제 1 혼합 함수와 상이할 수 있다. 이것은 서로에 대해 선형적으로 변동하는 제 1 및 제 2 혼합 함수들(333a, 333b)의 부분들을 평행 이동함으로써 얻어질 수 있다. 이것은 중첩 영역(332a, 332b)이 혼합을 위해 사용된 제 1 및 제 2 혼합 영역들(331a, 331b)보다 클 수 있음을 의미한다. 고정된 부분들(334a, 334b)은 그 다음, 그들이 선형적으로 변동하는 혼합 함수들만을 포함하는 스티칭된 이미지들(321, 322)의 일부에 포함되도록 결정될 수 있다. 즉, 고정된 혼합 함수들을 포함하는 중첩 영역의 일부들이 폐기될 수 있다. 예를 들면, 제 2 혼합 가중치는 제 2 혼합 영역(331b) 내에서 10%와 100% 사이에서 변할 수 있고, 제 1 혼합 가중치는 대응하는 제 1 혼합 영역(331a) 내에서 0%와 100% 사이에서 변할 수 있다. 유사하게, 또 다른 제 2 혼합 가중치는 제 2 혼합 영역(331b) 내에서 90%와 0% 사이에서 변할 수 있고, 제 1 혼합 가중치는 대응하는 제 1 혼합 영역(331a) 내에서 100%와 0% 사이에서 변할 수 있다.
본 명세서의 일부 실시예들에 따르면, 혼합 가중치의 변동은 혼합 영역들 내의 총 픽셀 값이 제 1 및 제 2 스티칭된 프레임들에 대해 동일하게 유지되도록 선택되거나 결정된다. 예를 들면, 픽셀 위치(p1)에 대한 혼합 가중치들의 합은 제 1 스티칭된 이미지 프레임(321)과 제 2 스티치된 이미지(322) 사이에서 일정할 수 있다. 제 2 혼합 가중치가 픽셀 위치(p1)에 대해 0%로부터 10%까지 제 1 혼합 가중치에 비해 증가되면, 또 다른 제 2 혼합 가중치는 동일한 픽셀 위치(p1)에 대해 100%로부터 90%로 감소될 수 있다.
따라서, 제 1 스티칭된 프레임(321)의 결과적인 픽셀 값은 동일한 픽셀 위치에 대한 제 2 스티칭된 프레임(322)의 결과적인 픽셀 값과 동일하거나 대략 동일할 수 있다.
동작(404)
방법이 장면에서 이동하는 객체들의 이동들로 인한 픽셀 변동을 배제하기 위해, 혼합 영역들(331a, 331b) 중 적어도 하나의 고정된 부분(334)이 결정되고/거나 선택될 수 있다. 고정된 부분(334)은 또한, 패치로서 언급될 수 있다.
적어도 하나의 고정된 부분(334)은 제 2 혼합 함수(333b)가 제 1 혼합 함수(333a)와 상이하지 않다면 제 2 및 또 다른 제 2 이미지 프레임들(312a, 312b)의 제 2 혼합 영역(331b)에 대해 불변인 제 1 및 또 다른 제 1 이미지 프레임들(311a, 311b)의 제 1 혼합 영역(331a)의 일부를 포함할 수 있다. 본 명세서의 실시예들에서, 불변은 변화가 전혀 없는 경우를 포함하지만 또한, 원래 이미지 프레임들의 잡음 레벨보다 작거나 같은 작은 변화가 있는 경우를 포함할 수 있다.
차 패턴의 산출을 덜 복잡하게 하기 위해, 고정된 부분(334)은 혼합된 이미지 프레임들 둘 모두에 대해 양의 혼합 가중치가 있는 혼합 영역들(331a, 331b)의 영역으로부터 선택될 수 있다.
상기 언급된 바와 같이, 본 명세서의 실시예들은 혼합 영역(331a, 331b)에 걸쳐 퍼져 있는 많은 작은 고정된 부분들(334)에서 로컬 병진 오정렬로서 오정렬을 평가함으로써, 스티칭되는 원래 이미지들(311a, 311b, 312a, 312b)의 회전들과 같은, 스티칭된 이미지 프레임들(321, 322)의 복잡한 비선형 오정렬 오차들의 평가를 단순화하도록 허용한다. 그에 의해, 오정렬 오차의 산출의 복잡성이 감소된다.
따라서, 일부 실시예들에서, 적어도 하나의 고정된 부분(334)은 제 1 고정된 부분(334a) 및 제 2 고정된 부분(334b)과 같은 다수의 고정된 부분들(334a, 334b)을 포함한다. 3개 또는 4개 또는 심지어 더 많은 수와 같은 더 많은 고정된 부분들이 또한 가능하다. 각각의 고정된 부분(334a, 334b)은 8x8 또는 16x16 픽셀들과 같은 소수의 픽셀들을 포함할 수 있다. 고정된 부분들의 크기는 그것이 다수의 또는 단일 고정된 부분들이든 특정 크기 제한으로 제한될 수 있다. 예를 들면, 복잡한 정렬 오차들을 선형 정렬 오차들로 선형화할 수 있기 위해 고정된 부분들의 크기가 제한될 수 있다.
이미지 프로세싱 디바이스의 프로세싱 능력들에 대한 제한들은 또한, 고정된 부분들이 얼마나 클 수 있는지에 대한 제한을 설정할 수 있다. 그러나, 임의의 잡음에 대해 오차를 크게 결정할 수 있는 것과 관련하여 고정된 부분들의 크기에는 절충점(trade-off)이 있다. 더 큰 고정된 부분들은 잡음을 평균화하기 위해 사용될 수 있는 더 많은 통계적 포인트들을 의미한다. 게다가, 고정된 부분(334)은 결정될 선형 정렬 오차보다 커야 한다.
상기 언급된 바와 같이, 다수의 고정된 부분들을 가짐으로써, 정렬의 개선된 평가가 가능하다. 다수의 고정된 부분들(334a, 334b)은 오정렬이 회전 또는 스큐로 인한 것일 때, 단일 고정된 부분(334)에 비해 유리할 수 있다. 예를 들면, 정렬을 평가하기 위해 다수의 고정된 부분들(334a, 334b)을 사용함으로써, 평가는 2개의 방향들의 선형 정렬 및/또는 회전 및/또는 스큐와 같은 다수의 정렬 자유도들에 대한 정보를 포함할 수 있다. 예를 들면, 각각의 다수의 고정된 부분(334a, 334b)의 평가는 차 패턴의 상이한 각각의 측정치, 또는 차의 상이한 부호와 같은 상이한 각각의 평가 결과를 포함할 수 있다. 다수의 고정된 부분들(334a, 334b)로부터의 차 패턴들을 분석함으로써, 다수의 차 패턴들의 상이한 측정치들 및/또는 부호들에 기초하여 결론들을 도출하는 것이 가능하다. 예를 들면, 중심선의 상이한 측면들에 위치된 2개의 고정된 부분들로부터 상이한 패턴의 상이한 부호들은 회전으로 인해 오정렬이 발생했음을 나타낼 수 있다. 따라서, 각각의 다수의 고정된 부분(334a, 334b)의 상이한 각각의 측정치들의 조합된 평가는 단일 고정된 부분의 평가와 비교하여 오정렬의 평가를 개선할 수 있다. 상기 언급된 바와 같이, 많은 작은 고정된 부분들(334a, 334b)을 가짐으로써, 복잡한 오정렬 오차들은 덜 복잡한 각각의 고정된 부분(334a, 334b)에서 선형 병진 오정렬을 평가하는 것에 기초하여 평가될 수 있다.
게다가, 회전 오정렬들에 대한 것과 같은 일부 오정렬들에 대해, 본 명세서의 실시예들로 결정될 수 있는 가장 작은 오정렬 오차의 크기는 평가를 위해 사용된 픽셀들 사이의 거리에 의존할 수 있다. 예를 들면, 결정될 수 있는 가장 작은 오정렬 오차는 제 1 고정된 부분(334a)과 제 2 고정된 부분(334b) 사이의 거리에 의존할 수 있다. 시나리오에서, 작은 회전 예를 들면, 0,1도가 가정된다.
정적 부분들의 크기가 그것이 다수 또는 단일 고정된 부분들이든 예를 들면, 이미지 프로세싱 디바이스의 프로세싱 능력들의 제한들로 인해 특정 크기 제한으로 제한된다고 또한 가정된다. 예를 들면, 고정된 부분들(334a, 334b)의 크기는 16x16 픽셀들로 제한될 수 있다. 따라서, 각각의 고정된 부분(334a, 334b)은 16x16 픽셀들을 포함할 수 있다. 이 시나리오에서, 단일 고정된 부분(334) 대신에 그들 사이에 일부 거리를 갖는 다수의 고정된 부분들(334a, 334b)을 사용하는 큰 장점이 존재한다. 다수의 고정된 부분들(334a, 334b) 사이의 거리는 원래 이미지 프레임들(311a, 311b, 312a, 312b) 및 사용된 다수의 고정된 부분들(334a, 334b)의 수에 기초하여 선택될 수 있다. 예를 들면, 거리는 다수의 고정된 부분들(334a, 334b)이 분산되는 영역이 최대화되도록 선택될 수 있다.
16x16 픽셀들의 단일 고정된 부분과의 0,1도 회전 오정렬을 찾기 위해, 본 명세서의 실시예들은 단일 고정된 부분(334) 내에서 대략 백분의 몇 픽셀들(몇 1/100 픽셀들) 정도의 오정렬을 검출할 필요가 있을 수 있다. 대신에, 다수의 고정된 부분들(334a, 334b) 사이에 500 픽셀들의 거리가 존재하는 경우, 본 명세서의 실시예들은 다수의 고정된 부분들(334a, 334b) 사이에 대략 1 픽셀 정도의 오정렬을 검출할 필요가 있을 수 있다. 다수의 고정된 부분들(334a, 334b) 사이의 오정렬의 검출은 2개의 고정된 부분들(334a, 334b) 사이의 절대 병진 오차 차를 비교함으로써 수행될 수 있다. 이러한 병진 오차를 결정하는 방법은 동작(406)에서 하기에 간략하게 설명될 것이다. 게다가, 다수의 고정된 부분들(334a, 334b)을 사용함으로써, 정렬 품질을 평가할 때 차 패턴들의 통계적 측정치들이 사용될 수 있으며, 이는 잡음으로부터의 영향을 감소시킬 것이다.
동작(405)
제 1 정렬의 평가는 제 1 스티칭된 프레임(321) 및 제 2 스티칭된 프레임(322)에 기초한 차 패턴에 기초한다. 이미지 프로세싱 디바이스(110)는 제 1 정렬을 평가하기 위해 차 패턴을 얻을 수 있다. 이미지 프로세싱 디바이스(110)는 차분 패턴을 산출함으로써 차 패턴을 얻을 수 있다.
차 패턴은 제 1 스티칭된 프레임(321) 및 제 2 스티칭된 프레임(322)의 대응하는 픽셀들의 값들에 기초하여 산출된다. 대응하는 픽셀들은 제 1 및 제 2 스티칭된 이미지 프레임들(321, 322)에서 동일한 픽셀 위치에 관한 것이다. 제 1 스티칭된 프레임(321) 및 제 2 스티칭된 프레임(322)의 픽셀들은 각각의 제 1 및 제 2 스티칭된 이미지 프레임들(321, 322)에서 제 1 및 제 2 혼합 영역들(331a, 331b)의 적어도 하나의 고정된 부분(334) 내에 포함된다. 따라서, 차 패턴은 적어도 하나의 고정된 부분(334)에 기초한다.
일부 실시예들에서, 차 패턴은 제 1 스티칭된 프레임(321) 및 제 2 스티칭된 프레임(322)의 대응하는 픽셀들의 값들 사이의 차에 기초하여 산출된다.
일부 다른 실시예들에서, 차 패턴은 제 1 스티칭된 프레임(321) 및 제 2 스티칭된 프레임(322)의 대응하는 픽셀들의 가중된 값들 사이의 차에 기초하여 산출된다.
차 패턴은 혼합 영역들(331a, 331b)의 적어도 하나의 고정된 부분(334)의 픽셀 차의 측정치를 포함할 수 있다. 즉, 픽셀 차의 측정치는 제 1 혼합 영역(331a)과 제 2 혼합 영역(331b) 사이의 차의 측정치일 수 있다.
일부 실시예들에서, 픽셀 차의 측정치는 제 1 스티칭된 프레임(321) 및 제 2 스티칭된 프레임(322)의 대응하는 픽셀들의 값들에 기초한 차에 기초한다. 예를 들면, 픽셀 차의 측정치는 제 1 스티칭된 프레임(321) 및 제 2 스티칭된 프레임(322)의 대응하는 픽셀들의 값들 사이의 차에 기초할 수 있다. 제 1 스티칭된 프레임(321) 및 제 2 스티칭된 프레임(322)의 대응하는 픽셀들의 값들 사이의 차는 가중된 값들 사이의 차일 수 있다. 즉, 픽셀 차의 측정치는 제 1 스티칭된 프레임(321) 및 제 2 스티칭된 프레임(322)의 대응하는 픽셀들의 가중된 값들에 기초할 수 있다.
제 1 정렬의 평가가 원래 이미지 프레임들(311a, 311b, 312a, 312b)의 재구성을 포함하는 일부 다른 실시예들에서, 재구성은 픽셀 차의 측정치에 기초할 수 있다. 이러한 실시예들에 대해, 제 1 정렬의 평가는 또한, 적어도 하나의 고정된 부분(334) 내의 제 1 이미지 프레임(311a) 및 또 다른 제 1 이미지 프레임(311b)의 각각의 재구성의 대응하는 픽셀들의 값들 사이의 차에 기초하는 또 다른 차 패턴에 기초할 수 있다.
상기 언급된 바와 같이, 제 1 정렬의 평가는 또한, 원래 이미지 프레임들의 특징 매칭(feature matching)에 기초할 수 있다. 일부 실시예들에서, 또 다른 차 패턴은 특징 매칭에 기초할 수 있다. 예를 들면, 픽셀 차의 또 다른 측정치는 제 1 이미지 프레임(311a) 및 또 다른 제 1 이미지 프레임(311b)의 각각의 재구성의 대응 픽셀들의 값들 사이의 차에 기초할 수 있다. 상기 픽셀 차를 산출하는 모든 예들에 대해, 픽셀의 차의 측정치는 다음을 포함할 수 있다.
Figure pat00001
예컨대, 원래 이미지 프레임들(311a, 311b, 312a, 312b)의 원래 픽셀 값들을 위해 사용된 동일한 범위 내의 예컨대, 범위(0 내지 255) 내의 픽셀 차의 크기를 설명하는 값. 픽셀 차의 크기는 예를 들면, 몇몇 정렬들을 평가할 때, 또는 즉, 정렬 파라미터의 몇몇 세트들을 평가할 때 사용될 수 있다. 그 다음, 상이한 정렬들의 크기들이 비교될 수 있고, 가장 작은 픽셀 차가 선택될 수 있다.
Figure pat00002
예컨대, 픽셀 차의 크기 및 방향 예컨대, 어느 방향에 픽셀 차의 증가가 존재하는지를 설명하는 벡터. 이러한 실시예들은 또한 동작(408)에서 하기에 설명되는 단일 차 패턴으로부터 적합한 정렬 파라미터들을 찾기 위해 신경망과 함께 사용하되기에 매우 적합하다.
Figure pat00003
제 1 및 제 2 스티칭된 이미지 프레임들(321, 322)의 단일 픽셀 값들의 차 예컨대, 픽셀 차의 측정치는 각각의 픽셀에 대한 픽셀 차의 각각의 측정치를 포함할 수 있다. 예를 들면, 픽셀 차의 측정치는 제 1 픽셀에 대한 3의 값 및 제 2 픽셀에 대한 5의 값을 포함할 수 있고, 다른 픽셀들의 픽셀 차의 측정치는 제로 차를 야기한다.
Figure pat00004
가중된 픽셀 값들에 기초한 차.
Figure pat00005
고정된 부분(334)에 대한 제 1 및 제 2 스티칭된 이미지 프레임들(321, 322)의 픽셀 차의 평균과 같은 통계적 측정치
Figure pat00006
다수의 고정된 부분들(334a, 334b)에 대한 제 1 및 제 2 스티칭된 이미지 프레임들(321, 322)의 픽셀 차의 평균과 같은 통계적 측정치
Figure pat00007
상기 예들의 임의의 조합
차 패턴은 정렬이 얼마나 양호한지에 대한 측정치로서, 또는 즉 정렬 오차의 측정치로서 동작(406)에서 하기에 사용될 것이다. 상기 언급된 바와 같이, 특정 고정된 부분(334a, 334b)의 차 패턴은 로컬 정렬 오차의 측정치를 결정하기 위해 사용될 수 있다.
동작(406)
이미지 프로세싱 디바이스(110)는 재정렬이 필요한지 또는 아닌지를 결정하기 위해 차 패턴을 평가한다.
일부 제 1 실시예들에서, 이미지 프로세싱 디바이스(110)는 제 1 정렬을 평가하고 그것이 만족스럽지 않으면, 그것은 계속해서 다른 정렬들을 평가한다. 예를 들면, 원래 이미지들을 스티칭된 이미지들에 매핑하기 위한 카메라의 다른 파라미터들이 선택되고 이들 정렬들의 또 다른 평가들이 시행착오 방식으로 수행된다. 예를 들면, 제 1 정렬에 대한 차 패턴은 제 2 정렬과 같은 하나 이상의 또 다른 정렬들에 대한 차 패턴과 비교될 수 있다. 그 다음, 최소 차 패턴을 초래하는 정렬이 선택될 수 있다. 그들 실시예들에 대해, 차 패턴은 2개의 스티칭된 이미지들의 픽셀 값들 사이의 차를 계산함으로써 계산될 수 있다. 이것은 또한, 동작(409)에서 하기에 논의된다.
일부 제 2 실시예들에서, 이미지 프로세싱 디바이스(110)는 제 1 정렬을 평가하고 그 결과에 기초하여 예를 들면, 미리 트레이닝된 신경망을 사용하여 개선된, 바람직하게 최적의 정렬을 결정한다. 예를 들면, 단일 차 패턴과 같은 차 패턴은 차 패턴을 생성하기 위해 사용된 스티칭된 이미지들(321, 322) 중 하나와 함께 신경망에 대한 입력으로 사용된다. 초기 트레이닝 후에, 신경망은 차 패턴 및 스티칭된 이미지들(321, 322)에 기초하여 정렬을 평가할 수 있다. 이것은 또한, 동작(408)에서 하기에 논의된다.
일부 제 3 실시예들에서, 차 패턴은 스티칭된 이미지들(321, 322) 중 하나와 함께, 고정된 부분(334) 내의 원래 이미지들(311a, 311b 또는 312a, 312b)의 각각의 재구성을 계산하기 위해 사용된다. 그 다음, 차 패턴에 기초하여 제 1 정렬을 평가하는 것은 차 패턴에 기초하고 또한, 제 1 스티칭된 프레임(321) 또는 제 2 스티칭된 프레임(322)의 대응하는 픽셀들의 값들 중 어느 하나에 기초하여 제 1 이미지 프레임(311a) 및 또 다른 제 1 이미지 프레임(311b)의 각각의 재구성을 산출하는 것을 포함한다. 산출은 적어도 하나의 고정된 부분(334) 내의 픽셀들에 대해 수행된다. 평가는 각각의 재구성을 서로 비교하는 것을 더 포함할 수 있다. 즉, 각각의 재구성은 혼합 영역들(331a, 331b) 내의 제 1 스티칭된 프레임(321) 및 제 2 스티칭된 프레임(322)의 대응하는 픽셀 값들에 기초하고 제 1 혼합 함수(333a) 및 제 2 혼합 함수(333b)에 또한 기초한다. 고정된 부분(334)이 제 1 이미지 프레임(311a)과 제 2 이미지 프레임(312a) 사이에서 불변하다고 가정되기 때문에, 이미지들의 제 1 스트림(310a)의 재구성된 제 1 이미지 프레임은 이미지들의 제 1 스트림(310a)의 재구성된 제 2 이미지 프레임과 동일한 픽셀 값들을 포함해야 한다. 이것은 제 1 정렬의 평가가 또한, 제 2 이미지 프레임(312a) 및 또 다른 제 2 이미지 프레임(312b)의 각각의 재구성의 대응하는 픽셀들의 값들에 기초할 수 있다는 것을 의미한다.
동작(405)에서 상기 언급된 바와 같이, 원래 이미지 프레임들을 재구성하기 위해 사용된 차 패턴은 제 1 스티칭된 프레임(321) 및 제 2 스티칭된 프레임(322)의 대응하는 픽셀들의 가중된 값들 사이의 차에 기초하여 산출될 수 있다.
재구성된 이미지 프레임들의 픽셀들의 값들에 또한 기초하여 제 1 정렬을 평가할 때의 장점은 이러한 평가가 예컨대, 제 1 및 또 다른 제 1 이미지들(311a, 311b), 또는 제 2 및 또 다른 제 2 이미지들(312a, 312b)을 비교하고/거나 매칭함으로써, 이들 원래 이미지들 사이의 차들 및/또는 유사성들을 추출하고 이들 차들 및/또는 유사성들을 평가하기 위한 임의의 알려진 방법에 기초할 수 있다는 것이다. 상기 언급된 바와 같이, 이러한 매칭 방법들은 SSD, NCC, 또는 SIFT를 포함할 수 있다. 이러한 알고리즘들은 또한, 제 1 정렬이 충분히 양호하지 않은 경우 정렬을 조정하기 위해 사용될 수 있다.
다음의 예는 원래 이미지들(311a, 311b 또는 312a, 312b)의 재구성에 기초하여 제 1 정렬을 평가하는 방법의 상세들을 약술할 것이다. R1을 제 1 혼합 영역(331a)의 고정된 부분(334)에서 제 1 이미지 프레임(311a)의 우측 픽셀의 값이라고 하자. L1은 제 1 혼합 영역(331a)의 고정된 부분(334)에서 또 다른 제 1 이미지 프레임(311b)의 대응하는 좌측 픽셀의 값이다. 다음은 상기 설명된 바와 같이 알파 혼합으로 혼합하는 것으로 가정한다. a는 우측 픽셀 값(R1)에 대한 혼합 가중치이다. (a-1)은 좌측 픽셀 값(L1)에 대한 혼합 가중치이다. C1은 픽셀 값들(R1 및 L1)에 대응하는 제 1 스티칭된 이미지 프레임(321)의 픽셀의 값이다. C2는 픽셀 값들(R2 및 L2)에 대응하는 제 2 스티칭된 이미지 프레임(322)의 픽셀의 값이고, 여기서 R2는 제 2 혼합 영역(331b)의 고정된 부분(334)에서 제 2 이미지 프레임(312a)의 우측 픽셀의 값이고 L2는 제 2 혼합 영역(331b)의 고정된 부분(334)에서 또 다른 제 2 이미지 프레임(312b)의 대응하는 좌측 픽셀의 값이다. 혼합 가중치가 제 2 이미지 프레임(312a)에 대해 +10%만큼 조정되어 R2에 대해 (a+0,1)이고 혼합 가중치가 또 다른 제 2 이미지 프레임(312b)에 대해 대응하여 -10%만큼 조정되어 L2에 대해 (1-a-0,1)임이 또한 가정된다. 픽셀 위치들이 고정된 부분(334)에 포함되기 때문에, R1 == R2, 및 L1 == L2라고 가정될 수 있다. 이것은 다음의 선형 방정식 시스템을 야기한다.
a*R1 + (1-a)*L1 = C1(제 1 혼합)
(a+0.1)*R1 + (0.9-a)*L1 = C2(제 2 혼합)
방정식 시스템을 풂으로써, R1 및 L1은 고정된 부분(334)의 각각의 픽셀에 대해 발견될 수 있다. 혼합 가중치(a)는 픽셀 위치의 함수가 될 것이다. 이것은 고정된 부분(334) 내에서 원래 혼합된 이미지들의 픽셀들의 값들을 산출하거나 재구성하는 것이 가능함을 의미한다. R1 및 L1을 산출하는 것은 제 1 및 제 2 스티칭된 이미지 프레임들(321, 322)의 대응하는 픽셀 값들에 기초한 차 패턴에 기초한다. 차 패턴은 제 1 스티칭된 프레임(321) 및 제 2 스티칭된 프레임(322)의 대응하는 픽셀들의 값들 사이의 차에 기초하여 산출될 수 있다. 예를 들면, R1 및 L1은 C1=a*R1+(1-a)*L1로 주어진 제 1 스티칭된 이미지 프레임(321)의 픽셀들의 값들과 조합된 차 이미지(C1-C2 = 0,1*(R1-L1))에 기초하여 산출될 수 있다. 공식으로부터 볼 수 있는 바와 같이, 차 값(C1-C2)은 다른 모든 픽셀 위치들에 대해서도 동일한 공식에 의해 설명된다. 알파 혼합이 R1 및 L1에 직접적으로 의존하는 차 이미지(C1-C2)를 야기하기 때문에, 이 혼합 방법을 사용하여 상기 내용에 기초하여 고정된 부분(334) 내의 원래 이미지들을 정확하게 재구성하는 것이 가능하다.
제 1 및 제 2 혼합 영역들(331a, 331b) 둘 모두에 의해 커버된 영역은 원래 이미지 프레임들을 산출하기 위해 사용될 수 있다. 재구성을 위해 상기 언급된 영역을 사용하는 장점은 원래 이미지 프레임들이 이 영역 내에서 동일한 정밀도로 재구성될 것이라는 것이다.
상기 언급된 바와 같이, 원래 이미지들을 재구성함으로써, SSD와 같은 특징 식별, 설명 및 매칭을 위한 알려진 알고리즘들은 대응하는 원래 이미지 프레임들의 특징들을 매칭시키기 위해 구체적으로, 고정된 부분들(334a, 334b)에 대응하는 원래 이미지 프레임들의 부분들의 특징들을 매칭시키기 위해 사용될 수 있다. 예를 들면, 제 1 이미지 프레임(311a)의 제 1 특징은 또 다른 제 1 이미지 프레임(311b)의 대응하는 또 다른 제 1 특징에 매칭될 수 있다. 마찬가지로, 제 2 이미지 프레임(311a)의 제 2 특징은 또 다른 제 2 이미지 프레임(312a)의 대응하는 또 다른 제 2 특징에 매칭될 수 있다. 재구성된 원래 이미지들에 기초하여 정렬을 평가하는 또 다른 예에서, 정렬 오차는 특정한 고정된 부분(334a)에 대해 제 1 방향으로 +2 픽셀들 및 제 2 수직 방향으로 -3 픽셀들일 수 있다. 고정된 부분들(334a, 334b)에 대한 가능한 평균화 후에, 정렬 오차의 도함수 또는 미분 방향으로 정렬의 작은 조정이 취해질 수 있다. 새로운 정렬의 평가는 그 다음, 오래된 정렬과 비교될 수 있다.
따라서, 상기 모든 실시예들에 대해, 이미지 프로세싱 디바이스(110)는 제 1 스티칭된 프레임(321) 및 제 2 스티칭된 프레임(322)의 픽셀들의 값들에 기초하여 산출된 차 패턴에 기초하여 제 1 정렬을 평가한다. 상기 언급된 바와 같이, 동작(405)을 설명할 때, 차 패턴은 적어도 하나의 고정된 부분(334)에 기초한다. 즉, 제 1 스티칭된 프레임(321) 및 제 2 스티칭된 프레임(322)의 픽셀들은 각각의 제 1 및 제 2 스티칭된 이미지 프레임들(321, 322)에서 제 1 및 제 2 혼합 영역들(331a, 331b)의 적어도 하나의 고정된 부분(334) 내에 포함된다.
본 명세서의 일부 실시예들에서, 이미지 프로세싱 디바이스(110)는 차 패턴을 산출함으로써 제 1 정렬을 평가한다. 예를 들면, 이미지 프로세싱 디바이스(110)는 차 패턴에 기초하여 제 1 정렬의 정렬의 정도를 결정함으로써 제 1 정렬을 평가할 수 있다. 정렬의 정도는 정렬이 얼마나 양호한지의 측정치이다. 즉, 정렬의 정도는 정렬 품질의 측정치이거나, 대안적으로 오정렬 또는 오정렬 오차일 수 있다.
차 패턴에 기초하여 제 1 정렬을 평가하는 것은 차 패턴을 임계 값과 또는 미리 결정된 차 패턴과 비교하는 것을 더 포함할 수 있다. 예를 들면, 임계 값은 고정된 부분(334)에 걸친 제 1 및 제 2 스티칭된 이미지 프레임들(321, 322)의 픽셀 차의 임계 평균 값일 수 있다. 임계 값은 스티칭된 이미지(321, 322)의 잡음 레벨과 관련될 수 있다. 즉, 차 패턴이 임계 값을 초과하는 경우, 차 패턴이 단지 잡음이 아니라고 결정될 수 있다.
일부 실시예들에서, 제 1 정렬을 평가하는 것은 정렬의 정도와 같은, 정렬 품질의 측정치를 산출하는 것을 포함하며, 이는 차 패턴의 감소에 따라 증가된다. 차 패턴의 감소는 픽셀 차의 절대 값의 감소에 대응할 수 있다.
정렬의 정도는 차 패턴을 임계 값과 비교함으로써 결정될 수 있다. 예를 들면, 차 패턴이 제로보다 크면, 정렬이 완벽하지 않다고 결정된다. 그 다음, 방법은 새로운 차 패턴에 기초하여 예컨대, 새로운 정렬의 정렬의 정도를 결정함으로써 새로운 정렬을 선택하고 새로운 정렬을 평가하는 것으로 계속될 수 있다. 이것은 동작(407)에서 하기에 설명된다.
그러나, 차 패턴이 제로이거나, 제로에 가까우면, 정렬이 잘 된 것으로 결정될 수 있고, 평가가 완료된다.
상기 언급된 바와 같이, 이미지들이 잘 정렬되어 있으면, 혼합의 변동은 결과적인 스티칭된 이미지의 고정된 부분에 최소한의 영향을 미쳐야 한다. 따라서, 차 패턴은 스티칭되는 이미지들의 정렬 또는 오정렬의 정도의 양호한 측정치, 정렬 품질, 또는 오정렬의 측정치이다.
정적 부분(334)의 차 패턴에 대한 정렬의 정도 또는 품질의 평가 또는 결정에 기초하는 장점은 정확하게 정렬된 스티칭된 이미지의 평가 또는 결정이 나머지 비디오 시스템 및/또는 최종 사용자에 의해 인지되지 않을 것이라는 것이고, 이는 완벽하게 정렬된 이미지들에 대해 차 패턴이 제로이기 때문이다. 이미지들이 완벽하게 정렬되지 않으면, 스티칭된 이미지는 평가에 의해 약간 영향을 받을 것이다. 그러나, 완벽하게 정렬되지 않은 이미지들의 스티칭은 어쨌든 오정렬로 인한 스티칭된 오차들이 있는 스티칭된 이미지를 생성할 것이고 재정렬에 대한 요구가 존재한다. 본 명세서의 실시예들을 사용하여, 잘 정렬된 이미지들에 영향을 미치지 않고 정렬을 평가하기 위해 별개의 비디오 스트림을 사용하지 않고 정렬되지 않은 이미지들을 재정렬하는 것이 가능하다.
본 명세서의 일부 실시예들에서, 오정렬 오차의 산출 또는 결정은 차 패턴에 기초한다. 동작(405)에서 상기 언급된 바와 같이, 픽셀 차의 측정치는 예를 들면, 방향 정보를 포함하는 벡터 값을 포함할 수 있다. 일부 실시예들에서, 산출 및/또는 결정은 신경망에 의해 수행될 수 있다. 예를 들면, 미리 트레이닝된 신경망은 혼합 영역(331a)에서 차 패턴들 및 원래의 스티칭된 이미지(321, 322)에 기초하여 정렬 오차의 측정치를 결정하기 위해 사용될 수 있다. 예를 들면, 미리 트레이닝된 신경망은 2개의 입력 텐서들을 사용할 수 있고, 하나는 스티칭된 이미지(321, 322)를 위한 것이고, 하나는 차 패턴 또는 즉, 차 이미지를 위한 것이다. 결정된 정렬 오차에 기초하여, 개선된 정렬은 알려진 방법들에 따라 결정될 수 있다. 예를 들면, 스티칭된 이미지들(321, 322)에 대해, 예컨대, 2개의 방향들의 선형 정렬 오차들 및/또는 회전 오차들 및/또는 스큐들에 대응하는 상이한 정렬 오차들이 존재할 수 있다. 오정렬 오차의 결정은 오차의 크기 및 이미지의 평면에서의 방향과 같은, 오차의 방향 둘 모두의 결정을 포함할 수 있다. 정렬 오차가 이미지들의 평면에서 특정 축을 따라 선형인 것으로 결정되면, 양 및 정렬 오차에 기초하는 방향으로 스티칭될 이미지들을 선형 조정하는 것이 가능하다. 예를 들면, 정렬 오차가 특정 방향으로 5개의 픽셀들인 경우, 스티칭될 이미지들은 정렬 오차가 사라지도록, 정렬 오차의 반대 방향으로 픽셀들 5개의 픽셀들을 재매핑함으로써 재정렬될 수 있다.
본 명세서의 실시예들의 장점은 정렬의 평가가 스티칭된 이미지 스트림(310c)에 내장되는 정보에 기초한다는 것이다. 따라서, 평가를 위해 어떠한 별개의 이미지 스트림도 필요하지 않는다.
본 명세서의 실시예들의 또 다른 장점은 예컨대, 스티칭된 및 원래 이미지들을 비교하는 대신에 혼합을 변경함으로써 스티칭된 이미지들로부터 예컨대, 더 적은 수의 이미지들을 사용하여 오정렬 오차를 결정함으로써 정렬을 평가하는 것이 가능하다는 것이다.
여전히 또 다른 장점은 복잡한 정렬 오차들이 각각의 고정된 부분(334)에서 더 단순한 선형 정렬 오차들에 의해 모델링될 수 있다는 것이다.
실시예들이 각각의 고정된 부분(334a, 334b) 내에서 로컬 병진 오차들을 결정하는 것으로서 상기 설명되었지만, 실시예들은 또한, 회전 정렬 오차들과 같은 다른 정렬 오차들에 적용가능하다. 예를 들면, 회전 오차는 각각의 고정된 부분(334a, 334b) 내의 많은 로컬 병진 오차들에 기초하여 결정될 수 있다. 따라서, 문구 오차 방향은 또한, 회전 방향을 포함한다.
동작(407)
차 패턴이 임계 값보다 초과이면, 방법은 제 2 정렬을 결정하거나 선택하는 단계를 더 포함할 수 있다. 제 2 정렬의 결정 또는 선택은 또 다른 평가 없이 제 2 정렬을 사용하기 위해, 또는 제 1 정렬이 평가될 때 대응하는 방식으로 제 2 정렬을 평가하기 위해 행해질 수 있다. 그 다음, 상기 동작(401a 및 401b)은 제 2 정렬에 대해 대응하여 반복될 수 있다. 따라서, 이미지 프로세싱 디바이스(110)는 제 2 정렬에 따라 제 1 이미지 프레임(311a) 및 또 다른 제 1 이미지 프레임(311b)을 정렬하고 제 2 정렬에 따라 제 2 이미지 프레임(312a) 및 또 다른 제 2 이미지 프레임(312b)을 정렬할 수 있다. 정렬은 예컨대, 제 2 정렬의 정렬의 정도를 결정함으로써 제 2 정렬을 평가하기 위해 행해질 수 있다.
그러나, 방해들 없이 비디오 네트워크 시스템(250)에서 상기 이미지들 및 이미지 스트림들을 사용할 수 있도록 하기 위해, 제 1 이미지 프레임(311a) 및 또 다른 제 1 이미지 프레임(311b)은 일반적으로, 제 1 정렬을 위해 사용된 것과 동일하지 않다. 대신에, 제 2 정렬의 평가를 위해 새로운 이미지 프레임들이 사용될 수 있다. 이에 대응하여, 제 2 정렬의 평가를 위해 사용된 제 2 이미지 프레임(312a) 및 또 다른 제 2 이미지 프레임(312b)은 일반적으로, 제 1 정렬을 위해 사용된 대응하는 프레임들과 동일하지 않을 것이다.
동작(408)
일부 실시예들에서, 이미지 프로세싱 디바이스(110)는 제 1 정렬의 평가에 기초하여 예컨대, 차 패턴 또는 그의 측정치에 기초하여 복수의 정렬들 중에서 하나의 정렬을 선택한다. 일부 다른 실시예들에서, 이미지 프로세싱 디바이스(110)는 제 1 정렬의 평가에 기초하여 예컨대, 차 패턴 또는 그의 측정치에 기초하여 정렬을 결정한다.
정렬을 선택하는 것은 센서들(301a, 301b)의 장착 위치들과 관련된 파라미터들과 같은, 비디오 카메라(325)의 상기 언급된 파라미터들을 선택하는 것을 포함할 수 있다. 게다가, 정렬의 선택은 신경망 등에 의해 수행될 수 있다. 이러한 선택이 차 패턴에 기초하여 구현되는 방법은 본 명세서의 실시예들의 범위를 벗어난다.
중간 동작으로서, 평가는 제 1 정렬의 결정된 정렬의 정도에 기초할 수 있고, 이는 결과적으로, 차 패턴 또는 그의 측정치에 기초할 수 있다. 예를 들면, 이미지 프로세싱 디바이스(110)가 제 1 정렬의 정렬의 품질 또는 정도가 예컨대, 차 패턴이 임계치 미만이라고 결정함으로써 충분히 양호하다고 결정하는 경우, 이미지 프로세싱 디바이스(110)는 복수의 정렬들 중에서 제 1 정렬을 사용하기로 결정할 수 있다. 반면에 이미지 프로세싱 디바이스(110)가 제 1 정렬의 정렬의 정도가 예컨대, 차 패턴이 임계치를 초과한다고 결정함으로써, 충분히 양호하지 않다고 결정하는 경우, 이미지 프로세싱 디바이스(110)는 복수의 정렬들 중에서 제 1 정렬과 상이한 정렬을 사용하기로 결정할 수 있다. 이미지 프로세싱 디바이스(110)는 예를 들면, 대신에 제 2 정렬을 사용하기로 결정할 수 있다.
동작(409)
일부 실시예들에서, 이미지 프로세싱 디바이스(110)는 최적의 정렬을 결정하기 위해 다수의 정렬들을 평가한다. 제 2 정렬이 결정되거나 선택되는 동작(407)과 관련하여 상기 설명된 바와 같이, 상기 동작들(401 내지 406)이 그 다음, 반복될 수 있다. 이에 대응하여, 제 3 정렬 등이 또한 결정되고 평가되며 다른 정렬들과 비교될 수 있다.
예를 들면, 제 2 정렬이 결정되고 선택되었을 때, 이미지 프로세싱 디바이스(110)는 예컨대, 제 2 정렬 및 제 1 혼합 함수(333b)로 얻어진 제 1 스티칭된 이미지 프레임(321), 및 제 2 정렬 및 제 2 혼합 함수로 얻어진 제 2 스티칭된 이미지 프레임(322)의 픽셀들의 값들에 기초하여 산출된 제 2 차 패턴에 기초하여, 제 2 정렬의 정렬의 정도를 결정함으로써 제 2 정렬을 평가할 수 있다. 제 2 정렬의 정렬의 정도의 결정은 상기 동작(406)에 따라 행해질 수 있다. 또 다른 정렬들은 대응하는 방식으로 평가될 수 있다. 일부 실시예들에서, 픽셀 차의 측정치의 산출을 위해 사용된 고정된 부분은 제 1 정렬에 대한 것과 제 2 정렬에 대한 것이 동일하다. 그러나, 적어도 하나의 고정된 부분(334)과 상이한 제 2 고정된 부분과 같은 새로운 고정된 부분은 또한, 픽셀 차의 측정치를 산출하기 위해 사용될 수 있다.
신경망은 혼합의 효과를 평가하고 이미지들의 새로운 정렬들을 반복적으로 테스트 및 평가하여 최상의 정렬 예컨대, 최소 변경과 연관되는 정렬 예컨대, 차 패턴의 가장 작은 측정치를 야기하는 정렬을 찾기 위해 트레이닝될 수 있다.
동작(410)
동작(409)의 상기 설명에 따라 다수의 정렬들이 평가되었다면, 다수의 정렬들 중에 최상의 또는 최적의 정렬을 선택하기 위해 정렬의 선택이 수행될 수 있다. 선택은 각각의 정렬들에 대응하는 다수의 차 패턴들 중에 최소 차 패턴에 기초할 수 있다. 즉, 어떤 차 패턴이 최소인지에 기초한다.
예를 들면, 이미지 프로세싱 디바이스(110)가 제 1 및 제 2 정렬들을 평가했을 때, 이미지 프로세싱 디바이스(110)는 제 1 및 제 2 차 패턴들 중에 최소 차 패턴에 기초하여 제 1 정렬 및 제 2 정렬 중에서 하나의 정렬을 선택할 수 있다.
일부 실시예들에서, 제 1 및 제 2 차 패턴들 중에 최소 차 패턴은 제 1 혼합 영역(331a)과 제 2 혼합 영역(331b) 사이의 최소 차를 포함한다. 즉, 제 1 및 제 2 차 패턴들 중에 최소 차 패턴은 제 1 혼합 영역(331a)의 고정된 부분(334)과 제 2 혼합 영역(331b)의 고정된 부분(334) 사이의 최소 차를 포함할 수 있다. 예를 들면, 모든 고정된 부분들(334a, 334b)에 대한 픽셀 차들의 합, 및/또는 평균 픽셀 차의 합은 각각의 정렬에 대해 비교될 수 있다.
도 5는 정렬(nr)이라고 칭해진, 상이한 정렬 옵션들에 대한 차라고 칭해진 차 패턴의 측정치의 일 예시적인 그래프를 도시한다. 알 수 있는 바와 같이, 정렬 옵션 6은 정렬(nr) 6에 대한 차가 제로이기 때문에, 제로 또는 적어도 매우 작은 오정렬에 대응한다. 다른 정렬 옵션들은 각각 상이한 오정렬들 예를 들면, 이미지 프레임들의 축을 따른 선형 오정렬에 대응한다. 차 패턴의 측정치의 크기가 오정렬에 따라 달라지기 때문에, 차 패턴에 기초하여 가능하게 또한, 오정렬의 방향에 관한 정보에 기초하여 오정렬을 예측하는 것이 가능하다. 방향 정보는 차 패턴들 예컨대, 2개 이상의 정렬들에 기초한 차 패턴들의 도함수들 또는 차들의 산출로부터 얻어질 수 있다.
도 6을 참조하면, 이미지 프로세싱 디바이스(600)의 실시예들의 개략적인 블록도가 도시된다. 이미지 프로세싱 디바이스(600)는 제 1 정렬, 즉 제 1 이미지 센서(301a)로부터의 이미지들의 제 1 스트림(310a) 및 제 2 이미지 센서(301b)로부터의 이미지들의 제 2 스트림(310b)의 정렬을 평가하도록 구성된다. 상기 언급된 바와 같이, 이미지 프로세싱 디바이스(600)는 비디오 카메라(325), 모니터링 카메라, 네트워크 비디오 레코더, 또는 무선 통신 디바이스와 같은 이미지 캡쳐링 디바이스(110)를 포함할 수 있다.
이미지 프로세싱 디바이스(600)는 본 명세서에서 설명된 방법들을 수행하기 위한 수단과 같은 프로세싱 모듈(601)을 포함할 수 있다. 수단은 하나 이상의 하드웨어 모듈들 및/또는 하나 이상의 소프트웨어 모듈들의 형태로 구현될 수 있다.
이미지 프로세싱 디바이스(600)는 메모리(602)를 더 포함할 수 있다. 메모리는 예컨대, 컴퓨터 프로그램(603)의 형태로, 지시들을 포함하거나 저장하는 것과 같이 포함할 수 있고, 이들은 이미지 프로세싱 디바이스(600)에서 실행될 때 이미지 프로세싱 디바이스(600)로 하여금 ~의 방법을 수행하게 하는 컴퓨터 판독가능한 코드 유닛들을 포함할 수 있다.
본 명세서의 일부 실시예들에 따르면, 이미지 프로세싱 디바이스(600) 및/또는 프로세싱 모듈(601)은 하나 이상의 프로세서들을 포함할 수 있는 일 예시적인 하드웨어 모듈로서 프로세싱 회로(604)를 포함한다. 그에 따라, 프로세싱 모듈(601)은 프로세싱 회로(604)의 형태로 구현되거나, 그에 의해 '실현'될 수 있다. 지시들은 프로세싱 회로(604)에 의해 실현가능할 수 있고, 이에 의해 이미지 프로세싱 디바이스(600)는 도 4의 방법들을 수행하도록 동작한다. 또 다른 예로서, 이미지 프로세싱 디바이스(600) 및/또는 프로세싱 회로(604)에 의해 실행될 때 지시들은 이미지 프로세싱 디바이스(600)로 하여금 도 4에 따른 방법을 수행하게 할 수 있다.
상기 내용에 비추어, 하나의 예에서, 제 1 정렬 즉, 제 1 이미지 센서(301a)로부터의 이미지들의 제 1 스트림(310a) 및 제 2 이미지 센서(301b)로부터의 이미지들의 제 2 스트림(310b)의 정렬을 평가하기 위한 이미지 프로세싱 디바이스(600)가 제공된다. 다시, 메모리(602)는 상기 프로세싱 회로(604)에 의해 실행가능한 지시들을 포함하고, 이에 의해 이미지 프로세싱 디바이스(600)는 도 4에 따른 방법을 수행하기 위해 동작한다:
제 1 정렬에 따라 제 1 이미지 센서(301a)로부터의 이미지들의 제 1 스트림(310a)의 제 1 이미지 프레임(311a) 및 제 2 이미지 센서(301b)로부터의 이미지들의 제 2 스트림(310b)의 또 다른 제 1 이미지 프레임(311b)을 정렬하고, 제 1 정렬에 따라 이미지들의 제 1 스트림(310a)의 제 2 이미지 프레임(312a) 및 이미지들의 제 2 스트림(310b)의 또 다른 제 2 이미지 프레임(312b)을 정렬하는 것.
제 1 혼합 함수에 따라 제 1 및 또 다른 제 1 이미지 프레임들(311a, 311b)의 제 1 혼합 영역(331a)에서 정렬된 제 1 이미지 프레임(311a) 및 또 다른 제 1 이미지 프레임(311b)을 혼합함으로써 제 1 스티칭된 이미지 프레임(321)을 얻고, 제 1 혼합 함수와 상이한 제 2 혼합 함수에 따라 제 2 및 또 다른 제 2 이미지 프레임들(312a, 312b)의 제 2 혼합 영역(331b)에서 정렬된 제 2 이미지 프레임(312a) 및 또 다른 제 2 이미지 프레임(312b)을 혼합함으로써 제 2 스티칭된 이미지 프레임(322)을 얻는 것.
제 1 스티칭된 프레임(321) 및 제 2 스티칭된 프레임(322)의 픽셀들의 값들에 기초하여 산출된 차 패턴에 기초하여 제 1 정렬을 평가한다. 차 패턴은 각각의 제 1 및 제 2 스티칭된 이미지 프레임들(321, 322)에서 제 1 및 제 2 혼합 영역들(331a, 331b)의 적어도 하나의 고정된 부분(334)에 기초한다.
이미지 프로세싱 디바이스(600)는 또한, 도 4와 관련하여 상기 설명된 상세한 실시예들에 따른 방법들을 수행하도록 동작할 수 있다.
도 6은 또한, 바로 상기 설명된 바와 같이 컴퓨터 프로그램(603)을 포함하는 캐리어(605), 또는 프로그램 캐리어를 도시한다. 캐리어(605)는 전자 신호, 광학 신호, 무선 신호 및 컴퓨터 판독가능한 매체 중 하나일 수 있다.
일부 실시예들에서, 이미지 프로세싱 디바이스(600) 및/또는 프로세싱 모듈(601)은 예시적인 하드웨어 모듈들로서, 정렬 모듈(610), 획득 모듈(620), 평가 모듈(630), 및 선택 모듈(640) 중 하나 이상을 포함할 수 있다. 다른 예들에서, 상기 언급된 예시적인 하드웨어 모듈들 중 하나 이상은 하나 이상의 소프트웨어 모듈들로서 구현될 수 있다.
게다가, 프로세싱 모듈(601)은 입력/출력 유닛(606)을 포함할 수 있다. 일 실시예에 따르면, 입력/출력 유닛(606)은 제 1 이미지 프레임(311a) 및 또 다른 제 1 이미지 프레임(311b)과 같은 상기 설명된 이미지 프레임들을 캡쳐하기 위해 구성된 제 1 및 제 2 이미지 센서들(301a, 301b)을 포함할 수 있다.
그에 따라, 이미지 프로세싱 디바이스(600)는 제 1 이미지 센서(301a)로부터의 이미지들의 제 1 스트림(310a) 및 제 2 이미지 센서(301b)로부터의 이미지들의 제 2 스트림(310b)의 정렬을 평가하기 위해 구성된다.
따라서, 상기 설명된 다양한 실시예들에 따르면, 이미지 프로세싱 디바이스(600) 및/또는 프로세싱 모듈(601) 및/또는 정렬 모듈(6610)은 제 1 정렬에 따라 제 1 이미지 센서(301a)로부터의 이미지들의 제 1 스트림(310a)의 제 1 이미지 프레임(311a) 및 제 2 이미지 센서(301b)로부터의 이미지들의 제 2 스트림(310b)의 또 다른 제 1 이미지 프레임(311b)을 정렬하고, 제 1 정렬에 따라 이미지들의 제 1 스트림(310a)의 제 2 이미지 프레임(312a) 및 이미지들의 제 2 스트림(310b)의 또 다른 제 2 이미지 프레임(312b)을 정렬하도록 구성된다.
이미지 프로세싱 디바이스(600) 및/또는 프로세싱 모듈(601) 및/또는 정렬 모듈(610)은 또한, 예컨대, 제 2 정렬의 정렬의 정도를 결정함으로써 제 2 정렬을 평가하기 위해, 제 2 정렬에 따라 제 1 이미지 프레임(311a) 및 또 다른 제 1 이미지 프레임(311b)을 정렬하고, 제 2 정렬에 따라 제 2 이미지 프레임(312a) 및 또 다른 제 2 이미지 프레임(312b)을 정렬하도록 구성될 수 있다.
이미지 프로세싱 디바이스(600) 및/또는 프로세싱 모듈(601) 및/또는 획득 모듈(620)은 제 1 혼합 함수(333a)에 따라 제 1 및 또 다른 제 1 이미지 프레임들(311a, 311b)의 제 1 혼합 영역(331a)에서 정렬된 제 1 이미지 프레임(311a) 및 또 다른 제 1 이미지 프레임(311b)을 혼합함으로써 제 1 스티칭된 이미지 프레임(321)을 얻고, 제 1 혼합 함수(333a)와 상이한 제 2 혼합 함수(333b)에 따라 제 2 및 또 다른 제 2 이미지 프레임들(312a, 312b)의 제 2 혼합 영역(331b)에서 정렬된 제 2 이미지 프레임(312a) 및 또 다른 제 2 이미지 프레임(312b)을 혼합함으로써 제 2 스티칭된 이미지 프레임(322)을 얻도록 구성된다.
이미지 프로세싱 디바이스(600) 및/또는 프로세싱 모듈(601) 및/또는 평가 모듈(630)은 제 1 스티칭된 프레임(321) 및 제 2 스티칭된 프레임(322)의 픽셀들의 값들에 기초하여 산출된 차 패턴에 기초하여 제 1 정렬을 평가하도록 구성될 수 있다. 차 패턴은 각각의 제 1 및 제 2 스티칭된 이미지 프레임들(321, 322)에 있는 제 1 및 제 2 혼합 영역들(331a, 331b)의 적어도 하나의 고정된 부분(334)에 기초한다.
평가는 차 패턴에 기초하여 제 1 정렬의 정렬의 정도를 결정함으로써 수행될 수 있다.
차 패턴은 제 1 스티칭된 프레임(321) 및 제 2 스티칭된 프레임의 대응하는 픽셀들의 값들 사이의 차에 기초하여 산출될 수 있다. 일부 다른 실시예들에서, 제 1 스티칭된 프레임(321) 및 제 2 스티칭된 프레임(322)의 대응하는 픽셀들의 가중된 값들 사이의 차.
일부 실시예들에서, 차 패턴에 기초하여 제 1 정렬을 평가하는 것은 차 패턴에 기초하여 및 제 1 스티칭된 프레임(321) 또는 제 2 스티칭된 프레임(322)의 대응하는 픽셀들의 값들 중 어느 하나에 또한 기초하여 적어도 하나의 고정된 부분(334) 내에서 제 1 이미지 프레임(311a) 및 또 다른 제 1 이미지 프레임(311b)의 각각의 재구성을 산출하고 그 다음, 각각의 재구성을 서로 비교하는 것을 포함한다.
이미지 프로세싱 디바이스(600) 및/또는 프로세싱 모듈(601) 및/또는 선택 모듈(640)은 제 1 정렬의 평가에 기초하여, 복수의 정렬들 중에서 하나의 정렬을 선택하도록 구성될 수 있다. 일부 실시예들에서, 이미지 프로세싱 디바이스(600) 및/또는 프로세싱 모듈(601) 및/또는 선택 모듈(640)은 제 1 및 제 2 차 패턴들 중에 최소 차 패턴에 기초하여 제 1 정렬 및 제 2 정렬 중에서 하나의 정렬을 선택하도록 구성된다.
본 명세서에서 사용된 바와 같이, 용어 "모듈"은 하나 이상의 기능 모듈들을 언급할 수 있고, 그들의 각각은 하나 이상의 하드웨어 모듈들 및/또는 하나 이상의 소프트웨어 모듈들 및/또는 조합된 소프트웨어/하드웨어 모듈로서 구현될 수 있다. 일부 예들에서, 모듈은 소프트웨어 및/또는 하드웨어로서 실현된 기능 유닛을 표현할 수 있다.
본 명세서에서 사용된 바와 같이, 용어 "컴퓨터 프로그램 캐리어", "프로그램 캐리어", 또는 "캐리어"는 전자 신호, 광학 신호, 무선 신호, 및 컴퓨터 판독가능한 매체 중 하나를 언급할 수 있다. 일부 예들에서, 컴퓨터 프로그램 캐리어는 전자, 광학 및/또는 무선 신호와 같은 일시적인 전파 신호들을 배제할 수 있다. 따라서, 이들 예들에서, 컴퓨터 프로그램 캐리어는 비 일시적 컴퓨터 판독가능한 매체와 같은 비 일시적 캐리어일 수 있다.
본 명세서에서 사용된 바와 같이, 용어 "프로세싱 모듈"은 하나 이상의 하드웨어 모듈들, 하나 이상의 소프트웨어 모듈들 또는 그들의 조합을 포함할 수 있다. 그것이 하드웨어, 소프트웨어 또는 조합된 하드웨어 소프트웨어 모듈이든 임의의 이러한 모듈은 본 명세서에 개시된 바와 같이 정렬 수단, 획득 수단, 평가 수단, 선택 수단, 등일 수 있다. 일례로서, 표현 "수단"은 도면들과 결부하여 상기 나열된 모듈들에 대응하는 모듈일 수 있다.
본 명세서에서 사용된 바와 같이, 용어 "소프트웨어 모듈"은 소프트웨어 애플리케이션, 동적 링크 라이브러리(DLL), 소프트웨어 구성요소, 소프트웨어 객체, 구성요소 객체 모델(COM)에 따른 객체, 소프트웨어 구성요소, 소프트웨어 기능, 소프트웨어 엔진, 실행가능한 이진 소프트웨어 파일, 등을 언급할 수 있다.
용어들 "프로세싱 모듈" 또는 "프로세싱 회로"는 본 명세서에서 예컨대, 하나 이상의 프로세서들, 주문형 반도체(ASIC), 필드 프로그래밍가능한 게이트 어레이(FPGA) 등을 포함하는 처리 장치를 포함할 수 있다. 프로세싱 회로 등은 하나 이상의 프로세서 커널들을 포함할 수 있다.
본 명세서에서 사용된 바와 같이, 표현 "~하도록/~하기 위해 구성된"은 프로세싱 회로가 소프트웨어 구성 및/또는 하드웨어 구성에 의해, 본 명세서에서 설명된 동작들 중 하나 이상을 수행하도록 적응되거나 수행하도록 동작하는 것과 같이 수행하도록 구성됨을 의미할 수 있다.
본 명세서에서 용어 "동작(action)"은 동작, 단계, 동작(operation), 응답, 반응, 활동, 등을 언급할 수 있다. 본 명세서에서의 동작이 적용가능한 경우 2개 이상의 하위 동작들로 분할될 수 있음에 유의할 것이다. 게다가, 또한 적용가능한 경우, 본 명세서에서 설명된 동작들 중 2개 이상이 단일 동작으로 병합될 수 있다는 점에 유의할 것이다.
본 명세서에서 사용된 바와 같이, 용어 "메모리"는 하드 디스켓, 자기 저장 매체, 휴대용 컴퓨터 디스켓 또는 디스크, 플래시 메모리, 랜덤 액세스 메모리(RAM) 등을 언급할 수 있다. 또한, 용어 "메모리"는 프로세서 등의 내부 레지스터 메모리를 언급할 수 있다.
본 명세서에서 사용된 바와 같이, 용어 "컴퓨터 판독가능한 매체"는 범용 직렬 버스(USB) 메모리, DVD-디스크, 블루레이 디스크, 데이터의 스트림으로서 수신되는 소프트웨어 모듈, 플래시 메모리, 하드 드라이브, 메모리스틱과 같은 메모리 카드, 멀티미디어 카드(MMC), 보안 디지털(SD) 카드, 등일 수 있다. 컴퓨터 판독가능한 매체의 상기 언급된 예들 중 하나 이상은 하나 이상의 컴퓨터 프로그램 제품들로서 제공될 수 있다.
본 명세서에서 사용된 바와 같이, 용어 "컴퓨터 판독가능한 코드 유닛들"은 컴퓨터 프로그램의 텍스트, 컴파일링된 포맷으로 컴퓨터 프로그램을 표현하는 전체 이진 파일 또는 그의 부분들 또는 그 사이의 어떤 것일 수 있다.
본 명세서에서 사용된 바와 같이, 용어들 "숫자" 및/또는 "값"은 이진수, 실수, 허수 또는 유리수 등과 같은 임의의 종류의 수일 수 있다. 게다가, "숫자" 및/또는 "값"은 문자 또는 문자들의 문자열과 같은 하나 이상의 문자들일 수 있다. "숫자" 및/또는 "값"은 또한, 비트들의 문자열, 즉 제로들 및/또는 1들로 표현될 수 있다.
본 명세서에서 사용된 바와 같이, 표현 "일부 실시예들에서"는 설명된 실시예의 특징들이 본 명세서에 개시된 임의의 다른 실시예와 조합될 수 있음을 나타내기 위해 사용되었다.
다양한 양태들의 실시예들이 설명되었을지라도, 그들의 많은 상이한 변경들, 수정들 등은 당업자들에 대해 명백해질 것이다. 설명된 실시예들은 따라서, 본 발명의 범위를 제한하도록 의도되지 않는다.

Claims (14)

  1. 이미지 프로세싱 디바이스(110, 600)에 의해 수행되고 제 1 이미지 센서(301a)로부터의 이미지들의 제 1 스트림(310a) 및 제 2 이미지 센서(301b)로부터의 이미지들의 제 2 스트림(310b)의 정렬을 평가하기 위한 방법으로서, 상기 제 1 및 제 2 이미지 센서들(301a, 301b)은 중첩하는 시야들을 갖는, 상기 방법에 있어서:
    제 1 정렬에 따라 상기 이미지들의 제 1 스트림(310a)의 제 1 이미지 프레임(311a) 및 상기 이미지들의 제 2 스트림(310b)의 또 다른 제 1 이미지 프레임(311b)을 정렬하는 단계(401a),
    상기 제 1 정렬에 따라 상기 이미지들의 제 1 스트림(310a)의 제 2 이미지 프레임(312a) 및 상기 이미지들의 제 2 스트림(310b)의 또 다른 제 2 이미지 프레임(312b)을 정렬하는 단계(401b),
    제 1 혼합 함수(333a)에 따라 상기 제 1 및 또 다른 제 1 이미지 프레임들(311a, 311b)의 제 1 혼합 영역(331a)에서 상기 정렬된 제 1 이미지 프레임(311a) 및 또 다른 제 1 이미지 프레임(311b)을 혼합함으로써 제 1 스티칭(stitching)된 이미지 프레임(321)을 얻는 단계(402),
    제 2 혼합 함수(333b)에 따라 상기 제 2 및 또 다른 제 2 이미지 프레임들(312a, 312b)의 제 2 혼합 영역(331b)에서 상기 정렬된 제 2 이미지 프레임(312a) 및 상기 또 다른 제 2 이미지 프레임(312b)을 혼합함으로써 제 2 스티칭된 이미지 프레임(322)을 얻는 단계(403)를 포함하고, 상기 방법은:
    상기 제 1 스티칭된 프레임(321) 및 상기 제 2 스티칭된 프레임(322)의 대응하는 픽셀들의 값들에 기초하여 산출된 차 패턴에 기초하여 상기 제 1 정렬을 평가하는 것(406)을 특징으로 하고, 상기 대응하는 픽셀들은 각각의 제 1 및 제 2 스티칭된 이미지 프레임들(321, 322)에서 상기 제 1 및 제 2 혼합 영역들(331a, 331b)의 적어도 하나의 고정된 부분(334) 내에 포함되고, 상기 방법은 또한:
    상기 제 2 혼합 함수(333b)가 상기 제 1 혼합 함수(333a)와 상이하고,
    상기 제 1 혼합 함수(333a)가 상기 정렬된 제 1 이미지 프레임(311a) 및 상기 또 다른 제 1 이미지 프레임(311b)의 각각의 혼합 가중치를 상기 제 1 혼합 영역(331a)에서의 픽셀 위치의 함수로서 정의하고,
    상기 제 2 혼합 함수(333b)가 상기 정렬된 제 2 이미지 프레임(312a) 및 상기 또 다른 제 2 이미지 프레임(312b)의 각각의 혼합 가중치를 상기 제 2 혼합 영역(331b)에서의 픽셀 위치의 함수로서 정의하는 것을 특징으로 하는, 방법.
  2. 제 1 항에 있어서,
    상기 제 1 및 제 2 이미지 센서들(301a, 301b)은 동일한 이미지 캡쳐링 디바이스(110)에 포함되고 상기 제 1 이미지 프레임(311a) 및 상기 또 다른 제 1 이미지 프레임(311b)은 동일하거나 유사한 제 1 시점들에서 캡쳐되며 상기 제 2 이미지 프레임(312a) 및 상기 또 다른 제 2 이미지 프레임(312b)은 상기 제 1 시점들과 상이한 동일하거나 유사한 제 2 시점들에서 캡쳐되는, 방법.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 차 패턴은,
    a. 상기 제 1 스티칭된 프레임(321) 및 상기 제 2 스티칭된 프레임(322)의 대응하는 픽셀들의 값들 사이의 차; 및/또는
    b. 상기 제 1 스티칭된 프레임(321) 및 상기 제 2 스티칭된 프레임(322)의 대응하는 픽셀들의 가중된 값들 사이의 차에 기초하여 산출되는, 방법.
  4. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서,
    상기 차 패턴에 기초하여 상기 제 1 정렬을 평가하는 단계는:
    상기 차 패턴에 기초하고 상기 제 1 스티칭된 프레임(321) 또는 상기 제 2 스티칭된 프레임(322)의 대응하는 픽셀들의 값들 중 어느 하나에 또한 기초하여 상기 적어도 하나의 고정된 부분(334) 내의 상기 제 1 이미지 프레임(311a) 및 상기 또 다른 제 1 이미지 프레임(311b)의 각각의 재구성을 산출하는 단계; 및
    상기 각각의 재구성을 서로 비교하는 단계를 포함하는, 방법.
  5. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
    상기 차 패턴에 기초하여 상기 제 1 정렬을 평가하는 단계는 상기 차 패턴을 임계 값과 비교하는 단계를 포함하는, 방법.
  6. 제 1 항 내지 제 5 항 중 어느 한 항에 있어서,
    상기 제 1 정렬의 평가에 기초하여, 복수의 정렬들 중에서 하나의 정렬을 선택하는 단계(408)를 더 포함하는, 방법.
  7. 제 1 항 내지 제 6 항 중 어느 한 항에 있어서,
    상기 차 패턴은 임계 값 초과이고, 상기 방법은:
    제 2 정렬에 따라 상기 제 1 이미지 프레임(311a) 및 상기 또 다른 제 1 이미지 프레임(311b)을 정렬하는 단계(401a), 및
    상기 제 2 정렬을 평가하기 위해, 상기 제 2 정렬에 따라 상기 제 2 이미지 프레임(312a) 및 상기 또 다른 제 2 이미지 프레임(312b)을 정렬하는 단계(401b)를 더 포함하는, 방법.
  8. 제 7 항에 있어서,
    상기 제 2 정렬 및 제 1 혼합 함수(333a)로 얻어진, 상기 제 1 스티칭된 이미지 프레임(321)의 픽셀들의 값들, 및 상기 제 2 정렬 및 상기 제 2 혼합 함수(333b)로 얻어진, 상기 제 2 스티칭된 이미지 프레임(322)의 픽셀들의 값들에 기초하여 산출된 제 2 차 패턴에 기초하여 상기 제 2 정렬을 평가하는 단계(406), 및
    상기 제 1 및 제 2 차 패턴들 중에 최소 차 패턴에 기초하여 상기 제 1 정렬 및 상기 제 2 정렬 중에서 하나의 정렬을 선택하는 단계(410)를 더 포함하는, 방법.
  9. 제 8 항에 있어서,
    상기 제 1 및 제 2 차 패턴들 중에 상기 최소 차 패턴은 상기 제 1 혼합 영역(331a)의 고정된 부분(334)과 상기 제 2 혼합 영역(331b)의 고정된 부분(334) 사이의 최소 차를 포함하는, 방법.
  10. 제 1 항 내지 제 9 항 중 어느 한 항에 있어서,
    상기 이미지 프로세싱 디바이스(110, 600)의 실행 시간에 상기 방법을 수행하는, 방법.
  11. 제 1 항 내지 제 10 항 중 어느 한 항에 따른 방법을 수행하도록 구성된 이미지 프로세싱 디바이스(110, 600).
  12. 제 11 항에 있어서,
    카메라, 감시 카메라, 모니터링 카메라 또는 캠코더 중 임의의 것과 같은 이미지 캡쳐링 디바이스(110), 네트워크 비디오 레코더, 및 무선 통신 디바이스를 포함하는, 이미지 프로세싱 디바이스(110, 600).
  13. 컴퓨터 판독가능한 코드 유닛들을 포함하는 컴퓨터 프로그램(603)에 있어서,
    이미지 프로세싱 디바이스(110, 600)에서 실행될 때, 상기 이미지 프로세싱 디바이스(110, 600)로 하여금 제 1 항 내지 제 10 항 중 어느 한 항에 따른 방법을 수행하게 하는, 컴퓨터 프로그램(603).
  14. 제 13 항에 따른 컴퓨터 프로그램을 포함하는 캐리어(605)에 있어서,
    상기 캐리어(605)는 전자 신호, 광학 신호, 무선 신호 및 컴퓨터 판독가능한 매체 중 하나인, 캐리어(605).
KR1020220013115A 2021-02-01 2022-01-28 스티칭된 이미지들의 정렬을 평가하기 위한 방법 및 이미지 프로세싱 디바이스 KR20220111203A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP21154578.5 2021-02-01
EP21154578.5A EP4036851A1 (en) 2021-02-01 2021-02-01 Method and image-processing device for evaluating an alignment of stitched images

Publications (1)

Publication Number Publication Date
KR20220111203A true KR20220111203A (ko) 2022-08-09

Family

ID=74494813

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220013115A KR20220111203A (ko) 2021-02-01 2022-01-28 스티칭된 이미지들의 정렬을 평가하기 위한 방법 및 이미지 프로세싱 디바이스

Country Status (6)

Country Link
US (1) US20220245760A1 (ko)
EP (1) EP4036851A1 (ko)
JP (1) JP2022119712A (ko)
KR (1) KR20220111203A (ko)
CN (1) CN114845068A (ko)
TW (1) TW202232934A (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116156342B (zh) * 2023-04-04 2023-06-27 合肥埃科光电科技股份有限公司 多线阵图像传感器拼接方法、线阵采像系统及装置
CN116362973B (zh) * 2023-05-24 2023-09-19 武汉智筑完美家居科技有限公司 图案拼接方法、设备及存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8600193B2 (en) 2008-07-16 2013-12-03 Varian Medical Systems, Inc. Image stitching and related method therefor
US9767387B2 (en) * 2015-09-09 2017-09-19 Accenture Global Services Limited Predicting accuracy of object recognition in a stitched image
GB201615776D0 (en) * 2016-09-16 2016-11-02 Rolls Royce Plc Spatiotemporal registation of image streams

Also Published As

Publication number Publication date
TW202232934A (zh) 2022-08-16
CN114845068A (zh) 2022-08-02
US20220245760A1 (en) 2022-08-04
JP2022119712A (ja) 2022-08-17
EP4036851A1 (en) 2022-08-03

Similar Documents

Publication Publication Date Title
US11475238B2 (en) Keypoint unwarping for machine vision applications
Novozamsky et al. Imd2020: A large-scale annotated dataset tailored for detecting manipulated images
Wang et al. Practical deep raw image denoising on mobile devices
Nasrollahi et al. Super-resolution: a comprehensive survey
US9699380B2 (en) Fusion of panoramic background images using color and depth data
Fernandez-Sanchez et al. Background subtraction model based on color and depth cues
KR20220111203A (ko) 스티칭된 이미지들의 정렬을 평가하기 위한 방법 및 이미지 프로세싱 디바이스
US10325338B2 (en) Information embedding device, information detecting device, information embedding method, and information detecting method
CN110852997B (zh) 动态图像清晰度检测方法、装置、电子设备及存储介质
Mousavi et al. Sparsity-based color image super resolution via exploiting cross channel constraints
CN110276831B (zh) 三维模型的建构方法和装置、设备、计算机可读存储介质
Cho et al. Single‐shot High Dynamic Range Imaging Using Coded Electronic Shutter
US20230127009A1 (en) Joint objects image signal processing in temporal domain
An et al. Single-shot high dynamic range imaging via deep convolutional neural network
JP7333520B2 (ja) 学習プログラム、学習方法、及び情報処理装置
CN115883988A (zh) 视频图像拼接方法、系统、电子设备及存储介质
CN111932462B (zh) 图像降质模型的训练方法、装置和电子设备、存储介质
US20140055644A1 (en) Apparatus and method for extracting object
CN111160340A (zh) 一种运动目标检测方法、装置、存储介质及终端设备
Huang et al. High-fidelity hyperspectral snapshot of physical world: System architecture, dataset and model
Lasang et al. CFA-based motion blur removal using long/short exposure pairs
CN113379608A (zh) 一种图像处理方法、存储介质及终端设备
Mahmoudabadi et al. Detecting sudden moving objects in a series of digital images with different exposure times
RU2774058C1 (ru) Способ определения (распознавания) факта предъявления цифровой копии документа в виде пересъемки экрана
Qiao et al. Robust HDR reconstruction using 3D patch based on two-scale decomposition