KR20140110008A - 객체 검출 정보에 따른 인코딩 - Google Patents

객체 검출 정보에 따른 인코딩 Download PDF

Info

Publication number
KR20140110008A
KR20140110008A KR1020147020857A KR20147020857A KR20140110008A KR 20140110008 A KR20140110008 A KR 20140110008A KR 1020147020857 A KR1020147020857 A KR 1020147020857A KR 20147020857 A KR20147020857 A KR 20147020857A KR 20140110008 A KR20140110008 A KR 20140110008A
Authority
KR
South Korea
Prior art keywords
coding
pixel blocks
frame
sub
pixels
Prior art date
Application number
KR1020147020857A
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 KR20140110008A publication Critical patent/KR20140110008A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/20Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/115Selection of the code volume for a coding unit prior to coding
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • 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/137Motion inside a coding unit, e.g. average field, frame or block difference
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/232Content retrieval operation locally within server, e.g. reading video streams from disk arrays
    • 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/20004Adaptive image processing
    • G06T2207/20012Locally adaptive
    • 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/20016Hierarchical, coarse-to-fine, multiscale or multiresolution image processing; Pyramid transform
    • 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/20112Image segmentation details
    • G06T2207/20116Active contour; Active surface; Snakes
    • 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/20112Image segmentation details
    • G06T2207/20121Active appearance model [AAM]
    • 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/20112Image segmentation details
    • G06T2207/20124Active shape model [ASM]
    • 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/20112Image segmentation details
    • G06T2207/20128Atlas-based segmentation
    • 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/20112Image segmentation details
    • G06T2207/20132Image cropping
    • 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/20112Image segmentation details
    • G06T2207/20152Watershed segmentation
    • 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/20112Image segmentation details
    • G06T2207/20156Automatic seed setting
    • 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/20112Image segmentation details
    • G06T2207/20161Level set
    • 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/20112Image segmentation details
    • G06T2207/20164Salient point detection; Corner 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/20112Image segmentation details
    • G06T2207/20168Radial search
    • 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/30196Human being; Person
    • G06T2207/30201Face
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/12Edge-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/136Segmentation; Edge detection involving thresholding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/143Segmentation; Edge detection involving probabilistic approaches, e.g. Markov random field [MRF] modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/181Segmentation; Edge detection involving edge growing; involving edge linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/187Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/162Detection; Localisation; Normalisation using pixel segmentation or colour matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/165Detection; Localisation; Normalisation using facial parts and geometric relationships
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/18Eye characteristics, e.g. of the iris
    • G06V40/193Preprocessing; Feature extraction
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명의 실시예는 비디오 시퀀스 내의 객체의 검출에 기초하여 비디오 데이터를 효율적으로 코딩하기 위한 기법을 제공한다. 비디오 코더는 프레임에 대해 객체 검출을 수행하고, 객체가 검출되는 경우 객체가 위치되는 프레임의 영역의 통계자료를 생성할 수 있다. 비디오 코더는 객체 위치에 인접한 픽셀들을 객체의 통계자료와 비교할 수 있고, 객체의 위치에 대응하는 픽셀 블록들, 및 검출된 객체와 유사한 통계자료를 갖는 인접한 픽셀들에 대응하는 픽셀 블록들을 포함하는 객체 구역을 정의할 수 있다. 코더는 블록 기반 압축 알고리즘에 따라 비디오 프레임을 코딩할 수 있는데, 여기서 객체 구역의 픽셀 블록들은 상대적으로 높은 품질의 코딩을 발생시키는 코딩 파라미터에 따라 코딩되고, 객체 구역 외부의 픽셀 블록들은 상대적으로 더 낮은 품질의 코딩을 발생시키는 코딩 파라미터에 따라 코딩된다.

Description

