(57)【要約】【課題】２次元画像をアフィン変換する際のフレームメモリ特にＤＤＲメモリへの書き込み及び読み出しを効率的に行うための画像データ処理装置を提供することを目的とする。【解決手段】画像データ処理装置１０は、アフィン変換するための入力画像をＭ×Ｎの矩形領域ごとのブロックに分割して各ブロック内の全画素を一度にバーストで格納するフレームメモリ２０と、フレームメモリ２０に格納されたブロックを再利用するための書き込み又は読み出しを行う第１バッファ３１及び第２バッファ３２と、第１バッファ３１又は前記第２バッファ３２内を検索する検索バッファ３３とを有するバッファ回路３０と、が設けられる。【選択図】  図１
2020160828.tif 000002
【特許請求の範囲】
【請求項１】
アフィン変換するための２次元の入力画像をＭ×Ｎの矩形領域ごとのブロックに分割して前記各ブロック内の全画素を一度にバーストで格納するフレームメモリと、
前記フレームメモリに格納された前記ブロックを再利用するための書き込み又は読み出しを行う第１バッファ及び第２バッファと、前記第１バッファ又は前記第２バッファ内を検索する検索バッファとを有するバッファ回路と、
が設けられたことを特徴とする２次元画像をアフィン変換するための画像データ処理装置。
【請求項２】
前記第１バッファ及び前記第２バッファは、一方が書き込みの場合他方が読み出しとなり、１ライン処理が終了するごとに書き込み側と読み出し側が逆転することを特徴とする請求項１記載の２次元画像をアフィン変換するための画像データ処理装置。
【請求項３】
前記検索バッファは読み出しを行った前記第１バッファ又は前記第２バッファの先頭Ｋ個の画素をブロックから取り出し、そのＫ個のみに対して検索を行うことを特徴とする請求項１又は２に記載の２次元画像をアフィン変換するための画像データ処理装置。
【請求項４】
前記検索バッファの更新は、前記検索バッファ内の一番古く書き込まれたブロックが、一番新しいブロックとそのときの出力で使用するブロックを含む最小の矩形領域に含まれない場合、前記一番古いブロックを捨てて、読み出しを行ったバッファからさらに新しいブロックを取り出して検索バッファへ加え、読み出しを行ったバッファが空になるか捨てる条件が成り立たなくなるまで繰り返すことを特徴とする請求項１〜３のいずれか１項に記載の２次元画像をアフィン変換するための画像データ処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、２次元画像をアフィン変換する際のフレームメモリ特にＤＤＲメモリへの書き込み及び読み出しを効率的に行うための画像データ処理装置に関するものである。
【背景技術】
【０００２】
テレビ信号のように、ラインスキャンされた２次元画像をリアルタイム処理する画像データ処理装置において、入力画像をアフィン変換（回転、拡大、縮小、平行移動）する特殊効果を実現するためには、一旦画像をフレームメモリへためて、座標を変化して読み出す必要がある。
【０００３】
フレームメモリへの書き込み、読み出し、変換には様々な方法を用いて効率化する試みが行われている。
例えば、特許文献１の画像メモリ装置では、画像データ処理装置１は、第１方向及び第１方向と異なる第２方向に画素が並ぶ画像データの中の第１画素ブロック及び第２画素ブロックを格納する記憶部３５と、前記記憶部に格納された第１画素ブロック及び第２画素ブロックをメモリ１２に書き込む書込部３６を備える。第１画素ブロック及び第２画素ブロックは隣接して第１方向に沿って並び、各々の第１方向の画素数はメモリ１２のアクセス単位データ長の自然数ｍ１倍に各々等しい。書込部３５は、第１画素ブロック及び第２画素ブロックに亘り第１方向に沿って連続して並ぶ画素のアクセス単位データ長の画素データを、一度のアクセスで前記メモリ１２に書き込む。
【０００４】
メモリからの画像データの読み出し又はメモリへの書き込みの際には、メモリのアクセス単位データ長単位、すなわちバースト長単位でメモリにアクセスした方がデータ転送にかかる時間を短縮できる。したがって、上述のように画素ブロック毎にメモリに画像データを読み書きする場合は、画素ブロックの大きさをバースト長単位に合わせた方がデータ転送にかかる時間を短縮できる。
従来では画素ブロック１０１内の一部分をメモリから読み出さない場合又はメモリへの書き込まない場合には、メモリから読み込む画素数又はメモリへ書き込む画素数がバースト長の整数倍にならない。この場合、メモリ上の連続領域に書き込まれる主方向の画素列の数がバースト長の整数倍にならないため、１画素の表現ビット数によってはバースト長より短いバイト数のデータがバースト転送される回数が増加する。このため、メモリアクセス回数が増加して書き込みにかかる時間が増加する。
特許文献１の構成・方法を用いることによって画像データをメモリに書き込む際に、バースト長のデータがバースト転送される機会が増加する、つまり効率化することができる。
【０００５】
また、特許文献２のメモリシステムでは、メモリ装置は，ロウアドレスにより選択される複数のページ領域を含むメモリセルアレイをそれぞれ有し，バンクアドレスにより選択される複数のバンクと，第１の動作コードに応答して，前記バンク内のページ領域の活性化を制御するロウ制御部と，データ入出力端子群とを有する。そして，コラムアドレスに基づいて前記活性化されたページ領域内のメモリ単位領域がアクセスされ，ロウ制御部は，第１のコマンドと共に供給されるマルチバンク情報データと供給バンクアドレスとに応じて複数バンクのバンク活性化信号を生成し，供給バンクアドレスと供給ロウアドレスに応じて複数のバンクのロウアドレスを生成し，複数のバンクは，バンク活性化信号とロウアドレス演算部が生成するロウアドレスとに応じてページ領域を活性化する。
【０００６】
これによって、従来の問題点であったメモリマッピングによりメモリのアドレス空間内に画素の画像データが記憶されるので，矩形アクセスにおける実効的な帯域幅の低下が問題になる。第１に、バンクアドレスとロウアドレスで選択されるページ領域内において、コラムアドレスによりバイト群、つまり複数バイト（または複数ビット）が同時にアクセスされる。しかし、矩形アクセスにおいてアクセスしたい矩形画像領域と、コラムアドレスにより選択される複数バイト（または複数ビット）とが一致しない場合は、１つのコラムアドレスによるアクセスにおいて無駄な入出力データが発生する。第２に、矩形アクセスにおいてアクセスしたい矩形画像領域とアドレス空間内のページ領域とが一致しない場合は、ページ領域の境界を越えて複数のページ領域に対してアクセスすることが要求され、複雑なメモリ制御が必要になるという問題を解決するための構成となっている。また、マルチバンク情報データに示された複数のバンクを活性化することができるので、その後のコラムアクセスでは、複数のバンクから所望のデータにアクセスすることができる。よって、二次元配列データの複数のバンクに跨る領域のデータに対するアクセス効率を高めることができる。
【０００７】
また、特許文献３の画像メモリ装置では、画像メモリ装置は、アドレス発生回路２０〜２２、３次元フレームメモリ１０〜１５、入力切替え回路４０〜４２、出力切替え回路５０〜５２、データ補間回路３０〜３２、高速データ転送バス６０〜６６からなる。画像信号処理における３次元フレームメモリ１０〜１３内データを読み出す処理を３次元アフィン変換を３つの２次元アフィン変換に分割することで実現し、かつ各２次元アフィン変換処理をメモリ１０〜１３をダブルバッファ方式にすることによって同時並列に実行することにより、３次元フレームメモリ内のディジタル画像データに、回転、平行移動、拡大、縮小および、せん断処理の３次元アフィン変換を加え、データを連続的に読み出すことができる。アフィン変換を３回に分け、各段をダブルバッファメモリ方式にし同時並列処理することにより、画像処理システムにおいて、３次元アフィン変換をデータを取り出す方式で、従来のメモリ方式で実現するよりも高速な処理を実現している。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１４−１７４８９８号公報
【特許文献２】特開２００８−１７６６６０号公報
【特許文献３】特開平６−３２６９９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上述の特許文献はバッファを２つ設ける等の構成により画像処理の効率化や高速化を実現している。入力画像をアフィン変換（回転、拡大、縮小、平行移動）する特殊効果を実現するためには、一旦画像をフレームメモリへためて、座標を変化して読み出す必要があり、フレームメモリは大容量が必要となるため、メモリはＤＤＲメモリが使用されることが多い。
【００１０】
しかしながら、ＤＤＲメモリには以下のような課題がある。ＤＤＲメモリは、バーストアクセスして、まとまったアドレスを連続して読まなければ速度を高めることが困難である。しかし、入出力ともラインスキャンの順序で画素を出し入れしようとすると、アフィン変換のパラメータによっては、書き込み、もしくは読み出しのどちらかがとびとびの不連続のアドレスとなり常にバーストアクセスすることはできなくなる。例えば、１バースト長が４画素分あり、９０度回転させる場合、図４（ａ）のように、書き込みをバーストアクセスするような順序で行うと、読み出し順序は図４（ｂ）のようになり、常にバーストアクセスすることのできる状況ではなくなってしまう。
【００１１】
一方、読み出しの際にも常にバーストで読み出しを行い、そのときに使わなかった画素は、一旦小容量だが高速ランダムアクセス可能なバッファにためておいて、それ以降の出力でその画素が必要となったときには、いわゆるキャッシュの考えにより、ＤＤＲメモリからではなく、バッファから読み込むようにすると効率を上げられることが分かっている。しかし、この場合の課題としては、バッファに何を残して何を捨てるかの判断、及びバッファ内の検索の効率が課題となる。
【００１２】
一般的なキャッシュアルゴリズムでは、幾何的な特性が考慮されていないので非効率となっている。また、ラインスキャンの順序で出力するためには、バッファは数ライン分の画素をためられるほど大きくせざるをえないが、毎出力ごとにその全てを検索するとなると回路規模が膨大なものとなってしまう。
【００１３】
本発明は、上述した問題を鑑みて、装置には入力画像出力画像ともラインスキャンの順序で画素が書き込み読み出しを行うものとし、フレームメモリにはＤＤＲメモリが使用され、それとは別に、小容量でもランダムアクセス可能なバッファを備えた画像データ処理装置を提供し、さらに、この画像データ処理装置のフレームメモリのアクセスは書き込み読み出し両方とも常にまとまった画素をバーストアクセスすることとしたうえで、どんなアフィン変換のパラメータでも同じ画素を２度以上ＤＤＲメモリから読み書きしないような効率的なバッファの運用を可能とする２次元画像をアフィン変換する際のフレームメモリ特にＤＤＲメモリへの書き込み及び読み出しを効率的に行うための画像データ処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明は、上述した課題を解決するためになされたものであり、請求項１に記載の発明は、アフィン変換するための２次元の入力画像をＭ×Ｎの矩形領域ごとのブロックに分割して前記各ブロック内の全画素を一度にバーストで格納するフレームメモリと、前記フレームメモリに格納された前記ブロックを再利用するための書き込み又は読み出しを行う第１バッファ及び第２バッファと、前記第１バッファ又は前記第２バッファ内を検索する検索バッファとを有するバッファ回路と、が設けられたことを特徴とする２次元画像をアフィン変換するための画像データ処理装置。
【００１５】
また、請求項２に記載の発明は、前記第１バッファ及び前記第２バッファは、一方が書き込みの場合他方が読み出しとなり、１ライン処理が終了するごとに書き込み側と読み出し側が逆転することを特徴とする請求項１記載の２次元画像をアフィン変換するための画像データ処理装である。
【００１６】
また、請求項３に記載の発明は、前記検索バッファは読み出しを行った前記第１バッファ又は前記第２バッファの先頭Ｋ個の画素をブロックから取り出し、そのＫ個のみに対して検索を行うことを特徴とする請求項１又は２に記載の２次元画像をアフィン変換するための画像データ処理装置である。
【００１７】
また、請求項４に記載の発明は、前記検索バッファの更新は、前記検索バッファ内の一番古く書き込まれたブロックが、一番新しいブロックとそのときの出力で使用するブロックを含む最小の矩形領域に含まれない場合、前記一番古いブロックを捨てて、読み出しを行ったバッファからさらに新しいブロックを取り出して検索バッファへ加え、読み出しを行ったバッファが空になるか捨てる条件が成り立たなくなるまで繰り返すことを特徴とする請求項１〜３のいずれか１項に記載の２次元画像をアフィン変換するための画像データ処理装置である。
【発明の効果】
【００１８】
任意のアフィン変換する映像効果で、フレームメモリへの書き込み、読み出し両方とも常にバーストアクセスすることができ、２度書き込み・２度読み出しも発生せず、バッファ内の検索も検索バッファを用いることによって最小限の個数の検索に抑えることができる。
【００１９】
また、請求項２に記載の発明は、前記第１バッファ及び前記第２バッファは、一方が書き込みの場合他方が読み出しとなり、１ライン処理が終了するごとに書き込み側と読み出し側が逆転することを特徴としているので、書き込みと読み出しを連続的に処理し続けることが可能となり効率が非常に高くなる利点がある。
【００２０】
また、請求項３に記載の発明は、前記検索バッファは読み出しを行った前記第１バッファ又は前記第２バッファの先頭Ｋ個の画素をブロックから取り出し、そのＫ個のみに対して検索を行うことを特徴としているので、より少ない画素で検索を行うことができる利点がある。
【００２１】
また、請求項４に記載の発明は、前記検索バッファの更新は、前記検索バッファ内の一番古く書き込まれたブロックが、一番新しいブロックとそのときの出力で使用するブロックを含む最小の矩形領域に含まれない場合、前記一番古いブロックを捨てて、読み出しを行ったバッファからさらに新しいブロックを取り出して検索バッファへ加え、読み出しを行ったバッファが空になるか捨てる条件が成り立たなくなるまで繰り返すことを特徴としているので、最小限の個数の検索で検索バッファを効率的に運用できる。
【図面の簡単な説明】
【００２２】
【図１】本発明に係る画像データ処理装置の一実施形態の機能ブロック図である。
【図２】本発明に係る画像データ処理装置の最小の矩形領域の例である。
【図３】本発明に係る画像データ処理装置の検索バッファの更新条件を示す例である。
【図４】従来のバーストアクセスの一例である。
【発明を実施するための形態】
【００２３】
以下、図面を参照して、本発明の実施の形態の一例について説明する。図１は本発明に係る２次元画像をアフィン変換するための画像データ処理装置の機能ブロック図であり、図２は画像データ処理装置の最小の矩形領域の例、図３は画像データ処理装置の検索バッファの更新条件を示す例、図４は従来のバーストアクセスの一例である。
【００２４】
画像データ処理装置１０は、アフィン変換するための入力画像をＭ×Ｎの矩形領域ごとのブロックに分割して各ブロック内の全画素を一度にバーストで格納するフレームメモリ２０と、フレームメモリ２０に格納されたブロックを再利用するための書き込み又は読み出しを行う第１バッファ３１及び第２バッファ３２と、第１バッファ３１又は前記第２バッファ３２内を検索する検索バッファ３３とを有するバッファ回路３０と、が設けられ、第１バッファ３１及び第２バッファ３２は、一方が書き込みの場合他方が読み出しとなり、１ライン処理が終了するごとに書き込み側と読み出し側が逆転する。検索バッファ３３は読み出しを行った第１バッファ３１又は第２バッファ３２の先頭Ｋ個の画素をブロックから取り出し、そのＫ個のみに対して検索を行う。なお、図２のように、２つのブロック（ブロック１、ブロック２）を含む最小の矩形領域の一例となっている。
【００２５】
画像データ処理装置１０のハードウェア構成は、コンピューターシステムの構成中の１装置であり、コンピューターには例えば画像を読み取るためのイメージスキャナやデジタルカメラ、ビデオカメラ等が接続されて画像を読み取り画像データ処理を行う。
【００２６】
画像データ処理装置１０は、アフィン変換するための入力画像をＭ×Ｎの矩形領域ごとのブロックに分割して各ブロック内の全画素を一度にバーストで格納するフレームメモリ２０が設けられる。
フレームメモリ２０は、本願ではＤＤＲメモリが使用される。ＤＤＲメモリはバースト長単位でのバーストアクセスを行うことにより書き込み又は読み出しの速度を高く維持することができる。
【００２７】
バッファ回路３０は、フレームメモリ２０（ＤＤＲメモリ）単体での運用での課題であるバーストアクセスして、まとまったアドレスを連続して読まなければ速度を高めることが困難となる課題に対して、読み出しの際にも常にバーストで読み出しを行い、そのときに使わなかった画素は、一旦小容量だが高速ランダムアクセス可能なバッファ回路３０にためておいて、それ以降の出力でその画素が必要となったときには、いわゆるキャッシュの考えにより、ＤＤＲメモリからではなく、バッファ回路３０から読み込むことになる。
【００２８】
バッファ回路３０は、図１のように、２つの同一仕様の第１バッファ３１及び第２バッファ３２が設けられる。このバッファは出力１ラインで使用するブロックがすべて入るだけの大きさとなっている。
【００２９】
第１バッファ３１及び第２バッファ３２は、図のように一方が書き込みの場合他方が読み出しとなり、１ライン処理が終了するごとに書き込み側と読み出し側が逆転する。本実施例では便宜的に書き込み側を格納バッファ、読み出し側を読みバッファと呼称する。第１バッファ３１及び第２バッファ３２は、機能が逆転することを特徴としていて書き込みと読み出しを連続的に処理し続けることが可能となり効率が非常に高くなる利点がある。
【００３０】
バッファ回路３０は、さらに、第１バッファ３１及び第２バッファ３２が読みバッファとなった場合に内部を検索することのできる検索バッファ３３を有している。
読みバッファ内の検索は、読みバッファの先頭Ｋ個の画素をブロックから取り出し、そのＫ個のみに対して検索を行う。
【００３１】
検索バッファ３３は各出力座標ごとに図３を参照に以下のように更新する。
第１に、図３（ａ）のように検索バッファ３３の一番古いブロックが検索バッファ３３の一番新しいブロックとそのときの出力で使用するブロックを含む最小の矩形領域に含まれない場合、前記一番古いブロックを捨てて、読み出しを行ったバッファからさらに新しいブロックを取り出して検索バッファ３３へ加える。
第２に、上記第１の検索を読みバッファが空になるか捨てる条件が成り立たなくなるまで繰り返す。
図３（ｂ）のように、検索バッファ３３の一番古いブロックが検索バッファ３３の一番新しいブロックとそのときの出力で使用するブロックを含む最小の矩形領域に含まれる場合、一番古いブロックは残し、検索バッファ３３は更新しない。
【００３２】
格納バッファへの書き込みは、基本的に３手順により書き込み格納される。
第１に、格納バッファはラインの先頭でメモリを空にする。
第２に、各出力座標につき、その出力で使ったブロックをいまだ格納バッファに書き込み格納していない場合はそれを格納する。
第３に、前記第２の手順実行後、検索バッファ３３内のブロックで、まだ格納バッファへ書き込み格納しておらず、そのときの出力座標で使うブロックと、次の出力画像で使用するブロックを含む最小の矩形領域に含まれる条件を満たす場合、それらをすべて読みバッファから読み出した順序で書き込み格納する。
【産業上の利用可能性】
【００３３】
本願画像データ処理装置は２次元画像をアフィン変換する際のフレームメモリ特にＤＤＲメモリへの書き込み及び読み出し、検索を効率的に行うことができるので、コンピューターに適用できるだけでなく、ＤＤＲメモリを使用した他の小型端末等にも適用可能である。
【符号の説明】
【００３４】
１０    画像データ処理装置
２０    フレームメモリ
３０    バッファ回路
３１    第１バッファ
３２    第２バッファ
３３    検索バッファ
【図１】
2020160828.tif 000003
【図２】
2020160828.tif 000004
【図３】
2020160828.tif 000005
【図４】
2020160828.tif 000006