JP2005250534A - 画像処理装置 - Google Patents

画像処理装置 Download PDF

Info

Publication number
JP2005250534A
JP2005250534A JP2004055842A JP2004055842A JP2005250534A JP 2005250534 A JP2005250534 A JP 2005250534A JP 2004055842 A JP2004055842 A JP 2004055842A JP 2004055842 A JP2004055842 A JP 2004055842A JP 2005250534 A JP2005250534 A JP 2005250534A
Authority
JP
Japan
Prior art keywords
band
image data
buffer
image
read
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.)
Pending
Application number
JP2004055842A
Other languages
English (en)
Inventor
Mitsuyuki Tamaya
光之 玉谷
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2004055842A priority Critical patent/JP2005250534A/ja
Publication of JP2005250534A publication Critical patent/JP2005250534A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Image Input (AREA)

Abstract

【課題】画像処理装置において、フィルタ処理やスキュー補正等を高速で実行する。
【解決手段】画像入力部10からの入力画像データは読み出し用バンドバッファ41に供給される。読み出し用バンドバッファ41は第1バンド、第2バンド及び第3バンドの3つのバンドを有する。バンドバッファ41の第1バンドに入力画像を書き込むとともに、残りの第2バンド及び第3バンドから既格納の画像データを読み出して画像を加工する局所データ変換部51に供給する。第2バンドは書き込みに影響されず、第2バンドに格納されているオーバラップデータを読み出すことができる。
【選択図】図1

Description

