(57)【要約】【課題】ブロック単位で画像データの符号化あるいは復号を行う際に、ブロックライン変換を行うためのバッファメモリを少容量で構成しても、符号化時あるいは復号時のデータ転送を高速に行えるようにする。【解決手段】画像処理装置に、ブロック単位の画像データの符号化およびブロック単位で符号化されたストリームデータの復号を行う手段１１１と、ブロックライン変換を行うためにブロック単位の画像データを複数ブロック保持する記憶手段１１３と、記憶手段１１３に保持された複数ブロックの画像データを矩形転送するデータ転送手段と、画像データのサンプリングファクタと記憶手段１１３の容量に基づきデータ転送手段により矩形転送されるブロック数を決定する手段１１６とを具備する。さらに、記憶手段１１３をダブルバッファ化する。【選択図】  図１
2006148656.tif 000002
【特許請求の範囲】
【請求項１】
ブロック単位の画像データの符号化およびブロック単位で符号化されたストリームデータの復号を行う手段と、ブロックライン変換を行うために前記ブロック単位の画像データを複数ブロック保持する記憶手段と、前記記憶手段に保持された複数ブロックの画像データを矩形転送するデータ転送手段と、画像データのサンプリングファクタと前記記憶手段の容量に基づき前記データ転送手段により矩形転送される画像データのブロック数を決定する手段とを備える画像処理装置。
【請求項２】
前記ブロック単位の画像データの符号化および復号の方式はＪＰＥＧであり、前記記憶手段の容量はマクロブロックの整数倍である請求項１記載の画像処理装置。
【請求項３】
前記記憶手段は複数個で構成され、前記複数の記憶手段をシングルバッファ構成として使用するか、あるいはダブルバッファ構成として使用するかを選択する手段を備える請求項１または２記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置に関し、特に、ＪＰＥＧ等の画像データの符号化時あるいは復号時における外部記憶との画像データの転送を効率的に行う技術に関する。
【背景技術】
【０００２】
従来、ブロック単位で画像データの処理を行う画像処理装置において、ＪＰＥＧ等のストリームデータを復号し、復号した画像データを外部記憶へ転送する際に、ブロックデータをラインデータに変換するために、画像の水平サイズを１ラインとして、各色成分についてマクロブロックのライン数分の記憶手段を有さなければならなかった（例えば、特許文献１参照。）。
【０００３】
例えば、ＹＵＶ４２２の２０４８ｘ１５３６ピクセルの画像の場合であれば、２０４８ｘ８＋１０２４ｘ８＋１０２４ｘ８＝３２７６８バイトをバッファリングする記憶手段を必要とし、ＹＵＶ４２０の２０４８ｘ１５３６ピクセルの画像の場合デあれば、２０４８ｘ８＋５１２ｘ８＋５１２ｘ８＝２４５７６バイトをバッファリングする記憶手段を必要とする。
【０００４】
図３は従来の画像処理装置の構成例を示すブロック図である。図３において、３０１は画像処理装置、１０３はデータバス、１０２は外部記憶である。さらに、画像処理装置３０１において、１１１はＪＰＥＧの符号化および復号を行うＪＰＥＧ処理装置、１１２は画像サイズやサンプリングファクタなどのステータスを保持するステータスレジスタ、１１３はラインデータを保持するメモリ、１１４はメモリコントローラ、１１５はデータ転送を行うＤＭＡコントローラである。
【０００５】
外部記憶１０２に保持されたＪＰＥＧストリームデータを復号する場合は、ＪＰＥＧストリームデータがＪＰＥＧ処理装置１１１に入力されて復号処理が開始される。ここで、ＪＰＥＧストリームデータのデータパスは省略されている。
【０００６】
ＪＰＥＧストリームデータはブロック単位で復号され、ＪＰＥＧ処理装置１１１から出力される復号画像データに対して、メモリコントローラ１１４はブロックライン変換を行ってメモリ１１３に格納する。
【０００７】
ＪＰＥＧストリームデータの水平サイズ分のブロックの復号処理を完了すると、ＪＰＥＧ処理装置１１１の動作を一時停止し、ＤＭＡコントローラ１１５を介して外部記憶１０２へのデータ転送を行う。データ転送が完了すると一時停止していた復号処理を再開する。上記操作を繰り返すことによりＪＰＥＧ復号処理は完了する。
【特許文献１】特開２００２−１３５５９５号公報（第８頁、第１図）
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、従来の装置では、画像データのサイズが大きくなるとラインメモリの容量が増大するという問題がある。また、同じ画像サイズでもサンプリングファクタによる画像フォーマットが異なる場合は、必要とするラインメモリの容量も異なる。ラインメモリの容量は対応する画像フォーマットで必要とするラインメモリの容量の最大値であるため、システムＬＳＩへ組み込む際にチップ面積が増大する要因となる。
【０００９】
また、外部記憶がＳＤＲＡＭの場合は、１回のデータ転送でライン分の転送語数を転送できて効率が良いという利点があるが、システムＬＳＩ等において複数の処理装置が外部記憶を共有している場合は、各処理装置が外部記憶を効率良く利用するために１回のデータ転送語数には制限があり、必ずしもラインメモリ分の容量を必要とする訳ではない。
【００１０】
また、データ転送中はＪＰＥＧ処理を中断し、ＪＰＥＧ処理中はデータ転送を行うことができないため、符号化処理あるいは復号処理をパイプライン化することができないという問題がある。
【００１１】
本発明は、ブロック単位で画像データの符号化あるいは復号を行う際に、ブロックライン変換を行うためのバッファメモリを少容量で構成しても、符号化時あるいは復号時のデータ転送を高速に行うことが可能になる画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明は、ブロック単位の画像データの符号化およびブロック単位で符号化されたストリームデータの復号を行う手段と、ブロックライン変換を行うために前記ブロック単位の画像データを複数ブロック保持する記憶手段と、前記記憶手段に保持された複数ブロックの画像データを矩形転送するデータ転送手段と、画像データのサンプリングファクタと前記記憶手段の容量に基づき前記データ転送手段により矩形転送される画像データのブロック数を決定する手段と、を備える。
【００１３】
上記構成によれば、ブロックライン変換を行うための記憶手段の容量が画像の水平サイズ分のラインメモリの容量よりも少ない場合であっても、矩形転送されるブロック数が記憶手段の容量とサンプリングファクタから決定されるため、画像フォーマットと記憶手段の容量に応じた最適な単位での画像データの矩形転送が可能となる。
【００１４】
本発明において、前記ブロック単位の画像データの符号化および復号の方式はＪＰＥＧであり、前記記憶手段の容量はマクロブロックの整数倍とする。
【００１５】
上記構成によれば、ＪＰＥＧ方式で符号化される画像データ、あるいは復号された画像データについて、マクロブロックの整数倍単位での矩形転送を行うことが可能となり、システム構成に応じた効率的な処理が可能となる。
【００１６】
本発明において、前記記憶手段は複数個で構成され、前記複数の記憶手段をシングルバッファ構成として使用するか、あるいはダブルバッファ構成として使用するかを選択する手段を備える。
【００１７】
上記構成によれば、複数の記憶手段をダブルバッファ構成として使用する選択が可能なため、外部装置との間のデータ転送と符号化処理または復号処理とのパイプライン化が可能となる。
【発明の効果】
【００１８】
本発明によれば、任意のサンプリングファクタの画像フォーマットで符号化されたＪＰＥＧデータを復号する際は、復号データをマクロブロックの整数倍単位で転送することが可能となり、任意のサンプリングファクタの画像データをＪＰＥＧストリームデータに符号化する際は、画像データをマクロブロックの整数倍単位で転送することが可能となる。これにより、画像データを保持する記憶手段を少量のメモリで構成することが可能となる。また、これをダブルバッファ化することにより、高速なＪＰＥＧの符号化処理および復号処理が可能となる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明の実施の形態を図面を参照しながら説明する。図１は本発明の一実施の形態に係る画像処理装置の構成を示すブロック図である。図１において、１０１は画像処理装置、１０３はデータバス、１０２は外部記憶である。
【００２０】
さらに、画像処理装置１０１において、１１１はＪＰＥＧの符号化および復号を行うＪＰＥＧ処理装置、１１２は画像サイズやサンプリングファクタなどのステータスを保持するステータスレジスタ、１１３は複数ブロックの画像データを保持するメモリ、１１４はメモリコントローラ、１１５はデータ転送を行うＤＭＡコントローラ、１１６は転送単位決定回路である。ここで、転送単位決定回路１１６が、図３に示した従来の画像処理装置の構成に対して追加されたものである。
【００２１】
ステータスレジスタ１１２は、符号化時は図示していないホストＣＰＵからの設定により、また復号時はヘッダ解析後のＪＰＥＧ処理装置１１１からの設定により、水平画像サイズＨ＿Ｓｉｚｅ、垂直画像サイズＶ＿Ｓｉｚｅ、成分数Ｎｕｍｃｏｍｐ、各成分の水平サンプリングファクタＳｐｆｈ（ｉ）および垂直サンプリングファクタＳｐｆｖ（ｉ）を保持し、かつ、８ｘ８ピクセルを１ブロックとした場合の１マクロブロックあたりのブロック数Ｂｌｏｃｋ＿ｎｕｍを算出する回路を有している。
【００２２】
ここで、Ｂｌｏｃｋ＿ｎｕｍは、各成分ｉについての総和を取る次式で与えられる。
Ｂｌｏｃｋ＿ｎｕｍ＝ΣＳｐｆｈ（ｉ）×Ｓｐｆｖ（ｉ）
【００２３】
メモリ１１３は、８ｘ８ピクセルを１ブロックとして、それを複数個保持可能なメモリであり、例えば、２４ブロック＝１５３６バイトの容量ならばＹＵＶ４２２の画像データを１２マクロブロック分保持可能である。
【００２４】
メモリコントローラ１１４は、符号化時は、ＤＭＡコントローラ１１５により矩形単位で転送される画像データを順番にメモリ１１３の下位アドレスから上位アドレスへと格納し、この画像データをブロック入力順にメモリ１１３から読み出してＪＰＥＧ処理装置１１１に入力する制御を行う。
【００２５】
あるいは、ＤＭＡコントローラ１１５により矩形単位で転送される画像データをブロック入力順にメモリ１１３へ格納し、この画像データをメモリの下位アドレスから上位アドレスへと順番に読み出してＪＰＥＧ処理装置１１１に入力する制御を行っても良い。
【００２６】
さらに、復号化時は、ＪＰＥＧ処理装置１１１からの復号された出力画像データをメモリ１１３の下位アドレスから上位アドレスへと順番に格納し、ＤＭＡコントローラ１１５により矩形転送される際は矩形転送順にデータを読み出す制御を行う。
【００２７】
あるいは、ＪＰＥＧ処理装置１１１からの復号された出力画像データをメモリ１１３へ矩形転送順に格納し、ＤＭＡコントローラ１１５により矩形転送される際はメモリの下位アドレスから上位アドレスへと順番に読み出す制御でも良い。
【００２８】
ＤＭＡコントローラ１１５はステータスレジスタ１１２と転送単位決定回路１１６の情報により矩形転送を行う。
【００２９】
転送単位決定回路１１６は、ステータスレジスタ１１２で算出されるＢｌｏｃｋ＿ｎｕｍとメモリ１１３のメモリ容量ＭｅｍＳｉｚｅとから、次式により転送単位Ｔｒａｎｓ＿ｓｉｚｅを算出する回路を有する。
Ｔｒａｎｓ＿ｓｉｚｅ＝ＭｅｍＳｉｚｅ／Ｂｌｏｃｋ＿ｎｕｍ
【００３０】
例えば、メモリ容量が２４ブロックでＹＵＶ４２２の場合は１２マクロブロック単位での矩形転送が可能であり、メモリ容量が２４ブロックでＹＵＶ４２０の場合は１６マクロブロック単位での矩形転送が可能である。
【００３１】
ただし、画像の水平サイズが転送単位Ｔｒａｎｓ＿ｓｉｚｅで割り切れない場合は、画像の右端の矩形転送を行う際に転送単位を変更して転送するものとする。例えば、メモリ容量が２４ブロックで画像サイズが７０４ｘ４８０のＹＵＶ４２２の場合は、１２マクロブロック単位での矩形転送を行うが、画像の右端は８マクロブロックの矩形転送を行うものとする。
【００３２】
次に、本実施の形態の画像処理装置において、メモリ１１３をダブルバッファ構成にした場合について、図２に示すブロック図を用いて説明する。図２において、２００、２０１はメモリ、２０２、２０３は切り替え回路である。符号化時と復号時の切り替え回路２０２、２０３の動作は同様であるので、ここでは符号化時の動作について説明する。
【００３３】
切り替え回路２０２はＪＰＥＧ処理装置１１１の出力とメモリ２００の入力を接続している。メモリ２００に転送単位分の画像データが格納されると、メモリ２０１が使用可能状態であれば、すなわちメモリ２０１のデータの矩形転送が完了しているならば、切り替え回路２０２はＪＰＥＧ処理装置１１１の出力とメモリ２０１の入力を接続する。
【００３４】
同時に、切り替え回路２０３はメモリ２００の出力とデータバス１０３を接続し、ＤＭＡコントローラ１１５を介して矩形転送を行う。この動作をメモリ２００とメモリ２０１を切り替えながら繰り返すことにより、データ転送とＪＰＥＧ処理のパイプライン化が可能となる。
【産業上の利用可能性】
【００３５】
本発明の画像処理装置は、任意のサンプリングファクタの画像フォーマットで符号化されたＪＰＥＧデータを復号する際は、復号データをマクロブロックの整数倍単位で転送することが可能となり、任意のサンプリングファクタの画像データをＪＰＥＧストリームデータに符号化する際は、画像データをマクロブロックの整数倍単位で転送することが可能となり、これにより、画像データを保持する記憶手段を少量のメモリで構成することが可能となるという効果を有し、ＪＰＥＧ等の画像データの符号化時あるいは復号時における外部記憶との画像データの転送を効率的に行う技術等として有用である。
【図面の簡単な説明】
【００３６】
【図１】本発明の一実施の形態に係る画像処理装置の構成を示すブロック図。
【図２】本発明の一実施の形態に係る画像処理装置においてメモリをダブルバッファ構成にした場合のブロック図。
【図３】従来の画像処理装置の構成例を示すブロック図。
【符号の説明】
【００３７】
１０１、３０１  画像処理装置
１０２  外部記憶
１０３  データバス
１１１  ＪＰＥＧ処理装置
１１２  ステータスレジスタ
１１３、２００、２０１  メモリ
１１４  メモリコントローラ
１１５  ＤＭＡコントローラ
１１６  転送単位決定回路
２０２、２０３  切り替え回路
【図１】
2006148656.tif 000003
【図２】
2006148656.tif 000004
【図３】
2006148656.tif 000005