JP6468381B2 - 画像処理装置、画像処理方法、プログラム、並びに記録媒体 - Google Patents

画像処理装置、画像処理方法、プログラム、並びに記録媒体 Download PDF

Info

Publication number
JP6468381B2
JP6468381B2 JP2018026860A JP2018026860A JP6468381B2 JP 6468381 B2 JP6468381 B2 JP 6468381B2 JP 2018026860 A JP2018026860 A JP 2018026860A JP 2018026860 A JP2018026860 A JP 2018026860A JP 6468381 B2 JP6468381 B2 JP 6468381B2
Authority
JP
Japan
Prior art keywords
filter
unit
clip
boundary
image
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2018026860A
Other languages
English (en)
Other versions
JP2018113698A (ja
Inventor
優 池田
優 池田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
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=47423858&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP6468381(B2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Sony Corp filed Critical Sony Corp
Publication of JP2018113698A publication Critical patent/JP2018113698A/ja
Application granted granted Critical
Publication of JP6468381B2 publication Critical patent/JP6468381B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • 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/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • 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/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4341Demultiplexing of audio and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Processing (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Picture Signal Circuits (AREA)

Description

本技術は、画像処理装置、画像処理方法、プログラム、並びに記録媒体に関し、特に、デブロッキングフィルタ処理において、適切にフィルタリングをかけることができるようにした画像処理装置、画像処理方法、プログラム、並びに記録媒体に関する。
近年、画像情報をディジタルとして取り扱い、その際、効率の高い情報の伝送、蓄積を目的とし、画像情報特有の冗長性を利用して、離散コサイン変換等の直交変換と動き補償により圧縮するMPEG2(ISO(International Organization for Standardization)/IEC(International Electrotechnical Commission)13818-2)などの方式に準拠した装置が、放送局などの情報配信、および一般家庭における情報受信の双方において普及している。また、MPEG2等に比べ、その符号化、復号により多くの演算量が要求されるものの、より高い符号化効率が実現されることができるH.264およびMPEG4 Part10(AVC(Advanced Video Coding))と呼ばれる方式も用いられるようになった。さらに、昨今、ハイビジョン画像の4倍の、4000×2000画素程度の高解像度画像の圧縮や配信等を効率よく行うことができるように、次世代の画像符号化方式であるHEVC(High Efficiency Video Coding)の標準化作業が行われている。
次世代の画像符号化方式であるHEVC(High Efficiency Video Coding)の標準化作業では、JCTVC−A119(下記非特許文献1参照)において、8×8画素以上のサイズのブロック毎にデブロックフィルタを適用することが提案されている。JCTVC−A119において提案された手法では、デブロックフィルタを適用する最小単位のブロックサイズが拡大されることで、1つのマクロブロック内で同一方向の複数のブロック境界についてのフィルタリング処理を並列的に実行することが可能となる。
K.Ugur (Nokia), K.R.Andersson (LM Ericsson), A.Fuldseth (Tandberg Telecom), "JCTVC-A119:Video coding technology proposal by Tandberg, Nokia, and Ericsson", Documents of the first meeting of the Joint Collaborative Team on Video Coding (JCT-VC), Dresden, Germany, 15-23 April, 2010.
しかしながら、従来のデブロッキングフィルタ処理においては、適切にフィルタリングがなされていなかった。
そこで、この技術では、デブロッキングフィルタ処理において、適切にフィルタリングがかかるようにすることを目的とする。
本技術の一側面の画像処理装置は、符号化処理する際にローカル復号処理されたローカル復号画像のブロック境界の近傍に位置する画素に対して第1のフィルタよりもフィルタ強度の強い第2フィルタがデブロッキングフィルタとして適用される場合に、前記第1フィルタが適用される前の画素値に対する前記第1フィルタが適用された後の画素値の変化値をクリップする際に用いる第1クリップ値よりも大きい値である第2クリップ値を用いて、前記第2フィルタが適用される前の画素値に対する前記第2フィルタが適用された後の画素値の変化値をクリップする制御部を備える。
本技術の一側面のプログラムは、符号化処理する際にローカル復号処理されたローカル復号画像のブロック境界の近傍に位置する画素に対して第1のフィルタよりもフィルタ強度の強い第2フィルタがデブロッキングフィルタとして適用される場合に、前記第1フィルタが適用される前の画素値に対する前記第1フィルタが適用された後の画素値の変化値をクリップする際に用いる第1クリップ値よりも大きい値である第2クリップ値を用いて、前記第2フィルタが適用される前の画素値に対する前記第2フィルタが適用された後の画素値の変化値をクリップする制御部として、コンピュータを機能させる。
本技術の一側面においては、符号化ストリームを復号処理することにより得られる復号画像のブロック境界の近傍に位置する画素に対して第1フィルタよりもフィルタ強度の強い第2フィルタがデブロッキングフィルタとして適用される場合に、前記第1フィルタが適用される前の画素値に対する前記第1フィルタが適用された後の画素値の変化値をクリップする際に用いる第1クリップ値よりも大きい値である第2クリップ値を用いて、前記第2フィルタが適用される前の画素値に対する前記第2フィルタが適用された後の画素値の変化値がクリップされる。
この技術によれば、デブロッキングフィルタ処理において、適切にフィルタ処理をかけることができる。
従来のデブロッキングフィルタ処理を説明するための図である。 画像符号化装置に適用した場合の構成を示す図である。 画像符号化動作を示すフローチャートである。 イントラ予測処理を示すフローチャートである。 インター予測処理を示すフローチャートである。 画像復号装置に適用した場合の構成を示す図である。 画像復号動作を示すフローチャートである。 デブロッキングフィルタ処理部の基本的な動作を説明するための図である。 デブロッキングフィルタ処理部の第1の実施の形態の構成を示す図である。 デブロッキングフィルタ処理部の第1の実施の形態の動作を示すフローチャートである。 フィルタ演算部の構成を示す図である。 フィルタ演算部の構成を示す図である。 フィルタ演算部の動作を説明するための図である。 フィルタ演算部の動作を説明するための図である。 第5の実施の形態の動作を示すフローチャートである。 従来のデブロッキングフィルタ処理を説明するための図である。 本技術(第6の実施の形態)を説明するための図である。 本技術(第6の実施の形態)を説明するための図である。 本技術のデブロッキングフィルタ処理に用いられる画素を明示する図である。 従来の強フィルタリングによって変化する画素値について説明する図である。 クリップ処理付き強フィルタリングによる効果について説明する図である。 デブロッキングフィルタ処理部の第6の実施の形態の構成を示す図である。 デブロッキングフィルタ処理部の第6の実施の形態の動作を示すフローチャートである。 デブロッキングフィルタ処理部の第7の実施の形態の構成を示す図である。 デブロッキングフィルタ処理部の第8の実施の形態の構成を示す図である。 デブロッキングフィルタ処理部の第8の実施の形態の動作を示すフローチャートである。 輝度信号のデブロッキング処理について説明するフローチャートである。 R3W2の場合の例を説明する図である。 多視点画像符号化方式の例を示す図である。 本技術を適用した多視点画像符号化装置の主な構成例を示す図である。 本技術を適用した多視点画像復号装置の主な構成例を示す図である。 階層画像符号化方式の例を示す図である。 本技術を適用した階層画像符号化装置の主な構成例を示す図である。 本技術を適用した階層画像復号装置の主な構成例を示す図である。 テレビジョン装置の概略的な構成の一例を示した図である。 携帯電話機の概略的な構成の一例を示した図である。 記録再生装置の概略的な構成の一例を示した図である。 撮像装置の概略的な構成の一例を示した図である。
以下、本技術を実施するための形態について説明する。なお、説明は以下の順序で行う。
1.従来の技術
2.画像符号化装置に適用した場合の構成
3.画像符号化装置の動作
4.画像復号装置に適用した場合の構成
5.画像復号装置の動作
6.デブロッキングフィルタ処理部の基本的な動作
7.デブロッキングフィルタ処理部の第1の実施の形態
8.デブロッキングフィルタ処理部の第2の実施の形態
9.デブロッキングフィルタ処理部の第3の実施の形態
10.デブロッキングフィルタ処理部の第4の実施の形態
11.デブロッキングフィルタ処理部の第5の実施の形態
12.第6乃至第8の実施の形態の説明
13.デブロッキングフィルタ処理部の第6の実施の形態
14.デブロッキングフィルタ処理部の第7の実施の形態
15.デブロッキングフィルタ処理部の第8の実施の形態
16.第9の実施の形態
17.第10の実施の形態(多視点画像符号化・多視点画像復号装置)
18.第11の実施の形態(階層画像符号化・階層画像復号装置)
19.応用例
<1.従来の技術>
従来のデブロッキングフィルタ処理について図1を参照して説明する。
図1の(A)に示すように、例えばLCU(Largest Coding Unit)単位でラスター順にデブロッキングフィルタ処理を行う場合、上側ブロックであるLCUuにおいて、ブロック間の境界BBから所定ライン分の画像データがラインメモリに記憶されて、この画像データと、その後に得られる下側ブロックであるLCUlの画像データを用いて垂直フィルタ処理が行われる。例えば、図1の(B)に示すように、ブロック間の境界BBからそれぞれ3ライン分を垂直フィルタ処理の処理範囲として、境界BBから4ライン分の画像データを用いてフィルタ演算を行う場合、上側ブロックであるLCUuの境界BBから4ラインの画像データがラインメモリに記憶される。なお、図では、デブロッキングフィルタの対象画素を二重丸で示しており、デブロッキングフィルタのフィルタ処理範囲の上側境界を「DBU」、下側境界を「DBL」として示している。
このように、フィルタ演算に用いられる画像データをブロック間の境界BBから所定ラ イン分だけラインメモリに記憶しておくため、水平方向の画素数が増大するとラインメモリのメモリ容量が大きくなってしまっていた。
<2.画像符号化装置に適用した場合の構成>
図2は、本技術の画像処理装置を画像符号化装置に適用した場合の構成を示している。画像符号化装置10は、アナログ/ディジタル変換部(A/D変換部)11、画面並び替えバッファ12、減算部13、直交変換部14、量子化部15、可逆符号化部16、蓄積バッファ17、レート制御部18を備えている。さらに、画像符号化装置10は、逆量子化部21、逆直交変換部22、加算部23、デブロッキングフィルタ処理部24、フレームメモリ25、セレクタ26、イントラ予測部31、動き予測・補償部32、予測画像・最適モード選択部33を備えている。
A/D変換部11は、アナログの画像信号をディジタルの画像データに変換して画面並べ替えバッファ12に出力する。
画面並べ替えバッファ12は、A/D変換部11から出力された画像データに対してフレームの並べ替えを行う。画面並べ替えバッファ12は、符号化処理に係るGOP(Group of Pictures)構造に応じてフレームの並べ替えを行い、並べ替え後の画像データを減算部13とイントラ予測部31と動き予測・補償部32に出力する。
減算部13には、画面並べ替えバッファ12から出力された画像データと、後述する予測画像・最適モード選択部33で選択された予測画像データが供給される。減算部13は、画面並べ替えバッファ12から出力された画像データと予測画像・最適モード選択部33から供給された予測画像データとの差分である予測誤差データを算出して、直交変換部14に出力する。
直交変換部14は、減算部13から出力された予測誤差データに対して、離散コサイン変換(DCT;Discrete Cosine Transform)、カルーネン・レーベ変換等の直交変換処理を行う。直交変換部14は、直交変換処理を行うことにより得られた変換係数データを量子化部15に出力する。
量子化部15には、直交変換部14から出力された変換係数データと、後述するレート制御部18からレート制御信号が供給されている。量子化部15は変換係数データの量子化を行い、量子化データを可逆符号化部16と逆量子化部21に出力する。また、量子化部15は、レート制御部18からのレート制御信号に基づき量子化パラメータ(量子化スケール)を切り替えて、量子化データのビットレートを変化させる。
可逆符号化部16には、量子化部15から出力された量子化データと、後述するイントラ予測部31と動き予測・補償部32および予測画像・最適モード選択部33から予測モード情報が供給される。なお、予測モード情報には、イントラ予測またはインター予測に応じて、予測ブロックサイズを識別可能とするマクロブロックタイプ、予測モード、動きベクトル情報、参照ピクチャ情報等が含まれる。可逆符号化部16は、量子化データに対して例えば可変長符号化、または算術符号化等により可逆符号化処理を行い、符号化ストリームを生成して蓄積バッファ17に出力する。また、可逆符号化部16は、予測モード情報を可逆符号化して、符号化ストリームのヘッダ情報に付加する。
蓄積バッファ17は、可逆符号化部16からの符号化ストリームを蓄積する。また、蓄積バッファ17は、蓄積した符号化ストリームを伝送路に応じた伝送速度で出力する。
レート制御部18は、蓄積バッファ17の空き容量の監視を行い、空き容量に応じてレート制御信号を生成して量子化部15に出力する。レート制御部18は、例えば蓄積バッファ17から空き容量を示す情報を取得する。レート制御部18は空き容量が少なくなっているとき、レート制御信号によって量子化データのビットレートを低下させる。また、レート制御部18は蓄積バッファ17の空き容量が十分大きいとき、レート制御信号によって量子化データのビットレートを高くする。
逆量子化部21は、量子化部15から供給された量子化データの逆量子化処理を行う。逆量子化部21は、逆量子化処理を行うことで得られた変換係数データを逆直交変換部2 2に出力する。
逆直交変換部22は、逆量子化部21から供給された変換係数データの逆直交変換処理を行うことで得られたデータを加算部23に出力する。
加算部23は、逆直交変換部22から供給されたデータと予測画像・最適モード選択部33から供給された予測画像データを加算して復号画像データを生成して、デブロッキングフィルタ処理部24とフレームメモリ25に出力する。
デブロッキングフィルタ処理部24は、画像の符号化時に生じるブロック歪みを減少させるためのフィルタ処理を行う。デブロッキングフィルタ処理部24は、加算部23から供給された復号画像データからブロック歪みを除去するフィルタ処理を行い、フィルタ処理後の画像データをフレームメモリ25に出力する。また、デブロッキングフィルタ処理部24は、垂直方向のブロック間の境界検出によって検出された境界に応じて、境界の上側に位置するブロックにおけるフィルタ演算に用いる画像範囲を制御する。このように、フィルタ演算に用いる画像範囲を制御することで、デブロッキングフィルタ処理部24は、画像データを記憶するラインメモリのメモリ容量を削減しても、垂直フィルタ処理を行えるようにする。なお、詳細は後述する。
フレームメモリ25は、加算部23から供給された復号画像データとデブロッキングフィルタ処理部24から供給されたフィルタ処理後の復号画像データを参照画像の画像データとして保持する。
セレクタ26は、イントラ予測を行うためにフレームメモリ25から読み出されたフィルタ処理前の参照画像データをイントラ予測部31に供給する。また、セレクタ26は、インター予測を行うためフレームメモリ25から読み出されたフィルタ処理後の参照画像データを動き予測・補償部32に供給する。
イントラ予測部31は、画面並べ替えバッファ12から出力された符号化対象画像の画像データとフレームメモリ25から読み出したフィルタ処理前の参照画像データを用いて、候補となる全てのイントラ予測モードのイントラ予測処理を行う。さらに、イントラ予測部31は、各イントラ予測モードに対してコスト関数値を算出して、算出したコスト関数値が最小となるイントラ予測モード、すなわち符号化効率が最良となるイントラ予測モードを、最適イントラ予測モードとして選択する。イントラ予測部31は、最適イントラ予測モードで生成された予測画像データと最適イントラ予測モードに関する予測モード情報、および最適イントラ予測モードでのコスト関数値を予測画像・最適モード選択部33に出力する。また、イントラ予測部31は、後述するようにコスト関数値の算出で用いる発生符号量を得るため、各イントラ予測モードのイントラ予測処理において、イントラ予測モードに関する予測モード情報を可逆符号化部16に出力する。
動き予測・補償部32は、マクロブロックに対応する全ての予測ブロックサイズで動き予測・補償処理を行う。動き予測・補償部32は、画面並べ替えバッファ12から読み出された符号化対象画像における各予測ブロックサイズの画像毎に、フレームメモリ25から読み出されたフィルタ処理後の参照画像データを用いて動きベクトルを検出する。さらに、動き予測・補償部32は、検出した動きベクトルに基づいて復号画像に動き補償処理を施して予測画像の生成を行う。また、動き予測・補償部32は、各予測ブロックサイズに対してコスト関数値を算出して、算出したコスト関数値が最小となる予測ブロックサイズ、すなわち符号化効率が最良となる予測ブロックサイズを、最適インター予測モードとして選択する。動き予測・補償部32は、最適インター予測モードで生成された予測画像データと最適インター予測モードに関する予測モード情報、および最適インター予測モー ドでのコスト関数値を予測画像・最適モード選択部33に出力する。また、動き予測・補償部32は、コスト関数値の算出で用いる発生符号量を得るため、各予測ブロックサイズでのインター予測処理において、インター予測モードに関する予測モード情報を可逆符号化部16に出力する。なお、動き予測・補償部32は、インター予測モードとして、スキップドマクロブロックやダイレクトモードでの予測も行う。
予測画像・最適モード選択部33は、イントラ予測部31から供給されたコスト関数値と動き予測・補償部32から供給されたコスト関数値を、マクロブロック単位で比較して、コスト関数値が少ない方を、符号化効率が最良となる最適モードとして選択する。また、予測画像・最適モード選択部33は、最適モードで生成した予測画像データを減算部13と加算部23に出力する。さらに、予測画像・最適モード選択部33は、最適モードの予測モード情報を可逆符号化部16に出力する。なお、予測画像・最適モード選択部33は、スライス単位でイントラ予測またはインター予測を行うようにしてもよい。
なお、請求項における符号化部は、予測画像データを生成するイントラ予測部31や動き予測・補償部32、予測画像・最適モード選択部33、減算部13、直交変換部14、量子化部15、可逆符号化部16等で構成される。
<3.画像符号化装置の動作>
図3は、画像符号化処理動作を示すフローチャートである。ステップST11において、A/D変換部11は入力された画像信号をA/D変換する。
ステップST12において画面並べ替えバッファ12は、画面並べ替えを行う。画面並べ替えバッファ12は、A/D変換部11より供給された画像データを記憶し、各ピクチャの表示する順番から符号化する順番への並べ替えを行う。
ステップST13において減算部13は、予測誤差データの生成を行う。減算部13は、ステップST12で並べ替えられた画像の画像データと予測画像・最適モード選択部33で選択された予測画像データとの差分を算出して予測誤差データを生成する。予測誤差データは、元の画像データに比べてデータ量が小さい。したがって、画像をそのまま符号化する場合に比べて、データ量を圧縮することができる。なお、予測画像・最適モード選択部33でイントラ予測部31から供給された予測画像と動き予測・補償部32からの予測画像の選択がスライス単位で行われるとき、イントラ予測部31から供給された予測画像が選択されたスライスでは、イントラ予測が行われる。また、動き予測・補償部32からの予測画像が選択されたスライスでは、インター予測が行われる。
ステップST14において直交変換部14は、直交変換処理を行う。直交変換部14は、減算部13から供給された予測誤差データを直交変換する。具体的には、予測誤差データに対して離散コサイン変換、カルーネン・レーベ変換等の直交変換が行われ、変換係数データを出力する。
ステップST15において量子化部15は、量子化処理を行う。量子化部15は、変換係数データを量子化する。量子化に際しては、後述するステップST25の処理で説明されるように、レート制御が行われる。
ステップST16において逆量子化部21は、逆量子化処理を行う。逆量子化部21は、量子化部15により量子化された変換係数データを量子化部15の特性に対応する特性で逆量子化する。
ステップST17において逆直交変換部22は、逆直交変換処理を行う。逆直交変換部 22は、逆量子化部21により逆量子化された変換係数データを直交変換部14の特性に対応する特性で逆直交変換する。
ステップST18において加算部23は、復号画像データの生成を行う。加算部23は、予測画像・最適モード選択部33から供給された予測画像データと、この予測画像と対応する位置の逆直交変換後のデータを加算して、復号画像データを生成する。
ステップST19においてデブロッキングフィルタ処理部24は、デブロッキングフィルタ処理を行う。デブロッキングフィルタ処理部24は、加算部23より出力された復号画像データをフィルタリングしてブロック歪みを除去する。また、デブロッキングフィルタ処理部24は、画像データを記憶するラインメモリのメモリ容量を削減しても、垂直フィルタ処理を行えるようする。具体的には、デブロッキングフィルタ処理部24は、垂直方向のブロック間の境界検出によって検出された境界に応じて、境界の上側に位置するブロックにおけるフィルタ演算に用いる画像範囲を制御する。
ステップST20においてフレームメモリ25は、復号画像データを記憶する。フレームメモリ25は、デブロッキングフィルタ処理前の復号画像データを記憶する。
ステップST21においてイントラ予測部31と動き予測・補償部32は、それぞれ予測処理を行う。すなわち、イントラ予測部31は、イントラ予測モードのイントラ予測処理を行い、動き予測・補償部32は、インター予測モードの動き予測・補償処理を行う。この処理により、候補となる全ての予測モードでの予測処理がそれぞれ行われ、候補となる全ての予測モードでのコスト関数値がそれぞれ算出される。そして、算出されたコスト関数値に基づいて、最適イントラ予測モードと最適インター予測モードが選択され、選択された予測モードで生成された予測画像とそのコスト関数および予測モード情報が予測画像・最適モード選択部33に供給される。
ステップST22において予測画像・最適モード選択部33は、予測画像データの選択を行う。予測画像・最適モード選択部33は、イントラ予測部31および動き予測・補償部32より出力された各コスト関数値に基づいて、符号化効率が最良となる最適モードに決定する。さらに、予測画像・最適モード選択部33は、決定した最適モードの予測画像データを選択して、減算部13と加算部23に供給する。この予測画像が、上述したように、ステップST13,ST18の演算に利用される。
ステップST23において可逆符号化部16は、可逆符号化処理を行う。可逆符号化部16は、量子化部15より出力された量子化データを可逆符号化する。すなわち、量子化データに対して可変長符号化や算術符号化等の可逆符号化が行われて、データ圧縮される。このとき、上述したステップST22において可逆符号化部16に入力された予測モード情報(例えばマクロブロックタイプや予測モード、動きベクトル情報、参照ピクチャ情報等を含む)なども可逆符号化される。さらに、量子化データを可逆符号化して生成された符号化ストリームのヘッダ情報に、予測モード情報の可逆符号化データが付加される。
ステップST24において蓄積バッファ17は、蓄積処理を行い符号化ストリームを蓄積する。この蓄積バッファ17に蓄積された符号化ストリームは適宜読み出され、伝送路を介して復号側に伝送される。
ステップST25においてレート制御部18は、レート制御を行う。レート制御部18は、蓄積バッファ17で符号化ストリームを蓄積するとき、オーバーフローまたはアンダーフローが蓄積バッファ17で発生しないように、量子化部15の量子化動作のレートを制御する。
次に、図3のステップST21における予測処理を説明する。イントラ予測部31はイントラ予測処理を行う。イントラ予測部31は処理対象のブロックの画像を、候補となる全てのイントラ予測モードでイントラ予測する。なお、イントラ予測において参照される参照画像の画像データは、デブロッキングフィルタ処理部24によりフィルタ処理が行われることなくフレームメモリ25に記憶されている参照画像データが用いられる。イントラ予測処理の詳細は後述するが、この処理により、候補となる全てのイントラ予測モードでイントラ予測が行われ、候補となる全てのイントラ予測モードに対してコスト関数値が算出される。そして、算出されたコスト関数値に基づいて、全てのイントラ予測モードの中から、符号化効率が最良となる1つのイントラ予測モードが選択される。動き予測・補償部32はインター予測処理を行う。動き予測・補償部32は、フレームメモリ25に記憶されているフィルタ処理後の参照画像データを用いて、候補となる全てのインター予測モード(全ての予測ブロックサイズ)のインター予測処理を行う。インター予測処理の詳細は後述するが、この処理により、候補となる全てのインター予測モードで予測処理が行われ、候補となる全てのインター予測モードに対してコスト関数値が算出される。そして、算出されたコスト関数値に基づいて、全てのインター予測モードの中から、符号化効率が最良となる1つのインター予測モードが選択される。
図4のフローチャートを参照してイントラ予測処理について説明する。ステップST31でイントラ予測部31は、各予測モードのイントラ予測を行う。イントラ予測部31は、フレームメモリ25に記憶されているフィルタ処理前の復号画像データを用いて、イントラ予測モード毎に予測画像データを生成する。
ステップST32でイントラ予測部31は、各予測モードに対するコスト関数値を算出する。例えば、候補となる全ての予測モードに対して、仮に可逆符号化処理までを行い、次の式(1)で表されるコスト関数値を各予測モードに対して算出する。
Cost(Mode∈Ω)=D+λ・R ・・・(1)
Ωは、当該ブロック乃至マクロブロックを符号化するための候補となる予測モードの全体集合を示している。Dは、予測モードで符号化を行った場合の復号画像と入力画像との差分エネルギー(歪み)を示している。Rは、直交変換係数や予測モード情報等を含んだ発生符号量、λは、量子化パラメータQPの関数として与えられるラグランジュ乗数である。
また、候補となる全ての予測モードに対して、予測画像の生成、および、動きベクトル情報や予測モード情報などのヘッダビットまでを算出し、次の式(2)で表されるコスト関数値を各予測モードに対して算出する。
Cost(Mode∈Ω)=D+QPtoQuant(QP)・Header_Bit ・・・(2)
Ωは、当該ブロック乃至マクロブロックを符号化するための候補となる予測モードの全体集合を示している。Dは、予測モードで符号化を行った場合の復号画像と入力画像との差分エネルギー(歪み)を示している。Header_Bitは、予測モードに対するヘッダビット、QPtoQuantは、量子化パラメータQPの関数として与えられる関数である。
ステップST33でイントラ予測部31は、最適イントラ予測モードを決定する。イントラ予測部31は、ステップST32において算出されたコスト関数値に基づいて、それらの中から、コスト関数値が最小値である1つのイントラ予測モードを選択して最適イントラ予測モードに決定する。
次に、図5のフローチャートを参照して、インター予測処理について説明する。ステップST41で動き予測・補償部32は、各予測モードに対して動きベクトルと参照画像をそれぞれ決定する。すなわち、動き予測・補償部32は、各予測モードの処理対象のブロックについて、動きベクトルと参照画像をそれぞれ決定する。
ステップST42で動き予測・補償部32は、各予測モードに対して動き補償を行う。動き予測・補償部32は、各予測モード(各予測ブロックサイズ)について、ステップST41で決定された動きベクトルに基づいて、参照画像に対する動き補償を行い、各予測モードについて予測画像データを生成する。
ステップST43で動き予測・補償部32は、各予測モードに対して動きベクトル情報の生成を行う。動き予測・補償部32は、各予測モードで決定された動きベクトルについて、符号化ストリームに含める動きベクトル情報を生成する。例えば、メディアン予測等を用いて予測動きベクトルを決定して、動き予測により検出した動きベクトルと予測動きベクトルの差を示す動きベクトル情報を生成する。このようにして生成された動きベクトル情報は、次のステップST44におけるコスト関数値の算出にも用いられて、最終的に予測画像・最適モード選択部33で対応する予測画像が選択された場合には、予測モード情報に含まれて可逆符号化部16へ出力される。
ステップST44で動き予測・補償部32は、各インター予測モードに対して、コスト関数値の算出を行う。動き予測・補償部32は、上述した式(1)または式(2)を用いてコスト関数値の算出を行う。
ステップST45で動き予測・補償部32は、最適インター予測モードを決定する。動き予測・補償部32は、ステップST44において算出されたコスト関数値に基づいて、それらの中から、コスト関数値が最小値である1つの予測モードを選択して最適インター予測モードに決定する。
<4.画像復号装置に適用した場合の構成>
入力画像を符号化して生成された符号化ストリームは、所定の伝送路や記録媒体等を介して画像復号装置に供給されて復号される。
図6は、画像復号装置の構成を示している。画像復号装置50は、蓄積バッファ51、可逆復号部52、逆量子化部53、逆直交変換部54、加算部55、デブロッキングフィルタ処理部56、画面並べ替えバッファ57、D/A変換部58を備えている。さらに、画像復号装置50は、フレームメモリ61、セレクタ62,65、イントラ予測部63、動き補償部64を備えている。
蓄積バッファ51は、伝送されてきた符号化ストリームを蓄積する。可逆復号部52は、蓄積バッファ51より供給された符号化ストリームを、図2の可逆符号化部16の符号化方式に対応する方式で復号する。また、可逆復号部52は、符号化ストリームのヘッダ情報を復号して得られた予測モード情報をイントラ予測部63や動き補償部64に出力する。
逆量子化部53は、可逆復号部52で復号された量子化データを、図2の量子化部15の量子化方式に対応する方式で逆量子化する。逆直交変換部54は、図2の直交変換部14の直交変換方式に対応する方式で逆量子化部53の出力を逆直交変換して加算部55に出力する。
加算部55は、逆直交変換後のデータとセレクタ65から供給される予測画像データを加算して復号画像データを生成してデブロッキングフィルタ処理部56とフレームメモリ61に出力する。
デブロッキングフィルタ処理部56は、加算部55から供給された復号画像データに対して、図2のデブロッキングフィルタ処理部24と同様にフィルタ処理を行い、ブロック歪みを除去して画面並べ替えバッファ57とフレームメモリ61に出力する。
画面並べ替えバッファ57は、画像の並べ替えを行う。すなわち、図2の画面並べ替えバッファ12により符号化の順番のために並べ替えられたフレームの順番が、元の表示の順番に並べ替えられて、D/A変換部58に出力される。
D/A変換部58は、画面並べ替えバッファ57から供給された画像データをD/A変換し、図示せぬディスプレイに出力することで画像を表示させる。
フレームメモリ61は、加算部55から供給されたフィルタ処理前の復号画像データとデブロッキングフィルタ処理部56から供給されたフィルタ処理後の復号画像データとを、参照画像の画像データとして保持する。
セレクタ62は、可逆復号部52から供給された予測モード情報に基づき、イントラ予測が行われた予測ブロックの復号が行われるとき、フレームメモリ61から読み出されたフィルタ処理前の参照画像データをイントラ予測部63に供給する。また、セレクタ26は、可逆復号部52から供給された予測モード情報に基づき、インター予測が行われた予測ブロックの復号が行われるとき、フレームメモリ61から読み出されたフィルタ処理後の参照画像データを動き補償部64に供給する。
イントラ予測部63は、可逆復号部52から供給された予測モード情報に基づいて予測画像の生成を行い、生成した予測画像データをセレクタ65に出力する。
動き補償部64は、可逆復号部52から供給された予測モード情報に基づいて、動き補償を行い、予測画像データを生成してセレクタ65に出力する。すなわち、動き補償部64は、予測モード情報に含まれる動きベクトル情報と参照フレーム情報に基づいて、参照フレーム情報で示された参照画像に対して動きベクトル情報に基づく動きベクトルで動き補償を行い、予測画像データを生成する。
セレクタ65は、イントラ予測部63で生成された予測画像データを加算部55に供給する。また、セレクタ65は、動き補償部64で生成された予測画像データを加算部55に供給する。
なお、請求項における復号部は、可逆復号部52、逆量子化部53、逆直交変換部54、加算部55、イントラ予測部63、動き補償部64等で構成される。
<5.画像復号装置の動作>
次に、図7のフローチャートを参照して、画像復号装置50で行われる画像復号動作について説明する。
ステップST51で蓄積バッファ51は、伝送されてきた符号化ストリームを蓄積する。ステップST52で可逆復号部52は、可逆復号処理を行う。可逆復号部52は、蓄積バッファ51から供給される符号化ストリームを復号する。すなわち、図2の可逆符号化部16により符号化された各ピクチャの量子化データが得られる。また、可逆復号部52 、符号化ストリームのヘッダ情報に含まれている予測モード情報の可逆復号を行い、得られた予測モード情報をデブロッキングフィルタ処理部56やセレクタ62,65に供給する。さらに、可逆復号部52は、予測モード情報がイントラ予測モードに関する情報である場合、予測モード情報をイントラ予測部63に出力する。また、可逆復号部52は、予測モード情報がインター予測モードに関する情報である場合、予測モード情報を動き補償部64に出力する。
ステップST53において逆量子化部53は、逆量子化処理を行う。逆量子化部53は、可逆復号部52により復号された量子化データを、図2の量子化部15の特性に対応する特性で逆量子化する。
ステップST54において逆直交変換部54は、逆直交変換処理を行う。逆直交変換部54は、逆量子化部53により逆量子化された変換係数データを、図2の直交変換部14の特性に対応する特性で逆直交変換する。
ステップST55において加算部55は、復号画像データの生成を行う。加算部55は、逆直交変換処理を行うことにより得られたデータと、後述するステップST59で選択された予測画像データを加算して復号画像データを生成する。これにより元の画像が復号される。
ステップST56においてデブロッキングフィルタ処理部56は、デブロッキングフィルタ処理を行う。デブロッキングフィルタ処理部56は、加算部55より出力された復号画像データのフィルタ処理を行い、復号画像に含まれているブロック歪みを除去する。
ステップST57においてフレームメモリ61は、復号画像データの記憶処理を行う。
ステップST58においてイントラ予測部63と動き補償部64は、予測処理を行う。イントラ予測部63と動き補償部64は、可逆復号部52から供給される予測モード情報に対応してそれぞれ予測処理を行う。
すなわち、可逆復号部52からイントラ予測の予測モード情報が供給された場合、イントラ予測部63は、予測モード情報に基づいてイントラ予測処理を行い、予測画像データを生成する。また、可逆復号部52からインター予測の予測モード情報が供給された場合、動き補償部64は、予測モード情報に基づき動き補償を行い、予測画像データを生成する。
ステップST59において、セレクタ65は予測画像データの選択を行う。すなわち、セレクタ65は、イントラ予測部63から供給された予測画像と動き補償部64で生成された予測画像データを選択して加算部55に供給して、上述したように、ステップST55において逆直交変換部54の出力と加算させる。
ステップST60において画面並べ替えバッファ57は、画面並べ替えを行う。すなわち画面並べ替えバッファ57は、図2の画像符号化装置10の画面並べ替えバッファ12により符号化のために並べ替えられたフレームの順序が、元の表示の順序に並べ替えられる。
ステップST61において、D/A変換部58は、画面並べ替えバッファ57からの画像データをD/A変換する。この画像が図示せぬディスプレイに出力され、画像が表示される。
<6.デブロッキングフィルタ処理部の基本的な動作>
一般的に、H.264/AVCまたはHEVCなどの画像符号化方式におけるデブロックフィルタ処理は、フィルタリング要否判定を行い、フィルタリングが必要と判別されたブロック間の境界に対してフィルタリング処理を行う。
ブロック間の境界は、水平方向にブロック間の境界検出を行って検出される境界、すなわち左右に隣接するブロック間の境界(以下「垂直境界」という)含む。また、ブロック間の境界は、垂直方向にブロック間の境界検出を行って検出される境界、すなわち上下に隣接するブロック間の境界(以下「ライン境界」という)を含む。
図8は、境界を挟んで隣接する2つのブロックBKaおよびBKb内の画素の一例を示す説明図である。ここでは垂直境界を例にとって説明するが、ライン境界にも同等に適用可能である。図8の例において、ブロックBKa内の画素の画像データを、「pi,j」という記号で示されている。iは画素の列インデックス、jは画素の行のインデックスである。また、最小符号化処理単位は、8画素×8画素のブロック単位として、列インデックスiは、垂直境界に近い列から順に(右から左へ)0,1,2,3と付番されている。行インデックスjは、上から下へ0,1,2,…,7と付番されている。なお、ブロックBKaの左半分は図中で省略されている。一方、ブロックBKb内の画素の画像データは、「qk,j」という記号で示されている。kは画素の列インデックス、jは画素の行インデックスである。列インデックスkは、垂直境界に近い列から順に(左から右へ)0,1,2,3と付番されている。なお、ブロックBKbの右半分もまた図中で省略されている。
境界がデブロックフィルタを適用すべきと判定された場合、例えば垂直境界については当該境界の左右の画素のフィルタリング処理が行われる。輝度成分については、画像データの値に応じてフィルタ強度が強(strong)フィルタと弱(weak)フィルタとの間で切り替えられる。
・輝度成分のフィルタリング
強度選択では、式(3)乃至式(5)の判別条件を満たすか否かを1ラインごと(または1列毎)判定して、式(3)乃至式(5)の判別条件を全て満たす場合には強フィルタ、何れか1つでも判定条件が満たされない場合には弱フィルタが選択される。
Figure 0006468381
なお、式(3)における「d」は、式(6)に基づいて算出される値である。また、式(4)(5)における「β」と、式(5)における「tc」は、表1に示すように、量子化パラメータQに基づいて設定される値である。
Figure 0006468381
Figure 0006468381
弱フィルタリングでは、式(7)乃至式(11)の演算を行うことで、フィルタ処理範囲の各画素の輝度成分が算出される。
Figure 0006468381
強フィルタリングでは、式(12)乃至式(18)の演算を行うことで、フィルタ処理範囲の各画素の輝度成分が算出される。
Figure 0006468381
また、色差成分のフィルタリングでは、式(19)乃至式(21)の演算を行うことで、 フィルタ処理範囲の各画素の色差成分が算出される。
Figure 0006468381
なお、上述の式において「Clip1Y」「Clip1c」は、式(22),(23)の演算を示しており、式(22)(23)の「Clip3(x,y,z)」は式(24)で決定される値を示している。
Figure 0006468381
また、ライン境界については、垂直境界において水平方向に画素を用いてライン毎に行われている演算を、垂直方向に画素を用いて列毎に行いフィルタリング処理が行われる。
デブロッキングフィルタ処理において、ラインメモリが必要とされる処理は垂直フィルタ処理であり、以下、垂直フィルタ処理においてラインメモリのメモリ容量の削減について詳細に説明する。なお、画像符号化装置10のデブロッキングフィルタ処理部24と画像復号装置50のデブロッキングフィルタ処理部56は、同一の構成および同一の動作とされており、デブロッキングフィルタ処理部24についてのみ説明を行う。
<7.デブロッキングフィルタ処理部の第1の実施の形態>
図9は、デブロッキングフィルタ処理部の第1の実施の形態の構成を例示している。デブロッキングフィルタ処理部24は、ラインメモリ241、ライン境界検出部242、フィルタ強度判定部243、係数メモリ244、フィルタ演算部245、フィルタ制御部246を備えている。
ラインメモリ241は、フィルタ制御部246からの制御信号に基づき、加算部23から供給された画像データを記憶する。また、記憶している画像データを読み出して、ライン境界検出部242、フィルタ強度判定部243、フィルタ演算部245に出力する。
ライン境界検出部242は、垂直フィルタ処理を行うライン境界を検出する。ライン境界検出部242は、加算部23から供給された画像データやラインメモリ241から読み出された画像データを用いて上述のフィルタリング要否判定処理をブロック毎に行い、垂直フィルタ処理を行うライン境界を検出する。ライン境界検出部242は、検出結果をフィルタ強度判定部243に出力する。
フィルタ強度判定部243は、上述のようにフィルタ強度の判定を行う。フィルタ強度判定部243は、垂直フィルタ処理を行うライン境界を挟んで隣接する2つのブロックの画像データを用いて、強フィルタリングまたは弱フィルタリングの何れの強度で垂直フィルタ処理を行うか判定して、判定結果をフィルタ演算部245に出力する。
係数メモリ244は、デブロッキングフィルタ処理のフィルタ演算に用いるフィルタ係数を記憶している。
フィルタ演算部245は、加算部23から供給された画像データやラインメモリ241に記憶されている画像データ、および係数メモリ244から読み出したフィルタ係数を用いて、フィルタ強度判定部243で判定されたフィルタ強度でフィルタ演算を行う。フィルタ演算部245は、垂直フィルタ処理がなされた画像データをフレームメモリ25に出力する。また、フィルタ演算部245は、フィルタ制御部246から供給されたブロック境界判定結果に基づき、ライン境界の上側に位置するブロックにおけるフィルタ演算に用いる画像範囲を制御する。
フィルタ制御部246は、ラインメモリ241を制御して、ブロック内の下端側の所定ライン数分の画像データを記憶させる。また、記憶されている画像データの読み出しを行う。また、フィルタ制御部246はライン境界判定部2461を備えている。ライン境界判定部2461は、ラスタースキャン方向に順次処理が行われるブロック単位例えばLCU間のライン境界であるか判定して判定結果をフィルタ演算部245に出力する。フィルタ演算部245は、ラインメモリのメモリ容量が削減されていても垂直フィルタ処理を行うことができるように制御する。
図10は、デブロッキングフィルタ処理部の第1の実施の形態の動作を示している。ステップST71でデブロッキングフィルタ処理部24はライン境界の検出を行う。デブロッキングフィルタ処理部24は、垂直フィルタ処理を行うライン境界を検出する。
ステップST72でデブロッキングフィルタ処理部24は、フィルタ強度の判定を行う。デブロッキングフィルタ処理部24は、垂直フィルタ処理を行うライン境界についての、強フィルタと弱フィルタの何れのフィルタ強度とするか判定する。
ステップST73でデブロッキングフィルタ処理部24は、垂直フィルタ処理を行う境界がLCU間のライン境界であるか判別する。デブロッキングフィルタ処理部24は、垂直フィルタ処理を行う境界がLCU間のライン境界である場合はステップST74に進み、境界がLCU間のライン境界でない場合はステップST75に進む。
ステップST74でデブロッキングフィルタ処理部24は、範囲削減垂直フィルタ処理を行う。デブロッキングフィルタ処理部24は、上側に隣接するLCUに対してフィルタ演算に用いる画像範囲を削減して垂直フィルタ処理を行いステップST76に進む。
ステップST75でデブロッキングフィルタ処理部24は、通常垂直フィルタ処理を行う。デブロッキングフィルタ処理部24は、フィルタ演算に用いる画像範囲を削減することなく予め設定されたタップおよび係数を用いて垂直フィルタ処理を行ってステップST76に進む。
ステップST76でデブロッキングフィルタ処理部24は、境界の垂直フィルタ処理が完了したか判別する。デブロッキングフィルタ処理部24は、境界の各列の垂直フィルタ処理が完了していない場合にはステップST76に戻り、次の列の処理を行う。また、境界の各列の垂直フィルタ処理が完了した場合は、ステップST77に進む。
ステップST77でデブロッキングフィルタ処理部24は、画面の最後まで処理が完了したか判別する。デブロッキングフィルタ処理部24は、画面の最後まで処理が行われていない場合にはステップST71に戻り、新たな境界を検出して垂直フィルタ処理を行う。また、デブロッキングフィルタ処理部24は、画面の最後まで処理が行われた場合、11画面の処理を終了する。
[フィルタ演算部の構成と動作]
図11と図12はフィルタ演算部の構成を示している。フィルタ演算部245は、タップ変更垂直フィルタ処理を行う場合、画像データを記憶するライン数を削減しても、垂直フィルタ処理を行うことができるように、タップの画像データの変更またはタップ数の変更を行う。なお、図11は、タップの画像データを変更して垂直フィルタ処理を行う場合のフィルタ演算部の構成を示している。また、図12は、タップ数を変更して垂直フィルタ処理を行う場合のフィルタ演算部の構成を示している。
図11において、フィルタ演算部245は、データ記憶部2451とデータ選択部2452、および演算処理部2453を備えている。
データ記憶部2451は、ラインメモリのメモリ容量を削減した場合に、削減されているラインの位置のタップとして用いる画像データを記憶する。データ記憶部2451は、記憶している画像データを、削減されているラインの位置のタップの画像データとしてデータ選択部2452に出力する。
データ選択部2452は、データ記憶部2451に記憶されている画像データと、ラインメモリに記憶されている画像データの選択を行い、選択した画像データを演算処理部2453に出力する。
演算処理部2453は、加算部23とデータ選択部2452から供給された画像データと係数メモリ244から読み出したフィルタ係数を用いて演算を行い、垂直フィルタ処理後の画像データを生成してフレームメモリ25に出力する。
図12において、フィルタ演算部245は、演算処理部2455と演算処理部2456を備えている。
演算処理部2455は所定のタップ数で演算処理を行い、垂直フィルタ処理後の画像データをデータ選択部2457に出力する。
演算処理部2456は、ラインメモリの削減に応じてタップ数を削減することで、削減されているラインの画像データを用いることなく演算処理を行い、垂直フィルタ処理後の画像データをデータ選択部2457に出力する。
データ選択部2457は、境界がLCU間のライン境界であるか否かに応じて、画像データの選択を行う。データ選択部2457は、境界がLCU間のライン境界でない場合、演算処理部2455から出力された画像データを選択する。また、データ選択部2457は、境界がLCU間のライン境界である場合、演算処理部2456から出力された画像データを選択する。
図13は、フィルタ演算部245の動作を説明するための図である。隣接する2つのブロックBKu,BKlの各画素の画像データを示している。ここで、垂直フィルタ処理のフィルタ処理範囲は、境界(ライン境界)BBからそれぞれ3画素の範囲として、境界BBからそれぞれ4画素をタップとしてフィルタ演算を行う。フィルタ強度判定によって強 フィルタリングが判定された場合、上述の式(12)乃至式(18)の演算を演算処理部2453,2455で列毎に行う。また、フィルタ強度判定によって弱フィルタリングが判定された場合、上述の式(7)乃至式(10)の演算を演算処理部2453,2455で列毎に行う。
LCU単位でラスター順にデブロッキングフィルタ処理を行う場合、垂直フィルタ処理が強フィルタリングと判定されて上述の式(12)乃至式(18)の演算を行うためには、図13の(A)に示すように境界BBの上側のブロックBKuにおいて、境界BBから4ライン分の画像データをラインメモリに記憶しておく必要がある。
ここで、フィルタ演算部245は、境界BBの上側に位置するブロックにおけるフィルタ演算に用いる画像範囲を制御することで、ラインメモリのメモリ容量を削減しても、垂直フィルタ処理を行えるようにする。例えば、図13の(B)に示すように境界BBから3ライン分の画像データを記憶して、この記憶された画像データを用いて垂直フィルタ処理を行う。すなわち、図11に示す演算処理部2453は、式(25)の演算を行う。また、図12に示す演算処理部2456は、式(26)の演算を行い、データ選択部2457は、演算処理部2456からの画像データを選択して出力する。なお、式(25),(26)において、iは画素の列インデックスを示しており、フィルタ処理を8×8画素のブロック単位で行う場合「i=0乃至7」となる。
Figure 0006468381
演算処理部2453は、上側のブロックBKuにおいて、フィルタ処理範囲の上端の画素を上方向に複写して用いる。すなわち、データ記憶部2451に記憶したフィルタ処理範囲の上端の画素の画像データp2を画像データp3として用いることで、式(25)の演算によってフィルタ処理後の画像データp2i’を算出する。
演算処理部2456では、タップ数を削減して、タップ数の削減に対応して変更されている係数を用いることで、式(26)の演算によってフィルタ処理後の画像データp2i’を算出する。この場合の係数の変更は、タップ範囲の上端の画素の複写に対応させて、画像データp2の係数を「3→5」に変更する。
なお、境界BBがLCU間のライン境界でない場合は、ラインメモリ241の画像データを用いる必要がないことから、フィルタ演算に用いる画像範囲を狭くすることなく従来と同様なフィルタ演算を行う。すなわち、図11に示す演算処理部2453は、従来と同様なフィルタ演算を行う。また、図12に示す演算処理部2455は、従来と同様なフィルタ演算を行い、データ選択部2457は、演算処理部2455からの画像データを選択して出力する。
このように、境界がラスタースキャン方向に順次処理が行われるブロックのライン境界である場合、フィルタ演算に用いる画像範囲を制御することで、ラインメモリのメモリ容量を削減しても、削減前と同様にデブロッキングフィルタ処理を行うことができる。また、例えば4K×2Kの画像における1ラインは、2K×1Kの画像の2ライン分に相当する。また、H.264/AVC方式では、4ライン分のラインメモリを備えており、4K ×2Kの画像における1ライン分のメモリ容量は、H.264/AVC方式の50%のメモリ容量に相当する。すなわち、高解像度画像においてメモリ容量の削減効果が高くなる。
<8.デブロッキングフィルタ処理部の第2の実施の形態>
デブロッキングフィルタ処理部の第2の実施の形態は、第1の実施の形態に対して、演算処理部2453と演算処理部2456の動作が相違する。
強フィルタリングにおいて境界BBがLCU間のライン境界である場合、上述の式(12)乃至式(18)の演算を行う場合には、図13の(A)に示すように境界BBの上側のブロックBKuにおいて、境界BBから4ライン分の画像データをラインメモリに記憶しておく必要がある。
ここで、フィルタ演算部245は、境界BBの上側に位置するブロックにおけるフィルタ演算に用いる画像範囲を制御することで、ラインメモリのメモリ容量を削減しても、垂直フィルタ処理を行えるようにする。例えば、図13の(B)に示すように境界BBから3ライン分の画像データを記憶して、この記憶された画像データを用いて垂直フィルタ処理を行う。すなわち、図11に示す演算処理部2453は、式(27)の演算を行う。また、図12に示す演算処理部2456は、式(28)の演算を行い、データ選択部2457は、演算処理部2456からの画像データを選択して出力する。なお、式(27),(28)において、iは画素の列インデックスを示しており、フィルタ処理を8×8画素のブロック単位で行う場合「i=0乃至7」となる。
Figure 0006468381
演算処理部2453は、上側のブロックBKuにおいて、フィルタ処理範囲の上端の画素を基準としてミラー複写を行う。すなわち、データ記憶部2451に画像データp1を記憶して、この画像データp1をフィルタ処理範囲の上端の画素を基準としてミラー複写して画像データp3として用いることで、式(27)の演算によってフィルタ処理後の画像データp2i’を算出する。
演算処理部2456では、タップ数を削減して、タップ数の削減に対応して変更されている係数を用いることで、式(28)の演算によってフィルタ処理後の画像データp2i’を算出する。この場合の係数の変更は、フィルタ処理範囲の上端の画素を基準としたミラー複写に対応させて、画像データp1の係数を「2→3」に変更する。
なお、境界BBがLCU間のライン境界でない場合は、ラインメモリ241の画像データを用いる必要がないことから、フィルタ演算に用いる画像範囲を狭くすることなく従来と同様なフィルタ演算を行う。すなわち、図11に示す演算処理部2453は、従来と同様なフィルタ演算を行う。また、図12に示す演算処理部2455は、従来と同様なフィルタ演算を行い、データ選択部2457は、演算処理部2455からの画像データを選択して出力する。
このように、境界がラスタースキャン方向に順次処理が行われるブロックのライン境界 である場合、フィルタ演算に用いる画像範囲を制御することで、第1の実施の形態と同様に、メモリ容量を削減してもデブロッキングフィルタ処理を行うことができる。
<9.デブロッキングフィルタ処理部の第3の実施の形態>
デブロッキングフィルタ処理部の第3の実施の形態は、第1,第2の実施の形態に対して、演算処理部2453と演算処理部2456の動作が相違する。
図14は、フィルタ演算部245の動作を説明するための図である。隣接する2つのブロックBKu,BKlの各画素の画像データを示している。ここで、垂直フィルタ処理のフィルタ処理範囲は、境界(ライン境界)BBからそれぞれ3画素の範囲として、境界BBからそれぞれ4画素をタップとしてフィルタ演算を行う。フィルタ強度判定によって強フィルタリングが判定された場合、上述の式(12)乃至式(18)の演算を演算処理部2453,2455で列毎に行う。また、フィルタ強度判定によって弱フィルタリングが判定された場合、上述の式(7)乃至式(10)の演算を演算処理部2453,2455で列毎に行う。
LCU単位でラスター順にデブロッキングフィルタ処理を行う場合、垂直フィルタ処理が強フィルタリングと判定されて上述の式(12)乃至式(18)の演算を行うためには、図14の(A)に示すように境界BBの上側のブロックBKuにおいて、境界BBから4ライン分の画像データをラインメモリに記憶しておく必要がある。
ここで、フィルタ演算部245は、フィルタ処理範囲と境界BBの上側に位置するブロックにおけるフィルタ演算に用いる画像範囲を制御することで、ラインメモリのメモリ容量を削減しても、垂直フィルタ処理を行えるようにする。例えば、図14の(B)に示すように、上側のブロックBKuにおけるフィルタ処理範囲を境界BBから2画素の範囲として、境界BBから2ライン分の画像データを記憶する。さらに、この記憶された画像データを用いて、第1の実施の形態と同様に垂直フィルタ処理を行う。すなわち、図11に示す演算処理部2453は、式(29)(30)の演算を行う。また、図12に示す演算処理部2456は、式(31)(32)の演算を行い、データ選択部2457は、演算処理部2456からの画像データを選択して出力する。なお、式(29)乃至(32)において、iは画素の列インデックスを示しており、フィルタ処理を8×8画素のブロック単位で行う場合「i=0乃至7」となる。
Figure 0006468381
演算処理部2453は、上側のブロックBKuにおいて、フィルタ処理範囲の上端の画素を上方向に複写して用いる。すなわち、データ記憶部2451に記憶したフィルタ処理範囲の上端の画素の画像データp1を画像データp2として用いることで、式(29)(30)の演算によってフィルタ処理後の画像データp1i’,p0i’を算出する。
演算処理部2456では、タップ数を削減して、タップ数の削減に対応して変更されている係数を用いることで、式(31)(32)の演算によってフィルタ処理後の画像データp1i’,p0i’を算出する。この場合の係数の変更は、タップ範囲の上端の画素の複 写に対応させて、式(31)における画像データp1の係数を「1→2」、式(32)における画像データp1の係数を「2→3」に変更する。
なお、境界BBがLCUの境界でない場合は、ラインメモリ241の画像データを用いる必要がないことから、フィルタ演算に用いる画像範囲を狭くすることなく従来と同様なフィルタ演算を行う。すなわち、図11に示す演算処理部2453は、従来と同様なフィルタ演算を行う。また、図12に示す演算処理部2455は、従来と同様なフィルタ演算を行い、データ選択部2457は、演算処理部2455からの画像データを選択して出力する。
このように、境界がラスタースキャン方向に順次処理が行われるブロックのライン境界である場合、フィルタ処理範囲とフィルタ演算に用いる画像範囲を制御してメモリ容量を削減しても、削減前と同様にデブロッキングフィルタ処理を行うことができる。また、メモリ容量をより多く削減することが可能となる。
<10.デブロッキングフィルタ処理部の第4の実施の形態>
デブロッキングフィルタ処理部の第4の実施の形態は、第3の実施の形態に対して、演算処理部2453と演算処理部2456の動作が相違する。
強フィルタリングにおいて境界BBがLCU間のライン境界である場合、上述の式(12)乃至式(18)の演算を行う場合には、図14の(A)に示すように境界BBの上側のブロックBKuにおいて、境界BBから4ライン分の画像データをラインメモリに記憶しておく必要がある。
ここで、フィルタ演算部245は、フィルタ処理範囲と境界BBの上側に位置するブロックにおけるフィルタ演算に用いる画像範囲を制御することで、ラインメモリのメモリ容量を削減しても、垂直フィルタ処理を行えるようにする。例えば、図14の(B)に示すように、上側のブロックBKuにおけるフィルタ処理範囲を境界BBから2画素の範囲として、境界BBから2ライン分の画像データを記憶する。さらに、この記憶された画像データを用いて、第2の実施の形態と同様に垂直フィルタ処理を行う。すなわち、図11に示す演算処理部2453は、式(33)(34)の演算を行う。また、図12に示す演算処理部2456は、式(35)(36)の演算を行い、データ選択部2457は、演算処理部2456からの画像データを選択して出力する。なお、式(33)乃至(36)において、iは画素の列インデックスを示しており、フィルタ処理を8×8画素のブロック単位で行う場合「i=0乃至7」となる。
Figure 0006468381
演算処理部2453は、上側のブロックBKuにおいて、フィルタ処理範囲の上端の画素を基準としてミラー複写を行う。すなわち、データ記憶部2451に画像データp0を記憶して、画像データp0をフィルタ処理範囲の上端の画素を基準としてミラー複写して画像データp2として用いることで、式(33)(34)の演算によって画像データp1 i’,p0i’を算出する。
演算処理部2456では、タップ数を削減して、タップ数の削減に対応して変更されている係数を用いることで、式(35)(36)の演算によってフィルタ処理後の画像データp1i’,p0i’を算出する。この場合の係数の変更は、フィルタ処理範囲の上端の画素を基準としたミラー複写に対応させて、式(35)における画像データp0の係数を「1→2」、式(36)における画像データp0の係数を「2→3」に変更する。
なお、境界BBがLCU間のライン境界でない場合は、ラインメモリ241の画像データを用いる必要がないことから、フィルタ演算に用いる画像範囲を狭くすることなく従来と同様なフィルタ演算を行う。すなわち、図11に示す演算処理部2453は、従来と同様なフィルタ演算を行う。また、図12に示す演算処理部2455は、従来と同様なフィルタ演算を行い、データ選択部2457は、演算処理部2455からの画像データを選択して出力する。
このように、境界がラスタースキャン方向に順次処理が行われるブロックのライン境界である場合、フィルタ処理範囲とフィルタ演算に用いる画像範囲を制御してメモリ容量を削減しても、削減前と同様にデブロッキングフィルタ処理を行うことができる。また、メモリ容量をより多く削減することが可能となる。
<11.デブロッキングフィルタ処理部の第5の実施の形態>
上述のデブロッキングフィルタ処理部は、境界BBがLCU間のライン境界であるか否かに応じて、境界の上側に位置するブロックにおけるフィルタ演算に用いる画像範囲の制御やフィルタ処理範囲の制御を行うようにしている。次に、第5の実施の形態では、LCU間のライン境界のみ画像範囲の制御を行うモードと、境界BBがLCU間のライン境界であるか否かに係らず画像範囲の制御を行うモードを設けた場合を説明する。
図15は、第5の実施の形態の動作を示すフローチャートである。ステップST81でデブロッキングフィルタ処理部24はライン境界の検出を行う。デブロッキングフィルタ処理部24は、垂直フィルタ処理を行うライン境界を検出する。
ステップST82でデブロッキングフィルタ処理部24は、フィルタ強度の判定を行う。デブロッキングフィルタ処理部24は、垂直フィルタ処理を行うライン境界についての、強フィルタリングと弱フィルタリングの何れのフィルタ強度とするか判定する。
ステップST83でデブロッキングフィルタ処理部24は、LCU間のライン境界のみ範囲削減垂直フィルタ処理、すなわち、フィルタ演算に用いる画像範囲を削減して垂直フィルタ処理を行うか判別する。デブロッキングフィルタ処理部24は、LCU間のライン境界だけでなく、LCUよりもサイズの小さいブロックのライン境界についても範囲削減垂直フィルタ処理を行う場合は、ステップST84に進む。また、デブロッキングフィルタ処理部24は、範囲削減垂直フィルタ処理をLCU間のライン境界だけ行う場合はステップST85に進む。
デブロッキングフィルタ処理部24は、例えばフレーム単位で設定された量子化パラメータに基づき、範囲削減垂直フィルタ処理をLCU間のライン境界のみに対して行うか判別する。量子化パラメータが小さい場合には、量子化パラメータが大きい場合に比べて画質が良好である。したがって、デブロッキングフィルタ処理部24は、量子化パラメータが予め設定した閾値よりも大きい場合に、LCU間のライン境界のみに範囲削減垂直フィルタ処理を行い、LCUよりもサイズの小さいブロックのライン境界については通常垂直フィルタ処理を行うことで画質を向上させるモードと判定してステップST84に進む。また、デブロッキングフィルタ処理部24は、量子化パラメータが予め設定した閾値以下である場合は、LCU間のライン境界だけでなくLCUよりもサイズの小さいブロック間のライン境界についても範囲削減垂直フィルタ処理を行うことで制御を容易とするモードと判定してステップST85に進む。
ステップST84でデブロッキングフィルタ処理部24は、垂直フィルタ処理を行う境界がLCU間のライン境界であるか判別する。デブロッキングフィルタ処理部24は、垂直フィルタ処理を行う境界がLCU間のライン境界である場合はステップST85に進み、境界がLCUよりもサイズの小さいブロックのライン境界の場合はステップST86に進む。
ステップST85でデブロッキングフィルタ処理部24は、範囲削減垂直フィルタ処理を行う。デブロッキングフィルタ処理部24は、隣接する上側ブロックに対してフィルタ演算に用いる画像範囲を削減して垂直フィルタ処理を行いステップST87に進む。なお、範囲削減垂直フィルタ処理ではフィルタ対象範囲を削減してもよい。
ステップST86でデブロッキングフィルタ処理部24は、通常垂直フィルタ処理を行う。デブロッキングフィルタ処理部24は、フィルタ演算に用いる画像範囲を削減することなく垂直フィルタ処理を行ってステップST87に進む。
ステップST87でデブロッキングフィルタ処理部24は、境界の垂直フィルタ処理が完了したか判別する。デブロッキングフィルタ処理部24は、境界の各列の垂直フィルタ処理が完了していない場合にはステップST87に戻り、次の列の処理を行う。また、境界の各列の垂直フィルタ処理が完了した場合は、ステップST88に進む。
ステップST88でデブロッキングフィルタ処理部24は、画面の最後まで処理が完了したか判別する。デブロッキングフィルタ処理部24は、画面の最後まで処理が行われていない場合にはステップST81に戻り、新たな境界を検出して垂直フィルタ処理を行う。また、デブロッキングフィルタ処理部24は、画面の最後まで処理が行われた場合、1画面の処理を終了する。
このような処理を行えば、ラインメモリのメモリ容量を削減できるだけでなく、範囲削減垂直フィルタ処理をLCU間のライン境界だけでなく他のライン境界にも行えば、フィルタ処理の切り替えが必要なく制御が容易となる。また、範囲削減垂直フィルタ処理をLCU間のライン境界だけ行うようにすれば、良好な画質を得ることができる。
<12.第6乃至第8の実施の形態の説明>
[従来の説明]
なお、上記説明においては、フィルタ演算に用いる画像範囲を狭くしたことにより、画像範囲に含まれなくなったタップの画像データとして、画像範囲内のタップの画像データを複写またはミラー複写して用いる例を説明した。ここで、本明細書における複写は、Paddingと同意である。
このような本技術と同様に、LCUのライン境界のみにおいてPaddingを利用してフィルタ処理を行う方法が、従来、JCTVC-F053において提案されている。
図16を参照して、HEVC方式における輝度信号の強(strong)フィルタのフィルタ処理と、Paddingを利用したフィルタ処理について説明する。
図16は、ライン境界を挟んで上下に隣接する2つのブロックBKuおよびBKl内の画素の一例を示す説明図である。図16の例において、ブロックBKu内の画素の画像データを、「pj」という記号で示されている。jは画素の行インデックス、iは画素の列のインデックスである。また、最小符号化処理単位は、8画素×8画素のブロック単位として、行インデックスjは、ライン境界BBに近い行から順に(下から上へ)0,1,2,3と付番されている。列インデックスiは、ブロックにおける右から左へ0,1,2,…,7と付番されている。なお、ブロックBKuの上半分は図中で省略されている。一方、ブロックBKl内の画素の画像データは、「qk」という記号で示されている。kは画素の行インデックス、iは画素の列インデックスである。行インデックスkは、ライン境界BBに近い行から順に(上から下へ)0,1,2,3と付番されている。なお、ブロックBKlの下半分もまた図中で省略されている。
HEVC方式における輝度信号の強フィルタリングでは、式(37)乃至式(42)の演算を行うことで、フィルタ処理範囲の各画素の輝度成分が算出される。なお、式(37)乃至式(42)は、式(14)、式(16)、式(13)、式(17)、式(12)、および式(18)にそれぞれ対応する式である。
Figure 0006468381
ここで、Clip0−255は、0以下である場合、0に切り上げ、255以上である場合、255に切り下げるクリップ処理を表している。以降の式についても同様である。
これに対して、上述した従来の提案においては、LCUのライン境界のみであるが、R2W2削減でPaddingを利用したフィルタ処理が行われる。ここで、R2W2とは、LCUのライン境界上の2画素を参照して、LCUのライン境界上の2画素にフィルタ処理が適用されることを表す。
従来の提案における輝度信号の強フィルタリングでは、式(43)乃至式(47)の演算を行うことで、フィルタ処理範囲の各画素の輝度成分が算出される。
Figure 0006468381
ここで、従来の提案における強フィルタリングの式(43)は、HEVC方式における強フィルタリングの式(37)の「p2」が「p1」に入れ替わっている点が異なっている。従来の提案における強フィルタリングの式(45)は、HEVC方式における強フィルタリングの式(39)の「p2」が「p1」に入れ替わっている点が異なっている。従来の提案における強フィルタリングにおいては、HEVC方式における強フィルタリングの式(41)に対応する式が削除されている点が異なっている。
なお、従来の提案における強フィルタリングの式(44)、式(46)、および式(47)は、HEVC方式における強フィルタリングの式(38)、式(40)、および式(42)にそれぞれ共通している。
すなわち、従来の提案においては、ブロックBkuのライン境界BBから上に3行目の行の画素「p2」が参照されないので、代わりに、同じ列のすぐ下の行の画素「p1」が複写(Padding)して用いられている。
また、ブロックBkuのライン境界BBから上に3行目の行の画素「p2」には、フィルタ処理が施されないので、従来の提案における強フィルタリングにおいては、HEVC方式における強フィルタリングの式(41)に対応する式が削除されている。
以上のようにすることで、従来の提案においては、HEVC方式よりも、ラインメモリのメモリ容量が大きくなることを抑制している。
しかしながら、4k画像の場合には大量のラインメモリを持つ必要があるので、デブロッキング処理において、ラインメモリを削減することがさらに求められている。また、ラインメモリ削減に際しては、この従来の提案の方法よりも、デブロッキングのブロックノイズリダクションの機能を保つことが求められている。
ここで、HEVC方式のブロック間の境界判定においては、次の式(48)に示されるように、ライン境界を挟んだ両側で、傾き一定の波形を処理対象としている。そこで、本技術においては、以下に詳しく説明するが、ブロック間の境界判定における波形の傾きを利用することで、LCUのライン境界のデブロッキング処理を行う。
Figure 0006468381
[本技術の説明(線形近似)]
図17の例においては、式(48)のHEVC方式のブロック間の境界判定式が示されている。
式(48)の左辺の第1項は、図17に示されるように、ブロックBkuの左から3列目の画素を判定する式であり、次のように、差分の差分(2次差分)、すなわち、傾きが一定の2次微分で表すことができる。
p2−2*p1+p0 = (p2−p1)−(p1−p0
式(48)の左辺の第2項乃至第4項は、それぞれ、ブロックBkuの左から6列目の画素を判定する式、ブロックBklの左から3列目の画素を判定する式、ブロックBklの左から6列目の画素を判定する式である。式(48)の左辺の第2項乃至第4項についても、同様なことがいえる。
このように、HEVC方式のブロック間の境界判定においては、傾き一定の波形を処理対象としていることから、LCUのライン境界のデブロッキング処理においては、ブロック間の境界判定における波形の傾きを利用する。
従来の技術においては、LCUのライン境界のデブロッキング処理においては、参照できない画素に対しては、複写(Padding)が利用されていた。これに対して、本技術においては、LCUのライン境界のデブロッキング処理においては、参照できない画素に対して波形の傾きを利用した線形近似を行う。
すなわち、本技術のLCUのライン境界のデブロッキング処理においては、次の線形近似の式(49)が用いられる。
Figure 0006468381
なお、図18に示されるように、p2、p1、p0の画素値に傾きがある場合、従来のR2W2による複写(Padding)においては、p2の画素値は参照できない。したがって、p2の画素値の代わりに、ハッチングの丸に示されるように、直下のp1の画素値が複写(Padding)して用いられるが、実際のp2の画素値は、点線の丸の位置であるので、誤差が生じてしまう。
これに対して、本技術のR2W2による一次線形予測においては、p2の画素値は参照できないので、p2の画素値は、ハッチングの丸に示されるように、p1およびp0の画素値に傾きから一次線形により予測された画素値(=実際と同じ画素値)が用いられる。
以上のようにすることで、画素値に傾きがある場合においては、本技術によれば、従来の複写(Padding)の方法よりも誤差が生じることがない。したがって、R2W2であっても、デブロッキングのブロックノイズリダクションの機能を保ちつつ、ラインメモリの削減を実現することができる。
また、例えば4K×2Kの画像における1ラインは、2K×1Kの画像の2ライン分に相当する。また、H.264/AVC方式では、4ライン分のラインメモリを備えており、4K ×2Kの画像における1ライン分のメモリ容量は、H.264/AVC方式の50%のメモリ容量に相当する。すなわち、高解像度画像においてメモリ容量の削減効果が高くなる。
なお、p2、p1、p0の画素値に傾きがない場合には、実質的に、直下のp1の画素値が用いられることと同等となる。この場合も、R2W2であっても、デブロッキングのブロックノイズリダクションの機能を保ちつつ、ラインメモリの削減を実現することができる。
[R2W2の場合のフィルタ処理]
次に、R2W2の場合の輝度信号のフィルタ処理について説明する。R2は、参照される画素を示し、W2は、フィルタ処理が適用される画素を示す。すなわち、R2W2とは、図19に示されるように、LCUのライン境界上の2画素を参照して、LCUのライン境界上の2画素にフィルタ処理が適用されることを表す。
なお、図19の例においては、図16におけるブロックBKu内のライン境界BBから上に3列目と4列目の画素が参照できないことが明示されている。
比較として再度示すが、HEVC方式における輝度信号の強フィルタリングでは、式(50)乃至式(55)の演算を行うことで、フィルタ処理範囲の各画素の輝度成分が算出される。なお、式(50)乃至式(55)は、式(37)乃至式(42)にそれぞれ対応する式である。
Figure 0006468381
これに対して、本技術のR2W2の場合の輝度信号の強フィルタリングでは、式(56)乃至式(60)の演算を行うことで、フィルタ処理範囲の各画素の輝度成分が算出される。
Figure 0006468381
ここで、R2W2の場合の強フィルタリングの式(56)は、線形近似の式(49)により、HEVC方式における強フィルタリングの式(50)の「p2+2*p1+2*p0」が「4*p1+p0」に入れ替わっている点が異なっている。
R2W2の場合の強フィルタリングの式(58)は、線形近似の式(49)により、HEVC方式における強フィルタリングの式(52)の「p2+p1+p0」が「3*p1」に入れ替わっている点が異なっている。
R2W2の場合の強フィルタリングにおいては、HEVC方式における強フィルタリングの式(54)に対応する式が削除されている点が異なっている。
すなわち、本技術のR2W2の場合においては、ブロックBkuのライン境界BBから上に3行目の行の画素「p2」が参照されないので、代わりに、線形近似の式(49)が代入して用いられる。
また、ブロックBkuのライン境界BBから上に3行目の行の画素「p2」には、フィルタ処理が施されないので、R2W2の場合の強フィルタリングにおいては、HEVC方式における強フィルタリングの式(54)に対応する式が削除される。
次に、ライン境界における輝度信号の弱フィルタリングの判定式と弱フィルタリングについて説明する。
まず、HEVC方式における輝度信号の弱フィルタリングの判定式と弱フィルタリングでは、式(61)乃至式(63)の演算を行うことで、フィルタ処理範囲の各画素の輝度成分が算出される。なお、式(61)乃至式(63)における第1式目が、弱フィルタリングの判定式である。
Figure 0006468381
ここで、Clip0−255は、上述したように、0以下である場合、0に切り上げ、255以上である場合、255に切り下げるクリップ処理を表している。また、Clip(-tc)−tcは、-tc以下である場合、-tcに切り上げ、tc以上である場合、tcに切り下げるクリップ処理を表している。tc2についてのクリップも同様である。なお、以降の式についても同様である。なお、tcは、表1に示したように、パラメータQに基づいて設定される値である。
これに対して、R2W2の場合の輝度信号の弱フィルタリングの判定式と弱フィルタリングでは、式(64)乃至式(66)の演算を行うことで、フィルタ処理範囲の各画素の輝度成分が算出される。なお、式(64)乃至式(66)における第1式目が、弱フィルタリングの判定式である。
Figure 0006468381
ここで、R2W2の場合の式(65)のうち、弱フィルタリングの式である第2式目のtc2のクリップ内は、線形近似の式(49)により、HEVC方式における式(62)のうち、第2式目のtc2のクリップ内と異なっている。すなわち、第2式目のtc2のクリップ内は、HEVC方式の第2式目のtc2のクリップ内「((((p2+p0+1)>>1)−p1+delta)>>1)」が、「((((p1+p1+1)>>1)−p1+delta)>>1)」に入れ替わっている。
また、R2W2の場合の式(65)のうち、弱フィルタリングの判定式である第1式目のif文内は、HEVC方式における式(62)のうち、第1式目のif文内と異なっている。すなわち、第1式目のif文内は、HEVC方式の第1式目のif文内「abs(p2−2*p1+p0)+abs(p2−2*p1+p0)」が、「abs(0−(p1−p0))+abs(0−(p1−p0))」に入れ替わっている。
すなわち、式(65)のうち、第1式目については、線形近似ではなく、次の式(67)に示される、直下の画素での複写(padding)が行われる。換言するに、「abs(0−(p1−p0))」における0は、「0=p2−p1」を表しており、「abs(0−(p1−p0))」における0は、「0=p2−p1」を表している。
Figure 0006468381

これは、フィルタリングの判定式における傾きについての判定に関して、線形近似を用いると、実際にはスルーできないものについての判定までスルーしてしまうためである。したがって、弱フィルタリングの判定式における傾きの判定については、式(67)に示されるように、直下の画素での複写(padding)が行われるものとする。これは、次に述べる強フィルタリングの判定式やブロック間の境界判定式についても同じことがいえる。
次に、ライン境界における輝度信号のブロック間の境界判定式と強フィルタリングの判定式について説明する。
まず、HEVC方式における輝度信号のブロック間の境界判定式は、次の式(68)で表わされ、強フィルタリングの判定式は、次の式(69)で表わされる。
Figure 0006468381
Figure 0006468381
これに対して、本技術のR2W2の場合のブロック間の境界判定式は、次の式(70)で表わされ、強フィルタリングの判定式は、次の式(71)で表わされる。
Figure 0006468381
Figure 0006468381
R2W2の場合のブロック間の境界判定の式(70)のif文内の第1項目および第2項目は、複写(padding)の式(67)により、HEVC方式におけるブロック間の境界判定の式(68)のif文内の第1項目および第2項目と異なっている。すなわち、if文内の第1項目と第2項目は、HEVC方式のif文内の第1項目と第2項目「abs(p2−2*p1+p0)+abs(p2−2*p1+p0)」が、「abs(0−(p1−p0))+abs(0−(p1−p0))」に入れ替わっている。
また、R2W2の場合の強フィルタリング判定の式(71)の1行目の絶対値内が、複写(padding)の式(67)により、HEVC方式における強フィルタリング判定の式(69)の1行目の絶対値内と異なっている。すなわち、式(71)の1行目の絶対値内は、式(69)の1行目の絶対値内「abs(p2−2*p1+p0)+abs(p2−2*p1+p0)」が、「abs(0−(p1−p0))+abs(0−(p1−p0))」に入れ替わっている。
さらに、R2W2の場合の強フィルタリング判定の式(71)の1つ目の「and」以降の式が、HEVC方式における強フィルタリング判定の式(69)の1つ目の「and」以降の式と異なっている。すなわち、式(71)の1つ目の「and」以降の式は、式(69)の1つ目の「and」以降の式「(|p3−p0<<1|+|q0−q3|)」<(β>>3))」が、「(|p1−p0<<1|+|q0−q3|)」<(β>>3))」に入れ替わっている。
なお、この部分の判定は、画素値の大きさの判定であるので、線形近似の式(49)および複写(padding)の式(67)が用いられている。すなわち、式(71)の1つ目の「and」以降の式は、式(69)1つ目の「and」以降の式において、まず、「p3」が、複写により「p2」に近似されて、その後、「p2」が、線形により「2*p1−p0」に近似されて生成されている。
[R2W1の場合のフィルタ処理]
次に、R2W1の場合の輝度信号のフィルタ処理について説明する。R2は、参照される画素を示し、W1は、フィルタ処理が適用される画素を示す。すなわち、R2W1とは、図19に示されるように、LCUのライン境界上の2画素を参照して、LCUのライン境界上の1画素にフィルタ処理が適用されることを表す。
R2W1の場合の本技術の輝度信号の強フィルタリングでは、式(72)乃至式(75)の演算を行うことで、フィルタ処理範囲の各画素の輝度成分が算出される。
Figure 0006468381
ここで、R2W1の場合の強フィルタリングの式(72)は、線形近似の式(49)により、HEVC方式における強フィルタリングの式(50)の「p2+2*p1+2*p0」が「4*p1+p0」に入れ替わっている点が異なっている。
R2W1の場合の強フィルタリングにおいては、HEVC方式における強フィルタリングの式(52)および式(54)に対応する式が削除されている点が異なっている。
すなわち、本技術においては、ブロックBkuのライン境界BBから上に3行目の行の画素「p2」が参照されないので、代わりに、線形近似の式(49)が代入して用いられる。
また、ブロックBkuのライン境界BBから上に2行目の行の画素「p1」および3行目の行の画素「p2」には、フィルタ処理が施されない。したがって、R2W1の場合の強フィルタリングにおいては、HEVC方式における強フィルタリングの式(52)および式(54)に対応する式が削除される。
次に、ライン境界における輝度信号の弱フィルタリングの判定式と弱フィルタリングについて説明する。
R2W1の場合の輝度信号の弱フィルタリングの判定式と弱フィルタリングでは、式(76)および式(77)の演算を行うことで、フィルタ処理範囲の各画素の輝度成分が算出される。
Figure 0006468381
ここで、R2W1の場合、ブロックBkuのライン境界BBから上に2行目の行の画素「p1」には、フィルタ処理が施されない。したがって、R2W1の場合の弱フィルタリングの判定式と弱フィルタリングにおいては、HEVC方式における式(62)に対応する式が削除される。
次に、ライン境界における輝度信号のブロック間の境界判定式と強フィルタリングの判定式について説明する。
R2W1の場合のブロック間の境界判定式は、次の式(78)で表わされ、強フィルタリングの判定式は、次の式(79)で表わされる。
Figure 0006468381
Figure 0006468381
R2W1の場合のブロック間の境界判定の式(78)のif文内の第1項目および第2項目は、複写(padding)の式(67)により、HEVC方式におけるブロック間の境界判定の式(68)のif文内の第1項目および第2項目と異なっている。すなわち、if文内の第1項目と第2項目は、HEVC方式のif文内の第1項目と第2項目「abs(p2−2*p1+p0)+abs(p2−2*p1+p0)」が、「abs(0−(p1−p0))+abs(0−(p1−p0))」に入れ替わっている。
また、R2W1の場合の強フィルタリング判定の式(79)の1行目の絶対値内が、複写(padding)の式(67)により、HEVC方式における強フィルタリング判定の式(69)の1行目の絶対値内と異なっている。すなわち、式(79)の1行目の絶対値内は、式(69)の1行目の絶対値内「abs(p2−2*p1+p0)+abs(p2−2*p1+p0)」が、「abs(0−(p1−p0))+abs(0−(p1−p0))」に入れ替わっている。
さらに、R2W1の場合の強フィルタリング判定の式(79)の1つ目の「and」以降の式が、HEVC方式における強フィルタリング判定の式(69)の1つ目の「and」以降の式と異なっている。すなわち、式(79)の1つ目の「and」以降の式は、式(69)1つ目の「and」以降の式「(|p3−p0<<1|+|q0−q3|)」<(β>>3))」が、「(|p1−p0<<1|+|q0−q3|)」<(β>>3))」に入れ替わっている。
R2W2の場合に上述したように、この部分の判定は、画素値の大きさの判定であるので、線形近似の式(49)および複写(padding)の式(67)が用いられている。すなわち、式(79)の1つ目の「and」以降の式は、式(69)1つ目の「and」以降の式にいおいて、まず、「p3」が「p2」に近似されて、その後、「p2」が「2*p1−p0」に近似されて生成されている。
なお、以上の線形近似による判定処理を実現するための構成例と動作については、デブロッキングフィルタ処理部の第6および第7の実施の形態として、後述する図22乃至図24を参照して説明する。
なお、上述したように、本技術においては、ライン境界におけるブロック間の境界判定と強フィルタリング判定式を、線形近似の式(49)および複写(padding)の式(67)を用いて変更している。このため、上記判定式を誤ってスルーし、誤ってデブロッキングフィルタ処理が行われてしまった場合の対応として、強フィルタリング処理にクリップ処理を追加する。
[本技術の説明(強フィルタリングにおけるクリップ処理)]
次に、第8の実施の形態である強フィルタリングにおけるクリップ処理について説明する。R2W2の場合の輝度信号の強フィルタリングは、クリップ処理が追加された、次の式(80)乃至式(84)を用いることも可能である。
Figure 0006468381
強フィルタリングの式(80)は、フィルタリング後のp0の算出式である。強フィルタリングの式(80)においては、式(56)における0乃至255のクリップ処理内と、p0との差分に対して(-tc)乃至tcのクリップ処理が施された値が、p0に加算されたものに対して、0乃至255によるクリップ処理が行われている。
強フィルタリングの式(81)は、フィルタリング後のq0の算出式である。強フィルタリングの式(81)においては、式(57)における0乃至255のクリップ処理内と、q0との差分に対して(-tc)乃至tcのクリップ処理が施された値が、q0に加算されたものに対して、0乃至255によるクリップ処理が行われている。
強フィルタリングの式(82)は、フィルタリング後のp1の算出式である。強フィルタリングの式(82)においては、式(58)における0乃至255のクリップ処理内と、p1との差分に対して(-tc)乃至tcのクリップ処理が施された値が、p1に加算されたものに対して、0乃至255によるクリップ処理が行われている。
強フィルタリングの式(83)は、フィルタリング後のq1の算出式である。強フィルタリングの式(83)においては、式(59)における0乃至255のクリップ処理内と、q1との差分に対して(-tc)乃至tcのクリップ処理が施された値が、q1に加算されたものに対して、0乃至255によるクリップ処理が行われている。
強フィルタリングの式(84)は、フィルタリング後のq2の算出式である。強フィルタリングの式(84)においては、式(60)における0乃至255のクリップ処理内と、q2との差分に対して(-tc)乃至tcのクリップ処理が施された値が、q2に加算されたものに対して、0乃至255によるクリップ処理が行われている。
以上のようにすることで、過度なフィルタ処理がかかるのを抑制することが可能である。
なお、ここで、Matthias Narroschke, Tomas Wedi, Semih Esenlik, “Results for modified decisions for deblocking”, JCTVC-G590, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 7th Meeting, Geneva, CH, 21-30 November, 2011(以下、非特許文献2と称する)が提案されている。
非特許文献2においては、ブロック単位で強フィルタリング・弱フィルタリングの判定処理が記載されている。しかしながら、非特許文献2に記載の判定処理では、注目ラインとそのラインが含まれるブロック単位の判定が異なる場合(注目ラインは弱フィルタリングの判定であるのに対して,それを含むブロックは強フィルタリング判定で、注目ラインに強フィルタリングが適用される場合)、過度なフィルタ処理がかかる。
また、非特許文献2においては、強フィルタリング、弱フィルタリングの判定処理が4ライン単位で行われるため、判定とフィルタリング処理との間でミスマッチが起こる。ミスマッチの例としては、強と判定される必要があるのに、弱フィルタが行われたり、弱と判定される必要があるのに、強フィルタが行われたりする。
なお、HEVC方式(HM-5.0)における輝度信号の強フィルタリングでは、次の式(85)乃至式(89)が採用されている。
Figure 0006468381
本技術では、判定処理のミスマッチ及び判定処理の不完全さを解消するために、次の式(90)乃至式(94)で示すクリップ処理を適用することも可能である。なお、式(90)においては、フィルタ処理によって変化する部分Δ値にクリップ処理を行いたいので、p0がクリップ処理の外に出されている。他の式(91)乃至式(94)についても同様である。
Figure 0006468381
ここで、クリップ値pvは、パラメータtcの1倍,2倍,3倍,4倍,5倍,6倍,7倍,8倍のいずれかとする。すなわち、pv=tc,2*tc,3*tc,4*tc,5*tc,6*tc,7*tc,8*tcである。なお、クリップ値pvは、パラメータtcの2倍が好適と考えられるが、1乃至8倍のいずれかでよいと想定される。また、同等の効果が得られれば、1乃至8倍には限定されない。
また、tcは、量子化パラメータQPに応じて変動する。よって、クリップ値におけるtcにかかる倍数もQPが大きくなると大きくなる(すなわち、QPに応じて変動する)ようにすることも可能である。このクリップ処理にかかるパラメータ(クリップ値やクリップ値におけるtcにかかる倍数の値)は、予め設定されていてもよいし、符号化ストリームに付加して、復号側へ伝送することも可能である。
なお、上述した式(90)乃至式(94)は、次の式(95)乃至式(99)のようにクリップ処理を行うようにしてもよい。
Figure 0006468381
ここで、上述したHEVC方式(HM-5.0)における輝度信号の強フィルタリングの式(85)乃至式(89)は、ライン境界における輝度信号の強フィルタリングの式である。すなわち、HEVC方式(HM-5.0)において、輝度信号の強フィルタリングは、実際には、次の式(100)乃至式(105)で表わされている。
Figure 0006468381
これらの式(100)乃至式(105)に対応して、本技術では、判定処理のミスマッチ及び判定処理の不完全さを解消するために、輝度信号の強フィルタリングに、次の式(106)乃至式(111)で示すように、クリップ処理を適用することが可能である。なお、式(106)の第1式においては、上述した式(90)乃至(94)の例と同様に、フィルタ処理によって変化する部分Δ値にクリップ処理を行いたいので、p0がクリップ処理の外に出されている。他の式(107)乃至式(111)の第1式についても同様である。
p0i = p0i + Clip(-pv)-(pv)((p2i + 2*p1i - 6*p0i +2*q0i + q1i + 4)>>3); i=0,7
= Clip(p0i -pv)-(p0i +pv)((p2i + 2*p1i + 2*p0i +2*q0i + q1i + 4)>>3); ・・・(106)

