KR20180043312A - 비디오 안정화를 위한 비디오 이미지 정렬 - Google Patents

비디오 안정화를 위한 비디오 이미지 정렬 Download PDF

Info

Publication number
KR20180043312A
KR20180043312A KR1020187007808A KR20187007808A KR20180043312A KR 20180043312 A KR20180043312 A KR 20180043312A KR 1020187007808 A KR1020187007808 A KR 1020187007808A KR 20187007808 A KR20187007808 A KR 20187007808A KR 20180043312 A KR20180043312 A KR 20180043312A
Authority
KR
South Korea
Prior art keywords
video frame
processing device
edge map
edge
frequency domain
Prior art date
Application number
KR1020187007808A
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 KR20180043312A publication Critical patent/KR20180043312A/ko

Links

Images

Classifications

    • H04N5/23267
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/262Analysis of motion using transform domain methods, e.g. Fourier domain methods
    • 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/683Vibration or motion blur correction performed by a processor, e.g. controlling the readout of an image memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/14Picture signal circuitry for video frequency region
    • H04N5/142Edging; Contouring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/14Picture signal circuitry for video frequency region
    • H04N5/144Movement detection
    • 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/20048Transform domain processing
    • G06T2207/20056Discrete and fast Fourier transform, [DFT, FFT]
    • 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/681Motion detection
    • H04N23/6811Motion detection based on the image signal

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Television Systems (AREA)
  • Image Processing (AREA)

Abstract

시스템 및 방법은, 기준 비디오 프레임과 연관된 제1 에지 맵을 계산하는 것, 착신 비디오 프레임과 연관된 제2 에지 맵을 생성하는 것, 제1 에지 맵의 제1 주파수 도메인 표현 및 제2 에지 맵의 제2 주파수 도메인 표현에 기반하여 기준 비디오 프레임과 비디오 프레임 사이의 오프셋을 생성하는 것, 기준 비디오 프레임에 대해 착신 비디오 프레임을 정렬하기 위해, 계산된 오프셋에 따라 착신 비디오 프레임의 복수의 픽셀들의 위치들을 변환하는 것, 및 정렬된 비디오 프레임을 다운스트림 디바이스에 송신하는 것과 관련된다.

Description

