KR101553680B1 - 디지털 비디오 데이터를 인코딩하는 방법 - Google Patents

디지털 비디오 데이터를 인코딩하는 방법 Download PDF

Info

Publication number
KR101553680B1
KR101553680B1 KR1020140067195A KR20140067195A KR101553680B1 KR 101553680 B1 KR101553680 B1 KR 101553680B1 KR 1020140067195 A KR1020140067195 A KR 1020140067195A KR 20140067195 A KR20140067195 A KR 20140067195A KR 101553680 B1 KR101553680 B1 KR 101553680B1
Authority
KR
South Korea
Prior art keywords
frame
digital
blocks
image
width
Prior art date
Application number
KR1020140067195A
Other languages
English (en)
Other versions
KR20140143328A (ko
Inventor
스테판 룬드버그
Original Assignee
엑시스 에이비
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엑시스 에이비 filed Critical 엑시스 에이비
Publication of KR20140143328A publication Critical patent/KR20140143328A/ko
Application granted granted Critical
Publication of KR101553680B1 publication Critical patent/KR101553680B1/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/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/43Hardware specially adapted for motion estimation or compensation
    • H04N19/433Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/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/156Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • 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/172Methods 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 picture, frame or field
    • 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/174Methods 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 slice, e.g. a line of blocks or a group of blocks
    • 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
    • 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
    • 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
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques

Landscapes

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

Abstract

본원 발명은 캐시 메모리를 사용하여 디지털 소스 이미지들의 시퀀스에 대응하는 디지털 비디오 데이터를 인코딩하는 방법에 관한 것으로, 상기 디지털 소스 이미지들의 각각은 제1 개수의 블록들에 대응하는 동일한 소스 이미지 폭을 갖고, 상기 캐시 메모리는 제2 개수의 블록들에 대응하는 캐시 폭을 갖고, 상기 제2 개수의 블록들은 상기 제1 개수의 블록들보다 작고, 상기 방법은: 프레임(30)을 인코딩하는 단계(240) - 상기 프레임은 디지털 소스 이미지의 제1 부분에 대응하는 데이터를 포함하고, 상기 디지털 소스 이미지의 제1 부분은 상기 제2 개수의 블록들 및 스킵 블록들보다 작거나 같은 제3 개수의 블록들에 대응하는 이미지 폭을 가지므로 제1 프레임의 이미지 폭은 상기 소스 이미지 폭에 대응하는 - 와; 그리고 후속 프레임(40)을 인코딩하는 단계(205)를 포함하고, 상기 후속 프레임(40)은 상기 디지털 소스 이미지의 제2 부분에 대응하는 데이터를 포함하고, 상기 디지털 소스 이미지의 제2 부분은 상기 제2 개수의 블록들 및 스킵 블록들보다 작거나 같은 제4 개수의 블록들에 대응하는 이미지 폭을 가지므로 제2 프레임의 이미지 폭은 상기 소스 이미지 폭에 대응한다.

Description

디지털 비디오 데이터를 인코딩하는 방법{METHOD FOR ENCODING DIGITAL VIDEO DATA}
본 발명은 디지털 소스 이미지들의 시퀀스에 대응하는 디지털 비디오 데이터를 인코딩하는 방법에 관한 것이다.
레퍼런스 캐시 메모리들은 디지털 소스 이미지들의 시퀀스에 대응하는 디지털 비디오 데이터를 인코딩할 때 인코딩 처리의 속도를 높이기 위해 사용된다. 상기 레퍼런스 캐시 메모리는 레퍼런스 이미지의 적어도 일부를 포함한다. 요청된 데이터가 상기 캐시에 포함되면(캐시 적중(cache hit)), 이러한 요청은 비교적 고속인 상기 캐시를 간단하게 판독함으로써 제공될 수 있다. 요청된 데이터가 상기 캐시에 포함되지 않으면(캐시 부적중(cache miss)), 상기 데이터는 비교적 저속인 원래의 저장 위치로부터 재계산되거나 패치(fetch)되어야 한다. 그 결과, 상기 캐시로부터 제공될 수 있는 요청들의 수가 더 커질수록, 전체 시스템 성능은 더 빨라진다. 비용 효율을 높이고 데이터의 효율적 사용을 가능하게 하도록, 캐시 메모리들은 메모리 크기에 있어서 상대적으로 작다.
레퍼런스 캐시 메모리를 사용하여, 데이터가 상기 원래 저장 위치와 고정된 크기의 데이터의 블록들(캐시 라인들로 불림) 내의 캐시 메모리 사이에서 전송될 때, 이것은 일반적으로 원래의 저장 위치(통상의 외부 DRAM 메모리)로부터 판독될 수 있는 가장 작은 양의 데이터이다. 이미지들을 인코딩할 때, 데이터의 블록들은 매크로 블록들이라고도 불리는 픽셀들의 블록들에 대응한다. 따라서, 상기 레퍼런스 캐시 메모리에 저장되는 데이터는 캐시 메모리 내의 이미지 데이터를 패치하는 것을 간단하게 하는 구조화된 순서로 저장된다.
더욱이, 디지털 비디오 데이터를 인코딩할 때에만 사용되는 상기 레퍼런스 캐시 메모리는 상기 캐시 메모리에 저장가능한 최대 소스 이미지 폭에 대응하는 캐시 폭을 갖는다.
디지털 비디오 데이터를 인코딩할 때, 상기 레퍼런스 캐시 메모리는 상기 레퍼런스 이미지의 미리선택된 수의 블록들 또는 매크로 블록들 라인들을 저장하도록 구성된다. 이러한 정보는 디지털 비디오 데이터의 2개의 프레임들 사이에서 움직임을 발견하기 위한 움직임 추정 유닛에 의해 사용된다. 상기 블록들 또는 매크로 블록들 라인들의 수는, 예를 들어, 3개의 블록/매크로 블록 라인들로부터 특정 애플리케이션에 대해 요구되는 블록/매크로 블록 라인 수(통상적인 값은 5 또는 7)까지 변할 수 있다. 더욱이, 상기 레퍼런스 캐시 메모리는 효율적으로 기능하기 위해 상기 소스 이미지의 블록들/매크로 블록들의 전체 라인들을 저장할 정도로 충분히 커야한다. 압축될 상기 소스 이미지 내의 새로운 블록/매크로 블록 라인 각각에 대해, 상기 레퍼런스 캐시 메모리는 움직임 탐색을 수행하기 위해 적어도 한번 판독되어야 한다. 소스 이미지 블록/매크로 블록 라인이 완료되었을 때, 상기 레퍼런스 캐시 메모리 내의 가장 오래된 블록/매크로 블록 라인은 상기 레퍼런스 이미지에서 새로운 블록/매크로 블록 라인을 추가로 다운하기 위해 자유롭게 사용할 수 있다.
디지털 소스 이미지들의 시퀀스에 대응하는 디지털 비디오 데이터를 인코딩할 때 레퍼런스 캐시 메모리를 갖는 이점들을 최적으로 사용하기 위해, 데이터 블록들의 개수로 측정되는 상기 소스 이미지 폭은 상기 캐시 폭보다 작거나 동일해야 하는 바, 상기 캐시 폭은 데이터 블록들의 수로 또한 측정된다.
따라서, 비교적 큰 소스 이미지 폭, 예를 들어 4K UHDTV(2160p)(240x135 매크로 블록들에 대응하는 3480x2160 픽셀들) 또는 8K UHDTV(4320p)(480x270 매크로 블록들에 대응하는 7680x4320 픽셀들)을 갖는 소스 이미지들을 인코딩하는 것은 상기 디지털 비디오 데이터의 최적의 고속 인코딩을 위한 상기 캐시 메모리를 사용하기 위해 비교적 큰 캐시 폭을 갖는 캐시 메모리를 요구한다. 하지만, 오늘날의 비디오 디바이스들은 이러한 크기의 캐시 메모리들을 포함하지 않는다.
비디오 인코딩 디바이스의 캐시 폭은, 통상적으로, 상기 비디오 인코딩 디바이스가 인코딩하고 있는 상기 비디오 이미지들의 소스 이미지 폭을 따르는데, 이는 상기 디지털 비디오 데이터의 고속 인코딩을 보장하기 위한 것이다. 하지만, 소스 이미지들을 캡쳐하는 이미지 센서들이 증가하는 수의 센서 픽셀들을 갖는다는 사실과 함께 소스 이미지들이 여러 개별 이미지 센서들에 의해 캡쳐된 이미지 데이터로 구성될 수 있는 사실 둘다로 인해, 상기 소스 이미지들의 픽셀 카운트가 점점 더 커지는 경향이 있다. 큰 소스 이미지들을 인코딩하는 비디오 인코딩 디바이스들에서, 상기 소스 이미지의 크기와 매칭하는 캐시 메모리를 갖는 것은 다수의 이유들, 즉, 설사 이용가능할지라도 큰 캐시 메모리는 상대적으로 높은 전력 요건들을 가지고 제조하기가 복잡하고 그 결과 비용이 많이 들기 때문에 가능하지 않을 수 있다.
따라서, 비교적 큰 크기의 디지털 비디오 데이터의 인코딩의 속도를 높이기 위하여, 기존의 레퍼런스 캐시 메모리들을 최적으로 활용할 필요가 있다.
상기의 관점에서, 본원 발명의 목적은 상기의 언급된 문제에 대한 해결책을 찾는 것이다.
특히, 본 발명의 제1 양상에 따라, 캐시 메모리를 포함하는 디지털 비디오 데이터 인코더를 사용하여 디지털 소스 이미지들의 시퀀스에 대응하는 디지털 비디오 데이터를 인코딩하는 방법이 제공된다. 상기 디지털 소스 이미지들의 각각은 제1 개수의 블록들에 대응하는 동일한 소스 이미지 폭을 갖고, 상기 캐시 메모리는 제2 개수의 블록들에 대응하는 캐시 폭을 갖고, 상기 제2 개수의 블록들은 상기 제1 개수의 블록들보다 작다. 따라서, 상기 캐시 폭은 상기 소스 이미지 폭보다 작다. 상기 방법은 상기 디지털 비디오 데이터의 프레임을 인코딩하는 단계 - 상기 프레임은 디지털 소스 이미지들의 시퀀스 내의 디지털 소스 이미지의 제1 부분에 대응하는 데이터를 포함하고, 상기 디지털 소스 이미지의 제1 부분은 상기 제2 개수의 블록들보다 작거나 같은 제3 개수의 블록들에 대응하는 이미지 폭을 가지므로 상기 디지털 소스 이미지의 제1 부분에 대한 데이터는 상기 캐시 메모리에 저장가능하고, 그리고 상기 프레임의 이미지 폭이 상기 소스 이미지 폭에 대응하도록 상기 프레임은 스킵 블록들로 채워지며 - 와; 그리고 상기 디지털 비디오 데이터의 후속 프레임을 인코딩하는 단계를 포함하고, 상기 후속 프레임은 상기 디지털 소스 이미지의 제2 부분에 대응하는 데이터를 포함하고, 상기 디지털 소스 이미지의 제2 부분은 상기 제2 개수의 블록들보다 작거나 같은 제4 개수의 블록들에 대응하는 이미지 폭을 가지므로 상기 디지털 소스 이미지의 제2 부분에 대한 데이터는 상기 캐시 메모리에 저장가능하고, 그리고 상기 후속 프레임의 이미지 폭이 상기 소스 이미지 폭에 대응하도록 상기 후속 프레임은 스킵 블록들로 채워진다.
따라서, 본원 발명에 따르면, 제한된 캐시 폭을 구비하는 레퍼런스 캐시 메모리들을 사용하여 비디오 디바이스들이 비교적 큰 비디오 이미지들을 인코딩을 가능하게 하는 인코딩 방법이 제공된다. 본원 발명에 따른 인코딩 방법은, 상기 디지털 소스 이미지들을 2개의 이상의 부분들로 분할함으로써 상기 소스 이미지 폭의 크기의 적어도 절반인 캐시 폭을 갖는 캐시 메모리들의 사용을 가능하게 하고 심지어 더 작은 캐시 메모리들도 사용될 수 있다. 이것은 상기 캐시 메모리가 부착되는 칩 상의 공간을 절약하는 메모리 크기의 관점에서 상기 캐시 메모리가 계속해서 상대적으로 작도록 가능하게 한다. 더욱이, 상대적으로 작은 캐시 메모리는 상대적으로 큰 캐시 메모리보다 제조시에 저렴하다. 더욱이, 본원 발명에 따른 인코딩 방법은, 예를 들어, ISO/MPEG 표준들 또는 ITU-H.26X 표준들 중 일부에 따라 인코딩할 수 있는 기존의 표준 디지털 비디오 데이터 인코더들을 사용하여 실행될 수 있다. 뿐만 아니라, 본원 발명에 따른 인코딩 방법을 사용함으로써, 인코딩된 디지털 비디오 데이터가 생성되고, 인코딩된 디지털 비디오 데이터의 프레임 각각은 상기 소스 이미지 폭의 이미지 폭에 대응하는 이미지 폭을 갖지만, 프레임 레이트는 디지털 소스 이미지들의 시퀀스의 프레임 레이트의 배수이다. 그와 같은 디지털 비디오 데이터는 상기 비디오 디바이스의 프레임 레이트를 디지털 소스 이미지들의 프레임의 레이트의 배수로 설정하고 상기 이미지 폭을 상기 소스 이미지 폭으로 설정함으로써 표준 디코더 및 비디오 디바이스를 사용하여 디코딩 및 재생될 수 있다. 이것은, 생성된 디지털 비디오 스트림이 기존의 디코딩 표준들과 완전히 호환가능할 것이고 상기 캐시가 메모리 크기의 관점에서 상대적으로 작도록 허용할 것이다.
상기 디지털 비디오 데이터의 프레임 및 후속 프레임은 인터-프레임(INTER-frame)들로서 인코딩될 수 있다.
상기 방법은 상기 디지털 비디오 데이터의 이전 프레임을 인코딩하는 단계를 더 포함할 수 있고, 상기 이전 프레임은 디지털 소스 이미지들의 시퀀스 내의 추가의 디지털 소스 이미지에 대응하고, 상기 이전 프레임은 인트라-프레임(INTRA-frame)으로 인코딩된다. 인트라 프레임을 인코딩할 때, 어떤 검색도 필요치 않고, 따라서 상기 캐시는 사용되지 않는다. 인트라 프레임들은 상기 표준에 따라 인코딩된다.
상기 방법은 또한 디지털 비디오 데이터의 추가 프레임을 제공하는 단계를 더 포함할 수 있고, 인터-프레임인 상기 추가 프레임은 스킵 블록들만을 포함한다. 상기 디지털 비디오 데이터의 추가 프레임이 도입되어 일정한 프레임 레이트가 얻어질 수 있다. 그 결과, 인트라 프레임 후, 몇몇 완전히 빈 프레임들(스킵 온리)이 존재할 것이고, 이후 "실제(real)" 인터 프레임들의 인코딩이 시작될 것이다.
상기 추가 프레임은 상기 이전 프레임에 후속할 수 있다.
상기 프레임 및 상기 후속 프레임은 상기 추가 프레임에 후속할 수 있다.
상기 디지털 소스 이미지의 제1 및 제2 부분들은 겹치지 않을 수 있다. 이것이 최선인데, 이는 상기 디지털 소스 이미지에 대한 동일한 데이터가 단지 한 번만 인코딩될 필요가 있기 때문이다.
상기 디지털 소스 이미지의 상기 제1 및 제2 부분들의 이미지 폭은 동일할 수 있다.
디지털 소스 이미지들의 시퀀스 중 디지털 소스 이미지들은 복수의 이미지 센서들에 의해 획득된 데이터를 포함할 수 있고, 상기 디지털 소스 이미지의 제1 부분은 제1 이미지 센서에 의해 획득된 데이터 이미지에 대응하고, 상기 디지털 소스 이미지의 제2 부분은 다른 이미지 센서에 의해 획득된 이미지 데이터에 대응한다. 서로 다른 센서들로부터의 이미지 데이터는 자동적으로, 또는 물리적 센서 배치들에서의 차이들, 광학적 효과들 등으로 인한 중첩 또는 결함들을 정렬하고 균일하게 하도록 교정함으로써 인코딩 전에 다듬어지고(crop), 늘어나고, 수축되고, 랩(warp)되고, 처리될 수 있다.
상기 소스 이미지는 다수의 부분들로 분할될 수 있고, 각 부분은 레퍼런스 캐시 내에 적합하도록 충분히 작은 다수의 블록들을 (수평으로) 갖는다. 그 결과 상기 소스 이미지 폭은 상기 캐시 폭의 배수일 수 있다.
상기 방법은 상기 인코딩된 디지털 비디오 데이터에 대한 부가 정보(side information)를 상기 인코딩된 디지털 비디오 데이터를 디코딩하도록 된 디코더에 전송하는 단계를 더 포함하고, 상기 부가 정보는 상기 인코딩된 비디오 데이터의 프레임 레이트, 디지털 소스 이미지들의 시퀀스의 프레임 레이트, 상기 캐시 폭 및 상기 소스 이미지 폭 중 적어도 하나를 포함한다. 이러한 정보를 사용하여, 상기 디코더는 최적의 방식으로 상기 인코딩된 비디오 데이터를 디스플레이하기 위해 최적화될 수 있다. 상기 디코더로의 상기 부가 정보의 전송은 사이드 채널을 통해, 또는 비트 스트림 내의 특별 메시지들에 의해, 또는 수동 구성 또는 사전 구성에 의해 행해질 수 있다. 상기에서처럼 부가 정보를 전송함으로써, 상기 인코딩된 비디오 데이터의 프레임 레이트와 디지털 소스 이미지들의 시퀀스의 프레임 레이트 사이의 비율(ratio)이 발견될 수 있다. 상기 디코더에서, 상기 프레임 레이트들 사이의 비율은, 디스플레이될 디코딩된 비디오 데이터의 프레임들을 설정하기 위해 사용될 수 있다. 예를 들어, 디지털 소스 이미지들의 시퀀스의 프레임 레이트가 상기 디지털 비디오 시퀀스를 인코딩하기 위해 4번 사용되었다면, 상기 디코더는 원래 시퀀스의 4개 부분들 모두가 디코딩될 때까지 새로운 정보를 디스플레이하지 않는 것을 선택할 수 있다. 상기 디코딩된 인코디드 비디오 데이터를 디스플레이하는 이러한 대안의 방법을 사용함으로써, 상기 디스플레이된 비디오 데이터의 프레임 레이트는 디지털 소스 이미지들의 시퀀스의 프레임 레이트에 대응한다.
본 발명의 제2 양상에 따라, 처리 기능들을 갖는 디바이스 상에서 실행될 때 상기 방법을 구현하는 프로그램이 수록된 컴퓨터-판독가능한 기록 매체가 제공된다.
본 발명이 청구 범위들에 기재된 특징들의 모든 가능한 조합들에 관련되는 것을 알 수 있다.
본원 발명의 이러한 그리고 다른 특징들은 본원 발명의 실시예들을 나타내는 첨부된 도면들을 참조하여 이제 더 상세하게 기술될 것이다. 상기 도면들은 특정 실시예로 본 발명을 제한하도록 고려되지 않아야 하고; 대신 본원 발명을 설명하고 이해하기 위해 사용된다.
도 1은 본원 발명에 따라 인코딩된 디지털 비디오 데이터의 4개의 프레임들의 시퀀스의 개략도이다.
도 2는 본원 발명의 디지털 비디오 데이터를 인코딩하기 위한 방법을 나타내는 개략적인 흐름도이다.
하기의 서술에서, 설명의 목적으로, 구체적인 명명법이 본원 발명의 전체 이해를 제공하기 위해 제시된다. 하지만, 이러한 구체적인 세부사항들이 본원 발명을 실행하기 위해 요구되지 않음이 당업자에게 명확할 것이다. 예를 들어, 본 발명은 ISO/MPEG 패밀리(MPEG-1, MPEG-2, MPEG-4)의 비디오 코딩 표준들, ITU-H.26X 패밀리(H.261, H.263 및 확장형들, H,264 및 HEVC, 다가올 h.265 표준)의 비디오 권고들을 참조하여 서술된다. 하지만, 동일한 기술들이 다른 타입들의 비디오 코딩 표준들, 예를 들어, WMV-패밀리에 속한 마이크로소프트 코덱들, 온2 코덱들(예를 들어, VP6, VP6-E, VP6-S, VP7 또는 VP8) 또는 웹M에 용이하게 적용될 수 있다.
현대의 디지털 비디오 코딩 시스템들에서, 2개의 주요 모드들은 비디오 프레임들(인트라-모드 및 인터-모드)의 비디오 스트림 중 하나의 비디오 프레임을 압축하기 위해 사용될 수 있다. 상기 인트라-모드에서, 루미넌스 및 크로미넌스 채널은 예측, 변환 및 엔트로피 코딩을 통해 단일 프레임의 특정 채널에서 상기 픽셀들의 공간 중복을 활용함으로써 인코딩된다. 별개의 프레임들 사이에서 상기 공간 중복을 활용하는 인터-모드는, 선택된 블록들에 대해 하나의 프레임으로부터 다른 프레임으로 픽셀들 내의 움직임을 인코딩함으로써 하나(이상)의 이전에 디코딩된 프레임(들)로부터 하나의 프레임의 부분들을 예측하는 움직임-보상 예측 기술에 의존한다. 인터 모드에서, 상기 루미넌스 및 크로미넌스 채널은 어떤 움직임 예측도 가지지 않는다.
일반적으로, 인코딩될 프레임은 개별적으로 압축되고 인코딩되는 최소 코딩 유닛들(블록, 매크로 블록들 등)로 분할된다. 인터 모드에서, 블록들 각각은 하나 또는 여러 움직임 벡터들에 할당된다. 프레임의 예측은 움직임 벡터들의 세트에 따라 과거 및/또는 미래 프레임(들)로부터 픽셀 블록들을 대체함으로써 해석된다. 최종적으로, 인코딩될 프레임 사이의, 잔여 신호로 불리는, 차이는 유사한 방식으로 인트라-모드로 변환되고, 움직임-보상된 예측과 함께 비트 스트림을 형성하기 위해 인코딩된 엔트로피이다.
더욱이, 인터-모드에서 스킵 블록들은 사용될 수 있다. 스킵 블록은 잔여 에러 또는 움직임 벡터들을 전송함 없이 코딩된다. 상기 인코더는 그것이 스킵 블록임을 기록만 할 것이다. 상기 디코더는 이미 디코딩된 다른 블록들로부터 스킵 블록의 움직임 벡터를 추정할 것이다. 본 발명에 따라, 스킵 블록의 움직임 벡터는 디지털 비디오 데이터의 선행 프레임의 블록으로부터 바람직하게 추정될 것이다.
임의의 과거 또는 미래 프레임에 대한 어떤 참조 없이, 인트라-모드에 따라 인코딩되는 비디오 프레임들은 I-프레임들로 불린다. 인터-모드에 따라 인코딩되는 비디오 프레임들은, P-프레임들로 불리고 인트라-프레임 또는 인터-프레임인 과거 또는 미래 프레임을 참조하여 인코딩되는 단-방향성으로 예측된 프레임들, 또는 B-프레임들로 불리고 2개 이상의 과거 또는 미래 레퍼런스 프레임들을 참조하여 인코딩되는 양-방향성으로 예측된 프레임들이다. P-프레임들 및 B-프레임들은 이전 프레임들 중 어느 곳에서도 발견되지 않는 새로운 데이터를 인코딩하는 I-블록들을 포함할 수 있지만, 일반적으로 드물다.
인트라-프레임들은, 장면 변화에 대응하는 프레임들의 새로운 그룹의 시작에 놓여지고, 어떤 시간적 중복성(temporal redundancy)도 이용가능하지 않은 장면 변화 프레임들, 또는 일부 시간적 중복성이 이용가능한 다른 위치들에 놓인 리프레시 프레임들 중 하나를 포함한다. I 프레임들은 일반적으로 새로운 스트림 인코더들에 대한 리프레시-포인트를 갖도록 또는 전송 에러들에 대한 복구 포인트로서 규칙적인 또는 불규칙적인 간격으로 인서트(insert)된다.
본 발명은, 본 발명의 현재 바람직한 실시예들이 도시되는 첨부된 도면들을 참조하여 이후에서 충분히 서술될 것이다. 본 발명은, 하지만, 많은 서로 다른 형태들로 구현될 수 있고; 오히려, 이러한 실시예들은 철저하고 완벽함을 위해 제공되며, 본 발명의 범위가 당업자에게 충분하게 전달된다.
비교적 큰 크기의, 예를 들어, 4K 또는 8K 비디오 이미지들의 비디오 이미지들을 인코딩하는 것은, 오늘날 비디오 디바이스들에서 통상적으로 이용가능한 것보다 더 많은 캐시 메모리를 요구한다. 본 발명은, 비디오 디바이스들이 제한된 캐시 폭을 구비한 캐시 메모리들을 사용하여 비교적 큰 비디오 이미지들을 인코딩하는 것을 가능하게 하는 인코딩 방법으로 이 문제를 해결한다.
언급한 것처럼, 본원 발명은, 예를 들어, 4K 비디오 이미지들을 인코딩하기 위해 사용될 수 있지만, 상기 방법은 또한 상기 캐시 메모리가 다룰 수 있는 것보다 (화소들 또는 블록들의 수에서) 더 큰 이미지 폭을 갖는 소스 이미지를 갖는 유사한 문제를 경험하는 다른 애플리케이션들에 대해서도 사용될 수 있다. 이러한 예는 여러 이미지 센서들을 갖고, 이러한 이미지 센서들로부터 이후에 인코딩되는 복합 이미지로 이미지들을 결합시키는 카메라이다.
예를 들어, 4K 비디오 이미지들을 인코딩하는 경우에서, 2K 비디오만을 인코딩할 수 있는 캐시 메모리(50% 레퍼런스 캐시 사이즈)를 구비한 디지털 비디오 데이터 인코더를 갖는 비디오 디바이스를 사용하는 것이 가능할 것이다. 따라서, 상기 소스 비디오는 3840x2160 픽셀들이고 상기 캐시 폭은 이러한 예에서 1920 픽셀들로 제한된다.
도 1에서, 본원 발명에 따른 디지털 소스 이미지들의 시퀀스에 대응하는 인코딩된 디지털 비디오 데이터의 4개의 프레임들의 시퀀스의 예가 도시된다. 인코딩된 디지털 비디오 데이터의 프레임들은 복수의 블록들(2)로 분할된다. 도 1의 도시된 예에서, 인코딩된 디지털 비디오 데이터의 프레임 각각은 16개의 블록들로 분할된다. 하지만, 프레임 각각은 임의의 수의 블록들로 분할될 수 있다. 상기 디지털 비디오 데이터를 인코딩하기 위해 사용되는 디지털 소스 이미지들의 각각은 제1 개수의 블록들에 대응하는 동일한 소스 이미지 폭을 갖는다. 도 1의 디지털 비디오 데이터를 인코딩하기 위해 사용되는 소스 이미지들은 4개의 블록들에 대응하는 이미지 폭을 갖는다. 하지만, (하나의 블록의 폭을 제외한) 임의의 수의 블록들에 대응하는 이미지 폭을 갖는 소스 이미지들이 사용될 수 있음이 이해된다. 디지털 비디오 데이터를 인코딩하기 위해 사용되는 디지털 비디오 데이터 인코더는, 제2 개수의 블록들에 대응하는 캐시 폭, 도 1에 도시된 예에서 2개의 블록들에 대응하는 캐시 폭을 갖는 캐시 메모리를 갖는다. 제2 개수의 블록들은 제1 개수의 블록들보다 작다. 따라서, 상기 캐시 폭은 상기 소스 이미지 폭보다 작다.
디지털 비디오 데이터의 제1 프레임인 인트라-프레임(10)은 인트라-인코딩 모드를 사용하여 인코딩된다. 인트라-프레임(10)은 디지털 소스 이미지들의 시퀀스의 제1 프레임에 대응한다. 상기 캐시 메모리는 인트라-프레임들을 인코딩하기 위해 사용되지 않는다. 인트라-프레임(10)은 상기 소스 이미지 폭에 대응하는 이미지 폭을 갖는다. 따라서, 도 1에 도시된 예에서, 인트라-프레임(10)의 이미지 폭은 4개의 블록들의 폭이다.
인트라-프레임 각각에 대하여, 상기 디지털 비디오 데이터 중 적어도 하나의 프레임(20)은 인터-인코딩 모드를 사용하여 인코딩된다. 상기 적어도 하나의 추가의 프레임(20)은 상기 소스 이미지 폭에 대응하는 이미지 폭을 갖는다. 상기 디지털 비디오 데이터의 추가의 프레임(20)은 다수의 스킵 블록들로서 인코딩된다. 상기 디지털 비디오 데이터의 추가의 프레임(20)은 디지털 소스 이미지들의 시퀀스 중 임의의 프레임들에 대응하지 않는다. 추가의 프레임들(20)의 양은, 디지털 소스 이미지들의 시퀀스 중 후속하는 프레임들이 분할되는 부분들의 수에 의존하고, 상기 후속 프레임들의 부분들로의 분할에 관련하여 아래를 참조하라. 예를 들어, 상기 후속 프레임들이 4개의 부분들로 분할되면, 추가 프레임들의 수는 3이다. 도 1에 도시된 예에서, 추가적인 프레임들의 양은 하나인데, 이는 디지털 소스 이미지들의 시퀀스 중 후속 프레임들이 2개의 부분들로 분할되기 때문이다. 상기 디지털 비디오 데이터의 추가의 프레임(20)은, 특정 프레임 속도가 얻어질 수 있도록 도입된다.
디지털 소스 이미지들의 시퀀스 중 제1 프레임에 후속인, 디지털 소스 이미지들의 시퀀스 중 후속 프레임을 인코딩하기 위해, 인터-인코딩 모드가 사용된다. 후속 프레임은 부분들로 분할되고, 도 1에서는 2개의 부분들이 사용되지만, 부분들의 수는 상기 캐시 폭과 상기 디지털 소스 이미지들의 폭에 따라 변할 수 있다. 상기 디지털 소스 이미지의 후속 프레임의 부분들은 상기 캐시 폭보다 작거나 동일한 이미지 폭을 갖게 되어 상기 디지털 소스의 부분들에 속하는 데이터는 상기 캐시 메모리에 저장가능하다. 이후, 도 1의 디지털 비디오 데이터의 제3 프레임에 대응하는 프레임(30)은 인터-인코딩 모드를 사용하여 인코딩된다. 상기 프레임(30)은, 상기 후속 디지털 소스 이미지의 제1 부분에 대응하는 데이터를 포함하는 제1 영역 및 스킵 블록들로 채워진 영역을 포함한다. 도 1에서, 상기 제1 영역의 블록들은 P로 마킹되고, 스킵 블록들로 채워진 영역들의 블록들은 S로 마킹된다. 이후, 도 1의 상기 디지털 비디오 데이터의 제4 프레임에 대응하는 후속 프레임(40)은 인터-인코딩 모드를 사용하여 인코딩되고, 상기 제4 프레임은 스킵 블록들로 채워진 제1 영역으로서 상기 제1 영역의 블록들은 도 1에서 S로 마킹되고 그리고 상기 후속하는 디지털 소스 이미지의 제2 부분에 대응하는 데이터를 포함하는 다른 영역으로서 상기 다른 영역의 블록들은 도 1에서 P로 마킹된다. 상기 프레임(30) 및 후속 프레임(40)의 이미지 폭은 상기 소스 이미지 폭에 대응한다. 따라서, 도 1의 예에서, 디지털 소스 이미지들의 시퀀스 중 후속 프레임은 2개의 별개의 인터-프레임들을 사용하여 인코딩된다.
상기 예에서 서술되는 이미지 부분들의 크기는, 상기 디지털 비디오 데이터를 인코딩하기 위해 사용되는 인코더 및 상기 디지털 비디오 데이터를 디코딩하기 위해 사용되는 디코더의 특정 요건들을 맞추기 위해 변경될 수 있다. 예를 들어, 상기 캐시 폭이 상기 소스 이미지 폭의 절반보다 작으면, 상기 소스 이미지는 상기 소스 이미지와 동일한 높이를 갖는 4 부분들로 분할될 수 있고, 이미지 폭은 상기 소스 이미지 폭의 1/4이다.
본원 발명에 따른 인코딩 방법은, ISO/MPEG 표준들 또는 ITU-H.26X 표준들의 일부에 따라 인코딩할 수 있는 기존의 표준 디지털 비디오 데이터 인코더들을 사용하여 실행될 수 있다.
상기 본원 발명에 따른 상기 인코딩 방법을 사용함으로써, 인코딩된 디지털 비디오 데이터가 생성되고, 상기 인코딩된 디지털 비디오 데이터의 각각의 프레임은 상기 소스 이미지 폭의 이미지 폭에 대응하는 이미지 폭을 갖지만, 프레임 레이트는 디지털 소스 이미지들의 시퀀스의 프레임 레이트의 배수이다. 그와 같은 디지털 비디오 데이터는, 표준 디코더 및 비디오 디바이스를 사용하여, 상기 비디오 디바이스의 프레임 레이트를 디지털 소스 이미지들의 시퀀스의 상기 배수의 프레임 레이트로 설정하고 상기 이미지 폭을 상기 소스 이미지 폭으로 설정함으로써 디코딩되거나 재생될 수 있다.
그 결과, 도 1에 도시된 예에 따르면, 상기 디지털 비디오 데이터 인코더는, 상기 비디오가 풀 사이즈(4개의 블록들의 이미지 폭을 갖는 이러한 경우)를 갖지만, 디지털 소스 이미지들의 시퀀스의 프레임 속도보다 2배 높은 프레임 속도를 갖는다 라는 메시지를 상기 디지털 비디오 데이터의 수신기에 전송한다.
대안으로, 본 발명의 인코딩 방법을 사용함으로써, 인코딩된 디지털 비디오 데이터를 디코딩하도록 된 디코더에게 인코딩 방법에 관하여 통지하는 것이 가능하고, 상기 인코딩 방법은 상기 디코더로 하여금 최적의 방식으로 상기 디코딩된 인코디드 비디오 데이터를 디스플레이할 수 있게 한다. 예를 들어, 인코딩된 비디오 데이터의 프레임 레이트 및 디지털 소스 이미지들의 시퀀스의 프레임 레이트에 관련한 정보, 또는 상기 캐시 폭 및 상기 소스 이미지 폭에 관련한 정보를 전송함으로써, 상기 2개의 프레임 레이트들 간의 비가 발견될 수 있다. 예를 들어, 디지털 소스 이미지들의 시퀀스의 프레임 레이트가 상기 디지털 비디오 시퀀스를 인코딩하기 위해 4번 사용되었다면, 상기 디코더는 원래 시퀀스의 4개 부분들 모두가 디코딩될 때까지 새로운 정보를 디스플레이하지 않는 것을 선택할 수 있다. 상기 디코딩된 인코디드 비디오 데이터를 디스플레이하는 이러한 대안의 방법을 사용함으로써, 디지털 소스 이미지들의 시퀀스의 프레임 레이트와 대응한다.
도 1의 예에서, 디지털 소스 이미지들의 시퀀스의 프레임 레이트가 상기 디지털 비디오 시퀀스를 디코더로 인코딩하기 위해 2번 사용되었다. 그 결과, 디코딩된 인코디드 비디오 데이터의 매(every) 제2 프레임만이 디스플레이될 필요가 있다. 더 정확하게, 도 1의 예에서, 스킵 블록들만을 포함하는 상기 추가의 프레임(20) 및 디지털 소스 이미지들의 시퀀스의 후속 프레임 중 최종 인터-프레임인 후속 프레임(40)이 디스플레이될 것이다. 상기 스킵 블록들은, 더 이전의 프레임으로부터의 이미지 정보가 디스플레이될 것임을 의미한다.
도 2를 참조하여, 디지털 소스 이미지들의 시퀀스에 대응하는 디지털 비디오 데이터를 인코딩하기 위한 본원 발명의 따른 방법이 더 상세하게 논의될 것이다. 상기 디지털 소스 이미지들 각각은 제1 개수의 블록들에 대응하는 동일한 소스 이미지 폭을 갖는다. 상기 방법은 캐시 메모리를 포함하는 디지털 비디오 데이터 인코더를 사용하여 수행되고, 상기 캐시 메모리는 제2 개수의 블록들에 대응하는 캐시 폭을 갖고, 상기 제2 개수의 블록들은 상기 제1 개수의 블록들보다 더 적다. 따라서, 상기 캐시 폭은 상기 소스 이미지 폭보다 작다. 상기 방법은 다음의 단계들을 포함한다.
디지털 소스 이미지들의 시퀀스의 제1 이미지에 대응하는 데이터를 포함하는 인트라-프레임(10)을 인코딩하는 단계(단계 201).
스킵 블록들만을 포함하는 인터-프레임인 적어도 하나의 추가의 프레임(20)을 제공하는 단계(단계 202).
디지털 소스 이미지들의 시퀀스의 제1 소스 이미지에 후속인 디지털 소스 이미지들의 후속의 디지털 소스 이미지를 복수의 부분들로 분할하는 단계(단계 203). 상기 후속의 디지털 소스 이미지의 각각의 부분은 상기 캐시 폭보다 작거나 같은 이미지 폭을 갖게 되어 상기 디지털 소스 이미지의 각각의 부분에 대한 데이터는 상기 캐시 메모리에 저장가능하다. 상기 후속의 소스 이미지의 부분들은 이미지 폭에서 동일하다.
상기 디지털 비디오 데이터의 프레임(30)을 인코딩하는 단계(단계 204). 상기 프레임(30)은 상기 후속하는 디지털 소스 이미지의 제1 부분 및 스킵 블록들에 대응하는 데이터를 포함하여, 상기 제1 프레임의 이미지 폭은 상기 소스 이미지 폭에 대응한다. 상기 디지털 비디오 데이터의 프레임(30)은 인터-모드를 사용하여 인코딩된다.
상기 디지털 비디오 데이터의 후속 프레임(40)을 인코딩하는 단계(단계 205). 상기 후속 프레임(40)은 상기 후속하는 디지털 소스 이미지의 다른 부분 및 스킵 블록들에 대응하는 데이터를 포함하여, 상기 제2 프레임의 이미지 폭은 상기 소스 이미지 폭에 대응한다. 상기 디지털 비디오 데이터의 후속 프레임(40)은 인터-모드를 사용하여 인코딩된다.
상기 인코딩된 비디오 데이터의 프레임 레이트, 디지털 소스 이미지들의 시퀀스의 프레임 레이트, 상기 캐시 폭 및 상기 소스 이미지 폭 중 적어도 하나에 대한 부가 정보를 상기 인코딩된 디지털 비디오 데이터를 디코딩하기 위해 배열된 디코더로 전송하는 단계(단계 206). 상기 디코더로의 상기 부가 정보의 전송은 사이드 채널을 통해, 또는 비트 스트림 내의 특별 메시지들에 의해, 또는 수동 구성 또는 사전 구성에 의해 행해질 수 있다.
디코딩은 상기 부가 정보를 전혀 사용하지 않고 행해질 수 있다. 그 결과, 상기 디코더는 인코딩된 디지털 비디오 시퀀스를 디코딩할 때 정상으로 동작한다. 디코딩이 상기 부가 정보를 전혀 사용하지 않고 행해질 때, 상기 부가 정보를 상기 디코더에 전송하는 단계(단계 206)는 수행되지 않을 수 있다.
대안적으로, 상기 부가 정보는 상기 디코딩된 디지털 비디오 시퀀스의 프레임들에 대한 디스플레이 시간을 조정하기 위해 사용될 수 있다. 만약 그렇다면, 상기 부가 정보는 디지털 소스 이미지들의 시퀀스의 프레임 레이트를 매칭하기 위해 상기 디코딩된 디지털 비디오 시퀀스의 디스플레이 시간을 조정하기 위해 사용될 수 있다. 예를 들어, 디지털 소스 이미지들의 시퀀스의 프레임 레이트가 상기 디지털 비디오 시퀀스를 인코딩하기 위해 4번 사용되었다면, 상기 디코더는 원래 시퀀스의 4개 부분들 모두가 디코딩되었을 때까지 새로운 정보를 디스플레이하지 않는 것을 선택할 수 있다.
디지털 소스 이미지들의 시퀀스의 하나의 프레임을 인코딩하는데 얼마나 많은 프레임들이 이용되는지를 디코더에 통지하기 위해, 상기 인코딩된 비디오 데이터의 프레임 레이트, 디지털 소스 이미지들의 시퀀스의 프레임 레이트 또는 이러한 프레임 레이트들 사이의 비율에 관한 정보가 사용될 수 있다. 대안으로, 상기 캐시 폭 및 상기 소스 이미지 폭, 또는 이러한 2개의 폭들 사이의 비율이 사용될 수 있다.
당업자들은, 본원 발명이 결코 상기에서 서술된 바람직한 실시예들에 제한되지 않음을 인식한다. 반대로, 많은 수정들 및 변형들이 첨부된 청구범위들의 범위 내에서 가능하다.
예를 들어, 디지털 소스 이미지들의 시퀀스에 대응하는 상기 디지털 비디오 데이터의 인코딩은 ISO/MPEG 패밀리(MPEG-1, MPEG-2, MPEG-4)의 비디오 코딩 표준들, ITU-H.26X 패밀리(H.261, H.263 및 확장형들, H,264 및 HEVC, 다가올 h.265 표준)의 비디오 권고들에 따라 인코딩하기 위해 배열되는 임의의 표준 디지털 비디오 인코더에 의해 수행될 수 있다. 하지만, 동일한 기술들이 다른 타입들의 비디오 코딩 표준들, 예를 들어, WMV-패밀리에 속한 마이크로소프트 코덱들, 온2 코덱들(예를 들어, VP6, VP6-E, VP6-S, VP7 또는 VP8) 또는 웹M에 용이하게 적용될 수 있다.
상기 인코더는 프로그램을 실행하기 위한 처리 기능들을 갖는 프로세서를 가질 수 있고, 상기 프로그램은 본원 발명에 따른 상기 디지털 비디오 데이터를 인코딩하기 위한 방법을 구현한다.
상기 인코더는, 본원 발명에 따른 상기 디지털 비디오 데이터를 인코딩하는 방법의 단계들을 수행하기 위한 하드웨어 컴포넌트들을 가질 수 있다.
상기 인코더는, 본원 발명에 따른 상기 디지털 비디오 데이터를 인코딩하는 방법의 단계들 중 일부를 수행하는 하드웨어 컴포넌트들 및 본원 발명에 따른 상기 디지털 비디오 데이터를 인코딩하는 방법의 단계들 중 일부를 구현하는 프로그램을 실행하기 위한 처리 기능들을 갖는 프로세서 둘다 가질 수 있다.
상기 디지털 비디오 인코더는 디지털 소스 이미지들의 시퀀스를 캡처하기 위해 배열되는 디지털 비디오 카메라에 배치될 수 있다. 대안으로, 상기 디지털 비디오 인코더는 외부의 비디오 캡처링 디바이스들로부터 디지털 소스 이미지들을 인코딩하기 위해 배열되는 비디오 인코딩 디바이스에 배치될 수 있다.
부가적으로, 개시되는 실시예들에 대한 변형들은 도면들, 개시들 및 첨부된 청구범위들의 교시로부터, 청구된 발명을 실행함에 있어 당업자에 의해 이해되고 행해질 수 있다. 더욱이, 도면들 및 명세서에서, 본 발명의 바람직한 실시예들 및 예시들이 개시되고, 특정 용어들이 사용될지라도, 그것은 일반적이고 설명적인 의미로 사용되고 제한의 목적으로 사용되지 않으며, 본 발명의 범위는 하기의 청구범위들에서 설정된다. 청구범위들에서, 단어 "포함하는(comprising)"이 다른 요소들 또는 단계들을 배제하지 않고, 단수를 나타내는 용어가 복수를 배제하지 않는다.

Claims (11)

  1. 캐시 메모리를 포함하는 디지털 비디오 데이터 인코더를 사용하여 디지털 소스 이미지들의 시퀀스에 대응하는 디지털 비디오 데이터를 인코딩하는 방법으로서, 상기 디지털 소스 이미지들의 각각은 제1 개수의 블록들에 대응하는 동일한 소스 이미지 폭을 갖고, 상기 캐시 메모리는 제2 개수의 블록들에 대응하는 캐시 폭을 갖고, 상기 제2 개수의 블록들은 상기 제1 개수의 블록들보다 적으며, 상기 방법은,
    상기 디지털 비디오 데이터의 프레임을 인코딩하는 단계(204) - 상기 프레임(30)은 디지털 소스 이미지들의 시퀀스 내의 디지털 소스 이미지의 제1 부분에 대응하는 데이터를 포함하고, 상기 디지털 소스 이미지의 제1 부분은 상기 제2 개수의 블록들보다 작거나 같은 제3 개수의 블록들에 대응하는 이미지 폭을 가지므로 상기 디지털 소스 이미지의 제1 부분에 대한 데이터는 상기 캐시 메모리에 저장가능하고, 그리고 상기 프레임(30)의 이미지 폭이 상기 소스 이미지 폭에 대응하도록 상기 프레임(30)은 스킵 블록들로 채워지며 - 와; 그리고
    상기 디지털 비디오 데이터의 후속 프레임(40)을 인코딩하는 단계(205)를 포함하고,
    상기 후속 프레임(40)은 상기 디지털 소스 이미지의 제2 부분에 대응하는 데이터를 포함하고, 상기 디지털 소스 이미지의 제2 부분은 상기 제2 개수의 블록들보다 작거나 같은 제4 개수의 블록들에 대응하는 이미지 폭을 가지므로 상기 디지털 소스 이미지의 제2 부분에 대한 데이터는 상기 캐시 메모리에 저장가능하고, 그리고 상기 후속 프레임(40)의 이미지 폭이 상기 소스 이미지 폭에 대응하도록 상기 후속 프레임(40)은 스킵 블록들로 채워지며,
    상기 프레임(30) 및 상기 후속 프레임(40)은 인터-프레임들(INTER-frames)로 인코딩되고,
    상기 스킵 블록은 잔여 오차(residual error) 또는 움직임 벡터(motion vector)들 없이 기록되는 블록인 것을 특징으로 하는 디지털 비디오 데이터를 인코딩하는 방법.
  2. 제 1 항에 있어서,
    상기 디지털 비디오 데이터의 이전 프레임(10)을 인코딩하는 단계(201)를 더 포함하고, 상기 이전 프레임(10)은 상기 디지털 소스 이미지들의 시퀀스 내의 추가의 디지털 소스 이미지에 대응하는 데이터를 포함하고, 상기 이전 프레임(10)은 인트라-프레임(INTRA-frame)으로 인코딩되는 것을 특징으로 하는 디지털 비디오 데이터를 인코딩하는 방법.
  3. 제 2 항에 있어서,
    상기 디지털 비디오 데이터의 추가 프레임(20)을 제공하는 단계(202)를 더 포함하고, 상기 추가 프레임(20)은 스킵 블록들만을 포함하는 인터-프레임(INTER-frame)인 것을 특징으로 하는 디지털 비디오 데이터를 인코딩하는 방법.
  4. 제 3 항에 있어서,
    상기 추가 프레임(20)은 상기 이전 프레임(10)에 후속하는 것을 특징으로 하는 디지털 비디오 데이터를 인코딩하는 방법.
  5. 제 3 항에 있어서,
    상기 프레임(30) 및 상기 후속 프레임(40)은 상기 추가 프레임(20)에 후속하는 것을 특징으로 하는 디지털 비디오 데이터를 인코딩하는 방법.
  6. 제 1 항에 있어서,
    상기 디지털 소스 이미지의 제1 및 제2 부분은 겹치지 않는 것을 특징으로 하는 디지털 비디오 데이터를 인코딩하는 방법.
  7. 제 1 항에 있어서,
    상기 디지털 소스 이미지의 제1 및 제2 부분의 이미지 폭은 동일한 것을 특징으로 하는 디지털 비디오 데이터를 인코딩하는 방법.
  8. 제 1 항에 있어서,
    상기 디지털 소스 이미지들의 시퀀스 중 디지털 소스 이미지들은 복수의 이미지 센서들에 의해 획득된 데이터를 포함하고, 상기 디지털 소스 이미지의 제1 부분은 제1 이미지 센서에 의해 획득된 이미지 데이터에 대응하고, 상기 디지털 소스 이미지의 제2 부분은 다른 이미지 센서에 의해 획득된 이미지 데이터에 대응하는 것을 특징으로 하는 디지털 비디오 데이터를 인코딩하는 방법.
  9. 제 1 항에 있어서,
    상기 소스 이미지 폭은 상기 캐시 폭의 배수인 것을 특징으로 하는 디지털 비디오 데이터를 인코딩하는 방법.
  10. 제 1 항에 있어서,
    상기 인코딩된 디지털 비디오 데이터에 대한 부가 정보(side information)를 상기 인코딩된 디지털 비디오 데이터를 디코딩하도록 된 디코더에 전송하는 단계(206)를 더 포함하고, 상기 부가 정보는 상기 인코딩된 비디오 데이터의 프레임 레이트, 디지털 소스 이미지들의 시퀀스의 프레임 레이트, 상기 캐시 폭 및 상기 소스 이미지 폭 중 적어도 하나를 포함하는 것을 특징으로 하는 디지털 비디오 데이터를 인코딩하는 방법.
  11. 처리 기능들을 갖는 디바이스 상에서 실행될 때, 제1항 내지 제10항 중 어느 한 항에 따른 방법을 구현하는 프로그램이 수록된 컴퓨터-판독가능한 기록 매체.
KR1020140067195A 2013-06-05 2014-06-02 디지털 비디오 데이터를 인코딩하는 방법 KR101553680B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP13170546.9 2013-06-05
EP13170546.9A EP2814253B1 (en) 2013-06-05 2013-06-05 Method for encoding digital video data

Publications (2)

Publication Number Publication Date
KR20140143328A KR20140143328A (ko) 2014-12-16
KR101553680B1 true KR101553680B1 (ko) 2015-09-30

Family

ID=48576278

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140067195A KR101553680B1 (ko) 2013-06-05 2014-06-02 디지털 비디오 데이터를 인코딩하는 방법

Country Status (6)

Country Link
US (3) US9307253B2 (ko)
EP (2) EP2814253B1 (ko)
JP (1) JP5869047B2 (ko)
KR (1) KR101553680B1 (ko)
CN (1) CN104243990B (ko)
TW (1) TWI630819B (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8942473B2 (en) * 2012-07-25 2015-01-27 Ko Hung Lin Image processing method and display apparatus
EP3343561B1 (en) * 2016-12-29 2020-06-24 Axis AB Method and system for playing back recorded video
EP3506633A1 (en) * 2017-12-19 2019-07-03 Axis AB Video encoding method and system
EP3591972A1 (en) * 2018-07-02 2020-01-08 Axis AB Method and system for encoding video with overlay
BR112021001245A2 (pt) 2018-08-27 2021-04-27 Panasonic Intellectual Property Corporation Of America codificador, decodificador, método de codificação e método de decodificação
EP3618442B1 (en) 2018-08-27 2020-09-30 Axis AB An image capturing device, a method and computer program product for forming an encoded image
EP3713235B1 (en) * 2019-03-19 2023-08-02 Axis AB Methods and devices for encoding a video stream using a first and a second encoder
US11189005B1 (en) * 2020-08-27 2021-11-30 Arm Limited Index buffers in graphics processing systems

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040175049A1 (en) 2003-03-04 2004-09-09 Matsushita Electric Industrial Co., Ltd Moving image coding method and apparatus
JP2007510320A (ja) 2003-10-04 2007-04-19 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 画像データを処理する方法及び装置

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2719398B1 (fr) * 1994-04-27 1996-07-19 Sgs Thomson Microelectronics Dispositif et procédé d'adressage d'une mémoire cache d'un circuit de compression d'images mobiles.
JP3181002B2 (ja) 1994-05-06 2001-07-03 日本電信電話株式会社 自在駒落ち動画像符号化方法
US6067321A (en) * 1997-04-03 2000-05-23 Lsi Logic Corporation Method and apparatus for two-row macroblock decoding to improve caching efficiency
JPH11220694A (ja) 1998-02-02 1999-08-10 Sony Corp 信号伝送方法、信号伝送装置及び信号記録媒体
JP2000115777A (ja) 1998-10-01 2000-04-21 Hitachi Ltd 画像処理方法および画像処理装置
SG111087A1 (en) * 2002-10-03 2005-05-30 St Microelectronics Asia Cache memory system
US8059711B2 (en) * 2003-01-28 2011-11-15 Thomson Licensing Robust mode staggercasting
CN1328910C (zh) * 2005-03-10 2007-07-25 北京中星微电子有限公司 一种应用硬件实现运动估计时的搜索窗数据读取方法
US8325798B1 (en) * 2005-12-15 2012-12-04 Maxim Integrated Products, Inc. Adaptive motion estimation cache organization
US8593469B2 (en) * 2006-03-29 2013-11-26 Nvidia Corporation Method and circuit for efficient caching of reference video data
CN100493193C (zh) * 2006-12-08 2009-05-27 北京中星微电子有限公司 对实时数码视频影流进行缓存控制的方法和装置
JP4900470B2 (ja) 2007-02-22 2012-03-21 富士通株式会社 動画像符号化装置および動画像符号化方法
US20080285652A1 (en) * 2007-05-14 2008-11-20 Horizon Semiconductors Ltd. Apparatus and methods for optimization of image and motion picture memory access
JP2009055291A (ja) 2007-08-27 2009-03-12 Oki Electric Ind Co Ltd 動き検出回路
CN101179724B (zh) * 2007-12-11 2010-09-29 北京中星微电子有限公司 帧间压缩编码中的帧存储方法及装置
JP2009232370A (ja) 2008-03-25 2009-10-08 Victor Co Of Japan Ltd 動画像復号装置
US20090245374A1 (en) * 2008-03-26 2009-10-01 Mediatek Inc. Video encoder and motion estimation method
US8213503B2 (en) * 2008-09-05 2012-07-03 Microsoft Corporation Skip modes for inter-layer residual video coding and decoding
JP5662233B2 (ja) 2011-04-15 2015-01-28 株式会社東芝 画像符号化装置及び画像復号装置
US20140092969A1 (en) * 2012-10-01 2014-04-03 Mediatek Inc. Method and Apparatus for Data Reduction of Intermediate Data Buffer in Video Coding System
US9185437B2 (en) * 2012-11-01 2015-11-10 Microsoft Technology Licensing, Llc Video data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040175049A1 (en) 2003-03-04 2004-09-09 Matsushita Electric Industrial Co., Ltd Moving image coding method and apparatus
JP2007510320A (ja) 2003-10-04 2007-04-19 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 画像データを処理する方法及び装置

Also Published As

Publication number Publication date
KR20140143328A (ko) 2014-12-16
US10045037B2 (en) 2018-08-07
TWI630819B (zh) 2018-07-21
EP2814253B1 (en) 2015-09-16
JP2014239428A (ja) 2014-12-18
US20160156916A1 (en) 2016-06-02
US20140362908A1 (en) 2014-12-11
US9307253B2 (en) 2016-04-05
EP2814253A1 (en) 2014-12-17
US10165290B2 (en) 2018-12-25
CN104243990A (zh) 2014-12-24
EP2903284A1 (en) 2015-08-05
US20180302637A1 (en) 2018-10-18
JP5869047B2 (ja) 2016-02-24
TW201507444A (zh) 2015-02-16
CN104243990B (zh) 2016-05-11

Similar Documents

Publication Publication Date Title
KR101553680B1 (ko) 디지털 비디오 데이터를 인코딩하는 방법
JP4695129B2 (ja) 画像符号化におけるランダム・アクセス及び段階的画像更新に対する方法
US9332279B2 (en) Method and digital video encoder system for encoding digital video data
US8811483B2 (en) Video processing apparatus and method
US20180007355A1 (en) High frame rate-low frame rate transmission technique
US8565315B2 (en) Image decoding device and image decoding method
JP5050964B2 (ja) 復号装置,復号方法および復号プログラム
JP2012147457A (ja) 高速マルチストリームmpegプロセッサを提供する方法およびシステム
US20150326874A1 (en) Apparatus and method for coding a video signal
US20140219332A1 (en) Virtual Field Buffer Based Decoding
US20110299591A1 (en) Video processing apparatus and method
US20180124376A1 (en) Video decoding device and image display device
JP5332812B2 (ja) 動画符号化装置,及び、動画伝送システム
JP2009290387A (ja) エンコーダ、デコーダ、及び記録再生装置
KR20220160044A (ko) 혼성 nal 유닛 타입에 기반하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장하는 기록 매체
KR20220160043A (ko) 혼성 nal 유닛 타입에 기반하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장하는 기록 매체
JP2007166555A (ja) 符号化装置及び方法
JP2015035785A (ja) 動画像符号化装置、撮像装置、動画像符号化方法、プログラム、及び記録媒体
JP2006295705A (ja) 動画像符号化装置、動画像復号化装置、動画像符号化方法、動画像復号化方法、動画像符号化プログラム及び動画像復号化プログラム
JP2008227745A (ja) 映像符号化装置及び映像復号装置

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180823

Year of fee payment: 4