q0i = q0i + Clip(-pv)-(pv)((p1i + 2*p0i - 6*q0i + 2*q1i + q2i + 4)>>3); i=0,7
= Clip(q0i -pv)-(q0i +pv)((p1i + 2*p0i + 2*q0i + 2*q1i + q2i + 4)>>3); ・・・(107)

p1i = p1i + Clip(-pv)-(pv)((p2i - 3*p1i + p0i + q0i +2)>>2); i=0,7
= Clip(p1i -pv)-(p1i +pv)((p2i + p1i + p0i + q0i +2)>>2); ・・・(108)

q1i = q1i + Clip(-pv)-(pv)((p0i + q0i - 3*q1i + q2i +2)>>2); i=0,7
= Clip(q1i -pv)-(q1i +pv)((p0i + q0i + q1i + q2i +2)>>2); ・・・(109)

p2i = p2i + Clip(-pv)-(pv)((2*p3i - 5*p2i + p1i + p0i + q0i + 4)>>3); i=0,7
= Clip(p2i -pv)-(p2i +pv)((2*p3i + 3*p2i + p1i + p0i + q0i + 4)>>3); ・・・(110)

q2i = q2i + Clip(-pv)-(pv)((p0i + q0i + q1i - 5*q2i + 2*q3i + 4)>>3); i=0,7
= Clip(q2i -pv)-(q2i +pv)((p0i + q0i + q1i + 3*q2i + 2*q3i + 4)>>3); ・・・(111)

