(57)【特許請求の範囲】
【請求項１】
画像を記憶するように構成された画像メモリであって、複数のタイルが前記画像に配列され、複数のラインが前記複数のタイルの各々に配列される、前記画像メモリと、
前記画像メモリから、複数の前記タイルの内、第１タイルの第１ラインを読み出すように構成された第１ラインセグメントバッファであって、前記第１タイルは複数のラインを含み、前記ラインは複数の画素を含み、前記画素は複数のビットを含み、前記第１ラインセグメントバッファのサイズは画素毎のビット数とライン毎の画素数とを乗算した値に等しい、第１ラインセグメントバッファと、
複数のタイルの内の前記第１タイルの前記第１ラインとは異なる第２ラインを前記画像メモリから読み出すように構成された第２ラインセグメントバッファと、
前記第１ラインセグメントバッファから前記第１ラインを、前記第２ラインセグメントバッファから前記第２ラインを、順次読み出し、方位選択肢に基づき前記第１ライン及び第２ラインを別個に回転させるように構成された回転器論理モジュールと、
前記回転させた第１ライン及び第２ラインを前記回転器論理モジュールから受信して回転させたタイルとして集約し、前記回転させたタイルについて前記画像メモリ内のアドレスを特定する第１書き込みバッファであって、前記第１書き込みバッファを前記回転させたタイルが前記アドレスにて前記画像メモリに書き込むように構成された前記第１書き込みバッファと、
を備える、画像回転装置。
【請求項２】
ダイレクト・メモリ・アクセス（ＤＭＡ）書き込み転送およびＤＭＡ読み出し転送を実行するように構成されたダイレクト・メモリ・アクセス（ＤＭＡ）コントローラ、
をさらに備える請求項１に記載の装置。
【請求項３】
前記回転器論理モジュールが、前記方位選択肢が１８０度である場合に、前記第１ラインセグメントバッファから前記第１ラインを読み出すようにさらに構成される、請求項２に記載の装置。
【請求項４】
前記方位選択肢に基づく前記第１ライン及び第２ラインの回転が、前記第１ライン及び第２ラインに関連する画素の回転を含む、請求項１に記載の装置。
【請求項５】
前記回転器論理モジュールが、前記回転させたタイルをＤＭＡ書き込み転送を用いて前記書き込みバッファに書き込むようにさらに構成された、請求項１に記載の装置。
【請求項６】
デジタル画像を画像メモリに記憶させるステップであって、複数のタイルが前記デジタル画像に配列され、複数のラインが前記複数のタイルの各々に配列される、ステップと、
前記複数のタイルの内の第１タイルの少なくとも第１ライン及び第２ラインをラインセグメントバッファに順次転送するステップであって、前記第１ラインと第２ラインとは異なり、前記第１タイルは複数のラインを含み、前記ラインは複数の画素を含み、前記画素は複数のビットを含み、前記ラインセグメントバッファのサイズは画素毎のビット数とライン毎の画素数とを乗算した値に等しい、ステップと、
９０度回転と１８０度回転と２７０度回転との内の１つに従って前記第１ライン及び第２ラインを別個に回転させるステップと、
前記回転させた第１ライン及び第２ラインを書き込みバッファに転送し、回転させたタイルとして集約するステップと、
前記回転させたタイルについて前記画像メモリ内のアドレスを特定するステップと、
前記回転させたタイルを前記書き込みバッファから前記画像メモリに書き込み、前記アドレスにて記憶させるステップと、
を含む、装置を作動させる方法。
【請求項７】
前記第１ライン及び第２ラインを転送するステップが、ダイレクト・メモリ・アクセス（ＤＭＡ）処理により実行される、請求項６に記載の方法。
【請求項８】
９０度と２７０度との内、一方の回転についての最適バースト寸法に基づき、前記ラインセグメントバッファ及び前記書き込みバッファの大きさを選択するステップ、をさらに含む、請求項６に記載の方法。
【請求項９】
１８０度の回転についての最適バースト寸法に基づき、前記ラインセグメントバッファ及び前記書き込みバッファの大きさを選択するステップ、をさらに含む、請求項６に記載の方法。
【請求項１０】
メモリに結合したプロセッサであって、
画像を記憶する構成とした画像メモリであって、複数のタイルが前記画像に配列され、複数のラインが複数の前記タイルの各々に配列された、前記画像メモリと、
前記画像メモリから前記複数のタイルの内の第１タイルの少なくとも第１ライン及び第２ラインを順次読み出すように構成されたラインセグメントバッファであって、前記第１ラインと第２ラインとは異なり、前記第１タイルは複数のラインを含み、前記ラインは複数の画素を含み、前記画素は複数のビットを含み、前記ラインセグメントバッファのサイズは画素毎のビット数とライン毎の画素数とを乗算した値に等しい、ラインセグメントバッファと、
を実行するように構成された前記プロセッサであって、
前記ラインセグメントバッファから前記第１ライン及び第２ラインを読み出し、
方位選択肢に基づいて前記第１ライン及び第２ラインを別個に回転させ、
前記回転させた第１ライン及び第２ラインを書き込みバッファに転送し、回転させたタイルとして集約し、
前記回転させたタイルについて前記画像メモリ内のアドレスを特定するように構成され、前記書き込みバッファが前記回転させたタイルを前記アドレスにて前記画像メモリに書き込むように構成される、
前記プロセッサを備える、画像を回転させるシステム。
【発明の詳細な説明】
【背景技術】
【０００１】
電子画像あるいはデスクトップ・パブリッシング・アプリケーションにより処理する「ソフトコピー」画像は、二次元配列の画素（ピクセル）すなわち画像信号からなる。歴史的に見て、小型コンピュータ用メモリは妥当な大きさの電子画像を回転させるのに中間ディスクバッファの使用を必要としている。しかしながら、より大型のコンピュータ用メモリの利用可能性を伴うことで、デスクトップ・パブリッシング・アプリケーションは電子画像全体を実メモリ内に記憶させることができる。たとえ大型の実メモリ割り当てを用いても、原画像と回転させた画像の両方を記憶する十分なメモリが必ずしも存在するとは限らない。例えば、一部システムでは、利用可能なコンピュータ用メモリはある電子画像を収容するには十分な大きさであるが、原画像と回転させた画像の両方を含むには十分な大きさではない。この種の事例では、電子画像を所定場所において、すなわちその固有のバッファ内でかつ相当の中間メモリあるいは補助メモリの使用を伴うことなく回転させることが望ましい。所定場所で電子画像を回転させるには、画像バッファ内に記憶させた電子画像に対し置換処理シーケンスを施すことが必要である。１つのシーケンスの各置換処理は、未だ転送されていない画像バッファ内の画素を各置換処理が消去しないようにして実行しなければならない。
【発明の概要】
【発明が解決しようとする課題】
【０００２】
デジタル複写機は、画像を走査し、画像のデジタル表現をメモリに記憶させ、画像のデジタル表現を印刷する別種の画像処理装置である。画像のデジタル表現を決して記憶しないものの、光導電性ドラムやベルト上に画像を生成するミラーやレンズ等の光学的構成要素を使用する従来のアナログ式複写機による生成レートに類似のレートでデジタル化画像を印刷するには、極めて大量のデータを高速レートで移動させねばならない。この種の大量のデータを素早く移動させる要件は、現行のデータ処理能力と記憶装置とをその極限にまで押し上げてきた。
【課題を解決するための手段】
【０００３】
画像を回転させる画像タイルの使用は、メモリ消費を低減することができる。しかしながら、タイルの大きさを増大させることにより画像回転性能を拡大することは、オンチップメモリ資源に悪影響を及ぼすことがある。それ故、メモリ効率のよいシステムと画像タイルの回転方法とを有することが望ましいようである。特に、メモリ消費に悪影響を及ぼすことなく高帯域で画像タイルのラインセグメントを回転するシステムならびに方法を有することが望ましいだろう。実施形態の様々な特徴は添付図面に関連して考察する場合に、下記の実施形態の詳細な説明を参照することによってよりよく理解されるため、より完全に理解することができる。
【図面の簡単な説明】
【０００４】
【図１】一実施形態によるデジタル画像回転器の例示的な実施形態を示す図である。
【図２】別の実施形態による例示的画像回転図である。
【図３】別の実施形態によるデジタル画像回転器が実行する例示的フロー図である。
【図４】別の実施形態によるハードウェアの図である。
【発明を実施するための形態】
【０００５】
実施形態は、構成可能なデジタル画像回転器を最適化するシステムならびに方法に概ね関する。より詳細には、構成可能なデジタル画像回転器は画像メモリと１セットのピンポンバッファと回転器論理モジュールとで構成することができる。画像メモリは、画像のデジタル表現を記憶するように構成されることができる。画像メモリは、ダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ）やスタティックＲＡＭや、ＤＤＲ−ＲＡＭや他の類似種のメモリ等の揮発性メモリの一形態によって実装されることができる。実施形態では、画像メモリはピンポンバッファセットとのインタフェースをとるよう構成されることもできる。態様において、発明者Ａｒｏｎ  Ｎａｃｍａｎ、Ｗｉｌｌｉａｍ  Ｄａｖｉｄ  Ｎｏｔｏｖｉｔｚ、Ｔｈｅｒｅｓａ  Ｍｉｃｈｅｌｌｅ  Ｍａｒｃｏｎｉ、Ｂｒｉａｎ  Ｒｉｃｈａｒｄ  Ｃａｆｆｅｅ、Ａｎｔｈｏｎｙ  Ｐａｕｌ  Ｌａｎｚａ、Ｔｉｍｏｔｈｙ  Ｍ．  Ｈｕｎｔｅｒにより、２０１０年８月３日に発行され、本出願と同じ企業に譲渡され、あるいは譲渡義務に従う「ＳＹＳＴＥＭＳ，  ＭＥＴＨＯＤＳ  ＡＮＤ  ＤＥＶＩＣＥＳ  ＦＯＲ  ＲＯＴＡＴＩＮＧ  ＩＭＡＧＥＳ（画像回転用のシステム、方法および装置）」と題する米国特許第７，７６８，６７８号に記載された種のシステムと方法と装置は、この出願全体を引用することにより本願明細書に含まれるが、様々な実施形態に用いることができる。
【０００６】
実施形態では、ピンポンバッファは一対の書き込みバッファと一対の読み出しバッファとで構成することができる。実施形態では、一対の読み出しバッファは一対のラインセグメントバッファで構成することができる。ピンポンバッファが書き込みバッファと読み出しバッファとラインセグメントバッファおよび／または他のバッファの他の数および／または組み合わせで構成できることを理解されたい。ピンポンバッファは、ＤＲＡＭやＳＲＡＭや内部ＡＳＩＣ  ＳＲＡＭや内部ＦＰＧＡ  ＳＲＡＭや他の高速メモリを用いて実装することができる。構成可能なデジタル画像回転器は、読み出しバッファと書き込みバッファとを用いた並列的な読み出し／書き込みアクセスについての最適性能に合わせ構成することができる。より詳細には、回転器論理モジュールに対するデータの書き込みでは、１セットのデータは画像メモリからラインセグメントバッファの１つに書き込むことができ、一方でラインセグメントバッファのうちの第２のバッファから回転器論理モジュールへ別のアクセスを行なうことができる。同様に、１セットのデータは回転器論理モジュールから書き込みバッファのうちの１つへ転送することができ、一方で別のデータセットを第２の書き込みバッファから画像メモリへ転送することができる。
【０００７】
実施形態では、回転器論理モジュールあるいは他の論理回路が画像メモリのデジタル画像を複数のタイルや断片や部分や領域等に分割、区分、あるいは分化することができる。一実施形態では、所与のデジタル画像の複数のタイルはそれぞれ同一寸法とすることができる。他の実施形態では、各タイルにタイルの幅を張る幾つかの数のラインを持たせることができる。例えば、デジタル画像の複数のタイルはそれぞれ１２８画素×１２８ライン×画素当り８ビットとすることができ、各ラインは１２８画素、すなわちタイルの幅となる。タイルとラインについての他の寸法と構成を構想してあることを理解されたい。
【０００８】
実施形態では、ピンポンバッファを回転器論理モジュールとのインタフェースをとるように構成するができる。回転器論理モジュールを、デジタル画像のタイルのラインを回転させるように構成することができる。より詳細には、回転器論理モジュールはタイルのラインを取り込み、それらを９０度（９０°）や１８０度（１８０°）や２７０度（２７０°）あるいは他の回転のうちの選択された回転に合わせ微小回転させることができる。実施形態では、回転器論理モジュールは回転させたラインを書き込みバッファに転送し回転させたタイルとして集約し、回転させたタイルについて画像メモリ内のメモリアドレスを特定することができる。続いて、書き込みバッファは回転させたタイルをそのメモリアドレスにて画像メモリに書き込むことができる。
【０００９】
図１は、本発明の一実施形態になるデジタル画像回転器１００の例示的な実施形態を示す図である。図１に示したデジタル画像回転器１００は一般的な概略図を表わすものであり、他の構成要素を追加するか、既存の構成要素を取り除くか改変できることは、当業者にとって即明白であろうる。さらに、デジタル画像回転器１００の構成要素は当業者が熟知するハードウェアやソフトウェアやそれらの組み合わせとすることができる。
【００１０】
図１に示すように、デジタル画像回転器１００は画像メモリ１０５と１セットのピンポンバッファ１１０と回転器論理モジュール１１５とで構成される。画像メモリ１０５は、デジタル画像を記憶するように構成されることができる。デジタル画像ファイルのソースは、スキャナや複写機やディスク記憶装置や計算機デバイスやデジタルカメラや他の類似のデバイス（図示せず）からのものであることができる。デジタル画像は画像メモリ１０５内に連続する一連のアドレスの体裁にて記憶させ、左上隅を最低位アドレスとし、一方で右下隅を最高位メモリアドレスであることができる。画像メモリ１０５は、デジタル画像の回転させた版を見込んで書き換えるように構成されることもできる。回転方向は、一実施形態では９０°、１８０°、２７０°から選択することができる。他の回転および／または方位が選択できることを理解されたい。
【００１１】
画像メモリ１０５を、高速メモリあるいはレジスタを用いて実装することができる。高速メモリは、動的デバイスや静的デバイス、伸長データ出力デバイスや２倍速データレート（「ＤＤＲ」）デバイスあるいは他の類似のデバイス等の一種のランダム・アクセス・メモリ（「ＲＡＭ」）であることができる。一実施形態では、画像メモリ１０５を再書き換え可能アレイあるいは特定用途向け集積回路（「ＡＳＩＣ」）の一部として実装することができる。
【００１２】
画像メモリ１０５は、少なくとも２個のラインセグメントバッファ１２０，１２５を含むことのできる１セットのピンポンバッファ１１０とのインタフェースをとるように構成されることができる。１セットのピンポンバッファ１１０は、また、少なくとも２個の書き込みバッファ１３０、１３５を含むこともができる。バッファ（１２０〜１３５）は、画像メモリバッファバス１４０上で画像メモリ１０５とインタフェースをとることができる。ダイレクト・メモリ・アクセス（ＤＭＡ）コントローラ１４５は、バッファ１２０〜１３５および画像メモリ１０５とのインタフェースをとるように構成されるができる。ＤＭＡコントローラ１４５は、２個の構成要素間で大型ブロック（バースト）のデータを転送するメカニズムを配設することで、画像メモリ１０５と１セットのピンポンバッファ１１０との間でのデータ転送速度を増大させることができる。
【００１３】
ピンポンバッファのセット１１０を、高速メモリあるいはレジスタを用いて実装することができる。高速メモリは、動的デバイスや静的デバイスや拡張データ出力デバイスや倍速データレート（「ＤＤＲ」）デバイスあるいは他の類似のデバイス等の一種のランダム・アクセス・メモリ（「ＲＡＭ」）であることができる。いくつかの実施形態では、ピンポンバッファのセット１１０を再書き換え可能アレイあるいは特定用途向け集積回路（「ＡＳＩＣ」）の一部として実装することができる。
【００１４】
ピンポンバッファのセット１１０を、バッファ論理バス１５０上で回転器論理モジュール１１５とのインタフェースをとるように構成することもできる。ＤＭＡコントローラ１５５は、バッファ１２０〜１３５や回転器論理モジュール１１５とのインタフェースをとるよう構成することができる。ＤＭＡコントローラ１４５と同じく、ＤＭＡコントローラ１５５は、ピンポンバッファ１１０と回転器論理モジュール１１５との間でデータブロック（あるいはバースト）を転送することで回転器論理モジュール１１５の性能を増大させるように構成されることができる。
【００１５】
回転器論理モジュール１１５を、画像メモリ１０５が記憶するデジタル画像を所望の方位に回転させる機能性を提供するように構成することができる。いくつかの実施形態では、回転器論理モジュール１１５を再書き換え可能アレイあるいは特定用途向け集積回路（「ＡＳＩＣ」）の一部として実装することができる。より詳細には、回転器論理モジュール１１５を画像のタイル（または断片や部分や領域等）を所望方位に微小回転させるように構成することができる。実施形態では、タイルは幾つかの画素（幅）と幾つかのラインと幾つかの画素当りビットを有することができる。例えば、１枚のタイルは１２８画素×１２８ライン×画素当り８ビットであることができる。
【００１６】
例示的な実施形態では、回転器論理モジュール１１５を、画像のタイルのラインセグメントを回転させるように構成することができる。特に、ラインセグメントバッファ１２０、１２５は画像のタイルのラインセグメントを読み出す構成とすることができる。実施形態では、ラインセグメントバッファの大きさはタイルの幅とすることができる。例えば、１枚のタイルが１２８画素×１２８ライン×画素当り８ビットの大きさを有する場合、そのときはラインセグメントバッファの大きさは１０２４ビット（１２８画素×画素当り８ビット）となる。デジタル画像のタイルの例示的な回転を図２に示す。
【００１７】
図２に示すように、デジタル画像２０５を選択方位へ回転させるように選択することができる。デジタル画像２０５には、連続するアドレスのセットを順番に割り当てることができる。例えば、一連のアドレスの最低位アドレスをデジタル画像２０５の左上隅、すなわちタイル２１５（図２では「ＬＡ」と表示される）とし、デジタル画像の右下隅を、一連のアドレス内の最高位アドレスを有するタイル２２０（図２では「ＨＡ」と表示される）とすることができる。実施形態では、タイルの大きさはデジタル画像回転器１００の帯域に依存させることができる。
【００１８】
図２に示すように、デジタル画像２０５のタイル２２５は選択された方位（図２では、例えば９０°）へ回転させることができる。タイル２２５は、１セットのラインセグメント２２６に配列させることができる。実施形態では、ラインセグメントのセット２２６の数はタイル２２５の画素幅と等しくてよい。例えば、タイル２２５が１２８画素幅である場合、そのときはラインセグメントのセット２２６のうち１２８個を設けることができる。ラインセグメントのセット２２６のうちの選択されたラインセグメントは、ステージ１においてラインセグメントバッファ、例えば２個のラインセグメントバッファ１２０，１２５のうちの一方に転送することができる。図２はラインセグメントのセット２２６全てがラインセグメントバッファにあることを示しているが、ラインセグメントバッファは各ラインセグメントのセット２２６を個別に読み出すよう構成されていることを理解されたい。
【００１９】
ラインセグメントバッファ（１２０または１２５）から、回転器論理モジュール１１５へ選択したラインセグメント２２６を転送することができる。ステージ２では、選択されたラインセグメント２２６を所望方位（図２では９０°）に微小回転するよう回転器論理モジュール１１５を構成することができる。実施形態では、一部実施形態に使用する微小回転技法をラインセグメントマトリクス内の画素の再配列に基づかせることができる。例えば、６４×１画素ラインセグメントマトリクス（あるいは別の大きさ）を再配列して、所望の回転を生成し、続いて第２のラインセグメントマトリクス内に置くことができる。いくつかの実施形態では、ラインセグメントバッファから読み出しマトリクス内にデータを送り、続いて書き込みマトリクス内に再配列し、続いて書き込みバッファに書き込むことができる。いくつかの実施形態では、ラインセグメントバッファからのデータを読み出しマトリクス内に連続させて配置することができる。例えば、９０°回転を所望する場合、次にデータを読み出しマトリクスから取り出し、左から右のラインセグメントを書き込みマトリクス内の上から下のラインセグメントとすることができる。２７０°回転では、読み出しマトリクスからデータを取り出し、左から右のラインセグメントを書き込みマトリクス内の下から上のラインセグメントとする。１８０°回転では、読み出しマトリクスからデータを取り出し、左から右のラインセグメントを書き込みマトリクス内の右から左のラインセグメントとする。他の類似の回転を構想してあることを理解されたい。
【００２０】
回転器論理モジュール１１５を、ステージ３において、回転させたラインセグメント２２６を書き込みバッファ（１３０または１３５）の１つに転送するように構成することができる。実施形態では、書き込みバッファをタイル２２５の回転させたラインセグメント２２６を回転させたタイル２２７の一部として集約するように構成することができる。いくつかの実施形態では、連続する一連のラインセグメント２２６をステージ１の読み出しバッファに連続的に読み出し、ステージ２の回転器論理モジュール１１５へ送り、ステージ２において回転器論理モジュール１１５により回転させ、ステージ３の書き込みバッファに転送し、回転させたタイル２２７が形成されるまで書き込みバッファにより集約することができる。
【００２１】
回転器論理モジュール１１５を、回転させたラインセグメントセット２２６で構成される回転させたタイル２２７を微小回転させるように構成することもできる。より具体的には、回転器論理モジュール１１５は、タイル２２５の現在のアドレスを回転させたデジタル画像２１０内にある筈の回転させたタイル２２７の新規アドレスへ再計算することができる。より詳細には、デジタル画像２０５のタイルはタイルの幅と大きさが同じブロック内の左上隅を始端とするラインセグメント内に読み込むことができる。このブロックは微小回転させて他のものと集約して回転させたタイルを形成することができ、書き込みバッファデータを所望の回転に合わせた正しい位置においてメモリ内に戻すことができる。実施形態では、画像はメモリ内のアドレスの連続的な記号列とすることができるため、書き込みＤＭＡはブロックの各ラインの始端用に各地データバーストの開始アドレスを算出するだけで済む。この算出は、原画像の大きさや所望の回転角度や原画像内のブロックの位置に基づく最も簡単な加算／減算とすることができる。第１のラインセグメントを回転させた後、次の回転対象ラインセグメントを第１のラインセグメントの真下である。効率目的に合わせ、入力画像はラインセグメントの整数値あるいは倍数値が画像内にあるような大きさであることができる。
【００２２】
実施形態では、書き込みバッファ（１３０または１３５）のうち一方を、図２のステージ４に示すように、回転させたタイル２２７を回転させたデジタル画像２１０についての新規アドレスにて画像メモリ１０５に転送し戻すように構成することができる。他の回転方位が、これらの実施形態の十分な範囲内にあることは、当業者には即明らかとなる筈である。
【００２３】
図１に戻ると、いくつかの実施形態によると、デジタル画像回転器１００はピンポンバッファ１１０の使用を通じて効率について最適化することができる。より詳細には、ピンポンバッファ１１０は、デジタル画像タイルを回転させた際に、デジタル画像の次のタイルのラインセグメントがピンポンバッファ１１０内に読み込まれ、その一方で回転させたタイルがピンポンバッファのうちの１つに書き込まれるよう用いることができる。ピンポンバッファ１１０内には２個のラインセグメントバッファと２個の書き込みバッファが存在するため、３つの操作（画像メモリからの読み出しと、回転と、画像メモリへの書き込み）を実質同時に行ない、したがって効率を増大させることができる。
【００２４】
実施形態では、従来の読み出しバッファに代えてラインセグメントバッファを用いることで、性能を改善することができる。例えば、タイルが１２８画素×１２８ライン×画素当り８ビットの大きさを有する場合、書き込みバッファと読み出しバッファはそれぞれ１３１，０７２ビットである。２つの書き込みバッファと２つの読み出しバッファが存在する場合、オンチップバッファの大きさは５２４，２８８ビットである。対照的に、各ラインセグメントバッファの大きさは、タイルの幅寸法、すなわち１２８画素×画素当り８ビット、すなわち１０２４ビットに等しい。それ故、２つラインセグメントバッファと２つ書き込みバッファを実装することで、オンチップバッファの大きさは２６２，１４４ビット（書き込みバッファ）＋２０４８ビット（ラインセグメントバッファ）、すなわち総計２６４，１９２ビットである。
【００２５】
図３は、別の実施形態によるデジタル画像回転器により実行される例示フロー図３００を示す図である。図３に示すフロー図３００は一般化した図を表わしており、他の工程を追加したり、既存の工程を除去あるいは改変したりできることは、当業者には即明白となる筈である。
【００２６】
図３に示すように、工程３０５において、デジタル画像回転器１０５がデジタル画像を検出するように構成することができる。実施形態では、デジタル画像を、複写機やスキャナやコンピュータやデジタルカメラ、あるいはデジタル画像を生成することのできる他の任意の類似のデバイスから送り、あるいは検出することができる。
【００２７】
工程３１０において、デジタル画像回転器１０５はデジタル画像を所望回転させる選択を受け取る構成とすることができる。いくつかの実施形態では、可能な回転一覧は９０°と１８０°と２７０°であることができる。回転の選択を、クライアントコンピュータや他のデバイス等のデバイスからのユーザインタフェースを用いて実行することができる。他の実施形態では、所望の回転をデジタル画像に関連するメタデータ内に含めることができる。工程３１５において、デジタル画像回転器１０５をデジタル画像を複数のタイルに分割するように構成することができる。実施形態では、複数のタイルのそれぞれを所定の画素幅や所定のライン数や所定の画素当りビット数で構成することができる。例えば、１枚のタイルは１２８画素幅×１２８ライン×画素当り８ビットの大きさを含むことができる。
【００２８】
工程３２０において、ＤＭＡコントローラ１４５を複数のタイルのラインをラインセグメントバッファ（１２０、１２５）の一方に転送するように構成することができる。実施形態では、複数のタイルのラインは複数のラインの幅に等しい大きさを有することができる。例えば、タイルが１２８画素幅である場合、次にラインは１２８画素を含むことができる。さらに、ラインセグメントバッファ（１２０、１２５）の大きさは複数のタイルの幅に等しい大きさを有することができる。例えば、タイルが８ビット／画素を有する６４画素幅である場合、次にラインセグメントバッファ（１２０、１２５）は５１２ビットであることができる。
【００２９】
工程３２５において、回転器論理モジュール１１５をラインセグメントバッファ（１２０、１２５）のうちの１つからラインを読み出し、回転選択に従って回転器論理をラインに適用することができるように構成することができる。実施形態では、回転器論理モジュール１１５が選択されたラインセグメントバッファ（１２０、１２５）から読み出す際に、他方のラインセグメントバッファ（１２５、１２０）を画像メモリ１０５からのタイルの追加のラインセグメントでもって充当することができる。回転器論理モジュール１１５が被選択ラインセグメントバッファ（１２０、１２５）からの読み出しを終えると、回転器論理モジュール１１５は他のラインセグメントバッファ（１２５、１２０）に切り換えて、より多くのデータを検索することができる。実施形態では、セグメントバッファの切り換えは全てのデータが処理されるまで継続することができる。
【００３０】
実施形態では、回転器論理モジュール１１５は微小回転アルゴリズムを適用して所望ラインを被選択方位へ回転させることで、回転器論理を適用することができる。工程３３０において、回転器論理モジュール１１５は回転させたラインを書き込みバッファ（１３０、１３５）の一方に転送し、個別回転させたタイルを集約することができる。実施形態では、回転器論理モジュール１１５は、回転させたラインを、ＤＭＡ転送を介して書き込みバッファへ転送することができる。工程３３５において、回転器論理モジュール１１５はマクロ回転アルゴリズムを適用し、回転させたタイルを書き込む対象である画像メモリ１０５のメモリアドレスを特定することができる。実施形態では、回転させたタイルを任意の仕方で任意の形態のメモリに書き込むことができる。
【００３１】
工程３４０において、回転器論理モジュール１１５は回転させたタイルを書き込みバッファ（１３０、１３５）から画像メモリ１０５へ、回転器論理モジュール１１５内のマクロ回転アルゴリズムにより特定された適切なアドレス位置に転送することができる。実施形態では、回転させたタイルの転送はＤＭＡコントローラ１４５を用いて達成することができる。他の実施形態では、選択された回転させたタイルを第１の書き込みバッファ（１３０、１３５）から転送する間に、回転器論理モジュール１０５は次の回転させたタイルを第２の書き込みバッファ（１３５、１３０）に実質同時に書き込むことができる。この書き込みバッファ（１３０、１３５）の切り換えプロセスは、デジタル画像が完全に処理されるまで継続する。
【００３２】
図４は、実施形態による作像装置４００の例示的なハードウェア図を示すものである。作像装置４００は、スキャナ４０５とメモリ４１０とプリンタ４１５とを含むことができる。スキャナ４０５はプロセッサ４２０と組み合わせ、ハードコピー原文書を走査し、原文書をデジタル画像に変換し、デジタル画像を処理し、走査し処理し拡大した画像をメモリ（図面には図示せず）に保存することができる。例えば、メモリはサーバや局在または遠隔ハードドライブや携帯ジャンプドライブ等のデータ記憶が可能な任意の記憶デバイスとすることができる。プリンタ４１５は、原書類や処理済み画像や書類の拡大部分や他の構成の書類の印刷複写物を生成することができる。
【００３３】
プロセッサ４２０は、画像データを処理し、本願明細書に説明する如く作像装置４００の機能を差配することができる。例えば、プロセッサ４２０は、複数のピンポンバッファを用いて画像を回転させ、回転させた画像を本実施形態よるメモリ内に記憶させることができる。プロセッサ４２０は、例えばユーザに制御やユーザ可読設定を可能にするタッチパッドや一連の釦と状態スクリーンとを備えるユーザインタフェース（ＵＩ）４２５に結合することができる。使用時、ユーザは１つ以上の機能および／または幾つかの異なる機能からの選択肢および／またはＵＩ  ４２５の使用を通じた作像装置４００により提供される選択肢を選択することができる。例えば、ユーザはＵＩ  ４２５を介して回転対象画像と方位選択肢とを選択することができる。プロセッサ４２０はさらに、プリンタ４１５に命じてＵＩ  ４２５が受け取った選択肢に従って印刷画像を出力させることができる。
【図１】
0005886638.tif 000002
【図２】
0005886638.tif 000003
【図３】
0005886638.tif 000004
【図４】
0005886638.tif 000005