(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-06-24
(45)【発行日】2024-07-02
(54)【発明の名称】画像処理装置、画像処理方法及びプログラム
(51)【国際特許分類】
H04N 1/405 20060101AFI20240625BHJP
G06T 5/30 20060101ALI20240625BHJP
G06T 5/10 20060101ALI20240625BHJP
【FI】
H04N1/405 512
G06T5/30
G06T5/10
(21)【出願番号】P 2020130117
(22)【出願日】2020-07-31
【審査請求日】2023-05-17
(73)【特許権者】
【識別番号】000001270
【氏名又は名称】コニカミノルタ株式会社
(74)【代理人】
【識別番号】100117651
【氏名又は名称】高垣 泰志
(72)【発明者】
【氏名】高橋 健一
(72)【発明者】
【氏名】内田 弥
【審査官】豊田 好一
(56)【参考文献】
【文献】特開2006-042367(JP,A)
【文献】特開2014-174803(JP,A)
【文献】特開2012-194030(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 1/40
G06T 5/30
G06T 5/10
(57)【特許請求の範囲】
【請求項1】
網点を含む入力画像を取得する画像取得手段と、
前記入力画像に基づいて前記入力画像の空間周波数成分を表した第1画像を生成する第1画像生成手段と、
前記第1画像を所定角度回転させた第2画像を生成する第2画像生成手段と、
前記第1画像と前記第2画像とを比較し、前記入力画像の空間周波数成分に対応するマスクデータを生成するマスクデータ生成手段と、
前記マスクデータに基づいて前記入力画像に対するマスク処理を行い、出力画像を生成する出力画像生成手段と、
を備えることを特徴とする画像処理装置。
【請求項2】
前記第2画像生成手段は、前記第1画像を時計回りに90度回転させることにより、前記第2画像を生成することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記第2画像生成手段は、前記第1画像を反時計回りに90度回転させることにより、前記第2画像を生成することを特徴とする請求項1に記載の画像処理装置。
【請求項4】
前記第1画像生成手段は、前記第1画像を生成するとき、所定の閾値に基づいて前記第1画像に対する2値化処理を行うことを特徴とする請求項1乃至3のいずれかに記載の画像処理装置。
【請求項5】
前記第1画像生成手段は、前記2値化処理を行うとき、前記第1画像における周波数座標軸の原点を中心とする所定範囲の領域を予め定められた値に置換することを特徴とする請求項4に記載の画像処理装置。
【請求項6】
前記マスクデータ生成手段は、前記第1画像と前記第2画像との論理演算を行うことにより前記マスクデータを生成することを特徴とする請求項1乃至
5のいずれかに記載の画像処理装置。
【請求項7】
前記マスクデータ生成手段は、前記第1画像と前記第2画像とを比較して得られるデータに対し、オープニング処理又はクロージング処理を行うことによって前記マスクデータを生成することを特徴とする請求項1乃至
6のいずれかに記載の画像処理装置。
【請求項8】
前記マスクデータ生成手段は、前記第1画像と前記第2画像とを比較して得られるデータに対し、膨張処理を行うことによって前記マスクデータを生成することを特徴とする請求項1乃至
7のいずれかに記載の画像処理装置。
【請求項9】
前記出力画像生成手段は、前記マスクデータと前記入力画像との論理演算を行うことにより前記出力画像を生成することを特徴とする請求項1乃至
8のいずれかに記載の画像処理装置。
【請求項10】
前記第1画像生成手段は、前記入力画像に対するフーリエ変換を行い、前記入力画像をパワースペクトル画像に変換することにより前記第1画像を生成することを特徴とする請求項1乃至
9のいずれかに記載の画像処理装置。
【請求項11】
前記出力画像生成手段は、前記マスクデータと、前記入力画像のフーリエ変換後データとの論理演算を行って得られるデータに基づいて逆フーリエ変換を行うことにより前記出力画像を生成することを特徴とする請求項
10に記載の画像処理装置。
【請求項12】
原稿の画像を読み取る画像読取手段、
を更に備え、
前記画像取得手段は、前記画像読取手段が原稿を読み取ることによって生成する画像を前記入力画像として取得することを特徴とする請求項1乃至
11のいずれかに記載の画像処理装置。
【請求項13】
前記画像読取手段が原稿の読み取りを行う際の読み取りモードに応じて、前記第1画像生成手段、前記第2画像生成手段、前記マスクデータ生成手段、及び、前記出力画像生成手段を動作させるか否かを切り替える制御手段、
を更に備えることを特徴とする請求項
12に記載の画像処理装置。
【請求項14】
前記制御手段は、前記読み取りモードが印刷原稿読み取りモード又はコピー原稿読み取りモードである場合、前記第1画像生成手段、前記第2画像生成手段、前記マスクデータ生成手段、及び、前記出力画像生成手段を動作させることを特徴とする請求項
13に記載の画像処理装置。
【請求項15】
前記画像取得手段は、前記入力画像を、縦方向及び横方向のサイズが等しい複数のブロック画像に分割し、
前記第1画像生成手段は、前記複数のブロック画像のそれぞれに基づいて前記第1画像を生成し、
前記出力画像生成手段は、前記複数のブロック画像のそれぞれから生成される複数の出力ブロック画像を合成することにより前記出力画像を生成することを特徴とする請求項1乃至
14のいずれかに記載の画像処理装置。
【請求項16】
前記画像取得手段は、前記入力画像の縦方向及び横方向のサイズが異なる場合、前記入力画像に対して縦方向及び横方向のいずれか一方に対する倍率変換処理を行うことにより、縦方向及び横方向のサイズが等しい処理対象画像を生成し、
前記第1画像生成手段は、前記処理対象画像に基づいて前記第1画像を生成し、
前記出力画像生成手段は、前記処理対象画像から生成される出力対象画像に対し、前記倍率変換処理の逆変換となる処理を行うことにより、前記出力画像を生成することを特徴とする請求項1乃至
14のいずれかに記載の画像処理装置。
【請求項17】
網点を含む入力画像を取得する第1ステップと、
前記入力画像に基づいて前記入力画像の空間周波数成分を表した第1画像を生成する第2ステップと、
前記第1画像を所定角度回転させた第2画像を生成する第3ステップと、
前記第1画像と前記第2画像とを比較し、前記入力画像の空間周波数成分に対応するマスクデータを生成する第4ステップと、
前記マスクデータに基づいて前記第1画像に対するマスク処理を行い、出力画像を生成する第5ステップと、
を有することを特徴とする画像処理方法。
【請求項18】
コンピュータに、
網点を含む入力画像を取得する第1ステップと、
前記入力画像に基づいて前記入力画像の空間周波数成分を表した第1画像を生成する第2ステップと、
前記第1画像を所定角度回転させた第2画像を生成する第3ステップと、
前記第1画像と前記第2画像とを比較し、前記入力画像の空間周波数成分に対応するマスクデータを生成する第4ステップと、
前記マスクデータに基づいて前記第1画像に対するマスク処理を行い、出力画像を生成する第5ステップと、
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置、画像処理方法及びプログラムに関し、特に網点を含む入力画像から網点の影響を低減した出力画像を生成する技術に関する。
【背景技術】
【0002】
MFP(Multifunction Peripherals)などの画像処理装置は、装置本体の上部に画像読取部を備えている。画像読取部は、ユーザーによってセットされる原稿の画像を光学的に読み取って画像データを生成する。この画像読取部で印刷原稿を読み取った場合、印刷ハーフトーニングで用いられる網点のスクリーン線数による周波数と、画像読取部のデジタル処理における周波数とが干渉し、読み取った画像にモアレが発生する。このモアレを低減するために、従来様々な手法が提案されている。
【0003】
例えば、特許文献1では、文字エッジ部のみを精度よく検出し、その検出結果を基に網点部と文字エッジ部に最適な処理を行う手法が提案されている。しかし、この従来技術では、網点の判別を行っていないため、文字を含む網点領域や網点が結合する階調に対して適切な処理を行うことができない。また、網点部を平滑化する際には、スクリーン線数やスクリーン角に合った平滑処理を行う必要があるが、網点の判別を行っていないため、スクリーン線数やスクリーン角に適した平滑処理を行うことができない。
【0004】
これに対し、次の特許文献2~4では、網点領域と文字領域との双方に対して適切な処理を行う手法が提案されている。
【0005】
例えば、特許文献2では、画像をウェーブレット変換することによって得られた複数の周波数帯域ごとに、複数の方向成分の係数に分割して文字領域と網点領域とを判別し、判別結果に応じて各係数に対する補正を行う手法が提案されている。
【0006】
また、特許文献3では、中心画素とその周辺画素の濃度変化に基づいて網点領域を検出すると共に、画像に対する直交変換を行って空間周
波数を判定し、網点領域に対して最適な平滑フィルタを選択する手法が提案されている。
【0007】
また、特許文献4では、入力画像の輝度分布に基づいて網点領域と文字領域とを判定すると共に、入力画像に対する直交変換を行って得られる周波数分布に基づいて網点領域と文字領域とを判定し、それら2つの判定結果に基づいてフィルタを選択し、直交変換後の周波数データに対してフィルタリングを行うことが提案されている。
【先行技術文献】
【特許文献】
【0008】
【文献】特開2003-101774号公報
【文献】特開2002-247368号公報
【文献】特開2001-111836号公報
【文献】特開2000-354162号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
しかし、特許文献2では、所定の周波数帯域におけるエッジ量とその連続性から文字領域であることを判定しているため、網点が重なった部分を連続エッジと認識し、文字領域と誤判定してしまうことがあり、画質を劣化させる要因となる。また、低いスクリーン線数から高いスクリーン線数までを正確に判定するためには、複数の周波数帯域及び複数の方向成分のそれぞれに対して演算を行う必要があり、演算量が増加することから、処理速度が低いという問題がある。
【0010】
また、特許文献3では、網点領域中の文字に対しても平滑処理がなされてしまうという問題がある。また、特許文献3では、網点領域を検出する処理と、空間周波数を判定する処理とを並列で行う必要があり、ハードウェアで実現する場合には回路規模が増大するという問題がある。
【0011】
更に、特許文献4では、入力画像に基づく領域判定処理と、周波数分布に基づく領域判定とを並列で行う必要があり、ハードウェアで実現する場合には回路規模が増大するという問題がある。また、周波数分布に基づいて領域を分離することから、演算量が増加し、処理速度が低いという問題がある。更に、特許文献4は、網点領域と文字領域のそれぞれの周波数成分に対応するフィルタを選択してフィルタリングを行うため、網点と文字とが混在する領域に対して適切な処理を行うことができないという問題もある。
【0012】
上記のように従来提案されている手法は、網点領域と文字領域とを判別する手段、網点領域の周波数を検出する手段、及び、平滑処理を行う手段とのそれぞれを個別に実装する必要があり、例えばハードウェア回路で実現する場合には複雑な回路構成となり、回路規模の増大化を招くことになる。また、近年のハードウェアプロセッサーの処理能力向上に伴い、上記3つの手段をソフトウェア的に実現する場合であっても、並列処理を伴うことから処理速度が低下してしまい、処理効率を向上させることが困難であるという問題がある。
【0013】
そこで、本発明は、上記問題を解決するためになされたものであり、従来のように文字領域と網点領域とを判別することなく、網点特有の周波数成分をピンポイントで減衰させることで文字等のエッジ部分が平滑化されてしまうことを最小限に抑えることを可能にし、更に処理効率の向上を図ることが可能な画像処理装置、画像処理方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0014】
上記目的を達成するため、請求項1に係る発明は、画像処理装置であって、網点を含む入力画像を取得する画像取得手段と、前記入力画像に基づいて前記入力画像の空間周波数成分を表した第1画像を生成する第1画像生成手段と、前記第1画像を所定角度回転させた第2画像を生成する第2画像生成手段と、前記第1画像と前記第2画像とを比較し、前記入力画像の空間周波数成分に対応するマスクデータを生成するマスクデータ生成手段と、前記マスクデータに基づいて前記入力画像に対するマスク処理を行い、出力画像を生成する出力画像生成手段と、を備えることを特徴とする構成である。
【0015】
請求項2に係る発明は、請求項1の画像処理装置において、前記第2画像生成手段は、前記第1画像を時計回りに90度回転させることにより、前記第2画像を生成することを特徴とする構成である。
【0016】
請求項3に係る発明は、請求項1の画像処理装置において、前記第2画像生成手段は、前記第1画像を反時計回りに90度回転させることにより、前記第2画像を生成することを特徴とする構成である。
【0017】
請求項4に係る発明は、請求項1乃至3のいずれかの画像処理装置において、前記第1画像生成手段は、前記第1画像を生成するとき、所定の閾値に基づいて前記第1画像に対する2値化処理を行うことを特徴とする構成である。
【0018】
請求項5に係る発明は、請求項4の画像処理装置において、前記第1画像生成手段は、前記2値化処理を行うとき、前記第1画像における周波数座標軸の原点を中心とする所定範囲の領域を予め定められた値に置換することを特徴とする構成である。
【0020】
請求項6に係る発明は、請求項1乃至5のいずれかの画像処理装置において、前記マスクデータ生成手段は、前記第1画像と前記第2画像との論理演算を行うことにより前記マスクデータを生成することを特徴とする構成である。
【0021】
請求項7に係る発明は、請求項1乃至6のいずれかの画像処理装置において、前記マスクデータ生成手段は、前記第1画像と前記第2画像とを比較して得られるデータに対し、オープニング処理又はクロージング処理を行うことによって前記マスクデータを生成することを特徴とする構成である。
【0022】
請求項8に係る発明は、請求項1乃至7のいずれかの画像処理装置において、前記マスクデータ生成手段は、前記第1画像と前記第2画像とを比較して得られるデータに対し、膨張処理を行うことによって前記マスクデータを生成することを特徴とする構成である。
【0023】
請求項9に係る発明は、請求項1乃至8のいずれかの画像処理装置において、前記出力画像生成手段は、前記マスクデータと前記入力画像との論理演算を行うことにより前記出力画像を生成することを特徴とする構成である。
【0024】
請求項10に係る発明は、請求項1乃至9のいずれかの画像処理装置において、前記第1画像生成手段は、前記入力画像に対するフーリエ変換を行い、前記入力画像をパワースペクトル画像に変換することにより前記第1画像を生成することを特徴とする構成である。
【0025】
請求項11に係る発明は、請求項10の画像処理装置において、前記出力画像生成手段は、前記マスクデータと、前記入力画像のフーリエ変換後データとの論理演算を行って得られるデータに基づいて逆フーリエ変換を行うことにより前記出力画像を生成することを特徴とする構成である。
【0026】
請求項12に係る発明は、請求項1乃至11のいずれかの画像処理装置において、原稿の画像を読み取る画像読取手段、を更に備え、前記画像取得手段は、前記画像読取手段が原稿を読み取ることによって生成する画像を前記入力画像として取得することを特徴とする構成である。
【0027】
請求項13に係る発明は、請求項12の画像処理装置において、前記画像読取手段が原稿の読み取りを行う際の読み取りモードに応じて、前記第1画像生成手段、前記第2画像生成手段、前記マスクデータ生成手段、及び、前記出力画像生成手段を動作させるか否かを切り替える制御手段、を更に備えることを特徴とする構成である。
【0028】
請求項14に係る発明は、請求項13の画像処理装置において、前記制御手段は、前記読み取りモードが印刷原稿読み取りモード又はコピー原稿読み取りモードである場合、前記第1画像生成手段、前記第2画像生成手段、前記マスクデータ生成手段、及び、前記出力画像生成手段を動作させることを特徴とする構成である。
【0029】
請求項15に係る発明は、請求項1乃至14のいずれかの画像処理装置において、前記画像取得手段は、前記入力画像を、縦方向及び横方向のサイズが等しい複数のブロック画像に分割し、前記第1画像生成手段は、前記複数のブロック画像のそれぞれに基づいて前記第1画像を生成し、前記出力画像生成手段は、前記複数のブロック画像のそれぞれから生成される複数の出力ブロック画像を合成することにより前記出力画像を生成することを特徴とする構成である。
【0030】
請求項16に係る発明は、請求項1乃至14のいずれかの画像処理装置において、前記画像取得手段は、前記入力画像の縦方向及び横方向のサイズが異なる場合、前記入力画像に対して縦方向及び横方向のいずれか一方に対する倍率変換処理を行うことにより、縦方向及び横方向のサイズが等しい処理対象画像を生成し、前記第1画像生成手段は、前記処理対象画像に基づいて前記第1画像を生成し、前記出力画像生成手段は、前記処理対象画像から生成される出力対象画像に対し、前記倍率変換処理の逆変換となる処理を行うことにより、前記出力画像を生成することを特徴とする構成である。
【0031】
請求項17に係る発明は、画像処理方法であって、網点を含む入力画像を取得する第1ステップと、前記入力画像に基づいて前記入力画像の空間周波数成分を表した第1画像を生成する第2ステップと、前記第1画像を所定角度回転させた第2画像を生成する第3ステップと、前記第1画像と前記第2画像とを比較し、前記入力画像の空間周波数成分に対応するマスクデータを生成する第4ステップと、前記マスクデータに基づいて前記第1画像に対するマスク処理を行い、出力画像を生成する第5ステップと、を有することを特徴とする構成である。
【0032】
請求項18に係る発明は、プログラムであって、コンピュータに、網点を含む入力画像を取得する第1ステップと、前記入力画像に基づいて前記入力画像の空間周波数成分を表した第1画像を生成する第2ステップと、前記第1画像を所定角度回転させた第2画像を生成する第3ステップと、前記第1画像と前記第2画像とを比較し、前記入力画像の空間周波数成分に対応するマスクデータを生成する第4ステップと、前記マスクデータに基づいて前記第1画像に対するマスク処理を行い、出力画像を生成する第5ステップと、を実行させることを特徴とする構成である。
【発明の効果】
【0033】
本発明によれば、従来のように文字領域と網点領域とを判別することなく、網点特有の周波数成分をピンポイントで減衰させることが可能であり、文字等のエッジ部分が平滑化されてしまうことを最小限に抑えることができる。また、本発明によれば、従来よりも処理効率を向上させることもできる。
【図面の簡単な説明】
【0034】
【
図2】画像処理装置の制御機構の一構成例を示すブロック図である。
【
図3】画像処理部のハードウェア構成の一例を示す図である。
【
図4】画像処理部における機能構成を例示するブロック図である。
【
図6】パワースペクトル画像の概念を示す図である。
【
図7】
図5の入力画像から生成されるパワースペクトル画像を示す図である。
【
図8】パワースペクトル画像から生成される第1画像を示す図である。
【
図9】第1画像から生成される第2画像を示す図である。
【
図11】
図7のパワースペクトル画像に対してマスク処理を施した例を示す図である。
【
図13】画像処理部において行われる画像処理シーケンスの一例を示すフローチャートである。
【
図14】2値化処理の詳細な処理手順の例を示す図である。
【
図15】マスクデータ生成処理の詳細な処理手順の例を示す図である。
【
図16】マスク処理の詳細な処理手順の例を示す図である。
【
図17】制御部によって行われる処理手順の一例を示すフローチャートである。
【
図18】第2実施形態における画像処理部の機能構成を例示するブロック図である。
【
図19】ブロック分割部による分割方法の例を示す図である。
【
図20】第3実施形態における画像処理部の機能構成を例示するブロック図である。
【
図21】倍率変換部による倍率変換の例を示す図である。
【発明を実施するための形態】
【0035】
以下、本発明に関する好ましい実施形態について図面を参照しつつ詳細に説明する。尚、以下に説明する実施形態において互いに共通する要素には同一符号を付しており、それらについての重複する説明は省略する。
【0036】
(第1実施形態)
図1は、本発明の一実施形態である画像処理装置1の一構成例を示す図である。この画像処理装置1は、スキャン機能、コピー機能及びプリント機能を備えるMFPとして構成され、スキャンジョブやコピージョブ、プリントジョブなどを実行する。
【0037】
画像処理装置1は、装置本体の上部にスキャナ部2を備えている。スキャナ部2は、ユーザーによってセットされる原稿の画像を光学的に読み取って画像データを生成する。スキャナ部2は、原稿の画像を読み取る画像読取部4と、画像読取部4による読み取り位置に原稿の自動搬送を行う原稿搬送部3とを備えている。例えば、原稿搬送部3に原稿がセットされた状態でスキャンジョブやコピージョブが実行されるとき、原稿搬送部3は、ユーザーによってセットされた原稿を1枚ずつ自動搬送する。画像読取部4は、原稿搬送部3による原稿の搬送動作と連動し、自動搬送される原稿が所定の読み取り位置を通過する際に原稿の画像を読み取る。
【0038】
また、画像処理装置1は、装置本体の下部にプリンタ部5を備えている。プリンタ部5は、その下部に複数の給紙カセット5aを備えており、給紙カセット5aに収容されている印刷用紙などのシートを1枚ずつ給紙してそのシートに画像形成を行い、上部の排紙トレイ5bに対して画像が印刷されたシートを排出する。
【0039】
また、画像処理装置1は、装置本体の正面側に、ユーザーが操作可能な操作パネル6を備えている。操作パネル6は、ユーザーが画像処理装置1を使用する際のユーザーインタフェースとなるものである。操作パネル6は、ユーザーが操作可能な各種の操作画面を表示し、ユーザーによる操作を受け付ける。例えば操作パネル6は、ユーザーによるジョブの設定操作やジョブの実行開始指示を受け付ける。操作パネル6がユーザーによるジョブの実行開始指示を受け付けると、画像処理装置1は、ユーザーによって指定されたジョブの実行を開始する。
【0040】
図2は、画像処理装置1の制御機構の一構成例を示すブロック図である。画像処理装置1は、上述したスキャナ部2、プリンタ部5及び操作パネル6に加え、画像メモリ7と、制御部8と、通信インタフェース9と、画像処理部10とを備えている。
【0041】
画像メモリ7は、ジョブの実行に伴って得られる画像データを記憶するメモリである。例えば、スキャンジョブやコピージョブの場合、画像メモリ7には、スキャナ部2によって生成される画像データが記憶される。
【0042】
制御部8は、画像処理装置1におけるジョブの実行を統括的に制御するものである。例えば、制御部8は、操作パネル6に表示する操作画面を制御し、ユーザーによる操作に基づいてジョブの設定を行う。また、制御部8は、スキャナ部2及びプリンタ部5の動作を制御することにより、ユーザーによって指定されたジョブの実行を制御する。
【0043】
例えば、ユーザーによってスキャンジョブの実行が指示された場合、制御部8は、スキャナ部2を動作させ、ユーザーによってセットされた原稿の読み取り動作を制御する。そして制御部8は、スキャナ部2から出力される画像データを画像メモリ7に保存する。また、制御部8は、必要に応じて、画像処理部10を動作させ、スキャナ部2から画像メモリ7に保存された画像データに対する画像処理を行わせる。
【0044】
通信インタフェース9は、画像処理装置1をLAN(Local Area Network)などのネットワークに接続し、外部装置と通信を行うためのインタフェースである。画像処理装置1は、この通信インタフェース9を介して、外部装置から送信されるプリントジョブを受信することができる。通信インタフェース9を介してプリントジョブを受信すると、制御部8は、プリンタ部5を動作させる。これにより、プリンタ部5は、印刷ジョブに基づいてシートに対する画像形成を行い、排紙トレイ5bに印刷されたシートを排出する。
【0045】
画像処理部10は、スキャナ部2によって生成された画像に網点が含まれる場合に、その画像から網点による影響を低減する画像処理を行うものであり、本発明における特徴的な画像処理機能を実現するものである。例えば、画像処理部10は、画像処理装置1においてスキャンジョブ又はコピージョブが行われるとき、制御部8において網点を平滑化させる必要があると判断された場合に機能し、スキャナ部2から画像メモリ7に保存された画像データを入力画像として取得し、その入力画像に対する画像処理を行って網点による影響を低減する。尚、以下の本実施形態では、画像処理部10がソフトウェア処理によって画像処理を行う例について説明する。
【0046】
図3は、画像処理部10のハードウェア構成の一例を示す図である。画像処理部10は、例えば、CPU11と、ROM12と、RAM13とを備えている。CPU11は、ROM12に予め記憶されているプログラム14を読み出して実行するハードウェアプロセッサーである。ROM12は、プログラム14を記憶する不揮発性の記憶デバイスである。ROM12に記憶されるプログラム14は、CPU11に、網点を含む入力画像から網点の影響を低減した出力画像を生成する画像処理を行わせるプログラムである。RAM13は、CPU11がプログラム14を実行することによって発生する一時的なデータや画像などを記憶するための揮発性の記憶デバイスである。
【0047】
上記のようなハードウェア構成を有する画像処理部10は、CPU11がプログラム14を実行することにより、網点を含む入力画像を取得し、入力画像に含まれる網点特有の周波数成分をピンポイントで減衰させる処理を行うことで文字等のエッジ部分が平滑化されてしまうことを最小限に抑える。以下、画像処理部10において行われる画像処理について詳しく説明する。
【0048】
図4は、画像処理部10における機能構成を例示するブロック図である。画像処理部10のCPU11は、プログラム14を実行することにより、画像取得部15、第1画像生成部20、第2画像生成部30、マスクデータ生成部40、及び、出力画像生成部50として機能する。画像処理部10は、これらを順に機能させることにより、入力画像から、網点による影響を低減させた出力画像を生成する。
【0049】
画像取得部15は、網点を含む入力画像D1を取得する処理部である。すなわち、画像取得部15は、スキャナ部2によって生成され、画像メモリ7に記憶された画像データを入力画像D1として取得する。
図5は、入力画像D1の一例を示す図である。
図5に示す入力画像D1は、網点を含む画像である。以下においては、
図5に示す入力画像D1に対する処理の例を説明する。
【0050】
画像取得部15は、画像メモリ7から入力画像D1を取得すると、その入力画像D1に基づく処理対象画像D2を第1画像生成部20へ出力する。このとき、画像取得部15は、入力画像D1をそのまま処理対象画像D2として第1画像生成部20へ出力しても良い。しかし、入力画像D1が、画素毎に、R(レッド),G(グリーン),B(ブルー)の3原色で表された画像データである場合、入力画像D1をそのまま処理対象画像D2として後段の第1画像生成部20へ出力してしまうと、第1画像生成部20以降においてR,B,Gの各色成分の3つの画像に対して同じ処理を行わなければならず、処理効率が低下する。
【0051】
そこで、入力画像D1がR,G,Bの3原色で表された画像データである場合、画像取得部15は、入力画像D1のRGB色空間をYCrCb色空間に変換し、Y(明度)成分のみで表現された1つの濃淡画像を処理対象画像D2として生成し、その1つの処理対象画像D2を第1画像生成部20へ出力することが好ましい。これにより、第1画像生成部20以降においては、1つの画像に対する処理を行えば良いため、処理効率を向上させることができる。
【0052】
第1画像生成部20は、画像取得部15から出力される処理対象画像D2に基づいて入力画像D1の空間周波数成分を表した第1画像を生成する。この第1画像生成部20は、フーリエ変換部21と、画像生成部22と、2値化処理部23とを備えており、これらが処理対象画像D2に対する処理を順次行うことで第1画像を生成する。
【0053】
フーリエ変換部21は、処理対象画像D2に対して離散フーリエ変換(DFT)を行う。これにより、処理対象画像D2が周波数データに変換される。フーリエ変換部21は、その周波数データを、フーリエ変換後データD3としてRAM13などに一時的に保存する。また、フーリエ変換部21は、フーリエ変換後データD3を画像生成部22へ出力する。
【0054】
画像生成部22は、フーリエ変換後データD3に基づき、入力画像D1の空間周波数成分を濃淡画像で表したパワースペクトル画像D4を生成する。
図6は、パワースペクトル画像の概念を示す図である。パワースペクトル画像は、横軸を水平方向周波数とし、縦軸を垂直方向周波数として、入力画像D1における各方向の周波数成分の大きさを輝度で表した画像である。このパワースペクトル画像では、中央の原点が入力画像D1のDC成分を表し、原点からの距離Rが離れるほど高い周波数成分を表している。
【0055】
図7は、
図5の入力画像D1から生成されるパワースペクトル画像D4を示す図である。一般に、入力画像D1に含まれる有効な画像要素(文字、図形、絵画等)は、網点に比べると低周波であるため、
図7に示すパワースペクトル画像D4のように、原点近傍の低周波領域における輝点として現れる。これに対し、入力画像D1に含まれる網点は、有効な画像要素よりも高周波であるため、
図7に示すパワースペクトル画像D4のように、原点から離れた高周波領域における輝点として現れる。
【0056】
画像生成部22は、フーリエ変換後データD3に基づいてパワースペクトル画像D4を生成すると、そのパワースペクトル画像D4を2値化処理部23へ出力する。
【0057】
2値化処理部23は、パワースペクトル画像D4を所定の閾値で2値化することにより、第1画像D5を生成する。例えば、2値化処理部23は、パワースペクトル画像D4において原点から所定距離Rの範囲内である中央の領域P1(
図6参照)を「0」の値に変換する。つまり、2値化処理部23は、有効な画像要素が存在する部分の周波数領域に対して後述するマスク処理が行われないようにするために、中央の領域P1を「0」に変換しておくのである。そして、2値化処理部23は、中央の領域P1よりも外側の領域に対して所定の閾値に基づく2値化処理を行う。これにより、2値化処理部23は、
図7に示すパワースペクトル画像D4から、
図8に示す2値画像を第1画像D5として生成することができる。尚、
図8では、階調値が「0」の画素を黒色で示しており、階調値が「1」の画素を白色で示している。
【0058】
2値化処理部23は、パワースペクトル画像D4を2値化して第1画像D5を生成すると、その第1画像D5を、第2画像生成部30及びマスクデータ生成部40のそれぞれに出力する。
【0059】
第2画像生成部30は、第1画像D5から第2画像D6を生成する。上述したように、入力画像D1をパワースペクトル画像D4に変換すると、入力画像D1に含まれる網点は、上述したように有効な画像要素が存在する中央の領域P1よりも外側の領域において輝点として現れる。この網点による輝点は、パワースペクトル画像D4を90度回転させた場合であっても同じ位置に現れるという特性がある。つまり、元のパワースペクトル画像と、90度回転させたパワースペクトル画像とを重ね合わせたとき、中央の領域P1よりも外側の領域において輝点が重なる周波数成分があれば、その重なった周波数成分が網点の周波数成分であるということになる。そこで、第2画像生成部30は、第1画像D5を回転させて第2画像D6を生成する画像回転部31を備えている。
【0060】
画像回転部31は、第1画像D5を所定角度回転させることにより第2画像D6を生成する。上述のようにパワースペクトル画像に現れる網点による輝点は、90度回転させても同じ位置に現れる。そのため、画像回転部31は、第1画像D5を90度回転させることにより第2画像D6を生成する。第1画像D5を回転させる方向は、時計回りであっても良いし、反時計回りであっても良い。すなわち、画像回転部31は、第1画像D5を時計回り又は反時計回りに90度回転させることにより、第2画像D6を生成する。ただし、画像回転部31が第1画像D5を回転させる回転角度は、必ずしも90度でなくても構わない。例えば、画像回転部31は、第1画像D5を時計回り又は反時計回りに270度回転させることにより、同様の第2画像D6を生成することが可能である。そして第2画像生成部30は、画像回転部31によって生成される第2画像D6をマスクデータ生成部40へ出力する。
【0061】
図9は、
図8に示す第1画像D5を反時計回りに90度回転させることによって生成される第2画像D6を示す図である。このように第2画像D6は、第1画像D5を回転させることによって生成される。そして第1画像D5と第2画像D6との2つの画像が、マスクデータ生成部40へ出力される。
【0062】
マスクデータ生成部40は、第1画像D5と第2画像D6とを比較することにより、入力画像D1に含まれる網点の周波数成分に対応するマスクデータを生成する。このマスクデータ生成部40は、画像比較部41と、マスク調整部42とを備えている。
【0063】
画像比較部41は、第1画像D5と第2画像D6とを比較し、マスクデータの元となる中間データを生成する。例えば、画像比較部41は、第1画像D5と第2画像D6との間で画素毎の論理籍演算を行うことで、マスクデータの元となる中間データを生成する。第1画像D5及び第2画像D6は共に画素毎の階調値が「0」又は「1」に2値化されている。そのため、画素毎の論理積演算を行うことで、画像比較部41は、第1画像D5における輝点(階調値「1」の点)と第2画像D6における輝点(階調値「1」の点)とが重なった部分だけを抽出した中間データを生成する。そして画像比較部41は、その中間データをマスク調整部42へ出力する。
【0064】
マスク調整部42は、画像比較部41から出力される中間データからマスクデータD7を生成する。マスク調整部42は、例えば中間データに対してオープニング処理を施すことにより、中間データに含まれるノイズを除去する処理を行う。オープニング処理は、例えば中間データに対し、収縮処理(erosion)を行った後に、膨張処理(dilation)を行う処理である。
【0065】
また、マスク調整部42は、例えば中間データに対してクロージング処理を施すことにより、網点に対応する輝点の内側にある小さな黒点を埋める処理を行う。クロージング処理は、例えば中間データに対し、膨張処理(dilation)を行った後に収縮処理(erosion)を行う処理である。
【0066】
マスク調整部42は、中間データに対し、オープニング処理とクロージング処理との双方を行うようにしても良いし、いずれか一方のみを行うようにしても良い。また、マスク調整部42は、中間データにノイズが少なく、且つ、網点に対応する輝点の内側に小さな黒点が存在しない場合には、オープニング処理及びクロージン処理を省略しても構わない。
【0067】
そして、マスク調整部42は、中間データに対し、膨張処理(dilation)を行い、中間データにおける網点に対応する輝点のサイズを所定割合大きいサイズに変換することにより、マスクデータD7を生成する。
【0068】
図10は、マスク調整部42によって生成されるマスクデータD7を示す図である。
図10に示すように、マスクデータD7は、入力画像D1に含まれる網点の周波数成分を塗り潰すことができるデータとして生成される。マスクデータ生成部40は、
図10に示すようなマスクデータD7を生成すると、そのマスクデータD7を出力画像生成部50へ出力する。
【0069】
出力画像生成部50は、マスクデータD7に基づいて入力画像D1に対するマスク処理を行い、網点の影響を低減させた出力画像D9を生成する。この出力画像生成部50は、マスク処理部51と、逆フーリエ変換部52とを備えている。
【0070】
マスク処理部51は、マスクデータD7に基づいて入力画像D1に対するマスク処理を行う。例えば、マスク処理部51は、
図11に示すように、マスクデータD7に基づき、網点の周波数成分に対応する部分を黒く塗り潰すことにより、網点の周波数成分を減衰させる処理を行う。尚、
図11は、
図7のパワースペクトル画像D4に対してマスク処理を施した例を示している。
【0071】
例えば、マスク処理部51は、マスクデータD7の白黒を反転させたデータ(マスクデータD7の「0」と「1」とを入れ替えたマスクデータ)を生成する。これにより、
図10に示したマスクデータD7は、白黒が反転した画像となる。そしてマスク処理部51は、その白黒を反転させたマスクデータと、入力画像D1(より厳密には、入力画像D1の周波数データ)との論理演算を行うことにより、マスク処理後データを生成する。より、具体的に説明すると、マスク処理部51は、フーリエ変換部21によって生成されたフーリエ変換後データD3をRAM13から読み出し、白黒を反転させたマスクデータにおける各周波成分の値と、フーリエ変換後データにおける各周波成分の値との論理積を演算することでマスク処理後データD8を生成する。マスクデータにおける黒が「0」であり、白が「1」であることから、論理積演算によって網点の周波数成分が0となるのに対し、網点以外の周波数成分をそのまま残すことができる。そのため、このマスク処理によって網点の周波数成分をピンポイントで減衰させることができる。
【0072】
またこの他にも、例えば、マスク処理部51は、白黒を反転させたマスクデータにおいて値が「0」である座標に相当するフーリエ変換後データD3の実数部及び虚数部の値を「0」に置換しても良いし、また係数Mを用いて実数部及び虚数部との論理積を演算することにより、網点の周波数成分を減衰させたマスク処理後データD8を生成するようにしても良い。尚、減衰させるという観点から、係数Mの値は、0<M<1を満たす値である。そしてマスク処理部51は、マスク処理後データD8を逆フーリエ変換部52へ出力する。
【0073】
逆フーリエ変換部52は、マスク処理後データD8を逆離散フーリエ変換(IDFT)することにより、出力画像D9を生成する。
図12は、逆フーリエ変換部52によって生成される出力画像D9の一例を示す図である。
図12に示す出力画像D9では、網点の周波数成分が減衰しているため、網点による影響が低減された画像となる。
【0074】
尚、画像取得部15においてRGB色空間からYCrCb色空間への色変換が行われた場合、逆フーリエ変換部52によって生成される出力画像D9は、Y(明度)成分の画像となる。そのため、R,G,Bの3原色で表された画像データを出力する必要がある場合、出力画像生成部50は、逆フーリエ変換部52によって生成されるY成分と、画像取得部15で生成されたCr成分及びCb成分とに基づき、YCrCb色空間をRGB色空間に再変換することにより、RGBで表現された画像データを生成すれば良い。
【0075】
以上のように、本実施形態の画像処理装置1は、従来のように文字領域と網点領域とを判別することなく、網点特有の周波数成分をピンポイントで減衰させることが可能である。そのため、本実施形態の画像処理装置1は、文字等のエッジ部分が平滑化されてしまうことを最小限に抑えつつ、入力画像D1に含まれる網点の影響を低減することができる。さらに、本実施形態の画像処理装置1は、
図4に示したように、第1画像生成部20による処理と、第2画像生成部30による処理と、マスクデータ生成部40による処理と、出力画像生成部50による処理とを順次行っていくことにより出力画像D9を生成することができるため、従来のような並列処理を伴わない。それ故、画像処理部10がソフトウェア処理によって上述した画像処理を行う場合、処理速度が低下してしまうことを抑制することが可能であり、処理効率を向上させることができる。また、画像処理部10における上述した画像処理をハードウェアで実現する場合であっても、並列処理を行う必要がないため、簡単な回路構成で実現することが可能であり、回路規模の増大化を防ぐことができるという利点もある。
【0076】
次に、画像処理部10において行われる処理手順について説明する。
図13は、画像処理部10において行われる画像処理シーケンスの一例を示すフローチャートである。画像処理部10は、この処理を開始すると、網点を含む入力画像D1を取得する(ステップS10)。このとき、画像処理部10は、必要に応じて入力画像D1のRGB色空間をYCrCb色空間に変換する処理を行う。
【0077】
次に、画像処理部10は、入力画像D1にフーリエ変換処理を行い(ステップS11)、フーリエ変換後データD3をRAM13に保存する(ステップS12)。また、画像処理部10は、フーリエ変換後データD3に基づいて入力画像D1のパワースペクトル画像D4を生成し(ステップS13)、そのパワースペクトル画像D4に対する2値化処理を行う(ステップS14)。
【0078】
図14は、2値化処理(ステップS14)の詳細な処理手順の2つの例を示す図である。まず
図14(a)に示す2値化処理について説明する。画像処理部10は、
図14(a)の2値化処理を開始すると、パワースペクトル画像D4の原点から所定距離Rの範囲内の領域P1を「0」に変換する(ステップS20)。これにより、入力画像D1において有効な画像要素を構成する低周波数成分が減衰してしまうことを防止する。続いて、画像処理部10は、2値化を行う際の基準となる閾値を取得する(ステップS21)。そして画像処理部10は、パワースペクトル画像D4において原点から所定距離Rの範囲外の領域を、ステップS21で取得した閾値で2値化する(ステップS22)。これにより、パワースペクトル画像D4を2値化した第1画像D5が生成される。
【0079】
次に
図14(b)に示す2値化処理について説明する。画像処理部10は、
図14(b)の2値化処理を開始すると、パワースペクトル画像D4の原点から所定距離Rの範囲内に適用する閾値T1を取得すると共に(ステップS24)、パワースペクトル画像D4の原点から所定距離Rの範囲外に適用する閾値T2を取得する(ステップS25)。つまり、この例では、入力画像D1において有効な画像要素を構成する低周波数成分に対して適用される閾値T1と、網点を含む高周波数成分に対して適用される閾値T2とが異なる値として取得される。ここで、閾値T1は、閾値T2よりも高い値である。そして画像処理部10は、パワースペクトル画像D4の原点から所定距離Rの範囲内の領域P1を閾値T1に基づいて2値化する(ステップS26)。また、画像処理部10は、パワースペクトル画像D4の原点から所定距離Rの範囲外の領域を閾値T2に基づいて2値化する(ステップS27)。これにより、パワースペクトル画像D4を2値化した第1画像D5が生成される。
【0080】
ステップS14では、上述した2つの2値化処理のうちのいずれか一方が採用され、パワースペクトル画像D4が2値化された第1画像D5が生成される。
図13のフローチャートに戻り、画像処理部10は、第1画像D5を生成すると、その第1画像D5をRAM13に保存する(ステップS15)。
【0081】
次に画像処理部10は、第1画像D5を時計回り方向又は反時計回り方向に90度回転させ、第2画像D6を生成し(ステップS16)、その第2画像D6をRAM13に保存する(ステップS17)。
【0082】
続いて、画像処理部10は、マスクデータ生成処理を実行する(ステップS18)。
図15は、マスクデータ生成処理(ステップS18)の詳細な処理手順の2つの例を示す図である。
【0083】
まず
図15(a)に示すマスクデータ生成処理について説明する。画像処理部10は、
図15(a)のマスクデータ生成処理を開始すると、第1画像D5と第2画像D6とを読み出し(ステップS30)、画素毎に第1画像D5と第2画像D6との論理積演算を行う(ステップS31)。これにより、第1画像D5と第2画像D6とで同じ位置に輝点を形成する網点の周波数成分が抽出されることになる。そして画像処理部10は、論理積演算によって得られる画像に対して輝点を膨張させる膨張処理を実行する(ステップS32)。つまり、画像処理部10は、網点の周波数成分に対応する輝点のサイズよりも若干大きいサイズのマスクデータD7を生成するのである。これにより、後段のマスク処理において網点の周波数成分を不足なく減衰させることができるようになる。そして画像処理部10は、膨張処理を行って生成したマスクデータD7をRAM13に保存する(ステップS33)。
【0084】
次に
図15(b)に示すマスクデータ生成処理について説明する。画像処理部10は、
図15(b)のマスクデータ生成処理を開始すると、第1画像D5と第2画像D6とを読み出し(ステップS35)、画素毎に第1画像D5と第2画像D6との論理積演算を行って中間データを生成する(ステップS36)。そして画像処理部10は、中間データに対し、オープニング処理又はクロージング処理を実行する(ステップS37)。尚、画像処理部10は、中間データに対してオープニング処理とクロージング処理との双方を行うようにしても良い。その後、画像処理部10は、オープニング処理又はクロージング処理がなされた中間データに対して膨張処理を実行し、マスクデータD7を生成する(ステップS38)。そして画像処理部10は、膨張処理を行って生成したマスクデータD7をRAM13に保存する(ステップS39)。
【0085】
ステップS18では、上述した2つのマスクデータ生成処理のうちのいずれか一方が採用され、マスクデータD7が生成される。
図13のフローチャートに戻り、画像処理部10は、マスクデータD7を生成すると、マスク処理を実行する(ステップS19)。
図16は、マスク処理(ステップS19)の詳細な処理手順の2つの例を示す図である。
【0086】
まず
図16(a)に示すマスク処理について説明する。画像処理部10は、
図16(a)のマスク処理を開始すると、RAM13に保存されているフーリエ変換後データD3と、マスクデータD7とを読み出す(ステップS40)。このとき、画像処理部10は、マスクデータD7の白黒を反転させたマスクデータを生成する。そして画像処理部10は、フーリエ変換後データD3の実数部と、白黒を反転させたマスクデータとの論理積演算を画素毎(周波数毎)に行うと共に(ステップS41)、フーリエ変換後データD3の虚数部と、白黒を反転させたマスクデータD7との論理積演算も画素毎(周波数毎)に行う(ステップS42)。そして画像処理部10は、論理演算によって得られた実数部と虚数部とを逆フーリエ変換対象のデータとしてRAM13に保存する(ステップS43)。尚、
図16(a)に示すマスク処理は、マスクデータの論理演算を画素毎(周波数毎)に行う必要があり、比較的処理時間を要する処理である。
【0087】
次に
図16(b)に示すマスク処理について説明する。画像処理部10は、
図16(b)のマスク処理を開始すると、RAM13に保存されているフーリエ変換後データD3と、マスクデータD7とを読み出す(ステップS45)。そして画像処理部10は、白黒を反転させたマスクデータにおいて0の座標に相当するフーリエ変換後データD3の実数部の値を0に変換し(ステップS46)、また白黒を反転させたマスクデータにおいて0の座標に相当するフーリエ変換後データD3の虚数部の値を0に変換する(ステップS47)。すなわち、
図16(b)のマスク処理では、白黒を反転させたマスクデータにおいて0の値となっている座標を特定し、その座標に対応するフーリエ変換後データD3の実数部及び虚数部の値を0に置換するだけであるため、
図16(a)のマスク処理に比べると短時間で処理を行うことが可能であり、処理効率を向上させることができる。そして画像処理部10は、ステップS46,S47で得られた実数部と虚数部とを逆フーリエ変換対象のデータとしてRAM13に保存する(ステップS48)。
【0088】
尚、
図16(b)のマスク処理では、ステップS46,S47においてフーリエ変換後データD3の実数部と虚数部とを0に置換する例を挙げたが、これに限られるものではない。例えば、ステップS46では、白黒を反転させたマスクデータにおいて0の座標に相当するフーリエ変換後データD3の実数部の値と係数Mとの論理積演算を行うようにしても良いし、またステップS47では、白黒を反転させたマスクデータにおいて0の座標に相当するフーリエ変換後データD3の実数部の値と係数Mとの論理積演算を行うようにしても良い。
【0089】
再び
図13のフローチャートに戻り、次に画像処理部10は、RAM13から逆フーリエ変換対象のデータを読み出し、そのデータに対して逆フーリエ変換処理を実行する(ステップS20)。これにより、網点による影響が低減された出力画像D9が生成される。そして画像処理部10は、出力画像D9を画像メモリ7に保存する(ステップS21)。これにより、制御部8は、画像メモリ7から出力画像D9を取得することができる。尚、画像処理部10は、出力画像D9を生成するとき、逆フーリエ変換処理を行った後、必要に応じて出力画像D9の色空間をYCrCb色空間からRGB色空間に変換する処理を行う。
【0090】
その後、画像処理部10は、画像処理を終了させるか否かを判断する(ステップS22)。例えば、スキャナ部2によって複数枚の原稿の連続読み取りが行われる場合、2枚目以降の画像に対して同様の処理を行う必要がある。この場合、画像処理部10は、画像処理を継続させると判断し(ステップS22でNO)、ステップS10へ戻り、2枚目以降の画像に対して上述したステップS10~S21の処理を繰り返す。一方、スキャナ部2によって読み取られた全ての原稿の画像に対する画像処理が終了した場合、画像処理部10は、画像処理を終了させると判断し(ステップS22でYES)、全ての処理が終了する。このように本実施形態の画像処理は、全ての処理をシーケンシャルで行うことが可能である。
【0091】
次に、画像処理装置1においてスキャンジョブが実行される際の制御部8の処理手順について説明する。
図17は、制御部8によって行われる処理手順の一例を示すフローチャートである。制御部8は、この処理を開始すると、ユーザーによるジョブの設定操作に基づいて原稿の読み取りモードを設定する(ステップS50)。そして、制御部8は、設定した読み取りモードが印刷原稿読み取りモードであるか否かを判断する(ステップS51)。印刷原稿読み取りモードとは、画像処理装置1で印刷された原稿の画像を読み取るモードである。上記判断の結果、印刷原稿読み取りモードではない場合(ステップS51でNO)、制御部8は、次にコピー原稿読み取りモードであるか否かを判断する(ステップS52)。コピー原稿読み取りモードとは、画像処理装置1においてコピー出力された原稿の画像を読み取るモードである。
【0092】
読み取りモードが印刷原稿読み取りモード又はコピー原稿読み取りモードである場合(ステップS51でYES、又は、ステップS52でYES)、制御部8は、ユーザーによるスキャンジョブの実行開始指示に基づいてスキャンジョブの実行を開始すると(ステップS53)、画像処理部10を機能させ、画像処理部10による網点平滑化処理を実行させる(ステップS54)。したがって、スキャンジョブの実行が開始されると、画像処理部10において上述した網点平滑化処理(
図13~
図16の処理)が行われる。制御部8は、スキャンジョブが終了するまで画像処理部10による画像処理を継続させる(ステップS55でNO)。一方、スキャンジョブが終了すると(ステップS55でYES)、制御部8は、画像処理部10による画像処理を終了させ、ジョブの実行を終了する。
【0093】
これに対し、読み取りモードが印刷原稿読み取りモード及びコピー原稿読み取りモードのいずれでもない場合(ステップS51でNO、且つ、ステップS52でNO)、制御部8は、ユーザーによるスキャンジョブの実行開始指示に基づいてスキャンジョブの実行を開始する(ステップS56)。この場合、制御部8は、画像処理部10を機能させない。つまり、スキャナ部2によって読み取られる原稿の画像が網点を含まない画像である場合、制御部8は、スキャンジョブの実行中に画像処理部10を機能させず、上述した画像処理が行われないように制御する。そしてスキャンジョブの実行が終了すると(ステップS57でYES)、制御部8による処理が終了する。
【0094】
このように本実施形態の画像処理装置1では、ユーザーによって指定される読み取りモードに応じて、制御部8が網点による影響を低減する必要があるか否かを判断し、網点による影響を低減する必要があると判断した場合に、スキャンジョブの実行中に画像処理部10を機能させ、スキャナ部2から出力される画像データを入力画像D1として、上述した網点平滑化処理が行われるように制御する。
【0095】
以上のように本実施形態の画像処理装置1は、網点を含む入力画像D1を取得すると、その入力画像D1に基づいて入力画像D1の空間周波数成分を表した第1画像D5を生成する。そして画像処理装置1は、第1画像D5を所定角度回転させた第2画像D6を生成し、第1画像D5と第2画像D6とを比較することにより、入力画像D1の空間周波数成分に対応するマスクデータD7を生成する。更に画像処理装置1は、そのマスクデータD7に基づいて入力画像D1に対するマスク処理を行い、出力画像D9を生成するように構成される。このような構成を有する画像処理装置1は、入力画像D1に含まれる網点の周波数成分に対してピンポイントでマスク処理を行うことが可能であり、文字等のエッジ部分が平滑化されてしまうことを最小限に抑えつつ、従来よりも効率的に網点の影響を低減させた出力画像D9を得ることができる。
【0096】
(第2実施形態)
次に本発明の第2実施形態について説明する。上記第1実施形態では、第1画像D5を90度回転させて第2画像D6を生成し、第1画像D5と第2画像D6との画素毎の論理積を演算することによってマスクデータを生成する処理を説明した。そのような処理を適切に行う場合、第1画像D5の縦方向及び横方向のサイズと、第2画像D6の縦方向及び横方向のサイズが互いに等しいことが前提となる。つまり、第1実施形態で説明した処理は、入力画像D1が正方形の画像である場合に好適に利用し得るものである。しかしながら、スキャナ部2が読み取る原稿は、正方形ではなく、長方形であることが多いのが実情である。このような実情に鑑み、本実施形態では、スキャナ部2が長方形の原稿を読み取って生成した画像に対して適用可能とする形態について説明する。尚、本実施形態における画像処理装置1の全体的な構成は第1実施形態で説明したものと同様である。
【0097】
図18は、本実施形態における画像処理部10における機能構成を例示するブロック図である。画像処理部10のCPU11は、プログラム14を実行することにより、第1実施形態と同様に、画像取得部15、第1画像生成部20、第2画像生成部30、マスクデータ生成部40、及び、出力画像生成部50として機能する。これらのうち、第1実施形態と異なるのは、画像取得部15と、出力画像生成部50である。すなわち、画像取得部15がブロック分割部16を備えており、出力画像生成部50が合成処理部53を備えている点が第1実施形態と異なる。
【0098】
画像取得部15のブロック分割部16は、画像メモリ7から入力画像D1を取得すると、その入力画像D1を複数のブロック画像に分割する。例えば、入力画像D1が長方形であり、縦方向及び横方向のサイズが異なる場合、ブロック分割部16は、入力画像D1を、縦方向及び横方向のサイズが等しい複数のブロック画像に分割する。したがって、ブロック分割部16によって生成される複数のブロック画像は、いずれも正方形である。画像取得部15は、ブロック分割部16によって複数のブロック画像が生成されると、それら複数のブロック画像のそれぞれを処理対象画像D2として第1画像生成部20へ順次出力する。
【0099】
図19は、ブロック分割部16による分割方法の例を示す図である。まず、
図19(a)に示す例は、入力画像D1の横方向(X方向)と縦方向(Y方向)のそれぞれを予め定められた基準長さで分割することで複数のブロック画像を生成する。この場合、入力画像D1の横方向及び縦方向のそれぞれの長さが基準長さの整数倍とならないことがある。そのような場合、横方向及び縦方向における最後のブロック画像を1つ前のブロック画像と重なった状態のブロック画像とすることにより、全てのブロック画像を正方形として生成することができる。
図19(a)に示す分割方法の場合、ブロック分割部16によって入力画像D1から多数のブロック画像が生成されることになる。
【0100】
次に、
図19(b)に示す例は、入力画像D1から2つのブロック画像を生成する分割方法である。
図19(b)に示す入力画像D1は、横方向よりも縦方向のサイズの方が大きい。この場合、ブロック分割部16は、入力画像D1の横方向の長さと同じ長さで縦方向を分割する。このときも、入力画像D1の縦方向の長さが横方向の長さの整数倍とならないことがある。そのような場合、ブロック分割部16は、入力画像D1の上端を基準として下方に向かって横方向の長さと同じ長さの位置で分割した第1のブロック画像と、入力画像D1の下端を基準として上方に向かって横方向の長さと同じ長さの位置で分割した第2のブロック画像とに分割する。つまり、第1のブロック画像及び第2のブロック画像は、互いに重なった状態の画像として生成される。尚、横方向よりも縦方向のサイズの方が小さい場合には、横方向に入力画像D1を分割すれば良い。
【0101】
ブロック分割部16は、上記2つの分割方法のうちのいずれを採用しても構わない。ただし、
図19(a)に示した分割方法の場合には、ブロック分割によって生成されるブロック画像の数が多くなると共に、1つ当たりのブロック画像の面積が小さくなる。第1実施形態で説明したように、個々のブロック画像を、処理対象画像D2としてフーリエ変換を行い、パワースペクトル画像を生成する場合、ブロック画像のサイズが小さくなると、網点の周波数成分を適切に検知することができなくなる可能性がある。また、ブロック画像の数が増加すると、ブロック画像に対するフーリエ変換から逆フーリエ変換までの処理を行う回数が増加するため、処理効率が低下する。そのため、
図19(a)に示した分割方法よりも、
図19(b)に示した分割方法を採用することが好ましい。
図19(b)に示した分割方法の場合には、ブロック分割によって生成されるブロック画像の数を最小にし、しかも1つ当たりのブロック画像の面積を最大にすることができるため、網点の周波数成分を適切に検知することができなくなる可能性を低減し、しかも処理効率の低下も抑制することができるという利点がある。
【0102】
ブロック分割部16によって生成される複数のブロック画像が処理対象画像D2として第1画像生成部20に順次出力されると、それら複数のブロック画像のそれぞれに対して第1実施形態で説明した画像処理が行われる。そして出力画像生成部50の逆フーリエ変換部52によって生成される出力画像D9は、個々のブロック画像に対応する出力ブロック画像となる。そこで本実施形態では、出力画像生成部50に合成処理部53が設けられており、逆フーリエ変換部52から順次出力される複数の出力ブロック画像を合成する。すなわち、合成処理部53は、ブロック分割部16において適用された分割方法に基づいて、個々のブロック画像に対応する出力ブロック画像を合成することにより、入力画像D1に対応する出力画像D10を生成する。
【0103】
以上のように本実施形態の画像処理装置1は、入力画像D1が正方形でない場合、入力画像D1を分割して正方形のブロック画像を生成し、そのブロック画像を処理対象として、フーリエ変換部21から逆フーリエ変換部52までの画像処理を行うようにしている。そのため、第1画像D5と第2画像D6との画素毎の論理積を演算することによってマスクデータを生成する処理等を適切に行うことが可能であり、入力画像D1に含まれる網点の周波数成分を適切に減衰させることができる。
【0104】
尚、本実施形態において上述した点以外の構成及び動作については、第1実施形態で説明したものと同様である。
【0105】
(第3実施形態)
次に本発明の第3実施形態について説明する。上記第2実施形態では、入力画像D1が正方形でない場合に、入力画像D1を正方形のブロック画像に分割することにより、適切な画像処理を行えるようにした例を説明した。これに対し、本実施形態では、入力画像D1が正方形でない場合に、入力画像D1の縦方向及び横方向のいずれか一方を拡大又は縮小することにより、正方形の画像を生成する形態について説明する。尚、本実施形態における画像処理装置1の全体的な構成は第1実施形態で説明したものと同様である。
【0106】
図20は、本実施形態における画像処理部10における機能構成を例示するブロック図である。画像処理部10のCPU11は、プログラム14を実行することにより、第1実施形態と同様に、画像取得部15、第1画像生成部20、第2画像生成部30、マスクデータ生成部40、及び、出力画像生成部50として機能する。これらのうち、第1実施形態と異なるのは、画像取得部15と、出力画像生成部50である。すなわち、画像取得部15が倍率変換部17を備えており、出力画像生成部50も倍率変換部54を備えている点が第1実施形態と異なる。
【0107】
画像取得部15の倍率変換部17は、画像メモリ7から入力画像D1を取得すると、その入力画像D1の縦方向及び横方向のサイズを検知し、一方のサイズを他方のサイズの合わせるように入力画像D1に対して一軸方向の拡大処理又は縮小処理を行うことで正方形の画像を生成する。つまり、本実施形態では、1つの入力画像D1から、1つの正方形の画像が生成される。そして画像取得部15は、倍率変換部17によって正方形の画像が生成されると、その画像を処理対象画像D2として第1画像生成部20へ出力する。
【0108】
図21は、倍率変換部17による倍率変換の例を示す図である。
図21に示す入力画像D1は、横方向(X方向)のサイズよりも縦方向(Y方向)のサイズが大きい長方形の画像である。この場合、倍率変換部17は、例えば縦方向のサイズが横方向のサイズに合致するように、Y方向に対する縮小処理を行う。これにより、
図21に示すように、長方形の入力画像D1が正方形の画像に変換されるので、その正方形の画像を処理対象画像D2とすることができる。尚、
図21では、縦方向のサイズが横方向のサイズに合致するように、Y方向に対する縮小処理を行う場合を例示したが、正方形の画像を得る手法はこれに限られない。例えば、倍率変換部17は、横方向のサイズが縦方向のサイズに合致するように、X方向に対する拡大処理を行うようにしても良い。
【0109】
倍率変換部17によって生成される正方形の画像が処理対象画像D2として第1画像生成部20に出力されると、その正方形の画像に対して第1実施形態で説明した画像処理が行われる。そして出力画像生成部50の逆フーリエ変換部52によって生成される出力画像D9は、正方形の画像に対応する出力対象画像となる。そこで本実施形態では、出力画像生成部50に倍率変換部54が設けられており、逆フーリエ変換部52から出力される出力対象画像の倍率を変換する。すなわち、倍率変換部54は、出力対象画像に対し、倍率変換部17で行われた倍率変換処理(拡大又は縮小)と逆の倍率変換処理(縮小又は拡大)を行うことにより、元の入力画像D1に対応する出力画像D10を生成する。
【0110】
以上のように本実施形態の画像処理装置1は、入力画像D1が正方形でない場合、入力画像D1に対して縦方向及び横方向のいずれか一方に対する倍率変換処理を行うことにより、正方形の画像を生成し、その正方形の画像を処理対象画像D2とし、フーリエ変換部21から逆フーリエ変換部52までの画像処理を行うようにしている。そのため、第1画像D5と第2画像D6との画素毎の論理積を演算することによってマスクデータを生成する処理等を適切に行うことが可能であり、入力画像D1に含まれる網点の周波数成分を適切に減衰させることができる。尚、本実施形態のように、入力画像D1に対する倍率変換処理を行っても網点の周波数成分に関する情報は失われないため、正常に網点の周波数成分を減衰させることができる。
【0111】
また、本実施形態の画像処理装置1は、1つの入力画像D1から1つの正方形の画像を生成するため、フーリエ変換部21から逆フーリエ変換部52までの画像処理を行う回数が1つの入力画像D1につき1回で済むため、処理効率に優れている。つまり、本実施形態による手法は、第2実施形態で説明した手法よりも効率的に画像処理を行うことが可能である。
【0112】
尚、本実施形態において上述した点以外の構成及び動作については、第1実施形態で説明したものと同様である。
【0113】
(変形例)
以上、本発明に関する実施形態について説明したが、本発明は、上記実施形態において説明した内容のものに限られるものではなく、種々の変形例が適用可能である。
【0114】
例えば上記第1実施形態では、第1画像生成部20においてパワースペクトル画像D4を2値化して第1画像D5を生成するときに、パワースペクトル画像D4における周波数座標軸の原点から所定距離Rの範囲内の領域P1を予め定められた値(例えば「0」の値)に変換する例を説明した。しかし、周波数座標軸の原点から所定距離Rの範囲内の領域P1を予め定められた値(例えば「0」の値)に変換する処理は、必ずしも2値化処理の際に行われるものに限られない。例えば、マスクデータ生成部40がマスクデータD7を生成するときに、第1画像D5又は第2画像D6における周波数座標軸の原点から所定距離Rの範囲内の領域P1を予め定められた値(例えば「0」の値)に設定するものであっても構わない。この場合であっても、第1実施形態で説明した作用効果に何ら変わりはない。
【0115】
また、上記実施形態では、主として画像処理部10がソフトウェア処理によって画像処理を行う場合を例示したが、これに限られるものではない。すなわち、画像処理部10は、画像取得部15、第1画像生成部20、第2画像生成部30、マスクデータ生成部40、及び、出力画像生成部50のそれぞれをハードウェア構成で実現したものであっても構わない。
【0116】
また、上記実施形態では、網点の影響を低減する画像処理部10の機能がMFPとして構成される画像処理装置1に実装される場合を例示した。しかし、上述した画像処理部10は、必ずしもMFPなどの画像処理装置1に実装されるものに限られない。例えば、上述した画像処理部10の機能は、一般的なパーソナルコンピュータなどのコンピュータによって実現されるものであっても構わない。
【0117】
また、上記実施形態では、画像処理部10のCPU11によって実行されるプログラム14が予めROM12に記憶されている場合を例示した。しかし、プログラム14は、事後的に画像処理部10にインストールされるものであっても構わない。この場合、プログラム14は、ネットワークなどを介して画像処理部10にインストール可能な態様で提供されるものであっても良いし、またCD-ROMやUSBメモリなどのコンピュータ読み取り可能な記録媒体に記録された状態で提供されるものであっても構わない。
【符号の説明】
【0118】
1 画像処理装置
2 スキャナ部
4 画像読取部(画像読取手段)
8 制御部(制御手段)
10 画像処理部
15 画像取得部(画像取得手段)
20 第1画像生成部(第1画像生成手段)
30 第2画像生成部(第2画像生成手段)
40 マスクデータ生成部(マスクデータ生成手段)
50 出力画像生成部(出力画像生成手段)