JP7060802B2 - バッファ装置 - Google Patents

バッファ装置 Download PDF

Info

Publication number
JP7060802B2
JP7060802B2 JP2018111412A JP2018111412A JP7060802B2 JP 7060802 B2 JP7060802 B2 JP 7060802B2 JP 2018111412 A JP2018111412 A JP 2018111412A JP 2018111412 A JP2018111412 A JP 2018111412A JP 7060802 B2 JP7060802 B2 JP 7060802B2
Authority
JP
Japan
Prior art keywords
reference image
image data
region
search range
buffer
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
JP2018111412A
Other languages
English (en)
Other versions
JP2019216324A (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2018111412A priority Critical patent/JP7060802B2/ja
Priority to PCT/JP2019/022087 priority patent/WO2019239951A1/ja
Priority to US16/973,741 priority patent/US11451805B2/en
Publication of JP2019216324A publication Critical patent/JP2019216324A/ja
Application granted granted Critical
Publication of JP7060802B2 publication Critical patent/JP7060802B2/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
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation
    • H04N19/433Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00007Time or data compression or expansion
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • G11B2020/10675Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control

Description

本発明は、バッファ装置に関する。
MPEG(Moving Picture Experts Group)-2、MPEG-4、MPEG-4/AVC(Advanced Video Coding)等の動画像符号化規格がある。また、HEVC(High Efficiency Video Coding)は、今後の普及が見込まれている動画像符号化規格である。HEVCの符号化効率は、MPEG-4/AVCの符号化効率の約2倍である。このように符号化効率が向上したことで、HEVCは、4K(3840画素×2160ライン)、8K(7680画素×4320ライン)等の高い空間解像度の動画像を符号化することが可能である。
動画像符号化規格において、互いに異なるサイズの符号化ブロックを用いて入力画像データを符号化するという階層的な符号化処理は、符号化効率を大きく向上させる。この階層的な符号化処理では、符号化装置は、符号化済みの参照画像データと入力画像データとの差分の累積値等が最小となる座標を、参照画像に含まれている探索範囲において探索する。
階層的な符号化処理では、符号化装置に備えられた探索モジュールが同じ参照画像データを何度も使用するので、非常に多くの参照画像データが必要とされる。参照画像データのサイズは非常に大きいので、必要とされる参照画像データの全てをLSI(Large Scale Integration)の内部メモリに記憶させることは難しい。このため、参照画像データは外部メモリに記憶される場合がある。しかしながら、外部メモリのデータ転送レートには制限があるため、LSIに備えられた参照画像バッファが、参照画像データを一時的に記憶し、一時的に記憶された参照画像データを探索モジュールに出力する。
外部メモリに必要とされるデータ転送レートを抑えるため、参照画像バッファは参照画像のフレームの横幅分の参照画像データだけを一時的に記憶する場合がある(非特許文献1参照)。以下、符号化対象の符号化ブロックを「符号化対象ブロック」という。HEVC等の動画像符号化規格では、符号化対象ブロックはラスタスキャン順に選択される。参照画像におけるインター予測の探索範囲の形状は矩形である。また、参照画像のフレームにおいて、符号化対象フレームにおける符号化対象ブロックの位置と同じ位置のブロックである同位置ブロックの位置と、探索範囲の中心との位置関係は、参照画像のフレーム内で一定である場合が多い。
参照画像バッファは、(画像横幅×探索範囲縦幅)分の参照画像データを一時的に記憶していれば、フレームの同一ライン上で次の符号化ブロックが選択された場合でも、参照画像バッファに記憶されている参照画像データを更新する必要がない。参照画像バッファは、同一ライン上の複数の符号化ブロックに対して符号化処理が実行されている間、(画像横幅×ブロック縦幅)分の参照画像データを探索モジュールに転送する。
これによって、参照画像バッファは、外部メモリに必要とされるデータ転送レートを、(ブロック横幅×ブロック縦幅/1ブロック処理時間)のレートに抑えることが可能である。しかしながら、参照画像バッファのサイズは、ほぼ(画像横幅×探索範囲縦幅)のサイズになってしまう。このため、4K又は8K等の高い空間解像度の動画像が符号化処理される場合、参照画像バッファのサイズが膨大となり、LSIの規模、サイズ及び電力が悪化する。
参照画像バッファは、符号化対象ブロックの探索範囲のみの参照画像データを記憶してもよい。符号化対象ブロックの符号化処理が終了し、次の符号化対象ブロックが選択された場合、探索範囲が重複する範囲は広い。このため、次の符号化対象ブロックが選択されたことによって転送が必要となる参照画像データは、探索範囲の外の右側の横幅ブロックサイズ分の参照画像データのみである。この場合、参照画像バッファのサイズは、ほぼ(探索範囲横幅×探索範囲縦幅)のサイズである。外部メモリのデータ転送レートは、(ブロック横幅×探索範囲縦幅/1ブロック処理時間)のレートであり、4K又は8K等の高い空間解像度の動画像のデータを転送することが可能である。
Takayuki Onishi, Takashi Sano, Yukikuni Nishida, Kazuya Yokohari, Jia Su, Ken Nakamura, Koyo Nitta, Kimiko Kawashima, Jun Okamoto, Naoki Ono, Ritsu Kusaba, Atsushi Sagata, Hiroe Iwasaki, Mitsuo Ikeda, and Atsushi Shimizu, "Single-chip 4K 60fps 4:2:2 HEVC Video Encoder LSI with 8K Scalability," Dig. Symp. VLSI Circuits, C54-C55, Jun 2015.
しかしながら、原画像の右端のブロックであった符号化対象ブロックの符号化処理が終了し、符号化対象ブロックが原画像においてラスタスキャン順に1本下のラインの左端のブロックとなった場合、原画像の右端のブロックであった符号化対象ブロックを符号化するためのインター予測の探索範囲と、原画像の左端のブロックとなった符号化対象ブロックを符号化するためのインター予測の探索範囲とは重複しない。
参照画像バッファが探索範囲のみの参照画像データを記憶している場合に、符号化対象ブロックが原画像においてラスタスキャン順に1本下のラインの左端のブロックとなった場合には、バッファ装置は、1ブロック処理時間内で、探索範囲の全ての参照画像データを外部メモリから参照画像バッファに転送する必要がある。
探索範囲の参照画像データのサイズは、符号化効率に影響する。このため、符号化対象ブロックが原画像においてラスタスキャン順に1本下のラインの左端のブロックとなった場合には、転送レートが高くなってしまい、参照画像データの転送が間に合わない場合がある。LSI内の探索モジュールは、外部メモリからバッファに格納できた参照画像データに対して動き探索処理を行うが、1ブロック処理時間内の参照画像データ転送が間に合わない場合、転送ができなかった参照画像の一部領域に対しては、探索モジュールは動き探索処理が行えない。そのため、画面左端の符号化対象ブロックにおいては、大幅な動き探索精度低下及び客観画質劣化が生じうる。また、上記の参照画像転送手法では、左右のブロックで探索範囲の重複範囲が広いことを利用して、探索範囲の外の右側の横幅ブロックサイズ分の参照画像データのみを新たに転送している。このため、画面左端の符号化対象ブロックにおいて参照画像データを転送しきれなかった場合、その次の符号化対象ブロックにおいても、右側の横幅ブロックサイズ分の領域以外では、バッファ内に格納された参照画像データに抜けが残っている。したがって、画面左端における参照画像データ転送ミスは、その左端ブロックだけでなく、隣接する多くの符号化対象ブロックに影響を与え、結果として画面全体における客観画質劣化及び符号量増加へとつながる。このように、従来のバッファ装置は、参照画像データの一時記憶に必要とされるバッファメモリのサイズと外部メモリに必要とされるデータ転送レートとを抑えることができないという問題がある。
上記事情に鑑み、本発明は、参照画像データの一時記憶に必要とされるバッファサイズと外部メモリに必要とされるデータ転送レートとを抑えることが可能であるバッファ装置を提供することを目的としている。
本発明の一態様は、符号化対象フレームにおける同一ラインの各一部領域である第1領域及び第2領域と、前記同一ラインよりも下のラインの一部領域である第3領域とに関して、第1領域と第2領域と第3領域との順に実行される動き探索処理で参照される参照フレームの各探索範囲の参照画像データを記憶するバッファ装置であって、前記参照画像データを記憶するメモリと、第2領域の動き探索処理が実行される場合、第1領域の動き探索処理で参照された第1探索範囲に含まれる前記参照画像データのうち、第3領域の動き探索処理で参照される第3探索範囲に含まれる前記参照画像データを、前記メモリから削除せずに残すよう制御するバッファ制御部とを備えるバッファ装置である。
本発明の一態様は、上記のバッファ装置であって、前記バッファ制御部は、前記参照フレームの左端を含む第1探索範囲及び第3探索範囲に含まれる前記参照画像データを、前記メモリから削除せずに残すよう制御する。
本発明の一態様は、符号化対象フレームにおける同一ラインの各一部領域である第1領域及び第2領域と、前記同一ラインよりも下のラインの一部領域である第3領域とに関して、第1領域と第2領域と第3領域との順に実行される動き探索処理で参照される参照フレームの各探索範囲の参照画像データを記憶するバッファ装置であって、前記参照画像データを記憶するメモリと、第3領域の動き探索処理が実行される場合、第3領域の動き探索処理で参照される第3探索範囲に含まれる前記参照画像データのうち、第1領域の動き探索処理で参照された第1探索範囲に含まれていない前記参照画像データを、前記メモリに記録するバッファ制御部とを備えるバッファ装置である。
本発明の一態様は、上記のバッファ装置であって、前記バッファ制御部は、第3探索範囲の一部の画素が前記参照フレームの外にはみ出している場合、はみ出している画素の前記参照画像データをはみ出していない画素の前記参照画像データに基づいて生成し、生成された前記参照画像データと取得された前記参照画像データとを前記メモリに記録する。
本発明の一態様は、上記のバッファ装置であって、前記バッファ制御部は、前記メモリに記憶される期間が長期間であるか否かを表すラベリングデータのうち、前記長期間であることを表すラベリングデータを、取得された前記参照画像データに対応付け、前記長期間であることを表すラベリングデータが対応付けられた前記参照画像データを、前記長期間であることを表すラベリングデータが対応付けられていない前記参照画像データと比較して前記メモリに長期間残すよう制御する。
本発明により、参照画像データの一時記憶に必要とされるバッファサイズと外部メモリに必要とされるデータ転送レートとを抑えることが可能である。
符号化装置の構成の例を示す図である。 右向きのエリアホッピングベクトルによって設定される探索範囲の例を示す図である。 参照画像のフレームにおける探索範囲の位置の変化の例を示す図である。 符号化の処理ラインが1本下のラインに変更された場合における、探索範囲の位置の変化の例を示す図である。 符号化の処理ラインが1本下のラインに変更された場合における、探索範囲の重複の例を示す図である。 符号化装置の動作を示すフローチャート(前半)である。 符号化装置の動作を示すフローチャート(後半)である。 初期転送処理の例を示す図である。 原画像の左端の符号化対象ブロック等が必要とする探索範囲の参照画像データの推移の例を示す図である。 原画像の左端に近い位置の符号化対象ブロック等が必要とする探索範囲の参照画像データの推移の例を示す図である。 原画像の右端に近い位置の符号化対象ブロック等が必要とする探索範囲の参照画像データの推移の例を示す図である。 原画像の右端の符号化対象ブロック等が必要とする探索範囲の参照画像データの推移の例を示す図である。 左向きのエリアホッピングベクトルによって設定される探索範囲の例を示す図である。
本発明の実施形態について、図面を参照して詳細に説明する。
以下では、「符号化ブロック」は、MPEG-2、H.264/AVC規格であれば、マクロブロックである。「符号化ブロック」は、HEVC規格であれば、コーディング・ユニット(CU: Coding Unit)又はプレディクション・ユニット(PU: Prediction Unit)である。
図1は、符号化装置10の構成の例を示す図である。符号化装置10は、動画像符号化処理部100と、動画像符号化バッファ部200とを備える。符号化装置10は、外部メモリ300に接続されている。符号化装置10は、符号化済みの参照画像データを、外部メモリ300に書き込む。
符号化装置10は、符号化対象の動画像の信号(入力画像の信号)を、原画像データとして取得する。符号化装置10は、原画像データを外部メモリ300に書き込む。原画像データを符号化する場合、符号化装置10は、原画像データ及び参照画像データを、外部メモリ300から読み出す。
符号化装置10は、外部メモリ300から読み出された原画像データ及び参照画像データを、動画像符号化バッファ部200に一時的に記録する。動画像符号化処理部100は、符号化処理に必要である原画像データ及び参照画像データを、動画像符号化バッファ部200から取得する。符号化装置10は、参照画像データを用いて、原画像データを符号化する。
H.264/AVCやHEVC等の動画像符号化規格では、動画像のフレームを符号化ブロックごとに符号化する。以下では、動画像符号化処理部100は、符号化ブロックごとに符号化処理を実行する。動画像符号化処理部100は、取得された原画像データを、パラメータに基づいて符号化する。動画像符号化処理部100は、符号化結果をビットストリームとして符号化装置10の外部に出力する。符号化装置10の外部の表示装置は、ビットストリームに基づく映像を表示してもよい。
動画像符号化処理部100は、原画像整形部101と、イントラ予測処理部102と、インター予測処理部103と、予測残差信号生成部104と、変換・量子化処理部105と、エントロピー符号化部106と、逆量子化・逆変換処理部107と、復号信号生成部108と、ループフィルタ処理部109とを備える。
動画像符号化バッファ部200は、原画像バッファ201と、参照画像バッファ202とを備える。参照画像バッファ202は、メモリ203と、バッファ制御部204とを備える。バッファ制御部204は、参照画像バッファ202から独立した別機構でもよい。
各機能部の一部又は全部は、例えば、LSIやASIC(Application Specific Integrated Circuit)等のハードウェアを用いて実現される。各機能部の一部又は全部は、CPU(Central Processing Unit)等のプロセッサが、メモリに記憶されたプログラムを実行することにより実現されてもよい。動画像符号化バッファ部200及び外部メモリ300は、例えばフラッシュメモリ、HDD(Hard Disk Drive)などの不揮発性の記録媒体(非一時的な記録媒体)である。バッファ部及び外部メモリは、RAM(Random Access Memory)などの揮発性の記録媒体を備えてもよい。
原画像整形部101は、フレームにおけるラスタスキャン順で、原画像データを取得する。原画像整形部101は、取得された原画像データを、符号化ブロック単位の原画像データに整形する。原画像整形部101は、符号化ブロック単位の原画像データを、外部メモリ300に書き込む。原画像バッファ201は、符号化ブロック単位の原画像データのうちから、符号化対象ブロックの原画像データを、外部メモリ300から読み出す。原画像バッファ201は、符号化対象ブロックの原画像データを、一時的に記憶する。
参照画像バッファ202は、符号化対象ブロックの動きベクトルを探索する処理(動き探索処理)をインター予測処理部103が実行するために必要とされる探索範囲(参照フレームの領域)の参照画像データを、外部メモリ300から読み出す。探索範囲は、動画像符号化規格に基づいて予め定められる。メモリ203は、読み出された参照画像データを一時的に記憶する。参照画像バッファ202は、メモリ203に一時的に記憶されている参照画像データの更新タイミングを、原画像のフレームにおける符号化対象ブロックの位置に応じて変更する。
インター予測処理部103は、原画像データを原画像バッファ201から読み出す。インター予測処理部103は、参照画像データを参照画像バッファ202のメモリ203から読み出す。インター予測処理部103は、符号化対象フレームの原画像データと参照画像データとの間の動き探索処理を実行する。
予測残差信号生成部104は、原画像バッファ201から原画像信号を読み出す。予測残差信号生成部104は、イントラ予測処理部102又はインター予測処理部103の出力である予測信号と原画像との差分をがと単位で算出し、算出された差分を予測残差信号として変換・量子化処理部105に出力する。
変換・量子化処理部105は、離散コサイン変換等の直交変換を予測残差信号に対して実行することによって、変換係数を量子化する。変換・量子化処理部105は、量子化された変換係数をエントロピー符号化部106に出力する。エントロピー符号化部106は、量子化された変換係数をエントロピー符号化し、エントロピー符号化の結果を、ビットストリームとして符号化装置10の外部に出力する。
変換・量子化処理部105は、量子化された変換係数を、逆量子化・逆変換処理部107に出力する。逆量子化・逆変換処理部107は、量子化された変換係数に逆量子化及び逆直交変換を実行し、逆直交変換の結果である予測残差復号信号を出力する。復号信号生成部108は、イントラ予測処理部102又はインター予測処理部103の出力である予測信号と予測残差復号信号とを加算することで、符号化ブロックごとに復号信号を生成する。
ループフィルタ処理部109は、生成された復号信号に対して、符号化歪みを低減するフィルタリング処理を実行する。ループフィルタ処理部109は、インター予測処理部103によって参照画像として用いられるフィルタリング処理後の画像データを、外部メモリ300に書き込む。
以下では、探索範囲は、参照画像に含まれている点を中心とした矩形の範囲である。以下、符号化対象ブロックの動きベクトル、すなわち、参照画像における同位置ブロックの位置と探索範囲の中心とを表すベクトルを「エリアホッピングベクトル」という。エリアホッピングベクトルVhpは、(Vhp_x,Vhp_y)と表される。
図2は、右向きのエリアホッピングベクトルによって設定される探索範囲の例を示す図である。原画像400(符号化対象フレーム)の画像サイズと、参照画像500(参照フレーム)の画像サイズとは、いずれも(W×H)である。符号化対象ブロック11のサイズは(Bx×By)である。探索範囲13のサイズは(Sx×Sy)である。以下では、エリアホッピングベクトルVhpは、フレーム内で一定である。
探索範囲13の形状が矩形であり、エリアホッピングベクトルVhpが一定である場合、符号化対象ブロック11の符号化処理が終了し、次の符号化対象ブロック11が選択された場合、参照画像500のフレームにおいて、原画像400における符号化対象ブロック11の位置と同じ位置のブロックである同位置ブロック12の探索範囲は、符号化処理が終了する前後で重複する範囲の面積は広い。
図3は、参照画像500のフレームにおける探索範囲の位置の変化の例を示す図である。説明の簡略化のため、図3から図5までに示される例では、エリアホッピングベクトルが無く、探索範囲の中心は、符号化対象ブロックの同位置ブロックの位置と一致している。以下、新たに参照画像バッファ202に記憶される必要のある探索範囲を「新規必要範囲」という。
図3では、符号化対象ブロックの同位置ブロックがブロック501からブロック502に変更された場合、探索範囲は、探索範囲601から探索範囲602に変更される。ここで、探索範囲の差分部分の面積は、探索範囲601の外の右側の横幅ブロック分(新規必要範囲16)の面積となる。インター予測処理部103は、探索処理で必要な新規必要範囲16の参照画像データを、参照画像バッファ202のメモリ203から読み出す。新規必要範囲16の参照画像データ(新規必要データ)のサイズは、(Bx×Sy)のサイズである。
原画像400の右端のブロックであった符号化対象ブロック11の符号化処理が終了し、符号化対象ブロック11が原画像においてラスタスキャン順に1本下のラインの左端のブロックとなった場合。原画像の右端のブロックであった符号化対象ブロック11を符号化するためのインター予測の探索範囲13と、原画像400の左端のブロックとなった符号化対象ブロック11を符号化するためのインター予測の探索範囲13とは重複しない。
図4は、符号化の処理ラインが1本下のラインに変更された場合における、探索範囲13の位置の変化の例を示す図である。図4では、同位置ブロックであるブロック503が参照画像500の右端にあるため、探索範囲603が参照画像500の外にはみだしているが、HEVC等の動画像符号化処理では、探索された動きベクトルが参照画像500の外を指すことは、許されている。このような場合、参照画像500の外の画素の画素値には、参照画像500の端の画素の画素値が設定されることが多い。したがって、参照画像バッファ202が記憶するブロック503の参照画像データは、探索範囲603よりも狭い範囲の参照画像データである。
図4に示されているように、同位置ブロックであるブロック504の位置が参照画像500の右端から左端に変更されて、探索範囲603から探索範囲604に探索範囲が変更された場合、探索範囲603及び探索範囲604の各横幅が参照画像500の横幅の半分以上でない限り、探索範囲603と探索範囲604とが重複する範囲が存在しない。4K又は8Kの高い空間解像度の動画像では、探索範囲のサイズは、原画像のサイズに比べて小さい。このため、新たに参照画像バッファ202に記憶される必要のある探索範囲(新規必要範囲16)の参照画像データのサイズは、探索範囲604のサイズそのものとなる。ただし、参照画像500の外の探索範囲の画素は、参照画像500の端の画素から補間される。
参照画像バッファ202は、次の符号化対象ブロックの予測処理が開始される前に、次の符号化対象ブロックの動きベクトルの探索範囲の参照画像データを格納しておく必要がある。(画面横幅×探索範囲縦幅)のサイズの参照画像データを参照画像バッファ202が一時記憶する場合、1符号化対象ブロックの処理時間内に1符号化対象ブロックのサイズの参照画像データを転送すればよいためバンド幅は抑えられるが、参照画像バッファ202に必要とされるバッファサイズは膨大となる。これに対して、符号化対象ブロックが必要とする探索範囲の参照画像データのみを参照画像バッファ202が記憶する場合には、参照画像バッファ202に必要とされるバッファサイズは小さくなる。また、処理ラインが更新された場合、外部メモリ300から参照画像バッファ202へのデータ転送量は、バンド幅を超過する可能性がある。つまり、参照画像500の左端のブロック504が必要とする新規必要範囲16の参照画像データは、ブロック503が必要としない参照画像データであることから、参照画像バッファ202に全く記憶されていないので、データ転送量が増加する。
図5は、符号化の処理ラインが1本下のラインに変更された場合における、探索範囲の重複の例を示す図である。参照画像500の左端のブロック504が必要とする探索範囲604の参照画像データは、1本上のラインで符号化対象ブロック11の符号化処理が実行されていた場合における、ブロック505の探索範囲e1の参照画像データの一部である。すなわち、ブロック504よりも(W/Bx)個だけ前の同位置ブロックであるブロック505の探索範囲e1と、探索範囲604の一部の範囲とは重複している。
図5に示した通り、ブロック504の探索範囲604と参照画像500のフレームにおいてブロック504の上に位置するブロック505の探索範囲e1とは、重複する範囲の面積が広い。ここで、ブロック504の探索範囲とブロック505の探索範囲とで重複している領域を、ブロック504の符号化が終わっても参照画像バッファ202に格納しておき、ブロック505を符号化する際にブロック505の探索範囲とブロック504の探索範囲とで重複していない領域である新規必要範囲16のみを参照画像バッファ202に追加して格納することが考えられる。これによって、ブロック503の符号化が完了しブロック504を符号化する際に参照画像バッファ202に新たに格納される参照画像データの転送量と、参照画像バッファ202に格納しておく参照画像データのサイズとの両方を、少なく抑えることができる。ブロック504の探索範囲604として新たに必要な探索範囲(新規必要範囲16)の参照画像データのサイズは、(Sx×By)の参照画像データのサイズである。ただし、参照画像500の外の探索範囲の画素は、参照画像500の端の画素から補間される。
バッファ制御部204は、参照画像データの分類、読み出し、書き込み及び削除等の制御を実行する。バッファ制御部204は、参照画像500の左端のブロックの参照画像データを参照画像バッファ202に保持する時間の長さを、(W/Bx)個のブロックの符号化の処理時間(長期間)の長さとする。すなわち、バッファ制御部204は、参照画像500の左端のブロック505の参照画像データを、原画像400における1ラインの符号化対象ブロックの符号化処理が終了するまで、参照画像バッファ202のメモリ203に保持させる。
バッファ制御部204は、参照画像500の左端以外のブロックの参照画像データを参照画像バッファ202に保持する時間を、(Sx/Bx)個のブロックの処理時間(短期間)とする。バッファ制御部204は、符号化対象ブロックの符号化処理において参照されない参照画像データを参照画像バッファ202から削除することによって、参照画像バッファ202に保持される参照画像データを符号化対象ブロックごとに更新する。
これらによって、バッファ制御部204は、メモリ203のサイズが小さい場合でも、処理ラインの更新時に外部メモリ300から参照画像バッファ202へのデータ転送量の増加を抑えることができる。
バッファ制御部204は、参照画像バッファ202が参照画像データを外部メモリ300から読み出す場合、参照画像データが参照画像バッファ202に保持される時間の長さに応じて、参照画像バッファに長期間記憶されるデータ(以下「長期データ」という。)である「long term data」と、参照画像バッファに短期間記憶されるデータ(以下「短期データ」という。)である「short term data」との2種類に、参照画像データを分類する。
バッファ制御部204は、メモリ203に記憶される期間が長期間であるか否かを表すラベリングデータを、参照画像データに対応付ける。バッファ制御部204は、分類された参照画像データを、参照画像バッファ202のメモリ203に記録する。バッファ制御部204は、分類の結果を、例えば参照画像データの付加ビットとしてメモリ203に記録する。なお、バッファ制御部204は、分類の結果を別の機構又はバッファに記録してもよい。例えば、バッファ制御部204は、ラベリングデータを参照画像データに対応付けて、バッファ制御部204の内部メモリに記憶してもよい。
次に、バッファ制御部204の動作を説明する。
図6及び図7は、符号化装置10の動作を示すフローチャートである。バッファ制御部204は、原画像のフレーム単位で処理を実行する。バッファ制御部204は、符号化対象フレームの符号化処理を開始する(ステップS101)。
バッファ制御部204は、参照画像データの初期転送処理を実行する。すなわち、バッファ制御部204は、最初に符号化される原画像(符号化対象フレーム)の左上端の符号化ブロックが必要とする探索範囲の全ての参照画像データを、外部メモリ300から読み出す。バッファ制御部204は、読み出された参照画像データを、参照画像バッファ202のメモリ203に記録する。バッファ制御部204は、初期転送処理によって読み出された全ての参照画像データを、「long term data」に分類する(ステップS102)。
図8は、初期転送処理の例を示す図である。バッファ制御部204は、探索範囲13の全ての参照画像データを、ラスタスキャン順に外部メモリ300から読み出す。初期転送処理におけるデータ転送量は、(Sx×Sy)のサイズの大きなデータ量になり得る。バッファ制御部204は、各符号化ブロックの符号化処理前に初期転送処理を実行する。したがって、バッファ制御部204は、1ブロックの符号化処理の時間と比較して長い時間を、初期転送処理の時間として確保することができる。これによって、バッファ制御部204は、初期転送処理における参照画像データの転送レートを低く抑えることができる。
図8に示されているように、探索範囲13が参照画像500の外にはみ出している場合、外部メモリ300から参照画像バッファ202に転送される参照画像データは、参照画像500の外の画素値を含んでいない。このため、バッファ制御部204は、参照画像500の外にはみ出している範囲の画素値を、参照画像500の左端又は上端の画素値に基づいて生成する。
バッファ制御部204は、参照画像データをラスタスキャン順に外部メモリ300から読み出して、読み出された参照画像データを参照画像バッファ202に記録する。このため、バッファ制御部204は、探索範囲13において上側の画素ほど前のタイミングで、参照画像バッファ202に記録する。なお、バッファ制御部204は、画素単位のラスタスキャン順でなく符号化ブロック単位のラスタスキャン順で、参照画像データを外部メモリ300から読み出してもよい。
図6及び図7に戻り、符号化装置10の動作の説明を続ける。動画像符号化処理部100は、符号化ブロック単位で符号化処理を開始する。初期転送処理の直後では、動画像符号化処理部100は、原画像400の左上端の符号化対象ブロック11の符号化処理を実行する(ステップS103)。
ステップS104からステップS108において、バッファ制御部204は、不要な参照画像データを、参照画像バッファ202から削除する。
バッファ制御部204は、符号化ブロック単位の符号化処理(以下「符号化ブロック処理」という。)の開始を表す信号を、動画像符号化処理部100から取得する。バッファ制御部204は、符号化対象ブロック11が原画像400のフレームの先頭の符号化ブロック(原画像の左上端の符号化ブロック)であるか否かを判定する(ステップS104)。
符号化対象ブロック11が原画像400のフレームの先頭の符号化ブロックでない場合(ステップS104:NO)、バッファ制御部204は、符号化対象ブロック11が原画像400のフレームの左端のブロックであるか否かを判定する(ステップS105)。
符号化対象ブロック11が原画像400のフレームの左端の符号化ブロックでない場合(ステップS105:NO)、バッファ制御部204は、「short term data」に分類されている参照画像データの一部を、参照画像バッファ202から削除する。
ここで、バッファ制御部204は、「short term data」のサイズが(探索範囲横幅×探索範囲縦幅)以上のサイズとならないように、探索範囲内の左側の参照画像データを順次削除する。すなわち、バッファ制御部204は、「short term data」として参照画像バッファ202に記憶されている参照画像データのうち、参照画像バッファ202に記憶されている時間が(探索範囲横幅/ブロック横幅×1ブロック処理時間)以上である参照画像データを、参照画像バッファ202から削除する(ステップS106)。
符号化対象ブロックが原画像のフレームの左端の符号化ブロックである場合(ステップS105:YES)、バッファ制御部204は、「long term data」のサイズが(探索範囲横幅×探索範囲縦幅)を超えるサイズとならないように、探索範囲内の上側の参照画像データを順次削除する。すなわち、バッファ制御部204は、「long term data」として参照画像バッファ202に記憶されている参照画像データのうち、最も古いタイミングで記憶された(探索範囲横幅×ブロック縦幅)のサイズの参照画像データを削除する(ステップS107)。
バッファ制御部204は、「short term data」として参照画像バッファ202に記憶されている全ての参照画像データを削除する(ステップS108)。
符号化対象ブロック11が原画像400のフレームの先頭の符号化ブロックである場合、参照画像バッファ202に記憶されている参照画像データのうちで、不要な参照画像データは存在しない。この場合、バッファ制御部204は、参照画像データを参照画像バッファ202から削除することなく、ステップS110又はステップS111において参照画像データを外部メモリ300から読み出し、参照画像データを参照画像バッファ202に記録する。
符号化対象ブロック11が原画像400のフレームの先頭の符号化ブロックである場合(ステップS104:YES)、バッファ制御部204は、符号化対象ブロック11が原画像の右端のブロックであるかを判定する(ステップS109)。
符号化対象ブロック11が原画像400の右端のブロックでない場合(ステップS109:NO)、次の符号化対象ブロックが必要とする探索範囲内の最右端以外の参照画像データは、現在の符号化対象ブロックの探索範囲内の参照画像データと重複しており、読み出される必要がない。このため、バッファ制御部204は、次の符号化対象ブロック11が必要とする探索範囲内の最右端の参照画像データを、外部メモリ300から読み出す。最右端の参照画像データのサイズは、(ブロックサイズ横幅×探索範囲縦幅)のサイズである。バッファ制御部204は、読み出された参照画像データを、「short term data」に分類する。バッファ制御部204は、「short term data」に分類された参照画像データを、参照画像バッファ202に記録する(ステップS110)。
このように、バッファ制御部204は、「short term data」に分類される参照画像データを、符号化ブロックごとのタイミングのうち「long term data」に分類される参照画像データを読み出すタイミング以外のタイミングで、外部メモリ300から読み出す。
符号化対象ブロック11が原画像400の右端のブロックである場合(ステップS109:YES)、次の符号化対象ブロック11が必要とする探索範囲内の最下端以外の参照画像データは、現在の符号化対象ブロック(1ライン上の右端の符号化ブロック)の探索範囲内の参照画像データと重複しており、読み出される必要がない。このため、バッファ制御部204は、次の符号化対象ブロック11が必要とする探索範囲内の最下端の参照画像データを、外部メモリ300から読み出す。最下端の参照画像データのサイズは、(探索範囲横幅×ブロックサイズ縦幅)のサイズである。バッファ制御部204は、読み出された参照画像データを、「long term data」に分類する。バッファ制御部204は、「long term data」に分類された参照画像データを、参照画像バッファ202に記録する(ステップS111)。
このように、バッファ制御部204は、「long term data」に分類される参照画像データを、(W/Bx)回あたりに1回(1ラインごとに1回)のタイミングで、外部メモリ300から読み出す。原画像400の左端の符号化対象ブロック11が必要とする探索範囲13の参照画像データが参照画像バッファ202に長期間にわたり記憶されているので、バッファ制御部204は、最下端以外の参照画像データを読み出す必要がないためである。
バッファ制御部204は、符号化対象ブロック11の符号化処理の終了を表す信号を、動画像符号化処理部100から取得する(ステップS112)。バッファ制御部204は、符号化処理の終了した符号化対象ブロック11が原画像400のフレームの終端の符号化ブロックであるか否かを判定する(ステップS113)。
符号化処理の終了した符号化対象ブロック11が原画像400のフレームの終端以外の符号化ブロックである場合(ステップS113:NO)、バッファ制御部204は、符号化対象ブロックを、次の符号化ブロックに更新し(ステップS114)、ステップS103に処理を戻す。符号化処理の終了した符号化対象ブロック11が原画像400のフレームの終端の符号化ブロックである場合(ステップS113:YES)、バッファ制御部204は、符号化対象の原画像400のフレームの符号化処理を終了する(ステップS115)。
次に、参照画像バッファ202に記憶されている長期データ及び短期データの推移を説明する。
図9は、原画像400の左端の符号化対象ブロック11等が必要とする探索範囲13の参照画像データの推移の例を示す図である。原画像400の左端の現在の符号化対象ブロック11が必要とする探索範囲は、図9では、現在の同位置ブロック12-2が必要とする探索範囲13-2である。
参照画像500-1では、参照画像バッファ202は、長期データ14と、短期データ15とを記憶している。長期データ14は、同位置ブロック12-2が必要とする探索範囲13-2の参照画像データと、探索範囲13-2の外の上側の1ブロック縦幅分に含まれている参照画像データとを含むデータである。短期データ15は、参照画像500-1の右端で同位置ブロック12-2よりも1ライン上の同位置ブロック12-1が必要とする探索範囲の参照画像データである。
参照画像500-1に対する次の処理として、参照画像500-2に示されているように、バッファ制御部204は、短期データ15を参照画像バッファ202から削除する。さらに、バッファ制御部204は、現在の符号化対象ブロック11の同位置ブロック12-2が必要とする探索範囲13-2の外の上側の1ブロック縦幅分に含まれている参照画像データを、参照画像バッファ202から削除する。すなわち、バッファ制御部204は、長期データ14のうちの不要な参照画像データを、参照画像バッファ202から削除する。
参照画像500-2に対する次の処理として、参照画像500-3に示されているように、バッファ制御部204は、次の符号化対象ブロック11の同位置ブロック12-3が必要とする探索範囲の新規必要データとして、同位置ブロック12-2が必要とする探索範囲13-2の外の右側の1ブロック横幅分に含まれる参照画像データを、外部メモリ300から読み出す。バッファ制御部204は、読み出された参照画像データを、短期データ15として参照画像バッファ202に記録する。
図10は、原画像400の左端に近い位置の符号化対象ブロック11等が必要とする探索範囲13の参照画像データの推移の例を示す図である。原画像400の左端に近い位置の現在の符号化対象ブロック11が必要とする探索範囲13は、図10では、現在の同位置ブロック12-4が必要とする探索範囲13-4である。
参照画像500-1では、参照画像バッファ202は、長期データ14と、短期データ15とを記憶している。長期データ14は、同位置ブロック12-4が必要とする探索範囲13-4の参照画像データのうち「long term data」に分類された参照画像データと、同位置ブロック12-3が必要とする探索範囲13-3の参照画像データのうち「long term data」に分類された参照画像データとである。短期データ15は、同位置ブロック12-4が必要とする探索範囲13-4の参照画像データのうち、「short term data」に分類された参照画像データである。
参照画像500-1に対する次の処理として、参照画像500-2に示されているように、同位置ブロック12-4が必要とする探索範囲13-4の参照画像データの一部として短期データ15が参照画像バッファ202に既に記憶されているので、バッファ制御部204は、短期データ15を参照画像バッファ202から削除する必要がない。
参照画像500-2に対する次の処理として、参照画像500-3に示されているように、バッファ制御部204は、次の符号化対象ブロック11の同位置ブロック12-5が必要とする探索範囲の新規必要データとして、同位置ブロック12-4が必要とする探索範囲13-4の外の右側の1ブロック横幅分に含まれる参照画像データを、外部メモリ300から読み出す。バッファ制御部204は、読み出された参照画像データを、短期データ15の一部として参照画像バッファ202に記録する。
図11は、原画像400の右端に近い位置の符号化対象ブロック11等が必要とする探索範囲13の参照画像データの推移の例を示す図である。原画像400の右端に近い位置の現在の符号化対象ブロック11が必要とする探索範囲13は、図11では、現在の同位置ブロック12-7が必要とする探索範囲13-7である。
参照画像500-1では、参照画像バッファ202は、長期データ14と、短期データ15とを記憶している。長期データ14は、同位置ブロック12-2が必要とする探索範囲13-2の参照画像データのうち「long term data」に分類された参照画像データである。短期データ15は、同位置ブロック12-7が必要とする探索範囲13-7の参照画像データと、探索範囲13-7の外の左側の1ブロック縦幅分に含まれている参照画像データとを含むデータである。
参照画像500-1に対する次の処理として、参照画像500-2に示されているように、バッファ制御部204は、現在の符号化対象ブロック11の同位置ブロック12-7が必要とする探索範囲13-7の外の左側の1ブロック縦幅分に含まれている参照画像データを、参照画像バッファ202から削除する。すなわち、バッファ制御部204は、短期データ15のうちの不要な参照画像データを、参照画像バッファ202から削除する。
参照画像500-2に対する次の処理として、参照画像500-3に示されているように、バッファ制御部204は、次の符号化対象ブロック11の同位置ブロック12-8が必要とする探索範囲の新規必要データとして、同位置ブロック12-7が必要とする探索範囲13-7の外の右側の1ブロック横幅分に含まれる参照画像データを、外部メモリ300から読み出す。バッファ制御部204は、読み出された参照画像データを、短期データ15の一部として参照画像バッファ202に記録する。
図12は、原画像400の右端の符号化対象ブロック11等が必要とする探索範囲13の参照画像データの推移の例を示す図である。原画像400の右端の現在の符号化対象ブロック11が必要とする探索範囲は、図12では、現在の同位置ブロック12-10が必要とする探索範囲13-10である。
参照画像500-1では、参照画像バッファ202は、長期データ14と、短期データ15とを記憶している。長期データ14は、同位置ブロック12-2が必要とする探索範囲13-2のうち「long term data」に分類された参照画像データである。短期データ15は、参照画像500-1の右端に近い位置で同位置ブロック12-9が必要とする探索範囲の参照画像データである。
参照画像500-1に対する次の処理として、参照画像500-2に示されているように、バッファ制御部204は、現在の符号化対象ブロック11の同位置ブロック12-10が必要とする探索範囲13-10の外の左側の1ブロック縦幅分に含まれている参照画像データを、参照画像バッファ202から削除する。すなわち、バッファ制御部204は、短期データ15のうちの不要な参照画像データを、参照画像バッファ202から削除する。
参照画像500-2に対する次の処理として、参照画像500-3に示されているように、バッファ制御部204は、次の符号化対象ブロック11の同位置ブロック12-11が必要とする探索範囲の新規必要データとして、同位置ブロック12-2が必要とする探索範囲13-2の外の下側の1ブロック縦幅分に含まれる参照画像データを、外部メモリ300から読み出す。バッファ制御部204は、読み出された参照画像データを、長期データ14の一部として参照画像バッファ202に記録する。
エリアホッピングベクトルは、左向きでもよい。
図13は、左向きのエリアホッピングベクトルによって設定される探索範囲の例を示す図である。原画像の左端の現在の符号化対象ブロックが必要とする探索範囲は、図13では、現在の同位置ブロック12-2が必要とする探索範囲13-2である。長期データ14は、1ラインの符号化処理の間、参照画像バッファ202のメモリ203に保持される。
以上のように、実施形態の動画像符号化バッファ部200は、バッファ装置である。動画像符号化バッファ部200は、第1領域と第2領域と第3領域との順に実行される動き探索処理で参照される参照画像500(参照フレーム)の各探索範囲13の参照画像データを記憶する。第1領域及び第2領域は、符号化対象フレームにおける同一ラインの各符号化対象ブロック(一部領域)である。第3領域は、第1領域及び第2領域の同一ラインよりも下のラインの符号化対象ブロックである。動画像符号化バッファ部200は、メモリ203と、バッファ制御部204とを備える。メモリ203は、参照画像データを記憶する。バッファ制御部204は、第2領域の動き探索処理が実行される場合、第1領域の動き探索処理で参照された第1探索範囲に含まれる参照画像データのうち、第3領域の動き探索処理で参照される第3探索範囲に含まれる参照画像データを、メモリ203から削除せずに残すよう制御する。
これによって、実施形態のバッファ装置は、参照画像データのバッファサイズと外部メモリのデータ転送レートとを抑えることが可能である。
実施形態のバッファ制御部204は、参照画像500の左端を含む第1探索範囲及び第3探索範囲に含まれる参照画像データを、メモリ203から削除せずに残すよう制御する。バッファ制御部204は、第3領域の動き探索処理が実行される場合、第3探索範囲の参照画像データのうちメモリ203に残されていない参照画像データ(新規必要データ)を取得し、取得された参照画像データをメモリ203に記録する。すなわち、バッファ制御部204は、第3領域の動き探索処理が実行される場合、第3領域の動き探索処理で参照される第3探索範囲に含まれる参照画像データのうち、第1領域の動き探索処理で参照された第1探索範囲に含まれていない参照画像データを、メモリ203に記録する。バッファ制御部204は、第3探索範囲の一部の画素が参照画像500の外にはみ出している場合、はみ出している画素の参照画像データをはみ出していない画素の参照画像データに基づいて生成しする。バッファ制御部204は、生成された参照画像データと取得された参照画像データとを、新規必要データとしてメモリ203に記録する。
バッファ制御部204は、メモリ203に記憶される期間が長期間であるか否かを表すラベリングデータのうち、長期間であることを表すラベリングデータ(long term data)を、取得された参照画像データに対応付ける。バッファ制御部204は、長期間であることを表すラベリングデータが対応付けられた参照画像データを、長期間であることを表すラベリングデータが対応付けられていない参照画像データ(short term data)と比較してメモリ203に長期間残すよう制御する。
これらによって、実施形態のバッファ装置は、1ラインの符号化処理の間、参照画像における左端の参照画像データを参照画像バッファ202のメモリ203に保持する。これによって、実施形態のバッファ装置は、参照画像バッファ202のメモリ203に保持される参照画像データのサイズを探索範囲の2倍以下(例えば、1.5倍)の範囲の参照画像データのサイズに抑えて、外部メモリ300に必要とされるデータ転送レートを(符号化ブロック横幅×探索範囲縦幅/1ブロック処理時間)又は(探索範囲横幅×符号化ブロック縦幅/1ブロック処理時間)に抑えることができる。
実施形態のバッファ装置は、符号化処理のラインが更新された場合でも、探索範囲のサイズをほぼ一定にして、参照画像データの転送レートをほぼ一定にすることが可能である。実施形態のバッファ装置は、エリアホッピングにも対応可能であり、符号化効率を保ったまま、低い転送レートで符号化装置10の規模及び電力を抑えることが可能である。
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
上述した実施形態における符号化装置をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、FPGA(Field Programmable Gate Array)等のプログラマブルロジックデバイスを用いて実現されるものであってもよい。
本発明は、動画像の符号化装置に適用可能である。
10…符号化装置、11…符号化対象ブロック、12…同位置ブロック、13…探索範囲、14…長期データ、15…短期データ、16…新規必要範囲、100…動画像符号化処理部、101…原画像整形部、102…イントラ予測処理部、103…インター予測処理部、104…予測残差信号生成部、105…変換・量子化処理部、106…エントロピー符号化部、107…逆量子化・逆変換処理部、108…復号信号生成部、109…ループフィルタ処理部、200…動画像符号化バッファ部、201…原画像バッファ、202…参照画像バッファ、203…メモリ、204…バッファ制御部、300…外部メモリ、400…原画像、500…参照画像、501…ブロック、502…ブロック、503…ブロック、504…ブロック、505…ブロック、601…探索範囲、602…探索範囲、603…探索範囲、604…探索範囲

Claims (6)

  1. 符号化対象フレームにおける同一ラインの各一部領域である第1領域及び第2領域と、前記同一ラインよりも下のラインの一部領域である第3領域とに関して、第1領域と第2領域と第3領域との順に実行される動き探索処理で参照される参照フレームの各探索範囲の参照画像データを記憶するバッファ装置であって、
    前記参照画像データを記憶するメモリと、
    第2領域の動き探索処理が実行される場合、第1領域の動き探索処理で参照された第1探索範囲に含まれる前記参照画像データのうち、第3領域の動き探索処理で参照される第3探索範囲に含まれる前記参照画像データを、前記メモリから削除せずに残すよう制御するバッファ制御部とを備え、
    前記バッファ制御部は、前記メモリに記憶される期間が長期間であるか否かを表すラベリングデータを前記参照画像データに対応付けて前記メモリに記憶する、バッファ装置。
  2. 符号化対象フレームにおける同一ラインの各一部領域である第1領域及び第2領域と、前記同一ラインよりも下のラインの一部領域である第3領域とに関して、第1領域と第2領域と第3領域との順に実行される動き探索処理で参照される参照フレームの各探索範囲の参照画像データを記憶するバッファ装置であって、
    前記参照画像データを記憶するメモリと、
    第2領域の動き探索処理が実行される場合、第1領域の動き探索処理で参照された第1探索範囲に含まれる前記参照画像データのうち、第3領域の動き探索処理で参照される第3探索範囲に含まれる前記参照画像データを、前記メモリから削除せずに残すよう制御するバッファ制御部とを備え、
    前記バッファ制御部は、前記メモリに記憶される期間が長期間であるか否かを表すラベリングデータのうち、前記長期間であることを表すラベリングデータを、取得された前記参照画像データに対応付け、前記長期間であることを表すラベリングデータが対応付けられた前記参照画像データを、前記長期間であることを表すラベリングデータが対応付けられていない前記参照画像データと比較して前記メモリに長期間残すよう制御する、バッファ装置。
  3. 前記バッファ制御部は、前記参照フレームの左端を含む第1探索範囲及び第3探索範囲に含まれる前記参照画像データを、前記メモリから削除せずに残すよう制御する、請求項1又は請求項2に記載のバッファ装置。
  4. 符号化対象フレームにおける同一ラインの各一部領域である第1領域及び第2領域と、前記同一ラインよりも下のラインの一部領域である第3領域とに関して、第1領域と第2領域と第3領域との順に実行される動き探索処理で参照される参照フレームの各探索範囲の参照画像データを記憶するバッファ装置であって、
    前記参照画像データを記憶するメモリと、
    第3領域の動き探索処理が実行される場合、第3領域の動き探索処理で参照される第3探索範囲に含まれる前記参照画像データのうち、第1領域の動き探索処理で参照された第1探索範囲に含まれていない前記参照画像データを、前記メモリに記録するバッファ制御部とを備え、
    前記バッファ制御部は、前記メモリに記憶される期間が長期間であるか否かを表すラベリングデータを前記参照画像データに対応付けて前記メモリに記憶する、バッファ装置。
  5. 符号化対象フレームにおける同一ラインの各一部領域である第1領域及び第2領域と、前記同一ラインよりも下のラインの一部領域である第3領域とに関して、第1領域と第2領域と第3領域との順に実行される動き探索処理で参照される参照フレームの各探索範囲の参照画像データを記憶するバッファ装置であって、
    前記参照画像データを記憶するメモリと、
    第3領域の動き探索処理が実行される場合、第3領域の動き探索処理で参照される第3探索範囲に含まれる前記参照画像データのうち、第1領域の動き探索処理で参照された第1探索範囲に含まれていない前記参照画像データを、前記メモリに記録するバッファ制御部とを備え、
    前記バッファ制御部は、前記メモリに記憶される期間が長期間であるか否かを表すラベリングデータのうち、前記長期間であることを表すラベリングデータを、取得された前記参照画像データに対応付け、前記長期間であることを表すラベリングデータが対応付けられた前記参照画像データを、前記長期間であることを表すラベリングデータが対応付けられていない前記参照画像データと比較して前記メモリに長期間残すよう制御する、バッファ装置。
  6. 前記バッファ制御部は、第3探索範囲の一部の画素が前記参照フレームの外にはみ出している場合、はみ出している画素の前記参照画像データをはみ出していない画素の前記参照画像データに基づいて生成し、生成された前記参照画像データと取得された前記参照画像データとを前記メモリに記録する、請求項4又は請求項5に記載のバッファ装置。
JP2018111412A 2018-06-11 2018-06-11 バッファ装置 Active JP7060802B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018111412A JP7060802B2 (ja) 2018-06-11 2018-06-11 バッファ装置
PCT/JP2019/022087 WO2019239951A1 (ja) 2018-06-11 2019-06-04 バッファ装置
US16/973,741 US11451805B2 (en) 2018-06-11 2019-06-04 Buffer apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018111412A JP7060802B2 (ja) 2018-06-11 2018-06-11 バッファ装置

Publications (2)

Publication Number Publication Date
JP2019216324A JP2019216324A (ja) 2019-12-19
JP7060802B2 true JP7060802B2 (ja) 2022-04-27

Family

ID=68843349

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018111412A Active JP7060802B2 (ja) 2018-06-11 2018-06-11 バッファ装置

Country Status (3)

Country Link
US (1) US11451805B2 (ja)
JP (1) JP7060802B2 (ja)
WO (1) WO2019239951A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004072301A (ja) 2002-08-05 2004-03-04 Matsushita Electric Ind Co Ltd 動きベクトル検出方法
JP2006340139A (ja) 2005-06-03 2006-12-14 Victor Co Of Japan Ltd 動画像符号化装置、動画像符号化方法、および動画像符号化用プログラム
JP2007281630A (ja) 2006-04-03 2007-10-25 Matsushita Electric Ind Co Ltd 動き検出装置、動き検出方法、動き検出集積回路および画像符号化装置
JP2009152710A (ja) 2007-12-19 2009-07-09 Renesas Technology Corp 画像処理装置及び画像処理方法
WO2011048764A1 (ja) 2009-10-19 2011-04-28 パナソニック株式会社 復号装置、復号方法、プログラム、及び集積回路

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007124408A (ja) * 2005-10-28 2007-05-17 Matsushita Electric Ind Co Ltd 動きベクトル検出装置および動きベクトル検出方法
JP4166781B2 (ja) * 2005-12-09 2008-10-15 松下電器産業株式会社 動きベクトル検出装置および動きベクトル検出方法
JP4523625B2 (ja) * 2007-08-07 2010-08-11 パナソニック株式会社 画像符号化装置および方法
US9420308B2 (en) * 2009-12-18 2016-08-16 Vixs Systems, Inc. Scaled motion search section with parallel processing and method for use therewith
US20110228851A1 (en) * 2010-03-18 2011-09-22 Amir Nusboim Adaptive search area in motion estimation processes
US10575011B2 (en) * 2015-09-24 2020-02-25 Lg Electronics Inc. Inter prediction method and apparatus in image coding system
WO2017142448A1 (en) * 2016-02-17 2017-08-24 Telefonaktiebolaget Lm Ericsson (Publ) Methods and devices for encoding and decoding video pictures

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004072301A (ja) 2002-08-05 2004-03-04 Matsushita Electric Ind Co Ltd 動きベクトル検出方法
JP2006340139A (ja) 2005-06-03 2006-12-14 Victor Co Of Japan Ltd 動画像符号化装置、動画像符号化方法、および動画像符号化用プログラム
JP2007281630A (ja) 2006-04-03 2007-10-25 Matsushita Electric Ind Co Ltd 動き検出装置、動き検出方法、動き検出集積回路および画像符号化装置
JP2009152710A (ja) 2007-12-19 2009-07-09 Renesas Technology Corp 画像処理装置及び画像処理方法
WO2011048764A1 (ja) 2009-10-19 2011-04-28 パナソニック株式会社 復号装置、復号方法、プログラム、及び集積回路

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
REHAN, M. and NASHED, R.,Efficient Search Area Loading Technique for Block-Based Motion Estimation and its FPGA Implementatio,2009 International Conference on Computer Engineering & Systems,IEEE,2010年01月15日,pp. 33-36

Also Published As

Publication number Publication date
WO2019239951A1 (ja) 2019-12-19
JP2019216324A (ja) 2019-12-19
US11451805B2 (en) 2022-09-20
US20210258591A1 (en) 2021-08-19

Similar Documents

Publication Publication Date Title
TWI755376B (zh) 用於視訊寫碼之濾波器之幾何轉換
RU2752644C1 (ru) Способы и устройства кодирования видео с использованием прогнозирования вектора движения на основе истории
TWI759389B (zh) 用於視訊寫碼之低複雜度符號預測
US10291925B2 (en) Techniques for hardware video encoding
TWI705694B (zh) 片級內部區塊複製及其他視訊寫碼改善
US8913666B2 (en) Entropy coding coefficients using a joint context model
US20080126278A1 (en) Parallel processing motion estimation for H.264 video codec
EP4228263A1 (en) Simplifications of cross-component linear model
TW202025767A (zh) 具有適應性方向性資訊集合之最終動作向量表示
US11025913B2 (en) Encoding video using palette prediction and intra-block copy
US20160050431A1 (en) Method and system for organizing pixel information in memory
JP2017537491A (ja) 改善された転置バッファを有するスケーラブルな変換ハードウェアアーキテクチャ
CN112997494B (zh) 用于视频编码的运动矢量存储
CN114270860A (zh) 针对仿射模式的自适应运动矢量分辨率
WO2020006690A1 (zh) 视频处理方法和设备
TW201921938A (zh) 具有在用於視訊寫碼之隨機存取組態中之未來參考訊框之可調適圖像群組結構
KR20170126934A (ko) 컨텐츠-적응적 b-픽쳐 패턴 비디오 인코딩
KR20190042234A (ko) 영상 부호화 장치 및 인코더
JP7060802B2 (ja) バッファ装置
KR100926752B1 (ko) 동영상 부호화를 위한 미세 움직임 추정 방법 및 장치
US20130156114A1 (en) Data Movement Reduction In Video Compression Systems
JP7359653B2 (ja) 動画像符号化装置
KR20190043825A (ko) 멀티 코덱 인코더 및 이를 포함하는 멀티 코덱 인코딩 시스템
WO2020129681A1 (ja) 符号化装置及びプログラム
TW202029747A (zh) 對於視訊寫碼中最壞情況頻寬縮減之限制

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201005

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210914

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211102

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: 20220315

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220328

R150 Certificate of patent or registration of utility model

Ref document number: 7060802

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150