ここで、クリップ値pvは、パラメータtcの1倍、2倍、3倍、4倍、5倍、6倍、7倍、8倍のいずれかとする。すなわち、pv=tc,2*tc,3*tc,4*tc,5*tc,6*tc,7*tc,8*tcである。なお、クリップ値pvは、パラメータtcの2倍が好適と考えられるが、1乃至8倍のいずれかでよいと想定される。また、同等の効果が得られれば、1乃至8倍には限定されない。
また、tcは、量子化パラメータQPに応じて変動する。よって、クリップ値におけるtcにかかる倍数もQPが大きくなると大きくなる(すなわち、QPに応じて変動する)ようにすることも可能である。このクリップ処理にかかるパラメータ(クリップ値やクリップ値におけるtcにかかる倍数の値)は、予め設定されていてもよいし、符号化ストリームに付加して、復号側へ伝送することも可能である。
図20は、実験による、上述した式(100)乃至式(105)のHEVC方式(HM-5.0)における輝度信号の強フィルタリングによって変化する画素値の最大値を示す図である。
AI_HE、RA_HE、LB_HE、およびLP_HEは、本実験のコンディションを示している。AI_HE は、実験がALL INTRA High Efficiencyで行われたことを表している。RA_HE は、実験がRandom Access High Efficiencyで行われたことを表している。LB_HEは、実験がLow Delay B High Efficiencyで行われたことを表している。LP_HEは、実験がLow Delay P High Efficiencyで行われたことを表している。
AI_HE、RA_HE、LB_HE、およびLP_HEの下に示される「22、27、32、37」は、実験に用いられた量子化パラメータの値である。また、Class A乃至Class Fは、実験に用いられたテストシーケンスの種類を示している。
図20に示されるように、HEVC方式(HM-5.0)における輝度信号の強フィルタリングによって変化する画素値は、すなわち、クリップ処理がない場合に強フィルタリングによって変化する画素値は、場合によっては100以上大きく変化してしまう。
そこで、輝度信号の強フィルタリングにクリップ処理を適用する。これにより、次の図21に示されるように、判定処理のミスマッチ及び判定処理の不完全さの影響を最小限に抑えることができる。
図21の例においては、実線で示されるエッジ(ブロック境界ではない)がある場合で、本来はデブロッキング処理を行いたくないが、非特許文献2の技術により、デブロッキング処理が施されてしまうと、点線に示されるように画素値が大きく変化してしまう。
例えば、デブロッキング処理前には、実線で示されるように、画素p2、画素p1、および画素p0の値は、255であり、画素q0、画素q1、および画素q2の値は、0であり、画素p0および画素q0の値の差Dは、255である。
これに対して、点線で示されるように、デブロッキング処理後の画素p2の値は223となり、画素p1の値は、191となり、画素p0の値は、159となり、画素p2、画素p1、および画素p0の画素値が大きく変化してしまっていた。また、デブロッキング処理後の画素q0の値は、96となり、画素q1の値は、64となり、画素q2の値は、32となり、画素q0、画素q1、および画素q2の画素値が大きく変化してしまっていた。
このような場合に、例えば、上述した式(106)乃至式(111)の強フィルタリングにおいて、クリップ値が10のクリップ処理を行う。
これにより、太線で示されるように、デブロッキング後、画素p2、画素p1、および画素p0の値は、245となり、画素q0、画素q1、および画素q2の値は、255となり、上述した画素値の変化を最小限に抑えることができる。
なお、以上の強フィルタリングにおけるクリップ処理を実現するための構成例と動作については、デブロッキングフィルタ処理部の第8の実施の形態として、後述する図25乃至図27を参照して説明する。
<13.デブロッキングフィルタ処理部の第6の実施の形態>
[デブロッキングフィルタ処理部の構成例]
図22は、デブロッキングフィルタ処理部の第6の実施の形態の構成を例示している。デブロッキングフィルタ処理部24は、画像メモリ71、ブロック境界判定部72−1、フィルタ強度判定部73−1、フィルタ演算部74−1、セレクタ75、係数メモリ76、および制御部77を含むように構成される。デブロッキングフィルタ処理部24は、さらに、ライン境界ブロック境界判定部72−2、ライン境界フィルタ強度判定部73−2、およびライン境界フィルタ演算部74−2を含むように構成されている。
画像メモリ71は、図9のラインメモリ241に相当する部であり、ラインメモリで構成されている。画像メモリ71は、加算部23から供給された画像データを記憶する。画像メモリ71は、記憶している画像データを読み出して、ブロック境界判定部72−1、フィルタ強度判定部73−1、およびフィルタ演算部74−1に供給する。画像メモリ71は、また、記憶している画像データを読み出して、ライン境界ブロック境界判定部72−2、ライン境界フィルタ強度判定部73−2、およびライン境界フィルタ演算部74−2にも供給する。
なお、ライン境界ではないところでは、画像メモリ71に画像データは記憶されず、加算部23から供給された画像データが各部に供給されて、それが処理される場合もある。しかしながら、図22の例においては、説明の便宜上、画像メモリ71を経由した画像データが処理されるとして説明する。
ブロック境界判定部72−1は、制御部77の制御のもと、ブロック間の境界判定を行う。すなわち、ブロック境界判定部72−1は、画像メモリ71から読み出された画像データを用いて上述のブロック間の境界判定処理をブロック毎に行い、フィルタ処理を行うブロック間の境界を検出する。ブロック境界判定部72−1は、検出結果をフィルタ強度判定部73−1に出力する。
フィルタ強度判定部73−1は、制御部77の制御のもと、上述のようにフィルタ強度の判定を行う。すなわち、フィルタ強度判定部73−1は、画像メモリ71からの、ブロックの境界を挟んで隣接する2つのブロックの画像データを用いて、ライン毎に、強フィルタリングまたは弱フィルタリングの何れの強度でフィルタ処理を行うか判定して、判定結果をフィルタ演算部74−1に出力する。
フィルタ演算部74−1は、制御部77の制御のもと、画像メモリ71に記憶されている画像データ、および係数メモリ76から読み出したフィルタ係数を用いて、ライン毎に、フィルタ強度判定部73−1で判定されたフィルタ強度でフィルタ演算を行う。フィルタ演算部74−1は、フィルタ処理がなされた画像データをセレクタ75に出力する。
ライン境界ブロック境界判定部72−2は、制御部77の制御のもと、LCUのライン境界である場合に、ブロック間の境界判定を行う。すなわち、ライン境界ブロック境界判定部72−2は、画像メモリ71から読み出された画像データを用いて上述のブロック間の境界判定処理をブロック毎に行い、フィルタ処理を行うブロック間の境界を検出する。ライン境界ブロック境界判定部72−2は、検出結果をライン境界フィルタ強度判定部73−2に出力する。
ライン境界フィルタ強度判定部73−2は、制御部77の制御のもと、LCUのライン境界である場合に、上述のようにフィルタ強度の判定を行う。すなわち、ライン境界フィルタ強度判定部73−2は、画像メモリ71からの、ブロックの境界を挟んで隣接する2つのブロックの画像データを用いて、ライン毎に、強フィルタリングまたは弱フィルタリングの何れの強度でフィルタ処理を行うか判定して、判定結果をライン境界フィルタ演算部74−2に出力する。
ライン境界フィルタ演算部74−2は、制御部77の制御のもと、画像メモリ71に記憶されている画像データ、および係数メモリ76から読み出したフィルタ係数を用いて、ライン毎に、ライン境界フィルタ強度判定部73−2で判定されたフィルタ強度でフィルタ演算を行う。ライン境界フィルタ演算部74−2は、フィルタ処理がなされた画像データをセレクタ75に出力する。
セレクタ75は、制御部77の制御のもと、フィルタ演算部74−1からの画像データまたはライン境界フィルタ演算部74−2からの画像データのどちらかを選択して、選択した画像データを、フレームメモリ25に出力する。
係数メモリ76は、デブロッキングフィルタ処理のフィルタ演算に用いるフィルタ係数を記憶している。係数メモリ76は、記憶しているフィルタ係数を読み出し、フィルタ演算部74−1およびライン境界フィルタ演算部74−2に供給する。
制御部77は、デブロッキングフィルタ処理部24の各部を制御する。制御部77は、例えば、画像メモリ71を制御して、ブロック内の下端側の所定ライン数分の画像データを記憶させ、記憶されている画像データの読み出しを行う。制御部77は、LCU内ライン判定部77Aを含むように構成されている。
LCU内ライン判定部77Aは、ラスタースキャン方向に順次処理が行われるブロック単位に、例えばLCU間のライン境界であるか判定して判定結果を、ブロック境界判定部72−1、フィルタ強度判定部73−1、およびフィルタ演算部74−1に供給し、ライン境界ではない場合に、処理を行わせる。また、LCU内ライン判定部77Aは、その判定結果を、ライン境界ブロック境界判定部72−2、ライン境界フィルタ強度判定部73−2、およびライン境界フィルタ演算部74−2にも供給し、ライン境界であった場合に、処理を行わせる。さらに、LCU内ライン判定部77Aは、その判定結果を、セレクタ75に供給し、ライン境界であった場合、ライン境界フィルタ演算部74−2からの画像データを選択させ、ライン境界ではない場合、フィルタ演算部74−1からの画像データを選択させる。
なお、図22のデブロッキングフィルタ処理部24においては、例えば、R2W2処理を行うことが予め設定されていてもよいし、図9の例と同様に、フィルタ処理範囲やフィルタ演算範囲を制御することができるように構成してもよい。
[デブロッキングフィルタ処理部の動作]
次に、図23のフローチャートを参照して、図22のデブロッキングフィルタ処理部24のデブロッキング処理について説明する。なお、図23の例においては、R2W2の処理が行われる場合について説明する。
ステップS91において、LCU内ライン判定部77Aは、ラスタースキャン方向に順次処理が行われるブロック単位に、かけるフィルタが、LCU境界の垂直フィルタであるか否かを判定する。すなわち、ステップS91においては、LCU間のライン境界であって、かけるフィルタが垂直フィルタであるか否かが判定される。
ステップS91において、かけるフィルタが、LCU境界の垂直フィルタであると判定された場合、処理は、ステップS92に進む。ステップS92において、ライン境界ブロック境界判定部72−2は、制御部77の制御のもと、LCUのライン境界である場合に、ライン境界のブロック間の境界判定を行う。
すなわち、ライン境界ブロック境界判定部72−2は、画像メモリ71から読み出された画像データを用いて、上述した式(70)により、ブロック間の境界判定処理をブロック毎に行い、フィルタ処理を行うブロック間の境界を検出する。ライン境界ブロック境界判定部72−2は、検出結果をライン境界フィルタ強度判定部73−2に出力する。
ステップS93において、ライン境界フィルタ強度判定部73−2は、制御部77の制御のもと、LCUのライン境界である場合に、上述のように、ライン境界のフィルタ強度の判定を行う。
すなわち、ライン境界フィルタ強度判定部73−2は、画像メモリ71からの、ブロックの境界を挟んで隣接する2つのブロックの画像データを用いて、強フィルタリングまたは弱フィルタリングの何れの強度でフィルタ処理を行うか判定する。なお、上述した式(71)により強フィルタリングの判定が行われる。また、上述した式(64)乃至式(66)の第1式目により、弱フィルタリングの判定が行われる。ライン境界フィルタ強度判定部73−2は、判定結果をライン境界フィルタ演算部74−2に出力する。
ステップS94において、ライン境界フィルタ演算部74−2は、制御部77の制御のもと、ライン境界のフィルタ処理を行う。すなわち、ライン境界フィルタ演算部74−2は、画像メモリ71に記憶されている画像データ、および係数メモリ76から読み出したフィルタ係数を用いて、ライン境界フィルタ強度判定部73−2で判定されたフィルタ強度でフィルタ演算を行う。
強フィルタリングの場合、上述した式(56)乃至式(60)によりフィルタ演算が行われる。また、弱フィルタリングの場合、上述した式(64)乃至式(66)の第2式目および第3式目によりフィルタ演算が行われる。ライン境界フィルタ演算部74−2は、フィルタ処理がなされた画像データをセレクタ75に出力する。
LCU内ライン判定部77Aは、ステップS95において、処理対象のラインが、LCUにおける最後の8ライン目であるか否かを判定する。ステップS95において、処理対象のラインが、LCUにおける最後の8ライン目ではないと判定された場合、処理は、ステップS93に戻り、それ以降の処理が繰り返される。
また、ステップS95において、処理対象のラインが、LCUにおける最後の8ライン目であると判定された場合、処理は、ステップS100に進む。
一方、ステップS91において、かけるフィルタが、LCU境界の垂直フィルタではないと判定された場合、処理は、ステップS96に進む。ステップS96において、ブロック境界判定部72−1は、制御部77の制御のもと、ブロック間の境界判定を行う。
すなわち、ブロック境界判定部72−1は、画像メモリ71から読み出された画像データを用いて、上述した式(68)により、ブロック間の境界判定処理をブロック毎に行い、フィルタ処理を行うブロック間の境界を検出する。ブロック境界判定部72−1は、検出結果をフィルタ強度判定部73−1に出力する。
フィルタ強度判定部73−1は、ステップS97において、制御部77の制御のもと、上述のようにフィルタ強度の判定を行う。すなわち、フィルタ強度判定部73−1は、画像メモリ71からの、ブロックの境界を挟んで隣接する2つのブロックの画像データを用いて、ライン毎に、強フィルタリングまたは弱フィルタリングの何れの強度でフィルタ処理を行うか判定する。なお、上述した式(69)により強フィルタリングの判定が行われる。また、上述した式(61)乃至式(63)の第1式目により、弱フィルタリングの判定が行われる。フィルタ強度判定部73−1は、判定結果をフィルタ演算部74−1に出力する。
フィルタ演算部74−1は、ステップS98において、制御部77の制御のもと、ブロック境界のフィルタ演算を行う。すなわち、フィルタ演算部74−1は、画像メモリ71に記憶されている画像データ、および係数メモリ76から読み出したフィルタ係数を用いて、ライン毎に、フィルタ強度判定部73−1で判定されたフィルタ強度でフィルタ演算を行う。
強フィルタリングの場合、上述した式(50)乃至式(55)によりフィルタ演算が行われる。また、弱フィルタリングの場合、上述した式(61)乃至式(63)の第2式目および第3式目によりフィルタ演算が行われる。フィルタ演算部74−1は、フィルタ処理がなされた画像データをセレクタ75に出力する。
LCU内ライン判定部77Aは、ステップS99において、処理対象のラインが、LCUにおける最後の8ライン目であるか否かを判定する。ステップS99において、処理対象のラインが、LCUにおける最後の8ライン目ではないと判定された場合、処理は、ステップS97に戻り、それ以降の処理が繰り返される。
また、ステップS99において、処理対象のラインが、LCUにおける最後の8ライン目であると判定された場合、処理は、ステップS100に進む。
ステップS100において、LCU内ライン判定部77Aは、画像の最後のブロックであるか否かを判定する。すなわち、ステップS100においては、画面内の再度のブロックのライン境界であるかが判定される。
ステップS100において、画像の最後のブロックであると判定された場合、デブロッキング処理は終了する。ステップS100において、画像の最後のブロックではないと判定された場合、処理は、ステップS91に戻り、ラスタースキャン順に次のLCUについてそれ以降の処理が繰り返される。
なお、図22の例においては、フィルタ演算部74−1においてライン境界以外の場合の係数を用い、ライン境界フィルタ演算部74−2においてライン境界の場合の係数を用いて、どちらを用いるかが、LCU内ライン判定部77Aにおいて選択される。これにより、ライン境界におけるフィルタ処理とライン境界以外のフィルタ処理を切り替えるようにする例を説明した。
これに対して、用いる係数を1つにして、読み出す画素のアドレスを制御することで、ライン境界におけるフィルタ処理とライン境界以外のフィルタ処理を切り替えるようにすることも可能である。
例えば、R2W2の強フィルタリングにおけるP0の算出を例に説明する。HEVC方式における強フィルタリングの式(50)において、
p(ブロックBKu)にかかる項は、「p2+2*P1+2*q0」となっている。
一方、HEVC方式における強フィルタリングの式(56)においては、
p(ブロックBKu)にかかる項は、「4*P1+q0」となっている。
ここで、 4*P1+q0 = q0 + 2*P1+ 2*P1である。
すなわち、式(50)におけるpにかかる項も、式(56)におけるpにかかる項も、係数は、左から、1、2、2が用いられている。したがって、同じ係数を用いて、その係数の乗算対象の画素値を入れ替える(読み出すアドレスを変更する)だけで、ライン境界におけるフィルタ処理とライン境界以外のフィルタ処理を切り替えるようにすることが可能である。
<14.デブロッキングフィルタ処理部の第7の実施の形態>
[デブロッキングフィルタ処理部の構成例]
図24は、デブロッキングフィルタ処理部の第7の実施の形態の構成を示している。
図24の例において、デブロッキングフィルタ処理部24は、画像メモリ71、ブロック境界判定部72、フィルタ強度判定部73、フィルタ演算部74、係数メモリ76、および制御部77を含むように構成されている。
なお、図24のデブロッキングフィルタ処理部24は、画像メモリ71、係数メモリ76、制御部77は、図22のデブロッキングフィルタ処理部24と共通している。
図24のデブロッキングフィルタ処理部24は、ブロック境界判定部72−1とライン境界ブロック境界判定部72−2とがまとめて、ブロック境界判定部72に入れ替わった点が、図22のデブロッキングフィルタ処理部24と異なっている。図24のデブロッキングフィルタ処理部24は、フィルタ強度判定部73−1とライン境界フィルタ強度判定部73−2とがまとめて、フィルタ強度判定部73に入れ替わった点が、図22のデブロッキングフィルタ処理部24と異なっている。図24のデブロッキングフィルタ処理部24は、フィルタ演算部74−1とライン境界フィルタ演算部74−2とがまとめて、フィルタ演算部74に入れ替わった点が、図22のデブロッキングフィルタ処理部24と異なっている。
さらに、図24のデブロッキングフィルタ処理部24は、制御部77のLCU内ライン判定部77Aが、LCU内ライン判定部77Bと入れ替わった点が、図22のデブロッキングフィルタ処理部24と異なっている。
すなわち、LCU内ライン判定部77Bは、R2W2の強フィルタリングにおけるP0の算出を例に、上述したように、画像メモリ71から読み出される画素のアドレスを制御する。したがって、画像メモリ71は、LCU内ライン判定部77Bによる制御に基づいて、画素を読み出し、読み出した画素を、ブロック境界判定部72、フィルタ強度判定部73、フィルタ演算部74に供給する。
ブロック境界判定部72は、ブロック間の境界判定を行う。すなわち、ブロック境界判定部72は、画像メモリ71から読み出された画像データを用いて上述のブロック間の境界判定処理をブロック毎に行い、フィルタ処理を行うブロック間の境界を検出する。ブロック境界判定部72は、検出結果をフィルタ強度判定部73に出力する。
フィルタ強度判定部73は、上述のようにフィルタ強度の判定を行う。すなわち、フィルタ強度判定部73は、画像メモリ71からの、ブロックの境界を挟んで隣接する2つのブロックの画像データを用いて、ライン毎に、強フィルタリングまたは弱フィルタリングの何れの強度でフィルタ処理を行うか判定して、判定結果をフィルタ演算部74に出力する。
フィルタ演算部74は、画像メモリ71に記憶されている画像データ、および係数メモリ76から読み出したフィルタ係数を用いて、ライン毎に、フィルタ強度判定部73で判定されたフィルタ強度でフィルタ演算を行う。フィルタ演算部74は、フィルタ処理がなされた画像データをフレームメモリ25に出力する。
なお、図24のデブロッキングフィルタ処理部24によるデブロッキングフィルタ処理は、図23を参照して上述したデブロッキングフィルタ処理と基本的に同様の処理であるので、その説明は省略される。
以上のように、フィルタ演算に用いる画像範囲が狭くなったことにより参照できなくなった画素について、ブロックの境界判定における波形の傾きを用いて補間するようにした。これにより、画素値間に傾きがある場合のデブロッキング処理について、LCUのライン境界において画像範囲を狭くしても行えるようになる。
また、フィルタ演算に用いる画像範囲が狭くなったことにより参照できなくなった画素について、ブロックの境界判定、並びに強弱フィルタの判定においては、ブロックの境界判定における波形の傾きとPaddingを用いて補間するようにした。これにより、画素値間に傾きがある場合のデブロッキングの判定処理について、LCUのライン境界において画像範囲を狭くしても、行えるようになる。
以上により、LCUのライン境界においては、画像範囲を狭くしても、デブロッキングの処理の機能を保ちつつ、ラインメモリの削減を実現することが可能である。
<15.デブロッキングフィルタ処理部の第8の実施の形態>
[デブロッキングフィルタ処理部の構成例]
図25は、デブロッキングフィルタ処理部の第8の実施の形態の構成を示している。
図25の例において、デブロッキングフィルタ処理部24は、画像メモリ81、ブロック境界判定部82、フィルタ強度判定部83、フィルタ演算部84、係数メモリ85、および制御部86を含むように構成されている。
画像メモリ81は、図22の画像メモリ71に相当する部であり、ラインメモリで構成されている。画像メモリ81は、加算部23から供給された画像データを記憶する。画像メモリ81は、記憶している画像データを読み出して、ブロック境界判定部82、フィルタ強度判定部83、およびフィルタ演算部84に供給する。
なお、ライン境界ではないところでは、画像メモリ81に画像データは記憶されず、加算部23から供給された画像データが各部に供給されて、それが処理される場合もある。しかしながら、図25の例においては、説明の便宜上、画像メモリ81を経由した画像データが処理されるとして説明する。
ブロック境界判定部82は、制御部86の制御のもと、8ライン毎に、境界を導出し、判定に用いるパラメータを算出したりして、4ライン毎に、ブロック間の境界判定を行う。すなわち、ブロック境界判定部82は、画像メモリ81から読み出された画像データを用いて、TUおよびPUの境界を導出し、BS値を導出する。さらに、ブロック境界判定部82は、処理対象の境界に隣接する2つの領域の量子化パラメータQPの平均を求めて、平均QP(量子化パラメータ)を算出し、算出した平均QPに基づいて、パラメータtcおよびβを算出する。
そして、ブロック境界判定部82は、画像メモリ81からの、ブロックの境界を挟んで隣接する2つのブロックの画像データと、算出したパラメータを用いて、4ライン毎に、フィルタを行うかどうかを判定する。ブロック境界判定部82は、ブロック境界判定部82は、境界判定結果とともに、算出したパラメータを、フィルタ強度判定部83に供給する。
フィルタ強度判定部83は、制御部86の制御のもと、4ライン毎に、フィルタ強度の判定を行う。すなわち、フィルタ強度判定部83は、ブロック境界判定部82によりフィルタを行うと判定された場合、強フィルタリングまたは弱フィルタリングの何れの強度でフィルタ処理を行うか判定して、判定結果をフィルタ演算部84に出力する。
フィルタ演算部84は、制御部86の制御のもと、画像メモリ81に記憶されている画像データ、および係数メモリ85から読み出したフィルタ係数を用いて、4ライン毎に、フィルタ強度判定部83で判定されたフィルタ強度でフィルタ演算を行う。特に、フィルタ強度判定部83により強フィルタを行うと判定された場合、フィルタ演算部84は、上述した式(106)乃至式(111)を用いて、クリップ処理付きの強フィルタ処理を行う。フィルタ演算部84は、フィルタ処理がなされた画像データを後段のフレームメモリ25に出力する。
係数メモリ85は、デブロッキングフィルタ処理のフィルタ演算に用いるフィルタ係数を記憶している。係数メモリ85は、記憶しているフィルタ係数を読み出し、フィルタ演算部84に供給する。
制御部86は、図示せぬ操作部(復号側の場合、可逆復号部52)から情報(デブロッキングフィルタのON/OFF情報、パラメータβ、tcの各オフセット値、およびクリップ処理にかかるパラメータなど)を入力する。また、制御部86には、予測モード情報や量子化パラメータなどデブロッキングフィルタに必要なパラメータも供給される。
例えば、制御部86は、入力される情報を、対応する部に供給したり、入力されるON/OFF情報に基づいて、デブロッキングフィルタ処理部24の各部を制御する。
制御部86は、例えば、画像メモリ81を制御して、ブロック内の下端側の所定ライン数分の画像データを記憶させ、記憶されている画像データの読み出しを行う。また、制御部86は、フィルタ演算部84を制御し、強フィルタを行う場合に、クリップ処理付き強フィルタ処理を行わせる。その際、制御部86は、このクリップ処理にかかるパラメータ(例えば、クリップ値pvやクリップ値におけるtcの倍数値)をフィルタ演算部84に供給する。
[デブロッキングフィルタ処理部の動作]
次に、図26のフローチャートを参照して、図25のデブロッキングフィルタ処理部24のデブロッキング処理について説明する。
例えば、図示せぬ操作部(復号側の場合、可逆復号部52)を介してON/OFF情報、βオフセットの値、およびTcオフセットの値、クリップ処理にかかるパラメータが制御部86に入力される。また、制御部86には、予測モード情報や量子化パラメータなどデブロッキングフィルタに必要なパラメータも供給される。
ステップS201において、制御部86は、フィルタのオフセット(βオフセットおよびTcオフセット)を設定し、設定したオフセットの情報を、フィルタ強度判定部83に供給する。
ステップS202において、制御部86は、ON/OFF情報に基づいて、デブロッキングフィルタが利用不可であるか否かを判定する。ステップS202において、デブロッキングフィルタが利用不可であると判定した場合、デブロッキングフィルタ処理は終了される。
ステップS202において、デブロッキングフィルタが利用不可ではないと判定された場合、制御部86は、ブロック境界判定部82、フィルタ強度判定部83、およびフィルタ演算部84に、その旨を通知し、処理は、ステップS203に進む。その際、各部に必要なパラメータなども制御部86から供給される。
ステップS203において、ブロック境界判定部82は、8ライン単位で、TUとPUの境界を導出する。ステップS204において、ブロック境界判定部82は、ステップS203で導出したTUとPUの境界などの情報や、制御部86からの予測モード情報などを基に、BS(Boundary Strength)値の導出を行う。
ステップS205において、ブロック境界判定部82、フィルタ強度判定部83、およびフィルタ演算部84は、輝度境界のフィルタ処理を行う。この輝度境界のフィルタ処理は、次の図27を参照して後述するが、ステップS205の処理により、輝度信号に対して、輝度境界のフィルタが施される。
ステップS206において、ブロック境界判定部82、フィルタ強度判定部83、およびフィルタ演算部84は、色差境界のフィルタ処理を行う。ステップS206の処理により、色差信号に対して、色差境界のフィルタが施される。
ステップS207において、制御部86は、全部の境界を処理したか否かを判定する。ステップS207において、全部の境界を処理していないと判定された場合、処理は、ステップS205に戻り、それ以降の処理が繰り返される。ステップS207において、全部の境界を処理したと判定された場合、処理は、ステップS208に進む。
ステップS208において、制御部86は、全部のCUを処理したか否かを判定する。ステップS208において、まだ全部のCUを処理していないと判定された場合、処理は、ステップS203に戻り、それ以降の処理が繰り返される。
ステップS208において、全部のCUを処理したと判定された場合、デブロッキングフィルタ処理は終了される。
[輝度境界のフィルタ処理の例]
次に、図27のフローチャートを参照して、図26のステップS205における輝度境界のフィルタ処理について説明する。
ブロック境界判定部82は、ステップS231において、8ライン単位で、BS値が0より大きいか否かを判定する。ステップS231において、BS値が0より大きくはないと判定された場合、輝度境界のフィルタ処理は終了する。すなわち、この場合の輝度境界には、フィルタ演算部84によるフィルタ処理は施されず、フィルタ前の画素値がそのまま出力される。
ステップS231において、BS値が0より大きいと判定された場合、処理は、ステップS232に進む。ステップS232において、ブロック境界判定部82は、8ライン単位で、画像メモリ81からの画素値を用いて、処理対象の境界に隣接する2つの領域の量子化パラメータQPの平均を求めて、平均QP(量子化パラメータ)を算出する。このときの量子化パラメータQPは、制御部86から供給される。
ステップS233において、ブロック境界判定部82は、8ライン単位で、ステップS232により算出された平均QPに基づいて、パラメータtcおよびβを算出する。
ステップS234において、ブロック境界判定部82は、4ライン単位のフィルタのon/off判定を行う。すなわち、ブロック境界判定部82は、算出したパラメータβなどを用いて、4ライン単位のフィルタのon/off判定を行う。この判定処理には、例えば、例えば、上述した式(68)が用いられる。
ステップS234におけるon/off判定結果は、境界判定結果として、算出したパラメータと一緒に、フィルタ強度判定部83に供給される。
また、ステップS235において、フィルタ強度判定部83は、4ライン単位のフィルタ強度判定を行う。すなわち、フィルタ強度判定部83は、ブロック境界判定部82により算出されたパラメータβやパラメータtcなどを用いて、4ライン単位のフィルタ強度判定を行う。この判定処理には、例えば、上述した式(69)や式(61)乃至式(63)における第1式目が用いられる。
ステップS234におけるon/off判定結果およびステップS235におけるフィルタ強度判定結果は、フィルタ演算部84に供給される。なお、このとき、パラメータtcもフィルタ演算部84に供給される。
ステップS236において、フィルタ演算部84は、フィルタ強度判定部83からの判定結果に基づいて、処理対象の4ラインに対して、強フィルタを適用するか否かを判定する。ステップS236において、処理対象の4ラインに対して、強フィルタを適用すると判定された場合、処理は、ステップS237に進む。
ステップS237において、フィルタ演算部84は、制御部86による制御のもと、上述した式(106)乃至式(111)を用いて、クリップ処理付き強フィルタ処理を行う。フィルタ演算部84は、フィルタ処理後の画素値を、後段に出力する。
ステップS236において、強フィルタを適用しないと判定された場合、ステップS238において、フィルタ演算部84は、フィルタ強度判定部83からの判定結果に基づいて、処理対象の4ラインに対して、弱フィルタを適用するか否かを判定する。ステップS238において、弱フィルタを適用すると判定された場合、処理は、ステップ239に進む。
ステップS239において、フィルタ演算部84は、弱フィルタ処理を行う。フィルタ演算部84は、フィルタ処理後の画素値を、後段に出力する。
ステップS238において、弱フィルタを適用しないと判定された場合、処理は、ステップ240に進む。ステップS240において、フィルタ演算部84は、フィルタ強度判定部83からの判定結果に基づいて、処理対象の4ラインに対して、処理を施さず、そのまま、フィルタ処理後の画素値を、後段に出力する。
ステップS240において、フィルタ演算部84は、8ラインの処理が完了したか否かを判定し、8ラインの処理が完了したと判定した場合、輝度信号のデブロッキングを終了する。ステップS240において、8ラインの処理がまだ完了していないと判定された場合、処理は、ステップS234に戻り、それ以降の処理が繰り返される。
以上のように、強フィルタを適用すると判定された場合に、クリップ処理付きの強フィルタリングを行うようにしたので、判定処理のミスマッチ及び判定処理の不完全さの影響を最小限に抑えることができる。これにより、デブロッキング処理において、適切にフィルタリングがかかるようにすることができる。
なお、上記説明においては、線形近似およびクリップ処理付き強フィルタリングについて説明した。そして、線形近似の説明においては、例として、R2W2およびR2W1の場合について説明したが、R3W2、R1W1の場合も同様の方法で線形近似の処理を行うことが可能である。
<16.第9の実施の形態>
[R3W2の例]
次に、図28を参照して、R3W2の例の場合について説明する。図28の例においては、実線上の白丸がデブロックフィルタ前の、図16に示された境界BB付近のp2,p1,p0,q0,q1,q2の各画素値を表している。図28に示されるように、ブロックBKuとブロックBKlの段差(ギャップ)は、D=p0−q0である。
また、点線上の丸は、HEVC方式における輝度信号の強フィルタリング後の各画素値を表している。すなわち、この場合、フィルタ前の画素値と強フィルタリング後の画素値の差は、q2について、1/8*Dであり、q1について、2/8*Dであり、q0について、3/8*Dである。同様に、フィルタ前の画素値と強フィルタリング後の画素値の差は、p0について、3/8*Dであり、p1について、p2について、2/8*Dであり、1/8*Dである。
ここで、R3W2の場合の輝度信号のフィルタ処理を考えると、p2についてはフィルタリングが行われない。すなわち、p2は、実線上にある点線丸の画素値となり、p1の点線で示される画素値との差が大きくなり、実線上にある点線丸で示されるp2の画素値と、点線で示されるp1の画素値との間のみ、急な傾きを有することとなる。
そこで、R3W2の場合には、この傾きが緩やかになるように、p0のフィルタ前の画素値(白丸)と、強フィルタリング後の画素値(ハッチング丸)との差Δp1は、次の式(112)で表わされる。
Figure 0006468381
すなわち、この式(112)は、Δp1が、p0のフィルタ前の画素値(白丸)と、強フィルタリング後の画素値(ハッチング丸)の差Δp0の半分の値である3/16*D)をとるように導かれていたものである。
そして、式(112)の最後の近似式における右辺の第2項目が、フィルタ前の画素値(白丸)であるので、式(112)の最後の近似式における右辺の第1項目は、ハッチング丸で示されるp1の強フィルタリング後の画素値を表していることになる。
すなわち、式(112)の最後の近似式における右辺の第1項目の各画素値に乗算されている係数を、R3W2の場合の強フィルタリングの係数として用いる。これにより、R3W2の場合の強フィルタリング後の結果を、図28の太線の傾きに示されるように、従来の点線の傾きと比してなだらかにすることができる。
なお、R3W2の場合の強フィルタリングの判定式は、次の式(113)で表わされる。
Figure 0006468381
R3W2の場合の強フィルタリング判定の式(113)の1つ目の「and」以降の式が、HEVC方式における強フィルタリング判定の式(69)の1つ目の「and」以降の式と異なっている。R3W2であるので、p3が参照できないため、Padding(すなわち、p3=p2)が適用される。
したがって、式(113)の1つ目の「and」以降の式は、式(69)の1つ目の「and」以降の式「(|p3−p0<<1|+|q0−q3|)」<(β>>3))」が、「(|p2−p0<<1|+|q0−q3|)」<(β>>3))」に入れ替わっているところだけが異なっている。
また、R3W2の場合の強フィルタリングについては、上述した式(112)より、p1に係る式が、式(114)に示されるように、HEVC方式における強フィルタリングの式(52)と異なっている。
Figure 0006468381
なお、R3W2の場合の強フィルタリングについては、HEVC方式における強フィルタリングのP20に係る式(54)は、必要ないので除かれている。
以上により、R3W2の場合の強フィルタリングについても、精度を劣化させないように行うことができる。
また、本明細書において、デブロックフィルタの処理単位のサイズは、例えば、H.264/AVCのマクロブロックのサイズやHEVCにおける符号化単位の符号化ツリーブロック(Coding Tree Block)のサイズ等であってもよい。また、本明細書において、ブロック又はマクロブロックとの用語は、HEVCの文脈における符号化単位(CU:Coding Unit)、予測単位(PU:Prediction Unit)、変換単位(TU:Transform Unit)をも含むものとする。
明細書中において説明した一連の処理はハードウェア、またはソフトウェア、または両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させる。または、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることも可能である。
例えば、プログラムは記録媒体としてのハードディスクやROM(Read Only Memory) に予め記録しておくことができる。または、プログラムはフレキシブルディスク、CD−ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的または永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウェアとして提供することができる。
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送する。コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
<19.第10の実施の形態>
[多視画像点符号化・多視点画像復号への適用]
上述した一連の処理は、多視点画像符号化・多視点画像復号に適用することができる。図29は、多視点画像符号化方式の一例を示す。
図29に示されるように、多視点画像は、複数の視点の画像を含み、その複数の視点のうちの所定の1つの視点の画像が、ベースビューの画像に指定されている。ベースビューの画像以外の各視点の画像は、ノンベースビューの画像として扱われる。
図29のような多視点画像符号化を行う場合、各ビュー(同一ビュー)において、強フィルタリングのクリップ処理にかかるパラメータ(例えば、クリップ値やクリップ値におけるtcにかかる倍数など)を設定することができる。また、各ビュー(異なるビュー)において、他のビューで設定された強フィルタリングのクリップ処理にかかるパラメータを共有することもできる。
この場合、ベースビューにおいて設定されたクリップ処理にかかるパラメータが、少なくとも1つのノンベースビューで用いられる。あるいは、例えば、ノンベースビュー(view_id=0)において設定されたクリップ処理にかかるパラメータが、ベースビューおよびノンベースビュー(view_id=1)の少なくともどちらか一方で用いられる。
さらに、各ビュー(同一ビュー)において、強フィルタリングのクリップ処理にかかるパラメータを設定することもできる。また、各ビュー(異なるビュー)において、他のビューで設定された強フィルタリングのクリップ処理にかかるパラメータを共有することもできる。
この場合、ベースビューにおいて設定されたクリップ処理にかかるパラメータが、少なくとも1つのノンベースビューで用いられる。あるいは、例えば、ノンベースビュー(view_id=0)において設定されたクリップ処理にかかるパラメータが、ベースビューおよびノンベースビュー(view_id=1)の少なくともどちらか一方で用いられる。
これにより、デブロッキング処理において、適切にフィルタリングがかかるようにすることができる。
[多視点画像符号化装置]
図30は、上述した多視点画像符号化を行う多視点画像符号化装置を示す図である。図30に示されるように、多視点画像符号化装置600は、符号化部601、符号化部602、および多重化部603を有する。
符号化部601は、ベースビュー画像を符号化し、ベースビュー画像符号化ストリームを生成する。符号化部602は、ノンベースビュー画像を符号化し、ノンベースビュー画像符号化ストリームを生成する。多重化部603は、符号化部601において生成されたベースビュー画像符号化ストリームと、符号化部602において生成されたノンベースビュー画像符号化ストリームとを多重化し、多視点画像符号化ストリームを生成する。
この多視点画像符号化装置600の符号化部601および符号化部602に対して、画像符号化装置10(図1)を適用することができる。この場合、多視点画像符号化装置600は、符号化部601が設定した強フィルタリングのクリップ処理にかかるパラメータと、符号化部602が設定した強フィルタリングのクリップ処理にかかるパラメータとを設定して伝送させる。
なお、上述したように符号化部601が設定した強フィルタリングのクリップ処理にかかるパラメータを、符号化部601および符号化部602で共有して用いるように設定して伝送させるようにしてもよい。逆に、符号化部602が設定した強フィルタリングのクリップ処理にかかるパラメータを、符号化部601および符号化部602で共有して用いるように設定して伝送させるようにしてもよい。
[多視点画像復号装置]
図31は、上述した多視点画像復号を行う多視点画像復号装置を示す図である。図31に示されるように、多視点画像復号装置610は、逆多重化部611、復号部612、および復号部613を有する。
逆多重化部611は、ベースビュー画像符号化ストリームとノンベースビュー画像符号化ストリームとが多重化された多視点画像符号化ストリームを逆多重化し、ベースビュー画像符号化ストリームと、ノンベースビュー画像符号化ストリームとを抽出する。復号部612は、逆多重化部611により抽出されたベースビュー画像符号化ストリームを復号し、ベースビュー画像を得る。復号部613は、逆多重化部611により抽出されたノンベースビュー画像符号化ストリームを復号し、ノンベースビュー画像を得る。
この多視点画像復号装置610の復号部612および復号部613に対して、画像復号装置50(図6)を適用することができる。この場合、多視点画像復号装置610は、符号化部601が設定し、復号部612が復号した強フィルタリングのクリップ処理にかかるパラメータと、符号化部602が設定し、復号部613が復号した強フィルタリングのクリップ処理にかかるパラメータを用いて処理を行う。
なお、上述したように符号化部601(または、符号化部602)が設定した強フィルタリングのクリップ処理にかかるパラメータを、符号化部601および符号化部602で共有して用いるように設定して伝送されている場合がある。この場合、多視点画像復号装置610においては、符号化部601(または、符号化部602)が設定し、復号部612(または復号部613)が復号した強フィルタリングのクリップ処理にかかるパラメータを用いて処理が行われる。
<18.第11の実施の形態>
[階層画像点符号化・階層画像復号への適用]
上述した一連の処理は、階層画像符号化・階層画像復号に適用することができる。図32は、多視点画像符号化方式の一例を示す。
図32に示されるように、階層画像は、複数の階層(解像度)の画像を含み、その複数の解像度のうちの所定の1つの階層の画像が、ベースレイヤの画像に指定されている。ベースレイヤの画像以外の各階層の画像は、ノンベースレイヤの画像として扱われる。
図32のような階層画像符号化(空間スケーラビリティ)を行う場合、各レイヤ(同一レイヤ)において、強フィルタリングのクリップ処理にかかるパラメータを設定することができる。また、各レイヤ(異なるレイヤ)において、他のレイヤで設定された強フィルタリングのクリップ処理にかかるパラメータを共有することができる。
この場合、ベースレイヤにおいて設定された強フィルタリングのクリップ処理にかかるパラメータが、少なくとも1つのノンベースレイヤで用いられる。あるいは、例えば、ノンベースレイヤ(layer _id=0)において設定された強フィルタリングのクリップ処理にかかるパラメータが、ベースレイヤおよびノンベースレイヤ(layer_id=1)の少なくともどちらか一方で用いられる。
さらに、各レイヤ(同一レイヤ)において、強フィルタリングのクリップ処理にかかるパラメータを設定することもできる。また、各レイヤ(異なるレイヤ)において、他のビューで設定された強フィルタリングのクリップ処理にかかるパラメータを共有することもできる。
この場合、ベースレイヤにおいて設定された強フィルタリングのクリップ処理にかかるパラメータが、少なくとも1つのノンベースレイヤで用いられる。あるいは、例えば、ノンベースレイヤ(layer _id=0)において設定された強フィルタリングのクリップ処理にかかるパラメータが、ベースレイヤおよびノンベースレイヤ(layer_id=1)の少なくともどちらか一方で用いられる。
これにより、デブロッキング処理において、適切にフィルタリングがかかるようにすることができる。
[階層画像符号化装置]
図33は、上述した階層画像符号化を行う階層画像符号化装置を示す図である。図33に示されるように、階層画像符号化装置620は、符号化部621、符号化部622、および多重化部623を有する。
符号化部621は、ベースレイヤ画像を符号化し、ベースレイヤ画像符号化ストリームを生成する。符号化部622は、ノンベースレイヤ画像を符号化し、ノンベースレイヤ画像符号化ストリームを生成する。多重化部623は、符号化部621において生成されたベースレイヤ画像符号化ストリームと、符号化部622において生成されたノンベースレイヤ画像符号化ストリームとを多重化し、階層画像符号化ストリームを生成する。
この階層画像符号化装置620の符号化部621および符号化部622に対して、画像符号化装置10(図1)を適用することができる。この場合、階層画像符号化装置620は、符号化部621が設定した強フィルタリングのクリップ処理にかかるパラメータと、符号化部602が設定した強フィルタリングのクリップ処理にかかるパラメータとを設定して伝送させる。
なお、上述したように符号化部621が設定した強フィルタリングのクリップ処理にかかるパラメータを、符号化部621および符号化部622で共有して用いるように設定して伝送させるようにしてもよい。逆に、符号化部622が設定した強フィルタリングのクリップ処理にかかるパラメータを、符号化部621および符号化部622で共有して用いるように設定して伝送させるようにしてもよい。
[階層画像復号装置]
図34は、上述した階層画像復号を行う階層画像復号装置を示す図である。図34に示されるように、階層画像復号装置630は、逆多重化部631、復号部632、および復号部633を有する。
逆多重化部631は、ベースレイヤ画像符号化ストリームとノンベースレイヤ画像符号化ストリームとが多重化された階層画像符号化ストリームを逆多重化し、ベースレイヤ画像符号化ストリームと、ノンベースレイヤ画像符号化ストリームとを抽出する。復号部632は、逆多重化部631により抽出されたベースレイヤ画像符号化ストリームを復号し、ベースレイヤ画像を得る。復号部633は、逆多重化部631により抽出されたノンベースレイヤ画像符号化ストリームを復号し、ノンベースレイヤ画像を得る。
この階層画像復号装置630の復号部632および復号部633に対して、画像復号装置50(図6)を適用することができる。この場合、階層画像復号装置630は、符号化部621が設定し、復号部632が復号した強フィルタリングのクリップ処理にかかるパラメータと、符号化部622が設定し、復号部633が復号した強フィルタリングのクリップ処理にかかるパラメータを用いて処理を行う。
なお、上述したように符号化部621(または、符号化部622)が設定した強フィルタリングのクリップ処理にかかるパラメータを、符号化部621および符号化部622で共有して用いるように設定して伝送されている場合がある。この場合、階層画像復号装置630においては、符号化部621(または、符号化部622)が設定し、復号部632(または、復号部633)が復号した強フィルタリングのクリップ処理にかかるパラメータを用いて処理が行われる。
<19.応用例>
上述した実施形態に係る画像符号化装置10および画像復号装置50は、衛星放送、ケーブルTVなどの有線放送、インターネット上での配信、およびセルラー通信による端末への配信などにおける送信機若しくは受信機、光ディスク、磁気ディスクおよびフラッシュメモリなどの媒体に画像を記録する記録装置、または、これら記憶媒体から画像を再生する再生装置などの様々な電子機器に応用され得る。以下、4つの応用例について説明する。
[第1の応用例]
図35は、上述した実施形態を適用したテレビジョン装置の概略的な構成の一例を示している。テレビジョン装置900は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース部909を有している。さらに、テレビジョン装置900は、制御部910、ユーザインタフェース部911等を有している。
チューナ902は、アンテナ901を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ902は、復調により得られた符号化ビットストリームをデマルチプレクサ903へ出力する。すなわち、チューナ902は、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送手段としての役割を有する。
デマルチプレクサ903は、符号化ビットストリームから視聴対象の番組の映像ストリームおよび音声ストリームを分離し、分離した各ストリームをデコーダ904へ出力する。また、デマルチプレクサ903は、符号化ビットストリームからEPG(Electronic Program Guide)などの補助的なデータを抽出し、抽出したデータを制御部910に供給する。なお、デマルチプレクサ903は、符号化ビットストリームがスクランブルされている場合には、デスクランブルを行ってもよい。
デコーダ904は、デマルチプレクサ903から入力される映像ストリームおよび音声ストリームを復号する。そして、デコーダ904は、復号処理により生成される映像データを映像信号処理部905へ出力する。また、デコーダ904は、復号処理により生成される音声データを音声信号処理部907へ出力する。
映像信号処理部905は、デコーダ904から入力される映像データを再生し、表示部906に映像を表示させる。また、映像信号処理部905は、ネットワークを介して供給されるアプリケーション画面を表示部906に表示させてもよい。また、映像信号処理部905は、映像データについて、設定に応じて、例えばノイズ除去などの追加的な処理を行ってもよい。さらに、映像信号処理部905は、例えばメニュー、ボタンまたはカーソルなどのGUI(Graphical User Interface)の画像を生成し、生成した画像を出力画像に重畳してもよい。
表示部906は、映像信号処理部905から供給される駆動信号により駆動され、表示デバイス(例えば、液晶ディスプレイ、プラズマディスプレイまたはOLEDなど)の映像面上に映像または画像を表示する。
音声信号処理部907は、デコーダ904から入力される音声データについてD/A変換および増幅などの再生処理を行い、スピーカ908から音声を出力させる。また、音声信号処理部907は、音声データについてノイズ除去などの追加的な処理を行ってもよい。外部インタフェース部909は、テレビジョン装置900と外部機器またはネットワークとを接続するためのインタフェースである。例えば、外部インタフェース部909を介して受信される映像ストリームまたは音声ストリームが、デコーダ904により復号されてもよい。すなわち、外部インタフェース部909もまた、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送手段としての役割を有する。
制御部910は、CPU(Central Processing Unit)などのプロセッサ、並びにRAM(Random Access Memory)およびROM(Read Only Memory)などのメモリを有する。メモリは、CPUにより実行されるプログラム、プログラムデータ、EPGデータ、およびネットワークを介して取得されるデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、テレビジョン装置900の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース部911から入力される操作信号に応じて、テレビジョン装置900の動作を制御する。
ユーザインタフェース部911は、制御部910と接続される。ユーザインタフェース部911は、例えば、ユーザがテレビジョン装置900を操作するためのボタンおよびスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース部911は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部910へ出力する。
バス912は、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、音声信号処理部907、外部インタフェース部909および制御部910を相互に接続する。
このように構成されたテレビジョン装置900において、デコーダ904は、上述した実施形態に係る画像復号装置50の機能を有する。それにより、テレビジョン装置900での画像の復号に際して、デブロッキングフィルタ処理において、適切にフィルタリングをかけることができる。
[第2の応用例]
図36は、上述した実施形態を適用した携帯電話機の概略的な構成の一例を示している。携帯電話機920は、アンテナ921、通信部922、音声コーデック923、スピーカ924、マイクロホン925、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、制御部931、操作部932、およびバス933を備える。
アンテナ921は、通信部922に接続される。スピーカ924およびマイクロホン925は、音声コーデック923に接続される。操作部932は、制御部931に接続される。バス933は、通信部922、音声コーデック923、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、および制御部931を相 互に接続する。
携帯電話機920は、音声通話モード、データ通信モード、撮影モードおよびテレビ電話モードを含む様々な動作モードで、音声信号の送受信、電子メールまたは画像データの送受信、画像の撮像、およびデータの記録などの動作を行う。
音声通話モードにおいて、マイクロホン925により生成されるアナログ音声信号は、音声コーデック923に供給される。音声コーデック923は、アナログ音声信号を音声データへ変換し、変換された音声データをA/D変換し圧縮する。そして、音声コーデック923は、圧縮後の音声データを通信部922へ出力する。通信部922は、音声データを符号化および変調し、送信信号を生成する。そして、通信部922は、生成した送信信号をアンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅しおよび周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調および復号して音声データを生成し、生成した音声データを音声コーデック923へ出力する。音声コーデック923は、音声データを伸張しおよびD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
また、データ通信モードにおいて、例えば、制御部931は、操作部932を介するユーザによる操作に応じて、電子メールを構成する文字データを生成する。また、制御部931は、文字を表示部930に表示させる。また、制御部931は、操作部932を介するユーザからの送信指示に応じて電子メールデータを生成し、生成した電子メールデータを通信部922へ出力する。通信部922は、電子メールデータを符号化および変調し、送信信号を生成する。そして、通信部922は、生成した送信信号をアンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅しおよび周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調および復号して電子メールデータを復元し、復元した電子メールデータを制御部931へ出力する。制御部931は、表示部930に電子メールの内容を表示させると共に、電子メールデータを記録再生部929の記憶媒体に記憶させる。
記録再生部929は、読み書き可能な任意の記憶媒体を有する。例えば、記憶媒体は、RAMまたはフラッシュメモリなどの内蔵型の記憶媒体であってもよく、ハードディスク、磁気ディスク、光磁気ディスク、光ディスク、USBメモリ、またはメモリカードなどの外部装着型の記憶媒体であってもよい。
また、撮影モードにおいて、例えば、カメラ部926は、被写体を撮像して画像データを生成し、生成した画像データを画像処理部927へ出力する。画像処理部927は、カメラ部926から入力される画像データを符号化し、符号化ストリームを記録再生部929の記憶媒体に記憶させる。
また、テレビ電話モードにおいて、例えば、多重分離部928は、画像処理部927により符号化された映像ストリームと、音声コーデック923から入力される音声ストリームとを多重化し、多重化したストリームを通信部922へ出力する。通信部922は、ストリームを符号化および変調し、送信信号を生成する。そして、通信部922は、生成した送信信号をアンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅しおよび周波数変換し、受信信号を取得する。これら送信信号および受信信号には、符号化ビットストリームが含まれ得る。そして、通信部922は、受信信号を復調および復号してストリームを復元し、復元したストリームを多重分離部928へ出力する。多重分離部928は、入力されるストリームから映像ストリームおよび音声ストリームを分離し、映像ストリームを画像処理部927、音声ストリームを音声コーデック923へ出力する。画像処理部927は、映像ストリームを復号し、映像データを生成する。映像データは、表示部930に供給され、表示部930により一連の画像が表示される。音声コーデック923は、音声ストリームを伸張しおよびD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
このように構成された携帯電話機920において、画像処理部927は、上述した実施形態に係る画像符号化装置10および画像復号装置50の機能を有する。それにより、携帯電話機920での画像の符号化および復号に際して、デブロッキングフィルタ処理において、適切にフィルタリングをかけることができる。
[第3の応用例]
図37は、上述した実施形態を適用した記録再生装置の概略的な構成の一例を示している。記録再生装置940は、例えば、受信した放送番組の音声データおよび映像データを符号化して記録媒体に記録する。また、記録再生装置940は、例えば、他の装置から取得される音声データおよび映像データを符号化して記録媒体に記録してもよい。また、記録再生装置940は、例えば、ユーザの指示に応じて、記録媒体に記録されているデータをモニタおよびスピーカ上で再生する。このとき、記録再生装置940は、音声データおよび映像データを復号する。
記録再生装置940は、チューナ941、外部インタフェース部942、エンコーダ943、HDD(Hard Disk Drive)944、ディスクドライブ945、セレクタ946、デコーダ947、OSD(On-Screen Display)部948、制御部949、およびユーザインタフェース部950を備える。
チューナ941は、アンテナ(図示せず)を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ941は、復調により得られた符号化ビットストリームをセレクタ946へ出力する。すなわち、チューナ941は、記録再生装置940における伝送手段としての役割を有する。
外部インタフェース部942は、記録再生装置940と外部機器またはネットワークとを接続するためのインタフェースである。外部インタフェース部942は、例えば、IEEE1394インタフェース、ネットワークインタフェース、USBインタフェース、またはフラッシュメモリインタフェースなどであってよい。例えば、外部インタフェース部942を介して受信される映像データおよび音声データは、エンコーダ943へ入力される。すなわち、外部インタフェース部942は、記録再生装置940における伝送手段としての役割を有する。
エンコーダ943は、外部インタフェース部942から入力される映像データおよび音声データが符号化されていない場合に、映像データおよび音声データを符号化する。そして、エンコーダ943は、符号化ビットストリームをセレクタ946へ出力する。
HDD944は、映像および音声などのコンテンツデータが圧縮された符号化ビットストリーム、各種プログラムおよびその他のデータを内部のハードディスクに記録する。また、HDD944は、映像および音声の再生時に、これらデータをハードディスクから読み出す。
ディスクドライブ945は、装着されている記録媒体へのデータの記録および読み出しを行う。ディスクドライブ945に装着される記録媒体は、例えばDVDディスク(DVD−Video、DVD−RAM、DVD−R、DVD−RW、DVD+R、DVD+R W等)またはBlu−ray(登録商標)ディスクなどであってよい。セレクタ946は、映像および音声の記録時には、チューナ941またはエンコーダ943から入力される符号化ビットストリームを選択し、選択した符号化ビットストリームをHDD944またはディスクドライブ945へ出力する。また、セレクタ946は、映像および音声の再生時には、HDD944またはディスクドライブ945から入力される符号化ビットストリームをデコーダ947へ出力する。
デコーダ947は、符号化ビットストリームを復号し、映像データおよび音声データを生成する。そして、デコーダ947は、生成した映像データをOSD部948へ出力する。また、デコーダ904は、生成した音声データを外部のスピーカへ出力する。OSD部948は、デコーダ947から入力される映像データを再生し、映像を表示する。また、OSD部948は、表示する映像に、例えばメニュー、ボタンまたはカーソルなどのGUIの画像を重畳してもよい。
制御部949は、CPUなどのプロセッサ、並びにRAMおよびROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、およびプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、記録再生装置940の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース部950から入力される操作信号に応じて、記録再生装置940の動作を制御する。
ユーザインタフェース部950は、制御部949と接続される。ユーザインタフェース部950は、例えば、ユーザが記録再生装置940を操作するためのボタンおよびスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース部950は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部949へ出力する。
このように構成された記録再生装置940において、エンコーダ943は、上述した実施形態に係る画像符号化装置10の機能を有する。また、デコーダ947は、上述した実施形態に係る画像復号装置50の機能を有する。それにより、記録再生装置940での画像の符号化および復号に際して、デブロッキングフィルタ処理において、適切にフィルタリングをかけることができる。
[第4の応用例]
図38は、上述した実施形態を適用した撮像装置の概略的な構成の一例を示している。撮像装置960は、被写体を撮像して画像を生成し、画像データを符号化して記録媒体に記録する。
撮像装置960は、光学ブロック961、撮像部962、カメラ信号処理部963、画像処理部964、表示部965、外部インタフェース部966、メモリ967、メディアドライブ968、OSD部969、制御部970、ユーザインタフェース部971、およびバス972を備える。
光学ブロック961は、フォーカスレンズおよび絞り機構などを有する。光学ブロック961は、被写体の光学像を撮像部962の撮像面に結像させる。撮像部962は、CCDまたはCMOSなどのイメージセンサを有し、撮像面に結像した光学像を光電変換によって電気信号としての画像信号に変換する。そして、撮像部962は、画像信号をカメラ信号処理部963へ出力する。
カメラ信号処理部963は、撮像部962から入力される画像信号に対してニー補正、ガンマ補正、色補正などの種々のカメラ信号処理を行う。カメラ信号処理部963は、カメラ信号処理後の画像データを画像処理部964へ出力する。
画像処理部964は、カメラ信号処理部963から入力される画像データを符号化し、符号化データを生成する。そして、画像処理部964は、生成した符号化データを外部インタフェース部966またはメディアドライブ968へ出力する。また、画像処理部964は、外部インタフェース部966またはメディアドライブ968から入力される符号化データを復号し、画像データを生成する。そして、画像処理部964は、生成した画像データを表示部965へ出力する。また、画像処理部964は、カメラ信号処理部963から入力される画像データを表示部965へ出力して画像を表示させてもよい。また、画像処理部964は、OSD部969から取得される表示用データを、表示部965へ出力する画像に重畳してもよい。
OSD部969は、例えばメニュー、ボタンまたはカーソルなどのGUIの画像を生成して、生成した画像を画像処理部964へ出力する。
外部インタフェース部966は、例えばUSB入出力端子として構成される。外部インタフェース部966は、例えば、画像の印刷時に、撮像装置960とプリンタとを接続する。また、外部インタフェース部966には、必要に応じてドライブが接続される。ドライブには、例えば、磁気ディスクまたは光ディスクなどのリムーバブルメディアが装着され、リムーバブルメディアから読み出されるプログラムが、撮像装置960にインストールされ得る。さらに、外部インタフェース部966は、LANまたはインターネットなどのネットワークに接続されるネットワークインタフェースとして構成されてもよい。すなわち、外部インタフェース部966は、撮像装置960における伝送手段としての役割を有する。
メディアドライブ968に装着される記録媒体は、例えば、磁気ディスク、光磁気ディスク、光ディスク、または半導体メモリなどの、読み書き可能な任意のリムーバブルメディアであってよい。また、メディアドライブ968に記録媒体が固定的に装着され、例えば、内蔵型ハードディスクドライブまたはSSD(Solid State Drive)のような非可搬性の記憶部が構成されてもよい。
制御部970は、CPUなどのプロセッサ、並びにRAMおよびROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、およびプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、撮像装置960の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース部971から入力される操作信号に応じて、撮像装置960の動作を制御する。
ユーザインタフェース部971は、制御部970と接続される。ユーザインタフェース部971は、例えば、ユーザが撮像装置960を操作するためのボタンおよびスイッチなどを有する。ユーザインタフェース部971は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部970へ出力する。
バス972は、画像処理部964、外部インタフェース部966、メモリ967、メディアドライブ968、OSD部969、および制御部970を相互に接続する。
このように構成された撮像装置960において、画像処理部964は、上述した実施形態に係る画像符号化装置10および画像復号装置50の機能を有する。それにより、撮像装置960での画像の符号化および復号に際して、デブロッキングフィルタ処理において、適切にフィルタリングをかけることができる。
なお、本明細書では、強フィルタリングのクリップ処理にかかるパラメータ等の各種情報が、符号化ストリームに多重化されて、符号化側から復号側へ伝送される例について説明した。しかしながら、これら情報を伝送する手法はかかる例に限定されない。例えば、これら情報は、符号化ビットストリームに多重化されることなく、符号化ビットストリームと関連付けられた別個のデータとして伝送され又は記録されてもよい。ここで、「関連付ける」という用語は、ビットストリームに含まれる画像(スライス若しくはブロックなど、画像の一部であってもよい)と当該画像に対応する情報とを復号時にリンクさせ得るようにすることを意味する。即ち、情報は、画像(又はビットストリーム)とは別の伝送路上で伝送されてもよい。また、情報は、画像(又はビットストリーム)とは別の記録媒体(又は同一の記録媒体の別の記録エリア)に記録されてもよい。さらに、情報と画像(又はビットストリーム)とは、例えば、複数フレーム、1フレーム、又はフレーム内の一部分などの任意の単位で互いに関連付けられてよい。
さらに、本技術は、上述した実施形態に限定して解釈されるべきではない。この実施形態は、例示という形態で本技術を開示しており、本技術の要旨を逸脱しない範囲で当業者が実施形態の修正や代用をなし得ることは自明である。すなわち、本技術の要旨を判断するためには、請求の範囲を参酌すべきである。
10・・・画像符号化装置、11・・・A/D変換部、12,57・・・画面並べ替えバッファ、13・・・減算部、14・・・直交変換部、15・・・量子化部、16・・・可逆符号化部、17・・・蓄積バッファ、18・・・レート制御部、21,53・・・逆量子化部、22、54・・・逆直交変換部、23,55・・・加算部、24,56・・・デブロッキングフィルタ処理部、25,61・・・フレームメモリ、26,62,65・・・セレクタ、31,63・・・イントラ予測部、32・・・動き予測・補償部、33・・・予測画像・最適モード選択部、50・・・画像復号装置、51・・・蓄積バッファ、52・・・可逆復号部、61・・・フレームメモリ、64・・・動き補償部、71・・・画像メモリ、72,72−1・・・ブロック境界判定部、72−2・・・ライン境界ブロック境界判定部、73,73−1・・・フィルタ強度判定部、73−2・・・ライン境界フィルタ強度判定部、74,74−1・・・フィルタ演算部、74−2・・・ライン境界フィルタ演算部、75・・・セレクタ、76・・・係数メモリ、77・・・制御部、77A,77B・・・LCU内ライン判定部、241・・・ラインメモリ、242・・・ライン境界検出部、243・・・フィルタ強度判定部、244・・・係数メモリ、245・・・フィルタ演算部、246・・・フィルタ制御部、2451・・・データ記憶部、2452・・・データ選択部、2453,2455,2456・・・演算部、2457・・・データ選択部、2461・・・ライン境界判定部

