(57)【特許請求の範囲】
【請求項１】
画像を変倍するための画像処理装置であって、
変倍率に応じて、変倍後の注目画素位置を毎画素演算し、前記注目画素近傍の元画像の画素位置である画素位置情報と、前記画素位置情報と前記注目画素との距離を表わす位相情報とを出力するアドレス演算処理手段と、
畳み込み演算の係数をＮ×Ｍ個求める係数演算処理手段と、
前記画素位置情報をもとに画像記憶部から元画像データをＮ×Ｍ個セットし、前記畳み込み演算の係数を用いて畳み込み演算を行う畳み込み演算処理手段とを備え、
前記係数演算処理手段は、前記位相情報をもとに、注目画素位置とＮ×Ｍ個の各画素位置との距離を求め、その距離に応じて各画素位置での係数を演算するように構成し、かつ変倍率に応じて算出される位相情報制御パラメータを用いて、前記注目画素位置とＮ×Ｍ個の各画素位置との距離の値を更新可能であることを特徴とする画像処理装置。
【請求項２】
前記位相情報制御パラメータは、変倍率の１次関数を用いて距離を生成されることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記アドレス演算処理手段は、アドレスの演算を行う際に、初期位相を足し込むための初期位相演算処理を行うことを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記係数演算処理手段は、ｓｉｎｃ関数の多項式近似式を用いて注目画素位置とＮ×Ｍ個の各画素位置との距離を求めることを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
前記係数演算処理手段は、前記位相情報に応じて、予め用意されている係数テーブルから係数を読み出して注目画素位置とＮ×Ｍ個の各画素位置との距離を求めることを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項６】
前記係数演算手段は、変倍率をＲＰ％、前記注目画素位置とＮ×Ｍ個の各画素位置のｉ列ｊ行の画素位置との距離の値をＡij、更新された距離をＡij’とするとき、
Ａij’＝Ａij／（１００／ＲＰ）
と距離を変更することを特徴とする請求項１乃至５のいずれか１項に記載の画像処理装置。
【請求項７】
前記係数演算手段は、変倍率をＲＰ％、前記注目画素位置とＮ×Ｍ個の各画素位置のｉ列ｊ行の画素位置との距離の倦をＡij、更新された距離をＡij’とするとき、
Ａij’＝Ａij／（１．５＋（１−ＲＰ／１００））
と距離を変更することを特徴とする請求項１乃至５のいずれか１項に記載の画像処理装置。
【請求項８】
前記畳み込み演算処理部は、主走査、副走査方向に独立に畳み込み演算を行うことを特徴とする請求項１乃至７のいずれか１項に記載の画像処理装置。
【請求項９】
前記畳み込み演算処理部は、主走査方向にＮ×１の畳み込み演算をＭライン分行い、Ｍ個の結果に対して副走査方向に１×Ｍの畳み込み演算を行うことを特徴とする請求項８に記載の画像処理装置。
【請求項１０】
前記畳み込み演算処理部は、副走査方向に１×Ｍの畳み込み演算をＮ画素分行い、Ｎ個の結果に対して主走査方向にＮ×１の畳み込み演算を行うことを特徴とする請求項８に記載の画像処理装置。
【請求項１１】
前記Ｍと前記Ｎはいずれも８であることを特徴とする請求項１乃至１０のいずれか１項に記載の画像処理装置。
【請求項１２】
画像を変倍するための画像処理方法であって、
変倍率を入力し、変倍後の注目画素位置を毎画素演算し、前記注目画素近傍の元画像の画素位置である画素位置情報と、前記画素位置情報と前記注目画素との距離を表わす位相情報とを出力し、
畳み込み演算の係数をＮ×Ｍ個求め、
前記画素位置情報をもとに画像記憶部から元画像データをＮ×Ｍ個セットし、前記畳み込み演算の係数を用いて畳み込み演算を行い、
前記畳み込み演算の係数は、前記位相情報をもとに求められた、注目画素位置とＮ×Ｍ個の各画素位置との距離に応じて各画素位置について演算され、前記注目画素位置とＮ×Ｍ個の各画素位置との距離の値は、変倍率に応じて算出される位相情報制御パラメータを用いて更新可能であることを特徴とする画像処理方法。
【請求項１３】
コンピュータにより画像を変倍するためのコンピュータプログラムを格納するコンピュータ可読の記憶媒体であって、前記プログラムは、変倍率を入力し、変倍後の注目画素位置を毎画素演算し、前記注目画素近傍の元画像の画素位置である画素位置情報と、前記画素位置情報と前記注目画素との距離を表わす位相情報とを出力し、
畳み込み演算の係数をＮ×Ｍ個求め、
前記画素位置情報をもとに画像記憶部から元画像データをＮ×Ｍ個セットし、前記畳み込み演算の係数を用いて畳み込み演算を行い、
前記畳み込み演算の係数は、前記位相情報をもとに求められた、注目画素位置とＮ×Ｍ個の各画素位置との距離に応じて各画素位置について演算され、前記注目画素位置とＮ×Ｍ個の各画素位置との距離の値は、変倍率に応じて算出される位相情報制御パラメータを用いて更新可能であることを特徴とするコンピュータ可読記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像を変倍する画像処理装置及び方法に関する。
【０００２】
【従来の技術】
画像を変倍する処理として、ニアレストネイバー法が知られている。これは、変倍後の注目画素に最も近い元の画像データの画素を選択する方法である（図１２参照）。なお図１２では、簡単のために１次元での図となっている。
【０００３】
また、双３次補間法などの処理もよく用いられている（図１３参照）。双３次補完法は、図１３における４×４画素を、変倍後の注目点１３０１（ｉ0，ｊ0）を中心として画像データから切り出し、ｓｉｎｃ補間の３次近似式を用いて以下のように計算する方法である。
【０００４】
【数１】
0003919430.tif 000002
【０００５】
ここで、ｆ（ｘ，ｙ）は、主走査方向の座標をｘ、副走査方向の座標をｙとした場合の画素値を表し、注目点（ｉ0，ｊ0）は、図１３において１≦ｉ0，ｊ0＜２となるように選ばれる。すなわち、４×４ブロックのほぼ中央が注目点となる。
【０００６】
【発明が解決しようとする課題】
このように従来用いられた方法では、次のような問題点があった。
【０００７】
ニアレストネイバー法は、最近傍の画素データを使用するだけであるため、モアレが発生したり、拡大であれば画素が荒く見えるなど画像の劣化がひどい。
【０００８】
双３次補間法は、画質はニアレストネイバー法に比較するとよいが、解像度を保つために縮小変倍時に周期性のある原稿、例えば印刷物原稿を読み取った画像を処理する際に、モアレ縞が発生し画質が劣化してしまうという問題がある。
【０００９】
本発明は上記従来例に鑑みて成されたもので、縮小変倍時のモアレ縞発生による画質劣化を防ぎ、拡大変倍時でも必要以上に解像度をおとさないような変倍処理を実現する画像処理装置及び方法を提供することを目的とする。
【００１０】
また、初期位相演算を付加することで、整数倍や整数分の１倍の変倍率時においても良好な画像が得られる画像処理装置及び方法を提供することを目的とする。
【００１１】
【課題を解決するための手段】
上記目的を達成するために、本発明は次のような構成からなる。すなわち、画像を変倍するための画像処理装置であって、変倍率に応じて、変倍後の注目画素位置を毎画素演算し、前記注目画素近傍の元画像の画素位置である画素位置情報と、前記画素位置情報と前記注目画素との距離を表わす位相情報とを出力するアドレス演算処理手段と、畳み込み演算の係数をＮ×Ｍ個求める係数演算処理手段と、前記画素位置情報をもとに画像記憶部から元画像データをＮ×Ｍ個セットし、前記畳み込み演算の係数を用いて畳み込み演算を行う畳み込み演算処理手段とを備え、前記係数演算処理手段は、前記位相情報をもとに、注目画素位置とＮ×Ｍ個の各画素位置との距離を求め、その距離に応じて各画素位置での係数を演算するように構成し、かつ変倍率に応じて算出される位相情報制御パラメータを用いて、前記注目画素位置とＮ×Ｍ個の各画素位置との距離の値を更新可能である。
【００１２】
さらに好ましくは、前記位相情報制御パラメータは、変倍率の１次関数を用いて距離を生成される。さらに好ましくは、前記アドレス演算処理手段は、アドレスの演算を行う際に、初期位相を足し込むための初期位相演算処理を行う。
【００１３】
さらに好ましくは、前記係数演算処理手段は、ｓｉｎｃ関数の多項式近似式を用いて注目画素位置とＮ×Ｍ個の各画素位置との距離を求める。
【００１４】
さらに好ましくは、前記係数演算処理手段は、前記位相情報に応じて、予め用意されている係数テーブルから係数を読み出して注目画素位置とＮ×Ｍ個の各画素位置との距離を求める。
【００１５】
さらに好ましくは、前記係数演算手段は、変倍率をＲＰ％、前記注目画素位置とＮ×Ｍ個の各画素位置のｉ列ｊ行の画素位置との距離の値をＡij、更新された距離をＡij’とするとき、
Ａij’＝Ａij／（１００／ＲＰ）
と距離を変更する。
【００１６】
さらに好ましくは、前記係数演算手段は、変倍率をＲＰ％、前記注目画素位置とＮ×Ｍ個の各画素位置のｉ列ｊ行の画素位置との距離の倦をＡij、更新された距離をＡij’とするとき、
Ａij’＝Ａij／（１．５＋（１−ＲＰ／１００））
と距離を変更する。
【００１７】
さらに好ましくは、前記畳み込み演算処理部は、主走査、副走査方向に独立に畳み込み演算を行う。
【００１８】
さらに好ましくは、前記畳み込み演算処理部は、主走査方向にＮ×１の畳み込み演算をＭライン分行い、Ｍ個の結果に対して副走査方向に１×Ｍの畳み込み演算を行う。
【００１９】
さらに好ましくは、前記畳み込み演算処理部は、副走査方向に１×Ｍの畳み込み演算をＮ画素分行い、Ｎ個の結果に対して主走査方向にＮ×１の畳み込み演算を行う。
【００２４】
【発明の実施の形態】
（第一の実施形態）
以下、好ましい実施形態として、複写機についての詳細な説明をする。なお、本発明はこの実施形態に限るものではない。
【００２５】
［装置概要説明］
図２に、本発明の実施形態としての複写機の外観図を示す。
【００２６】
２００は、原稿自動送り装置（以下ＤＦ）であり、複数枚の原稿を自動的に一枚ずつ給紙し、各原稿の表面および裏面を原稿台に順次セットすることができる。その具体的構成は既に公知であるため、詳細な説明は省略する。図２において、ＤＦ２００上には、読み取られるべき複数枚の原稿が置かれる。ＤＦ２００にセットされた原稿は、ＤＦ２００によって１枚ずつ給紙され原稿台２０１上に置かれる。２０２は例えばハロゲンランプから構成される原稿照明ランプで、原稿台ガラス２０１に載置された原稿を露光する。２０３、２０４、２０５は走査ミラーであり、図示しない光学走査ユニットに収容され、往復動しながら、原稿からの反射光をＣＣＤユニット２０６に導く。ＣＣＤユニット２０６はＣＣＤに原稿からの反射光を結像させる結像レンズ２０７、ＣＣＤから構成される撮像素子２０８、撮像素子２０８を駆動するＣＣＤドライバ２０９等から構成されている。撮像素子２０８からの画像信号出力は、例えば８ビットのデジタルデータに変換された後、コントローラ部２３９に入力される。また、２１０は感光ドラムであり、２１２の前露光ランプによって画像形成に備えて除電される。２１３は帯電器であり、感光ドラム２１０を一様に帯電させる。２１４は露光手段であり、例えば半導体レーザー等で構成され、画像処理や装置全体の制御を行うコントローラ部１３９で処理された画像データに基づいて感光ドラム２１０を露光し、静電潜像を形成する。２１５は現像器で黒色の現像剤（トナー）が収容されている。２１９は転写前帯電器であり、感光ドラム２１０上に現像されたトナー像を用紙に転写する前に高圧をかける。２２０、２２２、２２４は給紙ユニットであり、各給紙ローラ２２１、２２３、２２５の駆動により、転写用紙が装置内へ給送され、レジストローラ２２６の配設位置で一旦停止し、感光ドラム２１０に形成された画像との書き出しタイミングがとられ再給送される。２２７は転写帯電器であり、感光ドラム２１０に現像されたトナー像を給送される転写用紙に転写する。２２８は分離帯電器であり、転写動作の終了した転写用紙を感光ドラム２１０より分離する。転写されずに感光ドラム２１０上に残ったトナーはクリーナ２１１によって回収される。２２９は搬送ベルトで、転写プロセスの終了した転写用紙を定着器１３０に搬送し、例えば熱により定着される。２３１はフラッパであり、定着プロセスの終了した転写用紙の搬送パスを切換え、コピー終了して機外に排紙するか、または中間トレイ２３７の配置方向のいずれかに制御する。２３３〜２３６は給送ローラであり、一度定着プロセスの終了した転写用紙を中間トレイ２３７に反転（多重）または非反転（両面）して給送する。２３８は再給送ローラであり、中間トレイ２３７に載置された転写用紙を再度、レジストローラ２３６の配設位置まで搬送する。２３２はステープルソータであり、コピーされた用紙の丁合およびステープル綴じを行う。
【００２７】
２３９のコントローラ部には後述するマイクロコンピュータ、画像処理部等を備えており、操作パネル２９０からの指示に従って、前述の画像形成動作を行う。
【００２８】
［コントローラ部詳細説明］
図３は本発明の画像形成装置におけるコントローラ部２３９のブロック図である。
【００２９】
３０１は画像処理装置全体の制御を行うＣＰＵであり、装置本体の制御手順（制御プログラム）を記憶した読み取り専用メモリ３０３（ＲＯＭ）からプログラムを順次読み取り、実行する。ＣＰＵ３０１からは、ＣＰＵバス３０２を介して、各負荷に接続されている。また、３０４は入力データの記憶や作業用記憶領域等として用いる主記憶装置であるところのランダムアクセスメモリ（ＲＡＭ）である。３０５はＩ／Ｏインターフェースであり、操作者がキー入力を行い、装置の状態等を液晶、ＬＥＤを用いて表示する３１６の操作パネルや給紙系、搬送系、光学系の駆動を行うモーター類３０７、クラッチ類３０８、ソレノイド類３０９、また、搬送される用紙を検知するための紙検知センサ類３１０等の装置の各負荷に接続される。（さらに、現像器２１５には現像器内のトナー量を検知する３１１のトナー残検センサが配置されており、その出力信号がＩ／Ｏポート３０５に入力される。）３１５は高圧ユニットであり、ＣＰＵの指示に従って、前述の帯電器、現像器、転写前帯電器、転写帯電器、分離帯電器へ高圧を出力する。
【００３０】
３０６は画像処理部であり、ＣＣＤユニット２０６から出力された画像信号が入力され、後述する画像処理を行い、画像データに従って２１４のレーザーユニットの制御信号を出力する。レーザーユニット２１４から出力されるレーザー光は感光ドラム２１０を照射する。
【００３１】
［画像処理部］
図１は、本発明の特徴を最もよく表す図面であり、同ブロック図において、１０１は変倍率入力部、１０２はアドレス演算処理部、１０３は位相情報変更処理部、１０４は係数演算処理部、１０５は画像記憶部、１０６はデジタルフィルタ処理部である。これは、本実施例において、前述された画像処理部３０６の１機能として搭載される。
【００３２】
本発明は、画像の変倍に関するものであり、元画像を変倍率に応じて、変倍画像を出力する。本実施形態の複写機においては、出力される画像は、画像記憶部１０５に一時記憶されるように構成される。これは、ＲＡＭでもＨＤでもよい。また、処理する画像の全領域がスプールされるように構成してもよいし、画像の１部がスプールされるように構成されてもよい。以下のように動作する。
【００３３】
変倍率入力部１０１から変倍率が入力される。
【００３４】
位相情報変更部１０３は、変倍率を受け取り、変倍率に応じて位相情報制御パラメータを出力し、また、変倍率に応じて初期位相パラメータをアドレス演算処理部１０２に出力する。
【００３５】
アドレス演算処理部１０２は、変倍率と初期位相パラメータを受け取り、出力画像の画素位置を１画素毎に移動させてアドレス演算をする。具体的には、出力画像上の注目画素が元画像上のどの画素位置にあたるかを前記変倍率から演算し、位相情報を係数演算処理部１０４に、元画像の画素位置情報をフィルタ処理部に出力する。
【００３６】
係数演算処理部１０４は、位相情報と位相情報制御パラメータを入力し、注目画素の近傍に位置する元画像８×８画素それぞれと注目画素との距離を計算し、距離と位相情報制御パラメータに応じて、フィルタに用いるためのフィルタ係数を演算する。その後フィルタ処理部１０６に各画素の係数をセットする。
【００３７】
画像記憶部１０５には、処理する元画像が予め記憶されている。
【００３８】
フィルタ処理部１０６は、アドレス演算処理部からの画素位置情報をもとに、処理される元画像の８×８画素のデータを画像記憶部から取り出して、前記フィルタ係数をもとに畳み込み演算をし、多値画像を出力する。
【００３９】
本実施形態では、フィルタのサイズを８×８として説明をすすめるが、サイズは主走査、副走査で違ってもよいし、サイズも８に限るものではなく任意に設定することが可能である。
【００４０】
上記動作をより詳しく説明していく。説明の簡単化のため、位相情報制御パラメータ、初期位相パラメータ、変倍率などを主走査、副走査ともに同じであると仮定して説明をすすめるが、主、副独立に動作させるように構成することも容易に拡張可能であることはいうまでもない。
【００４１】
変倍率１０１から入力される変倍率が主操作方向、副操作方向とも５０％だとする。位相情報変更部１０３は、変倍率に応じて、例えば、以下のように位相情報制御パラメータを算出する。
【００４２】
ＬＣ＝１００／ＲＰＸ（ＲＰＹ）
ここで、ＬＣは、位相情報制御パラメータ、ＲＰＸ（ＲＰＹ）は、主走査（副走査）の変倍率である。変倍率は主副とも５０％なので、今回はＬＣ＝１００／５０＝２となる。ＬＣは、係数演算処理に出力され用いられる。これは後述する。
【００４３】
また、変倍率に応じて初期位相パラメータを算出する。例えば、整数分の１の変倍率の場合は、初期位相パラメータＩＸ（ＩＹ）を０．５とし、それ以外は０である、といったルールを本実施形態では用いる。これは後述する。今回は、１／２＝５０％ということで、ＩＸ＝ＩＹ＝０．５と設定される。１／３＝約３３％、１／４＝２５％の変倍率時も同様に設定される。
【００４４】
また、拡大変倍時に整数倍となる場合、例えば２００％、３００％などの場合に、
ＩＸ（ＩＹ）＝１００／ＲＰＸ（ＲＰＹ）／２
となるように設定する。
【００４５】
２００％時には、ＩＸ（ＩＹ）＝０．２５
３００％時には、ＩＸ（ＩＹ）＝約０．１６７
とする。初期位相パラメータの効果は、本実施形態の最後に説明する。ＩＸ，ＩＹは、アドレス演算処理部１０２に出力され用いられる。
【００４６】
アドレス演算処理部１０２は、変倍率ＲＰＸ（ＲＰＹ）＝５０、初期位相パラメータＩＸ（ＩＹ）＝０．５を受け取り、以下のように動作する。例えば、注目画素が主走査Ｘ＝５０画素目、副走査Ｙ＝１０画素目だとする。すると、注目画素が、元画像のどの座標に位置しているかは、以下のように演算できる。
【００４７】
Ｘｏ＝Ｘ／（ＲＰＸ／１００）＋ＩＸ
＝５０／（５０／１００）＋０．５＝１００．５
Ｙｏ＝Ｙ／（ＲＰＹ／１００）＋ＩＹ
＝１０／（５０／１００）＋０．５＝２０．５
ここで、初期位相パラメータは上記のようにアドレス演算時に足し込まれるように用いられる。
【００４８】
ここで、Ｘｏ，Ｙｏの小数部
ＰＩＸ＝０．５
ＰＩＹ＝０．５
を位相情報として係数演算処理部１０４に出力し、Ｘｏ，Ｙｏの整数部
ＯＸ＝１００
ＯＹ＝２０
を元画像の画素位置情報としてフィルタ処理部１０６に出力する。なお、本実施形態ではＸｏとＹｏの小数部が同じ値になるように構成されているため、初期位相パラメータを１パラメータとして説明を続ける。
【００４９】
現在の注目画素での処理が全て終わったら、注目画素を１画素移動してまた処理を続ける。
【００５０】
ＲＰＸ（ＲＰＹ）が５０の場合、常に５０／１００＝０．５で割ることになるため、常に小数部ＰＩＸは、初期位相ＩＸのまま変わらない。例えばＸ＝５１、Ｙ＝１０とＸだけ１画素更新した場合、Ｘｏ＝１０２．５（副走査に更新した場合も同じ話が成り立つので省略する）となり、やはりＰＩＸ＝０．５である。Ｘが１画素ずつ増えていっても常にＸｏが２ずつ増えてＰＩＸ＝０．５で変わらないことになる。
【００５１】
しかし、これは例外である。一般に、注目画素を１画素移動するたびにＰＩＸ（ＰＩＹ）の値は変化し、ＰＩＸ（ＰＩＹ）、の変化により補間演算で用いられるフィルタの係数の値も１画素毎に変化することになる。例えば、ＲＰ＝８０であったとすると、上述のとおり、初期位相Ｉは０として
Ｘ＝５０のとき、
Ｘｏ＝５０／（８０／１００）＋０＝６２．５でＰＩＸ＝０．５
Ｘ＝５１のとき、
Ｘｏ＝５１／（８０／１００）＋０＝６３．７５でＰＩＸ＝０．７５
Ｘ＝５２のとき、
Ｘｏ＝５２／（８０／１００）＋０＝６５．０でＰＩＸ＝０
のようにＸ（またはＹ）が更新されるとＰＩＸ（ＰＩＹ）の値も更新される。
【００５２】
ここでは、ＲＰＸ＝ＲＰＹ＝５０として説明を続ける。
【００５３】
本実施形態では、次の処理は、主走査方向に１画素移動して、Ｘ＝５１画素目、Ｙ＝１０画素目となる。複写機の原稿台の大きさと読み取り解像度、変倍率により、主走査、副走査の最大画素値は変わってくるが、今回主走査の最大画素値が５０００画素だとすると、本処理が主走査方向に０画素目から始まって４９９９画素目まで達すると、その次の処理は副走査方向に１画素進むことになる。今回の例では、Ｘ＝４９９９画素目、Ｙ＝１０画素目まで処理が進んだ場合、次の処理は、Ｘ＝０画素目、Ｙ＝１１画素目と副走査方向に注目画素位置が進められるように構成され副走査方向の最大値に達するまで処理が継続されることになる。
【００５４】
係数演算処理部は、前記位相情報制御パラメータＬＣと前記位相情報ＰＩＸを受け取り、以下のように動作する。
【００５５】
図４は、注目画素と注目画素近傍の元画像上の画素を表わした図であり、中央付近の×（バツ）マークが注目画素で、○（マル）マークが元画像上の画素を表わす。本実施形態では、８×８個のフィルタを用いるため、前記注目画素近傍の元画像上の画素を８×８個だけ用いることになる。また、注目画素×の位置（ｉ，ｊ）は、常に前記注目画素近傍の元画像上の画素の主走査方向および副走査方向それぞれの位置を０〜７で表した場合、
３≦ｉ＜４
３≦ｊ＜４
内にくるように設定される。また、アドレス演算処理で出力される前記元画像の画素位置情報ＯＸ，ＯＹは、ｉ＝３，ｊ＝３の位置となるように設定される。
【００５６】
ここで前記注目画素近傍の元画像上の画素と注目画素との距離を主走査、副走査独立に求める。まず図５のように主走査に着目する。ＡＸｉ（ｉは０から７の整数）をｉ番目の画素と注目画素との距灘とすると
ＡＸ０＝３＋ＰＩＸ
ＡＸ１＝２＋ＰＩＸ
ＡＸ２＝１＋ＰＩＸ
ＡＸ３＝ＰＩＸ
ＡＸ４＝１−ＰＩＸ
ＡＸ５＝２−ＰＩＸ
ＡＸ６＝３−ＰＩＸ
ＡＸ７＝４−ＰＩＸ
となる。１画素間の距離は１として計算を行っており、０≦ＰＩＸ（ＰＩＹ）＜１とする。
【００５７】
副走査方向にも同様に求められ、ＡＹ０〜ＡＹ７を算出する。
【００５８】
また、ＡＸ０〜ＡＸ７、ＡＹ０〜ＡＹ７の距離情報と位相情報制御パラメータＬＣから、主副独立に主走査ｉ番目の係数Ｃｉ、副走査ｊ番目の係数Ｃｊを求め、主走査ｉ番目、副走査ｊ番目の係数Ｃij＝Ｃｉ＊Ｃｊとして演算することになるが、本実施形態の効果を説明するために双３次補間法の説明を先に述べる。
【００５９】
ここで、フィルタの係数を求めるための演算式として、双３次補間法（bi-cubic法）としてよく知られているｓｉｎｃ関数の３次多項式近似式を用いる。ただし、フィルタの係数を求めるための一例であり、これに限るものではない。
【００６０】
双３次補間法は、係数ｃ、注目画素からの距離をｄとすると以下の式で表わされる。なおｄは距離なので負の値はとらない。
【００６１】
0003919430.tif 000003
図６は、この係数Ｃと距離ｄの関係を図示したものである。△は、本実施形態の距離情報ＡＸｉもしくはＡＹｊがどのように配置されるかを示したもので、ｉ（もしくはｊ）は△の添え字に対応していて０から７までの値をとる。距離ｄは、図５の画素×を原点にして、原点を中心に１目盛りが１の距離となるように描かれており、距離であるために原点よりも左にあっても正の値をとる。また△３の位置は原点からＰＩＸ（ＰＩＹ）の位置にあり、ＡＸ３（ＡＹ３）＝ＰＩとなる。また△間の距離は１である。よってＡＸ０は△０の位置にあり、ＡＸ０＝３＋ＰＩＸであることがわかる。図６に描かれた曲線は距離ｄに応じた係数ｃの値を示しており、ｉが２から５の場合、それぞれ係数が割り当てられ、０，１，６，７の場合、係数が０となることがわかる。
【００６２】
双３次補間法は常に４×４画素のフィルタしか用いられない。ｓｉｎｃ関数の周波数特性を図７に示す。双３次補間法で用いられる多項式近似式はｓｉｎｃ関数の近似であるため、図７とは多少周波数特性が異なるが、説明の簡単化のため図７と同等であるとして説明を進める。ｓｉｎｃ関数は、図７からわかるとおり帯域制限フィルタである。制限される帯域は、元画像の周波数の±１／２（ナイキスト周波数）を越える周波数帯である。一般にナイキスト周波数を超える周波数帯をもつ画像は解像できず、モアレの発生等により画質が劣化する。
【００６３】
例えば元画像が６００ｄｐｉであるとすると、３００ｄｐｉを越える周波数成分を０とすることになる。縮小変倍時にそのままこの演算式を用いた場合、元画像の周波数帯域をすべて保存することになる。縮小変倍時に元画像の周波数帯域を残すと、元画像に周期性のある画像が含まれているとモアレが発生し画質劣化の原因となる。例えば、５０％縮小変倍を行った場合、２００ｄｐｉのスクリーン画像が元画像に含まれていた場合、みかけの周波数が４００ｄｐｉであるような振る舞いをする。そのため、解像限界の３００ｄｐｉを越えてしまい、モアレ縞による画質劣化が起こる。
【００６４】
本発明では変倍率に応じて位相情報変更を行うことで、モアレ縞の低減を図り、画質の劣化を防ぐ。
【００６５】
本実施形態では、以下のようにする。
【００６６】
本来、ｄは注目画素からの距離であるので、ｄＸi＝ＡＸi（ｄＹj＝ＡＹj）となるが、前記位相制御パラメータＬＣを用いて以下のように変更する。
【００６７】
ｄＸi＝ＡＸi／ＬＣ    （ｄＹj＝ＡＹj／ＬＣ）
ＬＣは、変倍率に応じて変更される。例えば、上述したように、ＬＣ＝１００／ＲＰ（変倍率）とするとＬＣ＝２となる。
ＬＣ＝１の時
ｄ＝ＡＸ０＝３．５      Ｃｉ＝０
ｄ＝ＡＸ１＝２．５      Ｃｉ＝０
ｄ＝ＡＸ２＝１．５      Ｃｉ＝−０．１２５
ｄ＝ＡＸ３＝０．５      Ｃｉ＝０．６２５
ｄ＝ＡＸ４＝０．５      Ｃｉ＝０．６２５
ｄ＝ＡＸ５＝１．５      Ｃｉ＝−０．１２５
ｄ＝ＡＸ６＝２．５      Ｃｉ＝０
ｄ＝ＡＸ７＝３．５      Ｃｉ＝０
ＬＣ＝２の時は、
ｄ＝ＡＸ０＝３．５／２＝１．７５      Ｃｉ＝−０．０４７
ｄ＝ＡＸ１＝２．５／２＝１．２５      Ｃｉ＝−０．１４１
ｄ＝ＡＸ２＝１．５／２＝０．７５      Ｃｉ＝０．２９７
ｄ＝ＡＸ３＝０．５／２＝０．２５      Ｃｉ＝０．８９１
ｄ＝ＡＸ４＝０．５／２＝０．２５      Ｃｉ＝０．８９１
ｄ＝ＡＸ５＝１．５／２＝０．７５      Ｃｉ＝０．２９７
ｄ＝ＡＸ６＝２．５／２＝１．２５      Ｃｉ＝−０．１４１
ｄ＝ＡＸ７＝３．５／２＝１．７５      Ｃｉ＝−０．０４７
となる。説明の簡単化のため係数の小数点は第４位で四捨五入してある。
【００６８】
ここで重要なのは、ＬＣ＝１の時は、ｉが２から５までの真ん中の４つの係数しか用いていない（図６参照）が、ＬＣ＝２の時は、ｉが０から７まで全てに係数が割り当てられ、より低周波数の領域まで帯域制限されることである（図９参照）。
【００６９】
ＬＣ＝２の時のフィルタの周波数特性を模式的に図８に示す。実際の周波数特性としては、フィルタがｓｉｎｃ関数そのものではなく近似であること、有限個でうちきられていることのために、このようにきれいな矩形とはならないが、近い周波数特性になる。図８からわかるように、ナイキスト周波数の半分の帯域まで制限することになり、上述したようなモアレ縞の発生による画質劣化を低減することが可能になる。副走査も同様にしてＣｊを求める。
【００７０】
いままでは、１次元で説明してきたが、２次元での係数は、
Ｃij＝Ｃｉ＊Ｃｊ
として求め、フィルタ処理部１０６は、Ｃijが入力され、８×８のうちのアドレス（ｉ番目、ｊ番目）に対応した場所に係数をセットする。これを８×８個分の係数回だけセットすることでフィルタ演算を行う。
【００７１】
フィルタ処理部１０６は、アドレス演算処理部からの画素位置情報をもとに、処理される元画像の８×８画素のデータを画像記憶部から取り出して、前記フィルタ係数をもとに畳み込み演算をし、多値画像を出力する。
【００７２】
実際には、元画像の画素位置情報Ｘ，Ｙが、ｉ＝３，ｊ＝３にあたるため、元画像のＸ−３，Ｙ−３からＸ＋４，Ｙ＋４までの８×８画素のデータを取り出して畳み込み演算を行う。
【００７３】
拡大変倍時は、ＬＣ＝１と例えば固定する。ＬＣを１以下の値に設定することも可能だが、元画像のナイキスト周波数を越えるために有効でない。よって拡大変倍時は、例えばＬＣ＝１に固定することで元画像の解像度を保持したまま拡大処理を行う。
【００７４】
このように構成することにより、縮小変倍時では変倍率に応じて低周波数まで帯域制限することで必要以上の解像度の低下を防ぎながらモアレの発生を防ぎ、拡大時では、必要以上に解像度をおとさないような処理が可能となる。
【００７５】
位相情報変更手段は、本実施形態では、縮小変倍時位相情報制御パラメータＬＣ＝１００／ＲＰ拡大変倍時ＬＣ＝１として、距離ＡＸi（ＡＹj）＝ＡＸi（ＡＹj）／ＬＣと更新することで、フィルタ係数を変更するように説明をした。これは本発明の一実施形にすぎず、例えばフィルタ係数が変倍後の注目画素位置からの距離に依って係数が定められるように形成され、変倍率ＲＰに応じて、位相情報が変更されるように構成すればよい。ここでいう位相情報の変更は、フィルタ係数を定めるべき元画像上の各画素と求めるべき変倍後の注目画素位置との距離情報を変倍率ＲＰに応じて更新することで実施される。距離情報を更新するためのＬＣという設定値は、例えばＬＣ＝１．５＋（１−ＲＰ／１００）などのように１次式でＲＰの値に応じて連続的に変化するものが考えられる。また、１次式や連続的に変化するような構成に限らなくても距離情報が更新されるように構成すればよい。
【００７６】
また、初期位相ＩＸ（ＩＹ）は、本実施形態では、整数分の１倍となる縮小倍率時は０．５で、拡大変倍時が整数倍となる場合、ＩＸ（ＩＹ）＝１００／ＲＰ／２としている。
【００７７】
本実施形態のフィルタ係数の演算式がｓｉｎｃ関数の近似式であり、ＰＩＸ（ＰＩＹ）が０の場合、係数Ｃ３が１で他が全て０となってしまい、常に変倍後の注目画素位置にある元画像上の画像データがそのまま用いられ補間演算が行われないことになる。整数分の１倍、整数倍の変倍率では、変倍後の注目画素位置を移動させても、整数分の１倍の場合は常にこの状態で補間演算されず、整数倍の時は、２００％なら変倍後の注目画素の２画素に１個、３００％ならば３画素おきにこの状態があらわれ、フィルタ演算処理されるところとされないところが短い周期であらわれるため好ましくない画像となってしまう。これを防ぐために用いられる。
【００７８】
位相情報制御パラメータＬＣが１でなければ、以上述べたような極端なケースとはならないが、係数が０となる画素が短い周期でおきることが考えられるため、必要なことにはかわりない。
【００７９】
また、本実施形態で述べたような初期位相の設定は１例に過ぎず、変倍率に応じて変化させる構成となっていれば、これに限るものではない。
【００８０】
以上説明したように本実施形態によれば、位相情報変更部１０３をもつことにより、縮小変倍時のモアレ縞発生による画質劣化を防ぎ、拡大変倍時でも必要以上に解像度をおとさない構成の変倍処理を施すことが可能になる。また、初期位相演算を付加することで、整数倍や整数分の１倍の変倍率時においても良好な画像が得られる。
【００８１】
（第二の実施形態）
第一の実施形態と同様の複写機を例にあげ、第二の実施形態を説明していく。
【００８２】
図１０に第二の実施形態を最もよく表わす画像処理ブロック図であり、同ブロック図において、１０１は変倍率入力部、１０２はアドレス演算処理部、１０３は位相情報変更処理部、１０４は係数演算処理部、１０５は画像記憶部、１０７はＮｘ１フィルタ処理部、１０８は１×Ｍフィルタ処理部である。
【００８３】
本発明は、画像の変倍に関するものであり、元画像を変倍率に応じて、変倍画像を出力する。本実施形態の複写機においては、出力される画像は、画像記憶部１０５に一時記憶されるように構成される。これは、ＲＡＭでもＨＤでもよい。また、処理する画像の全領域がスプールされるように構成してもよいし、画像の１部がスプールされるように構成されてもよい。以下のように動作する。
【００８４】
変倍率入力部１０１から変倍率が入力される。
【００８５】
位相情報変更手段１０３は、前記変倍率を受け取り、変倍率に応じて位相情報制御パラメータを出力し、また、変倍率に応じて初期位相パラメータをアドレス演算処理部に出力する。
【００８６】
アドレス演算処理部１０２は、前記変倍率と初期位相パラメータを受け取り、出力画像の画素位置を１画素毎に移動させてアドレス演算をする。具体的には、出力画像上の注目画素が元画像上のどの画素位置にあたるかを前記変倍率から演算し、位相情報を係数演算処理部１０４に、元画像の画素位置情報をフィルタ処理部に出力する。
【００８７】
係数演算処理部１０４は、位相情報と位相情報制御パラメータを入力し、注目画素の近傍に位置する元画像８×８画素それぞれと注目画素との距離を主走査方向、副走査方向それぞれ独立に計算し、距離と位相情報制御パラメータに応じて、フィルタに用いるためのフィルタ係数を演算する。その後Ｎ×１フィルタ処理部１０７、１×Ｍフィルタ処理部１０８に各画素の係数をセットする。Ｎ×１フィルタ処理部１０７、１×Ｍフィルタ処理部１０８は、それぞれ、主走査方向のＮ×１画素の１次元フィルタ処理部、副走査方向の１×Ｍ画素の１次元フィルタ処理部である。
【００８８】
画像記憶部１０５は、処理する元画像が予め記憶されている。
【００８９】
Ｎ×１フィルタ処理部１０７は、アドレス演算処理部からの画素位置情報をもとに、処理される元画像のＮ×Ｍ画素のデータを画像記憶部から取り出して、主走査方向Ｎ画素×１ラインを１単位として、Ｍラインそれぞれについて、前記フィルタ係数をもとに畳み込み演算をする。前記Ｎ×１フィルタ処理部は、図１１（ａ）（ｂ）または（ｃ）のようにＭ個の出力がなされるように構成される。
【００９０】
図１１（ａ）では、Ｎ×１フィルタ演算処理部１１０１がＭ個並列に配置され、それぞれ１ラインからＭラインまでのＮ×１画素分の元画像データが供給される。また係数演算処理部１０４で設定されたＮ×１個の係数セットは、各Ｎ×１フィルタ演算処理部１１０１にセットされ、畳み込み演算を行い、各フィルタ演算処理１１０１で１つずつ出力があるのでＭ個の出力がある。ここでＮ×１個の係数セットは、各ラインで同じものが用いられる。また図１１（ｂ）の構成では、Ｍ−１個のＮ−１画素分のライン遅延手段をもち、Ｎ−１画素の画像データのセットが各１回ずつＮ×１フィルタ演算部に供給されるようにセレクタが制御する。Ｎ×１フィルタには、係数演算処理部１０４から係数がセットされ畳み込み演算を行い、Ｍ個の出力をする。また、図１１（ｃ）では、画像記憶部１０５からＮ×１画素分の画像データが１ラインからＭラインまでＭ回供給され、係数演算処理部１０４から係数がセットされ、畳み込み演算を行い、Ｍ個の出力をする。
【００９１】
いずれにせよ、Ｎ×１画素の画像データのセットが１からＭラインまで供給され、Ｍ個の出力がなされるようにＮ×１フィルタ処理部１０７は構成されればよい。
【００９２】
１×Ｍフィルタ処理郡は、前記Ｍ個の演算結果を、副走査方向に演算されたフィルタの係数を係数演算処理部１０４から受け取り、畳み込み演算を行い、多値出力をする。
【００９３】
このように構成することで本発明を主走査、副走査独立したフィルタ演算処理部として実施可能であり、さらに図１１（ｂ），（ｃ）のように構成すれば、演算処理部を減じてより簡単な構成にて実施することが可能である。
【００９４】
【他の実施形態】
なお、本発明は、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。
【００９５】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成される。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００９６】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００９７】
【発明の効果】
以上説明したように本発明によれば、位相情報変更手段をもつことにより、縮小変倍時のモアレ縞発生による画質劣化を防ぎ、拡大変倍時でも必要以上に解像度をおとさない構成の変倍処理を施すことが可能になる。また、初期位相演算を付加することで、整数倍や整数分の１倍の変倍率時においても良好な画像が得られる。
【図面の簡単な説明】
【図１】本発明をもっともよく表す画像処理のブロック図である。
【図２】実施形態１、２の説明で用いた複写機を説明した図である。
【図３】実施形態１、２の説明で用いた複写機のコントローラを説明した図である。
【図４】実施形態１の説明で用いた変倍画像の注目画素とその近傍の元画像上の画素を表わした図である。
【図５】実施形態１の説明で用いた主走査方向の変倍画像の注目画素とその近傍の元画像上の画素を表わした図である。
【図６】畳み込み演算で用いる係数とその係数を用いる元画像上の画素位置から注目画素位置からの距離の関係を表わした図である。
【図７】図６の係数のフィルタの解像力特性を示す図である。
【図８】図９の係数のフィルタの解像力特性を示す図である。
【図９】本発明の特徴である位相情報を更新した時の距離と係数の関係を示す図である。
【図１０】実施形態２を説明するためのブロック図である。
【図１１】Ｎ×１フィルタ処理部の実施形態を説明する図である。
【図１２】従来例であるニアレストネイバー法を説明する図である。
【図１３】従来例である双３次補間法を説明する図である。
【図１】
0003919430.tif 000004
【図２】
0003919430.tif 000005
【図３】
0003919430.tif 000006
【図４】
0003919430.tif 000007
【図５】
0003919430.tif 000008
【図６】
0003919430.tif 000009
【図７】
0003919430.tif 000010
【図８】
0003919430.tif 000011
【図９】
0003919430.tif 000012
【図１０】
0003919430.tif 000013
【図１１】
0003919430.tif 000014
【図１２】
0003919430.tif 000015
【図１３】
0003919430.tif 000016