(57)【特許請求の範囲】
【請求項１】
画像を取得する画像取得手段と、
前記画像取得手段により取得した前記画像において所定条件を満たす画素を探索する探索手段と、
前記探索手段による探索中に、前記所定条件を満たす画素を検出したか否かを判断する第１の判断手段と、
前記第１の判断手段により前記所定条件を満たす画素を検出したと判断すると、該画素の集合からなる領域が特定の形状を有するか否かを、前記所定条件を満たす画素から所定方向へ連続して存在する前記画素と同じ条件の画素数を計数することで前記画素の集合からなる領域の一方の方向の長さを取得し、該取得した長さと前記画素の集合からなる領域の前記一方の方向の長さにおける方向と直交する方向の長さとが所定の条件を満たしているか否かと、当該特定の形状に外接する矩形領域を設定して、その矩形領域と前記特定の形状との面積比率とに基づいて判断する第２の判断手段と、
前記第２の判断手段により前記特定の形状を有すると判断すると、前記画素の集合からなる領域の位置を示す位置情報を保持する保持手段と、
を備えたことを特徴とする画像処理装置。
【請求項２】
前記探索手段は、前記保持手段が前記位置情報を保持した後、前記画素の集合からなる領域を除いて前記探索を再開することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記所定の条件とは、前記領域の一方の方向の長さが、前記一方の方向の長さにおける方向と直交する方向の長さと所定の差以内であることを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記画像取得手段は、逐次画像を取得し、
前記特定の形状を有する領域は、前記逐次取得された画像において少なくとも彩度が規則性をもって変化する領域であることを特徴とする請求項１乃至３の何れか一項に記載の画像処理装置。
【請求項５】
画像を取得する画像取得ステップと、
前記画像取得ステップにより取得した前記画像において所定条件を満たす画素を探索する探索ステップと、
前記探索ステップによる探索中に、前記所定条件を満たす画素を検出したか否かを判断する第１の判断ステップと、
前記第１の判断ステップにより前記所定条件を満たす画素を検出したと判断すると、該画素の集合からなる領域が特定の形状を有するか否かを、前記所定条件を満たす画素から所定方向へ連続して存在する前記画素と同じ条件の画素数を計数することで前記画素の集合からなる領域の一方の方向の長さを取得し、該取得した長さと前記画素の集合からなる領域の前記一方の方向の長さにおける方向と直交する方向の長さとが所定の条件を満たしているか否かと、当該特定の形状に外接する矩形領域を設定して、その矩形領域と前記特定の形状との面積比率とに基づいて判断する第２の判断ステップと、
前記第２の判断ステップにより前記特定の形状を有すると判断すると、前記画素の集合からなる領域の位置を示す位置情報を保持する保持ステップと、
を備えたことを特徴とする画像処理方法。
【請求項６】
コンピュータを、
画像を取得する画像取得手段、
前記画像取得手段により取得した前記画像において所定条件を満たす画素を探索する探索手段、
前記探索手段による探索中に、前記所定条件を満たす画素を検出したか否かを判断する第１の判断手段、
前記第１の判断手段により前記所定条件を満たす画素を検出したと判断すると、該画素の集合からなる領域が特定の形状を有するか否かを、前記所定条件を満たす画素から所定方向へ連続して存在する前記画素と同じ条件の画素数を計数することで前記画素の集合からなる領域の一方の方向の長さを取得し、該取得した長さと前記画素の集合からなる領域の前記一方の方向の長さにおける方向と直交する方向の長さとが所定の条件を満たしているか否かと、当該特定の形状に外接する矩形領域を設定して、その矩形領域と前記特定の形状との面積比率とに基づいて判断する第２の判断手段、
前記第２の判断手段により前記特定の形状を有すると判断すると、前記画素の集合からなる領域の位置を示す位置情報を保持する保持手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来より、画像に含まれる所定の形状の認識技術について様々な手法が知られている。
例えば、画像中の幾何学的な形状（例えば、円など）の認識を行う手法として、一般的にＨｏｕｇｈ変換が知られている。
一方で、画像中の被写体の形状（例えば、顔など）の認識を行う手法として、予め複数の顔パターンを用意しておき、画像中に映る顔とのパターンマッチングを行うことで顔の認識を行うことが知られている（例えば、特許文献１など）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−２８６９４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、上述したＨｏｕｇｈ変換やパターンマッチングという手法は、処理負荷が高いことから処理時間が長い。また、ノイズの影響を受けやすいことから、形状認識の処理を行う前にノイズ除去処理を行う必要があり、さらに処理時間が長くなってしまう。
このため、認識処理を高速化したい場合にはＨｏｕｇｈ変換やパターンマッチングは不向きであるという問題があった。
【０００５】
そこで、この発明は、上記問題に鑑みてなされたものであって、画像中の形状を高速で認識する場合に好適な画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、この発明の第１の観点に係る画像処理装置は、
画像を取得する画像取得手段と、
前記画像取得手段により取得した前記画像において所定条件を満たす画素を探索する探索手段と、
前記探索手段による探索中に、前記所定条件を満たす画素を検出したか否かを判断する第１の判断手段と、
前記第１の判断手段により前記所定条件を満たす画素を検出したと判断すると、該画素の集合からなる領域が特定の形状を有するか否かを、前記所定条件を満たす画素から所定方向へ連続して存在する前記画素と同じ条件の画素数を計数することで前記画素の集合からなる領域の一方の方向の長さを取得し、該取得した長さと前記画素の集合からなる領域の前記一方の方向の長さにおける方向と直交する方向の長さとが所定の条件を満たしているか否かと、当該特定の形状に外接する矩形領域を設定して、その矩形領域と前記特定の形状との面積比率とに基づいて判断する第２の判断手段と、
前記第２の判断手段により前記特定の形状を有すると判断すると、前記画素の集合からなる領域の位置を示す位置情報を保持する保持手段と、
を備えたことを特徴とする。
【発明の効果】
【０００７】
本発明によれば、画像中の形状を高速で認識することができる。
【図面の簡単な説明】
【０００８】
【図１】この発明の実施形態に係るデジタルカメラのハードウェア構成を示すブロック図である。
【図２】デジタルカメラの機能構成を示すブロック図である。
【図３】ライブビューの一例を示す図である。
【図４】円の形状認識処理の概要を示す図である。
【図５】円の形状認識処理の流れの一例を示すフローチャートである。
【図６】ライブビューの別例を示す図である。
【図７】円の形状認識処理の変形例を示す図である。
【図８】正方形の形状認識処理の一例を示す図である。
【発明を実施するための形態】
【０００９】
以下、この発明の実施形態を図面に基づいて説明する。この実施形態においては、形状認識処理をデジタルカメラ１００が行う場合を例にとって説明する。
図１に示すように、デジタルカメラ１００は、撮像部１１０と画像処理部１２０とインターフェース部１３０とを備える撮像装置である。
【００１０】
撮像部１１０は、光学装置１１１とイメージセンサ１１２とを備え、デジタルカメラ１００における撮像動作を行う。
光学装置１１１は、レンズ、絞り、シャッタ等を備える。光学装置１１１により、入射光が集光されるとともに、画角やピント等の光学的要素の調整が行われる。
イメージセンサ１１２は、ＣＣＤ（Charge Coupled Device：電荷結合素子）やＣＭＯＳ（Complementary Metal Oxide Semiconductor：相補型金属酸化物半導体）等から構成される。イメージセンサ１１２は、光学装置１１１によって集光された入射光に応じた電気信号を生成する。イメージセンサ１１２は、生成した電気信号を、アナログ信号として出力する。
【００１１】
画像処理部１２０は、撮像部１１０による撮像動作によって生成された電気信号を処理して、撮像画像を示すデジタルデータを生成する。また、画像処理部１２０は、撮像画像に対する画像処理等を行う。画像処理部１２０は、制御部１２１と集積回路部１２２と記憶部１２３と外部記憶部１２４とを備える。
【００１２】
制御部１２１は、ＣＰＵ（Central Processing Unit：中央演算処理装置）等のプロセッサ及びＲＡＭ（Random Access Memory）等の主記憶装置から構成される。制御部１２１は、後述する記憶部１２３に格納されているプログラムに従って動作し、デジタルカメラ１００の動作に必要な各機能を実現する。
【００１３】
集積回路部１２２は、ＡＤＣ（Analog-to-Digital Converter：アナログ−デジタル変換回路）、バッファメモリ、画像処理用のプロセッサ（いわゆる、画像処理エンジン）、ＹＵＶ画像生成部等を備える。ＡＤＣは、イメージセンサ１１２から出力されたアナログ電気信号を、デジタル信号に変換してバッファメモリに格納する。そして、画像処理エンジンが、バッファされたデジタル信号に基づいて、撮像画像を示すデジタルデータを生成する。ＹＵＶ画像生成部は、生成されたデジタルデータをＹＵＶ（輝度信号（Ｙ）、輝度信号と青色成分の差（Ｕ）及び輝度信号と赤色成分の差（Ｖ））画像に変換する。
【００１４】
記憶部１２３は、ＲＯＭ（Read Only Memory）などの不揮発性メモリから構成される。記憶部１２３は、デジタルカメラ１００の動作に必要なプログラムなどを記憶する。本実施形態では、記憶部１２３は、制御部１２１が読む込むプログラムや、後述する形状認識処理に用いる閾値の値を示すデータなどを記憶する。
【００１５】
外部記憶部１２４は、ＳＤ(Secure Digital)カードなどのデジタルカメラ１００に着脱可能な不揮発性メモリから構成される。デジタルカメラ１００で撮像した画像は、外部記憶部１２４に記憶される。
【００１６】
インターフェース部１３０は、デジタルカメラ１００のユーザまたは外部装置とのインターフェースに係る構成であり、表示部１３１と、外部インターフェース部１３２と、操作部１３３と、を備える。
【００１７】
表示部１３１は、液晶ディスプレイ、有機ＥＬ（Ｅｌｅｃｔｒｏｌｕｍｉｎｅｓｃｅｎｃｅ）ディスプレイなどから構成される。表示部１３１は、デジタルカメラ１００を操作するために必要な各種画面、撮像部１１０による撮像映像をリアルタイムに映すライブビュー、撮像された撮像画像などを表示出力する。ユーザは、デジタルカメラ１００の操作部１３３を操作し、この操作に応じた画像を表示部１３１で見ることができる。
【００１８】
外部インターフェース部１３２は、ＵＳＢ（Universal Serial Bus）コネクタやビデオ出力端子などから構成される。外部インターフェース部１３２は、ケーブルを介して、外部装置であるＰＣなどへ撮像画像の出力や、外部モニタへ撮像画像の表示出力を行う。
【００１９】
操作部１３３は、各種ボタンによって構成される。各種ボタンとしては、例えば、撮影動作を指示するためのシャッタボタン、デジタルカメラ１００の動作モードを指定するためのモードボタン、各種設定を行うための機能ボタンなどがある。また、モードボタンとしては、例えば、形状認識処理を開始するための形状認識モードボタン（例えば、円形状のタグ認識などを行う形状認識モードに切り替えるためのボタンなど）がある。
【００２０】
本実施形態では、制御部１２１が、記憶部１２３に記憶されているプログラムを実行することで、図２に示す形状認識処理に係る各部の機能を実現する。機能としては、図２に示すように、二値化部１５０、探索部１６０、判断部１７０及び保持部１８０を備える。また、この実施形態においては、円の形状認識を行う場合を例にとって説明する。
【００２１】
二値化部１５０は、ライブビューの画像に対して、輝度や彩度などのパラメータの閾値を用いて画像を二値化する。なお、この実施形態においては、輝度は画像の明るさの度合いを、彩度は画像の鮮やかさの度合いを、それぞれ定義するものとする。また、輝度及び彩度の最小値は０、最大値は２５５である。輝度が最小値から最大値に近づく程画像が暗い状態から明るい状態になり、彩度が最小値から最大値に近づく程画像が無彩色から有彩色になる。
【００２２】
ここで、二値化部１５０は、ライブビューの状態でユーザから形状認識モードボタンの押下があると、例えば図３の表示部１３１に映る画像の二値化処理を行う。図３に表示される画像には、例えば、所定の輝度範囲で周期的に発光色を変えながら発光する円型の可視光通信用のマーカー（ＩＤタグともいう）１４１と、単純に発光する光源１４２と、被写体像１４３と、が含まれている。そして本実施形態では、二値化部１５０は、記憶部１２３が記憶する輝度及び彩度の閾値に基づいて二値化処理を行い、閾値以上を０ｘＦＦの有効画素に、閾値未満を０ｘ００の無効画素に、それぞれした二値画像を記憶部１２３に記憶する。この二値化処理により、２４ビットのカラー画像から１ビットの白黒画像となる。
【００２３】
なお、輝度及び彩度の閾値は、マーカー１４１を認識させるため、形状認識の対象となる円が有彩色のカラーである場合に備えて、そのカラー全て（例えば、赤、青、黄など）を有効画素にできるような閾値に予め設定しておく。この実施形態では、一例として、輝度及び彩度の閾値は、それぞれ１２０及び１５０に設定する。
【００２４】
このような、二値化部１５０による二値化処理により図３の画像から図４（ａ)に示す二値画像が得られる。この二値画像から、二値化処理を行う前の画像中の被写体像１４３と背景とが閾値未満だったので無効画像である黒に、マーカー１４１と光源１４２とが閾値以上だったので有効画素である白に、それぞれなったことが分かる。
【００２５】
図２に戻って、探索部１６０は、二値画像において所定条件を満たす画素である有効画素を探索する。具体的には、探索部１６０は、図４（ｂ）に示すように、二値画像の左上を始点として、画素列毎に１ラインずつ順次走査していき、有効画素を探索する。
【００２６】
次に、判断部１７０は、探索部１６０による有効画素の探索中に、その有効画素を検出したか否か判断する。具体的には、判断部１７０は、二値の値（０ｘ００又は０ｘＦＦ）のうち、無効画素を示す０ｘ００から有効画素を示す０ｘＦＦになったか否かで探索中に有効画素を検出する。図４（ｂ）では、判断部１７０は、４ライン目の探索中に有効画素を検出している。
【００２７】
次に、判断部１７０は、有効画素を検出したと判断すると、有効画素の集合からなる領域が可視光通信用のマーカーの形状、すなわち円であるか否かを判断する。具体的には、判断部１７０は、図４（ｃ）に示すように、有効画素を検出したマーカー１４１の上端と仮定して縦方向の有効画素の長さを求める。この際、判断部１７０は、縦方向に連続して存在する有効画素の数を計数することによって、有効画素の集合からなる領域の一方の長さを求める。そして、判断部１７０は、求めた縦方向の長さを直径として仮の円の縦方向の半径を求める。
【００２８】
次に、判断部１７０は、求めた直径の中心から、図４（ｄ）に示すように、横方向の左右の半径を求める。この際も、判断部１７０は、同様に横方向の左右の有効画素の数を計数することによって横方向の半径を求める。そして、判断部１７０は、求めた縦方向の半径と横方向の半径とに基づいて、有効画素の集合からなる領域が概ね円であるか否か判断する。例えば、縦方向の半径と横方向の半径とが所定画素以上ずれていた場合は円でないとする。また、縦方向の直径と横方法の直径とが所定画素以上ずれているか、あるいは横方向の左右の半径のバランスが悪い（例えば、横方向の左右の半径のうち、一方の半径が他方の半径よりも所定画素以上長い場合など）も円でないと判断してもよい。これら所定画素は、検出精度に応じて自由に設定できるものとする。
【００２９】
ここで、判断部１７０が、求めた径（直径又は半径）の長さに基づいて概ね円であると判断した場合であっても、径の大幅なずれ等により楕円を含むようなことがある。そこで、信頼性と精度を向上させる観点から、判断部１７０は、さらに、有効画素の集合からなる領域の面積に基づいて、円であるか否かを判断する。
【００３０】
具体的には、判断部１７０は、図４（ｅ）に示すように、円の領域に接する外接四角形を設定して、その設定した外接四角形内を走査し、無効画素数と有効画素数とを計数する。そして、判断部１７０は、無効画素数と有効画素数とを合算した画素数を外接四角形の面積とし、有効画素数を円の面積とする。そして、判断部１７０は、外接四角形の面積と円の面積とから面積比率を求め、この求めた面積比率に基づいて円か否かを判断する。この判断の際、外接四角形内の円が占める一般的な面積比率を利用して上記判断を行う。
【００３１】
一般的な面積比率を求めるにあたっては、まず半径ｒの場合、円の面積はπｒ２となり、外接四角形の面積は２ｒ×２ｒ＝４ｒ２となる。これら面積から、一般的な面積比率は、πｒ２／４ｒ２＝７９％（小数点第一位を四捨五入）となる。この一般的な面積比率を規定の面積比率として、判断部１７０が求めた面積比率と比較し円か否かを判断する。この比較を行う際も、検出精度に応じて、例えば完全一致を要求したり、あるいは７９％から所定の±何％かの誤差を設けてその誤差範囲内か否かで円か否かを判断してもよい。
【００３２】
次に、保持部１８０は、判断部１７０が円と判断した場合、その円と判断した有効画素の集合からなる領域の位置を示す位置情報を保持する。具体的には、保持部１８０は、位置情報として座標や円の半径の長さなどを記憶部１２３に保持する。座標としては、例えば、二値画像の左上を原点として横方向をｘ、縦方向をｙ、としたときの円を構成する全ての有効画素の座標（ｘ、ｙ）や円周を構成する有効画素の座標などが考えられる。
【００３３】
次に、判断部１７０は、図４（ｆ）に示すように、有効画素の集合からなる円の領域（マーカー１４１に相当）を既に検出済みの画素とし、再度この領域を走査させないよう、無効画素で書き換える。そして、探索部１６０は、図４（ｆ）に示すように、円の領域を除いて有効画素の探索を再開する。
以上が、制御部１２１によって実現される円の形状認識処理に係る各機能である。
【００３４】
次に、円の形状認識処理の流れを図５を参照しながら説明する。この図５の円の形状認識処理は、ライブビューの状態でユーザから形状認識モードボタンの押下があると開始される。この際、制御部１２１は、円の形状認識処理に必要な閾値のデータをこの処理に係るプログラムとともに読み込む。制御部１２１は、読み込んだプログラムとデータとを自身のＲＡＭに展開した後、各機能により以下の処理を順に行う。
【００３５】
まず、二値化部１５０は、二値化処理を行う（ステップＳ１１）。具体的には、二値化部１５０は、ライブビューの画像に対して、上述したように輝度や彩度などのパラメータの閾値を用いて画像を二値化する（図４（ａ）参照）。
【００３６】
次に、判断部１７０は、有効画素の検出を行う（ステップＳ１２）。具体的には、判断部１７０は、探索部１６０によるマーカー１４１に相当する有効画素の探索中に、その有効画素を検出する（図４（ｂ）参照）。なお、判断部１７０は、二値画像の全画素全てについて有効画素を検出できないような場合は、円の形状認識処理を終了する。
【００３７】
次に、判断部１７０は、仮の円の縦方向の半径を求める（ステップＳ１３）。具体的には、判断部１７０は、有効画素を検出した箇所を円の上端と仮定して縦方向の有効画素の長さを求め、求めた縦方向の長さを直径として仮の円の縦方向の半径を求める（図４（ｃ）参照）。
【００３８】
次に、判断部１７０は、仮の円の横方向の半径を求める（ステップＳ１４）。具体的には、判断部１７０は、横方向の左右の有効画素の数を計数することによって横方向の半径を求める（図４（ｄ）参照）。
【００３９】
次に、判断部１７０は、ステップＳ１３及びＳ１４で求めた半径は所定画素以上ずれるか否か判断する（ステップＳ１５）。ここで、ステップＳ１３の縦方向の半径は、縦方向の直径を二分して求めているので同じ長さである。一方で、横方向の左右の半径はそれぞれ、仮の円の中心から有効画素数を計数することで求めているので左右の半径がずれる可能性がある。そこで、このステップＳ１５において、判断部１７０は、縦方向の半径に対して、横方向の左右の半径それぞれが所定画素以上ずれているか否か判断するようにする。
【００４０】
ここで、判断部１７０は、横方向の何れの半径も縦方向の半径と所定画素以上のずれがない場合（ステップＳ１５；Ｎｏ）、有効画素の集合からなる領域は概ね円であると判断してステップＳ１６に進む。一方で、判断部１７０は、横方向の左右の半径のうち少なくとも一方の半径が縦方向の半径と所定画素以上ずれる場合（ステップＳ１５；Ｙｅｓ）（すなわち、（１）横方向の一方の半径が縦方向の半径とずれる場合及び（２）横方向の両方の半径がいずれも縦方向の半径とずれる場合）、有効画素の集合からなる領域は円ではないとして処理を終了する。
【００４１】
判断部１７０は、有効画素の集合からなる領域は概ね円であると判断した場合、ステップＳ１６において円に接する外接四角形を設定する（図４（ｅ）参照）。
次に、判断部１７０は、外接四角形の面積と、円の面積と、から面積比率を求める（ステップＳ１７）。具体的には、判断部１７０は、外接四角形内を走査し、無効画素数と有効画素数とを合算した画素数を外接四角形の面積、有効画素数を円の面積、とそれぞれして面積比率を求める。
【００４２】
次に、判断部１７０は、ステップＳ１７で求めた面積比率は規定の面積比率の誤差範囲内か否か判断する（ステップＳ１８）。具体的には、判断部１７０は、ステップＳ１７で求めた面積比率が規定の面積比率である７９％からの所定の誤差範囲内か否か判断する。
ここで、判断部１７０が所定の誤差範囲内でないと判断すると（ステップＳ１８；Ｎｏ）、ステップＳ１５で概ね円と判断した形状は円ではないとして処理を終了する。
一方、判断部１７０が所定の誤差範囲内であると判断すると（ステップＳ１８；Ｙｅｓ）、ステップＳ１５で概ね円と判断した形状は円であるとして、保持部１８０は、円の位置情報を保持する（ステップＳ１９）。具体的には、保持部１８０は、円と判断した有効画素の集合からなる領域の位置を示す位置情報である座標や円の半径の長さなどを記憶部１２３に保持する。
【００４３】
次に、判断部１７０は、有効画素の集合からなる円の領域を無効画素で書き換え（ステップＳ２０）、処理を終了する。探索部１６０は、この書き換えの後、円の領域を除いて有効画素の探索を再開し（図４（ｆ）参照）、二値画像の全画素について有効画素の探索が終了するまでステップＳ１２乃至Ｓ２０の処理を繰り返す。
【００４４】
一方、ステップＳ１５又はＳ１８で有効画素の集合からなる領域が円ではないと判断した場合、探索部１６０は、円ではないと判断した領域を除いて有効画素の探索を再開し、二値画像の全画素について有効画素の探索が終了するまでステップＳ１２乃至Ｓ２０の処理を繰り返す。なお、探索部１６０が探索を再開する際、円ではないと判断した領域を無効画素に書き換えてもよい。
【００４５】
以上、図５の円の形状認識処理では、デジタルカメラ１００の制御部１２１が、二値化部１５０、探索部１６０、判断部１７０及び保持部１８０の各機能を実現することにより、形状認識処理を行う対象の画像を二値画像とし、その上で面積比率に基づく簡易的な手法により画像中の形状の認識を行うことができる。このため、処理負荷が低いことから処理時間が短い。従って、画像中の形状を高速で認識することができる。
【００４６】
より具体的な適用例として図６を用いて説明すると、同図では表示部１３１に表示されるライブビューに他のユーザが映っているとする。この他のユーザは、端末を持っており、その端末のディスプレイには色が一定時間毎に変わる円（可視光通信用のマーカー１４１）が映っているとする。可視光通信では、あるパターン（例えば、赤、青、黄の順序など）で色が一定時間毎に変わる円（すなわち、彩度が規則性をもって変化する円）を認識することで、そのパターンに対応付けられた情報をデジタルカメラ１００が受信することができる。このような可視光通信では、他のユーザを待たせないように、端末のディスプレイに映る円の認識は早い方が好ましい。
【００４７】
このような場合に、他のユーザがライブビューに映った状態において、可視光通信を開始するための例えば可視光モードボタンをユーザが押下すると、上述した円の形状認識処理を行って高速に円の形状認識を行うことができる。なお、円の色パターンの認識は、他の公知の手法によって行う。
また、図６の他のユーザは、可視光通信の間動く可能性があるので円を追従する必要があるが、この実施形態における円の形状認識処理によれば高速に円の検出を繰り返すことができるので、追従精度を向上することができる。
【００４８】
（変形例）
以上で実施形態の説明を終了するが、デジタルカメラ１００の具体的な構成や図４及び図５に示した円の形状認識処理の内容が上述の実施形態で説明したものに限られないことはもちろんである。
【００４９】
例えば、上述した実施形態では、図５の円の形状認識処理において、ステップＳ１８で求めた面積比率が規定の面積比率の誤差範囲内か否かで円か否かを判断するようにしたがこれに限られない。例えば、図４（ｅ）の外接四角形を四分割して、それぞれの面積比率を求め、求めた面積比率がそれぞれ２０％（規定の面積比率である７９％の１／４を小数点第一位で四捨五入した値）になるか否かで円か否か判断するようにしてもよい。これにより、円の検出精度を向上させることができる。なお、規定の面積比率を１／４にした値に所定の誤差を設けてもよい。また、外接四角形を何分割にするかは精度に応じて任意に設定することができる。
【００５０】
また、上述した実施形態では、図５の形状認識処理のステップＳ１５において、仮の円の縦方向と横方向の半径が所定画素以上ずれるか否かで概ね円であるか否か判断するようにしたがこれに限られない。例えば、高精度の円の検出を求められない場合は、ステップＳ１５で処理を終了するようにしてもよい。この場合、ステップＳ１５で円であるか否かを判断するようにする。このことにより、ステップＳ１６乃至Ｓ２０の処理を省くことができるので、形状認識処理をさらに高速に行うことができる。
【００５１】
また、上述した実施形態では、図５の円の形状認識処理の後、円であると判断した場合はその円の領域を除いて有効画素の探索を行うようにしたがこれに限られない。例えば、円であると判断した場合は、図７に示すように、外接四角形の領域を除いて有効画素の探索を行うようにしてもよい。このことにより、走査範囲を削減することができるので高速に残りの有効画素の探索を行うことができる。
なお、円であると判断した場合に行う探索を、円又は外接四角形の領域を除いて行う場合を例にとって説明したが、円又は外接四角形のあった領域（無効画素で書き換えた領域）について再度走査することを妨げるものではない。
【００５２】
また、上述した実施形態では、円の形状認識処理について説明したがこれに限られない。例えば、別の形状として正方形の形状認識処理を行ってもよい。この場合、図８に示すように、有効画素を検出すると、検出した箇所から縦方向の有効画素数を計数して一辺の長さを求め、かつ横方向の別の一辺の長さを求める。求めた一辺の長さと別の一辺の長さとのバランス（例えば、所定画素以上のずれがあるかなど）により２辺の長さが概ね等しいか否か判断する。２辺の長さが概ね等しければ、仮の正方形として有効画素数を全て計数して求めた仮の正方形の面積と、１辺の長さ×２により求めた正方形の面積と、を比較することで正方形か否か判断するようにする。
【００５３】
また、上述した実施形態では、ＹＵＶ色空間であることを前提に説明したがこれに限られない。例えば、ＲＧＢ色空間でもよい。この場合、二値化処理に用いる閾値のパラメータは、輝度に代えて明度を用いるようにする。
【００５４】
また、上述した実施形態では、デジタルカメラ１００であることを前提に説明したがこれに限られない。例えば、携帯端末（スマートフォンなど）が図１に示した画像処理部１２０を備え、上述した円の形状認識処理を行ってもよい。この場合、図６に示した他のユーザが持つ端末が携帯端末である場合、携帯端末同士での可視光通信に形状認識処理を適用することができる。例えば、円の色パターンに対応付けられた情報（他のユーザの個人情報（電話番号やアドレスなど）あるいは送信したいメッセージなど）をユーザが持つ携帯端末で受信することができる。
【００５５】
また、この発明の画像処理部１２０の形状認識処理は、通常のＰＣ（Personal Computer）等のコンピュータによっても実施することができる。
具体的には、上記実施形態では、形状認識処理に係る各機能を実現するためのプログラムが、記憶部１２３に予め記憶されているものとして説明した。しかし、図２の各部の機能を実現させるためのプログラムを、フレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＤＶＤ（Digital Versatile Disk）及びＭＯ（Magneto-Optical Disk）等のコンピュータ読み取り可能な記録媒体に格納して配布し、そのプログラムをコンピュータにインストールすることにより、上述の各部の機能を実現することができるコンピュータを構成してもよい。
また、プログラムをインターネット等の通信ネットワーク上のサーバ装置が有するディスク装置等に格納しておき、例えば、コンピュータがダウンロード等することができるようにしてもよい。
【００５６】
以上、本発明の実施形態について説明したが、この実施形態は、例示に過ぎず、本発明の技術的範囲を限定するものではない。本発明はその他の様々な実施形態をとることが可能であり、さらに、本発明の要旨を逸脱しない範囲で、省略や置換等種々の変更を行うことができる。これら実施形態やその変形は、特許請求の範囲に記載された発明とその均等の範囲に含まれる。以下に、本願出願当初の特許請求の範囲に記載された発明を付記する。
【００５７】
（付記１）
画像を取得する画像取得手段と、
前記画像取得手段により取得した前記画像において所定条件を満たす画素を探索する探索手段と、
前記探索手段による探索中に、前記所定条件を満たす画素を検出したか否かを判断する第１の判断手段と、
前記第１の判断手段により前記所定条件を満たす画素を検出したと判断すると、該画素の集合からなる領域が特定の形状を有するか否かを判断する第２の判断手段と、
前記第２の判断手段により前記特定の形状を有すると判断すると、前記画素の集合からなる領域の位置を示す位置情報を保持する保持手段と、
を備えたことを特徴とする画像処理装置。
【００５８】
（付記２）
前記探索手段は、前記保持手段が前記位置情報を保持した後、前記画素の集合からなる領域を除いて前記探索を再開することを特徴とする付記１に記載の画像処理装置。
【００５９】
（付記３）
前記第２の判断手段は、前記所定条件を満たす画素から所定方向へ連続して存在する前記画素と同じ条件の画素数を計数することで、前記領域の一方の方向の長さを取得し、該取得した長さが前記領域の他の方向の長さと特定の条件を満たしているか否かを判断することで、前記特定の形状を有するか否かを判断することを特徴とする付記１又は２に記載の画像処理装置。
【００６０】
（付記４）
前記他の方向は、前記一方の方向の中心と直行する方向であり、
前記特定の条件は、前記一方の方向の長さと前記他方の方向の長さとの差が所定の差以内であることが条件であることを特徴とする付記３に記載の画像処理装置。
【００６１】
（付記５）
前記画像取得手段は、逐次画像を取得し、
前記特定の形状を有する領域は、前記逐次取得された画像において少なくとも彩度が規則性をもって変化する領域であることを特徴とする付記１乃至４の何れか一つに記載の画像処理装置。
【００６２】
（付記６）
画像を取得する画像取得ステップと、
前記画像取得ステップにより取得した前記画像において所定条件を満たす画素を探索する探索ステップと、
前記探索ステップによる探索中に、前記所定条件を満たす画素を検出したか否かを判断する第１の判断ステップと、
前記第１の判断ステップにより前記所定条件を満たす画素を検出したと判断すると、該画素の集合からなる領域が特定の形状を有するか否かを判断する第２の判断ステップと、
前記第２の判断ステップにより前記特定の形状を有すると判断すると、前記画素の集合からなる領域の位置を示す位置情報を保持する保持ステップと、
を備えたことを特徴とする画像処理方法。
【００６３】
（付記７）
コンピュータを、
画像を取得する画像取得手段、
前記画像取得手段により取得した前記画像において所定条件を満たす画素を探索する探索手段、
前記探索手段による探索中に、前記所定条件を満たす画素を検出したか否かを判断する第１の判断手段、
前記第１の判断手段により前記所定条件を満たす画素を検出したと判断すると、該画素の集合からなる領域が特定の形状を有するか否かを判断する第２の判断手段、
前記第２の判断手段により前記特定の形状を有すると判断すると、前記画素の集合からなる領域の位置を示す位置情報を保持する保持手段、
として機能させるためのプログラム。
【符号の説明】
【００６４】
１００…デジタルカメラ、１１０…撮影部、１１１…光学装置、１１２…イメージセンサ１２０…画像処理部、１２１…制御部、１２２…集積回路部、１２３…記憶部、１２４…外部記憶部、１３０…インターフェース部、１３１…表示部、１３２…外部インターフェース部、１３３…操作部、１４１…マーカー、１４２…光源、１４３…被写体像、１５０…二値化部、１６０…探索部、１７０…判断部、１８０…保持部
【図１】
0005979096.tif 000002
【図２】
0005979096.tif 000003
【図４】
0005979096.tif 000004
【図５】
0005979096.tif 000005
【図７】
0005979096.tif 000006
【図８】
0005979096.tif 000007
【図３】
0005979096.tif 000008
【図６】
0005979096.tif 000009