【課題】画像処理装置が、処理対象の絵等が描かれる面を識別するための情報を新たに設ける必要無しに、処理対象の絵等が所定の面に描かれているか否かに応じて、画像処理を行うか否かを判定することができるようにする。
【解決手段】画像処理装置が、画像を取得する画像取得部と、前記画像のエッジ検出を行うエッジ検出部と、前記エッジ検出にて検出されたエッジ部分に含まれる画素の前記画像における配置が所定のパタンを満たすか否かを判定するパタン判定部と、前記パタン判定部が前記所定のパタンを満たすと判定した場合、当該パタンに対応する所定の画素を消去するノイズ除去部と、前記パタン判定部が前記所定のパタンを満たすと判定した度合いを示す指標値が、前記度合いが所定の度合い以上に大きいことを示す場合、前記ノイズ除去部が画素を消去した画像に対してさらに画像処理を行う後段処理部と、を備える。
前記後段処理部は、前記ノイズ除去部が画素を消去した画像のうち所定の画素値の画素を周囲の画素に広げる塗り広げ処理部を備える、請求項1または請求項2に記載の画像処理装置。
前記後段処理部は、画面に表示される背景画像上に前記画像処理にて得られた画像を表示させ、当該画像処理にて得られた画像を当該背景画像上で動作させる処理を行う、請求項1から3のいずれか一項に記載の画像処理装置。
前記パタン判定部は、ハニカム状の所定の模様に基づいて決められた前記所定のパタンを満たすか否かを判定する、請求項1から4のいずれか一項に記載の画像処理装置。
【発明を実施するための形態】
【0021】
以下、本発明の実施形態を説明するが、以下の実施形態は請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0022】
<第1の実施形態>
図1は、本発明の第1の実施形態における画像処理システムの機能構成を示す概略ブロック図である。同図に示すように画像処理システム1は、磁気ボード2と、画像処理装置3とを備える。
【0023】
画像処理システム1は、ユーザが磁気ボード2に書いたもの(絵又は文字など任意のものでよい)を撮像して画像処理する装置である。具体的には、ユーザが磁気ボード2用のペンで絵又は文字などを書くと、磁気ボード2がその絵又は文字などを表示する。また、画像処理装置3は撮像部を備えており、絵又は文字などを表示している磁気ボード2を撮像し、撮像画像に対して画像処理を行う。
以下では、ユーザが磁気ボード2に書いたものを絵等と表記する。
画像処理装置3は、例えばスマートフォンなどカメラ付きの情報処理装置に画像処理装置3用のアプリケーションプログラムをインストールすることで実現されていてもよい。あるいは、画像処理装置3が画像処理装置3専用の装置として構成されていてもよい。
【0024】
図2は、磁気ボード2を表面側から見た外形の例を示す概略外形図である。同図に示すように磁気ボード2は、磁気ボード本体210と、黒ペン221と、赤ペン222と、スタンプ223とを備える。磁気ボード本体210は、表示パネル211と、消去用スライダー212とを備える。
表示パネル211は、磁気ボード2用のペンでユーザが書いた絵等を表示する。
【0025】
図3は、表示パネル211の内部構造の概略を示す説明図である。同図に示すように、表示パネル211は、表面シート231と底面シート232とを仕切り233で仕切って構成されたセル(小室)234を複数備えている。セル234の各々には白色の液体(例えば、白色の二酸化チタンが混入されたオイル)とマイクロマグネット(小さい磁石)241とが封入されている。
【0026】
セル234cのようにマイクロマグネット241が表面シート231から離れている状態では、ユーザが表示パネル211を表面シート231側から見ると、液体の色により白く見える。一方、セル234a及びセル234bのようにマイクロマグネット241が表面シート231に付着している状態では、ユーザが表示パネル211を表面シート231側から見ると、マイクロマグネット241の色が見える。なお、ここでいう色は、灰色または黒のように無彩色であってもよい。
【0027】
マイクロマグネット241は、N極側242を黒く塗られ、S極側243を赤く塗られている。このため、セル234aのマイクロマグネット241aのように、N極側242が表面シート231に付着している状態では、ユーザが表示パネル211を表面シート231側から見ると、N極側242の色により黒く見える。一方、セル234bのマイクロマグネット241bのように、S極側243が表面シート231に付着している状態では、ユーザが表示パネル211を表面シート231側から見ると、S極側243の色により赤く見える。
【0028】
但し、マイクロマグネット241の色は上述した黒及び赤に限らず、いろいろな色とすることができる。例えば、マイクロマグネット241が、黒1色で塗られていてもよいし、青及び赤など黒及び赤以外の色で塗られていてもよい。
あるいは、マイクロマグネット241がセル234毎に異なる色で塗られていてもよい。例えば、複数のセル234を纏めたセル群毎に、マイクロマグネット241が異なる色で塗られていてもよい。
【0029】
図4は、表示パネル211を表面シート231側から見た外観の概略例を示す説明図である。同図に示すように、仕切り233はハニカム状になっている。すなわち、正六角形で同じ大きさの複数のセル234が並んでいる。
但し、仕切り233の形状はハニカム状に限らない。同様の形状かつ同様の大きさの複数のセルが並んでいればよい。
【0030】
図3を参照して説明したように、セル234のうち、N極側242が表面シート231に付着しているセル234aは、黒く見える。一方、セル234のうち、S極側243が表面シート231に付着しているセル234bは、赤く見える。また、セル234のうち、マイクロマグネット241が表面シート231から離れて位置しているセル234cは、白く見える。
一方、仕切り233は、例えば緑に見えるなど、セル234aの黒、セル234bの赤、セル234cの白のいずれとも異なる色に見える。
【0031】
なお、1つのセル234の一部分でのみ、マイクロマグネット241のN極側242が表面シート231に付着することがあり得る。この場合、1つのセル234の一部分が黒く見え、当該セルの残りの部分は白く見える。同様に、1つのセル234の一部分でのみ、マイクロマグネット241のS極側243が表面シート231に付着することがあり得る。この場合、1つのセル234の一部分が赤く見え、当該セルの残りの部分は白く見える。
【0032】
消去用スライダー212は、表示パネル211の表示を消すのに用いられる。具体的には、消去用スライダー212は、底面シート232の外側(底面シート232から見て表面シート231と反対側)に、
図2の上下方向に設けられた棒と、当該棒に付された消去用磁石と、当該棒の端部に設けられたつまみとを備える。ユーザが、つまみを
図2の左右方向に移動させることで、消去用磁石も左右方向に移動する。消去用磁石は、マイクロマグネット241を底面シート232に付着させる。これによって、ユーザが表示パネル211を表面シート231側から見た場合、セル234が白く見える。
消去用磁石は、表示パネル211の上端から下端までにわたって棒に付されており、ユーザが、つまみを可動領域の左端から右端まで移動させることで、消去用磁石が表示パネル211の全てのセル234でマイクロマグネット241を底面シートに付着させる。これにより、ユーザが表示パネル211に書いた絵等が消去される。
【0033】
黒ペン221、赤ペン222は、いずれも磁気ボード2用のペンである。
黒ペン221には、S極側を黒ペン221の先端側にして磁石が設けられている。ユーザが、黒ペン221にて表示パネル211をなぞると、マイクロマグネット241のN極側242が表面シート231に付着する。これにより、
図3を参照して説明したように、ユーザが表示パネル211を表面シート231側から見た場合、セル233が黒く見える。
【0034】
また、赤ペン222には、N極側を黒ペン221の先端側にして磁石が設けられている。ユーザが、赤ペン222にて表示パネル211をなぞると、マイクロマグネット241のS極側242が表面シート231に付着する。これにより、
図3を参照して説明したように、ユーザが表示パネル211を表面シート231側から見た場合、セル233が赤く見える。
【0035】
スタンプ223は、黒ペン221及び赤ペン222と同様、ユーザが表示パネル211に絵などを書くのに用いられる。黒ペン221及び赤ペン222と同様、スタンプ223にも磁石が設けられており、ユーザがスタンプ223を表示パネル211に近付けると、マイクロマグネット241が表面シート231に付着する。これにより、ユーザが表示パネル211を表面シート231側から見た場合、極性に応じてセル233が黒く又は赤く見える。
【0036】
図5は、画像処理装置3の機能構成を示す概略ブロック図である。同図に示すように画像処理装置3は、撮像部310と、表示部320と、操作入力部330と、記憶部360と、制御部370とを備える。制御部370は、画像処理部371を備える。画像処理部371は、前段処理部380と、後段処理部390とを備える。前段処理部380は、エッジ検出部381と、パタン判定部382と、ノイズ除去部383とを備える。後段処理部390は、塗り広げ処理部391と、余白透明化処理部392と、閉領域白塗り処理部393とを備える。
【0037】
撮像部310は、カメラを備えて撮像を行う。特に、撮像部310は、カメラを磁気ボード2に向けられた状態で磁気ボード2を撮像する。撮像部310は画像取得部の例に該当し、撮像により画像を取得する。なお、以下では撮像部310が動画像を撮像する場合を例に説明するが、撮像部310がユーザ操作(シャッター操作)に従って静止画像を撮像するようにしてもよい。
【0038】
表示部320は、例えば液晶パネル等の表示画面を有し、各種画像を表示する。特に、表示部320は、撮像部310が撮像した画像に対して画像処理部371が画像処理を行って得られた画像を表示する。
操作入力部330は、例えば、表示部320の表示画面に設けられてタッチパネルを構成するタッチセンサ、又は、テンキー及び方向ボタンなどの入力デバイスを備え、ユーザ操作を受け付ける。
【0039】
記憶部360は、画像処理装置3が備える記憶デバイスを含んで構成され、各種データを記憶する。
制御部370は、画像処理装置3の各部を制御して各種処理を行う。制御部370は、例えば画像処理装置3が備えるCPU(Central Processing Unit、中央処理装置)が記憶部360からプログラムを読み出して実行することで実現される。
【0040】
画像処理部371は、撮像部310が磁気ボード2を撮像した撮像画像に対して画像処理を行い、画像処理後の画像を表示部320の表示画面に表示させる。例えば、画像処理部371は、背景画像として水槽内の画像を表示部320の表示画面に表示させ、画像処理にて得られた画像を魚のように泳がせる画像を表示部320の表示画面に表示させる。これにより、画像処理装置3は、ユーザが磁気ボード2に書いた絵等画像を水槽内で泳がせる画像を表示する機能を提供する。
【0041】
前段処理部380は、撮像部310の撮像画像から、磁気ボード2のハニカム状の模様の像を構成する画素を検出して消去し、画素の消去状況に基づいて、撮像部310の撮像画像が磁気ボード2を撮像した画像か否かを判定する。
エッジ検出部381は、撮像部310の撮像画像のうちエッジ部分を検出してエッジ画像を生成する。ここでいうエッジ部分は、当該部分の画素の画素値が隣接する画素の画素値と所定の条件以上に大きく変化している部分である。
【0042】
エッジ検出部381が画像のエッジ部分を検出する方法は、特定の方法に限定されない。例えば、エッジ検出部381が、ソーベルフィルタ(Sobel Filter)、ラプラシアンフィルタ(Laplacian Filter)、又は、キャニーフィルタ(Canny Filter)など、既存のエッジ検出フィルタを備えて画像のエッジ部分を検出するようにしてもよい。
また、ここでいうエッジ画像とは、元の画像の各画素を「エッジ」又は「エッジ以外」のいずれかを示す画素に置き換えた画像である。従って、エッジ画像の画素と元の画像の画素とは1対1に対応する。以下では、「エッジ」を示す画素を画素値「1」で示し、「エッジ以外」を示す画素を画素値「0」で示す。
【0043】
パタン判定部382は、撮像部310の撮像画像におけるエッジ部分に含まれる画素の配置が、ハニカム状の所定の模様に基づいて決められた所定のパタンを満たすか否かを判定する。ここでいうハニカム状の所定の模様に基づいて決められた所定のパタンとは、撮像部310の撮像画像における仕切り233の像によるハニカム状の模様を想定して予め決められているパタンである。以下では、ハニカム状の所定の模様に基づいて決められた所定のパタンを、ハニカム判定パタンと称する。
【0044】
ここで、
図4の例のように磁気ボード2の表示パネル211の仕切り233の太さは、セル234の幅に対して十分細い。このため、撮像部310の撮像画像が磁気ボード2を撮像した画像である場合、エッジ検出部381は、仕切り233の像全体をエッジ部分として検出する。
一方、セル234の色は、典型的には
図4に示されるように1つのセル234全体で同じ色になる。
図4の例では、セル234a全体が黒く見える。また、セル234b全体が赤く見え、セル234c全体が白く見える。従って、エッジ検出部381は、セル234の輪郭部分がエッジ部分として検出するが、セル234の内側についてはエッジ以外の部分と判定する。
【0045】
図6は、エッジ検出部381が生成するエッジ画像における画素値の例を示す説明図である。同図では、エッジ検出部381が生成したエッジ画像の一部の画素の画素値を、撮像部310が磁気ボード2を撮像した画像の対応部分上に示している。画素P101〜P114のうち、P101、P105、P110及びP114の画素値は、エッジ部分を示す「1」になっている。それ以外の画素(P102、P103、P104、P106、P107、P108、P109、P111、P112及びP113)の画素値は、エッジ以外の部分を示す「0」になっている。
【0046】
図6の例のようなエッジ部分の画素の配置に基づいて、ハニカム判定パタンの1つは、例えば「10001」のように、エッジ部分の画素とエッジ部分の画素との間に複数のエッジ以外の部分の画素が連続して出現するパタンとして設定されている。以下、このハニカム判定パタンをハニカム判定パタンAと称する。
ハニカム判定パタンAに出現するエッジ以外の部分の画素の数の上限が設定されていてもよいし、上限は任意となっていてもよい。
【0047】
一方、撮像部310に対する磁気ボード2を撮像する向きによっては、「001111000」のように複数のエッジ部分以外の画素と複数のエッジ部分以外の画素との間に所定数以上のエッジ部分の画素が連続して出現する。そこで、ハニカム判定パタンの1つは、複数のエッジ部分以外の画素と複数のエッジ部分以外の画素との間に所定数以上のエッジ部分の画素が連続して出現するパタンとして設定されている。以下、このハニカム判定パタンをハニカム判定パタンBと称する。
【0048】
パタン判定部382は、エッジ検出部381が生成したエッジ画像をラスタスキャンしてハニカム判定パタンを検出する。パタン判定部382は、設定されているハニカム判定パタンの少なくともいずれか1つを満たす(マッチする)と判定すると、ハニカム判定パタンを満たすと判定する。
ここで、エッジ画像におけるエッジ部分の画素の配置は元の画像(撮像部310の撮像画像)におけるエッジ部分の配置と同一である。従って、パタン判定部382は、撮像部310の撮像画像におけるエッジ部分に含まれる画素の配置が、ハニカム判定パタンを満たすか否かを判定しているといえる。
【0049】
ノイズ除去部383は、パタン判定部382が所定のパタンを満たすと判定した場合、当該パタンに対応する所定の画素を消去する。具体的には、ノイズ除去部383は、撮像部310の撮像画像の画素のうち、ハニカム判定パタンで画素値が1になっている画素に対応する画素を消去する。
なお、ここでいう画素の消去とは、当該画素の画素値を余白部分の画素値(例えば、白を示す画素値または透明を示す画素値)に書き換えることである。
図4の例の場合、セル234cの色である白が余白部分の色に該当し、ノイズ除去部383は、消去する画素の画素値を、白を示す画素値に書き換える。
【0050】
後段処理部390は、パタン判定部382がハニカム判定パタンを満たすと判定した度合いを示す指標値が、所定の度合い以上に大きいことを示す場合、ノイズ除去部383が画素を消去した画像に対してさらに画像処理を行う。当該判定は、撮像部310の撮像画像が磁気ボード2を撮像した画像か否かの判定の例に該当し、後段処理部390は、撮像部310の撮像画像が磁気ボード2を撮像した画像であると判定した場合に、当該画像に対してさらに画像処理を行う。
ここで、パタン判定部382がハニカム判定パタンを満たすと判定した度合いを示す指標値は、例えば、パタン判定部382は、エッジ画像全体でハニカム判定パタンを検出した回数であってもよいし、ノイズ除去部383が消去した画素の数であってもよい。
【0051】
塗り広げ処理部391は、ノイズ除去部383が画素を消去した画像のうち所定の画素値の画素の色を周囲の画素に広げる。具体的には、塗り広げ処理部391は、広げる元の画素の画素値を広げる先の画素に書き込む。以下では、塗り広げ処理部391が行う当該処理を塗り広げ処理と称する。塗り広げ処理によって塗り広げ処理部391は、撮像部310の撮像画像からノイズ除去部383が画素を消去して生じた隙間を埋める。
【0052】
ノイズ除去部383がエッジ部分の画素を消去した画像では、消去されたエッジ部分が隙間となっている。これに対して、塗り広げ処理部391が塗り広げ処理を行うことで、隙間を埋めることができる。特に、ユーザが磁気ボード2に書いた線が仕切り233の部分では途切れて隙間が生じていたのに対し、塗り広げ処理部391が塗り広げ処理を行うことで、隙間のない線の像を得られる。これにより、ユーザが線で囲った閉領域を検出し易くなり、例えば、画像処理部371が、当該閉領域を塗りつぶす処理を行うことができる。
【0053】
余白透明化処理部392は、塗り広げ処理部391が塗り広げ処理を行った画像に対して余白を透明化する処理を行う。具体的には、余白透明化処理部392は、塗り広げ処理部391が塗り広げ処理を行った画像のうち、閉領域の部分及び塗り潰されている部分を除いた部分を余白部分として、当該余白部分の色を透明に設定する(すなわち、余白部分の画素値を、透明を示す画素値に書き換える)。
【0054】
閉領域白塗り処理部393は、余白透明化処理部392が余白を透明化した画像に対して閉領域の部分を白塗りする処理を行う。具体的には、閉領域白塗り処理部393は、閉領域の部分を検出し、検出した閉領域の部分のうち黒の部分と赤の部分とを除いた部分の色を白にする。
以上の処理により、後段処理部390は、撮像部310の撮像画像から余白部分を消去して、ユーザが磁気ボード2に描いた絵の像の部分を抽出する。例えば、ユーザが磁気ボード2に魚の絵を描いた場合、後段処理部390は、撮像部310の撮像画像から余白部分を消去して、魚の絵の部分を抽出する。
【0055】
なお、後段処理部390が、ノイズ除去部383を含んで構成されていてもよい。従って、後段処理部390が行う画像処理に、ノイズ除去部383が行う処理が含まれていてもよい。
【0056】
次に、
図7〜
図8を参照して画像処理装置3の動作について説明する。
図7は、磁気ボード2に書かれた絵に対して画像処理装置3が行う処理の手順の例を示すフローチャートである。画像処理装置3は、例えば処理開始を指示するユーザ操作に従って
図7の処理を開始する。
図7の処理にて、画像処理装置3は、撮像部310の撮像画像に対して画像処理を行う(ステップS101)。
【0057】
図8は、画像処理装置3が撮像部310の撮像画像に対して画像処理を行う手順の例を示すフローチャートである。画像処理装置3は、
図7のステップS101にて
図8の処理を行う。
図8の処理にて撮像部310は撮像画像を取得する(ステップS201)。例えば撮像部310は動画像を撮像しており、動画像の1フレームとしての撮像画像を取得する。
【0058】
次に、画像処理部371は、撮像部310の撮像画像に、表示パネル211の表面シート231による反射光が写り込んでいるか否かを判定する(ステップS202)。撮像画像に反射光が写り込んでいる場合、得られる画像の質が低下してしまうからである。画像処理部371は、例えば、撮像画像全体で輝度の平均値を求め、得られた平均値が所定の閾値よりも大きい場合に、反射光が写り込んでいると判定する。
【0059】
反射光が写り込んでいると判定した場合(ステップS202:YES)、ステップS201へ戻る。
一方、反射光が写り込んでいないと判定した場合(ステップS202:NO)、エッジ検出部381は、撮像部310の撮像画像のうちエッジ部分を検出してエッジ画像を生成する(ステップS211)。エッジ検出部381が生成したエッジ画像は、仕切り233の像によるハニカム状の模様の検出に用いられる。一方、当該エッジ画像の元の画像である撮像部310の撮像画像は、画像処理部371が画像処理を行う対象の画像となる。
【0060】
次に、パタン判定部382は、ハニカム判定パタンの検出回数を数えるカウンタの値をゼロ(0)に設定(リセット)する(ステップS212)。
そして、パタン判定部382は、エッジ検出部381が生成したエッジ画像をラスタスキャンするループL11の処理を開始する(ステップS221)。
ループL11の処理では、パタン判定部382は、ラスタスキャンで直近にスキャンした1つ以上の画素で構成される画素列がハニカム判定パタンのいずれかを満たす(マッチする)か否かを判定する(ステップS222)。具体的には、ハニカム判定パタンに含まれる画素の数がn個(nは正整数)である場合、パタン判定部382は、ラスタスキャンで直近にスキャンしたn個の画素を時間順に並べた画素列が、当該ハニカム判定パタンを満たすか否かを判定する。
【0061】
いずれかのハニカム判定パタンが満たされる(すなわち、上記の画素列のうちいずれかのハニカム判定パタンを満たすものが存在する)と判定した場合(ステップS222:YES)、ノイズ除去部383は、撮像部310の撮像画像から画素を消去する(ステップS231)。
具体的には、ノイズ除去部383は、ステップS222でハニカム判定パタンを満たすと判定された画素列をエッジ画像上で検出し、当該画素列のうち、ハニカム判定パタンの「1」の画素に対応する画素(従って、エッジ部分と判定された画素)を検出する。そして、ノイズ除去部383は、エッジ画像上で検出した画素に対応する撮像画像上の画素を特定し、特定した画素を消去する。
【0062】
また、パタン判定部382は、ハニカム判定パタンの検出回数をカウントアップする(ステップS232)。具体的には、パタン判定部382は、ハニカム判定パタンに検出回数を数えるカウンタの値に1を加算する。
次に、パタン判定部382は、ループL11の終端処理を行う(ステップS233)。具体的には、パタン判定部382は、エッジ検出部381が生成したエッジ画像の全ての画素についてループL11の処理を行ったか否かを判定する。未処理の画素があると判定した場合、ステップS221へ戻り、ラスタスキャンしていない画素について引き続きループL11の処理を行う。一方、全ての画素についてループL11の処理を行ったと判定した場合は、ループL11を終了する。
【0063】
ステップS233でループL11を終了した場合、パタン判定部382は、ハニカム判定パタンの検出回数が所定の閾値以上か否かを判定する(ステップS241)。具体的には、パタン判定部382は、ハニカム判定パタンの検出回数を数えるカウンタの値が閾値以上か否かを判定する。
当該判定は、撮像部310の撮像画像が磁気ボード2を撮像した画像であるか否かの判定の例に該当する。なお、ステップS241における閾値は、例えば、画像処理装置3の設計者が実験にて予め定めておく。
【0064】
ハニカム判定パタンの検出回数が所定の閾値未満であったと判定した場合(ステップS241:NO)、ステップS201へ戻る。この場合、撮像部310の撮像画像が磁気ボード2を撮像した画像ではない可能性が高いため、画像処理装置3は
図8の処理をやり直す。
一方、ハニカム判定パタンの検出回数が所定の閾値以上であったと判定した場合(ステップS241:YES)、撮像部310の撮像画像からノイズ除去部383が画素を消去した画像に対して後段処理部390が更に画像処理を行う。
【0065】
具体的には、塗り広げ処理部391が、ノイズ除去部383が画素を消去した画像に対して塗り広げ処理を行う(ステップS251)。すなわち、塗り広げ処理部391は、ノイズ除去部383が画素を消去した画像のうち所定の画素値の画素を検出し、検出した画素の画素値を所定の範囲で周囲の画素に書き込む。塗り広げ処理部391が仕切り233の幅以上に色を塗り広げる処理を行うことで、ノイズ除去部383が行った画素の消去にて生じた隙間を埋めることができる。特に、ユーザが磁気ボード2に書いた線が仕切り233の部分では途切れて隙間が生じていたのに対し、塗り広げ処理部391が塗り広げ処理を行うことで、隙間のない線の像を得られる。
【0066】
次に、余白透明化処理部392は、塗り広げ処理部391が塗り広げ処理を行った画像に対して余白を透明化する処理を行う(ステップS252)。具体的には、余白透明化処理部392は、塗り広げ処理部391が塗り広げ処理を行った画像のうち、閉領域の部分及び塗り潰されている部分を除いた部分を余白部分として検出し、検出した余白部分の色を透明に設定する。
また、閉領域白塗り処理部393は、余白透明化処理部392が余白を透明化した画像に対して閉領域の部分を白塗りする処理を行う(ステップS253)。具体的には、閉領域白塗り処理部393は、閉領域の部分を検出し、検出した閉領域の部分のうち黒の部分と赤の部分とを除いた部分の色を白にする。
ステップS253の後、
図8の処理を終了して
図7の処理へ戻る。
一方、ステップS222で全てのハニカム判定パタンが満たされないと判定した場合(ステップS222:NO)、ステップS233へ遷移する。
【0067】
図8のステップS101の後、制御部370は、ステップS101で得られた画像を表示部320の表示画面に表示させる(ステップS102)。
そして、制御部370は、表示部320が表示している画像を選択するユーザ操作が行われたか否かを判定する(ステップS103)。
表示部320が表示している画像を選択するユーザ操作が行われていないと判定した場合(ステップS103:NO)、ステップS101へ戻る。
【0068】
一方、表示部320が表示している画像を選択するユーザ操作が行われたと判定した場合(ステップS103:YES)、制御部370は、操作入力部330が受け付けるユーザ操作に応じた分岐を行う(ステップS111)。
操作入力部330が画像取得のやり直しを指示するユーザ操作を受けた場合(ステップS111:やり直し)、ステップS101へ戻る。
一方、操作入力部330が画像の保存を指示するユーザ操作を受けた場合(ステップS111:保存)、制御部370は、得られた画像を記憶部360に記憶させる(ステップS121)。
【0069】
そして、後段処理部390は、所定のアプリケーションプログラムを実行し、ステップS101で得られた画像を当該アプリケーションプログラムに適用する(ステップS122)。例えば、後段処理部390は、入力画像を水槽内で魚のように泳がせるアプリケーションプログラムを実行し、ステップS101で得られた画像を当該アプリケーションプログラムに適用する。これにより、画像処理装置3は、ユーザが磁気ボード2に描いた絵等にノイズ除去等の画像処理を行って水槽内で泳がせる画像を表示する機能を提供する。
【0070】
この、ユーザが磁気ボード2に描いた絵等を水槽内で泳がせる処理は、画面に表示される背景画像上に画像処理にて得られた画像を表示させ、当該画像処理にて得られた画像を当該背景画像上で動作させる処理の例に該当する。水槽の画像は、背景画像の例に該当する。また、ユーザが磁気ボード2に描いた絵等にノイズ処理等の画像処理を行った画像は、画像処理にて得られた画像の例に該当する。
ステップS122の後、
図7の処理を終了する。
一方、操作入力部330が、アプリケーションプログラムへの画像の適用を指示するユーザ操作を受けた場合(ステップS111:アプリ適用)、ステップS122へ遷移する。
【0071】
なお、後段処理部390が、ノイズ除去部383を含んで構成されている場合、ノイズ除去部383は、パタン判定部382がステップS233でループL11の処理を終了した後に、ステップS231の処理を行う。例えば、ノイズ除去部383がループL11と同様のループを実行し、当該ループ内でステップS231の処理を行うようにしてもよい。あるいは、ノイズ除去部383が、消去すべき画素をループL11の実行時に記憶しておき、ループL11の終了後に画素の消去を実行するようにしてもよい。
【0072】
以上のように、パタン判定部382は、撮像部310の撮像画像からエッジ検出部381が検出したエッジ部分に含まれる画素の当該撮像画像における配置が所定のパタン(ハニカム判定パタン)を満たすか否かを判定する。また、ノイズ除去部383は、パタン判定部382が所定のパタンを満たすと判定した場合、撮像部310の撮像画像のうち当該パタンに対応する所定の画素を消去する。
また、パタン判定部382は、所定のパタンを満たすと判定した度合いを示す指標値が、所定の度合い以上に大きいことを示しているか否かを判定する。パタン判定部382が、所定のパタンを満たすと判定した度合いを示す指標値が、所定の度合い以上に大きいことを示していると判定した場合、後段処理部390は、ノイズ除去部383が画素を消去した画像に対してさらに画像処理を行う。
【0073】
このように、パタン判定部382は、磁気ボードのハニカム状の模様のように、ノイズ除去部383が消去対象としている模様の出現を示すパタンを検出する。そして、後段処理部390は、パタン判定部382による当該パタンの検出状況に応じて、画像処理を行うか否かを判定する。
従って、絵等が描かれる面にノイズとして消去される模様がある場合、後段処理部390は、画像処理を行うか否かの判定を、パタン判定部382による当該模様の検出度合いに基づいて行うことができる。従って、処理対象の絵等が描かれる面を識別するための情報を新たに設ける必要がない。
【0074】
また、後段処理部390の塗り広げ処理部391は、ノイズ除去部383が画素を消去した画像のうち所定の画素値の画素を周囲の画素に広げる。これにより、塗り広げ処理部391は、ノイズ除去部383が行った画素の消去にて生じた隙間を埋めることができる。
また、後段処理部390は、表示部320画面に表示される背景画像上に、後段処理部390の画像処理にて得られた画像を表示させ、当該画像処理にて得られた画像を当該背景画像上で動作させる。これにより、画像処理装置3は、ユーザが描いた絵等を水槽内で泳がせる機能など、ユーザが描いた絵等を動作させる娯楽機能を提供することができる。
【0075】
また、パタン判定部382は、ハニカム状の所定の模様に基づいて決められた所定のパタンを満たすか否かを判定する。これにより、パタン判定部382は、これにより、パタン判定部382は、撮像部310の撮像画像にて当該パタンを満たす画素(画素の並び)を検出するという簡単な処理で、当該ハニカム状の所定の模様が撮像画像に含まれているか否かを判定することができる。
【0076】
<第2の実施形態>
図9は、本発明の第2の実施形態における画像処理装置の機能構成を示す概略ブロック図である。同図に示すように画像処理装置4は、撮像部310と、表示部320と、操作入力部330と、記憶部360と、制御部470とを備える。制御部470は、スキャン処理部471と条件判定部472と画像処理部371を備える。画像処理部371は、前段処理部380と、後段処理部390とを備える。前段処理部380は、エッジ検出部381と、パタン判定部382と、ノイズ除去部383とを備える。後段処理部390は、塗り広げ処理部391と、余白透明化処理部392と、閉領域白塗り処理部393とを備える。
【0077】
図9の各部のうち
図5の各部に対応して同様の機能を示す部分には同一の符号(310、320、330、360、371、380〜383、390〜393)を付して説明を省略する。
画像処理装置4は、スキャン処理部471と条件判定部472とを備えて撮像部310の撮像画像が磁気ボード2を撮像した画像か否かをさらに判定する点で、画像処理装置3(
図5)と異なる。それ以外は、第1の実施形態の場合と同様である。
【0078】
スキャン処理部471は、撮像部310が撮像した画像をラスタスキャンして、所定の色の画素が現れる間隔の平均、及び、当該所定の色の画素の出現回数を求める。スキャン処理部471が求めた情報は、撮像部310の撮像画像が磁気ボード2を撮像した画像か否かを条件判定部472が判定するのに用いられる。
条件判定部472は、スキャン処理部471が求めた情報が所定の条件を満たすか否かを判定する。これにより、条件判定部472は、撮像部310の撮像画像が磁気ボード2を撮像した画像か否かを判定する。
【0079】
ここで、
図10及び
図11を参照してスキャン処理部471及び条件判定部472が行う処理について説明する。
図10は、スキャン処理部471によるラスタスキャンにて所定の色の画素が現れるパタンの第1の例を示す説明図である。同図では、撮像部310が撮像した画像の画素毎に、仕切り233の色の画素を「1」で示し、それ以外の色の画素を「0」で示している。以下では、
図10に例示される、スキャン処理部471によるラスタスキャンにて所定の色の画素が現れるパタンを示すデータを、スキャン結果データと称する。仕切り233の色の画素は、所定の色の画素に例に該当する。
【0080】
図10は、撮像部310が磁気ボード2を撮像した画像の画素うち1つの走査線の一部に対応するスキャン結果データを、撮像画像の対応部分上に示している。スキャン結果データD101〜D114のうち、D101、D105、D109、D110及びD114の値は、仕切り233の色の画素を示す「1」になっている。それ以外のスキャン結果データ(D102、D103、D104、D106、D107、D108、D111、D112及びD113)の値は、仕切り233以外の色の画素を示す「0」になっている。黒いセル234a、赤いセル234b、白いセル234cのいずれに対応する画素でも、スキャン結果データの値は「0」になっている。
【0081】
スキャン処理部471は、仕切り233の色の画素の数として、値が「1」のスキャン結果データの数を計数する。具体的には、スキャン処理部471は当該計数用のカウンタを備え、スキャン結果データD101、D105、D109、D110及びD114に対応してカウンタ値を1増加(インクリメント)させる。スキャン処理部471は、当該計数を、スキャンデータ全体について行う。
【0082】
なお、スキャン結果データD109及びD110のように、値が「1」のスキャン結果データが連続している場合、スキャン処理部471はいずれか一方のみを計数対象とするようにしてもよい。例えば、スキャン処理部471は時間的に先に出現するスキャン結果データD109についてのみ計数を行うようにしてもよい。
【0083】
また、スキャン処理部471は、仕切り233の色の画素が現れる間隔の平均として、値が「1」のスキャン結果データの出現間隔の平均を算出する。例えば、スキャン処理部471は、スキャン結果データD101とD105との間隔を、これらの間にある値「0」のスキャン結果データの個数を用いて「3」と算出する。スキャン結果データD105とD109との間隔、及び、スキャン結果データD110とD114との間隔についても同様に、スキャン処理部471は「3」と算出する。一方、スキャン結果データD109とD110との間には、値「0」のスキャン結果データはない。従って、スキャン処理部471は、スキャン結果データD109とD110との間隔を「0」と算出する。
スキャン処理部471は、当該間隔の算出をスキャンデータ全体について行い、間隔の平均値を算出する。
【0084】
図11は、スキャン処理部471によるラスタスキャンにて所定の色の画素が現れるパタンの第2の例を示す説明図である。同図では、撮像部310が撮像した画像の画素毎に、仕切り233の色の画素を「1」で示し、それ以外の色の画素を「0」で示している。
スキャン処理部471は、値が「1」のスキャン結果データの間隔が所定の閾値よりも大きい場合、
図10を参照して説明した処理の対象から除外する。
【0085】
図11の例では、スキャン結果データD201とD213との値が「1」になっている。それ以外のスキャン結果データ(D202〜D212、D214)の値は「0」になっている。
図10を参照して説明したのと同様に、スキャン処理部471は、値が「1」のスキャン結果データD201とD213との間隔を「11」と算出する。
ここで、例えば、磁気ボード2全体の撮像画像が表示部320の表示画面いっぱいに映るようにするなど、撮像部310による磁気ボード2の撮像に、ある条件(以下、撮像条件と称する)を設定しておく。ユーザが画像処理装置4を用いて磁気ボード2を撮像する際に、当該撮像条件を満たすように撮像することが求められる。
【0086】
このように、撮像部310による磁気ボード2の撮像に撮像条件を設定しておくことで、撮像部310が当該撮像条件を満たして磁気ボード2を撮像した場合にスキャン結果データが示すパタンとしてあり得ないパタンを想定することができる。
例えば、
図10の例のように2つの仕切り233の間隔(すなわち、セル234の幅)がおおよそ画素3つ分になる場合、例えば画素6つ分以上の間隔となるパタンをあり得ないパタンと想定することができる。
【0087】
スキャン処理部471は、このようなあり得ないパタンの設定を予め記憶しておき、該当するスキャン結果データを、仕切り233の色の画素の数の計数対象、及び、仕切り233の色の画素が現れる間隔の平均の算出対象から除外する。
図11の例の場合スキャン処理部471は、スキャン結果データD213を、仕切り233の色の画素の数の計数対象に含めない(従って、カウンタ値のインクリメントを行わない)。また、スキャン処理部471は、スキャン結果データD201とD213との間隔「11」を、仕切り233の色の画素が現れる間隔の平均を求める母集団に加えない。
このように、スキャン処理部471があり得ないパタンを除外することで、撮像部310の撮像画像に仕切り233の色と同じ色の物がたまたま映っていた場合でも、仕切り233の色の画素の数、及び、仕切り233の色の画素が現れる間隔の平均を高精度に得られる。
【0088】
条件判定部472は、スキャン処理部471が求めた情報(仕切り233の色の画素の数、及び、仕切り233の色の画素が現れる間隔の平均)に基づいて、撮像部310の撮像画像が、磁気ボード2を撮像条件に従って撮像して得られた画像か否かを判定する。
具体的には、条件判定部472は、スキャン処理部471が求めた仕切り233の色の画素の数が、所定の上限閾値及び下限閾値の範囲内か否かを判定する。また、条件判定部472は、スキャン処理部471が求めた仕切り233の色の画素が現れる間隔が所定の上限閾値以下か否かを判定する。
【0089】
これらの閾値(仕切り233の色の画素の数の上限閾値及び下限閾値、及び、仕切り233の色の画素が現れる間隔の平均の上限閾値)は、所定のハニカム状の模様に応じて設定された所定の条件の例に該当する。
画像処理装置4を調整する者(例えば、スマートフォンを画像処理装置4として動作させるアプリケーションプログラムの提供者)が、撮像部310を用いて磁気ボード2を撮像した画像データからこれらの閾値の値を決定し、記憶部360に予め記憶させておく。
【0090】
ここで、上述したように、画像処理を行う装置に、処理対象の絵等が所定の面に描かれている場合には画像処理を行わせ、他の面に描かれている場合には画像処理を抑制させたい場合がある。
そこで、画像処理部371が画像処理を行う条件を、予め設定しておく。そして、撮像部310が磁気ボード2を撮像した場合、当該条件が満たされて画像処理部371が画像処理を行うようにする。一方、当該条件が満たされない場合、画像処理部371が画像処理を行わない(画像処理部371による画像処理を抑制する)ようにする。
これにより、画像処理部371による画像処理機能を磁気ボード2専用の機能とすることができる。
【0091】
特に、スキャン処理部471および条件判定部472によれば、撮像部310の撮像画像をスキャンして、所定の色の画素の数を計数して閾値と比較する処理、及び、所定色の画素が出現する間隔の平均を求めて閾値と比較する処理といった簡単な処理で、画像処理部371が画像処理を行うか否かを決定することができる。この点で、画像処理装置3の負荷を抑制することができ、また、画像処理装置3の処理能力が高くなくてもよい。
【0092】
次に、
図12〜
図13を参照して画像処理装置4の動作について説明する。
図12は、磁気ボード2に書かれた絵に対して画像処理装置4が行う処理の手順の例を示すフローチャートである。画像処理装置3は、例えば処理開始を指示するユーザ操作に従って
図12の処理を開始する。
図12の処理にて撮像部310は撮像画像を取得する(ステップS301)。例えば撮像部310は動画像を撮像しており、動画像の1フレームとしての撮像画像を取得する。
次に、スキャン処理部471は、撮像画像に仕切り233のハニカム状の模様が含まれているか否かの判定用の情報を取得する(ステップS302)。具体的には、スキャン処理部471は、
図10及び
図11を参照して説明したように、仕切り233の色の画素の数、及び、仕切り233の色の画素が現れる間隔の平均を求める。
【0093】
図13は、スキャン処理部471が、撮像画像にハニカム状の模様が含まれているか否かの判定用の情報を取得する処理手順の例を示すフローチャートである。スキャン処理部471は、
図12のステップS302にて
図13の処理を行う。
図13の処理にて、スキャン処理部471は、仕切り233の色の画素の数を計数するカウンタの値を0にリセットする(ステップS401)。また、スキャン処理部471は、仕切り233の色の画素の間隔の合計を0に初期設定する(ステップS402)。
【0094】
次に、スキャン処理部471は、撮像部310の撮像画像をラスタスキャンして画素毎に処理を行うループL21を開始する(ステップS411)。以下では、ループL21で処理対象になっている画素を対象画素と称する。
スキャン処理部471は、対象画素の色が仕切り233の色か否かを判定する(ステップS412)。
【0095】
対象画素の色が仕切り233の色であると判定した場合(ステップS412:YES)、スキャン処理部471は、直近過去に仕切り233の色であると判定した画素の位置を読み出す(ステップS421)。
なお、対象画素の色が仕切り233の色であると最初に判定した場合(初回判定時)は、ステップS421を飛ばしてステップS422へ進む。
【0096】
次に、スキャン処理部471は、現在の対象画素の位置と、ステップS421で読み出した画素の位置との間隔を算出する(ステップS422)。例えば、
図10及び
図11を参照して説明したように、スキャン処理部471は、現在の対象画素の位置と、ステップS221で読み出した画素の間に位置する画素の数を当該間隔として算出する。
なお、対象画素の色が仕切り233の色であると最初に判定した場合(初回判定時)は、間隔を0に設定する。
【0097】
次に、スキャン処理部471は、ステップS422で得られた間隔が所定の閾値以下か否かを判定する(ステップS423)。
図11を参照して説明したように、仕切り233の色の画素の間隔としてあり得ない間隔を処理対象から除外するためである。
閾値以下であると判定した場合(ステップS423:YES)、スキャン処理部471は、仕切り233の色の画素の数を更新する(ステップS431)。具体的には、スキャン処理部471は、仕切り233の色の画素の数を計数するカウンタの値を1増加させる。
【0098】
また、スキャン処理部471は、仕切り233の色の画素の間隔の合計を更新する(ステップS432)。具体的には、スキャン処理部471は、仕切り233の色の画素の間隔の合計の値に、ステップS422で得られた間隔を加算する。
また、スキャン処理部471は、対象画素の位置を記憶する(ステップS433)。当該位置は、ステップS421で、直近過去に仕切り233の色であると判定した画素の位置として読み出される。
【0099】
次に、スキャン処理部471は、ループL21の終端処理を行う(ステップS434)。具体的には、スキャン処理部471は、撮像部310の撮像画像に含まれる全ての画素に対してループL21の処理を行ったか否かを判定する。全ての画素に対してループL21の処理を行ったと判定した場合、スキャン処理部471は、ループL21を終了する。一方、未処理の画素があると判定した場合、スキャン処理部471は、ステップS411に戻り引き続きループL21の処理を行う。
【0100】
ループL21を終了した後、スキャン処理部471は、仕切り233の色の画素の間隔の平均を算出する(ステップS441)。具体的には、スキャン処理部471は、仕切り233の色の画素の間隔の合計を(仕切り233の色の画素の計数値−1)で除算する。
ステップS441の後、
図13の処理を終了して
図12の処理へ戻る。
【0101】
一方、ステップS412で対象画素の色が仕切り233の色ではないと判定した場合(ステップS412:NO)、ステップS434へ遷移する。
また、ステップS423で、間隔が所定の閾値より大きいと判定した場合(ステップS423:NO)、ステップS434へ遷移する。
【0102】
図12のステップS302の処理の後、条件判定部472は、ステップS302でスキャン処理部471が取得した情報に基づいて、撮像画像に仕切り233のハニカム状の模様が含まれているか否かを判定する(ステップS303)。具体的には、条件判定部472は、
図10及び
図11を参照して説明したように、仕切り233の色の画素の数が所定の範囲内にあり、かつ、仕切り233の色の画素が現れる間隔の平均が所定の間隔以下か否かを判定する。
【0103】
撮像画像に仕切り233のハニカム状の模様が含まれていないと判定した場合(ステップS303:NO)、ステップS301へ戻る。この場合、画像処理装置3はステップS311での画像処理を開始しない。
一方、撮像画像に仕切り233のハニカム状の模様が含まれていると判定した場合(ステップS303:YES)、ステップS311へ遷移する。
ステップS311〜S332は、
図7のステップS101〜S122と同様である。
ステップS332の後、
図12の処理を終了する。
【0104】
以上のように、スキャン処理部471は、撮像部310の撮像画像をラスタスキャンして、仕切り233の色の画素が現れる間隔の平均を求める。そして、条件判定部472は、仕切り233の色の画素が現れる間隔の平均に基づく所定の条件が成立するか否か(例えば、仕切り233の色の画素が現れる平均が所定の閾値以下か否か)を判定する。画像処理部371は、所定の条件が成立すると条件判定部472が判定すると、撮像部310の撮像画像に対して画像処理を行う。
画像処理装置4によれば、条件が満たされない場合には画像処理部371による画像処理を抑制する点で、画像処理部371が処理対象とする画像を限定することができる。撮像部310が磁気ボード2を撮像した画像に対してはが画像処理部371が画像処理を行うことで、画像処理装置4に画像処理を行わせたいユーザが磁気ボードを有していない場合、磁気ボードを購入する可能性がある。
また、画像処理装置4は、撮像部310の撮像画像をスキャンして、所定色の画素が出現する間隔の平均を求めて閾値と比較する処理といった簡単な処理で、画像処理部371が画像処理を行うか否かを決定することができる。この点で、画像処理装置3の負荷を抑制することができ、また、画像処理装置3の処理能力が高くなくてもよい。
【0105】
また、スキャン処理部471は、仕切り233の色の画素の出現回数をさらに求める。そして、条件判定部472は、仕切り233の色の画素が現れる間隔の平均、及び、仕切り233の色の画素の出現回数に基づく所定の条件が成立するか否かを判定する。
画像処理装置3によれば、条件が満たされない場合には画像処理部371による画像処理を抑制する点で、画像処理部371が処理対象とする画像を限定することができる。撮像部310が磁気ボード2を撮像した画像に対してはが画像処理部371が画像処理を行うことで、画像処理装置4に画像処理を行わせたいユーザが磁気ボードを有していない場合、磁気ボードを購入する可能性がある。
また、画像処理装置4は、撮像部310の撮像画像をスキャンして、所定の色の画素の数を計数して閾値と比較する処理、及び、所定色の画素が出現する間隔の平均を求めて閾値と比較する処理といった簡単な処理で、画像処理部371が画像処理を行うか否かを決定することができる。この点で、画像処理装置4の負荷を抑制することができ、また、画像処理装置4の処理能力が高くなくてもよい。
【0106】
また、条件判定部472は、仕切り233によるハニカム状の模様に応じて設定された所定の条件が成立するか否かを判定する。これにより、画像処理装置4では、撮像部310の撮像画像をスキャンして、所定色の画素が出現する間隔の平均を求めて閾値と比較する処理といった簡単な処理で、仕切り233によるハニカム状の模様が撮像画像に含まれているか否かを判定することができる。
【0107】
なお、以上では、画像処理装置3又は3が、磁気ボード2に書かれた絵等を撮像して画像処理を行う場合を例に説明したが、画像処理装置3又は4の処理対象は磁気ボード2の画像に限らない。例えば、画像処理装置3又は4が、所定の模様の繰り返しを含む壁紙に書かれた絵を撮像した画像を処理するなど、磁気ボード2の画像以外の画像を処理対象とするようにしてもよい。
【0108】
なお、制御部370又は470の全部または一部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各部の処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。
また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【0109】
以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等も含まれる。
前記後段処理部は、前記ノイズ除去部が画素を消去した画像のうち所定の画素値の画素を周囲の画素に広げる塗り広げ処理部を備える、請求項1または請求項2に記載の画像処理装置。
前記後段処理部は、画面に表示される背景画像上に前記画像処理にて得られた画像を表示させ、当該画像処理にて得られた画像を当該背景画像上で動作させる処理を行う、請求項1から3のいずれか一項に記載の画像処理装置。
前記パタン判定部は、ハニカム状の所定の模様に基づいて決められた前記所定のパタンを満たすか否かを判定する、請求項1から4のいずれか一項に記載の画像処理装置。
本発明の第1の態様によれば、画像処理装置は、画像を取得する画像取得部と、前記画像のエッジ検出を行うエッジ検出部と、前記エッジ検出にて検出されたエッジ部分に含まれる画素の前記画像における配置が所定のパタンを満たすか否かを判定するパタン判定部と、前記パタン判定部が前記所定のパタンを満たすと判定した場合、当該パタンに対応する所定の画素を消去するノイズ除去部と、
本発明の第2の態様によれば、画像処理装置は、画像を取得する画像取得部と、前記画像のエッジ検出を行うエッジ検出部と、前記エッジ検出にて検出されたエッジ部分に含まれる画素の前記画像における配置が所定のパタンを満たすか否かを判定するパタン判定部と、
を示す指標値が、所定の度合い以上に大きいことを示す場合、前記画像取得部が取得した画像に対してさらに画像処理を行う後段処理部と、を備え、前記後段処理部は、前記パタン判定部が前記所定のパタンを満たすと判定した場合、当該パタンに対応する所定の画素を消去するノイズ除去部を備える。
本発明の第3の態様によれば、画像処理方法は、画像処理装置の画像処理方法であって、画像を取得する画像取得ステップと、前記画像のうち隣接する画素との画素値の差が所定の閾値以上であるエッジ部分を検出するエッジ検出ステップと、前記エッジ部分に含まれる画素の前記画像における配置が所定のパタンを満たすか否かを判定するパタン判定ステップと、前記パタン判定ステップにて前記所定のパタンを満たすと判定した画素を消去するノイズ除去ステップと、
を示す指標値が、前記所定のパタンを満たすと判定した度合いが所定の度合い以上に大きいことを示す場合、前記ノイズ除去ステップにて画素を消去した画像に対してさらに画像処理を行う後段処理ステップと、を含む。
本発明の第4の態様によれば、画像処理方法は、画像処理装置の画像処理方法であって、画像を取得する画像取得ステップと、前記画像のうち隣接する画素との画素値の差が所定の閾値以上であるエッジ部分を検出するエッジ検出ステップと、前記エッジ部分に含まれる画素の前記画像における配置が所定のパタンを満たすか否かを判定するパタン判定ステップと、
を示す指標値が、前記所定のパタンを満たすと判定した度合いが所定の度合い以上に大きいことを示す場合、前記画像取得ステップにて取得した画像に対してさらに画像処理を行う後段処理ステップと、を含み、前記後段処理ステップは、前記パタン判定ステップにて前記所定のパタンを満たすと判定した画素を消去するノイズ除去ステップを含む。
本発明の第5の態様によれば、プログラムは、コンピュータに、画像を取得する画像取得ステップと、前記画像のうち隣接する画素との画素値の差が所定の閾値以上であるエッジ部分を検出するエッジ検出ステップと、前記エッジ部分に含まれる画素の前記画像における配置が所定のパタンを満たすか否かを判定するパタン判定ステップと、前記パタン判定ステップにて前記所定のパタンを満たすと判定した画素を消去するノイズ除去ステップと、
を示す指標値が、前記所定のパタンを満たすと判定した度合いが所定の度合い以上に大きいことを示す場合、前記ノイズ除去ステップにて画素を消去した画像に対してさらに画像処理を行う後段処理ステップと、を実行させるためのプログラムである。
本発明の第6の態様によれば、プログラムは、コンピュータに、画像を取得する画像取得ステップと、前記画像のうち隣接する画素との画素値の差が所定の閾値以上であるエッジ部分を検出するエッジ検出ステップと、前記エッジ部分に含まれる画素の前記画像における配置が所定のパタンを満たすか否かを判定するパタン判定ステップと、
を示す指標値が、前記所定のパタンを満たすと判定した度合いが所定の度合い以上に大きいことを示す場合、前記画像取得ステップにて取得した画像に対してさらに画像処理を行う後段処理ステップと、を実行させ、前記後段処理ステップでは、前記パタン判定ステップにて前記所定のパタンを満たすと判定した画素を消去するノイズ除去ステップを実行させるためのプログラムである。