Claims (26)

  1. 符号化処理する際にローカル復号処理されたローカル復号画像のブロック境界の近傍に位置する画素に対して第1フィルタよりもフィルタ強度の強い第2フィルタがデブロッキングフィルタとして適用される場合に、前記第1フィルタが適用される前の画素値に対する前記第1フィルタが適用された後の画素値の変化値をクリップする際に用いる第1クリップ値よりも大きい値である第2クリップ値を用いて、前記第2フィルタが適用される前の画素値に対する前記第2フィルタが適用された後の画素値の変化値をクリップする制御部
    を備える画像処理装置。
  2. 前記制御部は、前記第2フィルタが適用される場合に、次の式に示されるように、前記第2フィルタが適用される前の画素値に対する前記第2フィルタが適用された後の画素値の変化値をクリップする

    p0’ = p0 + Clip(-pv)-(pv)((p2 + 2*p1 - 6*p0 +2*q0 + q1 + 4)>>3);
    = Clip(p0 -pv)-(p0 +pv)((p2 + 2*p1 + 2*p0 +2*q0 + q1 + 4)>>3);
    = Clip3(p0-pv, p0+pv, (p2 + 2*p1 + 2*p0 +2*q0 + q1 + 4)>>3);

    p1’ = p1 + Clip(-pv)-(pv)((p2 - 3*p1 + p0 + q0 +2)>>2);
    = Clip(p1 -pv)-(p1 +pv)((p2 + p1 + p0 + q0 +2)>>2);
    = Clip3(p1-pv, p1+pv, (p2 + p1 + p0 + q0 +2)>>2);

    p2’ = p2 + Clip(-pv)-(pv)((2*p3 - 5*p2 + p1 + p0 + q0 + 4)>>3);
    = Clip(p2 -pv)-(p2 +pv)((2*p3 + 3*p2 + p1 + p0 + q0 + 4)>>3);
    = Clip3(p2-pv, p2+pv, (2*p3 + 3*p2 + p1 + p0 + q0 + 4)>>3);

    q0’ = q0 + Clip(-pv)-(pv)((p1 + 2*p0 - 6*q0 + 2*q1 + q2 + 4)>>3);
    = Clip(q0 -pv)-(q0 +pv)((p1 + 2*p0 + 2*q0 + 2*q1 + q2 + 4)>>3);
    = Clip3(q0-pv, q0+pv, (p1 + 2*p0 + 2*q0 + 2*q1 + q2 + 4)>>3);

    q1’ = q1 + Clip(-pv)-(pv)((p0 + q0 - 3*q1 + q2 +2)>>2);
    = Clip(q1 -pv)-(q1 +pv)((p0 + q0 + q1 + q2 +2)>>2);
    = Clip3(q1-pv, q1+pv, (p0 + q0 + q1 + q2 +2)>>2);

    q2’ = q2 + Clip(-pv)-(pv)((p0 + q0 + q1 - 5*q2 + 2*q3 + 4)>>3);
    = Clip(q2 -pv)-(q2 +pv)((p0 + q0 + q1 + 3*q2 + 2*q3 + 4)>>3);
    = Clip3(q2-pv, q2+pv, (p0 + q0 + q1 + 3*q2 + 2*q3 + 4)>>3);

    pvは前記第2フィルタのクリップ値である
    pN’,qN’(N=0,1,2)は前記第2フィルタが適用された後の画素値である
    pM,qM(M=0,1,2,3)は前記第2フィルタが適用される前の画素値である
    N,Mは境界の近隣に位置する画素の位置を示すインデックスである
    請求項1に記載の画像処理装置。
  3. 前記制御部は、前記デブロッキングフィルタの強度を選択する際に用いられるパラメータの整数倍の値を前記第2クリップ値として、前記第2フィルタが適用される前の画素値に対する前記第2フィルタが適用された後の画素値の変化値をクリップする
    請求項1に記載の画像処理装置。
  4. 前記制御部は、前記パラメータの±2倍の値を前記第2クリップ値として、前記第2フィルタが適用される前の画素値に対する前記第2フィルタが適用された後の画素値の変化値をクリップする
    請求項3に記載の画像処理装置。
  5. 前記制御部は、前記第2フィルタが適用される場合に、次の式に示されるように、前記第2フィルタが適用される前の画素値に対する前記第2フィルタが適用された後の画素値の変化値をクリップする

    p0’ = p0 + Clip(-2*tc)-(2*tc)((p2 + 2*p1 - 6*p0 +2*q0 + q1 + 4)>>3);
    = Clip(p0 -2*tc)-(p0 +2*tc)((p2 + 2*p1 + 2*p0 +2*q0 + q1 + 4)>>3);
    = Clip3(p0-2*tc, p0+2*tc, (p2 + 2*p1 + 2*p0 +2*q0 + q1 + 4)>>3);

    p1’ = p1 + Clip(-2*tc)-( 2*tc)((p2 - 3*p1 + p0 + q0 +2)>>2);
    = Clip(p1 -2*tc)-(p1 +2*tc)((p2 + p1 + p0 + q0 +2)>>2);
    = Clip3(p1-2*tc, p1+2*tc, (p2 + p1 + p0 + q0 +2)>>2);

    p2’ = p2 + Clip(-2*tc)-( 2*tc)((2*p3 - 5*p2 + p1 + p0 + q0 + 4)>>3);
    = Clip(p2 -2*tc)-(p2 +2*tc)((2*p3 + 3*p2 + p1 + p0 + q0 + 4)>>3);
    = Clip3(p2-2*tc, p2+2*tc, (2*p3 + 3*p2 + p1 + p0 + q0 + 4)>>3);

    q0’ = q0 + Clip(-2*tc)-( 2*tc)((p1 + 2*p0 - 6*q0 + 2*q1 + q2 + 4)>>3);
    = Clip(q0 -2*tc)-(q0 +2*tc)((p1 + 2*p0 + 2*q0 + 2*q1 + q2 + 4)>>3);
    = Clip3(q0-2*tc, q0+2*tc, (p1 + 2*p0 + 2*q0 + 2*q1 + q2 + 4)>>3);

    q1’ = q1 + Clip(-2*tc)-( 2*tc)((p0 + q0 - 3*q1 + q2 +2)>>2);
    = Clip(q1 -2*tc)-(q1 +2*tc)((p0 + q0 + q1 + q2 +2)>>2);
    = Clip3(q1-2*tc, q1+2*tc, (p0 + q0 + q1 + q2 +2)>>2);

    q2’ = q2i + Clip(-2*tc)-( 2*tc)((p0 + q0 + q1 - 5*q2 + 2*q3 + 4)>>3);
    = Clip(q2 -2*tc)-(q2 +2*tc)((p0 + q0 + q1 + 3*q2 + 2*q3 + 4)>>3);
    = Clip3(q2-2*tc, q2+2*tc, (p0 + q0 + q1 + 3*q2 + 2*q3 + 4)>>3);

    tcは前記第1フィルタまたは前記第2フィルタの選択に用いられるパラメータである
    pN’,qN’(N=0,1,2)は前記第2フィルタが適用された後の画素値である
    pM,qM(M=0,1,2,3)は前記第2フィルタが適用される前の画素値である
    N,Mは境界の近隣に位置する画素の位置を示すインデックスである
    請求項4に記載の画像処理装置。
  6. 前記第2フィルタは、前記ローカル復号画像の輝度成分の画素を対象として適用される
    請求項5に記載の画像処理装置。
  7. 前記第1フィルタは、前記ブロック境界の近傍に位置する4画素に対してフィルタを適用する弱フィルタであり、
    前記第2フィルタは、前記ブロック境界の近傍に位置する6画素に対してフィルタを適用する強フィルタである
    請求項6に記載の画像処理装置。
  8. 前記ブロック境界は、直交変換を行う単位であるトランスフォームユニットの境界または予測処理を行う単位であるプレディクションユニットの境界である
    請求項6に記載の画像処理装置。
  9. 前記トランスフォームユニットまたは前記プレディクションユニットは、最大コーディングユニットを再帰的に分割することによって得られるコーディングユニットから分割される処理単位である
    請求項8に記載の画像処理装置。
  10. 前記コーディングユニットは、前記最大コーディングユニットを4分木構造に従って再帰的に分割される
    請求項9に記載の画像処理装置。
  11. 前記最大コーディングユニットは、前記4分木構造における最上位層のコーディングユニットである
    請求項10に記載の画像処理装置。
  12. 前記最大コーディングユニットは、シーケンス単位で固定サイズのブロックであり、
    前記コーディングユニットは、可変サイズのブロックである
    請求項11に記載の画像処理装置。
  13. 画像処理装置の
    制御部が、符号化処理する際にローカル復号処理されたローカル復号画像のブロック境界の近傍に位置する画素に対して第1フィルタよりもフィルタ強度の強い第2フィルタがデブロッキングフィルタとして適用される場合に、前記第1フィルタが適用される前の画素値に対する前記第1フィルタが適用された後の画素値の変化値をクリップする際に用いる第1クリップ値よりも大きい値である第2クリップ値を用いて、前記第2フィルタが適用される前の画素値に対する前記第2フィルタが適用された後の画素値の変化値をクリップする
    画像処理方法。
  14. 前記第2フィルタが適用される場合に、次の式に示されるように、前記第2フィルタが適用される前の画素値に対する前記第2フィルタが適用された後の画素値の変化値をクリップする

    p0’ = p0 + Clip(-pv)-(pv)((p2 + 2*p1 - 6*p0 +2*q0 + q1 + 4)>>3);
    = Clip(p0 -pv)-(p0 +pv)((p2 + 2*p1 + 2*p0 +2*q0 + q1 + 4)>>3);
    = Clip3(p0-pv, p0+pv, (p2 + 2*p1 + 2*p0 +2*q0 + q1 + 4)>>3);

    p1’ = p1 + Clip(-pv)-(pv)((p2 - 3*p1 + p0 + q0 +2)>>2);
    = Clip(p1 -pv)-(p1 +pv)((p2 + p1 + p0 + q0 +2)>>2);
    = Clip3(p1-pv, p1+pv, (p2 + p1 + p0 + q0 +2)>>2);

    p2’ = p2 + Clip(-pv)-(pv)((2*p3 - 5*p2 + p1 + p0 + q0 + 4)>>3);
    = Clip(p2 -pv)-(p2 +pv)((2*p3 + 3*p2 + p1 + p0 + q0 + 4)>>3);
    = Clip3(p2-pv, p2+pv, (2*p3 + 3*p2 + p1 + p0 + q0 + 4)>>3);

    q0’ = q0 + Clip(-pv)-(pv)((p1 + 2*p0 - 6*q0 + 2*q1 + q2 + 4)>>3);
    = Clip(q0 -pv)-(q0 +pv)((p1 + 2*p0 + 2*q0 + 2*q1 + q2 + 4)>>3);
    = Clip3(q0-pv, q0+pv, (p1 + 2*p0 + 2*q0 + 2*q1 + q2 + 4)>>3);

    q1’ = q1 + Clip(-pv)-(pv)((p0 + q0 - 3*q1 + q2 +2)>>2);
    = Clip(q1 -pv)-(q1 +pv)((p0 + q0 + q1 + q2 +2)>>2);
    = Clip3(q1-pv, q1+pv, (p0 + q0 + q1 + q2 +2)>>2);

    q2’ = q2 + Clip(-pv)-(pv)((p0 + q0 + q1 - 5*q2 + 2*q3 + 4)>>3);
    = Clip(q2 -pv)-(q2 +pv)((p0 + q0 + q1 + 3*q2 + 2*q3 + 4)>>3);
    = Clip3(q2-pv, q2+pv, (p0 + q0 + q1 + 3*q2 + 2*q3 + 4)>>3);

    pvは前記第2フィルタのクリップ値である
    pN’,qN’(N=0,1,2)は前記第2フィルタが適用された後の画素値である
    pM,qM(M=0,1,2,3)は前記第2フィルタが適用される前の画素値である
    N,Mは境界の近隣に位置する画素の位置を示すインデックスである
    請求項13に記載の画像処理方法。
  15. 前記制御部が、前記デブロッキングフィルタの強度を選択する際に用いられるパラメータの整数倍の値を前記第2クリップ値として、前記第2フィルタが適用される前の画素値に対する前記第2フィルタが適用された後の画素値の変化値をクリップする
    請求項13に記載の画像処理方法。
  16. 前記制御部が、前記パラメータの±2倍の値を前記第2クリップ値として、前記第2フィルタが適用される前の画素値に対する前記第2フィルタが適用された後の画素値の変化値をクリップする
    請求項15に記載の画像処理方法。
  17. 前記制御部が、前記第2フィルタが適用される場合に、次の式に示されるように、前記第2フィルタが適用される前の画素値に対する前記第2フィルタが適用された後の画素値の変化値をクリップする

    p0’ = p0 + Clip(-2*tc)-(2*tc)((p2 + 2*p1 - 6*p0 +2*q0 + q1 + 4)>>3);
    = Clip(p0 -2*tc)-(p0 +2*tc)((p2 + 2*p1 + 2*p0 +2*q0 + q1 + 4)>>3);
    = Clip3(p0-2*tc, p0+2*tc, (p2 + 2*p1 + 2*p0 +2*q0 + q1 + 4)>>3);

    p1’ = p1 + Clip(-2*tc)-( 2*tc)((p2 - 3*p1 + p0 + q0 +2)>>2);
    = Clip(p1 -2*tc)-(p1 +2*tc)((p2 + p1 + p0 + q0 +2)>>2);
    = Clip3(p1-2*tc, p1+2*tc, (p2 + p1 + p0 + q0 +2)>>2);

    p2’ = p2 + Clip(-2*tc)-( 2*tc)((2*p3 - 5*p2 + p1 + p0 + q0 + 4)>>3);
    = Clip(p2 -2*tc)-(p2 +2*tc)((2*p3 + 3*p2 + p1 + p0 + q0 + 4)>>3);
    = Clip3(p2-2*tc, p2+2*tc, (2*p3 + 3*p2 + p1 + p0 + q0 + 4)>>3);

    q0’ = q0 + Clip(-2*tc)-( 2*tc)((p1 + 2*p0 - 6*q0 + 2*q1 + q2 + 4)>>3);
    = Clip(q0 -2*tc)-(q0 +2*tc)((p1 + 2*p0 + 2*q0 + 2*q1 + q2 + 4)>>3);
    = Clip3(q0-2*tc, q0+2*tc, (p1 + 2*p0 + 2*q0 + 2*q1 + q2 + 4)>>3);

    q1’ = q1 + Clip(-2*tc)-( 2*tc)((p0 + q0 - 3*q1 + q2 +2)>>2);
    = Clip(q1 -2*tc)-(q1 +2*tc)((p0 + q0 + q1 + q2 +2)>>2);
    = Clip3(q1-2*tc, q1+2*tc, (p0 + q0 + q1 + q2 +2)>>2);

    q2’ = q2i + Clip(-2*tc)-( 2*tc)((p0 + q0 + q1 - 5*q2 + 2*q3 + 4)>>3);
    = Clip(q2 -2*tc)-(q2 +2*tc)((p0 + q0 + q1 + 3*q2 + 2*q3 + 4)>>3);
    = Clip3(q2-2*tc, q2+2*tc, (p0 + q0 + q1 + 3*q2 + 2*q3 + 4)>>3);

    tcは前記第1フィルタまたは前記第2フィルタの選択に用いられるパラメータである
    pN’,qN’(N=0,1,2)は前記第2フィルタが適用された後の画素値である
    pM,qM(M=0,1,2,3)は前記第2フィルタが適用される前の画素値である
    N,Mは境界の近隣に位置する画素の位置を示すインデックスである
    請求項16に記載の画像処理方法。
  18. 前記第2フィルタは、前記ローカル復号画像の輝度成分の画素を対象として適用される
    請求項17に記載の画像処理方法。
  19. 前記第1フィルタは、前記ブロック境界の近傍に位置する4画素に対してフィルタを適用する弱フィルタであり、
    前記第2フィルタは、前記ブロック境界の近傍に位置する6画素に対してフィルタを適用する強フィルタである
    請求項18に記載の画像処理方法。
  20. 前記ブロック境界は、直交変換を行う単位であるトランスフォームユニットの境界または予測処理を行う単位であるプレディクションユニットの境界である
    請求項18に記載の画像処理方法。
  21. 前記トランスフォームユニットまたは前記プレディクションユニットは、最大コーディングユニットを再帰的に分割することによって得られるコーディングユニットから分割される処理単位である
    請求項20に記載の画像処理方法。
  22. 前記コーディングユニットは、前記最大コーディングユニットを4分木構造に従って再帰的に分割される
    請求項21に記載の画像処理方法。
  23. 前記最大コーディングユニットは、前記4分木構造における最上位層のコーディングユニットである
    請求項22に記載の画像処理方法。
  24. 前記最大コーディングユニットは、シーケンス単位で固定サイズのブロックであり、
    前記コーディングユニットは、可変サイズのブロックである
    請求項23に記載の画像処理方法。
  25. 符号化処理する際にローカル復号処理されたローカル復号画像のブロック境界の近傍に位置する画素に対して第1フィルタよりもフィルタ強度の強い第2フィルタがデブロッキングフィルタとして適用される場合に、前記第1フィルタが適用される前の画素値に対する前記第1フィルタが適用された後の画素値の変化値をクリップする際に用いる第1クリップ値よりも大きい値である第2クリップ値を用いて、前記第2フィルタが適用される前の画素値に対する前記第2フィルタが適用された後の画素値の変化値をクリップする制御部と
    して、コンピュータを機能させるプログラム。
  26. 請求項25に記載のプログラムが記録されている記録媒体。
