JP4277764B2 - 画像処理装置 - Google Patents

画像処理装置 Download PDF

Info

Publication number
JP4277764B2
JP4277764B2 JP2004233825A JP2004233825A JP4277764B2 JP 4277764 B2 JP4277764 B2 JP 4277764B2 JP 2004233825 A JP2004233825 A JP 2004233825A JP 2004233825 A JP2004233825 A JP 2004233825A JP 4277764 B2 JP4277764 B2 JP 4277764B2
Authority
JP
Japan
Prior art keywords
ram
image data
line
scanning direction
image
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
JP2004233825A
Other languages
English (en)
Other versions
JP2006054610A (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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
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, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2004233825A priority Critical patent/JP4277764B2/ja
Publication of JP2006054610A publication Critical patent/JP2006054610A/ja
Application granted granted Critical
Publication of JP4277764B2 publication Critical patent/JP4277764B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4007Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)
  • Storing Facsimile Image Data (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

本発明は画像処理装置、特に画像の拡大や縮小等の処理を行う複合機等の装置に関する。
従来より、投影法により原画像を拡大し、あるいは縮小して出力する装置が知られている。
図11には、71%縮小の場合の投影法による画素変換の概念図が示されている。図11(A)には入力画素の並びが示されており、1画素の幅は基準値の1とする。また、入力画素の濃度は1画素目から順にd0,d1,d2,・・・とする。図11(B)には出力画素の並びが示されており、出力画素の幅は倍率0.71の逆数で1.41とする。また、出力画素の濃度はO0,O1,O2,・・・とする。
このとき、出力画素の濃度O0,O1,O2,・・・の求め方は、図11に示すように入力画素と出力画素を一次配列したときに、出力画素に対応する部分の入力画素の濃度の平均として算出される。例えば、最初の出力画素O0は、入力画素の最初の画素d0に幅1と、次の2番目の画素d1に幅0.41だけ跨がっており、最初の出力画素の濃度O0は、入力画素濃度の平均として、
O0={(1×d0)+(0.41×d1)}×0.71
として求めることができる。同様にして3番目の出力画素の濃度O2を求めると、3番目の出力画素は、3〜5番目の入力画素に跨っているので、
O2={(0.18×d2)+(1×d3)+(0.23×d4)}×0.71
として求めることができる。
一般に、入力画素である原画像をDm、Dm+1、Dm+2、Dm+3とし、出力画素Xnがこれらの入力画素に跨っているとすると、倍率MAGの縮小画像Xnは、
Xn=(bn×Dm+Dm+1+Dm+2+an×Dm+3)×MAG
となる。ここでbnはXnに対応するDmの割合、anはXnに対応するDm+3の割合である。
このような処理を、出力画像の各ライン中の画素について行なうことにより、行方向(すなわち主走査方向)の拡大または縮小を行なうことができる。また、列方向(すなわち副走査方向)の画素について上述のような演算を行なうことによって、列方向の拡大または縮小を行なうことができる。
図12には、従来の画素変換装置の構成ブロック図が示されている。図中、41は入力画像信号、42はページ同期信号、43はライン同期信号、44は倍率、45は濃度算出部、46〜50はラインメモリ、51は出力画像信号である。ここでは説明のため、ラインメモリを5本用いた例を示している。
入力画像信号41は、濃度算出部45に入力されるとともに、1段目のラインメモリ46に入力されている。ラインメモリ46〜49の出力は、濃度算出部45と次段のラインメモリ47〜50に入力され、ラインメモリ50の出力は濃度算出部45に入力されている。ラインメモリ46〜50は、それぞれ1ライン分の画素を保持できるだけの容量を有している。そのため、ラインメモリ46〜50からは入力画像信号41よりも1〜5ライン前の画像信号がそれぞれ出力される。
濃度算出部45は、入力画像信号41、各ラインメモリ46〜50から与えられる1〜5ライン遅延した画像信号、ページ同期信号42、ライン同期信号43、倍率44を受け取り、上述した投影法により画素密度変換を行なって出力画像信号50を出力する。
次に、動作について説明する。まず、ページ同期信号42がアクティブになり、その後、ライン同期信号43に同期して入力画像信号41が送られてくる。入力画像信号41は、直接、濃度算出部45に入力されるとともに、ラインメモリ46〜50から1〜5ライン遅れた画像信号が入力される。このように、濃度算出部5には副走査方向に連続した6画素が入力される。濃度算出部45では、これらのページ同期信号42、ライン同期信号43および倍率44をもとに、入力画像信号41、ラインメモリ46〜50の出力を演算して、投影法による濃度演算を行なって出力画像信号51として出力する。
図13には、従来の画素変換装置における濃度算出部の構成ブロック図が示されている。21はイネーブル付加算器、22はライン同期信号カウンタ、23は整数/小数分離部、24はイクスクルーシブオアノット、25は係数選択部、26はan算出部、27−1〜27−5は係数選択セレクタ、28−1〜28−6,30は乗算器、29は加算器である。
イネーブル付加算器21は、倍率44の逆数を加算して行くための加算器であり、倍率44と、このイネーブル付加算器21の出力がフィードバックされて入力されている。タイミング信号としてページ同期信号42とライン同期信号43の論理積の信号が入力されており、入力画像信号41に同期して加算が行なわれる。また、後述するエクスクルーシブオアノット24の出力がイネーブル信号として入力されており、加算値の整数部とライン数が等しくないとき、加算動作が抑制されるように構成されている。これは、濃度の算出に必要とする画素数が変化する際に発生する。整数/小数分離部23は、イネーブル付加算器21からの加算値を受け、加算値を整数部と小数部に分離する。そして、整数部はエクスクルーシブオアノット24へ、小数部bnはan算出部26および乗算器28−1へ出力される。
カウンタ22は、ページ同期信号42とライン同期信号43の論理積の信号が入力され、ライン同期信号43をカウントする。これにより、入力画像信号41のライン番号がカウンタ22から出力される。エクスクルーシブオアノット24は、整数/小数分離部23から出力される倍率44の逆数の積算値の整数部分と、カウンタ22でカウントされているライン番号とを比較するものである。比較の結果が一致していれば、イネーブル付加算器21のイネーブル信号をアクティブにし、不一致ならばインアクティブにする。
係数選択部25は、イネーブル付加算器21からの倍率の逆数の積算値を受け取り、その値からラインメモリ46〜50の出力に乗算するための係数を、それぞれ0、1、anのうちから選択する選択信号を生成し、セレクタ27−1〜27−5に出力する。an算出部26は、整数/小数分離部23から倍率の逆数の積算値のうちの小数部bnを受け取るとともに、倍率44を受け取り、(倍率−bn)を計算してその小数部anを出力する。この小数部anは、乗算係数として用いられる。セレクタ27−1〜27−5は、それぞれ、係数選択部25からの選択信号に従って、乗算器28−2〜28−6に供給する乗算係数を選択出力する。選択する乗算係数は、1、0、anのいずれかである。
乗算器28−1は、整数/小数分離部23で分離された倍率の逆数の積算値の小数部分と、入力画像信号41との積を計算する。また、乗算器28−2〜28−6は、それぞれ、ラインメモリ46〜50の出力と、セレクタ27−1〜27−5から出力される乗算係数との積を計算する。加算器29は、乗算器28−1〜28−6から出力される乗算結果を加算する。乗算器30は、加算器29による加算結果に倍率44を乗算し、出力画像信号51として出力する。
ここで、入力画像信号41の値をp0、ラインメモリ46〜50からの遅延した画像信号の値をp1〜p5とすると、乗算器28−1〜28−6、加算器29、乗算器30によって、
(bn・p0+an・p1)×倍率
(bn・p0+1・p1+an・p2)×倍率
(bn・p0+1・p1+1・p2+an・p3)×倍率
(bn・p0+1・p1+1・p2+1・p3+an・p4)×倍率
(bn・p0+1・p1+1・p2+1・p3+1・p4+an・p5)×倍率
のいずれかが計算されて出力される。いずれの計算が行なわれるかは倍率44に依存し、係数選択部25が乗算係数を制御することによって実現される。
このように、いずれの計算が行われるかが倍率44に依存して決定され、縮小率が小さくなるほどより多くの画素ラインを参照することが必要となるため、より多くのラインメモリが必要となる問題が生じる。
そこで、下記に示す特許文献では、参照するラインのうちはじめに入力されるラインを蓄積する第1のラインメモリと、濃度算出時には参照するラインのうち2番目に入力されるラインから最後に入力されるラインの1ライン手前までの積算値を蓄積する第2のラインメモリと、参照するラインのうちの最後に入力されるラインと前記第1のラインメモリから出力されるラインと前記第2のラインメモリから出力される積算値をもとにページ同期信号およびライン同期信号および倍率に従って出力画素の濃度を求める濃度算出手段を設けることが記載されている。
図14には、この従来技術の構成ブロック図が示されている。図中、1は入力画像信号、2はページ同期信号、3はライン同期信号、4は倍率、5は濃度算出部、6は加算器、7,8はラインメモリ、9はセレクタ、10は出力画像信号である。例えば21%縮小を行なう際には、出力画素の値は入力画素d0〜d4あるいはd0〜d5および倍率を用いて、{(bn・d4+d3+d2+d1+an・d0)×倍率}
{(bn・d5+d4+d3+d2+d1+an・d0)×倍率}
のように計算される。ここで、(d3+d2+d1)および(d4+d3+d2+d1)の部分は単なる加算を行なっているのみである。この加算部分の計算を加算器6およびラインメモリ7によって実現する。また、d0をラインメモリ8に保持するように構成している。なお、d4またはd5は、入力画像信号1として入力されるラインである。
特開平10−229491号公報
このように、加算器を用いることで2個のラインメモリに抑制することが可能であるが、ラインメモリは入力画像の1ライン分を記憶する必要があることから、入力画像のサイズ(原稿等の文書サイズ)が大きくなるとラインメモリもそれに比例して大きくなり、回路規模が増大してしまう問題がある。特にコピー機能やプリント機能等の多機能を有する複合機においては多様なサイズの文書を処理する場合が多く、入力画像サイズに依存しないメモリを用いて処理できることが望まれている。
本発明の目的は、倍率や文書サイズに影響をうけず少ないメモリ数及びメモリ容量で拡大や縮小等の画像処理を実行できる装置を提供することにある。
本発明は、画像を構成する複数ラインの画素を参照して前記画像を投影法により処理する画像処理装置であって、前記投影法による処理は、ユーザから指定された倍率による画像の拡大ないし縮小処理であり、前記画像を構成する画像データを記憶する画像メモリと、参照すべきラインのうち最初のラインの画像データを格納する第1RAMと、参照すべきラインのうち中間のラインの画像データを格納する第2RAMと、参照すべきラインのうち最後のラインの画像データを格納する第3RAMと、前記画像メモリからの画像データの読み出しを制御する制御手段であって、前記最初のラインを構成する画像データのうち前記第1RAMの容量分だけの画像データを前記画像メモリから主走査方向に読み出して前記第1RAMに書き込み、前記画像メモリから副走査方向に1ラインだけ下がったラインにおいて前記第2RAMの容量分だけの画像データを前記画像メモリから主走査方向に読み出して前記第2RAMに既に格納されている画像データと加算して前記第2RAMに書き込む処理を前記倍率に応じた回数だけ繰り返することで前記中間のラインの画像データを前記第2RAMに書き込み、前記画像メモリから副走査方向に1ラインだけ下がったラインであって前記最後のラインに相当するラインにおいて前記第3RAMの容量分だけの画像データを前記画像メモリから主走査方向に読み出して前記第3RAMに書き込む制御手段と、前記第1RAM、前記第2RAM、及び前記第3RAMに格納された画像データを用いて前記倍率に応じた副走査方向の拡大ないし縮小処理を行う副走査方向演算手段と前記副走査方向演算手段により処理された画像データに対し、前記倍率に応じた主走査方向の拡大ないし縮小処理を行う主走査方向演算手段とを有し、前記第1RAM、前記第2RAM、及び前記第3RAMの容量は等しく、かつ、いずれも1ライン分未満の容量を有する。
本発明において、前記制御手段は、前記副走査方向演算手段及び前記主走査方向演算手段で演算処理が完了した後、前記最初のラインを構成する画像データであって未だ読み出していない画像データのうち前記第1RAMの容量分だけの画像データを前記画像メモリから主走査方向に読み出して前記第1RAMに書き込み、前記画像メモリから副走査方向に1ラインだけ下がったラインであって未だ読み出していない画像データのうち前記第2RAMの容量分だけの画像データを前記画像メモリから主走査方向に読み出して前記第2RAMに既に格納されている画像データと加算して前記第2RAMに書き込む処理を前記倍率に応じた回数だけ繰り返し、前記画像メモリから副走査方向に1ラインだけ下がったラインであって前記最後のラインに相当するラインであって未だ読み出していない画像データのうち前記第3RAMの容量分だけの画像データを前記画像メモリから主走査方向に読み出して前記第3RAMに書き込み、かつ、前記画像メモリから読み出す際に、各ラインにおいて既に読み出した画像データと前記倍率に応じた画素数だけオーバラップするように読み出し開始点を調整して読み出すことができる
本発明においては、従来のようにラインメモリを用いるのではなく、1ライン分未満の容量を有するRAMを複数(3個)有する。投影法による処理の場合、上記のように、
Xn=Xn=(bn×Dm+Dm+1+Dm+2+an×Dm+3)×MAG
により拡大ないし縮小処理が行われる。したがって、参照ラインのうちの最初のラインの画像データDmを第1RAMに格納し、参照ラインのうちの最後のラインの画像データDm+3を第3RAMに格納し、参照ラインのうちの中間ラインの画像データDm+1+Dm+2を第2RAMに格納する。第2RAMに格納される画像データは複数のラインが加算された画像データであり、加算すべき中間ライン数は倍率に応じて決定される。すなわち、ある倍率においては上記のようにDm+1+Dm+2の2ラインであり、他の倍率においてはDm+1+Dm+2+Dm+3の3ラインとなる。拡大ないし縮小に必要な画像データを第1RAM〜第3RAMに格納した後、画像データを読み出して上記の演算を実行する。RAMの容量分の画像データを順次画像メモリから読み出してRAMに格納し、演算処理を繰り返し実行することで、文書サイズや倍率によらず、一定のメモリ容量で画像処理できる。本発明は、RAMの容量で規定されるブロックサイズ毎にRAMへの格納、RAMからの読み出し及び演算処理を繰り返し実行するということもできる。
本発明によれば、文書サイズや倍率によらず、一定のメモリ容量で拡大や縮小等の画像処理が可能となる。
以下、図面に基づき本発明の実施形態について説明する。
図1には、本実施形態に係る画像処理装置の構成ブロック図が示されている。画像処理装置は、スキャナ等の画像入力部に接続され、入力画像の画像データを格納する画像メモリ(ページメモリ)100と、画像メモリ100に接続され画像メモリ100からの画像データの読み出しを制御する画像メモリアドレス制御部102と、画像メモリ100に対して互いに並列に接続され、画像メモリ100から読み出された画像データを格納する3個のRAM104(RAM1あるいは第1RAM)、106(RAM2あるいは第2RAM)、108(RAM3あるいは第3RAM)と、RAM106の出力端と入力端との間に並列に設けられRAM106に格納される画像データを順次加算する加算器110と、3個のRAM104、106、108の出力端に接続され3個のRAMからの画像データを用いて副走査方向(列方向)の補間(濃度変換)演算を行う副走査補間部112と、副走査補間部112の出力端に接続され、副走査補間部112で補間された画像データに対しさらに主走査方向(行方向)の補間(濃度変換)演算を行う主走査補間部114とを有して構成される。図14に示された従来装置との相違点の一つは、ラインメモリの代わりに3個のRAM104、106、108を有する点である。各RAM104、106、108の容量は等しく、いずれも1ライン分の容量未満でよい。
スキャナからの入力画像データ(原画像データ)は画像メモリ100に供給され、画像メモリ100は、入力画像1ページ分の画像データを格納する。
画像メモリアドレス制御部102は、画像メモリ100から読み出すべき画像データのアドレスを制御するもので、読み出すべき画像データ量はRAM104、106、108の容量により決定される。すなわち、画像メモリアドレス制御部102は、画像メモリ100に格納された画像データのそれぞれのラインにおいて、主走査方向(行方向)にRAM104、106、108の容量だけ読み出すようにアドレスを制御する。図において、画像メモリ100内の矢印が主走査方向への読み出しの方向を示す。画像メモリ100内のあるラインにおいて主走査方向にRAMの容量だけ読み出し、その後、次のラインにおいて主走査方向に画像データを読み出す。図1において、画像メモリアドレス制御部102により読み出される画像データ量が符号101で示されている。このように、あるラインで主走査方向にRAMの容量だけ読み出し→次のラインで主走査方向にRAMの容量だけ読み出し→さらに次のラインで主走査方向にRAMの容量だけ読み出し→・・・を繰り返す。主走査方向に垂直な副走査方向に読み出すべきライン数は、拡大あるいは縮小処理に必要な参照ライン数であり、これは拡大あるいは縮小の倍率に応じて決定される。参照ライン数は画像処理装置内の図示しないプロセッサ乃至コントローラが、ユーザから指定された倍率に応じて決定して画像メモリアドレス制御部102に制御指令として与えてもよく、画像メモリアドレス制御部102自体がユーザ指定の倍率に応じて参照ライン数を決定してもよい。
3個のRAM104、106、108は、画像メモリ100から読み出された画像データを格納する。RAM104、106、108は、従来装置におけるラインメモリに相当するもので、上記のように同一のメモリ容量を有する。メモリ容量の一例は、1024ワードのデータ量を格納するために必要な容量であり、例えば1Mbyteに設定される。3個のRAM104、106、108のうち、中間のRAM106の出力端と入力端の間には並列に加算器110が接続され、RAM106に供給される画像データを順次加算しその加算結果を格納する。3個のRAM104、106、108は、それぞれ投影法の演算の項に対応する。すなわち、上記のように投影法では、一般的に、
Xn=(bn×D +D m+1 +D m+2 +an×D m+3 )×MAG
と表現される。右辺におけるΣ=D m+1 +D m+2 加算器110による単純加算項であり、倍率に依存してその加算数が決定される。上記の式のbn×D における画像データD をRAM104に格納し、上記の式のan×D m+3 における画像データD m+3 をRAM108に格納し、上記の式の加算項であるΣをRAM106に格納する。D は拡大乃至縮小処理において参照すべきラインのうちの最初のラインの画像データであり、D m+3 は参照すべきラインの最後のラインの画像データであり、D m+1 やD m+2 は参照すべきラインの中間ラインの画像データである。3個のRAM104、106、108に格納された画像データは、読み出されて副走査補間部112に供給される。
RAMから読み出されて副走査補間部112で演算処理された後、再び画像メモリ100からそれぞれのラインにおいてRAMの容量分だけの画像データが読み出されてRAM104、106、108に格納される。ここで、画像メモリ100から画像データを読み出す際には、前に読み出した画像を再度読み出すようにオーバラップさせて読み出し、RAM104、106、108に格納する。図において、RAM104、106、108の右端にハッチングが付されているが、これはオーバラップ領域を示す。オーバラップ領域に格納された画像データは、次の読み出し時にも再び画像メモリ100から読み出されてRAMに再格納される。
副走査補間部112は、図14に示された従来装置における濃度算出部5と同様の機能を有し、倍率に応じて上記の演算を副走査方向で実施し出力画素の濃度を算出(補間)する。すなわち、an及びbn算出部を備え、RAM104から読み出された画像データとbnを第1乗算器に供給して乗算し、RAM108から読み出された画像データとanを第2乗算器に供給して乗算する。2つの乗算器の出力と、RAM106から読み出された画像データとを加算器に供給して加算する。加算結果と、ユーザから指定された倍率MAGとを第3乗算器に供給して乗算し出力する。
主走査補間部114は、画像データを主走査方向に濃度変換して出力する。主走査方向の濃度変換は副走査方向の濃度変換と同様に、一般式
Yn=(bn×E +E m+1 +E m+2 +an×E m+3 )×MAG
で表現される。ここで、Ynは縮小後の出力画素、E 、E m+1 、E m+2 は主走査方向の画素値である。主走査補間部114は、副走査補間部112からの出力値であるE 、E m+1 等を保持するフリップフロップ(FF)及び加算器、乗算器を備える。基本構成は副走査方向補間部112と同様であり、an及びbn算出部を備え、FFから読み出されたE とbnを第1乗算器に供給して乗算し、FFから読み出されたE m+3 とanを第2乗算器に供給して乗算する。2つの乗算器の出力と、FFから読み出されたE m+1 、E m+2 を加算器に供給して加算する。加算結果と、ユーザから指定された倍率MAGとを第3乗算器に供給して乗算し出力する。
また、主走査補間部114は、さらにRAM104、106、108から読み出して副走査補間部112に供給すべき画像データを指定するためのアドレス信号を生成する。これは、副走査方向補間部112で補間演算されたデータEm、Em+1、Em+2、Em+3・・に基づき主走査方向の補間演算を行うが、主走査方向演算に必要な画素数は倍率に応じて変化するからである。このアドレス信号も、参照ライン数と同様に図示しないプロセッサ乃至コントローラが設定してもよい。好適な構成の一つは、コントローラが副走査方向の倍率に応じて副走査方向の参照ライン数を設定して画像メモリ100からの読み出しを制御するとともに、主走査方向の倍率に応じて参照画素数を設定してRAM104、106、108からの読み出しを制御するものである。コントローラは、予め倍率と参照ライン数あるいは参照画素数との関係を記憶するテーブルを保持し、このテーブルを参照して必要なライン数あるいは画素数を設定できる。
図2及び図3には、本実施形態の処理フローチャートが示されている。まず、図2において、画像メモリ100に拡大あるいは縮小処理すべき文書の1ページ分の画像データを格納する(S101)。具体的には、スキャナ等で文書データをアナログ画像データに変換し、さらにA/Dコンバータでデジタル画像データに変換して画像メモリ100に格納する。
次に、画像メモリアドレス制御部102で指定したアドレスに従い、画像メモリ100から主走査方向(図1における矢印の方向)にRAM104の容量分だけの画像データを読み出してRAM104(RAM1)に格納する(S102)。例えば、1024ワードのデータを読み出して格納する。
次に、画像メモリ100から副走査方向に1ラインだけ下がったラインにおいて、主走査方向にRAM106の容量分だけの画像データを読み出してRAM106(RAM2)に格納する(S103)。さらに、画像メモリ100から副走査方向に1ラインだけ下がったラインにおいて、主走査方向にRAM106の容量分だけの画像データを読み出し、RAM106に既に格納されている画像データと加算器110で加算しながらRAM106に格納する(S104)。S104の動作は、ユーザにより指定された倍率に応じた回数だけ繰り返す。例えば、倍率が71%の場合には1回、倍率が55%の場合には2回、倍率が21%の場合には3回繰り返す。言うまでもなく、繰り返し回数は、参照ライン数−2である。
倍率に応じてS104の処理を繰り返し実行した後、再び画像メモリアドレス制御部102で指定されたアドレスに従い、画像メモリ100から副走査方向に1ラインだけ下がったラインにおいて、主走査方向にRAM108の容量分だけの画像データを読み出し、RAM108(RAM3)に格納する(S106)。以上の処理により、画像メモリ100に記憶された画像データのうちの処理対象となるブロックの全ての画像データが3個のRAMに記憶されたことになる。
次に、図3において、主走査方向の倍率(拡縮率)に応じてRAM104、106、108(RAM1〜3)のアドレスを制御しつつ、RAM104、106、108から画像データを読み出して副走査補間部112に供給する(S107)。例えば、主走査方向の倍率が71%の場合には3画素分、主走査方向の倍率が55%の場合には4画素分、主走査方向の倍率が21%の場合には5画素分をRAMから読み出す。
RAMから画像データを読み出して副走査補間部112に供給した後、副走査補間部112でこれらの画像データを用いて補間演算(濃度変換演算)を実行する(S108)。例えば、倍率21%の場合、参照ライン数は5本であり、RAM106では中間ラインの3ライン分の画像データが加算されて格納されており、RAM104、106、108からそれぞれ5画素分の画像データが読み出される。副走査補間部112では、RAM104、106、108から読み出された合計5ライン分のデータを用いて、
Xn=bn×RAM104のデータ+RAM106のデータ×RAM108のデータ)×MAG
により副走査方向の補間を行う。副走査方向に補間された合計5画素分の画像データは、順次主走査補間部114に供給される。
副走査補間部112で副走査方向に補間した後、副走査補間部112からの出力データを用いて主走査補間部114で主走査方向の補間演算を行う(S109)。上記のように、倍率21%の場合には、5画素分のデータが順次副走査補間部112から出力されてくるから、これらの出力画素データをE1、E1、E3、E4、E5とすると、
Yn=(bn×E1+E2+E3+E4+an×E5)×0.21
により主走査方向に補間演算する。以上の処理により1つのブロックの拡大・縮小処理が完了する。拡大あるいは縮小処理されたデータは、出力バッファ等に格納される。
あるブロックの処理が完了した後、主走査方向において次の処理ブロックの処理に移行する。すなわち、画像メモリ100から主走査方向の次のブロックにおけるラインにおいてRAM104の容量分の画像データを読み出してRAM104に格納する。この際、画像メモリ100からの読み出し開始点は、前のブロックにおける同一ラインにおいて読み出した画像データと一部オーバラップさせるように読み出し開始点を調整する(S110)。読み出し開始点の調整、すなわちオーバラップさせるべき画素数は、倍率に応じて決定される。例えば、21%の場合には主走査方向の参照画素数が5であるから2画素分だけオーバラップさせる。
図4には、ブロックの読み出し順序及びオーバラップの様子が模式的に示されている。ブロックB1、B2、B3、・・の順に画像メモリ100から読み出していく。各ブロックの主走査方向の幅はRAM104、106、108の容量に応じて決定され、副走査方向の幅は倍率に応じて決定される。ブロックB1とブロックB2は主走査方向にオーバラップし、ブロックB2とブロックB3も主走査方向にオーバラップする。オーバラップ領域はハッチングで示されている。図では示されていないが、ブロックは副走査方向にもオーバラップさせる。副走査方向に補間する場合においても、前のブロックの参照ラインを用いる必要があるからである。
このように、本実施形態では、3個のRAM104、106、108(RAM1〜3)を用い、副走査方向の補間を行う際に、参照ラインのうちの両端のラインを3個のRAMのうちの2個のRAMに格納し、参照ラインのうちの中間のラインを残りのRAMで順次加算していくことでラインメモリを不要化できる。したがって、処理すべき文書あるいは原稿のサイズが増大しても、処理すべきブロック数が増大するだけでメモリ容量を増大させる必要がない。
本実施形態では、3個のRAM104、106、108を設けて画像データを格納しているが、RAM104、106、108をそれぞれ2個ずつ設けたデュアルRAM構成とし、交互に画像データの書き込み及び読み出しを切り替えることで処理の高速化を図ってもよい。
図5には、この場合の構成が示されている。図1に示された構成と異なる点は、RAM104がRAM104a(RAM1)、104b(RAM1’)から構成され、RAM106がRAM106a(RAM2)、106b(RAM2’)から構成され、RAM108がRAM108a(RAM3)、108b(RAM3’)から構成されること、及びこれらのデュアルRAMへの入力と出力を切り替えるセレクタ(SEL)103、105が設けられる点である。以下、RAM104a、RAM106a、RAM108aをa系RAM、RAM104b、RAM106b、RAM108bをb系RAMと適宜称して説明する。
画像メモリ100に画像データを格納した後、入力セレクタ103、出力セレクタ105をa系RAMに切り替えて画像メモリ100から読み出した画像データをa系RAMに格納する。図2におけるS102〜S106の処理である。
次に、a系RAMに格納された画像データを読み出して図3におけるS107〜S109の処理を実行し、副走査方向及び主走査方向の補間演算を実行する。このとき、補間演算と並列して、入力セレクタ103をb系RAMに切り替えて画像メモリ100から読み出した次のブロックの画像データをb系RAMに格納する。図3におけるS110〜S111の処理である。b系RAMに画像データを格納した後、出力セレクタ105をb系RAMに切り替え、b系RAMに格納された画像データを読み出して図3におけるS107〜S109の処理を実行して当該次のブロックにおける副走査方向と主走査方向の補間演算を実行する。このとき、補間演算と並列して、入力セレクタ103を再びa系RAMに切り替え、画像メモリ100からさらに次のブロックの画像データを読み出してa系RAMに格納する。以後、順次a系RAMとb系RAMを交互に切り替えて処理する。
図6には、デュアルRAM構成のタイミングチャートが示されている。図において、「a」はa系RAMの画像データを示し、「b」はb系RAMの画像データを示す。まず、処理タイミングt1において入力セレクタ103、出力セレクタ105をa系RAM側に切り替え、a系RAMに画像データを書き込む。次に、処理タイミングt2においてa系RAMから画像データを読み出して副走査方向及び主走査方向の補間演算を行う。また、同処理タイミングt2において入力セレクタ103をb系RAM側に切り替え、画像メモリ100から読み出された次のブロックの画像データをb系RAMに書き込む。次に、処理タイミングt3において出力セレクタ105をb系RAMに切り替え、b系RAMから画像データを読み出して副走査方向及び主走査方向の補間演算を行う。また、同処理タイミングt3において入力セレクタ103をa系RAMに切り替え、a系RAMに次のブロックの画像データを書き込む。
このように、a系RAMとb系RAMを交互に切り替えることで、RAMへの画像データの書き込み処理とRAMからの画像データの読み出し処理及び補間演算処理を並列的に実行でき、トータルの処理時間を短縮することができる。
なお、ハードウェア構成としてはデュアルRAM構成とし、処理すべき文書サイズ(原稿サイズ)に応じてa系RAMのみを用いるか、あるいはa系RAMとb系RAMを交互に用いるかを装置側(コントローラ)で判断して切り替えてもよい。例えば、処理すべき文書サイズがA4以下である場合にはa系RAMのみを用い(セレクタ103、105をa系RAM側に固定)とし、文書サイズがA4を超える場合にはデュアルモードで動作する等である。
以上、本発明の実施形態について、投影法による濃度変換を例にとり説明したが、本発明はこれに限定されるものではなく、投影法以外の処理、例えば2点間補間法を用いた処理にも適用できる。
図7及び図8には、2点間補間法(2点間補間アルゴリズム)による補間処理が示されている。図7は倍率80%の場合、図8は倍率133%の場合の処理である。まず、図7において、倍率80%の逆数は1.25であり、2点間の配分をこの逆数に応じて定める。入力画素値をDIN0、DIN1、DIN2、DIN3、・・・とし、出力画素値をDOUT0、DOUT1、DOUT2、DOUT3、・・・とすると、DOUT0はDIN0とDOUT1から、
DOUT0=DIN0×(1−0)+DIN1×0=DIN0
となる。また、DOUT1はDIN1とDIN2から、
DOUT1=DIN1×(1−0.25)+DIN2×0.25
となる。また、DOUT2はDIN2とDIN3から、
DOUT2=DIN2×(1−0.5)+DIN3×0.5
となる。また、DOUT3はDIN3とDIN4から、
DOUT3=DIN3×(1−0.75)+DIN4×0.75
となる。さらに、DOUT4は、DIN5とDIN6から、
DOUT4=DIN5×(1−0)+DIN6=DIN5
となる。一方、図8において、倍率133%の逆数は0.75であり、2点間の配分をこの逆数に応じて定めると、DOUT0はDIN0から
DOUT0=DIN0
となる。また、DOUT1はDIN0とDIN1から、
DOUT1=DIN0×(1−0.75)+DIN1×0.75
となる。また、DOUT2は、DIN1とDIN2から、
DOUT2=DIN1×(1−0.5)+DIN2×0.5
となる。また、DOUT3はDIN2とDIN3から、
DOUT3=DIN2×(1−0.25)+DIN3×0.25
となる。また、DOUT4はDIN3とDIN4から、
DOUT4=DIN3×(1−0)+DIN4×0=DIN3
となる。また、DOUT5はDIN3とDIN4から、
DOUT5=DIN3×(1−0.75)+DIN4×0.75
となる。また、DOUT6はDIN4とDIN5から、
DOUT6=DIN4×(1−0.5)+DIN5×0.5
となる。以上のような処理を副走査方向及び主走査方向にそれぞれ行うことで、拡大・縮小処理時の出力画素値が決定される。
図9には、2点間補間法(副走査方向及び主走査方向にそれぞれ2点間補間)を用いる場合の構成ブロック図が示されている。図1と異なる点は、3個のRAMではなく、2個のRAM104(RAM1)、108(RAM3)が設けられている点である。もちろん、これは2点間補間法においては副走査方向における参照ラインが2本であることに対応したものである。
この場合の動作は図2、図3に示された動作と基本的には同様であり、まず、画像データを画像メモリ100に格納し(S101)、次に画像メモリ100から主走査方向にRAMの容量分だけの画像データを読み出してRAM104(RAM1)に格納する(S102)。
次に、画像メモリ100から副走査方向に1ライン下がって主走査方向にRAMの容量分だけの画像データを読み出してRAM108(RAM3)に格納する(S106)。RAM106が設けられていないためS104、S105の処理は不要である。
次に、RAM104、108から主走査方向に2画素分だけの画像データを読み出して副走査補間部112に供給する(S107)。このとき、主走査補間部114は主走査方向の倍率に応じたアドレス(Readアドレス)を生成してRAMからの読み出しを制御する。2点間補間法の場合、参照すべき画素は2画素であるが、どの2画素を参照すべきかは倍率に応じて変化するためアドレスの制御が必要である。例えば、倍率133%の場合、図8に示されるように、DOUT4及びDOUT5はともにDIN3とDIN4を参照画素として用いるため、アドレスの制御が必要となる。投影法の場合と同様に、装置のコントローラが倍率に応じてアドレスを指令してもよい。副走査補間部112では、上記のようにRAM104、108から読み出した画像データに対して演算し、順次主走査補間部114に供給する(S108)。主走査補間部114は、順次出力される2つの出力画像データに対して補間演算する(S109)。
以上の処理により、画像メモリ100内のあるブロックの処理が完了する。次のブロックを処理する際には、投影法と同様に前のブロックにおいて用いた画像データを再度用いるべく画像メモリの読み出し開始点を調整してオーバラップさせる。但し、オーバラップ量は倍率によらず1画素分である。
2点間補間法においても、投影法と同様にデュアルRAM構成として処理を高速化することが可能である。
図10には、2点補間法をデュアルRAM構成で処理する場合の構成ブロック図が示されている。RAM104はRAM104a、104bから構成され、RAM108はRAM108a、108bから構成される。RAM104a、104bへの画像データの書き込み、及びRAM108a、108への画像データの書込は入力セレクタ103で切り替えられる。RAM104a、104bからの画像データの読み出しと補間演算、及びRAM108a、108bからの画像データの読み出しと補間演算は出力セレクタ105で切り替えられる。すなわち、画像メモリのあるブロックの画像データをa系RAMに書き込む。そして、a系RAMからの画像データを読み出して副走査方向及び主走査方向で補間演算を行うタイミングで並列して次のブロックの画像データをb系RAMに書き込む。b系RAMに画像データを書き込んだ後、b系RAMから画像データを読み出して補間演算を行うタイミングで並列してさらに次のブロックの画像データをa系RAMに書き込む。以上の処理により、トータルの処理時間を短縮することができる。
上記の実施形態では、拡大あるいは縮小処理について説明したが、これ以外にもフィルタリング処理等、複数の参照ラインを用いて演算処理する任意の画像処理に適用することができる。
実施形態の投影法による構成ブロック図である。 実施形態の処理フローチャート(その1)である。 実施形態の処理フローチャート(その2)である。 画像メモリからのブロック単位の読み出し順序及びオーバラップ読み出しの説明図である。 他の実施形態(デュアルRAM)の構成ブロック図である。 図5の構成における動作説明図である。 2点補間法の説明図(倍率80%)である。 2点補間法の説明図(倍率133%)である。 実施形態の2点補間法による構成ブロック図である。 他の実施形態(デュアルRAM)の構成ブロック図である。 投影法による処理説明図である。 従来装置の構成ブロック図である。 従来装置の構成ブロック図である。 他の従来装置の構成ブロック図である。
符号の説明
100 画像メモリ、102 画像メモリアドレス制御部、104 第1RAM、106 第2RAM、108 第3RAM、110 加算器、112 副走査補間部、114 主走査補間部。

