(57)【要約】【課題】並列化されていない単一のハードウェアを備えて、複数のタイルの復号処理とタイル境界のフィルタ処理を実行する、H.265/HEVCの復号装置において、フィルタ処理のための、フレームメモリのタイル境界の復号データのアクセス頻度を抑え、または、タイル境界の復号データを保持するバッファの回路規模を抑える。【解決手段】タイルのサイズや位置関係によらず、画面全体をラスタスキャンの順序で、復号処理およびフィルタ処理を行う。タイル境界では、同じタイルの次の行の復号処理を実行するよりも、同じ行の右側のタイルの復号処理を先行させ、さらにその復号データを使って、その行のフィルタ処理をも実行する。【選択図】図１
2015012410.tif 000002
【特許請求の範囲】
【請求項１】
ヘッダ情報と符号化された画像データを含むビットストリームが入力されるビットストリーム解析部と、前記ビットストリーム解析部から供給される前記符号化された画像データに対して復号処理を施し、前記復号処理の結果である復号データにフィルタ処理を施す、画像復元部とを備える画像復号装置であって、
前記符号化された画像データは、１フレームの原画像が矩形領域である複数のタイルに分割され、前記タイル毎に符号化された画像データであり、前記複数のタイルのそれぞれは、前記符号化の単位である符号化ブロックを行列状に１個以上含み、
前記ビットストリームは、前記１フレーム内の左上のタイルから順次右のタイルを経て順次下のタイルに至る順序で、タイル毎の前記符号化された画像データを含み、それぞれのタイル内の左上の符号化ブロックから順次右の符号化ブロックを経て順次下の符号化ブロックに至る順序で、符号化ブロック毎の前記符号化された画像データを含み、
前記ヘッダ情報は、前記各タイルのサイズ情報を含み、
前記画像復元部は、前記１フレーム内のタイル境界の有無に関わらず、前記１フレーム内の左上の符号化ブロックから順次右の符号化ブロックを経て順次下の符号化ブロックに至る順序で、復号処理と、左右で隣接するタイル間の境界がある場合のタイル境界部のフィルタ処理と、を順次実行する、画像復号装置。
【請求項２】
請求項１において、前記画像復号装置は、前記ビットストリーム解析部からアクセス可能な解析用データバッファをさらに備え、
前記ビットストリーム解析部は、前記ヘッダ情報に基づいて、前記画像復元部による復元処理の対象行の、各タイルの先頭に配置される符号化ブロックが格納される、前記ビットストリーム内の位置を算出して、前記解析用データバッファに保持し、
前記ビットストリーム解析部は、前記解析用データバッファに保持される、前記画像復元部による復元処理の対象行の、各タイルの先頭に配置される符号化ブロックが格納される、前記ビットストリーム内の前記位置に基づいて、対応する画像データを前記ビットストリームから読み出して、前記画像復元部に供給する、画像復号装置。
【請求項３】
請求項２において、前記画像復号装置は、前記画像復元部から出力される復号画像を格納するフレームバッファをさらに備え、
前記画像復元部は、予測画像生成部と差分画像生成部と加算部とフィルタ処理部と第１バッファと第２バッファとを含み、
前記第１バッファは、前記予測画像生成部から出力される予測画像情報のうち、処理対象の符号化ブロックの下側に隣接する符号化ブロックに対する予測画像生成処理に必要な、上方向フィルタ前画素情報を保持し、
前記予測画像生成部は、前記ビットストリーム解析部から供給される前記画像データを構成する予測データと、前記第１バッファに保持される前記上方向フィルタ前画素情報と、前記フレームバッファに格納される復号済みの画素情報とに基づいて、予測画像を生成し、
前記差分画像生成部は、前記ビットストリーム解析部から供給される前記画像データを構成する残差データに基づいて、差分画像を生成し、
前記加算部は、前記予測画像と前記差分画像を加算して、フィルタ前復号画像を生成し、
前記第２バッファは、前記フィルタ処理部から出力される復号画像の画素情報のうち、処理対象の符号化ブロックの下側に隣接する符号化ブロックに対するフィルタ処理に必要な、上方向フィルタ後画素情報を保持し、
前記フィルタ処理部は、前記加算部から供給される前記フィルタ前復号画像と、前記第２バッファに保持される前記上方向フィルタ後画素情報とに基づいて、復号画像を生成し、前記画像復元部から出力する、画像復号装置。
【請求項４】
請求項１において、前記画像復号装置は、前記ビットストリーム解析部から出力される、前記符号化された画像データを一時的に格納して、前記画像復元部に供給する、画像データバッファをさらに備え、
前記ビットストリーム解析部は、前記ビットストリーム内に格納される通りの順序で、前記画像データを前記画像データバッファに出力し、前記ヘッダ情報に基づいて、タイル毎のデータサイズを算出して、前記画像復元部に出力し、
前記画像復元部は、前記タイル毎のデータサイズに基づいて、復号処理の対象である画像データが格納されるアドレスを算出し、前記画像データバッファから前記画像データを読み出して前記復号処理を施す、画像復号装置。
【請求項５】
請求項４において、前記画像復号装置は、前記画像復元部から出力される復号画像を格納するフレームバッファをさらに備え、
前記画像復元部は、データ読み出し部とバッファ位置情報格納部と予測画像生成部と差分画像生成部と加算部とフィルタ処理部と第１バッファと第２バッファとを含み、
前記バッファ位置情報格納部は、前記タイル毎のデータサイズに基づいて、復号処理の対象である画像データが格納される前記アドレスを保持し、
前記データ読み出し部は、前記バッファ位置情報格納部に格納される前記アドレスに基づいて、前記画像データバッファから画像データを読み出し、読み出した前記画像データを構成する予測データを前記予測画像生成部に供給し、読み出した前記画像データを構成する残差データを前記差分画像生成部に供給し、
前記第１バッファは、前記予測画像生成部から出力される予測画像情報のうち、処理対象の符号化ブロックの下側に隣接する符号化ブロックに対する予測画像生成処理に必要な、上方向フィルタ前画素情報を保持し、
前記予測画像生成部は、前記データ読み出し部から供給される前記予測データと、前記第１バッファに保持される前記上方向フィルタ前画素情報と、前記フレームバッファに格納される復号済みの画素情報とに基づいて、予測画像を生成し、
前記差分画像生成部は、前記データ読み出し部から供給される前記残差データに基づいて、差分画像を生成し、
前記加算部は、前記予測画像と前記差分画像を加算して、フィルタ前復号画像を生成し、
前記第２バッファは、前記フィルタ処理部から出力される復号画像の画素情報のうち、処理対象の符号化ブロックの下側に隣接する符号化ブロックに対するフィルタ処理に必要な、上方向フィルタ後画素情報を保持し、
前記フィルタ処理部は、前記加算部から供給される前記フィルタ前復号画像と、前記第２バッファに保持される前記上方向フィルタ後画素情報とに基づいて、復号画像を生成し、前記画像復元部から出力する、画像復号装置。
【請求項６】
請求項１において、前記画像復号装置は、前記ビットストリーム解析部から出力される、前記符号化された画像データを一時的に格納して、前記画像復元部に供給する、複数の画像データバッファをさらに備え、
前記複数の画像バッファは、前記復号処理対象の複数のタイルに対応付けられ、
前記ビットストリーム解析部は、前記画像データを対応する前記画像データバッファに出力し、
前記画像復元部は、復号処理の対象である画像データが格納される、前記画像データバッファから前記画像データを読み出して前記復号処理を施す、画像復号装置。
【請求項７】
請求項６において、前記画像復号装置は、前記画像復元部から出力される復号画像を格納するフレームバッファをさらに備え、
前記画像復元部は、データ読み出し部とバッファ位置情報格納部と予測画像生成部と差分画像生成部と加算部とフィルタ処理部と第１バッファと第２バッファとを含み、
前記バッファ位置情報格納部は、前記タイル毎に、既に読み出した画像データの量に基づいて、復号処理の対象である次の画像データが格納されるアドレスを保持し、
前記データ読み出し部は、復号処理対象の画像データの属するタイルに対応する前記画像データバッファから、前記バッファ位置情報格納部に格納される前記アドレスに基づいて、画像データを読み出し、読み出した前記画像データを構成する予測データを前記予測画像生成部に供給し、読み出した前記画像データを構成する残差データを前記差分画像生成部に供給し、
前記第１バッファは、前記予測画像生成部から出力される予測画像情報のうち、処理対象の符号化ブロックの下側に隣接する符号化ブロックに対する予測画像生成処理に必要な、上方向フィルタ前画素情報を保持し、
前記予測画像生成部は、前記データ読み出し部から供給される前記予測データと、前記第１バッファに保持される前記上方向フィルタ前画素情報と、前記フレームバッファに格納される復号済みの画素情報とに基づいて、予測画像を生成し、
前記差分画像生成部は、前記データ読み出し部から供給される前記残差データに基づいて、差分画像を生成し、
前記加算部は、前記予測画像と前記差分画像を加算して、フィルタ前復号画像を生成し、
前記第２バッファは、前記フィルタ処理部から出力される復号画像の画素情報のうち、処理対象の符号化ブロックの下側に隣接する符号化ブロックに対するフィルタ処理に必要な、上方向フィルタ後画素情報を保持し、
前記フィルタ処理部は、前記加算部から供給される前記フィルタ前復号画像と、前記第２バッファに保持される前記上方向フィルタ後画素情報とに基づいて、復号画像を生成し、前記画像復元部から出力する、画像復号装置。
【請求項８】
請求項１において、前記画像復号装置は、前記ビットストリーム解析部から出力される、前記符号化された画像データを一時的に格納して、前記画像復元部に供給する、画像データバッファをさらに備え、
前記ビットストリーム解析部は、前記ビットストリーム内に格納される通りの順序で、前記画像データをタイル毎のデータサイズを所定の固定長データサイズに変換して、前記画像データバッファに出力し、
前記画像復元部は、前記所定の固定長データサイズに基づいて、復号処理の対象である画像データが格納されるアドレスを算出し、前記画像データバッファから前記アドレスに基づいて前記画像データを読み出して前記復号処理を施す、画像復号装置。
【請求項９】
請求項８において、前記画像復号装置は、前記画像復元部から出力される復号画像を格納するフレームバッファをさらに備え、
前記画像復元部は、データ読み出し部とバッファ位置情報算出部と予測画像生成部と差分画像生成部と加算部とフィルタ処理部と第１バッファと第２バッファとを含み、
前記バッファ位置情報算出部は、前記所定の固定長データサイズに基づいて、復号処理の対象である画像データが格納されるアドレスを算出し、
前記データ読み出し部は、前記バッファ位置情報算出部で算出された前記アドレスに基づいて、前記画像データバッファから画像データを読み出し、読み出した前記画像データを構成する予測データを前記予測画像生成部に供給し、読み出した前記画像データを構成する残差データを前記差分画像生成部に供給し、
前記第１バッファは、前記予測画像生成部から出力される予測画像情報のうち、処理対象の符号化ブロックの下側に隣接する符号化ブロックに対する予測画像生成処理に必要な、上方向フィルタ前画素情報を保持し、
前記予測画像生成部は、前記データ読み出し部から供給される前記予測データと、前記第１バッファに保持される前記上方向フィルタ前画素情報と、前記フレームバッファに格納される復号済みの画素情報とに基づいて、予測画像を生成し、
前記差分画像生成部は、前記データ読み出し部から供給される前記残差データに基づいて、差分画像を生成し、
前記加算部は、前記予測画像と前記差分画像を加算して、フィルタ前復号画像を生成し、
前記第２バッファは、前記フィルタ処理部から出力される復号画像の画素情報のうち、処理対象の符号化ブロックの下側に隣接する符号化ブロックに対するフィルタ処理に必要な、上方向フィルタ後画素情報を保持し、
前記フィルタ処理部は、前記加算部から供給される前記フィルタ前復号画像と、前記第２バッファに保持される前記上方向フィルタ後画素情報とに基づいて、復号画像を出力する、画像復号装置。
【請求項１０】
符号化された画像データを含むビットストリームが入力され、前記符号化された画像データに対して復号処理を施し、前記復号処理の結果である復号データにフィルタ処理を施す、画像復号装置であって、
前記符号化された画像データは、１フレームの原画像が矩形領域である複数のタイルに分割され、前記タイル毎に符号化された画像データであり、前記複数のタイルのそれぞれは、前記符号化の単位である符号化ブロックを行列状に１個以上含み、
前記ビットストリームは、前記１フレーム内の左上のタイルから順次右のタイルを経て順次下のタイルに至る順序で、タイル毎の前記符号化された画像データを含み、それぞれのタイル内の左上の符号化ブロックから順次右の符号化ブロックを経て順次下の符号化ブロックに至る順序で、符号化ブロック毎の前記符号化された画像データを含み、
前記画像復号装置は、前記１フレーム内のタイル境界の有無に関わらず、前記１フレーム内の左上の符号化ブロックから順次右の符号化ブロックを経て順次下の符号化ブロックに至る順序で、復号処理と、左右で隣接するタイル間の境界がある場合のタイル境界部のフィルタ処理と、を順次実行する、画像復号装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像復号装置に関し、特にH.265（HEVC: High Efficiency Video Coding）に準拠しTileを用いて符号化されたビットストリームを受信する、画像復号装置に好適に利用できるものである。
【背景技術】
【０００２】
画像符号化方式の標準化規格であるH.264（MPEG-4 AVC: Advanced Video Coding）に続く次世代の標準化規格として、H.265/HEVCが国際電気通信連合（ITU: International Telecommunication Union）によって承認され、標準化作業が進んでいる。H.265/HEVCにおいて、符号化ツールの一種としてタイルを用いた符号化が採用されている。H.265/HEVCでは、符号化と復号の単位である、CTB（Coding Tree Block）と呼ばれる正方形の画素領域が規定されている。タイルを用いた符号化では、１枚（１フレーム）の画像を、それぞれ複数のCTBからなる複数の矩形の領域（この領域は、タイル（Tile）または、「ブロック」と呼ばれる。）に分割し、それぞれの領域（タイル）で独立に符号化を行い、その結果を１本のビットストリームにまとめて出力する。ビットストリームが入力される復号側では、逆に、それぞれの領域（タイル）で独立に復号を行い、その結果をまとめて１フレームの画像を復元する。タイルの境界部分においては、境界線が視認されるような画質劣化を抑えるため、フィルタ処理が施される。
【０００３】
タイルを用いた符号化・復号処理は、並列処理に適している。その理由は、タイル毎に独立して符号化し、タイル毎に独立して復号することができるからである。複数のCPU（Central Processing Unit）が並列化された、マルチコアによるソフトウェア復号においては、各タイルを各CPUに割り当てて復号することで、コア数分の並列処理が可能となる。その際、タイルの復号で得られた情報は全てメモリに格納される。全てのタイルを復号した後に、メモリに格納された情報を用いてタイル境界におけるフィルタ処理を実施することで、１枚（１フレーム）の画像の復号が完了する。
【０００４】
タイルを用いて符号化され、送出されたビットストリームは、必ずタイルを用いて復号する必要がある。しかし、符号化を行う送信側が、タイルを用いて符号化するのに適した並列ハードウェアを備えていたとしても、復号を行う受信側が同様の並列ハードウェアを備えているとは限らない。また、符号化装置側の符号化アルゴリズムを特定することができない復号装置は、如何なる符号化アルゴリズムで符号化されたビットストリームでも復号することができるように構成する必要がある。例えばタイルを使用して符号化されたビットストリームでも、タイルを使用しないで符号化されたビットストリームでも、復号することができるように構成する必要がある。復号装置にマルチコアを採用した場合、符号化側との並列度の違いを吸収するために制御が複雑化してしまったり、極端な場合には、１フレームを１タイルで符号化されたビットストリームの復号に複数のCPUの中の１個のCPUしか有効に動作させることができないなどの問題が生じる。そのため、復号装置は、並列化されていない単一のハードウェアを備えて、複数のタイルの復号処理を、タイル毎に順次実行するように構成される場合が多い。
【０００５】
特許文献１と特許文献２には、H.265/HEVC方式の画像符号化装置・方法と画像復号装置・方法が開示されている。特許文献１に記載される技術では、ブロック（タイル）内の量子化係数の走査順序が複数存在する場合に、量子化マトリクスを最適化する。特許文献２に記載される技術では、ブロック（タイル）の形状が正方形以外であっても、量子化マトリクスを最適化する。いずれも、ブロック分割部によって分割されたブロック（タイル）毎に、符号化処理や復号処理を行う。
【０００６】
一方、１枚（１フレーム）の画像をタイルなどの複数の領域に分割して符号化・復号処理を行った場合、タイルの境界線が不自然な直線として視認され、画質の劣化として認識されるという問題がある。
【０００７】
特許文献３と特許文献４には、タイル境界線の顕在化を緩和する画像処理技術が開示されている。特許文献３に記載される画像圧縮・伸長装置では、複数のコンポーネントを持つ静止画像の処理において、コンポーネント毎のタイル境界の位置を変えることにより、重ね合せたときに境界線を目立たないようにする。特許文献４に記載される動画像処理装置では、フレーム毎のタイル境界の位置を変えることにより、重ね合せたときに境界線を目立たないようにする。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１３−０１２８８７号公報
【特許文献２】特開２０１３−０３８７５８号公報
【特許文献３】特開２００２−３５４５０１号公報
【特許文献４】特開２００４−０３２７９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
特許文献１、２、３及び４について本発明者が検討した結果、以下のような新たな課題があることがわかった。
【００１０】
１フレームの画像を複数のタイルに分割して符号化・復号処理を行った場合、タイルの境界線が不自然な直線として視認され、画質の劣化として認識される問題に対しては、上記特許文献３と特許文献４に開示される技術の他、復号後のタイルの境界部分に対して、フィルタ処理を施す方法が採用される。フィルタ処理は、H.265/HEVCの規格にも採用されている一般的な方法であり、上記特許文献３と特許文献４に開示される技術のような複雑な制御を必要としない。
【００１１】
フィルタ処理には、入力として隣接する画像データが必要である。１フレームの画像が複数のタイルに分割されている場合には、タイルの境界部分で、隣接するタイルについての復号処理が終わるのを待って、フィルタ処理が行われる。タイルの境界部分では、先に復号が行われたタイルの画像出力データは、隣接するタイルの復号が終わるまで、何らかの方法で保持されなければならない。この保持の方法として、２つの方法が考えられる。１つの方法は、各タイルの復号処理結果の復号データを、タイルの境界分を含めて全てをフレームメモリに格納し、フィルタ処理では必要な、タイルの境界部分の復号データを読み出して、フィルタ処理を施してフレームメモリに書き戻す。もう１つの方法は、各タイルの復号処理結果の復号データのうち、後のフィルタ処理で必要な、タイル境界の復号データを保持するバッファを設ける方法である。
【００１２】
並列化されていない単一のハードウェアを備えて、複数のタイルの復号処理を、タイル毎に順次実行するように構成された復号装置では、フィルタ処理のための、フレームメモリのタイル境界の復号データに対するアクセス頻度を抑え、または、タイル境界の復号データを保持するバッファの回路規模を抑える、という課題がある。
【００１３】
このような課題を解決するための手段を以下に説明するが、その他の課題と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１４】
一実施の形態によれば、下記の通りである。
【００１５】
すなわち、タイルのサイズや位置関係によらず、画面全体をラスタスキャンの順序で、復号処理およびフィルタ処理を行う。
【発明の効果】
【００１６】
前記一実施の形態によって得られる効果を簡単に説明すれば下記のとおりである。
【００１７】
すなわち、フィルタ処理のための、フレームメモリのタイル境界の復号データのアクセス頻度を抑え、または、タイル境界の復号データを保持するバッファの回路規模を抑えることができる。
【図面の簡単な説明】
【００１８】
【図１】図１は、実施形態１に係る画像復号装置の構成を示すブロック図である。
【図２】図２は、１フレームの画像におけるタイルとＣＴＢの配置を示す説明図である。
【図３】図３は、ビットストリームにおけるタイルとＣＴＢの配置を示す説明図である。
【図４】図４は、ビットストリームにおけるタイルとＣＴＢの配置を示す、より詳細な説明図である。
【図５】図５は、実施形態１（他の実施形態も同様に妥当する）に係る画像復号装置におけるタイルとＣＴＢの処理順序を示す説明図である。
【図６】図６は、実施形態１（他の実施形態も同様に妥当する）に係る画像復号装置におけるタイルとＣＴＢの処理順序を示す、より詳細な説明図である。
【図７】図７は、実施形態２に係る画像復号装置の構成例を示すブロック図である。
【図８】図８は、図７の画像復号装置において特に画像復元部の詳細な構成例を示すブロック図である。
【図９】図９は、実施形態３に係る画像復号装置の別の構成例を示すブロック図である。
【図１０】図１０は、図９の画像復号装置において特に画像復元部の詳細な構成例を示すブロック図である。
【図１１】図１１は、実施形態４に係る画像復号装置の別の構成例を示すブロック図である。
【図１２】図１２は、図１１の画像復号装置において特に画像復元部の詳細な構成例を示すブロック図である。
【図１３】図１３は、実施形態５に係る画像復号装置の別の構成例を示すブロック図である。
【図１４】図１４は、図１３の画像復号装置において特に画像復元部の詳細な構成例を示すブロック図である。
【発明を実施するための形態】
【００１９】
１．実施の形態の概要
先ず、本願において開示される代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
【００２０】
〔１〕＜タイル境界に関わらず画像全体をラスタスキャン順で復号＋フィルタ＞
ヘッダ情報と符号化された画像データを含むビットストリームが入力されるビットストリーム解析部（１１）と、前記ビットストリーム解析部から供給される前記符号化された画像データに対して復号処理を施し、前記復号処理の結果である復号データにフィルタ処理を施す、画像復元部（１２）とを備える画像復号装置（１０）であって、以下のように構成される。
【００２１】
前記符号化された画像データは、１フレームの原画像が矩形領域である複数のタイルに分割され、前記タイル毎に符号化された画像データであり、前記複数のタイルのそれぞれは、前記符号化の単位である符号化ブロック（ＣＴＢ）を行列状に１個以上含む。
【００２２】
前記ビットストリームは、前記１フレーム内の左上のタイルから順次右のタイルを経て順次下のタイルに至る順序で、タイル毎の前記符号化された画像データを含み、それぞれのタイル内の左上の符号化ブロックから順次右の符号化ブロックを経て順次下の符号化ブロックに至る順序で、符号化ブロック毎の前記符号化された画像データを含む。
【００２３】
前記ヘッダ情報は、前記各タイルのサイズ情報を含む。
【００２４】
前記画像復元部は、前記１フレーム内のタイル境界の有無に関わらず、前記１フレーム内の左上の符号化ブロックから順次右の符号化ブロックを経て順次下の符号化ブロックに至る順序で、復号処理と、左右で隣接するタイル間の境界がある場合のタイル境界部のフィルタ処理と、を順次実行する。
【００２５】
これにより、左右で隣接するタイル間のタイル境界部のフィルタ処理において、左のタイルの復号処理結果を、右のタイルのフィルタ処理が開始されるまで保持するための、タイル境界フィルタ用バッファを不要とすることができる。
【００２６】
〔２〕＜ビットストリーム解析部＋解析用データ＞
項１において、前記画像復号装置は、前記ビットストリーム解析部からアクセス可能な解析用データバッファ（２）をさらに備える。
【００２７】
前記ビットストリーム解析部は、前記ヘッダ情報に基づいて、前記画像復元部による復元処理の対象行の、各タイルの先頭に配置される符号化ブロックが格納される、前記ビットストリーム内の位置を算出して、前記解析用データバッファに保持する。
【００２８】
前記ビットストリーム解析部は、前記解析用データバッファに保持される、前記画像復元部による復元処理の対象行の、対応する画像データを前記ビットストリームから読み出して、前記画像復元部に供給する。前記ビットストリーム解析部は、各タイルの先頭に配置される符号化ブロックが格納される、前記ビットストリーム内の前記位置に基づいて、前記読み出しを行う。
【００２９】
これにより、前記タイル境界フィルタ用バッファが不要となるため、代わりに必要とされる前記解析用データバッファの大きさを、前記タイル境界フィルタ用バッファの数分の１以下に抑えることができる。
【００３０】
〔３〕＜項２の画像復元部の構成＞
項２において、前記画像復号装置は、前記画像復元部から出力される復号画像を格納するフレームバッファ（７）をさらに備える。
【００３１】
前記画像復元部は、予測画像生成部（１３）と差分画像生成部（１４）と加算部（１５）とフィルタ処理部（１６）と第１バッファ（５）と第２バッファ（６）とを含む。
【００３２】
前記第１バッファは、前記予測画像生成部から出力される予測画像情報のうち、処理対象の符号化ブロックの下側に隣接する符号化ブロックに対する予測画像生成処理に必要な、上方向フィルタ前画素情報を保持する。
【００３３】
前記予測画像生成部は、前記ビットストリーム解析部から供給される前記画像データを構成する予測データと、前記第１バッファに保持される前記上方向フィルタ前画素情報と、前記フレームバッファに格納される復号済みの画素情報とに基づいて、予測画像を生成する。
【００３４】
前記差分画像生成部は、前記ビットストリーム解析部から供給される前記画像データを構成する残差データに基づいて、差分画像を生成する。
【００３５】
前記加算部は、前記予測画像と前記差分画像を加算して、フィルタ前復号画像を生成する。
【００３６】
前記第２バッファは、前記フィルタ処理部から出力される復号画像の画素情報のうち、処理対象の符号化ブロックの下側に隣接する符号化ブロックに対するフィルタ処理に必要な、上方向フィルタ後画素情報を保持する。
【００３７】
前記フィルタ処理部は、前記加算部から供給される前記フィルタ前復号画像と、前記第２バッファに保持される前記上方向フィルタ後画素情報とに基づいて、復号画像を生成し、前記画像復元部から出力する。
【００３８】
これにより、項２の画像復元部を、好適に構成することができる。
【００３９】
〔４〕＜画像復元部の入力部にバッファ＋タイル毎のデータサイズ＞
項１において、前記画像復号装置は、前記ビットストリーム解析部から出力される、前記符号化された画像データを一時的に格納して、前記画像復元部に供給する、画像データバッファ（３）をさらに備える。
【００４０】
前記ビットストリーム解析部は、前記ビットストリーム内に格納される通りの順序で、前記画像データを前記画像データバッファに出力し、前記ヘッダ情報に基づいて、タイル毎のデータサイズを算出して、前記画像復元部に出力する。
【００４１】
前記画像復元部は、前記タイル毎のデータサイズに基づいて、復号処理の対象である画像データが格納されるアドレスを算出し、前記画像データバッファから前記画像データを読み出して前記復号処理を施す。
【００４２】
これにより、画像復元部からの画像データの読み出し順序を項１記載の処理順序に適合させ、項２と項３の解析用データバッファ（２）に代えることができる。
【００４３】
〔５〕＜項４の画像復元部の構成＞
項４において、前記画像復号装置は、前記画像復元部から出力される復号画像を格納するフレームバッファ（７）をさらに備える。
【００４４】
前記画像復元部は、データ読み出し部（１７）とバッファ位置情報格納部（１８）と予測画像生成部（１３）と差分画像生成部（１４）と加算部（１５）とフィルタ処理部（１６）と第１バッファ（５）と第２バッファ（６）とを含む。
【００４５】
前記バッファ位置情報格納部は、前記タイル毎のデータサイズに基づいて、復号処理の対象である画像データが格納される前記アドレスを保持する。
【００４６】
前記データ読み出し部は、前記バッファ位置情報格納部に格納される前記アドレスに基づいて、前記画像データバッファから画像データを読み出し、読み出した前記画像データを構成する予測データを前記予測画像生成部に供給し、読み出した前記画像データを構成する残差データを前記差分画像生成部に供給する。
【００４７】
前記第１バッファは、前記予測画像生成部から出力される予測画像情報のうち、処理対象の符号化ブロックの下側に隣接する符号化ブロックに対する予測画像生成処理に必要な、上方向フィルタ前画素情報を保持する。
【００４８】
前記予測画像生成部は、前記データ読み出し部から供給される前記予測データと、前記第１バッファに保持される前記上方向フィルタ前画素情報と、前記フレームバッファに格納される復号済みの画素情報とに基づいて、予測画像を生成する。
【００４９】
前記差分画像生成部は、前記データ読み出し部から供給される前記残差データに基づいて、差分画像を生成する。
【００５０】
前記加算部は、前記予測画像と前記差分画像を加算して、フィルタ前復号画像を生成する。
【００５１】
前記第２バッファは、前記フィルタ処理部から出力される復号画像の画素情報のうち、処理対象の符号化ブロックの下側に隣接する符号化ブロックに対するフィルタ処理に必要な、上方向フィルタ後画素情報を保持する。
【００５２】
前記フィルタ処理部は、前記加算部から供給される前記フィルタ前復号画像と、前記第２バッファに保持される前記上方向フィルタ後画素情報とに基づいて、復号画像を生成し、前記画像復元部から出力する。
【００５３】
これにより、項４の画像復元部を、好適に構成することができる。
【００５４】
〔６〕＜画像復元部の入力部にタイル毎のバッファ＞
項１において、前記画像復号装置は、前記ビットストリーム解析部から出力される、前記符号化された画像データを一時的に格納する、複数の画像データバッファ（４＿１、４＿２、４＿３、…）をさらに備える。
【００５５】
前記複数の画像バッファは、前記復号処理対象の複数のタイルに対応付けられる。
【００５６】
前記ビットストリーム解析部は、前記画像データを対応する前記画像データバッファに出力する。
【００５７】
前記画像復元部は、復号処理の対象である画像データが格納される、前記画像データバッファから前記画像データを読み出して前記復号処理を施す。
【００５８】
これにより、画像復元部からの画像データの読み出し順序を、項１記載の処理順序に適合させることができる。
【００５９】
〔７〕＜項６の画像復元部の構成＞
項６において、前記画像復号装置は、前記画像復元部から出力される復号画像を格納するフレームバッファ（７）をさらに備える。
【００６０】
前記画像復元部は、データ読み出し部（１７）とバッファ位置情報格納部（１８）と予測画像生成部（１３）と差分画像生成部（１４）と加算部（１５）とフィルタ処理部（１６）と第１バッファ（５）と第２バッファ（６）とを含む。
【００６１】
前記バッファ位置情報格納部は、前記タイル毎に、既に読み出した画像データの量に基づいて、復号処理の対象である次の画像データが格納されるアドレスを保持する。
【００６２】
前記データ読み出し部は、復号処理対象の画像データの属するタイルに対応する前記画像データバッファから、前記バッファ位置情報格納部に格納される前記アドレスに基づいて、画像データを読み出し、読み出した前記画像データを構成する予測データを前記予測画像生成部に供給し、読み出した前記画像データを構成する残差データを前記差分画像生成部に供給する。
【００６３】
前記第１バッファは、前記予測画像生成部から出力される予測画像情報のうち、処理対象の符号化ブロックの下側に隣接する符号化ブロックに対する予測画像生成処理に必要な、上方向フィルタ前画素情報を保持する。
【００６４】
前記予測画像生成部は、前記データ読み出し部から供給される前記予測データと、前記第１バッファに保持される前記上方向フィルタ前画素情報と、前記フレームバッファに格納される復号済みの画素情報とに基づいて、予測画像を生成する。
【００６５】
前記差分画像生成部は、前記データ読み出し部から供給される前記残差データに基づいて、差分画像を生成する。
【００６６】
前記加算部は、前記予測画像と前記差分画像を加算して、フィルタ前復号画像を生成する。
【００６７】
前記第２バッファは、前記フィルタ処理部から出力される復号画像の画素情報のうち、処理対象の符号化ブロックの下側に隣接する符号化ブロックに対するフィルタ処理に必要な、上方向フィルタ後画素情報を保持する。
【００６８】
前記フィルタ処理部は、前記加算部から供給される前記フィルタ前復号画像と、前記第２バッファに保持される前記上方向フィルタ後画素情報とに基づいて、復号画像を生成し、前記画像復元部から出力する。
【００６９】
これにより、項６の画像復元部を、好適に構成することができる。
【００７０】
〔８〕＜画像復元部の入力部に固定長データを格納するバッファ＞
項１において、前記画像復号装置は、前記ビットストリーム解析部から出力される、前記符号化された画像データを一時的に格納して、前記画像復元部に供給する、画像データバッファ（３）をさらに備える。
【００７１】
前記ビットストリーム解析部は、前記ビットストリーム内に格納される通りの順序で、前記画像データをタイル毎のデータサイズを所定の固定長データサイズに変換して、前記画像データバッファに出力する。
【００７２】
前記画像復元部は、前記所定の固定長データサイズに基づいて、復号処理の対象である画像データが格納されるアドレスを算出し、前記画像データバッファから前記アドレスにもとづいて前記画像データを読み出して前記復号処理を施す。
【００７３】
これにより、画像復元部からの画像データの読み出し順序を項１記載の処理順序に適合させ、項２と３の解析用データバッファ（２）に代えることができる。
【００７４】
〔９〕＜項８の画像復元部の構成＞
項８において、前記画像復号装置は、前記画像復元部から出力される復号画像を格納するフレームバッファ（７）をさらに備える。
【００７５】
前記画像復元部は、データ読み出し部（１７）とバッファ位置情報算出部（１９）と予測画像生成部（１３）と差分画像生成部（１４）と加算部（１５）とフィルタ処理部（１６）と第１バッファ（５）と第２バッファ（６）とを含む。
【００７６】
前記バッファ位置情報算出部は、前記所定の固定長データサイズに基づいて、復号処理の対象である画像データが格納されるアドレスを算出する。
【００７７】
前記データ読み出し部は、前記バッファ位置情報算出部で算出された前記アドレスに基づいて、前記画像データバッファから画像データを読み出し、読み出した前記画像データを構成する予測データを前記予測画像生成部に供給し、読み出した前記画像データを構成する残差データを前記差分画像生成部に供給する。
【００７８】
前記第１バッファは、前記予測画像生成部から出力される予測画像情報のうち、処理対象の符号化ブロックの下側に隣接する符号化ブロックに対する予測画像生成処理に必要な、上方向フィルタ前画素情報を保持する。
【００７９】
前記予測画像生成部は、前記データ読み出し部から供給される前記予測データと、前記第１バッファに保持される前記上方向フィルタ前画素情報と、前記フレームバッファに格納される復号済みの画素情報とに基づいて、予測画像を生成する。
【００８０】
前記差分画像生成部は、前記データ読み出し部から供給される前記残差データに基づいて、差分画像を生成する。
【００８１】
前記加算部は、前記予測画像と前記差分画像を加算して、フィルタ前復号画像を生成する。
【００８２】
前記第２バッファは、前記フィルタ処理部から出力される復号画像の画素情報のうち、処理対象の符号化ブロックの下側に隣接する符号化ブロックに対するフィルタ処理に必要な、上方向フィルタ後画素情報を保持する。
【００８３】
前記フィルタ処理部は、前記加算部から供給される前記フィルタ前復号画像と、前記第２バッファに保持される前記上方向フィルタ後画素情報とに基づいて、復号画像を出力する。
【００８４】
これにより、項８の画像復元部を、好適に構成することができる。
【００８５】
〔１０〕＜タイル境界に関わらず画像全体をラスタスキャン順で復号＋フィルタ＞
符号化された画像データを含むビットストリームが入力され、前記符号化された画像データに対して復号処理を施し、前記復号処理の結果である復号データにフィルタ処理を施す、画像復号装置（１０）であって、以下のように構成される。
【００８６】
前記符号化された画像データは、１フレームの原画像が矩形領域である複数のタイルに分割され、前記タイル毎に符号化された画像データであり、前記複数のタイルのそれぞれは、前記符号化の単位である符号化ブロック（ＣＴＢ）を行列状に１個以上含む。
【００８７】
前記ビットストリームは、前記１フレーム内の左上のタイルから順次右のタイルを経て順次下のタイルに至る順序で、タイル毎の前記符号化された画像データを含み、それぞれのタイル内の左上の符号化ブロックから順次右の符号化ブロックを経て順次下の符号化ブロックに至る順序で、符号化ブロック毎の前記符号化された画像データを含む。
【００８８】
前記画像復号装置は、前記１フレーム内のタイル境界の有無に関わらず、前記１フレーム内の左上の符号化ブロックから順次右の符号化ブロックを経て順次下の符号化ブロックに至る順序で、復号処理と、左右で隣接するタイル間の境界がある場合のタイル境界部のフィルタ処理と、を順次実行する。
【００８９】
これにより、左右で隣接するタイル間のタイル境界部のフィルタ処理において、左のタイルの復号処理結果を、右のタイルのフィルタ処理が開始されるまで保持する、タイル境界フィルタ用バッファを不要とすることができる。
【００９０】
２．実施の形態の詳細
実施の形態について更に詳述する。
【００９１】
〔実施形態１〕＜タイル境界に関わらず画像全体をラスタスキャン順で復号＋フィルタ＞
図１は、実施形態１に係る画像復号装置の構成を示すブロック図である。
【００９２】
画像復号装置１０は、ビットストリーム解析部１１と画像復元部１２とを含んで構成される。ビットストリーム解析部１１と画像復元部１２とは、並列化されていないそれぞれ単一のハードウェアによる信号処理回路であり、特に制限されないが、例えば、クロックに同期して動作する、パイプライン構成のディジタル論理回路で構成される。また、特に制限されないが、例えば、公知のＣＭＯＳ（Complementary Metal-Oxide-Semiconductor field effect transistor）ＬＳＩ（Large Scale Integrated circuit）の製造技術を用いて、シリコンなどの単一半導体基板上に形成される。
【００９３】
ビットストリーム解析部１１には、特に制限されないが、例えば、H.265/HEVCの規格に従う、ヘッダ情報と符号化された画像データを含む、ビットストリームが入力される。画像復元部１２は、ビットストリーム解析部１１から供給される符号化された画像データに対して復号処理を施し、復号処理の結果である復号データにフィルタ処理を施す。
【００９４】
図２は、１フレームの画像におけるタイルとＣＴＢの配置を示す説明図であり、図３は、ビットストリームにおけるタイルとＣＴＢの配置を示す説明図である。さらに図４は、ビットストリームにおけるタイルとＣＴＢの配置を示す、より詳細な説明図である。上側にはビットストリーム内のタイルの配置、下側にはさらに、ビットストリーム内の各タイルにおけるＣＴＢの配置が示される。
【００９５】
H.265/HEVCの規格に従えば、符号化された画像データは、１フレームの原画像が矩形領域である複数のタイルに分割され、タイル毎に符号化された画像データであり、複数のタイルのそれぞれは、符号化の単位である符号化ブロック（ＣＴＢ）を行列状に１個以上含む。図２に示すように、１フレームの画像が、ｍ列ｎ行のタイルに分割されており、各タイルは複数のＣＴＢで構成されている。Ｘ１〜Ｘｍは各タイルが列方向に含むＣＴＢの数を表し、Ｙ１〜Ｙｎは各タイルが行方向に含むＣＴＢの数を表している。例えば左上端のタイルTile[1,1]は、Ｘ１列Ｙ１行のＣＴＢで構成されている。ここで、ｍ、ｎ、Ｘ１〜Ｘｍ、Ｙ１〜Ｙｎはそれぞれ１以上の整数である。列方向に１列のタイルのみで構成され縦方向のタイル境界がない場合、また、行方向に１行のタイルのみで構成され横方向のタイル境界がない場合、さらには、１フレームが１個のタイルのみで構成される場合が含まれる。
【００９６】
ビットストリームは、１フレーム内の左上のタイルから順次右のタイルを経て順次下のタイルに至る順序で、タイル毎に符号化された画像データを含み、それぞれのタイル内の左上の符号化ブロックから順次右の符号化ブロックを経て順次下の符号化ブロックに至る順序で、符号化ブロック毎の前記符号化された画像データを含む。ビットストリームを構成する符号化された画像データは、図３に示すように、複数のタイルはフレーム内をラスタスキャンする順序で構成されている。即ち、左上端のTile[1,1]から右方向に、Tile[2,1]、…を経て１フレームの右端のTile[m,1]まで進み、次に下の段の、Tile[1,2]からTile[m,2]に進む。各タイル内は、さらにラスタスキャンする順序で構成されている。より詳細には、図４に示すように、左上端のTile[1,1]の左上端のCTB1,1[1,1]から右方向にTile[1,1]の右端のCTB1,1[X1,1]まで進み、その後同じTile[1,1]の次の行のCTB1,1[1,2]から右方向に右端のCTB1,1[X1,2]へ進む。Tile[1,1]について下端のCTB1,1[1,Y1]〜CTB1,1[X1,Y1]が終わると、次に、右側のTile[2,1]に進む。Tile[2,1]内はラスタスキャンの順序で、CTB2,1[1,1]〜CTB2,1[X1,Y1]へ進む。以降順に右端のTile[m,1]まで進むと、その次は、下の行のTile[1,2]〜Tile[m,2]に進む。これを繰り返して１フレームの下端の行のTile[1,n]〜Tile[m,n]に進む。
【００９７】
ＣＴＢ毎に符号化された画像データは可変長である。ビットストリームは、上記のように符号化された画像データを含み、さらにヘッダ情報を含む。ヘッダ情報は、各タイルのサイズ情報を含む。
【００９８】
図５は、実施形態１（他の実施形態も同様に妥当する）に係る画像復号装置におけるタイルとＣＴＢの処理順序を示す説明図であり、図６は、実施形態１（他の実施形態も同様に妥当する）に係る画像復号装置におけるタイルとＣＴＢの処理順序を示す、より詳細な説明図である。
【００９９】
画像復元部１２は、１フレーム内にタイル境界があるかないかに関わらず、１フレーム内の左上の符号化ブロック（ＣＴＢ）から順次右の符号化ブロック（ＣＴＢ）を経て順次下の符号化ブロック（ＣＴＢ）に至る順序で、復号処理と、左右で隣接するタイル間の境界がある場合のタイル境界部のフィルタ処理と、を順次実行する。
【０１００】
ビットストリームが、上述のように、タイル内ではそれぞれのタイルの範囲内でのラスタスキャンの順序で、符号化された画像データを含むのに対し、復号処理は、図５に示すように、タイル境界を無視して、１フレームの画面全体をラスタスキャンの順序で処理する。画像復元部１２の処理は、符号化された画像データに対する復号処理と、その復号結果に対するフィルタ処理である。復号処理の結果は、外部のフレームバッファなどに転送されることなく、そのままフィルタ処理を施される。Tile[1,1]の１行目、Tile[2,1]の１行目から１フレームの右端のTile[m,1]の１行目までのＣＴＢに対して、復号処理とフィルタ処理を行う。次に下の行のTile[1,1]の２行目、Tile[2,1]の２行目から１フレームの右端のTile[m,1]の２行目までの処理を行い、１行ずつ順次Tile[1,1] 、Tile[2,1]からTile[m,1]の各Ｙ１行目までの処理を行う。その後、Tile[1,2]、Tile[2,2]〜Tile[m,2]のそれぞれの１行目からＹ２行目までの処理、Tile[1,3]、Tile[2,3]〜Tile[m,3]のそれぞれの１行目からＹ３行目までの処理を１行ずつ順次行う。その後さらに、１フレームの画面の最下段のタイルである、Tile[1,n]、Tile[2,n]〜Tile[m,n]のそれぞれの１行目からＹｎ行目までの処理を１行ずつ順次行う。より詳細には、図６に示すように、左上端のTile[1,1]の左上端のCTB1,1[1,1]から右方向にTile[1,1]の右端のCTB1,1[X1,1]まで進み、その後右隣のTile[2,1]の左上端のCTB2,1[1,1]から右方向にTile[2,1]の右端のCTB1,1[X2,1]まで進む。Tile[1,1]の右端のCTB1,1[X1,1]と右隣のTile[2,1]の左上端のCTB2,1[1,1]とに対しては、連続して画像復元部１２によって、符号化された画像データに対する復号処理と、その復号結果に対するフィルタ処理とが施される。その後さらに、１フレームの画面の１行目の処理を進めて、右上端のTile[m,1]の右端のCTB1,1[Xm,1]まで進んだ後、２行目の処理に移行する。２行目も同様に、Tile[1,1]の左端のCTB1,1[1,2]から右方向に右端のCTB1,1[X1,2]、Tile[2,1]の２行目のCTB2,1[1,2]〜CTB2,1[X2,2]、さらに右端のCTBm,1[Xm,2]まで進む。その後最上段のタイルの処理を順次１行ずつ進めた後、２段目の処理に移る。２段目以降タイルについても同様に、タイル境界の有無に関わりなく、ＣＴＢを１行ずつ順次処理する。２段目のタイルTile[1,2]、Tile[2,2]〜Tile[m,2]の、１行目CTB1,2[1,1]〜CTB1,2[X1,1]、CTB2,2[1,1]〜CTB2,2[X2,1]からCTBm,2[1,1]〜CTBm,2[Xm,1]まで進む。次に２行目CTB1,2[1,2]〜CTB1,2[X1,2]、CTB2,2[1,2]〜CTB2,2[X2,2]からCTBm,2[1,2]〜CTBm,2[Xm,2]まで進む。さらに順次１行毎に、Ｙ２行目の最下行CTB1,2[1,Y2]〜CTB1,2[X1,Y2]、CTB2,2[1,Y2]〜CTB2,2[X2,Y2]からCTBm,2[1,Y2]〜CTBm,2[Xm,Y2]まで進む。その後さらに最下段のタイルTile[1,n]、Tile[2,n]〜Tile[m,n]の、１行目CTB1,n[1,1]〜CTB1,n[X1,1]、CTB2,n[1,1]〜CTB2,n[X2,1]、CTBm,n[1,1]〜CTBm,n[Xm,1]に進む。さらに次の２行目CTB1,n[1,2]〜CTB1,n[X1,2]、CTB2,n[1,2]〜CTB2,n[X2,2]、CTBm,n[1,2]〜CTBm,n[Xm,2]から、１行ずつ順次、最終行CTB1,n[1,Yn]〜CTB1,n[X1,Yn]、CTB2,n[1,Yn]〜CTB2,n[X2,Yn]、CTBm,n[1,Yn]〜CTBm,n[Xm,Yn]まで進む。
【０１０１】
復号処理は、符号化ブロック単位で行われるが、フィルタ処理は、隣接する画素のデータを必要とする。タイル境界におけるフィルタ処理では、隣接するタイルでの復号処理の結果を必要とする。タイルが左右で隣接するときには、先に処理される左のタイルの右端の復号された画像データが、右側のタイルの左端の画素のためのフィルタ処理の際に使われる。タイルが上下で隣接するときには、先に処理される上側のタイルの下端の復号された画像データが、下側のタイルの上端の画素のためのフィルタ処理の際に使われる。左右または上下に隣接するタイルでのフィルタ処理に使われる復号された画像データは、タイルの端（右端または下端）の１画素分には限られず、フィルタのタップ数により、複数画素であってもよい。
【０１０２】
復号処理を、ビットストリームの画像データの並びと同じ順序で進める、従来の方式では、左上端のタイルTile[1,1]の１行目から順次Ｙ１行目までの復号処理を行い、その後、右側のTile[2,1]の復号処理に進む。フィルタ処理は、Tile[1,1]の１行目から順次Ｙ１行目まで実行した後、右側のTile[2,1]におけるフィルタ処理に移る。Tile[1,1]の１行目から順次Ｙ１行目までの右端の復号データは、右側のTile[2,1]におけるフィルタ処理が始まるまで、保持されなければならない。したがって、従来技術による画像復元部には、左右で隣接するタイル間のタイル境界部のフィルタ処理において、左のタイルの復号処理結果を、右のタイルのフィルタ処理が開始されるまで保持されることとなり、タイル境界フィルタ用バッファが必要となる。これを避けるためには、左のタイルの復号処理結果を例えば外付けのフレームバッファに一旦格納し、右のタイルのフィルタ処理が開始されたときに再度読み出す必要がある。いずれにしても、右のタイルのフィルタ処理が開始されるまで、何らかの方法で左のタイルの復号処理結果を保持しておく必要がある。
【０１０３】
一方、本実施形態によれば、タイル境界の有無に関わらず、１行の復号処理とフィルタ処理を連続して処理するため、タイル境界においても、左のタイルの復号処理結果を、右のタイルのフィルタ処理に直接受け渡すことができるため、上記のようなタイル境界フィルタ用バッファを必要としない。なお、上下タイル境界におけるタイル境界フィルタ用バッファは、従来技術と本実施形態で、どちらも同様に必要である。また、本実施形態によれば、タイル境界の処理に必要なデータの転送量を減らすことができる。さらに、フィルタ処理を復号のパイプラインに組み込むことができるので、性能の向上を図ることができる。
【０１０４】
〔実施形態２〕＜ビットストリーム解析部＋解析用データ＞
図７は、実施形態２に係る画像復号装置１０の構成例を示すブロック図である。
【０１０５】
本実施形態２に係る画像復号装置１０は、ビットストリーム解析部１１と画像復元部１２とを含み、さらに、ビットストリーム解析部１１からアクセス可能な解析用データバッファ２と画像復元部１２からアクセス可能なフレームバッファ７とを含んで構成される。フレームバッファ７は、外部メモリであってもよいし、画像復号装置１０を構成するビットストリーム解析部１１や画像復元部１２と同一チップ上に構成されても良い。
【０１０６】
ビットストリーム解析部１１には、ヘッダ情報と符号化された画像データを含むビットストリームが入力される。ビットストリーム解析部１１は、ビットストリーム内のヘッダ情報に基づいて、画像復元部１２による復元処理の対象行の、ビットストリーム内の位置を算出して、解析用データバッファ２に保持する。ビットストリーム内の位置とは、各タイルの先頭に配置される符号化ブロックが格納される位置である。ビットストリーム解析部１１は、解析用データバッファ２に保持される、復元処理対象の符号化ブロックが格納される位置に基づいて、対応する画像データをビットストリームから読み出して、画像復元部１２に供給する。
【０１０７】
これにより、前記タイル境界フィルタ用バッファを不要とすることができる。そのために、代わりに必要とされる、解析用データバッファの大きさは、前記タイル境界フィルタ用バッファの数分の１以下である。
【０１０８】
タイル境界フィルタ用バッファの大きさは、１フレームの画面の縦幅即ち縦方向のライン数から算出される。例えば、１ライン当たり、画素情報16バイトとフィルタ情報2バイトが必要であるとすると、1000ラインで18,000バイトとなる。これに対し、解析用データは、横方向のタイル数（１フレームの画面の水平方向に分割されたタイルの数）×4バイトでよい。例えば、横方向に3分割されているとき、必要な解析用データは、12バイトとなる。解析用データバッファの大きさは、横方向のタイル数について想定される最大値を考慮して、決められる。１フレームの画面の横幅を2048画素とし、CTBを8画素×8画素で構成し、１CTBで1タイルを構成したと仮定しても、横方向のタイル数は256であり、必要な解析用データは、1024バイトとなる。上述の例による、タイル境界フィルタ用バッファの大きさ18,000バイトの約1/18である。以上のように、解析用データバッファの大きさは、タイル境界フィルタ用バッファの数分の１以下に抑えることができる。
【０１０９】
図８は、図７の画像復号装置１０において特に画像復元部１２の詳細な構成例を示すブロック図である。
【０１１０】
画像復元部１２は、予測画像生成部１３と差分画像生成部１４と加算部１５とフィルタ処理部１６とバッファＡ（５）とバッファＢ（６）とを含んで構成される。バッファＡ（５）は、予測画像生成部１３から出力される予測画像情報のうち、処理対象の符号化ブロックの下側に隣接する符号化ブロックに対する予測画像生成処理に必要な、フィルタ処理前の上方向画素情報を保持する。
【０１１１】
H.265/HEVCの規格に従えば、ビットストリーム解析部１１から供給される画像データは、予測データと残差データで構成される。予測画像生成部１３は、ビットストリーム解析部１１から供給される画像データを構成する予測データと、バッファＡ（５）に保持されるフィルタ処理前の上方向画素情報と、フレームバッファ７に格納される復号済みの画素情報とに基づいて、予測画像を生成する。差分画像生成部１４は、ビットストリーム解析部１１から供給される画像データを構成する残差データに基づいて、差分画像を生成する。加算部１５は、予測画像と差分画像を加算して、フィルタ前復号画像を生成する。
【０１１２】
バッファＢ（６）は、フィルタ処理部１６から出力される復号画像の画素情報のうち、処理対象の符号化ブロックの下側に隣接する符号化ブロックに対するフィルタ処理に必要な、フィルタ処理後の上方向画素情報を保持する。フィルタ処理部１６は、加算部１５から供給されるフィルタ前復号画像と、バッファＢ（６）に保持されるフィルタ処理後の上方向画素情報とに基づいて、復号画像を生成し、画像復元部１２からフレームバッファ７に出力する。
【０１１３】
これにより、画像復元部１２を、好適に構成することができる。フィルタ処理部１５には、フィルタ処理後の上方向画素情報を格納するためのバッファＢ（６）が接続されるが、左方向画素情報を格納するためのバッファは不要である。加算部１５から供給される復号画像が直接フィルタ処理部１６に入力されるように構成されており、画像復元部１２の処理は、１フレーム内にタイル境界があるかないかに関わらず、ラスタスキャンの順序で進められるので、左のタイルの復号画像が直後に処理される右側のタイルのフィルタ処理１６に入力されるためである。また、パイプライン構成も、復号とフィルタ処理を一括して最適化することができるので、性能の向上を図ることができる。
【０１１４】
〔実施形態３〕＜画像復元部の入力部にバッファ＋タイル毎のデータサイズ＞
図９は、実施形態３に係る画像復号装置１０の別の構成例を示すブロック図である。
【０１１５】
本実施形態３に係る画像復号装置１０は、ビットストリーム解析部１１と画像復元部１２とを含み、さらに、ビットストリーム解析部１１から出力される符号化された画像データを一時的に格納する、画像データバッファ３と、画像復元部１２らアクセス可能なフレームバッファ７とを含んで構成される。ビットストリーム解析部１１には、ヘッダ情報と符号化された画像データを含むビットストリームが入力される。ビットストリーム解析部１１は、ビットストリーム内に格納される通りの順序で、画像データを画像データバッファ３に出力し、ビットストリーム内のヘッダ情報に基づいて、タイル毎のデータサイズを算出して、画像復元部１２に出力する。ビットストリーム内に格納される通りの順序とは、タイルをラスタスキャンの順序で、タイル内ではそれぞれのタイルの範囲内でのラスタスキャンの順序である。画像復元部１２は、ビットストリーム解析部１１から入力されるタイル毎のデータサイズに基づいて、復号処理の対象である画像データが格納される、画像データバッファ３におけるアドレスを算出し、画像データバッファ３からそのアドレスに基づいて画像データを読み出して復号処理を施す。
【０１１６】
これにより、画像復元部１２への画像データの読み出し順序を実施形態１に記載の処理順序に適合させ、実施形態２の解析用データバッファ２を不要とすることができる。また、ビットストリーム解析部１１は、入力されたビットストリームを先頭から順に処理するので、一旦メモリ上に退避し、処理に際して再度読み出すようなデータ転送を不要とすることができる。
【０１１７】
図１０は、図９の画像復号装置１０において特に画像復元部１２の詳細な構成例を示すブロック図である。
【０１１８】
画像復元部１２は、データ読み出し部１７とバッファ位置情報格納部１８と予測画像生成部１３と差分画像生成部１４と加算部１５とフィルタ処理部１６とバッファＡ（５）とバッファＢ（６）とを含んで構成される。
【０１１９】
バッファ位置情報格納部１８は、ビットストリーム解析部１１から入力されるタイル毎のデータサイズに基づいて、復号処理の対象である画像データが格納される、画像データバッファ３におけるアドレスを保持する。データ読み出し部１７は、バッファ位置情報格納部１８に格納される前記アドレスに基づいて、画像データバッファ３から画像データを読み出し、読み出した画像データを構成する予測データを予測画像生成部１３に供給し、読み出した画像データを構成する残差データを差分画像生成部１４に供給する。
【０１２０】
バッファＡ（５）は、予測画像生成部１３から出力される予測画像情報のうち、処理対象の符号化ブロックの下側に隣接する符号化ブロックに対する予測画像生成処理に必要な、フィルタ処理前の上方向画素情報を保持する。予測画像生成部１３は、データ読み出し部１７から供給される予測データと、バッファＡ（５）に保持されるフィルタ処理前の上方向画素情報と、フレームバッファ７に格納される復号済みの画素情報とに基づいて、予測画像を生成する。差分画像生成部１２は、データ読み出し部１７から供給される残差データに基づいて、差分画像を生成する。加算部１５は、予測画像と差分画像を加算して、フィルタ前復号画像を生成する。
【０１２１】
バッファＢ（６）は、フィルタ処理部１６から出力される復号画像の画素情報のうち、処理対象の符号化ブロックの下側に隣接する符号化ブロックに対するフィルタ処理に必要な、フィルタ処理後の上方向画素情報を保持する。フィルタ処理部１６は、加算部１５から供給されるフィルタ前復号画像と、バッファＢ（６）に保持される、フィルタ処理後の上方向画素情報とに基づいて、復号画像を生成し、画像復元部１２からフレームバッファ７に出力する。
【０１２２】
これにより、実施形態２と同様に、画像復元部１２を、好適に構成することができる。フィルタ処理部１５には、フィルタ処理後の上方向画素情報を格納するためのバッファＢ（６）が接続されるが、左方向画素情報を格納するためのバッファは不要である。加算部１５から供給される復号画像が直接フィルタ処理部１６に入力されるように構成されており、画像復元部１２の処理は、１フレーム内にタイル境界があるかないかに関わらず、ラスタスキャンの順序で進められるので、左のタイルの復号画像が直後に処理される右側のタイルのフィルタ処理１６に入力されるためである。また、パイプライン構成も、復号とフィルタ処理を一括して最適化することができるので、性能の向上を図ることができる。
【０１２３】
〔実施形態４〕＜画像復元部の入力部にタイル毎のバッファ＞
図１１は、実施形態４に係る画像復号装置１０の別の構成例を示すブロック図である。
【０１２４】
本実施形態４に係る画像復号装置１０は、ビットストリーム解析部１１と画像復元部１２とを含み、さらに、ビットストリーム解析部１１から出力される、符号化された画像データを一時的に格納して、画像復元部１２に供給する、複数の画像データバッファ（４＿１、４＿２、４＿３、…）と、画像復元部１２からアクセス可能なフレームバッファ７とを含んで構成される。複数の画像データバッファ（４＿１、４＿２、４＿３、…）は、前記復号処理対象の複数のタイルにそれぞれ対応付けられている。ビットストリーム解析部１１は、画像データを複数の画像データバッファ（４＿１、４＿２、４＿３、…）のうち対応するいずれかに出力する。画像復元部１２は、復号処理の対象である画像データが格納される、画像データバッファ（４＿１、４＿２、４＿３、…のいずれか）から画像データを読み出して復号処理を施す。
【０１２５】
これにより、画像復元部からの画像データの読み出し順序を実施形態１に記載の処理順序に適合させ、実施形態２の解析用データバッファ２を不要とすることができる。また、ビットストリーム解析部１１は、入力されたビットストリームを先頭から順に処理するので、一旦メモリ上に退避し、処理に際して再度読み出すようなデータ転送を不要とすることができる。
【０１２６】
図１２は、図１１の画像復号装置１０において特に画像復元部１２の詳細な構成例を示すブロック図である。
【０１２７】
画像復元部１２は、データ読み出し部１７とバッファ位置情報格納部１８と予測画像生成部１３と差分画像生成部１４と加算部１５とフィルタ処理部１６とバッファＡ（５）とバッファＢ（６）とを含んで構成される。
【０１２８】
バッファ位置情報格納部１８は、タイル毎に、画像データバッファ（４＿１、４＿２、４＿３、…）から既に読み出した画像データの量に基づいて、復号処理の対象である次の画像データが格納されるアドレスを保持する。
【０１２９】
データ読み出し部１７は、復号処理対象の画像データの属するタイルに対応する画像データバッファ（４＿１、４＿２、４＿３、…のいずれか）から、バッファ位置情報格納部１８に格納されるアドレスに基づいて、画像データを読み出し、読み出した画像データを構成する予測データと残差データを、それぞれ予測画像生成部１３と差分画像生成部１４に供給する。
【０１３０】
バッファＡ（５）は、予測画像生成部１３から出力される予測画像情報のうち、処理対象の符号化ブロックの下側に隣接する符号化ブロックに対する予測画像生成処理に必要な、フィルタ処理前の上方向画素情報を保持する。
【０１３１】
予測画像生成部１３は、データ読み出し部１７から供給される予測データと、バッファＡ（５）に保持されるフィルタ処理前の上方向画素情報と、フレームバッファ７に格納される復号済みの画素情報とに基づいて、予測画像を生成する。差分画像生成部１４は、データ読み出し部１７から供給される残差データに基づいて、差分画像を生成する。加算部１５は、予測画像と差分画像を加算して、フィルタ前復号画像を生成する。
【０１３２】
バッファＢ（６）は、フィルタ処理部１６から出力される復号画像の画素情報のうち、処理対象の符号化ブロックの下側に隣接する符号化ブロックに対するフィルタ処理に必要な、フィルタ処理後の上方向画素情報を保持する。フィルタ処理部１６は、加算部１５から供給されるフィルタ前復号画像と、バッファＢ（６）に保持されるフィルタ処理後の上方向画素情報とに基づいて、復号画像を生成し、画像復元部１２からフレームバッファ７に出力する。
【０１３３】
これにより、実施形態２と同様に、画像復元部１２を、好適に構成することができる。フィルタ処理部１５には、フィルタ処理後の上方向画素情報を格納するためのバッファＢ（６）が接続されるが、左方向画素情報を格納するためのバッファは不要である。加算部１５から供給される復号画像が直接フィルタ処理部１６に入力されるように構成されており、画像復元部１２の処理は、１フレーム内にタイル境界があるかないかに関わらず、ラスタスキャンの順序で進められるので、左のタイルの復号画像が直後に処理される右側のタイルのフィルタ処理１６に入力されるためである。また、パイプライン構成も、復号とフィルタ処理を一括して最適化することができるので、性能の向上を図ることができる。
【０１３４】
〔実施形態５〕＜画像復元部の入力部に固定長データを格納するバッファ＞
図１３は、実施形態５に係る画像復号装置１０の別の構成例を示すブロック図である。
【０１３５】
本実施形態３に係る画像復号装置１０は、ビットストリーム解析部１１と画像復元部１２とを含み、さらに、ビットストリーム解析部１１から出力される、符号化された画像データを一時的に格納して、画像復元部１２に供給する、画像データバッファ３と、画像復元部１２らアクセス可能なフレームバッファ７とを含んで構成される。
【０１３６】
ビットストリーム解析部１１は、ビットストリーム内に格納される通りの順序で、画像データをタイル毎のデータサイズを所定の固定長データサイズに変換して、画像データバッファ３に出力する。画像復元部１２は、前記所定の固定長データサイズに基づいて、復号処理の対象である画像データが格納されるアドレスを算出し、画像データバッファ３から画像データを読み出して復号処理を施す。
【０１３７】
実施形態２では、ビットストリーム解析部１１は、画像データをタイル毎のデータサイズをビットストリーム内に格納される通りの可変長のまま、画像データバッファ３に出力する。そのため、各タイルの各行の先頭にある画像データが格納されているアドレスを算出するためには、各タイルのサイズを知る必要がある。そのため、ビットストリーム解析部１１は、ビットストリームのヘッダ情報からタイル毎のデータサイズを求め、画像復元部１２に供給している。
【０１３８】
一方、本実施形態５においては、画像データをタイル毎のデータサイズを所定の固定長データサイズに変換して、画像データバッファ３に出力する。このため、画像復元部１２は、ビットストリームにおけるタイル毎のデータサイズを個別に知らなくても、上記所定の固定長データサイズに基づいて、各タイルの各行の先頭にある画像データが格納されているアドレスを算出することができる。
【０１３９】
以上のように、ビットストリーム解析部１１から画像復元部１２に、タイル毎のデータサイズを供給することなく、画像復元部からの画像データの読み出し順序を実施形態１に記載の処理順序に適合させ、実施形態２の解析用データバッファ２を不要とすることができる。また、ビットストリーム解析部１１は、入力されたビットストリームを先頭から順に処理するので、一旦メモリ上に退避し、処理に際して再度読み出すようなデータ転送を不要とすることができる。
【０１４０】
図１４は、図１３の画像復号装置１０において特に画像復元部１２の詳細な構成例を示すブロック図である。
【０１４１】
画像復元部１２は、データ読み出し部１７とバッファ位置情報算出部１９と予測画像生成部１３と差分画像生成部１４と加算部１５とフィルタ処理部１６とバッファＡ（５）とバッファＢ（６）とを含んで構成される。
【０１４２】
バッファ位置情報算出部１９は、前記所定の固定長データサイズに基づいて、復号処理の対象である画像データが格納される、画像データバッファ３におけるアドレスを算出する。データ読み出し部１７は、バッファ位置情報算出部１９で算出されたアドレスに基づいて、画像データバッファ３から画像データを読み出し、読み出した画像データを構成する予測データを予測画像生成部１３に供給し、読み出した画像データを構成する残差データを差分画像生成部１４に供給する。
【０１４３】
バッファＡ（５）は、予測画像生成部１３から出力される予測画像情報のうち、処理対象の符号化ブロックの下側に隣接する符号化ブロックに対する予測画像生成処理に必要な、フィルタ処理前の上方向画素情報を保持する。予測画像生成部１３は、データ読み出し部１７から供給される予測データと、バッファＡ（５）に保持されるフィルタ処理前の上方向画素情報と、フレームバッファ７に格納される復号済みの画素情報とに基づいて、予測画像を生成する。差分画像生成部１４は、データ読み出し部１７から供給される残差データに基づいて、差分画像を生成する。加算部１５は、予測画像と差分画像を加算して、フィルタ前復号画像を生成する。
【０１４４】
バッファＢ（６）は、フィルタ処理部１６から出力される復号画像の画素情報のうち、処理対象の符号化ブロックの下側に隣接する符号化ブロックに対するフィルタ処理に必要な、フィルタ処理後の上方向画素情報を保持する。フィルタ処理部１６は、加算部１５から供給されるフィルタ前復号画像と、バッファＢ（６）に保持されるフィルタ処理後の上方向画素情報とに基づいて、復号画像を生成し、画像復元部１２からフレームバッファ７に出力する。
【０１４５】
これにより、実施形態２と同様に、画像復元部１２を、好適に構成することができる。フィルタ処理部１５には、フィルタ処理後の上方向画素情報を格納するためのバッファＢ（６）が接続されるが、左方向画素情報を格納するためのバッファは不要である。加算部１５から供給される復号画像が直接フィルタ処理部１６に入力されるように構成されており、画像復元部１２の処理は、１フレーム内にタイル境界があるかないかに関わらず、ラスタスキャンの順序で進められるので、左のタイルの復号画像が直後に処理される右側のタイルのフィルタ処理１６に入力されるためである。また、パイプライン構成も、復号とフィルタ処理を一括して最適化することができるので、性能の向上を図ることができる。また、実施形態２で必要とされた、ビットストリーム解析部１１から画像復元部１２へのタイル毎のデータサイズの供給を不要とすることができる。
【０１４６】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
【符号の説明】
【０１４７】
１  バッファ
２  ビットストリーム解析用データバッファ
３  画像データ（予測データ・残差データ）用バッファ
４  画像データ（予測データ・残差データ）用バッファ（タイル毎）
５  予測画像生成用バッファ（バッファＡ）
６  フィルタ処理用バッファ（バッファＢ）
７  フレームバッファ（外部メモリ）
１０  画像復号装置
１１  ビットストリーム解析部
１２  画像復元部
１３  予測画像生成部
１４  差分画像生成部
１５  加算部
１６  フィルタ処理部
１７  データ読み出し部
１８  バッファ位置情報保持部
１９  バッファ位置情報算出部
【図１】
2015012410.tif 000003
【図２】
2015012410.tif 000004
【図３】
2015012410.tif 000005
【図４】
2015012410.tif 000006
【図５】
2015012410.tif 000007
【図６】
2015012410.tif 000008
【図７】
2015012410.tif 000009
【図８】
2015012410.tif 000010
【図９】
2015012410.tif 000011
【図１０】
2015012410.tif 000012
【図１１】
2015012410.tif 000013
【図１２】
2015012410.tif 000014
【図１３】
2015012410.tif 000015
【図１４】
2015012410.tif 000016