本発明は画像処理装置、特にスキュー補正(傾き補正)やフィルタリング等の画像加工機能を備える複写機等の装置に関する。
従来より、複写機等の画像処理装置において、入力画像に対して平滑化や拡大、縮小、エッジ強調等のフィルタ処理やスキュー補正(傾き補正)を行うことが知られている。
図11には、従来の画像処理装置の構成ブロック図が示されている。画像入力部10は、入力画像データ20を順次ラスタ走査順に出力する。アドレスリスト生成部21は、デスティネーション側(出力側)のアドレスリスト250及びこれを逆変換処理して得られたソース側(入力側)のアドレスリスト210を出力する。アドレスリストソート部30は、y座標についてソート機能を有し、ソース側のアドレスリスト220を出力する。
バンドバッファ読み出し制御部42は、ソース側のアドレスリストに基づき読み出し用バンドバッファ41を制御する。バンドバッファ41はリングバッファであり、リングバッファのラインデータのうち最も古く読み出したラインデータを破棄し、破棄したラインデータの次に読み出したラインデータから順次シフトさせ、(n−1)ラインデータをシフトさせた後、空いたラインバッファへ入力画像から新しく1ライン読み出して書き込むように制御される。
局所データ変換部51は、局所データ230及び局所データの変換座標231に基づき変換された局所データ240を出力する。変換は、変換ROM52に予め記憶された変換プログラム、具体的には局所データの変換演算式を用いて実行される。中間バッファ制御部62は、デスティネーション側のアドレスリスト250に基づき中間バッファの制御信号251を出力する。中間バッファ61は、変換された局所データを格納し、必要に応じて局所データ260を出力する。書き込み用バンドバッファ71は、局所データを格納し、バッファデータを順次出力する。画像出力部80は、書き込み用バンドバッファ71からの局所データを出力する。
図12には、従来装置の処理の流れが示されている。処理の流れは以下の通りである。
(1)デスティネーション側でブロック化した複数のブロック(図ではブロック1〜24)の中心座標をラスタ走査順に求め、デスティネーション側のアドレスリストとする。
(2)デスティネーション側のアドレスリストの座標を逆変換して得られるy座標についてソートし、ソース側のアドレスリストを生成する。
(3)入力画像から1ラインずつバンドバッファ41へ読み込む。
(4)バンドバッファ41内にアドレスポインタの示す座標を中心とする局所データが存在すれば、その局所データを読み出す。
(5)変換ROM52に予め生成してある局所データの変換座標に基づき変換を行い、中間バッファ61へ変換順に書き込む。
(6)ソース側のアドレスリストについて処理が終わった後、デスティネーション側のアドレスリストに従い、中間バッファ61から書き込み用バンドバッファ71に局所データを読み出す。
(7)デスティネーション側のアドレスリストより画像端である場合は、書き込み用バンドバッファ71内のデータを出力画像データとして出力する。
特開2000−251065号公報 特開2001−43359号公報
しかしながら、上記従来技術においては、アドレスリストを作成し、これを逆変換して得られたリストに基づきラスタ走査順に読み出した画像データを読み出し用バンドバッファ41に書き込む構成であるため、アドレスリスト用の容量が必要となり、特に画像サイズの増大とともにリストのデータ量も増大する問題がある。さらに、作成したリストのソート機能も必要となる。
また、スキュー補正等のように、入力画像を任意角度だけ回転させる処理を行う場合、ライン毎に画像データ量が異なるため(画像端では画像データ量が少ない)、効率的に処理するためには画像データ量が多い部分では読み出し用バンドバッファへの書き込みを遅く、画像データ量が少ない部分では読み出し用バンドバッファへの書き込みを速くすることも考えられるが、上記従来技術の読み出し用バンドバッファでは1ラインずつ順次更新していくため、タイミング調整が困難で、バンドバッファの前段に別途ページメモリ等が必要となる問題がある。したがって、ページメモリ等を要せず、画像入力部から画像加工部に至る一連のパイプライン処理においてそのタイミングを一定に維持しつつ高速処理できるシステムが望まれる。
なお、読み出し用バンドバッファを単一のリングバッファで構成するのではなく、ダブルバッファ構成(バッファA及びバッファB)とし、バッファAから画像データを読み出す(READ)とともにバッファBにデータを書き込み(WRITE)、次にバッファBからデータを読み出す(READ)とともにバッファAにデータを書き込む(WRITE)制御を行うことも考えられるが、以下のような問題がある。
すなわち、スキュー補正やフィルタ処理等の加工を行う場合、着目している画素の周辺の画素を考慮して処理する必要があり、例えばある局所データの処理を行う場合、その前の局所データに含まれる画像データを再度用いて処理するオーバラップ処理が必要となるが、ダブルバッファ構成でバッファ毎に読み出し(READ)と書き込み(WRITE)を切り替える制御では、副走査のオーバラップ画素データの読み出し(READ)が出来ない。例えば、図13のように、バッファBのデータを読み出して(READ)出力しているとすると、副走査のオーバラップのデータはバッファAに格納されていることになるが、バッファBの読み出し(READ)時にはバッファAに書き込み(WRITE)を行っているため、バッファAから読み出し(READ)を行うことができず、オーバラップのデータを出力することができない。
この場合、画像入力部とバンドバッファ間にFIFO等を介在させ、入力データを一時的にFIFOに格納することによりバンドバッファから読み出す(READ)時間をある程度確保したとしても、オーバラップの領域によってはバッファAのデータが既に上書きされてしまうおそれがある。例えば、スキュー補正の場合、画像の傾き角度に応じてオーバラップ量が変化し、傾き角度が大きくなるほどオーバラップ量は増大するが、オーバラップ量が大きいとバッファAを順次上書きした場合にオーバラップ領域に到達してしまうことになり、オーバラップデータを読み出す(READ)ことはできない。ダブルバッファとは別にオーバラップデータ用のメモリを新たに付加することで上書きという事態は生じないためオーバラップデータを読み出す(READ)ことは可能となるが、新たなメモリが必要となり、外付けの場合にはピン数の増大を招く。
本発明の目的は、ページメモリ等のメモリ増大を抑制し、かつ、画像入力部からのパイプライン処理を乱さずに高速にオーバラップデータの処理を行い、スキュー補正やフィルタ処理を実行できる画像処理装置を提供することにある。
本発明は、入力画像を処理して出力する画像処理装置であって、入力画像を格納するバンドバッファと、前記バンドバッファへの画像データの書き込み及び読み出しを制御する制御部と、前記バンドバッファから読み出された画像データを処理する処理部と、前記処理部で処理された画像データを格納する出力バッファと、前記出力バッファへの処理済み画像データの書き込み及び読み出しを制御する出力制御部とを備え、前記バンドバッファは、第1バンド、第2バンド及び第3バンドの3つの領域を有し、前記制御部は、前記第1バンド、第2バンドあるいは第3バンドのいずれか1つの領域に前記入力画像を書き込むとともに、残りの2つの領域から格納された画像データを読み出して前記処理部に供給することを特徴とする。
バンドバッファに入力画像を書き込むとともに、バンドバッファから画像データを読み出して拡大、縮小、エッジ強調等のフィルタ処理やスキュー補正を行うための処理部に供給する際に、ダブルバッファ構成では新たな入力画像を書き込むことで既格納の画像データを上書きしてしまうため、オーバラップデータを読み出すことができない。そこで、本発明では、バンドバッファを3バンド構成とし、3バンドの1つのバンドに新たに入力した入力画像を書き込み、残りの2つのバンドから既格納の画像データを読み出す。すなわち、3バンドをそれぞれ第1のバンド、第2のバンド、第3のバンドとし、第1のバンドに入力画像を書き込むとともに、第2のバンド及び第3のバンドから既格納の画像データを読み出す。処理対象となる画像データは第3のバンドに格納されており、この画像データを処理するために必要なオーバラップデータは第2のバンド(特に、第2のバンドのうち第3のバンドとの境界領域)に格納されている。したがって、入力画像の書き込みに影響を受けることなく、第2のバンドのオーバラップデータを読み出すことが可能となる。本発明では、オーバラップデータが格納されたバンドとは異なるバンドに入力画像を格納していくため、入力、バッファリング、画像加工、出力という一連のパイプライン処理を維持して高速に画像処理できる。
本発明によれば、ページメモリではなく少ない容量のバンドバッファを用いてフィルタ処理やスキュー補正等を行う際に必要なオーバラップデータを確実に読み出し、かつパイプライン処理を乱すことなく高速で画像を処理して出力できる。
以下、図面に基づき本発明の実施形態について説明する。
図1には、本実施形態に係る画像処理装置の構成ブロック図が示されている。従来の画像処理装置の構成と異なるのは、アドレスリスト生成部21及びアドレスリストソート部30が存在しないこと、読み出し用バンドバッファ41が単一リングバッファでもダブルバッファでもなく、一つのリングバッファを3つの領域に分割した3バンド構成としたこと、中間バッファも2バンド構成としたこと、である。
画像入力部10は、入力画像データ20を順次ラスタ走査順に出力する。なお、入力画像の走査方法については後述する。
バンドバッファ読み出し制御部42は、3バンド構成の読み出し用バンドバッファ41の読み出し(READ)及び書き込み(WRITE)を制御する。バンドバッファ41を3バンド構成としたのは、オーバラップのデータをバッファ41から読み出して出力する前に次の入力画像データが先にバッファ41に上書きされ、オーバラップのデータを出力できない事態を回避するためである。具体的には、3バンド構成において2つのバンドを読み出し(READ)用とし、残りの1つのバンドを書き込み(WRITE)用とする。オーバラップのデータがREAD用の2つのバンドにまたがって格納されるように制御することで、次の入力データを残り1つのバンドに書き込んでもオーバラップのデータを読み出して出力することができる。
画像処理部は、画像のスキュー補正やフィルタリング処理等を行うブロックであり、例えばスキュー補正を行う場合には従来と同様に局所データ変換部51、変換ROM52、中間バッファ61及び中間バッファ制御部62を有する。局所データ変換部51は、局所データ230及び局所データの変換座標231に基づき変換された局所データ240を出力する。変換は、変換ROM52に予め記憶された変換プログラム、具体的には局所データの変換演算式を用いて実行される。中間バッファ制御部62は、中間バッファの制御信号251を出力する。中間バッファ61は、変換された局所データを格納し、必要に応じて局所データ260を出力する。中間バッファ61は、2バンド構成のバンドバッファであり、これは既述したダブルバッファと同様に機能する。すなわち、中間バッファ61が第1バンドと第2バンドから構成されているものとすると、第1バンドと第2バンドで交互に読み出し(READ)と書き込み(WRITE)を制御する。つまり、第2バンドからデータを読み出す(READ)とともに第1バンドにデータを上書きし(WRITE)、次に第1バンドからデータを読み出す(READ)とともに第2バンドにデータを上書きする。
書き込み用バンドバッファ71は、中間バッファ61からの局所データを格納し、バッファデータを順次出力する。画像出力部80は、書き込み用バンドバッファ71からの局所データを出力する。
以下、読み出し用バンドバッファ41の構成及びその読み出し(READ)、書き込み(WRITE)制御について説明する。
図2には、読み出し用バンドバッファ41の構成が示されている。バンドバッファ41は、第1バンドバッファ41a、第2バンドバッファ41b及び第3バンドバッファ41cの3つのバンドバッファから構成される。各バンドバッファは(主走査サイズVx×バンド高さ)のサイズを有する。図中の矢印はデータの書き込み(WRITE)方向を示す。すなわち、まず第1バンドバッファ41aに順次書き込み、次に第2バンドバッファ41bに書き込み、さらに第3バンドバッファ41cに書き込んでいく。第3バンドバッファ41cに書き込んだ後、再び第1バンドバッファ41aからデータを書き込んでいく。
図3には、バンドバッファ41の読み出し(READ)、書き込み(WRITE)の流れが示されている。まず、図3(A)に示されるように、入力画像データを第1バンドバッファ41aに書き込む(WRITE)。このとき、第2バンドバッファ41bからはデータを読み出す(READ)が、画像データは格納されていないためダミーデータを読み出す。すなわち、
第1バンドバッファ41a:WRITE
第2バンドバッファ41b:READ(ダミー)
次に、図3(B)に示されるように、第2バンドバッファ41bに対して画像データを書き込み(WRITE)、第1バンドバッファ41aの画像データを読み出す(READ)とともに、第3バンドバッファ41cに格納されているオーバラップの画像データを読み出す。但し、この段階では第3バンドバッファ41cには画像データが格納されていないためダミーデータとなる。図では、第1バンドバッファ41aから画像データ(2)、(4)、(6)、(8)を読み出すとともに、第3バンドバッファ41cからオーバラップの画像データ(1)、(3)、(5)、(7)(実際にはダミーデータ(0))を読み出すとしている。すなわち、
第1バンドバッファ41a:READ
第2バンドバッファ41b:WRITE
第3バンドバッファ41c:READ
次に、図3(C)に示されるように、第3バンドバッファ41cに対して画像データを書き込み(WRITE)、第1バンドバッファ41aのオーバラップの画像データを読み出す(READ)とともに第2バンドバッファ41bの画像データを読み出す(READ)。画像データは第3バンドバッファ41cに書き込まれ、第1バンドバッファ41aには上書きされず既格納の画像データが残っているから、オーバラップの画像データ(1)、(3)、(5)、(7)を読み出すことが可能である。すなわち、
第1バンドバッファ41a:READ(オーバラップデータ)
第2バンドバッファ41b:READ
第3バンドバッファ41c:WRITE
次に、図3(D)に示されるように、再び第1バンドバッファ41aに対して画像データを書き込み(WRITE)、第2バンドバッファ41bのオーバラップの画像データを読み出す(READ)とともに第3バンドバッファ41cの画像データを読み出す(READ)。画像データは第1バンドバッファ41aに書き込まれ、第2バンドバッファ41bには上書きされず既格納の画像データが残っているから、オーバラップの画像データ(1)、(3)、(5)、(7)を読み出すことが可能である。すなわち、
第1バンドバッファ41a:WRITE
第2バンドバッファ41b:READ(オーバラップデータ)
第3バンドバッファ41c:READ
このように、バンドバッファ41を3バンド構成とし、2つのバンドから読み出し、残りの1つのバンドに書き込むように分離することで、オーバラップデータの上書きを防止してオーバラップデータの読み出し及び出力を可能にできる。例えば、第2バンドバッファ41bから画像データを読み出すタイミングに着目すると、現在の入力画像データは第3バンドバッファ41cに書き込まれる(WRITE)ことになり、バンドの境界の上側に格納されているオーバラップデータは第1バンドバッファ41aから読み出すことができ、バンドの境界の下側に格納されているオーバラップデータは第3バンドバッファ41cから現在の画像データが書き込まれた後に読み出されることになるから、正常にオーバラップの処理を実行できる。
本実施形態の構成では、単一のバンドバッファメモリを3つの領域に分けて読み出し(READ)と書き込み(WRITE)を制御するだけで済むので、単一のメモリ制御部(バンドバッファ読み出し制御部42)のみでよく、複数メモリを用いる場合に比べて回路規模を抑制することができる。
図4には、画像入力から画像加工処理(スキュー補正)、画像出力までの一連のパイプライン処理が示されている。図4(A)は画像入力部10の入力画像、図4(B)は読み出し用バンドバッファ41の処理、図4(C)は局所データ変換部51の処理、図4(D)は中間バッファ61の処理、図4(E)は書き込み用バンドバッファ71及び画像出力部80の処理である。
画像入力部10から順次画像1、画像2、・・・画像12が入力される。入力画像は順次読み出し用バンドバッファ41に供給される。
画像1が入力されると、3バンド構成のバンドバッファ41の第1バンドバッファ41aに書き込まれる(WRITE1)。また、第2バンドバッファ41bからはダミーデータ(0)が読み出される(READ)が、これは画像データの入出力とは無関係であるため図では省略してある。
次に、画像2が入力されると、バンドバッファ41の第2バンドバッファ41bに画像2が書き込まれ(WRITE2)、第1バンドバッファ41aからは画像1が読み出される(READ1)。読み出された画像1は局所データ変換部51に供給され、変換ROM52の変換プログラム(変換演算)に従って画像処理される(処理1)。スキュー補正の場合には、画像の回転処理(アフィン変換)が実行される。処理された画像1は中間バッファ61の第1バンドバッファ61aに書き込まれる(WRITE1)。
次に、画像3が入力されると、バンドバッファ41の第3バンドバッファ41cに画像3が書き込まれる(WRITE3)、第1バンドバッファ41aからはオーバラップデータ、第2バンドバッファ41bからは画像2が読み出される(READ2)。画像3は第3バンドバッファ41cに書き込まれるため第1バンドバッファ41aの画像1は上書きされずオーバラップデータとして残存するため読み出しが可能となることは上述した通りである。第1バンドバッファ41aから読み出されたオーバラップデータ及び第2バンドバッファ41bから読み出された画像2は局所データ変換部51に供給され、画像処理される(処理2)。処理された画像2は中間バッファ61の第2バンドバッファ61bに書き込まれる(WRITE2)。また、中間バッファ61の第1バンドバッファ61aからは1制御ステップ前に書き込まれた処理済みの画像1が読み出され(READ1)、書き込み用バンドバッファ71に格納され出力される(画像1)。
次に、画像4が入力されると、バンドバッファ41の第1バンドバッファ41aに画像4が再び書き込まれる(WRITE4)、第2バンドバッファ41bからはオーバラップデータ、第3バンドバッファ41cからは画像3が読み出される(READ3)。画像4は第1バンドバッファ41aに書き込まれるため第2バンドバッファ41bの画像2は上書きされずオーバラップデータとして残存するため読み出しが可能となる。第2バンドバッファ41bから読み出されたオーバラップデータ及び第3バンドバッファ41cから読み出された画像3は局所データ変換部51に供給され、画像処理される(処理3)。処理された画像3は中間バッファ61の第1バンドバッファ61aに書き込まれる(WRITE3)。また、中間バッファ61の第2バンドバッファ61bからは1制御ステップ前に書き込まれた処理済みの画像2が読み出され(READ2)、書き込み用バンドバッファ71に格納され出力される(画像2)。
次に、画像5が入力されると、バンドバッファ41の第2バンドバッファ41bに画像5が再び書き込まれる(WRITE5)、第3バンドバッファ41cからはオーバラップデータ、第1バンドバッファ41aからは画像4が読み出される(READ4)。画像5は第2バンドバッファ41bに書き込まれるため第3バンドバッファ41cの画像3は上書きされずオーバラップデータとして残存するため読み出しが可能となる。第3バンドバッファ41cから読み出されたオーバラップデータ及び第1バンドバッファ41aから読み出された画像4は局所データ変換部51に供給され、画像処理される(処理4)。処理された画像4は中間バッファ61の第2バンドバッファ61bに書き込まれる(WRITE4)。また、中間バッファ61の第1バンドバッファ61aからは1制御ステップ前に書き込まれた処理済みの画像3が読み出され(READ3)、書き込み用バンドバッファ71に格納され出力される(画像3)。
以下、同様にして画像6,7,・・と順次入力され、パイプライン処理されて加工処理済みの画像が出力される。本実施形態では、3バンド構成の読み出し用バンドバッファ41を用いているため、高速にパイプライン処理を行ってもオーバラップデータを確実に確保することができる。また、ぺージメモリを別途確保する必要もない。
次に、本実施形態におけるオーバラップデータの読み出しについてより詳細に説明する。
図5には、画像入力部10から入力される画像データのバンドバッファ41への書き込み(WRITE)及び読み出し(READ)の基本処理が示されている。画像データは、バンドバッファ41の各バンドに対して図5(A)に示されるようにラスタ順に書き込んでいく。図において、矢印は画像データの書き込み順を示す。次に、バンドバッファ41の各バンドから画像データを読み出す際には、図5(B)に示されるように所定サイズのブロック(局所データ)を単位とし、ブロック毎に読み出していく。ブロックサイズは任意であるが、本実施形態では例えば48画素×40画素のサイズとする。このブロックにおける色データは1色(黒)とする。
図6には、バンドバッファ41の各バンドからブロック単位で画像データを読み出す際のオーバラップ処理が示されている。オーバラップ処理は、着目する画素あるいはブロックの周辺の画素あるいはブロックのデータも取り込むフィルタ処理や、傾きがあるため周辺画素あるいはブロックのデータを取り込むスキュー補正時に必要であるが、スキュー補正を例にとるとオーバラップさせるべき画像領域はスキュー補正に必要な回転角度に応じて変化する。すなわち、回転角度に応じてオーバラップデータを読み出すためのブロック読み出し開始点が異なる。一般に、傾き角が増大するほど、バンドの切れ目に存在するオーバラップデータ量は増大する。図6において、48画素×40画素のブロック100の読み出し開始点SをS1、S2、S3、・・・とすると、読み出し開始点S1を有するブロック100に対し、次に読み出すべきブロック100の読み出し開始点S2は、画像の回転角をθとした場合、x方向の移動量はx方向移動量=32×cosθであり、y方向移動量はy方向移動量=32×sinθである。図中太線は、後述するように本来の出力ブロック200のサイズである32画素×32画素を示したものである。48画素×40画素は、この本来のサイズである32画素×32画素の傾きをカバーできる大きさのサイズとして規定されるものであり、傾きがない場合、48画素×40画素のブロックは、x方向及びy方向に互いに32画素だけずれた位置にある。48画素×40画素のブロックのうち、32画素×32画素に含まれない画素がオーバラップ画素として機能する。図において、1ますは4画素×4画素でパッキングされており(4画素の集まりが処理の最小単位)、x方向には16画素分だけオーバラップさせることになる。y方向には、sinθで規定される分だけオーバラップする。
図7には、以上のようにして設定される読み出し開始位置S1、S2、・・・Sn、Sn+1が示されている。画像の傾きθに応じたy方向の移動量(オフセット量)で読み出し開始点が決定されるため、図中矢印で示されるようにバンドバッファ41からは斜め方向に48画素×40画素ブロックが順次読み出されていく。斜め方向に読み出される結果、例えばバンドバッファ41の第2バンドバッファ41bの読み出し(READ)時にも、第1バンドバッファ41aのデータ(オーバラップのデータ)を読み出す必要があることが理解されよう。なお、オーバラップ量は、例えば傾き角θの上限を14°等として固定することができる。48画素×40画素ブロック単位で読み出された画像データは、局所データ変換部51で回転処理される。
図8には、局所データ変換部51での変換処理が示されている。局所データ変換部51では、傾きθに応じたアフィン変換により傾きを補正し、かつ、48画素×40画素の画像データから32画素×32画素の画像データを生成する。図8(A)はバンドバッファ41から読み出された48画素×40画素ブロック100及びこの48画素×40画素から32画素×32画素のブロック200を傾けて(画像の傾き角に応じて)抽出することが示されており、図8(B)にはこの32画素×32画素ブロック200をθだけ回転させて傾きを補正し出力ブロック200とすることが示されている。
具体的には、図9に示されるように、48画素×40画素のブロック100内における傾いた32画素×32画素ブロック200の入力画像データを(x、y)、傾きθを補正(θだけ回転させた)した後の32画素×32画素ブロック200の出力画像データをX,Yとすると、アフィン(Affine)逆行列を用いて
x=cosθ(X−m)+sinθ(Y−n)
y=−sinθ(X−m)+cosθ(Y−n)
となる。ここでm、nはオフセット量であり、図では一例としてm=7、n=8としている。これにより、入力画像(スキュー補正前の32画素×32画素)の画素No.23は例えば出力画像の画素No.1に写像され、入力画像の画素No.17は出力画像の画素No.5及びNo.10に写像される。なお、補正には入力画像の画素間データが必要となるが、画素間データは4点補間で算出され、具体的には図10に示されるように隣接する4点P1〜P4の画素データが与えられており、これらの中間に位置するN(x、y)の画素データは、
N1=x・P2+(1−x)P1
N2=x・P4+(1−x)P3
N=(1−y)・N1+y・N2
で与えられる。
以上のようにしてスキュー補正された32画素×32画素ブロック200は、中間バッファ61の第1バンドバッファ61a及び第2バンドバッファ61bに32画素×32画素ブロック200単位で交互に書き込まれる。中間バッファ61に書き込まれた画像データは、ラスタ順に中間バッファ61から読み出され、書き込み用バンドバッファ71を介して画像出力部80に出力される。
このように、本実施形態では、48画素×40画素のブロック単位で読み出し用バンドバッファ41から画像データを読み出す際に、読み出し開始位置を画像の傾き角に応じて読み出し、スキュー補正を行って中間バッファ61に書き込んでいく。また、読み出し用バンドバッファ41を3バンド構成として、2つのバンドを読み出しバンドとし、残り1つに新たに入力した画像データを書き込むように構成したので、オーバラップデータの上書きを防止して、パイプライン処理を維持しつつ高速で画像を加工し出力できる。
実施形態の画像処理装置の全体構成図である。 読み出し用バンドバッファの構成図である。 読み出し用バンドバッファの書き込み(WRITE)/読み出し(READ)の動作説明図である。 実施形態の画像入力、バッファリング、加工処理、出力の一連のパイプライン処理を示す説明図である。 読み出し用バンドバッファの書き込み順及び読み出し単位を示す説明図である。 読み出し用バンドバッファから読み出される48画素×40画素のブロックと32画素×32画素との関係を示す図である。 読み出し用バンドバッファからの読み出し開始位置を示す図である。 スキュー補正の処理説明図である。 スキュー補正の回転処理説明図である。 スキュー補正の補間処理説明図である。 従来装置の全体構成図である。 従来装置の処理の流れを示す説明図である。 ダブルバッファの書き込み/読み出しの説明図である。
符号の説明
1 画像入力部、41 読み出し用バンドバッファ、42 バンドバッファ読み出し制御部、51 局所データ変換部、61 中間バッファ、71 書き込み用バンドバッファ、80 画像出力部。