Claims (2)

  1. 画像を構成する複数ラインの画素を参照して前記画像を投影法により処理する画像処理装置であって、
    前記投影法による処理は、ユーザから指定された倍率による画像の拡大ないし縮小処理であり
    前記画像を構成する画像データを記憶する画像メモリと、
    参照すべきラインのうち最初のラインの画像データを格納する第1RAMと、
    参照すべきラインのうち中間のラインの画像データを格納する第2RAMと、
    参照すべきラインのうち最後のラインの画像データを格納する第3RAMと、
    前記画像メモリからの画像データの読み出しを制御する制御手段であって、前記最初のラインを構成する画像データのうち前記第1RAMの容量分だけの画像データを前記画像メモリから主走査方向に読み出して前記第1RAMに書き込み、前記画像メモリから副走査方向に1ラインだけ下がったラインにおいて前記第2RAMの容量分だけの画像データを前記画像メモリから主走査方向に読み出して前記第2RAMに既に格納されている画像データと加算して前記第2RAMに書き込む処理を前記倍率に応じた回数だけ繰り返することで前記中間のラインの画像データを前記第2RAMに書き込み、前記画像メモリから副走査方向に1ラインだけ下がったラインであって前記最後のラインに相当するラインにおいて前記第3RAMの容量分だけの画像データを前記画像メモリから主走査方向に読み出して前記第3RAMに書き込む制御手段と、
    前記第1RAM、前記第2RAM、及び前記第3RAMに格納された画像データを用いて前記倍率に応じた副走査方向の拡大ないし縮小処理を行う副走査方向演算手段と
    前記副走査方向演算手段により処理された画像データに対し、前記倍率に応じた主走査方向の拡大ないし縮小処理を行う主走査方向演算手段と、
    を有し、前記第1RAM、前記第2RAM、及び前記第3RAMの容量は等しく、かつ、いずれも1ライン分未満の容量を有することを特徴とする画像処理装置。
  2. 請求項1記載の装置において、
    前記制御手段は、前記副走査方向演算手段及び前記主走査方向演算手段で演算処理が完了した後、前記最初のラインを構成する画像データであって未だ読み出していない画像データのうち前記第1RAMの容量分だけの画像データを前記画像メモリから主走査方向に読み出して前記第1RAMに書き込み、前記画像メモリから副走査方向に1ラインだけ下がったラインであって未だ読み出していない画像データのうち前記第2RAMの容量分だけの画像データを前記画像メモリから主走査方向に読み出して前記第2RAMに既に格納されている画像データと加算して前記第2RAMに書き込む処理を前記倍率に応じた回数だけ繰り返し、前記画像メモリから副走査方向に1ラインだけ下がったラインであって前記最後のラインに相当するラインであって未だ読み出していない画像データのうち前記第3RAMの容量分だけの画像データを前記画像メモリから主走査方向に読み出して前記第3RAMに書き込み、かつ、前記画像メモリから読み出す際に、各ラインにおいて既に読み出した画像データと前記倍率に応じた画素数だけオーバラップするように読み出し開始点を調整して読み出すことを特徴とする画像処理装置。
