(57)【特許請求の範囲】
【請求項１】
エッジ判断対象画素の画素値である対象画素値を取得する対象画素値取得部と、
エッジ判断対象画素の周辺領域の画素値の平均値であるぼけ平均画素値を算出するぼけ平均画素値算出部と、
対象画素値をぼけ平均画素値で割った値が所定の閾値以上であるか判断する判断部と、
エッジ判断対象の画像を生成した際の被写界深度を取得する被写界深度取得部と、
取得した被写界深度に応じて後記変更手段によって変更される周辺領域の大きさを制御する変更制御部と、
を有し、
ぼけ平均画素値算出部は、
エッジ判断対象画素の周辺画素値の平均値を算出するに際して、周辺領域としてエッジ判断対象画素を略中心とした円形領域を選択したと同等となるように周辺画素の画素値に対して重み付けをする重み付け手段と、
平均画素値を算出するために選択される周辺領域の大きさを変更する変更手段と、
を有するエッジ検出装置。
【請求項２】
判断部での判断結果に応じてエッジ強調画像を生成するエッジ強調画像生成部と、
前記閾値を変更する閾値変更部と、
をさらに有する請求項１に記載のエッジ検出装置。
【請求項３】
前記画素値は、ＣＩＥ表色系のＬＡＢ色空間で示される明度である請求項１又は２に記載のエッジ検出装置。
【請求項４】
エッジ判断対象画素の画素値である対象画素値を取得する対象画素値取得ステップと、
エッジ判断対象画素の周辺領域の画素値の平均値であるぼけ平均画素値を算出するぼけ平均画素値算出ステップと、
対象画素値をぼけ平均画素値で割った値が所定の閾値以上であるか判断する判断ステップと、
エッジ判断対象の画像を生成した際の被写界深度を取得する被写界深度取得ステップと、
取得した被写界深度に応じて後記変更ステップによって変更される周辺領域の大きさを制御する変更制御ステップと、
を計算機に実行させ、
ぼけ平均画素値算出ステップを、
エッジ判断対象画素の周辺画素値の平均値を算出するに際して、周辺領域としてエッジ判断対象画素を略中心とした円形領域を選択したと同等となるように周辺画素の画素値に対して重み付けをする重み付けステップと、
平均画素値を算出するために選択される周辺領域の大きさを変更する変更ステップと、
を含み計算機に実行させるエッジ検出プログラム。
【請求項５】
エッジ判断対象画素の画素値である対象画素値を取得する対象画素値取得ステップと、
エッジ判断対象画素の周辺領域の画素値の平均値であるぼけ平均画素値を算出するぼけ平均画素値算出ステップと、
対象画素値をぼけ平均画素値で割った値が所定の閾値以上であるか判断する判断ステップと、
エッジ判断対象の画像を生成した際の被写界深度を取得する被写界深度取得ステップと、
取得した被写界深度に応じて後記変更ステップによって変更される周辺領域の大きさを制御する変更制御ステップと、
を計算機に実行させ、
ぼけ平均画素値算出ステップを、
エッジ判断対象画素の周辺画素値の平均値を算出するに際して、周辺領域としてエッジ判断対象画素を略中心とした円形領域を選択したと同等となるように周辺画素の画素値に対して重み付けをする重み付けステップと、
平均画素値を算出するために選択される周辺領域の大きさを変更する変更ステップと、
を含み計算機に実行させるエッジ検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像のエッジを好適に検出する技術に関する。
【背景技術】
【０００２】
カメラなどによる撮影画像やラスタ形式のイラストレーション画像などには様々な対象物が含まれており、計算機においてその対象物を識別するのは非常に困難、あるいは負荷の高い演算処理が要求される。しかし、例えば防犯カメラのリアルタイム解析によって背景物と人物を切り分けて認識し不審人物を検出するため、あるいは例えば焦点の合っていないボケ撮影画像に関して各被写体のエッジ（輪郭）を強調処理するためなど、さまざまなシチュエーションで画像情報内の対象物を識別することが必要とされている。そこで画像内の対象物を識別するためのエッジ検出技術が各種提供されている。具体的にエッジは画像内で輝度変化が急峻となった部分であるので、輝度勾配などを利用するキャニー法や微分エッジ検出法などが知られている。
【０００３】
また特にカメラで撮影された画像は、物体色と照明光との積算によって各画素値が決定されており、したがって照明ムラなど照明光の影響を排除して物体色のみでエッジ検出を行うことが望ましいが、撮影画像データで示される上記物体色と照明光の積算値から照明光のみを推定する方法の一つとして、画像をぼかす手法が挙げられる。特許文献１にはエッジか否かの判断対象の画素Ｃに関して、周辺のぼけ画像の輝度値（その画素Ｃの周辺画素からなるブロックの平均輝度値）と画素Ｃの輝度値とを正規化して算出した係数が１以上であれば画素Ｃをエッジと判断するといった技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第３９０９６０４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし上記特許文献１のエッジ判断対象画素Ｃの輝度値と、当該画素Ｃの周辺ブロックの輝度値を正規化しエッジ検出を行う技術において、特に撮影された画像に関してカメラのレンズによる影響を考慮していないという課題がある。より具体的にはカメラの集光レンズは円形であり、そのためカメラ撮影された画像は基本的には円形に集められた光による画像となっている。したがって特許文献一の技術においてエッジ検出に利用される周辺ブロックは「円形」であることが望ましいが、上記特許文献１ではｎ×ｎ画素の矩形ブロックであることが開示されているに過ぎない。そのため、より精度の高いエッジ検出ができていない、という課題がある。
【課題を解決するための手段】
【０００６】
以上の課題を解決するために、本発明は、エッジ判断の対象画素Ｃと比較するための「周辺領域」に関して、当該周辺領域が円形となるように画素値（輝度値やそれに準ずる値）に対して重み付けを行う機能を備えるエッジ検出装置を提供する。具体的に、エッジ判断対象画素の画素値である対象画素値を取得する対象画素値取得部と、エッジ判断対象画素の周辺領域の画素値の平均値であるぼけ平均画素値を算出するぼけ平均画素値算出部と、対象画素値をぼけ平均画素値で割った値が所定の閾値以上であるか判断する判断部と、を有し、ぼけ平均画素値算出部は、エッジ判断対象画素の周辺画素値の平均値を算出するに際して、周辺領域としてエッジ判断対象画素を略中心とした円形領域を選択したと同等となるように周辺画素の画素値に対して重み付けをする重み付け手段を有するエッジ検出装置を提供する。また上記構成を備え、さらに判断部での判断結果に応じてエッジ強調画像を生成するエッジ強調画像生成部と、前記閾値を変更する閾値変更部と、を有するエッジ検出装置も提供する。
【０００７】
また、カメラのレンズは、レンズごとにぼけ範囲（いわゆる被写界深度）を示す特性を有しており、そのぼけ範囲が狭ければ周辺ぼけ画像の大きさを小さくしても検出精度を維持できる。そこで、上記構成を備え、さらにぼけ平均画素値算出部が平均画素値を算出するために選択される周辺領域の大きさを変更する変更手段を有するエッジ検出装置や、さらにエッジ判断対象の画像を生成した際の被写界深度を取得する被写界深度取得部と、取得した被写界深度に応じて前記変更手段によって変更される周辺領域の大きさを制御する変更制御部と、を有するエッジ検出装置も提供する。
【０００８】
また上記エッジ検出装置においてエッジ検出に利用される画素値は、ＣＩＥ表色系のＬＡＢ色空間で示される明度であることが望ましい。また、計算機を上記エッジ検出装置として機能させるためのプログラムや、そのプログラムを記憶する記憶媒体も合わせて提供する。
【発明の効果】
【０００９】
以上のような構成をとる本発明によって、カメラのレンズ形状に応じた周辺ぼけ画像形状で、その周辺ぼけ画像の平均画素値とエッジ判断対象画素Ｃの画素値とを比較することができ、より精度の高いエッジ検出を行うことができる。
【図面の簡単な説明】
【００１０】
【図１】実施例１のエッジ検出装置におけるエッジ検出の一例を説明するための概念図
【図２】実施例１のエッジ検出装置における機能ブロックの一例を表す図
【図３】実施例１のエッジ検出装置の重み付け手段における重み付けの一例を説明するための図
【図４】実施例１のエッジ検出装置により生成されたエッジ強調画像の一例を表す図
【図５】実施例１のエッジ検出装置により生成された別のエッジ強調画像の一例を表す図
【図６】実施例１のエッジ検出装置におけるハードウェア構成の一例を表す図
【図７】実施例１のエッジ検出装置における処理の流れの一例を表すフローチャート
【図８】実施例２のエッジ検出装置における機能ブロックの一例を表す図
【図９】実施例２のエッジ検出装置の被写界深度取得部での被写界深度取得の一例を説明するための図
【図１０】実施例２のエッジ検出装置における処理の流れの一例を表すフローチャート
【発明を実施するための形態】
【００１１】
以下に、図を用いて本発明の実施の形態を説明する。なお、本発明はこれら実施の形態に何ら限定されるものではなく、その要旨を逸脱しない範囲において、種々なる態様で実施しうる。
【００１２】
なお、実施例１は、主に請求項１，２，５，６，７について説明する。また、実施例２は、主に請求項３，４について説明する。
【００１３】
≪実施例１≫
<概要>
図１は、本実施例のエッジ検出装置におけるエッジ検出の一例を説明するための概念図である。この図１（ａ）にあるように、本実施例のエッジ検出装置では、エッジ検出の対象となる中心画素Ｃに対して、その周辺を円形領域Ｓとなるように設定する。なおデジタル画像における各画素は矩形であるため、その矩形画素の集合である領域をそのままで円形領域とすることはできない。そこで、円形領域Ｓにおいて円弧部分をなす画素の画素値については重み付け処理を行い画素値を取得することで、円形領域を選択して画素値を取得した場合と同等の処理となるようにする。
【００１４】
そして図１（ｂ）に示すように、例えば中心と周辺領域が同じ物体、照明環境、テクスチャである場合、中心画素Ｃ１の画素値（例えば輝度値）ｃ１と、周辺の円形領域Ｓ１の平均輝度値ｓ１の比は１に近くなる。一方中心と周辺領域が異なる物体、照明環境、テクスチャである場合、中心画素Ｃ２の輝度値ｃ２と、周辺の円形領域Ｓ２の平均輝度値ｓ２の比は１から乖離する。したがって、α'＝｜ｃ／ｓ−１｜（α'：判断用の指標値）で判断することができる。また、周辺領域の値ｓは画像をアンシャープ（ぼけ）化する平均画素値で示されているので、前述の通り画像から照明光の影響を排除し物体色のみとし、さらに周辺領域を画像取得の際の集光レンズと同形状の円形領域となるようにすることで光の集光領域をより正確に再現したうえで画素値の比較をすることができるので精度の高いエッジ検出を行うことができる。
【００１５】
<機能的構成>
図２は、本実施例のエッジ検出装置における機能ブロックの一例を表す図である。なお、以下に記載する本装置の機能ブロックは、ハードウェア及びソフトウェアの組み合わせとして実現され得る。具体的には、コンピュータを利用するものであれば、ＣＰＵや主メモリ、バス、あるいは二次記憶装置（ハードディスクや不揮発性メモリ、ＣＤやＤＶＤなどの記憶メディアとそれらメディアの読取ドライブなど）、情報入力に利用される入力デバイス、印刷機器や表示装置、その他の外部周辺装置などのハードウェア構成部、またその外部周辺装置用のインターフェース、通信用インターフェース、それらハードウェアを制御するためのドライバプログラムやその他アプリケーションプログラム、ユーザ・インターフェース用アプリケーションなどが挙げられる。そして主メモリ上に展開したプログラムに従ったＣＰＵの演算処理によって、入力デバイスやその他インターフェースなどから入力され、メモリやハードディスク上に保持されているデータなどが加工、蓄積されたり、上記各ハードウェアやソフトウェアを制御するための命令が生成されたりする。あるいは本装置の機能ブロックは専用ハードウェアによって実現されてもよい。
【００１６】
また、この発明は装置として実現できるのみでなく、方法としても実現可能である。また、このような発明の一部をソフトウェアとして構成することができる。さらに、そのようなソフトウェアをコンピュータに実行させるために用いるソフトウェア製品、及び同製品を固定した記録媒体も、当然にこの発明の技術的な範囲に含まれる（本明細書の全体を通じて同様である）。
【００１７】
そして、この図２にあるように、本実施例の「エッジ検出装置」０２００は、「対象画素値取得部」０２０１と、「ぼけ平均画素値算出部」０２０２と、「判断部」０２０３と、を有し、さらにぼけ平均画素値算出部が「重み付け手段」０２０４を有する。
【００１８】
「対象画素値取得部」０２０１は、対象画素値を取得する機能を有し、例えばＣＰＵや主メモリ、対象画素値取得プログラムなどで実現することができる。また「対象画素値」とは、エッジ判断対象画素の画素値をいい、例えば輝度値のほか、ＲＧＢ値、ＨＳＶ（色相、彩度、明度）値などが挙げられるが、基本的にエッジは輝度の変化によって検出されるので、画素値が輝度値以外である場合、輝度値に変換可能なものであることが望ましい。また対象となる画素は一の画素でも良いし、少数（例えば２×２など）の画素の組であっても良い。
【００１９】
そして、この対象画素値取得部では、例えばカメラ装置に組み込まれリアルタイムに撮影画像のエッジを検出するものである場合、１あるいは２以上の組み合わせのＣＣＤイメージセンサやＣＭＯＳセンサなどの光電変換素子が１つの画素に対応しているので、対象画素に相当する光電変換素子で検出された電荷量を輝度値として取得するという具合である。また、ＰＣ（パーソナル・コンピュータ）などに組み込まれ、すでにデジタル画像データとして構成されている画像の対象画素から画素値を取得する場合は、そのデジタル画像データの情報から例えば対象画素のＲＧＢ値などの画素値を取得するという具合である。またその場合、「Ｙ=０．２１２６×Ｒ＋０．７１５２×Ｇ＋０．０７２２×Ｂ」（Ｙ：輝度値）などの所定の変換式を利用して取得したＲＧＢ値を輝度値に変換すると良い。
【００２０】
またここで取得される画素値は、ＣＩＥ表色系のＬＡＢ色空間で示される明度であることが望ましい。画素値をＣＩＥ表色系のＬＡＢ色空間で示される明度としてエッジ検出を行った場合、より正確に人の感覚に近い形状としてエッジ検出を行うことができる。これにより、人の目が検出できない、例えば、薄い紙の裏側に書かれた文字を検出してしまうなどの過検出を回避することができる。
【００２１】
「ぼけ平均画素値算出部」０２０２は、ぼけ平均画素値を算出する機能を有し、例えばＣＰＵや主メモリ、ぼけ平均画素値算出プログラムなどで実現することができる。また「ぼけ平均画素値」とは、エッジ判断対象画素の周辺領域の画素値の平均値をいう。なお周辺領域は、ぼけ平均画素算出プログラムなどで定められ、例えば対象画素を中心とする半径１０画素分の領域などが挙げられる。また、前記半径１０画素など周辺領域の大きさを示す値は予め定められていても良いし、例えば画像の縦／横画素数の１％など可変であっても良い。また実施例２で後述するようにエッジを検出する画像を取得する際に利用されるレンズの特性（被写界深度）に応じて可変としても良い。そして、このように定められる周辺領域に含まれる画素の画素値を取得し、その平均値を算出する、という具合である。なお、平均値算出においては、前記対象画素の画素値を含み平均値を算出しても良いし、除いて平均値を算出しても良い。
【００２２】
そして、本実施例のエッジ検出装置のぼけ平均画素値算出部では、前述のとおり周辺領域をレンズ形状に合わせた円形領域となるようにしたうえで、その円形領域の画素値の平均値を算出することでエッジ検出の精度を高めることを特徴とする。そして、そのためにこのぼけ平均画素値算出部は、さらに重み付け手段を備えることを特徴とする。
【００２３】
「重み付け手段」０２０４は、エッジ判断対象画素の周辺画素値の平均値を算出するに際して、周辺領域としてエッジ判断対象画素を略中心とした円形領域を選択したと同等となるように周辺画素の画素値に対して重み付けをする機能を有する。
【００２４】
図３は、この重み付け手段におけるぼけ平均画素値の算出処理の一例を説明するための図である。この図３（ａ）にあるように、例えば対象画素Ｃを中心として、プログラムで予め定められる、あるいは演算によって算出された領域を略円形領域とし、その領域内に含まれる画素（図中斜線）の画素値を取得する。つづいて画素の位置（対象画素からの相対的位置）に応じてプログラムで定められる重み付け値を、取得した当該画素の画素値に積算する。そして、この重み付け値は、図３（ｂ）に示すように、円形領域の内部に完全に含まれる場合は例えば「１」、一方、円形領域の円弧をなす画素に関しては、その円弧を構成する大きさに応じて設定される重み付け値、例えば画素αは「０．８０」、画素βは「０．６０」という具合に設定されている。したがって、これら画素ごとに設定された値を利用して略円形領域を構成するそれぞれの画素の画素値に重み付けを行うことで、円形領域を選択したと同等となるように周辺画素の画素値を取得し、その平均値を算出することができる。
【００２５】
そして、画像取得の際にその集光のために利用されるレンズと同形状の円形領域と同等の周辺領域の画素値の平均値を、対象画素と比較するぼけ領域の画素値とすることで、より正確にエッジ検出を行うことができる、という具合である。
【００２６】
「判断部」０２０３は、対象画素値をぼけ平均画素値で割った値が所定の閾値以上であるか判断する機能を有し、例えばＣＰＵや主メモリ、判断プログラムなどで実現することができる。そして、例えば前述のように対象画素の画素値をｃ、円形領域と同等に取得された周辺領域の画素平均値をｓとして、「α＝ｃ／ｓ−１」を算出し、この値が０．２以上、あるいは−０．２以下であればその対象画素をエッジ成分と判断する、という具合である。
【００２７】
そして、本実施例のエッジ検出装置では、以上のように検出したエッジ画素に対してさまざまな処理を行うよう構成すると良い。例えば、本実施例のエッジ検出装置は、図示しない「エッジ強調画像生成部」と、「閾値変更部」と、を有していてもよい。「エッジ強調画像生成部」は、判断部での判断結果に応じてエッジ強調画像を生成する機能を有する。また、「閾値変更部」は、判断部で利用される所定の閾値を変更する機能を有する。なお、閾値の変更はユーザ入力による変更であっても良いし、入力画像の縦横画素数や入力画像全体の平均輝度など所定の変数に応じて自動的に算出される値であっても良い。
【００２８】
図４（ｂ）は、（ａ）で示す入力画像に関してα>０．２となる対象画素をエッジ画素、それ以外の画素を平坦画素として２値化処理を行ったエッジ強調画像の一例を表す図である。また、図５（ｂ）は、（ａ）で示す入力画像に関してα<−０．２となる対象画素をエッジ画素、それ以外の画素を平坦画素として２値化処理を行った別のエッジ強調画像の一例を表す図である。この図にあるように、本実施例のエッジ検出装置によって、画像からエッジを正確に検出することができる。
なお、正の閾値を使用するか、負の閾値を使用するか、あるいはその両方を使用し、さらに２つの二値画像の境界を検出する処理を加えてエッジとするか、ということはエッジ検出の対象（検出目的）やその他の条件に応じて異なるようにすると良い。例えば白地に書かれた小さな黒文字を検出することが目的である場合には負の閾値を用いることが望ましい。一方、同じ文字でも、幅を持った大きな文字を検出したい場合には正の閾値を使用するほうが望ましい場合もある。
ここで正負の閾値について、より詳細に説明する。すなわち、エッジは画素境界線上に存在するため、画像として表現する際、エッジのどちら側の画素でもエッジ表現に使用することができる。そして輝度差があるエッジ近傍において、暗い側をエッジとして検出する場合には正の閾値が利用され、明るい側をエッジとして検出する場合には負の閾値が利用されることになる。また、正負の閾値それぞれでエッジ検出処理を行い、両方の検出結果を使用して平均化や分散、標準偏差などの統計処理を行い、より正確な位置のエッジを検出するよう構成しても良い。
【００２９】
この図にあるように、本実施例のエッジ検出装置によって、実際のエッジ部分のみを正確に検出することができる。
【００３０】
また、エッジ検出装置では、各画素のエッジ判断結果を利用してエッジ強調画像を生成するだけではなく、例えば検出したエッジの個数をカウントして画像内容の非平坦度合いを判定しても良い。また、生成したエッジ強調画像を利用して、例えば監視カメラ映像であれば典型的人型全体像や顔の輪郭などを示すパターン画像、あるいは指名手配犯の顔写真のエッジ強調画像などとのマッチング処理を行い、不審人物を検知するよう構成しても良い。あるいは、ＡＲ（拡張現実）技術と組み合わせて、拡張現実物体像をカメラ映像内に表示するためのマーカとなる対象物を、エッジ強調画像とマーカ物体画像のパターンマッチング処理により検知し、検知した対象物に重なるようカメラ映像内に拡張現実物体像を表示するよう構成しても良い。
【００３１】
<ハードウェア構成>
図６は、上記機能的な各構成要件をハードウェアとして実現した際の、エッジ検出装置における構成の一例を表す概略図である。この図を利用してエッジ検出処理におけるそれぞれのハードウェア構成部の働きについて説明する。
【００３２】
この図にあるように、本実施例のエッジ検出装置は、以下のようなハードウェア構成を備えている。すなわち、ぼけ平均画素値算出部、重み付け手段、そして判断部である「ＣＰＵ」０６０１や「主メモリ」０６０２を備え、また各種データやプログラムなどを保持する「補助記憶装置」０６０３、カメラ装置や画像再生装置と接続され、エッジ検出を行う画像データが入力される「入力ＩＦ（インターフェース）」０６０４、入力画像やエッジ強調画像を表示する「ディスプレイ」０６０５、ユーザからの操作入力を受け付ける「ＵＩ（ユーザ・インターフェース）」０６０６なども備えている。そしてそれらが「システムバス」などのデータ通信経路によって相互に接続され、情報の送受信や処理を行う。
【００３３】
また、「主メモリ」にはプログラムが読み出され、「ＣＰＵ」は読み出された当該プログラムを参照し、プログラムで示される手順に従い各種演算処理を実行する。また、この「主メモリ」や「補助記憶装置」にはそれぞれ複数のアドレスが割り当てられており、「ＣＰＵ」の演算処理においては、そのアドレスを特定し格納されているデータにアクセスすることで、データを用いた演算処理を行うことが可能になっている。
【００３４】
ここで、「入力ＩＦ」に接続された例えばカメラ装置から撮影映像が入力されると、図示しないバッファに映像が蓄積されるとともに、処理対象となるフレームが「主メモリ」のアドレス１に格納される。すると「ＣＰＵ」は対象画素値取得プログラムを解釈し、例えばまず左上（ピクセル座標：０，０）の画素Ｃ０をエッジ判断対象画素とし、その輝度値ｃを「主メモリ」のアドレス２に格納する。
【００３５】
つづいて「ＣＰＵ」は、ぼけ平均画素値算出プログラムを解釈し、その解釈結果にしたがって、例えば対象画素を中心とする半径１０画素分の周辺領域Ｓ０内にある画素のそれぞれの輝度値を取得する。そしてさらに「ＣＰＵ」は、ぼけ平均画素算出プログラムに含まれる重み付けプログラムの解釈結果にしたがって、当該プログラムにて定められる画素の位置（対象画素からの相対的位置）に応じてプログラムで定められる重み付け値を、取得した当該画素の画素値に積算する。なお、前述のようにこの重み付け値は、図３に示すようにエッジ判断対象画素を略中心とした円形領域を選択したと同等となるようにその重み付けの値が設定されていることを特徴とする。そして「ＣＰＵ」は、重み付けされた各画素の輝度値の平均値を算出して対象画素の周辺領域をぼけ画像とした際の平均輝度値ｓを取得し、「主メモリ」のアドレス３に格納する。
【００３６】
次に「ＣＰＵ」は判断プログラムを解釈し、その解釈結果にしたがって「α＝ｃ／ｓ−１」の演算処理を実行し指標値αを算出する。そしてその指標値αと、例えば当該プログラムで定められる閾値、あるいはカメラ装置のレンズ特性などに応じて別途算出される閾値とαとを比較し、「ＣＰＵ」は演算によってα>０．２（閾値）など両値の関係が所定の条件を満たしているか否かの判断処理を実行する。そして満たしているとの判断結果である場合には、画素Ｃ０はエッジを構成する画素であるとして、その画素の識別情報とエッジフラグとを関連付けて「主メモリ」のアドレス４に格納する。また、満たしていないとの判断結果である場合には、画素Ｃ０はエッジを構成する画素ではないとして、その画素の識別情報と非エッジフラグとを関連付けて「主メモリ」のアドレス４に格納する。
【００３７】
そして「ＣＰＵ」は、すべての画素、あるいは所定の一部画素をエッジ判断対象画素として以上の処理を繰り返し、それぞれの画素についてエッジ画素か非エッジ画素かの判断処理を実行する。その結果「ＣＰＵ」は図示しないエッジ強調画像生成プログラムを解釈し、例えばエッジ画素を白、非エッジ画素を黒とする画像を生成して「ディスプレイ」に表示しても良い。また、さらに図示しないパターンマッチングプログラムを解釈し、「ＣＰＵ」は生成したエッジ強調画像とパターンマッチング画像（予め用意されたパターンマッチング処理用の参考画像）のマッチング処理を実行しても良い。そしてパターンマッチング画像と一致するとの判断結果が出力された場合には、「ＣＰＵ」は不審者警告プログラムを解釈し、不審人物がカメラ映像内に映りこんでいる胸の警告情報を警備会社サーバなどに送信する処理を実行したり、あるいはＡＲプログラムを解釈し、カメラ映像内のパターン画像と一致する領域に所定の仮想現実物体映像を合成して「ディスプレイ」に表示する処理を実行したりしても良い。
【００３８】
<処理の流れ>
図７は、本実施例のエッジ検出装置における処理の流れの一例を表すフローチャートである。なお、以下に示すステップは、上記のような計算機の各ハードウェア構成によって実行されるステップであっても良いし、媒体に記録され計算機を制御するためのプログラムを構成する処理ステップであっても構わない。
【００３９】
この図にあるように、まず、一の画素（または少数の画素の組）をエッジ判断対象画素Ｃとし、その画素の画素値を対象画素値ｃとして取得する（ステップＳ０７０１）。つづいてエッジ判断対象画素の所定範囲を周辺領域Ｓとして、その周辺領域に含まれる画素の画素値を取得する（ステップＳ０７０２）。そしてその取得した周辺領域内の各画素の画素値に対して、周辺領域が円形領域と同等になるように設定された値で重み付けをし（ステップＳ０７０３）、その重み付け後の各画素値の平均値を、ぼけ平均画素値ｓとして算出する（ステップＳ０７０４）。そして最後に、ステップＳ０７０１で取得した対象画素値をぼけ平均画素値で割った値ｃ／ｓが所定の閾値以上であるかを判断し（ステップＳ０７０５）、閾値以上との判断結果であれば（あるいは閾値以下との判断結果であれば）、当該エッジ判断対象画素をエッジ画素と判断する（ステップＳ０７０６Ａ）。また、逆の判断結果であれば当該エッジ判断対象画素を非エッジ画素と判断する（ステップＳ０７０６Ｂ）。そして、以上の処理をすべての画素や所定の一部画素をエッジ判断対象画素として実行し、最後の画素の判断処理を行う（ステップＳ０７０７）まで繰り返す。
なお上記処理手順は一例であり、同様の結果が得られるものであればその処理内容や順番はさまざまであって良い。例えば、まずすべての画素の画素値を取得し、つづいてエッジ判断対象画素Ｃを特定する。つづいて、その特定されたエッジ判断対象画素の周辺領域を円形領域とする図３（ｂ）に示すような重み付けを示すテーブルデータであり、周辺領域に含まれない画素の重み付け値を「０．００」とするようなテーブルデータを利用して、先に取得したすべての画素の画素値に対する重み付け処理を行い、ぼけ平均画素値を算出する（その後の処理は上記と同様）、という具合である。
【００４０】
<効果の簡単な説明>
以上のように本実施例のエッジ検出装置によって、エッジ画素の判断をカメラのレンズ形状に応じた周辺領域のぼけ平均画素値との比較で判断することができ、より精度の高いエッジ検出を行うことができる。
【００４１】
≪実施例２≫
<概要>
本実施例は、上記実施例を基本として、さらにぼけ平均画素値を算出するために設定される周辺領域の大きさを変更可能であることを特徴とするエッジ検出装置である。特に、カメラのレンズ特性などに応じてその周辺領域の大きさを変更することを特徴とする。
【００４２】
<機能的構成>
図８は、本実施例のエッジ検出装置の機能ブロックの一例を表す図である。この図にあるように、本実施例の「エッジ検出装置」０８００は、実施例１を基本として、「対象画素値取得部」０８０１と、「ぼけ平均画素値算出部」０８０２と、「判断部」０８０３と、「重み付け手段」０８０４を有する。そして、本実施例のエッジ検出装置は、ぼけ平均画素値算出部がさらに「変更手段」０８０５を有するとともに、「被写界深度取得部」０８０６と、「変更制御部」０８０７と、を有することを特徴とする。
【００４３】
「変更手段」０８０５は、ぼけ平均画素値算出部が平均画素値を算出するために選択される周辺領域の大きさを変更する機能を有し、例えばＣＰＵや主メモリ、変更プログラムなどによって実現することができる。具体的に、例えばユーザの入力した値にしたがって、周辺領域をエッジ判断対象画素を中心とする半径１０画素から半径６画素に変更するという具合である。
【００４４】
あるいは、例えばレンズの焦点特性により撮影画像のぼけ範囲が小さい、すなわちレンズの被写界深度が深い場合、ぼけ平均画素値を算出するための周辺領域の大きさも小さくすることができる。あるいは逆に被写界深度が浅く、ぼけ範囲が広ければ周辺領域の大きさを大きく設定したほうがエッジ検出の精度が高まる。そこで以下の構成によって対象画像を生成したカメラのレンズ特性などに応じて、その周辺領域の大きさが設定されるようにしても良い。
【００４５】
「被写界深度取得部」０８０６は、エッジ判断対象の画像を生成した際の被写界深度を取得する機能を有し、例えばＣＰＵや主メモリ、被写界深度取得プログラムによって実現することができる。図９は、この被写界深度を取得する際に利用されるテーブルデータの一例を表す図である。絞り値が固定であれば、前述のとおり、被写界深度はレンズ特性であるので、例えばレンズＩＤ（あるいはレンズとカメラの組み合わせが固定であればカメラＩＤ）と、そのレンズの被写界深度とを関連付けたテーブルデータをエッジ検出装置の内部または外部にて保持しておく。そしてエッジ判断対象の画像を取得する際に、そのレンズＩＤやカメラＩＤを合わせて取得し、当該ＩＤを検索キーとする検索処理によって被写界深度を取得する、という具合である。また、その際に被写界深度の変数となるレンズの直径などの情報も合わせて取得する構成としても良い。
また、撮影画像データに含まれる、いわゆる「Ｅｘｉｆ（エクスチェンジャブル・イメージ・ファイル・フォーマット）情報」で示される焦点距離や絞り値を取得し、これらを変数として被写界深度を算出する構成としても良い。
【００４６】
「変更制御部」０８０７は、取得した被写界深度に応じて前記変更手段によって変更される周辺領域の大きさを制御する機能を有し、ＣＰＵや主メモリ、変更制御プログラムによって実現することができる。具体的には、例えばレンズの被写界深度を示す値が大きければ大きいほど周辺領域の大きさを小さく設定するような関数ｙ＝ｆ（ｘ）（ｙ：周辺領域の大きさ。ｘ：被写界深度を示す値）を利用して算出した大きさｙに周辺領域を制御する方法が挙げられる。あるいは、被写界深度ｘ（メートル）の値が０〜１．０であれば周辺領域の大きさｙ（半径画素数）の値が６、被写界深度ｘの値が１．１〜２．０であれば周辺領域の大きさｙの値が８、といった具合に被写界深度の範囲と周辺領域の大きさの対応関係を示すテーブルデータなどを参照し、そのテーブルデータで定められた大きさに周辺領域を制御する方法も挙げられる。
【００４７】
以上のように、本実施例のエッジ検出装置は、周辺領域の大きさを任意に変更することができる。また、エッジ検出対象の画像を生成したカメラのレンズ特性などに応じてその周辺領域の大きさを変更することで、エッジの検出に適切な大きさに周辺領域を定めて処理を行うことができる。また測定用の高価なカメラを用いて優秀なエッジ検出を行うことができることはもちろん、精度の低い安価なカメラを用いても実用的なエッジ検出を可能とすることができる。
【００４８】
<処理の流れ>
図１０は、本実施例のエッジ検出装置における処理の流れの一例を表すフローチャートである。なお、以下に示すステップは、上記のような計算機の各ハードウェア構成によって実行されるステップであっても良いし、媒体に記録され計算機を制御するためのプログラムを構成する処理ステップであっても構わない。なおエッジ検出全体にかかる処理の流れについての説明は、上記実施例にて図７を用いて説明したものと同様であるので省略する。ここでは図７のステップＳ０７０２の処理で利用される周辺領域の大きさ決定に係る処理について説明する。
【００４９】
この図にあるように、まず、エッジ検出の対象となる画像の取得と合わせて、その画像を生成したレンズのＩＤや入力画像のＥｘｉｆデータなどを取得する（ステップＳ１００１）。また合わせてレンズの直径などの情報も取得すると良い。つづいて予め保持されている図９に示すようなテーブルデータを参照し、取得したＩＤをキーとする検索処理を行い、画像生成の際の被写界深度を取得する（ステップＳ１００２）。そして、取得した被写界深度に基づいて、所定の計算式やテーブルデータなどを利用して周辺領域の大きさを決定する（ステップＳ１００３）。
【００５０】
<効果の簡単な説明>
以上のように本実施例のエッジ検出装置によって、周辺領域の大きさを任意に変更することができる。また、エッジ検出対象の画像を生成したカメラのレンズ特性などに応じてその周辺領域の大きさを変更することで、エッジの検出に適切な大きさに周辺領域を定めて処理を行うことができる。
【符号の説明】
【００５１】
０２００  エッジ検出装置
０２０１  対象画素取得部
０２０２  ぼけ平均画素値算出部
０２０３  判断部
０２０４  重み付け手段
【図１】
0005779089.tif 000002
【図２】
0005779089.tif 000003
【図３】
0005779089.tif 000004
【図４】
0005779089.tif 000005
【図５】
0005779089.tif 000006
【図６】
0005779089.tif 000007
【図７】
0005779089.tif 000008
【図８】
0005779089.tif 000009
【図９】
0005779089.tif 000010
【図１０】
0005779089.tif 000011