비디오 안정화를 위한 비디오 이미지 정렬
[0001] 본 출원은 2015년 8월 19일자로 출원된 미국 가특허 출원 번호 제 62/206,911 호 및 2016년 8월 15일자로 출원된 미국 특허 출원 번호 제 15/236,904 호의 우선권을 주장하고, 상기 출원들의 개시내용은 그 전체 내용이 인용에 의해 본원에 포함된다.
[0002] 본 개시내용의 구현들은 비디오 프로세싱에 관한 것으로, 더 상세하게는, 비디오 안정화를 위한 비디오 프레임 정렬에 관한 것이다.
[0003] 사람이 비디오를 레코딩하기 위해 핸드-헬드 카메라를 사용할 때, 비디오는 사람에 의한 의도하지 않은 신체 움직임들로 인한 흔들림들 및 지터들을 나타낼 수 있다. 이러한 흔들림들 및 지터들은 비디오 품질에 부정적 영향을 미칠 수 있다.
[0004] 그에 따라서, 비디오 레코딩에서 이미지들을 안정화시킬 필요성이 존재한다. 본 개시내용의 구현들은 비디오 레코딩들을 안정화시키기 위해 주파수 도메인 비디오 프레임 정렬 방법을 사용하는 기술적 솔루션을 제공한다. 이 방법은 시간적으로 그리고 공간적으로 주파수 도메인 정보 인코딩 정보를 활용하여 비디오 프레임 정렬을 위한 비디오 레코딩에서 2개의 비디오 프레임들 사이의 오프셋을 (예컨대, 픽셀들의 수에 관해) 추정한다. 주파수 도메인 프로세싱의 컴퓨테이션 복잡도(computational complexity)가 공간 도메인 프로세싱 접근법들에 의해 요구되는 것들보다 낮기 때문에, 주파수 도메인 프로세싱 방법은 비디오 안정화에 더 효율적이다.
[0005] 위에서-설명된 문제점들은 주파수 도메인에서 착신(incoming) 비디오 프레임과 기준 비디오 프레임 사이의 오프셋을 계산하는 프로세싱 디바이스를 제공함으로써 개선된다. 프로세싱 디바이스는 주파수 도메인 표현을 획득하기 위해 공간 도메인으로부터 주파수 도메인으로 착신 비디오 프레임을 변환할 수 있다. 프로세싱 디바이스는 주파수 도메인 표현에 기반하여 기준 비디오 프레임의 에지와 변환된 이미지의 에지 사이의 오프셋을 추정할 수 있다. 프로세싱 디바이스는 정렬된 비디오 프레임을 생성하기 위해 오프셋을 고려하여 기준 비디오 프레임에 대해 착신 비디오 프레임을 정렬할 수 있다. 프로세싱 디바이스는 정렬된 이미지를 다운스트림 디바이스에 송신할 수 있다.
[0006] 프로세싱 디바이스는 착신 비디오 프레임의 에지를 검출할 수 있다. 에지는 에지 검출 방법(예컨대, Canny 에지 검출기 또는 DOG(differential of Gaussian) 에지 검출기)을 사용하여 검출될 수 있다. 프로세싱 디바이스는 기준 비디오 프레임에서의 대응하는 에지에 대한 착신 비디오 프레임에서의 에지 사이의 오프셋을 결정할 수 있다. 정렬 프로세서는 오프셋을 고려하여 착신 비디오 프레임의 각각의 픽셀의 위치를 조정할 수 있다. 기준 프레임은 비디오 프레임 레이트 또는 비디오 품질 중 적어도 하나에 의존하는 레이트로 업데이트될 수 있다.
[0007] 본 발명은 다음의 도면들과 함께 고려되는 아래에서 제시되는 예시적 구현의 상세한 설명으로부터 더 용이하게 이해될 수 있다.
[0008] 도 1은 본 개시내용의 구현에 따른 컴퓨팅 시스템을 예시하는 블록 다이어그램이다.
[0009] 도 2는 도 1에 도시되는 컴퓨팅 시스템에서 사용될 수 있는 벡터 프로세서이다.
[0010] 도 3은 도 2에 도시되는 벡터 프로세서의 벡터 유닛이다.
[0011] 도 4는 본 개시내용의 구현에 따른 비디오 프레임들을 정렬하기 위한 방법을 예시하는 흐름 다이어그램이다.
[0012] 도 5는 본 개시내용의 구현에 따른 비디오 프레임 정렬을 제공하기 위한, 도 1의 컴퓨팅 시스템과 연관된 방법을 예시하는 흐름 다이어그램이다.
[0013] 도 6a는 테스트 비디오 프레임 및 대응하는 검출된 에지들(테스트 비디오 프레임 1(즉, tr1))이다.
[0014] 도 6b는 테스트 비디오 프레임 및 대응하는 검출된 에지들(OST2에 의해 검출된 에지)이다.
[0015] 도 6c는 테스트 비디오 프레임 및 대응하는 검출된 에지들(OST2에 의해 검출된 에지(선들) 및 SIFT에 의해 발견된 키포인트들(점들))이다.
[0016] 도 7a는 테스트 비디오 프레임 및 대응하는 검출된 에지들(테스트 비디오 프레임 2(즉, tr2))이다.
[0017] 도 7b는 테스트 비디오 프레임 및 대응하는 검출된 에지들(OST2에 의해 검출된 에지)이다.
[0018] 도 8a는 테스트 비디오 프레임 및 대응하는 검출된 에지들(정규화 상관; tr1 및 tr2 정규화 상관 결과들)이다.
[0019] 도 8b는 테스트 비디오 프레임 및 대응하는 검출된 에지들(피크 주변 정규화 상관; tr1 및 tr2 정규화 상관 결과들)이다.
[0020] 도 8c는 테스트 비디오 프레임 및 대응하는 검출된 에지들(피크 주변 정규화 상관; tr1 및 tr2 정규화 상관 결과들)이다.
[0021] 도 9a는 테스트 비디오 프레임 및 대응하는 검출된 에지들(테스트 비디오 프레임 13(즉, tr3))이다.
[0022] 도 9b는 테스트 비디오 프레임 및 대응하는 검출된 에지들(OST2에 의해 검출된 에지)이다.
[0023] 도 10a는 테스트 비디오 프레임 및 대응하는 검출된 에지들(정규화 상관; tr1 및 tr3 정규화 상관 결과들)이다.
[0024] 도 10b는 테스트 비디오 프레임 및 대응하는 검출된 에지들(피크 주변 정규화 상관; tr1 및 tr3 정규화 상관 결과들)이다.
[0025] 도 10c는 테스트 비디오 프레임 및 대응하는 검출된 에지들(피크 주변 정규화 상관; tr1 및 tr3 정규화 상관 결과들)이다.
[0026] 도 11a는 테스트 비디오 프레임 및 대응하는 검출된 에지들(테스트 비디오 프레임 4(즉, tr4))이다.
[0027] 도 11b는 테스트 비디오 프레임 및 대응하는 검출된 에지들(OST2에 의해 검출된 에지)이다.
[0028] 도 12a는 테스트 비디오 프레임 및 대응하는 검출된 에지들(정규화 상관; tr1 및 tr4 정규화 상관 결과들)이다.
[0029] 도 12b는 테스트 비디오 프레임 및 대응하는 검출된 에지들(피크 주변 정규화 상관; tr1 및 tr4 정규화 상관 결과들)이다.
[0030] 도 12c는 테스트 비디오 프레임 및 대응하는 검출된 에지들(피크 주변 정규화 상관; tr1 및 tr4 정규화 상관 결과들)이다.
[0031] 도 13a는 테스트 비디오 프레임 및 대응하는 검출된 에지들(테스트 비디오 프레임 5(즉, tr5))이다.
[0032] 도 13b는 테스트 비디오 프레임 및 대응하는 검출된 에지들(OST2에 의해 검출된 에지)이다.
[0033] 도 14a는 테스트 비디오 프레임 및 대응하는 검출된 에지들(정규화 상관; tr1 및 tr5 정규화 상관 결과들)이다.
[0034] 도 14b는 테스트 비디오 프레임 및 대응하는 검출된 에지들(피크 주변 정규화 상관; tr1 및 tr5 정규화 상관 결과들)이다.
[0035] 도 14c는 테스트 비디오 프레임 및 대응하는 검출된 에지들(피크 주변 정규화 상관; tr1 및 tr5 정규화 상관 결과들)이다.
[0036] 도 15a는 테스트 비디오 프레임 및 대응하는 검출된 에지들(테스트 비디오 프레임 6(즉, tr6))이다.
[0037] 도 15b는 테스트 비디오 프레임 및 대응하는 검출된 에지들(OST2에 의해 검출된 에지)이다.
[0038] 도 16a는 테스트 비디오 프레임 및 대응하는 검출된 에지들(정규화 상관; tr1 및 tr6 정규화 상관 결과들)이다.
[0039] 도 16b는 테스트 비디오 프레임 및 대응하는 검출된 에지들(피크 주변 정규화 상관; tr1 및 tr6 정규화 상관 결과들)이다.
[0040] 도 16c는 테스트 비디오 프레임 및 대응하는 검출된 에지들(피크 주변 정규화 상관; tr1 및 tr6 정규화 상관 결과들)이다.
[0041] 도 17은 컴퓨터 시스템 내에서, 명령들의 세트가, 머신으로 하여금, 본원에서 논의되는 방법론들 중 임의의 하나 또는 그 초과의 방법론들을 수행하게 하기 위해 실행될 수 있는 예시적 형태의 컴퓨터 시스템에서의 머신의 도식적 표현을 예시한다.
[0042] 비디오 클립은 레코딩 포맷에 따라 사전-결정된 디멘션(dimension)을 각각 가지는 비디오 프레임들의 시퀀스로 구성된다. 각각의 비디오 프레임은 픽셀들의 어레이(예컨대, HDTV 포맷에서 1920 x 1080 픽셀들)를 포함할 수 있고, 비디오 프레임들의 시퀀스는 비디오 프레임 레이트(예컨대, 30개의 프레임들/초)로 이미지 센서에 의해 캡처된 장면의 이미지 표현들이다. 레코딩된 비디오는 비디오 압축 표준(예컨대, MPEG-2)에 따라 인코딩될 수 있으며, 재생 동안 원(raw) 이미지 데이터로 디코딩될 수 있다. 본 개시내용의 구현들은 비디오 안정화를 위해 비디오 프레임들을 프로세싱하기 위한 방법을 포함한다. 비디오 프레임들 중 각각의 비디오 프레임은 컴퓨테이션의 양을 감소시키기 위해 더 낮은 해상도의 비디오 프레임들로 데시메이트(decimate)(즉, 공간적으로 서브-샘플링)될 수 있다. 에지 검출기(예컨대, Canny 에지 검출기)는 비디오 프레임들과 연관된 에지 맵을 계산하기 위해 사용될 수 있다. 이어서, 주파수 변환(예컨대, Fourier 변환)이 비디오 프레임들과 연관된 에지 맵들에 적용되어, 이들을 주파수 도메인 표현들로 컨버팅한다. 주파수 도메인에서, 비디오 프레임과 기준 비디오 프레임 사이의 픽셀들의 오프셋은 이들의 주파수 도메인 표현들에 따라 추정된다. 추정된 오프셋은 기준 비디오 프레임에 대해 비디오 프레임을 정렬하기 위해 사용될 수 있다. 비디오 프레임의 사이즈가 m x n 픽셀들이면, 주파수 도메인에서 에지들을 계산하기 위한 컴퓨테이션 복잡도는 대략 O(mn log mn)이다. 결과적으로, 비디오는 안정화된 비디오의 품질을 희생하지 않으면서 더 효율적 방식으로 안정화될 수 있다.
[0043] 도 1은 본 개시내용의 구현에 따른 이미지 데이터(예컨대, 디지털 스틸 이미지들 또는 비디오 프레임들)를 안정화시키는 컴퓨팅 시스템을 예시하는 블록 다이어그램이다. 도 1에 도시되는 바와 같이, 컴퓨팅 시스템(100)은 디지털 비디오 캡처링 시스템(105) 또는 네트워킹된 컨텐츠 공유 플랫폼(110)일 수 있는 소스로부터 인코딩된 이미지 데이터를 수신할 수 있다. 컴퓨팅 시스템(100)은 하나 또는 그 초과의 중앙 프로세싱 유닛들(165a-165n)을 더 포함하는 프로세싱 디바이스(135)를 포함할 수 있다. 프로세싱 디바이스(135)는 호스트 메모리(140)에 통신가능하게 커플링될 수 있다. 호스트 메모리(140)는 수신기(115)에 의해 수신되고, 디코더(120)에 의해 디코딩되고, 그리고 호스트 메모리(140) 내의 이미지 데이터 버퍼(145)로 전달되는 디코딩된 이미지 데이터(예컨대, 디지털 이미지 또는 비디오 데이터)를 저장할 수 있다. 수신기(115)는 디지털 비디오 캡처링 시스템(105)으로부터 또는 네트워킹된 컨텐츠 공유 플랫폼(110)으로부터 직접적으로 인코딩된 이미지 데이터를 수신할 수 있다. 일 구현에서, 수신기(115) 또는 디코더(120) 중 하나 또는 둘 모두는 프로세싱 디바이스(135) 외부에 있을 수 있다. 다른 구현에서, 수신기(115) 또는 디코더(120) 중 하나 또는 둘 모두는 프로세싱 디바이스(135)와 통합될 수 있다.
[0044] 프로세싱 디바이스(135)는 벡터 프로세서(VP; 150)를 추가로 구현할 수 있다. 당업자에 의해, DSP들, FPGA들 또는 ASIC들, 또는 프로세싱 디바이스(135) 자체의 부가 고정-기능 피처들과 같은(그러나, 이들로 제한되는 것이 아님) VP들 이외에 다른 코-프로세서 아키텍처들이 활용될 수 있다는 것이 인식될 것이다. 당업자들에 의해, 벡터 프로세서(150)가, 이를테면, 모바일 폰들 및 태블릿들 상에서 발견되는 중앙 프로세싱 유닛들(165a-165n)("APU"로 또한 알려짐)과 동일한 물리적 칩 또는 논리적 디바이스 상에 콜로케이팅(collocate)될 수 있다는 것이 추가로 인식될 것이다. 별개의 VP 및 CPU 기능들은 컴퓨터 서버 시스템들 상에서 발견될 수 있고, 여기서, VP는 물리적 확장 카드, 및 개인용 컴퓨터 시스템들 및 랩탑들이다. VP(150)는 VP 메모리(155)를 포함할 수 있다. 당업자들에 의해, 호스트 메모리(140) 및 VP 메모리(155)가 또한, 동일한 물리적 칩(들) 또는 논리적 디바이스 상에, 이를테면, APU 상에 콜로케이팅될 수 있다는 것이 인식될 것이다.
[0045] 프로세싱 디바이스(135)는 디코딩된 이미지 데이터를 수신하도록 구성될 수 있다. 프로세싱 디바이스(135)는 수신된 디코딩된 이미지 데이터에 기반하여 호스트 메모리(140) 내의 이미지 데이터 버퍼(145)를 생성하도록 구성될 수 있다. 이미지 데이터 버퍼(145)는, 예컨대, 디코딩된 이미지 데이터와 같은 데이터를 저장하기 위한 호스트 메모리(140) 내의 구역이다. 프로세싱 디바이스(135)는 이미지 데이터 버퍼(145) 내에 저장된 컨텐츠를 VP 메모리(150) 내의 이미지 데이터 버퍼(160)에 전달하도록 구성될 수 있다.
[0046] 프로세싱 디바이스(135)는 이미지 데이터 버퍼(160) 내에 저장된 이미지 데이터를 수신하기 위해 정렬 프로세서(145)를 구현하도록 구성될 수 있다. 일 구현에서, 프로세싱 디바이스(135)는 VP(150)의 컴포넌트로서 정렬 프로세서(145)를 구현할 수 있다.
[0047] 정렬 프로세서(145)는 비디오 레코딩으로부터 기준 비디오 프레임을 선택할 수 있고, 여기서, 기준 비디오 프레임은 정렬 프로세스를 통해 업데이트될 수 있고, 기준 비디오 이미지를 업데이트하는 주파수는 비디오를 안정화시키기 위해 비디오 프레임 레이트, 비디오 품질 또는 정렬에 대한 다른 기준들에 기반하여 판정될 수 있다. 기준 비디오 프레임의 선택 이후에, 착신 비디오 프레임(이는 기준 비디오 프레임과 상이함)을 수신하는 것에 대한 응답으로, 정렬 프로세서(145)는 기준 비디오 프레임에 대해 착신 비디오 프레임을 정렬하기 위해 계산들을 수행할 수 있다. 착신 비디오 프레임이 정렬 프로세서(145)에 의해 수신될 때, 정렬 프로세서(145)는 착신 비디오 프레임을 더 낮은 해상도로 데시메이트(또는 공간적으로 서브샘플링)할 수 있다. 기준 프레임이 이미 데시메이트되지 않았다면, 정렬 프로세서(145)는 착신 비디오 프레임과 동일한 스케일로 기준 프레임을 데시메이트할 수 있다. 비디오 프레임을 데시메이트하는 것은 나머지 프로세싱 단계들에 대한 컴퓨테이션 복잡도를 감소시킨다. 게다가, 정렬 프로세서(145)는 데시메이트된 착신 비디오 프레임에 대해 에지 검출 계산을 수행할 수 있다. 디지털 이미지에서의 에지는 이미지의 픽셀 강도 불연속성에 의해 형성된다. 에지들은 직선 또는 곡선 세그먼트들로 조직화될 수 있다. 에지 검출기(예컨대, Canny 에지 검출기 또는 임의의 다른 적합한 에지 검출기들)는 이미지와 연관된 에지 맵을 생성하기 위해 이미지에서의 에지들을 식별하는데 사용될 수 있다.
[0048] 정렬 프로세서(145)는 데시메이트된 착신 비디오 이미지 및 데시메이트된 기준 비디오 이미지에서 검출된 에지들을 정렬할 수 있다. 정렬 프로세서(145)는 먼저, 검출된 에지들을 도시하기 위한 에지 맵을 생성하기 위해 에지 검출기를 사용하여 에지 검출을 수행할 수 있다. 에지 맵은, 데시메이트된 착신 비디오 프레임에서 제1 강도 값(예컨대, 높은 값)이 에지 픽셀을 표시할 수 있고, 제2 강도 값(예컨대, 낮은 값)이 넌-에지 픽셀을 표시할 수 있는 바이너리 픽셀 값들을 포함할 수 있다. 정렬 프로세서(145)는 시간/공간 도메인들로부터 주파수 도메인으로 에지 맵을 변환하기 위해 데시메이트된 착신 비디오 이미지의 에지 맵들에 대한 주파수 변환을 (예컨대, Fourier 변환에 의해) 수행할 수 있다. 추가로, 정렬 프로세서(145)는 데시메이트된 기준 비디오 이미지의 주파수 도메인 표현에 기반하여 착신 비디오 프레임과 기준 비디오 프레임 사이의 픽셀 오프셋들을 추정할 수 있다. 비디오 이미지의 경계에서 파괴된 특성으로부터의 영향을 회피하기 위해, 정렬 프로세서(145)는 경계 부근의 정보를 폐기할 수 있으며, 데시메이트된 착신 비디오 프레임의 크롭(crop)된 중심 부분에 기반하여 픽셀 오프셋을 추정할 수 있다.
[0049] 기준 비디오 프레임에 대한 착신 비디오 프레임 사이의 픽셀 오프셋들을 결정하는 것에 대한 응답으로, 정렬 프로세서(145)는 정렬된 비디오 프레임을 생성하기 위해 결정된 픽셀 오프셋을 고려하여 착신 비디오 프레임의 각각의 픽셀의 위치를 조정할 수 있다. 안정화된 비디오는 정렬된 비디오 프레임들의 시퀀스로 구성된다.
[0050] 정렬 프로세서(145)는 디스플레이(170) 상의 디스플레이 출력에 또는 하나 또는 그 초과의 다운스트림 디바이스들(175)(예컨대, 인코더)로의 송신에 적합한, 정렬된 비디오 프레임들을 이미지 데이터 버퍼(160)에 저장할 수 있다.
[0051] 본 개시내용의 예들은 레지스터-투-레지스터 가변-길이 벡터 명령들을 사용하는 벡터 프로세서(150) 상에서 실행될 수 있다. 이 벡터 프로세서(150)는 상이한 레이트들로 동일한 명령들을 실행할 수 있는 다양한 구현들을 허용하도록 설계되어, 향후 아키텍처 설계들의 조정 및 상이한 가격/성능 트레이드-오프들 둘 모두를 허용한다. 본 개시내용의 예들은 디지털 신호 프로세싱 및 그래픽 프로세싱 둘 모두뿐만 아니라 고-성능 컴퓨팅을 지원하기 위한 특징들을 포함한다.
[0052] 본 개시내용의 예들은 마이크로프로세서에서의 구현들에 적합한 가변-길이 레지스터 벡터 프로세서(150)를 포함한다. 일 예에서, 벡터 프로세서(150)는: 명령이 하드웨어로 현재 구현될 수 있는 값들보다 큰 값들을 가지는 벡터 길이들을 특정할 수 있게 하고; 그리고 특정 구현의 레지스터들로 패킹될 수 있는 엘리먼트들의 수에 상관 없이, 벡터 길이가, 수행될 연산들의 수를 특정하게 할 수 있다.
[0053] 일 예에서, 본 개시내용의 구현에 따라 벡터 프로세서(150)를 예시하는 도 2에 도시되는 바와 같이, 벡터 프로세서(150)가 최신의 비-순차적(out-of-order) 프로세서 내의 몇몇 유닛들 중 하나라는 것이 가정된다.
[0054] 도 2에 도시되는 벡터 프로세서(150)는 실행을 위한 명령들을 홀딩하는 명령 캐시(202)를 포함할 수 있다. 벡터 프로세서(150)는 명령 캐시(202)로부터 명령들을 페치하는 명령 페치 유닛(204)을 더 포함할 수 있다. 벡터 프로세서(150)는 페치되는 명령들 및 다양한 예측 방법들 둘 모두에 기반하여 명령 캐시(202)로부터 페치되는 명령들을 제어하는 제어/분기 실행 유닛(206)을 더 포함할 수 있다. 벡터 프로세서(150)는 정수 명령들을 실행하기 위한 정수 유닛들(210) 및 포인트 명령들을 플로팅(float)하기 위한 플로팅 포인트 유닛들(212)을 포함하는 다양한 유닛들을 더 포함할 수 있다. 벡터 프로세서(150)는 메모리로부터 다양한 유닛들과 연관된 레지스터들로의 데이터의 이동을 조정하는 것을 담당하는 로드/저장 유닛(214)을 더 포함할 수 있다. 벡터 프로세서(150)는 데이터 엘리먼트들을 홀딩하는 데이터-캐시(216)를 더 포함할 수 있다. 벡터 프로세서(150)는 벡터 유닛(208)을 더 포함할 수 있다.
[0055] 벡터 유닛(208)은 도 3에 도시되는 다양한 회로 블록들을 포함할 수 있다. 도 3은 본 개시내용의 구현에 따른 벡터 유닛(208)을 예시한다. 도 3에 도시되는 벡터 유닛(208)은 구조화된 벡터 유닛 레지스터들을 물리적 레지스터들로 리네임(rename)하는 레지스터 리네임 블록(302)을 포함할 수 있다. 벡터 유닛(208)은 아직 완료되지 않은 벡터 명령들을 홀딩하는 비-순차적 발행 블록(304)을 더 포함할 수 있으며, 실행을 위한 이러한 명령들을 전송하는 것을 담당한다. 벡터 명령이 그 명령에 이용가능한 기능적 유닛들의 수 및 벡터 길이에 기반하여 반복적으로 발행될 수 있다는 것이 주목된다. 벡터 유닛(308)은, 엘리먼트들의 벡터들을 홀딩하는 벡터 레지스터 파일(306); 벡터 명령에 의해 수행되는 연산들의 수를 특정하기 위해 사용되는 벡터 길이 레지스터 파일(308); 벡터들을 합산하는 것과 같은 연산들로부터 발생하는 스칼라 값들을 홀딩하는 벡터 누산기 레지스터 파일(310); 단일 비트 값들을 홀딩하며 벡터 연산들의 실행을 제어하기 위해 사용되는 벡터 마스크 레지스터 파일(312)을 포함하는 다양한 물리적 벡터 레지스터 파일들(314), 및 2개의 곱셈기들(316), 4개의 ALU들(318), 단일 분할 및/또는 제곱 근(320), 최소/최대 값들을 탐색하기 위한 탐색 블록(322) 및 벡터 엘리먼트들을 단일 값으로 합산하기 위한 감소 블록(324)을 포함할 수 있는 (도 3에 도시되는) 다양한 기능적 블록들을 더 포함할 수 있다.
[0056] 도 3에 도시되는 블록들의 조합은 예시를 목적으로 선택되며, 완전한 것은 아니다.
[0057] 일 예에서, 벡터 서브세트를 형성하는 벡터 프로세서 레지스터들은, 벡터 명령들에 의해 연산되는 엘리먼트들의 집합들을 홀딩하는 벡터 레지스터들; 벡터 명령들의 길이, 및 엘리먼트 카운트들이 사용되는 다른 장소들을 특정하기 위해 사용되는 벡터 카운트 레지스터들; 단일 엘리먼트들을 통해 벡터 명령들의 거동을 제어하기 위해 사용되는 단일 비트들의 벡터를 홀딩하는 벡터 마스크 레지스터들; 및 스칼라 값들이 벡터 명령들에 대한 입력 또는 출력으로서 필요할 때 사용되는 벡터 누산기 레지스터들을 포함할 수 있다.
[0058] 도 4는 본 개시내용의 구현에 따른 주파수 도메인에서 비디오 프레임들을 정렬하기 위한 방법(400)의 예를 예시하는 흐름 다이어그램이다. 방법(400)은 도 1의 프로세싱 디바이스(135)의 정렬 프로세서(145)에 의해 수행될 수 있으며, 하드웨어(예컨대, 회로, 전용 로직, 프로그램가능한 로직, 마이크로코드 등), 소프트웨어(예컨대, 프로세싱 디바이스 상에서 실행되는 명령들), 또는 이들의 조합을 포함할 수 있다.
[0059] 도 4에 도시되는 바와 같이, 블록(405)에서, 프로세싱 디바이스(135)의 정렬 프로세서(145)는 기준 비디오 프레임을 선택하고, 원래의 이미지보다 작은 데시메이트 이미지를 생성하기 위해 기준 비디오 프레임을 데시메이트하고, 에지 맵을 생성하기 위해 데시메이트된 이미지에 대해 에지 검출을 수행하고, 그리고 데시메이트된 기준 비디오 프레임의 에지 맵을 주파수 도메인 표현으로 컨버팅하기 위해 주파수 변환을 적용시킬 수 있다. 블록(410)에서, 정렬 프로세서(145)는 기준 비디오 프레임에 대한 지터들에 대해 안정화될 필요가 있는 착신 비디오 프레임을 수신할 수 있다. 블록(415)에서, 정렬 프로세서(145)는 기준 비디오 프레임과 동일한 데시메이션 비로 착신 비디오 프레임을 데시메이트할 수 있다. 블록(420)에서, 정렬 프로세서(145)는 에지 검출기(예컨대, Canny 에지 검출기)를 사용하여 데시메이트된 착신 비디오 프레임에 대해 에지 맵을 컴퓨팅할 수 있다.
[0060] 블록(425)에서, 정렬 프로세서(145)는 에지 맵의 주파수 도메인 표현을 생성하기 위해 데시메이트된 착신 비디오 프레임의 에지 맵에 주파수 변환(예컨대, 2D Fourier 변환)을 적용시킬 수 있다.
[0061] 블록(430)에서, 정렬 프로세서(145)는 데시메이트된 착신 비디오 프레임의 에지 맵의 주파수 도메인 표현 및 데시메이트된 기준 비디오 프레임의 에지 맵의 주파수 도메인 표현에 기반하여 기준 비디오 프레임과 착신 비디오 프레임 사이의 오프셋을 추정할 수 있다. 일 구현에서, 정렬 프로세서(145)는 데시메이트된 착신 비디오 프레임의 에지 맵의 주파수 도메인 표현 및 데시메이트된 기준 비디오 프레임의 에지 맵의 주파수 도메인 표현을 교차-상관시킴으로써 오프셋을 계산할 수 있다. 블록(435)에서, 정렬 프로세서(145)는 정렬된 변환된 이미지를 생성하기 위해 오프셋을 고려하여 선택된 기준 비디오 프레임에 대해 착신 비디오 프레임을 정렬할 수 있다. 정렬은 착신 비디오 프레임의 수평 방향(x-축)으로의 픽셀 위치 변환 및 수직 방향(y-축)으로의 픽셀 위치 변환을 포함할 수 있는 오프셋에 따라 착신 비디오 프레임을 시프팅하는 것을 포함할 수 있다. 정렬 프로세서(145)는 하나 또는 그 초과의 픽셀 오프셋들을 고려하여 변환된 이미지의 각각의 픽셀의 위치를 조정할 수 있다.
[0062] 도 5는 본 개시내용의 구현에 따른 비디오 안정화를 위한 비디오 프레임 정렬을 제공하기 위한, 도 1의 시스템과 연관된 방법(500)을 예시하는 흐름 다이어그램이다. 블록(505)에서, 이미지가 특정 사이즈(예컨대, 1024 x 1080 픽셀들)보다 크면, 정렬 프로세서(145)는 이미지로부터 더 작은 윈도우(예컨대, 1024 x 512 픽셀들)를 크롭하고, 경계 효과들을 회피하기 위해 크롭된 이미지를 프로세싱할 수 있다. 블록(510)에서, 정렬 프로세서(145)는 이미지를 k회(예컨대, k는 4일 수 있음) 데시메이트할 수 있어서, 서브샘플링된 이미지(예컨대, k = 4일 때 256 x 128 픽셀들)를 발생시킨다. 블록(515)에서, 정렬 프로세서(145)는 서브샘플링된 이미지에 대해 에지 검출기(예컨대, Canny 에지 검출기)를 사용하여 에지 검출을 수행할 수 있다. 일 구현에서, 정렬 검출기는 먼저, 서브샘플링된 이미지에 대해 사전-프로세싱을 수행할 수 있다. 사전-프로세싱은 가우시안 블러링 필터를 사용하는 이미지 스무딩을 포함할 수 있다.
[0063] 블록(520)에서, 정렬 프로세서(145)는 기준 비디오 프레임을 선택한다. 비디오 안정화를 위해, 일 예에서, 기준 비디오 프레임은 비디오 레코딩에서의 제1 프레임일 수 있다. 총 오정렬이 m%(예컨대, m은 10%일 수 있음)를 초과하면, 정렬 프로세서(145)는 기준 이미지를 변경할 수 있다. 정렬되는 시퀀스의 마지막 비디오 프레임은 예컨대, 기준이 될 수 있거나, 또는 중간-프레임일 수 있다.
[0064] 블록(525)에서, 정렬 프로세서(145)는 기준 프레임과 다음 이미지들/프레임들 사이의 빠른 상관을 수행할 수 있다. 빠른 상관은 주파수 도메인에서 수행될 수 있다. 일 구현에서, 정렬 프로세서(145)는, 데시메이트된 비디오 프레임 및 데시메이트된 기준 비디오 프레임의 에지 맵들을 주파수 도메인 표현들로 먼저 변환함으로써 주파수 도메인에서 빠른 상관을 수행하고, 비디오 프레임과 기준 비디오 프레임 사이의 오프셋을 결정하기 위해 이들의 주파수 도메인 표현들을 교차-상관시킬 수 있다.
[0065] 블록(530)에서, 정렬 프로세서(145)는 상관 경계 효과들을 폐기하기 위해 교차 상관 이미지로부터 MxN 픽셀들을 크롭할 수 있다.
[0066] 블록(535)에서, 정렬 프로세서(145)는 각각의 이미지에 대한 교차 상관 피크(x, y) 포지션을 검출 및 저장할 수 있다. 일 예에서, 블록(535)은 벡터 프로세서(150)의 벡터 FP 유닛(212)에서 실행될 수 있다.
[0067] 블록(540)에서, 다수의 이미지들(3-6개의 이미지들) 또는 프레임들(예컨대, 10-60개의 프레임들)을 프로세싱한 이후에, 정렬 프로세서(145)는 각각의 이미지 또는 프레임의 (x, y) 포지션에 따라 원래의 전체 사이즈 이미지들을 정렬(변환)할 수 있다. [[Daniel, 주파수 도메인에서의 (x, y)에서의 피크는 공간 도메인에서의 오프셋들과 어떤 관련이 있습니까?]] 블록(545)에서, 변환 이후에, 이미지들은 블랙 보더(black border)들을 가질 수 있다. 정렬 프로세서(145)는 각각의 이미지/프레임의 최소 사이즈 이미지를 크롭함으로써 블랙 보더들을 폐기할 수 있다(가장 큰 오정렬을 가지는 것이 가장 작을 것이며, 가장 큰 블랙 보더를 가질 수 있음). 후속 프레임들을 리스케일링하는 것을 회피하기 위해 오버랩 프레임 사이즈가 다수의 기준들에 대해 동일해야 한다는 것이 주목된다.
[0068] 블랙 보더들을 제거한 이후에, 블록(550)에서, 정렬 프로세서(145)는 각각의 이미지를 원래의 사이즈로 줌 인할 수 있다. 줌-인은 프로세싱된 이미지를 원래의 사이즈(예컨대, 1024 x 1080 픽셀들)로 리샘플링하는 것을 포함할 수 있다. 일 예에서, 블록(550)은 주로 필터링이며, 벡터 FP 유닛(312) 내의 정렬 프로세서(145)에 의해 실행될 수 있다.
[0069] 정렬 해상도는 데시메이션 팩터와 동일할 수 있다. 예컨대, 데시메이션 팩터가 4이면, 해상도는 4 픽셀들일 것이다. 더 양호한 해상도가 요구되면, 블록(555)에서, 프로세스는 다음과 같이 반복될 수 있다: 정렬 프로세서(145)는, 예컨대, 각각의 정렬된 이미지의 중심으로부터 256/128 픽셀들을 크롭할 수 있고, 이어서, 정렬 프로세서(145)는 블록들(515 내지 550)의 실행을 반복할 수 있다. 이 경우, 결과적 해상도는 1 픽셀이 될 것이다.
[0070] 주파수 도메인 방법과 비교하기 위해 5가지의 방법들이 평가될 수 있다. 표현을 용이하게 하기 위해, OST는 OST에 의한 SIFT(scale-invariant feature transform) 구현을 표시할 수 있고, OST2는 제안되는 주파수 도메인 프로세싱 접근법을 표시할 수 있으며, Lowe는 Canny, J., "A Computational Approach To Edge Detection", IEEE Trans. Pattern Analysis and Machine Intelligence, pp. 679-698, 1986에서 설명되는 바와 같이 구현되는 SIFT를 표시할 수 있고, AV는
Figure pct00001
에서 설명되는 바와 같이 SIFT 구현을 표시할 수 있으며, KLT는
Figure pct00002
에서 설명되는 바와 같이
Figure pct00003
변환을 표시할 수 있다.
[0071] 도 6a, 도 7a, 도 9a, 도 11a, 도 13a 및 도 15a에 각각 도시되는 6개의 비디오 프레임들 tr1-tr6은 비디오로부터 캡처된 하나의 비디오 프레임으로부터 생성될 수 있다. 각각의 방법의 유효성을 평가하기 위해, 비디오 프레임의 특정 영역은 6개의 이미지들을 생성하기 위해 취해질 수 있다. 이미지들의 임의의 쌍 사이의 오프셋이 알려지고, 이 오프셋은 각각의 평가된 방법이 각각의 이미지 쌍 사이의 픽셀 오프셋을 정확하게 발견할 수 있는지를 확인하기 위해 참조로서 사용된다. 추가로, 그러한 이미지들의 강도는 증가될 수 있는데, 그 이유는 그 강도가 또한 비디오 품질뿐만 아니라 비디오 안정화를 위한 복잡도에 영향을 미치기 때문이다.
[0072] OST2에서, 제1 단계는 각각의 이미지의 에지를 발견하는 것이다. OST2에 의해 검출된 에지들은 도 6b, 도 7b, 도 9b, 도 11b, 도 13b 및 도 15b에 도시될 수 있다. 추가적으로, 도 6c는 OST2에 의해 발견된 에지들(즉, 흰색 선) 및 Lowe에 의해 선택된 키포인트들(즉, 보라색 점들)을 예시한다. 에지 검출과 키포인트 선택 사이의 프로세싱 결과들의 관계는 사전에 관측될 수 있다.
[0073] 비디오 프레임들을 정렬하기 위해, 착신 비디오 프레임의 에지들과 기준 비디오 프레임의 에지들 사이의 픽셀 오프셋들이 추정된다. 이 평가에서, tr1은 기준 비디오 프레임인 것으로 적용되고, tr2-tr6은 착신 비디오 프레임들로서 tr1에 따라 보정된다. 각각의 착신 비디오 프레임의 픽셀 오프셋을 추정하기 위해, 이 2개의 비디오 프레임들 사이의 검출된 에지들/키포인트들의 교차 상관이 계산된다. 교차 상관의 피크 위치는 정렬을 위해 참조로서 사용된다. 관측의 용이함을 위해, 교차 상관 결과들은 추가로 정규화된다. 도 8a-8c, 도 10a-10c, 도 12a-12c, 도 14a-14c 및 도 16a-16c는 tr2-tr6의 정규화 교차 상관의 결과들을 제시한다.
Figure pct00004
정렬을 위해 요구되는 키포인트들의 수
[0074] 표 1은 6개의 비디오 프레임들 tr1-tr6을 정확하게 정렬하기 위한 요구되는 키포인트들의 수를 열거한다. 각각의 방법에 대한 상관에 걸쳐 정규화 교차 상관의 피크 위치가 도 8a-8c, 도 10a-10c, 도 12a-12c, 도 14a-14c 및 도 16a-16c에서 보여지는 바와 같이 동일하지만, 정확한 피크 위치를 추정하기 위해 사용되는 키포인트들의 수는 동일하지 않다. 비디오 프레임들을 적절하게 정렬하기 위해, OST2(주파수 도메인 프로세싱)는 SIFT 및 KLT를 링크하지 않는 키포인트들의 수의 최소 요건을 가지지 않는다. 추가로, 컴퓨테이션 복잡도는 Lowe에서 설명되는 바와 같이 SIFT의 타겟 키포인트 수에 의존하며, 정확한 오프셋 추정을 위해 더 많은 키포인트들이 필요하다. SIFT에 비해, KLT는 오프셋 추정을 위해 더 많은 키포인트들을 필요로 한다. 또한, OST, Lowe, AV가 SIFT의 단지 상이한 구현들이기 때문에, 요구되는 키포인트들은 동일하다.
[0075] 위의 설명에서는, 여러 세부사항들이 기재되어 있다. 그러나, 본 개시내용의 이점인, 본 개시내용이 이러한 특정 세부사항들 없이 실시될 수 있다는 것이 당업자에게 명백할 것이다. 일부 사례들에서, 본 개시내용을 모호하게 하는 것을 회피하기 위해, 잘-알려진 구조들 및 디바이스들이 상세하게 보다는 블록 다이어그램 형태로 도시된다.
[0076] 상세한 설명의 일부 부분들은 컴퓨터 메모리 내의 데이터 비트들에 대한 동작들의 알고리즘들 및 심볼 표현들에 관해 제시되었다. 이 알고리즘 설명들 또는 표현들은 그 작업의 실질을 당업자들에게 가장 효과적으로 전달하기 위해 데이터 프로세싱 기술들에서의 당업자들에 의해 사용되는 수단이다. 알고리즘은 여기서 그리고 일반적으로, 원하는 결과에 이르는 단계들의 자기-일관적 시퀀스인 것으로 고려된다. 그 단계들은 물리적 양들의 물리적 조작들을 요구하는 단계들이다. 통상적으로, 반드시는 아니지만, 이러한 양들은 저장, 전달, 조합, 비교 및 이와 다르게 조작될 수 있는 전기적 또는 자기적 신호들의 형태를 취한다. 주로, 일반적 용법의 이유들로 인해, 이러한 신호들을 비트들, 값들, 엘리먼트들, 심볼들, 문자들, 항들, 수들 등으로 지칭하는 것이 때로는 편리한 것으로 증명되었다.
[0077] 그러나, 이러한 그리고 유사한 용어들의 전부는 적절한 물리적 양들과 연관되어야 하며, 이 이러한 양들에 적용되는 편리한 라벨들에 불과하다는 것이 유념되어야 한다. 다음의 논의로부터 명백한 바와 같이 달리 구체적으로 서술되지 않으면, 설명의 전반에 걸쳐, "세그먼트", "분석", 결정", "인에이블링", "식별", "수정" 등과 같은 용어들을 활용하는 논의들은 컴퓨터 시스템의 레지스터들 및 메모리들 내의 물리적(예컨대, 전자적) 양들로서 표현되는 데이터를 컴퓨터 시스템 메모리들 또는 레지스터들 또는 다른 그러한 정보 저장, 송신 또는 디스플레이 디바이스들 내에서 물리적 양들로서 유사하게 표현되는 다른 데이터로 조작 및 변환하는, 컴퓨터 시스템 또는 유사한 전자 컴퓨팅 디바이스의 액션들 및 프로세스들을 지칭하는 것이 인식된다.
[0078] 본 개시내용은 또한, 본원에서의 동작들을 수행하기 위한 장치에 관련된다. 이 장치는 요구되는 목적들을 위해 특수하게 구성될 수 있거나, 또는 컴퓨터에 저장된 컴퓨터 프로그램에 의해 선택적으로 작동되거나 또는 재구성된 범용 컴퓨터를 포함할 수 있다. 그러한 컴퓨터 프로그램은, 플로피 디스크들, 광학 디스크들, CD-ROM들 및 자기-광학 디스크들, ROM(read-only memory)들, RAM(random access memory)들, EPROM들, EEPROM들, 자기 또는 광학 카드들, 또는 전자 명령들을 저장하기에 적합한 임의의 타입의 매체들을 포함하는 임의의 타입의 디스크와 같은(그러나, 이들로 제한되는 것은 아님) 컴퓨터 판독가능한 저장 매체에 저장될 수 있다.
[0079] "예" 또는 "예시적"이라는 용어들은, 예, 사례 또는 예시로서 제공됨을 의미하는 것으로 본원에서 사용된다. "예" 또는 "예시적"으로서 본원에서 설명되는 임의의 양상 또는 설계가 반드시 다른 양상들 또는 설계들에 비해 선호되거나 또는 유리한 것으로 해석되는 것은 아니다. 오히려, "예" 또는 "예시적"이라는 용어들의 사용은 구체적 방식으로 개념들을 제시하도록 의도된다. 본 출원에서 사용되는 바와 같이, "또는"이라는 용어는 배타적 "또는"이라기보다는 포괄적 "또는"을 의미하도록 의도된다. 즉, 달리 명시되지 않거나 또는 문맥상 명확하지 않으면, "X는 A 또는 B를 포함한다"는 본질적인 포괄적 치환들 중 임의의 것을 의미하도록 의도된다. 즉, X가 A를 포함하면; X가 B를 포함하면; 또는 X가 A 및 B 둘 모두를 포함하면, "X는 A 또는 B를 포함한다"는 위의 사례들 중 어떤 사례에서도 만족된다. 또한, 본 출원 및 첨부된 청구항들에서 사용되는 단수 표현들은 달리 명시되지 않거나 또는 단수 형태로 지시되는 것으로 문맥상 명확하지 않으면, 일반적으로 "하나 또는 그 초과"를 의미하는 것으로 해석되어야 한다. 더욱이, 전반에 걸쳐 "구현" 또는 "일 구현" 또는 "구현" 또는 "일 구현"이라는 용어의 사용은 이와 같이 설명되지 않는 한 동일한 구현 또는 구현을 의미하도록 의도되지 않는다.
[0080] "일 구현" 또는 "구현"에 대한 본 명세서 전반에 걸친 참조는, 구현과 관련하여 설명되는 특정 특징, 구조, 또는 특성이 적어도 하나의 구현 내에 포함된다는 것을 의미한다. 따라서, 본 명세서 전반에 걸친 다양한 장소들에서의 어구 "일 구현에서" 또는 "구현에서"라는 어구의 출현들은 반드시 모두 동일한 구현을 지칭하고 있는 것은 아니다. 또한, "또는"이라는 용어는 배타적 "또는"이라기보다는 포괄적 "또는"을 의미하도록 의도된다.
[0081] 도 17은 컴퓨터 시스템 내에서, 명령들의 세트가, 머신으로 하여금, 본원에서 논의되는 방법론들 중 임의의 하나 또는 그 초과의 방법론들을 수행하게 하기 위해 실행될 수 있는 예시적 형태의 컴퓨터 시스템(1700)에서의 머신의 도식적 표현을 예시한다. 일부 예들에서, 머신은 LAN, 인트라넷, 익스트라넷 또는 인터넷에서 다른 머신들에 연결(예컨대, 네트워킹)될 수 있다. 머신은 클라이언트-서버 네트워크 환경에서 서버 머신의 용량에서 동작할 수 있다. 머신은 PC(personal computer), STB(set-top box), 서버, 네트워크 라우터, 스위치 또는 브릿지 또는 해당 머신에 의해 취해질 액션들을 특정하는 (순차적 또는 그 이외의) 명령들의 세트를 실행할 수 있는 임의의 머신일 수 있다. 추가로, 단일 머신만이 예시되어 있지만, "머신"이라는 용어는 본원에서 논의되는 방법론들 중 임의의 하나 또는 그 초과의 방법론들을 수행하기 위한 명령들의 세트(또는 다수의 세트들)를 개별적으로 또는 공동으로 실행하는 머신들의 임의의 집합을 포함하기 위해 또한 취해질 것이다.
[0082] 예시적 컴퓨터 시스템(1700)은, 프로세싱 디바이스(프로세서)(1702), 메인 메모리(1704)(예컨대, ROM(read-only memory), 플래시 메모리, DRAM(dynamic random access memory), 이를테면, SDRAM(synchronous DRAM)), 정적 메모리(1706)(예컨대, 플래시 메모리, SRAM(static random access memory)) 및 데이터 저장 디바이스(1716)를 포함하며, 이들은 버스(1708)를 통해 서로 통신한다.
[0083] 프로세서(1702)는 하나 또는 그 초과의 범용 프로세싱 디바이스들, 이를테면, 마이크로프로세서, 중심 프로세싱 유닛 등을 나타낸다. 더 상세하게, 프로세서(1702)는 CISC(complex instruction set computing) 마이크로프로세서, RISC(reduced instruction set computing) 마이크로프로세서, VLIW(very long instruction word) 마이크로프로세서, 또는 다른 명령 세트들을 구현하는 프로세서 또는 명령 세트들의 조합을 구현하는 프로세서들일 수 있다. 프로세서(1702)는 또한, 하나 또는 그 초과의 특수-목적 프로세싱 디바이스들, 이를테면, ASIC(application specific integrated circuit), FPGA(field programmable gate array), DSP(digital signal processor), 네트워크 프로세서 등일 수 있다. 도 1에 도시되는 정렬 프로세서(145)는 본원에서 논의되는 동작들 및 단계들을 수행하도록 구성된 프로세서(1702)에 의해 실행될 수 있다.
[0084] 컴퓨터 시스템(1700)은 네트워크 인터페이스 디바이스(1722)를 더 포함할 수 있다. 컴퓨터 시스템(1700)은 또한, 비디오 디스플레이 유닛(1710)(예컨대, LCD(liquid crystal display) 또는 CRT(cathode ray tube)), 영숫자-혼합 입력 디바이스(1712)(예컨대, 키보드), 커서 제어 디바이스(1714)(예컨대, 마우스) 및 신호 생성 디바이스(1720)(예컨대, 스피커)를 포함할 수 있다.
[0085] 드라이브 유닛(1716)은 본원에서 설명되는 방법론들 또는 기능들 중 임의의 하나 또는 그 초과의 방법론들 또는 기능들을 구현하는 명령들의 하나 또는 그 초과의 세트들(예컨대, 정렬 프로세서(145)의 명령들)이 저장된 컴퓨터-판독가능한 매체(1724)를 포함할 수 있다. 정렬 프로세서(145)의 명령들은 또한, 컴퓨터 시스템(1700)에 의한 그 실행 동안 메인 메모리(1704) 내에 그리고/또는 프로세서(1702) 내에 적어도 부분적으로 또는 완전하게 상주할 수 있고, 메인 메모리(1704) 및 프로세서(1702)는 또한 컴퓨터-판독가능한 매체들을 구성한다. 정렬 프로세서(145)의 명령들은 네트워크 인터페이스 디바이스(1722)를 통해 네트워크 상에서 추가로 송신 또는 수신될 수 있다.
[0086] 컴퓨터-판독가능한 저장 매체(1724)가 일 예에서 단일 매체인 것으로 도시되지만, "컴퓨터-판독가능한 저장 매체"라는 용어는 명령들의 하나 또는 그 초과의 세트들을 저장하는 단일의 비-일시적(non-transitory) 매체 또는 다수의 비-일시적 매체들(예컨대, 중앙집중화된 또는 분산된 데이터베이스, 및/또는 연관된 캐시들 및 서버들)을 포함하기 위해 취해져야 된다. "컴퓨터-판독가능한 저장 매체"라는 용어는 또한, 머신에 의한 실행을 위한 명령들의 세트를 저장하거나, 인코딩하거나 또는 운반할 수 있으며, 머신으로 하여금, 본 개시내용의 방법론들 중 임의의 하나 또는 그 초과의 방법론들을 수행하게 하는 임의의 매체를 포함하도록 취해질 것이다. 이에 따라, "컴퓨터-판독가능한 저장 매체"라는 용어는 고체-상태(solid-state) 메모리들, 광학 매체들 및 자기 매체들을 포함하도록(그러나, 이들로 제한되는 것은 아님) 취해질 것이다.
[0087] 위의 설명에서는, 여러 세부사항들이 기재되어 있다. 그러나, 본 개시내용의 이점인, 본 개시내용의 예들이 이러한 특정 세부사항들 없이 실시될 수 있다는 것이 당업자에게 명백하다. 일부 사례들에서, 설명을 모호하게 하는 것을 회피하기 위해, 잘-알려진 구조들 및 디바이스들이 상세하게 보다는 블록 다이어그램 형태로 도시된다.
[0088] 상세한 설명의 일부 부분들은 컴퓨터 메모리 내의 데이터 비트들에 대한 동작들의 알고리즘들 및 심볼 표현들에 관해 제시된다. 이 알고리즘 설명들 또는 표현들은 그 작업의 실질을 당업자들에게 가장 효과적으로 전달하기 위해 데이터 프로세싱 기술들에서의 당업자들에 의해 사용되는 수단이다. 알고리즘은 여기서 그리고 일반적으로, 원하는 결과에 이르는 단계들의 자기-일관적 시퀀스인 것으로 고려된다. 그 단계들은 물리적 양들의 물리적 조작들을 요구하는 단계들이다. 통상적으로, 반드시는 아니지만, 이러한 양들은 저장, 전달, 조합, 비교 및 이와 다르게 조작될 수 있는 전기적 또는 자기적 신호들의 형태를 취한다. 주로, 일반적 용법의 이유들로 인해, 이러한 신호들을 비트들, 값들, 엘리먼트들, 심볼들, 문자들, 항들, 수들 등으로 지칭하는 것이 때로는 편리한 것으로 증명되었다.
[0089] 그러나, 이러한 그리고 유사한 용어들의 전부는 적절한 물리적 양들과 연관되어야 하며, 이 이러한 양들에 적용되는 편리한 라벨들에 불과하다는 것이 유념되어야 한다. 위의 논의로부터 명백한 바와 같이 달리 구체적으로 서술되지 않으면, 설명의 전반에 걸쳐, "수신", "기록", 유지" 등과 같은 용어들을 활용하는 논의들은, 새로운 좌표 시스템에 대해, 컴퓨터 시스템의 레지스터들 및 메모리들 내의 물리적(예컨대, 전자적) 양들로서 표현되는 데이터를 컴퓨터 시스템 메모리들 또는 레지스터들 또는 다른 그러한 정보 저장, 송신 또는 디스플레이 디바이스들 내에서 물리적 양들로서 유사하게 표현되는 다른 데이터로 조작 및 변환하는, 컴퓨터 시스템 또는 유사한 전자 컴퓨팅 디바이스의 액션들 및 프로세스들을 지칭하는 것이 인식된다.
[0090] 본 개시내용의 예들은 또한, 본원에서의 동작들을 수행하기 위한 장치에 관련된다. 이 장치는 요구되는 목적들을 위해 특수하게 구성될 수 있거나, 또는 컴퓨터에 저장된 컴퓨터 프로그램에 의해 선택적으로 작동되거나 또는 재구성된 범용 컴퓨터를 포함할 수 있다. 1 초과의 옥타브에 의해 데시메이트된 크로마 채널의 송신, 수신, 및 복원 및 업스케일링을 위한, 본원에서 개시되는 시스템 및 방법은 지각적 품질(perceptual quality)을 개선하고, 그리고/또는 기존 이미지 및 비디오 압축 또는 송신 시스템들 및 방법들의 송신 또는 저장 효율성, 이를테면, 몇 가지만 예를 들자면, 오버-더-탑(over-the-top) 비디오 전달에 대한 실-시간 효율성, 모바일 디바이스들로부터 비디오 및 이미지 데이터의 업로딩 및 다운로딩 모두를 수행할 때의 공중 라디오-액세스-네트워크 혼잡의 비용-효율적 실-시간 감소, 증가된 실-시간 통과-대역 텔레비전 전달 용량, 위성 트랜스폰더 용량의 증가, 컨텐츠 관리 시스템들 및 네트워크 DVR 아키텍처들에 대한 저장 비용들의 감소, 및 분산 네트워크 코어에서의 이미지들 및 비디오의 고-스루풋 처리는 많은 분야들에서 문제들을 해결한다.
[0091] 그러한 컴퓨터 프로그램은, 플로피 디스크들, 광학 디스크들, CD-ROM들 및 자기-광학 디스크들, ROM(read-only memory)들, RAM(random access memory)들, EPROM들, EEPROM들, 자기 또는 광학 카드들, 또는 전자 명령들을 저장하기에 적합한 임의의 타입의 매체들을 포함하는 임의의 타입의 디스크와 같은(그러나, 이들로 제한되는 것은 아님) 컴퓨터 판독가능한 저장 매체에 저장될 수 있다.
[0092] 본원에서 제시되는 알고리즘들 및 디스플레이들은 임의의 특정한 컴퓨터 또는 다른 장치와 본질적으로 관련되지는 않는다. 다양한 범용 시스템들은 본원에서의 교시사항들에 따라 프로그램들과 함께 사용될 수 있거나, 또는 요구되는 방법 단계들을 수행하기 위해 더 특수화된 장치를 구성하는 것이 편리한 것으로 입증될 수 있다. 다양한 이러한 시스템들에 대한 예시적 구조는 본원에서의 설명으로부터 명백하다. 또한, 본 개시내용은 임의의 특정 프로그래밍 언어를 참조하여 설명되지 않는다. 다양한 프로그래밍 언어들은 본원에서 설명되는 바와 같이 본 개시내용의 교시사항들을 구현하기 위해 사용될 수 있다는 것이 인식될 것이다.
[0093] 본 개시내용의 많은 변경들 및 수정들이 아마 위의 설명을 읽은 이후에 당업자에게 명백해질 것이지만, 예시로서 도시되고 설명되는 임의의 특정 구현이 제한하는 것으로 고려되도록 결코 의도되지 않는다는 것이 이해될 것이다. 그에 따라서, 다양한 구현들의 세부사항들에 대한 참조들은 청구항들의 범위를 제한하도록 의도되는 것이 아니며, 이들은 그 자체가 본 개시내용으로 간주되는 그러한 특징들만을 인용한다.