JP2004233825A 2004-08-10 2004-08-10 画像処理装置 Expired - Fee Related JP4277764B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004233825A JP4277764B2 (ja) 2004-08-10 2004-08-10 画像処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004233825A JP4277764B2 (ja) 2004-08-10 2004-08-10 画像処理装置

Publications (2)

Publication Number Publication Date
JP2006054610A JP2006054610A (ja) 2006-02-23
JP4277764B2 true JP4277764B2 (ja) 2009-06-10

Family

ID=36031804

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004233825A Expired - Fee Related JP4277764B2 (ja) 2004-08-10 2004-08-10 画像処理装置

Country Status (1)

Country Link
JP (1) JP4277764B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5272977B2 (ja) * 2009-09-01 2013-08-28 株式会社リコー 制御装置、画像読取装置、画像形成装置、及び、画像読取装置の制御方法

Also Published As

Publication number Publication date
JP2006054610A (ja) 2006-02-23

Similar Documents

Publication Publication Date Title
US8169656B2 (en) Image processing devices and methods for resizing an original image therefor
US9531911B2 (en) Data processing apparatus, data processing method and storage medium for storing image data
EP1566764A2 (en) Method and apparatus for reduced size image
JP4100210B2 (ja) 画像処理装置
US8098960B2 (en) Image processing apparatus, computer readable medium storing program, image processing method, and computer data signal
JP4442392B2 (ja) 画像処理装置及び画像処理方法
JP4277764B2 (ja) 画像処理装置
US8902474B2 (en) Image processing apparatus, control method of the same, and program
US7480071B2 (en) Maximizing performance in a hardware image scaling module
JP2009004952A (ja) 画像処理装置及びプログラム
JP4815255B2 (ja) 画像処理方法及び画像処理装置
US20040201863A1 (en) Enhanced scaling range for standalone all-in-one devices
JP4775161B2 (ja) 画像処理装置、画像処理プログラム
JP4266512B2 (ja) データ処理装置
JP4746945B2 (ja) 解像度変換装置及び方法
JP2005269502A (ja) 画像処理装置および画像処理方法
JP2002300398A (ja) 画像処理装置
JP3785295B2 (ja) 画像処理装置
JP6128322B2 (ja) 画像読取装置
JPH09121278A (ja) 画像読取装置
JP2007311835A (ja) 画像処理装置およびその制御方法
JPH08125848A (ja) 画像処理装置
JP2005323009A (ja) 画像処理装置および画像処理方法
JPH01236867A (ja) 画素密度変換方法及び装置
JP2004096574A (ja) 画像処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070719

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081110

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081125

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090123

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090302

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120319

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130319

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130319

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140319

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees