(57)【特許請求の範囲】
【請求項１】
画像内の矩形画像の縁を検出するための縁検出方法であって、
縁判定閾値が格納される縁判定閾値記憶手段と、縁判定手段、隅検出手段を有する装置において、
前記縁判定閾値記憶手段に縁判定閾値の初期値を設定しておき、
前記縁判定手段が、前記画像の上下左右の端となる該画像の辺の中点を算出し、該中点を注目点として、該画像の中心方向へ１画素ずつ注目点を移動させながら、該注目点の近傍の輝度の重み付き和が、前記縁判定閾値記憶手段に記憶された前記縁判定閾値を超えた場合に注目点が縁であることを検出する縁判定ステップと、
前記隅検出手段が、前記縁判定ステップで縁であると検出された点の位置をもとに、上下あるいは、左右方向の直線上に注目点を順次設定して、該設定した注目点の近傍の輝度の重み付き和が前記縁判定閾値記憶手段に記憶された前記縁判定閾値を超えた場合に注目点が縁であることを検出し、該直線上の縁が検出されなくなった点を四隅のうちの一つとする隅検出ステップと、
を行うことを特徴とする縁検出方法。
【請求項２】
前記隅検出ステップは、
前記縁判定ステップで縁であると検出された注目点の位置をもとに、上下あるいは左右方向の直線上の連続しない画素に注目点を順次設定して、該注目点の近傍の輝度の重み付き和が前記縁判定閾値記憶手段に記憶された前記縁判定閾値を超えた場合に、注目点が縁であることを検出し、
前記直線上に縁が検出されなくなった場合には、最後に検出した点から該方向の直線上に１画素ずつ順次注目点を設定して、該注目点の近傍の輝度の重み付き和が前記縁判定閾値記憶手段に記憶された前記縁判定閾値を超えた場合に注目点が縁であることを検出し、該直線上の線が検出されなくなった点を四隅のうちの一つとする
請求項１記載の縁検出方法。
【請求項３】
画像内の矩形画像の縁を検出するための縁検出方法であって、
縁判定閾値が格納される縁判定閾値記憶手段、縁判定手段、隅判定手段を有する装置において、
前記縁判定閾値記憶手段に縁判定閾値の初期値を設定しておき、
前記縁判定手段が、前記画像の上下左右の端となる該画像の辺の任意の複数の点を選択し、該複数の点を注目点として、該画像の中心方向へ１画素ずつ注目点を移動させながら、該注目点の近傍の輝度の重み付き和が、前記縁判定閾値記憶手段に記憶された前記縁判定閾値を超えた場合に注目点が縁であることを検出する縁判定ステップと、
前記隅検出手段が、前記検出した複数の縁の位置から、上下あるいは左右方向の直線を最小二乗法により算出し、前記算出した上下左右方向の４つの直線の交点を四隅とする隅検出ステップと、
を行うことを特徴とする縁検出方法。
【請求項４】
前記装置はさらに縁判定閾値調整手段を有し、
前記縁判定閾値調整手段が、
前記縁判定ステップで検出した前記縁の点の位置をもとに、該縁の点の位置から２画素外側の画素の輝度と２画素内側の画素の輝度の差に、前記重みつき和を求めるための重み係数行列の正の係数の和の値を掛けた値を新たな縁判定閾値とし、該縁判定閾値により前記縁判定閾値記憶手段の縁判定閾値を更新する縁判定閾値調整ステップを行う
請求項１乃至３記載の縁検出方法。
【請求項５】
前記縁判定閾値調整ステップを行う契機は、
直前に調整した位置から事前に定めた距離だけ離れた時点、
または、
毎回の縁判定の直前
のいずれかである
請求項４記載の縁検出方法。
【請求項６】
画像内の矩形画像の縁を検出するための縁検出装置であって、
縁判定閾値の初期値が設定されている縁判定閾値記憶手段と、
前記画像の上下左右の端となる該画像の辺の中点を算出し、該中点を注目点として、該画像の中心方向へ１画素ずつ注目点を移動させながら、該注目点の近傍の輝度の重み付き和が、前記縁判定閾値記憶手段に記憶された前記縁判定閾値を超えた場合に注目点が縁であることを検出する縁判定手段と、
前記縁判定手段で縁であると検出された点の位置をもとに、上下あるいは、左右方向の直線上に注目点を順次設定して、該設定した注目点の近傍の輝度の重み付き和が前記縁判定閾値記憶手段に記憶された前記縁判定閾値を超えた場合に注目点が縁であることを検出し、該直線上の縁が検出されなくなった点を四隅のうちの一つとする隅検出手段と、
を有することを特徴とする縁検出装置。
【請求項７】
前記隅検出手段は、
前記縁判定手段で縁であると検出された注目点の位置をもとに、上下あるいは左右方向の直線上の連続しない画素に注目点を順次設定して、該注目点の近傍の輝度の重み付き和が前記縁判定閾値記憶手段に記憶された前記縁判定閾値を超えた場合に、注目点が縁であることを検出する手段と、
前記直線上に縁が検出されなくなった場合には、最後に検出した点から該方向の直線上に１画素ずつ順次注目点を設定して、該注目点の近傍の輝度の重み付き和が前記縁判定閾値記憶手段に記憶された前記縁判定閾値を超えた場合に注目点が縁であることを検出し、該直線上の線が検出されなくなった点を四隅のうちの一つとする手段と、
を含む請求項６記載の縁検出装置。
【請求項８】
画像内の矩形画像の縁を検出するための縁検出装置であって、
縁判定閾値の初期値が設定されている縁判定閾値記憶手段と、
前記画像の上下左右の端となる該画像の辺の任意の複数の点を選択し、該複数の点を注目点として、該画像の中心方向へ１画素ずつ注目点を移動させながら、該注目点の近傍の輝度の重み付き和が、前記縁判定閾値記憶手段に記憶された前記縁判定閾値を超えた場合に注目点が縁であることを検出する縁判定手段と、
前記検出した複数の縁の位置から、上下あるいは左右方向の直線を最小二乗法により算出し、前記算出した上下左右方向の４つの直線の交点を四隅とする隅検出手段と、
を有することを特徴とする縁検出装置。
【請求項９】
前記縁判定手段で検出した前記縁の点の位置をもとに、該縁の点の位置から２画素外側の画素の輝度と２画素内側の画素の輝度の差に、前記重みつき和を求めるための重み係数行列の正の係数の和の値を掛けた値を新たな縁判定閾値とし、該縁判定閾値により前記縁判定閾値記憶手段の縁判定閾値を更新する縁判定閾値調整手段を更に含む
請求項６乃至８記載の縁検出装置。
【請求項１０】
前記縁判定閾値調整手段は、
直前に調整した位置から事前に定めた距離だけ離れた時点、
または、
毎回の縁判定の直前
のいずれの契機で前記縁判定閾値を更新する
請求項９記載の縁検出装置。
【請求項１１】
請求項６乃至１０のいずれか１項に記載の縁検出装置を構成する各手段としてコンピュータを機能させる縁検出プログラム。
【請求項１２】
請求項６乃至１０のいずれか１項に記載の縁検出装置を構成する手段としてコンピュータを機能させる縁検出プログラムを格納した記憶媒体。
【請求項１３】
画像内の矩形画像の枠を検出するための枠検出方法であって、
枠判定閾値が格納される枠判定閾値記憶手段と、枠判定手段、隅検出手段を有する装置において、
前記枠判定閾値記憶手段に枠判定閾値の初期値を設定しておき、
前記枠判定手段が、前記画像の上下左右の端となる該画像の辺の中点を算出し、該中点を注目点として、該画像の中心方向へ１画素ずつ注目点を移動させながら、該注目点の近傍の輝度の重み付き和が、前記枠判定閾値記憶手段に記憶された前記枠判定閾値を超えた場合に注目点が枠であることを検出する枠判定ステップと、
前記隅検出手段が、前記枠判定ステップで枠であると検出された点の位置をもとに、上下あるいは、左右方向の直線上に注目点を順次設定して、該設定した注目点の近傍の輝度の重み付き和が前記枠判定閾値記憶手段に記憶された前記枠判定閾値を超えた場合に注目点が枠であることを検出し、該直線上の枠が検出されなくなった点を四隅のうちの一つとする隅検出ステップと、
を行うことを特徴とする枠検出方法。
【請求項１４】
前記隅検出ステップは、
前記枠判定ステップで枠であると検出された注目点の位置をもとに、上下あるいは左右方向の直線上の連続しない画素に注目点を順次設定して、該注目点の近傍の輝度の重み付き和が前記枠判定閾値記憶手段に記憶された前記枠判定閾値を超えた場合に、注目点が枠であることを検出し、
前記直線上に枠が検出されなくなった場合には、最後に検出した点から該方向の直線上に１画素ずつ順次注目点を設定して、該注目点の近傍の輝度の重み付き和が前記枠判定閾値記憶手段に記憶された前記枠判定閾値を超えた場合に注目点が枠であることを検出し、該直線上の線が検出されなくなった点を四隅のうちの一つとする
請求項１３記載の枠検出方法。
【請求項１５】
画像内の矩形画像の枠を検出するための枠検出方法であって、
枠判定閾値が格納される枠判定閾値記憶手段、枠判定手段、隅判定手段を有する装置において、
前記枠判定閾値記憶手段に枠判定閾値の初期値を設定しておき、
前記枠判定手段が、前記画像の上下左右の端となる該画像の辺の任意の複数の点を選択し、該複数の点を注目点として、該画像の中心方向へ１画素ずつ注目点を移動させながら、該注目点の近傍の輝度の重み付き和が、前記枠判定閾値記憶手段に記憶された前記枠判定閾値を超えた場合に注目点が枠であることを検出する枠判定ステップと、
前記隅検出手段が、前記検出した複数の枠の位置から、上下あるいは左右方向の直線を最小二乗法により算出し、前記算出した上下左右方向の４つの直線の交点を四隅とする隅検出ステップと、
を行うことを特徴とする枠検出方法。
【請求項１６】
前記装置はさらに枠判定閾値調整手段を有し、
前記枠判定手段が、さらに、既定の範囲の近傍点範囲幅のぞれぞれについて、該近傍点範囲幅内の各点を注目点として、該注目点の近傍の輝度の重み付き和を求め、該重み付き和が最大となる前記近傍点範囲幅の値を最適近傍点範囲幅として決定する最適近傍点範囲探索ステップを行い、
前記枠判定閾値調整手段が、
前記枠判定ステップで検出した前記枠の点の位置から、前記最適近傍点範囲幅の２分の１画素内側の位置を、前記枠の中心の位置とし、前記枠の中心の位置から前記最適近傍点範囲幅の２分の１画素外側の画素の輝度と前記最適近傍点範囲幅の２分の１画素内側の画素の輝度との平均値を算出し、該平均値と前記枠の中心の位置の輝度との差に、前記重み付き和を求めるための重み係数行列の正の係数の和の値を掛けた値を新たな枠判定閾値とし、該枠判定閾値により前記枠判定閾値記憶手段の枠判定閾値を更新する枠判定閾値調整ステップを行う
請求項１３乃至１５記載の枠検出方法。
【請求項１７】
前記最適近傍点範囲探索ステップと前記枠判定閾値調整ステップとを行う契機は、
直前に調整した位置から事前に定めた距離だけ離れた時点、
または、
毎回の枠判定の直前
のいずれかである
請求項１６記載の枠検出方法。
【請求項１８】
画像内の矩形画像の枠を検出するための枠検出装置であって、
枠判定閾値の初期値が設定されている枠判定閾値記憶手段と、
前記画像の上下左右の端となる該画像の辺の中点を算出し、該中点を注目点として、該画像の中心方向へ１画素ずつ注目点を移動させながら、該注目点の近傍の輝度の重み付き和が、前記枠判定閾値記憶手段に記憶された前記枠判定閾値を超えた場合に注目点が枠であることを検出する枠判定手段と、
前記枠判定手段で枠であると検出された点の位置をもとに、上下あるいは、左右方向の直線上に注目点を順次設定して、該設定した注目点の近傍の輝度の重み付き和が前記枠判定閾値記憶手段に記憶された前記枠判定閾値を超えた場合に注目点が枠であることを検出し、該直線上の枠が検出されなくなった点を四隅のうちの一つとする隅検出手段と、
を有することを特徴とする枠検出装置。
【請求項１９】
前記隅検出手段は、
前記枠判定手段で枠であると検出された注目点の位置をもとに、上下あるいは左右方向の直線上の連続しない画素に注目点を順次設定して、該注目点の近傍の輝度の重み付き和が前記枠判定閾値記憶手段に記憶された前記枠判定閾値を超えた場合に、注目点が枠であることを検出する手段と、
前記直線上に枠が検出されなくなった場合には、最後に検出した点から該方向の直線上に１画素ずつ順次注目点を設定して、該注目点の近傍の輝度の重み付き和が前記枠判定閾値記憶手段に記憶された前記枠判定閾値を超えた場合に注目点が枠であることを検出し、該直線上の線が検出されなくなった点を四隅のうちの一つとする手段と、
を含む請求項１８記載の枠検出装置。
【請求項２０】
画像内の矩形画像の枠を検出するための枠検出装置であって、
枠判定閾値の初期値が設定されている枠判定閾値記憶手段と、
前記画像の上下左右の端となる該画像の辺の任意の複数の点を選択し、該複数の点を注目点として、該画像の中心方向へ１画素ずつ注目点を移動させながら、該注目点の近傍の輝度の重み付き和が、前記枠判定閾値記憶手段に記憶された前記枠判定閾値を超えた場合に注目点が枠であることを検出する枠判定手段と、
前記検出した複数の枠の位置から、上下あるいは左右方向の直線を最小二乗法により算出し、前記算出した上下左右方向の４つの直線の交点を四隅とする隅検出手段と、
を有することを特徴とする枠検出装置。
【請求項２１】
前記枠判定手段が、さらに、規定の範囲の近傍点範囲幅のそれぞれについて、該近傍点範囲幅内の各点を注目点として、該注目点の近傍の輝度の重み付き和を求め、前記重み付き和が最大となる前記近傍点範囲幅の値を最適近傍点範囲幅として決定し、
前記装置は、さらに、
前記枠判定手段で検出した前記枠の点の位置から、前記最適近傍点範囲幅の２分の１画素内側の位置を、前記枠の中心の位置とし、前記枠の中心の位置から前記最適近傍点範囲幅の２分の１画素外側の画素の輝度と前記最適近傍点範囲幅の２分の１画素内側の画素の輝度との平均値を算出し、該平均値と前記枠の中心の位置の輝度との差に、前記重み付き和を求めるための重み係数行列の正の係数の和の値を掛けた値を新たな枠判定閾値とし、該枠判定閾値により前記枠判定閾値記憶手段の枠判定閾値を更新する枠判定閾値調整手段を含む
請求項１８乃至２０記載の枠検出装置。
【請求項２２】
直前に調整した位置から事前に定めた距離だけ離れた時点、
または、
毎回の枠判定の直前
のいずれかの契機で、前記枠判定手段は最適近傍点範囲幅を決定し、前記枠判定閾値調整手段は、前記枠判定閾値を更新する
請求項２１記載の枠検出装置。
【請求項２３】
請求項１８乃至２２のいずれか１項に記載の枠検出装置を構成する各手段としてコンピュータを機能させる枠検出プログラム。
【請求項２４】
請求項１８乃至２２のいずれか１項に記載の枠検出装置を構成する各手段としてコンピュータを機能させる枠検出プログラムを格納した記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、縁検出方法及び装置及びプログラム及び記憶媒体及び枠検出方法及び装置及びプログラム及び記憶媒体に係り、特に、印刷物をカメラで撮影した画像データの補正処理として、もとの印刷物の画像を忠実に再現するための技術における、矩形画像を補正するために必要な四隅の点を検出するための縁検出方法及び装置及びプログラム及び記憶媒体及び枠検出方法及び装置及びプログラム及び記憶媒体に関する。
【背景技術】
【０００２】
従来、印刷物をカメラで撮影した撮影画像に対して、画像処理を行う場合、撮影画像は元の印刷物に対して射影変換が施されたものになるため、逆射影変換を行う必要がある（例えば、非特許文献１参照）。
【０００３】
また、逆射影変換を行うための変換行列を求めるためには、撮影画像と印刷物の間で、対応する点が最低４点必要である（例えば、非特許文献２参照）。対応する点に画像輪郭線上の特徴点を用いることが一般的であり、矩形画像では通常四隅を用いる。
【非特許文献１】「ＣＡＤ・ＣＧのための基礎数学」島田静雄著、２０００年、共立出版、ISBN4-3200-1646-7http://www.ke.ics.saitama-u.ac.jp/kondo/Geomap/CADCGHTML/CadCgMathmatics.html
【非特許文献２】「コンピュータ画像処理技術」http://www2.nsknet.or.jp/numada/ip.html
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記従来の矩形画像の四隅を検出するための技術は、元画像を輪郭強調したエッジ画像に変換した後、ハフ変換を用いた直線認識を行い、その交点を求めることが一般的なため、処理量が大きく携帯端末のような処理能力が低く、しかも機種によっては小数点演算ができない機器で実行することは困難である。
【０００５】
本発明は、上記の点に鑑みなされたもので、印刷物をカメラで撮影した矩形画像を補正するために必要な四隅の点を高速に検出することが可能な縁検出方法及び装置及びプログラム及び記憶媒体及び枠検出方法及び装置及びプログラム及び記憶媒体を提供することを目的とする。
【課題を解決するための手段】
【０００６】
図１は、本発明の原理を説明するための図である。
【０００７】
本発明（請求項１）は、画像内の矩形画像の縁を検出するための縁検出方法であって、
縁判定閾値が格納される縁判定閾値記憶手段と、縁判定手段、隅検出手段を有する装置において、
縁判定閾値記憶手段に縁判定閾値の初期値を設定しておき、
縁判定手段が、画像の上下左右の端となる該画像の辺の中点を算出し、該中点を注目点として、該画像の中心方向へ１画素ずつ注目点を移動させながら、該注目点の近傍の輝度の重み付き和が、縁判定閾値記憶手段に記憶された縁判定閾値を超えた場合に注目点が縁であることを検出する縁判定ステップ（ステップ１）と、
隅検出手段が、縁判定ステップで縁であると検出された点の位置をもとに、上下あるいは、左右方向の直線上に注目点を順次設定して、該設定した注目点の近傍の輝度の重み付き和が縁判定閾値記憶手段に記憶された縁判定閾値を超えた場合に注目点が縁であることを検出し、該直線上の縁が検出されなくなった点を四隅のうちの一つとする隅検出ステップ（ステップ２）と、を行う。
【０００８】
また、本発明（請求項２）は、隅検出ステップ（ステップ２）において、
縁判定ステップで縁であると検出された注目点の位置をもとに、上下あるいは左右方向の直線上の連続しない画素に注目点を順次設定して、該注目点の近傍の輝度の重み付き和が縁判定閾値記憶手段に記憶された縁判定閾値を超えた場合に、注目点が縁であることを検出し、
直線上に縁が検出されなくなった場合には、最後に検出した点から該方向の直線上に１画素ずつ順次注目点を設定して、該注目点の近傍の輝度の重み付き和が縁判定閾値記憶手段に記憶された縁判定閾値を超えた場合に注目点が縁であることを検出し、該直線上の線が検出されなくなった点を四隅のうちの一つとする。
【０００９】
また、本発明（請求項３）は、画像内の矩形画像の縁を検出するための縁検出方法であって、
縁判定閾値が格納される縁判定閾値記憶手段、縁判定手段、隅判定手段を有する装置において、
縁判定閾値記憶手段に縁判定閾値の初期値を設定しておき、
縁判定手段が、画像の上下左右の端となる該画像の辺の任意の複数の点を選択し、該複数の点を注目点として、該画像の中心方向へ１画素ずつ注目点を移動させながら、該注目点の近傍の輝度の重み付き和が、縁判定閾値記憶手段に記憶された縁判定閾値を超えた場合に注目点が縁であることを検出する縁判定ステップと、
隅検出手段が、検出した複数の縁の位置から、上下あるいは左右方向の直線を最小二乗法により算出し、算出した上下左右方向の４つの直線の交点を四隅とする隅検出ステップと、を行う。
【００１０】
また、本発明（請求項４）は、装置においてさらに縁判定閾値調整手段を有し、
縁判定閾値調整手段が、
縁判定ステップで検出した縁の点の位置をもとに、該縁の点の位置から２画素外側の画素の輝度と２画素内側の画素の輝度の差に、重みつき和を求めるための重み係数行列の正の係数の和の値を掛けた値を新たな縁判定閾値とし、該縁判定閾値により縁判定閾値記憶手段の縁判定閾値を更新する縁判定閾値調整ステップを行う。
また、本発明（請求項５）は、縁判定閾値調整ステップを行う契機を、
直前に調整した位置から事前に定めた距離だけ離れた時点、または、毎回の縁判定の直前のいずれかとする。
【００１１】
図２は、本発明の原理構成図である。
本発明（請求項６）は、画像内の矩形画像の縁を検出するための縁検出装置であって、
縁判定閾値の初期値が設定されている縁判定閾値記憶手段と、
画像の上下左右の端となる該画像の辺の中点を算出し、該中点を注目点として、該画像の中心方向へ１画素ずつ注目点を移動させながら、該注目点の近傍の輝度の重み付き和が、縁判定閾値記憶手段に記憶された縁判定閾値を超えた場合に注目点が縁であることを検出する縁判定手段と、
縁判定手段で縁であると検出された点の位置をもとに、上下あるいは、左右方向の直線上に注目点を順次設定して、該設定した注目点の近傍の輝度の重み付き和が縁判定閾値記憶手段に記憶された縁判定閾値を超えた場合に注目点が縁であることを検出し、該直線上の縁が検出されなくなった点を四隅のうちの一つとする隅検出手段と、を有する。
【００１２】
また、本発明（請求項７）は、隅検出手段において、
縁判定手段で縁であると検出された注目点の位置をもとに、上下あるいは左右方向の直線上の連続しない画素に注目点を順次設定して、該注目点の近傍の輝度の重み付き和が縁判定閾値記憶手段に記憶された縁判定閾値を超えた場合に、注目点が縁であることを検出する手段と、
直線上に縁が検出されなくなった場合には、最後に検出した点から該方向の直線上に１画素ずつ順次注目点を設定して、該注目点の近傍の輝度の重み付き和が縁判定閾値記憶手段に記憶された縁判定閾値を超えた場合に注目点が縁であることを検出し、該直線上の線が検出されなくなった点を四隅のうちの一つとする手段と、を含む。
【００１３】
本発明（請求項８）は、画像内の矩形画像の縁を検出するための縁検出装置であって、
縁判定閾値の初期値が設定されている縁判定閾値記憶手段と、
画像の上下左右の端となる該画像の辺の任意の複数の点を選択し、該複数の点を注目点として、該画像の中心方向へ１画素ずつ注目点を移動させながら、該注目点の近傍の輝度の重み付き和が、縁判定閾値記憶手段に記憶された縁判定閾値を超えた場合に注目点が縁であることを検出する縁判定手段と、
検出した複数の縁の位置から、上下あるいは左右方向の直線を最小二乗法により算出し、算出した上下左右方向の４つの直線の交点を四隅とする隅検出手段と、を有する。
【００１４】
本発明（請求項９）は、縁判定手段で検出した縁の点の位置をもとに、該縁の点の位置から２画素外側の画素の輝度と２画素内側の画素の輝度の差に、重みつき和を求めるための重み係数行列の正の係数の和の値を掛けた値を新たな縁判定閾値とし、該縁判定閾値により縁判定閾値記憶手段の縁判定閾値を更新する縁判定閾値調整手段を更に含む。
本発明（請求項１０）は、縁判定閾値調整手段は、
直前に調整した位置から事前に定めた距離だけ離れた時点、
または、
毎回の縁判定の直前
のいずれの契機で縁判定閾値を更新する。
【００１５】
また、本発明（請求項１１）は、請求項６乃至１０のいずれか１項に記載の縁検出装置を構成する各手段としてコンピュータを機能させる縁検出プログラムである。
また、本発明（請求項１２）は、請求項６乃至１０のいずれか１項に記載の縁検出装置を構成する各手段としてコンピュータを機能させる縁検出プログラムを格納した記憶媒体である。
【００１６】
本発明（請求項１３）は、画像内の矩形画像の枠を検出するための枠検出方法であって、
枠判定閾値が格納される枠判定閾値記憶手段と、枠判定手段、隅検出手段を有する装置において、
枠判定閾値記憶手段に枠判定閾値の初期値を設定しておき、
枠判定手段が、画像の上下左右の端となる該画像の辺の中点を算出し、該中点を注目点として、該画像の中心方向へ１画素ずつ注目点を移動させながら、該注目点の近傍の輝度の重み付き和が、枠判定閾値記憶手段に記憶された枠判定閾値を超えた場合に注目点が枠であることを検出する枠判定ステップ（ステップ３）と、
隅検出手段が、枠判定ステップで枠であると検出された点の位置をもとに、上下あるいは、左右方向の直線上に注目点を順次設定して、該設定した注目点の近傍の輝度の重み付き和が枠判定閾値記憶手段に記憶された枠判定閾値を超えた場合に注目点が枠であることを検出し、該直線上の枠が検出されなくなった点を四隅のうちの一つとする隅検出ステップ（ステップ４）と、を行う。
【００１７】
また、本発明（請求項１４）は、隅検出ステップ（ステップ４）において、
枠判定ステップ（ステップ３）で枠であると検出された注目点の位置をもとに、上下あるいは左右方向の直線上の連続しない画素に注目点を順次設定して、該注目点の近傍の輝度の重み付き和が枠判定閾値記憶手段に記憶された枠判定閾値を超えた場合に、注目点が枠であることを検出し、
直線上に枠が検出されなくなった場合には、最後に検出した点から該方向の直線上に１画素ずつ順次注目点を設定して、該注目点の近傍の輝度の重み付き和が枠判定閾値記憶手段に記憶された枠判定閾値を超えた場合に注目点が枠であることを検出し、該直線上の線が検出されなくなった点を四隅のうちの一つとする。
【００１８】
本発明（請求項１５）は、画像内の矩形画像の枠を検出するための枠検出方法であって、
枠判定閾値が格納される枠判定閾値記憶手段、枠判定手段、隅判定手段を有する装置において、
枠判定閾値記憶手段に枠判定閾値の初期値を設定しておき、
枠判定手段が、画像の上下左右の端となる該画像の辺の任意の複数の点を選択し、該複数の点を注目点として、該画像の中心方向へ１画素ずつ注目点を移動させながら、該注目点の近傍の輝度の重み付き和が、枠判定閾値記憶手段に記憶された枠判定閾値を超えた場合に注目点が枠であることを検出する枠判定ステップと、
隅検出手段が、検出した複数の枠の位置から、上下あるいは左右方向の直線を最小二乗法により算出し、算出した上下左右方向の４つの直線の交点を四隅とする隅検出ステップと、を行う。
【００１９】
また、本発明（請求項１６）は、当該装置が、さらに枠判定閾値調整手段を有し、
枠判定手段が、さらに、既定の範囲の近傍点範囲幅のぞれぞれについて、該近傍点範囲幅内の各点を注目点として、該注目点の近傍の輝度の重み付き和を求め、該重み付き和が最大となる近傍点範囲幅の値を最適近傍点範囲幅として決定する最適近傍点範囲探索ステップを行い、
枠判定閾値調整手段が、
枠判定ステップで検出した枠の点の位置から、最適近傍点範囲幅の２分の１画素内側の位置を、枠の中心の位置とし、枠の中心の位置から最適近傍点範囲幅の２分の１画素外側の画素の輝度と最適近傍点範囲幅の２分の１画素内側の画素の輝度との平均値を算出し、該平均値と枠の中心の位置の輝度との差に、重み付き和を求めるための重み係数行列の正の係数の和の値を掛けた値を新たな枠判定閾値とし、該枠判定閾値により枠判定閾値記憶手段の枠判定閾値を更新する枠判定閾値調整ステップを行う。
【００２０】
また、本発明（請求項１７）は、最適近傍点範囲探索ステップと前記枠判定閾値調整ステップとを行う契機は、直前に調整した位置から事前に定めた距離だけ離れた時点、または、毎回の枠判定の直前のいずれかとする。
【００２１】
本発明（請求項１８）は、画像内の矩形画像の枠を検出するための枠検出装置であって、
枠判定閾値の初期値が設定されている枠判定閾値記憶手段１４５と、
画像の上下左右の端となる該画像の辺の中点を算出し、該中点を注目点として、該画像の中心方向へ１画素ずつ注目点を移動させながら、該注目点の近傍の輝度の重み付き和が、枠判定閾値記憶手段に記憶された枠判定閾値を超えた場合に注目点が枠であることを検出する枠判定手段１３０と、
枠判定手段１３０で枠であると検出された点の位置をもとに、上下あるいは、左右方向の直線上に注目点を順次設定して、該設定した注目点の近傍の輝度の重み付き和が枠判定閾値記憶手段１４５に記憶された枠判定閾値を超えた場合に注目点が枠であることを検出し、該直線上の枠が検出されなくなった点を四隅のうちの一つとする隅検出手段１２０と、を有する。
【００２２】
また、本発明（請求項１９）は、隅検出手段１２０において、
枠判定手段１３０で枠であると検出された注目点の位置をもとに、上下あるいは左右方向の直線上の連続しない画素に注目点を順次設定して、該注目点の近傍の輝度の重み付き和が枠判定閾値記憶手段１４５に記憶された枠判定閾値を超えた場合に、注目点が枠であることを検出する手段と、
直線上に枠が検出されなくなった場合には、最後に検出した点から該方向の直線上に１画素ずつ順次注目点を設定して、該注目点の近傍の輝度の重み付き和が枠判定閾値記憶手段１４５に記憶された枠判定閾値を超えた場合に注目点が枠であることを検出し、該直線上の線が検出されなくなった点を四隅のうちの一つとする手段と、を含む。
【００２３】
本発明（請求項２０）は、画像内の矩形画像の枠を検出するための枠検出装置であって、
枠判定閾値の初期値が設定されている枠判定閾値記憶手段と、
画像の上下左右の端となる該画像の辺の任意の複数の点を選択し、該複数の点を注目点として、該画像の中心方向へ１画素ずつ注目点を移動させながら、該注目点の近傍の輝度の重み付き和が、枠判定閾値記憶手段に記憶された枠判定閾値を超えた場合に注目点が枠であることを検出する枠判定手段と、
検出した複数の枠の位置から、上下あるいは左右方向の直線を最小二乗法により算出し、算出した上下左右方向の４つの直線の交点を四隅とする隅検出手段と、を有する。
【００２４】
また、本発明（請求項２１）は、枠判定手段が、さらに、規定の範囲の近傍点範囲幅のそれぞれについて、該近傍点範囲幅内の各点を注目点として、該注目点の近傍の輝度の重み付き和を求め、重み付き和が最大となる近傍点範囲幅の値を最適近傍点範囲幅として決定し、
装置は、さらに、
枠判定手段で検出した枠の点の位置から、最適近傍点範囲幅の２分の１画素内側の位置を、枠の中心の位置とし、枠の中心の位置から最適近傍点範囲幅の２分の１画素外側の画素の輝度と最適近傍点範囲幅の２分の１画素内側の画素の輝度との平均値を算出し、該平均値と枠の中心の位置の輝度との差に、重み付き和を求めるための重み係数行列の正の係数の和の値を掛けた値を新たな枠判定閾値とし、該枠判定閾値により枠判定閾値記憶手段の枠判定閾値を更新する枠判定閾値調整手段を含む。
【００２５】
本発明（請求項２２）は、直前に調整した位置から事前に定めた距離だけ離れた時点、または、毎回の枠判定の直前のいずれかの契機で、前記枠判定手段は最適近傍点範囲幅を決定し、前記枠判定閾値調整手段は、前記枠判定閾値を更新する。
【００２６】
本発明（請求項２３）は、請求項１８乃至２２のいずれか１項に記載の枠検出装置を構成する各手段としてコンピュータを機能させる枠検出プログラムである。
本発明（請求項２４）は、請求項１８乃至２２のいずれか１項に記載の枠検出装置を構成する各手段としてコンピュータを機能させる枠検出プログラムを格納した記憶媒体である。
【発明の効果】
【００２７】
本発明は、印刷物をカメラで撮影した撮影画像中の矩形画像の四隅を検出する際に、撮影画像の端から縁または枠を手掛かりとして探して縁または枠の一部を特定し、縁や枠の一部から真っ直ぐに辿り、途切れた位置から四隅を到底し、または、該縁や該枠の交点から四隅を特定することにより、従来の技術に比べて処理量が少なくなり、高速化が図れる。
【発明を実施するための最良の形態】
【００２８】
以下、図面と共に、本発明の実施の形態を説明する。
【００２９】
最初に、以下の説明で用いる用語等について説明する。
【００３０】
図３は、本発明の一実施の形態における枠なし画像名称定義を示す図である。同図において、背景画像ａの中に矩形画像ｂがあり、その矩形画像の４点を四隅ｃと呼ぶものとする。また、矩形画像ｂの周りに枠が存在する場合を図４に示す。図４では、枠ｄが存在し、同図右側に示すのは枠ｄを拡大したものであり、矩形画像ｂの領域と枠ｄの間に背景画像ａの領域があり、枠ｄの外側に背景画像ａの領域が存在する。
【００３１】
矩形画像ｂの四隅ｃを検出するために、図３に示す枠なし矩形画像の場合は、矩形画像ｂの上下左右の縁を、図４に示す枠付き矩形画像の場合は、枠を手掛かりとする。図５のように撮影画像の端から探して縁または枠の一部を検出した後に、それを辿っていき、途切れた位置を隅が特定できる。あるいは、縁または枠の交点から四隅が特定できる。図５においては、丸内の数字の順にサーチすることにより、隅を検出している。詳しくは後述する。
【００３２】
図６は、本発明の一実施の形態における四隅検出装置の構成を示す。
【００３３】
同図に示す四隅検出装置は、撮影された画像データから四隅座標を検出する検出部１００、逆射影変換部２００、及び電子透かし読み取り部３００から構成される。
【００３４】
検出部１００は、入力された画像データの端から探して枠の一部を検出した後に、それを辿って途切れた位置から隅を求める、枠の交点から隅を求める、縁の一部を検出した後に、それを辿って途切れた位置から隅を求める、または、縁の交点から隅を求めることにより、枠判定閾値を格納する枠判定閾値記憶部１４５、枠判定閾値記憶部１４５の枠判定閾値を参照して枠を判定する枠判定部１３０、枠判定閾値記憶部１４５の枠判定閾値を任意のタイミングで調整する枠判定閾値調整部１４０、縁判定閾値を格納する縁判定閾値を格納する縁判定閾値記憶部１６５、縁判定閾値記憶部１６５の縁判定閾値を参照して縁を判定する縁判定部１５０、縁判定閾値記憶部１６５の縁判定閾値を任意のタイミングで調整する縁判定閾値調整部１６０、四隅を検出する隅検出部１２０、隅検出部１２０で検出された四隅の座標から四隅の角度に基づいて正しい隅を取得する四隅角度判定部１７０から構成される。
【００３５】
次に、上記の構成における動作の概要を説明する。
【００３６】
図７は、本発明の一実施の形態における動作の概要のフローチャートである。
【００３７】
ステップ１００）  検出部１００において、入力された画像データから枠、あるいは、縁による四隅を検出し、逆射影変換部２００に転送する。
【００３８】
ステップ２００）  逆射影変換部２００において、四隅の座標から逆射影変換を行いもとの矩形画像に戻す。
【００３９】
ステップ３００）  電子透かし読み取り部３００において、矩形画像から電子透かしを読み取り、透かしデータを出力する。
【００４０】
最初に検出部１００の動作を詳細に説明する。
【００４１】
［１］縁の判定方法
隅検出部１２０において、縁を判定する方法について説明する。
【００４２】
隅検出部１２０は、縁判定部１５０に対して入力された画像データの縁の検出を依頼する。
【００４３】
これにより、縁判定部１５０は、画像データ中にある注目点が縁であるかを判定するために、注目点の近傍点の輝度の重み付き和が、縁判定閾値記憶部１６５に格納されている縁判定閾値を越えたかどうかで判定する。
【００４４】
モノクロの場合は、画像のディジタルデータは輝度そのものであるが、カラーの場合はＲＧＢあるいはＹＵＶ系であるので、ＲＧＢであれば式（１）により輝度に変換し、ＹＵＶ系であればＹを輝度として用いる。
【００４５】
輝度＝０．２９９Ｒ＋０．５８７Ｇ＋０．１１４Ｂ      式（１）
次に、縁検出用の重み付き和について、図８を用いて説明する。注目点を中心に３画素×３画素のエリアを近傍点とし、当該エリアに含まれる画素のそれぞれに輝度値を画像データから得て、同図（ｂ）のような３×３の近傍点輝度値行列を作る。予め同図（ｃ）に示すような３×３の重み係数行列を定めておき、輝度値行列と重み係数行列の行と列が同じ要素同士を掛けたものの総和が重み付き和である。重み係数行列は方向性があるため、縁の位置により使い分ける。上下左右に対応した重み係数行列を図９に示す。
【００４６】
縁判定閾値調整部１６０は、縁判定閾値記憶部１６５の縁判定のための縁判定閾値を調整する。縁判定閾値は、撮影画像により最適値が異なり、最適値は、背景領域の輝度と矩形画像領域の輝度の差から求める。この例を図１０に示す。縁判定閾値は、
縁判定閾値＝（背景領域輝度−矩形領域輝度）×Ｋ
＝（２２５−９８）×Ｋ
但し、Ｋは重み係数行列により定まる定数とする。
【００４７】
矩形の左辺の縁用の最適値を求める手順を図１１に示す。なお、同図では、左辺の例を示すが、右辺、上辺、下辺については、左を右、上、下と読み替えることで図１１と同じ動作を適用する。
【００４８】
まず、既に縁が検出済みである場合には（ステップ１０１、はい）、縁判定閾値調整部１６０は、縁の位置から２画素外側を背景領域サンプル位置とし、２画素内側を矩形画像領域サンプル位置とし、それぞれの輝度の差をＫ倍（Ｋは重み係数行列により異なる値であり、重み係数行列の係数の和が０の場合は、正の係数の和がＫとなる。図９の係数行列の場合は「４」）して閾値とする（ステップ１０６）。
【００４９】
縁が未検出であれば（ステップ１０１、いいえ）、まず、縁を見つけるために、縁判定部１５０において、背景画像の左端画像の左端中点を算出する（ステップ１０２）。そこから左の逆方向、即ち、右へ１画素ずつ進みながら縁を探す。縁の検出には図８の重み付き和を用い、和が仮縁判定閾値＝Ａ（Ａは事前に実験により定めた値で例えば、４００）より大きい場合は縁と判断する（ステップ１０３，１０４，１０５）。縁が判断されたら（ステップ１０５、はい）、縁判定閾値調整部１６０は、上記のステップ１０６の処理を行う。
【００５０】
［２］枠の判定方法
次に、隅検出部１２０において、枠を判定する方法について説明する。
【００５１】
隅検出部１２０は、枠判定部１３０に対して画像データの枠の検出を依頼する。
【００５２】
これにより、枠判定部１３０は、画像データ中のある注目点が枠であるかを判定する。枠であるかを判定するための方法は、前述の縁の判定方法と重み付き和の計算方法が異なる以外は同じである。
【００５３】
枠判定用の重み付き和計算方法を図１２に示す。同図に示すように、枠検出用重み付き和は、注目点に基づく近傍点範囲から輝度値行列を作り、予め定めた重み係数行列と当該輝度値行列の同じ位置の値同士を掛けたものの総和とする。
【００５４】
枠判定用の重み付き和計算に用いられる最適近傍点範囲と重み係数行列は、図１３に示すように、撮影された枠の太さにより最適な近傍点範囲幅と重み係数行列数が異なる。枠幅＝Ｎ画素の場合、近傍点範囲は１×（Ｎ＋２）画素、重み係数行列は１行（Ｎ＋２）列となる。
【００５５】
重み係数行列の要素は次のように定める。Ｎが奇数の場合は、両端、すなわち、１列目とＮ＋２列目を１とし、中心すなわち、（Ｎ＋３）／２画素目を−２とし、残りがあれば０で埋める。Ｎが偶数の場合は３通りあり、両端を１とするのは共通であり、内部はＮ／２＋１列目を−２として残りがあれば０で埋める方法（図１３（ａ））と、Ｎ／２列目を−２として残りがあれば０で埋める方法（図１３（ｂ））と、Ｎ／２列目とＮ／２＋１列目を共に−１として残りがあれば０で埋める方法（図１３（ｃ））とがある。この中のどの方法を選択してもよい。
【００５６】
左辺枠の最適な近傍点範囲幅を求める手順を図１４、図１５に示す。なお、右辺、上辺、下辺については、左を右、上、下と読み替えて図１４、図１５と同じ手順を適用する。
【００５７】
また、重み係数の行列列数は近傍点範囲幅画素数と同じとする。
【００５８】
まず、既に枠が検出済みであれば（ステップ２０１、はい）、最適近傍点範囲探索の処理（図１５）を行い終了する（ステップ２０２）。
【００５９】
枠が未検出であれば枠を見つけるために、枠判定部１３０は、背景画像の左端中点を算出する（ステップ２０３）。そこから左の逆方向、すなわち右へ１画素ずつ進みながら枠を探す（ステップ２０５）。枠の検出には、図１２の重み付け和を用い、和が仮枠判定閾値＝Ｂ（Ｂは事前に実験により求めた値で、例えば２００）より大きい場合は枠と判定する（ステップ２０６、はい）。
【００６０】
次に、上記のステップ２０２の最適近傍点範囲幅探索処理について図１５を用いて説明する。
【００６１】
近傍点範囲幅Ｗを３からＭＡＸＷまで（ＭＡＸＷは印刷枠幅と撮影条件により決まる値であり、５から１０の範囲の値をとる）変化させ、それぞれの場合の重み付き和最大値を取得する処理を行い（ステップ３０１，３０２，３０３）、重み付き和最大値が得られたＷを最近傍点範囲幅とする（ステップ３０４）。
【００６２】
ステップ３０２の重み付き和最大値取得処理では、図１５のステップ３０２１〜３０２４の処理により、枠位置を±Ｗ／２の範囲で１画素ずつ変化させ、重み付和最大値を探索する。詳しくは、最大値Ｐの初期値を枠からＷ／２画素左とし、増分を１画素左と逆方向とし、終値を枠からＷ／２画素左と逆方向とし（ステップ３０２１）、Ｐを注目点として近傍点範囲幅Ｗにて重み付き和を取得し（ステップ３０２２）、Ｐの初期値からステップ３０２１で定めた終値までステップ３０２２の処理を繰り返し（ステップ３０２３）、重み付き和最大値を返す（ステップ３０２４）。
【００６３】
枠判定閾値調整部１４０は、枠判定閾値記憶部１４５の枠判定のための枠判定閾値を調整する。枠判定閾値は撮影画像により最適値が異なり、最適値は、図１６に示すように背景領域の輝度と枠領域の輝度の差から求める。
【００６４】
枠判定閾値＝（背景領域平均輝度−枠領域輝度）×Ｍ  
＝（（２２５＋２１２）／２−８０）×Ｍ
但し、Ｍは重み係数行列により定まる定数である。
【００６５】
矩形画像の左辺の枠用の最適値を求める手順を図１７に示す。同図では、矩形の左辺のみを示すが、右辺、上辺、下辺については、左を右、上、下と読み替えることで、図１７の手順を適用する。
【００６６】
まず、既に枠が検出済みであれば（ステップ４０１、はい）、枠判定閾値調整部１４０は、枠中心位置を枠領域サンプル位置とし枠領域輝度を得る。続いて、枠の位置から近傍点範囲／２画素外側と内側の２点を背景領域サンプル位置とし、それぞれの輝度を得て平均値を背景領域平均輝度とする。背景領域平均輝度と枠領域輝度の差をＭ倍（Ｍは重み係数行列により異なる値であり、重み係数行列の係数の和が０の場合は、正の係数の和がＭとなる。図１３の係数行列の場合はいずれも２となる）して閾値とする（ステップ４０６）。
【００６７】
枠が未検出であれば（ステップ４０１、いいえ）、枠を見つけるために、枠判定部１３０において背景画像の左端中点を算出する（ステップ４０２）。そこから左の逆方向即ち、右へ１画素ずつ進みながら枠を探す（ステップ４０３、４０４）。枠の検出には、図１２の重み付き和を用い、和が仮枠判定閾値＝Ｂ（Ｂは事前に実験により定めた値で例えば２００）より大きい場合は枠と判断し（ステップ４０５、はい）、ステップ４０６の処理を行う。
【００６８】
［３］縁あるいは枠の交点から四隅を求める方法
次に、隅検出部１２０において、縁判定部１５０あるいは、枠判定部１３０を用いて縁あるいは、枠の交点から四隅を求める方法について説明する。
【００６９】
図１８に示すように、まず、隅検出部１２０は、縁による四隅検出処理として、交点四隅検出処理（縁の交点から四隅を求める方法）または、追跡四隅検出処理（縁を辿って途切れた位置から四隅を求める方法）を行う（ステップ５１０）。縁による四隅検出処理において四隅が検出できた場合には（ステップ５２０、はい）処理を終了し、検出できなかった場合には（ステップ５２０、いいえ）、枠による四隅検出処理を行う。枠による四隅検出処理は、上記と同様に、交点四隅検出処理（枠の交点から四隅を求める方法）または、追跡四隅検出処理（枠を辿って途切れた位置から四隅を求める方法）を行う（ステップ５３０）。
【００７０】
次に、縁または枠の交点四隅検出処理について図１９を用いて説明する。
【００７１】
縁または、枠の交点四隅検出処理において、上下左右の4辺の全てを取得したかを判断し（ステップ６０１）、取得した場合には４辺の交点を算出する（ステップ６０２）。取得できなかった場合には、未取得の辺の外側の背景画像の縁上に任意の位置の複数の点を選択する（ステップ６０３）。全ての選択された点から内側方向へ進みながら、枠、あるいは、縁を探索し、発見できた位置を記憶手段（図示せず）に保持する（ステップ６０４）。縁である場合には、縁判定閾値調整部１６０において縁判定閾値を調整し、枠である場合には、枠判定閾値調整部１４０において枠判定閾値と枠近傍点範囲を調整する（ステップ６０５）。全ての発見できた点を通る直線を、誤差最小二乗法等を用いて取得し、ステップ６０１に移行する（ステップ６０６）。
【００７２】
次に、追跡四隅検出処理について図２０を用いて説明する。
【００７３】
まず、隅検出部１２０は、左右２辺の隅全てを取得したかを判定し、取得した場合には（ステップ７０１、はい）、当該処理を終了する。取得していない場合は（ステップ７０１、いいえ）、枠判定部１３０、縁判定部１５０に対して枠・縁の探索を指示する。枠判定部１３０、縁判定部１５０は、未取得の辺の外側の背景画像の縁上の中点を選択する（ステップ７０２）。選択された中点から内側方向へ進みながら枠あるいは縁を探索し、発見できた位置Ｐを隅検出部１２０に渡す。これにより、隅検出部１２０は、位置Ｐを記憶手段に保持する（ステップ７０３）。ステップ７０３で位置Ｐを発見したのが縁上であれば、縁判定閾値調整部１６０において、縁判定閾値を調整し、枠上であれば、枠判定閾値調整部１４０において、枠判定閾値と枠近傍点範囲を調整する（ステップ７０４）。
【００７４】
隅検出部１２０は、記憶手段に記憶されたＰを用いて、当該Ｐから上へ枠あるいは、縁を辿り、途切れた点を上側の隅とする（ステップ７０５）。次に、当該Ｐから下へ枠あるいは縁を辿り、途切れた点を下側の隅とし、ステップ７０１に移行する（ステップ７０６）。
【００７５】
以下に具体的に説明する。ここでは左辺を例に説明する。
【００７６】
縁判定部１５０、枠判定部１３０において、図２１に示すように、背景画像左端の複数位置から内側に進みながら、縁あるいは枠を、前述した枠あるいは、縁の判定方法により探索し、縁あるいは枠を発見した位置を隅検出部１２０に渡し、隅検出部１２０において記憶手段に記憶する。反対側まで進んでも縁あるいは枠が見つからなかった場合は何も記憶しない。隅検出部１２０は、記憶した複数の縁あるいは枠位置を通る直線を最小二乗法により求め、図２２に示すように、左辺の直線を得る。同様に、図２３に示すように、右辺、上辺、下辺の直線を得る。このようして得られた四直線の交点から図２４に示すように四隅座標を得る。
【００７７】
［４］縁あるいは枠を辿り途切れた位置から四隅を求める方法
以下では、左辺を例に説明する。
【００７８】
縁判定部１５０、枠判定部１３０が、背景画像左端中点から内側に進みながら、縁あるいは枠を、前述した枠あるいは縁の判定方法により探索し、縁あるいは枠を発見した位置を、図２５に示すように、隅検出部１２０において記憶する。縁判定部１５０、枠判定部１３０は、図２６に示すように、隅検出部１２０において記憶された位置から上方向へ縁あるいは枠を探索し、隅検出部１２０は見つからなくなった点を隅とする。
【００７９】
縁判定部１５０、枠判定部１３０における、上方向への探索は、最初は粗く画素を飛ばして探索し、見つからなくなった時点で最後に見つかった点まで戻り、その後１画素ずつ精密探索することにより高速かつ、精密に隅を探索する。次に、図２７に示すように、下方向へも縁あるいは枠を探索し、見つからなくなった点を隅とする。同様に図２８に示すように、右辺から残りの二隅を見つける。
【００８０】
左辺の上方向探索の詳細な手順を図２９に示す。縁判定部１５０、枠判定部１３０は、最初に縁あるいは枠が見つかった点から上方向へＪ画素移動する（ステップ８０１）。Ｊは任意の値であるが、画像の解像度が大きい場合は、大きな値を用いると処理量が少なくて済む。６４０×４８０画素以下の画像の場合は、Ｊ＝１０が適当である。
【００８１】
移動した点にて左右方向±Ｌ画素の範囲で隅または枠を探索する（ステップ８０２）。これは、縁あるいは、枠の傾きに対応するため、真上だけでなく、左右方向の適当な範囲を探索するためである。傾き許容角度θ＝tan（L／J）であるので、必要なθに応じてＬを定める。
【００８２】
隅または枠が見つかった場合は（ステップ８０３、はい）、見つかった点から更にＪ画素上に移動して探索を続ける（ステップ５０１）。見つからなかった場合は、隅を通り過ぎたのであるから最後に見つかった点まで戻り（ステップ８０４）、精密探索に移る。
【００８３】
精密探索は、１画素ずつ上方に移動しながら探索する（ステップ８０５）。左右方向の探索範囲Ｍは祖探索と同様の傾き対応であり、傾き許容角度θ＝tan（Ｍ）であるので、必要なθに応じてＭを定める（ステップ８０６）。探索を続けて、隅または枠が見つからなくなった位置が左上隅である（ステップ８０７，８０８）。
【００８４】
［５］縁判定閾値・枠判定閾値・枠近傍点範囲の調整契機
縁判定部１５０が縁判定を行う際に、縁判定閾値調整部１６０により調整された、画像により最適値に調整された縁判定閾値を用いた。また、枠判定部１３０が枠判定を行う際に、枠判定閾値調整部１４０により調整された枠判定閾値と枠近傍点範囲を用いた。これらの縁判定閾値、枠判定閾値、及び枠近傍点範囲は、一度調整した後、同じ値を使い続ける方法と、ある契機で最適値を調整しなおす方法がある。同一の画像内でも、撮影条件によっては背景や矩形画像の輝度が異なるため、後者の方が判定制度が上がるが、処理量は大きくなるので、用途による使い分ける。
【００８５】
調整契機としては、
（ａ）最初に一度だけ調整する；
（ｂ）上下左右各辺で各一度だけ調整する；
（ｃ）直前に調整した位置から事前に定めた距離Ｚ離れた時点で再調整する；
（ｄ）縁あるいは枠判定をする都度、毎回直前に調整する；
などがあげられる。
［６］交点・追跡による四隅検出の両方を用いる方法
上記では、縁あるいは、枠の交点から四隅を求める交点四隅検出方法と、縁あるいは枠を辿って途切れた位置から四隅を求める追跡四隅検出方法を説明した。しかし、交点四隅検出方法と追跡四隅検出方法は、画像と撮影条件によってはどちらかだけが成功する場合がある。例えば、図３０に示すように、上下に活字や別の画像が写っている場合は交点四隅検出方法では失敗し、図３１に示すように、枠が途中で途切れている場合は、追跡四隅検出方法で失敗する。
【００８６】
そこで、交点四隅検出方法及び追跡四隅検出方法の両方を試し、正しく四隅を見つけた方の結果のみ利用することが可能である。これは、四隅角度判定部１７０において、隅検出部１２０から上記の交点四隅検出方法，追跡四隅検出方法の結果を取得し、四隅が正しいかどうかは四隅の角度がある範囲内にあるかどうかで判断する。この処理について図３２を用いて説明する。
【００８７】
四隅角度判定部１７０は、隅検出部１２０から上記の交点四隅検出方法で取得した四隅の角度を取得する（ステップ９０１）。
【００８８】
次に、四隅角度判定部１７０は、取得した４角度が正常であるかを判定する（ステップ９０２）。正常でなければ（ステップ９０２、いいえ）、追跡四隅検出方法を行い（ステップ９０３）、ステップ９０２と同様の判定を行う（ステップ９０４）。
【００８９】
上記の四隅の角度の判定方法としては、例えば、隅と両隣隅との作る角度が９０度±３０度以内であれば正常、そうでなければ異常と判断すると仮定する。角度判定は内積計算を用いる。
【００９０】
隅点がＡ（Ｘ０，Ｙ０）、両端の隅点がＢ（Ｘ１，Ｙ１），Ｃ（Ｘ２，Ｙ２）とすると角度θの余弦は、
cosθ＝ＡＢ・ＡＣ／｜ＡＢ｜｜ＡＣ｜
＝（Ｘ１−Ｘ０）（Ｘ２−Ｘ０）＋（Ｙ１−Ｙ０）（Ｙ２−Ｙ０）／｜ＡＢ｜｜ＡＣ｜
…式（２）
｜ＡＢ｜、｜ＡＣ｜を求めるには平方根計算が必要であるが、それができない環境の場合は、Ｘ方向とＹ方向の距離の大きい方で代用する。即ち、
｜ＡＢ｜＝｜Ｘ１−Ｘ０｜（Ｘ１−Ｘ０）＞｜Ｙ１−Ｙ０｜の場合）
＝｜Ｙ１−Ｙ０｜（それ以外）
｜ＡＣ｜＝｜Ｘ２−Ｘ０｜（｜Ｘ２−Ｘ０｜＞｜Ｙ２−Ｙ０｜の場合）
＝｜Ｙ２−Ｙ０｜（それ以外）
となる。
【００９１】
６０度＜θ＜１２０度では、−０．５＜cosθ＜０．５なので、式（２）の値の絶対値が０．５以下であれば角度判定ＯＫとなる。
【００９２】
［７］画像データに枠があるか不明な場合
撮影画像において、用途によっては撮影画像に枠があるかどうか不明な場合がある。
【００９３】
その場合は、縁と枠の両方の判定を行う。この動作を図３３に示す。
【００９４】
まず、縁による四隅検出を行い（ステップ１００１）、四隅の角度が正常であるかを判定し、正しくなければ（ステップ１００２、いいえ）、枠による四隅検出を行い（ステップ１００３）、四隅の角度が正常であるかを判定する（ステップ１００４）。ここで、正常でない場合には失敗とする。
【００９５】
撮影画像が枠付きであっても、縁検出のアルゴリズムで成功する場合があるので、無駄を減らすために、縁による四隅検出を先に行う。
【００９６】
［８］電子透かしの読み取り
次に、カメラ付き携帯端末で電子透かしを読み取る場合について図３４を用いて説明する。電子透かし入り画像を撮影する場合に、カメラが印刷物に正対していないと、印刷物上での矩形画像が変形四角形として写り、電子透かしの読み取りが難しくなる。
【００９７】
そこで、逆射影変換部２００において、四隅検出処理により取得した座標を入力とし（ステップ１１０１）、逆射影変換を行い、元の矩形画像に戻し（ステップ１１０２）、電子透かし読み取り部３００において電子透かしを読み取る（ステップ１１０３）。これにより、容易に電子透かしを読み取ることができる。
【００９８】
また、上記の枠あるいは縁による四隅検出処理、四隅座標による逆射影変換処理、電子透かし読み取り処理をプログラムとして構築し、例えば携帯端末のような端末機器のメモリに格納しておき、実行させることが可能である。
【００９９】
なお、本発明は、上記の実施の形態及び実施例に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。
【産業上の利用可能性】
【０１００】
本発明は、例えば、カメラやカメラ付携帯電話で撮影された撮影画像の補正処理に適用可能である。
【図面の簡単な説明】
【０１０１】
【図１】本発明の原理を説明するための図である。
【図２】本発明の原理構成図である。
【図３】本発明の一実施の形態における枠なし画像名称定義を示す図である。
【図４】本発明の一実施の形態における枠付き画像名称定義を示す図である。
【図５】本発明の一実施の形態における追跡検出を示す図である。
【図６】本発明の一実施の形態における四隅検出装置の構成図である。
【図７】本発明の一実施の形態における動作の概要のフローチャートである。
【図８】本発明の一実施の形態における重み付き和を説明するための図である。
【図９】本発明の一実施の形態における重み係数行列を説明するための図である。
【図１０】本発明の一実施の形態における縁閾値調整の例である。
【図１１】本発明の一実施の形態における縁閾値算出のフローチャートである。
【図１２】本発明の一実施の形態における枠検出用重み付き和を説明するための図である。
【図１３】本発明の一実施の形態における最適近傍点範囲と重み係数行列を示す図である。
【図１４】本発明の一実施の形態における最近傍点範囲決定のフローチャート（その１）である。
【図１５】本発明の一実施の形態における最適近傍点範囲決定のフローチャート（その２）である。
【図１６】本発明の一実施の形態における枠判定閾値調整の例である。
【図１７】本発明の一実施の形態における枠判定閾値算出のフローチャートである。
【図１８】本発明の一実施の形態における枠あるいは縁による四隅検出処理のフローチャートである。
【図１９】本発明の一実施の形態における交点四隅検出処理のフローチャートである。
【図２０】本発明の一実施の形態における追跡四隅検出処理のフローチャートである。
【図２１】本発明の一実施の形態における縁・枠探索を説明するための図である。
【図２２】本発明の一実施の形態における直線近似の例である。
【図２３】本発明の一実施の形態における四直線取得の例である。
【図２４】本発明の一実施の形態における四隅取得の例である。
【図２５】本発明の一実施の形態における縁・枠探索の例である。
【図２６】本発明の一実施の形態における縁・枠追跡（上方向）の例である。
【図２７】本発明の一実施の形態における縁・枠追跡（下方向）の例である。
【図２８】本発明の一実施の形態における右辺の探索の例である。
【図２９】本発明の一実施の形態における探索のフローチャートである。
【図３０】本発明の一実施の形態における失敗例（その１）を説明するための図である。
【図３１】本発明の一実施の形態における失敗例（その２）を説明するための図である。
【図３２】本発明の一実施の形態における四隅検出統合のフローチャートである。
【図３３】本発明の一実施の形態における縁と枠統合フローチャートである。
【図３４】本発明の一実施の形態におけるカメラ付き携帯端末に適用した例である。
【符号の説明】
【０１０２】
１００  検出部
１１０  画像入力部
１２０  隅検出手段、隅検出部
１３０  枠判定手段、枠判定部
１４０  枠判定閾値調整手段、枠判定閾値調整部
１４５  枠判定閾値記憶手段、枠判定閾値記憶部
１５０  縁判定手段、縁判定部
１６０  縁判定閾値調整手段、縁判定閾値調整部
１６５  縁判定閾値記憶手段、縁判定閾値記憶部
１７０  四隅角度判定部
２００  逆射影変換部
３００  電子透かし読み取り部
【図１】
0004020093.tif 000002
【図２】
0004020093.tif 000003
【図３】
0004020093.tif 000004
【図４】
0004020093.tif 000005
【図５】
0004020093.tif 000006
【図６】
0004020093.tif 000007
【図７】
0004020093.tif 000008
【図８】
0004020093.tif 000009
【図９】
0004020093.tif 000010
【図１０】
0004020093.tif 000011
【図１１】
0004020093.tif 000012
【図１２】
0004020093.tif 000013
【図１３】
0004020093.tif 000014
【図１４】
0004020093.tif 000015
【図１５】
0004020093.tif 000016
【図１６】
0004020093.tif 000017
【図１７】
0004020093.tif 000018
【図１８】
0004020093.tif 000019
【図１９】
0004020093.tif 000020
【図２０】
0004020093.tif 000021
【図２１】
0004020093.tif 000022
【図２２】
0004020093.tif 000023
【図２３】
0004020093.tif 000024
【図２４】
0004020093.tif 000025
【図２５】
0004020093.tif 000026
【図２６】
0004020093.tif 000027
【図２７】
0004020093.tif 000028
【図２８】
0004020093.tif 000029
【図２９】
0004020093.tif 000030
【図３０】
0004020093.tif 000031
【図３１】
0004020093.tif 000032
【図３２】
0004020093.tif 000033
【図３３】
0004020093.tif 000034
【図３４】
0004020093.tif 000035