객체 검출 정보에 따른 인코딩{OBJECT DETECTION INFORMED ENCODING}
본 발명은 비디오 코딩, 및 특히 대역폭을 보전하고 그와 동시에 이미지 품질을 보존하는 비디오 코딩 기법에 관한 것이다.
비디오 코딩/디코딩 시스템은 더욱더 다양한 소비자 디바이스에 효율적으로 사용되고 있다. 비디오 코덱을 예를 들어 최신 스마트폰 및 태블릿 컴퓨터에서 발견할 수 있는데, 여기서 통신 대역폭은 무선 네트워크 또는 상대적으로 낮고 예측 불가능한 대역폭을 제공하는 다른 인프라구조에 의해 제공된다. 그러한 응용은, 예를 들어 코딩된 비디오 데이터에 훨씬 더 큰 대역폭이 이용가능할 수 있는 DVD 플레이어와 같은 다른 코덱 응용과는 현저히 상이하다. 따라서, 그러한 코덱의 최신 응용은 코딩된 비디오의 비트레이트를 가능한 한 많이 감소시키면서도 여전히 우수한 이미지 품질을 제공하도록 코덱 설계자에게 더 높은 성능 요건을 부과한다.
본 발명자들은, 비디오 프레임 내의 관심대상의 객체를 식별하고; 객체를 포함하는 구역의 고품질 코딩을 제공하고, 프레임의 다른 구역에서의 대역폭을 보전하고, 다양한 구역들 사이의 매끄러운 코딩 천이를 제공하도록 코딩 파라미터를 선택하는 비디오 코더에 대한 당업계에서의 필요성을 인지한다.
<도 1>
도 1은 본 발명의 실시예에 따른 비디오 코딩 시스템의 단순화된 블록 다이어그램.
<도 2>
도 2는 본 발명의 실시예에 따른, 비디오 코더에 의해 처리될 수 있는 비디오 데이터의 예시적인 프레임을 도시하는 도면.
<도 3>
도 3은 본 발명의 실시예에 따른, 비디오 데이터의 프레임의 픽셀 블록을 코딩하는 방법을 도시하는 도면.
<도 4 내지 도 6>
도 4 내지 도 6은 도 2에 도시된 프레임 데이터에 적용된 바와 같은 본 발명의 다양한 실시예의 예들을 도시하는 도면.
<도 7>
도 7은 본 발명의 실시예에 따른 픽셀 블록 코딩 시스템의 단순화된 블록 다이어그램.
본 발명의 실시예는 비디오 시퀀스 내에서의 객체의 검출에 기초하여 비디오 데이터를 효율적으로 코딩하기 위한 기법을 제공한다. 실시예에 따르면, 비디오 코더는 프레임에 대해 객체 검출을 수행하고, 객체가 검출되는 경우 객체가 위치되는 프레임의 영역의 통계자료(statistics)를 생성(develop)할 수 있다. 비디오 코더는 객체 위치에 인접한 픽셀들을 객체의 통계자료와 비교할 수 있고, 객체의 위치에 대응하는 픽셀 블록들 및 검출된 객체와 유사한 통계자료를 갖는 인접 픽셀들에 대응하는 픽셀 블록들을 포함하는 객체 구역을 정의할 수 있다. 코더는 블록 기반 압축 알고리즘(block-based compression algorithm)에 따라 비디오 프레임을 코딩할 수 있는데, 여기서 객체 구역의 픽셀 블록들은 상대적으로 높은 품질의 코딩을 발생시키는 코딩 파라미터들에 따라 코딩되고, 객체 구역 외부의 픽셀 블록들은 상대적으로 더 낮은 품질의 코딩을 발생시키는 코딩 파라미터들에 따라 코딩된다.
다른 실시예는 더 정교한 코딩 기법을 제공한다. 예를 들어, 비디오 코더는, 개별 픽셀 블록들 내에서, 검출된 객체의 일부인 픽셀 블록의 부분을, 검출된 객체의 일부가 아닌 픽셀 블록의 다른 부분과 구별할 수 있다. 이들 실시예는 또한 검출된 객체에 속하는 부분의 높은 품질의 코딩을 보존하도록 그리고 비객체 부분들에 고압축 코딩을 제공하도록 픽셀 블록들의 상이한 부분들에 전처리 동작을 적용할 수 있다. 예를 들어, 코더는, 코딩 전에, 픽셀 블록의 비객체 부분들에 블러링 필터(blurring filter)를 적용할 수 있다.
도 1의 (a)는 본 발명의 실시예에 따른 비디오 코딩 시스템(100)의 단순화된 블록 다이어그램을 도시한다. 시스템(100)은 네트워크(130)를 통해 상호접속되는 복수의 단말기(110, 120)를 포함할 수 있다. 단말기(110, 120)들은 각각 로컬 위치에서 비디오 데이터를 캡처할 수 있고, 네트워크(130)를 통한 다른 단말기로의 송신을 위해 비디오 데이터를 코딩할 수 있다. 각각의 단말기(110, 120)는 네트워크(130)로부터의 다른 단말기의 코딩된 비디오 데이터를 수신하고, 코딩된 데이터를 디코딩하고, 복원된 비디오 데이터를 디스플레이할 수 있다.
도 1의 (a)에서, 단말기(110, 120)는 스마트폰으로서 도시되어 있지만, 본 발명의 원리는 그렇게 제한되지는 않는다. 본 발명의 실시예는 개인용 컴퓨터(데스크톱 컴퓨터 및 랩톱 컴퓨터 둘 모두), 태블릿 컴퓨터, 컴퓨터 서버, 미디어 플레이어, 및/또는 전용 화상 회의 장비에서 응용을 찾는다. 네트워크(130)는 예를 들어 유선 및/또는 무선 통신 네트워크를 포함한, 단말기(110, 120) 사이에서 코딩된 비디오 데이터를 전달하는 임의의 수의 네트워크를 나타낸다. 통신 네트워크(130)는 회선 교환형(circuit-switched) 및/또는 패킷 교환형(packet-switched) 채널에서 데이터를 교환할 수 있다. 대표적인 네트워크는 원격 통신망(telecommunications network), 근거리 통신망(local area network), 광역 통신망(wide area network) 및/또는 인터넷을 포함한다. 본 논의를 위해, 네트워크(130)의 아키텍처 및 토폴로지는 하기에 설명되지 않는 한 본 발명의 동작에 중요하지 않다.
도 1의 (b)는 시스템(100) 내에서 동작가능한 비디오 코더 및 디코더(140, 150)의 기능 블록 다이어그램을 추가로 도시한다. 단말기(110)는 카메라(160), 비디오 코더(140) 및 송신기(170)를 포함할 수 있다. 비디오 코더(140)는 카메라(160)에서 캡처된 비디오 데이터를 코딩할 수 있고, 코딩된 데이터를 네트워크(130)에 의해 제공되는 채널(131)로 전달할 수 있다. 비디오 코더(140)는 비디오 데이터의 콘텐츠에 기초하여 코딩 파라미터들을 선택할 수 있다. 송신기(170)는 비디오 코더(140)에 의해 제공되는 코딩된 비디오 데이터를, 오디오 코덱 또는 다른 데이터 소스(도시되지 않음)에 의해 제공되는 다른 데이터 스트림(들)과 병합할 수 있고, 다른 단말기(120)로의 송신을 위해 데이터를 컨디셔닝할 수 있다.
제2 단말기(120)는 수신기(180), 비디오 디코더(150) 및 디스플레이(190)를 포함할 수 있다. 수신기(180)는 채널(131)로부터 데이터를 수신하고, 이 채널 데이터를 코딩된 비디오의 스트림을 포함한 다양한 데이터 스트림(들)으로 분석(parse)할 수 있다. 비디오 디코더(150)는 코딩된 비디오 데이터를 디코딩하여, 비디오 코더(140)에 의해 수행된 코딩 프로세스들을 도치시켜서, 그로부터 비디오 데이터를 복원할 수 있다. 비디오 데이터는 디스플레이(190)에 의해 렌더링될 수 있거나, 이후의 사용을 위해 저장될 수 있다.
도시된 바와 같이, 비디오 코더(140)는 전처리기(142), 코딩 엔진(143), 로컬 디코더(144), 기준 화상 캐시(145), 객체 검출기(146) 및 제어기(147)를 포함할 수 있다. 전처리기(142)는 카메라(160)로부터의 소스 비디오를 수용할 수 있고, 코딩을 위해 그것을 컨디셔닝하기 위해서 소스 비디오에 대해 다양한 처리 동작을 수행할 수 있다. 코딩 엔진(143)은 내부의 공간적 및/또는 시간적 리던던시를 감소시키기 위해 전처리된 비디오에 대해 압축 동작을 수행할 수 있다. 코딩 엔진(143)은 코딩된 비디오 데이터를 송신기(170)로 출력할 수 있다. 디코더(144)는 기준 프레임의 코딩된 비디오 데이터를 디코딩할 수 있고, 이후에 수신되는 비디오의 코딩에 사용하기 위해 그 디코딩된 기준 프레임을 기준 화상 캐시(145)에 저장할 수 있다.
그의 명칭이 암시하는 바와 같이, 객체 검출기(146)는 소스 비디오 내의 객체, 예를 들어, 사람의 안면 또는 다른 사전결정된 유형의 객체를 식별할 수 있다. 객체 검출기(146)는 객체가 프레임 내에서 검출되는지 여부 및, 만일 그렇다면, 그 객체가 어디에서 발견되었는지를 나타내는 데이터를 제어기(147)로 생성할 수 있다. 이에 응답하여, 제어기(147)는 프레임 내의 하나 이상의 코딩 구역을 정의할 수 있고, 그 코딩 구역들 각각에 대해 코딩 조정을 코딩 엔진(143)에 제공할 수 있다.
전처리기(142)는 코딩을 위해 소스 비디오를 컨디셔닝하기 위해서 카메라로부터 출력된 소스 비디오에 대해 다양한 비디오 처리 동작을 수행할 수 있다. 전처리기(142)는 비디오 내에서 관찰되는 특성들에 기초하여 소스 비디오에 동적으로 적용될 수 있는, 잡음제거 필터(de-noising filter), 선명화 필터(sharpening filter), 평활화 필터(smoothing filter), 양방향 필터(bilateral filter) 등과 같은 필터들의 어레이(도시되지 않음)를 포함할 수 있다. 전처리기(142)는 카메라로부터의 소스 비디오 데이터를 검토하고 응용을 위한 하나 이상의 필터를 선택하기 위해 그 자신의 제어기(도시되지 않음)를 포함할 수 있다. 전형적으로, 전처리기(142)는 압축을 보다 효율적이 되게 하도록 또는 코딩 엔진(143)이 동작함에 따라 유발될 수 있는 데이터 손실의 관점에서 이미지 품질을 보존하도록 소스 비디오 데이터를 컨디셔닝한다.
코딩 엔진(143)은 다양한 여러 코딩 기법에 따라 입력 비디오 데이터를 코딩하여 압축을 달성할 수 있다. 코딩 엔진(143)은 모션 보상 예측(motion-compensated prediction)에 의해 이미지를 압축할 수 있다. 입력 비디오의 프레임은 인트라 코딩(I-코딩), 단방향 예측 코딩(P-코딩) 또는 양방향 예측 코딩(B-코딩)과 같은 코딩 유형을 할당받을 수 있다. 프레임은 또한 복수의 픽셀 블록으로 분석될 수 있고, 변환 코딩, 양자화 및 엔트로피 코딩에 의해 코딩될 수 있다. 코딩 엔진(143)은 제어기(147)와 협력하여 양자화 파라미터를 선택할 수 있는데, 이 양자화 파라미터는 저 에너지 변환 계수를 트런케이트(truncate)한다. P- 및 B-코딩된 프레임들의 픽셀 블록들은 예측적으로 코딩될 수 있는데, 이 경우에, 코딩 엔진은 코딩되고 있는 픽셀 블록들의 예측으로서의 역할을 하는, 기준 화상 캐시(145)에 저장된 디코딩된 프레임의 픽셀 블록들을 식별하는 모션 벡터를 계산할 수 있고, 변환 코딩을 시작(engaging)하기 전에 예측 잔차를 생성할 수 있다. 실시예에서, 비디오 코더는 ITU H.263, H.264 등에 의해 정의되는 코딩 프로토콜에 따라 동작할 수 있다.
코딩 엔진(143)은 또한 소정의 코딩된 프레임이 이후에 수신되는 입력 프레임의 코딩에 사용하기 위한 기준 프레임으로서 사용될 수 있음을 지정할 수 있다. 디코더(144)는 기준 프레임의 코딩된 비디오 데이터를 디코딩하고 그로부터 복원된 비디오 데이터를 기준 화상 캐시(145)에 저장할 수 있다. 이러한 방식으로, 비디오 코더(140)는 기준 프레임의 디코딩된 카피를 갖는데, 그 이유는 그것이 비디오 디코더(150)에서 디코딩될 것이기 때문이다.
언급된 바와 같이, 객체 검출기(146)는 소스 비디오 프레임 내의 사전결정된 유형의 객체의 존재를 검출할 수 있다. 전형적으로, 객체 검출기(146)는 소스 비디오 프레임 내에서의 검출된 객체의 픽셀 좌표를 나타내는 데이터를 출력할 수 있다. 제어기(147)는 검출된 객체의 좌표를 소스 프레임의 픽셀 블록들에 상관시킬 수 있고, 그로부터 사전결정된 수의 코딩 구역을 정의할 수 있다. 제어기(147)는 프레임의 픽셀 블록들을 코딩할 때 사용하기 위해 코딩 파라미터를 코딩 엔진(143)에 제공할 수 있다. 일반적으로 말하면, 코딩 파라미터는 검출된 객체(들)에 가장 가까운 구역들 내의 픽셀 블록의 높은 품질의 코딩을 제공하도록, 그리고 검출된 객체로부터 더 멀리 떨어진 픽셀 블록의 상대적으로 더 낮은 품질의 코딩을 제공하도록 설정될 수 있다.
송신기(170)는 코딩된 비디오 데이터를 채널(131)로 송신할 수 있다. 그렇게 할 때, 송신기(170)는 코딩된 비디오 데이터를, (도 1에 도시되지 않은 처리 소스들에 의해 제공되는) 코딩된 오디오 데이터 및 제어 데이터와 같은 송신될 다른 데이터와 함께 다중화할 수 있다. 송신기(170)는 에러 정정 코딩, 인터리빙, 패킷화(packetization) 등과 같은 채널 코딩 동작들을 수행할 수 있고, 데이터를 변조시켜 네트워크(130)로 송신할 수 있다.
비디오 디코더(150)는 디코딩 엔진(152), 기준 화상 캐시(154), 후처리기(156) 및 제어기(158)를 포함할 수 있다. 디코딩 엔진(152)은 채널(131)을 통해 수신되는 코딩된 비디오 데이터를, 기준 화상 캐시(154)에 저장된 기준 화상을 참조하여 디코딩할 수 있다. 디코딩 엔진(152)은 디코딩된 비디오 데이터를 후처리기(156)로 출력할 수 있는데, 이 후처리기는 디스플레이를 위해 디코딩된 비디오 데이터를 컨디셔닝하도록 그에 대해 추가의 동작을 수행할 수 있다. 기준 프레임의 디코딩된 비디오 데이터는 또한 후속으로 수신되는 코딩된 비디오 데이터의 디코딩 동안 사용하기 위해 기준 화상 캐시(154)에 저장될 수 있다.
디코딩 엔진(152)은 코딩 엔진(143)에 의해 수행된 코딩 동작들을 도치시킨 디코딩 동작들을 수행할 수 있다. 디코딩 엔진(152)은 엔트로피 디코딩, 탈양자화(dequantization) 및 변환 디코딩을 수행하여 복원된 픽셀 블록 데이터를 생성할 수 있다. 양자화/탈양자화 동작들은 손실성 프로세스들이며, 그에 따라, 복원된 픽셀 블록 데이터는 아마도 비디오 코더(140)에 의해 코딩된 소스 픽셀 블록들의 복제품(replica)일 것이지만 약간의 에러를 포함할 것이다. 예측적으로 코딩된 픽셀 블록들의 경우, 변환 디코딩은 잔차 데이터를 생성할 수 있다; 디코딩 엔진(152)은 픽셀 블록들과 관련된 모션 벡터(이는 일부 경우에 암시될 수 있음)를 사용하여 예측 잔차들과 결합될 예측된 픽셀 블록들을 기준 화상 캐시(154)로부터 검색할 수 있다. 디코딩된 픽셀 블록들은 프레임으로 다시 어셈블되어 후처리기(156)로 출력될 수 있다.
디코딩 엔진(152)이 새로운 기준 프레임을 디코딩하는 경우, 디코딩 엔진은 후속으로 수신되는 코딩된 비디오 데이터의 디코딩에 사용하기 위해 그 디코딩된 기준 프레임을 기준 화상 캐시(154)에 저장할 수 있다.
후처리기(156)는, 통상적으로 디스플레이 디바이스에서의, 렌더링을 위해 복원된 비디오 데이터를 컨디셔닝하기 위해서 추가의 비디오 처리를 수행할 수 있다. 전형적인 후처리 동작들은 디블로킹 필터(deblocking filter), 에지 검출 필터(edge detection filter), 링잉 필터(ringing filter) 등을 적용하는 것을 포함할 수 있다. 후처리기(156)는 렌더링으로부터의 복원된 비디오 시퀀스를 디스플레이(190) 상에 출력하거나, 선택적으로, 이후의 검색 및 디스플레이를 위해 메모리에 저장할 수 있다.
도 1의 (b)에 도시된 기능 블록들은 오직 한 방향으로의 비디오 코딩 및 디코딩을 지원한다. 양방향 통신의 경우, 단말기(120)는 국부적으로 캡처된 비디오의 비디오 코딩을 위한 기능 블록들(도시되지 않음)을 포함할 수 있고, 단말기(110)는 네트워크(130)를 통해 단말기(120)로부터 수신되는 코딩된 비디오 데이터의 디코딩을 위한 기능 블록들(또한 도시되지 않음)을 포함할 수 있다. 본 발명의 원리가 양쪽 단말기(110, 120)에 존재하는 코더들에 적용될 수 있을 것으로 예상되지만, 단말기(120)로부터 단말기(110)로의 코딩 방향에 대해 제공되는 기능 블록들은 단지 본 논의를 단순화하기 위해 도 1에서 생략된다.
도 2는 본 발명의 실시예에 따른, 비디오 코더에 의해 처리될 수 있는 비디오 데이터의 예시적인 프레임을 도시한다. 도 2는 픽셀 블록들의 어레이로 분석되어 있는 프레임(200)을 도시한다. 각각의 픽셀 블록은 사전결정된 수의 픽셀들, 전형적으로 정사각형 어레이의 픽셀들(예컨대, 8x8 픽셀들 또는 16x16 픽셀들) 또는 직사각형 어레이의 픽셀들(예컨대, 4x8 픽셀들, 4x16 픽셀들, 16x8 픽셀들 등)을 포함할 수 있다. 따라서, 프레임은 픽셀 블록들의 어레이를 포함할 수 있다. NxM 픽셀 블록들의 예시적인 어레이가 도 2에 도시된다.
도 2는 또한 프레임(200)에 적용된 바와 같은 예시적인 객체 검출의 동작을 도시한다. 이 예에서, 객체 검출은 안면 검출이다. 안면 검출 알고리즘은 이미지 데이터 내의 사람의 안면의 존재를 식별할 수 있으며, 안면이 검출되는 프레임(200) 내의 위치를 식별하는 한 쌍의 좌표(X1, Y1), (X2, Y2)를 생성할 수 있다. 좌표는, 예를 들어, 안면을 나타내는 직사각형의 대향 코너들을 정의할 수 있다.
도 3은 본 발명의 실시예에 따른, 비디오 데이터의 프레임의 픽셀 블록들을 코딩하는 방법(300)을 도시한다. 방법(300)은 검출된 객체의 위치를 나타내는 좌표 데이터를 사용해 시작될 수 있다. 방법(300)은 검출된 객체의 위치에 대응하는 프레임의 픽셀 블록들을 식별할 수 있다(박스 310). 방법(300)은 객체 위치 내의 픽셀들의 데이터를 샘플링하여 객체의 통계자료를 결정할 수 있다(박스 320). 관련 통계자료는 컬러, 루마(luma)/휘도(brightness), 픽셀 블록 내에서의 공간 복잡도 및 픽셀 값들의 분산, 및 픽셀 블록들 간의 픽셀 값들의 상대 분산(relative variance)을 포함할 수 있다. 그 후, 방법(300)은 검출된 객체의 픽셀 블록들 내에서 발견되는 것들과 유사한 통계자료를, 검출된 객체에 인접한 픽셀 블록들 중에서 검색할 수 있다. 각각의 인접한 픽셀 블록에 대해, 방법(300)은 인접한 픽셀 블록이 그 객체의 것과 유사한 통계자료를 갖는지 여부를 결정할 수 있고, 만약 그렇다면, 방법은 인접한 픽셀 블록을 객체 구역에 추가할 수 있다(박스 330, 340). 객체는, 유사한 통계자료를 갖는 모든 이웃 픽셀 블록들이 객체 구역에 추가될 때까지, 검출된 객체에 인접한 픽셀 블록들 전부에 걸쳐 반복될 수 있다.
일단 객체 구역이 정의되면, 방법(300)은 객체 구역으로부터 멀어지는 쪽으로 사전결정된 거리만큼 연장되는 복수의 하위구역을 구축할 수 있다(박스 350). 그 후, 방법(300)은 모션 보상 예측에 따라 프레임의 픽셀 블록들을 코딩할 수 있다. 객체 구역 및 각각의 하위구역의 코딩 파라미터들은 객체 구역 내에서의 높은 코딩 품질 및 객체 구역으로부터 연속적으로 더 높은 거리들에 있는 하위구역들에서의 점점 더 낮은 레벨들의 코딩 품질을 강조하도록 선택될 수 있다(박스 360).
전술한 바와 같이, 객체 구역 내에 픽셀 블록을 포함시킬지 여부의 결정(박스 330)은 객체 구역에 이미 포함된 픽셀 블록들과 객체 구역 내의 픽셀 블록들 중 하나에 인접한 후보 픽셀 블록의 통계자료의 비교에 기초하여 수행될 수 있다. 실시예에서, 이 비교는 유사성 임계치(similarity threshold)를 수반할 수 있다 - 후보 픽셀 블록과 객체 구역의 픽셀 블록의 통계자료 간의 차이가 유사성 임계치보다 작은 경우, 후보 픽셀 블록은 객체 구역으로 인정될 수 있다(박스 340). 반복 동작은 관찰된 통계자료에 따라 객체 구역이 여러 방향으로 확장되게 할 수 있다. 일부 상황에서, 주어진 픽셀 블록은 객체 구역으로 인정되는 것에 실패할 수 있지만, 객체 구역으로 인정되는 픽셀 블록들에 의해, 부분적으로 또는 전체적으로, 둘러싸일 수 있다. 실시예에서, 방법(300)은 객체 구역의 다수의 픽셀 블록에 인접한, 또는 대안적으로 객체 구역의 픽셀 블록들에 의해 전체적으로 둘러싸이는 픽셀 블록들에 대한 유사성 임계치를 수정할 수 있다. 그러한 상황에서, 임계치는 낮춰질 수 있다. 실제 응용에서, 픽셀 블록의 이미지 콘텐츠는 그것이 검출된 객체에 또한 속하는 픽셀 블록들에 의해 모든 측면에서 둘러싸이는 경우에 객체에 속하는 경향이 있다. 그러한 픽셀 블록들의 유사성 임계치를 낮추는 것은, 특히 둘러싸인 픽셀 블록의 통계자료가 객체 구역의 것과 대체로 일치하지만 디폴트 유사성 임계치 하에서 승인될 정도로 가깝지는 않은 경우에, 둘러싸인 픽셀 블록의 객체 구역으로의 인정을 용이하게 할 수 있다.
도 4는 도 2의 예시적인 프레임에 대한 도 3의 방법의 적용을 도시한다. 도 4의 (a)에서, 구역(410) 내에 도시된 픽셀 블록들은 객체 구역에 할당되는데, 그 이유는 이들 픽셀 블록이 도 3, 박스 310에서의 객체 인식에 의해 출력되는 직사각형을 덮기 때문이다. 그 후, 방법(300)이 구역(410) 내의 픽셀 블록들과 유사한 통계자료를 갖는 인접한 픽셀 블록들을 검색함에 따라, 방법(300)은 이들 픽셀 블록을 구역(420)에 포함시킬 수 있다. 코딩 목적을 위해, 구역(420)은 객체 구역으로 간주될 수 있다.
일단 객체 구역이 식별되면, 방법은 객체 구역을 둘러싸는 다른 구역(430 내지 470)을 정의할 수 있다. 도 4의 (a)의 예에서, 각각의 연속적인 구역은 임의의 방향에서 이전 구역에 인접한 픽셀 블록들을 포함하도록 정의될 수 있다. 따라서, 구역(430)은 임의의 방향에서 구역(420)에 인접한 모든 픽셀 블록들을 포함하고, 구역(440)은 구역(430)에 인접한 모든 픽셀 블록을 포함한다. 이러한 프로세스는 프레임의 픽셀 블록들 모두가 구역에 할당될 때까지 계속될 수 있다. 이 예에서, 각각의 구역은 선행 구역을 둘러싸는 "무리(halo)"를 효과적으로 나타낸다.
픽셀 블록들을 구역들에 할당했다면, 방법(300)(도 3)은 그 구역들에 코딩 파라미터 조정을 할당할 수 있다. 도 4에 도시된 실시예에서, 양자화 파라미터 조정(ΔQp)이 각 구역의 픽셀 블록들에 적용될 수 있다. 논의된 바와 같이, 양자화 파라미터는 픽셀 블록 코딩 동안에 얻어진 변환 계수를 트런케이트하고, 저 에너지 계수들에 대해서는 이들을 완전히 삭제할 수 있다. 양자화는 데이터 손실을 유발할 수 있는데, 그 이유는 트런케이트된 데이터가 디코더에서의 탈양자화 동안에 완전히 복원되지 않을 수 있기 때문이다. 따라서, 디코더에서 얻어진 복원된 비디오는 소스 비디오의 복제품일 것 같지만, 코딩의 결과로서 현저한 이미지 아티팩트를 가질 수 있다.
본 발명의 실시예에 따르면, 양자화 파라미터 조정은 객체 구역에서의 더 낮은 양자화 파라미터들 및 객체 구역으로부터 이격된 구역들에서의 점점 높은 양자화 파라미터들을 제공하도록 프레임의 다양한 구역에 할당될 수 있다. 도 4의 (b)는 도 4의 (a)의 제5 행에 도시된 픽셀 블록들에 할당될 수 있는 예시적인 양자화 파라미터 조정을 도시한다. 도 4의 (b)에 도시된 바와 같이, 양자화 파라미터 조정은 구역(470)에 대응하는 픽셀 블록 위치들에서의 최대 값으로부터, 구역(460 내지 430)에 대한 중간 값들을 거쳐, 구역(420)에 대응하는 픽셀 블록 위치들에서의 최소 값으로 변할 수 있다. 도 4의 (b)가 양자화 파라미터 조정에서의 균일한 단차(step) 크기를 도시하고 있지만, 도 4의 (c)는 양자화 파라미터 조정이 불균일한 방식으로 변하는 다른 실시예를 도시한다.
본 발명의 실시예는 코딩 구역들이 정의되는 방식에 있어서의 변형을 수용한다. 도 5는 단 2개의 하위구역(530, 540)만이 객체 구역(520)을 둘러싸는 것으로 정의되는 실시예를 도시한다. 이 실시예에서, 제1 하위구역(530)은 객체 구역(520)을 둘러싸고, 프레임의 모든 다른 픽셀 블록들은 백그라운드 구역(540)에 할당된다. 이 예에서의 하위구역(530)은 구역(520)으로부터 모든 방향으로 2개의 픽셀 블록의 거리만큼 연장된다. 양자화 파라미터 조정은 객체 구역(520)에 대해서는 최소 레벨로, 하위구역(530)에 대해서는 중간 레벨로, 그리고 백그라운드 하위구역(540)에 대해서는 최대 레벨로 설정될 수 있다.
도 6의 실시예에서, 각각의 하위구역에 의해 소비되는 면적은 다를 수 있다. 예를 들어, 하위구역(630)은 객체 구역(620)으로부터 모든 방향으로 단일 픽셀 블록의 거리만큼 연장되지만, 하위구역(640)은 하위구역(630)으로부터 모든 방향으로 2개의 픽셀 블록의 거리만큼 연장된다.
도 3의 방법은 비디오 코딩 시스템 등과 같은 많은 실시간 코딩 환경에서 원하는 객체의 위치를 정확하게 추정하는 데에 효과적이다. 많은 그러한 응용에서, 객체 검출기(146)(도 1)의 출력과 코딩 엔진(143)에 의해 코딩되고 있는 프레임 사이에는 레이턴시가 있다. 다시 말해서, 코딩 엔진(143)은 프레임 X-Off로부터의 위치 데이터를 사용하여 프레임 X를 코딩하는 중일 수 있다. 도 3의 방법은 객체 검출기(146)에 의해 식별되는 객체 직사각형의 위치를 미세 튜닝함으로써 그렇지 않으면 나타날 수 있는 가시 아티팩트를 감소시킨다. 그러한 아티팩트는 안면의 부분들이 높은 품질로 코딩되었지만 동일 안면의 다른 부분들이 낮은 품질로 코딩된 경우에 안면 검출 시스템과 관련하여 특히 문제가 될 것이다.
본 발명의 다른 실시예에서, 전처리 동작들은 검출된 객체로부터의 거리에 따라 프레임의 여러 공간 영역들에 걸쳐 다를 수 있다. 예를 들어, 전처리기(142)(도 1)는 스크린으로부터 이격된 영역들에서 선명도를 감소시키기 위해 프레임에 블러 필터를 적용할 수 있다. 이 실시예에서, 전처리기(142)는 검출된 객체로부터의 거리에 기초하여 블러 필터의 세기를 변화시킬 수 있다. 그렇게 하는 것은 검출된 객체의 구역 내에 존재하지 않는 요소인 프레임의 백그라운드 요소의 품질을 감소시킬 수 있지만, 압축 효율을 증가시킬 수 있는데, 그 이유는 백그라운드 요소의 더 높은 주파수 성분이 아마도 감소될 것이기 때문이다.
다른 실시예에서, 전처리기(142)는 프레임의 추정된 모션에 기초하여 블러 필터의 세기를 변화시킬 수 있다. 모션은 전처리기(142)에 의해 비디오 시퀀스의 분석으로부터 추정될 수 있거나, 대안적으로 단말기(110) 내에 제공된 모션 센서(도시되지 않음)로부터 추정될 수 있다. 블러 필터의 세기는 추정된 모션이 증가함에 따라 증가될 수 있다.
도 7은 본 발명의 다른 실시예에 따른 비디오 코더(700)를 도시한다. 여기서, 비디오 코더는 프레임 버퍼(710), 픽셀 블록 인코더(720), 디코더(730), 기준 화상 캐시(740), 객체 검출기(750) 및 제어기(760)를 포함하는 것으로 도시된다. 프레임 버퍼(710)는 소스 비디오의 프레임을 저장할 수 있고, 그로부터의 픽셀 블록을 픽셀 블록 인코더(720)에 제공할 수 있다. 픽셀 블록 인코더(720)는 하기에 논의되는 모션 보상 코딩 기법에 따라 픽셀 블록들을 코딩할 수 있다. 픽셀 블록 인코더(720)로부터 출력되는 코딩된 픽셀 블록 데이터는 그것이 송신될 준비가 될 때까지 출력 버퍼(도시되지 않음)에 저장될 수 있다. 디코더(730)는 기준 프레임의 코딩된 비디오 데이터를 디코딩하고 이에 의해 복원된 비디오 데이터를 기준 화상 캐시(740)에 저장할 수 있다. 객체 검출기(750) 및 제어기(760)는 협력하여 비디오의 각각의 프레임 내의 객체를 인식하고 그로부터의 객체 구역(들) 및 하위구역들을 정의할 수 있다.
언급된 바와 같이, 픽셀 블록 인코더(720)는 모션 보상 예측 기법에 따라 픽셀 블록들을 코딩할 수 있는데, 여기서 입력 픽셀 블록은 인트라 기반(I-블록) 또는 인터 기반(P- 또는 B-블록들)으로 코딩될 수 있다. 또한, 주어진 픽셀 블록은 SKIP 블록으로서 코딩될 수 있는데, 여기서 픽셀 블록의 콘텐츠는 전혀 코딩되지 않고 오히려 어떤 앞서 코딩된/디코딩된 프레임의 동일한 곳에 위치된 픽셀 블록으로부터 카피된다.
픽셀 블록 인코더(720)는 감산기(721), 변환 유닛(722), 양자화기(723), 엔트로피 코더(724), 모션 추정기(motion estimator)(725) 및 제어기(726)를 포함할 수 있다. 입력 픽셀 블록이 주어지면, 모션 추정기(725)는 입력 픽셀 블록에 대한 예측 기준으로서의 역할을 하는 픽셀 블록에 대한 검색을 캐싱된 기준 화상 프레임들 중에서 수행할 수 있다. 적절한 매칭(들)이 발견되면, 픽셀 블록 인코더(720)는 소스 픽셀 블록을 P- 또는 B-블록으로서 코딩할 수 있다. 적절한 매칭이 발견되지 않으면, 픽셀 블록 인코더(720)는 소스 픽셀 블록을 I-블록으로서 코딩할 수 있다. 픽셀 블록 인코더(720)는 또한 적절한 상황에서 픽셀 블록을 SKIP 모드에서 코딩할 수 있다. 일단 코딩 모드가 선택되면, 모션 추정기(725)(또는 적절한 상황에서 제어기(726))는 소스 픽셀 블록에 적용되는 코딩 모드를 나타내는 메타데이터를 생성할 수 있다. 많은 경우에, 인터-코딩된 블록들에 대해, 모션 추정기(725)는 선택된 기준 픽셀 블록을 식별하는 모션 벡터를 생성할 수 있다.
입력 픽셀 블록을 예측적으로 코딩하기 위해, 기준 화상 캐시(740)는 예측된 픽셀 블록 데이터를 감산기(721)로 출력할 수 있다. 감산기(721)는 소스 픽셀 블록과 예측된 픽셀 블록 사이의 차이를 나타내는 데이터를 생성할 수 있다. 감산기(721)는 픽셀-바이-픽셀 기초(pixel-by-pixel basis)로 동작하여, 픽셀 블록에 걸쳐 각각의 픽셀 위치에서의 잔차들을 생성할 수 있다. 주어진 픽셀 블록이 비예측적으로 코딩될 것이라면, 예측되는 픽셀 블록은 감산기(721)에 제공되지 않을 것이다; 감산기(721)는 소스 픽셀 데이터와 동일한 픽셀 잔차들을 출력할 수 있다.
변환 유닛(722)은 감산기(721)에 의해 출력된 픽셀 블록 데이터를, 예를 들어 이산 코사인 변환(DCT) 프로세스 또는 웨이블릿 변환에 의해, 변환 계수들의 어레이로 변환할 수 있다. 전형적으로, 그로부터 생성된 변환 계수들의 수는 변환 유닛(722)에 제공되는 픽셀들의 수와 동일할 것이다. 따라서, 8x8, 8x16 또는 16x16 블록의 픽셀 데이터는 8x8, 8x16 또는 16x16 블록의 계수 데이터로 변환될 수 있다. 양자화기 유닛(723)은 블록의 각각의 변환 계수를 양자화 파라미터 Qp에 의해 양자화(제산)할 수 있다. 엔트로피 코더(724)는 양자화된 계수 데이터를 런-값 코딩, 런-길이 코딩 등에 의해 코딩할 수 있다. 엔트로피 코더(724)로부터의 데이터는 픽셀 블록의 코딩된 비디오 데이터로서 채널로 출력될 수 있다.
픽셀 블록 인코더의 제어기(726)는 코딩된 비디오 데이터의 예상되는 비트레이트, 예상되는 코딩 품질, 및 코딩 에러에 대한 강건성 사이의 균형을 나타내는 코딩 정책에 따라 픽셀 블록들에 대한 코딩 모드를 선택할 수 있다. 따라서, 주어진 소스 픽셀 블록에 대한 적절한 예측 매칭이 발견될 수 있는 경우에도, 제어기(726)는 픽셀 블록을 I-블록으로서 코딩하는 모드 선택을 도입할 수 있다. I-블록이 일반적으로 P- 또는 B-블록들보다 더 높은 비트레이트를 소비하지만, I-블록은 송신 에러 등을 경감시킬 수 있다. 마찬가지로, 제어기(726)는 픽셀 블록들이 비트레이트 목표를 충족시키도록 양자화 파라미터를 선택할 수 있다.
본 발명의 실시예에 따르면, 제어기(760)는 픽셀 블록 인코더의 제어기(726)에 코딩 파라미터 조정을 제공할 수 있는데, 이는 주어진 소스 픽셀 블록들에 대한 코딩 파라미터의 선택에 영향을 미칠 수 있다. 따라서, 픽셀 블록 인코더(720)가 객체 구역(이를테면, 도 4의 (a)의 구역(420))에 속하는 픽셀 블록에 대해 동작하고 있는 경우, 제어기(760)는 픽셀 블록 인코더(720)가 프레임에 대해 상대적으로 낮은 양자화 파라미터를 사용하게 할 수 있으며, 픽셀 블록 인코더(720)가 하위구역(도 4의 (a)의 구역(430 내지 470))에 속하는 픽셀 블록에 대해 동작하고 있는 경우, 제어기(760)는 픽셀 블록 인코더(720)가 그들 구역에 적절한 양자화 파라미터를 사용하게 할 수 있다.
다른 실시예에서, 제어기(760)는 하위구역들 중 소정의 하위구역에 코딩 모드를 도입할 수 있다. 예로서 도 5를 이용하면, 제어기(760)는 픽셀 블록 인코더(720)가 구역(540)의 픽셀 블록들을 SKIP 모드에서 코딩하게 할 수 있고, 양자화 파라미터 조정을 구역(520(최저 Qp), 530(더 높은 Qp))에 각각 도입할 수 있다.
추가 실시예에서, 코딩 파라미터는 또한 검출된 객체의 다른 관찰된 특성들에 기초하여 선택될 수 있다. 예를 들어, 안면 검출이 사용되는 경우, 안면 검출기는 안면이 특정한 특성들(예컨대, 안면이 눈을 깜박이고 있는지 또는 웃고 있는지 여부, 안면이 회전된 정도, 장면의 비율로서의 안면 크기)을 나타내는지 여부를 검출할 수 있다. 인코더는 이들 특징에 기초하여 코딩 파라미터를 선택할 수 있다. 예로서, 회전된 안면은 똑바로 앞을 바라보는 안면보다 더 낮은 우선순위 및 그에 따라 상대적으로 더 낮은 품질 코딩 파라미터를 할당받을 수 있다. 또한, 객체 검출기는 비디오 시퀀스에서 식별되는 다수의 객체(예컨대, 다수의 안면)를 나타낼 수 있다. 예를 들어 단지 2개의 안면을 갖는 장면에서, 인코더는 그 안면에, 50개의 안면을 갖는 장면 내의 안면보다 더 높은 우선순위를 할당할 수 있다. 또한, 더 높은 우선순위 할당은 상대적으로 더 높은 품질 코딩을 발생시키는 코딩 파라미터의 선택으로 이어질 수 있다.
다른 실시예에서, 객체의 특정한 하위구역들은 서로 상이한 품질 코딩 레벨들을 할당받을 수 있다. 예를 들어, 검출된 안면의 눈 및 입은 안면 검출기에 의해 검출될 수 있고, 안면의 다른 검출된 요소보다 더 높은 인코딩 우선순위를 부여받을 수 있다. 이 실시예에서, 시스템은 한 쌍의 객체 구역 - 검출된 객체의 높은 우선순위 요소에 대응하는 제1 객체 구역(예컨대, 눈 및 입에 의해 점유되는 구역), 검출된 객체의 다른 요소에 대응하는 제2 객체 구역(예컨대, 안면의 나머지 부분) - 및 프레임의 나머지 부분을 점유하는 하위구역들을 생성할 수 있다.
상기의 논의는 코더 및 디코더와 관련하여 본 발명의 실시예의 동작을 기술하고 있다. 통상, 비디오 코더는 전자 디바이스로서 제공된다. 그것은 주문형 집적 회로, 필드 프로그래밍가능 게이트 어레이 및/또는 디지털 신호 프로세서와 같은 집적 회로에 내장될 수 있다. 대안적으로, 그것은 개인용 컴퓨터, 노트북 또는 태블릿 컴퓨터 또는 컴퓨터 서버 상에서 실행되는 컴퓨터 프로그램에 내장될 수 있다. 유사하게, 디코더는 주문형 집적 회로, 필드 프로그래밍가능 게이트 어레이 및/또는 디지털 신호 프로세서와 같은 집적 회로에 내장될 수 있거나, 그것은 개인용 컴퓨터, 노트북 컴퓨터 또는 컴퓨터 서버 상에서 실행되는 컴퓨터 프로그램에 내장될 수 있다. 디코더는 통상 게이밍 시스템, 스마트폰, DVD 플레이어, 휴대용 미디어 플레이어 등과 같은 소비자 전자 디바이스에 패키징되고, 그것은 또한 비디오 게임, 브라우저 기반 미디어 플레이어 등과 같은 소비자 소프트웨어 응용에 패키징될 수 있다.
본 발명의 여러 실시예가 본 명세서에 구체적으로 예시 및/또는 기술된다. 그러나, 본 발명의 수정 및 변형이 본 발명의 사상 및 의도된 범주로부터 벗어남이 없이 상기의 교시에 의해 그리고 첨부한 특허청구범위의 범위 내에 포함된다는 것이 인지될 것이다.