JP2018026860A 2011-06-28 2018-02-19 画像処理装置、画像処理方法、プログラム、並びに記録媒体 Active JP6468381B2 (ja)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
JP2011143461 2011-06-28
JP2011143461 2011-06-28
JP2011240550 2011-11-01
JP2011240550 2011-11-01
JP2011243839 2011-11-07
JP2011243839 2011-11-07
JP2012009326 2012-01-19
JP2012009326 2012-01-19

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2016256508A Division JP6459005B2 (ja) 2011-06-28 2016-12-28 画像処理装置および画像処理方法

Publications (2)

Publication Number Publication Date
JP2018113698A JP2018113698A (ja) 2018-07-19
JP6468381B2 true JP6468381B2 (ja) 2019-02-13

Family

ID=47423858

Family Applications (6)

Application Number Title Priority Date Filing Date
JP2013522538A Active JP6070553B2 (ja) 2011-06-28 2012-05-28 画像処理装置、画像処理方法、プログラム、並びに記録媒体
JP2015038886A Active JP6065037B2 (ja) 2011-06-28 2015-02-27 画像処理装置、画像処理方法、プログラム、並びに、記録媒体
JP2016256508A Active JP6459005B2 (ja) 2011-06-28 2016-12-28 画像処理装置および画像処理方法
JP2018026861A Active JP6477939B2 (ja) 2011-06-28 2018-02-19 テレビジョン装置、携帯電話機、再生装置、カメラ、および画像処理方法
JP2018026860A Active JP6468381B2 (ja) 2011-06-28 2018-02-19 画像処理装置、画像処理方法、プログラム、並びに記録媒体
JP2018026859A Active JP6468380B2 (ja) 2011-06-28 2018-02-19 画像処理装置、画像処理方法、プログラム、並びに記録媒体

