Nothing Special   »   [go: up one dir, main page]

JP5610897B2 - データ処理装置およびデータ処理方法 - Google Patents

データ処理装置およびデータ処理方法 Download PDF

Info

Publication number
JP5610897B2
JP5610897B2 JP2010168484A JP2010168484A JP5610897B2 JP 5610897 B2 JP5610897 B2 JP 5610897B2 JP 2010168484 A JP2010168484 A JP 2010168484A JP 2010168484 A JP2010168484 A JP 2010168484A JP 5610897 B2 JP5610897 B2 JP 5610897B2
Authority
JP
Japan
Prior art keywords
storage unit
index
rows
address
image data
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.)
Expired - Fee Related
Application number
JP2010168484A
Other languages
English (en)
Other versions
JP2012025121A5 (ja
JP2012025121A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2010168484A priority Critical patent/JP5610897B2/ja
Priority to US13/175,162 priority patent/US9030713B2/en
Publication of JP2012025121A publication Critical patent/JP2012025121A/ja
Publication of JP2012025121A5 publication Critical patent/JP2012025121A5/ja
Application granted granted Critical
Publication of JP5610897B2 publication Critical patent/JP5610897B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • 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
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/40Picture signal circuits
    • H04N1/405Halftoning, i.e. converting the picture signal of a continuous-tone original into a corresponding signal showing only two levels

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)
  • Image Input (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Record Information Processing For Printing (AREA)
  • Color, Gradation (AREA)

Description

本発明は、2次元に配列されたパラメータ情報を、その配列規則を損なうことなく、画像データの個々の画素位置に対応させて処理を行うデータ処理に関する。特に、画像データ内の画像処理単位(バンド)に含まれるライン数と、上記2次元パラメータ情報のライン数とが調和しない場合であっても、2次元パラメータの配列規則を損なわずに、画像データ内の領域全ての画素に対して処理を行う方法に関する。
互いの位置関係が定められた複数のデータの夫々に対し、やはり互いの位置関係が定められたパラメータの夫々を対応させるような処理は、様々な場面で用いられる。例えば、記録装置で画像を記録するためのデータを生成する画像処理において、個々の画素が有する多値データのそれぞれに対し2値のドットパターンを対応させる処理がこれに相当する。また、このように生成した個々の画素のドットパターンに、ドット記録の許容あるいは非許容を予め定めたマスクパターンを対応させることによって、各走査で実際に記録を行うドットを決定するマルチパス記録のための処理もこれに該当する。
このようなドットパターンやマスクパターンを、画像領域に対しなるべく非周期に定めようとする場合、画像領域のそれぞれの画素位置に対応する多数のパラメータを、互いの位置関係を固定した状態ですなわち2次元に格納するメモリが要される。但し、上記画像処理を行うCPUがこのような多数のパラメータが格納されたメモリに順次アクセスしながら処理を行うと、処理のための時間が多く要され、記録装置であれば記録速度を低下させてしまう。
このような処理速度の低下を改善するため、処理を実行する回路の内部に高速メモリ(キャッシュメモリ)を設け、上記大容量のメモリ(低速メモリ)に記憶されているデータを高速メモリに記憶したのち、処理を実行する方法が知られている。このようにすれば、低速メモリに対するアクセス回数を抑えることが出来るので、画像処理に関わる時間を記録速度に影響を与えない程度まで短縮することが出来る。しかし、上記非周期のために用意する2次元テーブルが余り大きいと、回路内部に用意するキャッシュメモリすなわち回路規模も大きくなり、コストを増大させてしまう。
このように、従来では非周期に配列するパラメータの夫々を、個々のデータに対応付けて処理する状況において、回路規模と高速処理とを両立させることは困難な状況であった。
これに対し例えば特許文献1には、低速メモリに格納されたパラメータの一部を、キャッシュメモリに読み出し、格納されたパラメータに対応する領域を単位として、順番に処理を行っていく構成が開示されている。特許文献1の方法を採用すれば、キャッシュメモリ自体に一度に大容量の情報を記憶できなくても、例えば1ライン分のパラメータを格納できるだけの少ないメモリ容量があれば、従来よりも高速なアクセスおよび処理を行うことが出来る。但しこの場合、確かにキャッシュメモリの容量を抑えることは出来るが、処理の単位ごとにCPUの設定が必要な回路では、1ラインごとにCPUによる設定や画像データへのアクセスが必要となり、このことがオーバーヘッドを招致する場合もある。このような状況の下、画像データを複数ラインごとに分割して複数のバンドを生成し、CPUによるメモリへのアクセスやパラメータの設定などを、バンドごとに実行すれば、上記問題を解決することが期待できる。
特開2002−269577号公報 特開2004−015213号公報
しかしながら、上記特許文献1のように、バンドごとに画像処理を行う構成の場合、予めメモリに格納されている2次元データの領域(数)が、必ずしもバンドの大きさに調和するとは限らない。
図11は、外部メモリに2次元に格納されているパラメータの配列状態と、これらパラメータを用いて処理されるべき画像データとの対応関係を説明するための模式図である。ここでは簡単のため、画像データ301は、y方向に18画素(18ライン)、x方向には10画素以上の領域を有するものとする。そして、画像データ301は、6ラインずつ3つのバンドに分割され、1バンドずつCPUから呼び出されて処理が施される構成とする。一方、外部メモリに格納された2次元パラメータ302は、x方向に9画素分、y方向に9画素(ライン)の81個のデータで構成されているものとする。
この場合、まず1バンド目の画像を処理するため、CPUは外部メモリにアクセスし、読み込み開始アドレスとして、2次元パラメータ302のアドレス3041を指定する。そして、この最上位ラインについては、先頭の3041からx方向に9つ進んだアドレス3049までの領域に格納されている、グレーで示した領域303に含まれる9つのデータ群をキャッシュメモリに格納する。画像データ301の1バンド目1ライン目に配列する個々の画素データは、この9つのデータのそれぞれによって処理される。
1バンド目の2ライン目については、読み込み開始アドレスを、アドレス3041からy方向に1ライン分シフトしたアドレス3050に指定する。そして、先頭の3050からx方向に9つ進んだアドレス3058までの領域に格納されている9つのデータ群を、キャッシュメモリに格納する。画像データ301の1バンド目2ライン目に配列する個々の画素データは、この9つのデータのそれぞれによって処理される。以上のような動作を繰り返し、1バンド目に相当する6ライン目までのデータ読み込みおよび処理が完了する。このように、1バンド目については、2次元パラメータ302の配列関係を崩すことなく、画像データ301の個々の画素に対応させて処理を行うことが出来る。
2バンド目の画像を処理する際、CPUは2次元パラメータ302の読み込み開始アドレスとして、既に読み込んだ6ライン目に続く7ライン目の先頭アドレス3095を指定する。そして、1バンド目と同様にして、順次ラインの読み取りおよび処理を進めていく。しかし、2バンド目については、最初の3ライン目まで処理したところで2次元パラメータ302の全データの読み取りが終ってしまう。すなわち、同じバンド内において、単純に先頭アドレスの位置をy方向に1つずつシフトさせていく構成では、4ライン目のために先頭アドレスを指定することが出来なくなってしまう。
このような状況を回避するため、処理の単位となるバンドに含まれるライン数を、2次元パラメータのライン数に合わせて適宜設定する方法も考えられる。本例の場合は、2バンド目のライン数を3ラインにすれば、2バンド目の処理は順調に完結し、3バンド目の処理もスムーズに先頭から開始することが出来る。しかしながら、バンドごとにライン数を設定するという新たなジョブが追加されると、ライン数の管理も複雑になり、CPUに更なる負荷をかけ、オーバーヘッドを効果的に回避することが難しくなる。
本発明は、上記問題点を解決するためになされたものである。よって、その目的とするところは、複数データの夫々に対し、2次元パラメータの夫々を配列規則を損なうことなく対応させながら、大掛かりなキャッシュメモリを用いることなく、高速処理することが可能なデータ処理方法を提供することである。
そのために本発明は、第1格納部から読み出した複数のインデックスが配列されるL(L≧2)行のテーブルのうちM(1≦M<L)行のインデックスを第2格納部に転送する転送手段と、画像データの各画素に対し、前記第2格納部に格納されるM行の複数のインデックスをそれぞれ対応させることにより、前記画像データの変換処理をする変換手段と、前記第2格納部に転送すべきM行のインデックスの前記テーブルの読み出しアドレスを指定するための指定手段と、を備え、前記指定手段は、前記テーブルに前記第2格納部に格納されるM行のインデックスに連続するM行のインデックスが存在する場合は、該連続するM行のインデックスの先頭のアドレスを前記読み出しアドレスとして指定し、前記テーブルに前記第2格納部に格納されるM行のインデックスに連続するM行のインデックスが存在しない場合は、前記テーブルの先頭のアドレスを前記読み出しアドレスとして指定することを特徴とする。
本発明によれば、2次元に配列する複数データの夫々に対し、2次元パラメータの夫々を配列規則を損なうことなく対応させながら、大掛かりなキャッシュメモリを用いることなく、高速処理することが可能となる。
本発明に使用可能なインクジェット記録装置の外観斜視図である。 記録装置の記録部の構成を説明するための斜視図である。 記録装置における制御の構成を説明するためのブロック図である。 画像処理の工程を説明するためのブロック図である。 INDEX処理部における具体的な処理を実行する回路構成図である。 複数のドットパターンを、各レベルについて示した図である。 複数のドットパターンの格納状態を説明するための模式図である。 2次元テーブルの一例を示す図である。 2次元テーブルと画像データとの対応関係を説明するための模式図である。 INDEX処理の工程を説明するためのフローチャートである。 2次元パラメータと画像データとの対応関係を説明する図である。
以下、図面を参照して本発明の実施例を詳細に説明する。以下に説明する実施例は、特許文献2に開示されている画像処理において、INDEX処理部が実行する処理を対象としたものである。但し、本発明は、このような画像処理に限定されるものではない。本発明は、互いの位置関係が定められた複数のデータの夫々に対し、外部メモリに格納された2次元テーブルの個々のパラメータ値を、その配列規則を損なうことなしに1対1で対応させながら処理を行う構成であれば、その効果を発揮することができる。
図1は、本発明に適用可能なインクジェット記録装置(以下、記録装置)2の外観斜視図である。本実施例の記録装置2は、外部に接続されたホスト装置から受信した画像データを、A0サイズやB0サイズのような比較的大判の記録媒体に記録することが可能なインクジェット記録装置である。2個の脚部93に支持された装置本体94の前面には、手差し挿入口88およびロール紙カセット89が備えられている。記録時には、手差し挿入口88あるいはロール紙カセット89から供給された記録媒体に対し、本体内部に備えられた記録ヘッドが、画像データに従ってインクを吐出する。記録後の記録媒体はスタッカ90に排出される。
記録ヘッドは、シアン、マゼンタ、イエローおよびブラックの4色のインクを用いて画像を記録し、これら4色のインクはインク供給ユニット8から供給される。アッパーカバー91は透明で開閉可能なカバーである。アッパーカバー91を閉じた状態では、記録動作中の記録ヘッドや記録媒体を観察することができる。一方、アッパーカバー91を開放した状態では、記録ヘッドの交換や記録装置2のメンテナンス等を行うことが出来る。操作パネル12は、記録方法や記録媒体などの設定を行うための入力キーや装置の情報を表示する画面が配備されている。
図2は、記録装置2の記録部の構成を説明するための斜視図である。記録ヘッド106は主走査方向(x方向)に一定の速度で移動するキャリッジ906に搭載され、上記一定の速度に対応した周波数でインクを滴として吐出する。このような1回の記録主走査が終了するごとに、記録媒体Pは、給紙ローラ904および補助ローラ905のローラ対、搬送ローラ902および補助ローラ903ローラ対に挟持されながら副走査方向(y方向)に所定の量だけ搬送される。上記記録主走査と搬送動作とを交互に繰り返すことにより、記録媒体Pに段階的に画像が記録される。
記録ヘッド105は、ブラック(K)、シアン(C)、マゼンタ(M)およびイエロー(Y)の記録ヘッドが、図のようにx方向に並列配置されて構成されている。各色の記録ヘッドには、複数の記録素子がy方向に1200dpi(dot/inch)の密度で配備されており、インク供給ユニット8から供給されたインクを画像データに従って吐出する。なお、一般に、シリアル型のインクジェット記録装置の場合、1回の記録主走査で記録を行うことが出来る画像の単位を「バンド」と称することがあるが、本明細書における「バンド」はこのような定義ではない。本明細書においては、CPUが画像処理を一まとめに行うデータの単位を示す。本明細書におけるバンドの詳細は後述する。
図3は、インクジェット記録装置2における制御の構成を説明するためのブロック図である。入力インタフェイス621は、記録装置の外部に接続されたホスト装置や、操作パネル12からの入力情報を受信する。コントローラ622は、CPUのほか、本発明の特徴的な回路などによって構成されており、ROM624に格納された各種プログラムに従って、記録装置全体の制御を行う。例えば、コントローラ622は、入力インタフェイス621を介してホスト装置から受信した画像データを、ROM624に記憶されているプログラムに従って、記録ヘッド106が記録可能な記録データを生成する。生成した記録データは出力インタフェイス623を介して記録ヘッド106に出力される。ROM624には、上記プログラムのほか、画像処理で使用する色分解テーブルや、本発明の特徴的な2次元テーブル等の各種パラメータも記憶されている。RAM620は、上述した画像処理のほかコントローラ622が各種処理を実行する際にワークエリアとして利用される。
図4は、コントローラ622が実行する画像処理の工程を説明するためのブロック図である。外部に接続されたホスト装置などから記録すべき画像データが受信されると、当該画像データは装置内のメモリバッファ101に格納される。このときの画像データは600dpiの解像度を有し、1画素につき8bit256階調で表現される多値の画像データ(R,G,B)とする。メモリバッファ101に格納された多値の画像データは、その後1画素ずつCMYK色変換部102に転送され、記録装置が使用するインク色CMYKに対応した多値の画像データ(600dpi、8bit)に変換される。CMYK色変換部102で変換された各色の画像データは、誤差拡散処理部103によってそれぞれ低階調化処理が施され、5階調にまで量子化される。
誤差拡散処理部103で量子化された各色の5階調の階調データは、更にINDEX処理部104で2値化される。そして、記録ヘッド106の記録解像度1200dpiに対応した個々の画素に対し、ドットを記録する(1)あるいは記録しない(0)を示す2値データに変換される。このような2値の記録データ(1200dpi、1bit)は、インク色ごとにプリントバッファ105に格納される。プリントバッファ105に、1回分の記録走査が行えるだけの2値データが蓄積されると、記録ヘッド106はプリントバッファ105に格納された2値データに従って、1回分の記録走査を行う。
図5は、INDEX処理部104における具体的な処理を実行する回路構成図である。このINDEX処理部104はCPUにより制御される。誤差拡散処理部103から出力されるデータは、5階調のレベル値(階調値)401と画素の位置を示すアドレス値402を有している。レベル値401は、600dpiの各画素に対応する5階調の階調データであり、0〜4の値をとり得る。INDEXパターン選択部407では、このようなレベル値401と画素アドレス値402とから、1200dpiの2画素×2画素の各画素におけるドットの記録(0)或いは非記録(0)を定めた2値データ403を出力する。
図6は、2画素×2画素のうち、どの画素を記録画素としどの画素を非記録画素とするかを定める複数のパターン(複数の2値データ)を、各レベルについて示した図である。図において、黒で示したエリアがドットを記録する記録画素(1)、白で示したエリアが非記録画素(0)である。一般に、入力データのレベルが0のとき、2画素×2画素の全ての画素が非記録画素(0)となり、記録画素(1)は存在しない。よって、レベル0では2画素×2画素の全ての画素が非記録画素となる1つのパターンが用意されるのみである。入力データのレベルが1のとき、2画素×2画素のうち3つの画素が非記録画素(0)となり、1つの画素が記録画素(1)となる。よって、レベル1では図に示すような4通りのパターンが用意される。入力データのレベルが2のとき、2画素×2画素のうち2つの画素が非記録画素(0)となり、2つの画素が記録画素(1)となる。よって、レベル2では図のような6通りのパターンが用意される。また、入力データのレベルが3のとき、2画素×2画素のうち1つの画素が非記録画素(0)となり、3つの画素が記録画素(1)となる。よって、レベル3では図のような4通りのパターンが用意される。更に、入力データのレベルが4のとき、2画素×2画素のうち全ての画素が記録画素(1)となる。よって、レベル4では図のような1通りのパターンが用意される。
本実施形態では、このような個々のレベルに対応する複数のドットパターンがINDEXパターン格納部408に格納されており、INDEXパターン選択部407は、このような複数のパターンの中から、注目画素の位置に応じたパターンを1つ選択する。
図7は、INDEXパターン格納部408における、複数のドットパターン(2値データ)の格納状態を説明するための模式図である。ここでは、レベル1〜レベル4のそれぞれについて、#0〜#5の6通りずつのパターンが用意されている。個々のパターン601は、図6で示した2画素×2画素に対応する4ビットデータに相当する。図6で示したように、レベル2以外のレベルでは、6通りのパターンを有さないが、本実施例では、各レベルの#0〜#5の全てに図6で示したパターンのいずれかが格納されている。例えば、レベル4では、#0〜#5の全てに、2画素×2画素の全ての画素が記録画素(1)となるパターンが記憶されており、レベル3では、#0〜#5の全てに、図6で示した4通りのパターンのうちのいずれか一つが格納されている。レベル2については、図6で示した6通りのパターンの1つずつが、#0〜#5のそれぞれに対応して格納されている。
INDEXパターン選択部407では、このような複数のパターンの中から、1つのパターンが注目画素の位置に応じて1つ選択される。このために本実施例では、テーブル選択部405が、画素アドレス値402に応じてINDEXパターン格納部に格納された#0〜#5のいずれかのテーブルを指定する構成になっている。そして、画像中の画素の位置においてこれら複数のパターンが代わる代わる選択されるようにすることにより、入力データ(階調値)が同じ値を持つ場合であっても同じパターンが主走査方向や副走査方向に連続しないようにしている。本発明者らの検討によれば、このような複数のパターンは主走査方向および副走査方向に非周期且つ満遍なく使用されることが好ましい。そのため、本実施例では画素位置に対応するテーブルの番号(#0〜#5)を予め定めた2次元テーブルを第1の格納部である外部メモリ406に格納している。なお、この2次元テーブルは、階調値に共通して使用される。
なお、以上では、600dpiの5値データを1200dpiの2値データに変換する構成を例としているため、INDEXパターンは2画素×2画素の4ビットとなり、レベル2に対応する6種類が最高のパターン数となった。しかし、無論本発明はこのような構成に限定されるものではない。2値化を行うためにN画素×M画素(N,M>2)のINDEXパターンを利用する場合は、1つのレベルについて更に多くのパターン(例えばL種類のパターン)を用意することが出来る。この場合、図7に示したINDEXパターンを管理するためのテーブルも更に多くの種類(#0〜#L−1)だけ用意すれば良い。また、INDEXパターンが1通りしか用意されないレベル0やレベル4については、特にテーブル番号からINDEXパターンを指定することなく、2値データ(0はるいは1)をそのまま出力するようにしてもよい。
図8は、画素位置に応じてINDEXパターンを定めるための、2次元テーブルの一例を示す図である。x方向がキャリッジの進行方向すなわち主走査方向に対応し、y方向が記録媒体の搬送方向すなわち副走査方向に対応している。このようなテーブル番号の配置が画像データの個々の画素に対応するテーブル番号の配置となるように、個々のテーブル番号が非周期且つ満遍なく配置されている。
本実施例ではこのように9ライン分の2次元テーブルが用意され、これら9ラインのうちの1ラインがパラメータ転送部411によって呼び出され、第2の格納部である書き換え可能なテーブル保持格納部404に一時的に格納される。そして、テーブル選択部405は、画素アドレス値402に従って、テーブル保持格納部404に格納された1ライン分のテーブル番号から1つを選択し、このテーブル番号をINDEXパターン選択部407に指示する。INDEXパターン選択部407は、再度図7を参照するに、入力したレベル値401に対応する複数のパターン中から、指示されたテーブル番号に相当するINDEXパターンを選択し、2値データ403としてこれを出力する。なお、2次元テーブルは、1行あたり9画素分のテーブル番号しか備えていないため、画像データの1行あたりの画素数が10画素以上であれば、この1行分(9画素分)のテーブルを繰り返し使用する。
再度図5を参照する。更新制御部412は、1ライン分のINDEX処理が完了するたびにテーブル保持格納部404内のテーブル番号を更新するように、タイミング信号4130をパラメータ転送部411に発信する。また、読み出しアドレス生成制御部410は、情報保持部409に記憶されている様々な情報に基づいて、次の更新の際に2次元テーブルのどのアドレスから転送を開始するかを示す情報(読み出しアドレス信号4132)を、パラメータ転送部に指示する。情報保持部409には、2次元テーブルの1ライン目の先頭アドレス(T)や、2次元テーブルのライン間のアドレスオフセット値(Ao)などが保持されている。パラメータ転送部411は、これら更新制御部412から指示されるタイミング信号4130と、読み出しアドレス生成制御部410から指示される読み出しアドレス信号4132に従って、テーブル保持格納部404へのテーブル番号の更新を行う。
図9は、本実施例における2次元テーブルと、当該テーブルに記憶されている個々のテーブル番号に従って処理されるべき画像データとの対応関係を、図11と比較しながら説明するための模式図である。ここでは、2次元テーブルは9ライン、画像データは6ラインずつの3つのバンドによって構成されている例を示している。また、図10は、このような画像データに対するINDEX処理の工程を説明するためのフローチャートである。以下、図9を参照しながら図10のフローチャートの各工程を説明する。
本処理が開始されると、まずステップS1において、CPUが情報保持部409に対し、2次元テーブルの先頭アドレスT、2次元テーブルにおけるライン間のアドレスオフセットAo、1つのバンドに含まれるライン数Bなどを設定する。続くステップS2およびS3では、処理に使用する変数の初期設定を行う。具体的には、ステップS2において、読み出しアドレスADを2次元テーブルの先頭アドレスに設定(AD=T)する。また、ステップS3では、バンド内のラインを1つずつ管理するためのカウンタX(1≦X≦6)、2次元テーブル302内の読み出しラインを1つずつ管理するためのカウンタY(1≦Y≦9)を、それぞれ1に設定する。また、画像内の3つのバンドを管理するためのカウンタBand(1≦Band≦3)も1に設定する。
ステップS4において、CPUは、注目するバンドのバンド処理を開始するための各種設定を行う。バンド処理が開始されると、更新制御部412は、読み出しアドレス生成制御部410とパラメータ転送部411へ更新指示を通知する。これに伴いパラメータ転送部411は、アドレス生成制御部410から得た読み出しアドレスADに従って、2次元テーブル406から1ライン分の新たなパラメータ(テーブル番号)を読み出し、テーブル保持格納部404の内容を更新する(ステップS5)。
その後、ステップS6にて、バンド内の注目する1ラインに含まれる画素のそれぞれに、テーブル保持格納部に格納された1ライン分のパラメータを対応させながら、画像処理を行う。具体的には、テーブル選択部405が、注目する画素の画素アドレス値402に基づいて、テーブル保持格納部404に配列するテーブル番号の1つを選択する。そして、INDEXパターン選択部407が選択されたテーブル番号に対応するINDEXパターンをINDEXパターン格納部408から読み出して、2値データ403として出力する。このような変換処理を画像データの1ライン分について行う。
ステップS7では、2次元テーブル用のラインカウンタYの値が、2次元テーブルのライン数L(=9)と同値であるか否かを判断する。同値である(Y=L)と判断した場合は、ステップS8へ進み、読み出しアドレスADを2次元テーブルの先頭アドレスTに戻し(AD=T)、ラインカウンタYを1に戻す。一方、ステップS7で、同値でない(Y<T)と判断した場合は、2次元テーブルの中に前回読み出したデータに連続する読み出すべきデータがまだ存在することになる。よって、ステップS9へ進み、読み出しアドレスADをアドレスオフセットAo分だけ進める(AD=AD+Ao)。また、ラインカウンタYを1ライン分インクリメントする。
ステップS10では、バンド用のラインカウンタXの値が、バンドのライン数B(=6)と同値であるか否かを判断する。同値ではない(X<B)場合、処理中のバンドにはまだ処理すべきラインが存在するので、ステップS11でバンド用のラインカウンタXをインクリメントした後、次のラインの処理を行うためにステップS5に戻る。 一方、ステップS10でバンド用のラインカウンタXがバンドのライン数B(=6)と同値である場合は、処理中の対象となっているバンドの全ラインに対する処理が終了したと判断し、ステップS12に進む。ステップS12では、CPUに対し、注目するバンドの処理が完了したことを通知する。
ステップS13では、バンド用のカウンタBandが、画像内のバンド数3と同値であるか否かを判断する。Band<3の場合、処理すべきバンドがまだ残っているので、ステップS14でバンド用のカウンタBandをインクリメントし、更にバンド内のラインカウンタXを1に戻した後、次のバンドの処理を行うためにステップS4に戻る。一方、ステップS13で、Band=3である場合、全バンドに対する処理が完了したと判断し、本処理を終了する。なお、上述のフローにおける判断は、CPUもしくはINDEX処理部104に設けた判定部が行う。
以上説明したフローチャートでは、バンド内のラインを管理するためのカウンタXと、2次元テーブル内のラインを管理するためのカウンタYとを、それぞれ独立に管理し初期化(X=1或いはY=1)している。より詳しくは、バンド内のライン数(B=6)と2次元テーブルのライン数(L=9)の値およびカウンタX、Yを情報保持部409で管理し、各カウンタをこれら値と対比しながら適切なタイミングで初期値に戻している。そして、常に、次の読み出しアドレスADが、カウンタ値Yに対応付けて把握されている。以上のような構成により、バンド内のラインと2次元テーブルのラインを、互いの配列を崩すことなく、1ラインずつ順番に対応付けることが出来る。
例えば図9の2バンド目を参照するに、2バンド目の処理開始持、バンド用のカウンタX=1であるが、2次元テーブル用のカウンタYはステップS609によってY=7に設定されている。よって、2バンド目の1ライン目の画像データには、2次元テーブルの7ライン目(読み出しアドレスAD=T+6Ao)のパラメータ(テーブル番号)が対応付けられる。また、2バンド目の4ライン目の処理のとき、バンド用のカウンタX=4であるが、2次元テーブル用のカウンタYは、ステップS608によって1に戻される。よって、2バンド目の4ライン目の画像データには、2次元テーブルの1ライン目(読み出しアドレスAD=T)のパラメータが対応付けられる。
このように、本実施例によれば、CPUによる再設定を行わなくても、テーブル保持格納部の内容を2次元テーブルの1ライン目に戻すことが可能となる。すなわち、バンドごとにライン数を設定しなくても、2次元テーブルの配列規則を崩さずに画像データに対応させることが出来るので、オーバーヘッドの懸念も回避される。つまり、本実施例によれば、2次元テーブルの配列規則を画像データの配列に対して崩すことなくタイル状に対応させながら、高速な画像処理を行うことが可能となる。
なお、以上説明した実施例では、2次元テーブルは9ライン、画像データは6ラインずつの3つのバンドによって構成されている例について説明したが、無論本発明はこのような構成に限定されるものではない。本発明は、B行ずつのラインを有する複数のバンドで構成される画像データに対し、L行(ライン)の2次元テーブルを用いて処理する場合の全てに対応することが出来る。2次元テーブルについては、ライン数(行数)その領域が大きいほど画像データ内での周期性を少なくし、周期性に伴うモアレなどを回避することが出来る。2次元テーブル内のライン数が大きくなったとしても、回路内部のテーブル保持格納部404のメモリ容量を大きくする必要はないので、本発明をより効果的に利用することが出来る。また、画像データが大きいほどバンド内のライン数やバンド数は大きくなる傾向があるが、処理する対象が大きいほど、わずかなメモリで高速処理を実現する本発明の効果も大きくなる。
また、上記実施例では、テーブル保持格納部の容量を2次元テーブルの1ライン分として説明したが、本発明はこれに限定されるものではない。テーブル保持格納部には2次元テーブルの2ライン以上(M行)が格納される構成であっても良い。但し、少ないメモリで高速な処理を行うという本発明の効果を発揮するためには、Mは1≦M<L/2(Lは2次元パラメータの行数)を満足する値であることが要される。何ライン分用意するにせよ、テーブル保持格納部が外部に設けられた2次元テーブルよりも少ない容量であれば、外部メモリのパラメータを部分的に読み出して高速に処理するという効果を発揮することはできる。但し、回路規模を抑えるという意味では、上記実施例のように、画像処理の1つの単位である1ライン分のメモリとするのが効果的である。あるいは、テーブル更新を画像処理中に並行して行える構成の場合は、画像処理の単位の2倍のメモリ(2ライン分のメモリ)を用意しておくのが、高速化の上では好ましい。
上記実施例では、画像処理の単位を1ラインずつ行う構成で説明したが、本発明はこのような構成に限定されるものでもない。テーブル保持格納部のメモリ容量が画像処理の単位あるいはそれ以上用意されていれば、本発明の効果を発揮することは出来る。例えば、画像処理の単位が2ラインの場合、テーブル保持格納部は2次元テーブルの2ライン以上の容量を有していれば良く、アドレスオフセットAoは2ライン分のオフセット量とすればよい。また、画像処理の単位が複数ラインの場合、2次元テーブルのライン数によっては、2次元テーブルの最後の複数ライン分を読み取っている最中に、2次元テーブルの読み出しアドレスを1ライン目に戻す必要が生じる場合がある。このような場合には、読み出しアドレスAdを、最初のラインを読み取るためと、1ライン目に戻すためとの2回に分けて設定し、読み出しを行えばよい。また、上記実施例では、この2次元テーブルは、階調値に共通して使用する形態であるが、例えば、階調値の一部のために、同じサイズのテーブル406やテーブル保持格納部404等を別に備える形態にしても構わない。
以上では、一例としてINDEX処理を説明したが、本発明は2次元に配列されたパラメータを、その配列規則を損なうことなく、画像データの個々の画素位置に1対1で対応させながら行なうデータ処理であれば、どのような目的の処理にも対応可能である。例えば、予め用意されたディザパターンを用いて、多値の画像データを2値化するディザ処理を行う際も、上記実施例の構成を応用することが出来る。また、ドット記録の許容あるいは非許容を予め定めたマスクパターンを2次元テーブルに格納し、各走査で実際に記録を行うドットを決定するマルチパス記録のための処理にも上記実施例の構成を応用することが出来る。
401 レベル値
402 画素アドレス値
403 2値データ
404 テーブル保持格納部
405 テーブル選択部
406 2次元テーブル格納部
407 INDEXパターン選択部
408 INDEXパターン格納部
409 情報保持部
410 読み出しアドレス生成制御部
411 パラメータ転送部
412 更新制御部

Claims (12)

  1. 第1格納部から読み出した複数のインデックスが配列されるL(L≧2)行のテーブルのうちM(1≦M<L)行のインデックスを第2格納部に転送する転送手段と、
    画像データの各画素に対し、前記第2格納部に格納されるM行の複数のインデックスをそれぞれ対応させることにより、前記画像データの変換処理をする変換手段と、
    前記第2格納部に転送すべきM行のインデックスの前記テーブルの読み出しアドレスを指定するための指定手段と、
    を備え、
    前記指定手段は、前記テーブルに前記第2格納部に格納されるM行のインデックスに連続するM行のインデックスが存在する場合は、該連続するM行のインデックスの先頭のアドレスを前記読み出しアドレスとして指定し、前記テーブルに前記第2格納部に格納されるM行のインデックスに連続するM行のインデックスが存在しない場合は、前記テーブルの先頭のアドレスを前記読み出しアドレスとして指定することを特徴とするデータ処理装置。
  2. 前記転送手段は、前記指定手段により指定されたアドレスに基づいて、前記変換手段によりM行のインデックスに対応する変換処理が終了した後に、前記テーブルに前記第2格納部に格納されるM行のインデックスに連続するM行のインデックスが存在する場合は、該連続するM行のインデックスにより前記第2格納部の内容を更新し、前記テーブルに第2格納部に格納されるM行のインデックスに連続するM行のインデックスが存在しない場合は、前記テーブルの先頭に戻って連続するM行のインデックスにより前記第2格納部の内容を更新することを特徴とする請求項1に記載のデータ処理装置。
  3. 前記テーブルの読み出しラインを管理するテーブル用ラインカウンタをさらに備え、
    前記テーブル用ラインカウンタの値に基づいて、読み出しラインが前記テーブルのL行に対応すると判定された場合、前記指定手段は前記テーブルの先頭のアドレスを前記読み出しアドレスとして指定し、前記テーブル用ラインカウンタの値を初期値に戻すことを特徴とする請求項1又は2に記載のデータ処理装置。
  4. 前記テーブル用ラインカウンタの値に基づいて、読み出しラインが前記テーブルのL行に対応しないと判定された場合、前記指定手段は前読み出しアドレスを前記テーブルのライン間のアドレスオフセット分進め、前記テーブル用ラインカウンタの値をインクリメントすることを特徴とする請求項3に記載のデータ処理装置。
  5. 前記画像データは、B行ずつ(B≠M)の複数のバンドから構成されるものであり、前記変換手段による変換処理は、前記バンド単位で実行し、
    前記バンド内のラインを管理するバンド用ラインカウンタをさらに備え、
    前記バンド用ラインカウンタの値がBと判定された場合、前記バンド用ラインカウンタの値を初期値に戻すことを特徴とする請求項3又は4に記載のデータ処理装置。
  6. 前記画像データは、多値データであり、
    前記インデックスは、多値データをドットパターンに変換するための変換パターンを特定する情報であることを特徴とする請求項1ないし5のいずれか1項に記載のデータ処理装置。
  7. 前記テーブルは、前記多値データの各階調レベルに共通して使用されるものであることを特徴とする請求項に記載のデータ処理装置。
  8. 前記変換手段は、前記画像データの各画素の位置に応じて、前記第2格納部に格納されるM行の複数のインデックスを用いることにより、複数のパターンの中から1つのパターンを選択して、前記画像データの変換を行うことを特徴とする請求項1ないし7のいずれか1項に記載のデータ処理装置。
  9. 前記第2格納部、前記転送手段及び前記変換手段は同一の処理部に備えられ、
    前記第1格納部は、前記処理部の外部メモリであることを特徴とする請求項1ないし8のいずれか1項に記載のデータ処理装置。
  10. 前記画像データは、階調値と画素の位置を示すアドレス値を含むことを特徴とする請求項1ないし9のいずれか1項に記載のデータ処理装置。
  11. 前記転送手段は、前記M行のインデックスを前記第2格納部にDMA転送することを特徴とする請求項1ないし10のいずれか1項に記載のデータ処理装置。
  12. 第1格納部から読み出した複数のインデックスが配列されるL(L≧2)行のテーブルのうちM(1≦M<L)行のインデックスを第2格納部に転送する転送工程と、
    画像データの各画素に対し、前記第2格納部に格納されるM行の複数のインデックスをそれぞれ対応させることにより、前記画像データの変換処理をする変換工程と、
    前記第2格納部に転送すべきM行のインデックスの前記テーブルの読み出しアドレスを指定するための指定工程と、
    を備え、
    前記指定工程では、前記テーブルに前記第2格納部に格納されるM行のインデックスに連続するM行のインデックスが存在する場合は、該連続するM行のインデックスの先頭のアドレスを前記読み出しアドレスとして指定し、前記テーブルに前記第2格納部に格納されるM行のインデックスに連続するM行のインデックスが存在しない場合は、前記テーブルの先頭のアドレスを前記読み出しアドレスとして指定することを特徴とするデータ処理方法。
JP2010168484A 2010-07-27 2010-07-27 データ処理装置およびデータ処理方法 Expired - Fee Related JP5610897B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2010168484A JP5610897B2 (ja) 2010-07-27 2010-07-27 データ処理装置およびデータ処理方法
US13/175,162 US9030713B2 (en) 2010-07-27 2011-07-01 Data processing apparatus and data processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010168484A JP5610897B2 (ja) 2010-07-27 2010-07-27 データ処理装置およびデータ処理方法

Publications (3)

Publication Number Publication Date
JP2012025121A JP2012025121A (ja) 2012-02-09
JP2012025121A5 JP2012025121A5 (ja) 2013-09-12
JP5610897B2 true JP5610897B2 (ja) 2014-10-22

Family

ID=45526447

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010168484A Expired - Fee Related JP5610897B2 (ja) 2010-07-27 2010-07-27 データ処理装置およびデータ処理方法

Country Status (2)

Country Link
US (1) US9030713B2 (ja)
JP (1) JP5610897B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9002257B2 (en) * 2011-08-01 2015-04-07 Ricoh Company, Ltd. Image forming apparatus
JP2015022363A (ja) * 2013-07-16 2015-02-02 キヤノン株式会社 データ転送制御装置、データ転送制御方法、及びプログラム
JP7118611B2 (ja) 2017-09-11 2022-08-16 キヤノン株式会社 画像処理装置、記録装置、画像処理方法、及びプログラム

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5689670A (en) * 1989-03-17 1997-11-18 Luk; Fong Data transferring system with multiple port bus connecting the low speed data storage unit and the high speed data storage unit and the method for transferring data
JP3110502B2 (ja) 1991-07-31 2000-11-20 キヤノン株式会社 カレント・ミラー回路
US6522425B2 (en) * 1997-02-04 2003-02-18 Fuji Photo Film Co., Ltd. Method of predicting and processing image fine structures
JP4298127B2 (ja) * 1999-06-07 2009-07-15 キヤノン株式会社 画像記録方法、画像記録装置、該画像記録装置の制御方法、コンピュータ可読記憶媒体及び画像処理方法
DE60035549T2 (de) 1999-06-07 2008-04-17 Canon K.K. Bildaufzeichnungsgerät und Verfahren
JP4159756B2 (ja) 2001-03-13 2008-10-01 株式会社リコー 画像処理装置
US7199897B2 (en) * 2002-02-22 2007-04-03 Ricoh Company, Ltd. Image data processing apparatus for and image data processing method of pattern matching
JP2004015213A (ja) 2002-06-04 2004-01-15 Canon Inc 画像処理装置及び画像処理方法
JP2004274131A (ja) * 2003-03-05 2004-09-30 Canon Inc 色変換装置
JP2005157530A (ja) * 2003-11-21 2005-06-16 Noritsu Koki Co Ltd データ変換システム
JP2005161630A (ja) * 2003-12-01 2005-06-23 Canon Inc インクジェット記録システムおよびインクジェット記録方法
JP4548090B2 (ja) * 2004-10-26 2010-09-22 セイコーエプソン株式会社 画像処理装置、画像処理方法、コンピュータプログラムおよび印刷装置
JP2006148643A (ja) * 2004-11-22 2006-06-08 Seiko Epson Corp ハーフトーン処理で利用されるパターンマトリクスの生成
JP5222227B2 (ja) * 2009-05-22 2013-06-26 キヤノン株式会社 画像処理方法、画像処理装置およびプログラム
JP5597943B2 (ja) * 2009-06-10 2014-10-01 株式会社リコー システム及び方法

Also Published As

Publication number Publication date
US9030713B2 (en) 2015-05-12
US20120026540A1 (en) 2012-02-02
JP2012025121A (ja) 2012-02-09

Similar Documents

Publication Publication Date Title
US7948652B2 (en) Processor, method, and program for processing data using a mask pattern to print dots in each area in a non-periodic arrangement by using an integral multiple of the areas
JP6218440B2 (ja) データ処理装置および記録データ生成方法
JP6351286B2 (ja) 記録制御装置および記録制御方法
JP5127626B2 (ja) 画像処理装置および画像処理方法
JP5610897B2 (ja) データ処理装置およびデータ処理方法
JP5268875B2 (ja) 画像形成装置及び画像形成方法
JP4979509B2 (ja) データ変換装置、該装置を備えた記録装置及びデータ変換方法
JP6259951B2 (ja) 画像形成方法
JP2018140605A (ja) 画像処理装置および画像処理方法
JP3944711B2 (ja) ディザマトリクス生成方法及びプリンタ
JP2004255700A (ja) メモリ容量の節約を考慮したドットデータ作成処理
JP2005295131A (ja) 画像処理装置、画像処理方法および画像処理プログラム
JP7191665B2 (ja) 画像処理装置、画像処理方法およびプログラム
JP2019043114A (ja) 記録装置および記録方法
JP2013537123A (ja) 非対称印字解像度のハーフトーン処理方法およびプリンタ
JP2019107810A (ja) 画像処理装置、画像処理方法およびインクジェット記録装置
JP5812670B2 (ja) 画像処理装置、画像処理方法および画像記録装置
JP6614860B2 (ja) データ処理装置および記録データ生成方法
JP4765590B2 (ja) 印刷装置及びその制御方法
JP5960104B2 (ja) 画像処理装置および画像処理方法
JP4665492B2 (ja) インクジェットプリンタ
JPS61107873A (ja) カラ−中間調画像処理方法
JP2008167468A (ja) 複数のラスタを並行して処理する画像処理装置
JP2004088363A (ja) 画像処理装置、画像出力システム及び画像処理方法
JP2009049697A (ja) 画像処理装置および画像処理方法

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130729

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130729

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140422

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140423

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140623

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140902

LAPS Cancellation because of no payment of annual fees