Claims (31)

  1. 비디오 코딩 방법으로서,
    코딩될 프레임을 복수의 픽셀 블록들로 분석(parsing)하는 단계,
    상기 프레임에 대해 객체 검출을 수행하는 단계,
    객체가 검출되는 경우, 상기 객체가 위치되는 상기 프레임의 영역의 통계자료(statistics)를 생성(developing)하는 단계,
    상기 객체 위치에 인접한 픽셀들을 상기 객체 통계자료와 비교하는 단계,
    상기 객체 위치에 대응하는 픽셀 블록들 및 상기 비교에 의해 식별되는 인접한 픽셀들에 대응하는 픽셀 블록들을 포함하는 객체 구역을 정의하는 단계, 및
    블록 기반 압축 알고리즘(block-based compression algorithm)에 따라 상기 비디오 프레임을 코딩하는 단계 - 상기 객체 구역의 픽셀 블록들은 상대적으로 높은 품질의 코딩을 발생시키는 코딩 파라미터들에 따라 코딩되고, 상기 객체 구역 외부의 픽셀 블록들은 상대적으로 더 낮은 품질의 코딩을 발생시키는 코딩 파라미터들에 따라 코딩됨 - 를 포함하는, 방법.
  2. 제1항에 있어서, 상기 코딩 파라미터들은 양자화 파라미터들을 포함하고, 상기 객체 구역 픽셀 블록들의 상기 양자화 파라미터들은 상기 비객체 구역 픽셀 블록들의 상기 양자화 파라미터들보다 대체로 더 낮은, 방법.
  3. 제1항에 있어서, 상기 코딩 파라미터들은 코딩 모드 선택들을 포함하고, 비객체 구역 픽셀 블록들의 코딩 모드 선택들은 SKIP로 설정되는, 방법.
  4. 제1항에 있어서, 코딩 전에, 상기 객체 위치들 외부의 공간 영역들 내의 픽셀들에 블러링 필터(blurring filter)를 적용하는 단계를 추가로 포함하는, 방법.
  5. 제1항에 있어서,
    상기 프레임의 복수의 하위구역들을 정의하는 단계,
    상기 객체 구역 외부의 상기 픽셀 블록들을 상기 객체 구역으로부터의 상기 픽셀 블록들의 거리에 따라 각자의 하위구역에 할당하는 단계, 및
    상기 픽셀 블록들의 상기 코딩 파라미터들을 상기 픽셀 블록들 각자의 하위구역에 따라 조정하는 단계를 추가로 포함하는, 방법.
  6. 제5항에 있어서, 상기 조정은 양자화 파라미터 조정인, 방법.
  7. 제5항에 있어서, 상기 하위구역들은 상기 객체 구역 주위에 픽셀 블록들의 무리(halo)들을 형성하는, 방법.
  8. 제1항에 있어서, 상기 객체 검출은 안면 검출(face detection)인, 방법.
  9. 비디오 코딩 방법으로서,
    코딩될 프레임을 복수의 픽셀 블록들로 분석하는 단계,
    상기 프레임에 대해 객체 검출을 수행하는 단계,
    객체가 검출되는 경우, 상기 객체가 위치되는 상기 프레임의 영역의 통계자료를 생성하는 단계,
    상기 객체 위치에 인접한 픽셀들을 상기 객체 통계자료와 비교하는 단계,
    상기 객체 위치에 대응하는 픽셀 블록들 및 상기 비교에 의해 식별되는 인접한 픽셀들에 대응하는 픽셀 블록들을 포함하는 객체 구역을 정의하는 단계, 및
    블록 기반 압축 알고리즘에 따라 상기 비디오 프레임을 코딩하는 단계 - 상기 객체 구역의 픽셀 블록들은 상대적으로 더 낮은 양자화 파라미터들에 따라 코딩되고, 상기 객체 구역 외부의 픽셀 블록들은 대체로 더 높은 양자화 파라미터들에 따라 코딩됨 - 를 포함하는, 방법.
  10. 제9항에 있어서,
    상기 프레임의 복수의 하위구역들을 정의하는 단계,
    상기 객체 구역 외부의 상기 픽셀 블록들을 상기 객체 구역으로부터의 상기 픽셀 블록들의 거리에 따라 각자의 하위구역에 할당하는 단계, 및
    상기 픽셀 블록들의 상기 코딩 파라미터들을 상기 픽셀 블록들 각자의 하위구역에 따라 조정하는 단계를 추가로 포함하는, 방법.
  11. 제10항에 있어서, 상기 픽셀 블록 조정들은 상기 객체 구역으로부터의 각각의 하위구역의 거리의 거리에 기초하여 선형적으로 변하는, 방법.
  12. 제10항에 있어서, 상기 픽셀 블록 조정들은 상기 객체 구역으로부터의 각각의 하위구역의 거리의 거리에 기초하여 불균일하게 변하는, 방법.
  13. 제10항에 있어서, 상기 하위구역들은 상기 객체 구역 주위에 픽셀 블록들의 무리들을 형성하는, 방법.
  14. 제9항에 있어서, 상기 픽셀 블록들의 양자화 파라미터들은 상기 객체 구역으로부터의 각각의 픽셀 블록의 거리에 따라 조정되는, 방법.
  15. 제9항에 있어서, 코딩 전에, 상기 객체 위치들 외부의 공간 영역들 내의 픽셀들에 블러링 필터를 적용하는 단계를 추가로 포함하는, 방법.
  16. 제9항에 있어서, 상기 객체 검출은 안면 검출인, 방법.
  17. 비디오 코딩 방법으로서,
    코딩될 비디오 프레임에 대해 안면 검출을 수행하는 단계,
    안면이 검출되는 경우, 상기 안면 검출에 의해 식별되는 안면 직사각형(face rectangle)의 경계들을 따라 픽셀들의 콘텐츠를 샘플링하는 단계,
    상기 샘플링된 픽셀들의 콘텐츠를 상기 안면 직사각형 내의 픽셀들의 콘텐츠와 비교하는 단계,
    상기 비교가 안면의 일부가 아닌 것으로 결정한 픽셀들의 콘텐츠를 필터링하는 단계, 및
    양자화 파라미터를 채용하는 블록 기반 압축 알고리즘에 따라 상기 비디오 프레임을 코딩하는 단계 - 상기 양자화 파라미터는 상기 안면 직사각형 외부의 블록들에 대해서보다 상기 안면 직사각형 내의 블록들에 대해 더 낮은 값들을 가짐 - 를 포함하는, 방법.
  18. 제17항에 있어서,
    상기 안면 직사각형 주위에 상기 프레임의 복수의 하위구역들을 정의하는 단계,
    상기 안면 직사각형 외부의 상기 픽셀 블록들을 상기 안면 직사각형으로부터의 상기 픽셀 블록들의 거리에 따라 각자의 하위구역에 할당하는 단계, 및
    상기 픽셀 블록들의 상기 코딩 파라미터들을 상기 픽셀 블록들 각자의 하위구역에 따라 조정하는 단계를 추가로 포함하는, 방법.
  19. 제18항에 있어서, 상기 하위구역들은 상기 안면 직사각형 주위에 픽셀 블록들의 무리들을 형성하는, 방법.
  20. 코딩 장치로서,
    비디오 시퀀스의 프레임들을 상기 프레임들의 픽셀 블록들에 적용되는 예측 코딩 기법들에 따라 코딩하는 코딩 엔진,
    상기 비디오 시퀀스의 프레임들 내의 객체들의 위치들을 식별하는 객체 검출기,
    상기 프레임들 내의 코딩 구역들을 정의하는 제어기 - 상기 코딩 구역들은 객체 구역 및 복수의 하위구역들을 포함하고, 상기 제어기는 상기 코딩 엔진에 의해 적용되는 코딩 파라미터들을 조정하여, 상기 객체 구역 내의 픽셀 블록들에 상대적으로 높은 품질의 코딩을 제공하고, 각각의 하위구역 내의 상기 픽셀 블록들에, 상기 객체 구역으로부터의 상기 하위구역의 거리에 따라 점점 더 낮은 품질의 코딩을 제공함 - 를 포함하는, 장치.
  21. 제20항에 있어서, 상기 코딩 엔진에 의한 코딩 전에, 상기 비디오 시퀀스에 전처리(pre-processing)를 적용하는 블러 필터(blur filter)를 추가로 포함하고, 상기 블러 필터는 상기 하위구역들에 대응하는 프레임 데이터에 블러링을 적용하는, 장치.
  22. 제21항에 있어서, 상기 블러 필터는 상기 객체 구역으로부터 더 높은 거리들에 있는 픽셀들에 대해 증가하는 레벨들의 블러를 적용하고 상기 객체 구역으로부터 더 낮은 거리들에 있는 픽셀들에 대해 더 낮은 레벨들의 블러를 적용하는, 장치.
  23. 제21항에 있어서, 모션 추정기(motion estimator)를 추가로 포함하며,
    상기 블러 필터는 더 높은 레벨들의 모션을 갖는 프레임들에 대한 상기 객체 구역 외부의 픽셀들에 대해 증가하는 레벨들의 블러를 적용하고, 더 낮은 레벨들의 모션을 갖는 프레임들에 대한 상기 객체 구역 외부의 픽셀들에 대해 더 낮은 레벨들의 블러를 적용하는, 장치.
  24. 제20항에 있어서, 상기 객체 검출기는 안면 검출기인, 장치.
  25. 제20항에 있어서, 상기 제어기는 상기 코딩 엔진에 상기 하위구역들의 픽셀 블록들에 대한 더 높은 양자화 파라미터 조정들을 포함한 양자화 파라미터 조정들을 제공하는, 장치.
  26. 제20항에 있어서, 상기 제어기는 상기 코딩 엔진에 상기 하위구역들의 픽셀 블록들을 선택하는 SKIP 모드 할당들을 포함한 코딩 모드 선택들을 제공하는, 장치.
  27. 프로그램 명령어들을 저장하는 컴퓨터 판독가능 매체로서, 상기 프로그램 명령어들은 프로세서에 의해 실행될 때 상기 프로세서가,
    코딩될 프레임을 복수의 픽셀 블록들로 분석하고,
    상기 프레임에 대해 객체 검출을 수행하고,
    객체가 검출되는 경우, 상기 객체가 위치되는 상기 프레임의 영역의 통계자료를 생성하고,
    상기 객체 위치에 인접한 픽셀들을 상기 객체 통계자료와 비교하고,
    상기 객체 위치에 대응하는 픽셀 블록들 및 상기 비교에 의해 식별되는 인접한 픽셀들에 대응하는 픽셀 블록들을 포함하는 객체 구역을 정의하고,
    블록 기반 압축 알고리즘에 따라 상기 비디오 프레임을 코딩 - 상기 객체 구역의 픽셀 블록들은 상대적으로 높은 품질의 코딩을 발생시키는 코딩 파라미터들에 따라 코딩되고, 상기 객체 구역 외부의 픽셀 블록들은 상대적으로 더 낮은 품질의 코딩을 발생시키는 코딩 파라미터들에 따라 코딩됨 - 하게 하는, 매체.
  28. 제27항에 있어서, 상기 코딩 파라미터들은 양자화 파라미터들을 포함하고, 상기 객체 구역 픽셀 블록들의 상기 양자화 파라미터들은 상기 비객체 구역 픽셀 블록들의 상기 양자화 파라미터들보다 대체로 더 낮은, 매체.
  29. 제27항에 있어서, 상기 코딩 파라미터들은 코딩 모드 선택들을 포함하고, 비객체 구역 픽셀 블록들의 코딩 모드 선택들은 SKIP로 설정되는, 매체.
  30. 제27항에 있어서, 상기 명령어들은 또한 상기 프로세서가, 코딩 전에, 상기 객체 위치들 외부의 공간 영역들 내의 픽셀들에 블러링 필터를 적용하게 하는, 매체.
  31. 인코더에 의해 생성되는 코딩된 비디오 데이터를 저장하는 물리적 컴퓨터 판독가능 저장 매체로서, 상기 인코더는,
    코딩될 프레임을 복수의 픽셀 블록들로 분석하고,
    상기 프레임에 대해 객체 검출을 수행하고,
    객체가 검출되는 경우, 상기 객체가 위치되는 상기 프레임의 영역의 통계자료를 생성하고,
    상기 객체 위치에 인접한 픽셀들을 상기 객체 통계자료와 비교하고,
    상기 객체 위치에 대응하는 픽셀 블록들 및 상기 비교에 의해 식별되는 인접한 픽셀들에 대응하는 픽셀 블록들을 포함하는 객체 구역을 정의하고,
    블록 기반 압축 알고리즘에 따라 상기 비디오 프레임을 코딩 - 상기 객체 구역의 픽셀 블록들은 상대적으로 높은 품질의 코딩을 발생시키는 코딩 파라미터들에 따라 코딩되고, 상기 객체 구역 외부의 픽셀 블록들은 상대적으로 더 낮은 품질의 코딩을 발생시키는 코딩 파라미터들에 따라 코딩됨 - 한 것인, 매체.
KR1020147020857A 2012-01-26 2013-01-25 객체 검출 정보에 따른 인코딩 KR20140110008A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/359,377 2012-01-26
US13/359,377 US10205953B2 (en) 2012-01-26 2012-01-26 Object detection informed encoding
PCT/US2013/023118 WO2013112814A1 (en) 2012-01-26 2013-01-25 Object detection informed encoding

Publications (1)

Publication Number Publication Date
KR20140110008A true KR20140110008A (ko) 2014-09-16

Family

ID=47664457

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147020857A KR20140110008A (ko) 2012-01-26 2013-01-25 객체 검출 정보에 따른 인코딩

Country Status (8)

Country Link
US (1) US10205953B2 (ko)
EP (1) EP2807822A1 (ko)
JP (1) JP2015508954A (ko)
KR (1) KR20140110008A (ko)
CN (1) CN104160703A (ko)
AU (1) AU2013212013A1 (ko)
TW (1) TW201347549A (ko)
WO (1) WO2013112814A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017138761A1 (ko) * 2016-02-11 2017-08-17 삼성전자 주식회사 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
KR20230069817A (ko) 2021-11-12 2023-05-19 한국전자통신연구원 가변 양자화 파라미터 기반의 영상 부호화 및 복호화 방법 및 장치

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9094681B1 (en) * 2012-02-28 2015-07-28 Google Inc. Adaptive segmentation
US20160112707A1 (en) * 2014-10-15 2016-04-21 Intel Corporation Policy-based image encoding
KR101886485B1 (ko) 2015-12-30 2018-08-07 이화여자대학교 산학협력단 객체를 포함하는 영상에 대한 인코딩 방법 및 객체 정보를 포함하는 영상 데이터에 대한 디코딩 방법
JP6784032B2 (ja) * 2016-02-22 2020-11-11 沖電気工業株式会社 符号化装置、符号化方法、プログラム、及び画像処理システム
JP2017188739A (ja) * 2016-04-04 2017-10-12 株式会社Ihiエアロスペース 画像取得圧縮送信方法、移動体の遠隔操縦方法、画像取得圧縮送信装置、及び移動体の遠隔操縦システム
CN106162177B (zh) * 2016-07-08 2018-11-09 腾讯科技(深圳)有限公司 视频编码方法和装置
KR102584526B1 (ko) * 2016-09-26 2023-10-05 한화비전 주식회사 영상 처리 장치 및 방법
JP6694902B2 (ja) * 2018-02-28 2020-05-20 株式会社日立国際電気 映像符号化装置及び映像符号化方法
US10893281B2 (en) * 2018-10-12 2021-01-12 International Business Machines Corporation Compression of a video stream having frames with relatively heightened quality parameters on blocks on an identified point of interest (PoI)
CN110267041B (zh) * 2019-06-28 2021-11-09 Oppo广东移动通信有限公司 图像编码方法、装置、电子设备和计算机可读存储介质
CN113011210B (zh) * 2019-12-19 2022-09-16 北京百度网讯科技有限公司 视频处理方法和装置
US11653047B2 (en) * 2021-07-29 2023-05-16 International Business Machines Corporation Context based adaptive resolution modulation countering network latency fluctuation
WO2023190053A1 (ja) * 2022-03-31 2023-10-05 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 画像符号化装置、画像復号装置、画像符号化方法、及び画像復号方法
WO2023223901A1 (ja) * 2022-05-17 2023-11-23 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 画像符号化装置、画像復号装置、画像符号化方法、及び画像復号方法

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5852669A (en) 1994-04-06 1998-12-22 Lucent Technologies Inc. Automatic face and facial feature location detection for low bit rate model-assisted H.261 compatible coding of video
US6453069B1 (en) * 1996-11-20 2002-09-17 Canon Kabushiki Kaisha Method of extracting image from input image using reference image
US6173069B1 (en) 1998-01-09 2001-01-09 Sharp Laboratories Of America, Inc. Method for adapting quantization in video coding using face detection and visual eccentricity weighting
JP2000172852A (ja) 1998-09-28 2000-06-23 Canon Inc 画像処理方法、装置および記録媒体
US7031517B1 (en) * 1998-10-02 2006-04-18 Canon Kabushiki Kaisha Method and apparatus for segmenting images
US6795577B2 (en) * 1999-12-03 2004-09-21 Canon Research Centre France S.A. Digital signal analysis, with hierarchical segmentation
JP2002300581A (ja) * 2001-03-29 2002-10-11 Matsushita Electric Ind Co Ltd 映像符号化装置、及び映像符号化プログラム
US6987889B1 (en) 2001-08-10 2006-01-17 Polycom, Inc. System and method for dynamic perceptual coding of macroblocks in a video frame
US7397937B2 (en) * 2001-11-23 2008-07-08 R2 Technology, Inc. Region growing in anatomical images
DE10300048B4 (de) 2002-01-05 2005-05-12 Samsung Electronics Co., Ltd., Suwon Verfahren und Vorrichtung zur Bildcodierung und -decodierung
US20040130546A1 (en) * 2003-01-06 2004-07-08 Porikli Fatih M. Region growing with adaptive thresholds and distance function parameters
US7269292B2 (en) 2003-06-26 2007-09-11 Fotonation Vision Limited Digital image adjustable compression and resolution using face detection information
US7620218B2 (en) * 2006-08-11 2009-11-17 Fotonation Ireland Limited Real-time face tracking with reference images
JP3955953B2 (ja) * 2003-09-12 2007-08-08 国立大学法人広島大学 画像分割処理装置、画像分割処理方法及び画像分割処理集積化回路
US7310435B2 (en) * 2003-11-25 2007-12-18 General Electric Company Method and apparatus for extracting multi-dimensional structures using dynamic constraints
US9667980B2 (en) 2005-03-01 2017-05-30 Qualcomm Incorporated Content-adaptive background skipping for region-of-interest video coding
US8224102B2 (en) * 2005-04-08 2012-07-17 Agency For Science, Technology And Research Method for encoding a picture, computer program product and encoder
US7643659B2 (en) * 2005-12-31 2010-01-05 Arcsoft, Inc. Facial feature detection on mobile devices
US7995649B2 (en) * 2006-04-07 2011-08-09 Microsoft Corporation Quantization adjustment based on texture level
US8315466B2 (en) * 2006-12-22 2012-11-20 Qualcomm Incorporated Decoder-side region of interest video processing
JP2008199521A (ja) 2007-02-15 2008-08-28 Canon Inc 画像処理装置およびその方法
US7873214B2 (en) * 2007-04-30 2011-01-18 Hewlett-Packard Development Company, L.P. Unsupervised color image segmentation by dynamic color gradient thresholding
JP4863936B2 (ja) 2007-06-25 2012-01-25 株式会社ソニー・コンピュータエンタテインメント 符号化処理装置および符号化処理方法
US8548049B2 (en) * 2007-07-02 2013-10-01 Vixs Systems, Inc Pattern detection module, video encoding system and method for use therewith
CN101211411B (zh) * 2007-12-21 2010-06-16 北京中星微电子有限公司 一种人体检测的方法和装置
JP5109697B2 (ja) * 2008-02-07 2012-12-26 ソニー株式会社 画像送信装置、画像受信装置、画像送受信システム、画像送信プログラムおよび画像受信プログラム
TWI420401B (zh) * 2008-06-11 2013-12-21 Vatics Inc 一種回授式物件偵測演算法
KR20100002632A (ko) 2008-06-30 2010-01-07 에스케이 텔레콤주식회사 영상 인코딩/디코딩 방법 및 그 장치 및 영상 서비스시스템
CN101316366A (zh) * 2008-07-21 2008-12-03 北京中星微电子有限公司 图像编/解码方法和图像编/解码装置
US8385688B2 (en) * 2008-08-27 2013-02-26 International Business Machines Corporation System and method for automatic recognition and labeling of anatomical structures and vessels in medical imaging scans
DE102008056600A1 (de) * 2008-11-10 2010-05-20 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Verfahren und Vorrichtung zum Erkennen von Objekten
WO2010057170A1 (en) 2008-11-17 2010-05-20 Cernium Corporation Analytics-modulated coding of surveillance video
KR20100095833A (ko) 2009-02-23 2010-09-01 주식회사 몬도시스템즈 Roi 의존형 압축 파라미터를 이용하여 영상을 압축하는 장치 및 방법
US8787662B2 (en) * 2010-11-10 2014-07-22 Tandent Vision Science, Inc. Method and system for identifying tokens in an image
US8655102B2 (en) * 2011-06-10 2014-02-18 Tandent Vision Science, Inc. Method and system for identifying tokens in an image
JP6253331B2 (ja) * 2012-10-25 2017-12-27 キヤノン株式会社 画像処理装置及び画像処理方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017138761A1 (ko) * 2016-02-11 2017-08-17 삼성전자 주식회사 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
US11206401B2 (en) 2016-02-11 2021-12-21 Samsung Electronics Co., Ltd. Video encoding method and device and video decoding method and device
KR20230069817A (ko) 2021-11-12 2023-05-19 한국전자통신연구원 가변 양자화 파라미터 기반의 영상 부호화 및 복호화 방법 및 장치

Also Published As

Publication number Publication date
JP2015508954A (ja) 2015-03-23
US10205953B2 (en) 2019-02-12
TW201347549A (zh) 2013-11-16
AU2013212013A1 (en) 2014-08-07
CN104160703A (zh) 2014-11-19
EP2807822A1 (en) 2014-12-03
US20130195178A1 (en) 2013-08-01
WO2013112814A1 (en) 2013-08-01

Similar Documents

Publication Publication Date Title
US10205953B2 (en) Object detection informed encoding
JP6714695B2 (ja) 動的な解像度切換えを用いたリアルタイムビデオエンコーダレート制御
US10212456B2 (en) Deblocking filter for high dynamic range (HDR) video
CN105409216B (zh) 丢失视频数据的条件隐藏
US9414086B2 (en) Partial frame utilization in video codecs
US10397574B2 (en) Video coding quantization parameter determination suitable for video conferencing
US9602819B2 (en) Display quality in a variable resolution video coder/decoder system
US10567768B2 (en) Techniques for calculation of quantization matrices in video coding
US10623744B2 (en) Scene based rate control for video compression and video streaming
US10574997B2 (en) Noise level control in video coding
US20120195356A1 (en) Resource usage control for real time video encoding
US20150350641A1 (en) Dynamic range adaptive video coding system
US10812832B2 (en) Efficient still image coding with video compression techniques
US8396127B1 (en) Segmentation for video coding using predictive benefit
US20160353107A1 (en) Adaptive quantization parameter modulation for eye sensitive areas
US9565404B2 (en) Encoding techniques for banding reduction
US20120195364A1 (en) Dynamic mode search order control for a video encoder
US9432694B2 (en) Signal shaping techniques for video data that is susceptible to banding artifacts
CN116349225A (zh) 用于逐块图像压缩中的去块的内容自适应在线训练方法和装置
US10735773B2 (en) Video coding techniques for high quality coding of low motion content
CN115428451A (zh) 视频编码方法、编码器、系统以及计算机存储介质
US20200084467A1 (en) Low light compression
US20230084472A1 (en) Method and apparatus for temporal filter in video coding
US11606574B2 (en) Efficient coding of source video sequences partitioned into tiles
CN113225558A (zh) 平滑定向和dc帧内预测

Legal Events

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