Claims (8)

  1. 入力画像を処理して出力する画像処理装置であって、
    入力画像を格納するバンドバッファと、
    前記バンドバッファへの画像データの書き込み及び読み出しを制御する制御部と、
    前記バンドバッファから読み出された画像データを処理する処理部と、
    前記処理部で処理された画像データを格納する出力バッファと、
    前記出力バッファへの処理済み画像データの書き込み及び読み出しを制御する出力制御部と、
    を備え、
    前記バンドバッファは、第1バンド、第2バンド及び第3バンドの3つの領域を有し、 前記制御部は、前記第1バンド、第2バンドあるいは第3バンドのいずれか1つの領域に前記入力画像を書き込むとともに、残りの2つの領域から格納された画像データを読み出して前記処理部に供給する
    ことを特徴とする画像処理装置。
  2. 請求項1記載の装置において、
    前記制御部は、前記第1のバンドに前記入力画像を書き込むとともに前記第2のバンドに格納された画像データの一部及び前記第3のバンドに格納された画像データを読み出すことを特徴とする画像処理装置。
  3. 請求項2記載の装置において、
    前記画像データの一部は、前記第2のバンドに格納された画像データを処理するために必要な画像データであるとともに、前記第3のバンドに格納された画像データを処理するために必要な画像データでもあるオーバラップデータである
    ことを特徴とする画像処理装置。
  4. 請求項1記載の装置において、
    前記制御部は、ある制御タイミングで前記第1のバンドに前記入力画像を書き込むとともに前記第2のバンドに格納された画像データの一部及び前記第3のバンドに格納された画像データを読み出し、次の制御タイミングで前記第2のバンドに前記入力画像を書き込むとともに前記第3のバンドに格納された画像データの一部及び前記第1のバンドに格納された画像データを読み出し、さらに次の制御タイミングで前記第3のバンドに前記入力画像を書き込むとともに前記第1のバンドに格納された画像データの一部及び前記第2のバンドに格納された画像データを読み出して前記処理部に供給する
    ことを特徴とする画像処理装置。
  5. 請求項1〜4のいずれかに記載の装置において、
    前記出力バッファは、第1バンド及び第2バンドの2つの領域
    を有し、前記出力制御部は、前記処理部からの処理済み画像データを前記出力バッファの第1バンドに書き込むとともに前記出力バッファの第2バンドに格納された処理済み画像データを読み出して出力する
    ことを特徴とする画像処理装置。
  6. 請求項1〜4のいずれかに記載の装置において、
    前記制御部は、前記入力画像の前記バンドバッファへの書き込みはラスタ順に行い、前記バンドバッファからの画像データの読み出しは複数画素の集合体で構成されるブロックを単位として行い、
    前記処理部は、前記ブロックを単位として画像データを処理し、
    前記出力制御部は、処理済み画像データの前記出力バッファへの書き込みはブロックを単位として実行し、前記出力バッファからの処理済み画像データの読み出しはラスタ順に行う
    ことを特徴とする画像処理装置。
  7. 請求項6記載の装置において、
    前記バンドバッファからの読み出しのブロックサイズは、前記出力バッファへの書き込みのブロックサイズよりも大である
    ことを特徴とする画像処理装置。
  8. 入力画像を処理して出力する画像処理装置であって、
    画像入力部と、
    前記画像入力部からの入力画像を格納する、第1、第2及び第3のバンドの3つの領域を有するバンドバッファと、
    前記バンドバッファへの画像データの書き込み及び読み出しを制御する制御部と、
    前記バンドバッファから読み出された画像データを処理する処理部と、
    前記処理部で処理された画像データを格納する、第1のバンド及び第2のバンドの2つの領域を有する出力バッファと、
    前記出力バッファへの処理済み画像データの書き込み及び読み出しを制御する出力制御部と、
    を備え、
    ある制御タイミングにおいて、前記制御部は前記バンドバッファの前記第1のバンドに前記入力画像を書き込むとともに前記第2のバンドに格納された画像データの一部及び前記第3のバンドに格納された画像データを読み出し、前記処理部は前記バンドバッファから読み出された、前記第2のバンドに格納された画像データの一部及び前記第3のバンドに格納された画像データを処理し、前記出力制御部は前記処理部からの処理済み画像データを前記出力バッファの前記第1のバンドに書き込むとともに前記第2のバンドに格納された処理済み画像データを読み出して出力し、
    次の制御タイミングにおいて、前記制御部は前記バンドバッファの前記第2のバンドに前記入力画像を書き込むとともに前記第3のバンドに格納された画像データの一部及び前記第1のバンドに格納された画像データを読み出し、前記処理部は前記バンドバッファから読み出された、前記第3のバンドに格納された画像データの一部及び前記第1のバンドに格納された画像データを処理し、前記出力制御部は前記処理部からの処理済み画像データを前記出力バッファの前記第2のバンドに書き込むとともに前記第1のバンドに格納された処理済み画像データを読み出して出力し、
    さらに次の制御タイミングにおいて、前記制御部は前記バンドバッファの前記第3のバンドに前記入力画像を書き込むとともに前記第1のバンドに格納された画像データの一部及び前記第2のバンドに格納された画像データを読み出し、前記処理部は前記バンドバッファから読み出された、前記第1のバンドに格納された画像データの一部及び前記第2のバンドに格納された画像データを処理し、前記出力制御部は前記処理部からの処理済み画像データを前記出力バッファの前記第1のバンドに書き込むとともに前記第2のバンドに格納された処理済み画像データを読み出して出力する
    ことを特徴とする画像処理装置。
