KR20160032137A - 특징 기반 영상 집합 압축 - Google Patents

특징 기반 영상 집합 압축 Download PDF

Info

Publication number
KR20160032137A
KR20160032137A KR1020167002661A KR20167002661A KR20160032137A KR 20160032137 A KR20160032137 A KR 20160032137A KR 1020167002661 A KR1020167002661 A KR 1020167002661A KR 20167002661 A KR20167002661 A KR 20167002661A KR 20160032137 A KR20160032137 A KR 20160032137A
Authority
KR
South Korea
Prior art keywords
images
image
sets
feature
prediction
Prior art date
Application number
KR1020167002661A
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 KR20160032137A publication Critical patent/KR20160032137A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/804Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
    • H04N9/8042Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction
    • H04N9/8045Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction using predictive coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • H04N19/426Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements using memory downsizing methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/65Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/94Vector quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/917Television signal processing therefor for bandwidth reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/804Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
    • H04N9/8042Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction
    • H04N9/8047Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

어떤 예들은 영상 컬렉션(image collection)으로부터 하나 이상의 압축된 영상 집합들을 발생시킬 수 있다. 영상 컬렉션으로부터의 영상들은 각각의 영상에서의 하나 이상의 특징들에 기초하여 하나 이상의 영상 집합들로 클러스터링될 수 있다. 각각의 영상에서의 하나 이상의 특징들에 기초하여 하나 이상의 영상 집합들 각각으로부터, 영상들의 최소 신장 트리(minimum spanning tree)와 같은, 상관 구조(correlation structure)가 생성될 수 있다. 특징 기반 최소 신장 트리(feature-based minimum spanning tree)를 사용하여 특징 기반 예측이 수행될 수 있다. 하나 이상의 영상 집합들에 대응하는 하나 이상의 압축된 영상 집합들이 발생될 수 있다.

Description

