(57)【要約】【課題】補正部が参照する画素毎の位置補正量が記憶されたメモリの容量を少なく抑えつつ複雑な変形に精度よく対応できる画像変形装置を提供する。【解決手段】画素位置を補正するために使用される画素位置別の位置補正量データが１または複数ページ分記憶された一次メモリ１１と、一次メモリ１１に比べて記憶領域が小さい参照メモリ１５と、位置補正量データを複数回に分けて一次メモリ１１から参照メモリ１５に転送する転送制御部１３と、参照メモリ１５内の位置補正量データに基づいて入力画像の各画素の画素位置を、所定の順序で順次補正する位置補正処理を実行する位置補正部１６とを有し、転送制御部１３は、位置補正部１６での処理の順序および進捗に合わせて、位置補正量データを一次メモリ１１から参照メモリ１５へ順次転送する。【選択図】図１
2016074128.tif 000002
【特許請求の範囲】
【請求項１】
入力画像の各画素の画素位置を補正して前記入力画像を変形させる画像変形装置であって、
画素位置を補正するために使用される画素位置別の位置補正量データが記憶された一次メモリと、
前記一次メモリに比べて記憶領域が小さい参照メモリと、
前記一次メモリに記憶されている前記位置補正量データを複数回に分けて前記参照メモリに転送する転送部と、
前記参照メモリに記憶されている前記位置補正量データに基づいて、前記入力画像の各画素の画素位置を、所定の順序で順次補正する位置補正処理を実行する位置補正部と、
を有し、
前記転送部は、前記位置補正部が一の画素に対する前記補正を行う際にその画素に対応する前記位置補正量データが既に前記参照メモリに記憶されているように、前記所定の順序および前記位置補正部での前記位置補正処理の進捗に合わせて、前記転送を行う
ことを特徴とする画像変形装置。
【請求項２】
前記入力画像は、第１方向およびこれに直交する第２方向に画素が配列されており、
前記所定の順序は、前記第１方向の１ライン分の画素に対する補正を第２方向の先頭ラインから末尾ラインに向けて順に処理する順序であり、
前記転送部は、前記第１方向の１ライン分に対応する位置補正量データを転送単位にして、前記転送を行う
ことを特徴とする請求項１に記載の画像変形装置。
【請求項３】
前記一次メモリは、ＤＲＡＭ（Dynamic Random Access Memory）である
ことを特徴とする請求項１または２に記載の画像変形装置。
【請求項４】
前記参照メモリは、第１の参照メモリと第２の参照メモリを備え、
前記位置補正部は、所定量の画素を補正する毎に、前記位置補正量データの参照先を前記第１の参照メモリと前記第２の参照メモリとに交互に切り替え、
前記転送部は、前記所定量の画素に対応する位置補正データを転送単位とし、かつ転送先を前記第１の参照メモリと前記第２の参照メモリとに交互に切り替えて、前記転送を行う
ことを特徴とする請求項１乃至３のいずれか１つに記載の画像変形装置。
【請求項５】
入力画像の各画素の画素位置を補正して前記入力画像を変形させる画像変形装置であって、
画素位置を補正するために使用される画素位置別の位置補正量データが記憶された一次メモリと、
前記一次メモリに比べて記憶領域が小さい二次メモリと、
前記二次メモリに比べて記録領域が小さい参照メモリと、
前記一次メモリに記憶されている前記位置補正量データを複数回に分けて前記二次メモリに転送する第１転送を実行する第１転送部と、
前記二次メモリに記憶されている前記位置補正量データを複数回に分けて前記参照メモリに転送する第２転送を実行する第２転送部と、
前記参照メモリに記憶されている前記位置補正量データに基づいて、前記入力画像の各画素の画素位置を、所定の順序で順次補正する位置補正処理を実行する位置補正部と、
を有し、
前記第２転送部は、前記位置補正部が一の画素に対する前記補正を行う際にその画素に対する前記位置補正量データが既に前記参照メモリに記憶されているように、前記所定の順序および前記位置補正部での前記位置補正処理の進捗に合わせて、前記第２転送を行い、
前記第１転送部は、一の画素に対する前記位置補正量データを前記第２転送部が前記参照メモリに転送する際にその位置補正量データが既に前記二次メモリに記憶されているように、前記所定の順序および前記位置補正部での前記位置補正処理の進捗に合わせて、前記第１転送を行う、
ことを特徴とする画像変形装置。
【請求項６】
前記入力画像は、第１方向およびこれに直交する第２方向に画素が配列されており、
前記所定の順序は、前記第１方向の１ライン分の画素に対する補正を第２方向の先頭ラインから末尾ラインに向けて順に処理する順序であり、
前記第２転送部は、前記第１方向の１ライン分に対応する位置補正量データを転送単位にして、前記第２転送を行う
ことを特徴とする請求項５に記載の画像変形装置。
【請求項７】
前記二次メモリは、ＤＲＡＭ（Dynamic Random Access Memory）である
ことを特徴とする請求項５または６に記載の画像変形装置。
【請求項８】
前記位置補正量データは、各画素の補正前の画素位置に対する補正後の画素位置のシフト量を示すものである
ことを特徴とする請求項１乃至７のいずれか１つに記載の画像変形装置。
【請求項９】
前記位置補正量データは、各画素の補正前の画素位置に対する補正後の画素位置のシフト量を、隣の画素の前記シフト量に対する差分で表したものである
ことを特徴とする請求項１乃至７のいずれか１つに記載の画像変形装置。
【請求項１０】
前記位置補正量データは、間引き後の画素位置に対応するものであり、
前記位置補正部は、前記位置補正量データに対する補間処理によって前記入力画素の各画素に対する位置補正量を求めて前記位置補正処理を行う
ことを特徴とする請求項１乃至７のいずれか１つに記載の画像変形装置。
【請求項１１】
前記参照メモリおよび前記位置補正部は、同一の集積回路に組み込まれ、前記一次メモリは、前記集積回路の外部に設けられる
ことを特徴とする請求項１乃至１０のいずれか１つに記載の画像変形装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力画像の各画素の画素位置を補正して入力画像を変形させる画像変形装置に関する。
【背景技術】
【０００２】
電子写真プロセスを用いたプリンタ等の画像出力装置では、定着や紙搬送ムラに起因して出力画像が変形するため、画像データを変形方向と逆方向に変形させることによって出力画像の変形を抑えている。
【０００３】
画像変形処理が、図１２に示す拡大（あるいは縮小）や、図１３に示す回転などの単純な補正の場合、回転角や変倍率等のパラメータを変形処理部に与えてやれば、そのパラメータを元に変形処理部が画素毎の位置のシフト量を演算で求めて画像を変形させる方式を取ることができる。
【０００４】
しかし、実際の画像出力装置で発生する出力画像の変形（歪み）は、複数の要因により複雑になっているので、これを補正するためには。図１４に示すような複雑な変形処理を要する。そのため、上記のような演算で対応できる回転、拡大、縮小などの単純な補正では出力画像の歪みを完全に解消することはできない。
【０００５】
そこで、出力画像の歪みの実測値から該歪みを解消するための画素位置毎の位置補正量（垂直方向へのシフト量、水平方向へのシフト量）を予め求めてメモリに格納しておき、該メモリから画素毎の位置補正量を読み出して各画素の位置補正を行えば、あらゆる画像変形に対応できると共に、位置補正の精度を向上させることができる（図１５参照）。ただし、この方式の場合、位置補正量を画素単位に保持するので、該位置補正量を記憶するために膨大なメモリを必要とする。
【０００６】
一般的なプリンタでは、１ページの画素数は６００ｄｐｉで８０Ｍ画素程度に及ぶ場合があり、１画素あたり４色分の位置補正量として１６ｂｉｔのデータを保持すると仮定すると、１ページ分の位置補正量を保持するために１Ｇｂｉｔの容量が必要になる。
【０００７】
出力画像の歪みを相殺するための画像変形処理は、通常、画像の出力中にリアルタイムで行うため、高速処理が可能な画像処理ＬＳＩ（Large Scale Integration）で行われる。前述した画素毎の位置補正量のデータを画像処理ＬＳＩ内の補正部が参照する該画像処理ＬＳＩ内部のＳＲＡＭに記憶させると、ＳＲＡＭに必要な容量が増大して画像処理ＬＳＩが大型化し、非常に高価になってしまう、あるいは画像処理ＬＳＩの内部に持つことは現実的には不可能である。
【０００８】
画像処理ＬＳＩの内部に保持する位置補正量のデータ量を削減する技術として、たとえば、下記特許文献１には、間引き後の飛び飛びの画素位置についてのみ位置補正量のデータを保持し、これに基づいて、間引かれた画素位置の位置補正量を演算で求め、ディスプレイに表示する画像を変形する画像処理コントローラが開示されている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００９−１２２７６３号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
プリンタなどの画像出力装置は、ディスプレイに比べて解像度が高く、画素数が非常に多いため、特許文献１の技術を適用した場合でも、大幅な間引きが必要になり、位置補正の精度が著しく低下してしまう。
【００１１】
本発明は、上記の問題を解決しようとするものであり、補正部が参照する画素毎の位置補正量が記憶されたメモリの容量を少なく抑えつつ複雑な変形に精度よく対応することのできる画像変形装置を提供することを目的としている。
【課題を解決するための手段】
【００１２】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
【００１３】
［１］入力画像の各画素の画素位置を補正して前記入力画像を変形させる画像変形装置であって、
画素位置を補正するために使用される画素位置別の位置補正量データが記憶された一次メモリと、
前記一次メモリに比べて記憶領域が小さい参照メモリと、
前記一次メモリに記憶されている前記位置補正量データを複数回に分けて前記参照メモリに転送する転送部と、
前記参照メモリに記憶されている前記位置補正量データに基づいて、前記入力画像の各画素の画素位置を、所定の順序で順次補正する位置補正処理を実行する位置補正部と、
を有し、
前記転送部は、前記位置補正部が一の画素に対する前記補正を行う際にその画素に対応する前記位置補正量データが既に前記参照メモリに記憶されているように、前記所定の順序および前記位置補正部での前記位置補正処理の進捗に合わせて、前記転送を行う
ことを特徴とする画像変形装置。
【００１４】
上記発明では、入力画像全体に対する画素位置別の位置補正量データを一次メモリに保持しておき、位置補正部での処理の順序および進捗に合わせて、該位置補正量データを一次メモリから参照メモリへ複数回に分けて順次転送する。
【００１５】
［２］前記入力画像は、第１方向およびこれに直交する第２方向に画素が配列されており、
前記所定の順序は、前記第１方向の１ライン分の画素に対する補正を第２方向の先頭ラインから末尾ラインに向けて順に処理する順序であり、
前記転送部は、前記第１方向の１ライン分に対応する位置補正量データを転送単位にして、前記転送を行う
ことを特徴とする［１］に記載の画像変形装置。
【００１６】
上記発明では、転送部は、第１方向の１ライン分の位置補正量データを転送単位として、一次メモリから参照メモリへ位置補正量データを転送する。
【００１７】
［３］前記一次メモリは、ＤＲＡＭ（Dynamic Random Access Memory）である
ことを特徴とする［１］または［２］に記載の画像変形装置。
【００１８】
［４］前記参照メモリは、第１の参照メモリと第２の参照メモリを備え、
前記位置補正部は、所定量の画素を補正する毎に、前記位置補正量データの参照先を前記第１の参照メモリと前記第２の参照メモリとに交互に切り替え、
前記転送部は、前記所定量の画素に対応する位置補正データを転送単位とし、かつ転送先を前記第１の参照メモリと前記第２の参照メモリとに交互に切り替えて、前記転送を行う
ことを特徴とする［１］乃至［３］のいずれか１つに記載の画像変形装置。
【００１９】
上記発明では、第１の参照メモリと第２の参照メモリを交互に切り替えて使用することで、位置補正部が第１の参照メモリを参照して位置補正処理を実行している間に一次メモリから第２の参照メモリへ次の位置補正量データを転送し、位置補正部が第２の参照メモリを参照して位置補正処理を実行している間に一次メモリから第１の参照メモリへ次の位置補正量データを転送する。
【００２０】
［５］入力画像の各画素の画素位置を補正して前記入力画像を変形させる画像変形装置であって、
画素位置を補正するために使用される画素位置別の位置補正量データが記憶された一次メモリと、
前記一次メモリに比べて記憶領域が小さい二次メモリと、
前記二次メモリに比べて記録領域が小さい参照メモリと、
前記一次メモリに記憶されている前記位置補正量データを複数回に分けて前記二次メモリに転送する第１転送を実行する第１転送部と、
前記二次メモリに記憶されている前記位置補正量データを複数回に分けて前記参照メモリに転送する第２転送を実行する第２転送部と、
前記参照メモリに記憶されている前記位置補正量データに基づいて、前記入力画像の各画素の画素位置を、所定の順序で順次補正する位置補正処理を実行する位置補正部と、
を有し、
前記第２転送部は、前記位置補正部が一の画素に対する前記補正を行う際にその画素に対する前記位置補正量データが既に前記参照メモリに記憶されているように、前記所定の順序および前記位置補正部での前記位置補正処理の進捗に合わせて、前記第２転送を行い、
前記第１転送部は、一の画素に対する前記位置補正量データを前記第２転送部が前記参照メモリに転送する際にその位置補正量データが既に前記二次メモリに記憶されているように、前記所定の順序および前記位置補正部での前記位置補正処理の進捗に合わせて、前記第１転送を行う、
ことを特徴とする画像変形装置。
【００２１】
上記発明では、入力画像全体に対する画素位置別の位置補正量データを一次メモリに保持しておき、位置補正部での処理の順序および進捗に合わせて、該位置補正量データを一次メモリから二次メモリへ転送し、さらに二次メモリから参照メモリへ複数回に分けて順次転送する。
【００２２】
［６］前記入力画像は、第１方向およびこれに直交する第２方向に画素が配列されており、
前記所定の順序は、前記第１方向の１ライン分の画素に対する補正を第２方向の先頭ラインから末尾ラインに向けて順に処理する順序であり、
前記第２転送部は、前記第１方向の１ライン分に対応する位置補正量データを転送単位にして、前記第２転送を行う
ことを特徴とする［５］に記載の画像変形装置。
【００２３】
上記発明では、第２転送部は、第１方向の１ライン分の位置補正量データを転送単位として、二次メモリから参照メモリへ位置補正量データを転送する。
【００２４】
［７］前記二次メモリは、ＤＲＡＭ（Dynamic Random Access Memory）である
ことを特徴とする［５］または［６］に記載の画像変形装置。
【００２５】
［８］前記位置補正量データは、各画素の補正前の画素位置に対する補正後の画素位置のシフト量を示すものである
ことを特徴とする［１］乃至［７］のいずれか１つに記載の画像変形装置。
【００２６】
上記発明では、位置補正量データは、シフト量の絶対値を表わす。
【００２７】
［９］前記位置補正量データは、各画素の補正前の画素位置に対する補正後の画素位置のシフト量を、隣の画素の前記シフト量に対する差分で表したものである
ことを特徴とする［１］乃至［７］のいずれか１つに記載の画像変形装置。
【００２８】
上記発明では、位置補正量データは、隣接画素のシフト量と対する差分を表わす。
【００２９】
［１０］前記位置補正量データは、間引き後の画素位置に対応するものであり、
前記位置補正部は、前記位置補正量データに対する補間処理によって前記入力画素の各画素に対する位置補正量を求めて前記位置補正処理を行う
ことを特徴とする［１］乃至［７］のいずれか１つに記載の画像変形装置。
【００３０】
［１１］前記参照メモリおよび前記位置補正部は、同一の集積回路に組み込まれ、前記一次メモリは、前記集積回路の外部に設けられる
ことを特徴とする請求項１乃至１０のいずれか１つに記載の画像変形装置。
【００３１】
上記発明では、参照メモリは、集積回路の内部に設けられる。
【発明の効果】
【００３２】
本発明に係る画像変形装置によれば、補正部が参照する画素毎の位置補正量が記憶されたメモリの容量を少なく抑えつつ複雑な変形に精度よく対応することができる。
【図面の簡単な説明】
【００３３】
【図１】本発明の第１の実施の形態に係る画像変形装置の概略構成を示すブロック図である。
【図２】第１の実施の形態に係る画像変形装置の動作を示すタイミングチャートである。
【図３】垂直位置情報のカウントアップタイミングの一例を示す図である。
【図４】最初の転送要求を先き出しする場合の出力タイミングおよび垂直位置情報のカウントアップタイミングの一例を示す図である。
【図５】第２の実施の形態に係る画像変形装置の構成を示すブロック図である。
【図６】第２の実施の形態に係る画像変形装置の動作を示すタイミングチャートである。
【図７】第３の実施の形態に係る画像変形装置の概略構成を示すブロック図である。
【図８】二次メモリに設けた第１のバンドデータ格納領域と第２のバンドデータ格納領域を示す図である。
【図９】第３の実施の形態に係る画像変形装置の動作を示すタイミングチャートである。
【図１０】第４の実施の形態に係る画像変形装置の概略構成を示すブロック図である。
【図１１】位置補正量データから差分データを生成し、差分データを元の位置補正データにデコードして補正する場合のデータの変遷の一例を示す図である。
【図１２】元の画像を拡大する画像変形の例を示す図である。
【図１３】元の画像を回転させる画像変形の例を示す図である。
【図１４】元の画像を複雑に変形させる例を示す図である。
【図１５】画素毎の位置補正量に基づいて各画素の画素位置をシフトさせる画像変形例を示す図である。
【発明を実施するための形態】
【００３４】
以下、図面に基づき本発明の各種の実施の形態を説明する。
【００３５】
＜第１の実施の形態＞
図１は、本発明の第１の実施の形態に係る画像変形装置１０の概略構成を示すブロック図である。画像変形装置１０は、入力画像の各画素の画素位置をそれぞれ所望の画素位置に変換した出力画像を生成する機能を果たす。
【００３６】
処理対象の入力画像は、第１方向およびこれに直交する第２方向に画素が配列されたドットマトリクス形式の画像である。また、出力画像も第１方向およびこれに直交する第２方向に画素が配列されたドットマトリクス形式の画像である。ここでは、第１方向を水平方向、第２方向を垂直方向とする。
【００３７】
画像変形装置１０は、たとえば、レーザプリンタのレーザユニットの前段等に設けられる。画像信号は、当該画像変形装置１０を経てレーザユニットのレーザダイオードへ出力される。画像変形装置１０にはレーザユニットへの出力順序で各画素の画像データが順次入力され、レーザユニットで画像を形成するときに、これと並行して画像の変形処理をリアルタイムに実施する。具体的には、画像変形装置１０には、水平方向１ライン分の画像データが、１ページの先頭（垂直方向の先頭のライン）から末尾に向けて順に入力される。各水平方向１ラインにおいては、そのラインの先頭画素から末尾に向かう順で各画素の画像データが順次入力される。
【００３８】
画像変形装置１０は、一次メモリ１１と、画像処理回路１２と、転送制御部１３を備えて構成される。画像処理回路１２は、内部に参照メモリ１５と位置補正部１６を備えている。画像処理回路１２はＡＳＩＣ(Application Specific Integrated Circuit)等の集積回路として構成されている。
【００３９】
一次メモリ１１は、画像処理回路１２の外部に設けられたメモリである。ここでは、一次メモリ１１はＤＲＡＭ（Dynamic Random Access Memory）である。一次メモリ１１には、位置補正量データが保存される。位置補正量データは、補正前の画素位置に対する補正後の画素位置のシフト量を示すデータである。一次メモリ１１には、１ページ分の画像の各画素位置について位置補正量データが記憶されている。なお、一次メモリ１１に複数ページ分の位置補正量データを保持してもよい。
【００４０】
参照メモリ１５は、画像処理回路１２の内部に設けられたＳＲＡＭ（Static Random Access Memory）である。参照メモリ１５は、画素位置毎の位置補正量データを水平方向の１ライン分保持する。なお、参照メモリ１５は、位置補正量データを複数ライン分保持してもよい。
【００４１】
転送制御部１３は、一次メモリ１１に記憶されている位置補正量データを複数回に分けて参照メモリ１５に転送する。
【００４２】
位置補正部１６は、前述した順序で順次入力される入力画像の各画素の画素位置を、参照メモリ１５に記憶されている位置補正量データに基づいて順次補正する位置補正処理を実行する。補正後の画像は出力画像として出力される。
【００４３】
具体的には、位置補正部１６には、入力画像と共に、垂直有効信号、水平有効信号が入力されている。垂直有効信号、水平有効信号は、印刷を行う際に画像出力装置（プリンタエンジン部）から出力される信号である。垂直有効信号は、１ページの画像を印刷するときにその１ページの先頭ラインの印刷を開始する少し前から末尾ラインの印刷が完了するまでオン（High）にされる信号である。水平有効信号は、水平方向の１ライン毎に出力される信号であり、ラインの先頭画素の印刷を開始する少し前から末尾画素の印刷が完了するまでオンにされる信号である。
【００４４】
位置補正部１６は、垂直有効信号がオンで水平有効信号がオンになっているときに有効な入力画像が入力されていると判断し、そのとき入力される入力画像に対して位置補正処理を行う。
【００４５】
ここで、転送制御部１３は、位置補正部１６が一の画素に対する位置補正を行う際にその画素に対応する位置補正量データが既に参照メモリ１５に記憶されているように、位置補正量データの転送を、前述した入力画像の各画素が画像処理回路１２に入力される順序および位置補正部１６での位置補正処理の進捗に合わせて行う。
【００４６】
転送制御部１３にも、垂直有効信号、水平有効信号が入力されている。転送制御部１３は、位置補正部１６が次に位置補正処理を行うラインを、垂直有効信号および水平有効信号に基づいて認識する。そして、位置補正部１６が次に位置補正処理を行うラインに対応する１ライン分の位置補正量データを、そのラインに対する位置補正処理を位置補正部１６が実行する直前に参照メモリ１５へ転送する。
【００４７】
具体的には、転送制御部１３は、垂直有効信号および水平有効信号から次に位置補正部１６が処理するラインの垂直位置を表した垂直位置情報を生成し、これを読み出しアドレスとして一次メモリ１１へ出力する。これを受けて一次メモリ１１は、読み出しアドレスに対する１ライン分の位置補正量データを連続して出力する。画像処理回路１２は一次メモリ１１から出力される１ライン分の位置補正量データを順次受け取って参照メモリ１５に格納する。
【００４８】
図２は、画像変形装置１０の動作を示すタイミングチャートである。１ページの処理の開始時に、垂直有効信号がオンになり、その後、垂直有効信号は該ページが終了するまでオンを継続し、該ページの終了後にオフになる。水平有効信号は、水平方向の１ライン分の入力画像が入力されている間はオンになり、該ラインの終了から次のラインの開始直前までオフになる。位置補正部１６は、水平有効信号がオンになっている間に入力される１ライン分の画像に対してリアルタイムに位置補正処理を実行する。１ライン目に対応する水平有効信号は、垂直有効信号がオンになった後、しばらくしてからオンになっている。
【００４９】
このように、画像処理はライン単位で行われており、ライン間には水平有効信号がオフになっている無効領域（有効画像が流れていない時間）がある。そこで、次に位置補正処理が行われるラインに対応する１ライン分の位置補正量データを、そのラインの直前の無効領域において一次メモリ１１から参照メモリ１５へ転送する。
【００５０】
図２では、位置補正部１６が現在処理中の画素を含むラインは３ライン目である。転送制御部１３は、２ライン目の処理が終了した（２ライン目の水平有効信号がオフになった）ことを検出したとき（時刻Ｔ１）、転送要求と３ライン目を示す垂直位置情報を一次メモリ１１へ出力する。これに応じて一次メモリ１１は３ライン目の位置補正量データ（１ライン分の位置補正量データ）をリードデータとしてバースト出力する。画像処理回路１２は該リードデータを取り込み、参照メモリ１５に格納する。このようにして、３ライン目の入力画像に対して位置補正部１６が位置補正処理を開始する前に、３ライン目に対応する位置補正量データが、一次メモリ１１から参照メモリ１５へ転送される。
【００５１】
図３は、垂直位置情報のカウントアップタイミングの一例を示している。図３の場合、転送制御部１３は、垂直有効信号の立ち上がりエッジを検出し、これをトリガとして、先頭ラインの垂直位置情報（リードアドレス「０」）と転送要求を出力する。以後は、水平有効信号の立ち下がりエッジを検出する毎に、垂直位置情報をカウントアップし、該カウントアップした垂直位置情報と転送要求を一次メモリ１１へ出力する。図３の場合、垂直有効信号の立ち上がり時点から最初の水平有効信号の立ち上がり時点までの間に、先頭ライン用の１ライン分の位置補正量データの転送が完了している。
【００５２】
図４は、垂直有効信号の立ち上がりから最初の水平有効信号の立ち上がりまでの時間が短くて、その間に先頭ライン用の１ライン分の位置補正量データを転送できない場合に対応した、転送要求の出力タイミングの一例を示している。この例では、前ページの終了時（前ページの垂直有効信号の立ち下がりエッジを検出した時）に、先頭ラインの垂直位置情報（リードアドレス「０」）と転送要求を出力する。以後は、図３と同様に、水平有効信号の立ち下がりエッジを検出する毎に、垂直位置情報をカウントアップし、該カウントアップした垂直位置情報と転送要求を出力する。
【００５３】
なお、１ページ目については、上記の方法では対応できない。そこで、１ページ目の最初の水平有効信号が立ち上がる前に、一次メモリ１１から参照メモリ１５へ１ライン分の位置補正量データの転送が完了するように、プリントエンジン部で実際の印刷が開始される前に、印刷の開始時に上位の処理から転送開始指示を転送制御部１３に対して出力し、該転送開始指示を受けたときに、転送制御部１３が、先頭ラインの垂直位置情報（リードアドレス「０」）と転送要求を一次メモリ１１に対して出力するように構成すればよい。
【００５４】
このように、第１の実施の形態に係る画像変形装置１０では、１または複数ページ分の位置補正量データを、画像処理回路１２の外部の一次メモリ１１（ＤＲＡＭ）に保持しておき、位置補正部での処理の順序および進捗に合わせて、一次メモリ１１から参照メモリ１５へ位置補正量データを順次転送するので、画像処理回路１２の内部に持たせる参照メモリ１５の容量を少なく抑えることができる。
【００５５】
特に、ライン間で水平有効信号がオフになっている無効領域で次のラインに対応する位置補正量データを一次メモリ１１から参照メモリ１５へ転送するので、参照メモリ１５には、位置補正量データを１ライン分保持するだけで済み、画像処理回路１２の内部に設ける参照メモリ１５の容量を少なく抑えて、画素毎の位置補正量データを使用した高精度の画像変形を行うことができる。
【００５６】
＜第２の実施の形態＞
第１の実施の形態では、各ラインに対する位置補正処理の開始直前のタイミング（無効領域）で一次メモリ１１から参照メモリ１５に位置補正量データを転送して参照メモリ１５に保持される位置補正量データを更新した。しかし、一のラインの有効領域（水平有効信号が有効になっている期間）から次のラインの有効領域までの間隔（無効領域）が非常に短い場合や、ＤＲＡＭからの転送速度が十分でない場合は、その間に１ライン分すべての位置補正量データを転送しきれなくなり、正常に位置補正処理を実行できなくなる。第２の実施の形態はこの問題を解決する構成である。
【００５７】
図５は、第２の実施の形態に係る画像変形装置２０の構成を示している。画像変形装置２０は、一次メモリ２１と、画像処理回路２２と、転送制御部２３を備えて構成される。画像処理回路２２は、内部に、転送先切り替え部２５、第１の参照メモリ２６、第２の参照メモリ２７、セレクタ２８、位置補正部２９を備えている。画像処理回路２２は、画像処理回路１２と同様にＡＳＩＣ等の集積回路として構成されている。
【００５８】
一次メモリ２１は第１の実施の形態における一次メモリ１１と同一である。
【００５９】
画像変形装置２０は、第１の実施の形態における参照メモリ１５に相当するメモリとして、第１の参照メモリ２６と第２の参照メモリ２７を備えている。第１の参照メモリ２６、第２の参照メモリ２７はそれぞれ、画像処理回路１２の内部に設けられたＳＲＡＭであり、それぞれ画素位置毎の位置補正量データを水平方向の１ライン分保持する。
【００６０】
転送先切り替え部２５は、一次メモリ２１から出力された位置補正量データの転送先を、第１の参照メモリ２６と第２の参照メモリ２７に交互に切り替える。
【００６１】
セレクタ２８は、位置補正部２９が位置補正量データを参照する際の参照先を、第１の参照メモリ２６と第２の参照メモリ２７に交互に切り替える。
【００６２】
転送制御部２３は、一次メモリ１１に記憶されている位置補正量データを複数回に分けて、第１の参照メモリ２６と第２の参照メモリ２７に交互に転送する。転送制御部２３は、一次メモリ１１から出力された位置補正量データを第１の参照メモリ２６に転送するか、第２の参照メモリ２７に転送するかを示す転送先選択信号を転送先切り替え部２５に対して出力する。転送先切り替え部２５は転送制御部２３から入力された転送先選択信号にしたがって転送先を切り替える。
【００６３】
また、転送制御部２３は、位置補正部２９が位置補正量データを参照する際の参照先を、第１の参照メモリ２６にするか第２の参照メモリ２７にするかを示す参照メモリ選択信号をセレクタ２８に対して出力する。セレクタ２８は、位置補正部２９が位置補正量データを参照する際の参照先を、転送制御部２３から入力される参照メモリ選択信号に従って切り替える。
【００６４】
位置補正部２９は、セレクタ２８から出力される位置補正量データを参照して、画像変形装置１０の位置補正部１６と同様の位置補正処理を行う。
【００６５】
詳細には、転送制御部２３は、０ライン目（先頭ライン）の位置補正量データは第１の参照メモリ２６を転送先として転送し、１ライン目の位置補正量データは第２の参照メモリ２７を転送先として転送し、２ライン目の位置補正量データは第１の参照メモリ２６を転送先として転送し、３ライン目の位置補正量データは第２の参照メモリ２７を転送先として転送し……というように、１ライン毎に位置補正量データの転送先が第１の参照メモリ２６と第２の参照メモリ２７とに交互に切り替わるように転送先選択信号を出力する。
【００６６】
同様に、転送制御部２３は、位置補正部２９が０ライン目の各画素に対して位置補正処理を行う際は位置補正量データの参照先が第１の参照メモリ２６となり、位置補正部２９が１ライン目の各画素に対して位置補正処理を行う際は位置補正量データの参照先が第２の参照メモリ２７となり、位置補正部２９が２ライン目の各画素に対して位置補正処理を行う際は位置補正量データの参照先が第１の参照メモリ２６となり、位置補正部２９が３ライン目の各画素に対して位置補正処理を行う際は位置補正量データの参照先が第２の参照メモリ２７となり……というように、１ライン毎に位置補正量データの参照先が第１の参照メモリ２６と第２の参照メモリ２７とに交互に切り替わるように参照メモリ選択信号を出力する。
【００６７】
転送制御部２３は、一次メモリ２１から第１の参照メモリ２６または第２の参照メモリ２７への位置補正量データの転送を、位置補正部２９が転送先の参照メモリを参照していない時に行う。たとえば、位置補正部２９が第１の参照メモリ２６を参照して位置補正処理を行っている間に、第２の参照メモリ２７に対して次のラインに対応する位置補正量データを転送し、位置補正部２９が第２の参照メモリ２７を参照して位置補正処理を行っている間に、第１の参照メモリ２６に対して次のラインに対応する位置補正量データを転送する。
【００６８】
図６は、画像変形装置２０の動作を示すタイミングチャートである。まず、垂直有効信号がオンになる前に、先頭ライン（０ライン目）に対応する位置補正量データを一次メモリ２１から第１の参照メモリ２６に転送する（時刻Ｔ21〜Ｔ22）。次に垂直有効信号がオンになるタイミングで次のライン（１ライン目）の位置補正量データを一次メモリ２１から第２の参照メモリ２７に転送する（時刻Ｔ23〜Ｔ24）。１ライン目の位置補正量データの転送中に、既に０ライン目の画像データが入力されており、位置補正部２９は第１の参照メモリ２６を参照して０ライン目の各画素に対して位置補正処理を行っている。
【００６９】
次に、０ライン目の画像処理が完了し水平有効信号がオフになると（時刻Ｔ25）、位置補正部２９による第１の参照メモリ２６の参照が終了するので、転送制御部２３は、２ライン目の位置補正量データを一次メモリ２１から第１の参照メモリ２６に転送する（時刻Ｔ25〜Ｔ26）。この転送中に1ライン目の画像が入力され、位置補正部２９は第２の参照メモリ２７を参照して位置補正処理を行う。
【００７０】
このように第１の参照メモリ２６と第２の参照メモリ２７の２つの参照メモリを持ち、位置補正部２９はこれらを交互に参照し、転送制御部２３は位置補正部２９が参照していない方の参照メモリに次のラインの位置補正量データを転送するので、ライン間の無効領域が短い場合でも正常に位置補正量データを転送することができる。
【００７１】
＜第３の実施の形態＞
第２の実施の形態では、１ページあるいは複数ページ分の位置補正量データをＤＲＡＭである一次メモリ１１、２１に記憶している。しかし、一次メモリとしてＤＲＡＭで使用可能な容量が制限されており、１ページ分の位置補正量データを格納できない場合がある。そこで、第３の実施の形態では、一次メモリとして、大容量の領域が確保可能なメインメモリやハードディスク装置を使用する。
【００７２】
ハードディスク装置はＤＲＡＭに比べて、データの読み出しが遅延する場合があるので、ハードディスク装置から画像処理回路１２内の参照メモリ１５に位置補正量データを直接転送する方式では、転送が間に合わなくなる。第２の実施の形態で示すように、第１の参照メモリ２６と第２の参照メモリ２７を交互に使用する構成を採用した場合でも、ハードディスク装置から参照メモリ２６、２７へ位置補正量データを直接転送する方式では、ハードディスク装置からの読み出しに長い時間がかかると転送が間に合わないケースが生じる。
【００７３】
そこで、第３の実施の形態では、転送を２段階とし、ハードディスク装置からＤＲＡＭへ位置補正量データを転送し、このＤＲＡＭからさらに画像処理回路３３内部のＳＲＡＭへ位置補正量データを転送する。
【００７４】
図７は、第３の実施の形態に係る画像変形装置３０の概略構成を示している。第３の実施の形態に係る画像変形装置３０は、一次メモリ３１と、二次メモリ３２と、画像処理回路３３と、転送制御部３４を備えて構成される。画像処理回路３３は、内部に参照メモリ３６、位置補正部３７を備えている。画像処理回路３３はＡＳＩＣ等の集積回路として構成されている。
【００７５】
一次メモリ３１は、画像処理回路３３の外部に設けられたハードディスク装置などの大容量の記憶装置である。一次メモリ３１には、１ページ分、あるいは複数ページ分の位置補正量データが記憶されている。
【００７６】
二次メモリ３２は、画像処理回路３３の外部に設けられたメモリである。二次メモリ３２はＤＲＡＭである。図８に示すように、二次メモリ３２には、第１のバンドデータ格納領域３８と第２のバンドデータ格納領域３９が設けてある。第１のバンドデータ格納領域３８、第２のバンドデータ格納領域３９はそれぞれ１〜複数ライン分の位置補正量データを格納する。ここでは、第１のバンドデータ格納領域３８、第２のバンドデータ格納領域３９は、それぞれ４ライン分の位置補正量データを格納する。なお、この例では、２個のバンドデータ格納領域３８、３９を設けたが、バンドデータ格納領域は最低２個あればよく、３個以上でもかまわない。
【００７７】
参照メモリ３６は、画像処理回路３３の内部に設けられたＳＲＡＭである。参照メモリ３６は、画素位置毎の位置補正量データを水平方向の１ライン分保持する。参照メモリ３６は、画像変形装置１０における参照メモリ１５に相当する。なお、参照メモリ３６を、図５に示す画像処理回路２２と同様に２つ設け、さらに画像処理回路３３の中に転送先切り替え部２５とセレクタ２８を設け、第２の実施の形態と同様に、２つの参照メモリを交互に使用するように構成してもよい。
【００７８】
転送制御部３４は、一次メモリ３１に記憶されている位置補正量データを複数回に分けて二次メモリ３２に転送する。転送制御部３４は、一次メモリ３１から二次メモリ３２への転送は、１つのバンドデータ格納領域に格納されるライン数単位に行う。この例では、４ライン単位に行う。このとき、転送制御部３４は、一次メモリ３１から出力された位置補正量データの転送先を、４ライン単位に、第１のバンドデータ格納領域３８と第２のバンドデータ格納領域３９とに交互に切り替える。
【００７９】
また、転送制御部３４は、二次メモリ３２に格納されている位置補正量データを複数回に分けて参照メモリ３６に転送する。この転送は、１ライン分の位置補正量データを単位に行われる。また、転送制御部３４は位置補正量データの読み出し元のバンドデータ格納領域を、１つのバンドデータ格納領域に格納されるライン数単位に切り替える。この例では、４ライン分の位置補正量データを転送する毎に、位置補正量データの読み出し元を第１のバンドデータ格納領域３８と第２のバンドデータ格納領域３９とに交互に切り替える。
【００８０】
すなわち、転送制御部３４は、第１のバンドデータ格納領域３８に格納されている４ライン分の位置補正量データを、位置補正処理の進捗に合わせて、４回に分けて参照メモリ３６へ順次転送すると共に、この間に、次の４ライン分の位置補正量データを一次メモリ３１から第２のバンドデータ格納領域３９に転送する。次に、転送制御部３４は、第１のバンドデータ格納領域３８に格納されている４ライン分の位置補正量データの参照メモリ３６への転送が完了したら、転送元を第２のバンドデータ格納領域３９に切り替える。そして、第２のバンドデータ格納領域３９に格納されている４ライン分の位置補正量データを、位置補正処理の進捗に合わせて、４回に分けて参照メモリ３６へ順次転送すると共に、この間に、次の４ライン分の位置補正量データを一次メモリ３１から第１のバンドデータ格納領域３８に転送する。転送制御部３４は、以上のような動作を繰り返す。
【００８１】
図９は、画像変形装置３０の動作を示すタイミングチャートである。まず、垂直有効信号がオンになる前に、ページの先頭から１つのバンドデータ格納領域分の位置補正量データ（この例では０〜３ライン目の４ライン分の位置補正量データ）を一次メモリ３１から参照メモリ３６の第１のバンドデータ格納領域３８に転送する（時刻Ｔ31〜Ｔ32）。
【００８２】
次に、垂直有効信号がオンになったとき（時刻Ｔ33）、二次メモリ３２の第１のバンドデータ格納領域３８から参照メモリ３６へ０ライン目に対応する１ライン分の位置補正量データを転送する。位置補正部３７は、水平有効信号がオンになっている間に参照メモリ３６に格納されている位置補正量データを参照して、そのとき入力される１ライン分の画像の各画素の画素位置を補正する。
【００８３】
０ライン目の水平有効信号の立ち下がりエッジを検出したとき（時刻Ｔ34）、１ライン目に対応する１ライン分の位置補正量データを第１のバンドデータ格納領域３８から参照メモリ３６へ転送する。その後、水平有効信号の立ち下がりエッジを検出する毎に、２ライン目、３ライン目と進めながら位置補正量データを１ライン分ずつ参照メモリ３６に転送する。
【００８４】
このようにして、第１のバンドデータ格納領域３８に格納されている４ライン分の位置補正量データを参照メモリ３６に転送している間に、転送制御部３４は、次の４ライン分の位置補正量データを一次メモリ３１から二次メモリ３２の第２のバンドデータ格納領域３９に転送する。図９の例では、２ライン目の水平有効信号の立ち下がり時点（時刻Ｔ35）から転送を開始し、３ライン目の水平有効信号の立ち下がり前に４ライン分の転送が終了している。なお、４ライン分の転送に長い時間を要する場合には、転送の開始時点をより速いタイミングにすればよい。
【００８５】
３ライン目の水平有効信号の立ち下がりエッジを検出したとき（時刻Ｔ36）、４ライン目に対応する１ライン分の位置補正量データを第２のバンドデータ格納領域３９から参照メモリ３６へ転送する。その後、水平有効信号の立ち下がりエッジを検出する毎に、５ライン目、６ライン目、７ライン目と進めながら位置補正量データを１ライン分ずつ参照メモリ３６に転送する。この間に、８ライン目から１１ライン目に対応する位置補正量データが一次メモリ３１から二次メモリ３２の第１のバンドデータ格納領域３８に転送される。
【００８６】
以上のような動作を繰り返すことで、一次メモリ１１から二次メモリ３２を介して参照メモリ３６へ位置補正量データが順次転送される。そして、位置補正部３７は、水平有効信号がオンになっている期間に、該期間に入力される１ライン分の画像の各画素の画素位置を、参照メモリ３６に格納されている位置補正量データを参照して補正する。
【００８７】
第３の実施の形態に係る画像変形装置３０では、二次メモリ３２として使用されるＤＲＡＭの容量を少なく抑えることができる。
【００８８】
＜第４の実施の形態＞
位置補正量データは、１画素ごとに絶対値で保持すると、非常に大きなデータサイズになってしまう。画像処理回路１２等の内部に１ライン分のみ保持する場合でも、その容量が大きい。そこで、第４の実施の形態では、位置補正量データを圧縮して記憶しておき、位置補正処理を行う直前にこれを伸長して使用することで、位置補正量データを保持するために画像処理回路１２等の内部に設けるＳＲＡＭの容量を削減する。
【００８９】
ここでは、位置補正量データに代えて、隣接画素の差分データを保持する。すなわち、差分データは、ある画素の補正前の画素位置に対する補正後の画素位置のシフト量（位置補正量）を、隣の画素の位置補正量に対する差分で表わしたものである。隣接画素間の位置補正量の差は微小であるため、１画素当たりの位置補正量に対して割り当てるべきビット数が少なくなり、データ量が削減される。
【００９０】
図１０は、第４の実施の形態に係る画像変形装置４０の概略構成を示すブロック図である。図１に示した画像変形装置１０と同一部分には同一の符号を付してあり、それらの説明は適宜省略する。
【００９１】
画像変形装置４０では、画像処理回路１２Ｂの内部において、参照メモリ１５と位置補正部１６の間に補正量デコード部４１を備えている。補正量デコード部４１は、参照メモリ１５から読み出した差分データを、位置補正量を絶対値で表わした位置補正量データにデコードする。位置補正部１６は、参照メモリ１５を参照する代わりに、補正量デコード部４１から出力されるデコード後の位置補正量データを使用して位置補正処理を行う。
【００９２】
第４の実施の形態に係る画像変形装置４０では、一次メモリ１１から参照メモリ１５へは、１ライン分の差分データが転送される。参照メモリ１５から読み出された差分データは補正量デコード部４１で元の位置補正量データに復元され、位置補正部１６に対して出力される。なお、第４の実施の形態に係る画像変形装置４０では、一次メモリ１１や参照メモリ１５にデータ量を圧縮した差分データを保持するので、一次メモリ１１や参照メモリ１５に必要とされる記憶容量は第１の実施の形態の場合に比べて少なくてよい。
【００９３】
図１１は、位置補正量データから差分データを生成し、該差分データを元の位置補正データにデコードして補正する場合のデータの変遷の一例を示している。同図（ａ）は、元の位置補正量データであり、入力画像の画素毎に、位置補正量の絶対値を示している。たとえば、図中の「＋２／＋１」は、水平方向のシフト量が＋２画素、垂直方向のシフト量が＋１画素であることを示している。
【００９４】
同図（ｂ）は、同図（ａ）の絶対値で表わされた位置補正量データから生成した差分データを示している。この例では、左上隅の画素（図中、黒丸で示す画素）を基準画素とする。同図（ｂ）の中の矢印は参照方向を示している。左側に隣接画素が存在する画素については、その画素の位置補正量データが、左側に隣接する画素の位置補正量データとの差分に変換される。左端の画素については上側に隣接する画素との差分に変換される。一次メモリ１１には、同図（ｂ）に示す差分データが予め記憶される。
【００９５】
同図（ｃ）は、同図（ｂ）の差分データを補正量デコード部４１にて絶対値の位置補正量データにデコードした状態を示している。同図（ｄ）は、位置補正部１６が、デコードされた位置補正量データに基づいて各画素の位置をシフトさせて補正した状態を模式的に示している。同図（ｄ）において白丸は補正前の画素位置、グレーの丸は補正後の画素位置を示している。
【００９６】
本発明の第１〜第４の実施の形態によれば、画像処理回路１２等の内部に必要なメモリ容量を抑制しつつ、画素毎の位置補正量データに基づく補正により複雑な変形に精度よく対応することができる。
【００９７】
以上、本発明の実施の形態を図面によって説明してきたが、具体的な構成は実施の形態に示したものに限られるものではなく、本発明の要旨を逸脱しない範囲における変更や追加があっても本発明に含まれる。
【００９８】
実施の形態では、画素毎に位置補正量データを保持したが、位置補正量データを、間引き後の画素位置に対応するものとし、位置補正部にて、間引きされた位置補正量データに対する補間処理を行って、入力画素の各画素の画素位置に対応する位置補正量を求めて位置補正処理を行うようにしてもよい。たとえば、位置補正データを１画素おきに間引きすれば、データ量を半減することができる。
【００９９】
実施の形態では、転送単位を１ライン分の位置補正量データとしたが、転送単位はこれに限定されず、適宜に設定すればよい。たとえば、１回の無効領域で２ライン分の位置補正量データを転送可能であれば、２ライン分の位置補正量データを転送単位としてもよい。一方、参照メモリを第１の参照メモリ２６と第２の参照メモリ２７に分けて構成し、これらを交互に切り替える第２の実施の形態に示す構成であれば、１ライン分を複数回に分けて転送することも可能になる。
【０１００】
第３の実施の形態における二次メモリ３２は、たとえば、１６ライン分等の位置補正量データを保持可能なリングバッファとして構成してもよい。
【符号の説明】
【０１０１】
１０…画像変形装置
１１…一次メモリ
１２、１２Ｂ…画像処理回路
１３…転送制御部
１５…参照メモリ
１６…位置補正部
２０…画像変形装置
２１…一次メモリ
２２…画像処理回路
２３…転送制御部
２５…転送先切り替え部
２６…第１の参照メモリ
２７…第２の参照メモリ
２８…セレクタ
２９…位置補正部
３０…画像変形装置
３１…一次メモリ
３２…二次メモリ
３３…画像処理回路
３４…転送制御部
３６…参照メモリ
３７…位置補正部
３８…第１のバンドデータ格納領域
３９…第２のバンドデータ格納領域
４０…画像変形装置
４１…補正量デコード部
【図１】
2016074128.tif 000003
【図５】
2016074128.tif 000004
【図７】
2016074128.tif 000005
【図１０】
2016074128.tif 000006
【図１２】
2016074128.tif 000007
【図１３】
2016074128.tif 000008
【図１４】
2016074128.tif 000009
【図１５】
2016074128.tif 000010
【図２】
2016074128.tif 000011
【図３】
2016074128.tif 000012
【図４】
2016074128.tif 000013
【図６】
2016074128.tif 000014
【図８】
2016074128.tif 000015
【図９】
2016074128.tif 000016
【図１１】
2016074128.tif 000017