(57)【要約】【課題】  画像を拡大縮小する際に、中間値画素の影響を軽減する。【解決手段】  エッジ近接画素抽出部２０は、補間画素の近傍１６画素から、エッジ検出部１０により検出されたエッジのエッジ近接画素を抽出する。補間演算部３０は、補間画素の隣接する２×２画素内に、エッジ検出部１０によりエッジが検出されている場合、補間画素の近傍１６画素のうち、該エッジに対して補間画素と同じ側に位置する画素を参照画素として選出すると共に、エッジ近接画素である参照画素の重みが、エッジ近接画素ではない参照画素の重みよりも小さくなるように各参照画素の重みを設定する。そして、設定した重みを用いて、各参照画素の画素値による補間演算を行って補間画素の画素値を算出する。【選択図】          図１
2005142858.tif 000002
【特許請求の範囲】
【請求項１】
被写体を撮像して得たデジタル画像の画素間に位置する補間画素の画素値を求めるに際し、前記補間画素の近傍に位置する前記デジタル画像の画素間にエッジが存在するか否かを検出し、
前記エッジが検出された場合と検出されなかった場合とで、前記補間画素の近傍の画素から異なる参照画素を選出し、
選出された前記参照画素の画素値による補間演算を行って前記補間画素の画素値を求める画像補間方法において、
前記検出により検出された前記エッジを挟んで隣接する２つの画素のうちの１つとなるエッジ近接画素の重みを、前記エッジ近接画素以外の参照画素の重みよりも小さくして前記補間演算を行うことを特徴とする画像補間方法。
【請求項２】
被写体を撮像して得たデジタル画像の画素間に位置する補間画素の画素値を求めるに際し、前記補間画素の近傍に位置する前記デジタル画像の画素間にエッジが存在するか否かを検出し、
前記エッジが検出された場合と検出されなかった場合とで、前記補間画素の近傍の画素から異なる参照画素を選出し、
選出された前記参照画素の画素値による補間演算を行って前記補間画素の画素値を求める画像補間方法において、
前記参照画素が、前記被写体におけるエッジ部を表す画素であって、該エッジの両側の部分の信号値の中間値を示す中間値画素であるか否かを判定し、
前記中間値画素であると判定された参照画素の重みを、前記中間値画素ではないと判定された参照画素の重みよりも小さくして前記補間演算を行うことを特徴とする画像補間方法。
【請求項３】
被写体を撮像して得たデジタル画像の画素間に位置する補間画素の画素値を求めるに際し、前記補間画素の近傍に位置する前記デジタル画像の画素間にエッジが存在するか否かを検出するエッジ検出手段と、
前記エッジが検出された場合と検出されなかった場合とで、前記補間画素の近傍の画素から異なる参照画素を選出する参照画素選出手段と、
選出された前記参照画素の画素値による補間演算を行って前記補間画素の画素値を求める補間演算手段とを有してなる画像補間装置において、
前記補間演算手段が、前記検出手段により検出された前記エッジを挟んで隣接する２つの画素のうちの１つとなるエッジ近接画素の重みを、前記エッジ近接画素以外の参照画素の重みよりも小さくして前記補間演算を行うことを特徴とする画像補間装置。
【請求項４】
被写体を撮像して得たデジタル画像の画素間に位置する補間画素の画素値を求めるに際し、前記補間画素の近傍に位置する前記デジタル画像の画素間にエッジが存在するか否かを検出するエッジ検出手段と、
前記エッジが検出された場合と検出されなかった場合とで、前記補間画素の近傍の画素から異なる参照画素を選出する参照画素選出手段と、
選出された前記参照画素の画素値による補間演算を行って前記補間画素の画素値を求める補間演算手段とを有してなる画像補間装置において、
前記参照画素が、前記被写体におけるエッジ部を表す画素であって、該エッジの両側の部分の信号値の中間値を示す中間値画素であるか否かを判定する中間値画素判定手段をさらに有し、
前記補間演算部が、前記中間値画素であると判定された参照画素の重みを、前記中間値画素ではないと判定された参照画素の重みよりも小さくして前記補間演算を行うものであることを特徴とする画像補間装置。
【請求項５】
前記中間値画素判定手段が、前記デジタル画像上の直列に隣接する３つの画素の互いに相隣する２つの画素の間のいずれにおいても前記検出手段により前記エッジが検出された場合、前記３つの画素の中央に位置する画素を前記中間値画素であると判定するものであることを特徴とする請求項４記載の画像補間装置。
【請求項６】
前記中間値画素判定手段が、前記デジタル画像上の直列に隣接する３つの画素の互いに相隣する２つの画素の間のいずれにおいても前記検出により前記エッジが検出された場合、前記３つの画素の中央に位置する画素を前記中間値画素の候補画素として選別し、選別された該候補画素を含む前記隣接する３つの画素の画素値を比較し、比較される前記３つの画素の画素値が該３つの画素が並ぶ方向に沿って単調増加または単調減少するときにおいてのみ、該候補画素が前記中間値画素であると判定するものであることを特徴する請求項４記載の画像補間装置。
【請求項７】
前記エッジ検出手段が、検出された前記エッジの延びる方向を判別するエッジ方向判別手段を有し、
前記中間値画素判定手段が、前記画像上の直列に隣接する３つの画素の互いに相隣する２つの画素の間のいずれにおいても前記検出により前記エッジが検出され、かつ検出された２つの前記エッジの延びる方向が同じである場合にのみ、前記中央に位置する画素を前記候補画素として選別するものであることを特徴とする請求項６記載の画像補間装置。
【請求項８】
被写体を撮像して得たデジタル画像の画素間に位置する補間画素の画素値を求めるに際し、前記補間画素の近傍に位置する前記デジタル画像の画素間にエッジが存在するか否かを検出するエッジ検出処理と、
前記エッジが検出された場合と検出されなかった場合とで、前記補間画素の近傍の画素から異なる参照画素を選出する参照画素選出処理と、
選出された前記参照画素の画素値による補間演算を行って前記補間画素の画素値を求める補間演算処理とを有する画像補間処理をコンピュータに実行させるプログラムであって、
前記補間演算処理が、前記検出により検出された前記エッジを挟んで隣接する２つの画素のうちの１つとなるエッジ近接画素の重みを、前記エッジ近接画素以外の参照画素の重みよりも小さくして前記補間演算を行うことを特徴とするプログラム。
【請求項９】
被写体を撮像して得たデジタル画像の画素間に位置する補間画素の画素値を求めるに際し、前記補間画素の近傍に位置する前記デジタル画像の画素間にエッジが存在するか否かを検出するエッジ検出処理と、
前記エッジが検出された場合と検出されなかった場合とで、前記補間画素の近傍の画素から異なる参照画素を選出する参照画素選出処理と、
選出された前記参照画素の画素値による補間演算を行って前記補間画素の画素値を求める補間演算処理とを有する画像補間処理をコンピュータに実行させるプログラムであって、
前記画像補間処理が、前記参照画素が、前記被写体におけるエッジ部を表す画素であって、該エッジの両側の部分の信号値の中間値を示す中間値画素であるか否かを判定する中間値画素判定処理を有し、
前記補間演算処理が、前記中間値画素であると判定された参照画素の重みを、前記中間値画素ではないと判定された参照画素の重みよりも小さくして前記補間演算を行うことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば画像データにより表されるデジタル画像を拡大縮小するに際し、画像を構成する画素間に補間画素を補間する画像補間方法および装置並びにそのためのプログラムに関するものである。
【背景技術】
【０００２】
従来より、ネガフィルムやカラーリバーサルフィルムなどの写真フィルムに記録された写真画像をスキャナなどの読取装置で光電的に読み取って得たデジタル画像や、デジタルスチルカメラ（ＤＳＣ）やカメラ付き携帯電話などのデジタル撮像装置により被写体を撮像することにより得られた画像データを、それを再生するモニタなどの再生装置のサイズに適合するように拡大縮小することが行われている。例えば、カメラ付き携帯電話により被写体を撮像して得て得られた画像データを電子メールとして送信する際に、送信先の携帯電話に備えられた液晶モニタのサイズに応じて画像データを拡大縮小するサービスが提供されている。
【０００３】
このような画像データの拡大縮小は、画像データにより表される画像を構成する画素の間に拡大縮小率に応じて新たな画素（以下補間画素という）を補間することにより行われる。このような補間方法としては、線形補間法、最近傍法、ガウシアンフィルタ、バイリニア法およびバイキュービック法などの種々の方法が知られている。これらの方法は、補間画素の近傍の画素を参照画素とし、参照画素の画素値による補間演算を行って補間画素の画素値を算出する。
【０００４】
しかしながら、単一の方法のみを用いて画像データを拡大縮小した場合、画像に含まれるエッジ部分にボケやシャギーが発生するという問題がある。このため、画像に含まれるエッジ成分を検出し、エッジ部分と非エッジ部分とで異なる処理による補間演算を行う方法が提案されている（特許文献１参照）。
【０００５】
特許文献１に記載された方法などにおいて画像からエッジを検出するためには、ソーベルフィルタやラプラシアンフィルタが一般的に用いられる。このようなソーベルフィルタやラプラシアンフィルタは、最短３タップの奇数タップ数を有し、フィルタリングにより注目画素がエッジであるか否かを判定することによりエッジを検出することができる。
【０００６】
一方、画像を拡大縮小する場合には、画素間に補間画素を補間するため、画像に含まれる画素ではなく、画素の間にエッジが判定するか否かを判定する必要がある。上述した奇数タップ数のフィルタを用いてエッジを検出する場合、画像中の注目画素そのものがエッジであるか否かを判定することができるのみであり、画素間にエッジが存在するか否かを判定することができない。
【０００７】
画素間にエッジがあるか否かを判定する最も簡単な方法としては、画像の隣接する２つの画素に対して例えば図４に示す差分フィルタによるフィルタリング処理を施してこの２つの画素の画素値の差分を得、この差分の絶対値が所定の閾値以上である場合に、この隣接する２つの画素間にエッジが存在すると判定する手法が考えられる。以下本発明の説明において、このようなエッジ検出方法を第１のエッジ検出方法という。
【０００８】
また、隣接する２つの画素の画素値のみではなく、直列に隣接する４つの画素の画素値に基づいてこの４つの画素の中央に位置する２つの画素間にエッジが存在するか否かを判定する手法を用いることもできる。具体的には、例えば図２６に示す直列に隣接する４つの画素Ｇ１、Ｇ２、Ｇ３、Ｇ４の中央に位置する２つの画素Ｇ２、Ｇ３の間にエッジが存在するか否かを判定するのに当たって、まず、画素Ｇ１〜Ｇ４について、互いに隣接する２つの画素からなる３つの画素ペア（Ｇ１，Ｇ２）、（Ｇ２、Ｇ３）、（Ｇ３，Ｇ４）に対して差分フィルタによるフィルタリング処理を施して各ペアの画素の差分を１次差分ｄ１、ｄ２、ｄ３として算出する。続いて、３つの１次差分ｄ１、ｄ２、ｄ３における隣接する２つの１次差分ペア（ｄ１，ｄ２）、（ｄ２，ｄ３）に対して、同様に差分フィルタによるフィルタリング処理を施して、各１次差分ペアの差分を２次差分ｄ４、ｄ５として算出する。画像中に直列に隣接する４つの画素に対して算出した１次差分と２次差分の正負は全１８種類の組合せがあり、図２７と図２８、図２９は、この１８種類の組合せと、この４つの画素のプロファイル形状との関係を示している。そのうち、隣接する２つの画素Ｇ２、Ｇ３の間にエッジが存在することを示す組合せは、図２７に示すエッジ１およびエッジ２の２通りである。エッジ１は、（ｄ１，ｄ２，ｄ３，ｄ４，ｄ５）＝（＋，＋，＋，＋，−）となる右上がりエッジおよび（ｄ１，ｄ２，ｄ３，ｄ４，ｄ５）＝（−，−，−，−，＋）となる左上がりエッジの２種類があり、エッジ２は、（ｄ１，ｄ２，ｄ３，ｄ４，ｄ５）＝（＋，＋，＋，＋，＋）となる下に凸の右上がりエッジ、（ｄ１，ｄ２，ｄ３，ｄ４，ｄ５）＝（＋，＋，＋，−，−）となる上に凸の右上がりエッジ、（ｄ１，ｄ２，ｄ３，ｄ４，ｄ５）＝（−，−，−，＋，＋）となる下に凸の左上がりエッジ、（ｄ１，ｄ２，ｄ３，ｄ４，ｄ５）＝（−，−，−，−，−）となる上に凸の左上がりエッジの４種類がある。直列に隣接する４つの画素に対して１次差分ｄ１、ｄ２、ｄ３および２次差分ｄ４、ｄ５を求め、これらの差分の正負の関係が、図２７に示すエッジ１またはエッジ２の関係となる場合に、隣接する２つの画素Ｇ２、Ｇ３の間にエッジが存在すると判定すると共に、これらの差分の正負の関係が、図２８および図２９に示すような山、谷、その他の関係となる場合に、隣接する２つの画素Ｇ２、Ｇ３の間にエッジが存在しないと判定する。なお、以下本発明の説明において、このようなエッジ検出方法を第２のエッジ検出方法という。
【０００９】
さらに、前述した第１と第２のエッジ検出方法の併合となるエッジ検出方法を用いて、より精度良く隣接する２つの画素間にエッジが存在するか否かの検出を行うこともできる。具体的には、第２の方法のように、直列に隣接する４つの画素Ｇ１〜Ｇ４に対して１次差分ｄ１、ｄ２、ｄ３および２次差分ｄ４、ｄ５を求め、これらの差分の正負の関係が、図２７に示すエッジ１またはエッジ２の関係となる場合に、隣接する２つの画素Ｇ２、Ｇ３の間にエッジが存在すると共に、これらの差分の正負の関係が、図２８に示すような山、谷、その他の関係となる場合に、隣接する２つの画素Ｇ２、Ｇ３の間にエッジが存在しないとするようにして第１の判定を行う。第１の判定において、隣接する２つの画素Ｇ２、Ｇ３の間にエッジが存在すると判定された場合において、画素Ｇ２、Ｇ３の画素値の差分の絶対値が所定の閾値以上であるか否かをさらに判定し（第２の判定）、第２の判定が肯定された場合においてのみ、画素Ｇ２、Ｇ３の間に真のエッジが存在すると判定する。こうすることによって、画素Ｇ２、Ｇ３の画素値の差が非常にわずかでノイズと見なせるような場合に、そこがエッジであると誤判定してしまうことを防ぐことができる。なお、以下本発明の説明において、このようなエッジ検出方法を第３のエッジ検出方法という。
【００１０】
さらに、第１のエッジ検出方法の改良方法として、２つの隣接する画素間の差分の絶対値が所定の閾値（第１の閾値）以上である場合に、この２つの画素間にエッジが存在すると判定すると共に、２つの隣接する画素間の差分の絶対値がこの第１の閾値より小さいものの、第１の閾値よりも小さい閾値（第２の閾値）以上であり、かつこの２つの隣接する画素を中央とする直列に隣接する４つ以上の複数画素に含まれる互い隣接する２つの画素からなる各画素ペアの差分の絶対値のうちの最大値である場合に中央に隣接する２つの画素間にエッジが存在すると判定するようにしてエッジを検出することもできる。こうすることによって、急なエッジのみならず、比較的に緩やかなエッジも検出することができる。なお、以下本発明の説明において、このようなエッジ検出方法を第４のエッジ検出方法という。
【００１１】
これらの例に挙げたように、画像を構成する画素間にエッジが存在するか否かを判定して画像の画素間におけるエッジを検出する方法が様々考えられる。画像を拡大縮小するために画像を構成する画素間に補間画素を補間する際に、補間画素の近傍の画素間にエッジが存在するか否か、どの方向のエッジかなどによって、異なる参照画素を選出したり、異なる補間演算方法で補間画素の画素値を求めるようにしたりなどするようにすれば、拡大縮小処理した画像の画質の低下を防ぐことができる。例えば、補間画素の近傍の画素間にエッジが検出されていない場合に、補間画素の近傍に位置する画素（例えば補間画素を囲む４×４の１６画素）全部を参照画素とし、参照画素の画素値に対して補間演算を行うことによって補間画素の画素値を求める一方、補間画素の近傍の画素間にエッジが検出されていれば、この補間画素がエッジのいずれ側に存在することを判定すると共に、補間画素の近傍の画素のうち、エッジに対して、補間画素と同じ側に位置する画素のみを参照画素として補間画素の画素値を求めるようにして、拡大縮小された画像の画質低下を防ぐ方法が考えられる。勿論、参照画素のみならず、補間画素の近傍の画素間にエッジが検出されたか否かとで異なる補間演算の方法を用いるようにしてもよい。
【特許文献１】特開２００２−３１９０２０号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
ところで、写真フィルムに記録された画像を光電的に読み取って得たデジタル画像や、デジタル撮像装置により被写体を撮像して得たデジタル画像において、アナログ画像信号をデジタル化するために行われるサンプリング処理により、被写体におけるエッジを含む部分(以下エッジ部という)を表す画素が、該エッジの両側の部分の信号値の中間値を示す画素（以下このような画素を中間値画素という）となる。例えば、図２４（ａ）に示す被写体のデジタル画像のＸ方向において、図２４（ｂ）に示すような画素構成になるが、これらの画素のうち、図２４（ａ）に示す被写体におけるエッジＬを含む部分を表す画素Ｇｂは、エッジＬの左側の部分の信号値と、エッジＬの右側の信号値との中間の信号値を示すこととなる。
【００１３】
そのため、例えば前述したように、補間画素の近傍の画素間にエッジが存在するか否かを検出し、存在していれば、補間画素の近傍に位置する画素のうち、検出されたエッジに対して、補間画素と同じ側に位置する画素のみを参照画素とし、参照画素の画素値による補間演算を行って補間画素の画素値を求める場合、参照画素のうち、中間値画素が入っていれば、補間画素の画素値が中間値画素の画素値に影響されるため、拡大縮小された画像にボケが残り、最悪の場合、原画像よりも広がってしまうという問題がある。
【００１４】
本発明は、上記事情に鑑みてなされたものであり、拡大縮小された画像中のボケを軽減することができる画像補間方法および装置並びにプログラムを提供することを目的とするものである。
【課題を解決するための手段】
【００１５】
本発明の第１の画像補間方法は、被写体を撮像して得たデジタル画像の画素間に位置する補間画素の画素値を求めるに際し、前記補間画素の近傍に位置する前記デジタル画像の画素間にエッジが存在するか否かを検出し、
前記エッジが検出された場合と検出されなかった場合とで、前記補間画素の近傍の画素から異なる参照画素を選出し、
選出された前記参照画素の画素値による補間演算を行って前記補間画素の画素値を求める画像補間方法において、
前記検出により検出された前記エッジを挟んで隣接する２つの画素のうちの１つとなるエッジ近接画素の重みを、前記エッジ近接画素以外の参照画素の重みよりも小さくして前記補間演算を行うことを特徴とするものである。
【００１６】
本発明の第２の補間演算方法は、被写体を撮像して得たデジタル画像の画素間に位置する補間画素の画素値を求めるに際し、前記補間画素の近傍に位置する前記デジタル画像の画素間にエッジが存在するか否かを検出し、
前記エッジが検出された場合と検出されなかった場合とで、前記補間画素の近傍の画素から異なる参照画素を選出し、
選出された前記参照画素の画素値による補間演算を行って前記補間画素の画素値を求める画像補間方法において、
前記参照画素が、前記被写体におけるエッジ部を表す画素であって、該エッジの両側の部分の信号値の中間値を示す中間値画素であるか否かを判定し、
前記中間値画素であると判定された参照画素の重みを、前記中間値画素ではないと判定された参照画素の重みよりも小さくして前記補間演算を行うことを特徴とするものである。
【００１７】
ここで、「デジタル画像」とは、被写体を撮像して得た画像のデジタルデータにより表されるものを意味し、デジタルカメラにより取得したものに限らず、ネガフィルムやカラーリバーサルフィルムなどの写真フィルムに記録された写真画像や、プリントした写真画像などをスキャナなどの読取装置で光電的に読み取って得たものも含むものである。なお、以下の説明において、デジタル写真画像を略して単に画像という。
【００１８】
また、「被写体におけるエッジ部」とは、被写体そのものに存在するエッジを含む部分を意味し、被写体を撮像して得たデジタル写真画像から検出したエッジは、必ずしも「被写体におけるエッジ部」のエッジと一致するとは限らない。例えば、図２４（ａ）に示す例の場合、被写体の左部分と右側部分との境界線Ｌがこの被写体におけるエッジとなるが、図２４（ｂ）に示すように、この被写体を撮像して得たデジタル画像から検出したエッジは、境界線Ｌが間にする２つのエッジまたは境界線Ｌの両側のいずれか一方に位置する１つのエッジとなる可能性がある。
【００１９】
また、「中間値画素」とは、前記被写体におけるエッジ部を表す画素であり、その画素値が該エッジの両側の部分の信号値を表す必要がある画素であるため、必然的に、該エッジの両側の部分の信号値の中間値を示すこととなる。
【００２０】
本発明の第１の画像補間装置は、被写体を撮像して得たデジタル画像の画素間に位置する補間画素の画素値を求めるに際し、前記補間画素の近傍に位置する前記デジタル画像の画素間にエッジが存在するか否かを検出するエッジ検出手段と、
前記エッジが検出された場合と検出されなかった場合とで、前記補間画素の近傍の画素から異なる参照画素を選出する参照画素選出手段と、
選出された前記参照画素の画素値による補間演算を行って前記補間画素の画素値を求める補間演算手段とを有してなる画像補間装置において、
前記補間演算手段が、前記検出手段により検出された前記エッジを挟んで隣接する２つの画素のうちの１つとなるエッジ近接画素の重みを、前記エッジ近接画素以外の参照画素の重みよりも小さくして前記補間演算を行うことを特徴とするものである。
【００２１】
本発明の第２の画像補間装置は、被写体を撮像して得たデジタル画像の画素間に位置する補間画素の画素値を求めるに際し、前記補間画素の近傍に位置する前記デジタル画像の画素間にエッジが存在するか否かを検出するエッジ検出手段と、
前記エッジが検出された場合と検出されなかった場合とで、前記補間画素の近傍の画素から異なる参照画素を選出する参照画素選出手段と、
選出された前記参照画素の画素値による補間演算を行って前記補間画素の画素値を求める補間演算手段とを有してなる画像補間装置において、
前記参照画素が、前記被写体におけるエッジ部を表す画素であって、該エッジの両側の部分の信号値の中間値を示す中間値画素であるか否かを判定する中間値画素判定手段をさらに有し、
前記補間演算部が、前記中間値画素であると判定された参照画素の重みを、前記中間値画素ではないと判定された参照画素の重みよりも小さくして前記補間演算を行うものであることを特徴とするものである。
【００２２】
前記中間値画素判定手段は、前記デジタル画像上の直列に隣接する３つの画素の互いに相隣する２つの画素の間のいずれにおいても前記検出手段により前記エッジが検出された場合、前記３つの画素の中央に位置する画素を前記中間値画素であると判定するものとすることができる。
【００２３】
前記中間値画素判定手段は、前記デジタル画像上の直列に隣接する３つの画素の互いに相隣する２つの画素の間のいずれにおいても前記検出により前記エッジが検出された場合、前記３つの画素の中央に位置する画素を前記中間値画素の候補画素として選別し、選別された該候補画素を含む前記隣接する３つの画素の画素値を比較し、比較される前記３つの画素の画素値が該３つの画素が並ぶ方向に沿って単調増加または単調減少するときにおいてのみ、該候補画素が前記中間値画素であると判定するものであることが好ましい。
【００２４】
この場合、前記エッジ検出手段は、検出された前記エッジの延びる方向を判別するエッジ方向判別手段を有し、
前記中間値画素判定手段は、前記画像上の直列に隣接する３つの画素の互いに相隣する２つの画素の間のいずれにおいても前記検出により前記エッジが検出され、かつ検出された２つの前記エッジの延びる方向が同じである場合にのみ、前記中央に位置する画素を前記候補画素として選別するものであることがより好ましい。
【００２５】
なお、本発明の画像補間方法を、コンピュータに実行させるためのプログラムとして提供してもよい。
【発明の効果】
【００２６】
本発明の第１の画像補間方法および装置によれば、中間値画素が、必ず画素間のエッジを挟んで隣接する２つの画素のうちの１つとなるエッジ近接画素であることに着目し、補間画素の近傍の画素間にエッジがある場合、参照画素のうちのエッジ近接画素の重みを、エッジ近接画素以外の参照画素の重みよりも小さくして補間演算を行って補間画素の画素値を求めるようにしているので、補間画素により構成された画像（拡大縮小された画像）において、中間値画素に起因するボケの残留および広がりを軽減することができ、拡大縮小された画像の画質が良い。
【００２７】
本発明の第２の画素補間方法および装置によれば、エッジ近接画素が必ず中間値画素であるとは限らないことに着目し、参照画素が中間値画素であるか否かを判定して、中間値画素である参照画素の重みを、中間値画素ではない参照画素の重みよりも小さくして補間演算を行って補間画素の画素値を求めるようにしているので、拡大縮小された画像において、中間値画素に起因するボケの残留および広がりをより確実に軽減することができる。
【００２８】
この場合、例えば、画像上の直列に隣接する３つの画素のうちの中央に位置する画素と、他の２つの画素のいずれとの間にもエッジが検出された場合（説明上の便宜のため、以下、直列に隣接する３つの画素の互いに相隣する２つの画素間のいずれにおいてもエッジが検出された場合のこの２つのエッジを隣接エッジという）、中央に位置する画素を、中間値画素であると判定することができる。例えば図２４（ａ）に示す例の被写体の画像に対して、画素間にエッジが存在するか否かを検出する方法、例えば前述した第２のエッジ検出方法、すなわち直列に隣接する４つの画素に対して１次差分および２次差分を求め、求められた１次差分と２次差分の正負の関係に基づいて、この４つの画素の中央に位置する２つの隣接する画素間にエッジがあるか否かを判定するようにしてエッジを検出する方法を適用すると、図２４（ｂ）に示すように、画素ＧａとＧｂとの間、画素ＧｂとＧｃとの間に夫々エッジＡ、エッジＢが検出される。そして、隣接エッジとなるエッジＡとエッジＢの間の画素Ｇｂが、図２４（ａ）に示す境界線Ｌ（被写体におけるエッジ）の両側の信号値の中間値を示す中間値画素として判定することができる。
【００２９】
また、隣接エッジにより挟まれた画素を中間値画素の候補画素とし、候補画素を選別する際に用いたこの候補画素を含む隣接する３つの画素の画素値を比較し、３つの画素の画素値が画素の並ぶ方向に沿って単調増加または単調減少するときにおいてのみ、この候補画素が中間値画素であると判定するようにしてもよい。
【００３０】
例えば、図２５（ａ）に示すような、1本の細い線が存在する被写体の画像のＸ方向において、図２５（ｂ）に示すような画素構成になる。この場合、前述した第１のエッジ検出方法、すなわち、隣接する２つの画素間の画素値の差分を求め、この差分の絶対値が、所定の閾値以上であるときに、この２つの画素間にエッジが存在すると判定するようにしてエッジを検出する前述した第１のエッジ検出方法を適用すると、画素Ｇ’ａと画素Ｇ’ｂとの間、画素Ｇ’ｂと画素Ｇ’ｃとの間にも夫々エッジＡ’とエッジＢ’が検出される。隣接エッジにより挟まれた画素を中間値画素として判定するようにすると、中央に位置する画素Ｇ’ｂが中間値画素とされるが、この場合において、候補画素Ｇ’ｂが細い線を示す画素であって、中間値画素ではない。前述した第４のエッジ検出方法を用いた場合にも、このような誤判定が起きる可能性がある。一方、エッジを検出する方法として前述した第２または第３のエッジ検出方法を適用すると、画素Ｇ’ａとＧ’ｂの間、画素Ｇ’ｂとＧ’ｃとの間にエッジが検出されないため、隣接エッジにより挟まれた画素を中間素として判定するようにしても、画素Ｇ’ｂが中間値画素として誤判定されることがない。すなわち、隣接エッジにより挟まれた画素を中間値画素として判定する方法は、中間値画素を検出することができるが、画像上の画素間にエッジが存在するか否かを検出する方法によっては、中間値画素ではない画素を中間値画素として誤判定する可能性がある。これに対し、隣接エッジ間の画素を候補画素とし、候補画素の画素値と、その前後の画素の画素値とを比較して画素値の変化形態に基づいて候補画素が中間値画素が否かの判定を行うようにしているので、図２５（ｂ）に示す例における画素Ｇ’ｂを中間値画素として誤判定することがなく、隣接する２つの画素間にエッジが存在するか否かを検出するエッジ検出方法に依存せず、より正確に中間値画素を検出することができる。中間値画素である参照画素と中間値画素ではない参照画素とで補間演算の際に用いられる重みが異なるので、中間値画素の判定が正確ほど、補間演算によって得られた画素値を有する補間画素により構成された画像（拡大縮小された画像）の画質が良い。
【００３１】
また、エッジの延びる方向を判別し、同じ方向に延びる隣接エッジにより挟まれた画素のみを中間値画素の候補画素とするようにすれば、より中間値画素の判定の精度を高めることができる。
【００３２】
なお、本発明のプログラムは、本発明の中間値画素判定方法をコンピュータに実行させることができる。
【発明を実施するための最良の形態】
【００３３】
以下、図面を参照して、本発明の実施形態について説明する。
【００３４】
図１は、本発明の第１の実施形態による画像拡大縮小装置の構成を示すブロック図である。図示のように、本実施形態による画像拡大縮小装置は、画像データＳ０および画像データＳ０の拡大縮小率Ｋの入力を受け付ける入力部１と、エッジ検出部１０と、エッジ近接画素抽出部２０と、補間画素の画素値を算出する補間演算部３０と、入力部１、エッジ検出部１０、エッジ近接画素抽出部２０および補間演算部３０の動作を制御する制御部５０とを備える。
【００３５】
ここで、画像データＳ０により表される画像は、図２に示すように２次元状に画素が並んで構成されてなるものであり、以下の説明においては、図２に示すようにｘ方向およびｙ方向を定めるものとする。なお、以下の説明において、画像データと、画像データにより表される画像とについて特に区別せず、参照符号も同じもの（ここではＳ０）を付与する。
【００３６】
図３に示すように、エッジ検出部１０は、フィルタリング部１２と、判定部１４と、エッジパターン分類部１６とを備えてなる。フィルタリング部１２は、まず画像Ｓ０上に補間画素Ｐの近傍に位置する４×４の１６画素（図５に示す１６画素Ｐ（ｉ，ｊ）（ｉ，ｊ＝−１〜２）。以下補間画素Ｐの１６画素という）に対して、互いに隣接する２つの画素からなる各画素ペアに対して図４に示す差分フィルタによるフィルタリング処理を施して夫々の画素ペアの差分（以下隣接画素ペアの差分をｄという）を算出する。なお、ここで互いに隣接する２つの画素とは、Ｐ（−１，０）とＰ（０，０）の２つの画素、またはＰ（−１，−１）とＰ（−１，０）の２つの画素のような、画素配列方向のｘ方向またはｙ方向において隣接する２つの画素に限らず、Ｐ（−１，−１）とＰ（０，０）の２つの画素や、Ｐ（０，１）とＰ（１，０）のような、２×２画素の対角線方向において隣接する２つの画素も含むものである。
【００３７】
判定部１４は、各画素ペアの差分ｄの絶対値が所定の閾値Ｔｈ以上であるか否かの判定を行い、この判定が肯定されると、該差分が対応する画素ペアの２つの画素の間にエッジが存在すると判定し、判定結果をエッジパターン分類部１６に出力する。
【００３８】
エッジパターン分類部１６は、判定部１４から出力されてきた判定結果に基づいて、各２×２の４つの画素内のエッジパターンを分類する。ここで、まず、画素Ｐ（０，０）、Ｐ（１，０）、Ｐ（１，１）、Ｐ（０，１）の４つの画素について説明する。図６に示すように、エッジパターン分類部１６は、エッジが存在する画素間の中点を結ぶ直線に応じてエッジパターンを分類する。図７から図９は、エッジが存在する位置に応じたエッジパターンを示す図である。図７から図９に示すように、エッジが存在する位置に応じてエッジパターンはパターン０〜パターン８の９種類のパターンに分類される。
【００３９】
なお、間ｅ１，ｅ２，ｅ３，ｅ４にエッジが存在する場合、および間ｅ１，ｅ２，ｅ３，ｅ４，ｅ５，ｅ６にエッジが存在する場合は、エッジパターンはパターン７であるのかパターン８であるのかが分からない。このため、エッジパターン分類部１６は、間ｅ１，ｅ２，ｅ３，ｅ４にエッジが存在する場合、および間ｅ１，ｅ２，ｅ３，ｅ４，ｅ５，ｅ６にエッジが存在する場合には、さらに画素Ｐ（０，０）と画素Ｐ（１，１）の画素値の差分の絶対値（｜ｄ１１｜とする）および画素（０，１）と画素（１，０）の画素値の差分の絶対値（｜ｄ１２｜とする）を算出し、｜ｄ１１｜＜｜ｄ１２｜の場合にはエッジパターンをパターン７に分類し、｜ｄ１１｜≧｜ｄ１２｜の場合にはエッジパターンをパターン８に分類する。
【００４０】
そしてエッジパターン分類部１６は、このようなエッジパターン分類処理を各２×２の４つの画素に対して行い、分類の結果をエッジ近接画素抽出部２０および補間演算部３０に出力する。図１０は、エッジパターン分類部１６による分類の結果の一例を示すものであり、この例では、補間画素Ｐに隣接する４つの画素（図中黒丸）内のエッジパターンがパターン４、４つの画素Ｐ（−１，−１）、Ｐ（０，−１）、Ｐ（０，０）、Ｐ（−１，０）内のエッジパターンがパターン０、４つの画素Ｐ（０，−１）、Ｐ（１，−１）、Ｐ（１，０）、Ｐ（０，０）内のエッジパターンがパターン５、４つの画素Ｐ（１，−１）、Ｐ（２，−１）、Ｐ（２，０）、Ｐ（１，０）内のエッジパターンがパターン０、４つの画素Ｐ（−１，０）、Ｐ（０，０）、Ｐ（０，１）、Ｐ（−１，１）内のエッジパターンがパターン２、４つの画素Ｐ（１，０）、Ｐ（２，０）、Ｐ（２，１）、Ｐ（１，１）内のエッジパターンがパターン０、４つの画素Ｐ（−１，１）、Ｐ（０，１）、Ｐ（０，２）、Ｐ（−１，２）内のエッジパターンがパターン４、４つの画素Ｐ（０，１）、Ｐ（１，１）、Ｐ（１，２）、Ｐ（０，２）内のエッジパターンがパターン０、および４つの画素Ｐ（１，１）、Ｐ（２，１）、Ｐ（２，２）、Ｐ（１，２）内のエッジパターンがパターン０である。図１０中の点線はこれらのエッジパターンを示すものである。なお、図１０に示すように補間画素Ｐの１６画素内の領域はエッジにより２つの領域Ａ１，Ａ２に分割される。なお、領域Ａ２を斜線で示す。
【００４１】
なお、エッジ検出部１０は、エッジパターン分類部１６によるエッジパターンの分類結果をエッジ近接画素抽出部２０および補間演算部３０に出力する。
【００４２】
エッジ近接画素抽出部２０は、エッジ検出部１０から出力されてきたエッジパターンの分類結果に基づいて、補間画素Ｐの１６画素内のエッジ近接画素を抽出する。具体的には、エッジを挟んで隣接する画素をエッジ近接画素として抽出する。図１０に示す例においては、画素Ｐ（０，−１）、Ｐ（１，−１）、Ｐ（０，０）、Ｐ（１，０）、Ｐ（−１，１）、Ｐ（０，１）、Ｐ（−１，２）計７つの画素がエッジ近接画素として抽出される。
【００４３】
補間演算部３０は、エッジ検出部１０によるエッジ検出の結果およびエッジ近接画素抽出部２０の抽出結果に基づいて補間画素のＰの画素値を算出するものである。図１１は、補間演算部３０の構成を示すブロック図である。図示のように、補間演算部３０は、補間画素Ｐがエッジのいずれ側に存在するかを判定する判定部３２と、補間画素Ｐの１６画素のうち、エッジに対して補間画素Ｐと同じ側に位置する画素を参照画素として選出する参照画素選出部３４と、参照画素の画素値による補間演算を行って補間画素Ｐの画素値を算出する演算部３６とを備える。ここで、補間演算部３０の詳細について説明する。
【００４４】
補間演算部３０は、補間画素Ｐと隣接する２×２画素内のエッジパターンがパターン０であり、すなわちこの領域内にエッジが存在しない場合、バイキュービック法を用いて補間画素Ｐの画素値を算出する。
【００４５】
ここで、バイキュービック法は３次補間の１手法であり、補間画素Ｐの１６画素を用いて補間画素Ｐの画素値を求める方法である。以下、図５を参照してバイキュービック法について説明する。
【００４６】
図５に示すように点Ｐを補間画素Ｐの位置とした場合、補間画素Ｐと隣接する図中黒丸の画素は第１次近傍、白丸で示される画素は第２次近傍と称される。第１次近傍および第２次近傍の夫々について、下記の式（１）に示すようにｘ方向およびｙ方向に夫々に独立に距離ｄｘ、ｄｙ（式（１）においては単にｄと示す）に対して重みＷｘ、Ｗｙを求め、最終的にその画素に対する重みＷ＝ＷｘＷｙを得る。
【数１】
2005142858.tif 000003
【００４７】
例えば、図５における画素Ｐ（−１，−１）の画素（第２次近傍）に対して、重みＷｘ、Ｗｙ、Ｗを求めると、
【数２】
2005142858.tif 000004
【００４８】
となる。
【００４９】
そして、Ｗ（ｉ，ｊ）を画素Ｐ（ｉ，ｊ）の重み、ｆ（ｉ，ｊ）を画素Ｐ（ｉ，ｊ）の画素値とすると、補間画素Ｐの画素値ｆ’（Ｐ）は、
【数３】
2005142858.tif 000005
【００５０】
により算出することができる。
【００５１】
一方、補間画素Ｐの隣接する２つの画素内にエッジがある場合、補間演算部３０は、補間画素Ｐの隣接する４画素内にエッジが無い場合と異なる補間演算を行う。以下、補間画素Ｐの隣接する４画素内にエッジが無い場合の補間演算を第１の補間演算（ここでは、バイキュービック補間演算）といい、補間画素Ｐの隣接する４つの画素内にエッジがある場合の補間演算を第２の補間演算という。
【００５２】
ここで、図１０の例を参照して補間演算部の第２の補間演算について具体的に説明する。
【００５３】
図１０に示すように、補間画素Ｐを囲む１６画素内の領域はエッジにより２つの領域Ａ１，Ａ２に分割される。領域Ａ２は斜線により示される。補間演算部３０は、まず、判定部３２により、１６画素内のエッジパターンに基づいて、補間画素Ｐがエッジを挟んでいずれの側に存在するかを判定する。例えば、図１０に示すように補間画素Ｐが領域Ａ１側に存在すると判定される。次に、補間演算部３０の参照画素選出部３４は、補間画素Ｐの１６画素のうち、エッジに対して補間画素Ｐと同じ側に存在する画素を参照画素として選出する。図１０の例において、領域Ａ１側の画素Ｐ（−１，−１），Ｐ（０，−１）、Ｐ（−１，０），Ｐ（０，０）、Ｐ（−１，１）の計５つの画素が補間演算に使用される参照画素として選出される。次に演算部３６は、参照画素選出部３４により選出された参照画素のうち、補間画素Ｐに近い位置の画素ほど重みを大きくするように各参照画素の第１の重みＷを設定する。図１０の例において、画素Ｐ（０，０）の第１の重みＷが最も大きくなるように、各参照画素の第１の重みＷが設定される。ここで、各参照画素Ｐ（−１，−１），Ｐ（０，−１）、Ｐ（−１，０），Ｐ（０，０）、Ｐ（−１，１）の画素値をＰｔ１〜Ｐｔ５とし、夫々に対して第１の重みＷｉが設定される。
【００５４】
次に、演算部３６は、参照画素がエッジ近接画素か否かに応じて、エッジ近接画素の重みを、エッジ近接画素ではない参照画素の重みより小さくするように各参照画素の第２の重みＱを設定する。図１０の例の場合、エッジ近接画素抽出部２０によりエッジ近接画素として抽出された参照画素Ｐ（０，−１）、Ｐ（０，０）、Ｐ（−１，１）の３つの画素の第２の重みＱが、エッジ近接画素ではない参照画素Ｐ（−１，１）、Ｐ（−１，０）の第２の重みＱより小さくなるように設定される。
【００５５】
そして、演算部３６は、設定した２つの重みＷ、Ｑを用いて、下記の式（６）に示す演算を施すことにより、補間画素Ｐの画素値（ここではＰｔとする）を算出する。
【数４】
2005142858.tif 000006
【００５６】
図１２は、本実施形態の画像拡大縮小装置において行われる処理を示すフローチャートである。なお、本実施形態においては、補間画素Ｐは、画像Ｓ０の画素の間に存在するものとする。まず、入力部１は拡大縮小する画像データＳ０および画像データＳ０の拡大縮小率Ｋの入力を受け付ける（Ｓ１）。そして、フィルタリング部１２は、拡大縮小率Ｋに応じた最初の補間画素Ｐ（例えば拡大縮小された画像データＳ１により表される画像上の左上に位置する画素）の近傍に位置する４×４の１６画素（補間画素Ｐの１６画素）について、隣接する２つの画素からなる画素ペアに対して差分フィルタによるフィルタリング処理を施して夫々の画素ペアの差分を算出する（Ｓ１０）。
【００５７】
次いで、判定部１４は、各画素ペアの差分の絶対値が所定の閾値Ｔｈ以上でるか否かに基づいて、各画素ペアの２つの画素の間にエッジが存在するか否かの判定を行う。具体的には、画素ペアの差分の絶対値が閾値Ｔｈ以上であれば、この画素ペアの２つの画素の間にエッジが存在すると判定する一方、画素ペアの差分の絶対値が閾値Ｔｈより小さければ、この画素ペアの２つの画素の間にエッジが存在しないと判定する。
【００５８】
エッジパターン分類部１６は、判定部１４からの判定結果に基づいて、各２×２画素内におけるエッジのパターンを分類して（Ｓ２０）、エッジ近接画素抽出部２０および補間演算部３０に出力する（Ｓ３０）。エッジ近接画素抽出部２０は、補間画素Ｐの１６画素のうち、エッジ近接画素となる画素を抽出して補間演算部３０に出力する（Ｓ４０）。補間演算部３０は、エッジパターン分類部１６の分類結果に基づいて、補間画素Ｐの隣接する２×２画素内のエッジパターンがパターン０である場合には、この領域内にエッジが存在しないと判定（Ｓ５０：Ｎｏ）すると共に、補間画素Ｐの１６画素の画素値に対して、第１の補間演算Ｂ１、すなわちバイキュービック補間法による補間演算を行って補間画素Ｐの画素値を求める（Ｓ６０）。一方、補間画素Ｐの隣接する２×２画素内のエッジパターンがパターン０以外である場合には、この領域内にエッジが存在すると判定（Ｓ５０：Ｙｅｓ）すると共に、第２の補間演算Ｂ２を行って補間画素Ｐの画素値を求める（Ｓ７０）。
【００５９】
制御部５０は、画像Ｓ０に対して全ての補間画素Ｐについて画素値を算出したか否かを判定し（Ｓ７５）、ステップＳ７５が否定されると、画素値を算出する補間画素Ｐを次の補間画素Ｐに設定し（Ｓ８０）、ステップＳ１０からの処理に戻る。一方、ステップＳ８０が肯定されると、制御部５０は、補間画素Ｐからなる拡大縮小された画像データＳ１を出力し（Ｓ９０）、処理を終了する。
【００６０】
図１３は、補間画素Ｐの隣接する２×２画素内にエッジがある場合に、補間演算部３０により行われる第２の補間演算Ｂ２の詳細を示すフローチャートである。図示のように、補間演算部３０は、まず、判定部３２により、この１６画素の領域内において、補間画素Ｐがエッジを挟んでいずれの側に存在するかを判定する（Ｓ７１）。そして、参照画素選出部３４は、エッジに対して補間画素Ｐと同じ側に位置する画素を参照画素として選出する（Ｓ７２）。次に演算部３６は、補間画素Ｐに近い参照画素ほどその重みが大きくなるように補間画素との距離に応じた第１の重みＷを各参照画素に対して設定すると共に、エッジ近接画素である参照画素の重みがエッジ近接画素ではない参照画素の重みより小さくなるように、エッジ近接画素か否かに応じた第２の重みをＱを各参照画素に対して設定する。設定した２つの重みＷ、Ｑを用いて、演算部３６は、上記式（６）に従って、参照画素の画素値に対する補間演算を行って、補間画素Ｐの画素値を算出する（Ｓ７３）。
【００６１】
このように、本実施形態の画像拡大縮小装置によれば、画像の画素間に補間画素を補間するに際し、中間値画素が、必ず画素間のエッジを挟んで隣接する２つの画素のうちの１つであるエッジ近接画素であることに着目し、補間画素の近傍の画素間にエッジがある場合、補間画素の画素値を求める際に使用される参照画素のうちのエッジ近接画素の重みを、エッジ近接画素以外の参照画素の重みよりも小さくして補間演算を行って補間画素の画素値を求めるようにしているので、補間画素により構成された画像（拡大縮小された画像）において、中間値画素に起因するボケの残留および広がりを軽減することができ、拡大縮小された画像の画質が良い。
【００６２】
図１４は、本発明の第２の実施形態による画像拡大縮小装置の構成を示すブロック図である。図示のように、本実施形態による画像拡大縮小装置は、画像データＳ０および画像データＳ０の拡大縮小率Ｋの入力を受け付ける入力部１０１、画像中の画素間にエッジが存在するか否かを検出するエッジ検出部１１０、中間値画素判定部１２０、補間画素の画素値を算出する補間演算部１３０、並びに入力部１０１、エッジ検出部１１０、中間値画素判定部１２０、および補間演算部１３０の動作を制御する制御部１５０を備える。以下各構成の詳細について説明する。
【００６３】
図１５に示すように、エッジ検出部１１０は、フィルタリング部１１２と、判定部１１４と、エッジパターン分類部１１６とを備えてなる。フィルタリング部１１２は、まず画像Ｓ０上に補間画素Ｐの近傍に位置する４×４の１６画素（図１７に示す１６画素Ｐ（ｉ，ｊ）（ｉ，ｊ＝−１〜２）。以下補間画素Ｐの１６画素という）に対して、互いに隣接する２つの画素からなる各画素ペアに対して図４に示す差分フィルタによるフィルタリング処理を施して夫々の画素ペアの差分（以下隣接画素ペアの差分をｄという）を算出する。なお、ここで互いに隣接する２つの画素とは、Ｐ（−１，０）とＰ（０，０）の２つの画素、またはＰ（−１，−１）とＰ（−１，０）の２つの画素のような、画素配列方向のｘ方向またはｙ方向において隣接する２つの画素に限らす、Ｐ（−１，−１）とＰ（０，０）の２つの画素や、Ｐ（０，１）とＰ（１，０）のような、２×２画素の対角線方向において隣接する２つの画素も含むものである。
【００６４】
判定部１１４は、各画素ペアの差分ｄの絶対値が所定の閾値Ｔｈ以上であるか否かの判定を行い、この判定が肯定されると、該差分が対応する画素ペアの２つの画素の間にエッジが存在すると判定し、判定結果をエッジパターン分類部１１６に出力する。
【００６５】
また、エッジが存在すると判定された画素ペアの２つの画素の１方が、図１７に示す補間画素Ｐを囲む４×４の１６画素のうちの最も外辺に位置する画素（図１７の場合、Ｐ（−１，―１）、Ｐ（０，−１）、Ｐ（１，−１）、Ｐ（２，ー１）、Ｐ（２，０）、Ｐ（２，１）、Ｐ（２，２）、Ｐ（１，２）、Ｐ（０，２）、Ｐ（−１，２）、Ｐ（−１，１）、Ｐ（−１，０）の１２個の画素、以下外辺画素という）である場合、フィルタリング部１１２は、補間画素Ｐの１６画素に含まれないが、この外辺画素と隣接する各画素に対して、該画素が属する２×２画素グループの互いに隣接する２つの画素の差分を求め、判定部１１４は、差分が求められた画素ペア間にエッジが存在するか否かを判定する。
【００６６】
例えば、図１７に示すように、画素Ｐ（２，２）が、画素Ｐ（１，１）のいずれかの画素との間にエッジが存在すると判定された場合、画素Ｐ（２，２）が外辺画素であるため、それに隣接して、補間画素Ｐの１６画素に含まれない画素としては、Ｐ（３，１）、Ｐ（３，２）、Ｐ（３，３）、Ｐ（２，３）、Ｐ（１，３）がある（図中▲）。この場合、Ｐ（２，１）とＰ（３，１）、Ｐ（２，１）とＰ（３，２）、Ｐ（３，１）とＰ（３，２）、Ｐ（３，１）とＰ（２，２）、Ｐ（３，２）とＰ（２，２）、およびＰ（２，２）とＰ（２，３）、Ｐ（２，２）とＰ（３，３）、Ｐ（３，２）とＰ（３，３）、Ｐ（３，２）とＰ（２，３）、Ｐ（３，３）とＰ（２，３）、およびＰ（１，２）とＰ（１，３）、Ｐ（１，２）とＰ（２，３）、Ｐ（２，２）とＰ（１，３）、Ｐ（２，２）とＰ（２，３）、Ｐ（１，３）とＰ（２，３）の各画素ペアに対して、画素ペアの２つの画素の差分が求められ、これらの画素ペア間にエッジが存在するか否かが判定される。
【００６７】
また、例えば、画素Ｐ（２，２）と画素Ｐ（１，２）との間にエッジが存在すると判定された場合、画素Ｐ（１，２）も外辺画素であるため、上記と同じ処理が画素Ｐ（１，２
）に対しても行われる。画素Ｐ（２，２）と画素Ｐ（２，１）との間にエッジが存在すると判定された場合において、画素Ｐ（２，１）に対しても同じ処理が行われる。なお、これらの処理の結果もエッジパターン分類部１１６に出力される。
【００６８】
エッジパターン分類部１１６は、判定部１１４から出力されてきた判定結果に基づいて、各２×２の４つの画素内のエッジパターンを分類する。ここで、エッジパターン分類部１１６により行われる処理が、図１に示す実施形態の画像拡大縮小装置におけるエッジパターン分類部１６により行われる処理と同じであるとし、その詳細な説明を省略する。
【００６９】
そしてエッジパターン分類部１１６は、各２×２の４つの画素に対してエッジパターンの分類処理を行い、その結果を中間値画素判定部および補間演算部１３０に出力する。図１８は、エッジパターン分類部１１６による分類の結果の一例を示すものであり、この例では、図示黒太枠内において、補間画素Ｐに隣接する４つの画素内のエッジパターンがパターン４、４つの画素Ｐ（−１，−１）、Ｐ（０，−１）、Ｐ（０，０）、Ｐ（−１，０）内のエッジパターンがパターン０、４つの画素Ｐ（０，−１）、Ｐ（１，−１）、Ｐ（１，０）、Ｐ（０，０）内のエッジパターンがパターン５、４つの画素Ｐ（１，−１）、Ｐ（２，−１）、Ｐ（２，０）、Ｐ（１，０）内のエッジパターンがパターン０、４つの画素Ｐ（−１，０）、Ｐ（０，０）、Ｐ（０，１）、Ｐ（−１，１）内のエッジパターンがパターン２、４つの画素Ｐ（１，０）、Ｐ（２，０）、Ｐ（２，１）、Ｐ（１，１）内のエッジパターンがパターン０、４つの画素Ｐ（−１，１）、Ｐ（０，１）、Ｐ（０，２）、Ｐ（−１，２）内のエッジパターンがパターン４、４つの画素Ｐ（０，１）、Ｐ（１，１）、Ｐ（１，２）、Ｐ（０，２）内のエッジパターンがパターン０、および４つの画素Ｐ（１，１）、Ｐ（２，１）、Ｐ（２，２）、Ｐ（１，２）内のエッジパターンがパターン０である。また、黒太枠外については、４つの画素Ｐ（−１，−２）、Ｐ（−１，−１）、Ｐ（０，−１）、Ｐ（０，−２）内においてパターン５、４つの画素Ｐ（−２，１）、Ｐ（−２，２）、Ｐ（−１，２）、Ｐ（−１，１）内においてパターン２、４つの画素Ｐ（−２，２）、Ｐ（−２，３）、Ｐ（−１，３）、Ｐ（−１，２）内においてパターン１、４つの画素Ｐ（−１，２）、Ｐ（−１，３）、Ｐ（０，３）、Ｐ（０，２）においてパターン３となり、他の４つの画素内においてはパターン０となっている。図１８中の点線はこれらのエッジパターンを示すものである。なお、図１８に示すように補間画素Ｐを囲む１６画素内（図示黒太枠内）の領域はエッジにより２つの領域Ａ１，Ａ２に分割され、領域Ａ２が斜線で示されている。
【００７０】
図１６は、中間値画素判定部１２０の構成を示すブロック図である。図示のように、中間値画素判定部１２０は、図１７に示す補間画素Ｐを囲む４×４の１６画素のうち、中間値画素の候補画素となる画素を選別する候補画素選別部１２２と、候補画素選別部１２２により選別された候補画素に、その前後の１つずつの画素を加えてなる３つの画素の画素値を比較する画素値比較部１２４と、画素値比較部１２４の比較結果に基づいてこの候補画素が中間値画素であるか否かの判定を行って判定の結果を補間演算部１３０に出力する判定部１２６とを備えてなる。具体的には、候補画素選別部１２２は、補間画素Ｐを囲む４×４の１６画素の夫々に対して、まず、この画素を中央にして直列に隣接する３つの画素の互いに隣接する２つの画素間にエッジが存在するか否かを確認し、３つの画素の互いに隣接する２つの画素間のいずれにおいてもエッジが存在する場合、さらに、この２つのエッジの方向が同じであるか否かを確認し、２つのエッジが同じ方向のエッジである場合においてのみ、この画素を候補画素として選別する。なお、それ以外の場合は、この画素を候補画素ではないと判定する。
【００７１】
図１８に示す例の場合において、画素Ｐ（０，−１）のみが候補画素として選別される。画素Ｐ（−１，１）と画素Ｐ（−１，２）との間、画素Ｐ（−１，２）と画素Ｐ（−１，３）との間のいずれにおいてもエッジが存在するが、Ｐ（−１，２）を挟む２つのエッジが同じ方向ではないので、画素Ｐ（−１，２）が候補画素として選別されない。
【００７２】
画素値比較部１２４は、候補画素選別部１２２により選別された候補画素に対して、この候補画素が対応する前述の隣接する３つの画素（画素Ｐ（−１，２）の場合、画素Ｐ（−１，１）、画素Ｐ（−１，２）、画素Ｐ（−１，３））の画素値を比較し、比較結果を判定部１２６に出力する。
【００７３】
判定部１２６は、画素値比較部１２４からの比較結果に基づいて、比較される３つの画素（候補画素が中央に位置する）の画素値が、この３つの画素の並ぶ方向に沿って単調増加または単調減少する場合において、この候補画素を中間値画素として判定する。ここで、候補画素Ｐ（０，−１）が中間値画素に判定されたとする。
【００７４】
エッジ検出部１１０によるエッジ検出の結果および中間値画素判定部１２０の判定結果が補間演算部１３０に出力され、補間演算部１３０は、この２つの結果に基づいて補間画素Ｐの画素値を算出する。具体的には、補間画素Ｐの隣接する２×２画素内にエッジが存在しない場合、バイキュービック法を用いて補間画素Ｐの画素値を算出する。バイキュービック法による補間演算は、図１に示す実施形態の補間演算部３０により行われる第１の補間演算と同様であるので、ここでその詳細な説明について省略する。なお、以下の本実施形態の説明においても、補間画素Ｐの隣接する２×２画素内にエッジが存在しない場合、バイキュービック法を用いて補間画素Ｐの画素値を算出する演算を本実施形態における第１の補間演算という。
【００７５】
一方、補間画素Ｐの隣接する２×２画素内にエッジが存在する場合には、補間演算部１３０は、第２の補間演算により補間画素Ｐの画素値を算出する。ここで、図２０により示される補間演算部１３０の構成および図１８の例を参照して補間演算部３０の第２の補間演算について具体的に説明する。
【００７６】
ここで、説明しやすいように、図１８における黒太枠内の領域のみを図１９に示すと共に、画素Ｐ（−１，−１）、Ｐ（−１，０）、Ｐ（−１，１）、Ｐ（０，０）、Ｐ（０，−１）を夫々Ｐ１４、Ｐ１１、Ｐ１３、Ｐ１２、Ｐ１５の符号に置き換える。図１９に示すように、補間画素Ｐを囲む１６画素内の領域はエッジにより２つの領域Ａ１，Ａ２に分割される。領域Ａ２は斜線により示される。補間演算部１３０は、まず、判定部１３２により１６画素内のエッジパターンに基づいて、補間画素Ｐがエッジを挟んでいずれの側に存在するかを判定する。次に、補間演算部１３０の参照画素選出部１３４は、補間演算に使用する参照画素として、エッジに対して補間画素Ｐと同じ側に位置する画素を選出する。例えば、図１９に示すように補間画素Ｐが領域Ａ１側に存在する場合には、参照画素選出部１３４により、領域Ａ１側の画素Ｐ１１，Ｐ１２，Ｐ１３，Ｐ１４，Ｐ１５（図１９において△で示している）が補間演算に使用される画素として選出される。次に補間演算部１３０の演算部１３６は、中間値画素判定部１２０により中間値画素に判定された画素の有無を確認し、中間値画素がある場合、その重みを０に設定する。ここで、中間値画素の重みを０に設定することは、中間値画素を参照画素として使用しないことと同じである。次に、演算部１３６は、補間画素Ｐに近い参照画素ほどその重みが大きくなるように各参照画素に対して、補間画素Ｐとの距離に応じた第１の重みＷを設定して、下記式（７）に従って補間演算を行い、補間画素Ｐの画素値を算出する。
【数５】
2005142858.tif 000007
【００７７】
図２１は、本実施形態の画像拡大縮小装置において行われる処理を示すフローチャートである。なお、本実施形態においては、補間画素Ｐは、画像Ｓ０の画素の間に存在するものとする。まず、入力部１０１は拡大縮小画像データＳ０および画像データＳ０の拡大縮小率Ｋの入力を受け付ける（Ｓ１０１）。そして、フィルタリング部１１２は、拡大縮小率Ｋに応じた最初の補間画素Ｐ（例えば拡大縮小された画像データＳ１により表される画像上の左上に位置する画素）の近傍に位置する４×４の１６画素（補間画素Ｐの１６画素）について、隣接する２つの画素からなる画素ペアに対して差分フィルタによるフィルタリング処理を施して夫々の画素ペアの差分を算出する（Ｓ１１０）。
【００７８】
次いで、判定部１１４は、まず、各画素ペアの差分の絶対値が所定の閾値Ｔｈ以上でるか否かに基づいて、各画素ペアの２つの画素の間にエッジが存在するか否かの判定を行う。具体的には、画素ペアの差分の絶対値が閾値Ｔｈ以上であれば、この画素ペアの２つの画素の間にエッジが存在すると判定する一方、画素ペアの差分の絶対値が閾値Ｔｈより小さければ、この画素ペアの２つの画素の間にエッジが存在しないと判定する。次に判定部１１４は、エッジが存在すると判定された画素ペアの２つの画素の１方が、外辺画素であるか否かを判定し（Ｓ１１５）、この判定が肯定されると（Ｓ１２０：Ｙｅｓ）、フィルタリング部１１２は、補間画素Ｐの１６画素に含まれない、この外辺画素と隣接する各画素に対して、該画素が属する２×２画素グループの互いに隣接する２つの画素の差分を求めて判定部１１４に出力する（Ｓ１２５）。判定部１１４は、差分が求められた画素ペア間にエッジが存在するか否かを判定する（Ｓ１３０）。
【００７９】
エッジパターン分類部１１６は、判定部１１４からの判定結果に基づいて、各２×２画素内におけるエッジのパターンを分類して（Ｓ１３５）、中間値画素判定部１２０および補間演算部１３０に出力する（Ｓ１４０）。中間値画素判定部１２０は、補間画素Ｐの１６画素のうちの中間値画素を判定し、判定結果を補間演算部１３０に出力する（Ｓ１５０）。補間演算部１３０は、エッジパターン分類部１１６の分類結果に基づいて、この１６画素の各２×２画素内のエッジパターンがパターン０である場合には、補間画素Ｐの１６画素の領域内にエッジが存在しないと判定（Ｓ１６５：Ｎｏ）すると共に、第１の補間演算Ｄ１、すなわちバイキュービック補間法による補間演算を行って補間画素Ｐの画素値を求める（Ｓ１６８）。一方、補間画素Ｐの１６画素領域内において、中のエッジパターンがパターン０ではない２×２画素が存在する場合には、補間画素Ｐの１６画素の領域内にエッジが存在すると判定（Ｓ１６５：Ｙｅｓ）すると共に、第２の補間演算Ｄ２を行って補間画素Ｐの画素値を求める（Ｓ１７０）。
【００８０】
制御部１５０は、画像Ｓ０に対して全ての補間画素Ｐについて画素値を算出したか否かを判定し（Ｓ１７５）、ステップＳ１７５が否定されると、画素値を算出する補間画素Ｐを次の補間画素Ｐに設定し（Ｓ１８０）、ステップＳ１１０からの処理に戻る。一方、ステップＳ１８０が肯定されると、制御部１５０は、補間画素Ｐからなる拡大縮小された画像データＳ１を出力し（Ｓ１９０）、処理を終了する。
【００８１】
図２２は、ステップＳ１５０において行われる中間値画素判定処理Ｃの詳細を示すフローチャートである。図示のように、中間値画素判定部１２０の候補画素選別部１２２は、補間画素Ｐを囲む４×４の１６画素の画素毎に、まず、この画素を中央にして直列に隣接する３つの画素の互いに隣接する２つの画素間にエッジが存在するか否かを確認し（Ｓ１５１）、３つの画素の互いに隣接する２つの画素間のいずれにおいてもエッジが存在する場合（Ｓ１５１：Ｙｅｓ）、さらに、この２つのエッジの方向が同じであるか否かを確認し（Ｓ１５２）、２つのエッジが同じ方向のエッジである場合（Ｓ１５２：Ｙｅｓ）においてのみ、この画素を候補画素として選別する（Ｓ１５３）。
【００８２】
次いで、画素値比較部１２４は、ステップＳ１５３において候補画素選別部１２２により選別された候補画素に対して、この候補画素が対応する前述の隣接する３つの画素の画素値を比較し、比較結果を判定部１２６に出力する（Ｓ１５４）。
【００８３】
判定部１２６は、画素値比較部１２４からの比較結果に基づいて、比較される３つの画素の画素値が、この３つの画素の並ぶ方向に沿って単調増加または単調減少する場合において（Ｓ１５５：Ｙｅｓ）、この候補画素を中間値画素として判定する（Ｓ１５６）。なお、それ以外の場合（Ｓ１５１：Ｎｏ、およびＳ１５１：Ｙｅｓ、Ｓ１５２：Ｎｏ、およびＳ１５１：Ｙｅｓ、Ｓ１５２：Ｙｅｓ、Ｓ１５５：Ｎｏ）においては、この画素が中間値画素ではないと判定する（Ｓ１５７）。
【００８４】
制御部１５０は、補間画素Ｐの１６画素全部について中間値画素であるか否かの判定が行われたならば（Ｓ１５８：Ｙｅｓ）、中間値画素判定部１２０の処理を終了させるが、補間画素Ｐの１６画素のうち、まだ判定が行われていない画素があれば（Ｓ１５８：Ｎｏ）、次の画素を中間値画素判定部１２０に判定させ（Ｓ１５９）、処理がステップＳ１５１に戻る。
【００８５】
図２３は、補間画素Ｐの隣接する２×２画素内にエッジがある場合に、補間演算部１３０により行われる第２の補間演算Ｄ２の詳細を示すフローチャートである。図示のように、補間演算部１３０は、１６画素の領域内において、補間画素Ｐがエッジを挟んでいずれの側に存在するかを判定する（Ｓ１７１）。そして、エッジに対して補間画素Ｐと同じ側に位置する画素を補間演算に使用する参照画素として選出する（Ｓ１７２）。次に補間演算部１３０は、選出された参照画素のうち、中間値画素判定部１２０により中間値画素であると判定された参照画素の重みＱを０に設定することにより参照画素から中間値画素を除去し、中間値画素ではない参照画素の画素値による補間演算を行って補間画素Ｐの画素値を求める。
【００８６】
このように、本実施形態の画像拡大縮小装置によれば、参照画素が中間値画素である可能性の代わりに、参照画素が中間値画素であるか否かを確実に判定して、参照画素の画素値による補間演算を行って補間画素の画素値を求めるに際し、中間値画素である参照画素の重みを０に設定することにより参照画素から除去することによって、拡大縮小された画像の画質をより高めることができる。
【００８７】
なお、ここで、中間値画素に判定された参照画素の重みを０に設定しているが、中間値画素ではない参照画素の重みより小さい、０ではない重みを設定するようにしてもよい。
【００８８】
以上、本発明の望ましい実施形態について説明したが、本発明の画像補間方法および」装置並びにそのためのプログラムは、上述した実施形態に限られることがなく、本発明の主旨を逸脱しない限り、上述した各実施形態の構成を組み合わせたり、増減、変化を加えたりすることができる。
【００８９】
例えば、画素間にエッジが存在するか否かを検出する方法は、上述した実施形態に用いられた方法に限られるものではなく、従来技術の説明において例挙した方法などを用いてもよい。
【００９０】
また、補間演算の方法も、上述した実施形態に用いられたバイキュービック補間演算、補間画素との距離に応じた重付加算に限られるものではなく、ガウシアンフィルタなどの他の補間演算方法を用いてもよい。
【００９１】
さらに、上述した実施形態において、エッジに対して補間画素Ｐと同じ側に位置する画素のみを参照画素として選出するようにしているが、エッジを挟んで補間画素Ｐと異なる側に位置する画素も参照画素に加えてもよい。この場合、エッジを挟んで補間画素Ｐと異なる側に位置する参照画素に対して、エッジに対して補間画素Ｐと同じ側に位置する参照画素より小さい重みを付けるようにすればよい。なお、この場合の重みは、前述の補間画素Ｐとの距離に応じた第１の重みＷ、および中間値画素である可能性に応じた第２の重みＱとは、異なる第３の重みである。
【００９２】
なお、以上の説明から分かるように、参照画素がエッジ近接画素であるか否か、または中間値画素であるか否かとで参照画素に異なる重み（前述第２の重み）を付けるが、この第２の重みが、補間演算の方法により定義される重み（前述第１の重み）と異なるものである。本発明における重みは、前述第２の重みを意味するものであるため、例えば補間演算の方法は、各参照画素の距離に応じた第１の重みによる参照画素の画素値の重付け加算である場合、各参照画素の最終的な重みが第１の重みと第２の重みを乗算して得た値となるので、第２の重みが小さい参照画素の最終的な重みは、必ずしも第２の重みが大きい参照画素の最終的な重みより小さくなるとは限らない。
【図面の簡単な説明】
【００９３】
【図１】本発明の第１の実施形態による画像拡大縮小装置の構成を示すブロック図
【図２】画像データにより表される画像の画素配列を示す図
【図３】図１に示す画像拡大縮小装置のエッジ検出部１０の構成を示すブロック図
【図４】差分フィルタの例を示す図
【図５】補間演算を説明するための図
【図６】エッジパターン分類部１６の動作を説明するための図
【図７】エッジが存在する位置に応じたエッジパターンを示す図（その１）
【図８】エッジが存在する位置に応じたエッジパターンを示す図（その２）
【図９】エッジが存在する位置に応じたエッジパターンを示す図（その３）
【図１０】エッジパターン分類部１６による分類の結果の一例を示す図
【図１１】図１に示す画像拡大縮小装置の補間演算部３０の構成を示すブロック図
【図１２】図１に示す画像拡大縮小装置に行われる処理を示すフローチャート
【図１３】第２の補間演算Ｂ２を示すフローチャート
【図１４】本発明の第２の実施形態による画像拡大縮小装置の構成を示すブロック図
【図１５】図１４に示す画像拡大縮小装置のエッジ検出部１１０の構成を示すブロック図
【図１６】図１４に示す画像拡大縮小装置の中間値画素判定部１２０の構成を示すブロック図
【図１７】フィルタリング部１１２において行われる処理を説明するための図
【図１８】エッジパターン分類部１１６の分類結果の１例を示す図
【図１９】補間画素Ｐの隣接する２×２画素内にエッジが存在する場合に行われる補間演算（第２の補間演算Ｄ２）を説明するための図
【図２０】図１４に示す画像拡大縮小装置の補間演算部１３０の構成を示すブロック図
【図２１】本実施形態において行われる処理を示すフローチャート
【図２２】中間値画素判定処理Ｃのフローチャート
【図２３】第２の補間演算Ｄ２のフローチャート
【図２４】被写体におけるエッジとデジタル画像において検出されたエッジとの関係の例を示す図
【図２５】被写体における細線とデジタル画像において検出されたエッジとの関係の例を示す図
【図２６】隣接画素間にエッジが存在するか否かを検出する方法の１例を説明するための図
【図２７】１次差分ｄ１，ｄ２，ｄ３および２次差分ｄ４，ｄ５の正負と、直列に隣接する４つの画素のプロファイル形状との関係を示す表（その１）
【図２８】１次差分ｄ１，ｄ２，ｄ３および２次差分ｄ４，ｄ５の正負と、直列に隣接する４つの画素のプロファイル形状との関係を示す表（その２）
【図２９】１次差分ｄ１，ｄ２，ｄ３および２次差分ｄ４，ｄ５の正負と、直列に隣接する４つの画素のプロファイル形状との関係を示す表（その３）
【符号の説明】
【００９４】
１    入力部
１０    エッジ検出部
１２    フィルタリング部
１４    判定部
１６    エッジパターン分類部
２０    エッジ近接画素抽出部
３０    補間演算部
３２    判定部
３４    参照画像選出部
３６    演算部
５０    制御部
１０１    入力部
１１０    エッジ検出部
１１２    フィルタリング部
１１４    判定部
１１６    エッジパターン分類部
１２０    中間値画素判定部
１２２    候補画素選別部
１２４    画素値比較部
１２６    判定部
１３０    補間演算部
１３２    判定部
１３４    参照画素選出部
１３６    演算部
１５０    制御部
Ｋ    拡大縮小率
Ｓ０    画像データ
Ｓ１    拡大縮小された画像データ
【図１】
2005142858.tif 000008
【図２】
2005142858.tif 000009
【図３】
2005142858.tif 000010
【図４】
2005142858.tif 000011
【図５】
2005142858.tif 000012
【図６】
2005142858.tif 000013
【図７】
2005142858.tif 000014
【図８】
2005142858.tif 000015
【図９】
2005142858.tif 000016
【図１０】
2005142858.tif 000017
【図１１】
2005142858.tif 000018
【図１２】
2005142858.tif 000019
【図１３】
2005142858.tif 000020
【図１４】
2005142858.tif 000021
【図１５】
2005142858.tif 000022
【図１６】
2005142858.tif 000023
【図１７】
2005142858.tif 000024
【図１８】
2005142858.tif 000025
【図１９】
2005142858.tif 000026
【図２０】
2005142858.tif 000027
【図２１】
2005142858.tif 000028
【図２２】
2005142858.tif 000029
【図２３】
2005142858.tif 000030
【図２４】
2005142858.tif 000031
【図２５】
2005142858.tif 000032
【図２６】
2005142858.tif 000033
【図２７】
2005142858.tif 000034
【図２８】
2005142858.tif 000035
【図２９】
2005142858.tif 000036