Family Applications Before (4)

Application Number Title Priority Date Filing Date
JP2013522538A Active JP6070553B2 (ja) 2011-06-28 2012-05-28 画像処理装置、画像処理方法、プログラム、並びに記録媒体
JP2015038886A Active JP6065037B2 (ja) 2011-06-28 2015-02-27 画像処理装置、画像処理方法、プログラム、並びに、記録媒体
JP2016256508A Active JP6459005B2 (ja) 2011-06-28 2016-12-28 画像処理装置および画像処理方法
JP2018026861A Active JP6477939B2 (ja) 2011-06-28 2018-02-19 テレビジョン装置、携帯電話機、再生装置、カメラ、および画像処理方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2018026859A Active JP6468380B2 (ja) 2011-06-28 2018-02-19 画像処理装置、画像処理方法、プログラム、並びに記録媒体

Country Status (20)

Country Link
US (7) US10291937B2 (ja)
EP (6) EP2728870A4 (ja)
JP (6) JP6070553B2 (ja)
KR (8) KR102010160B1 (ja)
CN (15) CN107454400B (ja)
AU (3) AU2012277049B2 (ja)
BR (2) BR122015001053B1 (ja)
CA (2) CA3059756C (ja)
CO (1) CO6842008A2 (ja)
DK (1) DK3313074T3 (ja)
ES (1) ES2893754T3 (ja)
HU (1) HUE056075T2 (ja)
MX (2) MX356762B (ja)
MY (1) MY167204A (ja)
PH (1) PH12018501265A1 (ja)
RU (4) RU2607243C2 (ja)
SG (3) SG10201404907QA (ja)
TW (3) TWI571104B (ja)
WO (1) WO2013001957A1 (ja)
ZA (1) ZA201309214B (ja)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7295609B2 (en) 2001-11-30 2007-11-13 Sony Corporation Method and apparatus for coding image information, method and apparatus for decoding image information, method and apparatus for coding and decoding image information, and system of coding and transmitting image information
JP5914962B2 (ja) 2010-04-09 2016-05-11 ソニー株式会社 画像処理装置および方法、プログラム、並びに、記録媒体
JP5741076B2 (ja) 2010-12-09 2015-07-01 ソニー株式会社 画像処理装置及び画像処理方法
KR20190069613A (ko) 2011-02-10 2019-06-19 벨로스 미디어 인터내셔널 리미티드 화상 처리 장치 및 화상 처리 방법
MY167204A (en) * 2011-06-28 2018-08-13 Sony Corp Image processing device and image processing method
TWI652941B (zh) 2011-11-03 2019-03-01 太陽專利信託 用於解區塊之有效修整技術(二)
US9414064B2 (en) * 2011-11-25 2016-08-09 Sun Patent Trust Image processing method and image processing apparatus
US8921511B2 (en) 2012-07-27 2014-12-30 E I Du Pont De Nemours And Company Process for forming an aramid copolymer
US9973784B2 (en) 2012-09-20 2018-05-15 Sony Corporation Image processing device and method
US9445130B2 (en) * 2013-01-09 2016-09-13 Qualcomm Incorporated Blockiness metric for large HEVC block artifacts
US9628822B2 (en) * 2014-01-30 2017-04-18 Qualcomm Incorporated Low complexity sample adaptive offset encoding
JP7310139B2 (ja) * 2016-12-28 2023-07-19 ソニーグループ株式会社 画像処理装置及び画像処理方法
CN106911934B (zh) * 2017-03-01 2020-03-03 北京奇艺世纪科技有限公司 块效应去除方法及去块效应滤波器
WO2018225593A1 (ja) * 2017-06-05 2018-12-13 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法および復号方法
US10645408B2 (en) * 2017-09-17 2020-05-05 Google Llc Dual deblocking filter thresholds
US10448009B1 (en) * 2017-12-14 2019-10-15 Amazon Technologies, Inc. Determining sample adaptive offset filter parameters
US11153607B2 (en) * 2018-01-29 2021-10-19 Mediatek Inc. Length-adaptive deblocking filtering in video coding
KR102632984B1 (ko) * 2018-03-29 2024-02-05 소니그룹주식회사 화상 처리 장치 및 화상 처리 방법
JPWO2019225459A1 (ja) 2018-05-23 2021-04-22 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 符号化装置、復号装置、符号化方法及び復号方法
KR102584455B1 (ko) * 2018-09-24 2023-10-05 후아웨이 테크놀러지 컴퍼니 리미티드 품질 최적화된 디블로킹을 수행하기 위한 이미지 처리 디바이스 및 방법
WO2020073969A1 (en) * 2018-10-10 2020-04-16 Huawei Technologies Co., Ltd. An image processing device and method for performing deblocking
KR102606722B1 (ko) * 2018-10-12 2023-11-24 후아웨이 테크놀러지 컴퍼니 리미티드 비디오 코딩에서 디블로킹 필터를 위한 장치 및 방법
CA3119935A1 (en) 2018-11-14 2020-05-22 Sharp Kabushiki Kaisha Systems and methods for applying deblocking filters to reconstructed video data
CN117157977A (zh) * 2021-03-31 2023-12-01 瑞典爱立信有限公司 超长抽头去块
US20230245286A1 (en) * 2022-01-28 2023-08-03 V-Silicon Semiconductor (Hefei) Co., Ltd. 2d recursive de-banding

