(57)【要約】  誤差関数決定手段は、ぼかされた入力画像の程度を表す関数であるボケ関数および入力画像が示す二次元コードがその二次元コードの構成単位であるセル上に配置されることを制約する行列である幾何変形行列を用いて、復元された画像である復元画像に対して幾何変形とボケを加えた画像と入力画像との誤差が小さいほど所定の結果に近づく関係を満たす関数である誤差関数を決定する。画素値制約手段は、復元する二次元コードの画素値を離散化した所定の画素値に制約するときの制約条件を規定した画素値制約情報を決定する。目的関数決定手段は、誤差関数と画素値制約情報とに基づいて、復元画像が真の画像に近いほど所定の結果に近づく関係を満たす関数である目的関数を決定する。目的関数最適化手段は、目的関数を最適化する復元画像を決定する。
2012029238.tif 000002
【特許請求の範囲】
【請求項１】
入力画像のボケの程度を表す関数であるボケ関数および前記入力画像が示す二次元コードが当該二次元コードの構成単位であるセル上に配置されることを制約する行列である幾何変形行列を用いて、復元された画像である復元画像に対して幾何変形とボケを加えた画像と入力画像との誤差が小さいほど所定の結果に近づく関係を満たす関数である誤差関数を決定する誤差関数決定手段と、
復元する二次元コードの画素値を離散化した所定の画素値に制約するときの制約条件を規定した画素値制約情報を決定する画素値制約手段と、
前記誤差関数と前記画素値制約情報とに基づいて、復元画像が真の画像に近いほど所定の結果に近づく関係を満たす関数である目的関数を決定する目的関数決定手段と、
前記目的関数を最適化する復元画像を決定する目的関数最適化手段を備えた
ことを特徴とする画像処理システム。
【請求項２】
誤差関数決定手段は、復元画像に対して幾何変形とボケを加えた画像と入力画像との誤差が小さいほど小さい値をとる誤差関数を決定し、
画素値制約手段は、画像に含まれる各画素の画素値が離散化した画素値のうちのいずれかに近いほど適切な画像であることを示す関数である画素値制約関数を制約条件とする画素値制約情報を決定し、
目的関数決定手段は、前記誤差関数と前記画素値制約情報とに基づいて、復元画像が真の画像に近いほど小さな値をとる目的関数を決定し、
目的関数最適化手段は、前記目的関数を最小化する復元画像を決定する
請求項１記載の画像処理システム。
【請求項３】
誤差関数決定手段は、復元画像に対して幾何変形とボケを加えた画像と入力画像との誤差が小さいほど小さい値をとる誤差関数を決定し、
画素値制約手段は、復元する画像の取り得る画素値が予め定めた個数の離散値であるとする制約条件を画素値制約情報として決定し、
目的関数決定手段は、前記誤差関数における復元画像の取り得る画素値を、前記画素値制約情報の制約条件として決定された離散値のいずれかの値をとる目的関数を決定し、
目的関数最適化手段は、前記目的関数を最小化する復元画像を決定する
請求項１記載の画像処理システム。
【請求項４】
目的関数最適化手段が決定した復元画像の画素値を予め定めら得た閾値を用いて離散化することにより、復元画像を生成する画素値離散化手段を備えた
請求項１から請求項３のうちのいずれか１項に記載の画像処理システム。
【請求項５】
入力画像から、二次元コードのマーカを検出するマーカ検出手段と、
マーカ検出手段が検出したマーカから二次元コードのセル配置を推定するセル配置推定手段と、
入力画像に対するボケ関数を決定するボケ関数決定手段と、
推定された二次元コードのセル配置から幾何変形行列を推定する幾何変形推定手段と、
復元する入力画像の領域を指定する最適化領域指定手段とを備え、
誤差関数決定手段は、入力画像と、前記ボケ関数決定手段が決定したボケ関数と、前記幾何変形推定手段が推定した幾何変形行列とをもとに、誤差関数を決定する
請求項１から請求項４のうちのいずれか１項に記載の画像処理システム。
【請求項６】
目的関数を構成する要素のうち、目的関数最適化手段によって同時に最適化される変数とする要素を指定する同時最適化変数指定手段を備え、
目的関数最適化手段は、目的関数を最適化する復元画像および前記同時最適化変数指定手段で指定された要素を決定する
請求項１から請求項５のうちのいずれか１項に記載の画像処理システム。
【請求項７】
二次元コードのセル配置が入力されるセル配置入力手段と、
幾何変形行列が入力される幾何変形入力手段と、
ボケ関数が入力されるボケ関数入力手段とを備え、
誤差関数決定手段は、幾何変形入力手段に入力された幾何変形行列と、ボケ関数入力手段に入力されるボケ関数とを用いて誤差関数を決定し、
画素値制約手段は、セル配置入力手段に入力される二次元コードのセル配置に基づいて、画素値制約情報を決定する
請求項１から請求項４のうちのいずれか１項に記載の画像処理システム。
【請求項８】
画像中に存在する複数種類のマーカを全て検出する複数マーカ検出手段と、
検出されたマーカのコードの種類を識別するコード種類識別手段と、
目的関数最適化手段が決定した復元画像中の全てのコードに対するボケ除去がされたか否かを判定するボケ除去判定手段とを備え、
セル配置推定手段は、複数マーカ検出手段が検出したマーカから二次元コードのセル配置を推定する
請求項５から請求項７のうちのいずれか１項に記載の画像処理システム。
【請求項９】
ぼかされた入力画像の程度を表す関数であるボケ関数および前記入力画像が示す二次元コードが当該二次元コードの構成単位であるセル上に配置されることを制約する行列である幾何変形行列を用いて、復元された画像である復元画像に対して幾何変形とボケを加えた画像と入力画像との誤差が小さいほど所定の結果に近づく関係を満たす関数である誤差関数を決定し、
復元する二次元コードの画素値を離散化した所定の画素値に制約するときの制約条件を規定した画素値制約情報を決定し、
前記誤差関数と前記画素値制約情報とに基づいて、復元画像が真の画像に近いほど所定の結果に近づく関係を満たす関数である目的関数を決定し、
前記目的関数を最適化する復元画像を決定する
ことを特徴とする画像処理方法。
【請求項１０】
コンピュータに、
ぼかされた入力画像の程度を表す関数であるボケ関数および前記入力画像が示す二次元コードが当該二次元コードの構成単位であるセル上に配置されることを制約する行列である幾何変形行列を用いて、復元された画像である復元画像に対して幾何変形とボケを加えた画像と入力画像との誤差が小さいほど所定の結果に近づく関係を満たす関数である誤差関数を決定する誤差関数決定処理、
復元する二次元コードの画素値を離散化した所定の画素値に制約するときの制約条件を規定した画素値制約情報を決定する画素値制約処理、
前記誤差関数と前記画素値制約情報とに基づいて、復元画像が真の画像に近いほど所定の結果に近づく関係を満たす関数である目的関数を決定する目的関数決定処理、および、
前記目的関数を最適化する復元画像を決定する目的関数最適化処理
を実行させるための画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不鮮明な画像を復元する画像処理システム、画像処理方法および画像処理プログラムに関し、特に、ニ次元コードが含まれている画像中の領域を精度良く復元可能な画像処理システム、画像処理方法および画像処理プログラムに関する。
【背景技術】
【０００２】
撮影されたニ次元コードを専用コードリーダーにて認識させるためには、撮影された画像のエッジが十分に鮮明であること、すなわち、ボケが十分に小さいことが必要である。しかし、撮像系の制約や撮影環境によっては、ボケの小さい画像を得ることは難しい。この問題を解決するためには、画像処理によりボケが除去された画像を復元画像として得ることが必要である。【０００３】
例えば、特許文献１には、画像中のニ次元コード領域に対し、一般的な画像復元技術を用いてボケ除去を行う画像復元方法が記載されている。特許文献１に記載された画像復元方法では、画像のボケ復元フィルタと、エッジ保存型平均型平均フィルタとを用いて、画像データに対してフィルタリングを行うことで復元画像を得る。【０００４】
また、特許文献２には、画像が２値であるという制約の中でボケ除去を行う画像処理装置が記載されている。特許文献２に記載された画像処理装置は、２値化用の補正量と画像劣化用の補正量とを統合した補正量を求め、この補正量に基づいて推定画像を作成する。【０００５】
なお、以下では、ニ次元コードを構成する最小単位をセルと呼ぶ。図１３を用い、ＱＲコード（登録商標）の場合を例に説明する。図１３は、ＱＲコードを示す説明図である。図１３に示すＱＲコードを構成している四角い各黒白の点Ｆ１３１がセルである。また、ニ次元コードの位置や大きさを検出するために使用されるパターンをマーカと呼ぶ。図１３に示すＱＲコードでは、３隅の四角い切り出しシンボル、すなわち、Ｆ１３２、Ｆ１３３、Ｆ１３４がマーカである。また、以下では、ニ次元コードが撮影された画像をコード画像と呼ぶこともある。また、エッジが不鮮明な画像のことをボケ画像と呼ぶこともある。また、ニ次元コードのことを、単にコードと呼ぶこともある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−３２１０５号公報
【特許文献２】特開２００９−２２３６３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ボケ除去処理は、一般に不良設定問題である。すなわち、エッジが不鮮明な一つの画像に対して、解である復元画像が一意に定まらない。そして、ボケが大きいほど解が一意に定まりにくく、復元画像が不安定になりやすい。不良設定問題を解くためには、解（すなわち復元画像）に対する何らか制約を設け、正確な復元画像が解となるようにする必要がある。しかしながら、特許文献１に記載された方法は、フィルタリングにより復元を行うのみであり、復元画像に対する制約を設けていないため、正確な復元画像を得ることが困難であるという問題がある。【０００８】
特許文献２に記載された方法では、ニ次元コードに関する複数の特徴のうち、画像が２値であるという特徴を用いている。そのため、復元画像、すなわち解を制約することが可能である。しかし、より強く復元画像に対する制約を設けることで、ボケが大きい場合であっても、解が不安定になることを抑制し、正確な復元画像が得られることが望ましい。【０００９】
そこで、本発明は、ボケが大きいコード画像から正確な復元画像を得ることができる画像処理システム、画像処理方法および画像処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明による画像処理システムは、ぼかされた入力画像の程度を表す関数であるボケ関数および入力画像が示す二次元コードがその二次元コードの構成単位であるセル上に配置されることを制約する行列である幾何変形行列を用いて、復元された画像である復元画像に対して幾何変形とボケを加えた画像と入力画像との誤差が小さいほど所定の結果に近づく関係を満たす関数である誤差関数を決定する誤差関数決定手段と、復元する二次元コードの画素値を離散化した所定の画素値に制約するときの制約条件を規定した画素値制約情報を決定する画素値制約手段と、誤差関数と画素値制約情報とに基づいて、復元画像が真の画像に近いほど所定の結果に近づく関係を満たす関数である目的関数を決定する目的関数決定手段と、目的関数を最適化する復元画像を決定する目的関数最適化手段を備えたことを特徴とする。【００１１】
本発明による画像処理方法は、ぼかされた入力画像の程度を表す関数であるボケ関数および入力画像が示す二次元コードがその二次元コードの構成単位であるセル上に配置されることを制約する行列である幾何変形行列を用いて、復元された画像である復元画像に対して幾何変形とボケを加えた画像と入力画像との誤差が小さいほど所定の結果に近づく関係を満たす関数である誤差関数を決定し、復元する二次元コードの画素値を離散化した所定の画素値に制約するときの制約条件を規定した画素値制約情報を決定し、誤差関数と画素値制約情報とに基づいて、復元画像が真の画像に近いほど所定の結果に近づく関係を満たす関数である目的関数を決定し、目的関数を最適化する復元画像を決定することを特徴とする。【００１２】
本発明による画像処理プログラムは、コンピュータに、ぼかされた入力画像の程度を表す関数であるボケ関数および入力画像が示す二次元コードがその二次元コードの構成単位であるセル上に配置されることを制約する行列である幾何変形行列を用いて、復元された画像である復元画像に対して幾何変形とボケを加えた画像と入力画像との誤差が小さいほど所定の結果に近づく関係を満たす関数である誤差関数を決定する誤差関数決定処理、復元する二次元コードの画素値を離散化した所定の画素値に制約するときの制約条件を規定した画素値制約情報を決定する画素値制約処理、誤差関数と画素値制約情報とに基づいて、復元画像が真の画像に近いほど所定の結果に近づく関係を満たす関数である目的関数を決定する目的関数決定処理、および、目的関数を最適化する復元画像を決定する目的関数最適化処理を実行させることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、ボケが大きいコード画像から正確な復元画像を得ることができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１の実施形態における画像処理システムの例を示すブロック図である。
【図２】ＱＲコードにおいて画像とセルとの関係の例を示す説明図である。
【図３】ＱＲコードにおいて、最適化する必要がある領域の例を示す説明図である。
【図４】第１の実施形態における画像処理システムの動作の例を示すフローチャートである。
【図５】本発明の第２の実施形態における画像処理システムの例を示すブロック図である。
【図６】第２の実施形態における画像処理システムの動作の例を示すフローチャートである。
【図７】本発明の第３の実施形態における画像処理システムの例を示すブロック図である。
【図８】第３の実施形態における画像処理システムの動作の例を示すフローチャートである。
【図９】本発明の第４の実施形態における画像処理システムの例を示すブロック図である。
【図１０】第４の実施形態における画像処理システムの動作の例を示すフローチャートである。
【図１１】ＱＲコードにおけるマーカを示す説明図である。
【図１２】本発明による画像処理システムの最小構成の例を示すブロック図である。
【図１３】ＱＲコードを示す説明図である。
【発明を実施するための形態】
【００１５】
以下、本発明の実施形態を図面を参照して説明する。
【００１６】
実施形態１．
図１は、本発明の第１の実施形態における画像処理システムの例を示すブロック図である。第１の実施形態における画像処理システムは、画像入力手段１１００と、プログラム制御により動作するコンピュータ１２００と、画像出力手段１３００とを備えている。なお、コンピュータ１２００は、中央処理装置や、プロセッサ、データ処理装置と呼ぶこともできる。
【００１７】
コンピュータ１２００は、マーカ検出手段１２０１と、マーカ領域ボケ除去手段１２０２とを含む。さらに、マーカ領域ボケ除去手段１２０２は、セル配置推定手段１２０３と、ボケ関数決定手段１２０４と、幾何変形推定手段１２０５と、誤差関数決定手段１２０６と、画素値制約手段１２０７と、最適化領域指定手段１２０８と、目的関数決定手段１２０９と、目的関数最適化手段１２１０と、画素値離散化手段１２１１とを含む。
【００１８】
画像入力手段１１００には、カメラやスキャナなどにより得られた画像が入力される。そして、画像入力手段１１００は、入力された画像をメモリ（図示せず）等に記憶させる。ここで、画像入力手段１１００に入力された画像における各画素の輝度値をラスタスキャン順に並べた縦ベクトルをＹと表わす。例えば、入力された画像の画素数がＮである場合、Ｙ＝（Ｙ１・・・，Ｙｉ，・・・ＹＮ）ｔと表わされる。なお、ｔは転置行列を意味する。なお、以下では、入力された画像の輝度値を用いて処理を行う場合について説明する。ただし、入力画像を示す情報は輝度値に限定されない。すなわち、本実施形態では、画像入力手段１１００が記憶させる値が輝度値である場合について説明するが、画像入力手段１１００に入力される値は輝度値に限定されない。例えば、入力される画像がＲＧＢ信号であり、ＲＧＢそれぞれ独立に画素値をラスタスキャン順に並べた縦ベクトルをＹＲ、ＹＧ、ＹＢをとした場合、画像入力手段１１００は、ＹＲ、ＹＧおよびＹＢをメモリに記憶させても良い。
【００１９】
また、本実施形態では、画像入力手段１１００に入力され、メモリ（図示せず）に記憶させる画像が１枚である場合について説明する。ただし、画像入力手段１１００に入力される画像は１枚に限定されない。複数枚（以下、Ｐ枚と記す）の画像が入力される場合、画像入力手段１１００は、入力されたＰ枚の各画像における各画素の輝度値をラスタスキャン順に並べた縦ベクトルＹ１，Ｙ２，・・・、ＹＰをメモリ（図示せず）に記憶させてもよい。
【００２０】
マーカ検出手段１２０１は、画像入力手段１１００に入力された画像中から、コードを特徴付けるマーカを検出する。すなわち、このマーカは、ニ次元コードの種類ごとに定められたパターンということもできる。マーカ検出手段１２０１は、マーカを検出する方法として、例えば、テンプレートマッチングなどを用いればよい。また、マーカ検出手段１２０１は、入力された画像と、検出されたマーカとをメモリ（図示せず）等に記憶させる。なお、入力される画像が複数枚の場合、マーカ検出手段１２０１は、その全ての画像についてマーカを検出し、入力された複数枚の画像と、検出されたマーカとをメモリ（図示せず）等に記憶させればよい。
【００２１】
コードがＱＲコードである場合に、ＱＲコードからマーカを検出する方法を、図２を用いて具体的に説明する。図２は、ＱＲコードにおいて画像とセルとの関係の例を示す説明図である。図２における画像Ｆ１０１が入力画像である場合、マーカ検出手段１２０１は、マーカＦ１０２１，Ｆ１０２２，Ｆ１０３３を検出する。
【００２２】
マーカ領域ボケ除去手段１２０２は、マーカ検出手段１２０１がコードを特徴付けるマーカを検出すると、そのマーカによって特定される領域のボケを除去したコード画像（すなわち、復元画像と記す。）を生成する。例えば、復元画像の画素数とコードのセル数とが同一であるものとする。また、復元画像の各画素の輝度値をラスタスキャン順に並べた縦ベクトルをＸと表すこととする。なお、この縦ベクトルＸを復元画像と記すこともある。入力された画像のセル数がＭである場合、Ｘ＝（Ｘ１，・・・，Ｘｉ，・・・，ＸＭ）ｔになる。例えば、図２における画像Ｆ１０１が入力画像として入力された場合、復元画像の画素数は、Ｆ１０３に例示するセル数、すなわち、３７×３７セルになる。したがって、この場合、縦ベクトルＸの次元は、１３６９（＝３７×３７）次元になる。なお、ここでは復元画像を輝度値のみで生成する場合について説明した。ただし、マーカ領域ボケ除去手段１２０２が画像を生成する方法は輝度値を用いる方法に限定されない。例えば、各画素のＲＧＢ値をそれぞれ独立にラスタスキャン順に並べた縦ベクトルをＸＲ、ＸＧ、ＸＢとしたとき、マーカ領域ボケ除去手段１２０２は、ＲＧＢ値によって表されたそれぞれの復元画像を生成してもよい。
【００２３】
画像出力手段１３００は、マーカ領域ボケ除去手段１２０２が生成した復元画像Ｘを出力する出力装置である。画像出力手段１３００は、例えば、ディスプレイ装置などにより実現される。
【００２４】
以下、マーカ領域ボケ除去手段１２０２に含まれる各構成要素について説明する。セル配置推定手段１２０３は、マーカ検出手段１２０１が検出したマーカから、セルの配置を推定する。なお、ここでいうセル配置は、コード中のセル数など、コードの構成要素の配置を規定するパラメータで表わされる。なお、セル配置推定手段１２０３が推定する配置は、セルに限定されない。セル配置推定手段１２０３が推定する配置は、二次元コードの種類ごとに規定されるセル以外の他の構成要素であってもよい。
【００２５】
具体的には、セル配置推定手段１２０３は、マーカ検出手段１２０１が検出したマーカに基づいて二次元コードの種類を特定する。そして、セル配置推定手段１２０３は、二次元コードの種類ごとに定められたフォーマットに基づいて、コード全体のセル数を推定する。なお、マーカと二次元コードとの対応関係、および、二次元コードとフォーマットとの対応関係は、予めメモリ等に記憶しておく。そして、セル配置推定手段１２０３は、これらの対応関係に基づいて二次元コードの種類の特定、および、セル数の推定を行えばよい。
【００２６】
そして、セル配置推定手段１２０３は、推定したセル配置と、マーカ検出手段１２０１に記憶されているマーカおよび入力画像をメモリ（図示せず）等に記憶させる。なお、入力される画像が複数枚の場合、セル配置推定手段１２０３は、その全ての画像についてセル配置を推定し、推定したセル配置とマーカ検出手段１２０１に記憶されているマーカとをメモリ（図示せず）等に記憶させればよい。
【００２７】
ボケ関数決定手段１２０４は、検出されたコード画像（すなわち、ニ次元コードが撮影された画像）のボケの程度を表す関数（以下、ボケ関数と記す。）を決定する。一般的に、画像を撮影する際、光学系のレンズの焦点が合わないことや、手振れなどにより画像がぶれることにより、画像中のエッジが不鮮明になる。ボケ関数は、このような画像中のエッジが不鮮明になる効果を表す関数である。
【００２８】
ボケ関数として、例えば、点広がり関数（ＰＳＦ：Ｐｏｉｎｔ  Ｓｐｒｅａｄ  Ｆｕｎｃｔｉｏｎ）などが挙げられる。ただし、ボケ関数は、点広がり関数に限定されない。ボケ関数は、ボケ画像におけるボケの程度を表す関数であれば、他の関数であってもよい。ボケ関数決定手段１２０４は、決定したボケ関数をメモリ（図示せず）等に記憶させる。なお、入力される画像が複数枚の場合、ボケ関数決定手段１２０４は、その全ての画像についてそれぞれボケ関数を決定し、決定したボケ関数をメモリ（図示せず）等に記憶させればよい。
【００２９】
ボケ関数決定手段１２０４は、入力画像からコード画像のボケの程度を検出してボケ関数を決定してもよい。ボケ関数決定手段１２０４は、例えば、ジャイロセンサなどの角速度センサが検知する撮像面の傾きを示す情報や、加速度センサが検知する平行移動成分を示す情報をもとに撮像装置の動きを推定してボケ関数を決定してもよい。また、利用者によって予め決められた関数を、ボケ関数として用いてもよい。利用者がボケ関数を指定する場合、ボケ関数決定手段１２０４は、利用者によって指定された関数をボケ関数と決定すればよい。
【００３０】
以下では、ボケ関数によって表されるボケをＮ×Ｎの行列Ｂによって表す。また、画素数がＮである画像における各画素の画素値をそれぞれラスタスキャン順に並べた縦ベクトルをＺとし、与えられたボケ関数によりぼかされた画像Ｚの各画素の画素値をそれぞれラスタスキャン順に並べた縦ベクトルをＺｂとする。このとき、縦ベクトルＺと縦ベクトルＺｂとの関係は、Ｂを用いて以下に示す式１のように表される。
【００３１】
Ｚｂ＝Ｂ・Ｚ  （式１）
【００３２】
言い換えると、縦ベクトルＺは、ぼけていない画像を表し、縦ベクトルＺｂは、ぼけている画像を表す。入力画像Ｙは、ぼけている画像であるため、縦ベクトルＺｂに対応する。
【００３３】
幾何変形推定手段１２０５は、セル配置推定手段１２０３が推定したセル配置と入力画像とから、これらの幾何変形行列Ｗを推定する。幾何変形行列Ｗは、コードがセル上に配置されていることを制約する行列である。言い換えると、幾何変形行列Ｗは、入力された各画素の輝度値を、コードを構成するいずれかのセルに対して割り当てる行列であるということも出来る。
【００３４】
ここで、コードの形状（すなわち、セル配置）を基準とする入力画像の変動は、平行移動や、回転および拡大等の一様である幾何学的な変形モデルで表される。また、上記入力画像の変動は、Ｂスプライン関数等の補間関数によって表される非一様変形である幾何学的な変形モデルでも表される。また、これらの変換モデルは、平行移動量や回転量などのパラメータにより表される。例えば、幾何学的な変換モデルを予め定めておいた場合、幾何変形推定手段１２０５は、変換モデルのパラメータを推定し、推定したパラメータを用いて幾何変形行列Ｗを算出する。
【００３５】
なお、変換モデルのパラメータは、基準とするコードの形状に存在する特徴点（例えば、マーカの中心座標）と、対応する入力画像の特徴点（マーカの中心座標）とを一致させるために行われる変換処理に用いられるパラメータと言える。そのため、幾何変形推定手段１２０５は、このパラメータを、例えば、最小二乗推定などで求め、変換モデルのパラメータとしてもよい。
【００３６】
なお、上記説明では、幾何変形推定手段１２０５が特徴点を用いて変換モデルのパラメータを求める方法について説明した。ただし、幾何変形推定手段１２０５が変換モデルのパラメータを求める方法は特徴点を用いる方法に限定されない。幾何変形推定手段１２０５は、特徴点ベースによる手法だけでなく、例えば、以下に示す参考文献に記載されているように、領域ベースによる手法を用いて変換モデルのパラメータを求めてもよい。
【００３７】
＜参考文献＞
Bruce D.Lucas, Takeo Kanade, “An Iterative Registration Technique with an Application to Stereo Vision”, Proceedings of Imaging Understanding Workshop, １９８１年，pp.121-130
【００３８】
この変換モデルとパラメータが算出されれば、入力画像の位置とコードの位置との対応関係を求めることが出来る。そのため、幾何変形推定手段１２０５は、コードのある位置の画素値を、例えば、入力画像の対応する位置の周辺の輝度値から補間する（すなわち、入力画像の画素値の線形和とする）ことで求めることが出来る。
【００３９】
ここで、入力画像の画素数がＮ、変換後の画像の画素数がＭの場合、幾何変形行列Ｗは、Ｎ×Ｍの行列で表わされる。具体的には、画素数がＮの画像の画素値を成分とする縦ベクトルをＺＮとし、行列Ｗによって画素数がＭに変形された画像の画素値を成分とする縦ベクトルをＺＭとする。このとき、縦ベクトルＺＮと縦ベクトルＺＭとの関係は、行列Ｗを用いて以下に示す式２のように表される。
【００４０】
ＺＭ＝Ｗ・ＺＮ  （式２）
【００４１】
すなわち、縦ベクトルＺＮは、幾何変換前の画像を表し、縦ベクトルＺＭは、幾何変換後の画像を表す。セル配置が幾何変換され、さらにぼけたものが入力画像である。そのため、入力画像Ｙは、縦ベクトルＺＭに対応する。
【００４２】
そして、幾何変形推定手段１２０５は、推定した幾何変形行列Ｗと、セル配置と、入力画像とをメモリ（図示せず）等に記憶させる。なお、入力される画像が複数枚の場合、幾何変形推定手段１２０５は、その全ての画像についてそれぞれ幾何変形行列を推定し、推定した幾何変形行列と、セル配置と、入力画像とをメモリ（図示せず）等に記憶させればよい。
【００４３】
誤差関数決定手段１２０６は、入力画像と、ボケ関数決定手段１２０４が決定したボケ行列Ｂと、幾何変形推定手段１２０５が推定した幾何変形行列Ｗとを用いて、入力画像の輝度成分Ｙと、復元画像の輝度成分Ｘとの関係を表す誤差関数Ｅｄａｔａ（Ｘ）を決定する。そして、誤差関数決定手段１２０６は、決定した誤差関数をメモリ（図示せず）等に記憶させる。誤差関数Ｅｄａｔａ（Ｘ）は、ＹとＸとＷとＢとを含む関数であり、Ｘが正しく復元された画像（すなわち、入力画像と復元画像に幾何変形とボケを加えた画像との誤差が小さい）を示すほど小さい値をとる関数である。誤差関数Ｅｄａｔａ（Ｘ）は、例えば、以下に示す式３のような関係式として予め定義される。
【００４４】
Ｅｄａｔａ（Ｘ）＝ｆ（｜Ｂ・Ｗ・Ｘ−Ｙ｜）  （式３）
【００４５】
ここで、ｆ（・）は、引数の値が小さいほど小さな値をとる関数である。また、｜・｜は、ベクトルのノルムを表す。なお、関数を決定するとは、ボケ行列Ｂや幾何変形行列Ｗなどのパラメータを、予め定められた関係式に当てはめることと言える。そこで、誤差関数決定手段１２０６は、誤差関数Ｅｄａｔａ（Ｘ）を表すために必要なパラメータ（すなわち、入力画像、ボケ行列Ｂ、幾何変形行列Ｗ）を、メモリに記憶させる。
【００４６】
なお、上記説明では、誤差関数決定手段１２０６が輝度値のみを用いた誤差関数を決定する場合について説明した。ただし、誤差関数決定手段１２０６が決定する誤差関数に用いられる値は輝度値に限定されない。例えば、復元画像がＲＧＢ値（すなわちＸＲ、ＸＧ、ＸＢ）を用いて表される場合、誤差関数Ｅｄａｔａ（ＸＲ，ＸＧ，ＸＢ）を、以下に示す式４のような関係式として定義すればよい。
【００４７】
【数１】
2012029238.tif 000003
【００４８】
なお、上記説明では、誤差関数決定手段１２０６が１枚の入力画像のみを用いて誤差関数を決定する場合について説明した。ただし、誤差関数決定手段１２０６が誤差関数を決定する際に用いられる入力画像の枚数は１枚に限定されない。例えば、Ｐ枚の入力画像の輝度値が、それぞれＹ１，Ｙ２，・・・，ＹＰである場合、誤差関数Ｅｄａｔａ（Ｘ）を、以下に示す式５のような関係式として定義すればよい。
【００４９】
【数２】
2012029238.tif 000004
【００５０】
ただし、Ｂ１，Ｂ２，・・・，ＢＰは、それぞれの画像において推定されたボケ行列である。また、Ｗ１，Ｗ２，・・・，ＷＰはそれぞれの画像において推定された幾何変形行列である。
【００５１】
画素値制約手段１２０７は、復元画像が取り得る画素値を離散化した画素値に制約するときの制約条件を規定した情報（以下、画素値制約情報）を決定する。画素値制約手段１２０７は、画素値制約情報として、例えば、復元する画像の取り得る画素値が少数の離散値であるとする制約条件を決定してもよい。ただし、画素値制約手段１２０７が決定する画素値制約情報は、上記内容に限定されない。他にも、画素値制約手段１２０７は、画素値制約情報として、画像に含まれる各画素の画素値が離散化した画素値のうちのいずれかに近いほどより適切な画像であることを示す関数を定義し、この関数を制約条件として決定してもよい。
【００５２】
以下、画素値制約手段１２０７が、画素値制約情報として、画像に含まれる各画素の画素値が離散化した画素値のうちのいずれかに近いほどより適切な画像であることを示す関数を定義し、その関数を制約条件として決定する場合について説明する。
【００５３】
画素値制約手段１２０７は、コードが離散化された少数の画素値から構成されることを制約する画素値制約関数Ｅｒｅｇ（Ｘ）を定義し、定義した画素値制約関数をメモリ（図示せず）等に記憶させる。以下の説明では、画素値制約手段１２０７が画素値制約関数を定義することを、画素値制約手段１２０７が画素値制約関数を決定すると記すこともある。画素値制約関数Ｅｒｅｇ（Ｘ）は、比較する画像に含まれる各画素の画素値が、二次元コードを構成する画素値として定められた少数の離散値のうちのいずれかに近いほど小さな値をとる関数として定義される。例えば、コードがｉ個の画素値から構成されている場合、Ｅｒｅｇ（Ｘ）は、以下に示す式６のような関係式として予め定義される。
【００５４】
Ｅｒｅｇ（Ｘ）＝ｇ（Ｘ，Ｘ１，・・・，Ｘｉ）    （式６）
【００５５】
ただし、Ｘ１からＸｉは、コードを構成する画素値である。また、ｇ（Ｘ，Ｘ１，・・・，Ｘｉ）は、ベクトルＸの各成分が、Ｘ１からＸｉの値のいずれかに近いほど小さな値をとる関数である。ＱＲコードをコードの例として説明すると、ＱＲコードは、白と黒の２つの画素値で構成されているため、Ｅｒｅｇ（Ｘ）は、以下に示す式７のように定義できる。なお、Ｘ１、Ｘ２はそれぞれ黒、白の画素値を表す。
【００５６】
Ｅｒｅｇ（Ｘ）＝ｇ（Ｘ，Ｘ１，Ｘ２）  （式７）
【００５７】
なお、画素値制約関数を決定するとは、与えられたパラメータを、予め定められた関係式に当てはめると言うことが出来る。そこで、画素値制約手段１２０７は、画素値制約関数Ｅｒｅｇ（Ｘ）を表すために必要なパラメータ（ここでは、Ｘ１、Ｘ２）を、例えば、利用者の指示に応じて、メモリ（図示せず）に記憶させる。
【００５８】
なお、上記説明では、画素値制約手段１２０７が輝度値のみを用いた画素値制約関数を決定する場合について説明した。ただし、画素値制約手段１２０７が決定する画素値制約関数に用いられる値は輝度値に限定されない。例えば、復元画像がＲＧＢ値（すなわちＸＲ、ＸＧ、ＸＢ）を用いて表される場合、画素値制約関数Ｅｒｅｇ（ＸＲ，ＸＧ，ＸＢ）を、以下に示す式８のような関係式として定義すればよい。
【００５９】
【数３】
2012029238.tif 000005
【００６０】
ただし、（ＸＲ１，ＸＧ１，ＸＢ１）から（ＸＲｉ，ＸＧｉ，ＸＢｉ）は、コードを構成するｉ個の画素値におけるＲＧＢの大きさである。
【００６１】
目的関数決定手段１２０９は、誤差関数決定手段１２０６が記憶させた誤差関数Ｅｄａｔａ（Ｘ）と、画素値制約手段１２０７が決定した画素値制約情報に基づいて、目的関数Ｅ（Ｘ）を決定する。目的関数とは、復元画像が真の画像に近いほど所定の結果に近づく関係を満たす関数である。具体的には、目的関数Ｅ（Ｘ）は、復元画像が真の画像に近いほど小さな値をとる関数として定義される。例えば、画素値制約情報が画素値制約関数Ｅｒｅｇ（Ｘ）として定義された場合、目的関数決定手段１２０９は、誤差関数決定手段１２０６が記憶させた誤差関数Ｅｄａｔａ（Ｘ）と画素値制約手段１２０７が定義したＥｒｅｇ（Ｘ）とを用いて、目的関数Ｅ（Ｘ）を決定する。そして、目的関数決定手段１２０９は、決定した目的関数Ｅ（Ｘ）をメモリ（図示せず）等に記憶させる。目的関数は、例えば、以下に示す式９のような関係式として予め定義される。
【００６２】
Ｅ（Ｘ）＝Ｅｄａｔａ（Ｘ）＋α・Ｅｒｅｇ（Ｘ）  （式９）
【００６３】
ここで、αは、利用者が予め決定したパラメータであり、誤差関数Ｅｄａｔａ（Ｘ）と、Ｅｒｅｇ（Ｘ）との重み付けに用いられる。具体的には、αが大きくなるほど、復元画像の画素値が予め定められた画素値に近づくことに重点が置かれる。一方、αが小さくなるほど、復元画像に幾何変形とボケを加えた画像の画素値を入力画像に近づけることに重点が置かれることを意味する。また、αの値は、コードのグリッド（すなわち、復元画像の画素）ごとに定められてもよい。
【００６４】
なお、ここでも、関数を決定するとは、与えられたパラメータを、予め定められた関係式に当てはめると言うことが出来る。目的関数決定手段１２０９は、目的関数Ｅ（Ｘ）を表すために必要なパラメータ（ここでは、α）を、利用者の指示により受け取ると、受け取ったパラメータで構成される目的関数をメモリ（図示せず）に記憶させる。
【００６５】
なお、上記説明では、目的関数決定手段１２０９が輝度値のみを用いた目的関数を決定する場合について説明した。ただし、目的関数決定手段１２０９が決定する目的関数に用いられる値は輝度値に限定されない。例えば、復元画像がＲＧＢ値（すなわちＸＲ、ＸＧ、ＸＢ）を用いて表される場合、目的関数Ｅ（ＸＲ，ＸＧ，ＸＢ）を、以下に示す式１０のような関係式として定義すればよい。
【００６６】
【数４】
2012029238.tif 000006
【００６７】
最適化領域指定手段１２０８は、最適化する領域を指定する。ここで、最適化する領域を指定するとは、入力画像を復元する領域を特定することを意味する。例えば、最適化する領域をユーザ等により指示されるとする。このとき、最適化領域指定手段１２０８は、その指示に応じて、セル配置推定手段１２０３が推定したセル配置から、復元画像の輝度成分Ｘのうち、目的関数Ｅ（Ｘ）を用いて推定する必要がある画素を指定する。なお、最適化する領域が既知の場合、最適化領域指定手段１２０８は、その領域を最適化する領域として特定すればよい。
【００６８】
最適化する領域について、ＱＲコードの場合を例に挙げて説明する。図３は、ＱＲコードにおいて、最適化する必要がある領域の例を示す説明図である。マーカが存在している画素については、利用者は、既に正解を知っている。そのため、この領域については目的関数Ｅ（Ｘ）を用いて推定（最適化）する必要がない。また、ＱＲコード以外の領域についても、目的関数Ｅ（Ｘ）を用いて推定（最適化）する必要がない。したがって、例えば、画像Ｆ１１の場合、最適化領域指定手段１２０８は、これ以外の画素、すなわち、画像Ｆ１１の斜線部領域Ｆ１１１を、目的関数Ｅ（Ｘ）を用いて推定する必要がある画素として指定する。
【００６９】
また、画像Ｆ１２に示すように、複数種類のマーカがコード内に存在している場合、最適化領域指定手段１２０８は、複数種類のマーカを除いた画素、すなわち、画像Ｆ１２の斜線部領域Ｆ１１２を、目的関数Ｅ（Ｘ）を用いて推定する必要がある画素として指定すればよい。
【００７０】
目的関数最適化手段１２１０は、目的関数Ｅ（Ｘ）を最適化することにより復元画像Ｘを決定する。具体的には、目的関数最適化手段１２１０は、目的関数Ｅ（Ｘ）が最小になるＸを計算する。目的関数最適化手段１２１０は、例えば、以下に例示する式１１を満たすＸ０を計算する。
【００７１】
【数５】
2012029238.tif 000007
【００７２】
目的関数最適化手段１２１０は、例えば、共役勾配法を用いてＸ０を計算してもよい。このようにして求められる画像は、目的関数を最適化したときの画像である。言い換えると、目的関数Ｅ（Ｘ）を最小にするＸを計算することは、目的関数を最適化するということができる。
【００７３】
なお、上記説明では、目的関数最適化手段１２１０が最適化する画素値が輝度値である場合について説明した。ただし、目的関数最適化手段１２１０が最適化する値は輝度値に限定されない。例えば、復元画像がＲＧＢ値を用いて表される場合、目的関数最適化手段１２１０は、目的関数Ｅ（ＸＲ，ＸＧ，ＸＢ）が最小になるＸＲ、ＸＧおよびＸＢの値、すなわちＸＲ０、ＸＧ０および、ＸＢ０を計算すればよい。
【００７４】
画素値離散化手段１２１１は、予め利用者によって与えられた閾値を用いて、目的関数最適化手段１２１０が算出したＸ０の画素値を離散化することにより、復元画像を生成する。Ｘ０の画素値を離散化することで、復元画像中のコードに含まれる領域における全ての画素の輝度値がＸ１からＸｉの値のどれかになる。例えば、輝度値を２つに離散化する場合、予め１つの閾値を設定しておく。このとき、画素値離散化手段１２１１は、Ｘ０の画素値が閾値以上である場合に輝度値をＸ１、閾値を下回る場合に輝度値をＸ２と離散化すればよい。そして、画素値離散化手段１２１１は、離散化した画素値の画像を画像出力手段１３００に出力させる。
【００７５】
なお、上記説明では、画素値離散化手段１２１１が離散化する画素値が輝度値である場合について説明した。ただし、画素値離散化手段１２１１が離散化する値は輝度値に限定されない。例えば、復元画像がＲＧＢ値を用いて表される場合、画素値離散化手段１２１１は、目的関数最適化手段１２１０が算出した各画素の画素値を、コードを構成する最も近い画素値に置き換えればよい。
【００７６】
なお、目的関数最適化手段１２１０が、目的関数を最適化することにより決定したＸ０を復元画像Ｘとしてもよい。ただし、画素値離散化手段１２１１が、画素値を離散化することにより、より明確な二次元コードを導出することが出来る。
【００７７】
上述するように、マーカ検出手段１２０１と、マーカ領域ボケ除去手段１２０２（より具体的には、セル配置推定手段１２０３と、ボケ関数決定手段１２０４と、幾何変形推定手段１２０５と、誤差関数決定手段１２０６と、画素値制約手段１２０７と、最適化領域指定手段１２０８と、目的関数決定手段１２０９と、目的関数最適化手段１２１０と、画素値離散化手段１２１１）とは、プログラム（画像処理プログラム）に従って動作するコンピュータのＣＰＵ等によって実現される。例えば、プログラムは、画像処理システム内装置の記憶部（図示せず）に記憶され、ＣＰＵは、そのプログラムを読み込み、プログラムに従って、マーカ検出手段１２０１、および、マーカ領域ボケ除去手段１２０２（より具体的には、セル配置推定手段１２０３、ボケ関数決定手段１２０４、幾何変形推定手段１２０５、誤差関数決定手段１２０６、画素値制約手段１２０７、最適化領域指定手段１２０８、目的関数決定手段１２０９、目的関数最適化手段１２１０、および、画素値離散化手段１２１１）として動作してもよい。
【００７８】
マーカ検出手段１２０１と、マーカ領域ボケ除去手段１２０２（より具体的には、セル配置推定手段１２０３と、ボケ関数決定手段１２０４と、幾何変形推定手段１２０５と、誤差関数決定手段１２０６と、画素値制約手段１２０７と、最適化領域指定手段１２０８と、目的関数決定手段１２０９と、目的関数最適化手段１２１０と、画素値離散化手段１２１１）とは、それぞれが専用のハードウェアで実現されていてもよい。
【００７９】
次に、本実施形態における画像処理システムの動作を説明する。図４は、第１の実施形態における画像処理システムの動作の例を示すフローチャートである。まず、画像入力手段１１００に画像が入力されると、画像入力手段１１００は、入力された画像をメモリ（図示せず）に記憶させる（ステップＳ２０１）。次に、マーカ検出手段１２０１は、画像入力手段１１００がメモリ（図示せず）に記憶させた入力画像からマーカを検出する（ステップＳ２０２）。なお、マーカが検出されなかった場合、処理を終了させてもよい。そして、セル配置推定手段１２０３は、検出されたマーカから、セル配置を推定する（ステップＳ２０３）。
【００８０】
次に、幾何変形推定手段１２０５は、入力画像とセル配置とから、幾何変形行列Ｗを推定する（ステップＳ２０４）。さらに、ボケ関数決定手段１２０４は、ボケ関数Ｂを決定する（ステップＳ２０５）。誤差関数決定手段１２０６は、推定されたボケ関数Ｂと幾何変形行列Ｗとから誤差関数を決定し、その誤差関数をメモリ（図示せず）に記憶させる（ステップＳ２０６）。
【００８１】
画素値制約手段１２０７は、セル配置推定手段１２０３によってメモリ（図示せず）に記憶されたセル配置をもとに利用者が指示する画素値制約関数を表すためのパラメータを受け取る。そして、画素値制約手段１２０７は、そのパラメータと予め定義された関数を基に画素値制約関数を決定し、決定した画素値制約関数をメモリ（図示せず）に記憶させる（ステップＳ２０７）。
【００８２】
そして、目的関数決定手段１２０９は、誤差関数決定手段１２０６がメモリ（図示せず）に記憶させた誤差関数と、画素値制約手段１２０７がメモリ（図示せず）に記憶させた画素値制約関数とから目的関数を決定し、決定した目的関数をメモリ（図示せず）に記憶させる（ステップＳ２０８）。
【００８３】
セル配置推定手段１２０３が推定したセル配置から、目的関数を用いて最適化する領域が最適化領域指定手段１２０８により指定されると、目的関数最適化手段１２１０は、その領域について、目的関数を最適化する（ステップＳ２０９）。画素値離散化手段１２１１は、目的関数を最適化することで得られた結果に対する画素値を離散化し、復元画像を導出する（ステップＳ２１０）。最後に、画像出力手段１３００は、導出された復元画像を出力する（ステップＳ２１１）。
【００８４】
次に、本実施形態の効果を説明する。以上のように、本実施形態によれば、誤差関数決定手段１２０６が、ボケ関数Ｂおよび幾何変形行列Ｗを用いて、ボケ画像を復元した復元画像Ｘに対して幾何変形とボケを加えた画像と入力画像Ｙとの誤差が小さいほど小さな値をとる誤差関数Ｅｄａｔａを決定する。また、画素値制約手段１２０７が、画素値制約情報を決定する。次に、目的関数決定手段１２０９が、誤差関数Ｅｄａｔａと画素値制約情報とに基づいて、目的関数を決定する。そして、目的関数最適化手段１２１０が、目的関数を最適化する復元画像Ｘを決定する。よって、ボケが大きいコード画像から正確な復元画像を得ることができる。
【００８５】
すなわち、本実施形態では、コード画像に関する複数の制約をもとに決定された目的関数を用いるため、複数の制約を持つ不良設定問題を解くことになり、解が安定する。よって、ボケが大きい画像であっても、より正確な復元画像を得ることができる。
【００８６】
次に、本実施形態における変形例について説明する。上記実施形態では、画素値制約手段１２０７が、画素値制約情報として画素値制約関数Ｅｒｅｇ（Ｘ）を定義し、画素値制約関数Ｅｒｅｇ（Ｘ）を制約条件として決定する場合について説明した。本変形例では、画素値制約手段１２０７が、画素値制約情報として、復元する画像の取り得る画素値が少数の離散値であるとする制約条件を決定する場合について説明する。
【００８７】
画素値制約手段１２０７は、セル配置推定手段１２０３が推定したセル配置から、制約条件として、コードを構成する画素値Ｘ１〜Ｘｉを決定する。この画素値Ｘ１〜Ｘｉは、利用者によって与えられる値であってもよく、画素値制約手段１２０７がセル配置から動的に推定した値であってもよい。例えば、復元するコードがＱＲコードである場合、画素値制約手段１２０７は、セル配置推定手段１２０３が推定したセル配置から、ＱＲコード内の輝度値の最大値と最小値を算出し、これをＸ１, Ｘ２としてもよい。そして、画素値制約手段１２０７は、決定した画素値Ｘ１〜Ｘｉをメモリ（図示せず）等に記憶させる。
【００８８】
なお、画素値制約手段１２０７が決定する画素値制約関数に用いられる値は輝度値に限定されない。例えば、復元画像がＲＧＢ値（すなわちＸＲ，ＸＧ，ＸＢ）を用いて表される場合、画素値制約手段１２０７は、制約条件として、コードを制約する画素値（ＸＲ１，ＸＧ１，ＸＢ１）〜（ＸＲｉ，ＸＧｉ，ＸＢｉ）を決定してもよい。
【００８９】
目的関数決定手段１２０９は、誤差関数決定手段１２０６が記憶させた誤差関数Ｅｄａｔａ（Ｘ）と、画素値制約手段１２０７が決定したコードを構成する画素値Ｘ１〜Ｘｉとから、例えば、以下に示す式１２で定義される目的関数Ｅ（Ｘ）を決定する。
【００９０】
Ｅ（Ｘ）＝ｈ（｜Ｂ・Ｗ・Ｘ−Ｙ｜）  （式１２）
【００９１】
ここで、ｈ（・）は、引数の値が小さいほど小さな値をとる関数である。また、｜・｜は、ベクトルのノルムを表す。また、目的関数決定手段１２０９は、式１２の代わりに、以下に示す式１３で定義される目的関数Ｅ（Ｘ）を決定してもよい。
【００９２】
Ｅ（Ｘ）＝  −２ＹＴ・Ｂ・Ｗ・Ｘ＋ＸＴ・ＷＴ・ＢＴ・Ｂ・Ｗ・Ｘ  （式１３）
【００９３】
ただし、式１２及び式１３で定義されるいずれの目的関数Ｅ（Ｘ）も、Ｘの各成分は、画素値制約手段１２０７が決定した画素値Ｘ１〜Ｘｉのみを値として取るという制約がある。
【００９４】
なお、目的関数決定手段１２０９が決定する目的関数に用いられる値は輝度値に限定されない。例えば、復元画像がＲＧＢ値（すなわちＸＲ，ＸＧ，ＸＢ）を用いて表される場合、目的関数Ｅ（ＸＲ，ＸＧ，ＸＢ）を、以下に示す式１４や式１５のような関係式として定義してもよい。
【００９５】
【数６】
2012029238.tif 000008
【００９６】
ただし、式１４及び式１５で定義されるいずれの目的関数Ｅ（ＸＲ，ＸＧ，ＸＢ）も、ＸＲ、ＸＧおよびＸＢの各成分は、画素値制約手段１２０７が決定した画素値Ｘ１〜Ｘｉのみを値として取るという制約がある。
【００９７】
目的関数最適化手段１２１０は、目的関数Ｅ（Ｘ）を最適化する。具体的には、目的関数最適化手段１２１０は、目的関数Ｅ（Ｘ）が最小になるＸを計算する。目的関数最適化手段１２１０は、例えば、離散多値最適化手法を用いて目的関数Ｅ（Ｘ）を最適化する。なお、目的関数最適化手段１２１０は、最適化の手法として、例えば、Ｇｒａｐｈ  Ｃｕｔｓ、Ｆｕｓｉｏｎ  Ｍｏｖｅ、Ｑｕａｄｒａｔｉｃ  Ｐｓｅｕｄｏ−Ｂｏｏｌｅａｎ Ｏｐｔｉｍｉｓａｔｉｏｎ、Ｂｅｌｉｅｆ  Ｐｒｏｐａｇａｔｉｏｎなどを用いればよい。
【００９８】
すなわち、上記実施形態では、目的関数最適化手段１２１０は、共役勾配法などを用いて目的関数を最適化していた。一方、本変形例では、目的関数最適化手段１２１０が目的関数を最適化する際、離散多値最小化手法を用いることが可能になる。
【００９９】
実施形態２．
次に、本発明の第２の実施形態における画像処理システムについて説明する。なお、第１の実施形態と同様の構成については、図１と同一の符号を付し、説明を省略する。図５は、本発明の第２の実施形態における画像処理システムの例を示すブロック図である。第２の実施形態における画像処理システムは、画像入力手段１１００と、プログラム制御により動作するコンピュータ１２００ａと、画像出力手段１３００とを備えている。第１の実施形態と同様、コンピュータ１２００ａは、中央処理装置や、プロセッサ、データ処理装置と呼ぶこともできる。
【０１００】
コンピュータ１２００ａは、マーカ検出手段１２０１と、マーカ領域ボケ除去手段１２０２ａとを含む。さらに、マーカ領域ボケ除去手段１２０２ａは、セル配置推定手段１２０３と、ボケ関数決定手段１２０４と、幾何変形推定手段１２０５と、誤差関数決定手段１２０６と、画素値制約手段１２０７と、最適化領域指定手段１２０８と、目的関数決定手段１２０９ａと、同時最適化変数指定手段３００１と、目的関数同時最適化手段３００２と、画素値離散化手段１２１１とを含む。
【０１０１】
画像入力手段１１００、マーカ検出手段１２０１、セル配置推定手段１２０３、ボケ関数決定手段１２０４、幾何変形推定手段１２０５、誤差関数決定手段１２０６、画素値制約手段１２０７、最適化領域指定手段１２０８、画素値離散化手段１２１１、および、画像出力手段１３００については、第１の実施形態と同様であるため、説明を省略する。
【０１０２】
同時最適化変数指定手段３００１には、後述する目的関数決定手段１２０９ａが決定する目的関数に与えられるパラメータのうち、変数として扱う対象（要素）が指定される。具体的には、目的関数が復元画像Ｘに加え、ボケ行列Ｂ、幾何変形行列Ｗ、コードを構成する離散化された少数の画素値で表わされるとする。この場合、同時最適化変数指定手段３００１には、これらの要素のうち、どの量を変数として扱うかが利用者により指定される。
【０１０３】
なお、上述する要素として指定される変数の自由度を減らすため、ボケ行列Ｂや幾何変形行列Ｗを少数のパラメータによる関数として表してもよい。そして、同時最適化変数指定手段３００１には、これらのパラメータを同時最適化させる変数として入力させるようにしてもよい。
【０１０４】
目的関数決定手段１２０９ａは、同時最適化変数指定手段３００１に指定された要素およびＸを引数として決定された目的関数をメモリ（図示せず）等に記憶させる。例えば、同時最適化変数指定手段３００１にボケ行列Ｂと幾何変形Ｗとが変数として指定された場合に、目的関数決定手段１２０９ａは、目的関数をＥ（Ｘ、Ｗ、Ｂ）と決定すればよい。
【０１０５】
目的関数同時最適化手段３００２は、同時最適化変数指定手段３００１に指定された要素およびＸを同時に最適化する。例えば、目的関数が、Ｅ（Ｘ、Ｗ、Ｂ）の場合、目的関数同時最適化手段３００２は、目的関数Ｅ（Ｘ、Ｗ、Ｂ）が最小になるＸ、Ｗ、Ｂの組を算出する。具体的には、目的関数同時最適化手段３００２は、以下に示す式１６を満たすＸ０、Ｗ０、Ｂ０の組を計算する。
【０１０６】
【数７】
2012029238.tif 000009
【０１０７】
目的関数同時最適化手段３００２は、例えば、ＥＭ（Expectation Maximization）アルゴリズムなどを用いて同時最適化を行ってもよい。
【０１０８】
なお、マーカ検出手段１２０１と、マーカ領域ボケ除去手段１２０２ａ（より具体的には、セル配置推定手段１２０３と、ボケ関数決定手段１２０４と、幾何変形推定手段１２０５と、誤差関数決定手段１２０６と、画素値制約手段１２０７と、最適化領域指定手段１２０８と、目的関数決定手段１２０９ａと、同時最適化変数指定手段３００１と、目的関数同時最適化手段３００２と、画素値離散化手段１２１１）とは、プログラム（画像処理プログラム）に従って動作するコンピュータのＣＰＵ等によって実現される。
【０１０９】
次に、本実施形態における画像処理システムの動作を説明する。図６は、第２の実施形態における画像処理システムの動作の例を示すフローチャートである。まず、画像入力手段１１００に画像が入力されると、画像入力手段１１００は、入力された画像をメモリ（図示せず）に記憶させる（ステップＳ４０１）。次に、マーカ検出手段１２０１は、画像入力手段１１００がメモリ（図示せず）に記憶させた入力画像からマーカを検出する（ステップＳ４０２）。そして、セル配置推定手段１２０３は、検出されたマーカから、セル配置を推定する（ステップＳ４０３）。
【０１１０】
次に、幾何変形推定手段１２０５は、入力画像とセル配置とから、幾何変形行列Ｗを推定する（ステップＳ４０４）。さらに、ボケ関数決定手段１２０４は、ボケ関数Ｂを決定する（ステップＳ４０５）。誤差関数決定手段１２０６は、推定されたボケ関数Ｂと幾何変形行列Ｗとから誤差関数を決定し、その誤差関数をメモリ（図示せず）に記憶させる（ステップＳ４０６）。
【０１１１】
画素値制約手段１２０７は、セル配置推定手段１２０３によってメモリ（図示せず）に記憶されたセル配置をもとに利用者が指示する画素値制約関数を表すためのパラメータを受け取る。そして、画素値制約手段１２０７は、そのパラメータと予め定義された関数を基に画素値制約関数を決定し、決定した画素値制約関数をメモリ（図示せず）に記憶させる（ステップＳ４０７）。
【０１１２】
目的関数決定手段１２０９ａは、誤差関数決定手段１２０６がメモリ（図示せず）に記憶させた誤差関数と、画素値制約手段１２０７がメモリ（図示せず）に記憶させた画素値制約関数と、同時最適化変数指定手段３００１に指定された変数とから目的関数を決定し、決定した目的関数をメモリ（図示せず）に記憶させる（ステップＳ４０８）。
【０１１３】
セル配置推定手段１２０３が推定したセル配置から、目的関数を用いて最適化する領域が最適化領域指定手段１２０８により指定されると、目的関数同時最適化手段３００２は、その領域について、目的関数を最適化する（ステップＳ４０９）。画素値離散化手段１２１１は、目的関数を最適化することで得られた結果に対する画素値を離散化し、復元画像を導出する（ステップＳ４１０）。最後に、画像出力手段１３００は、導出された復元画像を出力する（ステップＳ４１１）。
【０１１４】
以上のように、本実施形態によれば、第１の実施形態に加え、目的関数同時最適化手段３００２が、目的関数のうち、同時最適化変数指定手段３００１に指定された変数を最適化する。具体的には、本実施形態では、目的関数を最適化する際に、既に推定された幾何変形行列Ｗ、ボケ関数Ｂ、コードを構成する離散化された少数の画素値についても同時に最適化を行うように構成されている。そのため、幾何変形行列、ボケ関数、コードを構成する離散化された小数の画素値について誤差が生じていた場合に、これらを補正しつつ、復元画像を得ることが出来る。したがって、第１の実施形態に比べ、より正確な復元画像を得ることが出来る。
【０１１５】
実施形態３．
次に、本発明の第３の実施形態における画像処理システムについて説明する。なお、第１の実施形態と同様の構成については、図１と同一の符号を付し、説明を省略する。図７は、本発明の第３の実施形態における画像処理システムの例を示すブロック図である。第３の実施形態における画像処理システムは、画像入力手段１１００と、プログラム制御により動作するコンピュータ１２００ｂと、画像出力手段１３００と、セル配置入力手段５００１と、幾何変形入力手段５００２と、ボケ関数入力手段５００３とを備えている。第１の実施形態と同様、コンピュータ１２００ｂは、中央処理装置や、プロセッサ、データ処理装置と呼ぶこともできる。
【０１１６】
コンピュータ１２００ｂは、誤差関数決定手段１２０６ｂと、画素値制約手段１２０７ｂと、最適化領域指定手段１２０８ｂと、目的関数決定手段１２０９と、目的関数最適化手段１２１０と、画素値離散化手段１２１１とを含む。なお、画像入力手段１１００、目的関数決定手段１２０９、目的関数最適化手段１２１０、および、画像出力手段１３００については、第１の実施形態と同様であるため、説明を省略する。
【０１１７】
セル配置入力手段５００１には、コードのセル数など、セルの配置を表すパラメータおよびマーカの領域が入力される。入力される値は、利用者が予め決定した値であってもよいし、センサなどにより算出された値であってもよい。
【０１１８】
幾何変形入力手段５００２には、入力画像と復元画像の幾何変形を表す行列（すなわち、幾何変形行列）Ｗとが入力される。そして、幾何変形入力手段５００２は、入力された行列Ｗをメモリ等（図示せず）に記憶させる。入力される値は、セル配置入力手段５００１と同様に、利用者が予め決定した値であってもよいし、センサなどにより算出された値であってもよい。
【０１１９】
ボケ関数入力手段５００３には、ボケ関数が入力される。そして、ボケ関数入力手段５００３は、入力されたボケ関数をメモリ等（図示せず）に記憶させる。入力されるボケ関数の値は、セル配置入力手段５００１と同様に、利用者が予め決定した値であってもよいし、センサなどにより算出された値であってもよい。
【０１２０】
誤差関数決定手段１２０６ｂは、画像入力手段１１００に入力され、メモリ等（図示せず）に記憶されている入力画像と、幾何変形入力手段５００２に入力された幾何変形行列Ｗと、ボケ関数入力手段５００３に入力されたボケ関数Ｗとを用いて、誤差関数を決定する。そして、誤差関数決定手段１２０６ｂは、決定した誤差関数をメモリ（図示せず）等に記憶させる。誤差関数は、第１の実施形態と同様、例えば、式３に例示する関係式として予め定義しておけばよい。
【０１２１】
画素値制約手段１２０７ｂは、画素値制約関数を決定し、決定した画素値制約関数をメモリ（図示せず）等に記憶させる。画素値制約関数のパラメータは、画像入力手段１１００にて記憶されている入力画像と、セル配置入力手段５００１にて記憶されているセル配置とをもとに、利用者等により指示される。画素値制約関数は、第１の実施形態と同様、例えば、式６に例示する関係式として予め定義しておけばよい。
【０１２２】
最適化領域指定手段１２０８ｂは、セル配置入力手段５００１に入力されたセル配置や、マーカの領域をもとに、目的関数決定手段１２０９が決定した目的関数を用いて復元する領域を指定する。なお、最適化領域指定手段１２０８ｂが領域を指定する方法は、第１の実施形態における最適化領域指定手段１２０８が領域を指定する方法と同様である。
【０１２３】
なお、誤差関数決定手段１２０６ｂと、画素値制約手段１２０７ｂと、最適化領域指定手段１２０８ｂと、目的関数決定手段１２０９と、目的関数最適化手段１２１０と、画素値離散化手段１２１１とは、プログラム（画像処理プログラム）に従って動作するコンピュータのＣＰＵ等によって実現される。
【０１２４】
次に、本実施形態における画像処理システムの動作を説明する。図８は、第３の実施形態における画像処理システムの動作の例を示すフローチャートである。まず、画像入力手段１１００に画像が入力されると、画像入力手段１１００は、入力された画像をメモリ（図示せず）に記憶させる（ステップＳ６０１）。次に、セル配置入力手段５００１にはセル配置およびマーカの領域が入力され、幾何変形入力手段５００２には幾何変形行列Ｗが入力され、ボケ関数入力手段５００３にはボケ行列Ｂが入力され、これらの情報がメモリ等（図示せず）に記憶される（ステップＳ６０２）。
【０１２５】
誤差関数決定手段１２０６ｂは、入力されたボケ関数Ｂと幾何変形行列Ｗとから誤差関数を決定し、その誤差関数をメモリ（図示せず）に記憶させる（ステップＳ６０３）。画素値制約手段１２０７ｂは、セル配置入力手段５００１に入力されたセル配置をもとに利用者が指示する画素値制約関数を表すためのパラメータを受け取る。そして、画素値制約手段１２０７ｂは、そのパラメータと予め定義された関数を基に画素値制約関数を決定し、決定した画素値制約関数をメモリ（図示せず）に記憶させる（ステップＳ６０４）。
【０１２６】
そして、目的関数決定手段１２０９は、誤差関数決定手段１２０６ｂがメモリ（図示せず）に記憶させた誤差関数と、画素値制約手段１２０７ｂがメモリ（図示せず）に記憶させた画素値制約関数とから目的関数を決定し、決定した目的関数をメモリ（図示せず）に記憶させる（ステップＳ６０５）。
【０１２７】
セル配置入力手段５００１に入力されたセル配置から、目的関数を用いて最適化する領域が最適化領域指定手段１２０８ｂにより指定されると、目的関数最適化手段１２１０は、その領域について、目的関数を最適化する（ステップＳ６０６）。画素値離散化手段１２１１は、目的関数を最適化することで得られた結果に対する画素値を離散化し、復元画像を導出する（ステップＳ６０７）。最後に、画像出力手段１３００は、導出された復元画像を出力する（ステップＳ６０８）。
【０１２８】
以上のように、本実施形態によれば、セル配置入力手段５００１にセル配置およびマーカの領域が、幾何変形入力手段５００２に幾何変形行列Ｗが、ボケ関数入力手段５００３にボケ行列Ｂが、それぞれ入力される。すなわち、本実施形態では、予め指定されたセル配置、幾何変形行列、ボケ関数を用いて目的関数が定義されるため、正確な目的関数を作成することができる。したがって、第１の実施形態に比べ、より正確な復元画像を得ることが出来る。
【０１２９】
実施形態４．
次に、本発明の第４の実施形態における画像処理システムについて説明する。なお、第１の実施形態と同様の構成については、図１と同一の符号を付し、説明を省略する。図９は、本発明の第４の実施形態における画像処理システムの例を示すブロック図である。第４の実施形態における画像処理システムは、画像入力手段１１００と、プログラム制御により動作するコンピュータ１２００ｄと、画像出力手段１３００とを備えている。第１の実施形態と同様、コンピュータ１２００ｄは、中央処理装置や、プロセッサ、データ処理装置と呼ぶこともできる。
【０１３０】
コンピュータ１２００ｄは、複数マーカ検出手段７００１と、コード識別手段７００２と、マーカ領域ボケ除去手段１２０２ｄと、ボケ除去判定手段７００３とを含む。さらに、マーカ領域ボケ除去手段１２０２ｄは、セル配置推定手段１２０３ｄと、ボケ関数決定手段１２０４と、幾何変形推定手段１２０５と、誤差関数決定手段１２０６と、画素値制約手段１２０７ｄと、最適化領域指定手段１２０８ｄと、目的関数決定手段１２０９と、目的関数最適化手段１２１０と、画素値離散化手段１２１１とを含む。
【０１３１】
画像入力手段１１００、ボケ関数決定手段１２０４、幾何変形推定手段１２０５、誤差関数決定手段１２０６、目的関数決定手段１２０９と、目的関数最適化手段１２１０、画素値離散化手段１２１１、および、画像出力手段１３００については、第１の実施形態と同様であるため、説明を省略する。
【０１３２】
複数マーカ検出手段７００１は、画像中に複数種類のマーカが複数個存在していた場合、これらのマーカを全て検出し、メモリ（図示せず）等に記憶させる。コード識別手段７００２は、検出された各々のマーカがどの種類のコードのマーカであるかを識別し、識別した結果をメモリ（図示せず）等に記憶させる。
【０１３３】
一般的に、コードの種類ごとにセル等の配置は異なる。そのため、セルの配置とコードの種類の対応を予めメモリ（図示せず）に記憶しておくことで、複数マーカ検出手段７００１がマーカを検出するのと同時に、コード識別手段７００２がコードを識別することが可能になる。
【０１３４】
セル配置推定手段１２０３ｄは、コード識別手段７００２が識別したコードの種類に応じて、検出されたマーカからセル配置を推定し、推定したセル配置をメモリ（図示せず）等に記憶させる。なお、セル配置推定手段１２０３ｄが検出されたマーカからセル配置を推定する方法は、第１の実施形態におけるセル配置推定手段１２０３がセル配置を推定する方法と同様である。例えば、識別されたコードがＱＲコードである場合、セル配置推定手段１２０３ｄは、第１の実施形態と同様の方法で、ＱＲコードにおけるセルの配置を推定すればよい。
【０１３５】
画素値制約手段１２０７ｄは、コード識別手段７００２が識別したコードの種類に応じて決定される画素値制約関数をメモリ（図示せず）等に記憶させる。なお、画素値制約手段１２０７ｄが画素値制約関数をメモリ（図示せず）等に記憶させる方法は、第１の実施形態における画素値制約手段１２０７が画素値制約関数をメモリ（図示せず）等に記憶させる方法と同様である。例えば、識別されたコードがＱＲコードである場合、画素値制約手段１２０７ｄは、第１の実施形態と同様の方法で、画素値制約関数をメモリ（図示せず）に記憶させればよい。
【０１３６】
最適化領域指定手段１２０８ｄは、推定されたセル配置をもとに、目的関数決定手段１２０９が決定した目的関数を用いて復元する領域を指定する。なお、最適化領域指定手段１２０８ｄが領域を指定する方法は、第１の実施形態における最適化領域指定手段１２０８が領域を指定する方法と同様である。
【０１３７】
ボケ除去判定手段７００３は、画像中にボケ除去がされていないコードが存在するか否かを判定する。一般的に、画像中のぼけている領域は、その他の領域に比べ、高周波成分が少ないという特徴がある。そこで、ボケ除去判定手段７００３は、画像にハイパスフィルタなどを適用し、高周波成分が少ない領域をぼけている領域とすることでボケを検出し、ボケ除去がされていないコードが存在すると判定してもよい。ただし、ボケ除去判定手段７００３がボケを検出する方法は、ハイパスフィルタを適用する場合に限定されない。
【０１３８】
ボケ除去がされていないコードが存在する場合、再度、コード識別手段７００２がそのコードに対して識別処理を行う。そして、コード識別手段７００２が、コードボケ除去手段１２０２ｄにそのコードのボケ除去を指示する。画像中にボケ除去されていないコードが存在しない場合、ボケ除去判定手段７００３は、その画像をメモリ等（図示せず）に記憶させる。
【０１３９】
なお、複数マーカ検出手段７００１と、コード識別手段７００２と、マーカ領域ボケ除去手段１２０２ｄ（より具体的には、セル配置推定手段１２０３ｄと、ボケ関数決定手段１２０４と、幾何変形推定手段１２０５と、誤差関数決定手段１２０６と、画素値制約手段１２０７ｄと、最適化領域指定手段１２０８ｄと、目的関数決定手段１２０９と、目的関数最適化手段１２１０と、画素値離散化手段１２１１）と、ボケ除去判定手段７００３とは、プログラム（画像処理プログラム）に従って動作するコンピュータのＣＰＵ等によって実現される。
【０１４０】
次に、本実施形態における画像処理システムの動作を説明する。図１０は、第４の実施形態における画像処理システムの動作の例を示すフローチャートである。まず、画像入力手段１１００に画像が入力されると、画像入力手段１１００は、入力された画像をメモリ（図示せず）に記憶させる（ステップＳ８０１）。
【０１４１】
次に、複数マーカ検出手段７００１は、画像入力手段１１００がメモリ（図示せず）に記憶させた入力画像から全てのマーカを検出する（ステップＳ８０２）。コード識別手段７００２は、検出した複数のマーカから、ひとつのマーカを選択し、そのコードの種類を識別する（ステップＳ８０３）。セル配置推定手段１２０３ｄは、識別されたコードの種類とマーカとから、セル配置を推定する（ステップＳ８０４）。
【０１４２】
次に、幾何変形推定手段１２０５は、入力画像とセル配置とから、幾何変形行列Ｗを推定する（ステップＳ８０５）。さらに、ボケ関数決定手段１２０４は、ボケ関数Ｂを決定する（ステップＳ８０６）。誤差関数決定手段１２０６は、推定されたボケ関数Ｂと幾何変形行列Ｗとから誤差関数を決定し、その誤差関数をメモリ（図示せず）に記憶させる（ステップＳ８０７）。
【０１４３】
画素値制約手段１２０７ｄは、セル配置推定手段１２０３ｄによってメモリ（図示せず）に記憶されたセル配置をもとに利用者が指示する画素値制約関数を表すためのパラメータを受ける。そして、画素値制約手段１２０７ｄは、そのパラメータと予め定義された関数を基に画素値制約関数を決定し、決定した画素値制約関数をメモリ（図示せず）に記憶させる（ステップＳ８０８）。
【０１４４】
そして、目的関数決定手段１２０９は、誤差関数決定手段１２０６がメモリ（図示せず）に記憶させた誤差関数と、画素値制約手段１２０７ｄがメモリ（図示せず）に記憶させた画素値制約関数とから目的関数を決定し、決定した目的関数をメモリ（図示せず）に記憶させる（ステップＳ８０９）。
【０１４５】
セル配置推定手段１２０３ｄが推定したセル配置から、目的関数を用いて最適化する領域が最適化領域指定手段１２０８ｄにより指定されると、目的関数最適化手段１２１０は、その領域について、目的関数を最適化する（ステップＳ８１０）。画素値離散化手段１２１１は、目的関数を最適化することで得られた結果に対する画素値を離散化し、コード領域を多値化する（ステップＳ８１１）。
【０１４６】
ボケ除去判定手段７００３は、復元画像中にボケ除去されていないコード領域が存在しないか否かを判別する（ステップＳ８１２）。ボケ除去されていないコード領域が存在する場合（ステップＳ８１２におけるＮＯ）、ステップＳ８０３にもどる。一方、復元画像中にボケ除去されていないコード領域が存在しない場合（ステップＳ８１２におけるＹＥＳ）、ステップＳ８１３に進む。ステップＳ８１３において、画像出力手段１３００は、ボケ除去判定手段７００３の指示に応じて、導出された復元画像を出力する。
【０１４７】
以上の処理をまとめると、ステップＳ８０３では、コード識別手段７００２が検出した複数のマーカから一つ種類のマーカを選択し、ステップＳ８０３〜Ｓ８１１では、マーカ領域ボケ除去手段１２０２ｄが、そのマーカに対応するコードのボケ除去を行い、ステップＳ８１２では、ボケ除去判定手段７００３が画像中のボケ除去されていない種類のコードが存在するか否かを判定する。具体的には、ステップＳ８０３でＱＲコードに対応するマーカが選択されると、Ｓ８０４〜Ｓ８１１で、複数のＱＲコードのボケ除去が行われ、ステップＳ８１１でボケ除去されていない他の種類のコードが存在するかを判定する。すなわち、ステップＳ８１１で復元画像中にボケ除去されていないコード領域が存在するか否かを判定することは、ボケ除去されていない他の種類のコードが存在するか否かを判定しているとも言える。
【０１４８】
以上のように、本実施形態によれば、第１の実施形態に加え、複数マーカ検出手段７００１が、画像中に含まれる複数種類のマーカを検出し、コード識別手段７００２が、検出された各々のマーカに対応するコードの種類を識別する。そして、ボケ除去判定手段７００３が、画像中にボケ除去がされていないコードが存在するか否かを判定する。
【０１４９】
すなわち、本実施形態では、複数マーカ検出手段７００１と、コード識別手段７００２と、ボケ除去判定手段７００３とが、入力画像中の複数のコードの検出とボケ除去を行う。そのため、入力画像に複数種類のコードが複数個存在していても、それら全てのコードのボケ除去を行うことができる。
【実施例】
【０１５０】
以下、具体的な実施例により本発明を説明するが、本発明の範囲は以下に説明する内容に限定されない。本実施例は第１の実施形態に対応するものである。以下、図１を参照して説明する。【０１５１】
本実施例では、画像入力手段１１００として、ＮＴＳＣ（National Television System Committee）信号を入出力できるビデオキャプチャボードを用い、画像出力手段１３００として、ディスプレイ装置を用いる。また、コンピュータ１２００として、画像処理プロセッサを搭載した画像処理ボードを用いる。ビデオキャプチャボードは、入力されたビデオ信号をＹＵＶ信号に変換し、画像処理ボードに送信する。また、ビデオキャプチャボードは、画像処理ボードにおける処理結果が転送させると、その処理結果をビデオ信号に変換してディスプレイ装置に表示させる。このように、本実施例では、画像処理ボードの処理結果をビデオキャプチャボードに転送し、ビデオキャプチャボードが画像をディスプレイ装置に表示させる。【０１５２】
画像処理ボードは、マーカ検出手段１２０１と、マーカ領域ボケ除去手段１２０２とを含む。入力画像の入力信号が画像入力手段１１００に入力されると、画像入力手段１１００はその値をメモリ等に記憶させる。マーカ検出手段１２０１は、入力された画像中に存在するマーカを検出する。ボケ除去を行う対象のコードがＱＲコードである場合、マーカ検出手段１２０１は、例えば、図２に例示するマーカ（マーカＦ１０２１〜Ｆ１０２３）をテンプレートマッチングにより探索する。マーカ検出手段１２０１は、検出したマーカそれぞれの中心座標と入力画像とをメモリ等に記憶させる。【０１５３】
セル配置推定手段１２０３は、マーカ検出手段１２０１が検出したマーカから、コードのセル数を算出する。以下、図１１を用いて、セル数を推定する方法について説明する。図１１は、ＱＲコードにおけるマーカを示す説明図である。ＱＲコードにおけるマーカＦ１２１の大きさは、７×７セルであり、そのうち白枠Ｆ１２２の大きさは、５×５セルである。【０１５４】
マーカ検出手段１２０１が検出したマーカがＱＲコードのマーカである場合、セル配置推定手段１２０３は、まず、マーカの白いセルの枠の大きさから、１セルあたり何画素であるかを推定する。次に、セル配置推定手段１２０３は、コードの３箇所に配置されたマーカの座標から、コード全体が何画素から構成されているかを算出する。そして、セル配置推定手段１２０３は、上記情報を基に着目しているコードのセル数を計算する。最後に、セル配置推定手段１２０３は、推定したセル数、入力画像、および、マーカの中心座標をメモリに記憶させる。【０１５５】
ボケ関数決定手段１２０４は、検出されたマーカ領域がどの程度ぼけているかを表す点広がり関数（ＰＳＦ）、すなわちボケ関数を決定する。ボケ関数は、利用者が予め決定してもよいし、加速度センサなどの情報から推定されたものであってもよい。以下、第１の実施形態と同様、ボケ関数をＢと表わす。また、ボケ関数がＮ×Ｎの行列であるとする。また、画素数がＮである画像における各画素の輝度値をラスタスキャン順に並べた縦ベクトルをＺとする。また、与えられたボケ関数によりぼかされた画像Ｚの各画素の輝度値をラスタスキャン順に並べた縦ベクトルをＺｂとする。このとき、縦ベクトルＺと縦ベクトルＺｂとの関係は、Ｂを用いて先に示した式１のように表すことができる。【０１５６】
幾何変形推定手段１２０５は、セル配置推定手段１２０３がメモリに記憶させたマーカの中心座標から、幾何変形行列Ｗを推定する。画素数がＮの入力画像の輝度値を成分とする縦ベクトルをＺＮとし、幾何変形行列Ｗにより変形された画素数がＭの復元画像の輝度値を成分とする縦ベクトルをＺＭとする。このとき、縦ベクトルＺＮと縦ベクトルＺＭとの関係は、幾何変形行列Ｗを用いて先に示した式２のように表すことができる。【０１５７】
幾何変形推定手段１２０５は、入力画像から検出したマーカの中心座標と復元画像におけるマーカの中心座標との対応点から、予め仮定された変形モデルのパラメータを算出する。このようにして、幾何変形推定手段１２０５は、幾何変形行列Ｗを推定すればよい。なお、変形モデルとしては、例えば、アフィン変換モデルなどが挙げられる。【０１５８】
誤差関数決定手段１２０６は、ボケ関数決定手段１２０４が決定したボケ行列Ｂと、幾何変形推定手段１２０５が推定した幾何変形行列Ｗとを用いて、入力画像の輝度成分Ｙと復元画像の輝度成分Ｘとの関係を表す誤差関数Ｅｄａｔａ（Ｘ）を決定する。そして、誤差関数決定手段１２０６は、決定した誤差関数をメモリに記憶させる。誤差関数Ｅｄａｔａ（Ｘ）は、ＹとＸとＷとＢとを含む関数であり、Ｘが正しく復元された画像であるほど小さい値をとる。誤差関数Ｅｄａｔａ（Ｘ）は、例えば、以下に示す式１７のような関係式として予め定義される。【０１５９】
Ｅｄａｔａ（Ｘ）＝｜Ｂ・Ｗ・Ｘ−Ｙ｜２  （式１７）【０１６０】
画素値制約手段１２０７は、コードが離散された少数の画素値から構成されることを制約する画素値制約関数Ｅｒｅｇ（Ｘ）を決定し、決定した画素値制約関数をメモリに記憶させる。ＱＲコードのように、２値の画素値から二次元コードが構成されている場合、Ｅｒｅｇ（Ｘ）は、以下に示す式１８のような関係式として予め定義される。【０１６１】
【数８】
2012029238.tif 000010
【０１６２】
ここで、以下の記号は、ベクトルの要素ごとの掛け算を表している。Ｘ１、Ｘ２は、コードを構成する２つの画素値である。なお、画素値制約関数Ｅｒｅｇ（Ｘ）を表す関数は、上述する式１８の内容に限定されない。Ｘ１、Ｘ２に極小値をもつ関数であれば他の関数であってもよい。そのような関数として、例えば、２重井戸型ポテンシャルと呼ばれる関数が挙げられる。【０１６３】
【数９】
2012029238.tif 000011
【０１６４】
目的関数決定手段１２０９は、誤差関数決定手段１２０６が決定した誤差関数Ｅｄａｔａ（Ｘ）と、画素値制約手段１２０７が決定したＥｒｅｇ（Ｘ）とを用いて、目的関数を決定する。そして、目的関数決定手段１２０９は、決定した目的関数Ｅ（Ｘ）をメモリに記憶させる。目的関数は、例えば、先に示した式９のような関数として予め定義される。【０１６５】
最適化領域指定手段１２０８は、セル配置推定手段１２０３が推定したセル配置から、復元画像の輝度成分Ｘのうち、目的関数Ｅ（Ｘ）を用いて推定する必要がある画素を指定する。本実施例において、推定する必要がある画素を指定するとは、復元する画像の領域を特定することを意味する。最適化する領域は、例えば、ユーザ等により指示される。【０１６６】
目的関数最適化手段１２１０は、目的関数Ｅ（Ｘ）が最小になるＸを計算する。すなわち、目的関数最適化手段１２１０は、目的関数Ｅ（Ｘ）を最適化するＸを算出する。具体的には、目的関数最適化手段１２１０は、先に示した式１１を満たすＸ０を計算する。目的関数最適化手段１２１０は、目的関数Ｅ（Ｘ）を最適化する方法として、例えば、勾配法、ニュートン法、共役勾配法などを用いてもよい。【０１６７】
画素値離散化手段１２１１は、予め利用者によって与えられた閾値を用いて、目的関数最適化手段１２１０が算出したＸ０の画素値を離散化する。Ｘ０を２値化することで、復元画像中のコードに含まれる領域の全ての画素の輝度値が、Ｘ１またはＸ２の値になる。【０１６８】
なお、本実施例では、誤差関数及び画素値制約関数が輝度値のみを用いて決定される場合について説明した。例えば、誤差関数及び画素値制約関数がＲＧＢ値を用いて表される場合、式１７及び式３のかわりに、以下に示す式１９及び式２０を定義してもよい。【０１６９】
【数１０】
2012029238.tif 000012
【０１７０】
ただし、Πは、ｋが１からｉまでのベクトルの要素ごとの総乗を表している。また、ＸＲｋ、ＸＧｋ、ＸＢｋはそれぞれ、ｋ番目のコードを制約するＲＧＢ値である。【０１７１】
次に、本発明による画像処理システムの最小構成の例を説明する。図１２は、本発明による画像処理システムの最小構成の例を示すブロック図である。本発明による画像処理システムは、誤差関数決定手段９０（例えば、誤差関数決定手段１２０６）と、画素値制約手段９１（例えば、画素値制約手段１２０７）と、目的関数決定手段９２（例えば、目的関数決定手段１２０９）と、目的関数最適化手段９３（例えば、目的関数最適化手段１２１０）とを備えている。【０１７２】
誤差関数決定手段９０は、ぼかされた入力画像の程度を表す関数であるボケ関数（例えば、ボケ関数Ｂ）および入力画像が示す二次元コードがその二次元コードの構成単位であるセル上に配置されることを制約する行列である幾何変形行列（例えば、幾何変形行列Ｗ）を用いて、復元された画像である復元画像（例えば、復元画像Ｘ）に対して幾何変形とボケを加えた画像と入力画像との誤差が小さいほど所定の結果に近づく（例えば、誤差が小さいほど小さな値になる）関係を満たす関数である誤差関数（例えば、Ｅｄａｔａ）を決定する。【０１７３】
画素値制約手段９１は、復元する二次元コードの画素値を離散化した所定の画素値に制約するときの制約条件（例えば、画素値制約関数Ｅｒｅｇ（Ｘ）、復元画像の画素値が少数の離散値をとることを示す条件）を規定した画素値制約情報を決定する。【０１７４】
目的関数決定手段９２は、誤差関数と画素値制約情報とに基づいて、復元画像が真の画像に近いほど所定の結果に近づく関係を満たす関数である目的関数（例えば、目的関数Ｅ（Ｘ））を決定する。【０１７５】
目的関数最適化手段９３は、目的関数を最適化する復元画像を決定する。【０１７６】
そのような構成により、ボケが大きいコード画像から正確な復元画像を得ることができる。すなわち、このような構成を採用し、コード画像に関する複数の制約をもとに構成された目的関数を用いることで、複数の制約のもとで不良設定問題を解くため解が安定化する。ゆえにボケが大きい画像に対しても、より正確な復元画像を得ることができる。【０１７７】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。【０１７８】
（付記１）ぼかされた入力画像の程度を表す関数であるボケ関数および前記入力画像が示す二次元コードが当該二次元コードの構成単位であるセル上に配置されることを制約する行列である幾何変形行列を用いて、復元された画像である復元画像に対して幾何変形とボケを加えた画像と入力画像との誤差が小さいほど所定の結果に近づく関係を満たす関数である誤差関数を決定する誤差関数決定手段と、復元する二次元コードの画素値を離散化した所定の画素値に制約するときの制約条件を規定した画素値制約情報を決定する画素値制約手段と、前記誤差関数と前記画素値制約情報とに基づいて、復元画像が真の画像に近いほど所定の結果に近づく関係を満たす関数である目的関数を決定する目的関数決定手段と、前記目的関数を最適化する復元画像を決定する目的関数最適化手段を備えたことを特徴とする画像処理システム。【０１７９】
（付記２）誤差関数決定手段は、復元画像に対して幾何変形とボケを加えた画像と入力画像との誤差が小さいほど小さい値をとる誤差関数を決定し、画素値制約手段は、画像に含まれる各画素の画素値が離散化した画素値のうちのいずれかに近いほど適切な画像であることを示す関数である画素値制約関数を制約条件とする画素値制約情報を決定し、目的関数決定手段は、前記誤差関数と前記画素値制約情報とに基づいて、復元画像が真の画像に近いほど小さな値をとる目的関数を決定し、目的関数最適化手段は、前記目的関数を最小化する復元画像を決定する付記１記載の画像処理システム。【０１８０】
（付記３）誤差関数決定手段は、復元画像に対して幾何変形とボケを加えた画像と入力画像との誤差が小さいほど小さい値をとる誤差関数を決定し、画素値制約手段は、復元する画像の取り得る画素値が予め定めた個数の離散値であるとする制約条件を画素値制約情報として決定し、目的関数決定手段は、前記誤差関数における復元画像の取り得る画素値を、前記画素値制約情報の制約条件として決定された離散値のいずれかの値をとる目的関数を決定し、目的関数最適化手段は、前記目的関数を最小化する復元画像を決定する付記１記載の画像処理システム。【０１８１】
（付記４）目的関数最適化手段が決定した復元画像の画素値を予め定めら得た閾値を用いて離散化することにより、復元画像を生成する画素値離散化手段を備えた付記１から付記３のうちのいずれか１つに記載の画像処理システム。【０１８２】
（付記５）入力画像から、二次元コードのマーカを検出するマーカ検出手段と、マーカ検出手段が検出したマーカから二次元コードのセル配置を推定するセル配置推定手段と、入力画像に対するボケ関数を決定するボケ関数決定手段と、推定された二次元コードのセル配置から幾何変形行列を推定する幾何変形推定手段と、復元する入力画像の領域を指定する最適化領域指定手段とを備え、誤差関数決定手段は、入力画像と、前記ボケ関数決定手段が決定したボケ関数と、前記幾何変形推定手段が推定した幾何変形行列とをもとに、誤差関数を決定する付記１から付記４のうちのいずれか１つに記載の画像処理システム。【０１８３】
（付記６）目的関数を構成する要素のうち、目的関数最適化手段によって同時に最適化される変数とする要素を指定する同時最適化変数指定手段を備え、目的関数最適化手段は、目的関数を最適化する復元画像および前記同時最適化変数指定手段で指定された要素を決定する付記１から付記５のうちのいずれか１つに記載の画像処理システム。【０１８４】
（付記７）二次元コードのセル配置が入力されるセル配置入力手段と、幾何変形行列が入力される幾何変形入力手段と、ボケ関数が入力されるボケ関数入力手段とを備え、誤差関数決定手段は、幾何変形入力手段に入力された幾何変形行列と、ボケ関数入力手段に入力されるボケ関数とを用いて誤差関数を決定し、画素値制約手段は、セル配置入力手段に入力される二次元コードのセル配置に基づいて、画素値制約情報を決定する付記１から付記４のうちのいずれか１つに記載の画像処理システム。【０１８５】
（付記８）画像中に存在する複数種類のマーカを全て検出する複数マーカ検出手段と、検出されたマーカのコードの種類を識別するコード種類識別手段と、目的関数最適化手段が決定した復元画像中の全てのコードに対するボケ除去がされたか否かを判定するボケ除去判定手段とを備え、セル配置推定手段は、複数マーカ検出手段が検出したマーカから二次元コードのセル配置を推定する付記５から付記７のうちのいずれか１つに記載の画像処理システム。【０１８６】
（付記９）ぼかされた入力画像の程度を表す関数であるボケ関数および前記入力画像が示す二次元コードが当該二次元コードの構成単位であるセル上に配置されることを制約する行列である幾何変形行列を用いて、復元された画像である復元画像に対して幾何変形とボケを加えた画像と入力画像との誤差が小さいほど所定の結果に近づく関係を満たす関数である誤差関数を決定し、復元する二次元コードの画素値を離散化した所定の画素値に制約するときの制約条件を規定した画素値制約情報を決定し、前記誤差関数と前記画素値制約情報とに基づいて、復元画像が真の画像に近いほど所定の結果に近づく関係を満たす関数である目的関数を決定し、前記目的関数を最適化する復元画像を決定することを特徴とする画像処理方法。【０１８７】
（付記１０）
復元画像に対して幾何変形とボケを加えた画像と入力画像との誤差が小さいほど小さい値をとる誤差関数を決定し、画像に含まれる各画素の画素値が離散化した画素値のうちのいずれかに近いほど適切な画像であることを示す関数である画素値制約関数を制約条件とする画素値制約情報を決定し、前記誤差関数と前記画素値制約情報とに基づいて、復元画像が真の画像に近いほど小さな値をとる目的関数を決定し、前記目的関数を最小化する復元画像を決定する付記９記載の画像処理方法。【０１８８】
（付記１１）復元画像に対して幾何変形とボケを加えた画像と入力画像との誤差が小さいほど小さい値をとる誤差関数を決定し、復元する画像の取り得る画素値が予め定めた個数の離散値であるとする制約条件を画素値制約情報として決定し、前記誤差関数における復元画像の取り得る画素値を、前記画素値制約情報の制約条件として決定された離散値のいずれかの値をとる目的関数を決定し、前記目的関数を最小化する復元画像を決定する付記９記載の画像処理方法。【０１８９】
（付記１２）コンピュータに、ぼかされた入力画像の程度を表す関数であるボケ関数および前記入力画像が示す二次元コードが当該二次元コードの構成単位であるセル上に配置されることを制約する行列である幾何変形行列を用いて、復元された画像である復元画像に対して幾何変形とボケを加えた画像と入力画像との誤差が小さいほど所定の結果に近づく関係を満たす関数である誤差関数を決定する誤差関数決定処理、復元する二次元コードの画素値を離散化した所定の画素値に制約するときの制約条件を規定した画素値制約情報を決定する画素値制約処理、前記誤差関数と前記画素値制約情報とに基づいて、復元画像が真の画像に近いほど所定の結果に近づく関係を満たす関数である目的関数を決定する目的関数決定処理、および、前記目的関数を最適化する復元画像を決定する目的関数最適化処理を実行させるための画像処理プログラム。【０１９０】
（付記１３）コンピュータに、誤差関数決定処理で、復元画像に対して幾何変形とボケを加えた画像と入力画像との誤差が小さいほど小さい値をとる誤差関数を決定させ、画素値制約処理で、画像に含まれる各画素の画素値が離散化した画素値のうちのいずれかに近いほど適切な画像であることを示す関数である画素値制約関数を制約条件とする画素値制約情報を決定させ、目的関数決定処理で、前記誤差関数と前記画素値制約情報とに基づいて、復元画像が真の画像に近いほど小さな値をとる目的関数を決定させ、目的関数最適化処理で、前記目的関数を最小化する復元画像を決定させる付記１２記載の画像処理プログラム。【０１９１】
（付記１４）コンピュータに、誤差関数決定処理で、復元画像に対して幾何変形とボケを加えた画像と入力画像との誤差が小さいほど小さい値をとる誤差関数を決定させ、画素値制約処理で、復元する画像の取り得る画素値が予め定めた個数の離散値であるとする制約条件を画素値制約情報として決定させ、目的関数決定処理で、前記誤差関数における復元画像の取り得る画素値を、前記画素値制約情報の制約条件として決定された離散値のいずれかの値をとる目的関数を決定させ、目的関数最適化処理で、前記目的関数を最小化する復元画像を決定させる付記１２記載の画像処理プログラム。【０１９２】
以上、実施形態及び実施例を参照して本願発明を説明したが、本願発明は上記実施形態および実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。【０１９３】
この出願は、２０１０年８月３１日に出願された日本特許出願２０１０−１９３７４５を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【０１９４】
本発明は、ニ次元コードが含まれている画像中の領域を精度良く復元可能な画像処理システムに好適に適用される。
【符号の説明】
【０１９５】
１１００  画像入力手段
１２００，１２００ａ，１２００ｂ，１２００ｄ  コンピュータ
１２０１  マーカ検出手段
１２０２，１２０２ａ，１２０２ｂ，１２０２ｄ  マーカ領域ボケ除去手段
１２０３，１２０３ｄ  セル配置推定手段
１２０４  ボケ関数決定手段
１２０５  幾何変形推定手段
１２０６，１２０６ｂ  誤差関数決定手段
１２０７，１２０７ｂ，１２０７ｄ  画素値制約手段
１２０８，１２０８ｂ，１２０８ｄ  最適化領域指定手段
１２０９，１２０９ａ  目的関数決定手段
１２１０  目的関数最適化手段
１２１１  画素値離散化手段
１３００  画像出力手段
３００１  同時最適化変数指定手段
３００２  目的関数同時最適化手段
５００１  セル配置入力手段
５００２  幾何変形入力手段
５００３  ボケ関数入力手段
７００１  複数マーカ検出手段
７００２  コード識別手段
７００３  ボケ除去判定手段
９０  誤差関数決定手段
９１  画素値制約手段
９２  目的関数決定手段
９３  目的関数最適化手段
【図１】
2012029238.tif 000013
【図２】
2012029238.tif 000014
【図３】
2012029238.tif 000015
【図４】
2012029238.tif 000016
【図５】
2012029238.tif 000017
【図６】
2012029238.tif 000018
【図７】
2012029238.tif 000019
【図８】
2012029238.tif 000020
【図９】
2012029238.tif 000021
【図１０】
2012029238.tif 000022
【図１１】
2012029238.tif 000023
【図１２】
2012029238.tif 000024
【図１３】
2012029238.tif 000025
【手続補正書】
【提出日】平成23年11月14日(2011.11.14)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
入力画像のボケの程度を表す関数であるボケ関数および前記入力画像が示す二次元コードが当該二次元コードの構成単位であるセル上に配置されることを制約する行列である幾何変形行列を用いて、復元された画像である復元画像に対して幾何変形とボケを加えた画像と入力画像との誤差が小さいほど所定の結果に近づく関係を満たす関数である誤差関数を決定する誤差関数決定手段と、
復元する二次元コードの画素値を離散化した所定の画素値に制約するときの制約条件を規定した画素値制約情報を決定する画素値制約手段と、
前記誤差関数と前記画素値制約情報とに基づいて、復元画像が真の画像に近いほど所定の結果に近づく関係を満たす関数である目的関数を決定する目的関数決定手段と、
前記目的関数を最適化する復元画像を決定する目的関数最適化手段を備えた
ことを特徴とする画像処理システム。
【請求項２】
誤差関数決定手段は、復元画像に対して幾何変形とボケを加えた画像と入力画像との誤差が小さいほど小さい値をとる誤差関数を決定し、
画素値制約手段は、画像に含まれる各画素の画素値が離散化した画素値のうちのいずれかに近いほど適切な画像であることを示す関数である画素値制約関数を制約条件とする画素値制約情報を決定し、
目的関数決定手段は、前記誤差関数と前記画素値制約情報とに基づいて、復元画像が真の画像に近いほど小さな値をとる目的関数を決定し、
目的関数最適化手段は、前記目的関数を最小化する復元画像を決定する
請求項１記載の画像処理システム。
【請求項３】
誤差関数決定手段は、復元画像に対して幾何変形とボケを加えた画像と入力画像との誤差が小さいほど小さい値をとる誤差関数を決定し、
画素値制約手段は、復元する画像の取り得る画素値が予め定めた個数の離散値であるとする制約条件を画素値制約情報として決定し、
目的関数決定手段は、前記誤差関数における復元画像の取り得る画素値を、前記画素値制約情報の制約条件として決定された離散値のいずれかの値をとる目的関数を決定し、
目的関数最適化手段は、前記目的関数を最小化する復元画像を決定する
請求項１記載の画像処理システム。
【請求項４】
目的関数最適化手段が決定した復元画像の画素値を予め定めら得た閾値を用いて離散化することにより、復元画像を生成する画素値離散化手段を備えた
請求項１から請求項３のうちのいずれか１項に記載の画像処理システム。
【請求項５】
入力画像から、二次元コードのマーカを検出するマーカ検出手段と、
マーカ検出手段が検出したマーカから二次元コードのセル配置を推定するセル配置推定手段と、
入力画像に対するボケ関数を決定するボケ関数決定手段と、
推定された二次元コードのセル配置から幾何変形行列を推定する幾何変形推定手段と、
復元する入力画像の領域を指定する最適化領域指定手段とを備え、
誤差関数決定手段は、入力画像と、前記ボケ関数決定手段が決定したボケ関数と、前記幾何変形推定手段が推定した幾何変形行列とをもとに、誤差関数を決定する
請求項１から請求項４のうちのいずれか１項に記載の画像処理システム。
【請求項６】
目的関数を構成する要素のうち、目的関数最適化手段によって同時に最適化される変数とする要素を指定する同時最適化変数指定手段を備え、
目的関数最適化手段は、目的関数を最適化する復元画像および前記同時最適化変数指定手段で指定された要素を決定する
請求項１から請求項５のうちのいずれか１項に記載の画像処理システム。
【請求項７】
二次元コードのセル配置が入力されるセル配置入力手段と、
幾何変形行列が入力される幾何変形入力手段と、
ボケ関数が入力されるボケ関数入力手段とを備え、
誤差関数決定手段は、幾何変形入力手段に入力された幾何変形行列と、ボケ関数入力手段に入力されるボケ関数とを用いて誤差関数を決定し、
画素値制約手段は、セル配置入力手段に入力される二次元コードのセル配置に基づいて、画素値制約情報を決定する
請求項１から請求項４のうちのいずれか１項に記載の画像処理システム。
【請求項８】
画像中に存在する複数種類のマーカを全て検出する複数マーカ検出手段と、
検出されたマーカのコードの種類を識別するコード種類識別手段と、
目的関数最適化手段が決定した復元画像中の全てのコードに対するボケ除去がされたか否かを判定するボケ除去判定手段とを備え、
セル配置推定手段は、複数マーカ検出手段が検出したマーカから二次元コードのセル配置を推定する
請求項５または請求項６記載の画像処理システム。
【請求項９】
ぼかされた入力画像の程度を表す関数であるボケ関数および前記入力画像が示す二次元コードが当該二次元コードの構成単位であるセル上に配置されることを制約する行列である幾何変形行列を用いて、復元された画像である復元画像に対して幾何変形とボケを加えた画像と入力画像との誤差が小さいほど所定の結果に近づく関係を満たす関数である誤差関数を決定し、
復元する二次元コードの画素値を離散化した所定の画素値に制約するときの制約条件を規定した画素値制約情報を決定し、
前記誤差関数と前記画素値制約情報とに基づいて、復元画像が真の画像に近いほど所定の結果に近づく関係を満たす関数である目的関数を決定し、
前記目的関数を最適化する復元画像を決定する
ことを特徴とする画像処理方法。
【請求項１０】
コンピュータに、
ぼかされた入力画像の程度を表す関数であるボケ関数および前記入力画像が示す二次元コードが当該二次元コードの構成単位であるセル上に配置されることを制約する行列である幾何変形行列を用いて、復元された画像である復元画像に対して幾何変形とボケを加えた画像と入力画像との誤差が小さいほど所定の結果に近づく関係を満たす関数である誤差関数を決定する誤差関数決定処理、
復元する二次元コードの画素値を離散化した所定の画素値に制約するときの制約条件を規定した画素値制約情報を決定する画素値制約処理、
前記誤差関数と前記画素値制約情報とに基づいて、復元画像が真の画像に近いほど所定の結果に近づく関係を満たす関数である目的関数を決定する目的関数決定処理、および、
前記目的関数を最適化する復元画像を決定する目的関数最適化処理
を実行させるための画像処理プログラム。
【国際調査報告】
2012029238.tif 000026
2012029238.tif 000027
2012029238.tif 000028
2012029238.tif 000029