Claims (20)

  1. 방법으로서,
    에지 검출기를 실행시키는 프로세싱 디바이스가, 기준 비디오 프레임과 연관된 제1 에지 맵을 생성하는 단계;
    상기 에지 검출기를 실행시키는 프로세싱 디바이스가, 착신(incoming) 비디오 프레임과 연관된 제2 에지 맵을 생성하는 단계;
    상기 프로세싱 디바이스가, 상기 제1 에지 맵의 제1 주파수 도메인 표현 및 상기 제2 에지 맵의 제2 주파수 도메인 표현에 기반하여 상기 기준 비디오 프레임과 비디오 프레임 사이의 오프셋을 계산하는 단계;
    상기 프로세싱 디바이스가, 상기 기준 비디오 프레임에 대해 상기 착신 비디오 프레임을 정렬하기 위해, 계산된 오프셋에 따라 상기 착신 비디오 프레임의 복수의 픽셀들의 위치들을 변환하는 단계; 및
    상기 프로세싱 디바이스가, 정렬된 비디오 프레임을 다운스트림 디바이스에 송신하는 단계를 포함하는, 방법.
  2. 제1 항에 있어서,
    상기 복수의 픽셀들의 위치들을 변환하는 단계는,
    상기 오프셋에 기반하여 상기 비디오 프레임의 복수의 픽셀들 중 각각의 픽셀의 위치를 조정하는 단계를 더 포함하는, 방법.
  3. 제1 항에 있어서,
    상기 기준 비디오 프레임은 비디오 프레임 레이트 또는 비디오 품질 중 적어도 하나에 의존하는 레이트로 업데이트되는, 방법.
  4. 제1 항에 있어서,
    데시메이트(decimate)된 착신 비디오 프레임을 생성하기 위해 상기 착신 비디오 프레임을 데시메이트하는 단계; 및
    데시메이트된 기준 비디오 프레임을 생성하기 위해 상기 기준 비디오 프레임을 데시메이트하는 단계를 더 포함하는, 방법.
  5. 제4 항에 있어서,
    상기 데시메이트된 기준 비디오 프레임에 대해 상기 에지 검출기를 적용시킴으로써 상기 제1 에지 맵을 생성하는 단계; 및
    상기 데시메이트된 착신 비디오 프레임에 대해 상기 에지 검출기를 적용시킴으로써 상기 제2 에지 맵을 생성하는 단계를 더 포함하는, 방법.
  6. 제5 항에 있어서,
    상기 제1 주파수 도메인 표현을 생성하기 위해 상기 제1 에지 맵에 주파수 변환을 적용시키는 단계; 및
    상기 제2 주파수 도메인 표현을 생성하기 위해 상기 제2 에지 맵에 주파수 변환을 적용시키는 단계를 더 포함하는, 방법.
  7. 제6 항에 있어서,
    상기 주파수 변환은 Fourier 변환인, 방법.
  8. 제1 항에 있어서,
    상기 에지 검출기는 Canny 에지 검출기인, 방법.
  9. 제1 항에 있어서,
    상기 기준 비디오 프레임과 상기 비디오 프레임 사이의 오프셋을 계산하는 단계는,
    제1 주파수 도메인 표현과 제2 주파수 도메인 표현 사이의 교차-상관을 계산하는 단계;
    상기 교차-상관의 피크의 위치를 결정하는 단계; 및
    상기 교차-상관의 피크의 위치에 기반하여 상기 오프셋을 결정하는 단계를 더 포함하는, 방법.
  10. 시스템으로서,
    메모리; 및
    상기 메모리에 동작가능하게 커플링된 프로세싱 디바이스를 포함하고,
    상기 프로세싱 디바이스는,
    에지 검출기를 실행시킴으로써, 기준 비디오 프레임과 연관된 제1 에지 맵을 생성하고;
    상기 에지 검출기를 실행시킴으로써, 착신 비디오 프레임과 연관된 제2 에지 맵을 생성하고;
    상기 제1 에지 맵의 제1 주파수 도메인 표현 및 상기 제2 에지 맵의 제2 주파수 도메인 표현에 기반하여 상기 기준 비디오 프레임과 비디오 프레임 사이의 오프셋을 계산하고;
    상기 기준 비디오 프레임에 대해 상기 착신 비디오 프레임을 정렬하기 위해, 계산된 오프셋에 따라 상기 착신 비디오 프레임의 복수의 픽셀들의 위치들을 변환하고; 그리고
    정렬된 비디오 프레임을 다운스트림 디바이스에 송신하기 위한 것인, 시스템.
  11. 제10 항에 있어서,
    상기 복수의 픽셀들의 위치를 변환하기 위해, 상기 프로세싱 디바이스는 추가로, 상기 오프셋에 기반하여 상기 비디오 프레임의 복수의 픽셀들 중 각각의 픽셀의 위치를 조정하기 위한 것인, 시스템.
  12. 제10 항에 있어서,
    상기 프로세싱 디바이스는 추가로,
    데시메이트된 착신 비디오 프레임을 생성하기 위해 상기 착신 비디오 프레임을 데시메이트하고; 그리고
    데시메이트된 기준 비디오 프레임을 생성하기 위해 상기 기준 비디오 프레임을 데시메이트하기 위한 것인, 시스템.
  13. 제12 항에 있어서,
    상기 프로세싱 디바이스는 추가로,
    상기 데시메이트된 기준 비디오 프레임에 대해 상기 에지 검출기를 적용시킴으로써 상기 제1 에지 맵을 생성하고; 그리고
    상기 데시메이트된 착신 비디오 프레임에 대해 상기 에지 검출기를 적용시킴으로써 상기 제2 에지 맵을 생성하기 위한 것인, 시스템.
  14. 제13 항에 있어서,
    상기 프로세싱 디바이스는 추가로,
    상기 제1 주파수 도메인 표현을 생성하기 위해 상기 제1 에지 맵에 주파수 변환을 적용시키고; 그리고
    상기 제2 주파수 도메인 표현을 생성하기 위해 상기 제2 에지 맵에 주파수 변환을 적용시키기 위한 것인, 시스템.
  15. 제14 항에 있어서,
    상기 주파수 변환은 Fourier 변환이고,
    상기 에지 검출기는 Canny 에지 검출기인, 시스템.
  16. 명령들을 저장하는 비-일시적 컴퓨터-판독가능한 매체로서,
    상기 명령들은, 프로세싱 디바이스에 의해 실행될 때, 상기 프로세싱 디바이스로 하여금,
    에지 검출기를 실행시키는 상기 프로세싱 디바이스가, 기준 비디오 프레임과 연관된 제1 에지 맵을 생성하게 하고;
    상기 에지 검출기를 실행시키는 프로세싱 디바이스가, 착신 비디오 프레임과 연관된 제2 에지 맵을 생성하게 하고;
    상기 프로세싱 디바이스가, 상기 제1 에지 맵의 제1 주파수 도메인 표현 및 상기 제2 에지 맵의 제2 주파수 도메인 표현에 기반하여 상기 기준 비디오 프레임과 비디오 프레임 사이의 오프셋을 계산하게 하고;
    상기 프로세싱 디바이스가, 상기 기준 비디오 프레임에 대해 상기 착신 비디오 프레임을 정렬하기 위해, 계산된 오프셋에 따라 상기 착신 비디오 프레임의 복수의 픽셀들의 위치들을 변환하게 하고; 그리고
    상기 프로세싱 디바이스가, 정렬된 비디오 프레임을 다운스트림 디바이스에 송신하게 하는, 비-일시적 컴퓨터-판독가능한 매체.
  17. 제16 항에 있어서,
    상기 복수의 픽셀들의 위치를 변환하기 위해, 상기 프로세싱 디바이스는 추가로, 상기 오프셋에 기반하여 상기 비디오 프레임의 복수의 픽셀들 중 각각의 픽셀의 위치를 조정하기 위한 것인, 비-일시적 컴퓨터-판독가능한 매체.
  18. 제16 항에 있어서, 상기 프로세싱 디바이스는 추가로,
    데시메이트된 착신 비디오 프레임을 생성하기 위해 상기 착신 비디오 프레임을 데시메이트하고; 그리고
    데시메이트된 기준 비디오 프레임을 생성하기 위해 상기 기준 비디오 프레임을 데시메이트하기 위한 것인, 비-일시적 컴퓨터-판독가능한 매체.
  19. 제18 항에 있어서,
    상기 프로세싱 디바이스는 추가로,
    상기 데시메이트된 기준 비디오 프레임에 대해 상기 에지 검출기를 적용시킴으로써 상기 제1 에지 맵을 생성하고; 그리고
    상기 데시메이트된 착신 비디오 프레임에 대해 상기 에지 검출기를 적용시킴으로써 상기 제2 에지 맵을 생성하기 위한 것인, 비-일시적 컴퓨터-판독가능한 매체.
  20. 제19 항에 있어서,
    상기 프로세싱 디바이스는 추가로,
    상기 제1 주파수 도메인 표현을 생성하기 위해 상기 제1 에지 맵에 주파수 변환을 적용시키고; 그리고
    상기 제2 주파수 도메인 표현을 생성하기 위해 상기 제2 에지 맵에 주파수 변환을 적용시키기 위한 것인, 비-일시적 컴퓨터-판독가능한 매체.
