(57)【特許請求の範囲】
【請求項１】
画像を取得する画像取得部と、
前記画像のエッジ検出を行うエッジ検出部と、
前記エッジ検出にて検出されたエッジ部分に含まれる画素の前記画像における配置が所定のパタンを満たすか否かを判定するパタン判定部と、
前記パタン判定部が前記所定のパタンを満たすと判定した場合、当該パタンに対応する所定の画素を消去するノイズ除去部と、
画像全体で、前記パタン判定部が、前記エッジ部分に含まれる画素の配置が所定のパタンを満たすと判定した回数を示す指標値が、所定の度合い以上に大きいことを示す場合、前記ノイズ除去部が画素を消去した画像に対してさらに画像処理を行う後段処理部と、
を備える画像処理装置。
【請求項２】
画像を取得する画像取得部と、
前記画像のエッジ検出を行うエッジ検出部と、
前記エッジ検出にて検出されたエッジ部分に含まれる画素の前記画像における配置が所定のパタンを満たすか否かを判定するパタン判定部と、
画像全体で、前記パタン判定部が、前記エッジ部分に含まれる画素の配置が所定のパタンを満たすと判定した回数を示す指標値が、所定の度合い以上に大きいことを示す場合、前記画像取得部が取得した画像に対してさらに画像処理を行う後段処理部と、
を備え、
前記後段処理部は、前記パタン判定部が前記所定のパタンを満たすと判定した場合、当該パタンに対応する所定の画素を消去するノイズ除去部を備える
画像処理装置。
【請求項３】
前記後段処理部は、前記ノイズ除去部が画素を消去した画像のうち所定の画素値の画素を周囲の画素に広げる塗り広げ処理部を備える、請求項１または請求項２に記載の画像処理装置。
【請求項４】
前記後段処理部は、画面に表示される背景画像上に前記画像処理にて得られた画像を表示させ、当該画像処理にて得られた画像を当該背景画像上で動作させる処理を行う、請求項１から３のいずれか一項に記載の画像処理装置。
【請求項５】
前記パタン判定部は、ハニカム状の所定の模様に基づいて決められた前記所定のパタンを満たすか否かを判定する、請求項１から４のいずれか一項に記載の画像処理装置。
【請求項６】
画像取得部が取得した前記画像をスキャンして所定の色の画素が現れる間隔の平均を求めるスキャン処理部と、
前記所定の色の画素が現れる間隔の平均に基づく所定の条件が成立するか否かを判定する条件判定部と、
を備え、
前記エッジ検出部は、前記所定の条件が成立すると前記条件判定部が判定した場合に、前記エッジ部分を検出する、
請求項１から５のいずれか一項に記載の画像処理装置。
【請求項７】
前記スキャン処理部は、前記所定の色の画素の出現回数をさらに求め、
前記条件判定部は、前記所定の色の画素が現れる間隔の平均、及び、前記所定の色の画素の出現回数に基づく所定の条件が成立するか否かを判定する、
請求項６に記載の画像処理装置。
【請求項８】
前記条件判定部は、所定のハニカム状の模様に応じて設定された前記所定の条件が成立するか否かを判定する、
請求項６または請求項７に記載の画像処理装置。
【請求項９】
画像処理装置の画像処理方法であって、
画像を取得する画像取得ステップと、
前記画像のうち隣接する画素との画素値の差が所定の閾値以上であるエッジ部分を検出するエッジ検出ステップと、
前記エッジ部分に含まれる画素の前記画像における配置が所定のパタンを満たすか否かを判定するパタン判定ステップと、
前記パタン判定ステップにて前記所定のパタンを満たすと判定した画素を消去するノイズ除去ステップと、
画像全体について、前記パタン判定ステップにて、前記エッジ部分に含まれる画素の配置が所定のパタンを満たすと判定した回数を示す指標値が、前記所定のパタンを満たすと判定した度合いが所定の度合い以上に大きいことを示す場合、前記ノイズ除去ステップにて画素を消去した画像に対してさらに画像処理を行う後段処理ステップと、
を含む画像処理方法。
【請求項１０】
画像処理装置の画像処理方法であって、
画像を取得する画像取得ステップと、
前記画像のうち隣接する画素との画素値の差が所定の閾値以上であるエッジ部分を検出するエッジ検出ステップと、
前記エッジ部分に含まれる画素の前記画像における配置が所定のパタンを満たすか否かを判定するパタン判定ステップと、
画像全体について、前記パタン判定ステップにて、前記エッジ部分に含まれる画素の配置が所定のパタンを満たすと判定した回数を示す指標値が、前記所定のパタンを満たすと判定した度合いが所定の度合い以上に大きいことを示す場合、前記画像取得ステップにて取得した画像に対してさらに画像処理を行う後段処理ステップと、
を含み、
前記後段処理ステップは、前記パタン判定ステップにて前記所定のパタンを満たすと判定した画素を消去するノイズ除去ステップを含む、
画像処理方法。
【請求項１１】
コンピュータに、
画像を取得する画像取得ステップと、
前記画像のうち隣接する画素との画素値の差が所定の閾値以上であるエッジ部分を検出するエッジ検出ステップと、
前記エッジ部分に含まれる画素の前記画像における配置が所定のパタンを満たすか否かを判定するパタン判定ステップと、
前記パタン判定ステップにて前記所定のパタンを満たすと判定した画素を消去するノイズ除去ステップと、
画像全体について、前記パタン判定ステップにて、前記エッジ部分に含まれる画素の配置が所定のパタンを満たすと判定した回数を示す指標値が、前記所定のパタンを満たすと判定した度合いが所定の度合い以上に大きいことを示す場合、前記ノイズ除去ステップにて画素を消去した画像に対してさらに画像処理を行う後段処理ステップと、
を実行させるためのプログラム。
【請求項１２】
コンピュータに、
画像を取得する画像取得ステップと、
前記画像のうち隣接する画素との画素値の差が所定の閾値以上であるエッジ部分を検出するエッジ検出ステップと、
前記エッジ部分に含まれる画素の前記画像における配置が所定のパタンを満たすか否かを判定するパタン判定ステップと、
画像全体について、前記パタン判定ステップにて、前記エッジ部分に含まれる画素の配置が所定のパタンを満たすと判定した回数を示す指標値が、前記所定のパタンを満たすと判定した度合いが所定の度合い以上に大きいことを示す場合、前記画像取得ステップにて取得した画像に対してさらに画像処理を行う後段処理ステップと、
を実行させ、
前記後段処理ステップでは、前記パタン判定ステップにて前記所定のパタンを満たすと判定した画素を消去するノイズ除去ステップを実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法及びプログラムに関する。
【背景技術】
【０００２】
絵や文字などを筆記可能な装置の１つに磁気ボードがある（特許文献１参照）。磁気ボードは、鉄粉が収納された小室を多数有している。磁石を備えたペンでユーザが磁気ボードの表面をなぞると、鉄粉が磁気ボードの表面内側（小室内側）に付着する。このように鉄粉が磁気ボードの表面内側に付着することで、ユーザが書いた絵や文字などが表示される。また、磁気ボードの表面内側に付着した鉄粉を磁石にて底面側（表面と反対側）へ移動させることで、絵や文字などが消去される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】実開平２−１９５９０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
画像処理を行う装置に、処理対象の絵等（絵でも、字でも、記号でも、これらの組み合わせでもよい）が所定の面に描かれている場合には画像処理を行わせ、他の面に描かれている場合には画像処理を抑制させたい場合がある。
例えば、画像処理を行うアプリケーション（アプリケーションプログラム）を磁気ボード用に提供する場合、処理対象の絵等が磁気ボードに描かれているときは、当該アプリケーションをインストールされた装置が画像処理を実行するようにする。一方、処理対象の絵等が磁気ボード以外に描かれているときは、当該装置が画像処理の実行を抑制するようにする。これにより、当該アプリケーションに画像処理を行わせたいユーザが磁気ボードを有していない場合、磁気ボードを購入する可能性がある。
【０００５】
画像処理を行う装置またはアプリケーション（アプリケーションプログラム）が画像処理を行うか否かの判定を、例えば処理対象の絵等が描かれる面に所定のマークを付すなど、絵等が描かれる面を識別するための情報を新たに設ける必要無しに行えれば、当該情報を新たに設ける負担を避けることができる。
【０００６】
本発明は、処理対象の絵等が描かれる面を識別するための情報を新たに設ける必要無しに、処理対象の絵等が所定の面に描かれているか否かに応じて、画像処理を行うか否かを判定することができる画像処理装置、画像処理方法及びプログラムを提供する。
【課題を解決するための手段】
【０００７】
本発明の第１の態様によれば、画像処理装置は、画像を取得する画像取得部と、前記画像のエッジ検出を行うエッジ検出部と、前記エッジ検出にて検出されたエッジ部分に含まれる画素の前記画像における配置が所定のパタンを満たすか否かを判定するパタン判定部と、前記パタン判定部が前記所定のパタンを満たすと判定した場合、当該パタンに対応する所定の画素を消去するノイズ除去部と、画像全体で、前記パタン判定部が、前記エッジ部分に含まれる画素の配置が所定のパタンを満たすと判定した回数を示す指標値が、所定の度合い以上に大きいことを示す場合、前記ノイズ除去部が画素を消去した画像に対してさらに画像処理を行う後段処理部と、を備える。
【０００８】
本発明の第２の態様によれば、画像処理装置は、画像を取得する画像取得部と、前記画像のエッジ検出を行うエッジ検出部と、前記エッジ検出にて検出されたエッジ部分に含まれる画素の前記画像における配置が所定のパタンを満たすか否かを判定するパタン判定部と、画像全体で、前記パタン判定部が、前記エッジ部分に含まれる画素の配置が所定のパタンを満たすと判定した回数を示す指標値が、所定の度合い以上に大きいことを示す場合、前記画像取得部が取得した画像に対してさらに画像処理を行う後段処理部と、を備え、前記後段処理部は、前記パタン判定部が前記所定のパタンを満たすと判定した場合、当該パタンに対応する所定の画素を消去するノイズ除去部を備える。
【０００９】
前記後段処理部は、前記ノイズ除去部が画素を消去した画像のうち所定の画素値の画素を周囲の画素に広げる塗り広げ処理部を備えるようにしてもよい。
【００１０】
前記後段処理部は、画面に表示される背景画像上に前記画像処理にて得られた画像を表示させ、当該画像処理にて得られた画像を当該背景画像上で動作させる処理を行うようにしてもよい。
【００１１】
前記パタン判定部は、ハニカム状の所定の模様に基づいて決められた前記所定のパタンを満たすか否かを判定するようにしてもよい。
【００１２】
前記画像処理装置は、画像取得部が取得した前記画像をスキャンして所定の色の画素が現れる間隔の平均を求めるスキャン処理部と、前記所定の色の画素が現れる間隔の平均に基づく所定の条件が成立するか否かを判定する条件判定部と、を備え、前記エッジ検出部は、前記所定の条件が成立すると前記条件判定部が判定した場合に、前記エッジ部分を検出するようにしてもよい。
【００１３】
前記スキャン処理部は、前記所定の色の画素の出現回数をさらに求め、前記条件判定部は、前記所定の色の画素が現れる間隔の平均、及び、前記所定の色の画素の出現回数に基づく所定の条件が成立するか否かを判定するようにしてもよい。
【００１４】
前記条件判定部は、所定のハニカム状の模様に応じて設定された前記所定の条件が成立するか否かを判定するようにしてもよい。
【００１５】
本発明の第３の態様によれば、画像処理方法は、画像処理装置の画像処理方法であって、画像を取得する画像取得ステップと、前記画像のうち隣接する画素との画素値の差が所定の閾値以上であるエッジ部分を検出するエッジ検出ステップと、前記エッジ部分に含まれる画素の前記画像における配置が所定のパタンを満たすか否かを判定するパタン判定ステップと、前記パタン判定ステップにて前記所定のパタンを満たすと判定した画素を消去するノイズ除去ステップと、画像全体について、前記パタン判定ステップにて、前記エッジ部分に含まれる画素の配置が所定のパタンを満たすと判定した回数を示す指標値が、前記所定のパタンを満たすと判定した度合いが所定の度合い以上に大きいことを示す場合、前記ノイズ除去ステップにて画素を消去した画像に対してさらに画像処理を行う後段処理ステップと、を含む。
【００１６】
本発明の第４の態様によれば、画像処理方法は、画像処理装置の画像処理方法であって、画像を取得する画像取得ステップと、前記画像のうち隣接する画素との画素値の差が所定の閾値以上であるエッジ部分を検出するエッジ検出ステップと、前記エッジ部分に含まれる画素の前記画像における配置が所定のパタンを満たすか否かを判定するパタン判定ステップと、画像全体について、前記パタン判定ステップにて、前記エッジ部分に含まれる画素の配置が所定のパタンを満たすと判定した回数を示す指標値が、前記所定のパタンを満たすと判定した度合いが所定の度合い以上に大きいことを示す場合、前記画像取得ステップにて取得した画像に対してさらに画像処理を行う後段処理ステップと、を含み、前記後段処理ステップは、前記パタン判定ステップにて前記所定のパタンを満たすと判定した画素を消去するノイズ除去ステップを含む。
【００１７】
本発明の第５の態様によれば、プログラムは、コンピュータに、画像を取得する画像取得ステップと、前記画像のうち隣接する画素との画素値の差が所定の閾値以上であるエッジ部分を検出するエッジ検出ステップと、前記エッジ部分に含まれる画素の前記画像における配置が所定のパタンを満たすか否かを判定するパタン判定ステップと、前記パタン判定ステップにて前記所定のパタンを満たすと判定した画素を消去するノイズ除去ステップと、画像全体について、前記パタン判定ステップにて、前記エッジ部分に含まれる画素の配置が所定のパタンを満たすと判定した回数を示す指標値が、前記所定のパタンを満たすと判定した度合いが所定の度合い以上に大きいことを示す場合、前記ノイズ除去ステップにて画素を消去した画像に対してさらに画像処理を行う後段処理ステップと、を実行させるためのプログラムである。
【００１８】
本発明の第６の態様によれば、プログラムは、コンピュータに、画像を取得する画像取得ステップと、前記画像のうち隣接する画素との画素値の差が所定の閾値以上であるエッジ部分を検出するエッジ検出ステップと、前記エッジ部分に含まれる画素の前記画像における配置が所定のパタンを満たすか否かを判定するパタン判定ステップと、画像全体について、前記パタン判定ステップにて、前記エッジ部分に含まれる画素の配置が所定のパタンを満たすと判定した回数を示す指標値が、前記所定のパタンを満たすと判定した度合いが所定の度合い以上に大きいことを示す場合、前記画像取得ステップにて取得した画像に対してさらに画像処理を行う後段処理ステップと、を実行させ、前記後段処理ステップでは、前記パタン判定ステップにて前記所定のパタンを満たすと判定した画素を消去するノイズ除去ステップを実行させるためのプログラムである。
【発明の効果】
【００１９】
本発明によれば、処理対象の絵等が描かれる面を識別するための情報を新たに設ける必要無しに、画像処理を行う装置は、処理対象の絵等が所定の面に描かれているか否かに応じて、画像処理を行うか否かを判定することができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の第１の実施形態における画像処理システムの機能構成を示す概略ブロック図である。
【図２】同実施形態における磁気ボードを表面側から見た外形の例を示す概略外形図である。
【図３】同実施形態における表示パネルの内部構造の概略を示す説明図である。
【図４】同実施形態における表示パネルを表面シート側から見た外観の概略例を示す説明図である。
【図５】同実施形態における画像処理装置の機能構成を示す概略ブロック図である。
【図６】同実施形態のエッジ検出部が生成するエッジ画像における画素値の例を示す説明図である。
【図７】同実施形態における磁気ボードに書かれた絵に対して画像処理装置が行う処理の手順の例を示すフローチャートである。
【図８】同実施形態における画像処理装置が撮像部の撮像画像に対して画像処理を行う手順の例を示すフローチャートである。
【図９】本発明の第２の実施形態における画像処理装置の機能構成を示す概略ブロック図である。
【図１０】同実施形態のスキャン処理部によるラスタスキャンにて所定の色の画素が現れるパタンの第１の例を示す説明図である。
【図１１】スキャン処理部によるラスタスキャンにて所定の色の画素が現れるパタンの第２の例を示す説明図である。
【図１２】同実施形態における磁気ボードに書かれた絵に対して画像処理装置が行う処理の手順の例を示すフローチャートである。
【図１３】同実施形態のスキャン処理部が、撮像画像にハニカム状の模様が含まれているか否かの判定用の情報を取得する処理手順の例を示すフローチャートである。
【発明を実施するための形態】
【００２１】
以下、本発明の実施形態を説明するが、以下の実施形態は請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【００２２】
＜第１の実施形態＞
図１は、本発明の第１の実施形態における画像処理システムの機能構成を示す概略ブロック図である。同図に示すように画像処理システム１は、磁気ボード２と、画像処理装置３とを備える。
【００２３】
画像処理システム１は、ユーザが磁気ボード２に書いたもの（絵又は文字など任意のものでよい）を撮像して画像処理する装置である。具体的には、ユーザが磁気ボード２用のペンで絵又は文字などを書くと、磁気ボード２がその絵又は文字などを表示する。また、画像処理装置３は撮像部を備えており、絵又は文字などを表示している磁気ボード２を撮像し、撮像画像に対して画像処理を行う。
以下では、ユーザが磁気ボード２に書いたものを絵等と表記する。
画像処理装置３は、例えばスマートフォンなどカメラ付きの情報処理装置に画像処理装置３用のアプリケーションプログラムをインストールすることで実現されていてもよい。あるいは、画像処理装置３が画像処理装置３専用の装置として構成されていてもよい。
【００２４】
図２は、磁気ボード２を表面側から見た外形の例を示す概略外形図である。同図に示すように磁気ボード２は、磁気ボード本体２１０と、黒ペン２２１と、赤ペン２２２と、スタンプ２２３とを備える。磁気ボード本体２１０は、表示パネル２１１と、消去用スライダー２１２とを備える。
表示パネル２１１は、磁気ボード２用のペンでユーザが書いた絵等を表示する。
【００２５】
図３は、表示パネル２１１の内部構造の概略を示す説明図である。同図に示すように、表示パネル２１１は、表面シート２３１と底面シート２３２とを仕切り２３３で仕切って構成されたセル（小室）２３４を複数備えている。セル２３４の各々には白色の液体（例えば、白色の二酸化チタンが混入されたオイル）とマイクロマグネット（小さい磁石）２４１とが封入されている。
【００２６】
セル２３４ｃのようにマイクロマグネット２４１が表面シート２３１から離れている状態では、ユーザが表示パネル２１１を表面シート２３１側から見ると、液体の色により白く見える。一方、セル２３４ａ及びセル２３４ｂのようにマイクロマグネット２４１が表面シート２３１に付着している状態では、ユーザが表示パネル２１１を表面シート２３１側から見ると、マイクロマグネット２４１の色が見える。なお、ここでいう色は、灰色または黒のように無彩色であってもよい。
【００２７】
マイクロマグネット２４１は、Ｎ極側２４２を黒く塗られ、Ｓ極側２４３を赤く塗られている。このため、セル２３４ａのマイクロマグネット２４１ａのように、Ｎ極側２４２が表面シート２３１に付着している状態では、ユーザが表示パネル２１１を表面シート２３１側から見ると、Ｎ極側２４２の色により黒く見える。一方、セル２３４ｂのマイクロマグネット２４１ｂのように、Ｓ極側２４３が表面シート２３１に付着している状態では、ユーザが表示パネル２１１を表面シート２３１側から見ると、Ｓ極側２４３の色により赤く見える。
【００２８】
但し、マイクロマグネット２４１の色は上述した黒及び赤に限らず、いろいろな色とすることができる。例えば、マイクロマグネット２４１が、黒１色で塗られていてもよいし、青及び赤など黒及び赤以外の色で塗られていてもよい。
あるいは、マイクロマグネット２４１がセル２３４毎に異なる色で塗られていてもよい。例えば、複数のセル２３４を纏めたセル群毎に、マイクロマグネット２４１が異なる色で塗られていてもよい。
【００２９】
図４は、表示パネル２１１を表面シート２３１側から見た外観の概略例を示す説明図である。同図に示すように、仕切り２３３はハニカム状になっている。すなわち、正六角形で同じ大きさの複数のセル２３４が並んでいる。
但し、仕切り２３３の形状はハニカム状に限らない。同様の形状かつ同様の大きさの複数のセルが並んでいればよい。
【００３０】
図３を参照して説明したように、セル２３４のうち、Ｎ極側２４２が表面シート２３１に付着しているセル２３４ａは、黒く見える。一方、セル２３４のうち、Ｓ極側２４３が表面シート２３１に付着しているセル２３４ｂは、赤く見える。また、セル２３４のうち、マイクロマグネット２４１が表面シート２３１から離れて位置しているセル２３４ｃは、白く見える。
一方、仕切り２３３は、例えば緑に見えるなど、セル２３４ａの黒、セル２３４ｂの赤、セル２３４ｃの白のいずれとも異なる色に見える。
【００３１】
なお、１つのセル２３４の一部分でのみ、マイクロマグネット２４１のＮ極側２４２が表面シート２３１に付着することがあり得る。この場合、１つのセル２３４の一部分が黒く見え、当該セルの残りの部分は白く見える。同様に、１つのセル２３４の一部分でのみ、マイクロマグネット２４１のＳ極側２４３が表面シート２３１に付着することがあり得る。この場合、１つのセル２３４の一部分が赤く見え、当該セルの残りの部分は白く見える。
【００３２】
消去用スライダー２１２は、表示パネル２１１の表示を消すのに用いられる。具体的には、消去用スライダー２１２は、底面シート２３２の外側（底面シート２３２から見て表面シート２３１と反対側）に、図２の上下方向に設けられた棒と、当該棒に付された消去用磁石と、当該棒の端部に設けられたつまみとを備える。ユーザが、つまみを図２の左右方向に移動させることで、消去用磁石も左右方向に移動する。消去用磁石は、マイクロマグネット２４１を底面シート２３２に付着させる。これによって、ユーザが表示パネル２１１を表面シート２３１側から見た場合、セル２３４が白く見える。
消去用磁石は、表示パネル２１１の上端から下端までにわたって棒に付されており、ユーザが、つまみを可動領域の左端から右端まで移動させることで、消去用磁石が表示パネル２１１の全てのセル２３４でマイクロマグネット２４１を底面シートに付着させる。これにより、ユーザが表示パネル２１１に書いた絵等が消去される。
【００３３】
黒ペン２２１、赤ペン２２２は、いずれも磁気ボード２用のペンである。
黒ペン２２１には、Ｓ極側を黒ペン２２１の先端側にして磁石が設けられている。ユーザが、黒ペン２２１にて表示パネル２１１をなぞると、マイクロマグネット２４１のＮ極側２４２が表面シート２３１に付着する。これにより、図３を参照して説明したように、ユーザが表示パネル２１１を表面シート２３１側から見た場合、セル２３３が黒く見える。
【００３４】
また、赤ペン２２２には、Ｎ極側を黒ペン２２１の先端側にして磁石が設けられている。ユーザが、赤ペン２２２にて表示パネル２１１をなぞると、マイクロマグネット２４１のＳ極側２４２が表面シート２３１に付着する。これにより、図３を参照して説明したように、ユーザが表示パネル２１１を表面シート２３１側から見た場合、セル２３３が赤く見える。
【００３５】
スタンプ２２３は、黒ペン２２１及び赤ペン２２２と同様、ユーザが表示パネル２１１に絵などを書くのに用いられる。黒ペン２２１及び赤ペン２２２と同様、スタンプ２２３にも磁石が設けられており、ユーザがスタンプ２２３を表示パネル２１１に近付けると、マイクロマグネット２４１が表面シート２３１に付着する。これにより、ユーザが表示パネル２１１を表面シート２３１側から見た場合、極性に応じてセル２３３が黒く又は赤く見える。
【００３６】
図５は、画像処理装置３の機能構成を示す概略ブロック図である。同図に示すように画像処理装置３は、撮像部３１０と、表示部３２０と、操作入力部３３０と、記憶部３６０と、制御部３７０とを備える。制御部３７０は、画像処理部３７１を備える。画像処理部３７１は、前段処理部３８０と、後段処理部３９０とを備える。前段処理部３８０は、エッジ検出部３８１と、パタン判定部３８２と、ノイズ除去部３８３とを備える。後段処理部３９０は、塗り広げ処理部３９１と、余白透明化処理部３９２と、閉領域白塗り処理部３９３とを備える。
【００３７】
撮像部３１０は、カメラを備えて撮像を行う。特に、撮像部３１０は、カメラを磁気ボード２に向けられた状態で磁気ボード２を撮像する。撮像部３１０は画像取得部の例に該当し、撮像により画像を取得する。なお、以下では撮像部３１０が動画像を撮像する場合を例に説明するが、撮像部３１０がユーザ操作（シャッター操作）に従って静止画像を撮像するようにしてもよい。
【００３８】
表示部３２０は、例えば液晶パネル等の表示画面を有し、各種画像を表示する。特に、表示部３２０は、撮像部３１０が撮像した画像に対して画像処理部３７１が画像処理を行って得られた画像を表示する。
操作入力部３３０は、例えば、表示部３２０の表示画面に設けられてタッチパネルを構成するタッチセンサ、又は、テンキー及び方向ボタンなどの入力デバイスを備え、ユーザ操作を受け付ける。
【００３９】
記憶部３６０は、画像処理装置３が備える記憶デバイスを含んで構成され、各種データを記憶する。
制御部３７０は、画像処理装置３の各部を制御して各種処理を行う。制御部３７０は、例えば画像処理装置３が備えるＣＰＵ（Central Processing Unit、中央処理装置）が記憶部３６０からプログラムを読み出して実行することで実現される。
【００４０】
画像処理部３７１は、撮像部３１０が磁気ボード２を撮像した撮像画像に対して画像処理を行い、画像処理後の画像を表示部３２０の表示画面に表示させる。例えば、画像処理部３７１は、背景画像として水槽内の画像を表示部３２０の表示画面に表示させ、画像処理にて得られた画像を魚のように泳がせる画像を表示部３２０の表示画面に表示させる。これにより、画像処理装置３は、ユーザが磁気ボード２に書いた絵等画像を水槽内で泳がせる画像を表示する機能を提供する。
【００４１】
前段処理部３８０は、撮像部３１０の撮像画像から、磁気ボード２のハニカム状の模様の像を構成する画素を検出して消去し、画素の消去状況に基づいて、撮像部３１０の撮像画像が磁気ボード２を撮像した画像か否かを判定する。
エッジ検出部３８１は、撮像部３１０の撮像画像のうちエッジ部分を検出してエッジ画像を生成する。ここでいうエッジ部分は、当該部分の画素の画素値が隣接する画素の画素値と所定の条件以上に大きく変化している部分である。
【００４２】
エッジ検出部３８１が画像のエッジ部分を検出する方法は、特定の方法に限定されない。例えば、エッジ検出部３８１が、ソーベルフィルタ（Sobel Filter）、ラプラシアンフィルタ（Laplacian Filter）、又は、キャニーフィルタ（Canny Filter）など、既存のエッジ検出フィルタを備えて画像のエッジ部分を検出するようにしてもよい。
また、ここでいうエッジ画像とは、元の画像の各画素を「エッジ」又は「エッジ以外」のいずれかを示す画素に置き換えた画像である。従って、エッジ画像の画素と元の画像の画素とは１対１に対応する。以下では、「エッジ」を示す画素を画素値「１」で示し、「エッジ以外」を示す画素を画素値「０」で示す。
【００４３】
パタン判定部３８２は、撮像部３１０の撮像画像におけるエッジ部分に含まれる画素の配置が、ハニカム状の所定の模様に基づいて決められた所定のパタンを満たすか否かを判定する。ここでいうハニカム状の所定の模様に基づいて決められた所定のパタンとは、撮像部３１０の撮像画像における仕切り２３３の像によるハニカム状の模様を想定して予め決められているパタンである。以下では、ハニカム状の所定の模様に基づいて決められた所定のパタンを、ハニカム判定パタンと称する。
【００４４】
ここで、図４の例のように磁気ボード２の表示パネル２１１の仕切り２３３の太さは、セル２３４の幅に対して十分細い。このため、撮像部３１０の撮像画像が磁気ボード２を撮像した画像である場合、エッジ検出部３８１は、仕切り２３３の像全体をエッジ部分として検出する。
一方、セル２３４の色は、典型的には図４に示されるように１つのセル２３４全体で同じ色になる。図４の例では、セル２３４ａ全体が黒く見える。また、セル２３４ｂ全体が赤く見え、セル２３４ｃ全体が白く見える。従って、エッジ検出部３８１は、セル２３４の輪郭部分がエッジ部分として検出するが、セル２３４の内側についてはエッジ以外の部分と判定する。
【００４５】
図６は、エッジ検出部３８１が生成するエッジ画像における画素値の例を示す説明図である。同図では、エッジ検出部３８１が生成したエッジ画像の一部の画素の画素値を、撮像部３１０が磁気ボード２を撮像した画像の対応部分上に示している。画素Ｐ１０１〜Ｐ１１４のうち、Ｐ１０１、Ｐ１０５、Ｐ１１０及びＰ１１４の画素値は、エッジ部分を示す「１」になっている。それ以外の画素（Ｐ１０２、Ｐ１０３、Ｐ１０４、Ｐ１０６、Ｐ１０７、Ｐ１０８、Ｐ１０９、Ｐ１１１、Ｐ１１２及びＰ１１３）の画素値は、エッジ以外の部分を示す「０」になっている。
【００４６】
図６の例のようなエッジ部分の画素の配置に基づいて、ハニカム判定パタンの１つは、例えば「１０００１」のように、エッジ部分の画素とエッジ部分の画素との間に複数のエッジ以外の部分の画素が連続して出現するパタンとして設定されている。以下、このハニカム判定パタンをハニカム判定パタンＡと称する。
ハニカム判定パタンＡに出現するエッジ以外の部分の画素の数の上限が設定されていてもよいし、上限は任意となっていてもよい。
【００４７】
一方、撮像部３１０に対する磁気ボード２を撮像する向きによっては、「００１１１１０００」のように複数のエッジ部分以外の画素と複数のエッジ部分以外の画素との間に所定数以上のエッジ部分の画素が連続して出現する。そこで、ハニカム判定パタンの１つは、複数のエッジ部分以外の画素と複数のエッジ部分以外の画素との間に所定数以上のエッジ部分の画素が連続して出現するパタンとして設定されている。以下、このハニカム判定パタンをハニカム判定パタンＢと称する。
【００４８】
パタン判定部３８２は、エッジ検出部３８１が生成したエッジ画像をラスタスキャンしてハニカム判定パタンを検出する。パタン判定部３８２は、設定されているハニカム判定パタンの少なくともいずれか１つを満たす（マッチする）と判定すると、ハニカム判定パタンを満たすと判定する。
ここで、エッジ画像におけるエッジ部分の画素の配置は元の画像（撮像部３１０の撮像画像）におけるエッジ部分の配置と同一である。従って、パタン判定部３８２は、撮像部３１０の撮像画像におけるエッジ部分に含まれる画素の配置が、ハニカム判定パタンを満たすか否かを判定しているといえる。
【００４９】
ノイズ除去部３８３は、パタン判定部３８２が所定のパタンを満たすと判定した場合、当該パタンに対応する所定の画素を消去する。具体的には、ノイズ除去部３８３は、撮像部３１０の撮像画像の画素のうち、ハニカム判定パタンで画素値が１になっている画素に対応する画素を消去する。
なお、ここでいう画素の消去とは、当該画素の画素値を余白部分の画素値（例えば、白を示す画素値または透明を示す画素値）に書き換えることである。図４の例の場合、セル２３４ｃの色である白が余白部分の色に該当し、ノイズ除去部３８３は、消去する画素の画素値を、白を示す画素値に書き換える。
【００５０】
後段処理部３９０は、パタン判定部３８２がハニカム判定パタンを満たすと判定した度合いを示す指標値が、所定の度合い以上に大きいことを示す場合、ノイズ除去部３８３が画素を消去した画像に対してさらに画像処理を行う。当該判定は、撮像部３１０の撮像画像が磁気ボード２を撮像した画像か否かの判定の例に該当し、後段処理部３９０は、撮像部３１０の撮像画像が磁気ボード２を撮像した画像であると判定した場合に、当該画像に対してさらに画像処理を行う。
ここで、パタン判定部３８２がハニカム判定パタンを満たすと判定した度合いを示す指標値は、例えば、パタン判定部３８２は、エッジ画像全体でハニカム判定パタンを検出した回数であってもよいし、ノイズ除去部３８３が消去した画素の数であってもよい。
【００５１】
塗り広げ処理部３９１は、ノイズ除去部３８３が画素を消去した画像のうち所定の画素値の画素の色を周囲の画素に広げる。具体的には、塗り広げ処理部３９１は、広げる元の画素の画素値を広げる先の画素に書き込む。以下では、塗り広げ処理部３９１が行う当該処理を塗り広げ処理と称する。塗り広げ処理によって塗り広げ処理部３９１は、撮像部３１０の撮像画像からノイズ除去部３８３が画素を消去して生じた隙間を埋める。
【００５２】
ノイズ除去部３８３がエッジ部分の画素を消去した画像では、消去されたエッジ部分が隙間となっている。これに対して、塗り広げ処理部３９１が塗り広げ処理を行うことで、隙間を埋めることができる。特に、ユーザが磁気ボード２に書いた線が仕切り２３３の部分では途切れて隙間が生じていたのに対し、塗り広げ処理部３９１が塗り広げ処理を行うことで、隙間のない線の像を得られる。これにより、ユーザが線で囲った閉領域を検出し易くなり、例えば、画像処理部３７１が、当該閉領域を塗りつぶす処理を行うことができる。
【００５３】
余白透明化処理部３９２は、塗り広げ処理部３９１が塗り広げ処理を行った画像に対して余白を透明化する処理を行う。具体的には、余白透明化処理部３９２は、塗り広げ処理部３９１が塗り広げ処理を行った画像のうち、閉領域の部分及び塗り潰されている部分を除いた部分を余白部分として、当該余白部分の色を透明に設定する（すなわち、余白部分の画素値を、透明を示す画素値に書き換える）。
【００５４】
閉領域白塗り処理部３９３は、余白透明化処理部３９２が余白を透明化した画像に対して閉領域の部分を白塗りする処理を行う。具体的には、閉領域白塗り処理部３９３は、閉領域の部分を検出し、検出した閉領域の部分のうち黒の部分と赤の部分とを除いた部分の色を白にする。
以上の処理により、後段処理部３９０は、撮像部３１０の撮像画像から余白部分を消去して、ユーザが磁気ボード２に描いた絵の像の部分を抽出する。例えば、ユーザが磁気ボード２に魚の絵を描いた場合、後段処理部３９０は、撮像部３１０の撮像画像から余白部分を消去して、魚の絵の部分を抽出する。
【００５５】
なお、後段処理部３９０が、ノイズ除去部３８３を含んで構成されていてもよい。従って、後段処理部３９０が行う画像処理に、ノイズ除去部３８３が行う処理が含まれていてもよい。
【００５６】
次に、図７〜図８を参照して画像処理装置３の動作について説明する。
図７は、磁気ボード２に書かれた絵に対して画像処理装置３が行う処理の手順の例を示すフローチャートである。画像処理装置３は、例えば処理開始を指示するユーザ操作に従って図７の処理を開始する。
図７の処理にて、画像処理装置３は、撮像部３１０の撮像画像に対して画像処理を行う（ステップＳ１０１）。
【００５７】
図８は、画像処理装置３が撮像部３１０の撮像画像に対して画像処理を行う手順の例を示すフローチャートである。画像処理装置３は、図７のステップＳ１０１にて図８の処理を行う。
図８の処理にて撮像部３１０は撮像画像を取得する（ステップＳ２０１）。例えば撮像部３１０は動画像を撮像しており、動画像の１フレームとしての撮像画像を取得する。
【００５８】
次に、画像処理部３７１は、撮像部３１０の撮像画像に、表示パネル２１１の表面シート２３１による反射光が写り込んでいるか否かを判定する（ステップＳ２０２）。撮像画像に反射光が写り込んでいる場合、得られる画像の質が低下してしまうからである。画像処理部３７１は、例えば、撮像画像全体で輝度の平均値を求め、得られた平均値が所定の閾値よりも大きい場合に、反射光が写り込んでいると判定する。
【００５９】
反射光が写り込んでいると判定した場合（ステップＳ２０２：ＹＥＳ）、ステップＳ２０１へ戻る。
一方、反射光が写り込んでいないと判定した場合（ステップＳ２０２：ＮＯ）、エッジ検出部３８１は、撮像部３１０の撮像画像のうちエッジ部分を検出してエッジ画像を生成する（ステップＳ２１１）。エッジ検出部３８１が生成したエッジ画像は、仕切り２３３の像によるハニカム状の模様の検出に用いられる。一方、当該エッジ画像の元の画像である撮像部３１０の撮像画像は、画像処理部３７１が画像処理を行う対象の画像となる。
【００６０】
次に、パタン判定部３８２は、ハニカム判定パタンの検出回数を数えるカウンタの値をゼロ（０）に設定（リセット）する（ステップＳ２１２）。
そして、パタン判定部３８２は、エッジ検出部３８１が生成したエッジ画像をラスタスキャンするループＬ１１の処理を開始する（ステップＳ２２１）。
ループＬ１１の処理では、パタン判定部３８２は、ラスタスキャンで直近にスキャンした１つ以上の画素で構成される画素列がハニカム判定パタンのいずれかを満たす（マッチする）か否かを判定する（ステップＳ２２２）。具体的には、ハニカム判定パタンに含まれる画素の数がｎ個（ｎは正整数）である場合、パタン判定部３８２は、ラスタスキャンで直近にスキャンしたｎ個の画素を時間順に並べた画素列が、当該ハニカム判定パタンを満たすか否かを判定する。
【００６１】
いずれかのハニカム判定パタンが満たされる（すなわち、上記の画素列のうちいずれかのハニカム判定パタンを満たすものが存在する）と判定した場合（ステップＳ２２２：ＹＥＳ）、ノイズ除去部３８３は、撮像部３１０の撮像画像から画素を消去する（ステップＳ２３１）。
具体的には、ノイズ除去部３８３は、ステップＳ２２２でハニカム判定パタンを満たすと判定された画素列をエッジ画像上で検出し、当該画素列のうち、ハニカム判定パタンの「１」の画素に対応する画素（従って、エッジ部分と判定された画素）を検出する。そして、ノイズ除去部３８３は、エッジ画像上で検出した画素に対応する撮像画像上の画素を特定し、特定した画素を消去する。
【００６２】
また、パタン判定部３８２は、ハニカム判定パタンの検出回数をカウントアップする（ステップＳ２３２）。具体的には、パタン判定部３８２は、ハニカム判定パタンに検出回数を数えるカウンタの値に１を加算する。
次に、パタン判定部３８２は、ループＬ１１の終端処理を行う（ステップＳ２３３）。具体的には、パタン判定部３８２は、エッジ検出部３８１が生成したエッジ画像の全ての画素についてループＬ１１の処理を行ったか否かを判定する。未処理の画素があると判定した場合、ステップＳ２２１へ戻り、ラスタスキャンしていない画素について引き続きループＬ１１の処理を行う。一方、全ての画素についてループＬ１１の処理を行ったと判定した場合は、ループＬ１１を終了する。
【００６３】
ステップＳ２３３でループＬ１１を終了した場合、パタン判定部３８２は、ハニカム判定パタンの検出回数が所定の閾値以上か否かを判定する（ステップＳ２４１）。具体的には、パタン判定部３８２は、ハニカム判定パタンの検出回数を数えるカウンタの値が閾値以上か否かを判定する。
当該判定は、撮像部３１０の撮像画像が磁気ボード２を撮像した画像であるか否かの判定の例に該当する。なお、ステップＳ２４１における閾値は、例えば、画像処理装置３の設計者が実験にて予め定めておく。
【００６４】
ハニカム判定パタンの検出回数が所定の閾値未満であったと判定した場合（ステップＳ２４１：ＮＯ）、ステップＳ２０１へ戻る。この場合、撮像部３１０の撮像画像が磁気ボード２を撮像した画像ではない可能性が高いため、画像処理装置３は図８の処理をやり直す。
一方、ハニカム判定パタンの検出回数が所定の閾値以上であったと判定した場合（ステップＳ２４１：ＹＥＳ）、撮像部３１０の撮像画像からノイズ除去部３８３が画素を消去した画像に対して後段処理部３９０が更に画像処理を行う。
【００６５】
具体的には、塗り広げ処理部３９１が、ノイズ除去部３８３が画素を消去した画像に対して塗り広げ処理を行う（ステップＳ２５１）。すなわち、塗り広げ処理部３９１は、ノイズ除去部３８３が画素を消去した画像のうち所定の画素値の画素を検出し、検出した画素の画素値を所定の範囲で周囲の画素に書き込む。塗り広げ処理部３９１が仕切り２３３の幅以上に色を塗り広げる処理を行うことで、ノイズ除去部３８３が行った画素の消去にて生じた隙間を埋めることができる。特に、ユーザが磁気ボード２に書いた線が仕切り２３３の部分では途切れて隙間が生じていたのに対し、塗り広げ処理部３９１が塗り広げ処理を行うことで、隙間のない線の像を得られる。
【００６６】
次に、余白透明化処理部３９２は、塗り広げ処理部３９１が塗り広げ処理を行った画像に対して余白を透明化する処理を行う（ステップＳ２５２）。具体的には、余白透明化処理部３９２は、塗り広げ処理部３９１が塗り広げ処理を行った画像のうち、閉領域の部分及び塗り潰されている部分を除いた部分を余白部分として検出し、検出した余白部分の色を透明に設定する。
また、閉領域白塗り処理部３９３は、余白透明化処理部３９２が余白を透明化した画像に対して閉領域の部分を白塗りする処理を行う（ステップＳ２５３）。具体的には、閉領域白塗り処理部３９３は、閉領域の部分を検出し、検出した閉領域の部分のうち黒の部分と赤の部分とを除いた部分の色を白にする。
ステップＳ２５３の後、図８の処理を終了して図７の処理へ戻る。
一方、ステップＳ２２２で全てのハニカム判定パタンが満たされないと判定した場合（ステップＳ２２２：ＮＯ）、ステップＳ２３３へ遷移する。
【００６７】
図８のステップＳ１０１の後、制御部３７０は、ステップＳ１０１で得られた画像を表示部３２０の表示画面に表示させる（ステップＳ１０２）。
そして、制御部３７０は、表示部３２０が表示している画像を選択するユーザ操作が行われたか否かを判定する（ステップＳ１０３）。
表示部３２０が表示している画像を選択するユーザ操作が行われていないと判定した場合（ステップＳ１０３：ＮＯ）、ステップＳ１０１へ戻る。
【００６８】
一方、表示部３２０が表示している画像を選択するユーザ操作が行われたと判定した場合（ステップＳ１０３：ＹＥＳ）、制御部３７０は、操作入力部３３０が受け付けるユーザ操作に応じた分岐を行う（ステップＳ１１１）。
操作入力部３３０が画像取得のやり直しを指示するユーザ操作を受けた場合（ステップＳ１１１：やり直し）、ステップＳ１０１へ戻る。
一方、操作入力部３３０が画像の保存を指示するユーザ操作を受けた場合（ステップＳ１１１：保存）、制御部３７０は、得られた画像を記憶部３６０に記憶させる（ステップＳ１２１）。
【００６９】
そして、後段処理部３９０は、所定のアプリケーションプログラムを実行し、ステップＳ１０１で得られた画像を当該アプリケーションプログラムに適用する（ステップＳ１２２）。例えば、後段処理部３９０は、入力画像を水槽内で魚のように泳がせるアプリケーションプログラムを実行し、ステップＳ１０１で得られた画像を当該アプリケーションプログラムに適用する。これにより、画像処理装置３は、ユーザが磁気ボード２に描いた絵等にノイズ除去等の画像処理を行って水槽内で泳がせる画像を表示する機能を提供する。
【００７０】
この、ユーザが磁気ボード２に描いた絵等を水槽内で泳がせる処理は、画面に表示される背景画像上に画像処理にて得られた画像を表示させ、当該画像処理にて得られた画像を当該背景画像上で動作させる処理の例に該当する。水槽の画像は、背景画像の例に該当する。また、ユーザが磁気ボード２に描いた絵等にノイズ処理等の画像処理を行った画像は、画像処理にて得られた画像の例に該当する。
ステップＳ１２２の後、図７の処理を終了する。
一方、操作入力部３３０が、アプリケーションプログラムへの画像の適用を指示するユーザ操作を受けた場合（ステップＳ１１１：アプリ適用）、ステップＳ１２２へ遷移する。
【００７１】
なお、後段処理部３９０が、ノイズ除去部３８３を含んで構成されている場合、ノイズ除去部３８３は、パタン判定部３８２がステップＳ２３３でループＬ１１の処理を終了した後に、ステップＳ２３１の処理を行う。例えば、ノイズ除去部３８３がループＬ１１と同様のループを実行し、当該ループ内でステップＳ２３１の処理を行うようにしてもよい。あるいは、ノイズ除去部３８３が、消去すべき画素をループＬ１１の実行時に記憶しておき、ループＬ１１の終了後に画素の消去を実行するようにしてもよい。
【００７２】
以上のように、パタン判定部３８２は、撮像部３１０の撮像画像からエッジ検出部３８１が検出したエッジ部分に含まれる画素の当該撮像画像における配置が所定のパタン（ハニカム判定パタン）を満たすか否かを判定する。また、ノイズ除去部３８３は、パタン判定部３８２が所定のパタンを満たすと判定した場合、撮像部３１０の撮像画像のうち当該パタンに対応する所定の画素を消去する。
また、パタン判定部３８２は、所定のパタンを満たすと判定した度合いを示す指標値が、所定の度合い以上に大きいことを示しているか否かを判定する。パタン判定部３８２が、所定のパタンを満たすと判定した度合いを示す指標値が、所定の度合い以上に大きいことを示していると判定した場合、後段処理部３９０は、ノイズ除去部３８３が画素を消去した画像に対してさらに画像処理を行う。
【００７３】
このように、パタン判定部３８２は、磁気ボードのハニカム状の模様のように、ノイズ除去部３８３が消去対象としている模様の出現を示すパタンを検出する。そして、後段処理部３９０は、パタン判定部３８２による当該パタンの検出状況に応じて、画像処理を行うか否かを判定する。
従って、絵等が描かれる面にノイズとして消去される模様がある場合、後段処理部３９０は、画像処理を行うか否かの判定を、パタン判定部３８２による当該模様の検出度合いに基づいて行うことができる。従って、処理対象の絵等が描かれる面を識別するための情報を新たに設ける必要がない。
【００７４】
また、後段処理部３９０の塗り広げ処理部３９１は、ノイズ除去部３８３が画素を消去した画像のうち所定の画素値の画素を周囲の画素に広げる。これにより、塗り広げ処理部３９１は、ノイズ除去部３８３が行った画素の消去にて生じた隙間を埋めることができる。
また、後段処理部３９０は、表示部３２０画面に表示される背景画像上に、後段処理部３９０の画像処理にて得られた画像を表示させ、当該画像処理にて得られた画像を当該背景画像上で動作させる。これにより、画像処理装置３は、ユーザが描いた絵等を水槽内で泳がせる機能など、ユーザが描いた絵等を動作させる娯楽機能を提供することができる。
【００７５】
また、パタン判定部３８２は、ハニカム状の所定の模様に基づいて決められた所定のパタンを満たすか否かを判定する。これにより、パタン判定部３８２は、これにより、パタン判定部３８２は、撮像部３１０の撮像画像にて当該パタンを満たす画素（画素の並び）を検出するという簡単な処理で、当該ハニカム状の所定の模様が撮像画像に含まれているか否かを判定することができる。
【００７６】
＜第２の実施形態＞
図９は、本発明の第２の実施形態における画像処理装置の機能構成を示す概略ブロック図である。同図に示すように画像処理装置４は、撮像部３１０と、表示部３２０と、操作入力部３３０と、記憶部３６０と、制御部４７０とを備える。制御部４７０は、スキャン処理部４７１と条件判定部４７２と画像処理部３７１を備える。画像処理部３７１は、前段処理部３８０と、後段処理部３９０とを備える。前段処理部３８０は、エッジ検出部３８１と、パタン判定部３８２と、ノイズ除去部３８３とを備える。後段処理部３９０は、塗り広げ処理部３９１と、余白透明化処理部３９２と、閉領域白塗り処理部３９３とを備える。
【００７７】
図９の各部のうち図５の各部に対応して同様の機能を示す部分には同一の符号（３１０、３２０、３３０、３６０、３７１、３８０〜３８３、３９０〜３９３）を付して説明を省略する。
画像処理装置４は、スキャン処理部４７１と条件判定部４７２とを備えて撮像部３１０の撮像画像が磁気ボード２を撮像した画像か否かをさらに判定する点で、画像処理装置３（図５）と異なる。それ以外は、第１の実施形態の場合と同様である。
【００７８】
スキャン処理部４７１は、撮像部３１０が撮像した画像をラスタスキャンして、所定の色の画素が現れる間隔の平均、及び、当該所定の色の画素の出現回数を求める。スキャン処理部４７１が求めた情報は、撮像部３１０の撮像画像が磁気ボード２を撮像した画像か否かを条件判定部４７２が判定するのに用いられる。
条件判定部４７２は、スキャン処理部４７１が求めた情報が所定の条件を満たすか否かを判定する。これにより、条件判定部４７２は、撮像部３１０の撮像画像が磁気ボード２を撮像した画像か否かを判定する。
【００７９】
ここで、図１０及び図１１を参照してスキャン処理部４７１及び条件判定部４７２が行う処理について説明する。
図１０は、スキャン処理部４７１によるラスタスキャンにて所定の色の画素が現れるパタンの第１の例を示す説明図である。同図では、撮像部３１０が撮像した画像の画素毎に、仕切り２３３の色の画素を「１」で示し、それ以外の色の画素を「０」で示している。以下では、図１０に例示される、スキャン処理部４７１によるラスタスキャンにて所定の色の画素が現れるパタンを示すデータを、スキャン結果データと称する。仕切り２３３の色の画素は、所定の色の画素に例に該当する。
【００８０】
図１０は、撮像部３１０が磁気ボード２を撮像した画像の画素うち１つの走査線の一部に対応するスキャン結果データを、撮像画像の対応部分上に示している。スキャン結果データＤ１０１〜Ｄ１１４のうち、Ｄ１０１、Ｄ１０５、Ｄ１０９、Ｄ１１０及びＤ１１４の値は、仕切り２３３の色の画素を示す「１」になっている。それ以外のスキャン結果データ（Ｄ１０２、Ｄ１０３、Ｄ１０４、Ｄ１０６、Ｄ１０７、Ｄ１０８、Ｄ１１１、Ｄ１１２及びＤ１１３）の値は、仕切り２３３以外の色の画素を示す「０」になっている。黒いセル２３４ａ、赤いセル２３４ｂ、白いセル２３４ｃのいずれに対応する画素でも、スキャン結果データの値は「０」になっている。
【００８１】
スキャン処理部４７１は、仕切り２３３の色の画素の数として、値が「１」のスキャン結果データの数を計数する。具体的には、スキャン処理部４７１は当該計数用のカウンタを備え、スキャン結果データＤ１０１、Ｄ１０５、Ｄ１０９、Ｄ１１０及びＤ１１４に対応してカウンタ値を１増加（インクリメント）させる。スキャン処理部４７１は、当該計数を、スキャンデータ全体について行う。
【００８２】
なお、スキャン結果データＤ１０９及びＤ１１０のように、値が「１」のスキャン結果データが連続している場合、スキャン処理部４７１はいずれか一方のみを計数対象とするようにしてもよい。例えば、スキャン処理部４７１は時間的に先に出現するスキャン結果データＤ１０９についてのみ計数を行うようにしてもよい。
【００８３】
また、スキャン処理部４７１は、仕切り２３３の色の画素が現れる間隔の平均として、値が「１」のスキャン結果データの出現間隔の平均を算出する。例えば、スキャン処理部４７１は、スキャン結果データＤ１０１とＤ１０５との間隔を、これらの間にある値「０」のスキャン結果データの個数を用いて「３」と算出する。スキャン結果データＤ１０５とＤ１０９との間隔、及び、スキャン結果データＤ１１０とＤ１１４との間隔についても同様に、スキャン処理部４７１は「３」と算出する。一方、スキャン結果データＤ１０９とＤ１１０との間には、値「０」のスキャン結果データはない。従って、スキャン処理部４７１は、スキャン結果データＤ１０９とＤ１１０との間隔を「０」と算出する。
スキャン処理部４７１は、当該間隔の算出をスキャンデータ全体について行い、間隔の平均値を算出する。
【００８４】
図１１は、スキャン処理部４７１によるラスタスキャンにて所定の色の画素が現れるパタンの第２の例を示す説明図である。同図では、撮像部３１０が撮像した画像の画素毎に、仕切り２３３の色の画素を「１」で示し、それ以外の色の画素を「０」で示している。
スキャン処理部４７１は、値が「１」のスキャン結果データの間隔が所定の閾値よりも大きい場合、図１０を参照して説明した処理の対象から除外する。
【００８５】
図１１の例では、スキャン結果データＤ２０１とＤ２１３との値が「１」になっている。それ以外のスキャン結果データ（Ｄ２０２〜Ｄ２１２、Ｄ２１４）の値は「０」になっている。図１０を参照して説明したのと同様に、スキャン処理部４７１は、値が「１」のスキャン結果データＤ２０１とＤ２１３との間隔を「１１」と算出する。
ここで、例えば、磁気ボード２全体の撮像画像が表示部３２０の表示画面いっぱいに映るようにするなど、撮像部３１０による磁気ボード２の撮像に、ある条件（以下、撮像条件と称する）を設定しておく。ユーザが画像処理装置４を用いて磁気ボード２を撮像する際に、当該撮像条件を満たすように撮像することが求められる。
【００８６】
このように、撮像部３１０による磁気ボード２の撮像に撮像条件を設定しておくことで、撮像部３１０が当該撮像条件を満たして磁気ボード２を撮像した場合にスキャン結果データが示すパタンとしてあり得ないパタンを想定することができる。
例えば、図１０の例のように２つの仕切り２３３の間隔（すなわち、セル２３４の幅）がおおよそ画素３つ分になる場合、例えば画素６つ分以上の間隔となるパタンをあり得ないパタンと想定することができる。
【００８７】
スキャン処理部４７１は、このようなあり得ないパタンの設定を予め記憶しておき、該当するスキャン結果データを、仕切り２３３の色の画素の数の計数対象、及び、仕切り２３３の色の画素が現れる間隔の平均の算出対象から除外する。図１１の例の場合スキャン処理部４７１は、スキャン結果データＤ２１３を、仕切り２３３の色の画素の数の計数対象に含めない（従って、カウンタ値のインクリメントを行わない）。また、スキャン処理部４７１は、スキャン結果データＤ２０１とＤ２１３との間隔「１１」を、仕切り２３３の色の画素が現れる間隔の平均を求める母集団に加えない。
このように、スキャン処理部４７１があり得ないパタンを除外することで、撮像部３１０の撮像画像に仕切り２３３の色と同じ色の物がたまたま映っていた場合でも、仕切り２３３の色の画素の数、及び、仕切り２３３の色の画素が現れる間隔の平均を高精度に得られる。
【００８８】
条件判定部４７２は、スキャン処理部４７１が求めた情報（仕切り２３３の色の画素の数、及び、仕切り２３３の色の画素が現れる間隔の平均）に基づいて、撮像部３１０の撮像画像が、磁気ボード２を撮像条件に従って撮像して得られた画像か否かを判定する。
具体的には、条件判定部４７２は、スキャン処理部４７１が求めた仕切り２３３の色の画素の数が、所定の上限閾値及び下限閾値の範囲内か否かを判定する。また、条件判定部４７２は、スキャン処理部４７１が求めた仕切り２３３の色の画素が現れる間隔が所定の上限閾値以下か否かを判定する。
【００８９】
これらの閾値（仕切り２３３の色の画素の数の上限閾値及び下限閾値、及び、仕切り２３３の色の画素が現れる間隔の平均の上限閾値）は、所定のハニカム状の模様に応じて設定された所定の条件の例に該当する。
画像処理装置４を調整する者（例えば、スマートフォンを画像処理装置４として動作させるアプリケーションプログラムの提供者）が、撮像部３１０を用いて磁気ボード２を撮像した画像データからこれらの閾値の値を決定し、記憶部３６０に予め記憶させておく。
【００９０】
ここで、上述したように、画像処理を行う装置に、処理対象の絵等が所定の面に描かれている場合には画像処理を行わせ、他の面に描かれている場合には画像処理を抑制させたい場合がある。
そこで、画像処理部３７１が画像処理を行う条件を、予め設定しておく。そして、撮像部３１０が磁気ボード２を撮像した場合、当該条件が満たされて画像処理部３７１が画像処理を行うようにする。一方、当該条件が満たされない場合、画像処理部３７１が画像処理を行わない（画像処理部３７１による画像処理を抑制する）ようにする。
これにより、画像処理部３７１による画像処理機能を磁気ボード２専用の機能とすることができる。
【００９１】
特に、スキャン処理部４７１および条件判定部４７２によれば、撮像部３１０の撮像画像をスキャンして、所定の色の画素の数を計数して閾値と比較する処理、及び、所定色の画素が出現する間隔の平均を求めて閾値と比較する処理といった簡単な処理で、画像処理部３７１が画像処理を行うか否かを決定することができる。この点で、画像処理装置３の負荷を抑制することができ、また、画像処理装置３の処理能力が高くなくてもよい。
【００９２】
次に、図１２〜図１３を参照して画像処理装置４の動作について説明する。
図１２は、磁気ボード２に書かれた絵に対して画像処理装置４が行う処理の手順の例を示すフローチャートである。画像処理装置３は、例えば処理開始を指示するユーザ操作に従って図１２の処理を開始する。
図１２の処理にて撮像部３１０は撮像画像を取得する（ステップＳ３０１）。例えば撮像部３１０は動画像を撮像しており、動画像の１フレームとしての撮像画像を取得する。
次に、スキャン処理部４７１は、撮像画像に仕切り２３３のハニカム状の模様が含まれているか否かの判定用の情報を取得する（ステップＳ３０２）。具体的には、スキャン処理部４７１は、図１０及び図１１を参照して説明したように、仕切り２３３の色の画素の数、及び、仕切り２３３の色の画素が現れる間隔の平均を求める。
【００９３】
図１３は、スキャン処理部４７１が、撮像画像にハニカム状の模様が含まれているか否かの判定用の情報を取得する処理手順の例を示すフローチャートである。スキャン処理部４７１は、図１２のステップＳ３０２にて図１３の処理を行う。
図１３の処理にて、スキャン処理部４７１は、仕切り２３３の色の画素の数を計数するカウンタの値を０にリセットする（ステップＳ４０１）。また、スキャン処理部４７１は、仕切り２３３の色の画素の間隔の合計を０に初期設定する（ステップＳ４０２）。
【００９４】
次に、スキャン処理部４７１は、撮像部３１０の撮像画像をラスタスキャンして画素毎に処理を行うループＬ２１を開始する（ステップＳ４１１）。以下では、ループＬ２１で処理対象になっている画素を対象画素と称する。
スキャン処理部４７１は、対象画素の色が仕切り２３３の色か否かを判定する（ステップＳ４１２）。
【００９５】
対象画素の色が仕切り２３３の色であると判定した場合（ステップＳ４１２：ＹＥＳ）、スキャン処理部４７１は、直近過去に仕切り２３３の色であると判定した画素の位置を読み出す（ステップＳ４２１）。
なお、対象画素の色が仕切り２３３の色であると最初に判定した場合（初回判定時）は、ステップＳ４２１を飛ばしてステップＳ４２２へ進む。
【００９６】
次に、スキャン処理部４７１は、現在の対象画素の位置と、ステップＳ４２１で読み出した画素の位置との間隔を算出する（ステップＳ４２２）。例えば、図１０及び図１１を参照して説明したように、スキャン処理部４７１は、現在の対象画素の位置と、ステップＳ２２１で読み出した画素の間に位置する画素の数を当該間隔として算出する。
なお、対象画素の色が仕切り２３３の色であると最初に判定した場合（初回判定時）は、間隔を０に設定する。
【００９７】
次に、スキャン処理部４７１は、ステップＳ４２２で得られた間隔が所定の閾値以下か否かを判定する（ステップＳ４２３）。図１１を参照して説明したように、仕切り２３３の色の画素の間隔としてあり得ない間隔を処理対象から除外するためである。
閾値以下であると判定した場合（ステップＳ４２３：ＹＥＳ）、スキャン処理部４７１は、仕切り２３３の色の画素の数を更新する（ステップＳ４３１）。具体的には、スキャン処理部４７１は、仕切り２３３の色の画素の数を計数するカウンタの値を１増加させる。
【００９８】
また、スキャン処理部４７１は、仕切り２３３の色の画素の間隔の合計を更新する（ステップＳ４３２）。具体的には、スキャン処理部４７１は、仕切り２３３の色の画素の間隔の合計の値に、ステップＳ４２２で得られた間隔を加算する。
また、スキャン処理部４７１は、対象画素の位置を記憶する（ステップＳ４３３）。当該位置は、ステップＳ４２１で、直近過去に仕切り２３３の色であると判定した画素の位置として読み出される。
【００９９】
次に、スキャン処理部４７１は、ループＬ２１の終端処理を行う（ステップＳ４３４）。具体的には、スキャン処理部４７１は、撮像部３１０の撮像画像に含まれる全ての画素に対してループＬ２１の処理を行ったか否かを判定する。全ての画素に対してループＬ２１の処理を行ったと判定した場合、スキャン処理部４７１は、ループＬ２１を終了する。一方、未処理の画素があると判定した場合、スキャン処理部４７１は、ステップＳ４１１に戻り引き続きループＬ２１の処理を行う。
【０１００】
ループＬ２１を終了した後、スキャン処理部４７１は、仕切り２３３の色の画素の間隔の平均を算出する（ステップＳ４４１）。具体的には、スキャン処理部４７１は、仕切り２３３の色の画素の間隔の合計を（仕切り２３３の色の画素の計数値−１）で除算する。
ステップＳ４４１の後、図１３の処理を終了して図１２の処理へ戻る。
【０１０１】
一方、ステップＳ４１２で対象画素の色が仕切り２３３の色ではないと判定した場合（ステップＳ４１２：ＮＯ）、ステップＳ４３４へ遷移する。
また、ステップＳ４２３で、間隔が所定の閾値より大きいと判定した場合（ステップＳ４２３：ＮＯ）、ステップＳ４３４へ遷移する。
【０１０２】
図１２のステップＳ３０２の処理の後、条件判定部４７２は、ステップＳ３０２でスキャン処理部４７１が取得した情報に基づいて、撮像画像に仕切り２３３のハニカム状の模様が含まれているか否かを判定する（ステップＳ３０３）。具体的には、条件判定部４７２は、図１０及び図１１を参照して説明したように、仕切り２３３の色の画素の数が所定の範囲内にあり、かつ、仕切り２３３の色の画素が現れる間隔の平均が所定の間隔以下か否かを判定する。
【０１０３】
撮像画像に仕切り２３３のハニカム状の模様が含まれていないと判定した場合（ステップＳ３０３：ＮＯ）、ステップＳ３０１へ戻る。この場合、画像処理装置３はステップＳ３１１での画像処理を開始しない。
一方、撮像画像に仕切り２３３のハニカム状の模様が含まれていると判定した場合（ステップＳ３０３：ＹＥＳ）、ステップＳ３１１へ遷移する。
ステップＳ３１１〜Ｓ３３２は、図７のステップＳ１０１〜Ｓ１２２と同様である。
ステップＳ３３２の後、図１２の処理を終了する。
【０１０４】
以上のように、スキャン処理部４７１は、撮像部３１０の撮像画像をラスタスキャンして、仕切り２３３の色の画素が現れる間隔の平均を求める。そして、条件判定部４７２は、仕切り２３３の色の画素が現れる間隔の平均に基づく所定の条件が成立するか否か（例えば、仕切り２３３の色の画素が現れる平均が所定の閾値以下か否か）を判定する。画像処理部３７１は、所定の条件が成立すると条件判定部４７２が判定すると、撮像部３１０の撮像画像に対して画像処理を行う。
画像処理装置４によれば、条件が満たされない場合には画像処理部３７１による画像処理を抑制する点で、画像処理部３７１が処理対象とする画像を限定することができる。撮像部３１０が磁気ボード２を撮像した画像に対してはが画像処理部３７１が画像処理を行うことで、画像処理装置４に画像処理を行わせたいユーザが磁気ボードを有していない場合、磁気ボードを購入する可能性がある。
また、画像処理装置４は、撮像部３１０の撮像画像をスキャンして、所定色の画素が出現する間隔の平均を求めて閾値と比較する処理といった簡単な処理で、画像処理部３７１が画像処理を行うか否かを決定することができる。この点で、画像処理装置３の負荷を抑制することができ、また、画像処理装置３の処理能力が高くなくてもよい。
【０１０５】
また、スキャン処理部４７１は、仕切り２３３の色の画素の出現回数をさらに求める。そして、条件判定部４７２は、仕切り２３３の色の画素が現れる間隔の平均、及び、仕切り２３３の色の画素の出現回数に基づく所定の条件が成立するか否かを判定する。
画像処理装置３によれば、条件が満たされない場合には画像処理部３７１による画像処理を抑制する点で、画像処理部３７１が処理対象とする画像を限定することができる。撮像部３１０が磁気ボード２を撮像した画像に対してはが画像処理部３７１が画像処理を行うことで、画像処理装置４に画像処理を行わせたいユーザが磁気ボードを有していない場合、磁気ボードを購入する可能性がある。
また、画像処理装置４は、撮像部３１０の撮像画像をスキャンして、所定の色の画素の数を計数して閾値と比較する処理、及び、所定色の画素が出現する間隔の平均を求めて閾値と比較する処理といった簡単な処理で、画像処理部３７１が画像処理を行うか否かを決定することができる。この点で、画像処理装置４の負荷を抑制することができ、また、画像処理装置４の処理能力が高くなくてもよい。
【０１０６】
また、条件判定部４７２は、仕切り２３３によるハニカム状の模様に応じて設定された所定の条件が成立するか否かを判定する。これにより、画像処理装置４では、撮像部３１０の撮像画像をスキャンして、所定色の画素が出現する間隔の平均を求めて閾値と比較する処理といった簡単な処理で、仕切り２３３によるハニカム状の模様が撮像画像に含まれているか否かを判定することができる。
【０１０７】
なお、以上では、画像処理装置３又は３が、磁気ボード２に書かれた絵等を撮像して画像処理を行う場合を例に説明したが、画像処理装置３又は４の処理対象は磁気ボード２の画像に限らない。例えば、画像処理装置３又は４が、所定の模様の繰り返しを含む壁紙に書かれた絵を撮像した画像を処理するなど、磁気ボード２の画像以外の画像を処理対象とするようにしてもよい。
【０１０８】
なお、制御部３７０又は４７０の全部または一部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各部の処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。
また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【０１０９】
以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【符号の説明】
【０１１０】
１  画像処理システム
２  磁気ボード
３、４  画像処理装置
３１０  撮像部
３２０  表示部
３３０  操作入力部
３６０  記憶部
３７０、４７０  制御部
３７１  画像処理部
３８０  前段処理部
３８１  エッジ検出部
３８２  パタン判定部
３８３  ノイズ除去部
３９０  後段処理部
３９１  塗り広げ処理部
３９２  余白透明化処理部
３９３  閉領域白塗り処理部
４７１  スキャン処理部
４７２  条件判定部
【要約】
【課題】画像処理装置が、処理対象の絵等が描かれる面を識別するための情報を新たに設ける必要無しに、処理対象の絵等が所定の面に描かれているか否かに応じて、画像処理を行うか否かを判定することができるようにする。
【解決手段】画像処理装置が、画像を取得する画像取得部と、前記画像のエッジ検出を行うエッジ検出部と、前記エッジ検出にて検出されたエッジ部分に含まれる画素の前記画像における配置が所定のパタンを満たすか否かを判定するパタン判定部と、前記パタン判定部が前記所定のパタンを満たすと判定した場合、当該パタンに対応する所定の画素を消去するノイズ除去部と、前記パタン判定部が前記所定のパタンを満たすと判定した度合いを示す指標値が、前記度合いが所定の度合い以上に大きいことを示す場合、前記ノイズ除去部が画素を消去した画像に対してさらに画像処理を行う後段処理部と、を備える。
【選択図】図５【図１】
0005974140.tif 000002
【図２】
0005974140.tif 000003
【図３】
0005974140.tif 000004
【図４】
0005974140.tif 000005
【図５】
0005974140.tif 000006
【図６】
0005974140.tif 000007
【図７】
0005974140.tif 000008
【図８】
0005974140.tif 000009
【図９】
0005974140.tif 000010
【図１０】
0005974140.tif 000011
【図１１】
0005974140.tif 000012
【図１２】
0005974140.tif 000013
【図１３】
0005974140.tif 000014