JP2004055842A 2004-03-01 2004-03-01 画像処理装置 Pending JP2005250534A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004055842A JP2005250534A (ja) 2004-03-01 2004-03-01 画像処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004055842A JP2005250534A (ja) 2004-03-01 2004-03-01 画像処理装置

Publications (1)

Publication Number Publication Date
JP2005250534A true JP2005250534A (ja) 2005-09-15

Family

ID=35030993

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004055842A Pending JP2005250534A (ja) 2004-03-01 2004-03-01 画像処理装置

Country Status (1)

Country Link
JP (1) JP2005250534A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008205612A (ja) * 2007-02-16 2008-09-04 Seiko Epson Corp 画像処理回路およびこれを搭載したプリンタコントローラ
US9313358B2 (en) 2013-12-05 2016-04-12 Canon Kabushiki Kaisha Image processing apparatus

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000354168A (ja) * 1999-04-05 2000-12-19 Seiko Epson Corp 画像処理装置およびコピーシステム
JP2001038964A (ja) * 1999-07-29 2001-02-13 Matsushita Electric Ind Co Ltd プリンタコントローラ
JP2001043359A (ja) * 2000-01-01 2001-02-16 Fuji Xerox Co Ltd 画像処理装置および方法
JP2001096854A (ja) * 1999-09-28 2001-04-10 Fuji Xerox Co Ltd 印刷処理装置および印刷処理方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000354168A (ja) * 1999-04-05 2000-12-19 Seiko Epson Corp 画像処理装置およびコピーシステム
JP2001038964A (ja) * 1999-07-29 2001-02-13 Matsushita Electric Ind Co Ltd プリンタコントローラ
JP2001096854A (ja) * 1999-09-28 2001-04-10 Fuji Xerox Co Ltd 印刷処理装置および印刷処理方法
JP2001043359A (ja) * 2000-01-01 2001-02-16 Fuji Xerox Co Ltd 画像処理装置および方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008205612A (ja) * 2007-02-16 2008-09-04 Seiko Epson Corp 画像処理回路およびこれを搭載したプリンタコントローラ
US9313358B2 (en) 2013-12-05 2016-04-12 Canon Kabushiki Kaisha Image processing apparatus

