KR20090123861A - 크로마 샘플 위치 정보의 시그널링 및 사용 - Google Patents

크로마 샘플 위치 정보의 시그널링 및 사용 Download PDF

Info

Publication number
KR20090123861A
KR20090123861A KR1020097016983A KR20097016983A KR20090123861A KR 20090123861 A KR20090123861 A KR 20090123861A KR 1020097016983 A KR1020097016983 A KR 1020097016983A KR 20097016983 A KR20097016983 A KR 20097016983A KR 20090123861 A KR20090123861 A KR 20090123861A
Authority
KR
South Korea
Prior art keywords
chroma
information
dimension
phase
image
Prior art date
Application number
KR1020097016983A
Other languages
English (en)
Other versions
KR101465817B1 (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 KR20090123861A publication Critical patent/KR20090123861A/ko
Application granted granted Critical
Publication of KR101465817B1 publication Critical patent/KR101465817B1/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/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/186Methods 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 a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/41Bandwidth or redundancy reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Color Television Systems (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

크로마 위치의 시그널링 및 해석을 위한 규칙이 개시된다. 단축 규칙이라 불리우는, 하나의 규칙은 15개의 이산 크로마 센터링 위치 및 대응하는 4비트 구문 요소를 정의한다. 확장 규칙이라 불리우는 다른 규칙은 81개의 이산 크로마 센터링 위치 및 대응하는 7비트 구문 요소를 정의한다. 개시되는 방법은 디지털 미디어 인코더에서 디지털 미디어 데이터를 수신하는 단계, 수신된 디지털 미디어 데이터에 대한 크로마 위치 정보를 결정하는 단계, 및 인코딩된 비트스트림의 하나 이상의 구문 요소로 크로마 위치 정보를 나타내는 단계를 포함한다. 하나 이상의 구문 요소는 크로마 위치 정보를 디지털 미디어 인코더에 전달하도록 동작할 수 있다. 크로마 위치 정보는 이미지 회전 또는 플립을 용이하게 한다.
크로마 위치, 크로마 센터링 위치, 플립, 회전

Description

크로마 샘플 위치 정보의 시그널링 및 사용{SIGNALING AND USE OF CHROMA SAMPLE POSITIONING INFORMATION}
본 발명은 디지털 미디어 데이터의 인코딩 및 디코딩의 태양에 관한 것이고, 보다 구체적으로는 디지털 미디어 인코더 및 디코더에서의 디지털 미디어 인코딩 및 디코딩에 관한 것이다.
크로마 위치(chroma position)의 시그널링 및 해석에 대한 규칙이 개시된다. 단축 규칙이라 불리우는 하나의 규칙은 15개의 이산 크로마 센터링 위치(discrete chroma centering positions) 및 대응하는 4비트 구문 요소(syntax element)를 정의한다. 확장 규칙이라 불리우는 다른 규칙은 81개의 이산 크로마 센터링 위치 및 대응하는 7비트 구문 요소를 정의한다. 이와 같은 규칙의 변형 및 다른 태양도 또한 개시된다.
일태양에서, 방법은 디지털 미디어 인코더에서 디지털 미디어 데이터를 수신하는 단계; 수신된 디지털 미디어 데이터에 대한 크로마 위치 정보를 결정하는 단계; 인코딩된 비트스트림에서 하나 이상의 구문 요소로 크로마 위치 정보를 나타내는 단계(상기 구문 요소는 크로마 위치 정보를 디지털 미디어 디코더에 전달하도록 동작할수 있고, 상기 크로마 위치 정보는 이미지 회전 또는 플립(flip)을 용이하게 할 수 있음); 및 인코딩된 비트스트림을 출력하는 단계를 포함한다. 다른 태양에서 크로마 위치 정보가 디코딩된다.
본 설명은 아래의 실시예에 상세하게 개시되는 본 사상의 발췌를 단순화된 형식으로 소개하기 위해 제공된다. 본 설명은 청구된 주요 발명의 중요한 태양 또는 핵심적인 태양을 식별하거나 청구된 주요 발명의 범위를 한정하기 위한 것으로 해석되지 않는다.
전술한 사항 및 다른 목적, 태양 및 장점들은 첨부된 도면을 참조하여 개시되는 다음의 실시예에서 더욱 명백해질 것이다.
도 1은 하나 이상의 개시된 실시예의 크로마 위치 정보의 시그널링 및 사용을 위한 기술 및 도구를 구현하기 위한 적절한 컴퓨팅 환경의 블록도.
도 2는 크로마 샘플 위치 규칙의 제1 예시를 도시하는 도면.
도 3은 크로마 샘플 위치 규칙의 제2 예시를 도시하는 도면.
도 4는 인터레이스 데이터(interlace data)의 크로마 다운샘플링을 도시하는 도면.
도 5는 블록 변환-기반 코덱의 블록도.
도 6은 대표적인 인코더의 흐름도.
도 7은 대표적인 디코더의 흐름도.
본 애플리케이션은 디지털 미디어 데이터의 효율적인 압축 및 압축해제를 위 한 기술 및 도구와 관련되어 있다. 다양한 개시된 실시예에서, 정지 이미지 인코더 및/또는 디코더는 이미지 데이터를 압축 및/또는 압축해제하기 위한 기술을 포함한다.
본 명세서에 개시되는 실시예의 다양한 대안들이 있을 수 있다. 예를 들어, 흐름도를 참조하여 개시되는 기술은 흐름도에 도시되는 단계의 순서를 변경하거나, 특정한 단계를 반복 또는 생략하여 변경될 수 있다. 다른 예시로서, 일부 실시예들이 특정한 디지털 미디어 포맷을 참조하여 개시되지만, 다른 포맷이 또한 사용될 수 있다.
다양한 기술 및 도구들이 조합되거나 또는 독립적으로 사용될 수 있다. 상이한 실시예는 개시된 기술 및 도구의 하나 이상을 구현한다. 본 명세서에 개시되는 일부 기술 및 도구는 정지 이미지 인코더 또는 디코더, 또는 구체적으로 정지 이미지 인코딩 또는 디코딩에 한정되지 않는 일부 다른 시스템에 사용될 수 있다.
1. 컴퓨팅 환경
도 1은 개시된 실시예 중 여러가지 예가 구현될 수 있는 적절한 컴퓨팅 환경(100)의 일반적인 예시를 도시한다. 본 기술 및 도구는 다양한 범용 또는 전용 컴퓨팅 환경에서 구현될 수 있기 때문에, 컴퓨팅 환경(100)은 사용 또는 기능의 범위에 대한 한정을 제시하는 것으로 해석되지 않는다.
도 1을 참조하면, 컴퓨팅 환경(100)은 적어도 하나의 프로세싱 유닛(110) 및 메모리(120)를 포함한다. 도 1에서, 가장 기본적인 구성(130)은 점선 내에 포함된다. 프로세싱 유닛(110)은 컴퓨터-실행가능 명령어를 실행하는 실제 또는 가상의 프로세서일 수 있다. 멀티-프로세싱 시스템에서, 프로세싱 성능을 향상시키기 위해 복수의 프로세싱 유닛이 컴퓨터-실행가능 명령어를 실행한다. 메모리(120)는 휘발성 메모리(예를 들어, 레지스터, 캐시, RAM), 비-휘발성 메모리(예를 들어, ROM, EEPROM, 플래시 메모리 등) 또는 이 둘의 조합일 수 있다. 메모리(120)는 개시되는 기술 또는 도구의 하나 이상으로 디지털 미디어 인코더 또는 디코더를 구현하는 소프트웨어(180)를 저장한다.
컴퓨팅 환경은 추가적인 태양을 가질 수 있다. 예를 들어, 컴퓨팅 환경(100)은 저장소(140), 하나 이상의 입력 장치(150), 하나 이상의 출력 장치(160) 및 하나 이상의 통신 연결(170)을 포함한다. 버스, 제어기 또는 네트워크와 같은 상호연결 메커니즘(도시되지 않음)은 컴퓨팅 환경(100)의 컴포넌트를 상호연결한다. 통상적으로, 운영체제 소프트웨어(도시되지 않음)는 컴퓨팅 환경(100)에서 실행되는 다른 소프트웨어를 위한 운영 환경을 제공하고, 컴퓨팅 환경(100)의 컴포넌트의 동작들을 조정(coordinates)한다.
저장소(140)는 탈착식 또는 비-탈착식일 수 있고, 마그네틱 디스크, 마그네틱 테입 또는 카세트, CD-ROM, DVD(고해상도 DVD 포함), 정보를 저장하기 위해 사용될 수 있고 컴퓨팅 환경(100) 내에서 액세스될 수 있는 임의의 다른 매체를 포함할 수 있다. 저장소(140)는 디지털 미디어 인코더 또는 디코더를 구현하는 소프트웨어(180)를 위한 명령어를 저장한다.
입력 장치(150)는 키보드, 마우스, 펜 또는 트랙볼, 음성 입력 장치, 스캐닝 장치, 정지 이미지 캡쳐 장치(예를 들어, 디지털 카메라) 또는 컴퓨팅 환경(100)으 로의 입력을 제공하는 다른 장치일 수 있다. 오디오 또는 비디오 인코딩을 위해, 입력 장치(150)는 사운드 카드, 비디오 카드, TV 튜너 카드 또는 아날로그 또는 디지털 형식의 오디오 또는 비디오 입력을 받아들이는 유사한 장치 또는 컴퓨팅 환경(100) 내로 오디오 또는 비디오 샘플을 판독하는 CD-ROM 또는 CD-RW일 수 있다. 출력 장치(160)는 디스플레이, 프린터, 스피커, CD 또는 DVD-라이터 또는 컴퓨팅 환경(100)으로부터 출력을 제공하는 다른 장치일 수 있다.
통신 연결(170)은 통신 매체를 통해 다른 컴퓨팅 개체로의 통신을 가능하게 한다. 통신 매체는 컴퓨터-실행가능 명령어, 디지털 미디어 입력 또는 출력, 또는 변조된 데이터 신호의 다른 데이터와 같은 정보를 전달한다. 변조된 데이터 신호는 자신의 특성 집합의 하나 이상을 가지거나 또는 신호의 정보를 인코딩하기 위한 방식으로 변경된 신호이다. 한정이 아닌 예시적으로, 통신 매체는 전기적, 광학적, RF, 적외선, 어쿠스틱 또는 다른 캐리어로 구현되는 유선 또는 무선 기술을 포함한다.
기술 및 도구는 컴퓨터-판독가능 매체의 일반적인 컨텍스트에서 개시될 수 있다. 컴퓨터-판독가능 매체는 컴퓨팅 환경에서 액세스될 수 있는 임의의 사용가능한 매체이다. 한정이 아닌 예시적으로, 컴퓨팅 환경(100)에서 컴퓨터-판독가능 매체는 메모리(120), 저장소(140), 통신 매체 및 이들의 조합을 포함한다.
본 기술 및 도구는 실제 또는 가상 목표 프로세서 상의 컴퓨팅 환경에서 실행되는 프로그램 모듈에 포함되는 것들과 같은 컴퓨터-실행가능 명령어의 일반적인 컨텍스트에서 개시될 수 있다. 일반적으로, 프로그램 모듈은 특정한 작업 또는 특 정한 추상 데이터형을 구현하는 루틴, 프로그램, 라이브러리, 객체, 클래스, 컴포넌트, 데이터 구조 등을 포함한다. 프로그램 모듈의 기능은 다양한 실시예에서 원하는대로 조합되거나 또는 프로그램 모듈 사이에서 분리될 수 있다. 프로그램 모듈을 위한 컴퓨터-사용가능 명령어는 로컬 또는 분산 컴퓨팅 환경에서 실행될 수 있다.
개시를 위하여, 본 실시예는 컴퓨팅 환경의 컴퓨터 동작을 설명하기 위하여 "선택" 및 "수신"과 같은 용어를 사용한다. 이러한 용어는 컴퓨터에 의해 수행되는 동작에 대한 고차원의 추상적 개념이고, 사람에 의해서 수행되는 동작과 혼동하지 않아야 한다. 이와 같은 용어에 대응하는 실제 컴퓨터 동작은 실시예에 따라 변경된다.
2. 크로마 샘플 위치 정보의 시그널링 및 사용
개시된 실시예는 전체 디코딩 및 재-인코딩 없이 이미지 상에 카디널 회전(cardinal rotations) 및 미러 플립을 수행하기 위한 기능을 포함하는 개선된 정지 이미지 코덱 비트스트림 태양을 제공한다. 본 태양은 다음을 포함하는 복수의 설계 기술에 의해 지원될 수 있다.
1. LBT(Lapped Biorthogonal Transform)
a. LBT의 기본 기능의 대칭성은 기-대칭 변환 계수(odd-symmetric transform coefficients)의 부호를 단지 부정하여 변환 블록 내의 공간 데이터의 미러 플립을 허용할 수 있다. 이는 공간적인 양방향, X 및 Y에 대하여 유효하다.
b. LBT의 기본 기능의 등방적(isotropic) 특성은 단지 변환 계수를 전 치(transposing)하여 변환 블록 내의 공간 데이터가 전치되도록 한다. 카디널 회전은 전치 및 미러 플립의 조합으로서 구현될 수 있다.
2. 블록, 매크로블록 및 타일 공간 계층
a. 데이터의 매크로블록 내의 미러 플립을 실행하기 위해, 수정된 변환 블록은 더 늦게 인버스된 시퀀스에서(요청에 따라 X 및/또는 Y에서) 스캐닝된다. 이와 유사하게, 타일 내에서 수정된 매크로블록은 더 늦게 인버스된 순서로 스캐닝되고, 이미지 내에서 수정된 타일은 더 늦게 인버스된 순서로 스캐닝된다.
b. 전치를 실행하기 위해, 수정된 블록, 매크로블록 및 타일이 전치된다. 카디널 회전은 전치 및 미러 플립의 조합으로서 구현될 수 있다.
3. 확장된 크롭 영역(extended crop area) 내의 내접된 영역(inscribed area)의 시그널링 - 이는 비-매크로블록 정렬 이미지의 자유로운 미러 플립 또는 회전 및 단지 우측 및 하부만이 아닌 임의의 방향으로 허용되는 매크로블록 그리드로부터의 이미지의 비-제로 옵셋을 허용한다.
4. 크로마 샘플의 위치의 시그널링 - 이는 크로마 샘플의 위치의 독립적인 w지정을 허용하여 회전되는 YUV4:2:0 및 YUV4:2:2와 같은 크로마 서브-샘플링된 컬러 포맷을 허용한다. 이는 또한 디코더로 시그널링되는 루마/크로마 샘플 위치의 상대적인 정렬을 허용하여서, 적절한 페이지를 가지는 업샘플링 필터가 선택될 수 있다.
크로마 샘플의 위치의 시그널링은 아래에서 상세하게 개시된다. 개시되는 시그널링 기술은 정보의 손실이 없고 압축 크기의 큰 변경 없이 압축 영역 내에서 이미지가 회전하도록 한다. 이는 바람직한 비트스트림 태양이고 복합적인 장점을 가진다.
A. 크로마 센터링
이미지는 데이터의 복수의 평면을 포함한다. 주된 공간에서, 이미지는 통상적으로 각각 적색, 녹색 및 청색(R, G, B) 채널에 대응하는 3색 평면으로 구성된다. 가장 대중적인 코덱에서 사용되는 내부 컬러 공간에서, 이미지는 Y, U 및 V로 지칭되는 3개의 변환된 컬러 평면으로 구성된다. 대략적으로 Y 성분은 이미지의 흑백 렌더링에 대응하는 휘도 또는 루마(luma) 평면이라 불리운다. U 및 V 성분은 크로마 또는 색차 평면(color difference planes)으로 지칭된다. 명칭 Y, U, V는 개시되는 기술 및 도구가 YCbCr, YCoCg 등과 같은 다양한 "YUV 유형" 컬러 포맷에 적용될 수 있다는 것을 감안하여 본 명세서에서 포괄적인 개념으로 사용된다. YUV 4:4:4라 불리우는 컬러 포맷은 각각의 Y 샘플에 대하여 하나의 U 및 하나의 V 샘플을 가진다.
사람 눈은 휘도 채널의 강도 변이와 해상도에 매우 민감하다. 이는 상대적으로 색차에는 덜 민감하다. 이는 크로마(U 및 V) 성분의 해상도를 떨어트리거나 서브-샘플링하여 데이터의 픽셀 개수를 감소시키는 단순한 방식을 가능하게 한다.
2개의 크로마 서브-샘플링 기술이 유명하다.
1. YUV 4:2:2, X 방향의 U 및 V의 공간 해상도를 (언제나 일부 안티-앨리어싱 필터로) 2배 감소시킨다.
2. YUV 4:2:0, X 및 Y 양방향의 U 및 V의 공간 해상도를 2배 감소시킨다.
YUV 4:2:2 경우에, 각 크로마 샘플은 2개의 루마 샘플에 대응한다. 이와 유사하게, YUV 4:2:0 경우에, 각 크로마 샘플은 4개의 루마 샘플에 대응한다. 크로마 서브샘플링은 언제나 안티-앨리어싱 필터로 샘플을 필터링한 이후에 수행된다.
이와 같은 필터의 페이즈는 크로마 및 루마 샘플의 상대적인 위치를 결정한다.
디스플레이 또는 인쇄를 위한 목적으로 이와 같은 포맷으로부터 YUV 4:4:4로 다시 변환할 때, 적절한 업샘플링 필터가 사용될 수 있도록 상대적인 샘플 위치의 정보를 사용가능할 것이다.
이와 같은 문제에 대한 하나의 접근법은 사용되어야 하는 정확한 업샘플링 필터를 지시 또는 신호하는 것이다. 그러나, 이와 같은 접근법은 시스템 상의 추가적인 요건을 강제하고 기술분야의 다른 부분과 호환되지 않을 수 있다.
서브-샘플링된 버전으로부터 전체 해상도 데이터를 어떻게 복원하는지 지시하는 더 단순하고 더 유연한 해결책은 루마 및 크로마 샘플의 정렬에 관한 "위치" 정보의 시그널링에 의한다. 이와 같은 접근법은 디코더가 자신의 페이즈가 위치 정보와 매칭되는 임의의 업샘플링 필터를 사용하도록 한다.
이와 같은 접근법은 고유의 복원 규칙(예를 들어, 고유의 업샘플링 필터)을 특정하지는 않지만, 충분히 좋은 성능을 가지고 광범위하게 통용된다.
서브-샘플링된 데이터 점의 "위치"는 전체 해상도 그리드 내의 값의 위치 또는 페이즈이다. 위치 정보는 페이즈 제한에 부합하는 업샘플링 필터들 사이에서 선택을 행하기 위해 사용된다. 위치 정보는 일반적으로 2차원이다(수평 방향 및 수직 방향 모두에서의 이동이 지정된다). 도 2 및 3은 YUV 4:2:0에 대하여 사용되는 2개의 일반적인 크로마 위치 규칙의 예시를 도시한다. 도 2에서, 루마 픽셀 단위로 페이즈 = (0, 0), 도 3에서 루마 픽셀 단위로 페이즈 = (0.5, 0.5)이다.
B. 이미지 회전/ 플립으로의 크로마 센터링
도 2및 도 3에 도시되는 2개의 예시는 크로마의 YUV 4:2:0 서브-샘플링의 가장 일반적인 사례이다. 이와 같은 2개의 센터링 규칙은 비디오 데이터에 대해서는 언제나 충분하지만 이미지 데이터에 대해서는 언제나 불충분하다. 비디오와 이미지의 차이는 비디오는 드물게 회전 또는 미러 플립되는 반면에, 이미지는 매우 자주 회전 및/또는 미러 플립된다는 것이다.
다음의 사례를 고려하여 2개의 센터링 규칙이 이미지 데이터에 대해서 언제나 불충분한 이유를 살펴본다.
사례 1: 예시 1에 대하여 수평 방향을 따라 미러 플립하는 것을 가정한다. 크로마 샘플은 좌측 상부 루마 샘플과는 같은 곳에 위치하지 않지만 상부 우측 루마 샘플과는 같은 곳에 위치한다. 크로마의 대응하는 페이즈는 루마 픽셀 단위로 (1, 0)이고, 이는 도 2 및 3에 도시되는 규칙에 의해 정의되지 않는다.
사례 2: 이와 유사하게, 예시 1에 도시되는 크로마 위치에 대한 이미지의 수직 방향으로의 미러 플립은 루마 픽셀 단위로 (0, 1) 페이지인 크로마 위치를 야기하고 이는 도 2 및 3에 도시되는 규칙에 의해 정의되지 않는다.
상기의 사례는 이미지가 카디널 회전 및 미러 플립의 기본 동작을 겪을 때 정확한 복원을 돕기 위해 비트스트림에 대한 부가적인 정보로서 추가적인 크로마 센터링 규칙 정의의 유용성을 보여준다.
C. 인터레이스 데이터로의 크로마 센터링
인터레이스 비디오에 의해 다른 복잡성이 도입된다. 인터레이스 비디오의 프레임은 2개의 필드(상부 필드 및 하부 필드)를 포함한다. 비디오의 필드는 크로마 다운샘플링없이 자신의 전체 해상도로 저장될 수 있다. 더욱 통상적으로, 이는 크로마가 X 방향으로 2배로 다운샘플링되어 Y 방향의 루마 해상도와 매칭되는 YUV 4:2:2와 같은 크로마 다운샘플링된 형식으로 수행된다. 그러나 최신 비디오 코덱에서, 인터레이스 비디오의 필드는 YUV 4:2:0 공간에서 정의되어서 이의 크로마는 X 및 Y 양방향으로 2배로 다운샘플링된다.
이러한 동작은 이것이 상부 필드 데이터인지 하부 필드 데이터인지에 따라서 각각 수직 방향으로 0.25 또는 0.75(루마 픽셀 단위)의 페이즈 이동이 있는 크로마 센터링을 야기한다. 이러한 센터링은 다음을 보증하기 위해 사용될 수 있다.
1. 프레임의 크로마의 대안적인 선이 대안적인 필드에 의해 생성된다. 크로마 센터링은 프레임의 연속적인 선에 걸쳐 균일하다.
인터레이스 데이터의 크로마 다운샘플링은 도 4에 도시된다. X 축 다운샘플링은 임의의 페이즈를 가질 수 있고 이러한 논의와 관련이 없다. 따라서, 도면은 오직 Y 축 센터링 및 이동만을 도시한다.
D. 크로마 위치
상기의 사항을 염두에 두고, 크로마 위치에 대한 2가지 규칙을 정의한다. 단축 규칙으로 지칭되는 제1 규칙은 15개의 크로마 센터링 페이즈를 정의한다. 이 러한 규칙은 이미지 비트스트림 내의 4비트 워드를 사용하여 시그널링된다. 테이블 1은 일실시예의 구문 요소 CHROMA_CENTERING_SHORT의 값과 대응하는 페이즈를 열거한다. 테이블 1에 도시된 예시에서, CHROMA_CENTERING_SHORT는 0에서 15 사이의 값을 취할 수 있으나, 값 14는 비축되고(reserved) 사용되지 않는다.
CHROMA_CENTERING_SHORT는, 예를 들어 이미지 헤더 또는 이미지 평면 헤더에서 시그널링될 수 있다.
CHROMA_CENTERING_SHORT X 페이즈 = 0 Y 페이즈 = 0.5 X 페이즈 = 1
Y 페이즈 = 0 0 10 1
Y 페이즈 = 0.25 6 12 7
Y 페이즈 = 0.5 4 15 5
Y 페이즈 = 0.75 8 13 9
Y 페이즈 = 1 2 11 3
테이블 1 : CHROMA_CENTERING_SHORT의 값 및 대응하는 페이즈의 목록
확장 규칙으로 지칭되는, 더 포괄적인 제2 크로마 센터링 규칙이 또한 개시된다. 이러한 규칙은 이미지가 픽셀의 임의의 정수로 데이터의 손실없이 변형되도록 한다. 이는 회전 및 미러 플립에도 적용된다.
일실시예에서, 확장 규칙은 이미지 비트스트림 내의 7비트 워드(CHROMA_CENTERING_LONG)로 시그널링되고, 구문 요소 CHROMA_CENTERING_LONG에 대응하는 페이즈의 목록은 다음과 같다. CHROMA_CENTERING_LONG = CHROMA_CENTERING_X + CHROMA_CENTERING_Y * 9, 식에서 CHROMA_CENTERING_X 및 CHROMA_CENTERING_Y는 아래의 도 2에서 도시되는 바와 같이 X 및 Y 방향의 페이즈를 정의하는 구문 요소이다. CHROMA_CENTERING_X 및 CHROMA_CENTERING_Y는 0에서 8 사이의 값을 취한다. 따라서, CHROMA_CENTERING_LONG은 0에서 80 사이의 값을 취할 수 있다. 이 범위를 넘어서는 값들은 비축된다. CHROMA_CENTERING_LONG, CHROMA_CENTERING_X 및/또는 CHROMA_CENTERING_Y는, 예를 들어 이미지 헤더 또는 이미지 평면 헤더에서 시그널링될 수 있다.
CHROMA_CENTERING X 또는 Y 페이즈 X 또는 Y
8 -0.5
7 -0.25
0 0
1 0.25
2 0.5
3 0.75
4 1.0
5 1.25
6 1.5
테이블 2 : CHROMA_CENTERING_X 및 CHROMA_CENTERING_Y의 값 및 대응하는
페이즈의 목록
테이블 1 및 2를 대신하여 다른 맵핑을 사용하는 것도 가능하다. 가변 길이 코드와 같은 CHROMA_CENTERING 요소의 다른 인코딩을 사용하는 것도 가능하다.
3. 블록 변환-기반 코딩
변환 코딩은 많은 디지털 미디어(예를 들어, 오디오, 이미지 및 비디오) 압축 시스템에 사용되는 압축 기술이다. 압축되지 않은 디지털 이미지 및 비디오는 통상적으로 2차원(2D) 그리드에 배치되는 이미지 또는 비디오 프레임의 위치에서 화소(picture elements) 또는 컬러의 샘플로서 표현되거나 또는 캡쳐된다. 이는 이미지 또는 비디오의 공간-영역 표현으로 지칭된다. 예를 들어, 이미지에 대한 통상적인 포맷은 그리드로서 배치되는 24비트 컬러 화소 샘플의 스트림을 포함한다. 각각의 샘플은 RGM 또는 YIQ 등과 같은 컬러 공간 내의 그리드의 픽셀 위치에서 컬러 성분을 표현하는 숫자이다. 다양한 이미지 및 비디오 시스템은 샘플링의 다양한 상이한 컬러, 공간 및 시간 해상도를 사용할 수 있다. 이와 유사하게, 디지털 오디오는 통상적으로 타임-샘플링된 오디오 시그널 스트림으로서 표현된다. 예를 들어, 통상적인 오디오 포맷은 규칙적인 시간 간격에서 수집된 오디오 신호의 16비트 진폭 샘플의 스트림을 포함한다.
압축되지 않은 디지털 오디오, 이미지 및 비디오 신호는 상당한 저장 및 전송 용량을 소모할 수 있다. 변환 코딩은 신호의 공간-영역 표현을 주파수-영역(또는 다른 유사한 변환 영역) 표현으로 변환하고, 변환 영역 표현의 특정한 일반적으로 덜 인식되는 주파수 성분의 해상도를 감소시켜서 디지털 오디오, 이미지 및 비디오의 크기를 감소시킨다. 이는 일반적으로 공간 영역의 이미지 또는 비디오 또는 시간 영역의 오디오의 컬러 또는 공간 해상도를 감소시키는 것과 비교해서 디지털 신호를 훨씬 더 인식하지 못하게 저하시킨다.
보다 구체적으로, 도 5에 도시되는 통상적인 블록 변환-기반 인코더/디코더 시스템(500)("코덱"으로도 불림)은 압축되지 않은 디지털 이미지의 픽셀을 고정된-크기의 2차원 블록(X1,...Xn)으로 분할하며, 각 블록은 다른 블록과 오버래핑(overlapping)될 수 있다. 인코더(510)에서, 선형 변환(520-521)은 블록 내의 공간 샘플을 일반적으로 블록 간격에 걸쳐 대응하는 주파수 대역의 디지털 신호의 세기를 표현하는 주파수(혹은 변환) 계수의 집합으로 변환하는, 각 블록에 적용되는 공간-주파수 분석을 수행한다. 압축을 위해, 변환 계수는 선택적으로 양자화(530)될 수 있고(예를 들어, 계수 값의 촤하위 비트를 버리거나 그렇지 않으면 더 높은 해상도 숫자 집합의 값을 더 낮은 해상도로 맵핑하는 것과 같이, 해상도를 감소시킴), 또한 압축 데이터 스트림 내로 엔트로피(entropy) 또는 가변-길이 코드화(530)될 수 있다. 디코딩에서, 변환 계수는 원래의 컬러/공간 샘플된 이미지/비디오 신호를 거의 정확하게 복원하기 위해 역으로 변환(570, 571)한다(복원된 블록
Figure 112009049659310-PCT00001
,...
Figure 112009049659310-PCT00002
).
블록 변환(520-521)은 크기 N의 벡터 X 상의 수학적인 연산으로서 정의될 수 있다. 대단히 자주, 연산은 y = M x(M은 변환 매트릭스)인 변환 영역 출력을 생성하는 선형 곱셉이다. 입력 데이터가 임의의 길이일 때, N 크기 벡터로 분할되고 블록 변환은 각 분할된 부분에 적용된다. 데이터 압축을 위해, 가역적인 블록 변환이 선택된다. 다시 말하면, 행렬 M은 가역적(invertible)이다. 복수의 차원에서(예를 들어, 이미지 및 비디오에 대하여), 블록 변환은 통상적으로 별개의 연산으로서 구현된다. 행렬 곱셉은 데이터의 각 차원을 따라(즉, 행과 열 모두) 개별적으로 적용된다.
압축을 위해, 변환 계수(벡터 Y의 성분)는 선택적으로 양자화될 수 있고(예를 들어, 계수 값의 촤하위 비트를 버리거나 그렇지 않으면 더 높은 해상도 숫자 집합의 값을 더 낮은 해상도로 맵핑하는 것과 같이, 해상도를 감소시킴), 또한 압축 데이터 스트림 내로 엔트로피 또는 가변-길이 코드화(530)될 수 있다.
디코더(550)의 디코딩에서, 이러한 연산의 역(역양자화/엔트로피 디코딩(560) 및 역 블록 변환(570-571))이 도 5에 도시되는 바와 같이 디코더(550) 측 에 적용된다. 데이터를 복원하는 동안, 역행렬 M-1(역변환(570-571))은 변환 영역 데이터에 대한 승수(multiplier)로서 적용된다. 변환 영역 데이터에 적용될 때, 역변환은 원래의 시간-영역 또는 공간-영역 디지털 미디어를 거의 정확하게 복원한다.
많은 블록 변환-기반 코딩 애플리케이션에서, 변환은 양자화 인자에 따라 유손실(lossy) 및 무손실 압축 모두를 지원하기에 바람직하도록 가역적이다. 예시에 대한 양자화(일반적으로 1의 양자화 인자로서 표현됨)가 없이, 가역 변환을 활용하는 코덱은 정확히 디코딩에서 입력 데이터를 재생한다. 그러나, 이러한 애플리케이션의 가역성 요건은 설계될 수 있는 코덱에 따라 변환의 선택을 제한한다.
MPEG 및 윈도우 미디어 등과 같은 많은 이미지 및 비디오 압축 시스템은 DCT(Discrete Cosine Transform)에 기초한 변환을 활용한다. DCT는 거의 최적의 데이터 압축을 야기하는 유리한 에너지 집중성(energy compaction properties)을 가지는 것으로 알려져 있다. 이러한 압축 시스템에서, 역 DCT(IDCT)는 개별적인 이미지 블록을 복원하기 위해 압축 시스템의 인코더 및 디코더 모두의 복원 루프에 사용된다.
4. 예시적인 인코더/디코더 구현
도 6 및 7은 대표적인 2차원(2D) 데이터 인코더(600) 및 디코더(700)에 채용되는 과정의 일반화된 도면이다. 본 도면은 개시된 기술 및 도구를 구현하기 위해 사용될 수 있는 압축/압축해제 시스템의 일반화되거나 또는 단순하된 예시를 제공 한다. 대안적인 압축/압축해제 시스템에서, 이러한 대표적인 인코더 및 디코더에 예시된 것보다 더 많거나 또는 더 적은 과정이 2D 데이터 압축을 위해 사용될 수 있다. 예를 들어, 일부 인코더/디코더는 또한 컬러 변환, 컬러 포맷, 스케일러블 코딩(scalable coding), 무손실 코딩, 매크로블록 모드 등을 포함할 수 있다. 압축 시스템(인코더 및 디코더)은 무손실에서 유손실로 변동하는 양자화 파라미터에 기초할 수 있는 양자화에 따라 무손실 및/또는 유손실 2D 데이터의 압축을 제공할 수 있다.
2D 데이터 인코더(600)는 인코더의 입력으로서 제공되는 2D 데이터(610)의 (통상적인 입력을 위한) 더 간결한 표현인 압축 비트스트림(620)을 생성한다. 예를 들어, 2D 데이터 입력은 이미지, 비디오 시퀀스의 프레임 또는 2차원을 가지는 다른 데이터가 될 수 있다. 2D 데이터 인코더는 도시된 예시에서 입력 데이터의 프레임을 프레임의 평면에 걸쳐 규칙적인 패턴을 형성하는 비-오버래핑 4x4 픽셀 블록인 블록으로 분할한다(도 6에서 일반적으로 부분화(partitioning; 630)로서 도시됨). 이러한 블록은 이러한 대표적인 인코더의 16x16 픽셀 크기인, 매크로블록으로 불리우는 클러스터에 그룹화된다. 순서대로, 매크로블록은 타일이라 불리우는 규칙적인 구조로 그룹화된다. 이러한 타일은 또한 수평 열의 타일들이 균일한 높이로 정렬되고 수직 행의 타일들이 균일한 너비로 정렬되도록 이미지에 걸쳐 규칙적인 패턴을 형성한다. 이러한 대표적인 인코더에서, 타일은 수평 및/또는 수직 방향으로 16의 배수인 임의의 크기가 될 수 있다. 대안적인 인코더 구현은 이미지를 블록, 매크로블록, 타일 또는 다른 크기 및 구조의 다른 유닛으로 분할할 수 있 다.
블록 변환(650)을 사용해서 각각의 4x4 블록이 변환된 이후에, "순방향 중첩(forward overlap)" 연산자(640)는 블록들 사이의 각 에지에 적용된다. 이러한 블록 변환(650)은 2004년 12월 17일 출원된, Srinivasan의 미국 특허출원 제11/015,707호, "Reversible Transform For Lossy And Lossless 2-D Data Compression"에 의해 개시되는 가역적인, 스케일-프리(scale-free) 2D 변환일 수 있다. 중첩 연산자(640)는 2004년 12월 17일 출원된, Tu 등의 미국 특허출원 제11/015,148호, "Reversible Overlap Operator for Efficient Lossless Data Compression" 및 2005년 1월 14일 출원된, Tu 등의 미국 특허출원 제11/035,991호, "Reversible 2-Dimensional Pre-/Post-Filtering For Lapped Biorthogonal Transform"에 개시되는 가역적인 중첩 연산자가 될 수 있다. 대안적으로, 이산 코사인 변환 또는 다른 블록 변환 및 중첩 연산자가 사용될 수 있다. 변환에 이어서, 각 4x4 변환 블록의 DC 계수(660)는 유사한 연쇄 과정(타일링, 순방향 중첩에 이어서 4x4 블록 변환)을 겪는다. 결과적인 DC 변환 계수 및 AC 변환 계수(662)는 양자화(670)되고, 엔트로피 코딩화(680)되고, 패킷화(690)된다.
디코더는 역과정을 수행한다. 디코더 측에서, 변환 계수 비트는 이로부터 계수가 디코딩(720)되고 역양자화(730)되는 자신의 각각의 패킷으로부터 추출된다(710). DC 계수(740)는 역변환을 적용하여 재생성되고, DC 계수의 평면은 DC 블록 에지에 걸쳐 적용되는 적절한 평활화 연산자(smoothing operator)를 사용하여 "역 오버래핑(inverse overlapped)"된다. 후속적으로, 전체 데이터는 4x4 역변 환(750)을 비트스트림으로부터 디코딩된 DC 계수 및 AC 계수(742)에 적용하여 재생성된다. 마지막으로, 결과적인 이미지 평면의 블록 에지는 역 중첩 필터링(inverse overlap filtered; 760)된다. 이는 복원된 2D 데이터 출력(790)을 생성한다.
예시적인 실시예에서, 도 6의 인코더(600)는 입력 이미지를 압축 비트스트림(620)(예를 들어, 파일)으로 압축하고, 도 7의 디코더(700)는 무손실 코딩이 사용되는지 유손실 코딩이 사용되는지에 따라 본래의 입력 또는 이의 근사치를 복원한다. 인코딩의 과정은 아래에서 또한 상세하게 개시되는 가역적인 2차원 프리-/포스트-필터링으로 구현되는 아래에서 논의되는 순방향 LT(forward lapped transform)의 적용을 포함한다. 디코딩 과정은 가역적인 2차원 프리-/포스트-필터링을 사용하는 역 LT(inverse lapped transform)의 적용을 포함한다.
예시되는 LT 및 ILT는 정확한 의미에서 서로의 역변환이고, 따라서 가역적인 랩핑 변환(lapped transform)으로서 통칭될 수 있다. 가역적인 변환으로서, LT/ILT 쌍은 무손실 이미지 압축에 사용될 수 있다.
도시된 인코더(600)/디코더(700)에 의해 압축되는 입력 데이터(610)는 다양한 컬러 포맷(예를 들어, RGB/YUV4:4:4, YUV4:2:2 또는 YUV4:2:0 컬러 이미지 포맷들)의 이미지가 될 수 있다. 통상적으로, 입력 이미지는 언제나 휘도(Y) 성분을 가진다. 이것이 RGB/YUV4:4:4, YUV4:2:2 또는 YUV4:2:0 이미지라면, 이미지는 또한 U 성분과 V 성분과 같은 색차 성분을 가진다. 이미지의 개별적인 컬러 평면 또는 성분은 상이한 공간 해상도를 가질 수 있다. 예를 들어 YUV 4:2:0 컬러 포맷의 입력 이미지의 경우에, U 및 V 성분은 Y 성분의 너비와 높이의 절반을 가진다.
상기에서 논의한 바와 같이, 인코더(600)는 입력 이미지 또는 화상을 매크로블록으로 타일링한다. 예시적인 실시예에서, 인코더(600)는 입력 이미지를 (컬러 포맷에 따라 U 및 V 채널의 16x16, 16x8 또는 8x8 영역이 될 수 있는) Y 채널의 ("매크로블록"이라 불리우는) 16x16 픽셀 영역으로 타일링한다. 각 매크로블록 컬러 평면은 4x4 픽셀 영역 또는 블록으로 타일링된다. 따라서, 매크로블록은 이러한 예시적인 인코더 실시예에 대해 다음의 방식으로 다양한 컬러 포맷에 대하여 구성된다.
● 흑백 이미지에 대하여, 각 매크로블록은 16개의 4x4 휘도(Y) 블록을 포함한다.
● YUV4:2:0 포맷 컬러 이미지에 대하여, 각 매크로블록은 16개의 4x4 Y 블록, 및 4개의 4x4 색차(U 및 V) 블록을 포함한다.
● YUV4:2:2 포맷 컬러 이미지에 대하여, 각 매크로블록은 16개의 4x4 Y 블록, 및 8개의 4x4 색차(U 및 V) 블록을 포함한다.
● RGB 또는 YUV4:4:4 컬러 이미지에 대하여, 각 매크로블록은 Y, U 및 V 채널 각각의 16개의 블록을 포함한다.
따라서, 변환 이후에 이러한 대표적인 인코더(600)/디코더(700)의 매크로블록은 3개의 주파수 부대역(sub bands)(DC 부대역(DC 매크로블록), 저역 통과 부대역(저역 통과 매크로블록) 및 고역 통과 부대역(고역 통과 매크로블록))을 가진다. 이러한 대표적인 시스템에서, 저역 통과 및/또는 고역 통과 부대역은 비트스트림에 서 선택적이다(이러한 부대역은 전체적으로 버려질 수 있다).
더 나아가, 압축 데이터는 2개의 순서(공간 순서 및 주파수 순서) 중 하나로 비트스트림 내로 팩킹될 수 있다. 공간 순서에 대하여, 타일 내의 동일한 매크로블록의 상이한 부대역은 서로 순서지어지고, 각각의 타일의 결과적인 비트스트림은 하나의 패킷에 기록된다. 주파수 순서에 대하여, 타일 내의 상이한 매크로블록으로부터 동일한 부대역이 서로 그룹지어지고, 따라서 타일의 비트스트림이 3개의 패킷(DC 타일 패킷, 저역 통과 타일 패킷 및 고역 통과 타일 패킷)으로 기록된다. 추가적으로, 다른 데이터 계층이 있을 수 있다.
따라서, 대표적인 시스템에 대하여 이미지는 다음의 "차원"에서 체계화된다.
● 공간 차원: 프레임 -> 타일 -> 매크로블록;
● 주파수 차원: DC | 저역 통과 | 고역 통과; 및
● 채널 차원: 휘도 | 색차_0 | 색차_1...(예를 들어, Y | U | V)
상기의 화살표는 계층을 나타내는 반면에, 수직 바는 구분(partitioning)을 나타낸다.
대표적인 시스템이 공간, 주파수 및 채널 차원에서 압축 디지털 매체를 체계화하지만, 본 명세서에 개시된 유연한 양자화 접근법이 더 적거나, 더 많거나 또는 다른 차원의 데이터를 체계화하는 대안적인 인코더/디코더 시스템에서 적용될 수 있다. 예를 들어, 유연한 양자화 접근법은 주파수 대역의 더 많은 개수, 컬러 채널의 다른 포맷(예를 들어, YIQ, RGB 등), 추가적인 이미지 채널(예를 들어, 스테레오 비젼 또는 다른 복수의 카메라 배열)을 사용해서 코딩에 적용될 수 있다.
다양한 실시예를 참조하여 본 발명의 사상이 개시되었지만, 이러한 사상을 벗어나지 않으면서 다양한 실시예의 배치 및 세부사항을 수정할 수 있다는 것을 이해할 수 있다. 본 명세서에 개시되는 프로그램, 과정 또는 방법은, 명시적으로 개시되지 않은 이상 컴퓨팅 환경의 임의의 특정한 유형과 관련되거나 이에 한정되지 않는다. 다양한 유형의 범용 컴퓨터 또는 전용 컴퓨팅 환경은 본 명세서에서 개시되는 기술에 따라 사용되거나 또는 동작을 수행할 수 있다. 소프트웨어에서 나타나는 실시예의 구성요소는 하드웨어에서 구현될 수 있고 이의 역도 마찬가지이다.
개시되는 발명의 사상이 적용될 수 있는 많은 가능한 실시예에 대하여, 예시되는 실시예는 오직 발명의 바람직한 예시일뿐이며 본 발명의 범위를 한정하는 것으로 해석되지 않는다. 더 나아가, 본 발명의 범위는 다음의 청구항에 의해 정의된다. 따라서, 본 청구항의 사상 및 범주에 속하는 모든 변형 및 변경을 본 발명으로서 청구한다.

Claims (24)

  1. 이미지에 대한 디지털 이미지 데이터를 수신하는 단계 - 상기 디지털 이미지 데이터는 다운샘플링된 크로마 정보(chroma information)를 포함함 -;
    크로마 위치 정보를 X 차원의 페이즈 정보 및 Y 차원의 페이즈 정보와 맵핑하는 크로마 위치 규칙에 따라 상기 다운샘플링된 크로마 정보에 대한 상기 크로마 위치 정보를 결정하는 단계 - 상기 크로마 위치 규칙은 상기 이미지의 수평 및 수직 플립핑(flipping) 또는 회전을 용이하게 함 -;
    인코딩된 비트스트림의 하나 이상의 구문 요소로 상기 크로마 위치 정보를 나타내는 단계; 및
    상기 인코딩된 비트스트림을 출력하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 크로마 정보는 하나 이상의 차원에서 2배로 다운샘플링되는 방법.
  3. 제1항에 있어서,
    상기 X 차원의 상기 페이즈 정보는 1/2-픽셀-유닛 페이즈 정보(half-pixel-unit phase information)를 포함하는 방법.
  4. 제1항에 있어서,
    상기 Y 차원 또는 상기 X 차원의 상기 페이즈 정보는 1/4-픽셀-유닛 페이즈 정보(quarter-pixel-unit phase information)를 포함하는 방법.
  5. 제1항에 있어서,
    상기 크로마 위치 규칙은 상기 크로마 위치 정보를 X 페이즈 위치들 0, 0.5 및 1과 Y 페이즈 위치들 0, 0.25, 0.5, 0.75 및 1을 포함하는 크로마 센터링 페이즈들(chroma centering phases)로 맵핑하고, 상기 페이지 위치들은 픽셀 단위인 방법.
  6. 제1항에 있어서,
    상기 하나 이상의 구문 요소는 상기 X 차원의 상기 페이즈 정보 및 상기 Y 차원의 상기 페이즈 정보를 나타내는 단일 구문 요소(single syntax element)를 포함하는 방법.
  7. 제1항에 있어서,
    상기 하나 이상의 구문 요소는 상기 X 차원의 상기 페이즈 정보를 나타내는 제1 구문 요소 및 상기 Y 차원의 상기 페이즈 정보를 나타내는 제2 구문 요소를 포함하는 방법.
  8. 제1항에 있어서,
    상기 디지털 이미지 데이터는 인터레이스 디지털 이미지 데이터(interlaced digital image data)를 포함하는 방법.
  9. 제1항에 있어서,
    상기 크로마 위치 규칙은 상기 크로마 위치 정보를 페이즈 위치들 -0.5, -0.25, 0, 0.25, 0.5, 0.75, 1, 1.25 및 1.5를 포함하는 크로마 센터링 페이즈들로 맵핑하고, 상기 페이지 위치들은 픽셀 단위인 방법.
  10. 제9항에 있어서,
    상기 크로마 위치 규칙은 또한 픽셀들의 정수로 이미지의 변환을 용이하게 하는 방법.
  11. 제1항에 있어서,
    상기 다운샘플링된 크로마 정보를 업샘플링하기 위하여 상기 크로마 위치 정보를 사용하는 단계를 더 포함하는 방법.
  12. 이미지에 대한 인코딩된 디지털 이미지를 수신하는 단계 - 상기 인코딩된 디지털 이미지 데이터는 크로마 정보를 포함함 -;
    다운샘플링된 크로마 정보에 대한 크로마 위치 정보를 디코딩하는 단계 - 상 기 크로마 위치 정보는 상기 이미지의 수평 및 수직 플립핑 또는 회전을 용이하게 하기 위하여 상기 크로마 위치 정보를 X 차원의 페이즈 정보 및 Y 차원의 페이즈 정보와 맵핑하는 크로마 위치 규칙에 따라 결정됨 -; 및
    디코딩된 비트스트림을 출력하는 단계
    를 포함하는 방법.
  13. 제12항에 있어서,
    상기 크로마 정보는 하나 이상의 차원에서 2배로 다운샘플링되는 방법.
  14. 제12항에 있어서,
    상기 X 차원의 상기 페이즈 정보는 1/2-픽셀-유닛 페이즈 정보를 포함하는 방법.
  15. 제12항에 있어서,
    상기 Y 차원 또는 상기 X 차원의 상기 페이즈 정보는 1/4-픽셀-유닛 페이즈 정보를 포함하는 방법.
  16. 제12항에 있어서,
    상기 크로마 위치 정보를 디코딩하는 상기 단계는 하나 이상의 구문 요소를 디코딩하는 단계를 포함하고, 상기 하나 이상의 구문 요소는 상기 X 차원의 상기 페이즈 정보와 상기 Y 차원의 상기 페이즈 정보 모두를 나타내는 단일 구문 요소를 포함하는 방법.
  17. 제12항에 있어서,
    상기 크로마 위치 정보를 디코딩하는 상기 단계는 하나 이상의 구문 요소를 디코딩하는 단계를 포함하고, 상기 하나 이상의 구문 요소는 상기 X 차원의 상기 페이즈 정보를 나타내는 제1 구문 요소와 상기 Y 차원의 상기 페이즈 정보를 나타내는 제2 구문 요소를 포함하는 방법.
  18. 제12항에 있어서,
    상기 다운샘플링된 크로마 정보를 업샘플링하기 위하여 상기 크로마 위치 정보를 사용하는 단계를 더 포함하는 방법.
  19. 압축 이미지에 대한 압축 디지털 이미지 데이터를 수신하는 단계 - 상기 압축 디지털 이미지 데이터는 다운샘플링된 이미지 채널 정보를 포함함 -;
    복수의 사용가능한 위치 규칙 중 제1 위치 규칙에 따라 상기 다운샘플링된 이미지 채널 정보에 대한 이미지 채널 위치 정보를 결정하는 단계 - 상기 복수의 사용가능한 위치 규칙의 각각은 상기 이미지의 수평 및 수직 플립핑 또는 회전을 용이하게 하기 위하여 상기 이미지 채널 위치 정보를 X 차원의 페이즈 정보와 Y 차원의 페이즈 정보로 맵팽하기 위함임 -; 및
    압축 이미지의 수평 플립, 수직 플립, 또는 회전을 수행하기 위해 상기 이미지 채널 위치 정보를 사용하는 단계
    를 포함하는 방법.
  20. 제19항에 있어서,
    상기 다운샘플링된 이미지 채널 정보는 다운샘플링된 크로마 정보를 포함하고, 상기 이미지 채널 위치 정보는 크로마 위치 정보를 포함하는 방법.
  21. 이미지에 대한 인코딩된 디지털 이미지 데이터를 수신하는 단계 - 상기 인코딩된 디지털 이미지 데이터는 크로마 정보를 포함함 -;
    다운샘플링된 크로마 정보에 대한 크로마 위치 정보를 디코딩하는 단계; 및
    변환 중에 있는 상기 수신된 디지털 이미지 데이터(the received digital image data under a transformation)의 적어도 부분을 재-인코딩하는 단계 - 상기 변환은 수평 플립, 수직 플립, 회전 또는 크롭(crop)임 -;
    를 포함하고,
    상기 재-인코딩은 상기 변환을 반영하기 위해 상기 크로마 위치 정보를 수정하는 단계를 포함하는 방법.
  22. 제21항에 있어서,
    상기 재-인코딩은 무손실 인코딩을 포함하는 방법.
  23. 제21항에 있어서,
    상기 재-인코딩은 유손실 인코딩(lossy encoding)을 포함하는 방법.
  24. 제21항에 있어서,
    상기 재-인코딩은 변환 영역 인코딩을 포함하는 방법.
KR1020097016983A 2007-02-21 2008-02-20 크로마 샘플 위치 정보의 시그널링 및 사용 KR101465817B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US89103007P 2007-02-21 2007-02-21
US60/891,030 2007-02-21
US11/772,070 2007-06-29
US11/772,070 US8054886B2 (en) 2007-02-21 2007-06-29 Signaling and use of chroma sample positioning information

Publications (2)

Publication Number Publication Date
KR20090123861A true KR20090123861A (ko) 2009-12-02
KR101465817B1 KR101465817B1 (ko) 2014-12-11

Family

ID=39706639

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097016983A KR101465817B1 (ko) 2007-02-21 2008-02-20 크로마 샘플 위치 정보의 시그널링 및 사용

Country Status (11)

Country Link
US (1) US8054886B2 (ko)
EP (1) EP2123057B1 (ko)
JP (1) JP5149310B2 (ko)
KR (1) KR101465817B1 (ko)
CN (1) CN101617540B (ko)
BR (1) BRPI0807189B1 (ko)
HK (1) HK1140342A1 (ko)
IL (1) IL199957A (ko)
RU (1) RU2518406C2 (ko)
TW (1) TWI454154B (ko)
WO (1) WO2008103774A2 (ko)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8880571B2 (en) * 2006-05-05 2014-11-04 Microsoft Corporation High dynamic range data format conversions for digital media
US8369638B2 (en) 2008-05-27 2013-02-05 Microsoft Corporation Reducing DC leakage in HD photo transform
US8447591B2 (en) * 2008-05-30 2013-05-21 Microsoft Corporation Factorization of overlapping tranforms into two block transforms
US8275209B2 (en) 2008-10-10 2012-09-25 Microsoft Corporation Reduced DC gain mismatch and DC leakage in overlap transform processing
US8194977B2 (en) * 2008-12-09 2012-06-05 Microsoft Corporation Remote desktop protocol compression acceleration using single instruction, multiple dispatch instructions
EP2392144A1 (en) 2009-01-29 2011-12-07 Dolby Laboratories Licensing Corporation Methods and devices for sub-sampling and interleaving multiple images, eg stereoscopic
US20110026593A1 (en) * 2009-02-10 2011-02-03 New Wei Lee Image processing apparatus, image processing method, program and integrated circuit
US20100226437A1 (en) * 2009-03-06 2010-09-09 Sony Corporation, A Japanese Corporation Reduced-resolution decoding of avc bit streams for transcoding or display at lower resolution
KR101066117B1 (ko) * 2009-11-12 2011-09-20 전자부품연구원 스케일러블 영상 코딩 방법 및 장치
US9712847B2 (en) 2011-09-20 2017-07-18 Microsoft Technology Licensing, Llc Low-complexity remote presentation session encoder using subsampling in color conversion space
JP5653328B2 (ja) * 2011-09-26 2015-01-14 株式会社東芝 画像処理装置及び画像処理システム
FR2989856B1 (fr) * 2012-04-23 2014-11-28 Assistance Tech Et Etude De Materiels Electroniques Compression/decompression progressive d'un flux numerique video comprenant au moins une image entrelacee
US10448032B2 (en) 2012-09-04 2019-10-15 Qualcomm Incorporated Signaling of down-sampling location information in scalable video coding
US9979960B2 (en) 2012-10-01 2018-05-22 Microsoft Technology Licensing, Llc Frame packing and unpacking between frames of chroma sampling formats with different chroma resolutions
US9661340B2 (en) 2012-10-22 2017-05-23 Microsoft Technology Licensing, Llc Band separation filtering / inverse filtering for frame packing / unpacking higher resolution chroma sampling formats
US20140198855A1 (en) * 2013-01-14 2014-07-17 Qualcomm Incorporated Square block prediction
KR20160132857A (ko) * 2014-03-14 2016-11-21 삼성전자주식회사 스케일러블 비디오 부호화/복호화 방법 및 장치
EP3155585A1 (en) * 2014-06-12 2017-04-19 A2Zlogix, Inc. Transmission and restoration of decimated image data
US10412387B2 (en) 2014-08-22 2019-09-10 Qualcomm Incorporated Unified intra-block copy and inter-prediction
US9918105B2 (en) * 2014-10-07 2018-03-13 Qualcomm Incorporated Intra BC and inter unification
US10405000B2 (en) * 2014-11-21 2019-09-03 Vid Scale, Inc. One-dimensional transform modes and coefficient scan order
US9854201B2 (en) 2015-01-16 2017-12-26 Microsoft Technology Licensing, Llc Dynamically updating quality to higher chroma sampling rate
US9749646B2 (en) 2015-01-16 2017-08-29 Microsoft Technology Licensing, Llc Encoding/decoding of high chroma resolution details
KR102440941B1 (ko) 2015-03-03 2022-09-05 삼성전자주식회사 이미지 처리 정보에 따라 크기와 방향을 갖는 초기 위상을 계산할 수 있는 이미지 처리 장치들
US10368080B2 (en) 2016-10-21 2019-07-30 Microsoft Technology Licensing, Llc Selective upsampling or refresh of chroma sample values

Family Cites Families (88)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5776634A (en) 1980-10-31 1982-05-13 Hitachi Ltd Digital signal processor
US4626825A (en) 1985-07-02 1986-12-02 Vlsi Technology, Inc. Logarithmic conversion apparatus
USRE35910E (en) 1989-05-11 1998-09-29 Matsushita Electric Industrial Co., Ltd. Moving image signal encoding apparatus and decoding apparatus
JP3191935B2 (ja) 1990-11-30 2001-07-23 株式会社日立製作所 画像符号化方法、画像符号化装置、画像復号化方法
JP3303869B2 (ja) 1990-11-30 2002-07-22 株式会社日立製作所 画像符号化方法、画像符号化装置、画像復号化方法
US5611038A (en) 1991-04-17 1997-03-11 Shaw; Venson M. Audio/video transceiver provided with a device for reconfiguration of incompatibly received or transmitted video and audio information
US5414469A (en) 1991-10-31 1995-05-09 International Business Machines Corporation Motion video compression system with multiresolution features
US5257215A (en) 1992-03-31 1993-10-26 Intel Corporation Floating point and integer number conversions in a floating point adder
GB9224952D0 (en) 1992-11-28 1993-01-20 Ibm Improvements in image processing
US5467134A (en) 1992-12-22 1995-11-14 Microsoft Corporation Method and system for compressing video data
US5544286A (en) 1993-01-29 1996-08-06 Microsoft Corporation Digital video data compression technique
KR970000683B1 (ko) 1993-05-31 1997-01-16 삼성전자 주식회사 해상도 가변 적응적 화상압축/복원방법 및 장치
US5465118A (en) 1993-12-17 1995-11-07 International Business Machines Corporation Luminance transition coding method for software motion video compression/decompression
JP2933487B2 (ja) * 1994-07-15 1999-08-16 松下電器産業株式会社 クロマフォーマット変換の方法
US5828421A (en) 1994-10-11 1998-10-27 Hitachi America, Ltd. Implementation efficient digital picture-in-picture decoding methods and apparatus
US5821986A (en) 1994-11-03 1998-10-13 Picturetel Corporation Method and apparatus for visual communications in a scalable network environment
JPH08163562A (ja) * 1994-12-06 1996-06-21 Matsushita Electric Ind Co Ltd 映像信号処理装置
US6002801A (en) 1995-04-18 1999-12-14 Advanced Micro Devices, Inc. Method and apparatus for improved video decompression by selection of IDCT method based on image characteristics
US5864637A (en) 1995-04-18 1999-01-26 Advanced Micro Devices, Inc. Method and apparatus for improved video decompression by selective reduction of spatial resolution
US5699124A (en) 1995-06-28 1997-12-16 General Instrument Corporation Of Delaware Bandwidth efficient communication of user data in digital television data stream
US5825929A (en) 1995-10-05 1998-10-20 Microsoft Corporation Transformation block optimization method
US6957350B1 (en) 1996-01-30 2005-10-18 Dolby Laboratories Licensing Corporation Encrypted and watermarked temporal and resolution layering in advanced television
US5737023A (en) 1996-02-05 1998-04-07 International Business Machines Corporation Hierarchical motion estimation for interlaced video
US6246787B1 (en) 1996-05-31 2001-06-12 Texas Instruments Incorporated System and method for knowledgebase generation and management
JP3466032B2 (ja) 1996-10-24 2003-11-10 富士通株式会社 動画像符号化装置および復号化装置
US5801975A (en) 1996-12-02 1998-09-01 Compaq Computer Corporation And Advanced Micro Devices, Inc. Computer modified to perform inverse discrete cosine transform operations on a one-dimensional matrix of numbers within a minimal number of instruction cycles
US6256347B1 (en) 1996-12-17 2001-07-03 Thomson Licensing S.A. Pixel block compression apparatus in an image processing system
US6259810B1 (en) 1997-04-15 2001-07-10 Microsoft Corporation Method and system of decoding compressed image data
KR19980082906A (ko) 1997-05-09 1998-12-05 김영환 부동 소수점 숫자의 정수형으로의 변환 방법
SE509582C2 (sv) * 1997-06-05 1999-02-08 Telia Ab System vid telekommunikationsnät
JPH11122624A (ja) 1997-10-16 1999-04-30 Matsushita Electric Ind Co Ltd ビデオデコーダ処理量を低減する方法および装置
US6061782A (en) 1997-11-29 2000-05-09 Ip First Llc Mechanism for floating point to integer conversion with RGB bias multiply
CN1138420C (zh) 1997-12-01 2004-02-11 松下电器产业株式会社 图象处理器、图象数据处理器和可变长度代码解码器
US6519288B1 (en) 1998-03-06 2003-02-11 Mitsubishi Electric Research Laboratories, Inc. Three-layer scaleable decoder and method of decoding
US6560285B1 (en) 1998-03-30 2003-05-06 Sarnoff Corporation Region-based information compaction as for digital images
US6239815B1 (en) 1998-04-03 2001-05-29 Avid Technology, Inc. Video data storage and transmission formats and apparatus and methods for processing video data in such formats
US5995122A (en) 1998-04-30 1999-11-30 Intel Corporation Method and apparatus for parallel conversion of color values from a single precision floating point format to an integer format
DE69918980T2 (de) 1998-05-14 2005-08-11 Interval Research Corp., Palo Alto Videokompression mit speicherreduktion, farbrotation und kombinierter signal- und blockrandfilterung
US6983018B1 (en) 1998-11-30 2006-01-03 Microsoft Corporation Efficient motion vector coding for video compression
US6563953B2 (en) 1998-11-30 2003-05-13 Microsoft Corporation Predictive image compression using a single variable length code for both the luminance and chrominance blocks for each macroblock
US6418166B1 (en) 1998-11-30 2002-07-09 Microsoft Corporation Motion estimation and block matching pattern
US6259741B1 (en) * 1999-02-18 2001-07-10 General Instrument Corporation Method of architecture for converting MPEG-2 4:2:2-profile bitstreams into main-profile bitstreams
US6499060B1 (en) 1999-03-12 2002-12-24 Microsoft Corporation Media coding for loss recovery with remotely predicted data units
US6115031A (en) 1999-04-23 2000-09-05 Lexmark International, Inc. Method of converting color values
US6396422B1 (en) 1999-06-09 2002-05-28 Creoscitex Corporation Ltd. Methods for quantizing and compressing digital image data
US20020145610A1 (en) 1999-07-16 2002-10-10 Steve Barilovits Video processing engine overlay filter scaler
EP1145563A1 (en) * 1999-10-28 2001-10-17 Koninklijke Philips Electronics N.V. Color video encoding method based on a wavelet decomposition
AU2578001A (en) 1999-12-10 2001-06-18 Broadcom Corporation Apparatus and method for reducing precision of data
JP3474173B2 (ja) 2000-02-25 2003-12-08 株式会社ソニー・コンピュータエンタテインメント 画像出力装置に応じた画像データを作成する情報処理装置およびそのための記録媒体
JP3593944B2 (ja) 2000-03-08 2004-11-24 日本電気株式会社 画像データ処理装置及びそれに用いる動き補償処理方法
US6510177B1 (en) 2000-03-24 2003-01-21 Microsoft Corporation System and method for layered video coding enhancement
US6647061B1 (en) 2000-06-09 2003-11-11 General Instrument Corporation Video size conversion and transcoding from MPEG-2 to MPEG-4
US6438168B2 (en) 2000-06-27 2002-08-20 Bamboo Media Casting, Inc. Bandwidth scaling of a compressed video stream
US6961063B1 (en) 2000-06-30 2005-11-01 Intel Corporation Method and apparatus for improved memory management of video images
KR100370076B1 (ko) 2000-07-27 2003-01-30 엘지전자 주식회사 다운 컨버젼 기능을 갖는 비디오 디코더 및 비디오 신호를디코딩 하는 방법
US6937291B1 (en) 2000-08-31 2005-08-30 Intel Corporation Adaptive video scaler
DE10048735A1 (de) 2000-09-29 2002-04-11 Bosch Gmbh Robert Verfahren zur Codierung und Decodierung von Bildsequenzen sowie Einrichtungen hierzu
US6606418B2 (en) 2001-01-16 2003-08-12 International Business Machines Corporation Enhanced compression of documents
US6898323B2 (en) 2001-02-15 2005-05-24 Ricoh Company, Ltd. Memory usage scheme for performing wavelet processing
US8374237B2 (en) 2001-03-02 2013-02-12 Dolby Laboratories Licensing Corporation High precision encoding and decoding of video images
US6850571B2 (en) 2001-04-23 2005-02-01 Webtv Networks, Inc. Systems and methods for MPEG subsample decoding
US7206453B2 (en) 2001-05-03 2007-04-17 Microsoft Corporation Dynamic filtering for lossy compression
US7242717B2 (en) 2001-06-08 2007-07-10 Sharp Laboratories Of America, Inc. Wavelet domain motion compensation system
AU2002316215A1 (en) 2001-06-08 2002-12-23 University Of Southern California High dynamic range image editing
US8526751B2 (en) 2001-08-24 2013-09-03 International Business Machines Corporation Managing image storage size
DE60135559D1 (de) 2001-11-19 2008-10-09 St Microelectronics Srl Verfahren zur Mischung von digitalen Bildern zur Erzeugung eines digitalen Bildes mit erweitertem Dynamikbereich
US7006699B2 (en) * 2002-03-27 2006-02-28 Microsoft Corporation System and method for progressively transforming and coding digital data
US7136417B2 (en) * 2002-07-15 2006-11-14 Scientific-Atlanta, Inc. Chroma conversion optimization
US6909459B2 (en) 2002-08-21 2005-06-21 Alpha Innotech Corporation Method of and apparatus for extending signal ranges of digital images
US7072394B2 (en) 2002-08-27 2006-07-04 National Chiao Tung University Architecture and method for fine granularity scalable video coding
US7379496B2 (en) 2002-09-04 2008-05-27 Microsoft Corporation Multi-resolution video coding and decoding
SE0300286D0 (sv) 2003-02-05 2003-02-05 Axis Ab Method and apparatus for combining video signals to one comprehensive video signal
US7187811B2 (en) 2003-03-18 2007-03-06 Advanced & Wise Technology Corp. Method for image resolution enhancement
KR20060109247A (ko) * 2005-04-13 2006-10-19 엘지전자 주식회사 베이스 레이어 픽처를 이용하는 영상신호의 엔코딩/디코딩방법 및 장치
US20040190771A1 (en) 2003-03-27 2004-09-30 Michel Eid Integer format for efficient image data processing
US6879731B2 (en) 2003-04-29 2005-04-12 Microsoft Corporation System and process for generating high dynamic range video
JP4207684B2 (ja) 2003-06-27 2009-01-14 富士電機デバイステクノロジー株式会社 磁気記録媒体の製造方法、および、製造装置
JP4617644B2 (ja) * 2003-07-18 2011-01-26 ソニー株式会社 符号化装置及び方法
US7502415B2 (en) 2003-07-18 2009-03-10 Microsoft Corporation Range reduction
US7876974B2 (en) 2003-08-29 2011-01-25 Vladimir Brajovic Method for improving digital images and an image sensor for sensing the same
US8014450B2 (en) * 2003-09-07 2011-09-06 Microsoft Corporation Flexible range reduction
US7519274B2 (en) 2003-12-08 2009-04-14 Divx, Inc. File format for multiple track digital data
US7649539B2 (en) 2004-03-10 2010-01-19 Microsoft Corporation Image formats for video capture, processing and display
US20050243176A1 (en) 2004-04-30 2005-11-03 James Wu Method of HDR image processing and manipulation
JP4609155B2 (ja) 2005-03-30 2011-01-12 セイコーエプソン株式会社 画像圧縮方法、画像圧縮装置、画像圧縮プログラム及び画像読み取り装置
US8036274B2 (en) * 2005-08-12 2011-10-11 Microsoft Corporation SIMD lapped transform-based digital media encoding/decoding
US20070160134A1 (en) * 2006-01-10 2007-07-12 Segall Christopher A Methods and Systems for Filter Characterization
US8880571B2 (en) 2006-05-05 2014-11-04 Microsoft Corporation High dynamic range data format conversions for digital media

Also Published As

Publication number Publication date
KR101465817B1 (ko) 2014-12-11
WO2008103774A3 (en) 2008-10-16
RU2009131597A (ru) 2011-02-27
JP5149310B2 (ja) 2013-02-20
EP2123057B1 (en) 2016-08-03
JP2010521083A (ja) 2010-06-17
IL199957A (en) 2013-07-31
US8054886B2 (en) 2011-11-08
IL199957A0 (en) 2010-04-15
CN101617540B (zh) 2012-09-05
WO2008103774A2 (en) 2008-08-28
BRPI0807189A2 (pt) 2014-05-27
TW200847801A (en) 2008-12-01
US20080198936A1 (en) 2008-08-21
BRPI0807189B1 (pt) 2020-05-26
TWI454154B (zh) 2014-09-21
EP2123057A4 (en) 2011-11-16
EP2123057A2 (en) 2009-11-25
RU2518406C2 (ru) 2014-06-10
HK1140342A1 (en) 2010-10-08
CN101617540A (zh) 2009-12-30

Similar Documents

Publication Publication Date Title
KR101465817B1 (ko) 크로마 샘플 위치 정보의 시그널링 및 사용
US8515194B2 (en) Signaling and uses of windowing information for images
JP4906856B2 (ja) Simd型重複変換ベースのデジタルメディア符号化/復号化
AU2006280178B2 (en) Prediction of transform coefficients for image compression
KR101507183B1 (ko) 변환-기반 디지털 미디어 코덱에서의 계산 복잡도 및 정밀도 제어
RU2412473C2 (ru) Обратимая двумерная предварительная и постфильтрация для перекрывающегося биортогонального преобразования
KR101683313B1 (ko) 중첩 변환 처리에서의 감소된 dc 이득 부정합 및 dc 누설

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20171018

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20181018

Year of fee payment: 5