KR1020187007808A 2015-08-19 2016-08-18 비디오 안정화를 위한 비디오 이미지 정렬 KR20180043312A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562206911P 2015-08-19 2015-08-19
US62/206,911 2015-08-19
US15/236,904 US9948859B2 (en) 2015-08-19 2016-08-15 Video image alignment for video stabilization
US15/236,904 2016-08-15
PCT/US2016/047474 WO2017031270A1 (en) 2015-08-19 2016-08-18 Video image alignment for video stabilization

Publications (1)

Publication Number Publication Date
KR20180043312A true KR20180043312A (ko) 2018-04-27

Family

ID=58051813

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187007808A KR20180043312A (ko) 2015-08-19 2016-08-18 비디오 안정화를 위한 비디오 이미지 정렬

Country Status (5)

Country Link
US (1) US9948859B2 (ko)
EP (1) EP3338249B1 (ko)
KR (1) KR20180043312A (ko)
CN (1) CN107924576A (ko)
WO (1) WO2017031270A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9998666B2 (en) * 2015-08-26 2018-06-12 Duke University Systems and methods for burst image deblurring
US10204656B1 (en) 2017-07-27 2019-02-12 Adobe Inc. Video processing architectures which provide looping video
WO2020081018A1 (en) * 2018-10-17 2020-04-23 Aselsan Elektroni̇k Sanayi̇ Ve Ti̇caret Anoni̇m Şi̇rketi̇ Video processing-based image stabilization method
CN111709979B (zh) * 2020-05-15 2023-08-25 北京百度网讯科技有限公司 图像对齐的方法、装置、电子设备和存储介质
US20230175958A1 (en) * 2021-12-06 2023-06-08 Honeywell International Inc. Vibration correction methods and systems for gas detecting apparatuses

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6373970B1 (en) 1998-12-29 2002-04-16 General Electric Company Image registration using fourier phase matching
US6711293B1 (en) 1999-03-08 2004-03-23 The University Of British Columbia Method and apparatus for identifying scale invariant features in an image and use of same for locating an object in an image
EP1050850A1 (en) * 1999-05-03 2000-11-08 THOMSON multimedia Process for estimating a dominant motion between two frames
DE10026305A1 (de) * 2000-05-26 2001-11-29 Sick Ag Optoelektronische Vorrichtung
US7042525B1 (en) 2000-07-06 2006-05-09 Matsushita Electric Industrial Co., Ltd. Video indexing and image retrieval system
US8254674B2 (en) * 2004-10-28 2012-08-28 DigitalOptics Corporation Europe Limited Analyzing partial face regions for red-eye detection in acquired digital images
EP2316328B1 (en) * 2003-09-15 2012-05-09 Super Dimension Ltd. Wrap-around holding device for use with bronchoscopes
US7620269B1 (en) 2004-07-01 2009-11-17 Sandia Corporation Edge-based correlation image registration for multispectral imaging
GB0425430D0 (en) * 2004-11-18 2004-12-22 Mitsubishi Electric Inf Tech Dominant motion analysis
US20080090312A1 (en) * 2006-10-17 2008-04-17 Inkyu Park LITHOGRAPHY ALIGNMENT SYSTEM AND METHOD USING nDSE-BASED FEEDBACK CONTROL
CN101681084B (zh) * 2007-03-26 2013-02-20 派尔高公司 改善摄像机的视频图像的方法
US8825131B2 (en) * 2009-10-14 2014-09-02 Nocimed, Llc MR spectroscopy system and method for diagnosing painful and non-painful intervertebral discs
GB201117191D0 (en) * 2011-10-04 2011-11-16 Imagination Tech Ltd +Detecting image impairments in an interpolated image
CN103714547B (zh) * 2013-12-30 2017-03-22 北京理工大学 一种结合边缘区域和互相关的图像配准方法
US9443367B2 (en) 2014-01-17 2016-09-13 Outerwall Inc. Digital image coin discrimination for use with consumer-operated kiosks and the like
WO2015176280A1 (en) * 2014-05-22 2015-11-26 Microsoft Technology Licensing, Llc Re-encoding image sets using frequency-domain differences
CN104318568B (zh) * 2014-10-24 2017-07-28 武汉华目信息技术有限责任公司 一种图像配准的方法和系统
CN104537680A (zh) * 2015-01-21 2015-04-22 北京联合大学 基于边缘显著度的efmt异源图像配准方法及系统

