KR101765429B1 - 화상 처리 장치 및 방법, 및 기록 매체 - Google Patents

화상 처리 장치 및 방법, 및 기록 매체 Download PDF

Info

Publication number
KR101765429B1
KR101765429B1 KR1020167033587A KR20167033587A KR101765429B1 KR 101765429 B1 KR101765429 B1 KR 101765429B1 KR 1020167033587 A KR1020167033587 A KR 1020167033587A KR 20167033587 A KR20167033587 A KR 20167033587A KR 101765429 B1 KR101765429 B1 KR 101765429B1
Authority
KR
South Korea
Prior art keywords
unit
image
filter
processing
prediction
Prior art date
Application number
KR1020167033587A
Other languages
English (en)
Other versions
KR20160143871A (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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=43410941&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=KR101765429(B1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by 소니 주식회사 filed Critical 소니 주식회사
Publication of KR20160143871A publication Critical patent/KR20160143871A/ko
Application granted granted Critical
Publication of KR101765429B1 publication Critical patent/KR101765429B1/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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/004Predictors, e.g. intraframe, interframe 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/103Selection of coding mode or of prediction mode
    • 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/117Filters, e.g. for pre-processing or post-processing
    • 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/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/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Picture Signal Circuits (AREA)

Abstract

본 발명은, 화상이나 비트 레이트에 따른 노이즈 제거를 행할 수 있도록 하는 화상 처리 장치 및 방법에 관한 것이다. 로우패스 필터 설정부(93)는, 내장하는 필터 계수 메모리(94)에 기억되어 있는 필터 계수 중에서 인트라 예측 모드 정보 및 양자화 파라미터에 대응하는 필터 계수를 설정한다. 인접 화소 설정부(81)는, 로우패스 필터 설정부(93)에 의해 설정된 필터 계수를 이용하여, 프레임 메모리(72)로부터의 대상 블록의 인접 화소값에 대하여 필터 처리를 실시한다. 예측 화상 생성부(82)는, 인접 화소 설정부(81)로부터의 필터 처리된 인접 화소값을 이용해서 인트라 예측을 행하여 예측 화상을 생성한다. 본 발명은, 예를 들면, H. 264/AVC 방식으로 부호화하는 화상 부호화 장치에 적용할 수 있다.

Description

화상 처리 장치 및 방법, 및 기록 매체{IMAGE PROCESSING DEVICE AND METHOD, AND RECORDING MEDIUM}
본 발명은 화상 처리 장치 및 방법에 관한 것으로, 특히, 화상이나 비트 레이트에 따른 노이즈 제거를 실현하고, 예측 효율을 개선할 수 있도록 한 화상 처리 장치 및 방법에 관한 것이다.
최근 들어 화상 정보를 디지털로서 취급하고, 그때 효율이 높은 정보의 전송, 축적을 목적으로 해서 화상 정보 특유의 용장성을 이용하여, 이산 코사인 변환 등의 직교 변환과 움직임 보상에 의해 압축하는 부호화 방식을 채용해서 화상을 압축 부호하는 장치가 보급되고 있다. 상기 부호화 방식에는, 예를 들면 MPEG(Moving Picture Experts Group) 등이 있다.
특히, MPEG2(ISO/IEC 13818-2)는, 범용 화상 부호화 방식으로서 정의되어 있으며, 비월 주사 화상 및 순차 주사 화상의 쌍방, 및 표준 해상도 화상 및 고정밀 화상을 망라하는 표준이다. 예를 들면, MPEG2는, 프로페셔널 용도 및 소비자 용도의 광범위한 어플리케이션에 현재 널리 이용되고 있다. MPEG2 압축 방식을 이용함으로써, 예를 들면 720×480 화소를 갖는 표준 해상도의 비월 주사 화상이면 4 내지 8Mbps의 부호량(비트 레이트)이 할당된다. 또한, MPEG2 압축 방식을 이용함으로써, 예를 들면 1920×1088 화소를 갖는 고해상도의 비월 주사 화상이면 18 내지 22Mbps의 부호량(비트 레이트)이 할당된다. 이에 의해, 높은 압축율과 양호한 화질의 실현이 가능하다.
MPEG2는 주로 방송용에 적합한 고화질 부호화를 대상으로 하고 있었는데, MPEG1보다 낮은 부호량(비트 레이트), 즉 보다 높은 압축율의 부호화 방식에는 대응하지 않았다. 휴대 단말기의 보급에 의해, 금후 그러한 부호화 방식의 요구는 높아질 것으로 생각되며, 이에 대응해서 MPEG4 부호화 방식의 표준화가 행해졌다. 화상 부호화 방식에 관해서는, 1998년 12월에 ISO/IEC 14496-2로서 그 규격이 국제 표준으로 승인되었다.
또한 최근, 당초 텔레비전 회의용의 화상 부호화를 목적으로 하여, H. 26L(ITU-T Q6/16 VCEG)이라는 표준의 규격화가 진행되고 있다. H. 26L은 MPEG2나 MPEG4와 같은 종래의 부호화 방식에 비해, 그 부호화, 복호화에 보다 많은 연산량이 요구되지만, 보다 높은 부호화 효율이 실현되는 것으로 알려져 있다. 또한 현재, MPEG4의 활동의 일환으로서, 상기 H. 26L을 기초로, H. 26L에서는 서포트되지 않는 기능도 도입하여, 보다 높은 부호화 효율을 실현하는 표준화가 Joint Model of Enhanced-Compression Video Coding으로서 행해지고 있다. 표준화의 스케줄로는, 2003년 3월에는 H. 264 및 MPEG-4 Part 10(Advanced Video Coding, 이하, H. 264/AVC라고 기재함)이라는 국제 표준으로 되어 있다.
또한, 그 확장으로서 RGB나 4:2:2, 4:4:4와 같은 업무용에 필요한 부호화 툴이나, MPEG-2로 규정되어 있었던 8×8 DCT나 양자화 매트릭스도 포함한 FRExt(Fidelity Range Extension)의 표준화가 2005년 2월에 완료되었다. 이에 의해, H. 264/AVC를 이용하여, 영화에 포함되는 필름 노이즈도 양호하게 표현할 수 있는 부호화 방식이 되어, Blu-Ray Disc(상표) 등의 폭넓은 어플리케이션에 이용되게 된 것이다.
그러나 최근, 하이비젼 화상의 4배인 4000×2000 화소 정도의 화상을 압축하고자 한, 더 한층의 고압축률 부호화에 대한 요구가 높아지고 있다. 혹은, 인터넷과 같은 한정된 전송 용량의 환경에서 하이비젼 화상을 배신하고자 하는, 더 한층의 고압축율 부호화에 대한 요구가 높아지고 있다. 이 때문에, 상술한 ITU-T 산하의 VCEG(=Video Coding Expert Group)에 있어서, 부호화 효율의 개선에 관한 검토가 계속해서 행해지고 있다.
여기서, H. 264/AVC 방식이, 종래의 MPEG2 방식 등에 비해 높은 부호화 효율을 실현하는 요인의 하나로서 인트라 예측 방식의 채용을 들 수 있다.
인트라 예측 방식에 있어서, 휘도 신호에 대해서는, 9종류의 4×4 화소 및 8×8 화소의 블록 단위, 및 4종류의 16×16 화소의 매크로 블록 단위의 인트라 예측 모드가 정해져 있다. 색차 신호에 대해서는, 4종류의 8×8 화소의 블록 단위의 인트라 예측 모드가 정해져 있다. 색차 신호의 인트라 예측 모드는, 휘도 신호의 인트라 예측 모드와 독립적으로 설정이 가능하다.
이러한 인트라 예측 후의 잔차의 양상에는, 인트라 예측 모드마다 특정한 패턴이 존재한다.
이와 같은 용장성을 배제하고 더욱 부호화 효율을 높이는 방법으로서, 비특허 문헌 1에서는 이하와 같은 방법이 제안되어 있다.
즉, 미리 오프라인 처리에서, 훈련 신호를 이용하여 통상적인 H. 264/AVC 방식에 의해 인트라 화상의 부호화 처리가 행해지고, 각각의 블록에 대한 인트라 예측 모드마다 카루넨 루베 변환 등의 직교 변환이 행해져, 최적의 변환 계수가 산출된다.
그리고, 실제의 부호화 처리에서, H. 264/AVC 방식으로 정해져 있는 직교 변환 대신에, 상술한 카루넨 루베 변환에 의해 모드마다 최적화된 직교 변환 계수를 이용한 처리가 행해진다.
또한, 비특허 문헌 2에는, 상술한 인트라 예측을 인터 예측에 조합하는 방법도 제안되어 있다.
즉, 비특허 문헌 2에서는, 인터 예측에서 구해진 움직임 벡터 정보에 대하여, 대상 블록뿐만 아니라, 대상 블록 주변의 인접 화소값에 관해서도 차분 정보가 생성된다. 이와 같이 생성된 대상 블록에 관한 차분 정보와 인접 화소에 관한 차분 정보의 사이에서, 인트라 예측이 실시됨으로써 2차 차분 정보가 생성된다. 그리고, 생성된 2차 차분 정보가 직교 변환 및 양자화되어, 압축 화상과 함께 후단에 출력된다.
이에 의해, 부호화 효율이 더 향상된다.
또한 상술한 바와 같이, H. 264/AVC 방식에서, 매크로 블록 크기는 16×16 화소다. 그러나, 매크로 블록 크기를 16×16 화소로 하는 것은, 차세대 부호화 방식의 대상이 되는 UHD(Ultra High Definition; 4000×2000 화소)와 같은 큰 화소 프레임에 대해서는 최적이지 못하다.
따라서, 비특허 문헌 3 등에서는, 매크로 블록 크기를, 예를 들면 32×32 화소와 같은 크기로 확장하는 것도 제안되어 있다.
비특허 문헌 1 : "Improved Intra Coding", VCEG-AF15, ITU-Telecommunications Standardization Sector STUDY GROUP Question 6 Video coding Experts Group(VCEG), 20-21 April 2007 비특허 문헌 2 : "Second Order Prediction (SOP) in P Slice", Sijia Chen, JinpengWang, Shangwen Li and, Lu Yu, VCEG-AD09, ITU-Telecommunications Standardization Sector STUDY GROUP Question 6 Video coding Experts Group(VCEG), 16-18 July 2008 비특허 문헌 3 : "Video Coding Using Extended Block Sizes", VCEG-AD09, ITU-Telecommunications Standardization Sector STUDY GROUP Question 16- Contribution 123, Jan 2009
그런데, H. 264/AVC 방식에서는, 상술한 8×8 화소의 블록 단위의 인트라 예측을 행함에 앞서, 인접 화소의 화소값의 로우 패스 필터 처리가 행해지고 있다. 이에 의해, 인접 화소에 포함되는 잡음이 제거되고, 상관을 높일 수 있으므로, 보다 높은 부호화 효율의 실현을 가능하게 하고 있다.
그러나, 잡음이 포함되는 정도는, 입력 화상이나 양자화 파라미터값, 인트라 예측 모드에 따라서도 상이한 것임에도 불구하고, H. 264/AVC 방식에서는, 잡음을 제거하기 위한 로우 패스 필터가 고정된 것이었다. 즉, 상기 로우 패스 필터는, 입력 화상, 양자화 파라미터값, 인트라 예측 모드 등에 따른 최적의 것은 아니었다.
또한, H. 264/AVC 방식에 있어서, 상술한 인접 화소의 화소값의 잡음 제거를 행하는 것은, 8×8 화소의 블록 단위의 인트라 예측 모드뿐이며, 다른 모드에 대해 적용되지 않았다.
본 발명은, 이러한 상황을 감안하여 이루어진 것으로, 화상이나 비트 레이트에 따른 노이즈 제거를 실현하고, 예측 효율을 개선시키는 것이다.
본 발명의 제1 측면의 화상 처리 장치는, 복호 처리의 대상이 되는 대상 블록의 화상을 복호하는 복호 수단과, 상기 대상 블록에 대응하여, 상기 대상 블록의 인트라 예측에 이용되는, 상기 대상 블록의 인접 화소에 실시하는 필터 처리에 이용되는 계수를 부호화 파라미터에 따라 설정하는 필터 설정 수단과, 상기 인접 화소에 대하여, 상기 필터 설정 수단에 의해 설정된 상기 계수를 이용해서 상기 필터 처리를 실시하여, 상기 대상 블록의 인트라 예측을 행하는 인트라 예측 수단을 구비한다.
상기 부호화 파라미터는, 상기 대상 블록의 인트라 예측 모드, 또는, 상기 대상 블록의 양자화 파라미터를 포함하고, 상기 복호 수단은, 상기 대상 블록의 인트라 예측 모드, 또는, 상기 대상 블록의 양자화 파라미터를 복호하고, 상기 필터 설정 수단은, 상기 복호 수단에 의해 복호된 인트라 예측 모드, 또는, 상기 복호 수단에 의해 복호된 양자화 파라미터에 따라 상기 계수를 설정할 수 있다.
상기 계수를 기억하는 필터 계수 기억 수단을 더 구비하고, 상기 계수는, 학습 화상에 있어서, 부호화 처리의 대상이 되는 학습 블록과, 상기 학습 블록의 인트라 예측 모드, 또는, 상기 학습 블록의 양자화 파라미터에 대응해서 상기 학습 블록에 대해 인트라 예측이 행해짐으로써 얻어지는 예측 화상의 잔차가 최소가 되도록 산출되어, 상기 필터 계수 기억 수단에 기억된 것이며, 상기 필터 설정 수단은, 상기 필터 계수 기억 수단에 기억되어 있는 상기 계수 중에서, 상기 대상 블록의 인트라 예측 모드, 또는, 상기 대상 블록의 양자화 파라미터에 대응하는 것을 상기 계수로서 설정할 수 있다.
상기 필터 계수 기억 수단은, 상기 계수를, 프로세서의 레지스터 길이에 따라 n비트(n은 정수)의 값으로서 유지할 수 있다.
상기 복호 수단은, 상기 필터 처리가 실시되기 전의 상기 인접 화소가 이용되어, 상기 대상 블록에 대해서 인트라 예측이 행해짐으로써 얻어지는 예측 화상과의 잔차가 최소가 되도록 부호화측에서 산출되고, 상기 대상 블록과, 상기 대상 블록의 인트라 예측 모드, 또는, 상기 대상 블록의 양자화 파라미터에 대응해서 설정된 상기 계수를 복호하고, 상기 필터 설정 수단은, 상기 복호 수단에 의해 복호된 상기 계수 중에서, 상기 대상 블록의 인트라 예측 모드, 또는, 상기 대상 블록의 양자화 파라미터에 대응하는 것을 상기 계수로서 설정할 수 있다.
상기 계수는, 필터 계수와 오프셋 값으로 구성될 수 있다.
상기 필터 계수는, 3탭으로 구성될 수 있다.
상기 필터 계수는, 0 위상에 대한 계수를 중심으로 하여 대칭성을 가질 수 있다.
상기 복호 수단은, 상기 대상 블록의 인트라 예측 모드를 복호하고, 상기 필터 설정 수단은, 인트라 예측 모드 중, 수직 모드 또는 수평 모드를 제1 클래스로 하고, 그것들 이외의 모드를 제2 클래스로 하여, 상기 대상 블록의 인트라 예측 모드가 상기 제1 클래스에 속하는 경우, 상기 제1 클래스에 대응하는 상기 계수를 설정하고, 복호된 상기 대상 블록의 인트라 예측 모드가 상기 제2 클래스에 속하는 경우, 상기 제2 클래스에 대응하는 상기 계수를 설정할 수 있다.
상기 인접 화소에 대하여, 상기 필터 처리를 행할지를 나타내는 플래그 정보를 수취하는 수취 수단을 더 구비하고, 상기 필터 설정 수단은, 상기 수취 수단에 의해 수취된 플래그 정보에 기초하여, 상기 인접 화소에 대하여 상기 필터 처리를 행할지를 설정할 수 있다.
상기 수취 수단은, 매크로 블록 단위의 상기 플래그 정보를 수취하고, 상기 필터 설정 수단은, 상기 수취 수단에 의해 수취된 플래그 정보에 기초하여, 매크로 블록 단위로, 상기 인접 화소에 대하여 상기 필터 처리를 행할지를 설정할 수 있다.
상기 수취 수단은, 블록 단위의 상기 플래그 정보를 수취하고, 상기 필터 설정 수단은, 상기 수취 수단에 의해 수취된 플래그 정보에 기초하여, 블록 단위로, 상기 인접 화소에 대하여 상기 필터 처리를 행할지를 설정할 수 있다.
본 발명의 제1 측면의 화상 처리 방법은, 화상 처리 장치가, 복호 처리의 대상이 되는 대상 블록의 화상을 복호하고, 상기 대상 블록에 대응하여 상기 대상 블록의 인트라 예측에 이용되는, 상기 대상 블록의 인접 화소에 실시하는 필터 처리에 이용되는 계수를 부호화 파라미터에 따라 설정하고, 상기 인접 화소에 대하여, 설정된 상기 계수를 이용해서 상기 필터 처리를 실시하여, 상기 대상 블록의 인트라 예측을 행하는 스텝을 포함한다.
본 발명의 제2 측면의 화상 처리 장치는, 부호화 처리의 대상이 되는 대상 블록을 대상으로 하여, 상기 대상 블록의 인트라 예측에 이용되는, 상기 대상 블록의 인접 화소에 실시하는 필터 처리에 이용되는 계수를 부호화 파라미터에 따라 설정하는 필터 설정 수단과, 상기 인접 화소에 대하여, 상기 필터 설정 수단에 의해 설정된 상기 계수를 이용해서 상기 필터 처리를 실시하여, 상기 대상 블록의 인트라 예측을 행하는 인트라 예측 수단과, 상기 대상 블록의 화상을 부호화하는 부호화 수단을 구비한다.
상기 부호화 파라미터는, 상기 대상 블록의 인트라 예측 모드, 또는, 상기 대상 블록의 양자화 파라미터를 포함하고, 상기 필터 설정 수단은, 상기 대상 블록의 인트라 예측 모드, 또는, 상기 대상 블록의 양자화 파라미터에 따라 상기 계수를 설정하고, 상기 부호화 수단은, 대응하는 상기 대상 블록의 인트라 예측 모드, 또는, 상기 대상 블록의 양자화 파라미터를 부호화할 수 있다.
상기 계수를 기억하는 필터 계수 기억 수단을 더 구비하고, 상기 계수는, 학습 화상에 있어서, 부호화 처리의 대상이 되는 학습 블록과, 상기 학습 블록의 인트라 예측 모드, 또는, 상기 학습 블록의 양자화 파라미터에 대응해서 상기 학습 블록에 대해서 인트라 예측이 행해짐으로써 얻어지는 예측 화상의 잔차가 최소가 되도록 산출되어, 상기 필터 계수 기억 수단에 기억된 것이며, 상기 필터 설정 수단은, 상기 필터 계수 기억 수단에 기억되어 있는 상기 계수 중에서, 상기 대상 블록의 인트라 예측 모드, 또는, 상기 대상 블록의 양자화 파라미터에 대응하는 것을 상기 계수로서 설정할 수 있다.
상기 대상 블록과, 상기 대상 블록의 인트라 예측 모드, 또는, 상기 대상 블록의 양자화 파라미터에 대응해서 상기 필터 처리가 실시되기 전의 상기 인접 화소가 이용되어, 상기 대상 블록에 대해서 인트라 예측이 행해짐으로써 얻어지는 예측 화상의 잔차가 최소가 되도록 상기 계수를 산출하는 필터 계수 산출 수단을 더 구비하고, 상기 필터 설정 수단은, 상기 필터 계수 산출 수단에 의해 산출된 상기 계수 중에서, 상기 대상 블록의 인트라 예측 모드, 또는, 상기 대상 블록의 양자화 파라미터에 대응하는 것을 상기 계수로서 설정하고, 상기 부호화 수단은, 또한 상기 계수를 부호화할 수 있다.
상기 계수는, 필터 계수와 오프셋 값으로 구성될 수 있다.
상기 필터 설정 수단은, 상기 인접 화소에 대하여 상기 필터 처리를 행할지를 설정하고, 상기 부호화 수단은, 상기 필터 설정 수단에 의해 설정된 상기 필터 처리를 행할지를 나타내는 플래그 정보를 부호화할 수 있다.
본 발명의 제2 측면의 화상 처리 방법은, 화상 처리 장치가, 부호화 처리의 대상이 되는 대상 블록을 대상으로 하여, 상기 대상 블록의 인트라 예측에 이용되는, 상기 대상 블록의 인접 화소에 실시하는 필터 처리에 이용되는 계수를 부호화 파라미터에 따라 설정하고, 상기 인접 화소에 대하여, 설정된 상기 계수를 이용해서 상기 필터 처리를 실시하여 상기 대상 블록의 인트라 예측을 행하고, 상기 대상 블록의 화상을 부호화하는 스텝을 포함한다.
본 발명의 제1 측면에서는, 복호 처리의 대상이 되는 대상 블록의 화상이 복호되고, 상기 대상 블록에 대응하여 상기 대상 블록의 인트라 예측에 이용되는, 상기 대상 블록의 인접 화소에 실시하는 필터 처리에 이용되는 계수가 부호화 파라미터에 따라 설정된다. 그리고, 상기 인접 화소에 대하여, 설정된 상기 계수를 이용해서 상기 필터 처리가 실시되어, 상기 대상 블록의 인트라 예측이 행해진다.
본 발명의 제2 측면에서는, 부호화 처리의 대상이 되는 대상 블록을 대상으로 하여, 상기 대상 블록의 인트라 예측에 이용되는, 상기 대상 블록의 인접 화소에 실시하는 필터 처리에 이용되는 계수가 부호화 파라미터에 따라 설정된다. 그리고, 상기 인접 화소에 대하여, 설정된 상기 계수를 이용해서 상기 필터 처리가 실시되어, 상기 대상 블록의 인트라 예측이 행해지고, 상기 대상 블록의 화상이 부호화된다.
또한, 상술한 화상 처리 장치의 각각은, 독립된 장치이어도 좋고, 1개의 화상 부호화 장치 또는 화상 복호 장치를 구성하고 있는 내부 블록이어도 된다.
제1의 본 발명에 따르면 화상을 복호 할 수 있다. 또한, 제2의 본 발명에 따르면, 화상이나 비트 레이트에 따른 노이즈 제거를 행할 수 있다.
제2의 본 발명에 따르면 화상을 부호화할 수 있다. 또한, 제1의 본 발명에 따르면, 화상이나 비트 레이트에 따른 노이즈 제거를 행할 수 있다.
도 1은 본 발명을 적용한 화상 부호화 장치의 일 실시 형태의 구성을 도시하는 블록도다.
도 2는 16×16 화소의 인트라 예측 모드의 경우의 처리 순서를 설명하는 도면이다.
도 3은 휘도 신호의 4×4 화소의 인트라 예측 모드의 종류를 나타내는 도면이다.
도 4는 휘도 신호의 4×4 화소의 인트라 예측 모드의 종류를 나타내는 도면이다.
도 5는 4×4 화소의 인트라 예측의 방향을 설명하는 도면이다.
도 6은 4×4 화소의 인트라 예측을 설명하는 도면이다.
도 7은 휘도 신호의 4×4 화소의 인트라 예측 모드의 부호화를 설명하는 도면이다.
도 8은 휘도 신호의 8×8 화소의 인트라 예측 모드의 종류를 나타내는 도면이다.
도 9는 휘도 신호의 8×8 화소의 인트라 예측 모드의 종류를 나타내는 도면이다.
도 10은 휘도 신호의 16×16 화소의 인트라 예측 모드의 종류를 나타내는 도면이다.
도 11은 휘도 신호의 16×16 화소의 인트라 예측 모드의 종류를 나타내는 도면이다.
도 12는 16×16 화소의 인트라 예측을 설명하는 도면이다.
도 13은 색차 신호의 인트라 예측 모드의 종류를 나타내는 도면이다.
도 14는 도 1의 인트라 예측부 및 인접 화소 내삽 필터 전환부의 구성예를 도시하는 블록도다.
도 15는 필터 계수의 산출에 대해서 설명하는 도면이다.
도 16은 도 1의 화상 부호화 장치의 부호화 처리를 설명하는 플로우차트다.
도 17은 도 16의 스텝 S21의 예측 처리를 설명하는 플로우차트다.
도 18은 도 17의 스텝 S31의 인트라 예측 처리를 설명하는 플로우차트다.
도 19는 도 17의 스텝 S32의 인터 움직임 예측 처리를 설명하는 플로우차트다.
도 20은 도 1의 인트라 예측부 및 인접 화소 내삽 필터 전환부의 다른 구성예를 도시하는 블록도다.
도 21은 도 17의 스텝 S31의 인트라 예측 처리의 다른 예를 설명하는 플로우차트다.
도 22는 본 발명을 적용한 화상 복호 장치의 일 실시 형태의 구성을 도시하는 블록도다.
도 23은 도 22의 인트라 예측부 및 인접 화소 내삽 필터 전환부의 구성예를 도시하는 블록도다.
도 24는 도 22의 화상 복호 장치의 복호 처리를 설명하는 플로우차트다.
도 25는 도 24의 스텝 S138의 예측 처리를 설명하는 플로우차트다.
도 26은 도 22의 인트라 예측부 및 인접 화소 내삽 필터 전환부의 다른 구성예를 도시하는 블록도다.
도 27은 도 24의 스텝 S138의 예측 처리의 다른 예를 설명하는 플로우차트다.
도 28은 본 발명을 적용한 학습 장치의 일 실시 형태의 구성을 도시하는 블록도다.
도 29는 도 28의 인트라 예측부 및 인접 화소 내삽 필터 산출부의 구성예를 도시하는 블록도다.
도 30은 도 28의 학습 장치에 의한 인트라 예측 처리를 설명하는 플로우차트다.
도 31은 본 발명을 적용한 화상 부호화 장치의 다른 실시 형태의 구성을 도시하는 블록도다.
도 32는 2차 예측 처리를 설명하는 도면이다.
도 33은 본 발명을 적용한 화상 복호 장치의 다른 실시 형태의 구성을 도시하는 블록도다.
도 34는 본 발명을 적용한 화상 부호화 장치의 또 다른 실시 형태의 구성을 도시하는 블록도다.
도 35는 도 34의 인트라 예측부의 구성예를 도시하는 블록도다.
도 36은 도 17의 스텝 S31의 인트라 예측 처리의 다른 예를 설명하는 플로우차트다.
도 37은 도 17의 스텝 S31의 인트라 예측 처리의 또 다른 예를 설명하는 플로우차트다.
도 38은 도 17의 스텝 S31의 인트라 예측 처리의 다른 예를 설명하는 플로우차트다.
도 39는 본 발명을 적용한 화상 복호 장치의 또 다른 실시 형태의 구성을 도시하는 블록도다.
도 40은 도 39의 인트라 예측부 및 인접 화소 내삽 필터 제어부의 구성예를 도시하는 블록도다.
도 41은 도 24의 스텝 S138의 예측 처리의 또 다른 예를 설명하는 플로우차트다.
도 42는 본 발명을 적용한 화상 부호화 장치의 다른 실시 형태의 구성을 도시하는 블록도다.
도 43은 본 발명을 적용한 화상 복호 장치의 다른 실시 형태의 구성을 도시하는 블록도다.
도 44는 확장된 블록 크기의 예를 도시하는 도면이다.
도 45는 컴퓨터의 하드웨어의 구성예를 도시하는 블록도다.
도 46은 본 발명을 적용한 텔레비전 수상기의 주된 구성예를 도시하는 블록도다.
도 47은 본 발명을 적용한 휴대 전화기의 주된 구성예를 도시하는 블록도다.
도 48은 본 발명을 적용한 하드디스크 레코더의 주된 구성예를 도시하는 블록도다.
도 49는 본 발명을 적용한 카메라의 주된 구성예를 도시하는 블록도다.
이하, 도면을 참조하여 본 발명의 실시 형태에 대해서 설명한다. 또한, 설명은 이하의 순서로 행한다.
1. 제1 실시 형태 (인접 화소 내삽 필터 전환: 인트라 예측의 예)
2. 제2 실시 형태 (인접 화소 내삽 필터 전환: 2차 예측의 예)
3. 제3 실시 형태 (인접 화소 내삽필터 온 오프 제어: 인트라 예측의 예)
4. 제4 실시 형태 (인접 화소 내삽 필터 온 오프 제어: 2차 예측의 예)
<1. 제1 실시 형태>
[화상 부호화 장치의 구성예]
도 1은, 본 발명을 적용한 화상 처리 장치로서의 화상 부호화 장치의 일 실시 형태의 구성을 도시하고 있다.
상기 화상 부호화 장치(51)는, 예를 들면, H. 264 및 MPEG-4 Part 10(Advanced Video Coding)(이하, H. 264/AVC라고 기재함) 방식으로 화상을 압축 부호화한다.
도 1의 예에서, 화상 부호화 장치(51)는, A/D 변환부(61), 화면 재배열 버퍼(62), 연산부(63), 직교 변환부(64), 양자화부(65), 가역 부호화부(66), 축적 버퍼(67), 역양자화부(68), 역직교 변환부(69), 연산부(70), 디블록 필터(71), 프레임 메모리(72), 스위치(73), 인트라 예측부(74), 인접 화소 내삽 필터 전환부(75), 움직임 예측·보상부(76), 예측 화상 선택부(77), 및 레이트 제어부(78)에 의해 구성되어 있다.
A/D 변환부(61)는, 입력된 화상을 A/D 변환하고, 화면 재배열 버퍼(62)에 출력하여 기억시킨다. 화면 재배열 버퍼(62)는, 기억한 표시의 순서의 프레임 화상을, GOP(Group of Picture)에 따라 부호화를 위한 프레임의 순서대로 재배열한다.
연산부(63)는, 화면 재배열 버퍼(62)로부터 판독된 화상으로부터, 예측 화상 선택부(77)에 의해 선택된 인트라 예측부(74)로부터의 예측 화상 또는 움직임 예측·보상부(76)로부터의 예측 화상을 감산하고, 그 차분 정보를 직교 변환부(64)에 출력한다. 직교 변환부(64)는, 연산부(63)로부터의 차분 정보에 대하여, 이산 코사인 변환, 카루넨 루베 변환 등의 직교 변환을 실시하고, 그 변환 계수를 출력한다. 양자화부(65)는 직교 변환부(64)가 출력하는 변환 계수를 양자화한다.
양자화부(65)의 출력이 되는 양자화된 변환 계수는 가역 부호화부(66)에 입력되고, 여기서 가변 길이 부호화, 산술 부호화 등의 가역 부호화가 실시되어 압축된다.
가역 부호화부(66)는, 인트라 예측을 나타내는 정보 등을 인트라 예측부(74)로부터 취득하고, 인터 예측 모드를 나타내는 정보 등을 움직임 예측·보상부(76)로부터 취득한다. 또한, 인트라 예측을 나타내는 정보는, 이하, 인트라 예측 모드 정보라고도 칭한다. 또한, 인터 예측을 나타내는 정보 모드를 나타내는 정보는, 이하, 인터 예측 모드 정보라고도 칭한다.
가역 부호화부(66)는, 양자화된 변환 계수를 부호화하는 동시에, 인트라 예측을 나타내는 정보나 인터 예측 모드를 나타내는 정보, 및 양자화 파라미터 등을 부호화하여, 압축 화상에서의 헤더 정보의 일부로 한다. 가역 부호화부(66)는, 부호화한 데이터를 축적 버퍼(67)에 공급해서 축적시킨다.
예를 들면, 가역 부호화부(66)에서는, 가변 길이 부호화 또는 산술 부호화 등의 가역 부호화 처리가 행해진다. 가변 길이 부호화로는, H. 264/AVC 방식으로 정해져 있는 CAVLC(Context-Adaptive Variable Length Coding) 등을 들 수 있다. 산술 부호화로는, CABAC(Context-Adaptive Binary Arithmetic Coding) 등을 들 수 있다.
축적 버퍼(67)는, 가역 부호화부(66)로부터 공급된 데이터를, H. 264/AVC 방식으로 부호화된 압축 화상으로서, 예를 들면, 후단의 도시하지 않은 기록 장치나 전송로 등에 출력한다.
또한, 양자화부(65)로부터 출력된 양자화된 변환 계수는, 역양자화부(68)에도 입력되어 역양자화된 후, 또한 역직교 변환부(69)에서 역직교 변환된다. 역직교 변환된 출력은 연산부(70)에 의해 예측 화상 선택부(77)로부터 공급되는 예측 화상과 가산되어, 국부적으로 복호된 화상이 된다. 디블록 필터(71)는, 복호된 화상의 블록 왜곡을 제거한 후, 프레임 메모리(72)에 공급하여 축적시킨다. 프레임 메모리(72)에는, 디블록 필터(71)에 의해 디블록 필터 처리되기 전의 화상도 공급되어 축적된다.
스위치(73)는 프레임 메모리(72)에 축적된 참조 화상을 움직임 예측·보상부(76) 또는 인트라 예측부(74)에 출력한다.
상기 화상 부호화 장치(51)에서는, 예를 들면, 화면 재배열 버퍼(62)로부터의 I 픽쳐, B 픽쳐 및 P 픽쳐가, 인트라 예측(인트라 처리라고도 함)하는 화상으로서 인트라 예측부(74)에 공급된다. 또한, 화면 재배열 버퍼(62)로부터 판독된 B 픽쳐 및 P 픽쳐가, 인터 예측(인터 처리라고도 함)하는 화상으로서 움직임 예측·보상부(76)에 공급된다.
인트라 예측부(74)는, 화면 재배열 버퍼(62)로부터 판독된 인트라 예측하는 화상과 프레임 메모리(72)로부터 공급된 참조 화상에 기초해서, 후보가 되는 모든 인트라 예측 모드의 인트라 예측 처리를 행하여, 예측 화상을 생성한다.
상기 인트라 예측 처리에 앞서, 인트라 예측부(74)는, 각 대상 블록의 인트라 예측에 이용되는 화소이며, 대상 블록에 소정의 위치 관계로 인접하는 인접 화소에 대하여 필터 처리를 실시한다. 상기 필터 처리에는, 인트라 예측부(74)에 의해 공급된 인트라 예측 모드 등에 대응하여, 인접 화소 내삽 필터 전환부(75)에 의해 설정된 필터 계수가 이용된다. 즉, 인트라 예측부(74)에서, 후보가 되는 모든 인트라 예측 모드의 인트라 예측 처리에는, 인접 화소 내삽 필터 전환부(75)에 의해 설정된 필터 계수로 필터 처리가 실시된 인접 화소가 이용된다.
인트라 예측부(74)는, 예측 화상을 생성한 인트라 예측 모드에 대하여 코스트 함수값을 산출하고, 산출한 코스트 함수값이 최소값을 부여하는 인트라 예측 모드를 최적 인트라 예측 모드로서 선택한다. 인트라 예측부(74)는, 최적 인트라 예측 모드에서 생성된 예측 화상과, 대응하는 최적 인트라 예측 모드에 대해서 산출된 코스트 함수값을 예측 화상 선택부(77)에 공급한다.
인트라 예측부(74)는, 예측 화상 선택부(77)에 의해 최적 인트라 예측 모드에서 생성된 예측 화상이 선택되었을 경우, 최적 인트라 예측 모드를 나타내는 정보를 가역 부호화부(66)에 공급한다. 가역 부호화부(66)는, 인트라 예측부(74)로부터 정보가 보내져 온 경우에는, 이 정보를 부호화하여 압축 화상에서의 헤더 정보의 일부로 한다.
인접 화소 내삽 필터 전환부(75)는, 후술하는 도 28의 학습 장치(251)에 있어서, 트레이닝 화상이 이용되어 학습됨으로써 얻어진, 양자화 파라미터 및 인트라 예측 모드에 대응한 필터 계수를 기억하고 있다.
인접 화소 내삽 필터 전환부(75)에는, 레이트 제어부(78)로부터의 양자화 파라미터가 공급되고, 인트라 예측부(74)로부터 인트라 예측 모드의 정보가 공급된다. 인접 화소 내삽 필터 전환부(75)는, 레이트 제어부(78)로부터의 양자화 파라미터 및 인트라 예측부(74)로부터의 인트라 예측 모드에 대응하여 필터 계수를 설정한다. 인접 화소 내삽 필터 전환부(75)는, 설정한 필터 계수를 인트라 예측부(74)에 공급한다.
또한, 인접 화소 내삽 필터 전환부(75)에서는, 필터 계수를, 양자화 파라미터 및 인트라 예측 모드 양쪽이 아니어도, 어느 한쪽에 대응하도록 학습, 기억해 두는 것도 가능하다.
또한, 인접 화소 내삽 필터 전환부(75)에서는, 미리 오프라인에서 학습된 필터 계수가 기억되어 있는데, 그 대신에, 온라인에서 필터 계수가 산출되도록 하는 것도 가능하다. 이 경우, 복호측에 보내기 위해서, 점선 화살표로 나타내는 바와 같이, 인접 화소 내삽 필터 전환부(75)에 의해 설정된 필터 계수가 가역 부호화부(66)에 출력된다.
움직임 예측·보상부(76)는, 후보가 되는 모든 인터 예측 모드의 움직임 예측·보상 처리를 행한다. 즉, 움직임 예측·보상부(76)에는, 화면 재배열 버퍼(62)로부터 판독된 인터 처리하는 화상과, 스위치(73)를 통해 프레임 메모리(72)로부터 참조 화상이 공급된다. 움직임 예측·보상부(76)는, 인터 처리하는 화상과 참조 화상에 기초하여, 후보가 되는 모든 인터 예측 모드의 움직임 벡터를 검출하고, 움직임 벡터에 기초해서 참조 화상에 보상 처리를 실시하여 예측 화상을 생성한다.
또한, 움직임 예측·보상부(76)는, 후보가 되는 모든 인터 예측 모드에 대하여 코스트 함수값을 산출한다. 움직임 예측·보상부(76)는, 산출한 코스트 함수값 중, 최소값을 부여하는 예측 모드를 최적 인터 예측 모드로서 결정한다.
움직임 예측·보상부(76)는, 최적 인터 예측 모드에서 생성된 예측 화상과 그 코스트 함수값을 예측 화상 선택부(77)에 공급한다. 움직임 예측·보상부(76)는, 예측 화상 선택부(77)에 의해 최적 인터 예측 모드에서 생성된 예측 화상이 선택되었을 경우, 최적 인터 예측 모드를 나타내는 정보(인터 예측 모드 정보)를 가역 부호화부(66)에 출력한다.
또한, 필요하다면 움직임 벡터 정보, 플래그 정보, 참조 프레임 정보 등도 가역 부호화부(66)에 출력된다. 가역 부호화부(66)는, 움직임 예측·보상부(76)로부터의 정보를 역시 가변 길이 부호화, 산술 부호화와 같은 가역 부호화 처리하여, 압축 화상의 헤더부에 삽입한다.
예측 화상 선택부(77)는, 인트라 예측부(74) 또는 움직임 예측·보상부(76)로부터 출력된 각 코스트 함수값에 기초하여, 최적 인트라 예측 모드와 최적 인터 예측 모드로부터 최적 예측 모드를 결정한다. 그리고, 예측 화상 선택부(77)는, 결정된 최적 예측 모드의 예측 화상을 선택하여 연산부(63, 70)에 공급한다. 이때, 예측 화상 선택부(77)는, 예측 화상의 선택 정보를, 인트라 예측부(74) 또는 움직임 예측·보상부(76)에 공급한다.
레이트 제어부(78)는, 축적 버퍼(67)에 축적된 압축 화상에 기초하여, 오버플로 혹은 언더플로가 발생하지 않도록, 양자화 파라미터에 의해 양자화부(65)의 양자화 동작의 레이트를 제어한다.
양자화부(65)의 레이트의 제어에 이용된 양자화 파라미터는, 가역 부호화부(66)에 공급되서 가역 부호화 처리되어, 압축 화상의 헤더부에 삽입된다. 또한, 상기 양자화 파라미터는, 인접 화소 내삽 필터 전환부(75)에 공급되어, 인접 화소에 실시하는 필터 처리에 이용되는 필터 계수의 설정에 이용된다.
[H. 264/AVC 방식에서의 인트라 예측 처리의 설명]
먼저, H. 264/AVC 방식으로 정해져 있는 인트라 예측의 각 모드에 대해서 설명한다.
우선, 휘도 신호에 대한 인트라 예측 모드에 대해서 설명한다. 휘도 신호의 인트라 예측 모드에는, 인트라 4×4 예측 모드, 인트라 8×8 예측 모드, 및 인트라 16×16 예측 모드의 3가지 방식이 정해져 있다. 이것은, 블록 단위를 정하는 모드이며, 매크로 블록마다 설정된다. 또한, 색차 신호에 대해서는, 매크로 블록마다 휘도 신호와는 독립된 인트라 예측 모드를 설정하는 것이 가능하다.
또한, 인트라 4×4 예측 모드의 경우, 4×4 화소의 대상 블록마다 9종류의 예측 모드로부터 1개의 예측 모드를 설정할 수 있다. 인트라 8×8 예측 모드의 경우, 8×8 화소의 대상 블록마다 9종류의 예측 모드로부터 1개의 예측 모드를 설정할 수 있다. 또한, 인트라 16×16 예측 모드의 경우, 16×16 화소의 대상 매크로 블록에 대하여 4종류의 예측 모드로부터 1개의 예측 모드를 설정할 수 있다.
또한, 이하, 인트라 4×4 예측 모드, 인트라 8×8 예측 모드, 및 인트라 16×16 예측 모드는, 각각 4×4 화소의 인트라 예측 모드, 8×8 화소의 인트라 예측 모드, 및 16×16 화소의 인트라 예측 모드라고도 적절히 칭한다.
도 2의 예에서, 각 블록에 붙여져 있는 숫자 -1 내지 25는, 그 각 블록의 비트 스트림순(복호측에서의 처리순)을 나타내고 있다. 또한, 휘도 신호에 대해서는, 매크로 블록이 4×4 화소로 분할되어 4×4 화소의 DCT가 행해진다. 그리고, 인트라 16×16 예측 모드의 경우에만, -1의 블록에 나타낸 바와 같이 각 블록의 직류 성분을 모아 4×4 행렬이 생성되고, 이것에 대하여 직교 변환이 더 실시된다.
한편, 색차 신호에 대해서는, 매크로 블록이 4×4 화소로 분할되어 4×4 화소의 DCT가 행해진 후에, 16 및 17의 각 블록에 나타낸 바와 같이, 각 블록의 직류 성분을 모아 2×2 행렬이 생성되고, 이것에 대하여 직교 변환이 더 실시된다.
또한 이것은, 인트라 8×8 예측 모드에 관해서는, 하이 프로파일 또는 그 이상의 프로파일에서, 대상 매크로 블록에 8×8 직교 변환이 실시되는 경우에 대해서만 적용 가능하다.
도 3 및 도 4는, 9종류의 휘도 신호의 4×4 화소의 인트라 예측 모드(Intra_4×4_pred_mode)를 나타내는 도면이다. 평균값(DC) 예측을 나타내는 모드 2 이외의 8종류의 각 모드는, 각각 도 5의 번호 0, 1, 3 내지 8로 나타내지는 방향에 대응하고 있다.
9종류의 Intra_4×4_pred_mode에 대해서 도 6을 참조하여 설명한다. 도 6의 예에서, 화소 a 내지 p는, 인트라 처리되는 대상 블록의 화소를 나타내고, 화소값 A 내지 M은, 인접 블록에 속하는 화소의 화소값을 나타내고 있다. 즉, 화소 a 내지 p는, 화면 재배열 버퍼(62)로부터 판독된 처리 대상의 화상이며, 화소값 A 내지 M은, 프레임 메모리(72)로부터 판독되어, 참조되는 복호 완료 화상의 화소값이다.
도 3 및 도 4에 나타내는 각 인트라 예측 모드의 경우, 화소 a 내지 p의 예측 화소값은, 인접 블록에 속하는 화소의 화소값 A 내지 M을 이용하여 아래와 같이 생성된다. 또한, 화소값이 "available"이라는 것은, 화소 프레임의 단부이거나 혹은 아직 부호화되지 않았다는 등의 이유가 없어 이용 가능한 것을 나타낸다. 이에 반해 화소값이 "unavailable"이라는 것은, 화소 프레임의 단부이거나 혹은 아직 부호화되지 않았다는 등의 이유에 의해 이용 가능하지 않은 것을 나타낸다.
모드 0은 Vertical Prediction mode이며, 화소값 A 내지 D가 "available"인 경우에만 적용된다. 이 경우, 화소 a 내지 p의 예측 화소값은, 다음 식 (1)과 같이 생성된다.
화소 a, e, i, m의 예측 화소값 = A
화소 b, f, j, n의 예측 화소값 = B
화소 c, g, k, o의 예측 화소값 = C
화소 d, h, l, p의 예측 화소값 = D …… (1)
모드 1은 Horizontal Prediction mode이며, 화소값 I 내지 L이 "available"인 경우에만 적용된다. 이 경우, 화소 a 내지 p의 예측 화소값은, 다음 식 (2)와 같이 생성된다.
화소 a, b, c, d의 예측 화소값 = I
화소 e, f, g, h의 예측 화소값 = J
화소 i, j, k, l의 예측 화소값 = K
화소 m, n, o, p의 예측 화소값 = L …… (2)
모드 2는 DC Prediction mode이며, 화소값 A, B, C, D, I, J, K, L이 모두 "available"일 때, 예측 화소값은 식 (3)과 같이 생성된다.
(A + B + C + D + I + J + K + L + 4) >> 3 …… (3)
또한, 화소값 A, B, C, D가 모두 "unavailable"일 때, 예측 화소값은 식 (4)와 같이 생성된다.
(I + J + K + L + 2) >> 2 …… (4)
또한, 화소값 I, J, K, L이 모두 "unavailable"일 때, 예측 화소값은 식 (5)와 같이 생성된다.
(A + B + C + D + 2) >> 2 …… (5)
또한, 화소값 A, B, C, D, I, J, K, L이 모두 "unavailable"일 때, 128을 예측 화소값으로서 이용한다.
모드 3은 Diagonal_Down_Left Prediction mode이며, 화소값 A, B, C, D, I, J, K, L, M이 "available"인 경우에만 적용된다. 이 경우, 화소 a 내지 p의 예측 화소값은, 다음 식 (6)과 같이 생성된다.
화소 a의 예측 화소값 = (A + 2B + C + 2) >> 2
화소 b, e의 예측 화소값 = (B + 2C + D + 2) >> 2
화소 c, f, i의 예측 화소값 = (C + 2D + E + 2) >> 2
화소 d, g, j, m의 예측 화소값 = (D + 2E + F + 2) >> 2
화소 h, k, n의 예측 화소값 = (E + 2F + G + 2) >> 2
화소 l, o의 예측 화소값 = (F + 2G + H + 2) >> 2
화소 p의 예측 화소값 = (G + 3H + 2) >> 2 …… (6)
모드 4는 Diagonal_Down_Right Prediction mode이며, 화소값 A, B, C, D, I, J, K, L, M이 "available"인 경우에만 적용된다. 이 경우, 화소 a 내지 p의 예측 화소값은, 다음 식(7)과 같이 생성된다.
화소 m의 예측 화소값 = (J + 2K + L + 2) >> 2
화소 i, n의 예측 화소값 = (I + 2J + K + 2) >> 2
화소 e, j, o의 예측 화소값 = (M + 2I + J + 2) >> 2
화소 a, f, k, p의 예측 화소값 = (A + 2M + I + 2) >> 2
화소 b, g, l의 예측 화소값 = (M + 2A + B + 2) >> 2
화소 c, h의 예측 화소값 = (A + 2B + C + 2) >> 2
화소 d의 예측 화소값 = (B + 2C + D + 2) >> 2 …… (7)
모드 5는 Diagonal_Vertical_Right Prediction mode이며, 화소값 A, B, C, D, I, J, K, L, M이 "available"인 경우에만 적용된다. 이 경우, 화소 a 내지 p의 예측 화소값은, 다음 식 (8)과 같이 생성된다.
화소 a, j의 예측 화소값 = (M + A + 1) >> 1
화소 b, k의 예측 화소값 = (A + B + 1) >> 1
화소 c, l의 예측 화소값 = (B + C + 1) >> 1
화소 d의 예측 화소값 = (C + D + 1) >> 1
화소 e, n의 예측 화소값 = (I + 2M + A + 2) >> 2
화소 f, o의 예측 화소값 = (M + 2A + B + 2) >> 2
화소 g, p의 예측 화소값 = (A + 2B + C + 2) >> 2
화소 h의 예측 화소값 = (B + 2C + D + 2) >> 2
화소 i의 예측 화소값 = (M + 2I + J + 2) >> 2
화소 m의 예측 화소값 = (I + 2J + K + 2) >> 2 …… (8)
모드 6은 Horizontal_Down Prediction mode이며, 화소값 A, B, C, D, I, J, K, L, M이 "available"인 경우에만 적용된다. 이 경우, 화소 a 내지 p의 예측 화소값은, 다음 식 (9)와 같이 생성된다.
화소 a, g의 예측 화소값 = (M + I + 1) >> 1
화소 b, h의 예측 화소값 = (I + 2M + A + 2) >> 2
화소 c의 예측 화소값 = (M + 2A + B + 2) >> 2
화소 d의 예측 화소값 = (A + 2B + C + 2) >> 2
화소 e, k의 예측 화소값 = (I + J + 1) >> 1
화소 f, l의 예측 화소값 = (M + 2I + J + 2) >> 2
화소 i, o의 예측 화소값 = (J + K + 1) >> 1
화소 j, p의 예측 화소값 = (I + 2J + K + 2) >> 2
화소 m의 예측 화소값 = (K + L + 1) >> 1
화소 n의 예측 화소값 = (J + 2K + L + 2) >> 2 …… (9)
모드 7은, Vertical_Left Prediction mode이며, 화소값 A, B, C, D, I, J, K, L, M이 "available"안 경우에만 적용된다. 이 경우, 화소 a 내지 p의 예측 화소값은, 다음 식 (10)과 같이 생성된다.
화소 a의 예측 화소값 = (A + B + 1) >> 1
화소 b, i의 예측 화소값 = (B + C + 1) >> 1
화소 c, j의 예측 화소값 = (C + D + 1) >> 1
화소 d, k의 예측 화소값 = (D + E + 1) >> 1
화소 l의 예측 화소값 = (E + F + 1) >> 1
화소 e의 예측 화소값 = (A + 2B + C + 2) >> 2
화소 f, m의 예측 화소값 = (B + 2C + D + 2) >> 2
화소 g, n의 예측 화소값 = (C + 2D + E + 2) >> 2
화소 h, o의 예측 화소값 = (D + 2E + F + 2) >> 2
화소 p의 예측 화소값 = (E + 2F + G + 2) >> 2 …… (10)
모드 8은, Horizontal_Up Prediction mode이며, 화소값 A, B, C, D, I, J, K, L, M이 "available"인 경우에만 적용된다. 이 경우, 화소 a 내지 p의 예측 화소값은, 다음 식 (11)과 같이 생성된다.
화소 a의 예측 화소값 = (I + J + 1) >> 1
화소 b의 예측 화소값 = (I + 2J + K + 2) >> 2
화소 c, e의 예측 화소값 = (J + K + 1) >> 1
화소 d, f의 예측 화소값 = (J + 2K + L + 2) >> 2
화소 g, i의 예측 화소값 = (K + L + 1) >> 1
화소 h, j의 예측 화소값 = (K + 3L + 2) >> 2
화소 k, l, m, n, o, p의 예측 화소값 = L …… (11)
다음으로, 도 7을 참조하여, 휘도 신호의 4×4 화소의 인트라 예측 모드(Intra_4×4_pred_mode)의 부호화 방식에 대해서 설명한다. 도 7의 예에서, 4×4 화소로 이루어지고, 부호화 대상이 되는 대상 블록 C가 나타내져 있고, 대상 블록 C에 인접하는 4×4 화소로 이루어지는 블록 A 및 블록 B가 나타내져 있다.
이 경우, 대상 블록 C에서의 Intra_4×4_pred_mode와, 블록 A 및 블록 B에서의 Intra_4×4_pred_mode는 높은 상관이 있는 것으로 생각된다. 이 상관성을 이용하여 다음과 같이 부호화 처리를 행함으로써, 보다 높은 부호화 효율을 실현할 수 있다.
즉, 도 7의 예에서, 블록 A 및 블록 B에서의 Intra_4×4_pred_mode를, 각각 Intra_4×4_pred_mode A 및 Intra_4×4_pred_mode B로 하여, MostProbableMode를 다음 식 (12)로 정의한다.
MostProbableMode = Min(Intra_4×4_pred_mode A, Intra_4×4_pred_mode B) …… (12)
즉, 블록 A 및 블록 B 중, 보다 작은 mode_number가 할당되어 있는 쪽을 MostProbableMode라고 한다.
비트 스트림 중에는, 대상 블록 C에 대한 파라미터로서, prev_intra4×4_pred_mode_flag[luma4×4Blkldx] 및 rem_intra4×4_pred_mode[luma4×4Blkldx]라는 2개의 값이 정의되어 있으며, 다음 식 (13)으로 나타내지는 의사 코드에 기초하는 처리에 의해 복호 처리가 행해져, 대상 블록 C에 대한 Intra_4×4_pred_mode, Intra4×4PredMode[luma4×4Blkldx]의 값을 얻을 수 있다.
if(prev_intra4×4_pred_mode_flag[luma4×4Blkldx])
Intra4×4PredMode[luma4×4Blkldx] = MostProbableMode
else
if(rem_intra4×4_pred_mode[luma4×4Blkldx] < MostProbableMode)
Intra4×4PredMode[luma4×4Blkldx] = rem_intra4×4_pred_mode[luma4×4Blkldx]
else
Intra4×4PredMode[luma4×4Blkldx] = rem_intra4×4_pred_mode[luma4×4Blkldx]+1 …… (13)
다음으로, 8×8 화소의 인트라 예측 모드에 대해서 설명한다. 도 8 및 도 9는, 9종류의 휘도 신호의 8×8 화소의 인트라 예측 모드(Intra_8×8_pred_mode)를 나타내는 도면이다.
대상인 8×8블록에서의 화소값을, p[x,y](0≤x≤7;0≤y≤7)로 하고, 인접 블록의 화소값을 p[-1,-1], …, p[-1,15], p[-1,0], …, p[-1,7]과 같이 나타내는 것으로 한다.
8×8 화소의 인트라 예측 모드에 대해서는, 예측값을 생성함에 앞서, 인접 화소에 로우패스 필터링 처리가 실시된다. 여기서, 로우패스 필터링 처리 전의 화소값을, p[-1,-1], …, p[-1,15], p[-1,0], … p[-1,7], 처리 후의 화소값을 p'[-1,-1], …, p'[-1,15], p'[-1,0], … p'[-1,7]로 나타내는 것으로 한다.
우선, p'[0,-1]은, p[-1,-1]이 "available"인 경우에는, 다음 식 (14)와 같이 산출되고, "not available"인 경우에는 다음 식 (15)와 같이 산출된다.
p'[0,-1] = (p[-1,-1] + 2*p[0,-1] + p[1,-1] + 2) >> 2 …… (14)
p'[0,-1] = (3*p[0,-1] + p[1,-1] + 2) >> 2 …… (15)
p'[x,-1](x=0, …, 7)은, 다음 식 (16)과 같이 산출된다.
p'[x,-1] = (p[x-1,-1] + 2*p[x,-1] + p[x+1,-1] + 2) >> 2 ……(16)
p'[x,-1](x=8, …, 15)은, p[x,-1](x=8, …, 15)이 "available"인 경우에는 다음 식 (17)과 같이 산출된다.
p'[x,-1] = (p[x-1,-1] + 2*p[x,-1] + p[x+1,-1] + 2) >> 2
p'[15,-1] = (p[14,-1] + 3*p[15,-1] + 2) >> 2 …… (17)
p'[-1,-1]은, p[-1,-1]이 "available"인 경우에는 아래와 같이 산출된다. 즉, p'[-1,-1]은, p[0,-1] 및 p[-1,0] 모두가 available인 경우에는 식 (18)과 같이 산출되고, p[-1,0]이 "unavailable"인 경우에는 식 (19)와 같이 산출된다. 또한, p'[-1,-1]은, p[0,-1]이 "unavailable"인 경우에는 식 (20)과 같이 산출된다.
p'[-1,-1] = (p[0,-1] + 2*p[-1,-1] + p[-1,0] + 2) >> 2 …… (18)
p'[-1,-1] = (3*p[-1,-1] + p[0,-1] + 2) >> 2 …… (19)
p'[-1,-1] = (3*p[-1,-1] + p[-1,0] + 2) >> 2 …… (20)
p'[-1,y](y=0, …, 7)은, p[-1,y](y=0, …, 7)가 "available"일 때 아래와 같이 산출된다. 즉, 우선, p'[-1,0]은, p[-1,-1]이 "available"인 경우에는 다음 식 (21)과 같이 산출되고, "unavailable"인 경우에는 식 (22)와 같이 산출된다.
p'[-1,0] = (p[-1,-1] + 2*p[-1,0] + p[-1,1] + 2) >> 2 …… (21)
p'[-1,0] = (3*p[-1,0] + p[-1,1] + 2) >> 2 …… (22)
또한, p'[-1,y](y=1, …, 6)는 다음 식 (23)과 같이 산출되고, p'[-1,7]은 식 (24)와 같이 산출된다.
p[-1,y] = (p[-1,y-1] + 2*p[-1,y] + p[-1,y+1] + 2) >> 2 …… (23)
p'[-1,7] = (p[-1,6] + 3*p[-1,7] + 2) >> 2 …… (24)
이와 같이 산출된 p'를 이용하여, 도 8 및 도 9에 도시되는 각 인트라 예측 모드에서의 예측값은 아래와 같이 생성된다.
모드 0은 Vertical Prediction mode이며, p[x,-1](x=0, …, 7)이 "available"일 때에만 적용된다. 예측값 pred8×8L[x,y]은, 다음 식 (25)와 같이 생성된다.
pred8×8L[x,y] = p'[x,-1] x,y=0,...,7 …… (25)
모드 1은 Horizontal Prediction mode이며, p[-1,y](y=0, …, 7)가 "available"일 때에만 적용된다. 예측값 pred8×8L[x,y]은, 다음 식 (26)과 같이 생성된다.
pred8×8L[x,y] = p'[-1,y] x,y=0,...,7 …… (26)
모드 2는 DC Prediction mode이며, 예측값 pred8×8L[x,y]은 아래와 같이 생성된다. 즉, p[x,-1](x=0, …, 7) 및 p[-1,y](y=0, …, 7) 모두가 "available"인 경우에는, 예측값 pred8×8L[x,y]은, 다음 식 (27)과 같이 생성된다.
Figure 112016117431918-pat00001
p[x,-1](x=0, …, 7)은 "available"이지만, p[-1,y](y=0, …, 7)가 "unavailable"인 경우에는, 예측값 pred8×8L[x,y]은 다음 식 (28)과 같이 생성된다.
Figure 112016117431918-pat00002
p[x,-1](x=0, …, 7)은 "unavailable"이지만, p[-1,y](y=0, …, 7)가 "available"인 경우에는, 예측값 pred8×8L[x,y]은 다음 식 (29)와 같이 생성된다.
Figure 112016117431918-pat00003
p[x,-1](x=0, …, 7) 및 p[-1,y](y=0, …, 7) 모두가 "unavailable"인 경우에는, 예측값 pred8×8L[x,y]은 다음 식 (30)과 같이 생성된다.
pred8×8L[x,y] = 128 …… (30)
단, 식 (30)은 8비트 입력의 경우를 나타내고 있다.
모드 3은 Diagonal_Down_Left_prediction mode이며, 예측값 pred8×8L[x,y]은 아래와 같이 생성된다. 즉, Diagonal_Down_Left_prediction mode는, p[x,-1], x=0, …, 15가 "available"일 때에만 적용되며, x=7이면서 y=7인 예측 화소값은 다음 식 (31)과 같이 생성되고, 기타 예측 화소값은 다음 식 (32)와 같이 생성된다.
pred8×8L[x,y] = (p'[14,-1] + 3*p[15,-1] + 2) >> 2 …… (31)
pred8×8L[x,y] = (p'[x+y,-1] + 2*p'[x+y+1,-1] + p'[x+y+2,-1] + 2) >> 2 …… (32)
모드 4는 Diagonal_Down_Right_prediction mode이며, 예측값 pred8×8L[x,y]은 아래와 같이 생성된다. 즉, Diagonal_Down_Right_prediction mode는, p[x,-1], x=0, …, 7 및 p[-1,y], y=0, …, 7이 "available"일 때에만 적용되며, x > y인 예측 화소값은 다음 식 (33)과 같이 생성되고, x < y인 예측 화소값은 다음 식 (34)와 같이 생성된다. 또한, x = y인 예측 화소값은 다음 식 (35)와 같이 생성된다.
pred8×8L[x,y] = (p'[x-y-2,-1] + 2*p'[x-y-1,-1] + p'[x-y,-1] + 2) >> 2 …… (33)
pred8×8L[x,y] = (p'[-1,y-x-2] + 2*p'[-1,y-x-1] + p'[-1,y-x] + 2) >> 2 …… (34)
pred8×8L[x,y] = (p'[0,-1] + 2*p'[-1,-1] + p'[-1,0] + 2) >> 2 …… (35)
모드 5는 Vertical_Right_prediction mode이며, 예측값 pred8×8L[x,y]은 아래와 같이 생성된다. 즉, Vertical_Right_prediction mode는, p[x,-1], x=0, …, 7 및 p[-1,y], y=-1, …, 7이 "available"일 때에만 적용된다. 지금, zVR을 다음 식 (36)과 같이 정의한다.
zVR = 2*x - y …… (36)
이때, zVR이 0, 2, 4, 6, 8, 10, 12, 14인 경우에는, 예측 화소값은 다음 식 (37)과 같이 생성되고, zVR이 1, 3, 5, 7, 9, 11, 13인 경우에는, 예측 화소값은 다음 식 (38)과 같이 생성된다.
pred8×8L[x,y] = (p'[x-(y>>1)-1,-1] + p'[x-(y>>1),-1] + 1) >> 1 …… (37)
pred8×8L[x,y] = (p'[x-(y>>1)-2,-1] + 2*p'[x-(y>>1)-1,-1] + p'[x-(y>>1),-1] + 2) >> 2 …… (38)
또한, zVR이 -1인 경우에는, 예측 화소값은 다음 식 (39)와 같이 생성되고, 그 이외의 경우, 즉, zVR이 -2, -3, -4, -5, -6, -7인 경우에는, 예측 화소값은 다음 식 (40)과 같이 생성된다.
pred8×8L[x,y] = (p'[-1,0] + 2*p'[-1,-1] + p'[0,-1] + 2) >> 2 …… (39)
pred8×8L[x,y] = (p'[-1,y-2*x-1] + 2*p'[-1,y-2*x-2] + p'[-1,y-2*x-3] + 2) >> 2 …… (40)
모드 6은 Horizontal_Down_prediction mode이며, 예측값 pred8×8L[x,y]은 아래와 같이 생성된다. 즉, Horizontal_Down_prediction mode는, p[x,-1], x=0, …, 7 및 p[-1,y], y=-1, …, 7이 "available"일 때에만 적용된다. 지금, zHD를 다음 식 (41)과 같이 정의하는 것으로 한다.
zHD = 2*y - x …… (41)
이때, zHD가 0, 2, 4, 6, 8, 10, 12, 14인 경우에는, 예측 화소값은 다음 식 (42)와 같이 생성되고, zHD가 1, 3, 5, 7, 9, 11, 13인 경우에는, 예측 화소값은 다음 식 (43)과 같이 생성된다.
pred8×8L[x,y] = (p'[-1,y-(x>>1)-1] + p'[-1,y-(x>>1)+1] >> 1 …… (42)
pred8×8L[x,y] = (p'[-1,y-(x>>1)-2] + 2*p'[-1,y-(x>>1)-1] + p'[-1,y-(x>>1)] + 2) >> 2 …… (43)
또한, zHD가 -1인 경우에는, 예측 화소값은 다음 식 (44)와 같이 생성되고, zHD가 그 이외의 값인 경우, 즉 -2, -3, -4, -5, -6, -7인 경우에는, 예측 화소값은 다음 식 (45)와 같이 생성된다.
pred8×8L[x,y] = (p'[-1,0] + 2*p[-1,-1] + p'[0,-1] + 2) >> 2 …… (44)
pred8×8L[x,y] = (p'[x-2*y-1,-1] + 2*p'[x-2*y-2,-1] + p'[x-2*y-3,-1] + 2) >> 2 …… (45)
모드 7은 Vertical_Left_prediction mode이며, 예측값 pred8×8L[x,y]은 아래와 같이 생성된다. 즉, Vertical_Left_prediction mode는, p[x,-1], x=0, …, 15가 "available"일 때에만 적용되고, y=0, 2, 4, 6인 경우, 예측 화소값은 다음 식 (46)과 같이 생성되고, 그 이외의 경우, 즉 y=1, 3, 5, 7인 경우, 예측 화소값은 다음 식 (47)과 같이 생성된다.
pred8×8L[x,y] = (p'[x+(y>>1),-1] + p'[x+(y>>1)+1,-1] + 1) >> 1 …… (46)
pred8×8L[x,y] = (p'[x+(y>>1),-1] + 2*p'[x+(y>>1)+1,-1] + p'[x+(y>>1)+2,-1] + 2) >> 2 …… (47)
모드 8은 Horizontal_Up_prediction mode이며, 예측값 pred8×8L[x,y]은 아래와 같이 생성된다. 즉, Horizontal_Up_prediction mode는, p[-1,y], y=0, …, 7이 "available"일 때에만 적용된다. 이하에서는, zHU를 다음 식 (48)과 같이 정의한다.
zHU = x + 2*y …… (48)
zHU의 값이 0, 2, 4, 6, 8, 10, 12인 경우, 예측 화소값은 다음 식 (49)와 같이 생성되고, zHU의 값이 1, 3, 5, 7, 9, 11인 경우, 예측 화소값은 다음 식 (50)과 같이 생성된다.
pred8×8L[x,y] = (p'[-1,y+(x>>1)] + p'[-1,y+(x>>1)+1] + 1) >> 1 …… (49)
pred8×8L[x,y] = (p'[-1,y+(x>>1)] …… (50)
또한, zHU의 값이 13인 경우, 예측 화소값은 다음 식 (51)과 같이 생성되고, 그 이외의 경우, 즉 zHU의 값이 13보다 큰 경우, 예측 화소값은 다음 식 (52)와 같이 생성된다.
pred8×8L[x,y] = (p'[-1,6] + 3*p'[-1,7] + 2) >> 2 …… (51)
pred8×8L[x,y] = p'[-1,7] ……(52)
다음으로, 16×16 화소의 인트라 예측 모드에 대해서 설명한다. 도 10 및 도 11은, 4종류의 휘도 신호의 16×16 화소의 인트라 예측 모드(Intra_16×16_pred_mode)를 나타내는 도면이다.
4종류의 인트라 예측 모드에 대해서 도 12를 참조하여 설명한다. 도 12의 예에서, 인트라 처리되는 대상 매크로 블록 A가 나타나 있고, P(x,y); x,y = -1, 0, …, 15는, 대상 매크로 블록 A에 인접하는 화소의 화소값을 나타내고 있다.
모드 0은, Vertical Prediction mode이며, P(x,-1); x,y = -1, 0, …, 15가 "available"일 때에만 적용된다. 이 경우, 대상 매크로 블록 A의 각 화소의 예측 화소값 Pred(x,y)는, 다음 식 (53)과 같이 생성된다.
Pred(x,y) = P(x,-1); x,y = 0, …, 15 …… (53)
모드 1은 Horizontal Prediction mode이며, P(-1,y); x,y = -1, 0, …, 15가 "available"일 때에만 적용된다. 이 경우, 대상 매크로 블록 A의 각 화소의 예측 화소값 Pred(x,y)는, 다음 식 (54)와 같이 생성된다.
Pred(x,y) = P(-1,y); x,y = 0, …, 15 …… (54)
모드 2는 DC Prediction mode이며, P(x,-1) 및 P(-1,y); x,y = -1, 0, …, 15가 모두 "available"인 경우, 대상 매크로 블록 A의 각 화소의 예측 화소값 Pred(x,y)는, 다음 식 (55)와 같이 생성된다.
Figure 112016117431918-pat00004
또한, P(x,-1); x,y = -1, 0, …, 15가 "unavailable"인 경우, 대상 매크로 블록 A의 각 화소의 예측 화소값 Pred(x,y)는, 다음 식 (56)과 같이 생성된다.
Figure 112016117431918-pat00005
P(-1,y); x,y = -1, 0, …, 15가 "unavailable"인 경우, 대상 매크로 블록 A의 각 화소의 예측 화소값 Pred(x,y)는, 다음 식 (57)과 같이 생성된다.
Figure 112016117431918-pat00006
P(x,-1) 및 P(-1,y); x,y = -1, 0, …, 15가 모두 "unavailable"인 경우에는, 예측 화소값으로서 128을 이용한다.
모드 3은 Plane Prediction mode이며, P(x,-1) 및 P(-1,y); x,y = -1, 0, …, 15가 모두 "available"인 경우에만 적용된다. 이 경우, 대상 매크로 블록 A의 각 화소의 예측 화소값 Pred(x,y)는, 다음 식 (58)과 같이 생성된다.
Figure 112016117431918-pat00007
다음으로, 색차 신호에 대한 인트라 예측 모드에 대해서 설명한다. 도 13은, 4종류의 색차 신호의 인트라 예측 모드(Intra_chroma_pred_mode)를 도시하는 도면이다. 색차 신호의 인트라 예측 모드는, 휘도 신호의 인트라 예측 모드와 독립적으로 설정이 가능하다. 색차 신호에 대한 인트라 예측 모드는, 상술한 휘도 신호의 16×16 화소의 인트라 예측 모드에 준한다.
단, 휘도 신호의 16×16 화소의 인트라 예측 모드가, 16×16 화소의 블록을 대상으로 하고 있는 것에 반해, 색차 신호에 대한 인트라 예측 모드는, 8×8 화소의 블록을 대상으로 하고 있다. 또한, 상술한 도 10과 도 13에 도시된 바와 같이, 양자에 있어서 모드 번호는 대응하지 않는다.
여기서, 도 12를 참조해서 상술한 휘도 신호의 16×16 화소의 인트라 예측 모드의 대상 매크로 블록 A의 화소값 및 인접하는 화소값의 정의에 준한다. 예를 들면, 인트라 처리되는 대상 매크로 블록 A(색차 신호의 경우에는, 8×8 화소)에 인접하는 화소의 화소값을 P(x,y); x,y = -1, 0, …, 7로 한다.
모드 0은 DC Prediction mode이며, P(x,-1) 및 P(-1,y); x,y = -1, 0, …, 7이 모두 "available"인 경우, 대상 매크로 블록 A의 각 화소의 예측 화소값 Pred(x,y)는, 다음 식 (59)과 같이 생성된다.
Figure 112016117431918-pat00008
또한, P(-1,y); x,y = -1, 0, …, 7이 "unavailable"인 경우, 대상 매크로 블록 A의 각 화소의 예측 화소값 Pred(x,y)는, 다음 식 (60)과 같이 생성된다.
Figure 112016117431918-pat00009
또한, P(x,-1); x,y = -1, 0, …, 7이 "unavailable"인 경우, 대상 매크로 블록 A의 각 화소의 예측 화소값 Pred(x,y)는, 다음 식 (61)과 같이 생성된다.
Figure 112016117431918-pat00010
모드 1은 Horizontal Prediction mode이며, P(-1,y); x,y = -1, 0, …, 7이 "available"인 경우에만 적용된다. 이 경우, 대상 매크로 블록 A의 각 화소의 예측 화소값 Pred(x,y)는, 다음 식 (62)와 같이 생성된다.
Pred(x,y) = P(-1,y); x,y = 0, …, 7 …… (62)
모드 2는 Vertical Prediction mode이며, P(x,-1); x,y = -1, 0, …, 7이 "available"인 경우에만 적용된다. 이 경우, 대상 매크로 블록 A의 각 화소의 예측 화소값 Pred(x,y)는, 다음 식 (63)과 같이 생성된다.
Pred(x,y) = P(x,-1); x,y = 0, …, 7 …… (63)
모드 3은 Plane Prediction mode이며, P(x,-1) 및 P(-1,y); x,y = -1, 0, …, 7이 "available"인 경우에만 적용된다. 이 경우, 대상 매크로 블록 A의 각 화소의 예측 화소값 Pred(x,y)는, 다음 식 (64)와 같이 생성된다.
Figure 112016117431918-pat00011
이상과 같이, 휘도 신호의 인트라 예측 모드에는, 9종류의 4×4 화소 및 8×8 화소의 블록 단위, 및 4종류의 16×16 화소의 매크로 블록 단위의 예측 모드가 있다. 상기 블록 단위의 모드는, 매크로 블록 단위마다 설정된다. 색차 신호의 인트라 예측 모드에는, 4종류의 8×8 화소의 블록 단위의 예측 모드가 있다. 상기 색차 신호의 인트라 예측 모드는, 휘도 신호의 인트라 예측 모드와 독립적으로 설정이 가능하다.
또한, 휘도 신호의 4×4 화소의 인트라 예측 모드(인트라 4×4 예측 모드) 및 8×8 화소의 인트라 예측 모드(인트라 8×8 예측 모드)에 대해서는, 4×4 화소 및 8×8 화소의 휘도 신호의 블록마다 1개의 인트라 예측 모드가 설정된다. 휘도 신호의 16×16 화소의 인트라 예측 모드(인트라 16×16 예측 모드)와 색차 신호의 인트라 예측 모드에 대해서는, 1개의 매크로 블록에 대하여 1개의 예측 모드가 설정된다.
또한, 예측 모드의 종류는, 상술한 도 5의 번호 0, 1, 3 내지 8로 나타내지는 방향에 대응하고 있다. 예측 모드 2는 평균값 예측이다.
이상과 같이 H. 264/AVC 방식에서의 인트라 예측에서는, 식 (14) 내지 식 (24)에서 상술한 바와 같이, 8×8 화소의 블록 단위의 인트라 예측을 행함에 앞서서만, 정해진 필터 계수로 인접 화소의 화소값의 필터 처리가 행해지고 있다. 이에 대하여, 화상 부호화 장치(51)에서는, 모든 인트라 예측 모드의 인트라 예측을 행함에 앞서, 예측 대상의 블록에 따라 설정된 필터 계수로 인접 화소의 화소값의 필터 처리가 행해진다.
[인트라 예측부 및 인접 화소 내삽 필터 전환부의 구성예]
도 14는, 도 1의 인트라 예측부(74) 및 인접 화소 내삽 필터 전환부(75)의 상세한 구성예를 도시하는 블록도다.
도 14의 예의 경우, 인트라 예측부(74)는, 인접 화소 설정부(81), 예측 화상 생성부(82), 및 최적 예측 모드 판정부(83)에 의해 구성되어 있다.
인접 화소 내삽 필터 전환부(75)는, 예측 모드 버퍼(91), 양자화 파라미터 버퍼(92), 및 로우패스 필터 설정부(93)에 의해 구성되어 있다. 또한, 로우패스 필터 설정부(93)에는, 필터 계수 메모리(94)가 내장되어 있다.
인접 화소 설정부(81)에는, 프레임 메모리(72)로부터의 인트라 예측의 대상 블록의 인접 화소값이 공급된다. 도 14의 경우, 스위치(73)의 도시는 생략되어 있지만, 실제로 인접 화소값은, 프레임 메모리(72)로부터 스위치(73)를 통해 인접 화소 설정부(81)에 공급된다. 또한, 인트라 예측의 경우, 인접 화소값으로서 디블록 필터(71)에 의해 디블록 필터링되지 않은 화소값이 이용된다.
인접 화소 설정부(81)는, 로우패스 필터 설정부(93)에 의해 설정된 필터 계수를 이용하여, 프레임 메모리(72)로부터의 대상 블록의 인접 화소값에 대하여 필터 처리를 실시하고, 필터 처리된 인접 화소값을 예측 화상 생성부(82)에 공급한다.
예측 화상 생성부(82)는, 현재 처리되어 있는 인트라 예측 모드가 어느 모드인지의 정보를 예측 모드 버퍼(91)에 공급한다. 예측 화상 생성부(82)는, 인접 화소 설정부(81)로부터의 필터 처리된 인접 화소값을 이용하여, 예측 모드 버퍼(91)에 공급한 인트라 예측 모드에서의 대상 블록의 인트라 예측을 행하고, 예측 화상을 생성한다. 생성된 예측 화상은, 인트라 예측 모드 정보와 함께 최적 예측 모드 판정부(83)에 공급된다.
최적 예측 모드 판정부(83)에는, 화면 재배열 버퍼(62)로부터 판독된 인트라 예측하는 화상과, 예측 화상 생성부(82)에 의해 생성된 예측 화상과, 그 인트라 예측 모드 정보가 공급된다.
최적 예측 모드 판정부(83)는, 공급된 정보를 이용하여 예측 화상을 생성한 인트라 예측 모드에 대하여 코스트 함수값을 산출하고, 산출한 코스트 함수값이 최소값을 부여하는 인트라 예측 모드를 최적 인트라 예측 모드로서 결정한다. 최적 예측 모드 판정부(83)는, 최적 인트라 예측 모드의 예측 화상과, 대응하는 코스트 함수값을 예측 화상 선택부(77)에 출력한다.
또한, 최적 예측 모드 판정부(83)는, 예측 화상 선택부(77)에 의해 최적 인트라 예측 모드에서 생성된 예측 화상이 선택된 경우, 최적 인트라 예측 모드를 나타내는 정보를 가역 부호화부(66)에 공급한다.
예측 모드 버퍼(91)는, 예측 화상 생성부(82)로부터의 인트라 예측 모드 정보를 저장한다. 양자화 파라미터 버퍼(92)는, 레이트 제어부(78)로부터의 양자화 파라미터를 저장한다.
로우패스 필터 설정부(93)는, 예측 모드 버퍼(91)로부터 대상 블록의 인트라 예측 모드 정보를 판독하고, 양자화 파라미터 버퍼(92)로부터 대상 블록에 대한 양자화 파라미터를 판독한다. 로우패스 필터 설정부(93)는, 내장하는 필터 계수 메모리(94)에 기억되어 있는 필터 계수 중에서, 이들 정보에 대응하는 필터 계수를 설정하고, 설정한 필터 계수를 인접 화소 설정부(81)에 공급한다.
필터 계수 메모리(94)는, 후술하는 도 28의 학습 장치(251)에 있어서, 트레이닝 화상이 이용되어 학습됨으로써 얻어진 양자화 파라미터 및 인트라 예측 모드에 대응한 필터 계수를 기억하고 있다. 상기 필터 계수는, 예를 들면, 슬라이스마다 다음에 설명하는 바와 같이 산출되어 기억된 것이다.
[최적 필터 계수의 산출의 설명]
다음으로, 도 15를 참조하여, 이 인접 화소의 필터 처리에 이용되는 최적의 필터 계수의 산출 방법에 대해서 설명한다. 또한, 도 15의 예에서는, 4×4 화소의 대상 블록에 대해서 수직 예측(vertical Prediction)을 행하는 예가 나타나 있지만, 이하의 설명은, 어떠한 인트라 예측 모드에도 적용 가능한 경우를 설명한다.
식 (14) 내지 식 (24)에서 상술한 8×8 화소의 블록 단위의 인트라 예측에서는, 인접 화소에 대한 로우패스 필터로서 {1, 2, 1}과 같은 3탭의 필터 계수가 정의되어 있는데, 3탭의 일반형으로서 {c0, c1, c2}를 생각하는 것으로 한다. 또한, 본 발명에서는, 오프셋 값으로서 제4 파라미터(c3)도 도입된다.
또한, 이하의 설명에서는, 상기 3탭의 필터가 슬라이스마다 설정 가능한 것으로 하지만, 이것에 한정되지 않고, 예를 들면 시퀀스 전체나 GOP마다 설정 가능해도 좋다.
도 15의 예에서, akm(0≤k, m≤3)은, 대상 블록에 포함되는 화소의 화소값, bm(-1≤m≤4)은, 수직 예측에 이용되는 인접 화소의 화소값이다.
우선, 인접 화소값 bm에 3탭의 필터 처리가 실시됨으로써, 다음 식 (65)에 나타내지는 b'm(0≤m≤3)이 생성된다.
Figure 112016117431918-pat00012
즉, 필터 처리가 이루어지고, 필터 계수가 이용되는 경우, 이하 특히 언급하지 않아도, 식 (65)에 나타낸 바와 같이, 대응하는 오프셋 값도 이용되는 것으로 한다. 환언하면, 필터 계수와 오프셋 값은 필터 처리에 이용되는 계수다. 마찬가지로, 필터 계수가 부호화되어 복호측에 보내지는 경우, 대응하는 오프셋 값도 부호화되어 보내지는 것으로 한다.
이제, 인트라 예측 모드가 n일 때의 예측 화소값을 pij(b'm,n); 0≤i, j≤3이라고 하면, 인트라 예측 화소값은, 도 2 내지 도 14를 참조해서 상술한 바와 같이 예측 화소는 선형의 식에 의해 생성되기 때문에, 다음 식 (66)이 성립한다.
Figure 112016117431918-pat00013
Figure 112016117431918-pat00014
Figure 112016117431918-pat00015
… (66)
이때, aij를 원화상 화소값으로 하여, 대상 블록 Ω에 대한 예측 제곱 오차는 다음 식 (67)로 나타낸다.
Figure 112016117431918-pat00016
여기서, 대상 슬라이스 내에서, 인트라 예측 모드 n으로서 부호화되는 인트라 블록의 집합을 Φ로 나타내는 것으로 하고, Φ에 속하는 블록에 관한 예측 제곱 오차의 총합은 다음 식 (68)로 나타낸다.
Figure 112016117431918-pat00017
상술한 식 (68)에서, Err(Ω∈Φ)을 c0, c1, c2, c3의 함수, 즉, Err(Ω∈Φ; c0, c1, c2, c3)으로 간주하고, Err(Ω∈Φ; c0, c1, c2, c3)을 최소로 하는 c0, c1, c2, c3이 대상 슬라이스에서의 최적의 필터 계수의 값이 되게 된다. 즉, 다음 식 (69)가 성립하는 c0, c1, c2, c3을 구하면 된다.
Figure 112016117431918-pat00018
즉, 식 (69)에 의해, 다음 식 (70)으로 나타내지는 연립 방정식이 얻어지게 된다.
Figure 112016117431918-pat00019
행렬을 이용하여 상기 식 (70)을 다시 쓰면, 식 (71)이 된다.
Figure 112016117431918-pat00020
상기 식 (71)을 품으로써, 대상 슬라이스에 대한 최적 필터 계수 및 오프셋 값{c0, c1, c2, c3}을 구할 수 있다.
또한, 최적 필터 계수 및 오프셋 값{c0, c1, c2, c3}은, 식 (70)의 연립 방정식을 품으로써, 부동 소수점의 값으로서 구해지게 되는데, 도 1의 화상 부호화 장치(51)와, 대응하는 도 22의 화상 복호 장치(151)에 적용하는 경우에는, 예를 들면 8비트의 계수로 어림된다.
즉, 필터 계수는 부동 소수점이어도, 예를 들면, 필터 계수 메모리(94)에서는, 프로세서의 레지스터 길이에 따라 n비트(n은 정수)의 값으로서 유지된다.
상술한 방법과 마찬가지의 방법을 다른 인트라 예측 모드에도 적용함으로써, 다른 인트라 예측 모드에서도 최적 필터 계수를 구할 수 있다. 또한, 인트라 4×4 예측 모드뿐만 아니라, 인트라 8×8 예측 모드, 인트라 16×16 예측 모드, 색차 신호에 대한 인트라 예측 모드에 대해서도 마찬가지의 방법에 의해 최적 필터 계수를 구할 수 있다.
상기 설명에서는, 각각의 인트라 예측 모드에 대하여 1개의 필터 계수를 구하는 것으로 했지만, 이것에 한하지 않고, 모든 인트라 예측 모드에 대하여 1개만 필터 계수를 구하도록 해도 좋다. 특히, 도 2 내지 도 14를 참조해서 상술한 인트라 예측 모드는, Vertical(수직) 및 Horizontal(수평) 모드에 관해서는 예측 화소값을 그대로 사용하는 것에 반해, 그 밖의 모드에 관해서는, 예측 화소의 생성에 어떠한 평균 처리 혹은 가중 평균 처리가 행해지기 때문에, 특성이 상이하다. 이 때문에, Vertical 및 Horizontal 모드와, 그 이외의 모드라는 2개의 클래스 분류를 행하여, 각각의 클래스에 대하여 필터 계수를 산출함으로써, 더욱 부호화 효율의 향상을 실현할 수 있다. 또한, 예를 들면, 휘도 신호에 대해서는, 인트라 4×4 예측 모드에 대하여 1개, 인트라 8×8 예측 모드에 대하여 1개, 인트라 16×16 예측 모드에 대하여 1개로 해도 좋다. 색차 신호에 관해서는, 예를 들면, Cb/Cr 각각에 대하여 별도 필터 계수를 구해도 좋다.
또한, 상기 설명에서는, 로우패스 필터 처리를 위한 필터 계수로서, {c0, c1, c2}의 3탭으로 했지만, 3탭에 한하지 않고 어떠한 탭의 필터를 사용해도 좋다. 즉, 탭 수의 필터 계수+오프셋 값이 구해진다. 단, 탭 수의 증가와 함께 풀어야 할 연립 방정식의 차수가 증대한다.
또한, CIF(Common Intermediate Format)/QCIF(Quarter CIF), SD(Standard Definition), HD(High Definition) 등과 같이, 화소 프레임에 따라 서로 다른 필터 계수를 준비해 두고, 그것을 적용할 수도 있다.
또한, 상술한 방법에서는, 인트라 예측 잔차(예측 제곱 오차)를 최소로 함으로써, 필터 계수의 산출을 행하고 있다. 단, 필터 계수의 산출 방법은, 이것에 한정되지 않고, 예를 들면 필터 계수를 복호측에 보낼 필요가 있는 경우에는, 그 필터 계수를 보내기 위한 비트를 포함시킨 최적화를 행해도 된다.
또한, 상술한 필터 계수에 있어서, 다음 식 (72)에 나타낸 바와 같이 계수의 대칭성을 가정한다.
C0 = C2 …… (72)
즉, {c0, c1, c0}과 같이, 필터 계수가, 0 위상에 대한 계수를 중심으로 해서 대칭성을 갖도록 산출된다. 이에 의해, 상술한 식 (70)에 나타내지는 3개의 연립방정식을 2개로 줄이는 것이 가능하다. 그 결과, 연산량을 줄일 수 있다.
이상의 방법을 이용하여, 입력 화상에 적절한 필터 계수를 설정하고, 적응적으로 인접 화소에 대한 로우패스 필터 처리를 행함으로써, 화상이나 양자화 파라미터, 예측 모드에 적합한 예측 화상을 이용해서 부호화하는 것이 가능하게 된다. 이에 의해, 부호화 효율을 향상시킬 수 있다.
상술한 최적 필터 계수의 산출로는, 이하의 2가지 방법을 생각할 수 있다. 제1 방법은, 부호화 처리를 행함에 앞서 트레이닝을 위한 화상 신호를 이용하여, 미리 그 화상 신호 전체를 최적화하는 필터 계수를 산출해 두는 오프라인 처리다. 상기 오프라인 처리인 학습 처리에 대해서는, 도 28을 참조해서 후술되며, 그 학습 처리에 의해 산출된 필터 계수와 오프셋 값이, 도 14의 필터 계수 메모리(94)에 기억되어 있다.
제2 방법은, 각 슬라이스에 대하여 축차 최적의 필터 계수를 산출하는 온라인 처리다. 이 경우, 산출된 필터 계수와 오프셋 값은 복호측에 보내진다. 또한, 제2 방법인 온라인 처리를 행하는 경우의 예에 대해서는, 도 20을 참조해서 후술된다.
[화상 부호화 장치의 부호화 처리의 설명]
다음으로, 도 16의 플로우차트를 참조하여, 도 1의 화상 부호화 장치(51)의 부호화 처리에 대해서 설명한다.
스텝 S11에서, A/D 변환부(61)는 입력된 화상을 A/D 변환한다. 스텝 S12에서, 화면 재배열 버퍼(62)는, A/D 변환부(61)로부터 공급된 화상을 기억하고, 각 픽쳐가 표시하는 순번에서 부호화하는 순번으로의 재배열을 행한다.
스텝 S13에서, 연산부(63)는, 스텝 S12에서 재배열된 화상과 예측 화상의 차분을 연산한다. 예측 화상은, 인터 예측하는 경우에는 움직임 예측·보상부(76)로부터, 인트라 예측하는 경우에는 인트라 예측부(74)로부터 각각 예측 화상 선택부(77)를 통해 연산부(63)에 공급된다.
차분 데이터는 원래의 화상 데이터에 비해 데이터량이 작아져 있다. 따라서, 화상을 그대로 부호화하는 경우에 비해 데이터량을 압축할 수 있다.
스텝 S14에서, 직교 변환부(64)는 연산부(63)로부터 공급된 차분 정보를 직교 변환한다. 구체적으로는, 이산 코사인 변환, 카루넨 루베 변환 등의 직교 변환이 행해지고, 변환 계수가 출력된다. 스텝 S15에서, 양자화부(65)는 변환 계수를 양자화한다. 상기 양자화에 있어서, 후술하는 스텝 S25의 처리에서 설명되는 바와 같이 레이트가 제어된다.
이상과 같이 해서 양자화된 차분 정보는, 다음과 같이 해서 국부적으로 복호된다. 즉, 스텝 S16에서, 역양자화부(68)는 양자화부(65)에 의해 양자화된 변환 계수를 양자화부(65)의 특성에 대응하는 특성으로 역양자화한다. 스텝 S17에서, 역직교 변환부(69)는 역양자화부(68)에 의해 역양자화된 변환 계수를 직교 변환부(64)의 특성에 대응하는 특성으로 역직교 변환한다.
스텝 S18에서, 연산부(70)는, 예측 화상 선택부(77)를 통해 입력되는 예측 화상을 국부적으로 복호된 차분 정보에 가산하여, 국부적으로 복호된 화상[연산부(63)에 대한 입력에 대응하는 화상]을 생성한다. 스텝 S19에서 디블록 필터(71)는, 연산부(70)로부터 출력된 화상을 필터링한다. 이에 의해 블록 왜곡이 제거된다. 스텝 S20에서 프레임 메모리(72)는, 필터링된 화상을 기억한다. 또한, 프레임 메모리(72)에는 디블록 필터(71)에 의해 필터 처리되지 않은 화상도 연산부(70)로부터 공급되어 기억된다.
스텝 S21에서, 인트라 예측부(74) 및 움직임 예측·보상부(76)는, 각각 화상의 예측 처리를 행한다. 즉, 스텝 S21에서, 인트라 예측부(74)는, 인트라 예측 모드의 인트라 예측 처리를 행한다. 움직임 예측·보상부(76)는, 인터 예측 모드의 움직임 예측·보상 처리를 행한다.
스텝 S21에서의 예측 처리의 상세 내용은, 도 17을 참조해서 후술하겠지만, 이 처리에 의해, 후보가 되는 모든 예측 모드에서의 예측 처리가 각각 행해지고, 후보가 되는 모든 예측 모드에서의 코스트 함수값이 각각 산출된다. 그리고, 산출된 코스트 함수값에 기초하여 최적 인트라 예측 모드가 선택되고, 최적 인트라 예측 모드의 인트라 예측에 의해 생성된 예측 화상과 그 코스트 함수값이 예측 화상 선택부(77)에 공급된다.
또한 이때, 인트라 예측부(74)에서는, 인트라 예측 처리에 앞서 인접 화소 내삽 필터 전환부(75)에 의해 설정된 필터 계수를 이용하여, 각 대상 블록의 인트라 예측에 이용되는 인접 화소에 대하여 필터 처리가 실시된다. 그리고, 인트라 예측부(74)에서는, 필터 처리가 실시된 인접 화소를 이용하여 인트라 예측이 행해지고, 예측 화상이 생성된다.
스텝 S22에서, 예측 화상 선택부(77)는, 인트라 예측부(74) 및 움직임 예측·보상부(76)로부터 출력된 각 코스트 함수값에 기초하여, 최적 인트라 예측 모드와 최적 인터 예측 모드 중 한쪽을 최적 예측 모드로 결정한다. 그리고, 예측 화상 선택부(77)는, 결정한 최적 예측 모드의 예측 화상을 선택하여 연산부(63, 70)에 공급한다. 상기 예측 화상이, 상술한 바와 같이 스텝 S13, S18의 연산에 이용된다.
또한, 상기 예측 화상의 선택 정보는, 인트라 예측부(74) 또는 움직임 예측·보상부(76)에 공급된다. 최적 인트라 예측 모드의 예측 화상이 선택된 경우, 인트라 예측부(74)는, 최적 인트라 예측 모드를 나타내는 정보(즉, 인트라 예측 모드 정보)를 가역 부호화부(66)에 공급한다.
최적 인터 예측 모드의 예측 화상이 선택된 경우, 움직임 예측·보상부(76)는, 최적 인터 예측 모드를 나타내는 정보와, 필요에 따라서 최적 인터 예측 모드에 따른 정보를 가역 부호화부(66)에 출력한다. 최적 인터 예측 모드에 따른 정보로는, 움직임 벡터 정보나 플래그 정보, 참조 프레임 정보 등을 들 수 있다. 즉, 최적 인터 예측 모드로서 인터 예측 모드에 의한 예측 화상이 선택되어 있을 때에는, 움직임 예측·보상부(76)는, 인터 예측 모드 정보, 움직임 벡터 정보, 참조 프레임 정보를 가역 부호화부(66)에 출력한다.
스텝 S23에서, 가역 부호화부(66)는 양자화부(65)로부터 출력된 양자화된 변환 계수를 부호화한다. 즉, 차분 화상이 가변 길이 부호화, 산술 부호화 등의 가역 부호화되어 압축된다. 이때, 상술한 스텝 S22에서 가역 부호화부(66)에 입력된 인트라 예측부(74)로부터의 정보, 또는, 움직임 예측·보상부(76)로부터의 정보, 및, 레이트 제어부(78)로부터의 양자화 파라미터 등도 부호화되어, 헤더 정보에 부가된다.
스텝 S24에서 축적 버퍼(67)는 차분 화상을 압축 화상으로서 축적한다. 축적 버퍼(67)에 축적된 압축 화상이 적절히 판독되어 전송로를 통해 복호측에 전송된다.
스텝 S25에서 레이트 제어부(78)는, 축적 버퍼(67)에 축적된 압축 화상에 기초하여, 오버플로 혹은 언더플로가 발생하지 않도록 양자화 파라미터에 의해 양자화부(65)의 양자화 동작의 레이트를 제어한다.
양자화부(65)의 레이트의 제어에 이용된 양자화 파라미터는, 가역 부호화부(66)에 공급되고, 상술한 스텝 S23에서 가역 부호화 처리되어, 압축 화상의 헤더부에 삽입된다. 또한, 상기 양자화 파라미터는, 인접 화소 내삽 필터 전환부(75)에 공급되어, 상술한 스텝 S21에서 인트라 예측에 앞서 행해지는, 인접 화소에 실시하는 필터 처리에 이용되는 필터 계수의 설정에 이용된다.
[예측 처리의 설명]
다음으로, 도 17의 플로우차트를 참조하여, 도 16의 스텝 S21에서의 예측 처리를 설명한다.
화면 재배열 버퍼(62)로부터 공급되는 처리 대상의 화상이 인트라 처리되는 블록의 화상인 경우, 참조되는 복호 완료 화상이 프레임 메모리(72)로부터 판독되어, 스위치(73)를 통해 인트라 예측부(74)에 공급된다.
스텝 S31에서, 인트라 예측부(74)는, 공급된 화상을 이용하여 처리 대상의 블록의 화소를 후보가 되는 모든 인트라 예측 모드에서 인트라 예측한다. 또한, 참조되는 복호 완료의 화소로는, 디블록 필터(71)에 의해 디블록 필터링되지 않은 화소가 이용된다.
스텝 S31에서의 인트라 예측 처리의 상세 내용은, 도 18을 참조해서 후술하겠지만, 이 처리에 의해 최적의 필터 계수가 설정되고, 설정된 필터 계수가 이용되어 인접 화소에 대하여 필터 처리가 행해진다. 그리고, 필터 처리가 행해진 인접 화소가 이용되어 인트라 예측이 행해지고, 예측 화상이 생성된다.
이상의 처리가, 후보가 되는 모든 인트라 예측 모드에 대해 행해져, 후보가 되는 모든 인트라 예측 모드에 대하여 코스트 함수값이 산출되고, 산출된 코스트 함수값에 기초하여 최적 인트라 예측 모드가 결정된다. 생성된 예측 화상과 최적 인트라 예측 모드의 코스트 함수값은, 예측 화상 선택부(77)에 공급된다.
화면 재배열 버퍼(62)로부터 공급되는 처리 대상의 화상이 인터 처리되는 화상인 경우, 참조되는 화상이 프레임 메모리(72)로부터 판독되어, 스위치(73)를 통해 움직임 예측·보상부(76)에 공급된다. 이들의 화상에 기초하여, 스텝 S32에서 움직임 예측·보상부(76)는 인터 움직임 예측 처리를 행한다. 즉, 움직임 예측·보상부(76)는, 프레임 메모리(72)로부터 공급되는 화상을 참조하여, 후보가 되는 모든 인터 예측 모드의 움직임 예측 처리를 행한다.
스텝 S32에서의 인터 움직임 예측 처리의 상세 내용은, 도 19를 참조해서 후술하겠지만, 이 처리에 의해, 후보가 되는 모든 인터 예측 모드에서 움직임 예측 처리가 행해져, 후보가 되는 모든 인터 예측 모드에 대하여 코스트 함수값이 산출된다.
스텝 S33에서, 움직임 예측·보상부(76)는, 스텝 S32에서 산출된 인터 예측 모드에 대한 코스트 함수값을 비교하여, 최소값을 부여하는 예측 모드를 최적 인터 예측 모드로서 결정한다. 그리고, 움직임 예측·보상부(76)는, 최적 인터 예측 모드에서 생성된 예측 화상과 그 코스트 함수값을, 예측 화상 선택부(77)에 공급한다.
[인트라 예측 처리의 설명]
다음으로, 도 18의 플로우차트를 참조하여, 도 17의 스텝 S31에서의 인트라 예측 처리를 설명한다. 또한, 도 18의 예에서는, 휘도 신호의 경우를 예로 들어 설명한다.
레이트 제어부(78)는, 상술한 도 16의 스텝 S25에서, 대상 블록에 대한 양자화 파라미터를 공급해 온다. 양자화 파라미터 버퍼(92)는, 스텝 S41에서, 레이트 제어부(78)로부터의 대상 블록에 대한 양자화 파라미터를 취득하여 저장한다.
예측 화상 생성부(82)는, 스텝 S42에서, 4×4 화소, 8×8 화소 및 16×16 화소의 각 인트라 예측 모드 중, 1개의 인트라 예측 모드를 선택한다. 선택한 인트라 예측 모드의 정보는 예측 모드 버퍼(91)에 저장된다.
로우패스 필터 설정부(93)는, 예측 모드 버퍼(91)로부터 인트라 예측 모드의 정보를 판독하고, 양자화 파라미터 버퍼(92)로부터 양자화 파라미터 값을 판독한다. 그리고, 로우패스 필터 설정부(93)는, 스텝 S43에서, 필터 계수 메모리(94)에 기억되어 있는, 슬라이스마다 산출된 필터 계수 중에서, 인트라 예측 모드 및 양자화 파라미터에 대응하는 필터 계수를 설정한다. 설정된 필터 계수는, 인접 화소 설정부(81)에 공급된다.
스텝 S44에서, 인접 화소 설정부(81)는, 설정된 필터 계수를 이용하여 대상 블록의 인접 화소값에 대하여 필터 처리를 행하고, 필터 처리된 인접 화소값을 예측 화상 생성부(82)에 공급한다.
스텝 S43에서, 예측 화상 생성부(82)는, 필터 처리된 인접 화소값을 이용하여 스텝 S42에서 선택된 인트라 예측 모드에서 대상 블록의 인트라 예측을 행하고, 예측 화상을 생성한다.
최적 예측 모드 판정부(83)에는, 화면 재배열 버퍼(62)로부터 판독된 인트라 예측하는 화상과, 예측 화상 생성부(82)에 의해 생성된 예측 화상과, 그 인트라 예측 모드 정보가 공급된다.
최적 예측 모드 판정부(83)는, 스텝 S46에서, 공급된 정보를 이용하여 예측 화상을 생성한 인트라 예측 모드에 대하여 코스트 함수값을 산출한다. 여기서, 코스트 함수값으로는, High Complexity 모드나 Low Complexity 모드 중 어느 하나의 방법에 기초해서 행한다. 이들 모드는, H. 264/AVC 방식에서의 참조 소프트웨어인 JM(Joint Model)로 정해져 있다.
즉, High Complexity 모드에서는, 스텝 S45의 처리로서, 후보가 되는 모든 예측 모드에 대하여 임시로 부호화 처리까지가 행해진다. 그리고, 다음의 식 (73)으로 나타내지는 코스트 함수값이 각 예측 모드에 대하여 산출되고, 그 최소값을 부여하는 예측 모드가 최적 예측 모드로서 선택된다.
Cost(Mode) = D + λ·R …… (73)
D는, 원화상과 복호 화상의 차분(왜곡), R은, 직교 변환 계수까지 포함한 발생 부호량, λ는, 양자화 파라미터(QP)의 함수로서 공급되는 라그랑쥬 승수다.
한편, Low Complexity 모드에서는, 스텝 S45의 처리로서, 후보가 되는 모든 예측 모드에 대하여, 예측 화상의 생성, 및 움직임 벡터 정보나 예측 모드 정보, 플래그 정보 등의 헤더 비트까지가 산출된다. 그리고, 다음의 식 (74)로 나타내지는 코스트 함수값이 각 예측 모드에 대하여 산출되고, 그 최소값을 부여하는 예측 모드가 최적 예측 모드로서 선택된다.
Cost(Mode) = D + QPtoQuant(QP)·Header_Bit …… (74)
D는, 원화상과 복호 화상의 차분(왜곡), Header_Bit는, 예측 모드에 대한 헤더 비트, QPtoQuant는, 양자화 파라미터(QP)의 함수로서 공급되는 함수다.
Low Complexity 모드에서는, 모두의 예측 모드에 대하여 예측 화상을 생성할 뿐이며, 부호화 처리 및 복호 처리를 행할 필요가 없기 때문에 연산량이 적어도 된다.
최적 예측 모드 판정부(83)는, 스텝 S47에서, 모든 인트라 예측 모드에 관한 처리가 종료하였는지의 여부를 판정한다. 즉, 스텝 S47에서는, 4×4 화소, 8×8 화소, 및 16×16 화소의 각 인트라 예측 모드 전부에 대해서 스텝 S42 내지 S46의 처리가 행하여졌는지의 여부가 판정된다.
스텝 S47에서, 모든 인트라 예측 모드에 대한 처리가 종료되지 않았다고 판정된 경우, 처리는 스텝 S42로 되돌아가서 그 이후의 처리가 반복된다.
스텝 S47에서, 모든 인트라 예측 모드에 관한 처리가 종료되었다고 판정된 경우, 처리는 스텝 S48로 진행한다. 최적 예측 모드 판정부(83)는, 스텝 S48에서, 산출된 코스트 함수값이 최소값이 되는 인트라 예측 모드를 최적 인트라 예측 모드로서 결정한다.
최적 인트라 예측 모드의 예측 화상과, 대응하는 코스트 함수값은, 예측 화상 선택부(77)에 공급된다.
그리고, 예측 화상 선택부(77)에 의해 최적 인트라 예측 모드에서 생성된 예측 화상이 선택된 경우, 최적 예측 모드 판정부(83)에 의해, 최적 인트라 예측 모드를 나타내는 정보는 가역 부호화부(66)에 공급된다. 그리고, 가역 부호화부(66)에서 부호화되어, 압축 화상의 헤더 정보에 부가된다(상술한 도 16의 스텝 S23).
또한, 필터 계수 메모리(94)에 기억되어 있는 학습 처리에 의해 산출된 필터 계수는, 후술하는 도 22의 화상 복호 장치(151)에도 마찬가지로 기억시킴으로써, 설정된 필터 계수를 압축 화상의 헤더 정보에 부가하고 그것을 보내는 것이 불필요해진다.
따라서, H. 264/AVC의 경우, 양자화 파라미터는 51가지가 있고, 인트라 예측 모드는, 4×4 또는 8×8에 대해서는 9가지가 있으며, 이들의 조합을 생각하면, 51×9=459가지라는 방대한 필터 계수가 필요해진다. 이렇게 방대한 필터 계수에 관한 정보를 복호측에 보낼 필요가 없으므로, 계수 정보의 오버헤드를 증대시키지 않고도 처리를 실현할 수 있다.
[인터 움직임 예측 처리의 설명]
다음으로, 도 19의 플로우차트를 참조하여, 도 17의 스텝 S32의 인터 움직임 예측 처리에 대해서 설명한다.
움직임 예측·보상부(76)는, 스텝 S61에서, 16×16 화소 내지 4×4 화소로 이루어지는 8종류의 각 인터 예측 모드에 대하여 움직임 벡터와 참조 화상을 각각 결정한다. 즉, 각 인터 예측 모드의 처리 대상의 블록에 대해서 움직임 벡터와 참조 화상이 각각 결정된다.
움직임 예측·보상부(76)는, 스텝 S62에서, 16×16 화소 내지 4×4 화소로 이루어지는 8종류의 각 인터 예측 모드에 대해서, 스텝 S61에서 결정된 움직임 벡터에 기초하여 참조 화상에 움직임 예측과 보상 처리를 행한다. 상기 움직임 예측과 보상 처리에 의해, 각 인터 예측 모드에서의 예측 화상이 생성된다.
움직임 예측·보상부(76)는, 스텝 S63에서, 16×16 화소 내지 4×4 화소로 이루어지는 8종류의 각 인터 예측 모드에 대하여 결정된 움직임 벡터에 대해서, 압축 화상에 부가하기 위한 움직임 벡터 정보를 생성한다.
생성된 움직임 벡터 정보는, 다음 스텝 S64에서의 코스트 함수값 산출시에도 이용되어, 최종적으로 예측 화상 선택부(77)에 의해 대응하는 예측 화상이 선택된 경우에는, 예측 모드 정보 및 참조 프레임 정보와 함께 가역 부호화부(66)에 출력된다.
움직임 예측·보상부(76)는, 스텝 S64에서, 16×16 화소 내지 4×4 화소로 이루어지는 8종류의 각 인터 예측 모드에 대하여, 상술한 식 (73) 또는 식 (74)로 나타내지는 코스트 함수값을 산출한다. 여기에서 산출된 코스트 함수값은, 상술한 도 17의 스텝 S34에서 최적 인터 예측 모드를 결정할 때에 이용된다.
다음으로, 도 20을 참조하여, 최적 필터 계수를 산출하는 제2 방법으로서의 각 슬라이스에 대하여 축차 최적의 필터 계수를 산출하는 온라인 처리를 행하는 경우의 예에 대해서 설명한다.
또한, 이 경우, 각 슬라이스에 대하여 부호화측에서 산출된 필터 계수를 복호측에 보낼 필요가 있고, 너무나 많은 경우로 나뉜 필터 계수를 보내는 것은, 부호화 효율의 저하를 초래한다. 따라서, 필터 계수는, 슬라이스에 대하여 1개만 전송되거나, 각 블록 크기마다의 예측 모드의 각각에 1개만 전송되거나, 혹은 수평 예측, 수직 예측, … 과 같은 예측 모드의 종류에 대하여 1개만 전송된다.
또한, 상술한 오프라인 처리의 경우에는, 필터 계수를 산출하기 위한 파라미터로서, 인트라 예측 모드와 양자화 파라미터를 이용하는 예를 설명했다. 이에 대하여, 온라인 처리의 경우, 필터 계수를 산출하기 위한 파라미터가 많으면 처리량이 증가해버리기 때문에, 도 20의 예에서는, 인트라 예측 모드만을 파라미터로 한 예를 설명한다. 설명은 생략하지만, 물론 양자화 파라미터만을 이용해도 좋고, 양쪽 모두의 파라미터를 이용할 수도 있다.
[인트라 예측부 및 인접 화소 내삽 필터 전환부의 다른 구성예]
도 20은, 각 슬라이스에 대하여, 축차 최적의 필터 계수를 산출하는 온라인 처리를 행하는 경우의 인트라 예측부(74) 및 인접 화소 내삽 필터 전환부(75)의 다른 구성예를 도시하는 블록도다.
도 20의 예의 경우, 인트라 예측부(74)와 인접 화소 내삽 필터 전환부(75) 사이에는 스위치(101)가 설치되어 있고, 스위치(101)의 온 오프에 의해, 도 14의 경우와 달리 인트라 예측부(74)는 2회 인트라 예측을 행한다. 즉, 인트라 예측부(74)에서는, 스위치(101)가 오프인 상태에서 H. 264/AVC로 정의되어 있는 인트라 예측이 행해져, 그 인트라 예측에 적합한 필터 계수가 산출된다. 그리고, 산출된 필터 계수 중에서, 스위치(101)가 온인 상태에서, 인접 화소 내삽 필터 전환부(75)에 의해 설정된 필터 계수로의 인트라 예측이 행해진다.
도 20의 인트라 예측부(74)는, 인접 화소 설정부(111), 예측 화상 생성부(112) 및 최적 예측 모드 판정부(113)에 의해 구성되어 있다.
인접 화소 내삽 필터 전환부(75)는, 예측 모드 버퍼(121), 최적 필터 산출부(122) 및 로우패스 필터 설정부(123)에 의해 구성되어 있다.
인접 화소 설정부(111)에는, 프레임 메모리(72)로부터의 인트라 예측의 대상 슬라이스의 모든 대상 블록의 인접 화소값이 공급된다. 도 20의 경우에도, 스위치(73)의 도시는 생략되어 있다. 또한, 인트라 예측의 경우, 인접 화소값으로서 디블록 필터(71)에 의해 디블록 필터링되지 않은 화소값이 이용된다.
인접 화소 설정부(111)는, 스위치(101)가 오프 상태인 경우, H. 264/AVC로 정의되어 있는 인트라 예측 모드만 필터 계수를 이용하여, 프레임 메모리(72)로부터의 대상 블록의 인접 화소값에 대하여 필터 처리를 실시하고, 예측 화상 생성부(112)에 공급한다. 즉, 식 (14) 내지 식 (24)에 상술한 8×8 예측 모드의 경우만, 필터 처리가 실시된 인접 화소값이 예측 화상 생성부(112)에 공급된다. 그 이외의 경우, 프레임 메모리(72)로부터의 대상 블록의 인접 화소값이 그대로 예측 화상 생성부(112)에 공급된다.
인접 화소 설정부(111)는, 스위치(101)가 온 상태인 경우, 로우패스 필터 설정부(123)로부터 필터 계수가 공급된다. 따라서, 인접 화소 설정부(111)는, 로우패스 필터 설정부(123)에 의해 설정된 필터 계수를 이용하여, 프레임 메모리(72)로부터의 대상 블록의 인접 화소값에 대하여 필터 처리를 실시하고, 필터 처리된 인접 화소값을 예측 화상 생성부(112)에 공급한다.
예측 화상 생성부(112)는, 인접 화소 설정부(111)로부터의 인접 화소값을 이용하여, 모든 인트라 예측 모드에서의 대상 블록의 인트라 예측을 행하고, 예측 화상을 생성한다. 생성된 예측 화상은, 인트라 예측 모드 정보와 함께 최적 예측 모드 판정부(113)에 공급된다.
최적 예측 모드 판정부(113)에는, 화면 재배열 버퍼(62)로부터 판독된 인트라 예측하는 화상과, 예측 화상 생성부(112)에 의해 생성된 예측 화상과, 그 인트라 예측 모드 정보가 공급된다.
최적 예측 모드 판정부(113)는, 공급된 정보를 이용하여 예측 화상을 생성한 인트라 예측 모드에 대하여 코스트 함수값을 산출하고, 산출한 코스트 함수값이 최소값을 부여하는 인트라 예측 모드를 최적 인트라 예측 모드로서 결정한다.
최적 예측 모드 판정부(113)는, 스위치(101)가 오프 상태인 경우, 최적 인트라 예측 모드의 정보를 예측 모드 버퍼(121)에 공급한다. 최적 예측 모드 판정부(113)는, 스위치(101)가 온 상태인 경우, 최적 인트라 예측 모드의 예측 화상과, 대응하는 코스트 함수값을 예측 화상 선택부(77)에 공급한다.
또한, 최적 예측 모드 판정부(113)는, 예측 화상 선택부(77)에 의해 최적 인트라 예측 모드에서 생성된 예측 화상이 선택된 경우, 최적 인트라 예측 모드를 나타내는 정보를 가역 부호화부(66)에 공급한다.
예측 모드 버퍼(121)는, 최적 예측 모드 판정부(113)로부터의 인트라 예측 모드 정보를 저장한다.
최적 필터 산출부(122)에는, 화면 재배열 버퍼(62)로부터 판독된 인트라 예측하는 화상과, 프레임 메모리(72)로부터의 대상 블록의 인접 화소값이 공급된다. 최적 필터 산출부(122)는, 예측 모드 버퍼(121)로부터 대상 슬라이스에 포함되는 각 블록의 인트라 예측 모드를 판독한다. 그리고, 최적 필터 산출부(122)는, 이들의 정보를 이용하여, 도 15를 참조해서 상술한 바와 같이 대상 슬라이스의 각 인트라 예측 모드에 대한 최적의 필터 계수를 산출하고, 산출한 필터 계수를 로우패스 필터 설정부(123)에 공급한다.
로우패스 필터 설정부(123)는, 산출된 대상 슬라이스의 필터 계수 중에서 대상 블록에 대한 필터 계수를 설정하고, 스위치(101)의 단자를 온으로 하여, 설정된 필터 계수를 인접 화소 설정부(111)에 공급한다. 또한, 로우패스 필터 설정부(123)는, 대상 슬라이스의 필터 계수를 가역 부호화부(66)에 공급한다.
[인트라 예측 처리의 다른 설명]
다음으로, 도 21의 플로우차트를 참조하여, 도 20의 인트라 예측부(74) 및 인접 화소 내삽 필터 전환부(75)가 행하는 인트라 예측 처리를 설명한다. 또한, 상기 인트라 예측 처리는, 도 17의 스텝 S31에서의 인트라 예측 처리의 다른 예다.
우선, 스위치(101)는 오프 상태로 되어 있다. 인접 화소 설정부(111)에는, 프레임 메모리(72)로부터의 인트라 예측의 대상 슬라이스의 모든 대상 블록의 인접 화소값이 공급된다. 인접 화소 설정부(111)는, H. 264/AVC로 정의되어 있는 8×8 화소의 인트라 예측 모드만 필터 계수를 이용하여, 프레임 메모리(72)로부터의 대상 블록의 인접 화소값에 대하여 필터 처리를 실시하고, 예측 화상 생성부(112)에 공급한다. 즉, 다른 인트라 예측 모드의 경우, 프레임 메모리(72)로부터의 대상 블록의 인접 화소값이 그대로 예측 화상 생성부(112)에 공급된다.
예측 화상 생성부(112)는, 스텝 S101에서, 대상 슬라이스에 포함되는 모든 블록에 대하여 인트라 예측 처리를 행한다. 즉, 예측 화상 생성부(112)는, 인접 화소 설정부(111)로부터의 대상 블록의 인접 화소값을 이용하여, 각 인트라 예측 모드에서 인트라 예측을 행하고, 예측 화상을 생성한다.
최적 예측 모드 판정부(113)에는, 화면 재배열 버퍼(62)로부터 판독된 인트라 예측하는 화상과, 예측 화상 생성부(112)에 의해 생성된 예측 화상과, 그 인트라 예측 모드 정보가 공급된다.
최적 예측 모드 판정부(113)는, 스텝 S102에서, 공급된 정보를 이용하여, 예측 화상을 생성한 모든 인트라 예측 모드에 대하여 상술한 식 (73) 또는 식 (74)의 코스트 함수값을 산출한다.
최적 예측 모드 판정부(113)는, 스텝 S103에서, 식 (73) 또는 식 (74)의 코스트 함수를 최소값으로 하는 인트라 예측 모드를 최적 인트라 예측 모드로서 결정하고, 결정한 인트라 예측 모드의 정보를 예측 모드 버퍼(121)에 공급한다.
최적 필터 산출부(122)에는, 화면 재배열 버퍼(62)로부터 판독된 인트라 예측하는 화상과, 프레임 메모리(72)로부터의 대상 블록의 인접 화소값이 공급된다. 최적 필터 산출부(122)는, 예측 모드 버퍼(121)로부터 대상 슬라이스에 포함되는 각 블록의 인트라 예측 모드를 판독한다.
그리고, 최적 필터 산출부(122)는, 스텝 S104에서, 이들의 정보를 이용하여, 대상 슬라이스의 각 인트라 예측 모드에 대하여 대상 슬라이스 전체에서의 잔차를 최소로 하는 필터 계수를 최적의 필터 계수로서 산출한다. 도 15를 참조해서 상술한 바와 같이 산출된 필터 계수는, 로우패스 필터 설정부(123)에 공급된다.
로우패스 필터 설정부(123)는, 산출된 대상 슬라이스의 필터 계수 중에서 대상 블록에 대한 필터 계수를 설정하고, 스위치(101)의 단자를 온으로 하여, 설정된 필터 계수를 인접 화소 설정부(111)에 공급한다.
인접 화소 설정부(111)는, 스텝 S105에서, 로우패스 필터 설정부(123)에 의해 설정된 필터 계수를 이용하여, 프레임 메모리(72)로부터의 대상 블록의 인접 화소값에 대하여 필터 처리를 행한다.
필터 처리된 인접 화소값은 예측 화상 생성부(112)에 공급된다. 예측 화상 생성부(112)는, 스텝 S106에서, 필터 처리된 인접 화소값을 이용하여 대상 슬라이스에 포함되는 모든 블록에 대하여 다시 인트라 예측을 행하고, 예측 화상을 생성한다. 생성된 예측 화상은, 인트라 예측 모드 정보와 함께 최적 예측 모드 판정부(113)에 공급된다.
최적 예측 모드 판정부(113)는, 스위치(101)가 온 상태인 경우, 최적 인트라 예측 모드의 예측 화상과, 대응하는 코스트 함수값을 예측 화상 선택부(77)에 공급한다.
예측 화상 선택부(77)는, 상술한 도 16의 스텝 S22에서, 최적 인트라 예측 모드와 최적 인터 예측 모드 중 어느 한쪽을 최적 예측 모드로 결정하고, 예측 화상의 선택 정보를 공급해 온다.
상기 예측 화상의 선택 정보에 대응하여, 최적 예측 모드 판정부(113)는, 스텝 S107에서, 최적 인트라 예측 모드의 예측 화상이 선택되었는지의 여부를 판정한다. 스텝 S107에서, 최적 인트라 예측 모드의 예측 화상이 선택되었다고 판정된 경우, 처리는 스텝 S108로 진행한다.
스텝 S108에서, 최적 예측 모드 판정부(113)는, 인트라 예측 모드의 정보를 가역 부호화부(66)에 공급한다. 또한, 대상 슬라이스에 있어서, 아직 필터 계수가 공급되지 않은 경우에는, 최적 필터 산출부(122)로부터의 필터 계수도 가역 부호화부(66)에 공급된다.
스텝 S107에서, 최적 인트라 예측 모드의 예측 화상이 선택되지 않았다고 판정된 경우, 인트라 예측 처리는 종료된다.
또한, 상술한 스텝 S104 내지 S106의 처리를 반복함으로써, 더욱 최적화된 필터 계수를 얻는 것도 가능하다.
부호화된 압축 화상은, 소정의 전송로를 통해 전송되어 화상 복호 장치에 의해 복호된다.
[화상 복호 장치의 구성예]
도 22는, 본 발명을 적용한 화상 처리 장치로서의 화상 복호 장치의 일 실시 형태의 구성을 나타내고 있다.
화상 복호 장치(151)는, 축적 버퍼(161), 가역 복호부(162), 역양자화부(163), 역직교 변환부(164), 연산부(165), 디블록 필터(166), 화면 재배열 버퍼(167), D/A 변환부(168), 프레임 메모리(169), 스위치(170), 인트라 예측부(171), 인접 화소 내삽 필터 전환부(172), 움직임 예측·보상부(173), 및 스위치(174)에 의해 구성되어 있다.
축적 버퍼(161)는 전송되어 온 압축 화상을 축적한다. 가역 복호부(162)는, 축적 버퍼(161)로부터 공급된 도 1의 가역 부호화부(66)에 의해 부호화된 정보를, 가역 부호화부(66)의 부호화 방식에 대응하는 방식으로 복호한다. 역양자화부(163)는 가역 복호부(162)에 의해 복호된 화상을, 도 1의 양자화부(65)의 양자화 방식에 대응하는 방식으로 역양자화한다. 역직교 변환부(164)는, 도 1의 직교 변환부(64)의 직교 변환 방식에 대응하는 방식으로 역양자화부(163)의 출력을 역직교 변환한다.
역직교 변환된 출력은 연산부(165)에 의해 스위치(174)로부터 공급되는 예측 화상과 가산되어 복호된다. 디블록 필터(166)는, 복호된 화상의 블록 왜곡을 제거한 후, 프레임 메모리(169)에 공급하여 축적시키는 동시에, 화면 재배열 버퍼(167)에 출력한다.
화면 재배열 버퍼(167)는 화상의 재배열을 행한다. 즉, 도 1의 화면 재배열 버퍼(62)에 의해 부호화의 순번을 위해 재배열된 프레임의 순번이, 원래의 표시의 순서대로 재배열된다. D/A 변환부(168)는, 화면 재배열 버퍼(167)로부터 공급된 화상을 D/A 변환하여, 도시하지 않은 디스플레이에 출력하여 표시시킨다.
스위치(170)는, 인터 처리되는 화상과 참조되는 화상을 프레임 메모리(169)로부터 판독하여, 움직임 예측·보상부(173)에 출력하는 동시에, 인트라 예측에 이용되는 화상을 프레임 메모리(169)로부터 판독하여 인트라 예측부(171)에 공급한다.
인트라 예측부(171)에는, 헤더 정보를 복호해서 얻어진 인트라 예측 모드를 나타내는 정보가 가역 복호부(162)로부터 공급된다. 인트라 예측부(171)는, 이들의 정보에 기초하여, 인접 화소 내삽 필터 전환부(172)에 의해 설정된 필터 계수를 이용하여, 인접 화소값에 대하여 필터 처리 및 인트라 예측을 행함으로써 예측 화상을 생성하고, 생성한 예측 화상을 스위치(174)에 출력한다.
인접 화소 내삽 필터 전환부(172)에는, 화상 부호화 장치(51)에서의 부호화 에 따라, 헤더 정보를 복호해서 얻어진 인트라 예측 모드를 나타내는 정보와 양자화 파라미터의 정보 중 적어도 1개가 가역 복호부(162)로부터 공급된다. 인접 화소 내삽 필터 전환부(172)는, 도 1의 인접 화소 내삽 필터 전환부(75)와 동일한 후술하는 도 28의 학습 장치(251)에서 학습됨으로써 얻어진, 양자화 파라미터 및 인트라 예측 모드 중 적어도 1개에 대응한 필터 계수를 기억하고 있다.
인접 화소 내삽 필터 전환부(172)는, 가역 복호부(162)로부터의 양자화 파라미터 및 인트라 예측 모드 중 적어도 1개에 대응하는 필터 계수를 설정한다. 인접 화소 내삽 필터 전환부(172)는, 설정한 필터 계수를 인트라 예측부(74)에 공급한다.
또한, 인접 화소 내삽 필터 전환부(172)에서는, 미리 오프라인에서 학습된 필터 계수가 기억되어 있다. 단, 도 1의 인접 화소 내삽 필터 전환부(75)에 있어서, 온라인에서 필터 계수가 산출된 경우에는, 그 필터 계수가 예를 들면 슬라이스마다 송신되어 온다. 이 경우, 인접 화소 내삽 필터 전환부(172)에서는, 가역 복호부(162)에 의해 복호되는 필터 계수가 이용된다.
움직임 예측·보상부(173)에는, 헤더 정보를 복호해서 얻어진 정보(예측 모드 정보, 움직임 벡터 정보, 참조 프레임 정보)가 가역 복호부(162)로부터 공급된다. 인터 예측 모드를 나타내는 정보가 공급된 경우, 움직임 예측·보상부(173)는, 움직임 벡터 정보와 참조 프레임 정보에 기초해서 화상에 움직임 예측과 보상 처리를 실시하고, 예측 화상을 생성한다. 움직임 예측·보상부(173)는, 인터 예측 모드에 의해 생성된 예측 화상을 스위치(174)에 출력한다.
스위치(174)는, 움직임 예측·보상부(173) 또는 인트라 예측부(171)에 의해 생성된 예측 화상을 선택하고, 연산부(165)에 공급한다.
또한, 도 1의 화상 부호화 장치(51)에서는, 코스트 함수에 기초하는 예측 모드 판정을 위해 모든 인트라 예측 모드에 대하여 인트라 예측 처리가 행해진다. 이에 대하여, 상기 화상 복호 장치(151)에서는, 부호화되어 보내져 오는 인트라 예측 모드의 정보에 기초해서만 인트라 예측 처리가 행해진다.
[인트라 예측부 및 인접 화소 내삽 필터 전환부의 구성예]
도 23은, 인트라 예측부 및 인접 화소 내삽 필터 전환부의 상세한 구성예를 도시하는 블록도다. 또한, 도 23의 기능 블록은, 도 14에 도시된 화상 부호화 장치(51)의 오프라인 처리의 경우의 기능 블록에 대응하는 것이다.
도 23의 예의 경우, 인트라 예측부(171)는, 예측 화상 생성부(181) 및 인접 화소 설정부(182)에 의해 구성되어 있다. 인접 화소 내삽 필터 전환부(172)는, 예측 모드 버퍼(191), 양자화 파라미터 버퍼(192), 및 로우패스 필터 설정부(193)에 의해 구성되어 있다. 또한, 로우패스 필터 설정부(193)에는, 필터 계수 메모리(194)가 내장되어 있다.
예측 화상 생성부(181)에는, 가역 복호부(162)로부터의 인트라 예측 모드 정보, 인접 화소 설정부(182)로부터 필터 처리된 인접 화소값이 공급된다. 예측 화상 생성부(181)는, 공급된 인접 화소값을 이용하여, 가역 복호부(162)로부터의 인트라 예측 모드에서의 인트라 예측을 행하여 예측 화상을 생성하고, 생성한 예측 화상을 스위치(174)에 공급한다.
인접 화소 설정부(182)에는, 프레임 메모리(169)로부터의 인트라 예측의 대상 블록의 인접 화소값이 공급된다. 도 23의 경우, 스위치(170)의 도시는 생략되어 있지만, 실제로 인접 화소값은, 프레임 메모리(169)로부터 스위치(170)를 통해 인접 화소 설정부(182)에 공급된다.
인접 화소 설정부(182)는, 로우패스 필터 설정부(193)에 의해 설정된 필터 계수를 이용하여, 프레임 메모리(169)로부터의 대상 블록의 인접 화소값에 대하여 필터 처리를 실시하고, 필터 처리된 인접 화소값을 예측 화상 생성부(181)에 공급한다.
예측 모드 버퍼(191)는, 가역 복호부(162)로부터의 인트라 예측 모드 정보를 저장한다. 양자화 파라미터 버퍼(192)는, 가역 복호부(162)로부터의 양자화 파라미터를 저장한다.
로우패스 필터 설정부(193)는, 예측 모드 버퍼(191)로부터 대상 블록의 인트라 예측 모드 정보를 판독하고, 양자화 파라미터 버퍼(192)로부터 대상 블록에 대한 양자화 파라미터를 판독한다. 로우패스 필터 설정부(193)는, 내장하는 필터 계수 메모리(194)에 기억되어 있는 필터 계수 중에서 이들의 정보에 대응하는 필터 계수를 설정하고, 설정한 필터 계수를 인접 화소 설정부(182)에 공급한다.
필터 계수 메모리(194)는, 도 14의 필터 계수 메모리(94)와 마찬가지로, 후술하는 도 28의 학습 장치(251)에서 학습됨으로써 얻어진 양자화 파라미터 및 인트라 예측 모드에 대응한 필터 계수를 기억하고 있다.
상기 필터 계수는, 예를 들면, 슬라이스마다 도 15를 참조해서 상술한 바와 같이 산출되어 기억된 것이다. 또한, 필터 계수 메모리(194)에서도, 필터 계수는, 프로세서의 레지스터 길이에 따라 n비트(n은 정수)의 값으로서 유지된다.
[화상 복호 장치의 복호 처리의 설명]
다음으로, 도 24의 플로우차트를 참조하여, 화상 복호 장치(151)가 실행하는 복호 처리에 대해서 설명한다.
스텝 S131에서, 축적 버퍼(161)는 전송되어 온 화상을 축적한다. 스텝 S132에서, 가역 복호부(162)는 축적 버퍼(161)로부터 공급되는 압축 화상을 복호한다. 즉, 도 1의 가역 부호화부(66)에 의해 부호화된 I 픽쳐, P 픽쳐, 및 B 픽쳐가 복호된다.
이때, 움직임 벡터 정보, 참조 프레임 정보, 예측 모드 정보(인트라 예측 모드 또는 인터 예측 모드를 나타내는 정보), 양자화 파라미터의 정보, 및 플래그 정보 등도 복호된다.
즉, 예측 모드 정보가 인트라 예측 모드 정보인 경우, 예측 모드 정보는, 인트라 예측부(171) 및 인접 화소 내삽 필터 전환부(172)에 공급된다. 또한, 양자화 파라미터의 정보가 복호된 경우에는, 이것도 인접 화소 내삽 필터 전환부(172)에 공급된다. 예측 모드 정보가 인터 예측 모드 정보인 경우, 예측 모드 정보와 대응하는 움직임 벡터 정보 및 참조 프레임 정보는, 움직임 예측·보상부(173)에 공급된다.
스텝 S133에서, 역양자화부(163)는 가역 복호부(162)에 의해 복호된 변환 계수를, 도 1의 양자화부(65)의 특성에 대응하는 특성으로 역양자화한다. 스텝 S134에서 역직교 변환부(164)는 역양자화부(163)에 의해 역양자화된 변환 계수를, 도 1의 직교 변환부(64)의 특성에 대응하는 특성으로 역직교 변환한다. 이에 의해 도 1의 직교 변환부(64)의 입력[연산부(63)의 출력]에 대응하는 차분 정보가 복호된 것이 된다.
스텝 S135에서, 연산부(165)는, 후술하는 스텝 S141의 처리에서 선택되고, 스위치(174)를 통해 입력되는 예측 화상을 차분 정보와 가산한다. 이에 의해 원래의 화상이 복호된다. 스텝 S136에서 디블록 필터(166)는, 연산부(165)로부터 출력된 화상을 필터링한다. 이에 의해 블록 왜곡이 제거된다. 스텝 S137에서 프레임 메모리(169)는, 필터링된 화상을 기억한다.
스텝 S138에서, 인트라 예측부(171) 및 움직임 예측·보상부(173)는, 가역 복호부(162)로부터 공급되는 예측 모드 정보에 대응하여, 각각 화상의 예측 처리를 행한다.
즉, 가역 복호부(162)로부터 인트라 예측 모드 정보가 공급된 경우, 인트라 예측부(171)는, 인트라 예측 모드의 인트라 예측 처리를 행한다. 이때, 인트라 예측부(171)는, 인접 화소 내삽 필터 전환부(172)에 의해 설정된 필터 계수를 이용하여, 인접 화소에 대한 필터 처리 및 인트라 예측 처리를 행한다.
스텝 S138에서의 예측 처리의 상세 내용은 도 25를 참조해서 후술하지만, 이 처리에 의해, 인트라 예측부(171)에 의해 생성된 예측 화상 또는 움직임 예측·보상부(173)에 의해 생성된 예측 화상이 스위치(174)에 공급된다.
스텝 S139에서, 스위치(174)는 예측 화상을 선택한다. 즉, 인트라 예측부(171)에 의해 생성된 예측 화상, 또는 움직임 예측·보상부(173)에 의해 생성된 예측 화상이 공급된다. 따라서, 공급된 예측 화상이 선택되어 연산부(165)에 공급되고, 상술한 바와 같이 스텝 S134에서 역직교 변환부(164)의 출력과 가산된다.
스텝 S140에서, 화면 재배열 버퍼(167)는 재배열을 행한다. 즉 화상 부호화 장치(51)의 화면 재배열 버퍼(62)에 의해 부호화를 위해 재배열된 프레임의 순서가, 원래의 표시의 순서로 재배열된다.
스텝 S141에서, D/A 변환부(168)는, 화면 재배열 버퍼(167)로부터의 화상을 D/A 변환한다. 상기 화상이 도시하지 않은 디스플레이에 출력되어 화상이 표시된다.
[예측 처리의 설명]
다음으로, 도 25의 플로우차트를 참조하여, 도 24의 스텝 S138의 예측 처리를 설명한다.
예측 화상 생성부(181)는, 스텝 S171에서, 대상 블록이 인트라 부호화되어 있는지의 여부를 판정한다. 가역 복호부(162)로부터 인트라 예측 모드 정보가 예측 화상 생성부(181)에 공급되면, 예측 화상 생성부(181)는, 스텝 S171에서 대상 블록이 인트라 부호화되어 있다고 판정하고, 처리는 스텝 S172로 진행한다.
예측 화상 생성부(181)는, 스텝 S172에서, 가역 복호부(162)로부터의 인트라 예측 모드 정보를 수신, 취득한다. 이때, 예측 모드 버퍼(191)에도 인트라 예측 모드 정보가 공급되어 저장된다.
또한, 가역 복호부(162)로부터 양자화 파라미터의 정보가 양자화 파라미터 버퍼(192)에 공급되면, 양자화 파라미터 버퍼(192)는, 스텝 S173에서, 양자화 파라미터를 취득하고 저장한다.
로우패스 필터 설정부(193)는, 예측 모드 버퍼(191)로부터 대상 블록의 인트라 예측 모드 정보를 판독하고, 양자화 파라미터 버퍼(192)로부터 대상 블록에 대한 양자화 파라미터를 판독한다. 로우패스 필터 설정부(193)는, 스텝 S174에서, 내장하는 필터 계수 메모리(194)에 기억되어 있는 슬라이스마다의 필터 계수 중에서 이들의 정보에 대응하는 인접 화소에 대한 필터 계수를 설정한다. 설정한 필터 계수는, 인접 화소 설정부(182)에 공급된다.
인접 화소 설정부(182)는, 스텝 S175에서, 로우패스 필터 설정부(193)에 의해 설정된 필터 계수를 이용하여, 프레임 메모리(169)로부터의 대상 블록의 인접 화소값에 대하여 필터 처리를 실시하고, 필터 처리된 인접 화소값을 예측 화상 생성부(181)에 공급한다.
예측 화상 생성부(181)는, 인접 화소 설정부(182)로부터 공급된 인접 화소값을 이용하여, 스텝 S172에서 취득한 인트라 예측 모드에서의 인트라 예측을 행하고, 예측 화상을 생성한다. 생성된 예측 화상은 스위치(174)에 공급된다.
한편, 스텝 S171에서, 인트라 부호화되지 않았다고 판정된 경우, 처리는 스텝 S177로 진행한다.
처리 대상의 화상이 인터 처리되는 화상인 경우, 가역 복호부(162)로부터 인터 예측 모드 정보, 참조 프레임 정보, 움직임 벡터 정보가 움직임 예측·보상부(173)에 공급된다. 스텝 S177에서, 움직임 예측·보상부(173)는, 가역 복호부(162)로부터의 인터 예측 모드 정보, 참조 프레임 정보, 움직임 벡터 정보 등을 취득한다.
그리고, 움직임 예측·보상부(173)는, 스텝 S178에서 인터 움직임 예측을 행한다. 즉, 처리 대상의 화상이 인터 예측 처리되는 화상인 경우, 필요한 화상이 프레임 메모리(169)로부터 판독되어, 스위치(170)를 통해 움직임 예측·보상부(173)에 공급된다. 스텝 S177에서 움직임 예측·보상부(173)는, 스텝 S176에서 취득한 움직임 벡터에 기초하여 인터 예측 모드의 움직임 예측을 하고, 예측 화상을 생성한다. 생성한 예측 화상은 스위치(174)에 출력된다.
[인트라 예측부 및 인접 화소 내삽 필터 전환부의 다른 구성예]
도 26은, 인트라 예측부 및 인접 화소 내삽 필터 전환부의 상세한 구성예를 도시하는 블록도다. 또한, 도 26의 기능 블록은, 도 20에 도시된 화상 부호화 장치(51)의 온라인 처리의 경우의 기능 블록에 대응하는 것이다.
도 26의 예의 경우, 인트라 예측부(171)는, 도 23의 예측 화상 생성부(181) 및 인접 화소 설정부(182)에 의해 구성되어 있다. 인접 화소 내삽 필터 전환부(172)는, 도 23의 예측 모드 버퍼(191), 및 내삽 필터 버퍼(201), 및 로우패스 필터 설정부(202)에 의해 구성되어 있다. 또한, 도 26의 예에서, 도 23의 경우와 대응하는 부에는 대응하는 부호가 붙여져 있으며, 기본적으로 마찬가지의 처리를 행하므로 그 설명은 생략한다.
도 26의 경우, 화상 부호화 장치(51)로부터 대상 슬라이스에 대해서 산출된 필터 계수가 부호화되어 보내져 온다. 따라서, 가역 복호부(162)는, 그것을 다른 정보와 함께 복호하고, 인접 화소 내삽 필터 전환부(172)의 내삽 필터 버퍼(201)에 공급해 온다.
내삽 필터 버퍼(201)는, 가역 복호부(162)로부터의 대상 슬라이스의 필터 계수를 취득하고 저장한다.
로우패스 필터 설정부(202)는, 예측 모드 버퍼(191)로부터 대상 블록의 인트라 예측 모드 정보를 판독한다. 로우패스 필터 설정부(202)는, 내삽 필터 버퍼(201)에 저장되어 있는 대상 슬라이스의 필터 계수 중에서, 판독한 인트라 예측 모드에 대응하는 필터 계수를 판독하여 대상 블록의 필터 계수로서 설정한다. 설정된 필터 계수는 인접 화소 설정부(182)에 공급된다.
[예측 처리의 다른 설명]
다음으로, 도 27의 플로우차트를 참조하여, 도 26의 인트라 예측부(171) 및 인접 화소 내삽 필터 전환부(172)의 경우의 예측 처리를 설명한다. 또한, 상기 인트라 예측 처리는, 도 24의 스텝 S138에서의 예측 처리의 다른 예다. 또한, 도 27의 스텝 S181, S182, 및 S185 내지 S188의 처리는, 기본적으로 도 25의 스텝 S171, S172, 및 S175 내지 S178과 마찬가지의 처리를 행하므로, 그 상세한 설명은 생략된다.
예측 화상 생성부(181)는, 스텝 S181에서, 대상 블록이 인트라 부호화되어 있는지의 여부를 판정한다. 가역 복호부(162)로부터 인트라 예측 모드 정보가 예측 화상 생성부(181)에 공급되면, 예측 화상 생성부(181)는, 스텝 S181에서, 대상 블록이 인트라 부호화되어 있다고 판정하고, 처리는 스텝 S182로 진행한다.
예측 화상 생성부(181)는, 스텝 S182에서, 가역 복호부(162)로부터의 인트라 예측 모드 정보를 수신, 취득한다. 이때, 예측 모드 버퍼(191)에도 인트라 예측 모드 정보가 공급되고 저장된다.
또한, 가역 복호부(162)로부터 대상 슬라이스의 필터 계수의 정보가 내삽 필터 버퍼(201)에 공급되면, 내삽 필터 버퍼(201)는, 스텝 S183에서 대상 슬라이스의 필터 계수를 취득하고 저장한다. 또한, 상기 필터 계수는 슬라이스마다 공급된다.
로우패스 필터 설정부(202)는, 예측 모드 버퍼(191)로부터 대상 블록의 인트라 예측 모드 정보를 판독한다. 로우패스 필터 설정부(202)는, 스텝 S184에서, 내삽 필터 버퍼(201)에 저장된 대상 슬라이스의 필터 계수 중에서 대상 블록의 인트라 예측 모드에 대응하는 인접 화소에 대한 필터 계수를 설정한다. 설정한 필터 계수는 인접 화소 설정부(182)에 공급된다.
인접 화소 설정부(182)는, 스텝 S185에서, 로우패스 필터 설정부(202)에 의해 설정된 필터 계수를 이용하여, 프레임 메모리(169)로부터의 대상 블록의 인접 화소값에 대하여 필터 처리를 실시하고, 필터 처리된 인접 화소값을 예측 화상 생성부(181)에 공급한다.
예측 화상 생성부(181)는, 스텝 S186에서, 인접 화소 설정부(182)로부터 공급된 인접 화소값을 이용하여, 스텝 S172에서 취득한 인트라 예측 모드에서의 인트라 예측을 행하여, 예측 화상을 생성한다. 생성된 예측 화상은 스위치(174)에 공급된다.
한편, 스텝 S181에서, 인트라 부호화되지 않았다고 판정된 경우, 처리는 스텝 S187로 진행한다.
스텝 S187에서, 움직임 예측·보상부(173)는, 가역 복호부(162)로부터의 인터 예측 모드 정보, 참조 프레임 정보, 움직임 벡터 정보 등을 취득한다.
움직임 예측·보상부(173)는, 스텝 S188에서 인터 움직임 예측을 행한다. 상기 처리에 의해 생성된 예측 화상은 스위치(174)에 출력된다.
이상, 도 1의 화상 부호화 장치(51) 및 도 22의 화상 복호 장치(151)에서는, 인트라 예측에 앞서 인트라 예측에 이용되는 인접 화소에 대하여 화상에 적응적으로 설정된 필터 계수를 이용하여 필터 처리가 행해진다. 예를 들면, 인트라 예측 모드나 양자화 파라미터에 따라 필터 계수가 설정된다.
이에 의해, 화상이나 비트 레이트에 따른 노이즈 제거를 행할 수 있다. 그 결과, 예측 효율을 개선할 수 있다.
도 28은, 본 발명을 적용한 학습 장치의 일 실시 형태의 구성을 나타내고 있다. 도 28의 예에서, 학습 장치(251)는, 트레이닝 화상 신호를 이용하여 필터 계수의 학습 처리를 행한다.
또한, 훈련 화상 신호란, 필터 계수를 구하기 위한 테스트 화상을 말하며, 예를 들면, www.vqeg.org에서 취득 가능한 화상 압축 부호화의 표준화에서 사용되는 표준 시퀀스를 이용해도 된다. 혹은, 또한, 각 어플리케이션에 따른 입력 화상을 이용해도 된다. 예를 들면, 입력이 카메라 신호인 경우에는, CCD나 CMOS 센서를 이용해서 촬영된 베이스밴드 신호를 이용해서 학습을 행해도 된다.
도 28의 학습 장치(251)는, A/D 변환부(61), 화면 재배열 버퍼(62), 연산부(63), 직교 변환부(64), 양자화부(65), 가역 부호화부(66), 축적 버퍼(67), 역양자화부(68), 역직교 변환부(69), 연산부(70), 디블록 필터(71), 프레임 메모리(72), 스위치(73), 인트라 예측부(74), 움직임 예측·보상부(76), 예측 화상 선택부(77), 및 레이트 제어부(78)를 구비하고 있는 점이, 도 1의 화상 부호화 장치(51)와 공통된다.
또한, 학습 장치(251)는, 이용되는 신호로서 트레이닝용 화상 신호가 이용되는 점, 및 인접 화소 내삽 필터 전환부(75) 대신에 인접 화소 내삽 필터 산출부(261)를 구비하고 있는 점이, 도 1의 화상 부호화 장치(51)와 상이하다.
구체적으로는, 학습 장치(251)에서는, I 픽쳐에 포함되는 블록만이 이용되어 학습이 행해진다. 혹은, 학습 장치(251)에서는, B 픽쳐 및 P 픽쳐에 포함되는 인트라 매크로 블록 내의 블록만이 이용되어 학습이 행해진다. 전자 쪽이, 후자보다 학습에 필요한 연산량이 적다. 또한, 전자의 경우, I 픽쳐에 포함되는 블록에 대해 구해진 계수를 I 픽쳐에 포함되는 블록에만 적용해도 좋고, B 픽쳐 및 P 픽쳐에 포함되는 인트라 매크로 블록에 대해서도 좋다.
즉, 학습 장치(251)에서는, 인트라 예측부(74)에 의한 인트라 예측에 의해서만 학습이 행해진다. 따라서, 움직임 예측·보상부(76)는, 실제로는 기능하지 않는 것으로 한다.
또한, 도 29의 인접 화소 내삽 필터 산출부(261)는, 예측 모드 버퍼(121), 최적 필터 산출부(122), 및 로우패스 필터 설정부(123)를 구비하는 점이 도 20의 인접 화소 내삽 필터 전환부(75)와 공통된다.
이에 대하여 인접 화소 내삽 필터 산출부(261)는, 필터 계수 기억부(271)가 추가되어 있는 점과, 레이트 제어부(78)로부터 양자화 파라미터가 최적 필터 산출부(122)에 공급되어 있는 점이, 도 20의 인접 화소 내삽 필터 전환부(75)와 상이하다.
구체적으로 설명하면, 도 29의 예에서는, 도 20의 예의 경우와 마찬가지로, 인트라 예측부(74)와 인접 화소 내삽 필터 전환부(75) 사이에는 스위치(101)가 설치되어 있어, 스위치(101)의 온 오프에 의해 인트라 예측부(74)는 2회 인트라 예측을 행한다.
즉, 인트라 예측부(74)에서는, 스위치(101)가 오프인 상태에서 H. 264/AVC로 정의되어 있는 인트라 예측이 행해지고, 그 인트라 예측 모드와, 양자화 파라미터에 최적인 필터 계수가 슬라이스마다 산출된다. 상기 산출된 슬라이스마다의 필터 계수는, 필터 계수 기억부(271)에 기억된다. 그리고, 스위치(101)가 온인 상태에서, 산출된 슬라이스마다의 필터 계수 중에서 인접 화소 내삽 필터 전환부(75)에 의해 설정된 필터 계수로의 인트라 예측이 행해진다.
상기 필터 계수 기억부(271)에 기억된 필터 계수가, 도 1의 화상 부호화 장치(51)의 필터 계수 메모리(94)(도 14) 및 도 22의 화상 복호 장치(151)의 필터 계수 메모리(194)(도 23)에, 기록 매체나 네트워크 등을 통해 기억된다.
[학습 처리에 있어서의 인트라 예측 처리의 설명]
다음으로, 도 30의 플로우차트를 참조하여, 도 28의 학습 장치(251)가 행하는 학습 처리 중 하나의 처리로서의 인트라 예측 처리를 설명한다. 또한, 학습 장치(251)로는, 학습 처리로서, 스텝 S21의 예측 처리가 도 30의 인트라 예측 처리로 교체된 것을 제외하고, 도 17의 부호화 처리와 기본적으로 마찬가지의 처리가 행해진다.
또한, 도 30의 스텝 S201 내지 S203, 및 S206 내지 S209는, 도 21의 스텝 S101 내지 S103, 및 S105 내지 S108과 기본적으로 마찬가지의 처리를 행하므로, 그 설명은 반복되기 때문에 생략한다. 즉, 도 30의 스텝 S204에서, 최적 필터 산출부(122)는, 대상 슬라이스의 각 인트라 예측 모드 및 대응하는 양자화 파라미터에 대하여, 대상 슬라이스 전체에서의 잔차를 최소로 하는 필터 계수를 최적의 필터 계수로서 산출한다. 산출된 필터 계수는 필터 계수 기억부(271)에 공급된다.
스텝 S205에서, 필터 계수 기억부(271)는, 최적 필터 산출부(122)로부터 공급된 필터 계수를 기억한다.
로우패스 필터 설정부(123)는, 필터 계수 기억부(271)에 기억된 대상 슬라이스의 필터 계수 중에서 대상 블록에 대한 필터 계수를 설정하고, 스위치(101)의 단자를 온으로 하여, 설정된 필터 계수를 인접 화소 설정부(111)에 공급한다.
이에 대응하여, 스텝 S206에서는 설정된 필터 계수가 이용되어, 프레임 메모리(72)로부터의 대상 블록의 인접 화소값에 대하여 필터 처리가 행해진다.
물론, 도 21의 예의 경우와 마찬가지로, 상술한 스텝 S204 내지 S207의 처리를 반복함으로써, 더욱 최적화된 필터 계수를 얻는 것도 가능하다.
이상과 같이 학습 장치(251)에서는, 트레이닝 화상 신호가 이용되어, 실제로 행해지는 부호화 처리와 마찬가지의 처리가 행해지고, 그 중에서 산출된 필터 계수가 필터 계수 기억부(271)에 보존된다. 따라서, 최적의 필터 계수를 구할 수 있다.
상기 필터 계수 기억부(271)에 기억된 필터 계수가, 도 1의 화상 부호화 장치(51)의 필터 계수 메모리(94)(도 14) 및 도 22의 화상 복호 장치(151)의 필터 계수 메모리(194)(도 23)에, 기록 매체나 네트워크 등을 통해 기억된다.
그리고, 화상 부호화 장치(51)에서는, 상술한 바와 같이 I 픽쳐에 포함되는 블록에 대해 구해진 계수(혹은 B 픽쳐 및 P 픽쳐에 포함되는 인트라 매크로 블록)가, I 픽쳐에 포함되는 블록에만 적용된다. 혹은, I 픽쳐에 포함되는 블록뿐만 아니라, B 픽쳐 및 P 픽쳐에 포함되는 인트라 매크로 블록에도 적용된다.
이에 의해, 도 1의 화상 부호화 장치(51) 및 도 22의 화상 복호 장치(151)에 있어서, 높은 부호화 효율을 실현하는 것이 가능해진다.
또한, 상술한 도 1의 화상 부호화 장치(51)의 직교 변환부(64) 및 역직교 변환부(69), 및 도 22의 화상 복호 장치(151)의 역직교 변환부(164)에서는, H. 264/AVC로 정의되어 있는 직교 변환·역직교 변환이 행해진다. 그 대신에, 도 1의 화상 부호화 장치(51)의 직교 변환부(64) 및 역직교 변환부(69), 및 도 22의 화상 복호 장치(151)의 역직교 변환부(164)에, 비특허 문헌 1에서 제안되어 있는 직교 변환·역직교 변환을 적용할 수도 있다.
이에 의해, 비특허 문헌 1에서 제안되어 있는 방식의 부호화 효율을 더욱 향상시킬 수 있다.
또한, 상기 설명에서는 인트라 예측을 행하는 예를 설명했지만, 본 발명은, 비특허 문헌 2에서 제안되는 2차 예측에 있어서의 인트라 예측에도 적용할 수 있다.
<2. 제2 실시 형태>
[화상 부호화 장치의 다른 구성예]
도 31은, 본 발명을 적용한 화상 처리 장치로서의 화상 부호화 장치의 다른 실시 형태의 구성을 나타내고 있다.
화상 부호화 장치(351)는, A/D 변환부(61), 화면 재배열 버퍼(62), 연산부(63), 직교 변환부(64), 양자화부(65), 가역 부호화부(66), 축적 버퍼(67), 역양자화부(68), 역직교 변환부(69), 연산부(70), 디블록 필터(71), 프레임 메모리(72), 스위치(73), 인트라 예측부(74), 움직임 예측·보상부(76), 예측 화상 선택부(77), 및 레이트 제어부(78)를 구비하고 있는 점은, 도 1의 화상 부호화 장치(51)와 공통된다.
또한, 화상 부호화 장치(351)는, 인접 화소 내삽 필터 전환부(75)가 제외되어 있는 점, 및 2차 예측부(361) 및 인접 화소 내삽 필터 전환부(362)가 추가되어 있는 점이, 도 1의 화상 부호화 장치(51)와 상이하다.
즉, 도 31의 예에서는, 인트라 예측부(74)는 H. 264/AVC의 인트라 예측을 행한다.
한편, 움직임 예측·보상부(76)는, 인터 처리하는 화상과 참조 화상에 기초하여, 후보가 되는 모든 인터 예측 모드의 움직임 벡터를 검출하고, 움직임 벡터에 기초해서 참조 화상에 보상 처리를 실시하여 예측 화상을 생성한다.
움직임 예측·보상부(76)는, 검출된 움직임 벡터 정보, 인터 처리하는 화상의 정보(어드레스 등), 및 인터 처리하는 화상과 생성된 예측 화상의 차분인 1차 잔차를 2차 예측부(361)에 공급한다.
움직임 예측·보상부(76)는, 2차 예측부(361)로부터의 2차 잔차를 비교함으로써, 2차 예측에 있어서의 최적의 인트라 예측 모드를 결정한다. 또한, 움직임 예측·보상부(76)는, 2차 잔차와 1차 잔차를 비교함으로써, 2차 잔차를 부호화할지 또는 1차 잔차를 부호화할지를 결정한다. 또한, 이들 처리는, 후보가 되는 모든 인터 예측 모드에 대하여 행해진다.
그리고, 움직임 예측·보상부(76)는, 후보가 되는 모든 인터 예측 모드에 대하여 코스트 함수값을 산출한다. 이때, 1차 잔차 및 2차 잔차 중 인터 예측 모드 마다 결정된 잔차가 이용되어, 코스트 함수값이 산출된다. 움직임 예측·보상부(76)는, 산출한 코스트 함수값 중 최소값을 부여하는 예측 모드를 최적 인터 예측 모드로서 결정한다.
움직임 예측·보상부(76)는, 최적 인터 예측 모드에서 생성된 예측 화상(또는 인터하는 화상과 2차 잔차의 차분), 및 그 코스트 함수값을 예측 화상 선택부(77)에 공급한다. 움직임 예측·보상부(76)는, 예측 화상 선택부(77)에 의해 최적 인터 예측 모드에서 생성된 예측 화상이 선택된 경우, 최적 인터 예측 모드를 나타내는 정보를 가역 부호화부(66)에 출력한다.
이때, 움직임 벡터 정보, 참조 프레임 정보, 2차 예측을 행하는 것을 나타내는 2차 예측 플래그, 및 2차 예측에 있어서의 인트라 예측 모드의 정보 등도 가역 부호화부(66)에 출력된다. 가역 부호화부(66)는, 움직임 예측·보상부(76)로부터의 정보를 역시 가변 길이 부호화, 산술 부호화와 같은 가역 부호화 처리하여, 압축 화상의 헤더부에 삽입한다.
2차 예측부(361)는, 움직임 예측·보상부(76)로부터의 움직임 벡터 정보와 인터 처리하는 화상의 정보에 기초하여, 인터 처리하는 대상의 대상 블록에 인접하는 대상 인접 화소를 프레임 메모리(72)로부터 판독한다. 또한, 2차 예측부(361)는, 움직임 벡터 정보에 의해 대상 블록에 대응지어지는 참조 블록에 인접하는 참조 인접 화소를 프레임 메모리(72)로부터 판독한다.
2차 예측부(361)는 2차 예측 처리를 행한다. 2차 예측 처리란, 1차 잔차, 및 대상 인접 화소와 참조 인접 화소의 차분의 사이에서 인트라 예측을 행하여, 2차 차분 정보(2차 잔차)를 생성하는 처리다.
여기서, 2차 예측 처리에 대해서 도 32를 참조하여 설명한다.
도 32의 예에서는, 대상 프레임과 참조 프레임이 나타나 있으며, 대상 프레임에는 대상 블록 A가 나타나 있다.
참조 프레임과 대상 프레임에 있어서 대상 블록 A에 대하여 움직임 벡터(mv)(mv_x, mv_y)가 구해진 경우에, 대상 블록 A와, 대상 블록 A에 움직임 벡터(mv)로 대응지어지는 블록의 차분 정보(잔차)가 산출된다.
2차 예측 방식에서는, 대상 블록 A에 관한 차분 정보뿐만 아니라, 대상 블록 A에 인접하는 인접 화소군 R과, 인접 화소군 R에 움직임 벡터(mv)로 대응지어지는 인접 화소군 R1과의 차분 정보도 산출된다.
즉, 대상 블록 A의 좌측 상단의 좌표 (x,y)로부터, 인접 화소군 R의 각 좌표가 구해진다. 또한, 대상 블록 A에 움직임 벡터(mv)로 대응지어지는 블록의 좌측 상단의 좌표(x+mv_x, y+mv_y)로부터 인접 화소군 R1의 각 좌표가 구해진다. 이들의 좌표값에 의해 인접 화소군의 차분 정보가 산출된다.
2차 예측 방식에서는, 이와 같이 산출된 대상 블록에 관한 차분 정보와, 인접 화소에 관한 차분 정보 사이에서, H. 264/AVC 방식에서의 인트라 예측이 행해지고, 이에 의해 2차 차분 정보가 생성된다. 생성된 2차 차분 정보가 직교 변환, 양자화되어, 압축 화상과 함께 부호화되어서 복호측에 보내진다.
2차 예측부(361)는, 이 2차 예측에 앞서 인접 화소 내삽 필터 전환부(362)에 의해 설정된 필터 계수를 이용하여, 인트라 예측에 이용하는 대상 인접 화소와 참조 인접 화소의 차분에 대하여 필터 처리를 행한다. 그리고, 2차 예측부(361)는, 필터 처리된 대상 인접 화소와 참조 인접 화소의 차분을 이용하여 2차 예측 처리를 행하고, 얻어진 2차 차분 정보(2차 잔차)를 움직임 예측·보상부(76)에 출력한다.
즉, 2차 예측부(361)는, 도 14에 도시한 인트라 예측부(74) 등을 포함하도록 구성되어 있다.
인접 화소 내삽 필터 전환부(362)는, 도 1의 인접 화소 내삽 필터 전환부(75)와 기본적으로 마찬가지로 구성되어 마찬가지의 처리를 행한다. 즉, 인접 화소 내삽 필터 전환부(362)는, 2차 예측부(361)로부터의 인트라 예측 모드의 정보와, 레이트 제어부(78)로부터의 양자화 파라미터에 따른 필터 계수를 설정하고, 설정한 필터 계수를 2차 예측부(361)에 공급한다.
또한, 도 31의 화상 부호화 장치(351)의 부호화 처리는, 이하의 인트라 처리와 움직임 예측 처리가 서로 다를 뿐이며, 그 밖의 처리는, 도 1의 화상 부호화 장치(51)에 의한 도 16의 부호화 처리와 기본적으로 마찬가지의 처리이기 때문에, 그 설명은 생략한다.
즉, 도 31의 화상 부호화 장치(351)에서는, 인트라 처리로서 H. 264/AVC 방식에서의 인트라 예측이 행해진다. 또한, 움직임 예측 처리로서, 움직임 예측 처리시에 인접 화소 내삽 필터 전환부(362)에 의해 설정된 필터 계수가 이용되어 2차 차분 정보가 생성된다. 그리고, 1차 차분 정보와 2차 차분 정보 중 부호화 효율이 좋은 것이 선택되어, 코스트 함수값이 비교됨으로써 최적 인터 예측 모드가 결정된다.
상기 화상 부호화 장치(351)에 의해 부호화된 압축 화상을 받아, 그것을 복호하는 화상 복호 장치에 대해서 도 33을 참조하여 설명한다.
[화상 복호 장치의 다른 구성예]
도 33은, 본 발명을 적용한 화상 처리 장치로서의 화상 복호 장치의 다른 실시 형태의 구성을 나타내고 있다.
화상 복호 장치(401)는, 축적 버퍼(161), 가역 복호부(162), 역양자화부(163), 역직교 변환부(164), 연산부(165), 디블록 필터(166), 화면 재배열 버퍼(167), D/A 변환부(168), 프레임 메모리(169), 스위치(170), 인트라 예측부(171), 움직임 예측·보상부(173), 및 스위치(174)를 구비하는 점이, 도 22의 화상 복호 장치(151)와 공통된다.
또한, 화상 복호 장치(401)는, 인접 화소 내삽 필터 전환부(172)가 제외되어 있는 점, 및 2차 예측부(411) 및 인접 화소 내삽 필터 전환부(412)가 추가되어 있는 점이, 도 22의 화상 복호 장치(151)와 상이하다.
즉, 인트라 예측부(171)에는, 헤더 정보를 복호해서 얻어진 인트라 예측 모드를 나타내는 정보가 가역 복호부(162)로부터 공급된다. 인트라 예측부(171)는, 상기 정보에 기초하여 예측 화상을 생성하고, 생성한 예측 화상을 스위치(174)에 출력한다.
움직임 예측·보상부(173)에는, 헤더 정보를 복호해서 얻어진 정보 중, 예측 모드 정보, 움직임 벡터 정보, 참조 프레임 정보 등이 가역 복호부(162)로부터 공급된다. 또한, 움직임 예측·보상부(173)에는, 대상 블록에 대하여 2차 예측 처리가 적용되어 있는 경우에는, 2차 예측을 행하는 것을 나타내는 2차 예측 플래그와, 2차 예측에서의 인트라 예측 모드 정보도 가역 복호부(162)로부터 공급된다.
움직임 예측·보상부(173)는, 2차 예측 처리가 적용되어 있다고 판정한 경우, 2차 예측부(411)를 제어하고, 2차 예측에서의 인트라 예측 모드 정보가 나타내는 인트라 예측 모드에서 2차 예측을 행하게 한다.
움직임 예측·보상부(173)는, 움직임 벡터 정보와 참조 프레임 정보에 기초해서 화상에 움직임 예측과 보상 처리를 실시하여 예측 화상을 생성한다. 즉, 대상 블록의 예측 화상은, 참조 프레임에 있어서, 대상 블록에 움직임 벡터로 대응지어지는 참조 블록의 화소값이 이용되어 생성된다. 그리고, 움직임 예측·보상부(173)는, 생성된 예측 화상과 2차 예측부(411)로부터의 예측 차분값을 가산하고, 그것을 스위치(174)에 출력한다.
2차 예측부(411)는, 프레임 메모리(169)로부터 판독되는 대상 인접 화소와 참조 인접 화소의 차분을 이용하여 2차 예측을 행한다. 2차 예측부(411)는, 상기 2차 예측에 앞서, 인접 화소 내삽 필터 전환부(412)에 의해 설정된 필터 계수를 이용하여 대상 인접 화소와 참조 인접 화소의 차분에 대하여 필터 처리를 행한다. 그리고, 2차 예측부(411)는, 필터 처리된 대상 인접 화소와 참조 인접 화소의 차분을 이용하여 2차 예측 처리를 행하고, 얻어진 2차 차분 정보(2차 잔차)를 움직임 예측·보상부(173)에 출력한다.
즉, 2차 예측부(411)는, 도 26에 도시한 인트라 예측부(171)를 포함하도록 구성되어 있다.
인접 화소 내삽 필터 전환부(412)는, 인접 화소 내삽 필터 전환부(172)와 기본적으로 마찬가지로 구성된다. 즉, 인접 화소 내삽 필터 전환부(412)는, 가역 복호부(162)로부터의 양자화 파라미터 및 인트라 예측 모드 중 적어도 1개에 대응하는 필터 계수를 설정한다. 인접 화소 내삽 필터 전환부(412)는, 설정한 필터 계수를 2차 예측부(411)에 공급한다.
또한, 도 33의 화상 복호 장치(401)의 부호화 처리는, 이하의 인트라 처리와 움직임 예측 처리가 서로 다를 뿐이며, 그 밖의 처리는, 도 22의 화상 복호 장치(151)에 의한 도 24의 복호 처리와 기본적으로 마찬가지의 처리이기 때문에, 그 설명은 생략한다.
즉, 도 33의 화상 복호 장치(401)에서는, 인트라 처리로서 H. 264/AVC 방식에서의 인트라 예측이 행해진다. 또한, 움직임 예측 처리로서, 움직임 예측 처리시에 인접 화소 내삽 필터 전환부(412)에 의해 설정된 필터 계수가 이용되어 2차 예측(인트라 예측)이 행해지고, 2차 차분 정보가 생성된다.
이상과 같은 2차 예측 처리에 있어서의 인트라 예측에도 본 발명을 적용할 수 있다.
또한, 상기 설명에서는, 인트라 예측에 앞서, 인트라 예측에 이용되는 인접 화소에 대하여 화상에 적응적으로 설정된 필터 계수를 이용해서 필터 처리가 행해지는 예를 설명했다.
그런데, 인트라 예측 방식에 이용되는 인접 화소에 포함되는 노이즈는, 화상 콘텐츠 및 양자화 파라미터 등의 부호화 조건에 따라 다르다. 이 때문에, 예를 들면, H. 264/AVC 방식에서 행해지는 필터 처리를 실시함으로써, 부호화 효율이 향상하는 블록과 그렇지 않은 블록이 존재한다.
그럼에도 불구하고, H. 264/AVC 방식에서는, 매크로 블록에 대하여 8×8 블록 베이스의 인트라 예측이 행해질 때, 모든 블록에 대하여 한결같이 필터 처리가 행해지고 있었기 때문에, 이에 의해 부호화 효율이 저하하는 블록이 발생했었다.
따라서, 다음으로, 인트라 예측에 이용되는 인접 화소에 대한 필터 처리를 온/오프하는 경우의 예에 대해서 설명한다.
<3. 제3 실시 형태>
[화상 부호화 장치의 다른 구성예]
도 34는, 본 발명을 적용한 화상 처리 장치로서의 화상 부호화 장치의 다른 실시 형태의 구성을 나타내고 있다.
화상 부호화 장치(451)는, A/D 변환부(61), 화면 재배열 버퍼(62), 연산부(63), 직교 변환부(64), 양자화부(65), 가역 부호화부(66), 축적 버퍼(67), 역양자화부(68), 역직교 변환부(69), 연산부(70), 디블록 필터(71), 프레임 메모리(72), 스위치(73), 인트라 예측부(74), 움직임 예측·보상부(76), 예측 화상 선택부(77), 및 레이트 제어부(78)를 구비하고 있는 점은, 도 1의 화상 부호화 장치(51)와 공통된다.
또한, 화상 부호화 장치(451)는, 인접 화소 내삽 필터 전환부(75)가 인접 화소 내삽 필터 제어부(461)로 교체되어 있는 점이, 도 1의 화상 부호화 장치(51)와 상이하다.
즉, 인접 화소 내삽 필터 제어부(461)는, H. 264/AVC 방식에서는, 8×8 블록 베이스의 인트라 예측이 행해질 때, 모든 블록에 대하여 한결같이 행해졌던 인접 화소에 대한 필터 처리를 온 또는 오프하는 제어를 행한다. 또한, H. 264/AVC 방식에서는, 8×8 블록 베이스의 인트라 예측에 대해서만 필터 처리가 행해지고 있었지만, 화상 부호화 장치(451)에서는, 인트라 4×4, 인트라 16×16에 대해서도 행해진다.
인접 화소 내삽 필터 제어부(461)로부터의 필터 처리의 온/오프의 제어 신호는 인트라 예측부(74)에 공급된다.
인트라 예측부(74)는, 화면 재배열 버퍼(62)로부터 판독된 인트라 예측하는 화상과 프레임 메모리(72)로부터 공급된 참조 화상에 기초하여, 후보가 되는 모든 인트라 예측 모드의 인트라 예측 처리를 행하여 예측 화상을 생성한다. 이때, 인트라 예측부(74)에서는, 인트라 예측에 앞서, 인접 화소 내삽 필터 제어부(461)로부터의 제어 신호에 따라 필터 처리를 온 또는 오프하여 인트라 예측이 행해지고, 결과적으로, 산출되는 코스트 함수값이 작은 쪽이 채용된다.
또한, 인트라 예측부(74)는, 상기 필터 처리의 온 또는 오프를 나타내는 플래그를 생성한다. 상기 플래그 정보는, 예측 화상 선택부(77)에 의해 최적 인트라 예측 모드에서 생성된 예측 화상이 선택된 경우, 최적 인트라 예측 모드를 나타내는 정보와 함께 가역 부호화부(66)에 공급된다.
[인트라 예측부의 구성예]
도 35는, 도 34의 인트라 예측부(74)의 상세한 구성예를 도시하는 블록도다. 도 35의 예의 경우, 인트라 예측부(74)는, 예측 화상 생성부(471), 코스트 함수값생성부(472), 및 모드 및 온/오프 판정부(473)에 의해 구성되어 있다.
예측 화상 생성부(471)에는, 프레임 메모리(72)로부터의 인트라 예측의 대상 블록의 인접 화소값이 공급된다. 도 35의 경우, 스위치(73)의 도시는 생략되어 있지만, 실제로 인접 화소값은, 프레임 메모리(72)로부터 스위치(73)를 통해 예측 화상 생성부(471)에 공급된다. 또한, 인트라 예측의 경우, 인접 화소값으로서 디블록 필터(71)에 의해 디블록 필터링되지 않은 화소값이 이용된다.
예측 화상 생성부(471)는, 인접 화소 내삽 필터 제어부(461)로부터의 제어 신호에 기초하여 인접 화소값에 대한 필터 처리를 행하거나 혹은 필터 처리를 행하지 않고, 후보가 되는 모든 인트라 예측 모드의 인트라 예측 처리를 행하여 예측 화상을 생성한다. 상기 제어 신호가 나타내는 인접 화소 내삽 필터 제어부(461)에 의한 온/오프의 제어는, 도 36 내지 도 38을 참조해서 후술하는 바와 같이, 블록 단위 또는 매크로 블록 단위로 행해진다.
예측 화상 생성부(471)는, 생성한 예측 화상 화소값과, 그 인트라 예측 모드의 정보를 코스트 함수값 생성부(472)에 공급한다.
코스트 함수값 생성부(472)에는, 화면 재배열 버퍼(62)로부터 원화상 화소값이 공급된다. 코스트 함수값 생성부(472)는, 원화상 화소값과 예측 화상 화소값을 이용하여, 필터 처리 온 또는 오프의 경우의 각 인트라 예측 모드에 대한 코스트 함수값을 산출한다. 코스트 함수값 생성부(472)는, 산출한 코스트 함수값, 예측 화상 화소값, 및 인트라 예측 모드의 정보를 모드 및 온/오프 판정부(473)에 공급한다.
모드 및 온/오프 판정부(473)는, 코스트 함수값 생성부(472)로부터의 코스트 함수값을 이용하여, 최적 인트라 예측 모드와, 필터 처리를 온 또는 오프 중 어느 쪽으로 설정할지를 결정하고, 필터 처리의 온 또는 오프를 나타내는 온/오프 플래그 정보를 생성한다.
모드 및 온/오프 판정부(473)는, 최적 인트라 예측 모드의 예측 화상 화소값을 예측 화상 선택부(77)에 공급한다. 예측 화상 선택부(77)에 의해 최적 인트라 예측 모드의 예측 화상이 선택된 경우, 모드 및 온/오프 판정부(473)는, 최적 인트라 예측 모드를 나타내는 정보와, 대응하는 온/오프 플래그 정보를 가역 부호화부(66)에 공급한다.
또한, 화상 부호화 장치(451)에 의한 처리는, 이하에 설명하는 인트라 예측 처리 외에는 도 1의 화상 부호화 장치(51)의 처리와 마찬가지의 처리를 행하기 때문에, 그 설명은 반복되므로 생략된다.
다음으로, 도 36의 플로우차트를 참조하여, 블록 단위로 온 또는 오프의 제어가 행해지는 경우의 도 34의 인트라 예측부(74)의 인트라 예측 처리에 대해서 설명한다. 또한, 상기 처리는, 도 17의 스텝 S31의 인트라 예측 처리의 다른 예이며, 도 36의 예에서는 인트라 4×4를 예로 들어 설명한다. 또한, 이하, 필터 처리 온/오프를 간단히 필터 온/오프라고도 한다.
스텝 S401에서, 코스트 함수값 생성부(472)는, 대상 블록에 대해서, 도 3 또는 도 4에 도시한 9종류의 각각의 인트라 예측 모드에 대한 코스트 함수값을 생성한다.
즉, 예측 화상 생성부(471)에는, 프레임 메모리(72)로부터의 인트라 예측의 대상 블록의 인접 화소값이 공급된다. 예측 화상 생성부(471)는, 도 3 또는 도 4에 도시한 9종류의 각각의 인트라 예측 모드에 대한 인트라 예측을 행하고, 대상 블록의 예측 화상을 생성한다.
이때, 인접 화소 내삽 필터 제어부(461)로부터 인접 화소에 대한 필터 처리를 행하지 않는 제어 신호가 공급되어, 예측 화상 생성부(471)는, 인접 화소에 대한 필터 처리를 행하지 않고 인트라 예측을 행한다. 또한, 여기서는, 인접 화소에 대한 필터 처리를 행하는 제어 신호가 공급되도록 해도 좋다. 단, 예를 들면, 9개의 모드 중 Vertical에는 행하지만 Horizontal에는 행하지 않는 등 서로 다른 제어를 하는 것이 아니라, 행할지 행하지 않을지는 9개의 모드에 대하여 동일한 제어를 행하는 것으로 한다. 또한 여기서는, 모든 모드에 대하여 필터 처리를 행하지 않는 것으로 하는 것이 연산량이 적다.
예측 화상 생성부(471)는, 생성한 예측 화상 화소값과 그 인트라 예측 모드의 정보를, 코스트 함수값 생성부(472)에 공급한다. 코스트 함수값 생성부(472)는, 화면 재배열 버퍼(62)로부터의 원화상 화소값과 예측 화상 화소값을 이용하여, 필터 오프인 경우의 각 인트라 예측 모드에 대하여, 상술한 식 (73) 또는 식 (74)로 나타내지는 코스트 함수값을 산출한다. 코스트 함수값 생성부(472)는, 산출한 코스트 함수값, 예측 화상 화소값, 및 인트라 예측 모드의 정보를 모드 및 온/오프 판정부(473)에 공급한다.
스텝 S402에서, 모드 및 온/오프 판정부(473)는, 코스트 함수값 생성부(472)로부터의 코스트 함수값을 이용하여, 대상 블록에 대해서 최적의 인트라 예측 모드를 선택한다. 선택된 인트라 예측 모드의 정보는, 인접 화소 내삽 필터 제어부(461)에 공급된다.
스텝 S403에서, 인접 화소 내삽 필터 제어부(461)는, 코스트 함수값 생성부(472)에, 선택된 인트라 예측 모드에 대하여 필터 온 및 오프의 코스트 함수값을 생성시킨다. 또한, 스텝 S401에서 필터 오프의 코스트 함수값은 생성되어 있으므로, 실제로 스텝 S403에서는, 필터 온의 코스트 함수값이 생성된다.
즉, 인접 화소 내삽 필터 제어부(461)는, 예측 화상 생성부(471)에, 필터 온의 제어 신호와 선택된 인트라 예측 모드의 정보를 공급한다. 예측 화상 생성부(471)는, 선택된 인트라 예측 모드에 이용되는 인접 화소값에 대한 필터 처리를 행하고, 선택된 인트라 예측 모드에서 인트라 예측을 행하여 대상 블록의 예측 화상을 생성한다.
예측 화상 생성부(471)는, 생성한 예측 화상 화소값과 선택된 인트라 예측 모드의 정보를, 코스트 함수값 생성부(472)에 공급한다. 코스트 함수값 생성부(472)는, 화면 재배열 버퍼(62)로부터의 원화상 화소값과 예측 화상 화소값을 이용하여, 필터 온인 경우의 선택된 인트라 예측 모드에 대하여, 상술한 식 (73) 또는 식 (74)로 나타내지는 코스트 함수값을 산출한다. 코스트 함수값 생성부(472)는, 산출한 코스트 함수값 및 예측 화상 화소값을, 모드 및 온/오프 판정부(473)에 공급한다.
스텝 S404에서, 모드 및 온/오프 판정부(473)는, 선택된 인트라 예측 모드에 관한 필터 온 및 오프의 코스트 함수값을 비교하여, 대상 블록에 대해서 필터 온/오프를 결정한다. 즉, 필터 온의 코스트 함수값이 작은 경우에는, 대상 블록에 대해서 필터 온을 결정하고, 필터 오프의 코스트 함수값이 작은 경우에는, 대상 블록에 대해서 필터 오프를 결정한다. 그리고, 모드 및 온/오프 판정부(473)는, 결정된 쪽의 예측 화상값을 예측 화상 선택부(77)에 공급한다.
스텝 S405에서, 모드 및 온/오프 판정부(473)는, 대상 블록에 대해서 스텝 S404에서 결정된 온 또는 오프를 나타내는 온/오프 플래그를 생성한다. 예를 들면, 필터 온인 경우, 온/오프 필터의 값은 1이 된다. 필터 오프인 경우, 온/오프 필터의 값은 0이 된다.
생성된 온/오프 플래그 정보는, 상술한 도 16의 스텝 S22에서 인트라 예측 모드의 예측 화상이 선택된 경우에, 최적 인트라 예측 모드를 나타내는 정보와 함께 가역 부호화부(66)에 공급된다. 그리고, 공급된 이들의 정보는, 도 16의 스텝 S23에서 부호화되어, 압축 화상의 헤더에 부가되어 복호측에 송신된다.
다음으로, 도 37의 플로우차트를 참조하여, 블록 단위로 온 또는 오프의 제어가 행해지는 경우의 도 34의 인트라 예측부(74)의 인트라 예측 처리의 다른 예에 대해서 설명한다. 도 37의 예의 경우에도 인트라 4×4를 예로 들어 설명한다.
스텝 S421에서, 코스트 함수값 생성부(472)는, 대상 블록에 대해서, 각각의 인트라 예측 모드에 대하여 필터의 온 및 오프에 의한 코스트 함수값을 생성한다.
즉, 예측 화상 생성부(471)에는, 프레임 메모리(72)로부터의 인트라 예측의 대상 블록의 인접 화소값이 공급된다. 예측 화상 생성부(471)는, 도 3 또는 도 4에 도시한 9종류의 각각의 인트라 예측 모드에 대한 인트라 예측을 행하고, 대상 블록의 예측 화상을 생성한다.
이때, 우선, 인접 화소 내삽 필터 제어부(461)로부터, 인접 화소에 대한 필터 처리를 행하지 않는 제어 신호가 공급되어, 예측 화상 생성부(471)는, 인접 화소에 대한 필터 처리를 행하지 않고 각 인트라 예측 모드에 대한 인트라 예측을 행하여 예측 화상을 생성한다. 또한, 인접 화소 내삽 필터 제어부(461)로부터, 인접 화소에 대한 필터 처리를 행하는 제어 신호가 공급되어, 예측 화상 생성부(471)는, 인접 화소에 대한 필터 처리를 행하고, 각 인트라 예측 모드에 대한 인트라 예측을 행하여 예측 화상을 생성한다.
예측 화상 생성부(471)는, 필터 온 및 오프의 각 인트라 예측 모드의 정보와, 대응하는 예측 화상 화소값을, 코스트 함수값 생성부(472)에 공급한다. 코스트 함수값 생성부(472)는, 화면 재배열 버퍼(62)로부터의 원화상 화소값과 예측 화상 화소값을 이용하여, 필터 처리 오프인 경우, 온인 경우 각각의 각 인트라 예측 모드에 대하여, 상술한 식 (73) 또는 식 (74)로 나타내지는 코스트 함수값을 산출한다. 코스트 함수값 생성부(472)는, 산출한 필터 처리 온, 오프의 각 경우의 코스트 함수값, 예측 화상 화소값, 및 인트라 예측 모드의 정보를, 모드 및 온/오프 판정부(473)에 공급한다.
스텝 S422에서, 모드 및 온/오프 판정부(473)는, 코스트 함수값 생성부(472)로부터의 코스트 함수값을 이용하여, 대상 블록에 대해서, 각각의 인트라 예측 모드에 대하여 필터를 온으로 할지 오프로 할지를 결정한다.
그리고 또한, 스텝 S423에서, 모드 및 온/오프 판정부(473)는, 필터 온 또는 오프가 결정된 각 인트라 예측 모드 중에서, 대상 블록에 대한 최적의 인트라 예측 모드를 선택한다.
스텝 S424에서, 모드 및 온/오프 판정부(473)는, 선택한 인트라 예측 모드의 필터의 상태(온이거나 오프)를 나타내는 온/오프 플래그를 생성한다. 생성된 온/오프 플래그 정보는, 상술한 도 16의 스텝 S22에서 인트라 예측 모드의 예측 화상이 선택된 경우에, 최적 인트라 예측 모드를 나타내는 정보와 함께 가역 부호화부(66)에 공급된다. 그리고, 공급된 이들의 정보는, 도 16의 스텝 S23에서 부호화되어, 압축 화상의 헤더에 부가되어 복호측에 송신된다.
다음으로, 도 38의 플로우차트를 참조하여, 매크로 블록 단위로 온 또는 오프의 제어가 행해지는 경우의 도 34의 인트라 예측부(74)의 인트라 예측 처리에 대해서 설명한다. 또한, 이 처리는, 도 17의 스텝 S31의 인트라 예측 처리의 다른 예이며, 도 38의 예에서도 인트라 4×4를 예로 들어 설명한다.
스텝 S451에서, 인접 화소 내삽 필터 제어부(461)는, 매크로 블록 전체에 대한 필터를 오프 또는 온으로 고정한다. 지금의 경우, 인접 화소 내삽 필터 제어부(461)는, 필터를 오프로 고정하고, 필터 오프의 제어 신호를 예측 화상 생성부(471)에 공급한다. 필터의 고정은 온이나 오프 모두 좋지만, 오프로 고정하는 것이 보다 적은 연산량에 의해 실현하는 것이 가능해진다.
인트라 예측부(74)는, 스텝 S452에서, 각각의 블록에 대하여 인트라 예측 모드를 결정한다. 즉, 예측 화상 생성부(471)에는, 프레임 메모리(72)로부터의 인트라 예측의 대상 블록의 인접 화소값이 공급된다. 예측 화상 생성부(471)는, 도 3 또는 도 4에 도시한 9종류의 각각의 인트라 예측 모드에 대한 인트라 예측을 행하고, 대상 블록의 예측 화상을 생성한다.
이때, 인접 화소 내삽 필터 제어부(461)로부터, 인접 화소에 대한 필터 처리를 행하지 않는 제어 신호가 공급되어, 예측 화상 생성부(471)는, 인접 화소에 대한 필터 처리를 행하지 않고 인트라 예측을 행하여 예측 화상을 생성한다. 예측 화상 생성부(471)는, 생성한 예측 화상 화소값과, 그 인트라 예측 모드의 정보를 코스트 함수값 생성부(472)에 공급한다.
코스트 함수값 생성부(472)는, 화면 재배열 버퍼(62)로부터의 원화상 화소값과 예측 화상 화소값을 이용하여, 필터 오프인 경우의 각 인트라 예측 모드에 대하여, 상술한 식 (73) 또는 식 (74)로 나타내지는 코스트 함수값을 산출한다. 코스트 함수값 생성부(472)는, 산출한 코스트 함수값, 예측 화상 화소값 및 인트라 예측 모드의 정보를, 모드 및 온/오프 판정부(473)에 공급한다.
모드 및 온/오프 판정부(473)는, 코스트 함수값 생성부(472)로부터의 코스트 함수값을 이용하여, 각각의 블록에 대해서 최적의 인트라 예측 모드를 결정한다. 결정된 인트라 예측 모드의 정보는, 인접 화소 내삽 필터 제어부(461)에 공급된다.
스텝 S453에서, 인접 화소 내삽 필터 제어부(461)는, 코스트 함수값 생성부(472)에, 매크로 블록 전체에 대하여 필터 온 및 오프의 코스트 함수값을 생성시킨다. 또한, 매크로 블록 내의 각 블록의 최적의 인트라 예측 모드(즉, 매크로 블록 전체)에 대한 필터 오프의 코스트 함수값은, 스텝 S452에서 생성되어 있다. 따라서, 실제로 스텝 S453에서는, 매크로 블록 전체에 대한 필터 온의 코스트 함수값이 생성된다.
즉, 인접 화소 내삽 필터 제어부(461)는, 예측 화상 생성부(471)에, 필터 온의 제어 신호와, 각 블록에 대해서 각각 결정된 인트라 예측 모드의 정보를 공급한다. 예측 화상 생성부(471)는, 결정된 인트라 예측 모드에 이용되는 인접 화소값 에 대한 필터 처리를 행하고, 결정된 인트라 예측 모드에서 인트라 예측을 행하여 대상 블록의 예측 화상을 생성한다.
예측 화상 생성부(471)는, 생성한 예측 화상 화소값과, 결정된 인트라 예측 모드의 정보를, 코스트 함수값 생성부(472)에 공급한다. 코스트 함수값 생성부(472)는, 화면 재배열 버퍼(62)로부터의 원화상 화소값과 예측 화상 화소값을 이용하여, 필터 처리 온인 경우의 결정된 인트라 예측 모드에 대하여, 상술한 식 (73) 또는 식 (74)로 나타내지는 코스트 함수값을 산출한다. 코스트 함수값 생성부(472)는, 산출한 필터 온 및 오프의 경우의 코스트 함수값 및 예측 화상 화소값을, 모드 및 온/오프 판정부(473)에 공급한다.
스텝 S454에서, 모드 및 온/오프 판정부(473)는, 코스트 함수값 생성부(472)로부터의 필터 온 및 오프의 경우의 매크로 블록 내의 모든 블록의 코스트 함수값을 비교하여, 매크로 블록 전체에 대하여 필터 온/오프 중 어느 쪽을 적용할지를 결정한다.
스텝 S455에서, 모드 및 온/오프 판정부(473)는, 매크로 블록 전체에 대하여 스텝 S454에서 결정된 온 또는 오프를 나타내는 온/오프 플래그를 생성한다. 생성된 온/오프 플래그 정보는, 매크로 블록마다 가역 부호화부(66)에 공급된다. 그리고, 공급된 이들의 정보는, 스텝 S23에서 부호화되어, 압축 화상의 헤더에 부가되어 복호측에 송신된다.
이상과 같이, 필터의 온/오프(온 또는 오프)의 제어는, 블록 단위로 행할 수도 있고, 매크로 블록 단위로 행할 수도 있다. 또한, 블록 단위로 온/오프를 제어함으로써 인트라 예측 처리에 의한 예측 정밀도를 향상시킬 수 있지만, 각 블록에 대한 플래그 정보를 전송하는데 필요한 정보량이 증대해버린다. 이에 대해, 매크로 블록 단위로 제어하는 경우, 예측 정밀도의 향상은 블록 단위로 행하는 것보다 낮지만, 플래그 정보는 각 매크로 블록에 1개로 충분하므로, 플래그에 의한 정보량의 증대를 적게 할 수 있다.
또한, 상기 설명에서는 휘도 신호의 예를 설명했지만, 색차 신호에 대한 인트라 예측에도 이용할 수 있다. 또한, 제어하는 필터 처리에서의 필터 계수에 대해서는, H. 264/AVC 방식에서의 {1, 2, 1}//4라는 3탭의 것에 한하지 않고, 임의의 탭 길이의 임의의 계수나, 도 1의 화상 부호화 장치(51)에서 설정되는 필터 계수에도 적용할 수 있다.
즉, 필터 온인 경우에는, 도 1의 화상 부호화 장치(51)에서 설정되는 필터 계수에 의한 필터 처리가 행해지는 것으로 할 수도 있다.
상기 화상 부호화 장치(451)에 의해 부호화된 압축 화상을 받아, 그것을 복호하는 화상 복호 장치에 대해서 도 39를 참조하여 설명한다.
[화상 복호 장치의 다른 구성예]
도 39는, 본 발명을 적용한 화상 처리 장치로서의 화상 복호 장치의 다른 실시 형태의 구성을 나타내고 있다.
화상 복호 장치(501)는, 축적 버퍼(161), 가역 복호부(162), 역양자화부(163), 역직교 변환부(164), 연산부(165), 디블록 필터(166), 화면 재배열 버퍼(167), D/A 변환부(168), 프레임 메모리(169), 스위치(170), 인트라 예측부(171), 움직임 예측·보상부(173), 및 스위치(174)를 구비하는 점이, 도 22의 화상 복호 장치(151)와 공통된다.
또한, 화상 복호 장치(501)는, 인접 화소 내삽 필터 전환부(172)가, 인접 화소 내삽 필터 제어부(511)로 교체되어 있는 점이, 도 22의 화상 복호 장치(151)와 상이하다.
즉, 인트라 예측부(171)에는, 헤더 정보를 복호해서 얻어진 인트라 예측 모드를 나타내는 정보가 가역 복호부(162)로부터 공급된다. 인트라 예측부(171)는, 정보가 나타내는 인트라 예측 모드에 의한 인트라 예측을 행함으로써 예측 화상을 생성하고, 생성한 예측 화상을 스위치(174)에 출력한다. 이때, 인트라 예측에 앞서, 인트라 예측부(171)는, 인접 화소 내삽 필터 제어부(511)로부터의 제어 신호 에 따라 인접 화소값에 대하여 필터 처리를 행한다(혹은, 행하지 않는다).
인접 화소 내삽 필터 제어부(511)에는, 화상 부호화 장치(451)에서의 부호화 에 따라, 매크로 블록마다 혹은 블록마다 온/오프 플래그 정보가 가역 복호부(162)로부터 공급된다. 인접 화소 내삽 필터 제어부(511)는, 공급된 온/오프 플래그 정보에 따라, 필터 처리를 행할지 행하지 않을지를 나타내는 제어 신호를 인트라 예측부(171)에 공급한다.
또한, 도 34의 화상 부호화 장치(451)에서는, 필터가 온인 경우와 오프인 경우 모두를 시험하여, 코스트 함수값에 의해 보다 높은 부호화 효율을 부여하는 것으로 판정된 쪽을 선택하여 인트라 예측 처리가 행해진다. 이에 대해, 상기 화상 복호 장치(501)에서는, 부호화되어 보내져 오는 온/오프 플래그의 정보에 기초해서 필터 온 또는 오프가 제어되어 인트라 예측 처리가 행해진다.
[인트라 예측부 및 인접 화소 내삽 필터 제어부의 구성예]
도 40은, 인트라 예측부 및 인접 화소 내삽 필터 제어부의 상세한 구성예를 도시하는 블록도다.
도 40의 예의 경우, 인트라 예측부(171)는, 예측 모드 버퍼(521), 예측 화상 생성부(522)에 의해 구성되어 있다. 인접 화소 내삽 필터 제어부(511)는, 플래그 버퍼(531) 및 제어 신호 발생부(532)에 의해 구성되어 있다.
예측 모드 버퍼(521)에는, 가역 복호부(162)로부터의 인트라 예측 모드 정보가 공급된다. 예측 화상 생성부(522)에는, 프레임 메모리(169)로부터의 인트라 예측의 대상 블록의 인접 화소값이 공급된다. 도 40의 경우에도, 스위치(170)의 도시는 생략되어 있지만, 실제로 인접 화소값은, 프레임 메모리(169)로부터 스위치(170)를 통해 예측 화상 생성부(522)에 공급된다.
예측 화상 생성부(522)는, 예측 모드 버퍼(521)로부터의 대상 블록에 대한 인트라 예측 모드 정보를 판독하고, 대상 블록에 대해서, 판독한 인트라 예측 모드의 인트라 예측을 행하여 예측 화상을 생성한다. 상기 인트라 예측에 앞서, 예측 화상 생성부(522)는, 제어 신호 발생부(532)로부터의 제어 신호에 따라, 프레임 메모리(169)로부터의 인접 화상 화소값에 필터 처리를 행한다.
플래그 버퍼(531)에는, 매크로 블록마다 또는 블록마다 온/오프 플래그 정보가 가역 복호부(162)로부터 공급된다. 제어 신호 발생부(532)는, 플래그 버퍼(531)로부터 대응하는 온/오프 플래그를 판독하고, 블록마다 필터 처리를 행할지 행하지 않을지를 나타내는 제어 신호를 생성하고, 생성한 제어 신호를 예측 화상 생성부(522)에 공급한다.
또한, 화상 복호 장치(501)에 의한 처리는, 이하에 설명하는 예측 처리 외에는, 도 22의 화상 복호 장치(151)의 처리와 마찬가지의 처리를 행하기 때문에, 그 설명은 반복되므로 생략된다.
[예측 처리의 설명]
다음으로, 도 41의 플로우차트를 참조하여, 도 39의 화상 복호 장치(501)의 예측 처리에 대해서 설명한다. 또한 상기 처리는, 도 24의 스텝 S138의 예측 처리의 다른 예다.
예측 화상 생성부(522)는, 스텝 S501에서, 대상 블록이 인트라 부호화되어 있는지의 여부를 판정한다. 가역 복호부(162)로부터 인트라 예측 모드 정보가 예측 모드 버퍼(521)에 공급되고, 예측 화상 생성부(522)가 그것을 판독한다. 이에 대응하여, 예측 화상 생성부(522)는, 스텝 S501에서 대상 블록이 인트라 부호화되어 있다고 판정하고, 처리는 스텝 S502로 진행한다.
예측 화상 생성부(522)는, 스텝 S502에서, 예측 모드 버퍼(521)의 인트라 예측 모드 정보를 취득한다.
또한, 가역 복호부(162)로부터 온/오프 플래그의 정보가 플래그 버퍼(531)에 공급되면, 플래그 버퍼(531)는, 스텝 S503에서 온/오프 플래그를 취득하여 저장한다.
제어 신호 발생부(532)는, 대상 블록에 대응하는 온/오프 플래그를 플래그 버퍼(531)로부터 판독하고, 스텝 S504에서, 온/오프 플래그가 1인지의 여부를 판정한다. 스텝 S504에서, 온/오프 플래그가 1인, 즉 필터 처리가 온이라고 판정된 경우, 제어 신호 발생부(532)는, 예측 화상 생성부(522)에 필터 처리를 행하게 하기 위한 제어 신호를 공급한다.
상기 제어 신호에 대응하여, 예측 화상 생성부(522)는, 스텝 S505에서 필터 계수를 이용해서 인접 화소에 대하여 필터 처리를 실시한다. 그리고, 스텝 S506에서, 예측 화상 생성부(522)는, 필터 처리를 실시한 인접 화소값을 이용하여 인트라 예측을 행하고, 예측 화상을 생성한다.
한편, 스텝 S504에서, 온/오프 플래그가 1이 아닌, 즉 필터 처리가 오프라고 판정된 경우, 스텝 S505의 필터 처리는 스킵되고, 처리는 스텝 S506으로 진행한다.
스텝 S506에서, 예측 화상 생성부(522)는, 프레임 메모리(169)로부터의 인접 화상 화소값을 이용하여 인트라 예측을 행하고, 예측 화상을 생성한다.
스텝 S506에서 생성된 예측 화상은, 스위치(174)에 공급된다.
한편, 스텝 S501에서, 인트라 부호화되지 않았다고 판정된 경우, 처리는 스텝 S507로 진행한다.
움직임 예측·보상부(173)는, 스텝 S507에서 인터 움직임 예측을 행한다. 즉, 처리 대상의 화상이 인터 예측 처리되는 화상인 경우, 필요한 화상이 프레임 메모리(169)로부터 판독되어, 스위치(170)를 통해 움직임 예측·보상부(173)에 공급된다. 스텝 S508에서 움직임 예측·보상부(173)는, 스텝 S507에서 취득한 움직임 벡터에 기초하여 인터 예측 모드의 움직임 예측을 하고, 예측 화상을 생성한다. 생성한 예측 화상은 스위치(174)에 출력된다.
이상과 같이, 화상 부호화 장치(451) 및 화상 복호 장치(501)에서는, 인트라 예측에 이용되는 인접 화소에 대한 필터 처리의 온 또는 오프를 제어하고, 부호화 효율이 저하하는 블록에 대해서는 필터 처리를 행하지 않도록 했다. 이에 의해 부호화 효율을 향상시킬 수 있다.
또한, 상기 설명에서는 인트라 예측을 행하는 예를 설명했지만, 도 32를 참조해서 상술한 2차 예측에서의 인트라 예측에도, 필터 처리의 온 또는 오프의 제어를 적용할 수 있다.
<4. 제4 실시 형태>
[화상 부호화 장치의 다른 구성예]
도 42는, 본 발명을 적용한 화상 처리 장치로서의 화상 부호화 장치의 다른 실시 형태의 구성을 나타내고 있다.
화상 부호화 장치(551)는, A/D 변환부(61), 화면 재배열 버퍼(62), 연산부(63), 직교 변환부(64), 양자화부(65), 가역 부호화부(66), 축적 버퍼(67), 역양자화부(68), 역직교 변환부(69), 연산부(70), 디블록 필터(71), 프레임 메모리(72), 스위치(73), 인트라 예측부(74), 움직임 예측·보상부(76), 예측 화상 선택부(77), 및 레이트 제어부(78)를 구비하고 있는 점은, 도 34의 화상 부호화 장치(451)와 공통된다.
또한, 화상 부호화 장치(551)는, 인접 화소 내삽 필터 제어부(461)가 제외되어 있는 점, 및 도 31의 2차 예측부(361), 및 인접 화소 내삽 필터 제어부(561)가 추가되어 있는 점이, 도 34의 화상 부호화 장치(451)와 상이하다.
즉, 도 42의 예에서는, 인트라 예측부(74)는 H. 264/AVC의 인트라 예측을 행한다.
한편, 움직임 예측·보상부(76)는, 인터 처리하는 화상과 참조 화상에 기초하여, 후보가 되는 모든 인터 예측 모드의 움직임 벡터를 검출하고, 움직임 벡터에 기초해서 참조 화상에 보상 처리를 실시하여 예측 화상을 생성한다.
움직임 예측·보상부(76)는, 검출된 움직임 벡터 정보, 인터 처리하는 화상의 정보(어드레스 등), 및 인터 처리하는 화상과 생성된 예측 화상의 차분인 1차 잔차를 2차 예측부(361)에 공급한다.
움직임 예측·보상부(76)는, 2차 예측부(361)로부터의 2차 잔차를 비교함으로써, 2차 예측에 있어서의 최적의 인트라 예측 모드를 결정한다. 또한, 움직임 예측·보상부(76)는, 2차 잔차와 1차 잔차를 비교함으로써, 2차 잔차를 부호화할지 또는 1차 잔차를 부호화할지를 결정한다. 또한, 이들 처리는, 후보가 되는 모든 인터 예측 모드에 대하여 행해진다.
그리고, 움직임 예측·보상부(76)는, 후보가 되는 모든 인터 예측 모드에 대하여 코스트 함수값을 산출한다. 이때, 1차 잔차 및 2차 잔차 중 인터 예측 모드마다 결정된 잔차가 이용되여 코스트 함수값이 산출된다. 움직임 예측·보상부(76)는, 산출한 코스트 함수값 중 최소값을 부여하는 예측 모드를 최적 인터 예측 모드로서 결정한다.
움직임 예측·보상부(76)는, 최적 인터 예측 모드에서 생성된 예측 화상(또는 인터하는 화상과 2차 잔차의 차분), 및 그 코스트 함수값을, 예측 화상 선택부(77)에 공급한다. 움직임 예측·보상부(76)는, 예측 화상 선택부(77)에 의해 최적 인터 예측 모드에서 생성된 예측 화상이 선택된 경우, 최적 인터 예측 모드를 나타내는 정보를 가역 부호화부(66)에 출력한다.
이때, 움직임 벡터 정보, 참조 프레임 정보, 2차 예측을 행하는 것을 나타내는 2차 예측 플래그, 2차 예측에 있어서의 인트라 예측 모드의 정보, 및 2차 예측에 있어서의 온/오프 플래그 정보 등도 가역 부호화부(66)에 출력된다. 가역 부호화부(66)는, 움직임 예측·보상부(76)로부터의 정보를 역시 가변 길이 부호화, 산술 부호화와 같은 가역 부호화 처리하고, 압축 화상의 헤더부에 삽입한다.
2차 예측부(361)는, 움직임 예측·보상부(76)로부터의 움직임 벡터 정보와 인터 처리하는 화상의 정보에 기초하여, 인터 처리하는 대상의 대상 블록에 인접하는 대상 인접 화소를 프레임 메모리(72)로부터 판독한다. 또한, 2차 예측부(361)는, 움직임 벡터 정보에 의해 대상 블록에 대응지어지는 참조 블록에 인접하는 참조 인접 화소를 프레임 메모리(72)로부터 판독한다.
2차 예측부(361)는, 도 32를 참조해서 상술한 2차 예측 처리를 행한다. 2차 예측 처리란, 1차 잔차, 및 대상 인접 화소와 참조 인접 화소의 차분의 사이에서 인트라 예측을 행하여, 2차 차분 정보(2차 잔차)를 생성하는 처리다.
단, 도 42의 2차 예측부(361)는, 이 2차 예측에 앞서 인접 화소 내삽 필터 제어부(561)로부터의 제어 신호에 따라 인트라 예측에 이용하는 대상 인접 화소와 참조 인접 화소의 차분에 대하여 필터 처리를 행한다(혹은 행하지 않는다). 그리고, 2차 예측부(361)는, 필터 처리된(혹은 필터 처리 없는) 대상 인접 화소와 참조 인접 화소의 차분을 이용하여 2차 예측 처리를 행하고, 얻어진 2차 차분 정보(2차 잔차)를 움직임 예측·보상부(76)에 출력한다. 이때, 2차 예측부(361)는, 필터 처리를 행하는 것 또는 행하지 않는 것을 나타내는 온/오프 플래그 정보도 움직임 예측·보상부(76)에 출력한다.
즉, 2차 예측부(361)는, 도 35에 도시한 인트라 예측부(74)를 포함하도록 구성되어 있다.
인접 화소 내삽 필터 제어부(561)는, 도 34의 인접 화소 내삽 필터 제어부(461)와 기본적으로 마찬가지로 구성되어 마찬가지의 처리를 행한다. 즉, 인접 화소 내삽 필터 제어부(561)는, 블록 단위 또는 매크로 블록 단위로 필터 처리를 행할지 행하지 않을지를 제어하는 제어 신호를 2차 예측부(361)에 공급한다.
또한, 도 42의 화상 부호화 장치(551)의 부호화 처리는, 이하의 인트라 처리와 움직임 예측 처리가 서로 다를 뿐이며, 그 밖의 처리는, 도 34의 화상 부호화 장치(451)에 의한 부호화 처리(즉, 도 16의 부호화 처리)와 기본적으로 마찬가지의 처리이므로, 그 설명은 생략한다.
즉, 도 42의 화상 부호화 장치(551)에서는, 인트라 처리로서 H. 264/AVC 방식에서의 인트라 예측이 행해진다. 또한, 움직임 예측 처리로서, 움직임 예측 처리시에 인접 화소 내삽 필터 제어부(561)로부터의 제어 신호에 따라 필터 처리가 제어되어 필터 처리된(혹은 필터 처리되지 않은) 2차 차분 정보가 생성된다. 그리고, 1차 차분 정보와 2차 차분 정보 중 부호화 효율이 좋은 것이 선택되어, 코스트 함수값이 비교됨으로써 최적 인터 예측 모드가 결정된다.
상기 화상 부호화 장치(551)에 의해 부호화된 압축 화상을 받아, 그것을 복호하는 화상 복호 장치에 대해서 도 43을 참조하여 설명한다.
[화상 복호 장치의 다른 구성예]
도 43은, 본 발명을 적용한 화상 처리 장치로서의 화상 복호 장치의 다른 실시 형태의 구성을 나타내고 있다.
화상 복호 장치(601)는, 축적 버퍼(161), 가역 복호부(162), 역양자화부(163), 역직교 변환부(164), 연산부(165), 디블록 필터(166), 화면 재배열 버퍼(167), D/A 변환부(168), 프레임 메모리(169), 스위치(170), 인트라 예측부(171), 움직임 예측·보상부(173), 및 스위치(174)를 구비하는 점이, 도 39의 화상 복호 장치(501)와 공통된다.
또한, 화상 복호 장치(601)는, 인접 화소 내삽 필터 제어부(511)가 제외되어 있는 점, 및 도 33의 2차 예측부(411), 및 인접 화소 내삽 필터 제어부(611)가 추가되어 있는 점이, 도 39의 화상 복호 장치(501)와 상이하다.
즉, 인트라 예측부(171)에는, 헤더 정보를 복호해서 얻어진 인트라 예측 모드를 나타내는 정보가 가역 복호부(162)로부터 공급된다. 인트라 예측부(171)는, 이 정보에 기초하여 예측 화상을 생성하고, 생성한 예측 화상을 스위치(174)에 출력한다.
움직임 예측·보상부(173)에는, 헤더 정보를 복호해서 얻어진 정보 중 예측 모드 정보, 움직임 벡터 정보, 참조 프레임 정보 등이 가역 복호부(162)로부터 공급된다. 또한, 움직임 예측·보상부(173)에는, 대상 블록에 대하여 2차 예측 처리가 적용되어 있는 경우에는, 2차 예측을 행하는 것을 나타내는 2차 예측 플래그와, 2차 예측에 있어서의 인트라 예측 모드 정보도 가역 복호부(162)로부터 공급된다.
움직임 예측·보상부(173)는, 2차 예측 처리가 적용되어 있다고 판정한 경우, 2차 예측부(411)를 제어하고, 2차 예측에 있어서의 인트라 예측 모드 정보가 나타내는 인트라 예측 모드에서 2차 예측을 행하게 한다.
움직임 예측·보상부(173)는, 움직임 벡터 정보와 참조 프레임 정보에 기초해서 화상에 움직임 예측과 보상 처리를 실시하여 예측 화상을 생성한다. 즉, 대상 블록의 예측 화상은, 참조 프레임에 있어서, 대상 블록에 움직임 벡터로 대응지어지는 참조 블록의 화소값이 이용되어 생성된다. 그리고, 움직임 예측·보상부(173)는, 생성된 예측 화상과 2차 예측부(411)로부터의 예측 차분값을 가산하고, 그것을 스위치(174)에 출력한다.
2차 예측부(411)는, 프레임 메모리(169)로부터 판독되는 대상 인접 화소와 참조 인접 화소의 차분을 이용하여 2차 예측을 행한다. 단, 도 43의 2차 예측부(411)는, 인접 화소 내삽 필터 제어부(611)로부터 필터 처리를 행할 것을 제어하는 제어 신호를 받은 경우, 이 2차 예측에 앞서, 대상 인접 화소와 참조 인접 화소의 차분에 대하여 필터 처리를 행한다. 그리고, 2차 예측부(411)는, 필터 처리된 대상 인접 화소와 참조 인접 화소의 차분을 이용하여 2차 예측 처리를 행하고, 얻어진 2차 차분 정보(2차 잔차)를 움직임 예측·보상부(173)에 출력한다.
또한, 인접 화소 내삽 필터 제어부(611)로부터 필터 처리를 행하지 않을 것을 제어하는 제어 신호를 받은 경우, 2차 예측부(411)는, 필터 처리를 행하지 않고, 대상 인접 화소와 참조 인접 화소의 차분을 이용하여 2차 예측 처리를 행한다.
즉, 2차 예측부(411)는, 도 40에 도시한 인트라 예측부(171)를 포함하도록 구성되어 있다.
인접 화소 내삽 필터 제어부(611)는, 도 39의 인접 화소 내삽 필터 제어부(511)와 기본적으로 마찬가지로 구성되어 기본적으로 마찬가지의 처리를 행한다. 즉, 인접 화소 내삽 필터 제어부(611)에는, 헤더 정보를 복호해서 얻어진 정보 중 온/오프 플래그 정보가 가역 복호부(162)로부터 공급된다. 인접 화소 내삽 필터 제어부(611)는, 온/오프 플래그 정보에 따라 2차 예측부(411)에 인접 화소의 필터 처리를 행하게 한다, 또는 행하게 하지 않는 제어 신호를 공급한다.
또한, 도 43의 화상 복호 장치(601)의 복호 처리는, 이하의 인트라 처리와 움직임 예측 처리가 서로 다를 뿐이며, 그 밖의 처리는, 도 39의 화상 복호 장치(501)에 의한 복호 처리(즉, 도 24의 복호 처리)와 기본적으로 마찬가지의 처리이므로, 그 설명은 생략한다.
즉, 도 43의 화상 복호 장치(601)에서는, 인트라 처리로서 H. 264/AVC 방식에서의 인트라 예측이 행해진다. 또한, 움직임 예측 처리로서, 움직임 예측 처리시에 인접 화소 내삽 필터 제어부(611)로부터의 제어 신호에 따라 필터 처리가 이루어지고 2차 예측(인트라 예측)이 행해져, 2차 차분 정보가 생성된다.
이상과 같은 2차 예측 처리에서의 인트라 예측에도, 필터 처리의 온 또는 오프의 제어를 적용할 수 있다.
또한, 상기 설명에서는, 매크로 블록의 크기가 16×16 화소의 경우에 대해서 설명해 왔지만, 본 발명은, 비특허 문헌 3에 기재된 확장된 매크로 블록 크기에 대해서도 적용할 수 있다.
도 44는, 확장된 매크로 블록 크기의 예를 도시하는 도면이다. 비특허 문헌 3에서는, 매크로 블록 크기가 32×32 화소로 확장되어 있다.
도 44의 상단에는, 좌측에서부터 32×32 화소, 32×16 화소, 16×32 화소 및 16×16 화소의 블록(파티션)으로 분할된 32×32 화소로 구성되는 매크로 블록이 순서대로 도시되어 있다. 도 44의 중단에는, 좌측에서부터 16×16 화소, 16×8 화소, 8×16 화소 및 8×8 화소의 블록으로 분할된 16×16 화소로 구성되는 블록이 순서대로 도시되어 있다. 또한, 도 44의 하단에는, 좌측에서부터 8×8 화소, 8×4 화소, 4×8 화소 및 4×4 화소의 블록으로 분할된 8×8 화소의 블록이 순서대로 도시되어 있다.
즉, 32×32 화소의 매크로 블록은, 도 44의 상단에 도시되는 32×32 화소, 32×16 화소, 16×32 화소 및 16×16 화소의 블록에서의 처리가 가능하다.
또한, 상단의 우측에 도시되는 16×16 화소의 블록은, H. 264/AVC 방식과 마찬가지로, 중단에 도시되는 16×16 화소, 16×8 화소, 8×16 화소 및 8×8 화소의 블록에서의 처리가 가능하다.
또한, 중단의 우측에 도시되는 8×8 화소의 블록은, H. 264/AVC 방식과 마찬가지로, 하단에 도시되는 8×8 화소, 8×4 화소, 4×8 화소 및 4×4 화소의 블록에서의 처리가 가능하다.
이러한 계층 구조를 채용함으로써, 확장된 매크로 블록 크기에서는, 16×16 화소의 블록 이하에 관해서 H. 264/AVC 방식과 호환성을 유지하면서, 그 확대 집합(superset)으로서 보다 큰 블록이 정의되어 있다.
이상과 같이 제안되는 확장된 매크로 블록 크기에도, 본 발명의 필터 계수의 설정, 산출 또는 필터 처리의 온 오프의 제어를 적용할 수 있다.
이상에서는, 부호화 방식으로서 H. 264/AVC 방식을 이용하도록 했지만, 본 발명은 이것에 한하지 않고, 인접 화소를 이용한 예측(예를 들면, 인트라 예측이나 2차 예측)을 행하는, 그 밖의 부호화 방식/복호 방식을 적용할 수 있다.
또한 본 발명은, 예를 들면, MPEG, H. 26x 등과 같이, 이산 코사인 변환 등의 직교 변환과 움직임 보상에 의해 압축된 화상 정보(비트 스트림)를, 위성방송, 케이블 텔레비전, 인터넷, 또는 휴대 전화기 등의 네트워크 매체를 통해 수신할 때에 이용되는 화상 부호화 장치 및 화상 복호 장치에 적용할 수 있다. 또한, 본 발명은, 광, 자기 디스크 및 플래시 메모리와 같은 기억 매체 상에서 처리할 때에 이용되는 화상 부호화 장치 및 화상 복호 장치에 적용할 수 있다. 또한, 본 발명은, 그것들의 화상 부호화 장치 및 화상 복호 장치 등에 포함되는 움직임 예측 보상 장치에도 적용할 수 있다.
상술한 일련의 처리는, 하드웨어에 의해 실행할 수도 있고, 소프트웨어에 의해 실행할 수도 있다. 일련의 처리를 소프트웨어에 의해 실행하는 경우에는, 그 소프트웨어를 구성하는 프로그램이 컴퓨터에 인스톨된다. 여기서, 컴퓨터에는, 전용 하드웨어에 내장되어 있는 컴퓨터나 각종 프로그램을 인스톨함으로써 각종 기능을 실행할 수 있는 범용의 퍼스널 컴퓨터 등이 포함된다.
도 45는, 상술한 일련의 처리를 프로그램에 의해 실행하는 컴퓨터의 하드웨어의 구성예를 도시하는 블록도다.
컴퓨터에 있어서, CPU(Central Processing Unit)(801), ROM(Read Only Memory)(802), RAM(Random Access Memory)(803)은, 버스(804)에 의해 서로 접속되어 있다.
버스(804)에는 또한, 입출력 인터페이스(805)가 접속되어 있다. 입출력 인터페이스(805)에는, 입력부(806), 출력부(807), 기억부(808), 통신부(809) 및 드라이브(810)가 접속되어 있다.
입력부(806)는, 키보드, 마우스, 마이크로폰 등으로 이루어진다. 출력부(807)는, 디스플레이, 스피커 등으로 이루어진다. 기억부(808)는, 하드디스크나 불휘발성의 메모리 등으로 이루어진다. 통신부(809)는, 네트워크 인터페이스 등으로 이루어진다. 드라이브(810)는, 자기 디스크, 광 디스크, 광 자기 디스크, 또는 반도체 메모리 등의 착탈식 매체(811)를 구동한다.
이상과 같이 구성되는 컴퓨터에서는, CPU(801)가, 예를 들면 기억부(808)에 기억되어 있는 프로그램을 입출력 인터페이스(805) 및 버스(804)를 통해 RAM(803)에 로드해서 실행함으로써, 상술한 일련의 처리가 행해진다.
컴퓨터(CPU, 801)가 실행하는 프로그램은, 예를 들면, 패키지 매체 등으로서의 착탈식 매체(811)에 기록해서 제공할 수 있다. 또한, 프로그램은, 로컬 에리어 네트워크, 인터넷, 디지털 방송과 같은 유선 또는 무선의 전송 매체를 통해 제공할 수 있다.
컴퓨터에서는, 프로그램은, 착탈식 매체(811)를 드라이브(810)에 장착함으로써, 입출력 인터페이스(805)를 통해 기억부(808)에 인스톨할 수 있다. 또한, 프로그램은, 유선 또는 무선의 전송 매체를 통해 통신부(809)에서 수신하여, 기억부(808)에 인스톨할 수 있다. 그 밖에 프로그램은, ROM(802)이나 기억부(808)에 미리 인스톨해 둘 수 있다.
또한, 컴퓨터가 실행하는 프로그램은, 본 명세서에서 설명하는 순서에 따라 시계열로 처리가 행해지는 프로그램이어도 좋고, 병렬로 혹은 호출이 행해졌을 때 등의 필요한 타이밍에서 처리가 행해지는 프로그램이어도 좋다.
본 발명의 실시 형태는, 상술한 실시 형태에 한정되는 것은 아니고, 본 발명의 요지를 일탈하지 않는 범위에서 다양한 변경이 가능하다.
예를 들면, 상술한 화상 부호화 장치(51, 351, 451, 551)나 화상 복호 장치(151, 401, 501, 601)는, 임의의 전자 기기에 적용할 수 있다. 이하에 그 예에 대해서 설명한다.
도 46은, 본 발명을 적용한 화상 복호 장치를 이용하는 텔레비전 수상기의 주된 구성예를 도시하는 블록도다.
도 46에 도시되는 텔레비전 수상기(1300)는, 지상파 튜너(1313), 비디오 디코더(1315), 영상 신호 처리 회로(1318), 그래픽 생성 회로(1319), 패널 구동 회로(1320) 및 표시 패널(1321)을 갖는다.
지상파 튜너(1313)는, 지상 아날로그 방송의 방송파 신호를 안테나를 통해 수신해서 복조하여 영상 신호를 취득하고, 그것을 비디오 디코더(1315)에 공급한다. 비디오 디코더(1315)는, 지상파 튜너(1313)로부터 공급된 영상 신호에 대하여 디코딩 처리를 실시하고, 얻어진 디지털의 컴포넌트 신호를 영상 신호 처리 회로(1318)에 공급한다.
영상 신호 처리 회로(1318)는, 비디오 디코더(1315)로부터 공급된 영상 데이터에 대하여 노이즈 제거 등의 소정의 처리를 실시하고, 얻어진 영상 데이터를 그래픽 생성 회로(1319)에 공급한다.
그래픽 생성 회로(1319)는, 표시 패널(1321)에 표시시키는 프로그램의 영상 데이터나, 네트워크를 통해 공급되는 어플리케이션에 기초하는 처리에 의한 화상 데이터 등을 생성하고, 생성한 영상 데이터나 화상 데이터를 패널 구동 회로(1320)에 공급한다. 또한, 그래픽 생성 회로(1319)는, 항목의 선택 등에 유저에 의해 이용되는 화면을 표시하기 위한 영상 데이터(그래픽)를 생성하고, 그것을 프로그램의 영상 데이터에 중첩하거나 함으로써 얻어진 영상 데이터를 패널 구동 회로(1320)에 공급하는 처리도 적절히 행한다.
패널 구동 회로(1320)는, 그래픽 생성 회로(1319)로부터 공급된 데이터에 기초해서 표시 패널(1321)을 구동하여, 프로그램의 영상이나 상술한 각종 화면을 표시 패널(1321)에 표시시킨다.
표시 패널(1321)은 LCD(Liquid Crystal Display) 등으로 이루어지며, 패널 구동 회로(1320)에 의한 제어에 따라 프로그램의 영상 등을 표시시킨다.
또한, 텔레비전 수상기(1300)는, 음성 A/D(Analog/Digital) 변환 회로(1314), 음성 신호 처리 회로(1322), 에코 캔슬/음성 합성 회로(1323), 음성 증폭 회로(1324) 및 스피커(1325)도 갖는다.
지상파 튜너(1313)는, 수신한 방송파 신호를 복조함으로써, 영상 신호뿐만 아니라 음성 신호도 취득한다. 지상파 튜너(1313)는, 취득한 음성 신호를 음성 A/D 변환 회로(1314)에 공급한다.
음성 A/D 변환 회로(1314)는, 지상파 튜너(1313)로부터 공급된 음성 신호에 대하여 A/D 변환 처리를 실시하고, 얻어진 디지털의 음성 신호를 음성 신호 처리 회로(1322)에 공급한다.
음성 신호 처리 회로(1322)는, 음성 A/D 변환 회로(1314)로부터 공급된 음성 데이터에 대하여 노이즈 제거 등의 소정의 처리를 실시하고, 얻어진 음성 데이터를 에코 캔슬/음성 합성 회로(1323)에 공급한다.
에코 캔슬/음성 합성 회로(1323)는, 음성 신호 처리 회로(1322)로부터 공급된 음성 데이터를 음성 증폭 회로(1324)에 공급한다.
음성 증폭 회로(1324)는, 에코 캔슬/음성 합성 회로(1323)로부터 공급된 음성 데이터에 대하여 D/A 변환 처리, 증폭 처리를 실시하고, 소정의 음량으로 조정한 후, 음성을 스피커(1325)로부터 출력시킨다.
또한, 텔레비전 수상기(1300)는, 디지털 튜너(1316) 및 MPEG 디코더(1317)도 갖는다.
디지털 튜너(1316)는, 디지털 방송[지상 디지털 방송, BS(Broadcasting Satellite)/CS(Communications Satellite) 디지털 방송]의 방송파 신호를 안테나를 통해 수신해서 복조하여, MPEG-TS(Moving Picture Experts Group-Transport Stream)를 취득하고, 그것을 MPEG 디코더(1317)에 공급한다.
MPEG 디코더(1317)는, 디지털 튜너(1316)로부터 공급된 MPEG-TS에 실시되어 있는 스크램블을 해제하고, 재생 대상(시청 대상)으로 되어 있는 프로그램의 데이터를 포함하는 스트림을 추출한다. MPEG 디코더(1317)는, 추출한 스트림을 구성하는 음성 패킷을 디코딩하고, 얻어진 음성 데이터를 음성 신호 처리 회로(1322)에 공급하는 동시에, 스트림을 구성하는 영상 패킷을 디코딩하고, 얻어진 영상 데이터를 영상 신호 처리 회로(1318)에 공급한다. 또한, MPEG 디코더(1317)는, MPEG-TS로부터 추출한 EPG(Electronic Program Guide) 데이터를 도시하지 않은 경로를 통해 CPU(1332)에 공급한다.
텔레비전 수상기(1300)는, 이와 같이 영상 패킷을 디코딩하는 MPEG 디코더(1317)로서, 상술한 화상 복호 장치(151, 401, 501, 601)를 이용한다. 따라서, MPEG 디코더(1317)는, 화상 복호 장치(151, 401)의 경우와 마찬가지로, 인트라 예측에 앞서 양자화 파라미터나 예측 모드에 따라 필터 계수를 전환하여, 인접 화소의 필터 처리를 행한다. 혹은, MPEG 디코더(1317)는, 화상 복호 장치(501, 601)의 경우와 마찬가지로 온/오프 플래그에 기초하여, 인트라 예측에 앞서 행해지는 인접 화소의 필터 처리를 할지 하지 않을지를 제어한다. 이에 의해, 부호화 효율을 향상할 수 있다.
MPEG 디코더(1317)로부터 공급된 영상 데이터는, 비디오 디코더(1315)로부터 공급된 영상 데이터의 경우와 마찬가지로, 영상 신호 처리 회로(1318)에서 소정의 처리가 실시된다. 그리고, 소정의 처리가 실시된 영상 데이터는, 그래픽 생성 회로(1319)에서, 생성된 영상 데이터 등이 적절히 중첩되어 패널 구동 회로(1320)를 통해 표시 패널(1321)에 공급되어, 그 화상이 표시된다.
MPEG 디코더(1317)로부터 공급된 음성 데이터는, 음성 A/D 변환 회로(1314)로부터 공급된 음성 데이터의 경우와 마찬가지로, 음성 신호 처리 회로(1322)에서 소정의 처리가 실시된다. 그리고, 소정의 처리가 실시된 음성 데이터는, 에코 캔슬/음성 합성 회로(1323)를 통해 음성 증폭 회로(1324)에 공급되어, D/A 변환 처리나 증폭 처리가 실시된다. 그 결과, 소정의 음량으로 조정된 음성이 스피커(1325)로부터 출력된다.
또한, 텔레비전 수상기(1300)는, 마이크로폰(1326) 및 A/D 변환 회로(1327)도 갖는다.
A/D 변환 회로(1327)는, 음성 회화용의 것으로서 텔레비전 수상기(1300)에 설치되는 마이크로폰(1326)에 의해 받아들인 유저의 음성 신호를 수신한다. A/D 변환 회로(1327)는, 수신한 음성 신호에 대하여 A/D 변환 처리를 실시하고, 얻어진 디지털의 음성 데이터를 에코 캔슬/음성 합성 회로(1323)에 공급한다.
에코 캔슬/음성 합성 회로(1323)는, 텔레비전 수상기(1300)의 유저(유저 A)의 음성 데이터가 A/D 변환 회로(1327)로부터 공급되어 있는 경우, 유저 A의 음성 데이터를 대상으로 해서 에코 캔슬을 행한다. 그리고, 에코 캔슬/음성 합성 회로(1323)는, 에코 캔슬 후 다른 음성 데이터와 합성 등을 해서 얻어진 음성 데이터를, 음성 증폭 회로(1324)를 통해 스피커(1325)로부터 출력시킨다.
또한, 텔레비전 수상기(1300)는, 음성 코덱(1328), 내부 버스(1329), SDRAM(Synchronous Dynamic Random Access Memory)(1330), 플래시 메모리(1331), CPU(1332), USB(Universal Serial Bus) I/F(1333) 및 네트워크 I/F(1334)도 갖는다.
A/D 변환 회로(1327)는, 음성 회화용의 것으로서 텔레비전 수상기(1300)에 설치되는 마이크로폰(1326)에 의해 받아들인 유저의 음성 신호를 수신한다. A/D 변환 회로(1327)는, 수신한 음성 신호에 대하여 A/D 변환 처리를 실시하고, 얻어진 디지털의 음성 데이터를 음성 코덱(1328)에 공급한다.
음성 코덱(1328)은, A/D 변환 회로(1327)로부터 공급된 음성 데이터를, 네트워크 경유로 송신하기 위한 소정의 포맷의 데이터로 변환하여, 내부 버스(1329)를 통해 네트워크 I/F(1334)에 공급한다.
네트워크 I/F(1334)는, 네트워크 단자(1335)에 장착된 케이블을 통해 네트워크에 접속된다. 네트워크 I/F(1334)는, 예를 들면, 그 네트워크에 접속되는 다른 장치에 대하여, 음성 코덱(1328)으로부터 공급된 음성 데이터를 송신한다. 또한, 네트워크 I/F(1334)는, 예를 들면, 네트워크를 통해 접속되는 다른 장치로부터 송신되는 음성 데이터를, 네트워크 단자(1335)를 통해 수신하고, 그것을 내부 버스(1329)를 통해 음성 코덱(1328)에 공급한다.
음성 코덱(1328)은, 네트워크 I/F(1334)로부터 공급된 음성 데이터를 소정의 포맷의 데이터로 변환하고, 그것을 에코 캔슬/음성 합성 회로(1323)에 공급한다.
에코 캔슬/음성 합성 회로(1323)는, 음성 코덱(1328)으로부터 공급되는 음성 데이터를 대상으로 해서 에코 캔슬을 행하고, 다른 음성 데이터와 합성 등을 해서 얻어진 음성의 데이터를, 음성 증폭 회로(1324)를 통해 스피커(1325)로부터 출력시킨다.
SDRAM(1330)은, CPU(1332)가 처리를 행하는데 필요한 각종 데이터를 기억한다.
플래시 메모리(1331)는, CPU(1332)에 의해 실행되는 프로그램을 기억한다. 플래시 메모리(1331)에 기억되어 있는 프로그램은, 텔레비전 수상기(1300)의 기동시 등의 소정의 타이밍에서 CPU(1332)에 의해 판독된다. 플래시 메모리(1331)에는, 디지털 방송을 통해 취득된 EPG 데이터, 네트워크를 통해 소정의 서버로부터 취득된 데이터 등도 기억된다.
예를 들면, 플래시 메모리(1331)에는, CPU(1332)의 제어에 의해 네트워크를 통해 소정의 서버로부터 취득된 콘텐츠 데이터를 포함하는 MPEG-TS가 기억된다. 플래시 메모리(1331)는, 예를 들면 CPU(1332)의 제어에 의해, 그 MPEG-TS를 내부 버스(1329)를 통해 MPEG 디코더(1317)에 공급한다.
MPEG 디코더(1317)는, 디지털 튜너(1316)로부터 공급된 MPEG-TS의 경우와 마찬가지로, 그 MPEG-TS를 처리한다. 이와 같이 텔레비전 수상기(1300)는, 영상이나 음성 등으로 이루어지는 콘텐츠 데이터를, 네트워크를 통해 수신하고, MPEG 디코더(1317)를 이용해서 디코딩하여 그 영상을 표시시키거나 음성을 출력시킬 수 있다.
또한, 텔레비전 수상기(1300)는, 리모트 컨트롤러(1351)로부터 송신되는 적외선 신호를 수광하는 수광부(1337)도 갖는다.
수광부(1337)는, 리모트 컨트롤러(1351)로부터의 적외선을 수광하여, 복조해서 얻어진 유저 조작의 내용을 나타내는 제어 코드를 CPU(1332)에 출력한다.
CPU(1332)는, 플래시 메모리(1331)에 기억되어 있는 프로그램을 실행하여, 수광부(1337)로부터 공급되는 제어 코드 등에 따라 텔레비전 수상기(1300) 전체의 동작을 제어한다. CPU(1332)와 텔레비전 수상기(1300)의 각 부는, 도시하지 않은 경로를 통해 접속되어 있다.
USB I/F(1333)는, USB 단자(1336)에 장착된 USB 케이블을 통해 접속되는, 텔레비전 수상기(1300)의 외부 기기와의 사이에서 데이터의 송수신을 행한다. 네트워크 I/F(1334)는, 네트워크 단자(1335)에 장착된 케이블을 통해 네트워크에 접속하고, 네트워크에 접속되는 각종 장치와 음성 데이터 이외의 데이터의 송수신도 행한다.
텔레비전 수상기(1300)는, MPEG 디코더(1317)로서 화상 복호 장치(151, 401, 501, 601)를 이용함으로써, 부호화 효율을 향상할 수 있다. 그 결과로서 텔레비전 수상기(1300)는, 안테나를 통해 수신한 방송파 신호나 네트워크를 통해 취득한 콘텐츠 데이터로부터, 보다 고속으로 보다 고정밀한 복호 화상을 얻어 표시할 수 있다.
도 47은, 본 발명을 적용한 화상 부호화 장치 및 화상 복호 장치를 이용하는 휴대 전화기의 주된 구성예를 도시하는 블록도다.
도 47에 도시하는 휴대 전화기(1400)는, 각 부를 통괄적으로 제어하도록 이루어진 주 제어부(1450), 전원 회로부(1451), 조작 입력 제어부(1452), 화상 인코더(1453), 카메라 I/F부(1454), LCD 제어부(1455), 화상 디코더(1456), 다중 분리부(1457), 기록 재생부(1462), 변복조 회로부(1458) 및 음성 코덱(1459)을 갖는다. 이것들은, 버스(1460)를 통해 서로 접속되어 있다.
또한, 휴대 전화기(1400)는, 조작 키(1419), CCD(Charge Coupled Devices) 카메라(1416), 액정 디스플레이(1418), 기억부(1423), 송수신 회로부(1463), 안테나(1414), 마이크로폰(마이크)(1421) 및 스피커(1417)를 갖는다.
전원 회로부(1451)는, 유저의 조작에 의해 통화 종료 및 전원 키가 온 상태로 되면, 배터리 팩으로부터 각 부에 대하여 전력을 공급함으로써 휴대 전화기(1400)를 동작 가능한 상태로 기동한다.
휴대 전화기(1400)는, CPU, ROM 및 RAM 등으로 이루어지는 주 제어부(1450)의 제어에 기초하여, 음성 통화 모드나 데이터 통신 모드 등의 각종 모드에서, 음성 신호의 송수신, 전자 메일이나 화상 데이터의 송수신, 화상 촬영 또는 데이터 기록 등의 각종 동작을 행한다.
예를 들면, 음성 통화 모드에 있어서, 휴대 전화기(1400)는, 마이크로폰(마이크)(1421)으로 집음한 음성 신호를, 음성 코덱(1459)에 의해 디지털 음성 데이터로 변환하고, 이것을 변복조 회로부(1458)에서 스펙트럼 확산 처리하여, 송수신 회로부(1463)에서 디지털 아날로그 변환 처리 및 주파수 변환 처리한다. 휴대 전화기(1400)는, 그 변환 처리에 의해 얻어진 송신용 신호를, 안테나(1414)를 통해 도시하지 않은 기지국에 송신한다. 기지국에 전송된 송신용 신호(음성 신호)는, 공중 전화 회선망을 통해 통화 상대의 휴대 전화기에 공급된다.
또한 예를 들면, 음성 통화 모드에 있어서, 휴대 전화기(1400)는, 안테나(1414)로 수신한 수신 신호를 송수신 회로부(1463)에서 증폭하고, 또한 주파수 변환 처리 및 아날로그 디지털 변환 처리하여, 변복조 회로부(1458)에서 스펙트럼 역확산 처리하고, 음성 코덱(1459)에 의해 아날로그 음성 신호로 변환한다. 휴대 전화기(1400)는, 그 변환으로 얻어진 아날로그 음성 신호를 스피커(1417)로부터 출력한다.
또한, 예를 들면, 데이터 통신 모드에 있어서 전자 메일을 송신하는 경우, 휴대 전화기(1400)는, 조작 키(1419)의 조작에 의해 입력된 전자 메일의 텍스트 데이터를 조작 입력 제어부(1452)에서 접수한다. 휴대 전화기(1400)는, 그 텍스트 데이터를 주 제어부(1450)에서 처리하여, LCD 제어부(1455)를 통해 화상으로서 액정 디스플레이(1418)에 표시시킨다.
또한, 휴대 전화기(1400)는, 주 제어부(1450)에서, 조작 입력 제어부(1452)가 접수한 텍스트 데이터나 유저 지시 등에 기초해서 전자 메일 데이터를 생성한다. 휴대 전화기(1400)는, 그 전자 메일 데이터를 변복조 회로부(1458)에서 스펙트럼 확산 처리하고, 송수신 회로부(1463)에서 디지털 아날로그 변환 처리 및 주파수 변환 처리한다. 휴대 전화기(1400)는, 그 변환 처리에 의해 얻어진 송신용 신호를, 안테나(1414)를 통해 도시하지 않은 기지국에 송신한다. 기지국에 전송된 송신용 신호(전자 메일)는, 네트워크 및 메일 서버 등을 통해 소정의 수신처에 공급된다.
또한 예를 들면, 데이터 통신 모드에 있어서 전자 메일을 수신하는 경우, 휴대 전화기(1400)는, 기지국으로부터 송신된 신호를 안테나(1414)를 통해 송수신 회로부(1463)에서 수신하고, 증폭하고, 또한 주파수 변환 처리 및 아날로그 디지털 변환 처리한다. 휴대 전화기(1400)는, 그 수신 신호를 변복조 회로부(1458)에서 스펙트럼 역확산 처리하여 원래의 전자 메일 데이터를 복원한다. 휴대 전화기(1400)는, 복원된 전자 메일 데이터를, LCD 제어부(1455)를 통해 액정 디스플레이(1418)에 표시한다.
또한, 휴대 전화기(1400)는, 수신한 전자 메일 데이터를, 기록 재생부(1462)를 통해 기억부(1423)에 기록하는(기억시키는) 것도 가능하다.
상기 기억부(1423)는, 재기입 가능한 임의의 기억 매체다. 기억부(1423)는, 예를 들면, RAM이나 내장형 플래시 메모리 등의 반도체 메모리여도 좋고, 하드디스크여도 좋고, 자기 디스크, 광 자기 디스크, 광 디스크, USB 메모리, 또는 메모리 카드 등의 착탈식 매체라도 좋다. 물론, 이것들 이외의 것이어도 된다.
또한, 예를 들면, 데이터 통신 모드에 있어서 화상 데이터를 송신하는 경우, 휴대 전화기(1400)는, 촬상에 의해 CCD 카메라(1416)로 화상 데이터를 생성한다. CCD 카메라(1416)는, 렌즈나 조리개 등의 광학 디바이스와 광전 변환 소자로서의 CCD를 가지며, 피사체를 촬상하고, 수광한 광의 강도를 전기 신호로 변환하여, 피사체의 화상의 화상 데이터를 생성한다. 상기 화상 데이터를, 카메라 I/F부(1454)를 통해 화상 인코더(1453)에서, 예를 들면 MPEG2나 MPEG4 등의 소정의 부호화 방식에 의해 압축 부호화함으로써 부호화 화상 데이터로 변환한다.
휴대 전화기(1400)는, 이러한 처리를 행하는 화상 인코더(1453)로서, 상술한 화상 부호화 장치(51, 351, 451, 551)를 이용한다. 따라서, 화상 인코더(1453)는, 화상 부호화 장치(51, 351)의 경우와 마찬가지로, 인트라 예측에 앞서 양자화 파라미터나 예측 모드에 따라 필터 계수를 설정하고, 인접 화소의 필터 처리를 행한다. 혹은, 화상 인코더(1453)는, 화상 부호화 장치(451, 551)의 경우와 마찬가지로, 인트라 예측에 앞서 행해지는 인접 화소의 필터 처리를 할지 하지 않을지를 제어한다. 이에 의해, 부호화 효율을 향상할 수 있다.
또한, 휴대 전화기(1400)는, 이때 동시에 CCD 카메라(1416)로 촬상 중에 마이크로폰(마이크)(1421)으로 집음한 음성을, 음성 코덱(1459)에서 아날로그 디지털 변환하여 또한 부호화한다.
휴대 전화기(1400)는, 다중 분리부(1457)에서, 화상 인코더(1453)로부터 공급된 부호화 화상 데이터와, 음성 코덱(1459)으로부터 공급된 디지털 음성 데이터를, 소정의 방식으로 다중화한다. 휴대 전화기(1400)는, 그 결과 얻어지는 다중화 데이터를 변복조 회로부(1458)에서 스펙트럼 확산 처리하고, 송수신 회로부(1463)에서 디지털 아날로그 변환 처리 및 주파수 변환 처리한다. 휴대 전화기(1400)는, 그 변환 처리에 의해 얻어진 송신용 신호를, 안테나(1414)를 통해 도시하지 않은 기지국에 송신한다. 기지국에 전송된 송신용 신호(화상 데이터)는, 네트워크 등을 통해 통신 상대에게 공급된다.
또한, 화상 데이터를 송신하지 않는 경우, 휴대 전화기(1400)는, CCD 카메라(1416)로 생성한 화상 데이터를, 화상 인코더(1453)를 통하지 않고 LCD 제어부(1455)를 통해 액정 디스플레이(1418)에 표시시킬 수도 있다.
또한 예를 들면, 데이터 통신 모드에 있어서, 간이 홈 페이지 등에 링크된 동화상 파일의 데이터를 수신하는 경우, 휴대 전화기(1400)는, 기지국으로부터 송신된 신호를 안테나(1414)를 통해 송수신 회로부(1463)에서 수신하고, 증폭하고, 또한 주파수 변환 처리 및 아날로그 디지털 변환 처리한다. 휴대 전화기(1400)는, 그 수신 신호를 변복조 회로부(1458)에서 스펙트럼 역확산 처리하여 원래의 다중화 데이터를 복원한다. 휴대 전화기(1400)는, 다중 분리부(1457)에서 그 다중화 데이터를 분리하여, 부호화 화상 데이터와 음성 데이터로 나눈다.
휴대 전화기(1400)는, 화상 디코더(1456)에서, 부호화 화상 데이터를, MPEG2나 MPEG4 등의 소정의 부호화 방식에 대응한 복호 방식으로 디코딩함으로써 재생 동화상 데이터를 생성하고, 이것을 LCD 제어부(1455)를 통해 액정 디스플레이(1418)에 표시시킨다. 이에 의해, 예를 들면, 간이 홈 페이지에 링크된 동화상 파일에 포함되는 동화상 데이터가 액정 디스플레이(1418)에 표시된다.
휴대 전화기(1400)는, 이러한 처리를 행하는 화상 디코더(1456)로서, 상술한 화상 복호 장치(151, 401, 501, 601)를 이용한다. 따라서, 화상 디코더(1456)는, 화상 복호 장치(151, 401)의 경우와 마찬가지로, 인트라 예측에 앞서 양자화 파라미터나 예측 모드에 따라 필터 계수를 전환하여, 인접 화소의 필터 처리를 행한다. 혹은, 화상 디코더(1456)는, 화상 복호 장치(501, 601)의 경우와 마찬가지로, 온/오프 플래그에 기초하여 인트라 예측에 앞서 행해지는 인접 화소의 필터 처리를 할지 하지 않을지를 제어한다. 이에 의해, 부호화 효율을 향상할 수 있다.
이때, 휴대 전화기(1400)는, 동시에 음성 코덱(1459)에서 디지털의 음성 데이터를 아날로그 음성 신호로 변환하고, 이것을 스피커(1417)로부터 출력시킨다. 이에 의해, 예를 들면, 간이 홈 페이지에 링크된 동화상 파일에 포함되는 음성 데이터가 재생된다.
또한, 전자 메일의 경우와 마찬가지로, 휴대 전화기(1400)는, 수신한 간이 홈 페이지 등에 링크된 데이터를, 기록 재생부(1462)를 통해 기억부(1423)에 기록하는(기억시키는) 것도 가능하다.
또한, 휴대 전화기(1400)는, 주 제어부(1450)에서, 촬상되어 CCD 카메라(1416)로 얻어진 2차원 코드를 해석하여, 2차원 코드에 기록된 정보를 취득할 수 있다.
또한, 휴대 전화기(1400)는, 적외선 통신부(1481)에서 적외선에 의해 외부의 기기와 통신할 수 있다.
휴대 전화기(1400)는, 화상 인코더(1453)로서 화상 부호화 장치(51, 351, 451, 551)를 이용함으로써, 예를 들면 CCD 카메라(1416)에서 생성된 화상 데이터를 부호화해서 생성하는 부호화 데이터의 부호화 효율을 향상시킬 수 있다. 결과적으로 휴대 전화기(1400)는, 부호화 효율이 좋은 부호화 데이터(화상 데이터)를 다른 장치에 제공할 수 있다.
또한, 휴대 전화기(1400)는, 화상 디코더(1456)로서 화상 복호 장치(151, 401, 501, 601)를 이용함으로써, 정밀도가 높은 예측 화상을 생성할 수 있다. 그 결과로서 휴대 전화기(1400)는, 예를 들면, 간이 홈 페이지에 링크된 동화상 파일로부터 보다 고정밀한 복호 화상을 얻어 표시할 수 있다.
또한, 이상에서, 휴대 전화기(1400)가 CCD 카메라(1416)를 이용하도록 설명했지만, 상기 CCD 카메라(1416) 대신에 CMOS(Complementary Metal Oxide Semiconductor)를 이용한 이미지 센서(CMOS 이미지 센서)를 이용하도록 해도 좋다. 이 경우에도, 휴대 전화기(1400)는, CCD 카메라(1416)를 이용하는 경우와 마찬가지로, 피사체를 촬상하여 피사체의 화상의 화상 데이터를 생성할 수 있다.
또한, 이상에서는 휴대 전화기(1400)로서 설명했지만, 예를 들면 PDA(Personal Digital Assistants), 스마트 폰, UMPC(Ultra Mobile Personal Computer), 네트 북, 노트형 퍼스널 컴퓨터 등, 상기 휴대 전화기(1400)와 마찬가지의 촬상 기능이나 통신 기능을 갖는 장치라면 어떤 장치이어도 휴대 전화기(1400)의 경우와 마찬가지로, 화상 부호화 장치(51, 351, 451, 551) 및 화상 복호 장치(151, 401, 501, 601)를 적용할 수 있다.
도 48은, 본 발명을 적용한 화상 부호화 장치 및 화상 복호 장치를 이용하는 하드디스크 레코더의 주된 구성예를 도시하는 블록도다.
도 48에 도시되는 하드디스크 레코더(HDD 레코더)(1500)는, 튜너에 의해 수신된, 위성이나 지상의 안테나 등으로부터 송신되는 방송파 신호(텔레비전 신호)에 포함되는 방송 프로의 오디오 데이터와 비디오 데이터를, 내장하는 하드디스크에 보존하고, 그 보존한 데이터를 유저의 지시에 따른 타이밍에서 유저에게 제공하는 장치다.
하드디스크 레코더(1500)는, 예를 들면 방송파 신호로부터 오디오 데이터와 비디오 데이터를 추출하고, 그것들을 적절히 복호하여, 내장하는 하드디스크에 기억시킬 수 있다. 또한, 하드디스크 레코더(1500)는, 예를 들면, 네트워크를 통해 다른 장치로부터 오디오 데이터나 비디오 데이터를 취득하고, 그것들을 적절히 복호하여, 내장하는 하드디스크에 기억시킬 수도 있다.
또한, 하드디스크 레코더(1500)는, 예를 들면, 내장하는 하드디스크에 기록되어 있는 오디오 데이터나 비디오 데이터를 복호해서 모니터(1560)에 공급하여, 모니터(1560)의 화면에 그 화상을 표시시킨다. 또한, 하드디스크 레코더(1500)는, 모니터(1560)의 스피커로부터 그 음성을 출력시킬 수 있다.
하드디스크 레코더(1500)는, 예를 들면, 튜너를 통해 취득된 방송파 신호로부터 추출된 오디오 데이터와 비디오 데이터, 또는, 네트워크를 통해 다른 장치로부터 취득한 오디오 데이터나 비디오 데이터를 복호해서 모니터(1560)에 공급하여, 모니터(1560)의 화면에 그 화상을 표시시킨다. 또한, 하드디스크 레코더(1500)는, 모니터(1560)의 스피커로부터 그 음성을 출력시킬 수도 있다.
물론, 그 밖의 동작도 가능하다.
도 48에 도시된 바와 같이, 하드디스크 레코더(1500)는, 수신부(1521), 복조부(1522), 디멀티 플렉서(1523), 오디오 디코더(1524), 비디오 디코더(1525) 및 레코더 제어부(1526)를 갖는다. 하드디스크 레코더(1500)는, 또한, EPG 데이터 메모리(1527), 프로그램 메모리(1528), 워크 메모리(1529), 디스플레이 컨버터(1530), OSD(On Screen Display) 제어부(1531), 디스플레이 제어부(1532), 기록 재생부(1533), D/A 컨버터(1534) 및 통신부(1535)를 갖는다.
또한, 디스플레이 컨버터(1530)는 비디오 인코더(1541)를 갖는다. 기록 재생부(1533)는, 인코더(1551) 및 디코더(1552)를 갖는다.
수신부(1521)는, 리모트 컨트롤러(도시 생략)로부터의 적외선 신호를 수신하여, 전기 신호로 변환해서 레코더 제어부(1526)에 출력한다. 레코더 제어부(1526)는, 예를 들면, 마이크로프로세서 등에 의해 구성되고, 프로그램 메모리(1528)에 기억되어 있는 프로그램에 따라 각종 처리를 실행한다. 레코더 제어부(1526)는, 이때 워크 메모리(1529)를 필요에 따라 사용한다.
통신부(1535)는, 네트워크에 접속되어 네트워크를 통해 다른 장치와의 통신 처리를 행한다. 예를 들면, 통신부(1535)는, 레코더 제어부(1526)에 의해 제어되며, 튜너(도시 생략)와 통신하고, 주로 튜너에 대하여 선국 제어 신호를 출력한다.
복조부(1522)는, 튜너로부터 공급된 신호를 복조하여 디멀티 플렉서(1523)에 출력한다. 디멀티 플렉서(1523)는, 복조부(1522)로부터 공급된 데이터를, 오디오 데이터, 비디오 데이터 및 EPG 데이터로 분리하여, 각각 오디오 디코더(1524), 비디오 디코더(1525) 또는 레코더 제어부(1526)에 출력한다.
오디오 디코더(1524)는, 입력된 오디오 데이터를, 예를 들면 MPEG 방식으로 디코딩하여 기록 재생부(1533)에 출력한다. 비디오 디코더(1525)는, 입력된 비디오 데이터를, 예를 들면 MPEG 방식으로 디코딩하여 디스플레이 컨버터(1530)에 출력한다. 레코더 제어부(1526)는, 입력된 EPG 데이터를 EPG 데이터 메모리(1527)에 공급하고 기억시킨다.
디스플레이 컨버터(1530)는, 비디오 디코더(1525) 또는 레코더 제어부(1526)로부터 공급된 비디오 데이터를, 비디오 인코더(1541)에 의해, 예를 들면 NTSC(National Television Standards Committee) 방식의 비디오 데이터로 인코딩하여 기록 재생부(1533)에 출력한다. 또한, 디스플레이 컨버터(1530)는, 비디오 디코더(1525) 또는 레코더 제어부(1526)로부터 공급되는 비디오 데이터의 화면의 사이즈를, 모니터(1560)의 사이즈에 대응하는 사이즈로 변환한다. 디스플레이 컨버터(1530)는, 화면의 사이즈가 변환된 비디오 데이터를, 또한 비디오 인코더(1541)에 의해 NTSC 방식의 비디오 데이터로 변환하고, 아날로그 신호로 변환하여 디스플레이 제어부(1532)에 출력한다.
디스플레이 제어부(1532)는, 레코더 제어부(1526)의 제어하에, OSD(On Screen Display) 제어부(1531)가 출력한 OSD 신호를, 디스플레이 컨버터(1530)로부터 입력된 비디오 신호에 중첩하고, 모니터(1560)의 디스플레이에 출력하여 표시시킨다.
모니터(1560)에는 또한, 오디오 디코더(1524)가 출력한 오디오 데이터가, D/A 컨버터(1534)에 의해 아날로그 신호로 변환되어 공급되어 있다. 모니터(1560)는, 이 오디오 신호를 내장하는 스피커로부터 출력한다.
기록 재생부(1533)는, 비디오 데이터나 오디오 데이터 등을 기록하는 기억 매체로서 하드디스크를 갖는다.
기록 재생부(1533)는, 예를 들면, 오디오 디코더(1524)로부터 공급되는 오디오 데이터를, 인코더(1551)에 의해 MPEG 방식으로 인코딩한다. 또한, 기록 재생부(1533)는, 디스플레이 컨버터(1530)의 비디오 인코더(1541)로부터 공급되는 비디오 데이터를, 인코더(1551)에 의해 MPEG 방식으로 인코딩한다. 기록 재생부(1533)는, 그 오디오 데이터의 부호화 데이터와 비디오 데이터의 부호화 데이터를 멀티플렉서에 의해 합성한다. 기록 재생부(1533)는, 그 합성 데이터를 채널 코딩하여 증폭하고, 그 데이터를 기록 헤드를 통해 하드디스크에 기입한다.
기록 재생부(1533)는, 재생 헤드를 통해 하드디스크에 기록되어 있는 데이터를 재생하고 증폭하여, 디멀티 플렉서에 의해 오디오 데이터와 비디오 데이터로 분리한다. 기록 재생부(1533)는, 디코더(1552)에 의해 오디오 데이터 및 비디오 데이터를 MPEG 방식으로 디코딩한다. 기록 재생부(1533)는, 복호한 오디오 데이터를 D/A 변환하여 모니터(1560)의 스피커에 출력한다. 또한, 기록 재생부(1533)는, 복호한 비디오 데이터를 D/A 변환하여 모니터(1560)의 디스플레이에 출력한다.
레코더 제어부(1526)는, 수신부(1521)를 통해 수신되는 리모트 컨트롤러로부터의 적외선 신호에 의해 나타내지는 유저 지시에 기초하여, EPG 데이터 메모리(1527)로부터 최신의 EPG 데이터를 판독하고, 그것을 OSD 제어부(1531)에 공급한다. OSD 제어부(1531)는, 입력된 EPG 데이터에 대응하는 화상 데이터를 발생하여, 디스플레이 제어부(1532)에 출력한다. 디스플레이 제어부(1532)는, OSD 제어부(1531)로부터 입력된 비디오 데이터를 모니터(1560)의 디스플레이에 출력하여 표시시킨다. 이에 의해, 모니터(1560)의 디스플레이에는, EPG(전자프로그램 가이드)가 표시된다.
또한, 하드디스크 레코더(1500)는, 인터넷 등의 네트워크를 통해 다른 장치로부터 공급되는 비디오 데이터, 오디오 데이터, 또는 EPG 데이터 등의 각종 데이터를 취득할 수 있다.
통신부(1535)는, 레코더 제어부(1526)에 제어되며, 네트워크를 통해 다른 장치로부터 송신되는 비디오 데이터, 오디오 데이터, 및 EPG 데이터 등의 부호화 데이터를 취득하고, 그것을 레코더 제어부(1526)에 공급한다. 레코더 제어부(1526)는, 예를 들면, 취득한 비디오 데이터나 오디오 데이터의 부호화 데이터를 기록 재생부(1533)에 공급하고, 하드디스크에 기억시킨다. 이때, 레코더 제어부(1526) 및 기록 재생부(1533)가, 필요에 따라 재 인코딩 등의 처리를 행하도록 해도 좋다.
또한, 레코더 제어부(1526)는, 취득한 비디오 데이터나 오디오 데이터의 부호화 데이터를 복호하고, 얻어지는 비디오 데이터를 디스플레이 컨버터(1530)에 공급한다. 디스플레이 컨버터(1530)는, 비디오 디코더(1525)로부터 공급되는 비디오 데이터와 마찬가지로, 레코더 제어부(1526)로부터 공급되는 비디오 데이터를 처리하고, 디스플레이 제어부(1532)를 통해 모니터(1560)에 공급하여 그 화상을 표시시킨다.
또한, 상기 화상 표시에 맞춰 레코더 제어부(1526)가, 복호한 오디오 데이터를 D/A 컨버터(1534)를 통해 모니터(1560)에 공급하고, 그 음성을 스피커로부터 출력시키도록 해도 좋다.
또한, 레코더 제어부(1526)는, 취득한 EPG 데이터의 부호화 데이터를 복호하고, 복호한 EPG 데이터를 EPG 데이터 메모리(1527)에 공급한다.
이상과 같은 하드디스크 레코더(1500)는, 비디오 디코더(1525), 디코더(1552), 및 레코더 제어부(1526)에 내장되는 디코더로서 화상 복호 장치(151, 401, 501, 601)를 이용한다. 따라서, 비디오 디코더(1525), 디코더(1552) 및 레코더 제어부(1526)에 내장되는 디코더는, 화상 복호 장치(151, 401)의 경우와 마찬가지로, 인트라 예측에 앞서 양자화 파라미터나 예측 모드에 따라 필터 계수를 전환하고, 인접 화소의 필터 처리를 행한다. 혹은, 비디오 디코더(1525), 디코더(1552) 및 레코더 제어부(1526)에 내장되는 디코더는, 화상 복호 장치(501, 601)의 경우와 마찬가지로, 온/오프 플래그에 기초하여, 인트라 예측에 앞서 행해지는 인접 화소의 필터 처리를 할지 하지 않을지를 제어한다. 이에 의해, 부호화 효율을 향상할 수 있다.
따라서, 하드디스크 레코더(1500)는, 정밀도가 높은 예측 화상을 생성할 수 있다. 그 결과로서, 하드디스크 레코더(1500)는, 예를 들면, 튜너를 통해 수신된 비디오 데이터의 부호화 데이터나, 기록 재생부(1533)의 하드디스크로부터 판독된 비디오 데이터의 부호화 데이터나, 네트워크를 통해 취득한 비디오 데이터의 부호화 데이터로부터, 보다 고정밀한 복호 화상을 얻어 모니터(1560)에 표시시킬 수 있다.
또한, 하드디스크 레코더(1500)는, 인코더(1551)로서 화상 부호화 장치(51, 351, 451, 551)를 이용한다. 따라서, 인코더(1551)는, 화상 부호화 장치(51, 351)의 경우와 마찬가지로, 인트라 예측에 앞서 양자화 파라미터나 예측 모드에 따라 필터 계수를 설정하여, 인접 화소의 필터 처리를 행한다. 혹은, 인코더(1551)는, 화상 부호화 장치(451, 551)의 경우와 마찬가지로, 인트라 예측에 앞서 행해지는 인접 화소의 필터 처리를 할지 하지 않을지를 제어한다. 이에 의해, 부호화 효율을 향상할 수 있다.
따라서, 하드디스크 레코더(1500)는, 예를 들면, 하드디스크에 기록하는 부호화 데이터의 부호화 효율을 향상시킬 수 있다. 그 결과로서, 하드디스크 레코더(1500)는, 하드디스크의 기억 영역을 보다 효율적으로 사용할 수 있다.
또한 이상에서는, 비디오 데이터나 오디오 데이터를 하드디스크에 기록하는 하드디스크 레코더(1500)에 대해서 설명했지만, 물론 기록 매체는 어떤 것이어도 된다. 예를 들면, 플래시 메모리, 광 디스크 또는 비디오 테이프 등, 하드디스크 이외의 기록 매체를 적용하는 레코더이어도, 상술한 하드디스크 레코더(1500)의 경우와 마찬가지로 화상 부호화 장치(51, 351, 451, 551) 및 화상 복호 장치(151, 401, 501, 601)를 적용할 수 있다.
도 49는, 본 발명을 적용한 화상 복호 장치 및 화상 부호화 장치를 이용하는 카메라의 주된 구성예를 도시하는 블록도다.
도 49에 도시되는 카메라(1600)는, 피사체를 촬상하여 피사체의 화상을 LCD(1616)에 표시시키거나, 그것을 화상 데이터로서 기록 매체(1633)에 기록한다.
렌즈 블록(1611)은, 광(즉, 피사체의 영상)을, CCD/CMOS(1612)에 입사시킨다. CCD/CMOS(1612)는, CCD 또는 CMOS를 이용한 이미지 센서이며, 수광한 광의 강도를 전기 신호로 변환하여 카메라 신호 처리부(1613)에 공급한다.
카메라 신호 처리부(1613)는, CCD/CMOS(1612)로부터 공급된 전기 신호를, Y, Cr, Cb의 색차 신호로 변환하여, 화상 신호 처리부(1614)에 공급한다. 화상 신호 처리부(1614)는, 컨트롤러(1621)의 제어하에, 카메라 신호 처리부(1613)로부터 공급된 화상 신호에 대하여 소정의 화상 처리를 실시하거나, 그 화상 신호를 인코더(1641)로, 예를 들면 MPEG 방식에 의해 부호화한다. 화상 신호 처리부(1614)는, 화상 신호를 부호화해서 생성한 부호화 데이터를 디코더(1615)에 공급한다. 또한, 화상 신호 처리부(1614)는, 온스크린 디스플레이(OSD)(1620)에서 생성된 표시용 데이터를 취득하고, 그것을 디코더(1615)에 공급한다.
이상의 처리에서, 카메라 신호 처리부(1613)는, 버스(1617)를 통해 접속되는 DRAM(Dynamic Random Access Memory)(1618)을 적절히 이용하여, 필요에 따라 화상 데이터나, 그 화상 데이터가 부호화된 부호화 데이터 등을 그 DRAM(1618)에 유지시킨다.
디코더(1615)는, 화상 신호 처리부(1614)로부터 공급된 부호화 데이터를 복호하고, 얻어진 화상 데이터(복호 화상 데이터)를 LCD(1616)에 공급한다. 또한, 디코더(1615)는, 화상 신호 처리부(1614)로부터 공급된 표시용 데이터를 LCD(1616)에 공급한다. LCD(1616)는, 디코더(1615)로부터 공급된 복호 화상 데이터의 화상과 표시용 데이터의 화상을 적절히 합성하고, 그 합성 화상을 표시한다.
온스크린 디스플레이(1620)는, 컨트롤러(1621)의 제어하에, 기호, 문자, 또는 도형으로 이루어지는 메뉴 화면이나 아이콘 등의 표시용 데이터를, 버스(1617)를 통해 화상 신호 처리부(1614)에 출력한다.
컨트롤러(1621)는, 유저가 조작부(1622)를 이용해서 명령한 내용을 나타내는 신호에 기초하여 각종 처리를 실행하는 동시에, 버스(1617)를 통해 화상 신호 처리부(1614), DRAM(1618), 외부 인터페이스(1619), 온스크린 디스플레이(1620) 및 미디어 드라이브(1623) 등을 제어한다. FLASH ROM(1624)에는, 컨트롤러(1621)가 각종 처리를 실행하는데 필요한 프로그램이나 데이터 등이 저장된다.
예를 들면, 컨트롤러(1621)는, 화상 신호 처리부(1614)나 디코더(1615) 대신에, DRAM(1618)에 기억되어 있는 화상 데이터를 부호화하거나, DRAM(1618)에 기억되어 있는 부호화 데이터를 복호할 수 있다. 이때, 컨트롤러(1621)는, 화상 신호 처리부(1614)나 디코더(1615)의 부호화·복호 방식과 마찬가지의 방식에 의해 부호화·복호 처리를 행하도록 해도 좋고, 화상 신호 처리부(1614)나 디코더(1615)가 대응하지 않은 방식에 의해 부호화·복호 처리를 행하도록 해도 좋다.
또한, 예를 들면, 조작부(1622)로부터 화상 인쇄의 개시가 지시된 경우, 컨트롤러(1621)는, DRAM(1618)으로부터 화상 데이터를 판독하고, 그것을, 버스(1617)를 통해 외부 인터페이스(1619)에 접속되는 프린터(1634)에 공급해서 인쇄시킨다.
또한, 예를 들면, 조작부(1622)로부터 화상 기록이 지시된 경우, 컨트롤러(1621)는, DRAM(1618)으로부터 부호화 데이터를 판독하고, 그것을, 버스(1617)를 통해 미디어 드라이브(1623)에 장착되는 기록 매체(1633)에 공급해서 기억시킨다.
기록 매체(1633)는, 예를 들면, 자기 디스크, 광 자기 디스크, 광 디스크, 또는 반도체 메모리 등의, 판독 기입 가능한 임의의 착탈식 매체이다. 기록 매체(1633)는, 물론 착탈식 매체로서의 종류도 임의이며, 테이프 디바이스이어도 좋고 디스크라도 좋으며, 메모리 카드이어도 된다. 물론, 비접촉 IC 카드 등이어도 좋다.
또한, 미디어 드라이브(1623)와 기록 매체(1633)를 일체화하고, 예를 들면, 내장형 하드디스크 드라이브나 SSD(Solid State Drive) 등과 같이 비가반성의 기억 매체에 의해 구성되도록 해도 좋다.
외부 인터페이스(1619)는, 예를 들면, USB 입출력 단자 등으로 구성되며, 화상의 인쇄를 행하는 경우에 프린터(1634)와 접속된다. 또한, 외부 인터페이스(1619)에는, 필요에 따라 드라이브(1631)가 접속되고, 자기 디스크, 광 디스크, 혹은 광 자기 디스크 등의 착탈식 매체(1632)가 적절히 장착되어, 그것들로부터 판독된 컴퓨터 프로그램이, 필요에 따라 FLASH ROM(1624)에 인스톨된다.
또한, 외부 인터페이스(1619)는, LAN이나 인터넷 등의 소정의 네트워크에 접속되는 네트워크 인터페이스를 갖는다. 컨트롤러(1621)는, 예를 들면, 조작부(1622)로부터의 지시에 따라 DRAM(1618)으로부터 부호화 데이터를 판독하고, 그것을 외부 인터페이스(1619)로부터 네트워크를 통해 접속되는 다른 장치에 공급시킬 수 있다. 또한, 컨트롤러(1621)는, 네트워크를 통해 다른 장치로부터 공급되는 부호화 데이터나 화상 데이터를 외부 인터페이스(1619)를 통해 취득하고, 그것을 DRAM(1618)에 유지시키거나 화상 신호 처리부(1614)에 공급할 수 있다.
이상과 같은 카메라(1600)는, 디코더(1615)로서 화상 복호 장치(151, 401, 501, 601)를 이용한다. 따라서, 디코더(1615)는, 화상 복호 장치(151, 401)의 경우와 마찬가지로, 인트라 예측에 앞서 양자화 파라미터나 예측 모드에 따라 필터 계수를 전환하여, 인접 화소의 필터 처리를 행한다. 혹은, 디코더(1615)는, 화상 복호 장치(501, 601)의 경우와 마찬가지로, 온/오프 플래그에 기초하여, 인트라 예측에 앞서 행해지는 인접 화소의 필터 처리를 할지 하지 않을지를 제어한다. 이에 의해, 부호화 효율을 향상할 수 있다.
따라서, 카메라(1600)는, 정밀도가 높은 예측 화상을 생성할 수 있다. 그 결과로서, 카메라(1600)는, 예를 들면 CCD/CMOS(1612)에서 생성된 화상 데이터나, DRAM(1618) 또는 기록 매체(1633)로부터 판독된 비디오 데이터의 부호화 데이터나, 네트워크를 통해 취득한 비디오 데이터의 부호화 데이터로부터, 보다 고정밀한 복호 화상을 얻어 LCD(1616)에 표시시킬 수 있다.
또한, 카메라(1600)는, 인코더(1641)로서 화상 부호화 장치(51, 351, 451, 551)를 이용한다. 따라서, 인코더(1641)는, 화상 부호화 장치(51, 351)의 경우와 마찬가지로, 인트라 예측에 앞서 양자화 파라미터나 예측 모드에 따라 필터 계수를 설정하여, 인접 화소의 필터 처리를 행한다. 혹은, 인코더(1641)는, 화상 부호화 장치(451, 551)의 경우와 마찬가지로, 인트라 예측에 앞서 행해지는 인접 화소의 필터 처리를 할지 하지 않을지를 제어한다. 이에 의해, 부호화 효율을 향상할 수 있다.
따라서, 카메라(1600)는, 예를 들면, 하드디스크에 기록하는 부호화 데이터의 부호화 효율을 향상시킬 수 있다. 그 결과로서, 카메라(1600)는, DRAM(1618)이나 기록 매체(1633)의 기억 영역을 보다 효율적으로 사용할 수 있다.
또한, 컨트롤러(1621)가 행하는 복호 처리에 화상 복호 장치(151, 401, 501, 601)의 복호 방법을 적용하도록 해도 된다. 마찬가지로, 컨트롤러(1621)가 행하는 부호화 처리에 화상 부호화 장치(51, 351, 451, 551)의 부호화 방법을 적용하도록 해도 된다.
또한, 카메라(1600)가 촬상하는 화상 데이터는 동화상이어도 좋고, 정지 화상이어도 된다.
물론, 화상 부호화 장치(51, 351, 451, 551) 및 화상 복호 장치(151, 401, 501, 601)는, 상술한 장치 이외의 장치나 시스템에도 적용 가능하다.
51 : 화상 부호화 장치 66 : 가역 부호화부
74 : 인트라 예측부 75 : 인접 화소 내삽 필터 전환부
81 : 인접 화소 설정부 82 : 예측 화상 생성부
83 : 최적 예측 모드 판정부 91 : 예측 모드 버퍼
92 : 양자화 파라미터 버퍼 93 : 로우패스 필터 설정부
94 : 필터 계수 메모리 111 : 인접 화소 설정부
112 : 예측 화상 생성부 113 : 최적 예측 모드 판정부
121 : 예측 모드 버퍼 122 : 최적 필터 산출부
151 : 화상 복호 장치 162 : 가역 복호부
171 : 인트라 예측부 172 : 인접 화소 내삽 필터 전환부
181 : 예측 화상 생성부 182 : 인접 화소 설정부
191 : 예측 모드 버퍼 192 : 양자화 파라미터 버퍼
193 : 로우패스 필터 설정부 194 : 필터 계수 메모리
202 : 로우패스 필터 설정부 251 : 학습 장치
261 : 인접 내삽 필터 산출부 271 : 필터 계수 기억부
351 : 화상 부호화 장치 361 : 2차 예측부
362 : 인접 화소 내삽 필터 전환부 401 : 화상 복호 장치
411 : 2차 예측부 412 : 인접 화소 내삽 필터 전환부
451 : 화상 부호화 장치 461 : 인접 화소 내삽 필터 제어부
501 : 화상 복호 장치 511 : 인접 화소 내삽 필터 제어부
551 : 화상 부호화 장치 561 : 인접 화소 내삽 필터 제어부
601 : 화상 복호 장치 611 : 인접 화소 내삽 필터 제어부

Claims (17)

  1. 부호화 처리하는 화상을 대상으로 하여, 부호화 처리의 대상이 되는 대상 블록의 화소에 대하여 인트라 예측을 행할 때의 블록 크기에 따라 설정된 필터 계수를 이용하여, 상기 대상 블록의 화소에 대하여 인트라 예측을 행할 때에 참조하는 인접 화소에 필터 처리를 행하는 필터부와,
    상기 대상 블록의 화소에 대하여 인트라 예측을 행할 때의 예측 모드에 따라서, 상기 인접 화소에 필터 처리를 행할지, 상기 인접 화소에 필터 처리를 행하지 않을지를 제어하는 제어 정보를 이용하여, 상기 인접 화소에 필터 처리를 행할지, 상기 인접 화소에 필터 처리를 행하지 않을지를 선택하도록, 상기 필터 처리를 제어하는 제어부와,
    상기 인접 화소를 이용하여, 상기 대상 블록의 화소에 대하여 인트라 예측을 행하는 인트라 예측부
    를 포함하는, 화상 처리 장치.
  2. 제1항에 있어서,
    인트라 예측을 행할 때의 코스트 함수를 이용하여, 상기 예측 모드를 결정하는 결정부
    를 더 포함하는, 화상 처리 장치.
  3. 제2항에 있어서,
    상기 필터부는, 상기 결정부에 의해 결정된 예측 모드에 대하여, 상기 코스트 함수를 이용하여, 상기 인접 화소에 필터 처리를 행할지, 상기 인접 화소에 필터 처리를 행하지 않을지를 선택하는, 화상 처리 장치.
  4. 제3항에 있어서,
    상기 필터부는, 상기 인접 화소에 필터 처리를 행할 것을 선택한 경우에, 3탭의 필터 계수를 이용한 필터 연산을 이용하여, 상기 인접 화소에 필터 처리를 행하는, 화상 처리 장치.
  5. 제1항에 있어서,
    상기 대상 블록의 화소에 대하여 인트라 예측을 행할 때의 블록 크기에 따라서, 상기 대상 블록의 화소에 대하여 인트라 예측을 행할 때에 참조하는 인접 화소에 필터 처리를 행할 때의 필터 계수를 설정하는 설정부
    를 더 포함하는, 화상 처리 장치.
  6. 제1항에 있어서,
    상기 인트라 예측부에 의해 생성된 예측 화상을 이용하여, 상기 화상을 부호화 처리하는 부호화부
    를 더 포함하는, 화상 처리 장치.
  7. 제6항에 있어서,
    상기 부호화부는, 상기 화상을, 계층 구조를 가진 단위로 부호화 처리하는, 화상 처리 장치.
  8. 제7항에 있어서,
    상기 인트라 예측부는, 블록 크기를 4×4 화소, 8×8 화소, 16×16 화소, 32×32 화소로 하여, 인트라 예측을 행하는, 화상 처리 장치.
  9. 화상 처리 장치가,
    부호화 처리하는 화상을 대상으로 하여, 부호화 처리의 대상이 되는 대상 블록의 화소에 대하여 인트라 예측을 행할 때의 블록 크기에 따라 설정된 필터 계수를 이용하여, 상기 대상 블록의 화소에 대하여 인트라 예측을 행할 때에 참조하는 인접 화소에 필터 처리를 행하고,
    상기 대상 블록의 화소에 대하여 인트라 예측을 행할 때의 예측 모드에 따라서, 상기 인접 화소에 필터 처리를 행할지, 상기 인접 화소에 필터 처리를 행하지 않을지를 제어하는 제어 정보를 이용하여, 상기 인접 화소에 필터 처리를 행할지, 상기 인접 화소에 필터 처리를 행하지 않을지를 선택하도록, 상기 필터 처리를 제어하고,
    상기 인접 화소를 이용하여, 상기 대상 블록의 화소에 대하여 인트라 예측을 행하는, 화상 처리 방법.
  10. 제9항에 있어서,
    인트라 예측을 행할 때의 코스트 함수를 이용하여, 상기 예측 모드를 결정하는, 화상 처리 방법.
  11. 제10항에 있어서,
    결정된 예측 모드에 대해, 상기 코스트 함수를 이용하여, 상기 인접 화소에 필터 처리를 행할지, 상기 인접 화소에 필터 처리를 행하지 않을지를 선택하는, 화상 처리 방법.
  12. 제11항에 있어서,
    상기 인접 화소에 필터 처리를 행할 것을 선택한 경우에, 3탭의 필터 계수를 이용한 필터 연산을 이용하여, 상기 인접 화소에 필터 처리를 행하는, 화상 처리 방법.
  13. 제9항에 있어서,
    상기 대상 블록의 화소에 대하여 인트라 예측을 행할 때의 블록 크기에 따라서, 상기 대상 블록의 화소에 대하여 인트라 예측을 행할 때에 참조하는 인접 화소에 필터 처리를 행할 때의 필터 계수를 설정하는, 화상 처리 방법.
  14. 제13항에 있어서,
    상기 인트라 예측에 의해 생성된 예측 화상을 이용하여, 상기 화상을 부호화 처리하는, 화상 처리 방법.
  15. 제14항에 있어서,
    상기 화상을, 계층 구조를 가진 단위로 부호화 처리하는, 화상 처리 방법.
  16. 제15항에 있어서,
    블록 크기를 4×4 화소, 8×8 화소, 16×16 화소, 32×32 화소로 하여, 인트라 예측을 행하는, 화상 처리 방법.
  17. 부호화 처리하는 화상을 대상으로 하여, 부호화 처리의 대상이 되는 대상 블록의 화소에 대하여 인트라 예측을 행할 때의 블록 크기에 따라 설정된 필터 계수를 이용하여, 상기 대상 블록의 화소에 대하여 인트라 예측을 행할 때에 참조하는 인접 화소에 필터 처리를 행하는 필터부와,
    상기 대상 블록의 화소에 대하여 인트라 예측을 행할 때의 예측 모드에 따라서, 상기 인접 화소에 필터 처리를 행할지, 상기 인접 화소에 필터 처리를 행하지 않을지를 제어하는 제어 정보를 이용하여, 상기 인접 화소에 필터 처리를 행할지, 상기 인접 화소에 필터 처리를 행하지 않을지를 선택하도록, 상기 필터 처리를 제어하는 제어부와,
    상기 인접 화소를 이용하여, 상기 대상 블록의 화소에 대하여 인트라 예측을 행하는 인트라 예측부로서, 컴퓨터를 기능시키는 프로그램이 기록되어 있는 기록 매체.
KR1020167033587A 2009-07-01 2010-06-23 화상 처리 장치 및 방법, 및 기록 매체 KR101765429B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP2009156563 2009-07-01
JPJP-P-2009-156563 2009-07-01
JP2009244753A JP5597968B2 (ja) 2009-07-01 2009-10-23 画像処理装置および方法、プログラム、並びに記録媒体
JPJP-P-2009-244753 2009-10-23
PCT/JP2010/060605 WO2011001865A1 (ja) 2009-07-01 2010-06-23 画像処理装置および方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020117029824A Division KR101696950B1 (ko) 2009-07-01 2010-06-23 화상 처리 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20160143871A KR20160143871A (ko) 2016-12-14
KR101765429B1 true KR101765429B1 (ko) 2017-08-07

Family

ID=43410941

Family Applications (7)

Application Number Title Priority Date Filing Date
KR1020167033587A KR101765429B1 (ko) 2009-07-01 2010-06-23 화상 처리 장치 및 방법, 및 기록 매체
KR1020117029824A KR101696950B1 (ko) 2009-07-01 2010-06-23 화상 처리 장치 및 방법
KR1020197034885A KR102161394B1 (ko) 2009-07-01 2010-06-23 화상 처리 장치 및 방법, 및 학습 장치 및 방법
KR1020177015072A KR101772851B1 (ko) 2009-07-01 2010-06-23 화상 처리 장치 및 방법
KR1020197000633A KR102051266B1 (ko) 2009-07-01 2010-06-23 화상 처리 장치 및 방법, 및 학습 장치 및 방법
KR1020157003164A KR101938316B1 (ko) 2009-07-01 2010-06-23 화상 처리 장치 및 방법, 및 학습 장치 및 방법
KR1020167033590A KR101765430B1 (ko) 2009-07-01 2010-06-23 화상 처리 장치 및 방법, 및 기록 매체

Family Applications After (6)

Application Number Title Priority Date Filing Date
KR1020117029824A KR101696950B1 (ko) 2009-07-01 2010-06-23 화상 처리 장치 및 방법
KR1020197034885A KR102161394B1 (ko) 2009-07-01 2010-06-23 화상 처리 장치 및 방법, 및 학습 장치 및 방법
KR1020177015072A KR101772851B1 (ko) 2009-07-01 2010-06-23 화상 처리 장치 및 방법
KR1020197000633A KR102051266B1 (ko) 2009-07-01 2010-06-23 화상 처리 장치 및 방법, 및 학습 장치 및 방법
KR1020157003164A KR101938316B1 (ko) 2009-07-01 2010-06-23 화상 처리 장치 및 방법, 및 학습 장치 및 방법
KR1020167033590A KR101765430B1 (ko) 2009-07-01 2010-06-23 화상 처리 장치 및 방법, 및 기록 매체

Country Status (14)

Country Link
US (7) US8885956B2 (ko)
EP (1) EP2451162A4 (ko)
JP (1) JP5597968B2 (ko)
KR (7) KR101765429B1 (ko)
CN (4) CN106385583B (ko)
BR (2) BR122013014095B1 (ko)
CA (1) CA2763887C (ko)
MX (3) MX2011013711A (ko)
MY (2) MY176882A (ko)
RU (4) RU2542945C2 (ko)
TR (1) TR201112794T1 (ko)
TW (6) TWI651965B (ko)
WO (1) WO2011001865A1 (ko)
ZA (1) ZA201106207B (ko)

Families Citing this family (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102611892B (zh) * 2006-03-16 2014-10-08 华为技术有限公司 在编码过程中实现自适应量化的方法及装置
JP5597968B2 (ja) * 2009-07-01 2014-10-01 ソニー株式会社 画像処理装置および方法、プログラム、並びに記録媒体
KR101510108B1 (ko) * 2009-08-17 2015-04-10 삼성전자주식회사 영상의 부호화 방법 및 장치, 그 복호화 방법 및 장치
WO2011121938A1 (ja) * 2010-03-31 2011-10-06 株式会社Jvcケンウッド 画像符号化装置、画像符号化方法及び画像符号化プログラム、ならびに画像復号装置、画像復号方法及び画像復号プログラム
KR20110123651A (ko) 2010-05-07 2011-11-15 한국전자통신연구원 생략 부호화를 이용한 영상 부호화 및 복호화 장치 및 그 방법
TWI600318B (zh) * 2010-05-18 2017-09-21 Sony Corp Image processing apparatus and image processing method
WO2012081895A1 (ko) 2010-12-13 2012-06-21 한국전자통신연구원 인트라 예측 방법 및 그 장치
KR102086145B1 (ko) * 2010-12-13 2020-03-09 한국전자통신연구원 인트라 예측 방법 및 그 장치
US8917950B2 (en) * 2011-01-18 2014-12-23 Sony Corporation Simplifying parametric loop filters
WO2012134046A2 (ko) 2011-04-01 2012-10-04 주식회사 아이벡스피티홀딩스 동영상의 부호화 방법
KR101383775B1 (ko) 2011-05-20 2014-04-14 주식회사 케이티 화면 내 예측 방법 및 장치
JP2013034162A (ja) * 2011-06-03 2013-02-14 Sony Corp 画像処理装置及び画像処理方法
JP2012253722A (ja) * 2011-06-07 2012-12-20 Sony Corp 画像符号化装置と画像復号装置およびその方法とプログラム
KR20120140181A (ko) 2011-06-20 2012-12-28 한국전자통신연구원 화면내 예측 블록 경계 필터링을 이용한 부호화/복호화 방법 및 그 장치
JP5789172B2 (ja) * 2011-10-20 2015-10-07 日本放送協会 画像処理装置及びプログラム
CN104935943B (zh) 2011-10-24 2018-05-25 英孚布瑞智有限私人贸易公司 对帧内预测模式进行解码的方法
CN107181942B (zh) * 2011-10-24 2020-03-10 英孚布瑞智有限私人贸易公司 图像解码设备
TWI650000B (zh) 2011-10-28 2019-02-01 三星電子股份有限公司 對視訊進行解碼的裝置
US9185428B2 (en) 2011-11-04 2015-11-10 Google Technology Holdings LLC Motion vector scaling for non-uniform motion vector grid
JP5871628B2 (ja) * 2011-11-07 2016-03-01 キヤノン株式会社 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム
JP2013102297A (ja) 2011-11-07 2013-05-23 Canon Inc 画像符号化方法、画像符号化装置及びプログラム、画像復号方法、画像復号装置及びプログラム
TWI632808B (zh) * 2012-04-06 2018-08-11 新力股份有限公司 Image processing device and method
CN108696755B (zh) * 2012-04-13 2020-11-06 三菱电机株式会社 图像编码装置、图像解码装置及其方法
US11317101B2 (en) 2012-06-12 2022-04-26 Google Inc. Inter frame candidate selection for a video encoder
CN104272738A (zh) * 2012-06-15 2015-01-07 英特尔公司 用于可扩展视频编码的自适应滤波
US9781447B1 (en) 2012-06-21 2017-10-03 Google Inc. Correlation based inter-plane prediction encoding and decoding
TWI595776B (zh) * 2012-06-27 2017-08-11 Sony Corp Image processing device and method
US9167268B1 (en) 2012-08-09 2015-10-20 Google Inc. Second-order orthogonal spatial intra prediction
US9380298B1 (en) 2012-08-10 2016-06-28 Google Inc. Object-based intra-prediction
US9344742B2 (en) 2012-08-10 2016-05-17 Google Inc. Transform-domain intra prediction
WO2014049981A1 (ja) * 2012-09-28 2014-04-03 三菱電機株式会社 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
US9485515B2 (en) 2013-08-23 2016-11-01 Google Inc. Video coding using reference motion vectors
US9503746B2 (en) * 2012-10-08 2016-11-22 Google Inc. Determine reference motion vectors
RU2651209C2 (ru) * 2012-11-30 2018-04-18 Сони Корпорейшн Устройство обработки изображения и способ обработки изображения
JP6065613B2 (ja) * 2013-01-29 2017-01-25 富士通株式会社 動画像符号化装置
US9247251B1 (en) 2013-07-26 2016-01-26 Google Inc. Right-edge extension for quad-tree intra-prediction
US9332150B2 (en) * 2014-08-25 2016-05-03 Kabushiki Kaisha Toshiba Text scanning system, image processing apparatus, and text scanning method
TWI561060B (en) * 2015-01-15 2016-12-01 Mstar Semiconductor Inc Signal processing apparatus and signal processing method including quantization or inverse-quantization process
JP2016146572A (ja) * 2015-02-09 2016-08-12 Kddi株式会社 動画像符号化装置、動画像復号装置、動画像処理システム、動画像符号化方法、動画像復号方法、およびプログラム
WO2016129980A1 (ko) * 2015-02-13 2016-08-18 엘지전자(주) 변환 도메인 예측을 이용하여 비디오 신호를 인코딩, 디코딩하는 방법 및 장치
EP3067889A1 (en) 2015-03-09 2016-09-14 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Method and apparatus for signal-adaptive transform kernel switching in audio coding
WO2017043786A1 (ko) * 2015-09-10 2017-03-16 엘지전자 주식회사 비디오 코딩 시스템에서 인트라 예측 방법 및 장치
EP3355580A4 (en) * 2015-09-21 2019-04-24 LG Electronics Inc. METHOD AND DEVICE FOR PROCESSING VIDEO IMAGE SIGNALS USING COEFFICIENT REMOVAL PRESCRIPTION
EP3367688A4 (en) * 2015-10-21 2018-10-24 Sharp Kabushiki Kaisha Predictive image generation device, image decoding device, and image encoding device
GB2551927B (en) 2015-11-09 2020-07-01 Sky Cp Ltd Television user interface
US10819987B2 (en) 2015-11-12 2020-10-27 Lg Electronics Inc. Method and apparatus for coefficient induced intra prediction in image coding system
CN109417637B (zh) 2016-04-26 2021-12-07 英迪股份有限公司 用于编码/解码图像的方法和设备
WO2017204387A1 (ko) * 2016-05-27 2017-11-30 엘지전자(주) 원본 블록과 예측 블록 내 각 주파수 성분의 상관성을 이용하여 비디오 신호를 인코딩, 디코딩하는 방법 및 장치
KR101974261B1 (ko) 2016-06-24 2019-04-30 한국과학기술원 Cnn 기반 인루프 필터를 포함하는 부호화 방법과 장치 및 복호화 방법과 장치
WO2017222140A1 (ko) * 2016-06-24 2017-12-28 한국과학기술원 Cnn 기반 인루프 필터를 포함하는 부호화 방법과 장치 및 복호화 방법과 장치
WO2018012660A1 (ko) * 2016-07-15 2018-01-18 엘지전자(주) 예측 유닛 분할을 위한 변환 도메인 예측을 이용하여 비디오 신호를 인코딩, 디코딩하는 방법 및 장치
EP3522538A4 (en) 2016-09-30 2020-07-29 LG Electronics Inc. -1- IMAGE PROCESSING METHOD AND DEVICE THEREFOR
KR20180080115A (ko) 2017-01-02 2018-07-11 한양대학교 산학협력단 참조 화소에 대하여 적응적 필터링을 수행하기 위한 화면 내 예측 방법 및 장치
WO2018124853A1 (ko) * 2017-01-02 2018-07-05 한양대학교 산학협력단 참조 화소에 대하여 적응적 필터링을 수행하기 위한 화면 내 예측 방법 및 장치
KR102053242B1 (ko) * 2017-04-26 2019-12-06 강현인 압축 파라미터를 이용한 영상 복원용 머신러닝 알고리즘 및 이를 이용한 영상 복원방법
US11140415B2 (en) 2017-11-30 2021-10-05 Lg Electronics Inc. Method and device for processing video signal
KR101998036B1 (ko) * 2017-12-06 2019-07-08 한국과학기술원 왜곡 제거 방법 및 장치
KR102606200B1 (ko) * 2018-03-06 2023-11-24 삼성전자주식회사 전자 장치 및 그 제어 방법
CN112204981A (zh) * 2018-03-29 2021-01-08 弗劳恩霍夫应用研究促进协会 用于选择用于填补的帧内预测模式的装置
US10687083B2 (en) * 2018-06-06 2020-06-16 Intel Corporation Loop restoration filtering for super resolution video coding
KR20210016053A (ko) * 2018-06-25 2021-02-10 김기백 영상 부호화/복호화 방법 및 장치
CA3105446C (en) * 2018-07-02 2023-04-11 Huawei Technologies Co., Ltd. Apparatus and method for filtering in video coding
CN112040228B (zh) * 2018-09-16 2021-08-03 华为技术有限公司 用于预测的方法,装置和存储介质
JP7228980B2 (ja) * 2018-09-21 2023-02-27 日本放送協会 予測画像補正装置、画像符号化装置、画像復号装置、及びプログラム
CN112740276A (zh) 2018-09-23 2021-04-30 华为技术有限公司 用于帧内参考样本插值滤波器切换的方法和装置
RU2718426C9 (ru) * 2019-07-10 2020-12-29 федеральное государственное автономное образовательное учреждение высшего образования "Южный федеральный университет" (Южный федеральный университет) Устройство восстановления папиллярных узоров отпечатка пальца
TWI731579B (zh) * 2020-02-11 2021-06-21 日商東芝股份有限公司 傳輸裝置、通訊系統、傳輸方法及電腦程式產品

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030048951A1 (en) * 1998-03-11 2003-03-13 Hideyuki Rengakuji Image processing apparatus and method, and computer readable storage medium
WO2003026313A1 (en) * 2001-09-14 2003-03-27 Sharp Kabushiki Kaisha Adaptive filtering based upon boundary strength
US20040136458A1 (en) * 2001-11-30 2004-07-15 Achim Dahlhoff Method for conducting a directed prediction of an image block
EP1720358A2 (en) 2005-04-11 2006-11-08 Sharp Kabushiki Kaisha Method and apparatus for adaptive up-sampling for spatially scalable coding

Family Cites Families (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3608582B2 (ja) * 1995-07-07 2005-01-12 ソニー株式会社 画像符号化装置および方法、画像復号装置および方法
JP3493872B2 (ja) * 1996-02-29 2004-02-03 ソニー株式会社 画像データ処理方法およびその装置
JP3263807B2 (ja) * 1996-09-09 2002-03-11 ソニー株式会社 画像符号化装置および画像符号化方法
RU2196391C2 (ru) * 1997-01-31 2003-01-10 Сименс Акциенгезелльшафт Способ и устройство для кодирования и декодирования изображения в цифровой форме
FI117533B (fi) * 2000-01-20 2006-11-15 Nokia Corp Menetelmä digitaalisten videokuvien suodattamiseksi
US6724943B2 (en) * 2000-02-07 2004-04-20 Sony Corporation Device and method for image processing
US6654503B1 (en) * 2000-04-28 2003-11-25 Sun Microsystems, Inc. Block-based, adaptive, lossless image coder
JP2002073541A (ja) * 2000-08-31 2002-03-12 Sony Corp コンテンツ配信方法およびコンテンツ供給システム
US20020157058A1 (en) * 2001-02-20 2002-10-24 Cute Ltd. System and method for feedback-based unequal error protection coding
US20020146074A1 (en) * 2001-02-20 2002-10-10 Cute Ltd. Unequal error protection of variable-length data packets based on recursive systematic convolutional coding
JP2003304538A (ja) * 2002-04-11 2003-10-24 Matsushita Electric Ind Co Ltd 画像符号化装置、画像復号化装置及びそれらの方法
EP2320661B8 (en) 2001-11-29 2015-09-02 Godo Kaisha IP Bridge 1 Coding distortion removal method
US20030103523A1 (en) * 2001-11-30 2003-06-05 International Business Machines Corporation System and method for equal perceptual relevance packetization of data for multimedia delivery
JP4120301B2 (ja) * 2002-04-25 2008-07-16 ソニー株式会社 画像処理装置およびその方法
US6907079B2 (en) * 2002-05-01 2005-06-14 Thomson Licensing S.A. Deblocking filter conditioned on pixel brightness
US7227901B2 (en) * 2002-11-21 2007-06-05 Ub Video Inc. Low-complexity deblocking filter
US7289562B2 (en) * 2003-08-01 2007-10-30 Polycom, Inc. Adaptive filter to improve H-264 video quality
US7321565B2 (en) * 2003-08-29 2008-01-22 Ineoquest Technologies System and method for analyzing the performance of multiple transportation streams of streaming media in packet-based networks
CN1233171C (zh) * 2004-01-16 2005-12-21 北京工业大学 一种用于视频编码的简单化环路滤波方法
JP4082383B2 (ja) * 2004-05-20 2008-04-30 ソニー株式会社 撮像装置、画像処理方法および色領域設定プログラム
KR100813958B1 (ko) * 2004-06-07 2008-03-14 세종대학교산학협력단 동영상의 무손실 인코딩 및 디코딩 방법, 그 장치
JP4763422B2 (ja) * 2004-12-03 2011-08-31 パナソニック株式会社 イントラ予測装置
US20060258991A1 (en) * 2005-04-29 2006-11-16 Lin Edward D Portable needle uncapping and recapping device
US20090034857A1 (en) * 2005-07-22 2009-02-05 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
JP2007150913A (ja) * 2005-11-29 2007-06-14 Matsushita Electric Ind Co Ltd 画像符号化装置
US7570704B2 (en) * 2005-11-30 2009-08-04 Intel Corporation Transmitter architecture for high-speed communications
CN101390382B (zh) * 2005-12-27 2011-01-12 京瓷株式会社 成像设备和图像处理方法
KR101246294B1 (ko) * 2006-03-03 2013-03-21 삼성전자주식회사 영상의 인트라 예측 부호화, 복호화 방법 및 장치
EP2001239B1 (en) * 2006-03-27 2017-09-13 Sun Patent Trust Picture coding apparatus and picture decoding apparatus
EP1841230A1 (en) * 2006-03-27 2007-10-03 Matsushita Electric Industrial Co., Ltd. Adaptive wiener filter for video coding
KR100745765B1 (ko) 2006-04-13 2007-08-02 삼성전자주식회사 화상 데이터의 공간상 예측 장치 및 방법과 그를 이용한부호화 장치 및 방법, 화상 데이터의 공간상 예측 보상장치 및 방법과 그를 이용한 복호화 장치 및 방법
CN100578622C (zh) 2006-05-30 2010-01-06 北京中星微电子有限公司 一种自适应麦克阵列系统及其语音信号处理方法
US8243815B2 (en) * 2006-06-16 2012-08-14 Via Technologies, Inc. Systems and methods of video compression deblocking
FR2903253A1 (fr) * 2006-06-29 2008-01-04 Thales Sa Procede permettant de determiner des parametres de compression et de protection pour la transmission de donnees multimedia sur un canal sans fil.
CA2655970A1 (en) * 2006-07-07 2008-01-10 Telefonaktiebolaget L M Ericsson (Publ) Video data management
JP4747975B2 (ja) * 2006-07-14 2011-08-17 ソニー株式会社 画像処理装置および方法、プログラム、並びに、記録媒体
CN101554058B (zh) * 2006-11-07 2011-09-21 三星电子株式会社 基于帧内预测进行编码和解码的方法和装置
US9961372B2 (en) * 2006-12-08 2018-05-01 Nxp Usa, Inc. Adaptive disabling of deblock filtering based on a content characteristic of video information
US9445128B2 (en) * 2006-12-08 2016-09-13 Freescale Semiconductor, Inc. System and method of determining deblocking control flag of scalable video system for indicating presentation of deblocking parameters for multiple layers
US8942505B2 (en) * 2007-01-09 2015-01-27 Telefonaktiebolaget L M Ericsson (Publ) Adaptive filter representation
JP4847890B2 (ja) * 2007-02-16 2011-12-28 パナソニック株式会社 符号化方式変換装置
JP5089214B2 (ja) 2007-03-27 2012-12-05 キヤノン株式会社 画像処理方法及びその装置、コンピュータプログラム及び記憶媒体
JP4790843B2 (ja) * 2007-03-30 2011-10-12 富士通株式会社 能動消音装置および能動消音方法
US20080253467A1 (en) * 2007-04-13 2008-10-16 Nokia Corporation System and method for using redundant pictures for inter-layer prediction in scalable video coding
US8488672B2 (en) 2007-04-17 2013-07-16 Qualcomm Incorporated Mode uniformity signaling for intra-coding
US20090003449A1 (en) * 2007-06-28 2009-01-01 Mitsubishi Electric Corporation Image encoding device, image decoding device, image encoding method and image decoding method
CN103338365B (zh) * 2007-06-29 2017-04-12 夏普株式会社 图像编码装置、图像编码方法、图像译码装置、图像译码方法
CN100562114C (zh) 2007-08-30 2009-11-18 上海交通大学 视频解码方法与解码装置
JP2009194617A (ja) * 2008-02-14 2009-08-27 Sony Corp 画像処理装置、画像処理方法、画像処理方法のプログラム及び画像処理方法のプログラムを記録した記録媒体
RU2010132652A (ru) * 2008-03-07 2012-02-10 Кабусики Кайся Тосиба (Jp) Способ и устройство кодирования/декодирования видеосигнала
US8831086B2 (en) * 2008-04-10 2014-09-09 Qualcomm Incorporated Prediction techniques for interpolation in video coding
EP2266321B1 (en) * 2008-04-23 2017-12-13 Telefonaktiebolaget LM Ericsson (publ) Template-based pixel block processing
JPWO2009133845A1 (ja) * 2008-04-30 2011-09-01 株式会社東芝 動画像符号化/復号化装置及び方法
JPWO2009133844A1 (ja) * 2008-04-30 2011-09-01 株式会社東芝 エッジを考慮したフィルタリング機能を備えた動画像符号化/復号化方法及び装置
WO2010001999A1 (ja) * 2008-07-04 2010-01-07 株式会社 東芝 動画像符号化/復号化方法及び装置
CN101321290B (zh) * 2008-07-17 2010-12-15 北京数码视讯科技股份有限公司 基于数字信号处理器的去块滤波方法
TWI386068B (zh) * 2008-10-22 2013-02-11 Nippon Telegraph & Telephone 解塊處理方法、解塊處理裝置、解塊處理程式及記錄該程式之可由電腦讀取之記錄媒體
JPWO2010076856A1 (ja) * 2009-01-05 2012-06-21 株式会社東芝 動画像符号化方法及び動画像復号化方法
KR20110001990A (ko) * 2009-06-30 2011-01-06 삼성전자주식회사 영상 데이터의 인 루프 필터링 장치 및 방법과 이를 이용한 영상 부호화/복호화 장치
JP5597968B2 (ja) * 2009-07-01 2014-10-01 ソニー株式会社 画像処理装置および方法、プログラム、並びに記録媒体
US8306355B2 (en) * 2009-07-13 2012-11-06 Sharp Laboratories Of America, Inc. Methods and systems for reducing compression artifacts
JP2011050001A (ja) * 2009-08-28 2011-03-10 Sony Corp 画像処理装置および方法
US20110249741A1 (en) * 2010-04-09 2011-10-13 Jie Zhao Methods and Systems for Intra Prediction
EP2547107A4 (en) * 2010-04-13 2014-07-02 Samsung Electronics Co Ltd VIDEO ENCODING METHOD AND VIDEO ENCODING APPARATUS BASED ON CODING UNITS DETERMINED ACCORDING TO ARBORESCENT STRUCTURE, AND VIDEO DECODING METHOD AND VIDEO DECODING APPARATUS BASED ON ENCODING UNITS DETERMINED ACCORDING TO ARBORESCENT STRUCTURE
DE102011006036B4 (de) * 2011-01-14 2012-12-27 Siemens Aktiengesellschaft Verfahren und Vorrichtungen zur Bildung eines Prädiktionswertes
US20160073107A1 (en) * 2013-04-15 2016-03-10 Intellectual Discovery Co., Ltd Method and apparatus for video encoding/decoding using intra prediction
CN109155857B (zh) * 2016-03-11 2023-05-30 数字洞察力有限公司 视频编码方法以及装置
CN117221589A (zh) * 2016-06-22 2023-12-12 Lx 半导体科技有限公司 图像编码/解码设备以及传输图像数据的设备
WO2018066863A1 (ko) * 2016-10-04 2018-04-12 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
US10791327B2 (en) * 2017-06-30 2020-09-29 Telefonaktiebolaget Lm Ericsson (Publ) Encoding and decoding a picture block

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030048951A1 (en) * 1998-03-11 2003-03-13 Hideyuki Rengakuji Image processing apparatus and method, and computer readable storage medium
WO2003026313A1 (en) * 2001-09-14 2003-03-27 Sharp Kabushiki Kaisha Adaptive filtering based upon boundary strength
US20040136458A1 (en) * 2001-11-30 2004-07-15 Achim Dahlhoff Method for conducting a directed prediction of an image block
EP1720358A2 (en) 2005-04-11 2006-11-08 Sharp Kabushiki Kaisha Method and apparatus for adaptive up-sampling for spatially scalable coding

Also Published As

Publication number Publication date
TWI651965B (zh) 2019-02-21
BRPI1011906A2 (pt) 2016-04-19
RU2542945C2 (ru) 2015-02-27
US20130330014A1 (en) 2013-12-12
TW201907722A (zh) 2019-02-16
MY176882A (en) 2020-08-25
CN106331710A (zh) 2017-01-11
TW201717637A (zh) 2017-05-16
RU2014141292A (ru) 2016-05-10
MX349898B (es) 2017-08-18
EP2451162A4 (en) 2013-01-16
CA2763887C (en) 2016-08-30
RU2011152881A (ru) 2013-06-27
RU2665885C2 (ru) 2018-09-04
TWI650007B (zh) 2019-02-01
TWI475891B (zh) 2015-03-01
AU2010267185A1 (en) 2012-01-12
US9830716B2 (en) 2017-11-28
WO2011001865A1 (ja) 2011-01-06
KR102051266B1 (ko) 2019-12-03
CN106385583B (zh) 2019-04-19
TWI699996B (zh) 2020-07-21
CA2763887A1 (en) 2011-01-06
TWI705702B (zh) 2020-09-21
JP2011030175A (ja) 2011-02-10
BRPI1011906B1 (pt) 2021-02-23
US20200202577A1 (en) 2020-06-25
KR20160143871A (ko) 2016-12-14
US8675978B2 (en) 2014-03-18
RU2019115874A (ru) 2020-11-23
TW201717638A (zh) 2017-05-16
US20220335657A1 (en) 2022-10-20
US10614593B2 (en) 2020-04-07
KR101938316B1 (ko) 2019-01-15
ZA201106207B (en) 2012-06-27
US20180005408A1 (en) 2018-01-04
CN104125468A (zh) 2014-10-29
KR101772851B1 (ko) 2017-08-29
KR20120036847A (ko) 2012-04-18
US20140376631A1 (en) 2014-12-25
TW201116069A (en) 2011-05-01
KR20160142409A (ko) 2016-12-12
US20140376630A1 (en) 2014-12-25
TW201904298A (zh) 2019-01-16
AU2010267185A8 (en) 2016-02-25
KR20190133800A (ko) 2019-12-03
CN102474617A (zh) 2012-05-23
KR101696950B1 (ko) 2017-01-16
CN106254876B (zh) 2019-10-11
TR201112794T1 (tr) 2012-05-21
MX2011013711A (es) 2012-02-22
MX349900B (es) 2017-08-18
CN102474617B (zh) 2016-11-16
US11328452B2 (en) 2022-05-10
KR20150024440A (ko) 2015-03-06
BR122013014095A2 (pt) 2016-05-10
BR122013014095B1 (pt) 2021-03-09
KR20170065686A (ko) 2017-06-13
RU2014141292A3 (ko) 2018-07-09
CN106385583A (zh) 2017-02-08
US8885956B2 (en) 2014-11-11
EP2451162A1 (en) 2012-05-09
TWI577179B (zh) 2017-04-01
JP5597968B2 (ja) 2014-10-01
KR101765430B1 (ko) 2017-08-07
RU2690211C1 (ru) 2019-05-31
MY156869A (en) 2016-04-15
TW201440501A (zh) 2014-10-16
US9710930B2 (en) 2017-07-18
KR102161394B1 (ko) 2020-10-05
AU2010267185B2 (en) 2015-09-24
US20120093426A1 (en) 2012-04-19
KR20190006082A (ko) 2019-01-16
CN104125468B (zh) 2018-07-03
CN106254876A (zh) 2016-12-21

Similar Documents

Publication Publication Date Title
KR101765429B1 (ko) 화상 처리 장치 및 방법, 및 기록 매체
WO2011018965A1 (ja) 画像処理装置および方法
WO2010095559A1 (ja) 画像処理装置および方法
JPWO2010095560A1 (ja) 画像処理装置および方法
WO2010035732A1 (ja) 画像処理装置および方法
KR20110133554A (ko) 화상 처리 장치 및 방법
JP6048774B2 (ja) 画像処理装置および方法

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right