JP3950647B2 - 画像処理装置及びその処理方法 - Google Patents

画像処理装置及びその処理方法 Download PDF

Info

Publication number
JP3950647B2
JP3950647B2 JP2001151523A JP2001151523A JP3950647B2 JP 3950647 B2 JP3950647 B2 JP 3950647B2 JP 2001151523 A JP2001151523 A JP 2001151523A JP 2001151523 A JP2001151523 A JP 2001151523A JP 3950647 B2 JP3950647 B2 JP 3950647B2
Authority
JP
Japan
Prior art keywords
scanning direction
filter
image
sub
main scanning
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
JP2001151523A
Other languages
English (en)
Other versions
JP2002344733A (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 JP2001151523A priority Critical patent/JP3950647B2/ja
Publication of JP2002344733A publication Critical patent/JP2002344733A/ja
Application granted granted Critical
Publication of JP3950647B2 publication Critical patent/JP3950647B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Image Processing (AREA)
  • Editing Of Facsimile Originals (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、入力画像データに変倍処理を施して出力する画像処理装置及びその処理方法に関する。
【0002】
【従来技術】
近年、画像を変倍する変倍処理として、変倍後の注目画素に最も近い元の画像データの画素を選択する「ニアレストネイバー法」が知られている。
【0003】
また、「双3次補間法」などの処理も良く用いられている。
【0004】
【発明が解決しようとする課題】
しかしながら、上述の「ニアレストネイバー法」は最近傍の画素データを使用するだけであるため、モアレの発生や拡大する際に画素が荒く見えるなど画像の劣化がひどいという問題がある。
【0005】
一方、「双3次補間法」は、「ニアレストネイバー法」に比べて画質は良いが、解像度を保つために縮小変倍時に周期性のある原稿、例えば印刷物原稿を読み取って画像処理する際に、モアレ縞が発生し、画質が劣化してしまうという問題がある。
【0006】
また、「双3次補間法」では、変倍後の各画素毎の位置に応じて、フィルタの係数を変更する必要があり、補間処理に時間を要したり、ハード化が困難であるという問題もある。
【0007】
本発明は、上記課題を解決するためになされたもので、より低周波数の領域まで帯域制限され、変倍時のモアレ縞発生による画質劣化を防いだ変倍処理を施すことことを目的とする。更に、フィルタ処理における複数のフィルタ係数を予め演算して記憶しておくことで、少ない演算量で変倍処理を行うことを目的とする。
【0008】
【課題を解決するための手段】
上記目的を達成するために、本発明は、入力画像データに変倍処理を施して出力する画像処理装置において、変倍処理の変倍率に応じて、変倍処理後の注目画素の位置と元画像の近傍画素との距離を示す位相情報を決定する決定手段と、前記決定手段において決定された位相情報と、前記変倍率に応じて連続的に変化する位相情報制御パラメータとに応じて、フィルタ処理における複数のフィルタ係数を予め演算して記憶しておく記憶手段と、前記記憶手段によって記憶された複数のフィルタ係数に基づき、入力画像データをフィルタ処理するフィルタ処理手段とを有し、前記位相情報に基づき、前記注目画素の元画像での位置と畳み込み演算に用いられる元画像の画素位置との距離を求め、該距離は前記位相情報制御パラメータで割ることによって変更され、該変更された距離を用いた補間法により、前記記憶手段によって記憶されるフィルタ係数は算出されることを特徴とする。
【0009】
また、上記目的を達成するために、本発明は、入力画像データに変倍処理を施して出力する画像処理装置の処理方法であって、変倍処理の変倍率に応じて、変倍処理後の注目画素の位置と元画像の近傍画素との距離を示す位相情報を決定する決定工程と、前記決定工程において決定された位相情報と、前記変倍率に応じて連続的に変化する位相情報制御パラメータとに応じて、フィルタ処理における複数のフィルタ係数を予め演算して記憶手段に記憶しておく記憶工程と、前記記憶工程において記憶された複数のフィルタ係数に基づき、入力画像データをフィルタ処理するフィルタ処理工程とを有し、前記位相情報に基づき、前記注目画素の元画像での位置と畳み込み演算に用いられる元画像の画素位置との距離を求め、該距離は前記位相情報制御パラメータで割ることによって変更され、該変更された距離を用いた補間法により、前記記憶工程において記憶されるフィルタ係数は算出されることを特徴とする。
【0010】
【発明の実施の形態】
以下、図面を参照しながら本発明に係る実施の形態を詳細に説明する。
【0011】
[画像制御装置(Image Controller Unit)]
図1は、本実施形態における画像制御装置の構成を示すブロック図である。図示するように、本画像制御装置100は画像入力デバイスの一例であるスキャナ200や画像出力デバイスの一例であるプリンタ300と接続する一方、LAN700や公衆回線(WAN)800と接続することで、画像情報やデバイス情報の入出力を行うためのコントローラである。
【0012】
画像制御装置100において、101はCPUであり、後述するROMに格納されているプログラムに従ってシステム全体を制御する。102はRAMであり、CPU101が処理を実行時に使用するシステムワークメモリや画像データを一時記憶するための画像メモリが定義されているメモリである。103はROMであり、システムのブートプログラムや各種処理プログラム或いは制御データが格納されている。104はハードディスクドライブ(HDD)であり、システムソフトウェア、画像データを格納する。106は操作部I/Fであり、160に示す操作部とのインターフェースとして機能すると共に操作部160に表示する画像データを操作部160に対して出力する。また、操作部160から使用者が入力した情報をCPU101に伝える役割をする。110はネットワークI/Fであり、ネットワーク(LAN)700に接続し、情報の入出力を行う。120はモデム(Modem)であり、公衆回線(WAN)800に接続し、情報の入出力を行う。以上のデバイスが107のシステムバス上に配置される。
【0013】
105は画像バス(Image Bus)I/Fであり、上述のシステムバス107と画像データを高速で転送する108に示す画像バスを接続し、データ構造を変換するバスブリッジである。画像バス108は、PCIバスなどの高速バスで構成される。そして、画像バス108上には以下のデバイスが配置される。
【0014】
150はラスターイメージプロセッサ(RIP)であり、不図示のパーソナルコンピュータ(パソコン)等から送られてくるページ記述言語(PDL)コードをビットマップイメージに展開する。600はデバイスI/Fであり、画像入出力装置であるスキャナ200やプリンタ300と画像制御装置100を接続し、画像データの同期系/非同期系の変換を行う。400はスキャナ画像処理部であり、入力画像データに対して、補正、加工、編集を行う。500はプリンタ画像処理部であり、プリント出力画像データに対して、文字のエッジを滑らかにするためのスムージング処理等を行う。130は画像変倍処理部であり、本実施形態の特徴的な処理モジュールであり、詳しい処理内容については後述する。140は画像圧縮部であり、多値画像データに対してJPEGの圧縮伸張処理を行い、2値画像画像データに対してはJBIG、MMR、MHの圧縮伸張処理を行う。
【0015】
また、上述のHDD104には、ネットワーク(LAN)700に接続されているノードに関する画像出力速度、設置位置などを示す情報がアドレス毎に保存されているものとする。
【0016】
[画像入力装置(スキャナ)]
図2は、本実施形態における画像入力装置を示す外観斜視図である。図示するように、画像入力装置としてのスキャナ200は、原稿となる紙上の画像を照明し、不図示のCCDラインセンサーを走査することで、ラスターイメージデータとしての電気信号に変換する。ここで、原稿用紙を原稿フィーダ201のトレイ202にセットし、使用者が操作部160から読み取り起動を指示することにより画像制御装置100のCPU101がデバイスI/F600を介してスキャナ200に起動指示を与え、スキャナ200のフィーダ201が原稿用紙を1枚ずつフィードし、原稿画像の読み取り動作を行う。
【0017】
[画像出力装置(プリンタ)]
図3は、本実施形態における画像出力装置を示す外観斜視図である。図示するように、画像出力装置としてのプリンタ300は、ラスターイメージデータを用紙上の画像に変換する部分であり、その方式には感光体ドラムや感光体ベルトを用いた電子写真方式、微少ノズルアレイからインクを吐出して用紙上に直接画像を印字するインクジェット方式等があるが、どの方式でも構わない。また、プリント動作の起動は、画像制御装置100のCPU101がデバイスI/F600を介して指示することにより開始される。プリンタ300には、異なる用紙サイズ又は異なる用紙向きを選択できるように複数の給紙段が備えられ、それぞれ対応した用紙カセット301、302、303、304がある。また、排紙トレイ305は印字し終わった用紙を受けるものである。
【0018】
[スキャナ画像処理部]
図4は、図1に示すスキャナ画像処理部400の構成を示す図である。同図において、401は画像バスI/Fコントローラであり、画像バス108と接続し、画像バス108へのアクセスシーケンスを制御する機能と、スキャナ画像処理部400内の各デバイスの制御及びタイミングを発生させる。402はフィルタ処理部であり、空間フィルタによってコンボリューション演算を行う。403は編集部であり、例えば入力画像データからマーカーペンで囲まれた閉領域を認識し、その閉領域内の画像データに対して影つけ、網掛け、ネガポジ反転等の画像加工処理を行う。405はテーブルであり、読み取った輝度データである画像データを濃度データに変換するためのテーブルである。406は2値化部であり、多値のグレースケール画像データを、例えば誤差拡散処理やスクリーン処理によって2値化する。
【0019】
尚、本実施形態では、2値画像、多値画像にかかわらず画像処理を施すことが可能で、2値画像にしたいときのみ、2値化部406で2値化処理を行う。多値画像データを扱う場合は、2値化部406は何も処理を施さず、多値画像データを出力することになる。特に、本実施形態の特徴である、画像変倍部130は、2値画像、多値画像どちらでも画質劣化の少ない変倍処理が可能である。スキャナ処理部から入力される多値画像データを2値画像データで扱う場合に必要となる2値化部406を本実施形態では記述するが、本発明が2値、多値にかかわらず有効であることは言うまでもない。
【0020】
上述の画像データに対する処理が施された画像データは、再び画像バスI/Fコントローラ401を介して画像バス108上に転送される。
【0021】
[プリンタ画像処理部]
図5は、図1に示すプリンタ画像処理部500の構成を示す図である。同図において、501は画像バスI/Fコントローラであり、画像バス108と接続し、画像バス108へのアクセスシーケンスを制御する機能と、プリンタ画像処理部500内の各デバイスの制御及びタイミングを発生させる。503はスムージング処理部であり、画像データのジャギー(斜め線等の白黒境界部に現れる画像のがさつき)を滑らかにする処理を行う。
【0022】
[画像変倍処理部]
図6は、図1に示す画像変倍処理部130の処理を説明するための簡単なブロック図である。同図において、601は画像入力部、602は画像変倍部、603はCPU、1104は画像記憶部、605は画像出力部である。それぞれ図1に記載されたブロックから、処理をわかりやすく説明するために抜き出して接続関係を表したものである。尚、画像入力部601には、送り先のデバイスとしてスキャナ200からデバイスI/F600経由で画像データが入力されても良いし、LAN700やWAN800経由でネットワークI/F110やモデム120から画像データが入力されても良いし、HDD104やRAM102などの記憶デバイスに記憶された画像データが入力されても良い。
【0023】
また、図6に示す画像変倍部602は図1に示した画像変倍処理部130に相当ものである。CPU603はCPU101に相当し、画像記憶部604はHDD104やRAM102などの画像を記憶するデバイスに相当し、画像変倍部602から読み書き可能であればどれでもよい。画像出力部605は画像記憶部604からの出力を表しており、プリントするのであれば、プリント画像処理部500に、また画像データを別の記憶デバイスに記憶するのであれば、HDD104やRAM102などの記憶デバイスに、或いはFAX送信やネットワーク経由などにより画像データを転送するのであれば、モデム120やネットワークI/F110にそれぞれ送出する。
【0024】
図6に示す構成において、画像入力部601から画像データが、CPU603から変倍率が画像変倍部602にそれぞれ入力される。尚、画像変倍部602は、変倍率とローパスフィルタの特性をそれぞれ独立に制御可能な変倍処理手段である。また、変倍率に応じて、求められるローパスフィルタの特性は変化する。一般に変倍率が小さくなると、より低い周波数での帯域制限が求められる。即ち、画像変倍部602はCPU603からの変倍率に応じたフィルタ係数を用いて変倍を行い、画像データとして画像を画像記憶部604に出力する。
【0025】
図7は、図6に示す画像変倍部602の詳細な構成を示すブロック図である。同図において、701は変倍率入力部であり、CPU603からの変倍率を入力する。702はアドレス演算処理部であり、変倍率入力部701からの変倍率と後述する位相情報変更処理部からの初期位相パラメータを受け取り、出力画像の画素位置を1画素毎に移動させてアドレス演算を行う。具体的には、出力画像上の注目画素が元画像上のどの画素位置に相当するかを変倍率から演算し、元画像上の近傍の画素から1画素以内のずれ分を位相情報として算出し、その位相情報を後述する係数設定処理部に出力し、元画像の画素位置情報に基づき画像記憶部604から元画像のN×M画素のデータを後述するN×1フィルタ処理部に読み出す。尚、画像記憶部604には、処理すべき元画像が予め記憶されているものとする。
【0026】
703は位相情報変更処理部であり、変倍率入力部701からの変倍率に応じて位相情報制御パラメータを後述する係数設定処理部に出力すると共にその変倍率に応じて初期位相パラメータをアドレス演算処理部702に出力する。704は係数設定処理部であり、位相情報変更処理部703からの位相情報制御パラメータを用いて位相の分割数分のN×1個のフィルタ係数と、1×M個のフィルタ係数とをそれぞれ変倍処理が始まる前に演算し、後述するN×1フィルタ処理部、1×Mフィルタ処理部の係数レジスタにそれぞれ全ての位相のフィルタ係数を記憶させる。
【0027】
705はN×1フィルタ処理部であり、係数設定処理部704から受け取ったフィルタ係数を内部の係数レジスタに記憶し、変倍処理中は、画像記憶部604から受け取った画像データに対して係数レジスタのフィルタ係数を用いてNx1の畳み込み演算を行う。706は1×Mフィルタ処理部であり、係数設定処理部704から受け取ったフィルタ係数を内部の係数レジスタに記憶し、変倍処理中はN×1フィルタ処理部705で正規化された中間データに対して係数レジスタのフィルタ係数を用いて1×Mの畳み込み演算を行う。
【0028】
尚、N×1フィルタ処理部705、1×Mフィルタ処理部706は、それぞれ、主走査方向のN×1画素の1次元フィルタ処理部、副走査方向の1×M画素の1次元フィルタ処理部である。ここで、N×1フィルタ処理部705は、図7に示すように、1×Mで用いるためのM個の中間データを出力するために、N×1画素の畳み込み演算処理部をM個持つように構成されている。M個のNx1畳み込み演算処理部に入力されるのは、注目画素位置近傍の主走査N画素、副走査Mラインの元画像データである。一般に、変倍処理後の注目画素が大体中心にくるように構成される。1×Mフィルタ処理部706は、1×M画素の畳み込み演算処理部を1個持つように構成され、上述のM個の中間データを畳み込み演算し、注目画素の出力データとして出力する。
【0029】
図7に示す構成において、N×1フィルタ処理部705は、アドレス演算処理部702からの画素位置情報に基づき、処理される元画像のN×M画素のデータを画像記憶部604から受け取り、主走査方向N画素×1ラインを1単位としてMラインそれぞれについて、各フィルタ係数に基づき畳み込み演算を行う。尚、N×1フィルタ処理部705は、M個の正規化された出力がなされるように構成されていれば、図7に示すようにN×1の畳み込み演算処理部がM個並列に配置され、それぞれ0ラインからM−1ラインまでのN×1画素分の元画像データを供給するように構成されていても良いし、図7に示す構成とは異なるが、N×1の畳み込み演算処理部は1つで、Mライン分のN×1データが順番に処理され、M個の出力がなされるように構成されていても良い。また、N×1個のフィルタ係数のセットは、各ラインで同じものが用いられる。
【0030】
次に、1×Mフィルタ処理部706は、N×1フィルタ処理部705から出力されたM個の演算結果と、副走査方向に演算されたフィルタ係数を係数設定処理部704から受け取り、畳み込み演算を行い、画像出力部605に多値出力する。
【0031】
尚、本実施形態では、まずN×1フィルタ処理部705で主走査方向の画素を処理し、その後、M×1フィルタ処理部706で副走査方向の画素を処理しているが、主走査方向と副走査方向の順番を逆にすることも可能である。その場合、1×MフィルタがN個の出力を行い、N×1が該N個の出力から1つの変倍後の画像データを出力すれば良い。
【0032】
また、本実施形態では、フィルタのサイズを8×8として説明をすすめるが、サイズは主走査、副走査で違っていても良いし、サイズも「8」に限るものではなく任意に設定することが可能である。
【0033】
次に、変倍処理部602による縮小変倍処理について、より詳細に説明する。ここでは、位相情報制御パラメータによる高画質な変倍処理が可能であることを説明し、フィルタ係数の求め方が複雑であることから、リアルタイムにこの処理を行うためのシステム構成と、具体的にどのように実現するかを続けて説明していく。
【0034】
まず、高画質な変倍処理が可能であることを説明するが、ここでは説明を簡単にするために、位相情報制御パラメータ、初期位相パラメータ、変倍率などが、主走査、副走査共に同じであると仮定して説明するが、主、副別のパラメータを用いて動作させるように構成することも容易に拡張可能であることは、言うまでもない。
【0035】
以下では、変倍率入力部701から入力される変倍率は、主、副共に50%とする。また、位相情報変更処理部703は変倍率に応じて、例えば次式のように位相情報制御パラメータLC(ローパス係数)を算出するものとする。
【0036】
LC=1.5+(100/RPX(RPY)−1)×0.5
ここで、RPX(RPY)は、主走査(副走査)方向の変倍率である。変倍率は主、副共に50%なので、今回はLC=2となる。
【0037】
LC(ローパス係数)は、ローパスフィルタの周波数特性を制御するために、係数設定処理部704に出力されて用いられる。本実施形態では、LCは上式に基づき変倍率に応じて変更されるが、この限りではないことは言うまでもない。変倍率に応じてLCを変更する際に、切り替わりが画像に影響しない程度に連続的に変化させるように設定すれば良い。LCをどのように用いるかについては、後述する。
【0038】
また、位相情報変更処理部703は変倍率に応じて初期位相パラメータを算出する。例えば、整数分の1の変倍率の場合は、初期位相パラメータIX(IY)を0.5とし、それ以外はゼロであるといったルールを本実施形態では用いる。このルールについては更に後述する。
【0039】
本実施形態では、変倍率が1/2=50%であるので、初期位相パラメータはIX=IY=0.5と設定される。また、1/3=約33%、1/4=25%の変倍率時も同様に設定される。
【0040】
また、拡大変倍時に整数倍となる場合、例えば200%、300%などの場合には、初期位相パラメータは次式によって設定される。
【0041】
IX(IY)=100/RPX(RPY)/2
具体的には、200%の場合には、IX(IY)=0.25、300%の場合には、IX(IY)=約0.167である。
【0042】
このように設定された初期位相パラメータIX、IYは、アドレス演算処理部702に出力されて用いられる。
【0043】
ここで、アドレス演算処理部702は、変倍率RPX(RPY)=50、初期位相パラメータIX(IY)=0.5を受け取り、次のように動作する。例えば、注目画素が主走査X=50画素目、副走査Y=10画素目の場合、注目画素が元画像のどの座標に位置しているかは、次式のように演算できる。
【0044】
Figure 0003950647
尚、初期位相パラメータは上述したようにアドレス演算時に足し込まれるように用いられる。
【0045】
ここで、Xo,Yoの小数部PIX=0.5 PIY=0.5(本実施形態では、XoとYoの小数部が同じ値になるように構成されているため、1つのパラメータで説明を続ける。)を初期位相パラメータとして係数設定処理部704に出力し、Xo,Yoの整数部OX=100,OY=20を元画像の画素位置情報としてN×1フィルタ処理部705に出力する。現在の注目画素での処理が全て終わると、注目画素を1画素移動して、更に処理を続ける。
【0046】
変倍率RPX(RPY)が50の場合、常に50/100=0.5で割ることになるため、常に小数部PIXは、初期位相IXのまま変わらない。例えば、X=51、Y=10とXだけ1画素更新した場合、Xo=102.5(副走査方向に更新した場合も同じ話が成り立つので省略する。)となり、やはり、PIX=0.5である。Xが1画素ずつ増えていっても常にXoが2ずつ増えてPIX=0.5で変わらないことになる。
【0047】
しかし、これは例外である。一般に、注目画素を1画素移動させる毎にPIX(PIY)の値は変化し、PIX(PIY)の変化により補間演算で用いられるフィルタ係数の値も1画素毎に変化することになる。例えば、変倍率RPが80であったとすると、上述したように、初期位相パラメータを0として、
Figure 0003950647
X(又はY)が更新されると、PIX(PIY)の値も更新される。
【0048】
ここでは、RPX=RPY=50として説明を続ける。
【0049】
本実施形態では、次の処理は主走査方向に1画素移動して、X=51画素目、Y=10画素目となる。複写機の原稿台の大きさと読取解像度、変倍率により、主走査、副走査の最大画素値は変化するが、ここでは主走査方向の最大画素値が5000画素とすると、本処理が主走査方向に0画素目から開始され、4999画素目まで達すると、その次の処理は副走査方向に1画素進むことになる。上述の例では、X=4999画素目、Y=10画素目まで処理が進むと、次の処理はX=0画素目、Y=11画素目と副走査方向に注目画素位置が進められるように構成され、副走査方向の最大値に達するまで処理が継続されることになる。
【0050】
次に、係数設定処理部704は、位相情報変更処理部703から位相情報制御パラメータLCを、アドレス演算処理部702から位相情報PIXを受け取り、以下のように動作する。
【0051】
図8は、注目画素と注目画素近傍の元画像上の画素を表した図である。図中、X(バツ)マークが注目画素で、○(マル)マークが元画像上の画素をそれぞれ示している。尚、本実施形態では、8×8個のフィルタを用いているため、注目画素近傍の元画像上の画素を8×8個だけ用いることになる。また、注目画素X(バツ)は、常に注目画素近傍の元画像上の画素の3≦i<4、3≦j<4内にくるように設定される。また、アドレス演算処理部702から出力される元画像の位置情報OX,OYはi=3、j=3の位置となるように設定される。
【0052】
ここで、注目画素近傍の元画像上の画素と注目画素との距離を主走査、副走査独立に求める。図9に示すように、主走査方向に投影して、主走査方向の距離に着目する。AXi(iは0から7の整数)をi番目の画素と注目画素との距離とすると、以下のようになる。
【0053】
AX0=3+PIX
AX1=2+PIX
AX2=1+PIX
AX3=PIX
AX4=1−PIX
AX5=2−PIX
AX6=3−PIX
AX7=4−PIX
尚、1画素間の距離は1として計算を行っており、0≦PIX(PIY)<1とする。副走査方向にも同様に求められ、AY0〜AY7を算出する。
【0054】
また、AX0〜AX7、AY0〜AY7の距離情報と位相情報制御パラメータLCから、主、副独立に主走査i番目の係数Ci、副走査j番目の係数Cjを求め、主走査i番目、副走査j番目の係数Cij=Ci*Cjとして演算することになるが、本実施形態の効果を説明するために双3次補間法を先に説明する。
【0055】
ここで、フィルタの係数を求めるための演算式として双3次補間法(bi-cubic法)としてよく知られているsinc関数の3次多項式近似式を用いる。但し、フィルタの係数を求めるための一例であり、これに限るものではない。
【0056】
双3次補間法は、係数C、注目画素からの距離をdとすると、以下の式により表される。
【0057】
Figure 0003950647
図10は、双3次補間法の係数Cと距離dとの関係を示す図である。図10に示す例では、本実施形態の距離情報AXi又はAYjがどのように配置されるかを△で示しており、i(又はj)は△についている数字に対応し、0から7までの値を示している。距離dは、図9に示すXを原点とし、原点を中心に1目盛りが1の距離となるように描かれており、距離であるために原点よりも左にあっても正の値をとる。具体的には、△3の位置は原点からPIの位置にあり、AX3(AY3)=PIとなる。また、△間の距離は1である。よって、AX0は△0の位置にあり、AX0=3+PIである。図10に描かれた曲線は距離dに応じた係数Cの値を示しており、iが2から5の場合、それぞれ係数が割り当てられ、0,1,6,7の場合、係数は0となる。即ち、双3次補間法では、常に4×4画素のフィルタが用いられている。
【0058】
図11は、sinc関数の周波数特性を示す図である。双3次補間法で用いられる多項式近似式は、sinc関数の近似であるため、図11に示す周波数特性とは多少異なるが、説明の簡略化のため、図11に示すものと同等であるとして説明する。sinc関数は、図11からもわかる通り、帯域制限フィルタである。制限される帯域は、元画像の周波数の±1/2(ナイキスト周波数)を越える周波数帯である。一般にナイキスト周波数を超える周波数帯をもつ画像は、解像できず、モアレの発生等により画質が劣化する。
【0059】
例えば、元画像が600dpiであるとすると、300dpiを越える周波数成分を0とすることになる。縮小変倍時に、そのままこの演算式を用いた場合、元画像の周波数帯域を全て保存することになる。縮小変倍時に、元画像の周波数帯域を残すと、元画像に周期性のある画像が含まれている場合、モアレが発生し、画質劣化の原因となる。例えば、50%縮小変倍を行った場合、200dpiのスクリーン画像又は200線の網点を用いた印刷物が元画像に含まれていると、みかけの周波数が400dpiであるような振る舞いをする。そのため、解像限界の300dpiを越えてしまい、モアレ縞による画質劣化が起こる。
【0060】
そこで、本実施形態では、変倍率に応じて位相情報変更を行うことで、上述のモアレ縞による画質劣化を防ぐものである。
【0061】
以下、変倍率に応じて位相情報を変更する本実施形態の処理を説明する。本来、距離dは注目画素からの距離であるので、dXi=AXi(dYj=AYj)となるが、位相制御パラメータLCを用いて次のように変更する。
【0062】
dXi=AXi/LC(dYj=AYj/LC)
LCは、変倍率に応じて変更される。例えば、上述したように、LC=100/RP(変倍率)とすると、LC=2となる。
【0063】
LC=1の時、
d=AX0=3.5 Ci=0
d=AX1=2.5 Ci=0
d=AX2=1.5 Ci=-0.125
d=AX3=0.5 Ci=0.625
d=AX4=0.5 Ci=0.625
d=AX5=1.5 Ci=-0.125
d=AX6=2.5 Ci=0
d=AX7=3.5 Ci=0
LC=2の時は、
d=AX0=3.5/2=1.75 Ci=-0.047
d=AX1=2.5/2=1.25 Ci=-0.141
d=AX2=1.5/2=0.75 Ci=0.297
d=AX3=0.5/2=0.25 Ci=0.891
d=AX4=0.5/2=0.25 Ci=0.891
d=AX5=1.5/2=0.75 Ci=0.297
d=AX6=2.5/2=1.25 Ci=-0.141
d=AX7=3.5/2=1.75 Ci=-0.047
となる。尚、説明の簡略化のため、係数の小数点は第4位で四捨五入している。ここで重要なことは、LC=1の場合、iが2から5までの真ん中の4つの係数しか用いていない(図10参照)が、LC=2の場合、iが0から7まで全てに係数が割り当てられ、より低周波数の領域まで帯域制限されることである。
【0064】
図12は、LC=2の場合の係数Cと距離dとの関係を示す図である。また、図13はLC=2の場合のフィルタの周波数特性を模式的に示す図である。尚、実際の周波数特性としては、フィルタがsinc関数そのものではなく近似であること、有限個で打ち切られていることのために、このようにきれいな矩形とはならないが、意図する周波数特性という意味では近い特性となっている。図13からもわかるように、ナイキスト周波数の半分の帯域まで制限することになり、上述したようなモアレ縞の発生による画質劣化を低減することが可能となる。
【0065】
また、副走査方向も上述した主走査方向と同様にしてCjを求め、結果として係数CijがCi*Cjとして演算される。
【0066】
ここで、複写機などでリアルタイムにこれらの演算を行うためには、距離dから係数Cを演算するいくつかの浮動小数点演算を行う必要があるが、ゲート数も増えてしまい好ましくない。
【0067】
そこで、本実施形態では、上述したような変倍処理をより簡単な演算、ハード構成、より小さい規模で実現している。即ち、係数は、位相情報制御パラメータと位相が決められた時点で決定できる。そのため、変倍率が指定され、位相情報制御パラメータを決めた時点で、取りうる位相値の全ての係数をCPUなどの汎用の演算処理手段により予め演算し、各位相に対応する係数レジスタに設定しておき、画像データが処理部に入力され始めたら、注目画素の位相情報に対応した係数を選択して設定し、畳み込み演算が行われるように構成することで、係数決定の複雑な演算をリアルタイムで行うような動作を回避し、リアルタイム演算を容易に実現するものである。
【0068】
係数を予め設定しておくためのレジスタの総数は、位相の個数×畳み込みする画素数分必要である。総数がハード化するに際して現実的な個数に収まるようにすることが必要である。畳み込みする画素数は8×8ならば、主、副共に8個、N×Mならば、主がN個、副がM個となる。位相の個数は、即ち、1画素当たりの分割数である。この分割数が少ないと、同じ位相になる範囲が広くなり、変倍処理の画質が劣化する。また多すぎると、レジスタの総数が増えてよりコストがかかる。
【0069】
本実施形態では、上述のような点に鑑みて、1画素32分割することで、画質とコストのバランスのとれた構成にしている。8×8で、32分割であるので、主、副共に8×32=256個のレジスタを予め用意しておく。変倍率が設定されると、LCの値を決定し、0から31まで1/32画素ずつずらした32個の位相の8×1又は1×8の係数を変倍処理で画像が処理され始める前に演算して設定しておくことになる。
【0070】
次に、位相情報制御パラメータLCが1.99で、位相の分割数が32の場合について説明する。尚、LCの値は説明をし易いように値を選んでいるが、この限りではない。
【0071】
以上、位相が0.5画素だった場合を説明したが、0.5画素=16/32となり、位相が16の場合と等価である。これを0から31まで繰り返し、即ち、1/32画素ずつ位相をずらしながら、それぞれの画素(ライン)と変倍後の注目画素位置である画素3からのずれ分である位相値との距離をLCで割ったものを(1)式の距離として、(1)式に基づき係数を求め、総和が1になるように正規化した後、1024倍して整数化したものが図14に示す図である。
【0072】
図14において、縦の軸は位相0から31を示しており、その時の係数を横に示している。位相0の時は、0画素目から7画素目まで、図14に示す位相0の欄を参照し、以下の係数になることがわかる。
【0073】
-63 -3 320 515 320 -3 -63 0
また、1番右の列は0画素目から7画素目までの係数の総和を示している。
【0074】
図14に示すように、例えば位相が5の場合の左から0番目とした時の1番目の係数は、−36である。これは、まず変倍後の注目画素位置、3から5/32画素右の位置から1番目の画素との距離を図15に示すように求める。
【0075】
ここで、2画素+5/32画素=69/32画素である。これを位相情報制御パラメータであるLC=1.99を用いて(1)式に用いる距離は、69/32/1.99=約1.084となる。(1)式で、距離dが1以上2未満なので、2番目の関係式を用いて、係数C=約−0.0703を得る。この演算を1番目以外、つまり、0番目から7番目までの係数において繰り返し、総和が1となるように正規化した後、1024倍すると−36が得られる。
【0076】
ここで、畳み込み演算時に、畳み込みの係数の総和で割ることで、畳み込みに用いる元画像の画素値が全て同じ輝度(又は濃度)レベルであった時に同じ輝度レベルが出力されるのを保証しておく必要がある。ハード規模を考えると任意の整数で割り算するよりもビットシフトによる割り算で2のべき乗で割り算するのが好ましい。本実施形態では、2の10乗、1024で正規化している。しかし、上述の演算では、整数化の際に生じる量子化誤差が発生し、1番右の列の総和をみると、1024とならないものがある。そこで、総和が1024にならない位相の係数については、以下のような操作を行う。
【0077】
即ち、位相が0〜15までは、0番目から7番目までの係数のうち、3番目の係数で総和が1024になるように調整する。1024から総和を引いたものを3番目に足し込む。位相が17から31の場合は、3番目よりも4番目のほうに近い位相であるので、4番目で同様の動作を行う。位相が16の場合、ちょうど中心になるので、1024から総和を引いたものを2で割った値を3番目、4番目に足し込む。また、位相が16の場合は、3番目と4番目、2番目と5番目といったように同じ係数が2つずつ対であるため、1024から総和を引いたものは常に偶数となり、上述した調整をすることで総和を1024に調整することが可能である。
【0078】
これは、調整を行っていない図14と調整を行った結果である図16とを比較することで確認できる。即ち、図14で位相16の場合、総和が1022となり、1024に2だけ足りない。そこで、3番目、4番目に2/2=1ずつ足しこむことで、量子化誤差を補正している。また、位相が16の場合、0と7、1と6、2と5、3と4が全て同じ距離となるため、常に同じ係数が算出されており、誤差がでる場合は常に偶数となる。N×1フィルタであれば、位相0から15はN/2番目の係数で調整し、位相17から31はN/2+1番目の係数で調整し、位相16はN/2及びN/2+1で調整することになる。1×Mフィルタでも同様である。この操作を施した係数を示したのが図16である。
【0079】
図16において、3番目、4番目の画素の係数で太文字で表したものが、調整対象画素である。
【0080】
以上説明した実施形態では、画像変倍部602をハードにより構成した場合を説明したが、ソフトウェアにより処理することも可能である。
【0081】
図17は、本実施形態における画像変倍部の処理手順を示すフローチャートである。まず、CPUにより位相情報制御パラメータLCを画像に変倍処理を施す前に決定し(ステップS101)、そのLCに基づき図16に示すように全ての位相における各画素(ライン)毎のフィルタ係数を変倍処理する前に予め演算し、N×1フィルタ処理モジュール、1×Mフィルタ処理モジュールがリアルタイムにアクセス可能なテーブルに予め記憶しておく(ステップS102)。その後、変倍処理中は変倍処理後の注目画素毎に出力される位相情報に応じて、フィルタ係数を変更しながらN×1フィルタ処理モジュールがN×1畳み込み演算を行い(ステップS103)、N×1畳み込み演算結果を正規化(ステップS104)後、Mライン分の中間データを出力し、1×Mフィルタ処理モジュールが、中間データを受け取り、設定されたフィルタ係数により1×M畳み込み演算を行い(ステップS105)、1×M畳み込み演算結果を正規化(ステップS106)後、変倍後の画像データとして出力する。
【0082】
このように構成することで、変倍処理中は、係数を求めるための複雑な演算を要さないために、リアルタイム化の容易な構成で、かつ高画質な変倍処理が実現できる。
【0083】
尚、本発明は複数の機器(例えば、ホストコンピュータ,インタフェイス機器,リーダ,プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機,ファクシミリ装置など)に適用してもよい。
【0084】
また、本発明の目的は前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(CPU若しくはMPU)が記憶媒体に格納されたプログラムコードを読み出して実行することによっても、達成されることは言うまでもない。
【0085】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0086】
プログラムコードを供給するための記憶媒体としては、例えばフロッピーディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,磁気テープ,不揮発性のメモリカード,ROMなどを用いることができる。
【0087】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0088】
更に、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0089】
【発明の効果】
以上説明したように、本発明によれば、より低周波数の領域まで帯域制限され、変倍時のモアレ縞発生による画質劣化を防いだ変倍処理を施すことが可能となり、フィルタ処理における複数のフィルタ係数を予め演算して記憶しておくことで、少ない演算量で変倍処理を行うことができる
【図面の簡単な説明】
【図1】本実施形態における画像制御装置の構成を示すブロック図である。
【図2】本実施形態における画像入力装置を示す外観斜視図である。
【図3】本実施形態における画像出力装置を示す外観斜視図である。
【図4】図1に示すスキャナ画像処理部400の構成を示す図である。
【図5】図1に示すプリンタ画像処理部500の構成を示す図である。
【図6】図1に示す2値画像変倍処理部130の処理を説明するための簡単なブロック図である。
【図7】図6に示す画像変倍部602の詳細な構成を示すブロック図である。
【図8】注目画素と注目画素近傍の元画像上の画素を表した図である。
【図9】主走査方向の距離を求める処理を説明するための図である。
【図10】双3次補間法の係数Cと距離dとの関係を示す図である。
【図11】sinc関数の周波数特性を示す図である。
【図12】LC=2の場合の係数Cと距離dとの関係を示す図である。
【図13】LC=2の場合のフィルタの周波数特性を模式的に示す図である。
【図14】総和の調整を行っていない場合の位相に対する係数を示す図である。
【図15】変倍後の注目画素位置3から5/32画素右の位置から1番目の画素との距離を求める処理を説明するための図である。
【図16】総和の調整を行った場合の位相に対する係数を示す図である。
【図17】本実施形態における画像変倍部の処理手順を示すフローチャートである。

Claims (11)

  1. 入力画像データに変倍処理を施して出力する画像処理装置において、
    変倍処理の変倍率に応じて、変倍処理後の注目画素の位置と元画像の近傍画素との距離を示す位相情報を決定する決定手段と、
    前記決定手段において決定された位相情報と、前記変倍率に応じて連続的に変化する位相情報制御パラメータとに応じて、フィルタ処理における複数のフィルタ係数を予め演算して記憶しておく記憶手段と、
    前記記憶手段によって記憶された複数のフィルタ係数に基づき、入力画像データをフィルタ処理するフィルタ処理手段とを有し、
    前記位相情報に基づき、前記注目画素の元画像での位置と畳み込み演算に用いられる元画像の画素位置との距離を求め、該距離は前記位相情報制御パラメータで割ることによって変更され、該変更された距離を用いた補間法により、前記記憶手段によって記憶されるフィルタ係数は算出されることを特徴とする画像処理装置。
  2. 前記記憶手段は、主走査、副走査独立にフィルタ係数を記憶しておき、
    前記フィルタ処理手段は、主走査方向のフィルタ係数に基づき、主走査方向の畳み込み演算を行い、副走査方向のフィルタ係数に基づき、前記畳み込み演算の結果に対して副走査方向の畳み込み演算を行うことを特徴とする請求項1に記載の画像処理装置。
  3. 前記記憶手段は、主走査、副走査独立にフィルタ係数を記憶しておき、
    前記フィルタ処理手段は、副走査方向のフィルタ係数に基づき、副走査方向の畳み込み演算を行い、主走査方向のフィルタ係数に基づき、前記畳み込み演算の結果に対して主走査方向の畳み込み演算を行うことを特徴とする請求項1に記載の画像処理装置。
  4. 前記主走査方向の畳み込み演算、前記副走査方向の畳み込み演算に用いられる元画像の画素位置と変倍後の注目画素の元画像における位置との距離を元画像の画素位置及び位相情報に基づき、主走査方向に投影した距離(dx)及び副走査方向に投影した距離(dy)としてそれぞれN個、M個ずつ各距離を求め、前記フィルタ処理の周波数特性を制御するためのフィルタ係数を主走査、副走査それぞれ1つずつ決定し(LCx、LCy)、
    dx/LCxをパラメータとする双3次補間法により主走査方向のフィルタ係数N個とdy/LCyをパラメータとする双3次補間法により副走査方向のフィルタ係数M個とを算出し、
    前記N個分の係数とM個分の係数とを位相分解数の組分予め演算し、記憶しておくことを特徴とする請求項2又は請求項3に記載の画像処理装置。
  5. 前記主走査及び副走査方向のフィルタ係数は共に8個であることを特徴とする請求項4に記載の画像処理装置。
  6. 前記位相分解数の組は32以下であることを特徴とする請求項4に記載の画像処理装置。
  7. 入力画像データに変倍処理を施して出力する画像処理装置の処理方法であって、
    変倍処理の変倍率に応じて、変倍処理後の注目画素の位置と元画像の近傍画素との距離を示す位相情報を決定する決定工程と、
    前記決定工程において決定された位相情報と、前記変倍率に応じて連続的に変化する位相情報制御パラメータとに応じて、フィルタ処理における複数のフィルタ係数を予め演算して記憶手段に記憶しておく記憶工程と、
    前記記憶工程において記憶された複数のフィルタ係数に基づき、入力画像データをフィルタ処理するフィルタ処理工程とを有し、
    前記位相情報に基づき、前記注目画素の元画像での位置と畳み込み演算に用いられる元画像の画素位置との距離を求め、該距離は前記位相情報制御パラメータで割ることによって変更され、該変更された距離を用いた補間法により、前記記憶工程において記憶されるフィルタ係数は算出されることを特徴とする画像処理装置の処理方法。
  8. 前記記憶工程は、主走査、副走査独立にフィルタ係数を記憶しておき、
    前記フィルタ処理工程は、主走査方向のフィルタ係数に基づき、主走査方向の畳み込み演算を行い、副走査方向のフィルタ係数に基づき、前記畳み込み演算の結果に対して副走査方向の畳み込み演算を行うことを特徴とする請求項7に記載の画像処理装置の処理方法。
  9. 前記記憶工程は、主走査、副走査独立にフィルタ係数を記憶しておき、
    前記フィルタ処理工程は、副走査方向のフィルタ係数に基づき、副走査方向の畳み込み演算を行い、主走査方向のフィルタ係数に基づき、前記畳み込み演算の結果に対して主走査方向の畳み込み演算を行うことを特徴とする請求項7に記載の画像処理装置の処理方法。
  10. コンピュータに、請求項7乃至請求項9の何れか1項に記載の画像処理装置の処理方法を実行させるためのプログラム。
  11. 請求項10に記載のプログラムを格納しコンピュータ読み取り可能な記憶媒体。
JP2001151523A 2001-05-21 2001-05-21 画像処理装置及びその処理方法 Expired - Fee Related JP3950647B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001151523A JP3950647B2 (ja) 2001-05-21 2001-05-21 画像処理装置及びその処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001151523A JP3950647B2 (ja) 2001-05-21 2001-05-21 画像処理装置及びその処理方法

Publications (2)

Publication Number Publication Date
JP2002344733A JP2002344733A (ja) 2002-11-29
JP3950647B2 true JP3950647B2 (ja) 2007-08-01

Family

ID=18996352

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001151523A Expired - Fee Related JP3950647B2 (ja) 2001-05-21 2001-05-21 画像処理装置及びその処理方法

Country Status (1)

Country Link
JP (1) JP3950647B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7471844B2 (en) * 2004-12-27 2008-12-30 Intel Corporation Method, apparatus and system for multi-feature programmable tap filter image processing
JP4830401B2 (ja) * 2005-08-24 2011-12-07 カシオ計算機株式会社 画像変換装置および画像変換方法
JP4550766B2 (ja) * 2006-04-28 2010-09-22 株式会社東芝 画像処理装置および画像処理方法
JP4840033B2 (ja) * 2006-08-31 2011-12-21 ブラザー工業株式会社 画像処理プログラムおよび画像処理装置

Also Published As

Publication number Publication date
JP2002344733A (ja) 2002-11-29

Similar Documents

Publication Publication Date Title
US7038818B2 (en) Method and apparatus for image processing method, and a computer product
JP3927776B2 (ja) 画像処理装置及びその処理方法
EP1542447B1 (en) Image data processing device, image data processing method, program, recording medium, and image reading device
JP2010109597A (ja) 画像処理装置および画像処理方法
JP5388559B2 (ja) 画像処理装置及び画像処理方法並びに画像処理方法を実行するプログラム及び記憶媒体
JP2007200170A (ja) 画像処理装置および画像処理プログラム
JP5383416B2 (ja) 画像処理装置及びその制御方法とプログラム
KR100350831B1 (ko) 화상 처리 장치, 화상 처리 방법 및 그 방법을 컴퓨터에 실행시키는 프로그램을 기록한 컴퓨터 판독 가능한 기록매체
JP3950647B2 (ja) 画像処理装置及びその処理方法
JP3912971B2 (ja) 画像処理装置および方法
JP3311549B2 (ja) 画像処理装置の変倍制御装置
JP2010278948A (ja) 画像処理装置
JP2005130379A (ja) 画像変倍方法とこの方法を実施する写真プリント装置
JP3063754B2 (ja) 画像デ―タ補間装置、画像デ―タ補間方法、画像デ―タ補間プログラムを記録した媒体
JPH07168938A (ja) デジタル複写機
JP3919430B2 (ja) 画像処理装置及び方法
JP2002281287A (ja) 画像処理システム、画像読取装置、画像処理装置、方法、コンピュータプログラム、及びコンピュータ読み取り可能な記憶媒体
JP2005269502A (ja) 画像処理装置および画像処理方法
JPH1098612A (ja) 画像処理装置と画像処理方法と画像形成装置
JP3785295B2 (ja) 画像処理装置
JP2004282239A (ja) 画像処理装置
JP2004096574A (ja) 画像処理装置
JP2003264700A (ja) 画像処理装置および画像処理方法
JP2002271615A (ja) 画像処理装置及び画像形成装置
WO2009082015A1 (en) Image processing apparatus, image processing method, and program and memory medium for executing image processing method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050818

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070110

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070309

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070423

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

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130427

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130427

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20140427

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees