【手続補正書】
【提出日】平成15年7月4日(2003.7.4)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の名称】画像処理装置、画像処理方法および画像処理プログラムを記録した媒体
【特許請求の範囲】
【請求項１】複数の画素からなる画像の画像データに対してエッジ強調処理を行う画像処理装置であって、
同画像データの画素数を検知する画素数検知手段と、
同検知された画素数に応じて同画素数が多いときに強調度を大きくしてエッジ強調するエッジ強調手段を具備することを特徴とする画像処理装置。
【請求項２】上記請求項１に記載の画像処理装置において、上記エッジ強調手段は、エッジ強調処理における係数を変更してエッジの強調度を変化させることを特徴とする画像処理装置。
【請求項３】上記請求項１または請求項２のいずれかに記載の画像処理装置において、上記エッジ強調手段は、エッジ強調処理をアンシャープマスクを利用して行うことを特徴とする画像処理装置。
【請求項４】上記請求項３に記載の画像処理装置において、上記エッジ強調手段は、上記アンシャープマスクの実質的な大きさを変更してエッジの強調度を変化させることを特徴とする画像処理装置。
【請求項５】上記請求項３または請求項４のいずれかに記載の画像処理装置において、上記エッジ強調手段は、上記アンシャープマスクを利用する場合に周縁部の低数値マスク部分の演算を省略することを特徴とする画像処理装置。
【請求項６】上記請求項３〜請求項５のいずれかに記載の画像処理装置において、上記エッジ強調手段は、隣接する画素同士で画像データの差が大きい場合に上記アンシャープマスクの演算を行うことを特徴とする画像処理装置。
【請求項７】上記請求項６に記載の画像処理装置において、上記エッジ強調手段は、隣接する画素同士での画像データの比較時に所定方向の画素とだけ比較することを特徴とする画像処理装置。
【請求項８】上記請求項１〜請求項７のいずれかに記載の画像処理装置において、画像データが輝度に対応した複数の成分値で表される場合において、上記エッジ強調手段は、同成分値より輝度に対応する値を求めるとともに同値に基づいてエッジ強調のために上記各成分値に対する共通の増減値を求め、この増減値で同各成分値を増減せしめることを特徴とする画像処理装置。
【請求項９】上記請求項８に記載の画像処理装置において、上記上記エッジ強調手段は、上記画像データの成分値の重み付け加算値に基づいて上記輝度に対応する値を求めることを特徴とする画像処理装置。
【請求項１０】上記請求項８に記載の画像処理装置において、上記エッジ強調手段は、上記複数の成分値における全体の輝度への大なる貢献割合をもつ成分値を上記輝度に対応する値とすることを特徴とする画像処理装置。
【請求項１１】複数の画素からなる画像の画像データに対してエッジ強調処理を行うにあたり、同画像データの画素数を検知し、同検知された画素数に応じて同画素数が多いときに強調度を大きくしてエッジ強調することを特徴とする画像処理方法。
【請求項１２】複数の画素からなる画像の画像データを入力してエッジ強調処理を行う画像処理プログラムを記録した媒体であって、同画像データの画素数を検知し、同検知された画素数に応じて同画素数が多いときに強調度を大きくしてエッジ強調することを特徴とする画像処理プログラムを記録した媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像処理装置、画像処理方法および画像処理プログラムを記録した媒体に関し、特に、画像データのエッジ強調処理を行なう画像処理装置、画像処理方法および画像処理プログラムを記録した媒体に関する。
【０００２】
【従来の技術】
従来より、写真などの画像データに対してエッジ部分を強調する画像処理ソフトウェアが知られている。これらにおいてはコンピュータに画像データを読み込み、試行錯誤でエッジの強調度を変えて変換し、変換結果を作業者が画面上で目視して確認し、適当な強調具合となるように調整している。
【０００３】
【発明が解決しようとする課題】
上述した従来の画像処理装置においては、作業者の目視による確認が必要であるため、自動的に適当な強調具合を設定することができないという課題があった。
【０００４】
本発明は、上記課題にかんがみてなされたもので、自動的に最適なエッジの強調処理を行なうことが可能な画像処理装置、画像処理方法および画像処理プログラムを記録した媒体の提供を目的とする。
【０００５】
【課題を解決するための手段】
上記目的を達成するため、請求項１にかかる発明は、複数の画素からなる画像の画像データに対してエッジ強調処理を行う画像処理装置であって、同画像データの画素数を検知する画素数検知手段と、同検知された画素数に応じて同画素数が多いときに強調度を大きくしてエッジ強調するエッジ強調手段を具備する構成としてある。
【０００６】
人が画像などを識別しようとするとき、大きな絵であれば距離を空けようとし、小さな絵であれば近づこうとする。従って、大きな絵であれば遠のいてみられる状況を想定してエッジ強調の効果が分かりやすくなるようにすれば最適といえる。このため、画像面積検知手段にてマトリクス状の画像データの大きさを検知すると、エッジ強調度手段は同検知された画像の大きさに応じて同画素数が大きいときに強調度を大きくしてエッジ強調する。
【０００７】
画像の大きさの検知は、各種の手法を採用可能である。
【０００８】
画像の大きさは、本来、画素数だけでは検知できないが、ドット密度が一定であるという仮定の下では画素数だけでも検知できる。この場合、縦方向の画素数と横方向の画素数を乗算して検知しても良いし、画像データのデータファイルの大きさでも判断することもできる。また、余白部分があるときに周囲の余白をのぞいても構わない。すなわち、必ずしも画像データ全体としてみる必要はなく、実質的な画像部分の大きさで判断すればよい。むろん、必ずしも画素数だけで考慮する必要はなく、例えば、表示時の密度によって画素数を調整して考慮しても良い。すなわち、表示密度が高い場合であれば画像の大きさが小さくなるので、画素数に応じたサイズよりも小さなものと扱えばよい。
【０００９】
エッジ強調手段は各種の手法を採用可能である。従って、エッジの強調度はどの手法を採用するかによっても変更可能であるし、同じ手法を採用しつつ別の観点でエッジの強調度を変えることもできる。その一例として、請求項２にかかる発明は、請求項１に記載の画像処理装置において、上記エッジ強調手段は、エッジ強調処理における係数を変更してエッジの強調度を変化させる構成としてある。
【００１０】
画像データにエッジ強調を行う場合、結果的にエッジの強調度を変化させうる係数が伴うため、この係数を変化させることによって最適なエッジの強調度とする。
【００１１】
また、エッジ強調の手法の一例を採用するものとして、請求項３にかかる発明は、上記請求項１または請求項２のいずれかに記載の画像処理装置において、上記エッジ強調手段は、エッジ強調処理をアンシャープマスクを利用して行う構成としてある。
【００１２】
アンシャープマスクを利用するエッジ強調処理では、注目画素に対して周縁画素を重み付けして加算した成分値を求め、これと注目画素との差分値に強調度を表す係数を乗算して注目画素に加算する。周縁画素を重み付けして加算することによりいわゆるローパスフィルタをかけたような効果をもたらし、この結果、低周波成分が得られる。この低周波成分と注目画素との差分値は高周波成分に該当するし、この高周波成分を注目画素に加算すればエッジが強調されることになる。この場合、請求項３にかかる係数は上記差分値に乗算する係数と考えればよい。むろん、アンシャープマスクとはかかる性質を備えているものであればよく、厳格な意味でアンシャープマスクである必要はない。例えば、そのマスク成分値などについては適宜変更可能である。
【００１３】
また、このようなアンシャープマスクを利用する場合のエッジ強調度の変更について、請求項４にかかる発明は、上記請求項３に記載の画像処理装置において、上記エッジ強調手段は、上記アンシャープマスクの実質的な大きさを変更してエッジの強調度を変化させる構成としてある。
【００１４】
アンシャープマスクは、周縁画素を重み付けして注目画素に加算する性格上、どこまで周縁画素を注目画素に加算するかによってローパスフィルタの効果が変わってくる。したがって、実質的な大きさを変更すればエッジの強調度も変化する。
【００１５】
ここにおいて、実質的に大きさを変更できればよく、必ずしも周縁画素を取り込む範囲を広げなくても良い。すなわち、アンシャープマスクを大きくすると、裾野が広がるのに伴って重み付けの割合も変化してくる。従って、固定された範囲で重み付けの割合を変化させても実質的にはアンシャープマスクを大きくしたものといえる。
【００１６】
さらに、請求項５にかかる発明は、上記請求項３または請求項４のいずれかに記載の画像処理装置において、上記エッジ強調手段は、上記アンシャープマスクを利用する場合に周縁部の低数値マスク部分の演算を省略する構成としてある。
【００１７】
アンシャープマスクは、周縁画素における近隣部の重み付けを大きくするとともに遠隔部の重み付けを小さくしており、重み付けが小さくなれば演算結果に対する影響度も小さいといえる。一方、演算に要する処理量は重み付けの大きさには無関係である。従って、影響度の小さい周縁部の低数値マスク部分の演算を省略することにより、演算結果をさほど変えることなく演算量だけを低減できる。
【００１８】
エッジ強調処理をどの画素に行うかはエッジ強調の手法にも関連してくるが、必ずしも全ての画素の画像データに対して実施する必要はなく、実施すべき画素の選択の一例として、請求項６にかかる発明は、上記請求項３〜請求項５のいずれかに記載の画像処理装置において、上記エッジ強調手段は、隣接する画素同士で画像データの差が大きい場合に上記アンシャープマスクの演算を行う構成としてある。
【００１９】
エッジ部分を強調させる処理である以上、エッジ以外の部分について処理を行なう必要もない。エッジ部分では隣接する画素同士で画像データの差が大きいという特徴があるので、このような条件に合う部分でのみエッジ強調手段はアンシャープマスクの演算を行い、強調結果を反映させる。
【００２０】
ここにおいて、隣接する画素同士で画像データの差を判定するにあたり、請求項７にかかる発明は、上記請求項６に記載の画像処理装置において、上記エッジ強調手段は、隣接する画素同士での画像データの比較時に所定方向の画素とだけ比較する構成としてある。
【００２１】
縦横方向に形成されたドットマトリクスの画像データにおいては注目画素の周縁には八つの画素が存在し、本来であれば常に八つの方向の画素との間で比較を行うことになる。一方、一定方向についての比較を行う場合でも隣接する画素によって必ず反対方向からの比較も行われていることになる。このような状況の下で、エッジ強調手段が隣接する画素同士での画像データの比較時に所定方向の画素とだけ比較しても必ず隣接する画素との間で比較が行われることになり、かかる強調処理の結果も良好であった。どの方向に対して行うかは設計方針によって変更可能であるが、例えば、互いに反対方向にならない四方向について行えば全方向に対して隣接する画素同士の比較が行われることになる。
【００２２】
画像データが輝度に対応した複数の成分値で表される場合、本来であれば、各成分値に対してエッジ強調処理を行うことになるが、成分数が多ければ単純比例的に演算量は増加する。これに対し、請求項８にかかる発明は、上記請求項１〜請求項７のいずれかに記載の画像処理装置において、画像データが輝度に対応した複数の成分値で表される場合において、上記エッジ強調手段は、同成分値より輝度に対応する値を求めるとともに同値に基づいてエッジ強調のために上記各成分値に対する共通の増減値を求め、この増減値で同各成分値を増減せしめる構成としてある。
【００２３】
エッジが強調されるというのは明暗差が大きくなるということにもなるため、輝度で代表させることが可能であり、色相をできる限り保存しつつ輝度を変化させることができればよい。このような観点より、エッジ強調手段は、もともと輝度に対応している各成分値から輝度と呼べるような一つの値を求め、同値からエッジ強調が可能となる。すなわち、同値に基づいてエッジ強調のために上記各成分値に対する共通の増減値を求め、この増減値で各成分値を増減せしめる。これにより、エッジ強調のための演算自体は輝度に対応する値だけで行えば良くなり、また、色相をできる限り保存しつつ輝度によってエッジ強調が行われることになる。
【００２４】
むろん、輝度に対応する値として輝度そのものを求めることも可能であるが、輝度そのものを求める演算量は多いのが通常である。このため、請求項９にかかる発明は、上記請求項８に記載の画像処理装置において、上記上記エッジ強調手段は、上記画像データの成分値の重み付け加算値に基づいて上記輝度に対応する値を求める構成としてある。
【００２５】
画像データが輝度に対応した複数の成分値で表されている場合、概ね画像データの成分値の重み付け加算によって輝度が求められる。その一例として、ＲＧＢの表色空間では赤緑青の各成分がそれぞれ輝度（明度）に比例的な成分値となっており、カラーテレビジョン放送においては全体の輝度Ｙ＝０．３０Ｒ＋０．５９Ｇ＋０．１１Ｂなる変換式で輝度を求めている。従って、当該エッジ強調手段も画像データの成分値を重み付け加算することにより輝度に対応する値を求めている。むろん、重み付け加算の割合は適宜変更可能であるし、さらなる演算量の低減のためには同じ重み付けで加算してしまうことも可能である。
【００２６】
また、同様の考え方を発展して、請求項１０にかかる発明は、上記請求項８に記載の画像処理装置において、上記エッジ強調手段は、上記複数の成分値における全体の輝度への大なる貢献割合をもつ成分値を上記輝度に対応する値とする構成としてある。
【００２７】
Ｙ＝０．３０Ｒ＋０．５９Ｇ＋０．１１Ｂなる変換式を見て明らかなように、緑（Ｇ）成分が全体の６割を占めており、殆ど緑（Ｇ）成分によって輝度が判断できるものといっても差し支えない場合がある。このような場合であれば、全体の輝度への大なる貢献割合をもつ成分値である緑（Ｇ）成分を輝度に対応する値として演算に利用してしまえばさらに演算量が低減する。
【００２８】
上述したようにして、画像の大きさに応じて強調度を変えてエッジ強調する手法は、実体のある装置に限定される必要はなく、その方法としても機能することは容易に理解できる。このため、請求項１１にかかる発明は、複数の画素からなる画像の画像データに対してエッジ強調処理を行うにあたり、同画像データの画素数を検知し、同検知された画素数に応じて同画素数が多いときに強調度を大きくしてエッジ強調する構成としてある。
【００２９】
すなわち、必ずしも実体のある装置に限らず、その方法としても有効であることに相違はない。
【００３０】
ところで、このような画像処理装置は単独で存在する場合もあるし、ある機器に組み込まれた状態で利用されることもあるなど、発明の思想としてはこれに限らず、各種の態様を含むものである。従って、ソフトウェアであったりハードウェアであったりするなど、適宜、変更可能である。
【００３１】
その一例として、入力される画像データに基づいて印刷インクに対応した画像データに変換し、所定のカラープリンタに印刷せしめるプリンタドライバにおいても、所定のマトリクス状の画像データに対して画像データの画像の大きさを検知し、同検知された画像の大きさが大きいときに強調度を大きくするとともに大きくない場合には強調度を小さくしてエッジ強調するように画像データを変換す構成とすることができる。
【００３２】
すなわち、プリンタドライバは印刷インクに対応して入力された画像データを変換するが、このときに同入力画像データの画像の大きさを検知し、同検知された画像の大きさが大きいときに強調度を大きくするし、小さいときには強調度を小さくし、かかる強調度で画像データのエッジを強調し、印刷させる。
【００３３】
発明の思想の具現化例として画像処理装置のソフトウェアとなる場合には、かかるソフトウェアを記録した記録媒体上においても当然に存在し、利用されるといわざるをえない。その一例として、請求項１２にかかる発明は、複数の画素からなる画像の画像データを入力してエッジ強調処理を行う画像処理プログラムを記録した媒体であって、同画像データの画素数を検知し、同検知された画素数に応じて同画素数が多いときに強調度を大きくしてエッジ強調する構成としてある。
【００３４】
むろん、その記録媒体は、磁気記録媒体であってもよいし光磁気記録媒体であってもよいし、今後開発されるいかなる記録媒体においても全く同様に考えることができる。また、一次複製品、二次複製品などの複製段階については全く問う余地無く同等である。
【００３５】
さらに、一部がソフトウェアであって、一部がハードウェアで実現されている場合においても発明の思想において全く異なるものはなく、一部を記録媒体上に記憶しておいて必要に応じて適宜読み込まれるような形態のものとしてあってもよい。さらには、カラーファクシミリ機、カラーコピー機、カラースキャナやディジタルカメラ、ディジタルビデオなどに内蔵する画像処理装置においても適用可能であることはいうまでもない。
【００３６】
【発明の効果】
以上説明したように本発明は、エッジ強調処理の効果の表れやすさに対応する画素数を基準とすることにより、画像データに最適なエッジ強調処理の強調度をを自動的に設定して変換することが可能な画像処理装置を提供することができる。
【００３７】
また、請求項２にかかる発明によれば、エッジ強調処理における係数を変更することによりエッジ強調度を容易に変更することができる。
【００３８】
さらに、請求項３にかかる発明によれば、汎用的なアンシャープマスクを利用することにより、演算などが容易となる。
【００３９】
さらに、請求項４にかかる発明によれば、アンシャープマスクの実質的な大きさを変更することにより、エッジ強調度を容易に変更することができる。
【００４０】
さらに、請求項５にかかる発明によれば、低数値マスク部分の演算を省略することにより演算量を極めて低減させることができるようになる。
【００４１】
さらに、請求項６にかかる発明によれば、エッジ部分である画素同士で画像データの差が大きい場合にだけ演算するようにしているため、非エッジ部分での演算をなくして処理量を低減させることができるようになるし、さらに、請求項７にかかる発明によれば、所定方向の画素とだけ比較するようにしてさらに演算量を低減させることができる。
【００４２】
さらに、請求項８にかかる発明によれば、輝度に対応する値でエッジ強調のための演算を行うようにしているため、演算を単純化して処理量を低減させることができ、また、その際に請求項９にかかる発明によれば、成分値の重み付け加算値で輝度を表すので演算量が低減できるし、さらに、請求項１０にかかる発明によれば、大なる貢献割合をもつ成分値で輝度を代表するので輝度を求める演算が必要なくなる。
【００４３】
そして、請求項１１にかかる発明によれば、エッジ強調処理の効果の表れやすさに対応する画素数を基準とすることにより、画像データに最適なエッジ強調処理の強調度をを自動的に設定して変換することが可能な画像処理方法を提供することができ、請求項１２にかかる発明によれば、同様にして画像データに最適なエッジ強調処理の強調度をを自動的に設定して変換することが可能な画像処理プログラムを記録した媒体を提供することができる。
【００４４】
【発明の実施の形態】
以下、図面にもとづいて本発明の実施形態を説明する。
【００４５】
図１は、本発明の一実施形態にかかる画像処理装置の具体的ハードウェア構成例をブロック図により示している。
【００４６】
同図において、画像入力装置１０としてスキャナ１１やデジタルスチルカメラ１２が備えられ、エッジ強調を含む画像処理の中心的な役割を果たす画像処理装置２０としてコンピュータ本体２１とハードディスク２２が備えられ、画像処理された画像を表示する画像出力装置３０としてプリンタ３１やディスプレイ３２を備えている。
【００４７】
このコンピュータ本体２１の内部で行なわれる処理を図２に示している。図に示すように、コンピュータ本体２１内ではオペレーティングシステム２１ａが稼働しており、プリンタ３１やディスプレイ３２に対応したプリンタドライバ２１ｂやビデオドライバ２１ｃが組み込まれている。一方、アプリケーション２１ｄはオペレーティングシステム２１ａにて処理の実行を制御され、必要に応じてプリンタドライバ２１ｂやビデオドライバ２１ｃと連携して所定の画像処理を実行する。なお、コンピュータ２１はＲＡＭなどを使用しながら、内部のＲＯＭやハードディスク２２に保存されているそれぞれのプログラムを実行していく。また、このような画像処理などのプログラムは、ＣＤ−ＲＯＭ、フロッピーディスク、ＭＯなどの各種の記録媒体を介して供給される他、モデムなどによって公衆通信回線を介して外部のネットワークに接続し、ソフトウェアやデータをダウンロードして導入することも行われている。
【００４８】
本実施形態においては、画像入力装置１０としてのスキャナ１１やデジタルスチルカメラ１２が画像データとしてＲＧＢ（緑、青、赤）の階調データを出力するものとするとともに、画像出力装置３０としてのプリンタ３１は階調表色データとしてＣＭＹ（シアン、マゼンダ、イエロー）あるいはこれに黒を加えたＣＭＹＫの二値データを入力として必要とするし、ディスプレイ３２はそのＲＧＢの階調データを入力として必要する。従って、画像処理装置２０としてのこのコンピュータ本体２１の具体的役割は、ＲＧＢの階調データを入力して必要なエッジ強調処理を施したＲＧＢの階調データを作成し、ディスプレイ３２であればビデオドライバ２１ｃを介して表示させるし、プリンタ３１に対してはプリンタドライバ２１ｂを介してＣＭＹの二値データに変換して印刷させる。
【００４９】
本実施形態における主要な画像処理であるエッジ強調処理では、コンピュータ本体２１内で入力される画像に対してアプリケーション２１ｄが自動的に最適な強調を行い、ビデオドライバ２１ｃを介してディスプレイ３２に表示せしめ、確認後にプリンタドライバ２１ｂを介してプリンタ３１にて印刷させるという処理を行う。
【００５０】
本実施形態においては、画像の入出力装置の間にコンピュータシステムを組み込んで画像処理を行うようにしているが、必ずしもかかるコンピュータシステムを必要とする訳ではなく、画像データに対してエッジ強調処理を行うシステムであればよく、例えば、図３に示すようにデジタルスチルカメラ１２ａ内にエッジ強調する意味での画像処理装置を組み込み、変換した画像データを用いてディスプレイ３２ａに表示させたりプリンタ３１ａに印字させるようなシステムであっても良い。また、図４に示すように、コンピュータシステムを介することなく画像データを入力して印刷するプリンタ３１ｂにおいては、スキャナ１１ｂやデジタルスチルカメラ１２ｂあるいはモデム１３ｂ等を介して入力される画像データを自動的にエッジ強調するように構成することも可能である。
【００５１】
エッジ強調処理は、具体的には上記コンピュータ本体２１内にて図５に示すフローチャートに対応した画像処理プログラムにて行っている。なお、これに先だってアプリケーション２１ｄはオペレーティングシステム２１ａを介してスキャナ１１に写真画像の読み込み指示を出しており、同スキャナ１１よりドットマトリクス状の画像データが読み込まれているものとする。
【００５２】
ステップＳ１０２では、入力画像の画素数を検知する。ここでは、画像データの縦横の画素数で画像の大きさを判断するものとし、アプリケーション２１ｄは内部に読み込んでいる画像データの画素数を検知する。この意味で本ステップＳ１０２は本実施形態における画像面積検知手段を構成する。むろん、画素数の検知は画像の大きさを意味するものであり、ドット密度も考慮する。なお、以下においては、単に画素数といったときに画像の大きさを踏まえた広義の意味での画素数を意味するものとする。
【００５３】
ここでドット密度はアプリケーション２１ｄがスキャナ１１に読み込みを指示する際にその読み取り密度から判断している。また、オペレーティングシステム２１ａを介して画像ファイルから読み込む場合には同画像ファイルに基づいて判断することもできる。特に、オペレーティングシステム２１ａがその解像度、および画素数を把握している場合には当該オペレーティングシステム２１ａを介して上述した広義の画素数を検知するようにしても良い。また、アプリケーション２１ｄが画像の拡大及び縮小を行うような場合には本来の画素数に対してこの拡大率及び縮小率をも考慮して広義の画素数を求める。
【００５４】
むろん、このようなコンピュータシステムを含まない画像処理においては、画像データのヘッダ部分を参照して画像情報を得て、その画像情報から画像の大きさを検知するようにしても良い。
【００５５】
画素数が検知されたらステップＳ１０４では、エッジ強調度を決定する。エッジ強調度はエッジ強調の手法に大きく依存するため、まず、本実施形態におけるエッジ強調の手法について説明する。本実施形態においては、図６〜図８に示すアンシャープマスク４０（４１〜４３）を使用する。このアンシャープマスク４０は、中央の「１００」の値をマトリクス状の画像データにおける注目画素Ｐｉｊの重み付けとし、その周縁画素に対して同マスクの升目における数値に対応した重み付けとして積算するのに利用され、今、図７に示すアンシャープマスク４２を利用するのであれば、（１）式に基づいて積算する。
【００５６】
【数１】
2003101785.tif 000001
【００５７】
（１）式において、「６３２」とは重み付け係数の合計値であり、むろんサイズの異なる三つのアンシャープマスク４１〜４３においては、それぞれ「３９６」、「６３２」「２５１６」というような値となる。また、Ｍｉｊはアンシャープマスクの升目に記載されている重み係数であり、Ｐｉｊは各画素の画像データである。なお、ｉｊについては異なる縦横サイズの三つのアンシャープマスク４１〜４３に対して縦列と横列の座標値で示している。
【００５８】
エッジ強調後の画像データをＱｉｊとすると、エッジ強調演算は（２）式に基づいて演算される。
【００５９】
Ｑｉｊ＝Ｐｉｊ＋Ｃ×｛Ｐｉｊ−Ｐ’ｉｊ｝        …（２）
（２）式の意味するところは次のようになる。Ｐ’ｉｊは注目画素に対して周縁画素の重み付けを低くして加算したものであるから、いわゆる「なまった（アンシャープ）」画像データとしていることになる。このようにしてなまらせたものはいわゆるローパスフィルタをかけたものと同様の意味あいを持つ。従って、「Ｐｉｊ−Ｐ’ｉｊ」とは本来の全成分から低周波成分を引いたことになってハイパスフィルタをかけたものと同様の意味あいを持つ。そして、ハイパスフィルタを通過したこの高周波成分に対してエッジ強調係数Ｃを乗算して「Ｐｉｊ」に加えれば同エッジ強調係数に比例して高周波成分を増したことになり、エッジが強調される結果となる。
【００６０】
この意味からも、まずエッジ強調度は、エッジ強調係数Ｃによって変更可能となる。従って、画素数が大きければエッジ強調係数Ｃを大きくするし、画素数が小さければエッジ強調係数Ｃを小さくする。いま、画像の幅と高さがｗｉｄｔｈ×ｈｅｉｇｈｔであるときに、ｒａｔｉｏを（３）で表すとする。
【００６１】
ｒａｔｉｏ＝ｍｉｎ（ｗｉｄｔｈ，ｈｅｉｇｈｔ）／６４０＋１      …（３）
ここにおいてｍｉｎ（ｗｉｄｔｈ，ｈｅｉｇｈｔ）は幅と高さのいずれか小さい方である。そして、得られたｒａｔｉｏについて、次のようにエッジ強調係数Ｃを決定した。
【００６２】
ｒａｔｉｏ＜１  なら  Ｃ＝１
１≦ｒａｔｉｏ＜３  なら  Ｃ＝２
３≦ｒａｔｉｏ      なら  Ｃ＝３
すなわち、短い方の画素が６４０画素未満であればエッジ強調係数Ｃは「１」、６４０画素以上で１９２０画素未満であればエッジ強調係数Ｃは「２」、１９２０画素以上であればエッジ強調係数Ｃを「３」としている。本実施形態においては、このようにエッジ強調係数を設定しているが、上述したようにドット密度によって変更するようにしても良い。なお、この対応はプログラムとともにハードディスク２２に記録されており、アプリケーション２１ｄの起動時に同時に読み込まれている。
【００６３】
一方、エッジ強調度は、アンシャープマスクの大きさによっても変化する。縦横の升目数の異なる三つのアンシャープマスク４１〜４３であれば、大きなマスクほど注目画素の近隣の画素に対する重み付けが大きく、遠くの画素にいたるまでの距離の中で徐々に重み付けが減っていっている。これは言い換えればよりローパスフィルタとしての性格が強くなり、（２）式に従って高周波成分を生成しやすくなるからである。
【００６４】
従って、画素数が大きければ大きなサイズのアンシャープマスク４３を利用すればよいし、画素数が小さければ小さなサイズのアンシャープマスク４１を利用すればよいし、中間的な画素数であれば中間サイズのアンシャープマスク４２を利用すればよくなる。本実施形態においては、エッジ強調係数Ｃが「１」〜「３」の範囲で変化するのに合わせてそれぞれアンシャープマスク４１〜４３を採用するものとする。むろん、いずれのサイズのアンシャープマスク４０を利用するかの対応についてはエッジ強調係数Ｃの場合と同様、プログラムとともにハードディスク２２に記録されており、アプリケーション２１ｄの起動時に同時に読み込んでいる。また、選択したサイズのアンシャープマスク４０はこの時点でハードディスク２２から読み込む。
【００６５】
なお、本実施形態においては、エッジ強調係数Ｃとアンシャープマスク４０の両方を変更するようにしているが、いずれか一方だけでエッジの強調度を変更しても良いことはいうまでもない。
【００６６】
アンシャープマスク４０は図からも明らかなように、中央部にて最も重み付けが大きく、周縁に向かうにつれて徐々に重み付けの数値が小さくなっている。この変化具合は必ずしも固定的なものではなく、適宜変更可能である。むろん、その名称の如何も問わないし、サイズについても例示的なものにすぎず、「６×６」の升目数であっても良いし、「８×８」の升目数であっても良い。
【００６７】
エッジ強調の処理は、マトリクス状の画像データにおける各画素についてかかるアンシャープマスク４０を利用して（１）式に基づくＰ’ｉｊを演算するとともに、（２）式に基づいてエッジ強調後の画像データＱｉｊを算出していく処理に相当する。ステップＳ１０６〜ステップＳ１１２では各画素についてこのエッジ強調処理を繰り返すループ処理を表しており、ループ処理内のステップＳ１１０で図９に示すようにして水平方向及び垂直方向へ順次注目画素を移動させ、ステップＳ１１２で最終画素と判断されるまで繰り返すようになっている。
【００６８】
なお、上述したようにステップＳ１０４にてエッジ処理の強調度を決定し、ステップＳ１０６〜ステップＳ１１２にて実際のエッジ強調の演算を実行するため、ステップＳ１０４〜ステップＳ１１２がエッジ強調手段を構成する。
【００６９】
ここにおいて、本実施形態においては、演算処理量を低減させるために次のような改良を行っている。
【００７０】
（１）式の演算は、注目画素の周囲の画素に対して、採用するアンシャープマスク４０の升目数だけ乗算演算と加算演算が必要になり、処理量としては多大になる。一方、エッジ強調が必要になる状況を考えるといわゆる画像のエッジ部分であるから、隣接する画素同士の間で画像データが大きく異なる場所に限られる。このような状況から隣接する画素との間で画像データの差が大きな場合に演算すれば足りるといえる。
【００７１】
これを具体化するため、ステップＳ１０６では隣接する画素同士の間で画像データの比較を行い、差が大きい場合にのみステップＳ１０８におけるアンシャープマスクの演算を行うようにしている。このようにすれば、殆どのエッジ部分でない画像データ部分でアンシャープマスクの演算を行う必要がなくなり、処理が激減する。
【００７２】
ただし、アンシャープマスクの演算が経るものの、各画素について周縁画素の画像データとの比較を行わなければならない点で別の処理が必要となる。ここにおいて、図１０に示すように、本来の注目画素に対応してその周縁には八つの画素があるので、八回の比較が必要となる。しかし、例えば図の中央の注目画素と「５」の升目の画素とを比較する場合、実は、その前に注目画素が同「５」の升目であったときに「１」の升目の画素との比較で一度行われていることが分かる。少なくとも隣接する画素同士の比較が一度だけ行われるようにしておくだけでも十分とすれば、互いに反対方向となる組み合わせである「１」と「５」、「２」と「６」、「３」と「７」、「４」と「８」についてはどちらか一方だけでも十分といえる。すなわち、必ずしも全方向において比較を行う必要はなく、少なくとも上記組み合わせの四つの方向について比較を行えばよい。そして、本実施形態においては、これらの四回の比較のうち、一つでもしきい値よりも大きな差が生じたらエッジ部分と判断するようにした。
【００７３】
また、さらに処理を低減させるならば、例えば、「１」と「５」のいずれかと「３」と「７」のいずれかの方向の組み合わせとしたとしても、斜め方向の画素同士の比較は行わないものの上下左右の画素同士を比較することになり、エッジの検出は可能である。また、「２」と「６」と「４」と「８」とのいずれかの方向については少なくとも上下方向と左右方向についてエッジの検出ができる。従って、「１」と「５」と「３」と「７」のいずれかだけでなければ概ねエッジの検出は可能である。
【００７４】
次に、適当なサイズのアンシャープマスク４０を選択した場合に必ずしも全ての升目についての演算が必要ともいえない。図７に示す「７×７」のアンシャープマスク４２において最外周の升目の重み付けは「０」あるいは「１」であり、「０」については重み付けの乗算が無意味であるし、「１」の重み付けは升目の全合計値の「６３２」と比較すれば非常にわずかな重みしか持たないといえる。
【００７５】
このような状況から本実施形態においては、「７×７」のアンシャープマスク４２の代わりに、図１１に示す「５×５」のアンシャープマスク４４を使用している。同図に示すアンシャープマスク４４は「７×７」のアンシャープマスク４２の最外周を省略したものであり、内側の「５×５」のマスク部分で重み付けは一致している。むろん、同様のことは図８に示す「１３×１３」のアンシャープマスク４３の最外周を省略するものとしても同様の効果が得られる。
【００７６】
これらの場合において、具体的な処理量は次のようになる。「７×７」のアンシャープマスク４２の場合は、注目画素の回りに「４８（＝７×７−１）」個の画素があり、これだけの乗算と加算が必要である。しかしながら、実質的に同じ演算結果となる「５×５」のアンシャープマスク４４においては「２４（＝５×５−１）」回の演算となり、演算量は半減する。「１３×１３」のアンシャープマスク４３の場合は「１６８（＝１３×１３−１）」回から「１２０（＝１１×１１−１）」回へと減少する。
【００７７】
さらに、本実施形態においてはもう一点、次のようにして演算量を低減させている。ＲＧＢの階調データを対象とする場合、それぞれの成分値は各色成分の輝度（明度）に対応している。従って、（２）式の演算も本来はＲＧＢの各階調データに対して個別に行わなければならない。しかるに、アンシャープマスク４０の升目の数だけの乗算と加算とを繰り返すとなるとこのような各成分ごとの個別の演算では演算量が多いと言わざるを得ない。
【００７８】
一方、かかるエッジ強調は色相を保持して輝度を変えることによって実施可能なものともいえる。従って、ＲＧＢの各成分値に対して演算するのではなく、輝度を求めて演算すれば処理量が低減するといえる。ただ、ＲＧＢの表色空間の画像データから正確な輝度を求めるとすればいわゆる色変換を行わなければならず、処理は多大になる。このため、本実施形態においては、カラーテレビジョンの例にならって、輝度Ｙを（４）式に示すように、ＲＧＢの階調データの単純な重み付け加算で変換している。
【００７９】
Ｙ＝０．３０Ｒ＋０．５９Ｇ＋０．１１Ｂ          …（４）
このようにして輝度Ｙを求めるとすると、（１）式と（２）式は（５）式と（６）式のように書き換えられる。
【００８０】
【数２】
2003101785.tif 000002
【００８１】
Ｙ”ｉｊ＝Ｙｉｊ＋Ｃ×｛Ｙｉｊ−Ｙ’ｉｊ｝      …（６）
さらに、Ｙｉｊ−Ｙ’ｉｊを（７）式のように置き換えれば、
ｄｅｌｔａ＝｛Ｙｉｊ−Ｙ’ｉｊ｝×Ｃ            …（７）
変換後のＲ’Ｇ’Ｂ’は（８）式のように演算可能となる。
【００８２】
Ｒ’＝Ｒ＋ｄｅｌｔａ
Ｇ’＝Ｇ＋ｄｅｌｔａ
Ｂ’＝Ｂ＋ｄｅｌｔａ                            …（８）
このようにすれば乗算と加算は１／３となるので、全体の処理時間としても５０？７０％程度の減少が可能となる。また、変換結果は色ノイズの強調がなくなり、画質が向上した。なお、輝度Ｙを求めるときに必ずしも（４）式のように厳格な重み付けを行う必要もない。例えば、（９）式のように単純な平均値でもさほど大きな誤差はでない。
【００８３】
Ｙ＝（Ｒ＋Ｇ＋Ｂ）／３                          …（９）
さらに簡易にするならば、（４）式において最も輝度Ｙに対する貢献値の大きいＧ成分だけで輝度Ｙとみなしてしまっても必ずしも大きな誤差は出ない。
【００８４】
次に、上記構成からなる本実施形態の動作を順を追って説明する。
【００８５】
写真画像をスキャナ１１で読み込み、プリンタ３１にて印刷する場合を想定する。すると、まず、コンピュータ本体２１にてオペレーティングシステム２１ａが稼働しているもとで、アプリケーション２１ｄを起動させ、スキャナ１１に対して写真の読み取りを開始させる。読み取られた画像データが同オペレーティングシステム２１ａを介してアプリケーション２１ｄに取り込まれたら、まず、ステップＳ１０２にて画素数を検知する。本実施形態においては、縦横の画素数のうちいずれか少ない方の画素数から（３）式に基づいてｒａｔｉｏを算出し、算出されたｒａｔｉｏの所属範囲からエッジ強調係数Ｃを求める。また、このエッジ強調係数Ｃに対応させてアンシャープマスク４１〜４３についても選択する。
【００８６】
次に、各画素の画像データについて実際のエッジ強調処理を実行するが、ステップＳ１０６では注目画素と周縁の画素のうち、図１０に示す「１」〜「４」の四方向の画素との間で画像データを比較する。そして、いずれか一つでも所定のしきい値（例えば、「２０」）以上の差がある場合にのみ、ステップＳ１０８にてアンシャープマスクで強調演算を実行する。この場合にも、本来の「７×７」のアンシャープマスク４２を利用するのではなく最外周を省略した「５×５」のアンシャープマスク４４を利用するし、実際の演算は（４）の輝度Ｙを利用して実行することにより演算量が低減する。
【００８７】
そして、一画素ごとにステップＳ１１０にて注目画素を順次移動させていき、ステップＳ１１２にて最終画素と判断されたらこのエッジ強調処理を終了する。
【００８８】
この後、エッジ強調された画像データをビデオドライバ２１ｃを介してディスプレイ３２に表示し、良好であればプリンタドライバ２１ｂを介してプリンタ３１にて印刷させる。すなわち、同プリンタドライバ２１ｂはエッジ強調されたＲＧＢの階調データを入力し、所定の解像度変換を経てプリンタ３１の印字ヘッド領域に対応したラスタライズを行なうとともに、ラスタライズデータをＲＧＢからＣＭＹＫへ色変換し、その後でＣＭＹＫの階調データから二値データへ変換してプリンタ３１へ出力する。
【００８９】
以上の処理により、スキャナ１１を介して読み込まれた写真の画像データは自動的に最適なエッジ強調を施されてディスプレイ３２に表示された後、プリンタ３１にて印刷される。
【００９０】
このように、画像処理の中枢をなすコンピュータ本体２１はステップＳ１０２にて入力画像データの画素数を検知し、この検知された画素数に基づいてステップＳ１０４にてエッジ強調係数Ｃとエッジ強調処理に利用するアンシャープマスク４０の大きさを自動的に決定し、ステップＳ１０８ではこれらを利用して最適なエッジ強調処理を実行する。また、エッジ強調処理をするにあたってはその演算量を減らすため、ステップＳ１０６にて隣接する画素間で画像データの差が大きいものだけに限定するし、実際の演算においてもＲＧＢの成分値で個別に演算するのではなく、輝度値からＲＧＢの成分値に対する増減値を求めて演算し、全体の演算処理量を極めて低減させることもできる。
【図面の簡単な説明】
【図１】本発明の一実施形態にかかる画像処理装置の具体的ハードウェア構成例のブロック図である。
【図２】コンピュータの内部で行なわれる処理を示すブロック図である。
【図３】本発明の画像処理装置の他の適用例を示す概略ブロック図である。
【図４】本発明の画像処理装置の他の適用例を示す概略ブロック図である。
【図５】本発明の画像処理装置におけるエッジ強調処理を示すフローチャートである。
【図６】最小サイズのアンシャープマスクを示す図である。
【図７】中サイズのアンシャープマスクを示す図である。
【図８】最大サイズのアンシャープマスクを示す図である。
【図９】画像データに対して注目画素を移動させていく順序を示す図である。
【図１０】画像データにおいて隣接画素との比較方向を示す図である。
【図１１】中サイズのアンシャープマスクの改良版を示す図である。
【符号の説明】
１０…画像入力装置
２０…画像処理装置
２１…コンピュータ本体
３０…画像出力装置
４０（４１〜４４）…アンシャープマスク