특징 기반 영상 집합 압축{FEATURE-BASED IMAGE SET COMPRESSION}
본 발명은 특징 기반(feature-based) 영상 집합 압축에 관한 것이다.
사람들은 다수의 디지털 영상들(예컨대, 사진들)을 저장하고 그리고/또는 다른 사람들(예컨대, 친구들 및/또는 친척들)과 공유할 수 있다. 영상들의 크기에 따라, 이 영상들을 저장하는 것은 많은 양의 저장 공간을 사용할 수 있다. 다수의 디지털 영상들이 인지 가능한 영상 품질의 손실이 거의 없이 압축될 수 있는 경우, 다수의 디지털 영상들이 보다 적은 저장 공간을 사용하여 저장될 수 있고 그리고/또는 통신 네트워크를 거쳐 보다 적은 대역폭을 사용하여 전송될 수 있다. 디지털 영상들이 보다 적은 공간을 사용하여 저장되고 그리고/또는 보다 용이하게 전송될 수 있는 경우, 사람들은 부가의 디지털 영상들을 다른 사람들과 공유할 수 있다. 예를 들어, 사진 앨범들의 저장 크기를 감소시키는 것에 의해, 사진들을 호스팅하는 서버들은 물론 클라우드 저장 서비스들을 사용할 때 사진 앨범들을 저장하는 데 그리고/또는 사진 앨범들의 백업 사본을 저장하는 데 사용되는 저장 공간의 양이 감소될 수 있다.
이 발명의 내용은 이하에서 발명을 실시하기 위한 구체적인 내용에 추가로 기술되는 일련의 개념들을 간략화된 형태로 소개하기 위해 제공된다. 이 발명의 내용은 청구된 발명 요지의 중요한 또는 필수적인 특징들을 확인하기 위한 것이 아니며; 청구된 발명 요지의 범주를 정하거나 제한하는 데 사용하기 위한 것도 아니다.
본 명세서에 기술된 어떤 예들은 영상 컬렉션(image collection)으로부터 하나 이상의 압축된 영상 집합들을 발생시킬 수 있다. 영상 컬렉션으로부터의 영상들이 각각의 영상에서의 하나 이상의 특징들에 기초하여 하나 이상의 영상 집합들로 클러스터링될 수 있다. 각각의 영상에서의 하나 이상의 특징들에 기초하여 하나 이상의 영상 집합들 각각으로부터, 영상들의 최소 신장 트리(minimum spanning tree) 또는 다른 유사한 구조와 같은, 상관 구조(correlation structure)가 생성될 수 있다. 특징 기반 최소 신장 트리(feature-based minimum spanning tree)를 사용하여 특징 기반 예측(feature-based prediction)이 수행될 수 있다. 하나 이상의 영상 집합들에 대응하는 하나 이상의 압축된 영상 집합들이 발생될 수 있다.
발명을 실시하기 위한 구체적인 내용이 첨부 도면들을 참조하여 기술된다. 도면들에서, 참조 번호의 가장 왼쪽의 숫자(들)는 그 참조 번호가 처음으로 나타나는 도면을 나타낸다. 상이한 도면들에서의 동일한 참조 번호들은 유사하거나 동일한 항목들을 가리킨다.
도 1은 일부 구현들에 따른, 영상 컬렉션을 포함하는 예시적인 아키텍처를 나타낸 도면.
도 2는 일부 구현들에 따른, 인코딩된 비트스트림(encoded bitstream)을 출력하는 것을 포함하는 예시적인 프로세스의 흐름도.
도 3은 일부 구현들에 따른, 특징 기반 최소 신장 트리를 포함하는 예시적인 아키텍처를 나타낸 도면.
도 4는 일부 구현들에 따른, 예측 알고리즘의 예시적인 프로세스의 흐름도.
도 5는 일부 구현들에 따른, 영상 컬렉션을 수신하는 것을 포함하는 예시적인 프로세스의 흐름도.
도 6은 일부 구현들에 따른, 영상들을 클러스터링하는 것을 포함하는 예시적인 프로세스의 흐름도.
도 7은 일부 구현들에 따른, 최소 신장 트리를 발생시키는 것을 포함하는 예시적인 프로세스의 흐름도.
도 8은 본 명세서에 기술된 모듈들, 기법들, 및 기능들을 구현하는 데 사용될 수 있는 컴퓨팅 디바이스 및 환경의 예시적인 구성을 나타낸 도면.
디지털 영상들(본 명세서에서 “영상들”이라고도 지칭됨)의 컬렉션을 압축하는 프레임워크가, 예시적인 시스템들 및 기법들과 함께, 본 명세서에 기술되어 있다. 하나 이상의 영상들의 집합을 압축하는 것은 영상들 사이의 중복성(예컨대, 영상간 중복성(inter-image redundancy) 또는 집합 중복성(set redundancy))을 제거하는 것 및 특정의 영상 내에서의 중복성(예컨대, 영상내 중복성(intra-image redundancy) 또는 영상 중복성(image redundancy))을 제거하는 것을 포함할 수 있다. 본 명세서에 기술된 시스템들 및 기법들은 지역적 및 전역적 특징들 모두에 기초하여 영상간 중복성을 제거하기 위해 압축 방식을 이용한다. 압축 방식은 정확한 원본 데이터가 압축된 데이터로부터 재구성될 수 있게 하는 무손실 압축(lossless compression), 원본 데이터의 근사치가 압축된 데이터로부터 재구성될 수 있게 하는 손실 압축(lossy compression), 또는 이 둘의 조합을 이용할 수 있다. 영상 영역에서의 하나 이상의 객체들의 스케일 및 회전에 불변일 수 있는 방식으로 영상 영역을 특징지우기 위해 SIFT(Scale Invariant Feature Transform) 기술자(descriptor)가 사용될 수 있다. SIFT 기술자는 영상들 간의 상관을 측정하고 추가로 향상시키기 위해 사용될 수 있다. 영상 집합이 주어지면, 영상들 간의 SIFT 기반 예측 척도(SIFT-based prediction measure)에 따라 최소 비용 예측 구조(minimal cost prediction structure)가 작성될 수 있다. 그에 부가하여, 지오메트리(geometry) 및 강도 둘 다의 면에서 2 개 이상의 영상들을 서로에 대해 정렬시키는 것에 의해 2 개 이상의 영상들 간의 상관을 향상시키기 위해 SIFT 기반 전역 변환(SIFT-based global transformation)이 사용될 수 있다. 블록 기반 움직임 추정(block-based motion estimation) 및 레이트 왜곡 최적화(rate-distortion optimization, RDO)에 의해 집합 중복성은 물론 영상 중복성이 추가로 감소될 수 있다. 본 명세서에 기술된 시스템들 및 기법들은 영상 집합들의 특성들에 관계없이 디지털 영상들의 컬렉션을 압축하는 데 사용될 수 있다.
이와 같이, 본 명세서에 기술된 영상 집합 압축 기법들은 단층 촬영 영상(tomographic image), 다중 스펙트럼 화상(multispectral picture) 및 사진 앨범과 같은, 상관된 영상 집합들의 전송 및 저장을 가능하게 하기 위해 상관된 시각적 데이터의 집합의 콤팩트한 표현을 생성하는 데 사용될 수 있다. 콤팩트한 표현은, 각각의 영상 내에서의 중복성(예컨대, 영상 중복성)을 감소시키는 것에 부가하여, 영상 집합 내에서의 중복성(예컨대, 집합 중복성)을 감소시키는 것에 의해 달성될 수 있다. 예를 들어, 본 명세서에 기술된 기법들은 객체들의 회전 및 줌잉을 포함하는 영상들의 집합을 압축하는 데 사용될 수 있다. SIFT 기술자들을 사용하는 SIFT 기반 영상 집합 압축 기법은 2 개의 영상들 사이의 유사성을 평가하는 데 사용될 수 있다. 그에 부가하여, 2 개 이상의 영상들을 코딩할 때, 예측을 위한 기초로서 단지 하나의 영상을 사용하기보다는, 2 개 이상의 영상들이 지오메트리는 물론 강도의 면에서 서로에 대해 정렬될 수 있다.
예시적인 아키텍처
도 1은 일부 구현들에 따른, 영상 컬렉션을 포함하는 예시적인 아키텍처(100)를 나타낸 것이다. 아키텍처(100)는 네트워크(106)를 거쳐 하나 이상의 부가의 컴퓨팅 디바이스들에 결합된 하나 이상의 컴퓨팅 디바이스들(102)을 포함한다.
컴퓨팅 디바이스(102)는 하나 이상의 컴퓨터 판독 가능 매체(108) 및 하나 이상의 프로세서들(110)을 포함할 수 있다. 컴퓨터 판독 가능 매체(108)는 압축 모듈(114)과 같은 하나 이상의 애플리케이션들(112)을 포함할 수 있다. 애플리케이션들(112)은 다양한 기능들을 수행하기 위해 하나 이상의 프로세서들(110)에 의해 실행 가능한 명령어들을 포함할 수 있다. 예를 들어, 압축 모듈(114)은 본 명세서에 기술된 기법들을 사용하여 다수의 영상 집합들을 포함하는 영상 컬렉션(116)을 압축하기 위해 하나 이상의 프로세서들(110)에 의해 실행 가능한 명령어들을 포함할 수 있다.
영상 컬렉션(116)은 제1 영상(118) 내지 제N 영상(120)과 같은, N 개의 영상들(단, N>0임)을 포함할 수 있다. 영상 컬렉션(116) 내의 영상들은 JPEG(joint picture experts group), TIFF(tagged image file format), RAW(다른 무손실 포맷들), GIF(graphics image format), BMP(bitmap), PNG(portable networks graphics) 등(이들로 제한되지 않음)과 같은, 하나 이상의 영상 파일 포맷들로 되어 있는 디지털 영상들을 포함할 수 있다. 영상 컬렉션(116) 내의 영상들 중 적어도 일부는 동일한 객체의 적어도 일부분을 포함할 수 있다. 예를 들어, 휴가를 떠나는 개인은 랜드마크(예컨대, 자유의 여신상, 에펠탑, 타지마할, 중국의 만리 장성 등) 또는 특정의 사람(예컨대, 배우자, 자식, 친척, 또는 그 개인과 관계가 있는 다른 사람)을 포함하는 디지털 영상들(예컨대, 사진들)을 촬영할 수 있다. 랜드마크를 사용하는 것을 설명하기 위해, 디지털 영상들은 상이한 각도들 및/또는 상이한 시점들로부터의 랜드마크를 포함할 수 있다. 디지털 영상들 중 일부는 랜드마크의 특정의 부분의 상세 보기를 제공하기 위해 줌인되거나 클로즈업될 수 있고 그리고/또는 랜드마크의 주변의 상황 내에 있는 랜드마크를 제공하기 위해 줌아웃될 수 있다.
압축 모듈(114)은 영상 컬렉션으로부터의 N 개의 영상들(118 내지 120)을, 각각이 하나 이상의 디지털 영상들을 포함하는 디지털 영상 집합들로 그룹화할 수 있다. N 개의 영상들(118 내지 120)은 특징들에 기초하여 그룹화될 수 있다. 예를 들어, 특징은 영상들의 부분 집합에 공통인(예컨대, 영상들의 부분집합에 포함된) 하나 이상의 객체들을 포함할 수 있다. 예를 들어, 압축 모듈(114)은 N 개의 영상들(118 내지 120)을, 제1 영상 집합(122) 내지 제M 영상 집합(124)과 같은, M 개의 영상 집합들(단, M>0임)로 그룹화할 수 있다. M 개의 영상 집합들 각각은 하나 이상의 영상들을 포함할 수 있다. 제1 영상 집합(122)은 제1 영상부터 제P 영상까지 P 개의 영상들(단, P>0임)을 포함할 수 있는 반면, 제M 영상 집합(124)은 제1 영상(130)부터 제Q 영상(132)까지 Q 개의 영상들(단, Q>0이고 Q가 P와 같을 필요는 없음)을 포함할 수 있다. 제1 영상 집합(122)은 각각의 영상이, 동일한 객체(예컨대, 랜드마크, 사람 등)의 적어도 일부분과 같은, 한 특징을 포함할 수 있다. 이와 유사하게, 제M 영상 집합(122)은 각각의 영상이, 다른 객체(예컨대, 랜드마크, 사람 등)의 적어도 일부분과 같은, 다른 특징을 포함할 수 있다.
압축 모듈(114)은 M 개의 영상 집합들(122 내지 124)을, 제1 압축된 영상 집합(134) 내지 제M 압축된 영상 집합(136)을 비롯한, 대응하는 압축된 영상 집합들을 생성하기 위해 압축할 수 있다. 예를 들어, 제1 압축된 영상 집합(134)은 제1 영상 집합(122)에 대응할 수 있는 반면, 제M 압축된 영상 집합(136)은 제M 영상 집합(124)에 대응할 수 있다. 제1 압축된 영상 집합(134)은 P 개의 영상들(126 내지 128)에 대응하는 P 개의 압축된 영상들(138 내지 140)을 포함할 수 있다. 제M 압축된 영상 집합(136)은 Q 개의 영상들(130 내지 132)에 대응하는 Q 개의 압축된 영상들(142 내지 144)을 포함할 수 있다. M 개의 압축된 영상 집합들(134 내지 136)은 영상간 중복성을 감소시키는 것에 의해 그리고/또는 영상내 중복성을 감소시키는 것에 의해 압축된 영상들을 포함할 수 있다. 어떤 경우들에서, 압축 모듈(114)은 M 개의 압축된 영상 집합들(134 내지 136)을 포함하는 인코딩된 비트스트림(138)을 발생시킬 수 있다.
압축 모듈(114)은 각종의 상황들에서 사용될 수 있다. 예를 들어, 개인은 영상 컬렉션(116)을 압축된 포맷으로 저장하기 위해 컴퓨팅 디바이스들(102) 중 하나 이상을 사용할 수 있다. 다른 예로서, 개인은 M 개의 압축된 영상 집합들(134 내지 136)을 영상 컬렉션(116)의 백업으로서 저장하기 위해 컴퓨팅 디바이스들(102) 중 하나 이상을 사용할 수 있다. 이 예들에서, 컴퓨팅 디바이스들(102)은 개인용 컴퓨터(예컨대, 데스크톱, 랩톱, 태블릿 디바이스, 무선 전화, 카메라 등) 및/또는 클라우드 기반 저장 서비스를 포함할 수 있다. 개인은 M 개의 압축된 영상 집합들(134 내지 136)의 적어도 일부분을, 네트워크(106)를 통해 부가의 컴퓨팅 디바이스(들)(104)와 연관된 부가의 개인들과 공유할 수 있다.
이와 같이, 압축 모듈(114)은 영상 컬렉션(116) 내의 영상들을 M 개의 영상 집합들(122 내지 124)로 그룹화하는 데 사용될 수 있다. 압축 모듈(114)은 M 개의 압축된 영상 집합들(134 내지 136)을 생성하기 위해 화상간 중복성(inter-picture redundancy) 및/또는 화상내 중복성(intra-picture redundancy)을 감소시킬 수 있다. 어떤 경우들에서, M 개의 압축된 영상 집합들(134 내지 136)은 인코딩된 비트스트림의 형태로 되어 있을 수 있다.
도 2는 일부 구현들에 따른, 인코딩된 비트스트림을 출력하는 것을 포함하는 예시적인 프로세스(200)의 흐름도이다. 프로세스(200)는 도 1의 압축 모듈(114)에 의해 수행될 수 있다.
영상 집합들(122 내지 124) 중 하나와 같은 일반 영상 집합은 상이한 위치들에서의 상이한 지점들 및 상이한 시야각(view angle)들로부터 수집된 영상들을 포함할 수 있다. 일반 영상 집합을 압축하는 압축 방식은 영상들 간의 상관들에 기초하여 예측 구조를 자동으로(예컨대, 사람 상호작용 없이) 설정할 수 있다. 어떤 경우들에서, 상관들은 픽셀 영역(pixel domain)에서의 차이 함수(disparity function)(예컨대, 평균 제곱 오차(mean squared error, MSE))를 사용하여 결정될 수 있다. 영상들 간의 관계가 아주 밀접할 때(예컨대, 영상들이 아주 유사할 때) 픽셀 영역에서의 차이 함수들이 효과적일 수 있다. 그렇지만, 차이 함수들은 스케일, 회전 및 다른 기하학적 변형들에 대해 불변이 아닐 수 있다. 그에 부가하여, 차이 함수들은 차폐물(shelter) 및 조명 변동(illumination variance)에 의해 쉽게 영향을 받을 수 있다.
차이 함수들을 사용하는 대신에, 압축 모듈(114)은 특징 영역(feature domain)에서의 2 개 이상의 영상들 사이의 시간 상관(temporal correlation)을 사용할 수 있고, 이 경우 영상들 간의 차이를 측정하기 위해 영상 특징들의 거리가 사용될 수 있다. 예를 들어, 영상 특징들은 상관 척도(correlation measure)로서의 SIFT 특징을 포함할 수 있다. FI가 영상 I의 일단의 SIFT 기술자들을 나타낸다고 하자. 각각의 SIFT 특징
Figure pct00001
는 수학식 1로서 정의될 수 있고:
Figure pct00002
여기서 g i는 제i 특징점(key-point) xi = (xi, yi) 주위의 영역에서의 지역 영상 기울기(local image gradient)들을 나타내는 128 차원(128 dimensional, 128D) 기울기 벡터(gradient vector)이고, (xi, yi), si 및 oi는, 각각, 제i 특징점의 공간 좌표, 스케일 및 우세 기울기 배향(dominant gradient orientation)을 나타낸다. DoG(difference of Gaussians) 함수가 일련의 평활화되고 계층적으로 다운샘플링된 영상들에 적용된 결과의 최댓값(maxima) 및 최솟값(minima)을 구하는 것에 의해 영상 I의 특징점 위치들이 결정될 수 있다.
202에서, 다수의 영상들이 수신될 수 있다. 예를 들어, 도 1에서, 압축 모듈(114)은 영상 컬렉션(116)을 수신할 수 있다. 어떤 경우들에서, 영상 컬렉션(116)이 영상 컬렉션(116)을 압축하는 명령어와 함께 수신될 수 있다.
204에서, 다수의 영상들이 각각의 영상에서 식별된 그리고/또는 각각의 영상에 포함된 특징들에 기초하여 영상 집합들로 클러스터링될 수 있다. 예를 들어, 도 1에서, 압축 모듈(114)은 M 개의 영상 집합들(122 내지 124)을 생성하기 위해 N 개의 영상들(118 내지 120)을 클러스터링(예컨대, 그룹화)할 수 있다. 압축 모듈(114)은 N 개의 영상들(118 내지 120) 각각과 연관된 특징들에 기초하여 N 개의 영상들(118 내지 120)을 클러스터링할 수 있다. 예를 들어, 영상 컬렉션(116) 내의 임의의 2 개의 영상들 간의 차이가 2 개의 영상들로부터의 SIFT 특징들의 거리에 기초하여 결정(예컨대, 계산)될 수 있다. 집합이 SIFT 차이들에 기초하여 M 개의 영상 집합들(122 내지 124)로 분할될 수 있다.
206에서, 각각의 영상 집합에 대해 특징 기반 최소 신장 트리(MST)들과 같은 상관 구조들이 발생될 수 있다. 예를 들어, 도 1에서, 영상 집합들(122 내지 124) 각각에 대해, 예측 구조를 결정하기 위해 SIFT 기반 MST가 발생될 수 있다. MST는 영상들의 집합으로부터의 영상들을 상관시키는 데 사용되는 상관 구조의 일례이고, 일부 구현들에서, MST와 유사하거나 동등한 상관 구조들이 MST 대신에 사용될 수 있다.
208에서, 각각의 영상 집합에 대해 특징 기반 예측이 수행될 수 있다. 예를 들어, 도 1에서, 영상 레벨 스케일 및 회전 왜곡을 감소시키기 위해 전역 레벨 정렬 추정(global-level alignment estimation)이 사용될 수 있다. 다른 예로서, 지역적 이동(local shift)을 감소시키기 위해 블록 레벨 움직임 추정(block-level motion estimation)이 사용될 수 있다.
210에서, 각각의 영상 집합에 대해 잔차 코딩이 수행될 수 있다. 예를 들어, 영상 집합들(122 내지 124)의 각각의 영상에 대해 예측 잔차들이 인코딩될 수 있다.
212에서, 각각의 영상 집합에 대해 인코딩된 비트스트림이 출력될 수 있다. 예를 들어, 인코딩된 잔차와 함께 특징 기반 예측이 압축된 영상 집합들(134 내지 136)을 포함하는 인코딩된 비트스트림으로서 출력될 수 있다.
이와 같이, 일반(예컨대, 랜덤한, 비특정) 영상들을 포함하는 영상 컬렉션에 대해, 영상 컬렉션 내의 임의의 2 개의 영상들 간의 차이가 2 개의 영상들로부터의 SIFT 특징들의 거리에 의해 결정될 수 있다. 컬렉션이 SIFT 차이들에 따라 영상 집합들로 분할될 수 있다. 각각의 영상 집합에 대해, 예측 구조를 결정하기 위해 SIFT 기반 MST가 발생될 수 있다. 전역 레벨 정렬 및 블록 레벨 움직임 추정과 같은 예측 메커니즘들이, 각각, 영상 레벨 스케일 및 회전 왜곡과 지역적 이동을 감소시키기 위해 사용될 수 있다. 이러한 방식으로, 영상 컬렉션(116)이 압축된 영상 집합들(134 내지 136)을 포함하는 인코딩된 비트스트림으로 압축될 수 있다.
도 3은 일부 구현들에 따른, 특징 기반 최소 신장 트리(MST)를 포함하는 예시적인 아키텍처(300)이다. 특징 기반 MST가 도 1의 압축 모듈(114)에 의해 발생될 수 있다. MST는 본 명세서에서 영상들의 집합에서의 영상들을 상관시키는 데 사용되는 상관 구조의 일례로서 사용된다. 다른 구현들은 MST와 유사하거나 동등한 다른 유형의 상관 구조들을 사용할 수 있다.
일반적으로, 상이한 장면들로부터의 영상들 간의 상관은 제한될 수 있다. 예를 들어, 자유의 여신상의 사진과 에펠탑의 사진 사이에는 상관이 거의 또는 전혀 없을 수 있다. 입력 영상 컬렉션(예컨대, 영상 컬렉션(116))이 상이한 장면들로부터의 상이한 영상들을 포함하는 경우, 영상들을 각각의 영상의 내용에 기초하여 다수의 집합들로 분할하는 것은 각각의 집합 내에서의 영상간 중복성 감소를 가능하게 할 수 있는데, 그 이유는 각각의 집합이 어느 정도의 상관을 가지는 영상들을 포함할 수 있기 때문이다.
압축 모듈(114)은 수정된 k-평균 클러스터링 알고리즘(modified k-means clustering algorithm)을 사용할 수 있다. k-평균 클러스터링은 n 개의 관찰들을 k 개의 클러스터들로 파티션(partition)하는 데 사용되는 클러스터 분석 방법으로서, 여기서 각각의 관찰은 최근접 평균을 갖는 클러스터에 속한다. 첫째, 영상으로부터의 일단의 SIFT 기술자들이 영상의 일단의 128 차원(예컨대, 128D) 기울기 벡터들을 표현하는 데 사용될 수 있다. 일단의 SIFT 기술자들은 영상의 특징 영역 표현을 제공할 수 있다. 2 개의 요소들 사이의 거리는 정합된 128D 기울기 벡터들의 평균 절대 거리(average absolute distance)로서 정의될 수 있다. 둘째, 각각의 클러스터의 중심점(centroid)은 중앙 기술자 그룹(central group of descriptors)을 포함할 수 있다. 중심점은 동일한 클러스터 내의 다른 영상들까지 최소 평균 거리를 가지는 영상으로부터 선택될 수 있다. 이 2 개의 수정들에 기초하면, k-평균 알고리즘의 결과 m 개의 집합들(122 내지 124)이 얻어진다. 집합들의 수 m은 사용자에 의해 선택되거나(예컨대, 압축 모듈(114)에 대한 사용자 지정 입력) 수학식 2로서 표현된 클러스터 간격 척도(cluster separation measure)에 따라 계산될 수 있고:
Figure pct00003
여기서 εi 및 εj는, 각각, 제i 및 제j 부분 집합들에서 요소 영상들과 그들의 대응하는 중심점들의 평균 거리를 나타내고,
Figure pct00004
는 2 개의 중심점들 간의 거리를 나타낸다.
Figure pct00005
에 대한
Figure pct00006
을 결정하고
Figure pct00007
을 최소화하는 것에 의해 최적의 nopt 개의 클러스터들을 선택하며, 여기서 N은 영상 컬렉션(116)에서의 입력 영상들의 총수이다. 영상들을 영상 집합들로 클러스터링하는 것을 돕기 위해 다른 영상 특징들(예컨대, 요점 및 색상 특징들), 지리 정보(예컨대, GPS(global positioning system)), 및 사용자들에 의해 표시된 태그들이 추가로 이용될 수 있다. 요점은 영상에서의 장면의 우세 공간 구조(dominant spatial structure)를 나타내는 모델일 수 있다.
영상 집합 압축을 위한 예측 구조는 영상 집합의 전체적인 레이트 왜곡 비용을 최소화하는 것에 의해 최적의 예측 경로를 달성할 수 있다. 영상 집합 내의 영상들 간의 상관은 방향 그래프(directed graph)(302)로서 표현될 수 있다. 방향 그래프(302)는 제1 영상(304), 제2 영상(306), 제3 영상(308) 및 제4 영상(310)을 포함할 수 있다. 방향 그래프(302)는 G = (V, E)로서 표현될 수 있고, 여기서 각각의 노드
Figure pct00008
는 영상을 나타내고, 각각의 간선(edge)
Figure pct00009
는 제i 영상과 제j 영상 사이의 비용을 나타낸다. G의 MST는 실제 레이트 왜곡 코딩 비용(real rate-distortion coding cost)을 사용하는 최소 총 비용을 가지는 방향 서브그래프(directed sub-graph)일 수 있다. 그렇지만, 전체적인 레이트 왜곡 척도를 갖는 최적의 MST 발생 프로세스는 비결정론적 다항 시간(non-deterministic polynomial time)(예컨대, NP 난해(NP-hard)) 문제일 수 있다. 어떤 경우들에서, 비용이 RMSE(root mean square error) 또는 SSIM(strict similarity)과 같은, 2 개의 이웃 영상들 간의 예측 척도에 의해 근사화될 수 있다. 압축 모듈(114)은 SIFT 기반 예측 척도를 사용할 수 있고, 여기서 총 특징 거리가 최소화되는 특징 기반 예측 트리를 결정하기 위해 이전의 클러스터링 프로세스에서 계산된 SIFT 거리가 간선 비용 ei,j로서 사용된다.
도 3에 예시된 바와 같이, 그래프 구조에 기초하여 각각의 부분 집합에 대해 특징 기반 MST(312)가 발생될 수 있다. MST(312)는 v3와 v4의 예측이 v2이고 v1의 예측이 v4와 v2라는 것을 나타내고 있다. 유의할 점은, 각각의 MST의 루트가 MST 검색 알고리즘에 의해 자동으로(예컨대, 사람 상호작용 없이) 결정될 수 있다는 것이다.
도 4는 일부 구현들에 따른, 예측 알고리즘의 예시적인 프로세스(400)의 흐름도이다. 예를 들어, 도 1의 압축 모듈(114)은 예측된 영상을 결정하기 위해 예측 알고리즘(402)을 포함하는 프로세스(400)를 사용할 수 있다.
각각의 영상 집합(122 내지 124)에 대한 MST를 결정한 후에, MST에 기초하여 특정의 집합에서의 영상들 각각에 대해 중복성이 감소될 수 있다. 예를 들어, 어떤 예측도 없이 루트 영상 v2를 인트라 영상(intra-image)으로서 코딩하기 위해 도 3의 MST(312)가 사용될 수 있다. 루트 영상 v2가 재구성된 후에, v3 및 v4를 코딩하기 위한 예측 영상을 발생시키기 위해 영상간 예측(inter-image prediction)이 수행될 수 있다. 영상 v1이 이어서 v4 및 v2로부터 예측될 수 있다.
비디오 코딩 및 종래의 영상 집합 압축에서 사용되는 영상간 예측 방식들과 달리, 압축 모듈(114)은 영상간 예측을 위해 2 개의 예측 메커니즘들(전역 레벨 정렬 및 블록 레벨 움직임 추정)을 사용할 수 있다. 전역 정렬은 SIFT 기반 변형(SIFT-based deformation)(406) 및 광도 변환(photometric transformation)(408) 둘 다를 포함할 수 있다. SIFT 기반 변형(406)은 상이한 장소들 및 상이한 카메라 위치들에 의해 야기된 기하학적 왜곡을 감소시키기 위해 사용될 수 있다. 광도 변환(408)은 밝기의 변동을 감소시키기 위해 사용될 수 있다. 블록 레벨 움직임 추정은 블록 기반 움직임 추정/보상(410)을 포함할 수 있다. 블록 기반 움직임 추정/보상(410)은 예측의 정확도를 개선시키기 위해 지역적 픽셀 이동을 감소시킬 수 있다. 예를 들어, 특징 기반 예측을 수행할 때, 변형된 예측된 영상이 대응하는 원본 영상에 정확하게 정렬되지 않을 수 있다. 정렬이 정확하지 않은 경우, 지역적 픽셀 이동의 형태의 지역적 왜곡이 존재할 수 있다. 블록 기반 움직임 추정/보상(410)은 변형된 예측된 영상을 원본 영상과 보다 가깝게 정렬시키기 위해 지역적 픽셀 이동을 감소시킬 수 있다.
하나의 카메라 평면으로부터 다른 카메라 평면으로의 변환이, 변환 행렬(transform matrix)을 구하기 위해 3D 정합된 좌표들을 사용하는 호모그래프 변환(homograph transform)으로서 모델링될 수 있다. 카메라 평면의 깊이 좌표가 알려져 있지 않을 수 있기 때문에, 변환이 수학식 3과 같이 2D 평면간 변환(2D plane-to-plane transform)으로 단순화될 수 있다:
Figure pct00010
수학식 3에서, (x', y') 및 (x, y)는 2 개의 이웃 영상들로부터의 정합된 SIFT 특징점 좌표들이고; 3 x 3 행렬은 변환 행렬 H이다. 변환 행렬 H는 모든 정합된 SIFT 특징점 좌표들에 의해 확립된 선형 방정식의 해를 구하는 것에 의해 결정될 수 있다. 어떤 경우들에서, RANSAC(random sample consensus) 접근법이 강인한 추정을 달성하기 위해 사용될 수 있다. RANSAC은 이상치(outlier)들을 포함하는 관찰된 데이터의 집합으로부터 수학적 모델의 파라미터들을 추정하는 반복적 방법이다. RANSAC은 알고리즘이 특정 확률로 타당한 결과를 생성하고, 반복 횟수가 증가함에 따라 확률이 증가한다는 점에서 비결정론적 알고리즘이다.
동일한 장면을 갖는 영상들이 조명 변동을 포함할 수 있기 때문에, 영상들 간의 조명 차이를 감소시키기 위해 영상들에 대해 광도 변환(408)이 수행될 수 있다. 회색 영상에 대한 전역 광도 변환은 수학식 4와 같이 쓰여질 수 있고:
Figure pct00011
여기서 I는 참조 영상의 회색 값을 나타내고, a 및 b는, 각각, 스케일 및 오프셋 파라미터들이며, a 및 b에 대한 최적 값들은 정합된 픽셀 값들의 그룹을 통해 최소 평균 제곱 오차 의미에서 추정될 수 있다. RANSAC 이후의 내부에 있는 SIFT 특징점 쌍(inner lying SIFT key-point pair)들이 강인할 수 있기 때문에, 내부에 있는 SIFT 특징점 쌍들의 좌표들에서의 픽셀 값들이 a 및 b를 계산하는 데 사용될 수 있다. 각각의 색상 채널에 대한 독립적인 파라미터들을 설정하는 것에 의해 광도 변환(408)이 컬러 영상들로 확장될 수 있다.
특징 기반 어파인 및 광도 변환들이 참조 영상을 기준으로 한 영상들의 기하학적 및 조명 차이들을 효율적으로 감소시킬 수 있지만, 영상간 예측이, 지역적 이동과 같은, 보다 작은 지역적 변형들을 포함할 수 있다. 영상간 예측을 개선시키기 위해, 블록 기반 움직임 추정/보상(410)이 사용될 수 있다. 유의할 점은, 행렬 H, 스케일 인자 a, 오프셋 b 및 각각의 블록의 움직임 벡터들과 같은, 하나 이상의 움직임 파라미터들이 압축 모듈(114)에 의해 인코딩되어 전송될 수 있다는 것이다.
예측 알고리즘(402)이 특징 기반 예측을 수행한 후에, 잔차 신호들이 엔트로피 인코더를 사용하여 블록별로 인코딩될 수 있다. 예를 들어, HEVC(high-efficiency video coding) 호환 인코더가 레이트 왜곡 최적화 잔차 코딩을 수행하는 데 사용될 수 있다. 예측 알고리즘(402)은, SIFT 기반 변형(406), 광도 변환(408), 블록 기반 움직임 추정/보상, 또는 잔차 인코딩 중 하나 이상을 수행하는 것에 기초하여, 예측된 영상(412)을 생성할 수 있다.
도 2, 도 4, 도 5, 도 6 및 도 7의 흐름도들에서, 각각의 블록은 하드웨어, 소프트웨어, 또는 이들의 조합으로 구현될 수 있는 하나 이상의 동작들을 나타낸다. 소프트웨어와 관련하여, 블록들은, 하나 이상의 프로세서들에 의해 실행될 때, 프로세서들로 하여금 언급된 동작들을 수행하게 하는 컴퓨터 실행 가능 명령어들을 나타낸다. 일반적으로, 컴퓨터 실행 가능 명령어들은 특정의 기능들을 수행하거나 특정의 추상 데이터 유형들을 구현하는 루틴, 프로그램, 객체, 모듈, 구성요소, 데이터 구조 등을 포함한다. 블록들이 기술되어 있는 순서가 제한으로서 해석되도록 의도되어 있지 않으며, 임의의 수의 기술된 동작들이 프로세스들을 구현하기 위해 임의의 순서로 및/또는 병렬로 결합될 수 있다. 논의의 목적상, 본 명세서에 기술된 바와 같이, 프로세스들(200, 400, 500, 600, 및 700)이 아키텍처들(100, 200, 및 300)을 참조하여 기술되지만, 다른 모델들, 프레임워크들, 시스템들 및 환경들이 이 프로세스들을 구현할 수 있다.
도 5는 일부 구현들에 따른, 영상 컬렉션을 수신하는 것을 포함하는 예시적인 프로세스(500)의 흐름도이다. 프로세스(500)는 도 1의 압축 모듈(114)에 의해 수행될 수 있다.
502에서, 복수의 영상들을 포함하는 영상 컬렉션이 수신될 수 있다. 예를 들어, 도 1에서, 압축 모듈(114)은 영상 컬렉션(116)을 수신할 수 있다. 예를 들어, 사용자는 영상 컬렉션(116)의 백업을 압축된 포맷으로 생성하라고 컴퓨팅 디바이스(102)에 지시할 수 있다. 다른 예로서, 사용자는, 사용자가 영상 컬렉션으로부터의 하나 이상의 영상들을 부가의 컴퓨팅 디바이스들과 공유할 수 있게 하기 위해, 영상 컬렉션(116)의 압축된 버전을 생성하라고 컴퓨팅 디바이스(102)에 지시할 수 있다. 컴퓨팅 디바이스(102)는 개인용 컴퓨팅 디바이스(예컨대, 데스크톱, 랩톱, 태블릿, 전화, 카메라 등) 또는 클라우드 기반 저장 서비스일 수 있다.
504에서, 복수의 영상들이 영상 특징들에 기초하여 하나 이상의 영상 집합들로 클러스터링될 수 있다. 예를 들어, 도 1에서, 영상 컬렉션(116)으로부터의 영상들(118 내지 120)이 M 개의 영상 집합들(122 내지 124)로 클러스터링될 수 있다.
506에서, 하나 이상의 영상 집합들로부터 특정의 영상 집합이 선택될 수 있다. 예를 들어, 도 1에서, 특정의 영상 집합(122 내지 124)이 선택될 수 있다.
508에서, 특정의 영상 집합에 기초하여 특징 기반 MST가 생성될 수 있다. 예를 들어, 도 3에서, 영상들(304, 306, 308, 및 310)을 포함하는 영상 집합을 사용하여 특징 기반 MST(312)가 생성될 수 있다.
510에서, 특징 기반 MST의 루트 영상의 특징 기반 예측이 생성될 수 있다. 예를 들어, 도 4에서, 참조 영상(404)(예컨대, MST의 루트 영상)에 대응하는 예측된 영상(412)이 생성될 수 있다.
512에서, (예컨대, 하나 이상의 영상 집합들로부터의) 각각의 영상 집합이 선택되었는지의 결정이 행해질 수 있다. 예를 들어, 도 1에서, 각각의 영상 집합(122 내지 124)이 선택되었는지의 결정이 행해질 수 있다.
각각의 영상 집합이 선택되지 않았다고 결정한 것에 응답하여, 512에서, 프로세스는 다른 영상 집합이 선택될 수 있는 506으로 진행할 수 있다. 프로세스는, 하나 이상의 영상 집합들 모두가 선택될 때까지, 506, 508, 510, 및 512를 반복할 수 있다. 예를 들어, 도 1에서, 압축 모듈(114)은, 각각의 영상 집합(122 내지 124)이 선택될 때까지, 영상 집합(예컨대, 영상 집합들(122 내지 124) 중 하나)을 반복하여 선택하고 처리할 수 있다.
각각의 영상 집합이 선택되었다고 결정한 것에 응답하여, 512에서, 프로세스는 하나 이상의 압축된 영상 집합들을 포함하는 인코딩된 비트스트림이 발생될 수 있는 514로 진행할 수 있다. 하나 이상의 압축된 영상 집합들은 하나 이상의 영상 집합들에 대응하는 압축된 영상들을 포함할 수 있다. 예를 들어, 도 1에서, 압축 모듈(114)은 M 개의 영상 집합들(122 내지 124)에 대응하는 M 개의 압축된 영상 집합들(134 내지 136)을 포함하는 인코딩된 비트스트림(138)을 발생시킬 수 있다.
이와 같이, 영상들의 컬렉션이 각각의 영상에 포함된 특징들에 기초하여 영상 집합들로 클러스터링될 수 있다. 각각의 영상 집합에서의 영상들 중 적어도 일부가 각각의 영상과 연관된 SIFT 기술자들에 기초하여 압축될 수 있다.
도 6은 일부 구현들에 따른, 영상들을 클러스터링하는 것을 포함하는 예시적인 프로세스(600)의 흐름도이다. 프로세스(600)는 도 1의 압축 모듈(114)에 의해 수행될 수 있다.
602에서, 각각의 영상 집합에서의 각각의 영상에 대한 일단의 SIFT(scale-invariant feature transform) 기술자들이 결정될 수 있다.
604에서, 적어도 2 개의 영상들 간의 유사성이 적어도 2 개의 영상들 각각과 연관된 일단의 SIFT 기술자들에 기초하여 결정될 수 있다.
606에서, 영상 컬렉션으로부터의 복수의 영상들이 각각의 영상에서의 하나 이상의 특징들에 기초하여 하나 이상의 영상 집합들로 클러스터링될 수 있다. 예를 들어, 도 1에서, 영상 컬렉션(116)으로부터의 영상들(118 내지 120)은 각각의 영상에서의 하나 이상의 특징들에 기초하여 M 개의 영상 집합들(122 내지 124)로 클러스터링될 수 있다. 각각의 영상에서의 특징들이 SIFT 기술자들을 사용하여 기술될 수 있고, SIFT 기술자들을 사용하여 측정되는 각각의 집합에서의 영상들 간의 유사성에 기초하여 클러스터링될 수 있다.
608에서, 각각의 영상에서의 하나 이상의 특징들에 기초하여 각각의 영상 집합으로부터 MST가 생성될 수 있다. 예를 들어, 도 3에서, 영상들(304, 306, 308, 및 310)을 포함하는 영상 집합을 사용하여 특징 기반 MST(312)가 생성될 수 있다. 각각의 영상과 연관된 SIFT 기술자들에 기초하여 MST(312)가 생성될 수 있다.
610에서, 각각의 영상 집합에 대해, MST를 사용한 특징 기반 예측이 수행될 수 있다. 예를 들어, 도 4에서, 참조 영상(404)(예컨대, MST의 루트 영상)에 대응하는 예측된 영상(412)이 생성될 수 있다.
612에서, 하나 이상의 영상 집합들에 대응하는 하나 이상의 압축된 영상 집합들이 발생될 수 있다. 예를 들어, 도 1에서, 압축 모듈(114)은 M 개의 영상 집합들(122 내지 124)에 대응하는 M 개의 압축된 영상 집합들(134 내지 136)을 포함하는 인코딩된 비트스트림(138)을 발생시킬 수 있다.
이와 같이, 영상 컬렉션에서의 각각의 영상에 대해 영상에서의 특징들을 기술하는 SIFT 기술자들이 결정될 수 있다. 영상 컬렉션에서의 영상들이 각각의 영상과 연관된 SIFT 기술자들에 기초하여 영상 집합들로 클러스터링될 수 있다. 각각의 영상 집합에서의 영상들 중 적어도 일부가 각각의 영상과 연관된 SIFT 기술자들에 기초하여 압축될 수 있다.
도 7은 일부 구현들에 따른, 최소 신장 트리를 발생시키는 것을 포함하는 예시적인 프로세스(700)의 흐름도이다. 프로세스(700)는 도 1의 압축 모듈(114)에 의해 수행될 수 있다.
702에서, 복수의 영상들이 하나 이상의 영상 집합들로 클러스터링될 수 있다. 예를 들어, 도 1에서, 영상 컬렉션(116)으로부터의 영상들(118 내지 120)이 M 개의 영상 집합들(122 내지 124)로 클러스터링될 수 있다.
704에서, 하나 이상의 영상 집합들의 특정의 영상 집합에 대해 MST가 생성될 수 있다. 예를 들어, 도 3에서, 영상들(304, 306, 308, 및 310)을 포함하는 영상 집합을 사용하여 특징 기반 MST(312)가 생성될 수 있다.
706에서, MST에 기초하여 특징 기반 예측이 수행될 수 있다. 예를 들어, 도 4에서, 참조 영상(404)(예컨대, MST의 루트 영상)에 대응하는 예측된 영상(412)이 생성될 수 있다.
708에서, 특정의 영상 집합에 대응하는 압축된 영상 집합이 발생될 수 있다. 예를 들어, 도 1에서, 압축 모듈(114)은 M 개의 영상 집합들(122 내지 124)에 대응하는 M 개의 압축된 영상 집합들(134 내지 136)을 포함하는 인코딩된 비트스트림(138)을 발생시킬 수 있다.
이와 같이, 영상들의 컬렉션이 각각의 영상에 포함된 특징들에 기초하여 영상 집합들로 클러스터링될 수 있다. 각각의 영상 집합에 대해 MST가 생성될 수 있다. 각각의 영상 집합에서의 영상들 중 적어도 일부가 각각의 영상과 연관된 SIFT 기술자들에 기초하여 압축될 수 있다.
예시적인 컴퓨팅 디바이스 및 환경
도 8은 본 명세서에 기술된 모듈들 및 기능들을 구현하는 데 사용될 수 있는 컴퓨팅 디바이스(800) 및 환경의 예시적인 구성을 나타낸 것이다. 예를 들어, 컴퓨팅 디바이스(800)는 태블릿 컴퓨팅 디바이스, 휴대폰, 카메라(예컨대, 정지 화상 및/또는 비디오 카메라), 다른 유형의 휴대용 전자 디바이스, 또는 이들의 임의의 조합과 같은, 모바일 컴퓨팅 디바이스를 나타낼 수 있다. 다른 예로서, 컴퓨팅 디바이스(800)는 영상들을 검색하여 디스플레이할 수 있는 검색 엔진, 영상 호스팅 서비스, 영상 백업 서비스, 영상 압축 서비스 등과 같은, 다양한 서비스들을 호스팅하는 데 사용되는 서버 또는 서버의 일부분을 나타낼 수 있다.
컴퓨팅 디바이스(800)는, 예컨대, 시스템 버스(814) 또는 다른 적당한 연결을 통해, 서로 통신할 수 있는, 하나 이상의 프로세서들(802), 메모리(804), 통신 인터페이스들(806), 디스플레이 디바이스(808), 다른 입출력(I/O) 디바이스들(810), 및 하나 이상의 대용량 저장 디바이스들(812)을 포함할 수 있다.
프로세서들(802)은 단일의 처리 유닛 또는 다수의 처리 유닛들일 수 있고, 이들 모두는 단일의 또는 다수의 컴퓨팅 유닛들 또는 다수의 코어들을 포함할 수 있다. 프로세서들(802)은 동작 명령어(operational instruction)들에 기초하여 신호들을 조작하는 하나 이상의 마이크로프로세서들, 마이크로컴퓨터들, 마이크로제어기들, 디지털 신호 프로세서들, 중앙 처리 유닛들, 상태 기계들, 논리 회로들, 및/또는 임의의 디바이스들로서 구현될 수 있다. 하나의 비제한적인 예로서, 프로세서(802)는 본 명세서에 기술된 알고리즘들 및 프로세스들을 실행하도록 특별히 프로그램되거나 구성된 임의의 적당한 유형의 하나 이상의 하드웨어 프로세서들 및/또는 논리 회로들일 수 있다. 기능들 중에서도 특히, 프로세서(802)는 메모리(804), 대용량 저장 디바이스들(812), 또는 다른 컴퓨터 판독 가능 매체에 저장된 컴퓨터 판독 가능 명령어들을 페치하여 실행하도록 구성될 수 있다.
메모리(804) 및 대용량 저장 디바이스들(812)은 앞서 기술된 다양한 기능들을 수행하기 위해 프로세서(802)에 의해 실행되는 명령어들을 저장하는 컴퓨터 저장 매체의 예이다. 예를 들어, 메모리(804)는 일반적으로 휘발성 메모리 및 비휘발성 메모리(예컨대, RAM, ROM 등) 둘 다를 포함할 수 있다. 게다가, 대용량 저장 디바이스들(812)은 일반적으로 하드 디스크 드라이브, 고상 드라이브(solid-state drive), 외장형 및 이동식 드라이브들을 비롯한 이동식 매체, 메모리 카드, 플래시 메모리, 플로피 디스크, 광 디스크(예컨대, CD, DVD), 저장소 어레이(storage array), 네트워크 연결 저장소(network attached storage), 저장 영역 네트워크(storage area network) 등을 포함할 수 있다. 메모리(804) 및 대용량 저장 디바이스들(812) 둘 다는 총칭하여 본 명세서에서 메모리 또는 컴퓨터 저장 매체라고 지칭될 수 있고, 컴퓨터 판독 가능, 프로세서 실행 가능 명령어들을, 본 명세서에서의 구현들에 기술된 동작들 및 기능들을 수행하도록 구성된 특정의 기계로서의 프로세서(802)에 의해 실행될 수 있는 컴퓨터 프로그램 코드로서 저장할 수 있다.
메모리(804)는 도 1의 영상 컬렉션(116), 인코딩된 비트스트림(138), 및 압축 모듈(114)을 저장하는 데 사용될 수 있다. 압축 모듈(114)은 예측 모듈(816), SIFT 기반 변형 모듈(SIFT-based deformation module)(818), 광도 변환 모듈(photometric transformation module)(820), 및 블록 기반 움직임 추정/보상 모듈(822)을 포함할 수 있다. 예측 모듈(816)은 도 4의 예측 알고리즘(402)을 포함하는 기능들을 수행할 수 있다. SIFT 기반 변형 모듈(818)은 도 4의 SIFT 기반 변형(406)을 포함하는 기능들을 수행할 수 있다. 광도 변환 모듈(820)은 도 4의 광도 변환(408)을 포함하는 기능들을 수행할 수 있다. 블록 기반 움직임 추정/보상 모듈(822)은 도 4의 블록 기반 움직임 추정/보상(410)을 포함하는 기능들을 수행할 수 있다. 메모리(804)는 또한 다른 기능들을 수행하는 다른 모듈들(824) 및 본 명세서에 기술된 수학식들을 사용한 계산들의 결과들을 포함하는 다른 데이터(826)를 포함할 수 있다.
도 8에서 컴퓨팅 디바이스(800)의 메모리(804)에 저장되어 있는 것으로 예시되어 있지만, 영상 컬렉션(116), 인코딩된 비트스트림(138), 압축 모듈(114), 예측 모듈(816), SIFT 기반 변형 모듈(818), 광도 변환 모듈(820), 블록 기반 움직임 추정/보상 모듈(822), 다른 모듈들(824) 및 다른 데이터(826) 또는 이들의 일부분들이 컴퓨팅 디바이스(800)에 의해 액세스 가능한 임의의 형태의 컴퓨터 판독 가능 매체를 사용하여 구현될 수 있다.
컴퓨팅 디바이스(800)는 또한, 앞서 논의된 바와 같이, 예컨대, 네트워크, 직접 연결(direct connection) 등을 통해, 다른 디바이스들과 데이터를 교환하기 위한 하나 이상의 통신 인터페이스들(806)을 포함할 수 있다. 통신 인터페이스들(806)은 유선 네트워크들(예컨대, LAN, 케이블 등) 및 무선 네트워크들(예컨대, WLAN, 셀룰러, 위성 등), 인터넷 등을 비롯한, 아주 다양한 네트워크들 및 프로토콜 유형들 내에서의 통신을 용이하게 할 수 있다. 통신 인터페이스들(806)은 또한, 예컨대, 저장소 어레이, 네트워크 연결 저장소, 저장 영역 네트워크 등에 있는, 외부 저장소(도시 생략)와의 통신을 제공할 수 있다.
일부 구현들에서, 정보 및 영상들을 사용자들에게 디스플레이하기 위해 모니터와 같은 디스플레이 디바이스(808)가 포함될 수 있다. 다른 I/O 디바이스들(810)은 사용자로부터 다양한 입력들을 수신하고 사용자에게 다양한 출력들을 제공하는 디바이스들일 수 있고, 키보드, 리모콘, 마우스, 프린터, 오디오 입출력 디바이스들 등을 포함할 수 있다.
메모리(804)는 본 명세서에 기술된 구현들에 따라 압축 모듈(114)을 구현하는 모듈들 및 구성요소들을 포함할 수 있다. 메모리(804)는 영상들을 압축/인코딩하는 것과 연관된 다양한 기능들을 수행하는 다수의 모듈들(예컨대, 모듈들(114, 816, 818, 820, 및 822))을 포함할 수 있다. 메모리(804)는 또한 다른 특징들을 구현하는 다른 모듈들(824) 및 중간 계산들 등을 포함하는 다른 데이터(826)를 포함할 수 있다. 다른 모듈들(824)은 운영 체제, 드라이버들, 통신 소프트웨어, 검색 엔진, 영상들 등과 같은 다양한 소프트웨어를 포함할 수 있다.
컴퓨팅 디바이스(800)는 부가의 컴퓨팅 디바이스들(104)과 같은 다수의 컴퓨팅 디바이스들과 통신하기 위해 네트워크(106)를 사용할 수 있다. 예를 들어, 컴퓨팅 디바이스(800)는 디지털 영상들을 포착하는 것, 압축 모듈(114)을 사용하여 디지털 영상들을 압축하는 것, 및 압축된 디지털 영상들을 네트워크(106)를 통해 부가의 컴퓨팅 디바이스들(106)로 송신하는 것을 할 수 있다. 다른 예로서, 컴퓨팅 디바이스(800)는 검색 및 다수의 웹 사이트들을 인덱싱하는 것을 할 수 있는 검색 엔진을 호스팅할 수 있다. 검색 쿼리(search query)에 응답하여, 컴퓨팅 디바이스(800)는 압축 모듈을 사용하여 압축되어 있는 영상들을 디스플레이할 수 있다.
본 명세서에 기술된 예시적인 시스템들 및 컴퓨팅 디바이스들은 어떤 구현들에 적당한 예들에 불과하고, 본 명세서에 기술된 프로세스들, 구성요소들 및 특징들을 구현할 수 있는 환경들, 아키텍처들 및 프레임워크들의 사용 또는 기능의 범주에 관한 어떤 제한도 암시하는 것으로 의도되어 있지 않다. 이와 같이, 본 명세서에서의 구현들은 수많은 환경들 또는 아키텍처들에서 동작하고, 범용 및 특수 목적 컴퓨팅 시스템들, 또는 처리 능력을 가지는 다른 디바이스들에서 구현될 수 있다. 일반적으로, 도면들을 참조하여 기술되는 기능들 중 임의의 것이 소프트웨어, 하드웨어(예컨대, 고정 논리 회로(fixed logic circuitry)) 또는 이 구현들의 조합을 사용하여 구현될 수 있다. “모듈”, “메커니즘” 또는 “구성요소”라는 용어는, 본 명세서에서 사용되는 바와 같이, 일반적으로 미리 정해진 기능들을 구현하도록 구성될 수 있는 소프트웨어, 하드웨어, 또는 소프트웨어와 하드웨어의 조합을 나타낸다. 예를 들어, 소프트웨어 구현의 경우에, “모듈”, “메커니즘” 또는 “구성요소”라는 용어는, 하드웨어로 구현된 처리 디바이스 또는 디바이스들 상에서 실행될 때, 지정된 작업들 또는 동작들을 수행하는 프로그램 코드(및/또는 선언형 명령어들)를 나타낼 수 있다. 프로그램 코드는 하나 이상의 컴퓨터 판독 가능 메모리 디바이스들 또는 다른 컴퓨터 저장 디바이스들에 저장될 수 있다. 이와 같이, 본 명세서에 기술된 프로세스들, 구성요소들 및 모듈들은 컴퓨터 프로그램 제품에 의해 구현될 수 있다.
본 명세서에서 사용되는 바와 같이, “컴퓨터 판독 가능 매체”가 컴퓨터 저장 매체는 포함하지만 통신 매체는 배제한다. 컴퓨터 저장 매체는 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈 또는 다른 데이터와 같은 정보를 저장하기 위해 임의의 방법 또는 기술로 구현되는 휘발성 및 비휘발성, 이동식 및 비이동식 매체를 포함한다. 컴퓨터 저장 매체는 컴퓨팅 디바이스가 액세스하기 위한 정보를 저장하는 데 사용될 수 있는, RAM(random access memory), ROM(read only memory), EEPROM(electrically erasable programmable ROM), 플래시 메모리 또는 다른 메모리 기술, CD-ROM(compact disk ROM), DVD(digital versatile disk) 또는 다른 광 저장소, 자기 카세트, 자기 테이프, 자기 디스크 저장소 또는 다른 자기 저장 디바이스, 또는 임의의 다른 비전송 매체를 포함하지만, 이들로 제한되지 않는다.
이와 달리, 통신 매체는 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈, 또는 다른 데이터를 반송파와 같은 피변조 데이터 신호(modulated data signal)에 구현할 수 있다. 본 명세서에서 규정된 바와 같이, 컴퓨터 저장 매체는 통신 매체를 포함하지 않는다.
게다가, 본 개시 내용은, 기술된 바와 같은 그리고 도면들에 예시된 바와 같은, 다양한 예시적인 구현들을 제공한다. 그렇지만, 통상의 기술자라면 알 것인 바와 같이 또는 알게 될 것인 바와 같이, 본 개시 내용은 본 명세서에 기술되고 예시된 구현들로 제한되지 않고, 다른 구현들로 확장될 수 있다. 본 명세서에서 “하나의 구현”, “이 구현”, “이 구현들“ 또는 “일부 구현들”이라고 언급하는 것은 기술된 특정의 특징, 구조 또는 특성이 적어도 하나의 구현에 포함된다는 것을 의미하고, 본 명세서의 여러 곳에서 나오는 이러한 문구들이 모두 꼭 동일한 구현을 가리키는 것은 아니다.
결론
발명 요지가 구조적 특징들 및/또는 방법 동작들과 관련하여 기술되어 있지만, 첨부된 청구항들에 한정된 발명 요지가 앞서 기술된 구체적인 특징들 또는 동작들로 제한되지 않는다. 오히려, 앞서 기술된 구체적인 특징들 및 동작들은 청구항들을 구현하는 예시적인 형태들로서 개시되어 있다. 본 개시 내용은 개시된 구현들의 모든 개조(adaptation)들 또는 변형들을 포괄하는 것으로 의도되어 있고, 이하의 청구항들은 본 명세서에 개시된 구체적인 구현들로 제한되는 것으로 해석되어서는 안된다.

Claims (20)

  1. 컴퓨팅 디바이스에 있어서,
    하나 이상의 프로세서들; 및
    동작들을 수행하도록 상기 하나 이상의 프로세서들에 의해 실행 가능한 명령어들을 저장하는 하나 이상의 컴퓨터 판독 가능 저장 매체를 포함하고, 상기 동작들은,
    복수의 영상들을 포함하는 영상 컬렉션(image collection)을 수신하는 단계;
    상기 복수의 영상들을 영상 특징들에 기초하여 하나 이상의 영상 집합들로 클러스터링(clustering)하는 단계;
    상기 하나 이상의 영상 집합들의 각각의 특정의 영상 집합에 대해:
    상기 특정의 영상 집합으로부터 영상들의 특징 기반 최소 신장 트리(feature-based minimum spanning tree)를 생성하는 단계와;
    상기 특징 기반 최소 신장 트리의 루트 영상(root image)의 특징 기반 예측을 수행하는 단계; 및
    상기 하나 이상의 영상 집합들에 대응하는 하나 이상의 압축된 영상 집합들을 포함하는 인코딩된 비트스트림(encoded bitstream)을 발생시키는 단계를 포함하는 것인, 컴퓨팅 디바이스.
  2. 제1항에 있어서, 상기 하나 이상의 압축된 영상 집합들을 포함하는 인코딩된 비트스트림을 발생시키는 단계 전에, 상기 동작들은,
    레이트 왜곡 최적화 코딩(rate-distortion optimization coding)을 사용하여 잔차 신호(residual signal)들을 인코딩하는 단계를 추가로 포함하는 것인, 컴퓨팅 디바이스.
  3. 제1항에 있어서, 상기 복수의 영상들을 영상 특징들에 기초하여 하나 이상의 영상 집합들로 클러스터링하는 단계는,
    정합된 128 차원 기울기 벡터들(matched 128 dimension gradient vectors)의 평균 절대 거리를 사용하여 2 개의 요소들 사이의 거리를 결정하는 단계; 및
    상기 영상 컬렉션의 영상으로부터 중심점(centroid) - 상기 중심점은 동일한 클러스터 내의 다른 영상들까지 최소 평균 거리를 가짐 - 을 선택하는 단계를 포함하는 것인, 컴퓨팅 디바이스.
  4. 제1항에 있어서, 상기 특정의 영상 집합으로부터 영상들의 특징 기반 최소 신장 트리를 생성하는 단계는,
    상기 영상들 각각과 다른 영상들 간의 특징 기반 거리에 기초하여 상기 영상들의 방향 그래프(directed graph)를 생성하는 단계; 및
    상기 영상들의 상기 방향 그래프에 기초하여 영상들의 특징 기반 최소 신장 트리를 발생시키는 단계를 포함하는 것인, 컴퓨팅 디바이스.
  5. 제4항에 있어서, 상기 방향 그래프에서 상기 영상들 각각에 대한 간선 비용(edge cost)으로서 SIFT(scale-invariant feature transform) 거리가 사용되는 것인, 컴퓨팅 디바이스.
  6. 제1항에 있어서, 상기 특징 기반 최소 신장 트리의 루트 영상의 특징 기반 예측을 수행하는 단계는,
    상기 루트 영상을 예측 없이 인트라 영상 프레임(intra-image frame)으로서 인코딩하는 단계;
    상기 루트 영상을 재구성하는 단계; 및
    다른 영상들을 코딩하기 위한 예측 영상을 발생시키기 위해 영상간 예측(inter-image prediction)을 수행하는 단계를 포함하는 것인, 컴퓨팅 디바이스.
  7. 동작들을 수행하도록 하나 이상의 프로세서들에 의해 실행 가능한 명령어들을 저장하는 컴퓨터 판독 가능 저장 디바이스에 있어서, 상기 동작들은,
    영상 컬렉션으로부터의 영상들을 각각의 영상에서의 하나 이상의 특징들에 기초하여 하나 이상의 영상 집합들로 클러스터링하는 단계;
    각각의 영상에서의 상기 하나 이상의 특징들에 기초하여 상기 하나 이상의 영상 집합들의 각각의 집합으로부터, 영상들의 최소 신장 트리를 생성하는 단계;
    상기 하나 이상의 영상 집합들 각각에 대해, 상기 영상들의 최소 신장 트리를 사용하여 특징 기반 예측을 수행하는 단계; 및
    상기 하나 이상의 영상 집합들에 대응하는 하나 이상의 압축된 영상 집합들을 발생시키는 단계를 포함하는 것인, 컴퓨터 판독 가능 저장 디바이스.
  8. 제7항에 있어서, 상기 영상들의 최소 신장 트리를 사용하여 특징 기반 예측을 수행하는 단계는,
    상기 하나 이상의 영상 집합들에서의 각각의 영상에 대해, 하나 이상의 장소들 및 하나 이상의 시야각(view angle)들에 의해 야기되는 기하학적 왜곡들을 감소시키기 위해 SIFT 기반 변형을 수행하는 단계를 포함하는 것인, 컴퓨터 판독 가능 저장 디바이스.
  9. 제7항에 있어서, 상기 영상들의 최소 신장 트리를 사용하여 특징 기반 예측을 수행하는 단계는,
    상기 하나 이상의 영상 집합들 각각에서의 영상들 간의 밝기 변동을 감소시키기 위해 광도 변환(photometric transformation)을 수행하는 단계를 포함하는 것인, 컴퓨터 판독 가능 저장 디바이스.
  10. 제7항에 있어서, 상기 영상들의 최소 신장 트리를 사용하여 특징 기반 예측을 수행하는 단계는,
    블록 기반 움직임 추정 및 보상을 수행하는 단계를 포함하는 것인, 컴퓨터 판독 가능 저장 디바이스.
  11. 제7항에 있어서, 상기 동작들은,
    상기 하나 이상의 영상 집합들의 각각의 집합에서의 각각의 영상에 대한 일단의 SIFT 기술자(descriptor)들을 결정하는 단계; 및
    상기 하나 이상의 영상 집합들의 각각의 집합에서의 적어도 2 개의 영상들 간의 유사성을, 상기 적어도 2 개의 영상들 각각에 대한 상기 일단의 SIFT 기술자들에 기초하여 결정하는 단계를 추가로 포함하는 것인, 컴퓨터 판독 가능 저장 디바이스.
  12. 제7항에 있어서, 상기 영상들의 최소 신장 트리를 사용하여 특징 기반 예측을 수행하는 단계는,
    상기 영상들 간의 스케일 왜곡 및 회전 왜곡 차이들을 감소시키기 위해 상기 하나 이상의 영상 집합들의 각각의 집합에서의 영상들의 전역 레벨 정렬(global-level alignment)을 수행하는 단계를 추가로 포함하는 것인, 컴퓨터 판독 가능 저장 디바이스.
  13. 명령어들로 구성되어 있는 하나 이상의 프로세서들의 제어 하에서 수행되는 방법에 있어서,
    복수의 영상들을 하나 이상의 영상 집합들로 클러스터링하는 단계;
    상기 하나 이상의 영상 집합들의 특정의 영상 집합에 대한 최소 신장 트리를 발생시키는 단계;
    상기 최소 신장 트리에 기초하여 특징 기반 예측을 수행하는 단계; 및
    상기 특정의 영상 집합에 대응하는 압축된 영상 집합을 발생시키는 단계를 포함하는, 방법.
  14. 제13항에 있어서, 상기 복수의 영상들을 하나 이상의 영상 집합들로 클러스터링하는 단계는,
    상기 복수의 영상들의 각각의 영상에 대한 일단의 SIFT 기술자들을 생성하는 단계; 및
    적어도 2 개의 영상들 간의 차이를, 상기 적어도 2 개의 영상들 각각과 연관된 상기 일단의 SIFT 기술자들 간의 거리에 기초하여 결정하는 단계를 포함하는 것인, 방법.
  15. 제14항에 있어서, 상기 하나 이상의 영상 집합들의 특정의 영상 집합에 대한 최소 신장 트리를 발생시키는 단계는,
    영상들 간의 특징 기반 거리들에 기초하여 방향 그래프를 발생시키는 단계; 및
    상기 방향 그래프의 구조에 기초하여 상기 최소 신장 트리를 발생시키는 단계를 포함하는 것인, 방법.
  16. 제15항에 있어서, 상기 방향 그래프의 노드들 간의 간선 비용은 상기 특정의 영상 집합의 각각의 영상에 대한 상기 일단의 SIFT 기술자들에 기초하는 것인, 방법.
  17. 제13항에 있어서, 상기 최소 신장 트리에 기초하여 특징 기반 예측을 수행하는 단계는,
    상기 특정의 영상 집합에서의 각각의 영상에 대해 전역 레벨 정렬을 수행하는 단계; 및
    상기 특정의 영상 집합에서의 각각의 영상에 대해 블록 레벨 움직임 추정을 수행하는 단계를 포함하는 것인, 방법.
  18. 제17항에 있어서, 상기 특정의 영상 집합에서의 각각의 영상에 대해 전역 레벨 정렬을 수행하는 단계는,
    상기 특정의 영상 집합에서의 적어도 하나의 영상의 기하학적 왜곡들을 감소시키기 위해 SIFT 기반 변형을 수행하는 단계를 포함하는 것인, 방법.
  19. 제17항에 있어서, 상기 특정의 영상 집합에서의 각각의 영상에 대해 전역 레벨 정렬을 수행하는 단계는,
    상기 특정의 영상 집합에서의 영상들 간의 밝기 변동을 감소시키기 위해 광도 변환을 수행하는 단계를 포함하는 것인, 방법.
  20. 제17항에 있어서, 상기 특정의 영상 집합에서의 각각의 영상에 대해 블록 레벨 움직임 추정을 수행하는 단계는,
    지역적 이동(local shift)을 감소시키기 위해 블록 기반 움직임 추정 및 보상을 수행하는 단계를 포함하는 것인, 방법.