Similar Documents

Publication Publication Date Title
US20110032262A1 (en) Semiconductor integrated circuit for displaying image
JP2004289667A (ja) 画像処理装置
JP4786484B2 (ja) 演算処理用データ供給方法および画像処理装置
JP2005250534A (ja) 画像処理装置
JP2009259201A (ja) 画像処理装置および画像形成装置
JP2015201677A (ja) 画像処理装置および画像処理方法
US20090237738A1 (en) Image processing system, image processing method, and storage medium
JP2005086598A (ja) 画像処理装置、画像処理方法、画像処理プログラムおよび画像処理回路
JP2016095667A (ja) 画像処理装置および電子機器
JP3167684B2 (ja) 小画面のためのコンテキスト発生回路及びその方法
JP2016058832A (ja) 画像処理装置、その制御方法、及びプログラム
JP2024087384A (ja) 画像処理モジュール
JP2012227598A (ja) 画像処理装置、画像形成装置、画像処理方法、画像処理プログラム及び記録媒体
CN110072032B (zh) 图像处理装置
JP2005269502A (ja) 画像処理装置および画像処理方法
JP2006135825A (ja) 画像補間処理装置
JP2011191903A (ja) 情報処理装置、画像形成装置及び情報処理方法
JPH11168610A (ja) 画像処理装置
JP2008135851A (ja) 画像処理装置及び画像形成装置
JP2006013803A (ja) 画像処理装置
JP2017017672A (ja) 画像処理装置、画像処理方法および画像処理プログラム
JP4746945B2 (ja) 解像度変換装置及び方法
JP2006092506A (ja) 画像処理装置
JP2001053959A (ja) 画像デ−タの変倍装置
JP4945462B2 (ja) 画像変倍処理方法、画像変倍処理装置、画像処理装置および画像形成装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070221

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100216

A521 Written amendment

Effective date: 20100414

Free format text: JAPANESE INTERMEDIATE CODE: A523

A02 Decision of refusal

Effective date: 20100629

Free format text: JAPANESE INTERMEDIATE CODE: A02