Family Cites Families (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2435757C (en) * 2001-11-29 2013-03-19 Matsushita Electric Industrial Co., Ltd. Video coding distortion removal method and apparatus using a filter
US7295609B2 (en) 2001-11-30 2007-11-13 Sony Corporation Method and apparatus for coding image information, method and apparatus for decoding image information, method and apparatus for coding and decoding image information, and system of coding and transmitting image information
JP4580626B2 (ja) * 2002-07-11 2010-11-17 パナソニック株式会社 フィルタリング強度の決定方法、動画像符号化方法、および動画像復号化方法
US7391812B2 (en) * 2002-07-14 2008-06-24 Apple Inc. Adaptively post filtering encoded video
US7167522B2 (en) * 2003-02-27 2007-01-23 Texas Instruments Incorporated Video deblocking filter
US7995849B2 (en) 2003-03-17 2011-08-09 Qualcomm, Incorporated Method and apparatus for improving video quality of low bit-rate video
JP2004328634A (ja) 2003-04-28 2004-11-18 Sony Corp 画像復号化装置及び方法
CN101616330B (zh) * 2003-07-16 2012-07-04 三星电子株式会社 用于色彩图像的视频编码/解码装置和方法
KR100855466B1 (ko) * 2004-01-27 2008-09-01 삼성전자주식회사 비디오 코딩 및 디코딩 방법, 및 이를 위한 장치
US7430336B2 (en) * 2004-05-06 2008-09-30 Qualcomm Incorporated Method and apparatus for image enhancement for low bit rate video compression
KR100614647B1 (ko) * 2004-07-02 2006-08-22 삼성전자주식회사 디블록킹 필터에서의 효과적인 에지 필터링 연산을 위한레지스터 어레이 구조
NO322722B1 (no) * 2004-10-13 2006-12-04 Tandberg Telecom As Fremgangsmate for videokoding gjennom reduksjon av blokkartefakter
KR100722972B1 (ko) * 2004-10-26 2007-05-30 삼성전자주식회사 디지털방송 수신기의 영상신호 처리 장치 및 방법
KR100843196B1 (ko) 2004-12-17 2008-07-02 삼성전자주식회사 H.264/avc 비디오 디코더의 디블록킹 필터
RU2276355C1 (ru) * 2005-01-27 2006-05-10 Олег Федорович Меньших Устройство распознавания внутренних неоднородностей объекта
JP4543971B2 (ja) * 2005-03-07 2010-09-15 ソニー株式会社 符号化方法、符号化装置、符号化処理のプログラム及び符号化処理のプログラムを記録した記録媒体
US7961963B2 (en) * 2005-03-18 2011-06-14 Sharp Laboratories Of America, Inc. Methods and systems for extended spatial scalability with picture-level adaptation
JP4825524B2 (ja) 2006-01-31 2011-11-30 株式会社東芝 動画像復号装置および動画像復号方法
JP4605052B2 (ja) * 2006-03-03 2011-01-05 日本電気株式会社 動画像符号化方法、動画像復号方法、動画像符号化装置、動画像復号装置、フィルタ装置及びプログラム
WO2007116551A1 (ja) * 2006-03-30 2007-10-18 Kabushiki Kaisha Toshiba 画像符号化装置及び画像符号化方法並びに画像復号化装置及び画像復号化方法
TWI384437B (zh) * 2006-12-18 2013-02-01 Sony Corp An image signal processing device, an image signal processing method, and a computer program product
WO2008084996A1 (en) * 2007-01-11 2008-07-17 Samsung Electronics Co, . Ltd. Method and apparatus for deblocking-filtering video data
JP2009004920A (ja) * 2007-06-19 2009-01-08 Panasonic Corp 画像符号化装置および画像符号化方法
US8913670B2 (en) 2007-08-21 2014-12-16 Blackberry Limited System and method for providing dynamic deblocking filtering on a mobile device
US8145977B2 (en) * 2007-10-15 2012-03-27 Joseph Schweiray Lee Methods and apparatus for providing error correction to unwritten pages and for identifying unwritten pages in flash memory
WO2009051719A2 (en) * 2007-10-16 2009-04-23 Thomson Licensing Methods and apparatus for video encoding and decoding geometically partitioned super blocks
CN101472177B (zh) * 2007-12-27 2013-03-06 宝利微电子系统控股公司 一种块效应检测方法
JP5232175B2 (ja) * 2008-01-24 2013-07-10 パナソニック株式会社 動画像圧縮装置
WO2009126299A1 (en) * 2008-04-11 2009-10-15 Thomson Licensing Deblocking filtering for displaced intra prediction and template matching
US8761538B2 (en) * 2008-12-10 2014-06-24 Nvidia Corporation Measurement-based and scalable deblock filtering of image data
JP2010288079A (ja) * 2009-06-11 2010-12-24 Sony Corp 画像処理装置及び画像処理方法
JP5344238B2 (ja) 2009-07-31 2013-11-20 ソニー株式会社 画像符号化装置および方法、記録媒体、並びにプログラム
JP5359657B2 (ja) 2009-07-31 2013-12-04 ソニー株式会社 画像符号化装置および方法、記録媒体、並びにプログラム
JP2011049740A (ja) * 2009-08-26 2011-03-10 Sony Corp 画像処理装置および方法
KR101073150B1 (ko) * 2009-08-28 2011-10-12 성균관대학교산학협력단 공통 데이터 패스 구조를 포함하는 디블록킹 필터링 연산 장치 및 그 방법
JP5914962B2 (ja) 2010-04-09 2016-05-11 ソニー株式会社 画像処理装置および方法、プログラム、並びに、記録媒体
TWI508534B (zh) 2010-05-18 2015-11-11 Sony Corp Image processing apparatus and image processing method
DK3177017T3 (da) 2010-06-04 2020-03-02 Sony Corp Kodning af en qp og en delta qp for billedblokke, der er større end en minimumsstørrelse
CN103716632B (zh) 2010-12-07 2017-04-19 索尼公司 图像处理设备和图像处理方法
CN106385586A (zh) 2010-12-07 2017-02-08 索尼公司 图像处理设备和图像处理方法
JP5741076B2 (ja) 2010-12-09 2015-07-01 ソニー株式会社 画像処理装置及び画像処理方法
US9565436B2 (en) * 2011-01-14 2017-02-07 Telefonaktiebolaget Lm Ericsson (Publ) Method for filter control and a filtering control device
KR20190069613A (ko) 2011-02-10 2019-06-19 벨로스 미디어 인터내셔널 리미티드 화상 처리 장치 및 화상 처리 방법
MY186854A (en) 2011-03-11 2021-08-26 Sony Corp Image processing apparatus and method
US9338476B2 (en) * 2011-05-12 2016-05-10 Qualcomm Incorporated Filtering blockiness artifacts for video coding
TWI530161B (zh) 2011-06-07 2016-04-11 Sony Corp Image processing apparatus and method
JP5907367B2 (ja) 2011-06-28 2016-04-26 ソニー株式会社 画像処理装置および方法、プログラム、並びに記録媒体
MY167204A (en) * 2011-06-28 2018-08-13 Sony Corp Image processing device and image processing method
EP2869560A4 (en) 2012-06-29 2016-09-07 Sony Corp DEVICE AND METHOD OF ENCODING
US10820017B2 (en) * 2017-03-15 2020-10-27 Mediatek Inc. Method and apparatus of video coding

Also Published As

Publication number Publication date
MX352108B (es) 2017-11-09
AU2017202655A1 (en) 2017-05-11
CN113347420A (zh) 2021-09-03
SG10201404907QA (en) 2014-10-30
SG10201507034QA (en) 2015-10-29
US20240056611A1 (en) 2024-02-15
EP3313074B1 (en) 2021-09-22
SG10201507031PA (en) 2015-10-29
AU2017202655B2 (en) 2018-07-26
JP2015136147A (ja) 2015-07-27
CN110611810A (zh) 2019-12-24
US10291937B2 (en) 2019-05-14
KR102105497B1 (ko) 2020-04-29
KR20170055554A (ko) 2017-05-19
RU2643468C1 (ru) 2018-02-01
CN113347419A (zh) 2021-09-03
CN110602492A (zh) 2019-12-20
CN107426571B (zh) 2019-12-10
CN107295335A (zh) 2017-10-24
CN107318019A (zh) 2017-11-03
CA3059756C (en) 2022-10-18
BR122015001053B1 (pt) 2019-07-09
ES2893754T3 (es) 2022-02-10
KR102067368B1 (ko) 2020-01-16
TW201304550A (zh) 2013-01-16
CN107454401A (zh) 2017-12-08
TWI542195B (zh) 2016-07-11
CN107426571A (zh) 2017-12-01
AU2015213302B2 (en) 2017-04-06
CA2837055C (en) 2019-12-31
KR20190090888A (ko) 2019-08-02
US11039172B2 (en) 2021-06-15
CO6842008A2 (es) 2014-01-20
US20210344965A1 (en) 2021-11-04
KR20140043758A (ko) 2014-04-10
JP2018113698A (ja) 2018-07-19
CN110519592A (zh) 2019-11-29
CN107318019B (zh) 2020-02-28
US11647231B2 (en) 2023-05-09
MY167204A (en) 2018-08-13
TW201707450A (zh) 2017-02-16
KR102009050B1 (ko) 2019-08-08
EP3313075B1 (en) 2021-12-29
AU2015213302A1 (en) 2015-09-03
CN110611811B (zh) 2021-07-06
JPWO2013001957A1 (ja) 2015-02-23
KR20190090066A (ko) 2019-07-31
CN110611812A (zh) 2019-12-24
CN104113764A (zh) 2014-10-22
CN103609126B (zh) 2017-09-08
MX2013015405A (es) 2015-10-27
CN107318018B (zh) 2019-11-01
KR20200115675A (ko) 2020-10-07
JP2017060202A (ja) 2017-03-23
KR102166220B1 (ko) 2020-10-15
JP6065037B2 (ja) 2017-01-25
JP6468380B2 (ja) 2019-02-13
MX356762B (es) 2018-06-12
CA3059756A1 (en) 2013-01-03
US20160286240A1 (en) 2016-09-29
EP2728870A4 (en) 2015-01-14
CN110611812B (zh) 2021-07-06
CN110611810B (zh) 2021-06-01
CN103609126A (zh) 2014-02-26
TW201603560A (zh) 2016-01-16
CN107454400B (zh) 2020-10-20
BR112013033183B1 (pt) 2019-07-16
KR102071201B1 (ko) 2020-01-29
PH12018501265A1 (en) 2021-01-18
TWI571104B (zh) 2017-02-11
RU2013156835A (ru) 2015-06-27
ZA201309214B (en) 2014-06-25
HUE056075T2 (hu) 2022-01-28
EP4009637A1 (en) 2022-06-08
CN110602492B (zh) 2021-06-01
US11838556B2 (en) 2023-12-05
EP3001684A3 (en) 2016-07-20
AU2012277049B2 (en) 2017-04-06
CN110519592B (zh) 2021-06-01
CN107454400A (zh) 2017-12-08
AU2012277049A1 (en) 2013-12-12
CN107454401B (zh) 2019-11-19
US20140112396A1 (en) 2014-04-24
EP3313074A1 (en) 2018-04-25
KR102477475B1 (ko) 2022-12-14
US20190230383A1 (en) 2019-07-25
CN107318018A (zh) 2017-11-03
US11051043B2 (en) 2021-06-29
EP4009638A1 (en) 2022-06-08
BR112013033183A2 (pt) 2017-03-01
KR102067369B1 (ko) 2020-01-16
TWI637626B (zh) 2018-10-01
CN107295335B (zh) 2020-03-17
EP2728870A1 (en) 2014-05-07
DK3313074T3 (da) 2021-10-25
KR20190088573A (ko) 2019-07-26
JP2018113699A (ja) 2018-07-19
CN110611811A (zh) 2019-12-24
US10298958B2 (en) 2019-05-21
JP6459005B2 (ja) 2019-01-30
US20230232049A1 (en) 2023-07-20
EP3001684A2 (en) 2016-03-30
RU2608476C2 (ru) 2017-01-18
KR20190092623A (ko) 2019-08-07
RU2015103069A (ru) 2015-06-20
CA2837055A1 (en) 2013-01-03
JP6477939B2 (ja) 2019-03-06
JP2018113697A (ja) 2018-07-19
JP6070553B2 (ja) 2017-02-01
KR20200024958A (ko) 2020-03-09
KR102010160B1 (ko) 2019-08-12
US20240031610A1 (en) 2024-01-25
BR122015001053A2 (pt) 2018-03-20
US20190191186A1 (en) 2019-06-20
RU2607243C2 (ru) 2017-01-10
WO2013001957A1 (ja) 2013-01-03
RU2680349C1 (ru) 2019-02-19
EP3313075A1 (en) 2018-04-25
CN104113764B (zh) 2017-10-27

Similar Documents

Publication Publication Date Title
JP6468381B2 (ja) 画像処理装置、画像処理方法、プログラム、並びに記録媒体

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181211

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20181218

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181231

R151 Written notification of patent or utility model registration

Ref document number: 6468381

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151