KR1020167002661A 2013-07-15 2013-07-15 특징 기반 영상 집합 압축 KR20160032137A (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2013/079352 WO2015006894A1 (en) 2013-07-15 2013-07-15 Feature-based image set compression

Publications (1)

Publication Number Publication Date
KR20160032137A true KR20160032137A (ko) 2016-03-23

Family

ID=52345668

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167002661A KR20160032137A (ko) 2013-07-15 2013-07-15 특징 기반 영상 집합 압축

Country Status (5)

Country Link
US (1) US20160255357A1 (ko)
EP (1) EP3022899A4 (ko)
KR (1) KR20160032137A (ko)
CN (1) CN105409207A (ko)
WO (1) WO2015006894A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220136712A (ko) 2021-04-01 2022-10-11 주식회사 엘지화학 화합물 및 이를 포함하는 유기 발광 소자

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9836885B1 (en) 2013-10-25 2017-12-05 Appliance Computing III, Inc. Image-based rendering of real spaces
WO2015176280A1 (en) 2014-05-22 2015-11-26 Microsoft Technology Licensing, Llc Re-encoding image sets using frequency-domain differences
US9430718B1 (en) 2015-02-09 2016-08-30 Sony Corporation Efficient local feature descriptor filtering
US9311342B1 (en) 2015-02-09 2016-04-12 Sony Corporation Tree based image storage system
CN109005407B (zh) 2015-05-15 2023-09-01 华为技术有限公司 视频图像编码和解码的方法、编码设备和解码设备
US11494547B2 (en) * 2016-04-13 2022-11-08 Microsoft Technology Licensing, Llc Inputting images to electronic devices
US11037330B2 (en) 2017-04-08 2021-06-15 Intel Corporation Low rank matrix compression
CN107105306B (zh) * 2017-05-16 2019-10-11 西安电子科技大学 基于朱刘方法和ottc的群体图像编码结构生成方法
CN107426580B (zh) * 2017-05-16 2019-11-15 西安电子科技大学 基于朱刘法和蚁群法的群体图像编码结构生成方法
CN111709415B (zh) * 2020-04-29 2023-10-27 北京迈格威科技有限公司 目标检测方法、装置、计算机设备和存储介质
US11917162B2 (en) * 2021-04-30 2024-02-27 Tencent America LLC Content-adaptive online training with feature substitution in neural image compression

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002010259A (ja) * 2000-06-21 2002-01-11 Mitsubishi Electric Corp 画像符号化装置及び画像符号化方法及び画像符号化プログラムを記録した記録媒体
FR2846502B1 (fr) * 2002-10-28 2005-02-11 Thomson Licensing Sa Procede de selection de germes pour le regroupement d'images cles
FR2872665A1 (fr) * 2004-07-01 2006-01-06 Thomson Licensing Sa Dispositif et procede de compression video
KR100672487B1 (ko) * 2005-02-01 2007-01-24 엘지전자 주식회사 영상 저장용 메모리 관리 방법 및 그를 지원하는 이동통신단말기
JP2011024003A (ja) * 2009-07-16 2011-02-03 Fujifilm Corp 立体動画記録方法および装置、動画ファイル変換方法および装置
US8422755B2 (en) * 2010-06-11 2013-04-16 Given Imaging Ltd. System and method for synchronizing image sequences captured in-vivo for automatic comparison
CA3010836C (en) * 2010-07-30 2020-09-08 Fundacao D. Anna Sommer Champalimaud E Dr. Carlos Montez Champalimaud Systems and methods for segmentation and processing of tissue images and feature extraction from same for treating, diagnosing, or predicting medical conditions
WO2012085912A2 (en) * 2010-12-21 2012-06-28 Yeda Research And Development Co. Ltd. Method and system of imaging and/or diagnosing a bone from a reconstructed volume image
US8773446B2 (en) * 2011-02-09 2014-07-08 Xerox Corporation Synchronous parallel pixel processing for scalable color reproduction systems
WO2012137214A1 (en) * 2011-04-05 2012-10-11 Hewlett-Packard Development Company, L. P. Document registration
CN103207879B (zh) * 2012-01-17 2016-03-30 阿里巴巴集团控股有限公司 图像索引的生成方法及设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220136712A (ko) 2021-04-01 2022-10-11 주식회사 엘지화학 화합물 및 이를 포함하는 유기 발광 소자

Also Published As

Publication number Publication date
US20160255357A1 (en) 2016-09-01
EP3022899A1 (en) 2016-05-25
CN105409207A (zh) 2016-03-16
WO2015006894A1 (en) 2015-01-22
EP3022899A4 (en) 2016-08-03

Similar Documents

Publication Publication Date Title
KR20160032137A (ko) 특징 기반 영상 집합 압축
US10349060B2 (en) Encoding video frames using generated region of interest maps
CN110115037B (zh) 球面投影运动估计/补偿和模式决策
US20200329233A1 (en) Hyperdata Compression: Accelerating Encoding for Improved Communication, Distribution & Delivery of Personalized Content
Shi et al. Photo album compression for cloud storage using local features
CN112270710B (zh) 位姿确定方法、位姿确定装置、存储介质与电子设备
Zhang et al. A joint compression scheme of video feature descriptors and visual content
CN114616832A (zh) 基于网络的视觉分析
KR102254986B1 (ko) 구면 투영부들에 의한 왜곡을 보상하기 위한 등장방형 객체 데이터의 프로세싱
US10163257B2 (en) Constructing a 3D structure
Rizkallah et al. Geometry-aware graph transforms for light field compact representation
US10445613B2 (en) Method, apparatus, and computer readable device for encoding and decoding of images using pairs of descriptors and orientation histograms representing their respective points of interest
Mital et al. Neural distributed image compression with cross-attention feature alignment
US11601661B2 (en) Deep loop filter by temporal deformable convolution
Baroffio et al. Hybrid coding of visual content and local image features
Rizkallah et al. Prediction and sampling with local graph transforms for quasi-lossless light field compression
US20240070924A1 (en) Compression of temporal data by using geometry-based point cloud compression
Ebrahim et al. Multiview image block compressive sensing with joint multiphase decoding for visual sensor network
Wu et al. 3D mesh based inter-image prediction for image set compression
US20230316584A1 (en) Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method
Milani et al. Compression of photo collections using geometrical information
Yun et al. Design of reconfigurable array processor for multimedia application
Jamunarani et al. Shape adaptive DCT compression for high quality surveillance using wireless sensor networks
US12003728B2 (en) Methods and systems for temporal resampling for multi-task machine vision
Athisayamani et al. A Novel Video Coding Framework with Tensor Representation for Efficient Video Streaming

Legal Events

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