Also Published As

Publication number Publication date
WO2017031270A1 (en) 2017-02-23
EP3338249A1 (en) 2018-06-27
US9948859B2 (en) 2018-04-17
EP3338249A4 (en) 2019-01-16
CN107924576A (zh) 2018-04-17
US20170054909A1 (en) 2017-02-23
EP3338249B1 (en) 2020-11-18

Similar Documents

Publication Publication Date Title
KR20180043312A (ko) 비디오 안정화를 위한 비디오 이미지 정렬
US9569695B2 (en) Adaptive search window control for visual search
KR102519085B1 (ko) 로컬 및 글로벌 모션에 효율적인 멀티-프레임 초해상도 방법 및 장치
US10755105B2 (en) Real time video summarization
US9674505B2 (en) Disparity search range determination for images from an image sensor array
US9955056B2 (en) Real time calibration for multi-camera wireless device
US11222211B2 (en) Method and apparatus for segmenting video object, electronic device, and storage medium
CN108112271B (zh) 用于检测图像中的运动的方法和计算机可读装置
JP5906028B2 (ja) 画像処理装置、画像処理方法
KR20150122715A (ko) 이미지 시퀀스에서 객체 오클루전의 판정
WO2019042419A1 (zh) 图像跟踪点获取方法、设备及存储介质
US9514523B2 (en) Method and apparatus for filling images captured by array cameras
JP2015015033A (ja) ビデオシーケンスにおけるショットチェンジ検出のためのシステム及び方法
KR20210110679A (ko) 이미지 융합 프로세싱 모듈
CN103210645A (zh) 使用运动补偿的基于实例的超分辨率的视频解码
KR20160032137A (ko) 특징 기반 영상 집합 압축
US11470250B2 (en) Methods and apparatus for shear correction in image projections
US20230127009A1 (en) Joint objects image signal processing in temporal domain
US20190116382A1 (en) Method and encoder for encoding a video stream in a video coding format supporting auxiliary frames
CN113409203A (zh) 图像模糊程度确定方法、数据集构建方法与去模糊方法
EP2953357A1 (en) Video encoding method, decoding method and apparatus
CN117011137B (zh) 基于rgb相似度特征匹配的图像拼接方法、装置及设备
US11272209B2 (en) Methods and apparatus for determining adjustment parameter during encoding of spherical multimedia content
US10893290B2 (en) Apparatus for moving image coding, apparatus for moving image decoding, and non-transitory computer-readable storage medium
CN112752086A (zh) 用于环境映射的图像信号处理器、方法和系统

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E601 Decision to refuse application