JP4419454B2 - 信号処理装置および信号処理方法、並びにプログラムおよび記録媒体 - Google Patents
信号処理装置および信号処理方法、並びにプログラムおよび記録媒体 Download PDFInfo
- Publication number
- JP4419454B2 JP4419454B2 JP2003183702A JP2003183702A JP4419454B2 JP 4419454 B2 JP4419454 B2 JP 4419454B2 JP 2003183702 A JP2003183702 A JP 2003183702A JP 2003183702 A JP2003183702 A JP 2003183702A JP 4419454 B2 JP4419454 B2 JP 4419454B2
- Authority
- JP
- Japan
- Prior art keywords
- pixel
- pixels
- pixel value
- data
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000012545 processing Methods 0.000 title claims description 1067
- 238000003672 processing method Methods 0.000 title claims description 7
- 230000033001 locomotion Effects 0.000 claims description 694
- 238000000034 method Methods 0.000 claims description 677
- 238000001514 detection method Methods 0.000 claims description 404
- 230000008569 process Effects 0.000 claims description 309
- 230000010354 integration Effects 0.000 claims description 244
- 230000000694 effects Effects 0.000 claims description 215
- 230000003287 optical effect Effects 0.000 claims description 214
- 230000008859 change Effects 0.000 claims description 73
- 230000002093 peripheral effect Effects 0.000 claims description 19
- 230000004044 response Effects 0.000 claims description 14
- 230000006870 function Effects 0.000 description 412
- 230000014509 gene expression Effects 0.000 description 377
- 230000000875 corresponding effect Effects 0.000 description 267
- 238000004364 calculation method Methods 0.000 description 237
- 238000010586 diagram Methods 0.000 description 165
- 230000007423 decrease Effects 0.000 description 108
- 230000006833 reintegration Effects 0.000 description 84
- 239000011159 matrix material Substances 0.000 description 63
- 230000009131 signaling function Effects 0.000 description 54
- 238000000605 extraction Methods 0.000 description 38
- 238000002156 mixing Methods 0.000 description 35
- 238000011156 evaluation Methods 0.000 description 31
- 230000002123 temporal effect Effects 0.000 description 22
- 239000000284 extract Substances 0.000 description 18
- 238000012937 correction Methods 0.000 description 15
- 238000003384 imaging method Methods 0.000 description 15
- 230000003044 adaptive effect Effects 0.000 description 12
- 230000006978 adaptation Effects 0.000 description 11
- 230000003247 decreasing effect Effects 0.000 description 10
- 239000000243 solution Substances 0.000 description 10
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 7
- 238000006243 chemical reaction Methods 0.000 description 6
- 238000013507 mapping Methods 0.000 description 6
- 239000004065 semiconductor Substances 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000009795 derivation Methods 0.000 description 5
- 230000006866 deterioration Effects 0.000 description 5
- IHPDTPWNFBQHEB-UHFFFAOYSA-N hydrobenzoin Chemical compound C=1C=CC=CC=1C(O)C(O)C1=CC=CC=C1 IHPDTPWNFBQHEB-UHFFFAOYSA-N 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 239000000203 mixture Substances 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 238000009966 trimming Methods 0.000 description 3
- 238000009125 cardiac resynchronization therapy Methods 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 229910044991 metal oxide Inorganic materials 0.000 description 2
- 150000004706 metal oxides Chemical class 0.000 description 2
- OVSKIKFHRZPJSS-UHFFFAOYSA-N 2,4-D Chemical compound OC(=O)COC1=CC=C(Cl)C=C1Cl OVSKIKFHRZPJSS-UHFFFAOYSA-N 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 210000000078 claw Anatomy 0.000 description 1
- 238000012885 constant function Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000013213 extrapolation Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000037452 priming Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 238000010408 sweeping Methods 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 238000001931 thermography Methods 0.000 description 1
Images
Landscapes
- Image Processing (AREA)
- Image Analysis (AREA)
Description
【発明の属する技術分野】
本発明は、信号処理装置および信号処理方法、並びにプログラムおよび記録媒体に関し、特に、現実世界の信号により近似した画像等を得ることができるようにする信号処理装置および信号処理方法、並びにプログラムおよび記録媒体に関する。
【0002】
【従来の技術】
実世界(現実世界)における事象をセンサで検出し、センサが出力するサンプリングデータを処理する技術が広く利用されている。例えば、実世界をイメージセンサで撮像し、画像データであるサンプリングデータを処理する画像処理技術が広く利用されている。
【0003】
また、第1の次元を有する現実世界の信号である第1の信号をセンサによって検出することにより得た、第1の次元に比較し次元が少ない第2の次元を有し、第1の信号に対する歪を含む第2の信号を取得し、第2の信号に基づく信号処理を行うことにより、第2の信号に比して歪の軽減された第3の信号を生成するようにしているものもある(例えば、特許文献1参照)。
【0004】
【特許文献1】
特開2001−250119号公報。
【0005】
【発明が解決しようとする課題】
しかしながら、従来においては、現実世界の信号の定常性を考慮した信号処理が行われていなかったため、現実世界の信号により近似した画像等を得ることが困難であることがあった。
【0006】
本発明は、このような状況に鑑みてなされたものであり、現実世界の信号により近似した画像等を得ることができるようにするものである。
【0007】
【課題を解決するための手段】
本発明の信号処理装置は、それぞれ時間積分効果を有する複数の画素に現実世界の光信号が射影されることにより取得された画像データ内の処理領域を設定する処理領域設定手段と、画像データ内のオブジェクトの動きベクトルを設定する動きベクトル設定手段と、処理領域内の各画素の画素値は、オブジェクトに対応する、動きボケが生じていない各画素の画素値が動きベクトルに対応して移動しながら積分された値であるとして、処理領域内の各画素の画素値と、動きボケが生じていない各画素の画素値との関係をモデル化するモデル生成手段と、モデル生成手段により生成されたモデルに対して、処理領域内の各画素の画素値を代入した第1の方程式と、動きボケが生じていない各画素間の関係を拘束する第2の方程式とにより正規方程式を生成する正規方程式生成手段と、正規方程式生成手段により生成された正規方程式を演算することにより動きボケが生じていない各画素の画素値を推定する第1の実世界推定手段と、第1の実世界推定手段により画素値が推定される画像データ内の画素のアクティビティを、その画素の画素値と、空間方向において、その画素の周辺に位置する周辺画素の画素値との間の変化に応じて検出するアクティビティ検出手段と、アクティビティ検出手段による検出結果に応じて、第1または第2の方程式の一部に対する重みを変更する重み変更手段と、重み変更手段により重みが変更された第1または第2の方程式から生成される正規方程式を演算することにより動きボケの生じていない各画素の画素値を推定する第2の実世界推定手段とを備えることを特徴とする。
【0008】
重み変更手段は、アクティビティ検出手段による注目画素のアクティビティ検出結果が閾値以上であるとき、注目画素に対応する第1または第2の方程式の一部に対する重みを0に変更するようにすることができる。
【0009】
本発明の信号処理方法は、それぞれ時間積分効果を有する複数の画素に現実世界の光信号が射影されることにより取得された画像データ内の処理領域を設定する処理領域設定ステップと、画像データ内のオブジェクトの動きベクトルを設定する動きベクトル設定ステップと、処理領域内の各画素の画素値は、オブジェクトに対応する、動きボケが生じていない各画素の画素値が動きベクトルに対応して移動しながら積分された値であるとして、処理領域内の各画素の画素値と、動きボケが生じていない各画素の画素値との関係をモデル化するモデル生成ステップと、モデル生成ステップの処理により生成されたモデルに対して、処理領域内の各画素の画素値を代入した第1の方程式と、動きボケが生じていない各画素間の関係を拘束する第2の方程式とにより正規方程式を生成する正規方程式生成ステップと、正規方程式生成ステップの処理により生成された正規方程式を演算することにより動きボケが生じていない各画素の画素値を推定する第1の実世界推定ステップと、第1の実世界推定ステップの処理により画素値が推定される画像データ内の画素のアクティビティを、その画素の画素値と、空間方向において、その画素の周辺に位置する周辺画素の画素値との間の変化に応じて検出するアクティビティ検出ステップと、アクティビティ検出ステップの処理による検出結果に応じて、第1または第2の方程式の一部に対する重みを変更する重み変更ステップと、重み変更ステップの処理により重みが変更された第1または第2の方程式とから生成される正規方程式を演算することにより動きボケの生じていない各画素の画素値を推定する第2の実世界推定ステップとを含むことを特徴とする。
【0010】
本発明のプログラムは、それぞれ時間積分効果を有する複数の画素に現実世界の光信号が射影されることにより取得された画像データ内の処理領域を設定する処理領域設定ステップと、画像データ内のオブジェクトの動きベクトルを設定する動きベクトル設定ステップと、処理領域内の各画素の画素値は、オブジェクトに対応する、動きボケが生じていない各画素の画素値が動きベクトルに対応して移動しながら積分された値であるとして、処理領域内の各画素の画素値と、動きボケが生じていない各画素の画素値との関係をモデル化するモデル生成ステップと、モデル生成ステップの処理により生成されたモデルに対して、処理領域内の各画素の画素値を代入した第1の方程式と、動きボケが生じていない各画素間の関係を拘束する第2の方程式とにより正規方程式を生成する正規方程式生成ステップと、正規方程式生成ステップの処理により生成された正規方程式を演算することにより動きボケが生じていない各画素の画素値を推定する第1の実世界推定ステップと、第1の実世界推定ステップの処理により画素値が推定される画像データ内の画素のアクティビティを、その画素の画素値と、空間方向において、その画素の周辺に位置する周辺画素の画素値との間の変化に応じて検出するアクティビティ検出ステップと、アクティビティ検出ステップの処理による検出結果に応じて、第1または第2の方程式の一部に対する重みを変更する重み変更ステップと、重み変更ステップの処理により重みが変更された第1または第2の方程式から生成される正規方程式を演算することにより動きボケの生じていない各画素の画素値を推定する第2の実世界推定ステップとを備えることを特徴とする。
【0011】
本発明の記録媒体は、それぞれ時間積分効果を有する複数の画素に現実世界の光信号が射影されることにより取得された画像データ内の処理領域を設定する処理領域設定ステップと、画像データ内のオブジェクトの動きベクトルを設定する動きベクトル設定ステップと、処理領域内の各画素の画素値は、オブジェクトに対応する、動きボケが生じていない各画素の画素値が動きベクトルに対応して移動しながら積分された値であるとして、処理領域内の各画素の画素値と、動きボケが生じていない各画素の画素値との関係をモデル化するモデル生成ステップと、モデル生成ステップの処理により生成されたモデルに対して、処理領域内の各画素の画素値を代入した第1の方程式と、動きボケが生じていない各画素間の関係を拘束する第2の方程式とにより正規方程式を生成する正規方程式生成ステップと、正規方程式生成ステップの処理により生成された正規方程式を演算することにより動きボケが生じていない各画素の画素値を推定する第1の実世界推定ステップと、第1の実世界推定ステップの処理により画素値が推定される画像データ内の画素のアクティビティを、その画素の画素値と、空間方向において、その画素の周辺に位置する周辺画素の画素値との間の変化に応じて検出するアクティビティ検出ステップと、アクティビティ検出ステップの処理による検出結果に応じて、第1または第2の方程式の一部に対する重みを変更する重み変更ステップと、重み変更ステップの処理により重みが変更された第1または第2の方程式から生成される正規方程式を演算することにより動きボケの生じていない各画素の画素値を推定する第2の実世界推定ステップとを備えることを特徴とする。
【0012】
本発明の信号処理装置および信号処理方法、並びにプログラムおよび記録媒体においては、それぞれ時間積分効果を有する複数の画素に現実世界の光信号が射影されることにより取得された画像データ内の処理領域が設定され、画像データ内のオブジェクトの動きベクトルが設定される。そして、処理領域内の各画素の画素値は、オブジェクトに対応する、動きボケが生じていない各画素の画素値が動きベクトルに対応して移動しながら積分された値であるとして、処理領域内の各画素の画素値と、動きボケが生じていない各画素の画素値との関係がモデル化され、生成されたモデルに対して、処理領域内の各画素の画素値を代入した第1の方程式と、動きボケが生じていない各画素間の関係を拘束する第2の方程式とにより正規方程式が生成される。生成された正規方程式を演算することにより動きボケが生じていない各画素の画素値が推定され、推定される画像データ内の画素のアクティビティが、その画素の画素値と、空間方向において、その画素の周辺に位置する周辺画素の画素値との間の変化に応じて検出される。その検出結果に応じて、第1または第2の方程式の一部に対する重みが変更され、重みが変更された第1または第2の方程式とから生成される正規方程式を演算することにより動きボケの生じていない各画素の画素値が推定される。
【0013】
【発明の実施の形態】
以下に本発明の実施の形態を説明するが、請求項に記載の構成要件と、発明の実施の形態における具体例との対応関係を例示すると、次のようになる。この記載は、請求項に記載されている発明をサポートする具体例が、発明の実施の形態に記載されていることを確認するためのものである。従って、発明の実施の形態中には記載されているが、構成要件に対応するものとして、ここには記載されていない具体例があったとしても、そのことは、その具体例が、その構成要件に対応するものではないことを意味するものではない。逆に、具体例が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その具体例が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【0014】
さらに、この記載は、発明の実施の形態に記載されている具体例に対応する発明が、請求項に全て記載されていることを意味するものではない。換言すれば、この記載は、発明の実施の形態に記載されている具体例に対応する発明であって、この出願の請求項には記載されていない発明の存在、すなわち、将来、分割出願されたり、補正により追加される発明の存在を否定するものではない。
【0015】
請求項1に記載の信号処理装置(例えば、図113の信号処理装置4)は、それぞれ時間積分効果を有する複数の画素に現実世界の光信号が射影されることにより取得された画像データ内の処理領域を設定する処理領域設定手段(例えば、図113の処理領域設定部14001)と、前記画像データ内のオブジェクトの動きベクトルを設定する動きベクトル設定手段(例えば、図113の定常性設定部14002)と、前記処理領域内の各画素の画素値は、前記オブジェクトに対応する、動きボケが生じていない各画素の画素値が前記動きベクトルに対応して移動しながら積分された値であるとして、前記処理領域内の各画素の画素値と、前記動きボケが生じていない各画素の画素値との関係をモデル化するモデル生成手段(例えば、図113のモデル生成部14011)と、前記モデル生成手段により生成されたモデルに対して、前記処理領域内の各画素の画素値を代入した第1の方程式(例えば、モデル方程式)と、前記動きボケが生じていない各画素間の関係を拘束する第2の方程式(例えば、拘束条件式)とにより正規方程式を生成する正規方程式生成手段(例えば、図120の最小二乗法演算部14053と正規方程式生成部14057)と、前記正規方程式生成手段により生成された正規方程式を演算することにより前記動きボケが生じていない各画素の画素値を推定する第1の実世界推定手段(例えば、図120の最小二乗法演算部14053)と、前記第1の実世界推定手段により画素値が推定される前記画像データ内の画素のアクティビティ(例えば、差分絶対値)を、その画素の画素値と、空間方向において、その画素の周辺に位置する周辺画素の画素値との間の変化に応じて検出するアクティビティ検出手段(例えば、図120の絶対値演算部14055)と、前記アクティビティ検出手段による検出結果に応じて、前記第1または第2の方程式の一部に対する重みを変更する重み変更手段(例えば、図120の重み決定部14056)と、前記重み変更手段により重みが変更された前記第1または第2の方程式から生成される正規方程式を演算することにより前記動きボケの生じていない各画素の画素値を推定する第2の実世界推定手段(例えば、図113の実世界波形推定部14013)とを備えることを特徴とする。
【0016】
請求項2に記載の信号処理装置は、前記重み変更手段は、前記アクティビティ検出手段による注目画素のアクティビティ検出結果が閾値以上であるとき、前記注目画素に対応する前記第1または第2の方程式の一部に対する重みを0に変更する(例えば、図132のステップS14132の処理)ことを特徴とする。
【0017】
請求項3に記載の信号処理方法、請求項4に記載のプログラム、および請求項5に記載の記録媒体は、それぞれ時間積分効果を有する複数の画素に現実世界の光信号が射影されることにより取得された画像データ内の処理領域を設定する処理領域設定ステップ(例えば、図114のステップS14006)と、前記画像データ内のオブジェクトの動きベクトルを設定する動きベクトル設定ステップ(例えば、図114のステップS14007)と、前記処理領域内の各画素の画素値は、前記オブジェクトに対応する、動きボケが生じていない各画素の画素値が前記動きベクトルに対応して移動しながら積分された値であるとして、前記処理領域内の各画素の画素値と、前記動きボケが生じていない各画素の画素値との関係をモデル化するモデル生成ステップ(例えば、図119のステップS14031)と、前記モデル生成ステップの処理により生成されたモデルに対して、前記処理領域内の各画素の画素値を代入した第1の方程式と、前記動きボケが生じていない各画素間の関係を拘束する第2の方程式とにより正規方程式を生成する正規方程式生成ステップ(例えば、図121のステップS14054とステップS14058)と、前記正規方程式生成ステップの処理により生成された正規方程式を演算することにより前記動きボケが生じていない各画素の画素値を推定する第1の実世界推定ステップ(例えば、図121のステップS14054)と、前記第1の実世界推定ステップの処理により画素値が推定される前記画像データ内の画素のアクティビティを、その画素の画素値と、空間方向において、その画素の周辺に位置する周辺画素の画素値との間の変化に応じて検出するアクティビティ検出ステップ(例えば、図121のステップS14056)と、前記アクティビティ検出ステップの処理による検出結果に応じて、前記第1または第2の方程式の一部に対する重みを変更する重み変更ステップ(例えば、図121のステップS14057)と、前記重み変更ステップの処理により重みが変更された前記第1または第2の方程式から生成される正規方程式を演算することにより前記動きボケの生じていない各画素の画素値を推定する第2の実世界推定ステップ(例えば、図119のステップS14033)とを含むことを特徴とする。
【0018】
図1は、本発明の原理を表している。同図で示されるように、空間、時間、および質量の次元を有する実世界1の事象(現象)は、センサ2により取得され、データ化される。実世界1の事象とは、光(画像)、音声、圧力、温度、質量、濃度、明るさ/暗さ、またはにおいなどをいう。実世界1の事象は、時空間方向に分布している。例えば、実世界1の画像は、実世界1の光の強度の時空間方向の分布である。
【0019】
センサ2に注目すると、空間、時間、および質量の次元を有する実世界1の事象のうち、センサ2が取得可能な、実世界1の事象が、センサ2により、データ3に変換される。センサ2によって、実世界1の事象を示す情報が取得されるとも言える。
【0020】
すなわち、センサ2は、実世界1の事象を示す情報を、データ3に変換する。空間、時間、および質量の次元を有する実世界1の事象(現象)を示す情報である信号がセンサ2により取得され、データ化されるとも言える。
【0021】
以下、実世界1における、画像、音声、圧力、温度、質量、濃度、明るさ/暗さ、またはにおいなどの事象の分布を、実世界1の事象を示す情報である信号とも称する。また、実世界1の事象を示す情報である信号を、単に、実世界1の信号とも称する。本明細書において、信号は、現象および事象を含み、送信側に意思がないものも含むものとする。
【0022】
センサ2から出力されるデータ3(検出信号)は、実世界1の事象を示す情報を、実世界1に比較して、より低い次元の時空間に射影して得られた情報である。例えば、動画像の画像データであるデータ3は、実世界1の3次元の空間方向および時間方向の画像が、2次元の空間方向、および時間方向からなる時空間に射影されて得られた情報である。また、例えば、データ3がデジタルデータであるとき、データ3は、サンプリングの単位に応じて、丸められている。データ3がアナログデータであるとき、データ3において、ダイナミックレンジに応じて、情報が圧縮されているか、またはリミッタなどにより、情報の一部が削除されている。
【0023】
このように、所定の次元を有する実世界1の事象を示す情報である信号をデータ3(検出信号)に射影することにより、実世界1の事象を示す情報の一部が欠落する。すなわち、センサ2が出力するデータ3において、実世界1の事象を示す情報の一部が欠落している。
【0024】
しかしながら、射影により実世界1の事象を示す情報の一部が欠落しているものの、データ3は、実世界1の事象(現象)を示す情報である信号を推定するための有意情報を含んでいる。
【0025】
本発明においては、実世界1の情報である信号を推定するための有意情報として、実世界1またはデータ3に含まれる定常性を有する情報を利用する。定常性は、新たに定義する概念である。
【0026】
ここで、実世界1に注目すると、実世界1の事象は、所定の次元の方向に一定の特徴を含む。例えば、実世界1の物体(有体物)において、空間方向または時間方向に、形状、模様、若しくは色彩などが連続するか、または形状、模様、若しくは色彩などのパターンが繰り返す。
【0027】
従って、実世界1の事象を示す情報には、所定の次元の方向に一定の特徴が含まれることになる。
【0028】
より具体的な例を挙げれば、糸、紐、またはロープなどの線状の物体は、長さ方向の任意の位置において、断面形状が同じであるという長さ方向、すなわち空間方向に一定の特徴を有する。長さ方向の任意の位置において、断面形状が同じであるという空間方向に一定の特徴は、線状の物体が長いという特徴から生じる。
【0029】
従って、線状の物体の画像は、長さ方向の任意の位置において、断面形状が同じであるという長さ方向、すなわち空間方向に一定の特徴を有している。
【0030】
また、空間方向に広がりを有する有体物である、単色の物体は、部位にかかわらず、同一の色を有するという空間方向に一定の特徴を有していると言える。
【0031】
同様に、空間方向に広がりを有する有体物である、単色の物体の画像は、部位にかかわらず、同一の色を有するという空間方向に一定の特徴を有している。
【0032】
このように、実世界1(現実世界)の事象は、所定の次元の方向に一定の特徴を有しているので、実世界1の信号は、所定の次元の方向に一定の特徴を有する。
【0033】
本明細書において、このような所定の次元の方向に一定の特徴を定常性と称する。実世界1(現実世界)の信号の定常性とは、実世界1(現実世界)の事象を示す信号が有している、所定の次元の方向に一定の特徴をいう。
【0034】
実世界1(現実世界)には、このような定常性が無数に存在する。
【0035】
次に、データ3に注目すると、データ3は、センサ2により、所定の次元を有する実世界1の事象を示す情報である信号が射影されたものであるので、実世界の信号の定常性に対応する定常性を含んでいる。データ3は、実世界の信号の定常性が射影された定常性を含んでいるとも言える。
【0036】
しかしながら、上述したように、センサ2が出力するデータ3において、実世界1の情報の一部が欠落しているので、データ3から、実世界1(現実世界)の信号に含まれる定常性の一部が欠落し得る。
【0037】
換言すれば、データ3は、データの定常性として、実世界1(現実世界)の信号の定常性の中の、少なくとも一部の定常性を含む。データの定常性とは、データ3が有している、所定の次元の方向に一定の特徴である。
【0038】
本発明においては、実世界1の事象を示す情報である信号を推定するための有意情報として、実世界1の信号の定常性、またはデータ3が有する、データの定常性が利用される。
【0039】
例えば、信号処理装置4においては、データの定常性を利用して、データ3を信号処理することで、欠落した、実世界1の事象を示す情報が生成される。
【0040】
なお、信号処理装置4においては、実世界1の事象を示す情報である信号の次元の、長さ(空間)、時間、および質量のうち、空間方向または時間方向の定常性が利用される。
【0041】
図1において、センサ2は、例えば、デジタルスチルカメラ、またはビデオカメラなどで構成され、実世界1の画像を撮像し、得られたデータ3である画像データを信号処理装置4に出力する。センサ2は、例えば、サーモグラフィ装置、または光弾性を利用した圧力センサなどとすることができる。
【0042】
信号処理装置4は、例えば、パーソナルコンピュータなどで構成され、データ3を対象とした信号処理を行う。
【0043】
信号処理装置4は、例えば、図2で示されるように構成される。CPU(Central Processing Unit)21は、ROM(Read Only Memory)22、または記憶部28に記憶されているプログラムに従って各種の処理を実行する。RAM(Random Access Memory)23には、CPU21が実行するプログラムやデータなどが適宜記憶される。これらのCPU21、ROM22、およびRAM23は、バス24により相互に接続されている。
【0044】
CPU21にはまた、バス24を介して入出力インタフェース25が接続されている。入出力インタフェース25には、キーボード、マウス、マイクロホンなどよりなる入力部26、ディスプレイ、スピーカなどよりなる出力部27が接続されている。CPU21は、入力部26から入力される指令に対応して各種の処理を実行する。そして、CPU21は、処理の結果得られた画像や音声等を出力部27に出力する。
【0045】
入出力インタフェース25に接続されている記憶部28は、例えばハードディスクなどで構成され、CPU21が実行するプログラムや各種のデータを記憶する。通信部29は、インターネット、その他のネットワークを介して外部の装置と通信する。この例の場合、通信部29はセンサ2の出力するデータ3を取り込む取得部として働く。
【0046】
また、通信部29を介してプログラムを取得し、記憶部28に記憶してもよい。
【0047】
入出力インタフェース25に接続されているドライブ30は、磁気ディスク51、光ディスク52、光磁気ディスク53、或いは半導体メモリ54などが装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記憶部28に転送され、記憶される。
【0048】
図3は、信号処理装置4を示すブロック図である。
【0049】
なお、信号処理装置4の各機能をハードウェアで実現するか、ソフトウェアで実現するかは問わない。つまり、本明細書の各ブロック図は、ハードウェアのブロック図と考えても、ソフトウェアによる機能ブロック図と考えても良い。
【0050】
図3に構成を示す信号処理装置4においては、データ3の一例である画像データが入力され、入力された画像データ(入力画像)からデータの定常性が検出される。次に、検出されたデータの定常性から、センサ2により取得された実世界1の信号が推定される。そして、推定された実世界1の信号を基に、画像が生成され、生成された画像(出力画像)が出力される。すなわち、図3は、画像処理装置である信号処理装置4の構成を示す図である。
【0051】
信号処理装置4に入力された入力画像(データ3の一例である画像データ)は、データ定常性検出部101および実世界推定部102に供給される。
【0052】
データ定常性検出部101は、入力画像からデータの定常性を検出して、検出した定常性を示すデータ定常性情報を実世界推定部102および画像生成部103に供給する。データ定常性情報は、例えば、入力画像における、データの定常性を有する画素の領域の位置、データの定常性を有する画素の領域の方向(時間方向および空間方向の角度または傾き)、またはデータの定常性を有する画素の領域の長さなどを含む。データ定常性検出部101の構成の詳細は、後述する。
【0053】
実世界推定部102は、入力画像、およびデータ定常性検出部101から供給されたデータ定常性情報を基に、実世界1の信号を推定する。すなわち、実世界推定部102は、入力画像が取得されたときセンサ2に入射された、実世界の信号である画像を推定する。実世界推定部102は、実世界1の信号の推定の結果を示す実世界推定情報を画像生成部103に供給する。実世界推定部102の構成の詳細は、後述する。
【0054】
画像生成部103は、実世界推定部102から供給された、推定された実世界1の信号を示す実世界推定情報を基に、実世界1の信号により近似した信号を生成して、生成した信号を出力する。または、画像生成部103は、データ定常性検出部101から供給されたデータ定常性情報、および実世界推定部102から供給された、推定された実世界1の信号を示す実世界推定情報を基に、実世界1の信号により近似した信号を生成して、生成した信号を出力する。
【0055】
すなわち、画像生成部103は、実世界推定情報を基に、実世界1の画像により近似した画像を生成して、生成した画像を出力画像として出力する。または、画像生成部103は、データ定常性情報および実世界推定情報を基に、実世界1の画像により近似した画像を生成して、生成した画像を出力画像として出力する。
【0056】
例えば、画像生成部103は、実世界推定情報を基に、推定された実世界1の画像を所望の空間方向または時間方向の範囲で積分することにより、入力画像に比較して、空間方向または時間方向により高解像度の画像を生成して、生成した画像を出力画像として出力する。例えば、画像生成部103は、外挿補間により、画像を生成して、生成した画像を出力画像として出力する。
【0057】
画像生成部103の構成の詳細は、後述する。
【0058】
次に、図4を参照して、本発明の原理を説明する。
【0059】
例えば、画像である、実世界1の信号は、センサ2の一例であるCCD(Charge Coupled Device)の受光面に結像される。センサ2の一例であるCCDは、積分特性を有しているので、CCDから出力されるデータ3には、実世界1の画像との差が生じることになる。センサ2の積分特性の詳細については、後述する。
【0060】
信号処理装置4による信号処理においては、CCDにより取得された実世界1の画像と、CCDにより撮像され、出力されたデータ3との関係が明確に考慮される。すなわち、データ3と、センサ2で取得された実世界の情報である信号との関係が明確に考慮される。
【0061】
より具体的には、図4で示されるように、信号処理装置4は、モデル161を用いて、実世界1を近似(記述)する。モデル161は、例えば、N個の変数で表現される。より正確には、モデル161は、実世界1の信号を近似(記述)する。
【0062】
モデル161を予測するために、信号処理装置4は、データ3から、M個のデータ162を抽出する。データ3から、M個のデータ162を抽出するとき、信号処理装置4は、例えば、データ3に含まれるデータの定常性を利用する。換言すれば、信号処理装置4は、データ3に含まれるデータの定常性を基に、モデル161を予測するためのデータ162を抽出する。この場合、結果的に、モデル161は、データの定常性に拘束されることになる。
【0063】
すなわち、モデル161は、センサ2で取得されたとき、データ3においてデータの定常性を生じさせる、定常性(所定の次元の方向に一定の特徴)を有する実世界1の事象(を示す情報(信号))を近似する。
【0064】
ここで、データ162の数Mが、モデルの変数の数N以上であれば、M個のデータ162から、N個の変数で表現されるモデル161を予測することができる。
【0065】
このように、実世界1(の信号)を近似(記述)するモデル161を予測することにより、信号処理装置4は、実世界1の情報である信号を考慮することができる。
【0066】
次に、センサ2の積分効果について説明する。
【0067】
画像を撮像するセンサ2である、CCDまたはCMOS(Complementary Metal-Oxide Semiconductor)センサなどのイメージセンサは、現実世界を撮像するとき、現実世界の情報である信号を2次元のデータに投影する。イメージセンサの各画素は、いわゆる受光面(受光領域)として、それぞれ所定の面積を有する。所定の面積を有する受光面に入射した光は、画素毎に、空間方向および時間方向に積分され、各画素に対して1つの画素値に変換される。
【0068】
図5乃至図8を参照して、画像の空間的時間的な積分について説明する。
【0069】
イメージセンサは、現実世界の対象物(オブジェクト)を撮像し、撮像の結果得られた画像データを1フレーム単位で出力する。すなわち、イメージセンサは、実世界1の対象物で反射された光である、実世界1の信号を取得し、データ3を出力する。
【0070】
例えば、イメージセンサは、1秒間に30フレームからなる画像データを出力する。この場合、イメージセンサの露光時間は、1/30秒とすることができる。露光時間は、イメージセンサが入射された光の電荷への変換を開始してから、入射された光の電荷への変換を終了するまでの期間である。以下、露光時間をシャッタ時間とも称する。
【0071】
図5は、イメージセンサ上の画素の配置の例を説明する図である。図5中において、A乃至Iは、個々の画素を示す。画素は、画像データにより表示される画像に対応する平面上に配置されている。1つの画素に対応する1つの検出素子は、イメージセンサ上に配置されている。イメージセンサが実世界1の画像を撮像するとき、1つの検出素子は、画像データを構成する1つの画素に対応する1つの画素値を出力する。例えば、検出素子の空間方向Xの位置(X座標)は、画像データにより表示される画像上の横方向の位置に対応し、検出素子の空間方向Yの位置(Y座標)は、画像データにより表示される画像上の縦方向の位置に対応する。
【0072】
実世界1の光の強度の分布は、3次元の空間方向および時間方向に広がりを有するが、イメージセンサは、2次元の空間方向および時間方向で、実世界1の光を取得し、2次元の空間方向および時間方向の光の強度の分布を表現するデータ3を生成する。
【0073】
図6で示されるように、例えば、CCDである検出素子は、シャッタ時間に対応する期間、受光面(受光領域)(検出領域)に入力された光を電荷に変換して、変換された電荷を蓄積する。光は、3次元の空間上の位置、および時刻により、強度が決定される実世界1の情報(信号)である。実世界1の光の強度の分布は、3次元の空間上の位置x,y、およびz、並びに時刻tを変数とする関数F(x,y,z,t)で表すことができる。
【0074】
CCDである検出素子に蓄積される電荷の量は、2次元の空間上の広がりを有する受光面の全体に入射された光の強さと、光が入射されている時間にほぼ比例する。検出素子は、シャッタ時間に対応する期間において、受光面の全体に入射された光から変換された電荷を、既に蓄積されている電荷に加えていく。すなわち、検出素子は、シャッタ時間に対応する期間、2次元の空間上の広がりを有する受光面の全体に入射される光を積分して、積分された光に対応する量の電荷を蓄積する。検出素子は、空間(受光面)および時間(シャッタ時間)に対して、積分効果があるとも言える。
【0075】
検出素子に蓄積された電荷は、図示せぬ回路により、電圧値に変換され、電圧値はさらにデジタルデータなどの画素値に変換されて、データ3として出力される。従って、イメージセンサから出力される個々の画素値は、実世界1の情報(信号)の時間的空間的に広がりを有するある部分を、シャッタ時間の時間方向および検出素子の受光面の空間方向について積分した結果である、1次元の空間に射影した値を有する。
【0076】
すなわち、1つの画素の画素値は、F(x,y,t)の積分で表される。F(x,y,t)は、検出素子の受光面における、光の強度の分布を表す関数である。例えば、画素値Pは、式(1)で表される。
【0077】
【数1】
・・・(1)
【0078】
式(1)において、x1は、検出素子の受光面の左側の境界の空間座標(X座標)である。x2は、検出素子の受光面の右側の境界の空間座標(X座標)である。式(1)において、y1は、検出素子の受光面の上側の境界の空間座標(Y座標)である。y2は、検出素子の受光面の下側の境界の空間座標(Y座標)である。また、t1は、入射された光の電荷への変換を開始した時刻である。t2は、入射された光の電荷への変換を終了した時刻である。
【0079】
なお、実際には、イメージセンサから出力される画像データの画素値は、例えばフレーム全体として、そのゲインが補正されている。
【0080】
画像データの各画素値は、イメージセンサの各検出素子の受光面に入射した光の積分値であり、イメージセンサに入射された光のうち、検出素子の受光面よりも微小な実世界1の光の波形は、積分値としての画素値に隠されてしまう。
【0081】
以下、本明細書において、所定の次元を基準として表現される信号の波形を単に波形とも称する。
【0082】
このように、実世界1の画像(光信号)は、画素を単位として、空間方向および時間方向に積分されてしまうので、画像データにおいては、実世界1の画像の定常性の一部が欠落し、実世界1の画像の定常性の他の一部が画像データに含まれることになる。または、画像データには、実世界1の画像の定常性から変化してしまった定常性が含まれることがある。
【0083】
積分効果を有するイメージセンサにより撮像された画像の、空間方向の積分効果についてさらに説明する。
【0084】
図7は、画素D乃至画素Fに対応する検出素子に入射される光と、画素値との関係を説明する図である。図7のF(x)は、空間上(検出素子上)の空間方向Xの座標xを変数とする、実世界1の光の強度の分布を表す関数の例である。言い換えれば、F(x)は、空間方向Yおよび時間方向に一定である場合の、実世界1の光の強度の分布を表す関数の例である。図7において、Lは、画素D乃至画素Fに対応する検出素子の受光面の空間方向Xの長さを示す。
【0085】
1つの画素の画素値は、F(x)の積分で表される。例えば、画素Eの画素値Pは、式(2)で表される。
【0086】
【数2】
・・・(2)
【0087】
式(2)において、x1は、画素Eに対応する検出素子の受光面の左側の境界の空間方向Xの空間座標である。x2は、画素Eに対応する検出素子の受光面の右側の境界の空間方向Xの空間座標である。
【0088】
同様に、積分効果を有するイメージセンサにより撮像された画像の、時間方向の積分効果についてさらに説明する。
【0089】
図8は、時間の経過と、1つの画素に対応する検出素子に入射される光と、画素値との関係を説明する図である。図8のF(t)は、時刻tを変数とする、実世界1の光の強度の分布を表す関数である。言い換えれば、F(t)は、空間方向Yおよび空間方向Xに一定である場合の、実世界1の光の強度の分布を表す関数の例である。tsは、シャッタ時間を示す。
【0090】
フレーム#n-1は、フレーム#nに対して時間的に前のフレームであり、フレーム#n+1は、フレーム#nに対して時間的に後のフレームである。すなわち、フレーム#n-1、フレーム#n、およびフレーム#n+1は、フレーム#n-1、フレーム#n、およびフレーム#n+1の順で表示される。
【0091】
なお、図8で示される例において、シャッタ時間tsとフレーム間隔とが同一である。
【0092】
1つの画素の画素値は、F(t)の積分で表される。例えば、フレーム#nの画素の画素値Pは、式(3)で表される。
【0093】
【数3】
・・・(3)
【0094】
式(3)において、t1は、入射された光の電荷への変換を開始した時刻である。t2は、入射された光の電荷への変換を終了した時刻である。
【0095】
以下、センサ2による空間方向の積分効果を単に空間積分効果と称し、センサ2による時間方向の積分効果を単に時間積分効果と称する。また、空間積分効果または時間積分効果を単に積分効果とも称する。
【0096】
次に、積分効果を有するイメージセンサにより取得されたデータ3に含まれるデータの定常性の例について説明する。
【0097】
図9は、実世界1の線状の物(例えば、細線)の画像、すなわち光の強度の分布の例を示す図である。図9において、図中の上方向の位置は、光の強度(レベル)を示し、図中の右上方向の位置は、画像の空間方向の一方向である空間方向Xの位置を示し、図中の右方向の位置は、画像の空間方向の他の方向である空間方向Yの位置を示す。
【0098】
実世界1の線状の物の画像には、所定の定常性が含まれる。すなわち、図9で示される画像は、長さ方向の任意の位置において、断面形状(長さ方向に直交する方向の位置の変化に対するレベルの変化)が同じであるという定常性を有する。
【0099】
図10は、図9で示される画像に対応する、実際の撮像により得られた画像データの画素値の例を示す図である。
【0100】
即ち、図10は、イメージセンサの画素の並び(画素の縦または横の並び)とずれた方向に延びる、各画素の受光面の長さLよりも短い径の線状の物の画像を、イメージセンサで撮像して得られた画像データの模式図である。図10で示される画像データが取得されたときにイメージセンサに入射された画像は、図9の実世界1の線状の物の画像である。
【0101】
図10において、図中の上方向の位置は、画素値を示し、図中の右上方向の位置は、画像の空間方向の一方向である空間方向Xの位置を示し、図中の右方向の位置は、画像の空間方向の他の方向である空間方向Yの位置を示す。図10における画素値を示す方向は、図9におけるレベルの方向に対応し、図10における空間方向X、および空間方向Yは、図9における方向と同じである。
【0102】
各画素の受光面の長さLよりも短い径の線状の物の画像を、イメージセンサで撮像した場合、撮像の結果得られる画像データにおいて、線状の物は、模式的に、例えば、斜めにずれて並ぶ、複数の所定の長さの円弧形状(かまぼこ型)で表される。各円弧形状は、ほぼ同じ形状である。1つの円弧形状は、縦に1列の画素の上、または横に1列の画素の上に形成される。例えば、図10における1つの円弧形状は、縦に1列の画素の上に形成される。
【0103】
このように、例えば、イメージセンサで撮像されて取得された画像データにおいては、実世界1の線状の物の画像が有していた、長さ方向の任意の位置において、空間方向Yにおける断面形状が同じであるという定常性が失われている。また、実世界1の線状の物の画像が有していた定常性は、縦に1列の画素の上、または横に1列の画素の上に形成された、同じ形状である円弧形状が一定の間隔で並ぶという定常性に変化していると言える。
【0104】
図11は、背景とは異なる色であって、単色の、直線状の縁を有する物の実世界1の画像、すなわち光の強度の分布の例を示す図である。図11において、図中の上方向の位置は、光の強度(レベル)を示し、図中の右上方向の位置は、画像の空間方向の一方向である空間方向Xの位置を示し、図中の右方向の位置は、画像の空間方向の他の方向である空間方向Yの位置を示す。
【0105】
背景とは異なる色の、直線状の縁を有する物の実世界1の画像には、所定の定常性が含まれる。すなわち、図11で示される画像は、縁の長さ方向の任意の位置において、断面形状(縁に直交する方向の位置の変化に対するレベルの変化)が同じであるという定常性を有する。
【0106】
図12は、図11で示される画像に対応する、実際の撮像により得られた画像データの画素値の例を示す図である。図12で示されるように、画像データは、画素を単位とした画素値からなるので、階段状になる。
【0107】
図13は、図12に示す画像データの模式図である。
【0108】
図13で示される模式図は、イメージセンサの画素の並び(画素の縦または横の並び)とずれた方向に縁が延びる、背景とは異なる色であって、単色の、直線状の縁を有する物の実世界1の画像を、イメージセンサで撮像して得られた画像データの模式図である。図13で示される画像データが取得されたときにイメージセンサに入射された画像は、図11で示される、背景とは異なる色であって、単色の、直線状の縁を有する物の実世界1の画像である。
【0109】
図13において、図中の上方向の位置は、画素値を示し、図中の右上方向の位置は、画像の空間方向の一方向である空間方向Xの位置を示し、図中の右方向の位置は、画像の空間方向の他の方向である空間方向Yの位置を示す。図13における画素値を示す方向は、図11におけるレベルの方向に対応し、図13における空間方向X、および空間方向Yは、図11における方向と同じである。
【0110】
背景とは異なる色であって、単色の、直線状の縁を有する物の実世界1の画像を、イメージセンサで撮像した場合、撮像の結果得られる画像データにおいて、直線状の縁は、模式的に、例えば、斜めにずれて並ぶ、複数の所定の長さのつめ(pawl)形状で表される。各つめ形状は、ほぼ同じ形状である。1つのつめ形状は、縦に1列の画素の上、または横に1列の画素の上に形成される。例えば、図13において、1つのつめ形状は、縦に1列の画素の上に形成される。
【0111】
このように、例えば、イメージセンサで撮像されて取得された画像データにおいては、背景とは異なる色であって、単色の、直線状の縁を有する物の実世界1の画像が有していた、縁の長さ方向の任意の位置において、断面形状が同じであるという定常性が失われている。また、背景とは異なる色であって、単色の、直線状の縁を有する物の実世界1の画像が有していた定常性は、縦に1列の画素の上、または横に1列の画素の上に形成された、同じ形状であるつめ形状が一定の間隔で並ぶという定常性に変化していると言える。
【0112】
データ定常性検出部101は、このような、例えば、入力画像であるデータ3が有するデータの定常性を検出する。例えば、データ定常性検出部101は、所定の次元の方向に一定の特徴を有する領域を検出することにより、データの定常性を検出する。例えば、データ定常性検出部101は、図10で示される、同じ円弧形状が一定の間隔で並ぶ領域を検出する。また、例えば、データ定常性検出部101は、図13で示される、同じつめ形状が一定の間隔で並ぶ領域を検出する。
【0113】
また、データ定常性検出部101は、同様の形状の並び方を示す、空間方向の角度(傾き)を検出することにより、データの定常性を検出する。
【0114】
また、例えば、データ定常性検出部101は、空間方向および時間方向の同様の形状の並び方を示す、空間方向および時間方向の角度(動き)を検出することにより、データの定常性を検出する。
【0115】
さらに、例えば、データ定常性検出部101は、所定の次元の方向に一定の特徴を有する領域の長さを検出することにより、データの定常性を検出する。
【0116】
以下、背景とは異なる色であって、単色の、直線状の縁を有する物の実世界1の画像がセンサ2により射影されたデータ3の部分を2値エッジとも称する。
【0117】
ここで、従来の信号処理においては、データ3から、例えば、所望の高解像度データが生成される。
【0118】
これに対して、信号処理装置4による信号処理においては、データ3から、実世界1が推定され、推定の結果に基づいて、高解像度データが生成される。すなわち、実世界1が、データ3から推定され、高解像度データが、データ3を考慮して、推定された実世界1から生成される。
【0119】
実世界1から高解像度データを生成するためには、実世界1とデータ3との関係を考慮する必要がある。例えば、実世界1が、CCDであるセンサ2により、データ3に射影されるとどうなるかが考慮される。
【0120】
CCDであるセンサ2は、上述したように、積分特性を有する。すなわち、データ3の1つの単位(例えば、画素値)は、実世界1の信号をセンサ2の検出素子(例えば、CCD)の検出領域(例えば、受光面)で積分することにより算出することができる。
【0121】
これを高解像度データについて当てはめると、仮想的な高解像度のセンサが実世界1の信号をデータ3に射影する処理を、推定された実世界1に適用することにより、高解像度データを得ることができる。
【0122】
換言すれば、データ3から実世界1の信号を推定できれば、実世界1の信号を、仮想的な高解像度のセンサの検出素子の検出領域毎に(時空間方向に)積分することにより、高解像度データに含まれる1つの値を得ることができる。
【0123】
例えば、センサ2の検出素子の検出領域の大きさに比較して、実世界1の信号の変化が、より小さいとき、データ3は、実世界1の信号の小さい変化を表すことができない。そこで、データ3から推定された実世界1の信号を、実世界1の信号の変化に比較して、より小さい領域毎に(時空間方向に)積分することにより、実世界1の信号の小さい変化を示す高解像度データを得ることができる。
【0124】
すなわち、仮想的な高解像度のセンサの各検出素子について、推定された実世界1の信号を検出領域で積分することにより、高解像度データを得ることができる。
【0125】
信号処理装置4において、画像生成部103は、例えば、仮想的な高解像度のセンサの各検出素子の時空間方向の領域で、推定された実世界1の信号を積分することにより、高解像度データを生成する。
【0126】
次に、データ3から、実世界1を推定するために、信号処理装置4においては、データ3と実世界1との関係、定常性、およびデータ3における空間的または時間的な混合(空間混合または時間混合)が利用される。
【0127】
ここで、混合とは、データ3において、実世界1における2つの物体に対する信号が混合されて1つの値となることをいう。
【0128】
空間混合とは、センサ2の空間積分効果による、2つの物体に対する信号の空間方向の混合をいう。時間混合については、後述する。
【0129】
実世界1そのものは、無限の数の事象からなり、従って、実世界1そのものを、例えば、数式で表現するためには、無限の数の変数が必要になる。データ3から、実世界1の全ての事象を予測することはできない。
【0130】
同様に、データ3から、実世界1の信号の全てを予測することはできない。
【0131】
そこで、信号処理装置4においては、実世界1の信号のうち、定常性を有し、関数f(x,y,z,t)で表すことができる部分に注目し、関数f(x,y,z,t)で表すことができる、定常性を有する実世界1の信号の部分が、N個の変数で表現されるモデル161で近似される。そして、図14で示されるように、モデル161が、データ3の中の、M個のデータ162から予測される。
【0132】
M個のデータ162からモデル161の予測を可能にするには、第1に、モデル161を、定常性に基づいて、N個の変数で表し、第2に、センサ2の積分特性に基づいて、N個の変数で表現されるモデル161とM個のデータ162との関係を示す、N個の変数を使用した式を立てることが必要である。モデル161が、定常性に基づいて、N個の変数で表されているので、N個の変数で表現されるモデル161とM個のデータ162との関係を示す、N個の変数を使用した式は、定常性を有する実世界1の信号の部分と、データの定常性を有するデータ3の部分との関係を記述しているとも言える。
【0133】
換言すれば、N個の変数で表現されるモデル161で近似される、定常性を有する実世界1の信号の部分は、データ3において、データの定常性を生じさせる。
【0134】
データ定常性検出部101は、定常性を有する実世界1の信号の部分によって、データの定常性が生じたデータ3の部分、およびデータの定常性が生じた部分の特徴を検出する。
【0135】
例えば、図15で示されるように、背景とは異なる色であって、単色の、直線状の縁を有する物の実世界1の画像において、図15中Aで示す、注目する位置における縁は、傾きを有している。図15のBの矢印は、縁の傾きを示す。所定の縁の傾きは、基準となる軸に対する角度または基準となる位置に対する方向で表すことができる。例えば、所定の縁の傾きは、空間方向Xの座標軸と、縁との角度で表すことができる。例えば、所定の縁の傾きは、空間方向Xの長さおよび空間方向Yの長さで示される方向で表すことができる。
【0136】
背景とは異なる色であって、単色の、直線状の縁を有する物の実世界1の画像が、センサ2で取得されて、データ3が出力されたとき、データ3において、実世界1の画像における、縁の注目する位置(A)に対する、図15中A’で示す位置に、縁に対応するつめ形状が並び、実世界1の画像の縁の傾きに対応する、図15中B’で示す傾きの方向に、縁に対応するつめ形状が並ぶ。
【0137】
N個の変数で表現されるモデル161は、このような、データ3において、データの定常性を生じさせる、実世界の1の信号の部分を近似する。
【0138】
N個の変数で表現されるモデル161とM個のデータ162との関係を示す、N個の変数を使用した式を立てるとき、データ3において、データの定常性が生じている部分の値を利用する。
【0139】
この場合において、図16で示される、データ3において、データの定常性が生じ、混合領域に属する値に注目して、実世界1の信号を積分した値が、センサ2の検出素子が出力する値に等しいとして、式が立てられる。例えば、データの定常性が生じている、データ3における複数の値について、複数の式を立てることができる。
【0140】
図16において、Aは、縁の注目する位置を示し、A’は、実世界1の画像における、縁の注目する位置(A)に対する、画素(の位置)を示す。
【0141】
ここで、混合領域とは、データ3において、実世界1における2つの物体に対する信号が混合されて1つの値となっているデータの領域をいう。例えば、背景とは異なる色であって、単色の、直線状の縁を有する物の実世界1の画像に対するデータ3において、直線状の縁を有する物に対する画像、および背景に対する画像が積分されている画素値は、混合領域に属する。
【0142】
図17は、式を立てる場合における、実世界1における2つの物体に対する信号および混合領域に属する値を説明する図である。
【0143】
図17中の左側は、センサ2の1つの検出素子の検出領域で取得される、空間方向Xおよび空間方向Yに所定の広がりを有する、実世界1における2つの物体に対する実世界1の信号を示す。図17中の右側は、図17中の左側に示す実世界1の信号がセンサ2の1つの検出素子によって射影された、データ3の1つの画素の画素値Pを示す。すなわち、センサ2の1つの検出素子によって取得された、空間方向Xおよび空間方向Yに所定の広がりを有する、実世界1における2つの物体に対する実世界1の信号が射影された、データ3の1つの画素の画素値Pを示す。
【0144】
図17のLは、実世界1における1つの物体に対する、図17の白い部分の実世界1の信号のレベルを示す。図17のRは、実世界1における他の1つの物体に対する、図17の斜線で表される部分の実世界1の信号のレベルを示す。
【0145】
ここで、混合比αは、センサ2の1つの検出素子の、空間方向Xおよび空間方向Yに所定の広がりを有する検出領域に入射された、2つの物体に対する信号(の面積)の割合を示す。例えば、混合比αは、センサ2の1つの検出素子の検出領域の面積に対する、空間方向Xおよび空間方向Yに所定の広がりを有する、センサ2の1つの検出素子の検出領域に入射された、レベルLの信号の面積の割合を示す。
【0146】
この場合において、レベルL、レベルR、および画素値Pの関係は、式(4)で表すことができる。
【0147】
【数4】
・・・(4)
【0148】
なお、レベルRは、注目している画素の右側に位置している、データ3の画素の画素値とすることができる場合があり、レベルLは、注目している画素の左側に位置している、データ3の画素値とすることができる場合がある。
【0149】
また、混合比αおよび混合領域は、空間方向と同様に、時間方向を考慮することができる。例えば、センサ2に対して撮像の対象となる実世界1の物体が移動しているとき、時間方向に、センサ2の1つの検出素子の検出領域に入射される、2つの物体に対する信号の割合は変化する。センサ2の1つの検出素子の検出領域に入射された、時間方向に割合が変化する、2つの物体に対する信号は、センサ2の検出素子によって、データ3の1つの値に射影される。
【0150】
センサ2の時間積分効果による、2つの物体に対する信号の時間方向の混合を時間混合と称する。
【0151】
データ定常性検出部101は、例えば、実世界1における2つの物体に対する実世界1の信号が射影された、データ3における画素の領域を検出する。データ定常性検出部101は、例えば、実世界1の画像の縁の傾きに対応する、データ3における傾きを検出する。
【0152】
そして、実世界推定部102は、例えば、データ定常性検出部101で検出された、所定の混合比αを有する画素の領域、および領域の傾きを基に、N個の変数で表現されるモデル161とM個のデータ162との関係を示す、N個の変数を使用した式を立てて、立てた式を解くことにより、実世界1の信号を推定する。
【0153】
さらに、具体的な実世界1の推定について説明する。
【0154】
関数F(x,y,z,t)で表される実世界の信号のうち、空間方向Zの断面(センサ2の位置)における関数F(x,y,t)で表される実世界の信号を、空間方向Xにおける位置x、空間方向Yにおける位置y、および時刻tで決まる近似関数f(x,y,t)で近似することを考える。
【0155】
ここで、センサ2の検出領域は、空間方向Xおよび空間方向Yに広がりを有する。換言すれば、近似関数f(x,y,t)は、センサ2で取得される、空間方向および時間方向に広がりを有する実世界1の信号を近似する関数である。
【0156】
センサ2による実世界1の信号の射影によって、データ3の値P(x,y,t)が得られるものとする。データ3の値P(x,y,t)は、例えば、イメージセンサであるセンサ2が出力する、画素値である。
【0157】
ここで、センサ2による射影を定式化できる場合、近似関数f(x,y,t)を射影して得られた値を射影関数S(x,y,t)と表すことができる。
【0158】
射影関数S(x,y,t)を求める上で、以下に示す問題がある。
【0159】
第1に、一般的に、実世界1の信号を表す関数F(x,y,z,t)は、無限の次数の関数となりうる。
【0160】
第2に、たとえ、実世界の信号を関数として記述できたとしても、センサ2の射影を介した、射影関数S(x,y,t)を定めることは、一般的にはできない。すなわち、センサ2による射影の動作、言い換えればセンサ2の入力信号と出力信号との関係を知らないので、射影関数S(x,y,t)を定めることはできない。
【0161】
第1の問題点に対して、実世界1の信号を近似する関数f(x,y,t)を記述可能な関数(例えば、有限次数の関数)である関数fi(x,y,t)および変数wiの積和で表現することを考える。
【0162】
また、第2の問題点に対して、センサ2による射影を定式化することで、関数fi(x,y,t)の記述から、関数Si(x,y,t)を記述することができる。
【0163】
すなわち、実世界1の信号を近似する関数f(x,y,t)を関数fi(x,y,t)および変数wiの積和で表現すると、式(5)が得られる。
【0164】
【数5】
・・・(5)
【0165】
例えば、式(6)で示されるように、センサ2の射影を定式化することにより、式(5)から、データ3と実世界の信号の関係を式(7)のように定式化することができる。
【0166】
【数6】
・・・(6)
【0167】
【数7】
・・・(7)
式(7)において、jは、データのインデックスである。
【0168】
式(7)のN個の変数wi(i=1乃至N)が共通であるM個のデータ群(j=1乃至M)が存在すれば、式(8)を満たすので、データ3から実世界のモデル161を求めることができる。
【0169】
【数8】
・・・(8)
【0170】
Nは、実世界1を近似するモデル161を表現する変数の数である。Mは、データ3に含まれるデータ162の数である。
【0171】
実世界1の信号を近似する関数f(x,y,t)を式(5)で表すことにより、wiとして変数の部分を独立させることができる。このとき、iは、そのまま変数の数を示すことになる。また、fiで示される関数の形を独立させることができ、fiとして所望の関数を利用することができるようになる。
【0172】
従って、関数fiの形に依存せず、変数wiの数Nを定義でき、変数wiの数Nとデータの数Mとの関係で変数wiを求めることができる。
【0173】
すなわち、以下の3つを用いることで、データ3から実世界1を推定することができるようになる。
【0174】
第1に、N個の変数を定める、すなわち、式(5)を定める。これは、定常性を用いて実世界1を記述することにより可能になる。例えば、断面が多項式で表され、同じ断面形状が一定方向に続く、というモデル161で実世界1の信号を記述することができる。
【0175】
第2に、例えば、センサ2による射影を定式化して、式(7)を記述する。例えば、実世界1の信号の積分を行った結果がデータ3であると定式化する。
【0176】
第3に、M個のデータ162を集めて、式(8)を満足させる。例えば、データ定常性検出部101で検出された、データの定常性を有する領域から、データ162が集められる。例えば、定常性の一例である、一定の断面が続く領域のデータ162が集められる。
【0177】
このように、式(5)によって、データ3と実世界1との関係を記述し、M個のデータ162を集めることで、式(8)を満たすことにより、実世界1を推定することができる。
【0178】
より具体的には、N=Mのとき、変数の数Nと式の数Mが等しいので、連立方程式を立てることにより、変数wiを求めることができる。
【0179】
また、N<Mのとき、様々な解法を適用できる。例えば、最小自乗法により、変数wiを求めることができる。
【0180】
ここで、最小自乗法による解法について、詳細に記載する。
【0181】
まず、式(7)に従って、実世界1からデータ3を予測する式(9)を示す。
【0182】
【数9】
・・・(9)
【0183】
式(9)において、P'j(xj,yj,tj)は、予測値である。
【0184】
予測値P'と実測値Pとの差分自乗和Eは、式(10)で表される。
【0185】
【数10】
・・・(10)
【0186】
差分自乗和Eが最小になるように、変数wiが求められる。従って、各変数wkによる式(10)の偏微分値は0とされる。すなわち、式(11)が成り立つ。
【0187】
【数11】
・・・(11)
【0188】
式(11)から式(12)が導かれる。
【0189】
【数12】
・・・(12)
【0190】
式(12)がK=1乃至Nで成り立つとき、最小自乗法による解が得られる。このときの正規方程式は、式(13)で示される。
【0191】
【数13】
・・・(13)
【0192】
ただし、式(13)において、Si(xj,yj,tj)は、Si(j)と記述した。
【0193】
【数14】
・・・(14)
【0194】
【数15】
・・・(15)
【0195】
【数16】
・・・(16)
【0196】
式(14)乃至式(16)から、式(13)は、SMATWMAT=PMATと表すことができる。
【0197】
式(13)において、Siは、実世界1の射影を表す。式(13)において、Pjは、データ3を表す。式(13)において、wiは、実世界1の信号の特徴を記述し、求めようとする変数である。
【0198】
従って、式(13)にデータ3を入力し、行列解法などによりWMATを求めることで、実世界1を推定することが可能になる。すなわち、式(17)を演算することにより、実世界1を推定することができるようになる。
【0199】
【数17】
・・・(17)
【0200】
なお、SMATが正則でない場合、SMATの転置行列を利用して、WMATを求めることができる。
【0201】
実世界推定部102は、例えば、式(13)にデータ3を入力し、行列解法などによりWMATを求めることで、実世界1を推定する。
【0202】
ここで、さらにより具体的な例を説明する。例えば、実世界1の信号の断面形状、すなわち位置の変化に対するレベルの変化を、多項式で記述する。実世界1の信号の断面形状が一定で、実世界1の信号の断面が等速で移動すると仮定する。そして、センサ2による実世界1の信号からデータ3への射影を、実世界1の信号の時空間方向の3次元で積分で定式化する。
【0203】
実世界1の信号の断面形状が、等速で移動するとの仮定から、式(18)および式(19)が得られる。
【0204】
【数18】
・・・(18)
【0205】
【数19】
・・・(19)
【0206】
ここで、vxおよびvyは、一定である。
【0207】
実世界1の信号の断面形状は、式(18)および式(19)を用いることで、式(20)と表される。
【0208】
【数20】
・・・(20)
【0209】
センサ2による実世界1の信号からデータ3への射影を、実世界1の信号の時空間方向の3次元で積分で定式化すれば、式(21)が得られる。
【0210】
【数21】
・・・(21)
【0211】
式(21)において、S(x,y,t)は、空間方向Xについて、位置xsから位置xeまで、空間方向Yについて、位置ysから位置yeまで、時間方向tについて、時刻tsから時刻teまでの領域、すなわち時空間の直方体で表される領域の積分値を示す。
【0212】
式(21)を定めることができる所望の関数f(x',y')を用いて、式(13)を解けば、実世界1の信号を推定することができる。
【0213】
以下では、関数f(x',y')の一例として、式(22)に示す関数を用いることとする。
【0214】
【数22】
・・・(22)
【0215】
すなわち、実世界1の信号が、式(18)、式(19)、および式(22)で表される定常性を含むと仮定している。これは、図18で示されるように、一定の形状の断面が、時空間方向に移動していることを示す。
【0216】
式(21)に、式(22)を代入することにより、式(23)が得られる。
【0217】
【数23】
・・・(23)
【0218】
ただし、
Volume=(xe-xs)(ye-ys)(te-ts)
S0(x,y,t)=Volume/2×(xe+xs+vx(te+ts))
S1(x,y,t)=Volume/2×(ye+ys+vy(te+ts))
S2(x,y,t)=1
である。
【0219】
図19は、データ3から抽出される、M個のデータ162の例を示す図である。例えば、27個の画素値が、データ162として抽出され、抽出された画素値が、Pj(x,y,t)とされる。この場合、jは、0乃至26である。
【0220】
図19に示す例において、nである時刻tの注目する位置に対応する画素の画素値がP13(x,y,t)であり、データの定常性を有する画素の画素値の並ぶ方向(例えば、データ定常性検出部101で検出された、同じ形状であるつめ形状が並ぶ方向)が、P4(x,y,t)、P13(x,y,t)、およびP22(x,y,t)を結ぶ方向であるとき、nである時刻tにおける、画素値P9(x,y,t)乃至P17(x,y,t)、nより時間的に前である、n-1である時刻tにおける、画素値P0(x,y,t)乃至P8(x,y,t)、およびnより時間的に後である、n+1である時刻tにおける、画素値P18(x,y,t)乃至P26(x,y,t)が抽出される。
【0221】
ここで、センサ2であるイメージセンサから出力された、データ3である画素値が取得された領域は、時間方向および2次元の空間方向に広がりを有する。そこで、例えば、画素に対応する直方体(画素値が取得された領域)の重心を、画素の時空間方向の位置として使用することができる。
【0222】
27個の画素値P0(x,y,t)乃至P26(x,y,t)、および式(23)から、式(13)を生成し、Wを求めることで、実世界1を推定することが可能になる。
【0223】
このように、実世界推定部102は、例えば、27個の画素値P0(x,y,t)乃至P26(x,y,t)、および式(23)から、式(13)を生成し、Wを求めることで、実世界1の信号を推定する。
【0224】
なお、関数fi(x,y,t)として、ガウス関数、またはシグモイド関数などを利用することができる。
【0225】
図20乃至図23を参照して、推定された実世界1の信号から、データ3に対応する、より高解像度の高解像度データを生成する処理の例について説明する。
【0226】
図20で示されるように、データ3は、時間方向および2次元の空間方向に実世界1の信号が積分された値を有する。例えば、センサ2であるイメージセンサから出力された、データ3である画素値は、検出素子に入射された光である、実世界1の信号が、時間方向に、検出時間であるシャッタ時間で積分され、空間方向に、検出素子の受光領域で積分された値を有する。
【0227】
これに対して、図21で示されるように、空間方向により解像度の高い高解像度データは、推定された実世界1の信号を、時間方向に、データ3を出力したセンサ2の検出時間と同じ時間で積分するとともに、空間方向に、データ3を出力したセンサ2の検出素子の受光領域に比較して、より狭い領域で積分することにより、生成される。
【0228】
なお、空間方向により解像度の高い高解像度データを生成する場合において、推定された実世界1の信号が積分される領域は、データ3を出力したセンサ2の検出素子の受光領域と全く無関係に設定することができる。例えば、高解像度データに、データ3に対して、空間方向に整数倍の解像度を持たせることは勿論、5/3倍など、データ3に対して、空間方向に有理数倍の解像度を持たせることができる。
【0229】
また、図22で示されるように、時間方向により解像度の高い高解像度データは、推定された実世界1の信号を、空間方向に、データ3を出力したセンサ2の検出素子の受光領域と同じ領域で積分するとともに、時間方向に、データ3を出力したセンサ2の検出時間に比較して、より短い時間で積分することにより、生成される。
【0230】
なお、時間方向により解像度の高い高解像度データを生成する場合において、推定された実世界1の信号が積分される時間は、データ3を出力したセンサ2の検出素子のシャッタ時間と全く無関係に設定することができる。例えば、高解像度データに、データ3に対して、時間方向に整数倍の解像度を持たせることは勿論、7/4倍など、データ3に対して、時間方向に有理数倍の解像度を持たせることができる。
【0231】
動きボケを除去した高解像度データは、推定された実世界1の信号を、時間方向に積分しないで、空間方向にのみ積分することにより、生成される。
【0232】
さらに、図23で示されるように、時間方向および空間方向により解像度の高い高解像度データは、推定された実世界1の信号を、空間方向に、データ3を出力したセンサ2の検出素子の受光領域に比較して、より狭い領域で積分するとともに、時間方向に、データ3を出力したセンサ2の検出時間に比較して、より短い時間で積分することにより、生成される。
【0233】
この場合において、推定された実世界1の信号が積分される領域および時間は、データ3を出力したセンサ2の検出素子の受光領域およびシャッタ時間と全く無関係に設定することができる。
【0234】
このように、画像生成部103は、例えば、推定された実世界1の信号を所望の時空間の領域で積分することにより、時間方向、または空間方向に、より高解像度のデータを生成する。
【0235】
以上のように、実世界1の信号を推定することにより、実世界1の信号に対してより正確で、時間方向、または空間方向に、より高解像度のデータを生成することができる。
【0236】
図24乃至図28は、信号処理装置4の信号処理を用いた入力画像の例と、処理の結果の例を示している。
【0237】
図24は、入力画像の元の画像(実世界1の光信号に相当)を示す図である。図25は、入力画像の例を示す図である。図25で示される入力画像は、図24で示される画像の2×2の画素からなるブロックに属する画素の画素値の平均値を、1つの画素の画素値として生成された画像である。すなわち、入力画像は、図24で示される画像に、センサの積分特性を模した、空間方向の積分を適用することにより得られた画像である。
【0238】
図24で示される元の画像において、上下方向から、ほぼ5度時計方向に傾いた細線の画像が含まれている。同様に、図25で示される入力画像において、上下方向から、ほぼ5度時計方向に傾いた細線の画像が含まれている。
【0239】
図26は、図25で示される入力画像に、従来のクラス分類適応処理を適用して得られた画像を示す図である。ここで、クラス分類適応処理は、クラス分類処理と適応処理とからなり、クラス分類処理によって、データを、その性質に基づいてクラス分けし、各クラスごとに適応処理を施すものである。適応処理では、例えば、低画質または標準画質の画像が、所定のタップ係数を用いてマッピング(写像)されることにより、高画質の画像に変換される。
【0240】
即ち、適応処理では、第1のデータが、所定のタップ係数を用いてマッピング(写像)されることにより、第2のデータに変換される。
【0241】
いま、このタップ係数を用いてのマッピング方法として、例えば、線形1次結合モデルを採用するとともに、第1のデータとして、高解像度のHD(High Definition)画像をローパスフィルタでフィルタリングすること等により得られる低解像度または標準解像度のSD(Standard Definition)画像を採用し、第2のデータとして、そのSD画像を得るのに用いたHD画像を採用することとして、適応処理について説明する。
【0242】
上述の条件下において、HD画像を構成する画素であるHD画素yは、例えば、SD画像を構成する画素であるSD画素から、HD画素を予測するための予測タップとして抽出される複数のSD画素と、タップ係数とを用いて、次の線形1次式(線形結合)によって求めることができる。
【0243】
【数24】
・・・(24)
【0244】
但し、式(24)において、xnは、HD画素yについての予測タップを構成する、n番目のSD画素(の画素値)を表し、wnは、n番目のSD画素と乗算されるn番目のタップ係数を表す。なお、式(24)では、予測タップが、N個のSD画素x1,x2,・・・,xNで構成されるものとしてある。
【0245】
ここで、HD画素の画素値yは、式(24)に示した線形1次式ではなく、2次以上の高次の式によって求めるようにすることも可能である。
【0246】
いま、HD画像において、k番目のHD画素(の画素値)の真値をykと表すとともに、式(24)によって得られるその真値ykの予測値をyk’と表すと、その予測誤差ekは、例えば、次式で表される。
【0247】
【数25】
・・・(25)
【0248】
式(25)の予測値yk’は、式(24)にしたがって求められるため、式(25)のyk’を、式(24)にしたがって置き換えると、次式が得られる。
【0249】
【数26】
・・・(26)
【0250】
但し、式(26)において、xn,kは、k番目のHD画素についての予測タップを構成するn番目のSD画素を表す。
【0251】
式(26)の予測誤差ekを0とするタップ係数wnが、HD画素を予測するのに最適なものとなるが、すべてのHD画素について、そのようなタップ係数wnを求めることは、一般には困難である。
【0252】
そこで、タップ係数wnが最適なものであることを表す規範として、例えば、最小自乗法を採用することとすると、最適なタップ係数wnは、統計的な誤差としての、例えば、次式で表される自乗誤差の総和Eを最小にすることで求めることができる。
【0253】
【数27】
・・・(27)
【0254】
但し、式(27)において、Kは、HD画素ykと、そのHD画素ykについての予測タップを構成するSD画素x1,k,x2,k,・・・,xN,kとのセットのサンプル数を表す。
【0255】
式(27)の自乗誤差の総和Eを最小(極小)にするタップ係数wnは、その総和Eをタップ係数wnで偏微分したものを0とするものであり、従って、次式を満たす必要がある。
【0256】
【数28】
・・・(28)
【0257】
そこで、上述の式(26)をタップ係数wnで偏微分すると、次式が得られる。
【0258】
【数29】
・・・(29)
【0259】
式(28)と(29)から、次式が得られる。
【0260】
【数30】
・・・(30)
【0261】
式(30)のekに、式(26)を代入することにより、式(30)は、式(31)に示す正規方程式で表すことができる。
【0262】
【数31】
・・・(31)
【0263】
式(31)の正規方程式は、HD画素ykとSD画素xn,kのセットを、ある程度の数だけ用意することでたてることができ、式(31)を解くことで、最適なタップ係数wnを求めることができる。なお、式(31)を解くにあたっては、例えば、掃き出し法(Gauss-Jordanの消去法)などを採用することが可能である。
【0264】
以上のように、多数のHD画素y1,y2,・・・,yKを、タップ係数の学習の教師となる教師データとするとともに、各HD画素ykについての予測タップを構成するSD画素x1,k,x2,k,・・・,xN,kを、タップ係数の学習の生徒となる生徒データとして、式(31)を解くことにより、最適なタップ係数wnを求める学習を行っておき、さらに、そのタップ係数wnを用い、式(24)により、SD画素を、HD画素にマッピング(変換)するのが適応処理である。
【0265】
ここで、HD画素ykについての予測タップを構成するSD画素x1,k,x2,k,・・・,xN,kとしては、そのHD画素ykに対応するSD画像上の位置から空間的または時間的に近い位置にあるSD画素を採用することができる。
【0266】
また、クラス分類適応処理では、タップ係数wnの学習と、そのタップ係数wnを用いたマッピングとは、クラスごとに行われる。クラス分類適応処理では、注目しているHD画素ykを対象にクラス分類処理が行われ、そのクラス分類処理により得られるクラスごとに、タップ係数wnの学習と、そのタップ係数wnを用いたマッピングが行われる。
【0267】
HD画素ykを対象としたクラス分類処理としては、例えば、そのHD画素ykのクラス分類に用いるクラスタップとしての複数のSD画素を、SD画像から抽出し、その複数のSD画素で構成されるクラスタップを用いてMビットADRC(Adaptive Dynamic Range Coding)処理を施す方法がある。
【0268】
MビットADRC処理においては、クラスタップを構成するSD画素の最大値MAXと最小値MINが検出され、DR=MAX-MINを、局所的なダイナミックレンジとし、このダイナミックレンジDRに基づいて、クラスタップを構成するSD画素がKビットに再量子化される。即ち、クラスタップを構成する各SD画素から、最小値MINが減算され、その減算値がDR/2Kで除算(量子化)される。従って、クラスタップが、例えば、1ビットADRC処理される場合には、そのクラスタップを構成する各SD画素は1ビットとされることになる。そして、この場合、以上のようにして得られる、クラスタップを構成する各SD画素についての1ビットの画素値を、所定の順番で並べたビット列が、ADRCコードとして出力され、このADRCコードが、クラスを表すクラスコードとされる。
【0269】
なお、クラス分類適応処理は、SD画素には含まれていないが、HD画素に含まれる成分が再現される点で、例えば、単なる補間処理等とは異なる。即ち、クラス分類適応処理では、式(24)だけを見る限りは、いわゆる補間フィルタを用いての補間処理と同一であるが、その補間フィルタのタップ係数に相当するタップ係数wnが、教師データとしてのHD画素と生徒データとしてのSD画素とを用いての学習により求められるため、HD画素に含まれる成分を再現することができる。
【0270】
ここで、タップ係数wnの学習では、教師データyと生徒データxとの組み合わせとして、どのようなものを採用するかによって、各種の変換を行うタップ係数wnを求めることができる。
【0271】
即ち、例えば、上述のように、教師データyとして、高解像度のHD画像を採用するとともに、生徒データxとして、そのHD画像の解像度を低下させたSD画像を採用した場合には、画像の解像度を向上させるマッピングを行うタップ係数wnを得ることができる。また、例えば、教師データyとして、HD画像を採用するとともに、生徒データxとして、そのHD画像の画素数を少なくしたSD画像を採用した場合には、画像を構成する画素数を増加させるマッピングを行うタップ係数wnを得ることができる。
【0272】
図26は、図25の入力画像に対して、上述のようなクラス分類適応処理によるマッピングを施すことにより得られる画像である。図26では、細線の画像が、図24の元の画像とは異なるものになっていることがわかる。
【0273】
図27は、データ定常性検出部101による、図25の例で示される入力画像から細線の領域を検出した結果を示す図である。図27において、白い領域は、細線の領域、すなわち、図10で示される円弧形状が並んでいる領域を示す。
【0274】
図28は、図25で示される画像を入力画像として、信号処理装置4で信号処理を行うことにより得られる出力画像の例を示す図である。図28で示されるように、信号処理装置4によれば、図24で示される元の画像の細線の画像により近い画像を得ることができる。
【0275】
図29は、信号処理装置4による、信号処理を説明するフローチャートである。
【0276】
ステップS101において、データ定常性検出部101は、定常性の検出の処理を実行する。データ定常性検出部101は、データ3である入力画像に含まれているデータの定常性を検出して、検出したデータの定常性を示すデータ定常性情報を実世界推定部102および画像生成部103に供給する。
【0277】
データ定常性検出部101は、現実世界の信号の定常性に対応するデータの定常性を検出する。ステップS101の処理において、データ定常性検出部101により検出されるデータの定常性は、データ3に含まれる、実世界1の画像の定常性の一部であるか、または、実世界1の信号の定常性から変化してしまった定常性である。
【0278】
例えば、データ定常性検出部101は、所定の次元の方向に一定の特徴を有する領域を検出することにより、データの定常性を検出する。また、例えば、データ定常性検出部101は、同様の形状の並び方を示す、空間方向の角度(傾き)を検出することにより、データの定常性を検出する。
【0279】
ステップS101における、定常性の検出の処理の詳細は、後述する。
【0280】
なお、データ定常性情報は、データ3の特徴を示す特徴量として利用することができる。
【0281】
ステップS102において、実世界推定部102は、実世界の推定の処理を実行する。すなわち、実世界推定部102は、入力画像、およびデータ定常性検出部101から供給されたデータ定常性情報を基に、実世界1の信号を推定する。例えば、ステップS102の処理において、実世界推定部102は、実世界1を近似(記述)するモデル161を予測することにより、実世界1の信号を推定する。実世界推定部102は、推定された実世界1の信号を示す実世界推定情報を画像生成部103に供給する。
【0282】
例えば、実世界推定部102は、線状の物の幅を予測することにより、実世界1の信号を推定する。また、例えば、実世界推定部102は、線状の物の色を示すレベルを予測することにより、実世界1の信号を推定する。
【0283】
ステップS102における、実世界の推定の処理の詳細は、後述する。
【0284】
なお、実世界推定情報は、データ3の特徴を示す特徴量として利用することができる。
【0285】
ステップS103において、画像生成部103は、画像の生成の処理を実行して、処理は終了する。すなわち、画像生成部103は、実世界推定情報を基に、画像を生成して、生成した画像を出力する。または、画像生成部103は、データ定常性情報および実世界推定情報を基に、画像を生成して、生成した画像を出力する。
【0286】
例えば、ステップS103の処理において、画像生成部103は、実世界推定情報を基に、推定された現実世界の光を空間方向に積分することにより、入力画像に比較して、空間方向により高解像度の画像を生成して、生成した画像を出力する。例えば、画像生成部103は、実世界推定情報を基に、推定された現実世界の光を時空間方向に積分することにより、入力画像に比較して、時間方向および空間方向により高解像度の画像を生成して、生成した画像を出力する。ステップS103における、画像の生成の処理の詳細は、後述する。
【0287】
このように、信号処理装置4は、データ3からデータの定常性を検出し、検出したデータの定常性を基に、実世界1を推定する。そして、信号処理装置4は、推定された実世界1を基に、より実世界1に近似した信号を生成する。
【0288】
以上のように、現実世界の信号を推定して処理を実行するようにした場合には、正確で、精度の高い処理結果を得ることができるようになる。
【0289】
また、第1の次元を有する現実世界の信号である第1の信号が射影され、現実世界の信号の定常性の一部が欠落した第1の次元よりも少ない第2の次元の第2の信号の、欠落した現実世界の信号の定常性に対応するデータの定常性を検出し、検出されたデータの定常性に基づいて、欠落した現実世界の信号の定常性を推定することにより第1の信号を推定するようにした場合には、現実世界の事象に対して、より正確で、より精度の高い処理結果を得ることができるようになる。
【0290】
次に、データ定常性検出部101の構成の詳細について説明する。
【0291】
図30は、データ定常性検出部101の構成を示すブロック図である。
【0292】
図30に構成を示すデータ定常性検出部101は、細線である対象物を撮像したとき、対象物の有する断面形状が同じであるという定常性から生じた、データ3に含まれるデータの定常性を検出する。すなわち、図30に構成を示すデータ定常性検出部101は、細線である実世界1の画像の有する、長さ方向の任意の位置において、長さ方向に直交する方向の位置の変化に対する光のレベルの変化が同じであるという定常性から生じた、データ3に含まれるデータの定常性を検出する。
【0293】
より具体的には、図30に構成を示すデータ定常性検出部101は、細線の画像を空間積分効果を有するセンサ2で撮像して得られたデータ3に含まれる、斜めにずれて隣接して並ぶ、複数の所定の長さの円弧形状(かまぼこ型)が配置される領域を検出する。
【0294】
データ定常性検出部101は、データ3である入力画像から、データの定常性を有する細線の画像が射影された画像データの部分(以下、定常成分とも称する)以外の画像データの部分(以下、非定常成分と称する)を抽出し、抽出された非定常成分と入力画像とから、実世界1の細線の画像が射影された画素を検出し、入力画像における、実世界1の細線の画像が射影された画素からなる領域を検出する。
【0295】
非定常成分抽出部201は、入力画像から非定常成分を抽出して、入力画像と共に、抽出された非定常成分を示す非定常成分情報を頂点検出部202および単調増減検出部203に供給する。
【0296】
例えば、図31で示されるように、ほぼ一定の光のレベルの背景の前に細線がある実世界1の画像がデータ3に射影されたとき、図32で示されるように、非定常成分抽出部201は、データ3である入力画像における背景を平面で近似することにより、背景である非定常成分を抽出する。図32において、実線は、データ3の画素値を示し、点線は、背景を近似する平面で示される近似値を示す。図32において、Aは、細線の画像が射影された画素の画素値を示し、PLは、背景を近似する平面を示す。
【0297】
このように、データの定常性を有する画像データの部分における、複数の画素の画素値は、非定常成分に対して不連続となる。
【0298】
非定常成分抽出部201は、実世界1の光信号である画像が射影され、実世界1の画像の定常性の一部が欠落した、データ3である画像データの複数の画素の画素値の不連続部を検出する。
【0299】
非定常成分抽出部201における非定常成分の抽出の処理の詳細は、後述する。
【0300】
頂点検出部202および単調増減検出部203は、非定常成分抽出部201から供給された非定常成分情報を基に、入力画像から非定常成分を除去する。例えば、頂点検出部202および単調増減検出部203は、入力画像の各画素のうち、背景の画像のみが射影された画素の画素値を0に設定することにより、入力画像から非定常成分を除去する。また、例えば、頂点検出部202および単調増減検出部203は、入力画像の各画素の画素値から、平面PLで近似される値を引き算することにより、入力画像から非定常成分を除去する。
【0301】
入力画像から背景を除去することができるので、頂点検出部202乃至連続性検出部204は、細線が射影された画像データの部分のみを処理の対象とすることができ、頂点検出部202乃至連続性検出部204における処理がより容易になる。
【0302】
なお、非定常成分抽出部201は、入力画像から非定常成分を除去した画像データを頂点検出部202および単調増減検出部203に供給するようにしてもよい。
【0303】
以下に説明する処理の例において、入力画像から非定常成分が除去された画像データ、すなわち、定常成分を含む画素のみからなる画像データが対象となる。
【0304】
ここで、頂点検出部202乃至連続性検出部204が検出しようとする、細線の画像が射影された画像データについて説明する。
【0305】
図31で示される細線の画像が射影された画像データの空間方向Yの断面形状(空間方向の位置の変化に対する画素値の変化)は、光学LPFがないとした場合、センサ2であるイメージセンサの空間積分効果から、図33に示す台形、または図34に示す三角形となることが考えられる。しかしながら、通常のイメージセンサは、光学LPFを備え、イメージセンサは、光学LPFを通過した画像を取得し、取得した画像をデータ3に射影するので、現実には、細線の画像データの空間方向Yの断面形状は、図35に示すようなガウス分布に類似した形状となる。
【0306】
頂点検出部202乃至連続性検出部204は、細線の画像が射影された画素であって、同じ断面形状(空間方向の位置の変化に対する画素値の変化)が画面の上下方向に一定の間隔で並ぶものからなる領域を検出して、さらに、実世界1の細線の長さ方向に対応した、領域の繋がりを検出することにより、データの定常性を有する領域である、細線の画像が射影された画素からなる領域を検出する。すなわち、頂点検出部202乃至連続性検出部204は、入力画像における、縦に1列の画素の上に、円弧形状(かまぼこ型)が形成される領域を検出し、検出された領域が横方向に隣接して並んでいるか否かを判定して、実世界1の信号である細線の画像の長さ方向に対応した、円弧形状が形成される領域の繋がりを検出する。
【0307】
また、頂点検出部202乃至連続性検出部204は、細線の画像が射影された画素であって、同じ断面形状が画面の左右方向に一定の間隔で並ぶものからなる領域を検出して、さらに、実世界1の細線の長さ方向に対応した、検出された領域の繋がりを検出することにより、データの定常性を有する領域である、細線の画像が射影された画素からなる領域を検出する。すなわち、頂点検出部202乃至連続性検出部204は、入力画像における、横に1列の画素の上に、円弧形状が形成される領域を検出し、検出された領域が縦方向に隣接して並んでいるか否かを判定して、実世界1の信号である細線の画像の長さ方向に対応した、円弧形状が形成される領域の繋がりを検出する。
【0308】
まず、細線の画像が射影された画素であって、画面の上下方向に同じ円弧形状が一定の間隔で並ぶものからなる領域を検出する処理を説明する。
【0309】
頂点検出部202は、周囲の画素に比較して、より大きい画素値を有する画素、すなわち頂点を検出し、頂点の位置を示す頂点情報を単調増減検出部203に供給する。画面の上下方向に1列に並ぶ画素を対象とした場合、頂点検出部202は、画面の上側に位置する画素の画素値、および画面の下側に位置する画素の画素値に比較して、より大きい画素値を有する画素を頂点として検出する。頂点検出部202は、1つの画像、例えば、1つのフレームの画像から、1または複数の頂点を検出する。
【0310】
1つの画面には、フレームまたはフィールドが含まれる。以下の説明において、同様である。
【0311】
例えば、頂点検出部202は、1フレームの画像からまだ注目画素とされていない画素の中から注目画素を選択し、注目画素の画素値と、注目画素の上側の画素の画素値とを比較し、注目画素の画素値と、注目画素の下側の画素の画素値とを比較して、上側の画素の画素値より大きい画素値を有し、下側の画素の画素値より大きい画素値を有する注目画素を検出して、検出された注目画素を頂点とする。頂点検出部202は、検出された頂点を示す頂点情報を単調増減検出部203に供給する。
【0312】
頂点検出部202が、頂点を検出しない場合もある。例えば、1つの画像の画素の画素値が全て同じ値であるとき、または、1若しくは2の方向に対して画素値が減少しているとき、頂点は検出されない。この場合、細線の画像は、画像データに射影されていない。
【0313】
単調増減検出部203は、頂点検出部202から供給された、頂点の位置を示す頂点情報を基に、頂点検出部202で検出された頂点に対して上下方向に1列に並ぶ画素であって、細線の画像が射影された画素からなる領域の候補を検出し、頂点情報と共に、検出した領域を示す領域情報を連続性検出部204に供給する。
【0314】
より具体的には、単調増減検出部203は、頂点の画素値を基準として、単調減少している画素値を有する画素からなる領域を、細線の画像が射影された画素からなる領域の候補として検出する。単調減少とは、頂点からの距離がより長い画素の画素値が、頂点からの距離が短い画素の画素値に比較して、より小さいことをいう。
【0315】
また、単調増減検出部203は、頂点の画素値を基準として、単調増加している画素値を有する画素からなる領域を、細線の画像が射影された画素からなる領域の候補として検出する。単調増加とは、頂点からの距離がより長い画素の画素値が、頂点からの距離が短い画素の画素値に比較して、より大きいことをいう。
【0316】
以下、単調増加している画素値を有する画素からなる領域についての処理は、単調減少している画素値を有する画素からなる領域についての処理と同様なので、その説明は省略する。細線の画像が射影された画素であって、画面の横方向に同じ円弧形状が一定の間隔で並ぶものからなる領域を検出する処理における、単調増加している画素値を有する画素からなる領域についての処理も、単調減少している画素値を有する画素からなる領域についての処理と同様なので、その説明は省略する。
【0317】
例えば、単調増減検出部203は、頂点に対して縦に1列に各画素について、各画素の画素値と、上側の画素の画素値との差分、および下側の画素の画素値との差分を求める。そして、単調増減検出部203は、差分の符号が変化する画素を検出することにより、画素値が単調減少している領域を検出する。
【0318】
さらに、単調増減検出部203は、画素値が単調減少している領域から、頂点の画素値の符号を基準として、頂点の画素値の符号と同じ符号の画素値を有する画素からなる領域を、細線の画像が射影された画素からなる領域の候補として検出する。
【0319】
例えば、単調増減検出部203は、各画素の画素値の符号と、上側の画素の画素値の符号および下側の画素の画素値の符号とを比較し、画素値の符号が変化する画素を検出することにより、画素値が単調減少している領域から、頂点と同じ符号の画素値を有する画素からなる領域を検出する。
【0320】
このように、単調増減検出部203は、上下方向に並び、頂点に対して画素値が単調減少し、頂点と同じ符号の画素値を有する画素からなる領域を検出する。
【0321】
図36は、空間方向Yの位置に対する画素値から、細線の画像が射影された画素の領域を検出する、頂点の検出および単調増減領域の検出の処理を説明する図である。
【0322】
図36乃至図38において、Pは、頂点を示す。図30で構成が示されるデータ定常性検出部101の説明において、Pは、頂点を示す。
【0323】
頂点検出部202は、各画素の画素値と、これに空間方向Yに隣接する画素の画素値とを比較して、空間方向Yに隣接する2つの画素の画素値より大きい画素値を有する画素を検出することにより、頂点Pを検出する。
【0324】
頂点Pと、頂点Pの空間方向Yの両側の画素とからなる領域は、頂点Pの画素値に対して、空間方向Yの両側の画素の画素値が単調に減少する単調減少領域である。図36において、Aで示す矢印、およびBで示す矢印は、頂点Pの両側に存在する単調減少領域を示す。
【0325】
単調増減検出部203は、各画素の画素値と、その画素に空間方向Yに隣接する画素の画素値との差分を求めて、差分の符号が変化する画素を検出する。単調増減検出部203は、検出された、差分の符号が変化する画素と、その手前側(頂点P側)の画素との境界を、細線の画像が射影された画素からなる細線領域の境界とする。
【0326】
図36において、差分の符号が変化する画素と、その手前側(頂点P側)の画素との境界である細線領域の境界はCで示される。
【0327】
さらに、単調増減検出部203は、単調減少領域において、各画素の画素値の符号と、その画素に空間方向Yに隣接する画素の画素値の符号とを比較し、画素値の符号が変化する画素を検出する。単調増減検出部203は、検出された、差分の符号が変化する画素と、その手前側(頂点P側)の画素との境界を細線領域の境界とする。
【0328】
図36において、差分の符号が変化する画素と、その手前側(頂点P側)の画素との境界である細線領域の境界はDで示される。
【0329】
図36で示されるように、細線の画像が射影された画素からなる細線領域Fは、細線領域の境界Cと、細線領域の境界Dとに挟まれる領域とされる。
【0330】
単調増減検出部203は、このような単調増減領域からなる細線領域Fの中から、予め定めた閾値より長い細線領域F、すなわち、閾値より多い数の画素を含む細線領域Fを求める。例えば、閾値が3であるとき、単調増減検出部203は、4つ以上の画素を含む細線領域Fを検出する。
【0331】
さらに、このように検出された細線領域Fの中から、単調増減検出部203は、頂点Pの画素値、および頂点Pの右側の画素の画素値、および頂点Pの左側の画素の画素値を、それぞれ閾値と比較し、頂点Pの画素値が閾値を超え、頂点Pの右側の画素の画素値が閾値以下であり、頂点Pの左側の画素の画素値が閾値以下である頂点Pが属する細線領域Fを検出し、検出された細線領域Fを細線の画像の成分を含む画素からなる領域の候補とする。
【0332】
言い換えれば、頂点Pの画素値が閾値以下であるか、頂点Pの右側の画素の画素値が閾値を超えるか、または頂点Pの左側の画素の画素値が閾値を超える頂点Pが属する細線領域Fは、細線の画像の成分を含まないと判定され、細線の画像の成分を含む画素からなる領域の候補から除去される。
【0333】
すなわち、図37で示されるように、単調増減検出部203は、頂点Pの画素値を閾値と比較すると共に、頂点Pに対して、空間方向X(点線AA'で示す方向)に隣接する画素の画素値を、閾値と比較し、頂点Pの画素値が閾値を超え、空間方向Xに隣接する画素の画素値が閾値以下である、頂点Pが属する細線領域Fを検出する。
【0334】
図38は、図37の点線AA'で示す空間方向Xに並ぶ画素の画素値を表す図である。頂点Pの画素値が閾値ThSを超え、頂点Pの空間方向Xに隣接する画素の画素値が、閾値ThS以下である、頂点Pが属する細線領域Fは、細線の成分を含む。
【0335】
なお、単調増減検出部203は、背景の画素値を基準として、頂点Pの画素値と背景の画素値との差分を閾値と比較すると共に、頂点Pに対して、空間方向Xに隣接する画素の画素値と背景の画素値との差分を、閾値と比較し、頂点Pの画素値と背景の画素値との差分が閾値を超え、空間方向Xに隣接する画素の画素値と背景の画素値との差分が閾値以下である、頂点Pが属する細線領域Fを検出するようにしてもよい。
【0336】
単調増減検出部203は、頂点Pを基準として、画素値が単調減少し、画素値の符号が頂点Pと同じである画素からなる領域であって、その頂点Pが閾値を超え、頂点Pの右側の画素の画素値が閾値以下であり、頂点Pの左側の画素の画素値が閾値以下であるものを示す単調増減領域情報を連続性検出部204に供給する。
【0337】
画面の上下方向に1列に並ぶ画素であって、細線の画像が射影されたものからなる領域を検出する場合において、単調増減領域情報により示される領域に属する画素は、上下方向に並び、細線の画像が射影された画素を含む。すなわち、単調増減領域情報により示される領域は、画面の上下方向に1列に並ぶ画素であって、細線の画像が射影されたものからなる領域を含む。
【0338】
このように、頂点検出部202および単調増減検出部203は、細線の画像が射影された画素において、空間方向Yの画素値の変化が、ガウス分布に類似するという性質を利用して、細線の画像が射影された画素からなる定常領域を検出する。
【0339】
連続性検出部204は、単調増減検出部203から供給された単調増減領域情報で示される、上下方向に並ぶ画素からなる領域のうち、横方向に隣接している画素を含む領域、すなわち、相似した画素値の変化を有し、縦方向に重複している領域を、連続している領域として検出し、頂点情報、および検出された連続している領域を示すデータ定常性情報を出力する。データ定常性情報は、単調増減領域情報、および領域の繋がりを示す情報などを含んでいる。
【0340】
細線が射影された画素において、円弧形状が隣接するように一定の間隔で並ぶので、検出された連続している領域は、細線が射影された画素を含んでいる。
【0341】
検出された連続している領域が、細線が射影された、円弧形状が隣接するように一定の間隔で並ぶ画素を含むので、検出された連続している領域を定常領域とし、連続性検出部204は、検出された連続している領域を示すデータ定常性情報を出力する。
【0342】
すなわち、連続性検出部204は、長さ方向に連続するという、実世界1の細線の画像の定常性から生じた、細線を撮像して得られたデータ3における、円弧形状が隣接するように一定の間隔で並ぶ定常性を利用して、頂点検出部202および単調増減検出部203において検出された領域の候補をさらに絞り込む。
【0343】
図39は、単調増減領域の連続性を検出の処理を説明する図である。
【0344】
図39に示すように、連続性検出部204は、画面の縦方向に1列に並ぶ画素からなる細線領域Fについて、横方向に隣接する画素を含んでいるとき、2つの単調増減領域の間に連続性があるとし、横方向に隣接する画素を含んでいないとき、2つの細線領域Fの間に連続性がないとする。例えば、画面の縦方向に1列に並ぶ画素からなる細線領域F-1は、画面の縦方向に1列に並ぶ画素からなる細線領域F0の画素と横方向に隣接する画素を含んでいるとき、細線領域F0と連続しているとされる。画面の縦方向に1列に並ぶ画素からなる細線領域F0は、画面の縦方向に1列に並ぶ画素からなる細線領域F1の画素と横方向に隣接する画素を含んでいるとき、細線領域F1と連続しているとされる。
【0345】
このように、頂点検出部202乃至連続性検出部204により、画面の上下方向に1列に並ぶ画素であって、細線の画像が射影されたものからなる領域が検出される。
【0346】
頂点検出部202乃至連続性検出部204は、上述したように、画面の上下方向に1列に並ぶ画素であって、細線の画像が射影されたものからなる領域を検出し、さらに、画面の左右方向に1列に並ぶ画素であって、細線の画像が射影されたものからなる領域を検出する。
【0347】
なお、処理の順序は、特に限定されるものではなく、並列に実行するようにしても良いことは当然である。
【0348】
すなわち、頂点検出部202は、画面の左右方向に1列に並ぶ画素を対象として、画面の左側に位置する画素の画素値、および画面の右側に位置する画素の画素値に比較して、より大きい画素値を有する画素を頂点として検出し、検出した頂点の位置を示す頂点情報を単調増減検出部203に供給する。頂点検出部202は、1つの画像、例えば、1フレームの画像から、1または複数の頂点を検出する。
【0349】
例えば、頂点検出部202は、1フレームの画像からまだ注目画素とされていない画素の中から注目画素を選択し、注目画素の画素値と、注目画素の左側の画素の画素値とを比較し、注目画素の画素値と、注目画素の右側の画素の画素値とを比較して、左側の画素の画素値より大きい画素値を有し、右側の画素の画素値より大きい画素値を有する注目画素を検出して、検出された注目画素を頂点とする。頂点検出部202は、検出された頂点を示す頂点情報を単調増減検出部203に供給する。
【0350】
頂点検出部202が、頂点を検出しない場合もある。
【0351】
単調増減検出部203は、頂点検出部202で検出された頂点に対して左右方向に1列に並ぶ画素であって、細線の画像が射影された画素からなる領域の候補を検出検出し、頂点情報と共に、検出した領域を示す単調増減領域情報を連続性検出部204に供給する。
【0352】
より具体的には、単調増減検出部203は、頂点の画素値を基準として、単調減少している画素値を有する画素からなる領域を、細線の画像が射影された画素からなる領域の候補として検出する。
【0353】
例えば、単調増減検出部203は、頂点に対して横に1列の各画素について、各画素の画素値と、左側の画素の画素値との差分、および右側の画素の画素値との差分を求める。そして、単調増減検出部203は、差分の符号が変化する画素を検出することにより、画素値が単調減少している領域を検出する。
【0354】
さらに、単調増減検出部203は、画素値が単調減少している領域から、頂点の画素値の符号を基準として、頂点の画素値の符号と同じ符号の画素値を有する画素からなる領域を、細線の画像が射影された画素からなる領域の候補として検出する。
【0355】
例えば、単調増減検出部203は、各画素の画素値の符号と、左側の画素の画素値の符号または右側の画素の画素値の符号とを比較し、画素値の符号が変化する画素を検出することにより、画素値が単調減少している領域から、頂点と同じ符号の画素値を有する画素からなる領域を検出する。
【0356】
このように、単調増減検出部203は、左右方向に並び、頂点に対して画素値が単調減少し、頂点と同じ符号の画素値を有する画素からなる領域を検出する。
【0357】
単調増減検出部203は、このような単調増減領域からなる細線領域の中から、予め定めた閾値より長い細線領域、すなわち、閾値より多い数の画素を含む細線領域を求める。
【0358】
さらに、このように検出された細線領域の中から、単調増減検出部203は、頂点の画素値、および頂点の上側の画素の画素値、および頂点の下側の画素の画素値を、それぞれ閾値と比較し、頂点の画素値が閾値を超え、頂点の上側の画素の画素値が閾値以下であり、頂点の下側の画素の画素値が閾値以下である頂点が属する細線領域を検出し、検出された細線領域を細線の画像の成分を含む画素からなる領域の候補とする。
【0359】
言い換えれば、頂点の画素値が閾値以下であるか、頂点の上側の画素の画素値が閾値を超えるか、または頂点の下側の画素の画素値が閾値を超える頂点が属する細線領域は、細線の画像の成分を含まないと判定され、細線の画像の成分を含む画素からなる領域の候補から除去される。
【0360】
なお、単調増減検出部203は、背景の画素値を基準として、頂点の画素値と背景の画素値との差分を閾値と比較すると共に、頂点に対して、上下方向に隣接する画素の画素値と背景の画素値との差分を、閾値と比較し、頂点の画素値と背景の画素値との差分が閾値を超え、上下方向に隣接する画素の画素値と背景の画素値との差分が閾値以下である、検出された細線領域を細線の画像の成分を含む画素からなる領域の候補とするようにしてもよい。
【0361】
単調増減検出部203は、頂点を基準として、画素値が単調減少し、画素値の符号が頂点と同じである画素からなる領域であって、その頂点が閾値を超え、頂点の右側の画素の画素値が閾値以下であり、頂点の左側の画素の画素値が閾値以下であるものを示す単調増減領域情報を連続性検出部204に供給する。
【0362】
画面の左右方向に1列に並ぶ画素であって、細線の画像が射影されたものからなる領域を検出する場合において、単調増減領域情報により示される領域に属する画素は、左右方向に並び、細線の画像が射影された画素を含む。すなわち、単調増減領域情報により示される領域は、画面の左右方向に並ぶ1列の画素であって、細線の画像が射影されたものからなる領域を含む。
【0363】
連続性検出部204は、単調増減検出部203から供給された単調増減領域情報で示される、左右方向に並ぶ画素からなる領域のうち、縦方向に隣接している画素を含む領域、すなわち、相似した画素値の変化を有し、横方向に重複している領域を、連続している領域として検出し、頂点情報、および検出された連続している領域を示すデータ定常性情報を出力する。データ定常性情報は、領域の繋がりを示す情報を含んでいる。
【0364】
細線が射影された画素において、円弧形状が隣接するように一定の間隔で並ぶので、検出された連続している領域は、細線が射影された画素を含んでいる。
【0365】
検出された連続している領域が、細線が射影された、円弧形状が隣接するように一定の間隔で並ぶ画素を含むので、検出された連続している領域を定常領域とし、連続性検出部204は、検出された連続している領域を示すデータ定常性情報を出力する。
【0366】
すなわち、連続性検出部204は、長さ方向に連続するという、実世界1の細線の画像の定常性から生じた、細線を撮像して得られたデータ3における、円弧形状が隣接するように一定の間隔で並ぶ定常性を利用して、頂点検出部202および単調増減検出部203において検出された領域の候補をさらに絞り込む。
【0367】
このように、データ定常性検出部101は、入力画像であるデータ3に含まれている定常性を検出することができる。すなわち、データ定常性検出部101は、細線である実世界1の画像がデータ3に射影されることにより生じた、データ3に含まれるデータの定常性を検出することができる。データ定常性検出部101は、データ3から、細線である実世界1の画像が射影された画素からなる領域を検出する。
【0368】
図40は、定常性検出部101における、細線の画像が射影された、定常性を有する領域の検出の他の処理の例を示す図である。
【0369】
定常性検出部101は、図40に示すように、各画素について、隣接する画素との画素値の差分の絶対値を計算する。計算された差分の絶対値は、画素に対応させて、配置される。例えば、図40に示すように、画素値がそれぞれP0、P1、P2である画素が並んでいるとき、定常性検出部101は、差分d0=P0-P1および差分d1=P1-P2を計算する。さらに、定常性検出部101は、差分d0および差分d1の絶対値を算出する。
【0370】
画素値P0、P1、およびP2に含まれている非定常性成分が同一であるとき、差分d0および差分d1には、細線の成分に対応した値のみが設定されることになる。
【0371】
従って、定常性検出部101は、画素に対応させて配置されている差分の絶対値のうち、隣り合う差分の値が同一であるとき、その2つの差分の絶対値に対応する画素(2つの差分の絶対値に挟まれた画素)に細線の成分が含まれていると判定する。
【0372】
定常性検出部101においては、このような、簡便な方法で細線を検出することもできる。
【0373】
図41は、定常性検出の処理を説明するフローチャートである。
【0374】
ステップS201において、非定常成分抽出部201は、入力画像から、細線が射影された部分以外の部分である非定常成分を抽出する。非定常成分抽出部201は、入力画像と共に、抽出された非定常成分を示す非定常成分情報を頂点検出部202および単調増減検出部203に供給する。非定常成分の抽出の処理の詳細は、後述する。
【0375】
ステップS202において、頂点検出部202は、非定常成分抽出部201から供給された非定常成分情報を基に、入力画像から非定常成分を除去し、入力画像に定常成分を含む画素のみを残す。さらに、ステップS202において、頂点検出部202は、頂点を検出する。
【0376】
すなわち、頂点検出部202は、画面の縦方向を基準として、処理を実行する場合、定常成分を含む画素について、各画素の画素値と、上側および下側の画素の画素値とを比較して、上側の画素の画素値および下側の画素の画素値より大きい画素値を有する画素を検出することにより、頂点を検出する。また、ステップS202において、頂点検出部202は、画面の横方向を基準として、処理を実行する場合、定常成分を含む画素について、各画素の画素値と、右側および左側の画素の画素値とを比較して、右側の画素の画素値および左側の画素の画素値より大きい画素値を有する画素を検出することにより、頂点を検出する。
【0377】
頂点検出部202は、検出した頂点を示す頂点情報を単調増減検出部203に供給する。
【0378】
ステップS203において、単調増減検出部203は、非定常成分抽出部201から供給された非定常成分情報を基に、入力画像から非定常成分を除去し、入力画像に定常成分を含む画素のみを残す。さらに、ステップS203において、単調増減検出部203は、頂点検出部202から供給された、頂点の位置を示す頂点情報を基に、頂点に対する単調増減を検出することにより、データの定常性を有する画素からなる領域を検出する。
【0379】
単調増減検出部203は、画面の縦方向を基準として、処理を実行する場合、頂点の画素値、および頂点に対して縦に1列に並ぶ画素の画素値を基に、縦に並ぶ1列の画素であって、1つの細線の画像が射影された画素からなる単調増減を検出することにより、データの定常性を有する画素からなる領域を検出する。すなわち、ステップS203において、単調増減検出部203は、画面の縦方向を基準として、処理を実行する場合、頂点および頂点に対して縦に1列に並ぶ画素について、各画素の画素値と、上側または下側の画素の画素値との差分を求めて、差分の符号が変化する画素を検出する。また、単調増減検出部203は、頂点および頂点に対して縦に1列に並ぶ画素について、各画素の画素値の符号と、その画素の上側または下側の画素の画素値の符号とを比較し、画素値の符号が変化する画素を検出する。さらに、単調増減検出部203は、頂点の画素値、並びに頂点の右側および左側の画素の画素値を、閾値と比較し、頂点の画素値が閾値を超え、右側および左側の画素の画素値が閾値以下である画素からなる領域を検出する。
【0380】
単調増減検出部203は、このように検出された領域を単調増減領域として、単調増減領域を示す単調増減領域情報を連続性検出部204に供給する。
【0381】
また、単調増減検出部203は、画面の横方向を基準として、処理を実行する場合、頂点の画素値、および頂点に対して横に1列に並ぶ画素の画素値を基に、横に並ぶ1列の画素であって、1つの細線の画像が射影された画素からなる単調増減を検出することにより、データの定常性を有する画素からなる領域を検出する。すなわち、ステップS203において、単調増減検出部203は、画面の横方向を基準として、処理を実行する場合、頂点および頂点に対して横に1列に並ぶ画素について、各画素の画素値と、左側または右側の画素の画素値との差分を求めて、差分の符号が変化する画素を検出する。また、単調増減検出部203は、頂点および頂点に対して横に1列に並ぶ画素について、各画素の画素値の符号と、その画素の左側または右側の画素の画素値の符号とを比較し、画素値の符号が変化する画素を検出する。さらに、単調増減検出部203は、頂点の画素値、並びに頂点の上側および下側の画素の画素値を、閾値と比較し、頂点の画素値が閾値を超え、上側および下側の画素の画素値が閾値以下である画素からなる領域を検出する。
【0382】
単調増減検出部203は、このように検出された領域を単調増減領域として、単調増減領域を示す単調増減領域情報を連続性検出部204に供給する。
【0383】
ステップS204において、単調増減検出部203は、全画素の処理が終了したか否かを判定する。例えば、非定常成分抽出部201は、入力画像の1つの画面(例えば、フレームまたはフィールドなど)の全画素について、頂点を検出し、単調増減領域を検出したか否かを判定する。
【0384】
ステップS204において、全画素の処理が終了していない、すなわち、頂点の検出および単調増減領域の検出の処理の対象とされていない画素がまだあると判定された場合、ステップS202に戻り、頂点の検出および単調増減領域の検出の処理の対象とされていない画素から処理の対象となる画素を選択して、頂点の検出および単調増減領域の検出の処理を繰り返す。
【0385】
ステップS204において、全画素の処理が終了した、すなわち、全ての画素を対象として頂点および単調増減領域が検出されたと判定された場合、ステップS205に進み、連続性検出部204は、単調増減領域情報を基に、検出された領域の連続性を検出する。例えば、連続性検出部204は、単調増減領域情報で示される、画面の縦方向に1列に並ぶ画素からなる単調増減領域について、横方向に隣接する画素を含んでいるとき、2つの単調増減領域の間に連続性があるとし、横方向に隣接する画素を含んでいないとき、2つの単調増減領域の間に連続性がないとする。例えば、連続性検出部204は、単調増減領域情報で示される、画面の横方向に1列に並ぶ画素からなる単調増減領域について、縦方向に隣接する画素を含んでいるとき、2つの単調増減領域の間に連続性があるとし、縦方向に隣接する画素を含んでいないとき、2つの単調増減領域の間に連続性がないとする。
【0386】
連続性検出部204は、検出された連続している領域をデータの定常性を有する定常領域とし、頂点の位置および定常領域を示すデータ定常性情報を出力する。データ定常性情報は、領域の繋がりを示す情報を含んでいる。連続性検出部204から出力されるデータ定常性情報は、実世界1の細線の画像が射影された画素からなる、定常領域である細線領域を示す。
【0387】
ステップS206において、定常性方向検出部205は、全画素の処理が終了したか否かを判定する。すなわち、定常性方向検出部205は、入力画像の所定のフレームの全画素について、領域の連続性を検出したか否かを判定する。
【0388】
ステップS206において、全画素の処理が終了していない、すなわち、領域の連続性の検出の処理の対象とされていない画素がまだあると判定された場合、ステップS205に戻り、領域の連続性の検出の処理の対象とされていない画素から処理の対象となる画素を選択して、領域の連続性の検出の処理を繰り返す。
【0389】
ステップS206において、全画素の処理が終了した、すなわち、全ての画素を対象として領域の連続性が検出されたと判定された場合、処理は終了する。
【0390】
このように、入力画像であるデータ3に含まれている定常性が検出される。すなわち、細線である実世界1の画像がデータ3に射影されることにより生じた、データ3に含まれるデータの定常性が検出され、データ3から、細線である実世界1の画像が射影された画素からなる、データの定常性を有する領域が検出される。
【0391】
なお、図30で構成が示されるデータ定常性検出部101は、データ3のフレームから検出されたデータの定常性を有する領域を基に、時間方向のデータの定常性を検出することができる。
【0392】
例えば、図42に示すように、連続性検出部204は、フレーム#nにおいて、検出されたデータの定常性を有する領域、フレーム#n-1において、検出されたデータの定常性を有する領域、およびフレーム#n+1において、検出されたデータの定常性を有する領域を基に、領域の端部を結ぶことにより、時間方向のデータの定常性を検出する。
【0393】
フレーム#n-1は、フレーム#nに対して時間的に前のフレームであり、フレーム#n+1は、フレーム#nに対して時間的に後のフレームである。すなわち、フレーム#n-1、フレーム#n、およびフレーム#n+1は、フレーム#n-1、フレーム#n、およびフレーム#n+1の順で表示される。
【0394】
より具体的には、図42において、Gは、フレーム#nにおいて、検出されたデータの定常性を有する領域、フレーム#n-1において、検出されたデータの定常性を有する領域、およびフレーム#n+1において、検出されたデータの定常性を有する領域のそれぞれの一端を結ぶことにより得られた動きベクトルを示し、G’は、検出されたデータの定常性を有する領域のそれぞれの他の一端を結ぶことにより得られた動きベクトルを示す。動きベクトルGおよび動きベクトルG’は、時間方向のデータの定常性の一例である。
【0395】
さらに、図30で構成が示されるデータ定常性検出部101は、データの定常性を有する領域の長さを示す情報を、データ定常性情報として出力することができる。
【0396】
図43は、データの定常性を有しない画像データの部分である非定常成分を平面で近似して、非定常成分を抽出する、非定常成分抽出部201の構成を示すブロック図である。
【0397】
図43に構成を示す非定常成分抽出部201は、入力画像から所定の数の画素でなるブロックを抽出し、ブロックと平面で示される値との誤差が所定の閾値未満になるように、ブロックを平面で近似して、非定常成分を抽出する。
【0398】
入力画像は、ブロック抽出部221に供給されるとともに、そのまま出力される。
【0399】
ブロック抽出部221は、入力画像から、所定の数の画素からなるブロックを抽出する。例えば、ブロック抽出部221は、7×7の画素からなるブロックを抽出し、平面近似部222に供給する。例えば、ブロック抽出部221は、抽出されるブロックの中心となる画素をラスタスキャン順に移動させ、順次、入力画像からブロックを抽出する。
【0400】
平面近似部222は、ブロックに含まれる画素の画素値を所定の平面で近似する。例えば、平面近似部222は、式(32)で表される平面でブロックに含まれる画素の画素値を近似する。
【0401】
【数32】
・・・(32)
【0402】
式(32)において、xは、画素の画面上の一方の方向(空間方向X)の位置を示し、yは、画素の画面上の他の一方の方向(空間方向Y)の位置を示す。zは、平面で示される近似値を示す。aは、平面の空間方向Xの傾きを示し、bは、平面の空間方向Yの傾きを示す。式(32)において、cは、平面のオフセット(切片)を示す。
【0403】
例えば、平面近似部222は、回帰の処理により、傾きa、傾きb、およびオフセットcを求めることにより、式(32)で表される平面で、ブロックに含まれる画素の画素値を近似する。平面近似部222は、棄却を伴う回帰の処理により、傾きa、傾きb、およびオフセットcを求めることにより、式(32)で表される平面で、ブロックに含まれる画素の画素値を近似する。
【0404】
例えば、平面近似部222は、最小自乗法により、ブロックの画素の画素値に対して、誤差が最小となる式(32)で表される平面を求めることにより、平面でブロックに含まれる画素の画素値を近似する。
【0405】
なお、平面近似部222は、式(32)で表される平面でブロックを近似すると説明したが、式(32)で表される平面に限らず、より高い自由度をもった関数、例えば、n次の多項式で表される面でブロックを近似するようにしてもよい。
【0406】
繰り返し判定部223は、ブロックの画素値を近似した平面で示される近似値と、ブロックの対応する画素の画素値との誤差を計算する。式(33)は、ブロックの画素値を近似した平面で示される近似値と、ブロックの対応する画素の画素値ziとの差分である誤差eiを示す式である。
【0407】
【数33】
・・・(33)
【0408】
式(33)において、zハット(zに^を付した文字をzハットと記述する。以下、本明細書において、同様に記載する。)は、ブロックの画素値を近似した平面で示される近似値を示し、aハットは、ブロックの画素値を近似した平面の空間方向Xの傾きを示し、bハットは、ブロックの画素値を近似した平面の空間方向Yの傾きを示す。式(33)において、cハットは、ブロックの画素値を近似した平面のオフセット(切片)を示す。
【0409】
繰り返し判定部223は、式(33)で示される、近似値とブロックの対応する画素の画素値との誤差eiが、最も大きい画素を棄却する。このようにすることで、細線が射影された画素、すなわち定常性を有する画素が棄却されることになる。繰り返し判定部223は、棄却した画素を示す棄却情報を平面近似部222に供給する。
【0410】
さらに、繰り返し判定部223は、標準誤差を算出して、標準誤差が、予め定めた近似終了判定用の閾値以上であり、ブロックの画素のうち、半分以上の画素が棄却されていないとき、繰り返し判定部223は、平面近似部222に、ブロックに含まれる画素のうち、棄却された画素を除いた画素を対象として、平面による近似の処理を繰り返させる。
【0411】
定常性を有する画素が棄却されるので、棄却された画素を除いた画素を対象として平面で近似をすることにより、平面は、非定常成分を近似することになる。
【0412】
繰り返し判定部223は、標準誤差が、近似終了判定用の閾値未満であるとき、または、ブロックの画素のうち、半分以上の画素が棄却されたとき、平面による近似を終了する。
【0413】
5×5の画素からなるブロックについて、標準誤差esは、例えば、式(34)で算出される。
【0414】
【数34】
・・・(34)
ここで、nは、画素の数である。
【0415】
なお、繰り返し判定部223は、標準誤差に限らず、ブロックに含まれる全ての画素についての誤差の2乗の和を算出して、以下の処理を実行するようにしてもよい。
【0416】
ここで、ラスタスキャン方向に1画素ずつずれたブロックを平面で近似するとき、図44に示すように、図中黒丸で示す、定常性を有する画素、すなわち細線の成分を含む画素は、複数回棄却されることになる。
【0417】
繰り返し判定部223は、平面による近似を終了したとき、ブロックの画素値を近似した平面を示す情報(式(32)の平面の傾きおよび切片)を、非定常成分情報として出力する。
【0418】
なお、繰り返し判定部223は、画素毎の棄却された回数と予め定めた閾値とを比較して、棄却された回数が閾値以上である画素を定常成分を含む画素であるとして、定常成分を含む画素を示す情報を定常成分情報として出力するようにしてもよい。この場合、頂点検出部202乃至定常性方向検出部205は、定常成分情報で示される、定常成分を含む画素を対象として、それぞれの処理を実行する。
【0419】
棄却された回数、ブロックの画素の画素値を近似する平面の空間方向Xの傾き、ブロックの画素の画素値を近似する平面の空間方向Yの傾き、ブロックの画素の画素値を近似する平面で示される近似値、および誤差eiは、入力画像の特徴量としても利用することができる。
【0420】
図45は、ステップS201に対応する、図43に構成を示す非定常成分抽出部201による、非定常成分の抽出の処理を説明するフローチャートである。
【0421】
ステップS221において、ブロック抽出部221は、入力画素から、所定の数の画素からなるブロックを抽出し、抽出したブロックを平面近似部222に供給する。例えば、ブロック抽出部221は、入力画素から、まだ、選択されていない画素のうち、1つの画素を選択し、選択された画素を中心とする7×7の画素からなるブロックを抽出する。例えば、ブロック抽出部221は、ラスタスキャン順に画素を選択することができる。
【0422】
ステップS222において、平面近似部222は、抽出されたブロックを平面で近似する。平面近似部222は、例えば、回帰の処理により、抽出されたブロックの画素の画素値を、平面で近似する。例えば、平面近似部222は、回帰の処理により、抽出されたブロックの画素のうち、棄却された画素を除いた画素の画素値を、平面で近似する。ステップS223において、繰り返し判定部223は、繰り返し判定を実行する。例えば、ブロックの画素の画素値と近似した平面の近似値とから標準誤差を算出し、棄却された画素の数をカウントすることにより、繰り返し判定を実行する。
【0423】
ステップS224において、繰り返し判定部223は、標準誤差が閾値以上であるか否かを判定し、標準誤差が閾値以上であると判定された場合、ステップS225に進む。
【0424】
なお、ステップS224において、繰り返し判定部223は、ブロックの画素のうち、半分以上の画素が棄却されたか否か、および標準誤差が閾値以上であるか否かを判定し、ブロックの画素のうち、半分以上の画素が棄却されておらず、標準誤差が閾値以上であると判定された場合、ステップS225に進むようにしてもよい。
【0425】
ステップS225において、繰り返し判定部223は、ブロックの画素毎に、画素の画素値と近似した平面の近似値との誤差を算出し、誤差が最も大きい画素を棄却し、平面近似部222に通知する。手続きは、ステップS222に戻り、棄却された画素を除いた、ブロックの画素を対象として、平面による近似の処理および繰り返し判定の処理が繰り返される。
【0426】
ステップS225において、ラスタスキャン方向に1画素ずつずれたブロックがステップS221の処理で抽出される場合、図44に示すように、細線の成分を含む画素(図中の黒丸で示す)は、複数回棄却されることになる。
【0427】
ステップS224において、標準誤差が閾値以上でないと判定された場合、ブロックが平面で近似されたので、ステップS226に進む。
【0428】
なお、ステップS224において、繰り返し判定部223は、ブロックの画素のうち、半分以上の画素が棄却されたか否か、および標準誤差が閾値以上であるか否かを判定し、ブロックの画素のうち、半分以上の画素が棄却されたか、または標準誤差が閾値以上でないと判定された場合、ステップS225に進むようにしてもよい。
【0429】
ステップS226において、繰り返し判定部223は、ブロックの画素の画素値を近似する平面の傾きおよび切片を、非定常成分情報として出力する。
【0430】
ステップS227において、ブロック抽出部221は、入力画像の1つの画面の全画素について処理を終了したか否かを判定し、まだ処理の対象となってない画素があると判定された場合、ステップS221に戻り、まだ処理の対象となっていない画素からブロックを抽出して、上述した処理を繰り返す。
【0431】
ステップS227において、入力画像の1つの画面の全画素について、処理を終了したと判定された場合、処理は終了する。
【0432】
このように、図43に構成を示す非定常成分抽出部201は、入力画像から非定常成分を抽出することができる。非定常成分抽出部201が入力画像の非定常成分を抽出するので、頂点検出部202および単調増減検出部203は、入力画像と、非定常成分抽出部201で抽出された非定常成分との差分を求めることにより、定常成分を含む差分を対象として処理を実行することができる。
【0433】
なお、平面による近似の処理において算出される、棄却した場合の標準誤差、棄却しない場合の標準誤差、画素の棄却された回数、平面の空間方向Xの傾き(式(32)におけるaハット)、平面の空間方向Yの傾き(式(32)におけるbハット)、平面で置き換えたときのレベル(式(32)におけるcハット)、および入力画像の画素値と平面で示される近似値との差分は、特徴量として利用することができる。
【0434】
図46は、ステップS201に対応する非定常成分の抽出の処理に代わる、図43に構成を示す非定常成分抽出部201による、定常成分の抽出の処理を説明するフローチャートである。ステップS241乃至ステップS245の処理は、ステップS221乃至ステップS225の処理と同様なので、その説明は省略する。
【0435】
ステップS246において、繰り返し判定部223は、平面で示される近似値と入力画像の画素値との差分を、入力画像の定常成分として出力する。すなわち、繰り返し判定部223は、平面による近似値と、真値である画素値との差分を出力する。
【0436】
なお、繰り返し判定部223は、平面で示される近似値と入力画像の画素値との差分が、所定の閾値以上である画素の画素値を、入力画像の定常成分として出力するようにしてもよい。
【0437】
ステップS247の処理は、ステップS227の処理と同様なので、その説明は省略する。
【0438】
平面が非定常成分を近似しているので、非定常成分抽出部201は、入力画像の各画素の画素値から、画素値を近似する平面で示される近似値を引き算することにより、入力画像から非定常成分を除去することができる。この場合、頂点検出部202乃至連続性検出部204は、入力画像の定常成分、すなわち細線の画像が射影された値のみを処理の対象とすることができ、頂点検出部202乃至連続性検出部204における処理がより容易になる。
【0439】
図47は、ステップS201に対応する非定常成分の抽出の処理に代わる、図43に構成を示す非定常成分抽出部201による、定常成分の抽出の他の処理を説明するフローチャートである。ステップS261乃至ステップS265の処理は、ステップS221乃至ステップS225の処理と同様なので、その説明は省略する。
【0440】
ステップS266において、繰り返し判定部223は、画素毎の、棄却の回数を記憶し、ステップS262に戻り、処理を繰り返す。
【0441】
ステップS264において、標準誤差が閾値以上でないと判定された場合、ブロックが平面で近似されたので、ステップS267に進み、繰り返し判定部223は、入力画像の1つの画面の全画素について処理を終了したか否かを判定し、まだ処理の対象となってない画素があると判定された場合、ステップS261に戻り、まだ処理の対象となっていない画素についてブロックを抽出して、上述した処理を繰り返す。
【0442】
ステップS267において、入力画像の1つの画面の全画素について、処理を終了したと判定された場合、ステップS268に進み、繰り返し判定部223は、まだ選択されていない画素から1つの画素を選択し、選択された画素について、棄却の回数が、閾値以上であるか否かを判定する。例えば、繰り返し判定部223は、ステップS268において、選択された画素について、棄却の回数が、予め記憶している閾値以上であるか否かを判定する。
【0443】
ステップS268において、選択された画素について、棄却の回数が、閾値以上であると判定された場合、選択された画素が定常成分を含むので、ステップS269に進み、繰り返し判定部223は、選択された画素の画素値(入力画像における画素値)を入力画像の定常成分として出力し、ステップS270に進む。
【0444】
ステップS268において、選択された画素について、棄却の回数が、閾値以上でないと判定された場合、選択された画素が定常成分を含まないので、ステップS269の処理をスキップして、手続きは、ステップS270に進む。すなわち、棄却の回数が、閾値以上でないと判定された画素は、画素値が出力されない。
【0445】
なお、棄却の回数が、閾値以上でないと判定された画素について、繰り返し判定部223は、0を設定した画素値を出力するようにしてもよい。
【0446】
ステップS270において、繰り返し判定部223は、入力画像の1つの画面の全画素について、棄却の回数が閾値以上であるか否かの判定の処理を終了したか否かを判定し、全画素について処理を終了していないと判定された場合、まだ処理の対象となってない画素があるので、ステップS268に戻り、まだ処理の対象となっていない画素から1つの画素を選択して、上述した処理を繰り返す。
【0447】
ステップS270において、入力画像の1つの画面の全画素について処理を終了したと判定された場合、処理は終了する。
【0448】
このように、非定常成分抽出部201は、定常成分情報として、入力画像の画素のうち、定常成分を含む画素の画素値を出力することができる。すなわち、非定常成分抽出部201は、入力画像の画素のうち、細線の画像の成分を含む画素の画素値を出力することができる。
【0449】
図48は、ステップS201に対応する非定常成分の抽出の処理に代わる、図43に構成を示す非定常成分抽出部201による、定常成分の抽出のさらに他の処理を説明するフローチャートである。ステップS281乃至ステップS288の処理は、ステップS261乃至ステップS268の処理と同様なので、その説明は省略する。
【0450】
ステップS289において、繰り返し判定部223は、平面で示される近似値と、選択された画素の画素値との差分を入力画像の定常成分として出力する。すなわち、繰り返し判定部223は、入力画像から非定常成分を除去した画像を定常性情報として出力する。
【0451】
ステップS290の処理は、ステップS270の処理と同様なので、その説明は省略する。
【0452】
このように、非定常成分抽出部201は、入力画像から非定常成分を除去した画像を定常性情報として出力することができる。
【0453】
以上のように、現実世界の光信号が射影され、現実世界の光信号の定常性の一部が欠落した、第1の画像データの複数の画素の画素値の不連続部を検出し、検出された不連続部からデータの定常性を検出し、検出されたデータの定常性を基に、現実世界の光信号の定常性を推定することにより光信号を推定し、推定された光信号を第2の画像データに変換するようにした場合、現実世界の事象に対して、より正確で、より精度の高い処理結果を得ることができるようになる。
【0454】
図49は、データ定常性検出部101の他の構成を示すブロック図である。
【0455】
図49に構成を示すデータ定常性検出部101においては、注目している画素である注目画素について、入力画像の空間方向に対する画素値の変化、すなわち入力画像の空間方向のアクティビティが検出され、検出されたアクティビティに応じて、注目画素および基準軸を基準とした角度毎に、垂直方向に1列または水平方向に1列の所定の数の画素からなる画素の組が、複数抽出され、抽出された画素の組の相関が検出され、相関に基づいて、入力画像における、基準軸を基準としたデータの定常性の角度が検出される。
【0456】
データの定常性の角度とは、基準軸と、データ3が有している、一定の特徴が繰り返し現れる所定の次元の方向とがなす角度をいう。一定の特徴が繰り返し現れるとは、例えば、データ3における位置の変化に対する値の変化、すなわち断面形状が同じである場合などをいう。
【0457】
基準軸は、例えば、空間方向Xを示す軸(画面の水平方向)、または空間方向Yを示す軸(画面の垂直方向)などとすることができる。
【0458】
入力画像は、アクティビティ検出部401およびデータ選択部402に供給される。
【0459】
アクティビティ検出部401は、入力画像の空間方向に対する画素値の変化、すなわち空間方向のアクティビティを検出して、検出した結果を示すアクティビティ情報をデータ選択部402および定常方向導出部404に供給する。
【0460】
例えば、アクティビティ検出部401は、画面の水平方向に対する画素値の変化、および画面の垂直方向に対する画素値の変化を検出し、検出された水平方向に対する画素値の変化および垂直方向に対する画素値の変化を比較することにより、垂直方向に対する画素値の変化に比較して、水平方向に対する画素値の変化が大きいか、または水平方向に対する画素値の変化に比較して、垂直方向に対する画素値の変化が大きいかを検出する。
【0461】
アクティビティ検出部401は、検出の結果である、垂直方向に対する画素値の変化に比較して、水平方向に対する画素値の変化が大きいことを示すか、または水平方向に対する画素値の変化に比較して、垂直方向に対する画素値の変化が大きいことを示すアクティビティ情報をデータ選択部402および定常方向導出部404に供給する。
【0462】
垂直方向に対する画素値の変化に比較して、水平方向に対する画素値の変化が大きい場合、例えば、図50で示されるように、垂直方向に1列の画素に円弧形状(かまぼこ型)またはつめ形状が形成され、円弧形状またはつめ形状が垂直により近い方向に繰り返して形成されている。すなわち、垂直方向に対する画素値の変化に比較して、水平方向に対する画素値の変化が大きい場合、基準軸を空間方向Xを示す軸とすると、入力画像における、基準軸を基準としたデータの定常性の角度は、45度乃至90度のいずれかの値である。
【0463】
水平方向に対する画素値の変化に比較して、垂直方向に対する画素値の変化が大きい場合、例えば、水平方向に1列の画素に円弧形状またはつめ形状が形成され、円弧形状またはつめ形状が水平方向により近い方向に繰り返して形成されている。すなわち、水平方向に対する画素値の変化に比較して、垂直方向に対する画素値の変化が大きい場合、基準軸を空間方向Xを示す軸とすると、入力画像における、基準軸を基準としたデータの定常性の角度は、0度乃至45度のいずれかの値である。
【0464】
例えば、アクティビティ検出部401は、図51で示される、注目画素を中心とした3×3の9つの画素からなるブロックを入力画像から抽出する。アクティビティ検出部401は、縦に隣接する画素についての画素値の差分の和、および横に隣接する画素についての画素値の差分の和を算出する。横に隣接する画素についての画素値の差分の和hdiffは、式(35)で求められる。
【0465】
【数35】
・・・(35)
【0466】
同様に、縦に隣接する画素についての画素値の差分の和vdiffは、式(36)で求められる。
【0467】
【数36】
・・・(36)
【0468】
式(35)および式(36)において、Pは、画素値を示し、iは、画素の横方向の位置を示し、jは、画素の縦方向の位置を示す。
【0469】
アクティビティ検出部401は、算出された横に隣接する画素についての画素値の差分の和hdiffおよび縦に隣接する画素についての画素値の差分の和vdiffを比較して、入力画像における、基準軸を基準としたデータの定常性の角度の範囲を判定するようにしてもよい。すなわち、この場合、アクティビティ検出部401は、空間方向の位置に対する画素値の変化で示される形状が水平方向に繰り返して形成されているか、垂直方向に繰り返して形成されているかを判定する。
【0470】
例えば、横に1列の画素上に形成された円弧についての横方向の画素値の変化は、縦方向の画素値の変化に比較して大きく、横に1列の画素上に形成された円弧についての縦方向の画素値の変化は、横方向の画素値の変化に比較して大きく、データの定常性の方向、すなわち、データ3である入力画像が有している、一定の特徴の所定の次元の方向の変化は、データの定常性に直交する方向の変化に比較して小さいと言える。言い換えれば、データの定常性の方向の差分に比較して、データの定常性の方向に直交する方向(以下、非定常方向とも称する)の差分は大きい。
【0471】
例えば、図52に示すように、アクティビティ検出部401は、算出された横に隣接する画素についての画素値の差分の和hdiffおよび縦に隣接する画素についての画素値の差分の和vdiffを比較して、横に隣接する画素についての画素値の差分の和hdiffが大きい場合、基準軸を基準としたデータの定常性の角度が、45度乃至135度のいずれかの値であると判定し、縦に隣接する画素についての画素値の差分の和vdiffが大きい場合、基準軸を基準としたデータの定常性の角度が、0度乃至45度のいずれかの値、または135度乃至180度のいずれかの値であると判定する。
【0472】
例えば、アクティビティ検出部401は、判定の結果を示すアクティビティ情報をデータ選択部402および定常方向導出部404に供給する。
【0473】
なお、アクティビティ検出部401は、5×5の25の画素からなるブロック、または7×7の49の画素からなるブロックなど、任意の大きさのブロックを抽出して、アクティビティを検出することができる。
【0474】
データ選択部402は、入力画像の画素から注目画素を順に選択し、アクティビティ検出部401から供給されたアクティビティ情報を基に、注目画素および基準軸を基準とした角度毎に、垂直方向に1列または水平方向に1列の所定の数の画素からなる画素の組を、複数抽出する。
【0475】
例えば、アクティビティ情報が垂直方向に対する画素値の変化に比較して、水平方向に対する画素値の変化が大きいことを示しているとき、データの定常性の角度が、45度乃至135度のいずれかの値なので、データ選択部402は、注目画素および基準軸を基準とした45度乃至135度の範囲の所定の角度毎に、垂直方向に1列の所定の数の画素からなる画素の組を、複数抽出する。
【0476】
アクティビティ情報が水平方向に対する画素値の変化に比較して、垂直方向に対する画素値の変化が大きいことを示しているとき、データの定常性の角度が、0度乃至45度または135度乃至180度のいずれかの値なので、データ選択部402は、注目画素および基準軸を基準とした0度乃至45度または135度乃至180度の範囲の所定の角度毎に、水平方向に1列の所定の数の画素からなる画素の組を、複数抽出する。
【0477】
また、例えば、データの定常性の角度が45度乃至135度のいずれかの値であることを、アクティビティ情報が示しているとき、データ選択部402は、注目画素および基準軸を基準とした45度乃至135度の範囲の所定の角度毎に、垂直方向に1列の所定の数の画素からなる画素の組を、複数抽出する。
【0478】
データの定常性の角度が0度乃至45度または135度乃至180度のいずれかの値であることを、アクティビティ情報が示しているとき、データ選択部402は、注目画素および基準軸を基準とした0度乃至45度または135度乃至180度の範囲の所定の角度毎に、水平方向に1列の所定の数の画素からなる画素の組を、複数抽出する。
【0479】
データ選択部402は、抽出した画素からなる複数の組を誤差推定部403に供給する。
【0480】
誤差推定部403は、抽出した画素からなる複数の組について、角度毎に、画素の組の相関を検出する。
【0481】
例えば、誤差推定部403は、1つの角度に対応する、垂直方向に1列の所定の数の画素からなる画素の複数の組について、画素の組における対応する位置の画素の画素値の相関を検出する。誤差推定部403は、1つの角度に対応する、水平方向に1列の所定の数の画素からなる画素の複数の組について、組における対応する位置の画素の画素値の相関を検出する。
【0482】
誤差推定部403は、検出した相関を示す相関情報を定常方向導出部404に供給する。誤差推定部403は、相関を示す値として、データ選択部402から供給された、注目画素を含む組の画素の画素値と、他の組における対応する位置の画素の画素値の差分の絶対値の和を算出し、差分の絶対値の和を相関情報として定常方向導出部404に供給する。
【0483】
定常方向導出部404は、誤差推定部403から供給された相関情報に基いて、欠落した実世界1の光信号の定常性に対応する、入力画像における、基準軸を基準としたデータの定常性の角度を検出し、角度を示すデータ定常性情報を出力する。例えば、定常方向導出部404は、誤差推定部403から供給された相関情報に基いて、データの定常性の角度として、最も相関の強い画素の組に対する角度を検出し、検出された最も相関の強い画素の組に対する角度を示すデータ定常性情報を出力する。
【0484】
以下の説明において、適宜、0度乃至90度の範囲(いわゆる第1象限)のデータの定常性の角度を検出するものとして説明する。
【0485】
図53は、図49に示すデータ定常性検出部101のより詳細な構成を示すブロック図である。
【0486】
データ選択部402は、画素選択部411−1乃至画素選択部411−Lを含む。誤差推定部403は、推定誤差算出部412−1乃至推定誤差算出部412−Lを含む。定常方向導出部404は、最小誤差角度選択部413を含む。
【0487】
まず、アクティビティ情報で示される、データの定常性の角度が45度乃至135度のいずれかの値であるときの画素選択部411−1乃至画素選択部411−Lの処理を説明する。
【0488】
画素選択部411−1乃至画素選択部411−Lは、空間方向Xを示す軸を基準軸として、注目画素を通る、それぞれ異なる所定の角度の直線を設定する。画素選択部411−1乃至画素選択部411−Lは、注目画素が属する縦に1列の画素の列に属する画素であって、注目画素の上側の所定の数の画素、および注目画素の下側の所定の数の画素、並びに注目画素を画素の組として選択する。
【0489】
例えば、図54で示されるように、画素選択部411−1乃至画素選択部411−Lは、注目画素が属する縦に1列の画素の列に属する画素から、注目画素を中心として9つの画素を画素の組として選択する。
【0490】
図54において、マス目状の1つの四角(1つのマス目)は、1つの画素を示す。図54において、中央に示す丸は、注目画素を示す。
【0491】
画素選択部411−1乃至画素選択部411−Lは、注目画素が属する縦に1列の画素の列の、左側の縦に1列の画素の列に属する画素であって、それぞれに設定された直線に最も近い位置の画素を選択する。図54において、注目画素の左下側の丸は、選択された画素の例を示す。そして、画素選択部411−1乃至画素選択部411−Lは、注目画素が属する縦に1列の画素の列の、左側の縦に1列の画素の列に属する画素であって、選択された画素の上側の所定の数の画素、および選択された画素の下側の所定の数の画素、並びに選択された画素を画素の組として選択する。
【0492】
例えば、図54で示されるように、画素選択部411−1乃至画素選択部411−Lは、注目画素が属する縦に1列の画素の列の、左側の縦に1列の画素の列に属する画素から、直線に最も近い位置の画素を中心として9つの画素を画素の組として選択する。
【0493】
画素選択部411−1乃至画素選択部411−Lは、注目画素が属する縦に1列の画素の列の、左側に2つめの縦に1列の画素の列に属する画素であって、それぞれに設定された直線に最も近い位置の画素を選択する。図54において、最も左側の丸は、選択された画素の例を示す。そして、画素選択部411−1乃至画素選択部411−Lは、注目画素が属する縦に1列の画素の列の、左側に2つめの縦に1列の画素の列に属する画素であって、選択された画素の上側の所定の数の画素、および選択された画素の下側の所定の数の画素、並びに選択された画素を画素の組として選択する。
【0494】
例えば、図54で示されるように、画素選択部411−1乃至画素選択部411−Lは、注目画素が属する縦に1列の画素の列の、左側に2つめの縦に1列の画素の列に属する画素から、直線に最も近い位置の画素を中心として9つの画素を画素の組として選択する。
【0495】
画素選択部411−1乃至画素選択部411−Lは、注目画素が属する縦に1列の画素の列の、右側の縦に1列の画素の列に属する画素であって、それぞれに設定された直線に最も近い位置の画素を選択する。図54において、注目画素の右上側の丸は、選択された画素の例を示す。そして、画素選択部411−1乃至画素選択部411−Lは、注目画素が属する縦に1列の画素の列の、右側の縦に1列の画素の列に属する画素であって、選択された画素の上側の所定の数の画素、および選択された画素の下側の所定の数の画素、並びに選択された画素を画素の組として選択する。
【0496】
例えば、図54で示されるように、画素選択部411−1乃至画素選択部411−Lは、注目画素が属する縦に1列の画素の列の、右側の縦に1列の画素の列に属する画素から、直線に最も近い位置の画素を中心として9つの画素を画素の組として選択する。
【0497】
画素選択部411−1乃至画素選択部411−Lは、注目画素が属する縦に1列の画素の列の、右側に2つめの縦に1列の画素の列に属する画素であって、それぞれに設定された直線に最も近い位置の画素を選択する。図54において、最も右側の丸は、このように選択された画素の例を示す。そして、画素選択部411−1乃至画素選択部411−Lは、注目画素が属する縦に1列の画素の列の、右側に2つめの縦に1列の画素の列に属する画素であって、選択された画素の上側の所定の数の画素、および選択された画素の下側の所定の数の画素、並びに選択された画素を画素の組として選択する。
【0498】
例えば、図54で示されるように、画素選択部411−1乃至画素選択部411−Lは、注目画素が属する縦に1列の画素の列の、右側に2つめの縦に1列の画素の列に属する画素から、直線に最も近い位置の画素を中心として9つの画素を画素の組として選択する。
【0499】
このように、画素選択部411−1乃至画素選択部411−Lは、それぞれ、画素の組を5つ選択する。
【0500】
画素選択部411−1乃至画素選択部411−Lは、互いに異なる角度(に設定された直線)についての、画素の組を選択する。例えば、画素選択部411−1は、45度についての、画素の組を選択し、画素選択部411−2は、47.5度についての、画素の組を選択し、画素選択部411−3は、50度についての、画素の組を選択する。画素選択部411−1乃至画素選択部411−Lは、52.5度から135度までの、2.5度毎の角度についての、画素の組を選択する。
【0501】
なお、画素の組の数は、例えば、3つ、または7つなど、任意の数とすることができる。また、1つの組として選択された画素の数は、例えば、5つ、または13など、任意の数とすることができる。
【0502】
なお、画素選択部411−1乃至画素選択部411−Lは、縦方向に所定の範囲の画素から、画素の組を選択するようにすることができる。例えば、画素選択部411−1乃至画素選択部411−Lは、縦方向に121個の画素(注目画素に対して、上方向に60画素、下方向に60画素)から、画素の組を選択する。この場合、データ定常性検出部101は、空間方向Xを示す軸に対して、88.09度まで、データの定常性の角度を検出することができる。
【0503】
画素選択部411−1は、選択した画素の組を推定誤差算出部412−1に供給し、画素選択部411−2は、選択した画素の組を推定誤差算出部412−2に供給する。同様に、画素選択部411−3乃至画素選択部411−Lのそれぞれは、選択した画素の組を推定誤差算出部412−3乃至推定誤差算出部412−Lのそれぞれに供給する。
【0504】
推定誤差算出部412−1乃至推定誤差算出部412−Lは、画素選択部411−1乃至画素選択部411−Lのいずれかから供給された、複数の組における対応する位置の画素の画素値の相関を検出する。例えば、推定誤差算出部412−1乃至推定誤差算出部412−Lは、相関を示す値として、画素選択部411−1乃至画素選択部411−Lのいずれかから供給された、注目画素を含む組の画素の画素値と、他の組における対応する位置の画素の画素値の差分の絶対値の和を算出する。
【0505】
より具体的には、推定誤差算出部412−1乃至推定誤差算出部412−Lは、画素選択部411−1乃至画素選択部411−Lのいずれかから供給された、注目画素を含む組の画素の画素値と、注目画素の左側の縦に1列の画素の列に属する画素からなる組の画素の画素値とを基に、最も上の画素の画素値の差分を算出し、上から2番目の画素の画素値の差分を算出するように、上の画素から順に画素値の差分の絶対値を算出して、さらに、算出された差分の絶対値の和を算出する。推定誤差算出部412−1乃至推定誤差算出部412−Lは、画素選択部411−1乃至画素選択部411−Lのいずれかから供給された、注目画素を含む組の画素の画素値と、注目画素の左に2つめの縦に1列の画素の列に属する画素からなる組の画素の画素値とを基に、上の画素から順に画素値の差分の絶対値を算出して、算出された差分の絶対値の和を算出する。
【0506】
そして、推定誤差算出部412−1乃至推定誤差算出部412−Lは、画素選択部411−1乃至画素選択部411−Lのいずれかから供給された、注目画素を含む組の画素の画素値と、注目画素の右側の縦に1列の画素の列に属する画素からなる組の画素の画素値とを基に、最も上の画素の画素値の差分を算出し、上から2番目の画素の画素値の差分を算出するように、上の画素から順に画素値の差分の絶対値を算出して、さらに、算出された差分の絶対値の和を算出する。推定誤差算出部412−1乃至推定誤差算出部412−Lは、画素選択部411−1乃至画素選択部411−Lのいずれかから供給された、注目画素を含む組の画素の画素値と、注目画素の右に2つめの縦に1列の画素の列に属する画素からなる組の画素の画素値とを基に、上の画素から順に画素値の差分の絶対値を算出して、算出された差分の絶対値の和を算出する。
【0507】
推定誤差算出部412−1乃至推定誤差算出部412−Lは、このように算出された画素値の差分の絶対値の和を全て加算して、画素値の差分の絶対値の総和を算出する。
【0508】
推定誤差算出部412−1乃至推定誤差算出部412−Lは、検出された相関を示す情報を、最小誤差角度選択部413に供給する。例えば、推定誤差算出部412−1乃至推定誤差算出部412−Lは、算出された画素値の差分の絶対値の総和を最小誤差角度選択部413に供給する。
【0509】
なお、推定誤差算出部412−1乃至推定誤差算出部412−Lは、画素値の差分の絶対値の和に限らず、画素値の差分の自乗の和、または画素値を基にした相関係数など他の値を相関値として算出するようにすることができる。
【0510】
最小誤差角度選択部413は、互いに異なる角度についての、推定誤差算出部412−1乃至推定誤差算出部412−Lにおいて検出された相関に基いて、欠落した実世界1の光信号である画像の定常性に対応する、入力画像における、基準軸を基準としたデータの定常性の角度を検出する。すなわち、最小誤差角度選択部413は、互いに異なる角度についての、推定誤差算出部412−1乃至推定誤差算出部412−Lにおいて検出された相関に基いて、最も強い相関を選択し、選択された相関が検出された角度を、基準軸を基準としたデータの定常性の角度とすることにより、入力画像における、基準軸を基準としたデータの定常性の角度を検出する。
【0511】
例えば、最小誤差角度選択部413は、推定誤差算出部412−1乃至推定誤差算出部412−Lから供給された、画素値の差分の絶対値の総和のうち、最小の総和を選択する。最小誤差角度選択部413は、選択された総和が算出された画素の組について、注目画素に対して、左側に2つめの縦に1列の画素の列に属する画素であって、直線に最も近い位置の画素の位置、および、注目画素に対して、右側に2つめの縦に1列の画素の列に属する画素であって、直線に最も近い位置の画素の位置を参照する。
【0512】
図54で示されるように、最小誤差角度選択部413は、注目画素の位置に対する、参照する画素の位置の縦方向の距離Sを求める。最小誤差角度選択部413は、図55で示すように、式(37)から、欠落した実世界1の光信号の定常性に対応する、画像データである入力画像における、基準軸である空間方向Xを示す軸を基準としたデータの定常性の角度θを検出する。
【0513】
【数37】
・・・(37)
【0514】
次に、アクティビティ情報で示される、データの定常性の角度が0度乃至45度および135度乃至180度のいずれかの値であるときの画素選択部411−1乃至画素選択部411−Lの処理を説明する。
【0515】
画素選択部411−1乃至画素選択部411−Lは、空間方向Xを示す軸を基準軸として、注目画素を通る、所定の角度の直線を設定し、注目画素が属する横に1列の画素の列に属する画素であって、注目画素の上側の所定の数の画素、および注目画素の下側の所定の数の画素、並びに注目画素を画素の組として選択する。
【0516】
画素選択部411−1乃至画素選択部411−Lは、注目画素が属する横に1列の画素の列の、上側の横に1列の画素の列に属する画素であって、それぞれに設定された直線に最も近い位置の画素を選択する。そして、画素選択部411−1乃至画素選択部411−Lは、注目画素が属する横に1列の画素の列の、上側の横に1列の画素の列に属する画素であって、選択された画素の左側の所定の数の画素、および選択された画素の右側の所定の数の画素、並びに選択された画素を画素の組として選択する。
【0517】
画素選択部411−1乃至画素選択部411−Lは、注目画素が属する横に1列の画素の列の、上側に2つめの横に1列の画素の列に属する画素であって、それぞれに設定された直線に最も近い位置の画素を選択する。そして、画素選択部411−1乃至画素選択部411−Lは、注目画素が属する横に1列の画素の列の、上側に2つめの横に1列の画素の列に属する画素であって、選択された画素の左側の所定の数の画素、および選択された画素の右側の所定の数の画素、並びに選択された画素を画素の組として選択する。
【0518】
画素選択部411−1乃至画素選択部411−Lは、注目画素が属する横に1列の画素の列の、下側の横に1列の画素の列に属する画素であって、それぞれに設定された直線に最も近い位置の画素を選択する。そして、画素選択部411−1乃至画素選択部411−Lは、注目画素が属する横に1列の画素の列の、下側の横に1列の画素の列に属する画素であって、選択された画素の左側の所定の数の画素、および選択された画素の右側の所定の数の画素、並びに選択された画素を画素の組として選択する。
【0519】
画素選択部411−1乃至画素選択部411−Lは、注目画素が属する横に1列の画素の列の、下側に2つめの横に1列の画素の列に属する画素であって、それぞれに設定された直線に最も近い位置の画素を選択する。そして、画素選択部411−1乃至画素選択部411−Lは、注目画素が属する横に1列の画素の列の、下側に2つめの横に1列の画素の列に属する画素であって、選択された画素の左側の所定の数の画素、および選択された画素の右側の所定の数の画素、並びに選択された画素を画素の組として選択する。
【0520】
このように、画素選択部411−1乃至画素選択部411−Lは、それぞれ、画素の組を5つ選択する。
【0521】
画素選択部411−1乃至画素選択部411−Lは、互いに異なる角度についての、画素の組を選択する。例えば、画素選択部411−1は、0度についての、画素の組を選択し、画素選択部411−2は、2.5度についての、画素の組を選択し、画素選択部411−3は、5度についての、画素の組を選択する。画素選択部411−1乃至画素選択部411−Lは、7.5度から45度および135度から180度までの、2.5度毎の角度についての、画素の組を選択する。
【0522】
画素選択部411−1は、選択した画素の組を推定誤差算出部412−1に供給し、画素選択部411−2は、選択した画素の組を推定誤差算出部412−2に供給する。同様に、画素選択部411−3乃至画素選択部411−Lのそれぞれは、選択した画素の組を推定誤差算出部412−3乃至推定誤差算出部412−Lのそれぞれに供給する。
【0523】
推定誤差算出部412−1乃至推定誤差算出部412−Lは、画素選択部411−1乃至画素選択部411−Lのいずれかから供給された、複数の組における対応する位置の画素の画素値の相関を検出する。推定誤差算出部412−1乃至推定誤差算出部412−Lは、検出された相関を示す情報を、最小誤差角度選択部413に供給する。
【0524】
最小誤差角度選択部413は、推定誤差算出部412−1乃至推定誤差算出部412−Lにおいて検出された相関に基いて、欠落した実世界1の光信号である画像の定常性に対応する、入力画像における、基準軸を基準としたデータの定常性の角度を検出する。
【0525】
次に、図56のフローチャートを参照して、ステップS101の処理に対応する、図49で構成が示されるデータ定常性検出部101による、データの定常性の検出の処理を説明する。
【0526】
ステップS401において、アクティビティ検出部401およびデータ選択部402は、入力画像から、注目している画素である注目画素を選択する。アクティビティ検出部401およびデータ選択部402は、同一の注目画素を選択する。例えば、アクティビティ検出部401およびデータ選択部402は、入力画像から、ラスタスキャン順に、注目画素を選択する。
【0527】
ステップS402において、アクティビティ検出部401は、注目画素に対するアクティビティを検出する。例えば、アクティビティ検出部401は、注目画素を中心とした所定の数の画素からなるブロックの縦方向に並ぶ画素の画素値の差分および横方向に並ぶ画素の画素値の差分を基に、アクティビティを検出する。
【0528】
アクティビティ検出部401は、注目画素に対する空間方向のアクティビティを検出して、検出した結果を示すアクティビティ情報をデータ選択部402および定常方向導出部404に供給する。
【0529】
ステップS403において、データ選択部402は、注目画素を含む画素の列から、注目画素を中心とした所定の数の画素を、画素の組として選択する。例えば、データ選択部402は、注目画素が属する縦または横に1列の画素の列に属する画素であって、注目画素の上側または左側の所定の数の画素、および注目画素の下側または右側の所定の数の画素、並びに注目画素を画素の組として選択する。
【0530】
ステップS404において、データ選択部402は、ステップS402の処理で検出されたアクティビティを基にした、所定の範囲の角度毎に、所定の数の画素の列から、それぞれ所定の数の画素を、画素の組として選択する。例えば、データ選択部402は、所定の範囲の角度を有し、空間方向Xを示す軸を基準軸として、注目画素を通る直線を設定し、注目画素に対して、横方向または縦方向に1列または2列離れた画素であって、直線に最も近い画素を選択し、選択された画素の上側または左側の所定の数の画素、および選択された画素の下側または右側の所定の数の画素、並びに線に最も近い選択された画素を画素の組として選択する。データ選択部402は、角度毎に、画素の組を選択する。
【0531】
データ選択部402は、選択した画素の組を誤差推定部403に供給する。
【0532】
ステップS405において、誤差推定部403は、注目画素を中心とした画素の組と、角度毎に選択した画素の組との相関を計算する。例えば、誤差推定部403は、角度毎に、注目画素を含む組の画素の画素値と、他の組における対応する位置の画素の画素値の差分の絶対値の和を算出する。
【0533】
角度毎に選択された、画素の組の相互の相関を基に、データの定常性の角度を検出するようにしてもよい。
【0534】
誤差推定部403は、算出された相関を示す情報を、定常方向導出部404に供給する。
【0535】
ステップS406において、定常方向導出部404は、ステップS405の処理で算出された相関を基に、相関が最も強い画素の組の位置から、欠落した実世界1の光信号の定常性に対応する、画像データである入力画像における、基準軸を基準としたデータの定常性の角度を検出する。例えば、定常方向導出部404は、画素値の差分の絶対値の総和のうち、最小の総和を選択し、選択された総和が算出された画素の組の位置から、データの定常性の角度θを検出する。
【0536】
定常方向導出部404は、検出したデータの定常性の角度を示すデータ定常性情報を出力する。
【0537】
ステップS407において、データ選択部402は、全ての画素の処理を終了したか否かを判定し、全ての画素の処理を終了していないと判定された場合、ステップS401に戻り、まだ注目画素として選択されていない画素から注目画素を選択して、上述した処理を繰り返す。
【0538】
ステップS407において、全ての画素の処理を終了したと判定された場合、処理は終了する。
【0539】
このように、データ定常性検出部101は、欠落した実世界1の光信号の定常性に対応する、画像データにおける、基準軸を基準としたデータの定常性の角度を検出することができる。
【0540】
なお、図49で構成が示されるデータ検出部101は、注目しているフレームである注目フレームの、注目している画素である注目画素について、入力画像の空間方向のアクティビティを検出し、検出されたアクティビティに応じて、注目画素および空間方向の基準軸を基準とした角度、並びに動きベクトル毎に、注目フレームおよび注目フレームの時間的に前または後ろのフレームのそれぞれから、垂直方向に1列または水平方向に1列の所定の数の画素からなる画素の組を、複数抽出し、抽出された画素の組の相関を検出し、相関に基づいて、入力画像における、時間方向および空間方向のデータの定常性の角度を検出するようにしてもよい。
【0541】
例えば、図57に示すように、データ選択部402は、検出されたアクティビティに応じて、注目画素および空間方向の基準軸を基準とした角度、並びに動きベクトル毎に、注目フレームであるフレーム#n、フレーム#n-1、およびフレーム#n+1のそれぞれから、垂直方向に1列または水平方向に1列の所定の数の画素からなる画素の組を、複数抽出する。
【0542】
フレーム#n-1は、フレーム#nに対して時間的に前のフレームであり、フレーム#n+1は、フレーム#nに対して時間的に後のフレームである。すなわち、フレーム#n-1、フレーム#n、およびフレーム#n+1は、フレーム#n-1、フレーム#n、およびフレーム#n+1の順で表示される。
【0543】
誤差推定部403は、抽出した画素からなる複数の組について、1つの角度および1つの動きベクトル毎に、画素の組の相関を検出する。定常方向導出部404は、画素の組の相関に基づいて、欠落した実世界1の光信号の定常性に対応する、入力画像における、時間方向および空間方向のデータの定常性の角度を検出し、角度を示すデータ定常性情報を出力する。
【0544】
次に、図58乃至図88を参照して、実世界推定部102(図3)の実施の形態の他の例について説明する。
【0545】
図58は、この例の実施の形態の原理を説明する図である。
【0546】
図58で示されるように、センサ2に入射される画像である、実世界1の信号(光の強度の分布)は、所定の関数Fで表される。なお、以下、この例の実施の形態の説明においては、画像である、実世界1の信号を、特に光信号と称し、関数Fを、特に光信号関数Fと称する。
【0547】
この例の実施の形態においては、光信号関数Fで表される実世界1の光信号が所定の定常性を有する場合、実世界推定部102が、センサ2からの入力画像(定常性に対応するデータの定常性を含む画像データ)と、データ定常性検出部101からのデータ定常性情報(入力画像のデータの定常性に対応するデータ定常性情報)を使用して、光信号関数Fを所定の関数fで近似することによって、光信号関数Fを推定する。なお、以下、この例の実施の形態の説明においては、関数fを、特に近似関数fと称する。
【0548】
換言すると、この例の実施の形態においては、実世界推定部102が、近似関数fで表されるモデル161(図4)を用いて、光信号関数Fで表される画像(実世界1の光信号)を近似(記述)する。従って、以下、この例の実施の形態を、関数近似手法と称する。
【0549】
ここで、関数近似手法の具体的な説明に入る前に、本願出願人が関数近似手法を発明するに至った背景について説明する。
【0550】
図59は、センサ2がCCDとされる場合の積分効果を説明する図である。
【0551】
図59で示されるように、センサ2の平面上には、複数の検出素子2−1が配置されている。
【0552】
図59の例では、検出素子2−1の所定の1辺に平行な方向が、空間方向の1方向であるX方向とされており、X方向に垂直な方向が、空間方向の他方向であるY方向とされている。そして、X−Y平面に垂直な方向が、時間方向であるt方向とされている。
【0553】
また、図59の例では、センサ2の各検出素子2−1のそれぞれの空間的な形状は、1辺の長さが1の正方形とされている。そして、センサ2のシャッタ時間(露光時間)が1とされている。
【0554】
さらに、図59の例では、センサ2の所定の1つの検出素子2−1の中心が、空間方向(X方向とY方向)の原点(X方向の位置x=0、およびY方向の位置y=0)とされており、また、露光時間の中間時刻が、時間方向(t方向)の原点(t方向の位置t=0)とされている。
【0555】
この場合、空間方向の原点(x=0,y=0)にその中心が存在する検出素子2−1は、X方向に-0.5乃至0.5の範囲、Y方向に-0.5乃至0.5の範囲、およびt方向に-0.5乃至0.5の範囲で光信号関数F(x,y,t)を積分し、その積分値を画素値Pとして出力することになる。
【0556】
即ち、空間方向の原点にその中心が存在する検出素子2−1から出力される画素値Pは、次の式(38)で表される。
【0557】
【数38】
・・・(38)
【0558】
その他の検出素子2−1も同様に、対象とする検出素子2−1の中心を空間方向の原点とすることで、式(38)で示される画素値Pを出力することになる。
【0559】
図60は、センサ2の積分効果の具体的な例を説明する図である。
【0560】
図60において、X方向とY方向は、センサ2のX方向とY方向(図59)を表している。
【0561】
実世界1の光信号のうちの1部分(以下、このような部分を、領域と称する)2301は、所定の定常性を有する領域の1例を表している。
【0562】
なお、実際には、領域2301は連続した光信号の1部分(連続した領域)である。これに対して、図60においては、領域2301は、20個の小領域(正方形の領域)に区分されているように示されている。これは、領域2301の大きさが、X方向に対して4個分、かつY方向に対して5個分のセンサ2の検出素子(画素)が並んだ大きさに相当することを表すためである。即ち、領域2301内の20個の小領域(仮想領域)のそれぞれは1つの画素に相当する。
【0563】
また、領域2301のうちの図中白い部分は細線に対応する光信号を表している。従って、領域2301は、細線が続く方向に定常性を有していることになる。そこで、以下、領域2301を、細線含有実世界領域2301と称する。
【0564】
この場合、細線含有実世界領域2301(実世界1の光信号の1部分)がセンサ2により検出されると、センサ2からは、積分効果により、入力画像(画素値)の領域2302(以下、細線含有データ領域2302と称する)が出力される。
【0565】
なお、細線含有データ領域2302の各画素のそれぞれは、図中、画像として示されているが、実際には、所定の1つの値を表すデータである。即ち、細線含有実世界領域2301は、センサ2の積分効果により、所定の1つの画素値をそれぞれ有する20個の画素(X方向に4画素分、かつY方向に5画素分の総計20個の画素)に区分された細線含有データ領域2302に変化してしまう(歪んでしまう)。
【0566】
図61は、センサ2の積分効果の具体的な他の例(図60とは異なる例)を説明する図である。
【0567】
図61において、X方向とY方向は、センサ2のX方向とY方向(図59)を表している。
【0568】
実世界1の光信号の1部分(領域)2303は、所定の定常性を有する領域の他の例(図60の細線含有実世界領域2301とは異なる例)を表している。
【0569】
なお、領域2303は、細線含有実世界領域2301と同じ大きさを有する領域である。即ち、細線含有実世界領域2301と同様に、領域2303も、実際には連続した実世界1の光信号の1部分(連続した領域)であるが、図61においては、センサ2の1画素に相当する20個の小領域(正方形の領域)に区分されているように示されている。
【0570】
また、領域2303は、所定の第1の光の強度(値)を有する第1の部分と、所定の第2の光の強度(値)を有する第2の部分のエッジを含んでいる。従って、領域2303は、エッジが続く方向に定常性を有していることになる。そこで、以下、領域2303を、2値エッジ含有実世界領域2303と称する。
【0571】
この場合、2値エッジ含有実世界領域2303(実世界1の光信号の1部分)がセンサ2により検出されると、センサ2からは、積分効果により、入力画像(画素値)の領域2304(以下、2値エッジ含有データ領域2304と称する)が出力される。
【0572】
なお、2値エッジ含有データ領域2304の各画素値のそれぞれは、細線含有データ領域2302と同様に、図中、画像として表現されているが、実際には、所定の値を表すデータである。即ち、2値エッジ含有実世界領域2303は、センサ2の積分効果により、所定の1つの画素値をそれぞれ有する20個の画素(X方向に4画素分、かつY方向に5画素分の総計20個の画素)に区分された2値エッジ含有データ領域2304に変化してしまう(歪んでしまう)。
【0573】
従来の画像処理装置は、このような細線含有データ領域2302や2値エッジ含有データ領域2304等、センサ2から出力された画像データを原点(基準)とするとともに、画像データを処理の対象として、それ以降の画像処理を行っていた。即ち、センサ2から出力された画像データは、積分効果により実世界1の光信号とは異なるもの(歪んだもの)となっているにも関わらず、従来の画像処理装置は、その実世界1の光信号とは異なるデータを正として画像処理を行っていた。
【0574】
その結果、従来の画像処理装置では、センサ2から出力された段階で、実世界のディテールがつぶれてしまった波形(画像データ)を基準として、その波形から、元のディテールを復元することは非常に困難であるという課題があった。
【0575】
そこで、関数近似手法においては、この課題を解決するために、上述したように(図58で示されるように)、実世界推定部102が、細線含有データ領域2302や2値エッジ含有データ領域2304のようなセンサ2から出力された画像データ(入力画像)から、光信号関数F(実世界1の光信号)を近似関数fで近似することによって、光信号関数Fを推定する。
【0576】
これにより、実世界推定部102より後段において(いまの場合、図3の画像生成部103)、積分効果が考慮された画像データ、即ち、近似関数fにより表現可能な画像データを原点として、その処理を実行することが可能になる。
【0577】
以下、図面を参照して、このような関数近似手法のうちの3つの具体的な手法(第1乃至第3の関数近似手法)のそれぞれについて個別に説明していく。
【0578】
はじめに、図62乃至図76を参照して、第1の関数近似手法について説明する。
【0579】
図62は、上述した図60で示される細線含有実世界領域2301を再度表した図である。
【0580】
図62において、X方向とY方向は、センサ2のX方向とY方向(図59)を表している。
【0581】
第1の関数近似手法は、例えば、図62で示されるような細線含有実世界領域2301に対応する光信号関数F(x,y,t)をX方向(図中矢印2311の方向)に射影した1次元の波形(以下、このような波形を、X断面波形F(x)と称する)を、例えば、n次(nは、任意の整数)の多項式などの近似関数f(x)で近似する手法である。従って、以下、第1の関数近似手法を、特に、1次元近似手法と称する。
【0582】
なお、1次元近似手法において、近似の対象となるX断面波形F(x)は、勿論、図62の細線含有実世界領域2301に対応するものに限定されない。即ち、後述するように、1次元近似手法においては、定常性を有する実世界1の光信号に対応するX断面波形F(x)であれば、いずれのものでも近似することが可能である。
【0583】
また、光信号関数F(x,y,t)の射影の方向はX方向に限定されず、Y方向またはt方向でもよい。即ち、1次元近似手法においては、光信号関数F(x,y,t)をY方向に射影した関数F(y)を、所定の近似関数f(y)で近似することも可能であるし、光信号関数F(x,y,t)をt方向に射影した関数F(t)を、所定の近似関数f(t)で近似することも可能である。
【0584】
より詳細には、1次元近似手法は、例えば、X断面波形F(x)を、次の式(39)で示されるような、n次の多項式などの近似関数f(x)で近似する手法である。
【0585】
【数39】
・・・(39)
【0586】
即ち、1次元近似手法においては、実世界推定部102が、式(39)のxiの係数(特徴量)wiを演算することで、X断面波形F(x)を推定する。
【0587】
この特徴量wiの演算方法は、特に限定されず、例えば、次の第1乃至第3の方法が使用可能である。
【0588】
即ち、第1の方法は、従来から利用されている方法である。
【0589】
これに対して、第2の方法は、本願出願人が新たに発明した方法であって、第1の方法に対して、さらに、空間方向の定常性を考慮した方法である。
【0590】
しかしながら、後述するように、第1の方法と第2の方法においては、センサ2の積分効果が考慮されていない。従って、第1の方法または第2の方法により演算された特徴量wiを上述した式(39)に代入して得られる近似関数f(x)は、入力画像の近似関数ではあるが、厳密には、X断面波形F(x)の近似関数とは言えない。
【0591】
そこで、本願出願人は、第2の方法に対して、センサ2の積分効果をさらに考慮して特徴量wiを演算する第3の方法を発明した。この第3の方法により演算された特徴量wiを、上述した式(39)に代入して得られる近似関数f(x)は、センサ2の積分効果を考慮している点で、X断面波形F(x)の近似関数であると言える。
【0592】
このように、厳密には、第1の方法と第2の方法は、1次元近似手法とは言えず、第3の方法のみが1次元近似手法であると言える。
【0593】
換言すると、図63で示されるように、第2の方法は、1次元近似手法とは異なる。即ち、図63は、第2の方法に対応する実施の形態の原理を説明する図である。
【0594】
図63で示されるように、第2の方法に対応する実施の形態においては、光信号関数Fで表される実世界1の光信号が所定の定常性を有する場合、実世界推定部102が、センサ2からの入力画像(定常性に対応するデータの定常性を含む画像データ)と、データ定常性検出部101からのデータ定常性情報(入力画像のデータの定常性に対応するデータ定常性情報)を使用して、X断面波形F(x)を近似するのではなく、センサ2からの入力画像を所定の近似関数f2(x)で近似する。
【0595】
このように、第2の方法は、センサ2の積分効果を考慮せず、入力画像の近似に留まっている点で、第3の方法と同一レベルの手法であるとは言い難い。しかしながら、第2の方法は、空間方向の定常性を考慮している点で、従来の第1の方法よりも優れた手法である。
【0596】
以下、第1の方法、第2の方法、および第3の方法のそれぞれの詳細について、その順番で個別に説明していく。
【0597】
なお、以下、第1の方法、第2の方法、および第3の方法により生成される近似関数f(x)のそれぞれを、他の方法のものと区別する場合、特に、近似関数f1(x)、近似関数f2(x)、および近似関数f3(x)とそれぞれ称する。
【0598】
はじめに、第1の方法の詳細について説明する。
【0599】
第1の方法においては、上述した式(39)で示される近似関数f1(x)が、図64の細線含有実世界領域2301内で成り立つとして、次の予測方程式(40)を定義する。
【0600】
【数40】
・・・(40)
【0601】
式(40)において、xは、注目画素からのX方向に対する相対的な画素位置を表している。yは、注目画素からのY方向に対する相対的な画素位置を表している。eは、誤差を表している。具体的には、例えば、いま、図64で示されるように、注目画素が、細線含有データ領域2302(細線含有実世界領域2301(図62)がセンサ2により検出されて、出力されたデータ)のうちの、図中、左からX方向に2画素目であって、下からY方向に3画素目の画素であるとする。また、注目画素の中心を原点(0,0)とし、センサ2のX方向とY方向(図59)のそれぞれに平行なx軸とy軸を軸とする座標系(以下、注目画素座標系と称する)が設定されているとする。この場合、注目画素座標系の座標値(x,y)が、相対画素位置を表すことになる。
【0602】
また、式(40)において、P(x,y)は、相対画素位置(x,y)における画素値を表している。具体的には、いまの場合、細線含有データ領域2302内のP(x,y)は、図65で示されるようになる。
【0603】
図65は、この画素値P(x,y)をグラフ化したものを表している。
【0604】
図65において、各グラフのそれぞれの縦軸は、画素値を表しており、横軸は、注目画素からのX方向の相対位置xを表している。また、図中、上から1番目のグラフの点線は入力画素値P(x,-2)を、上から2番目のグラフの3点鎖線は入力画素値P(x,-1)を、上から3番目のグラフの実線は入力画素値P(x,0)を、上から4番目のグラフの1点鎖線は入力画素値P(x,1)を、上から5番目(下から1番目)のグラフの2点鎖線は入力画素値P(x,2)を、それぞれ表している。
【0605】
上述した式(40)に対して、図65で示される20個の入力画素値P(x,-2),P(x,-1),P(x,0),P(x,1),P(x,2)(ただし、xは、−1乃至2のうちのいずれかの整数値)のそれぞれを代入すると、次の式(41)で示される20個の方程式が生成される。なお、ek(kは、1乃至20のうちのいずれかの整数値)のそれぞれは、誤差を表している。
【0606】
【数41】
・・・(41)
【0607】
式(41)は、20個の方程式より構成されているので、近似関数f1(x)の特徴量wiの個数が20個より少ない場合、即ち、近似関数f1(x)が19次より少ない次数の多項式である場合、例えば、最小自乗法を用いて特徴量wiの算出が可能である。なお、最小自乗法の具体的な解法は後述する。
【0608】
例えば、いま、近似関数f1(x)の次数が5次とされた場合、式(41)を利用して最小自乗法により演算された近似関数f1(x)(演算された特徴量wiにより生成される近似関数f1(x))は、図66で示される曲線のようになる。
【0609】
なお、図66において、縦軸は画素値を表しており、横軸は注目画素からの相対位置xを表している。
【0610】
即ち、図64の細線含有データ領域2302を構成する20個の画素値P(x,y)のそれぞれ(図65で示される入力画素値P(x,-2),P(x,-1),P(x,0),P(x,1),P(x,2)のそれぞれ)を、例えば、x軸に沿ってそのまま足しこむ(Y方向の相対位置yを一定とみなして、図65で示される5つのグラフを重ねる)と、図66で示されるような、x軸に平行な複数の線(点線、3点鎖線、実線、1点鎖線、および2点鎖線)が分布する。
【0611】
ただし、図66においては、点線は入力画素値P(x,-2)を、3点鎖線は入力画素値P(x,-1)を、実線は入力画素値P(x,0)を、1点鎖線は入力画素値P(x,1)を、2点鎖線は入力画素値P(x,2)を、それぞれ表している。また、同一の画素値の場合、実際には2本以上の線が重なることになるが、図66においては、各線の区別がつくように、各線のそれぞれが重ならないように描画されている。
【0612】
そして、このように分布した20個の入力画素値P(x,-2),P(x,-1),P(x,0),P(x,1),P(x,2)のそれぞれと、値f1(x)の誤差が最小となるような回帰曲線(最小自乗法により演算された特徴量wiを上述した式(38)に代入して得られる近似関数f1(x))が、図66で示される曲線(近似関数f1(x))となる。
【0613】
このように、近似関数f1(x)は、Y方向の画素値(注目画素からのX方向の相対位置xが同一の画素値)P(x,-2),P(x,-1),P(x,0),P(x,1),P(x,2)の平均値を、X方向に結んだ曲線を単に表しているに過ぎない。即ち、光信号が有する空間方向の定常性を考慮することなく、近似関数f1(x)が生成されている。
【0614】
例えば、いまの場合、近似の対象は、細線含有実世界領域2301(図62)とされている。この細線含有実世界領域2301は、図67で示されるように、傾きGFで表される空間方向の定常性を有している。なお、図67において、X方向とY方向は、センサ2のX方向とY方向(図59)を表している。
【0615】
従って、データ定常性検出部101(図58)は、空間方向の定常性の傾きGFに対応するデータ定常性情報として、図67で示されるような角度θ(傾きGFに対応する傾きGfで表されるデータの定常性の方向と、X方向のなす角度θ)を出力することができる。
【0616】
しかしながら、第1の方法においては、データ定常性検出部101より出力されるデータ定常性情報は一切用いられていない。
【0617】
換言すると、図67で示されるように、細線含有実世界領域2301の空間方向の定常性の方向は略角度θ方向である。しかしながら、第1の方法は、細線含有実世界領域2301の空間方向の定常性の方向はY方向であると仮定して(即ち、角度θが90度であると仮定して)、近似関数f1(x)の特徴量wiを演算する方法である。
【0618】
このため、近似関数f1(x)は、その波形が鈍り、元の画素値よりディテールが減少する関数となってしまう。換言すると、図示はしないが、第1の方法により生成される近似関数f1(x)は、実際のX断面波形F(x)とは大きく異なる波形となってしまう。
【0619】
そこで、本願出願人は、第1の方法に対して、空間方向の定常性をさらに考慮して(角度θを利用して)特徴量wiを演算する第2の方法を発明した。
【0620】
即ち、第2の方法は、細線含有実世界領域2301の定常性の方向は略角度θ方向であるとして、近似関数f2(x) の特徴量wiを演算する方法である。
【0621】
具体的には、例えば、空間方向の定常性に対応するデータの定常性を表す傾きGfは、次の式(42)で表される。
【0622】
【数42】
・・・(42)
【0623】
なお、式(42)において、dxは、図67で示されるようなX方向の微小移動量を表しており、dyは、図67で示されるようなdxに対するY方向の微小移動量を表している。
【0624】
この場合、シフト量Cx(y)を、次の式(43)のように定義すると、第2の方法においては、第1の方法で利用した式(40)に相当する式は、次の式(44)のようになる。
【0625】
【数43】
・・・(43)
【0626】
【数44】
・・・(44)
【0627】
即ち、第1の方法で利用した式(40)は、画素の中心の位置(x、y)のうちのX方向の位置xが、同一の位置に位置する画素の画素値P(x,y)はいずれも同じ値であることを表している。換言すると、式(40)は、同じ画素値の画素がY方向に続いている(Y方向に定常性がある)ことを表している。
【0628】
これに対して、第2の方法で利用する式(44)は、画素の中心の位置が(x,y)である画素の画素値P(x,y)は、注目画素(その中心の位置が原点(0,0)である画素)からX方向にxだけ離れた場所に位置する画素の画素値(≒f2(x))とは一致せず、その画素からさらにX方向にシフト量Cx(y)だけ離れた場所に位置する画素(注目画素からX方向にx+Cx(y)だけ離れた場所に位置する画素)の画素値(≒f2(x+Cx(y)))と同じ値であることを表している。換言すると、式(44)は、同じ画素値の画素が、シフト量Cx(y)に対応する角度θ方向に続いている(略角度θ方向に定常性がある)ことを表している。
【0629】
このように、シフト量Cx(y)が、空間方向の定常性(いまの場合、図67の傾きGFで表される定常性(厳密には、傾きGfで表されるデータの定常性))を考慮した補正量であり、シフト量Cx(y)により式(40)を補正したものが式(44)となる。
【0630】
この場合、図64で示される細線含有データ領域2302の20個の画素値P(x,y)(ただし、xは、−1乃至2のうちのいずれかの整数値。yは、−2乃至2のうちのいずれかの整数値)のそれぞれを、上述した式(44)に代入すると次の式(45)で示される20個の方程式が生成される。
【0631】
【数45】
・・・(45)
【0632】
式(45)は、上述した式(41)と同様に、20個の方程式より構成されている。従って、第1の方法と同様に第2の方法においても、近似関数f2(x)の特徴量wiの個数が20個より少ない場合、即ち、近似関数f2(x)が19次より少ない次数の多項式である場合、例えば、最小自乗法を用いて特徴量wiの算出が可能である。なお、最小自乗法の具体的な解法は後述する。
【0633】
例えば、第1の方法と同様に近似関数f2(x)の次数が5次とされた場合、第2の方法においては、次のようにして特徴量wiが演算される。
【0634】
即ち、図68は、式(45)の左辺で示される画素値P(x,y)をグラフ化したものを表している。図68で示される5つのグラフのそれぞれは、基本的に図65で示されるものと同一である。
【0635】
図68で示されるように、最大の画素値(細線に対応する画素値)は、傾きGfで表されるデータの定常性の方向に続いている。
【0636】
そこで、第2の方法においては、図68で示される入力画素値P(x,-2),P(x,-1),P(x,0),P(x,1),P(x,2)のそれぞれを、例えば、x軸に沿って足しこむ場合、第1の方法のようにそのまま足しこむ(yを一定とみなして、図68で示される状態のまま5つのグラフを重ねる)のではなく、図69で示される状態に変化させてから足しこむ。
【0637】
即ち、図69は、図68で示される入力画素値P(x,-2),P(x,-1),P(x,0),P(x,1),P(x,2)のそれぞれを、上述した式(43)で示されるシフト量Cx(y)だけシフトさせた状態を表している。換言すると、図69は、図68で示される5つのグラフを、データの定常性の実際の方向を表す傾きGFを、あたかも傾きGF’とするように(図中、点線の直線を実線の直線とするように)移動させた状態を表している。
【0638】
図69の状態で、入力画素値P(x,-2),P(x,-1),P(x,0),P(x,1),P(x,2)のそれぞれを、例えば、x軸に沿って足しこむと(図69で示される状態で5つのグラフを重ねると)、図70で示されるような、x軸に平行な複数の線(点線、3点鎖線、実線、1点鎖線、および2点鎖線)が分布する。
【0639】
なお、図70において、縦軸は画素値を表しており、横軸は注目画素からの相対位置xを表している。また、点線は入力画素値P(x,-2)を、3点鎖線は入力画素値P(x,-1)を、実線は入力画素値P(x,0)を、1点鎖線は入力画素値P(x,1)を、2点鎖線は入力画素値P(x,2)を、それぞれ表している。さらに、同一の画素値の場合、実際には2本以上の線が重なることになるが、図70においては、各線の区別がつくように、各線のそれぞれが重ならないように描画されている。
【0640】
そして、このように分布した20個の入力画素値P(x,y)のそれぞれ(ただし、xは、−1乃至2のうちのいずれかの整数値。yは、−2乃至2のうちのいずれかの整数値)と、値f2(x+Cx(y))の誤差が最小となるような回帰曲線(最小自乗法により演算された特徴量wiを上述した式(38)に代入して得られる近似関数f2(x))は、図70の実線で示される曲線f2(x)となる。
【0641】
このように、第2の方法により生成された近似関数f2(x)は、データ定常性検出部101(図58)より出力される角度θ方向(即ち、ほぼ空間方向の定常性の方向)の入力画素値P(x,y)の平均値をX方向に結んだ曲線を表すことになる。
【0642】
これに対して、上述したように、第1の方法により生成された近似関数f1(x)は、Y方向(即ち、空間方向の定常性とは異なる方向)の入力画素値P(x,y)の平均値を、X方向に結んだ曲線を単に表しているに過ぎない。
【0643】
従って、図70で示されるように、第2の方法により生成された近似関数f2(x)は、第1の方法により生成された近似関数f1(x)よりも、その波形の鈍り度合いが減少し、かつ、元の画素値に対するディテールの減り具合も減少する関数となる。換言すると、図示はしないが、第2の方法により生成される近似関数f2(x)は、第1の方法により生成される近似関数f1(x)よりも実際のX断面波形F(x)により近い波形となる。
【0644】
しかしながら、上述したように、近似関数f2(x)は、空間方向の定常性が考慮されたものではあるが、入力画像(入力画素値)を原点(基準)として生成されたものに他ならない。即ち、上述した図63で示されるように、近似関数f2(x)は、X断面波形F(x)とは異なる入力画像を近似したに過ぎず、X断面波形F(x)を近似したとは言い難い。換言すると、第2の方法は、上述した式(44)が成立するとして特徴量wiを演算する方法であり、上述した式(38)の関係は考慮していない(センサ2の積分効果を考慮していない)。
【0645】
そこで、本願出願人は、第2の方法に対して、センサ2の積分効果をさらに考慮することで近似関数f3(x)の特徴量wiを演算する第3の方法を発明した。
【0646】
即ち、第3の方法は、空間混合または時間混合の概念を導入した方法である。なお、空間混合と時間混合の両方を考慮すると、説明が複雑になるため、ここでは、空間混合と時間混合のうちの、例えば空間混合を考慮し、時間混合を無視するものとする。
【0647】
そこで、第3の方法の説明の前に、図71を参照して、空間混合について説明する。
【0648】
図71において、実世界1の光信号の1部分2321(以下、領域2321と称する)は、センサ2の1つの検出素子(画素)と同じ面積を有する領域を表している。
【0649】
領域2321がセンサ2に検出されると、センサ2からは、領域2321が時空間方向(X方向,Y方向,およびt方向)に積分された値(1つの画素値)2322が出力される。なお、画素値2322は、図中、画像として表現されているが、実際には、所定の値を表すデータである。
【0650】
実世界1の領域2321は、前景(例えば、上述した細線)に対応する光信号(図中白い領域)と、背景に対応する光信号(図中黒い領域)に明確に区分される。
【0651】
これに対して、画素値2322は、前景に対応する実世界1の光信号と、背景に対応する実世界1の光信号が積分された値である。換言すると、画素値2322は、前景に対応する光のレベルと背景に対応する光のレベルが空間的に混合されたレベルに対応する値である。
【0652】
このように、実世界1の光信号のうちの1画素(センサ2の検出素子)に対応する部分が、同一レベルの光信号が空間的に一様に分布する部分ではなく、前景と背景のように異なるレベルの光信号のそれぞれが分布する部分である場合、その領域は、センサ2により検出されると、センサ2の積分効果により、異なる光のレベルがあたかも空間的に混合されて(空間方向に積分されて)1つの画素値となってしまう。このように、センサ2の画素において、前景に対する画像(実世界1の光信号)と、背景に対する画像(実世界1の光信号)が空間的に積分されて、いわば混合されてしまうことが、空間混合であり、そのような画素からなる領域を、ここでは、空間混合領域と称する。
【0653】
従って、第3の方法においては、実世界推定部102(図58)が、実世界1の元の領域2321(実世界1の光信号のうちの、センサ2の1画素に対応する部分2321)を表すX断面波形F(x)を、例えば、図72で示されるような、1次の多項式などの近似関数f3(x)で近似することによって、X断面波形F(x)を推定する。
【0654】
即ち、図72は、空間混合領域である画素値2322(図71)に対応する近似関数f3(x)、即ち、実世界1の領域2331内の実線(図71)に対応するX断面波形F(x)を近似する近似関数f3(x)の例を表している。図72において、図中水平方向の軸は、画素値2322に対応する画素の左下端xsから右下端xeまでの辺(図71)に平行な軸を表しており、x軸とされている。図中垂直方向の軸は、画素値を表す軸とされている。
【0655】
図72において、近似関数f3(x)をxsからxeの範囲(画素幅)で積分したものが、センサ2から出力される画素値P(x,y)とほぼ一致する(誤差eだけ存在する)として、次の式(46)を定義する。
【0656】
【数46】
・・・(46)
【0657】
いまの場合、図67で示される細線含有データ領域2302の20個の画素値P(x,y)(ただし、xは、−1乃至2のうちのいずれかの整数値。yは、−2乃至2のうちのいずれかの整数値)から、近似関数f3(x)の特徴量wiが算出されるので、式(46)の画素値Pは、画素値P(x,y)となる。
【0658】
また、第2の方法と同様に、空間方向の定常性も考慮する必要があるので、式(46)の積分範囲の開始位置xsと終了位置xeのそれぞれは、シフト量Cx(y)にも依存することになる。即ち、式(46)の積分範囲の開始位置xsと終了位置xeのそれぞれは、次の式(47)のように表される。
【0659】
【数47】
・・・(47)
【0660】
この場合、図67で示される細線含有データ領域2302の各画素値それぞれ、即ち、図68で示される入力画素値P(x,-2),P(x,-1),P(x,0),P(x,1),P(x,2)のそれぞれ(ただし、xは、−1乃至2のうちのいずれかの整数値)を、上述した式(46)(積分範囲は、上述した式(47))に代入すると次の式(48)で示される20個の方程式が生成される。
【0661】
【数48】
・・・(48)
【0662】
式(48)は、上述した式(45)と同様に、20個の方程式より構成されている。従って、第2の方法と同様に第3の方法においても、近似関数f3(x)の特徴量wiの個数が20個より少ない場合、即ち、近似関数f3(x)が19次より少ない次数の多項式である場合、例えば、最小自乗法を用いて特徴量wiの算出が可能である。なお、最小自乗法の具体的な解法は後述する。
【0663】
例えば、近似関数f3(x)の次数が5次とされた場合、式(48)を利用して最小自乗法により演算された近似関数f3(x)(演算された特徴量wiにより生成される近似関数f3(x))は、図73の実線で示される曲線のようになる。
【0664】
なお、図73において、縦軸は画素値を表しており、横軸は注目画素からの相対位置xを表している。
【0665】
図73で示されるように、第3の方法により生成された近似関数f3(x)(図中、実線で示される曲線)は、第2の方法により生成された近似関数f2(x)(図中、点線で示される曲線)と比較すると、x=0における画素値が大きくなり、また、曲線の傾斜の度合いも急な波形となる。これは、入力画素よりディテイルが増加して、入力画素の解像度とは無関係となっているためである。即ち、近似関数f3(x)は、X断面波形F(x)を近似していると言える。従って、図示はしないが、近似関数f3(x)は、近似関数f2(x)よりもX断面波形F(x)に近い波形となる。
【0666】
図74は、このような1次近似手法を利用する実世界推定部102の構成例を表している。
【0667】
図74において、実世界推定部102は、例えば、特徴量wiを上述した第3の方法(最小自乗法)により演算し、演算した特徴量wiを利用して上述した式(39)の近似関数f(x)を生成することで、X断面波形F(x)を推定する。
【0668】
図74で示されるように、実世界推定部102には、条件設定部2331、入力画像記憶部2332、入力画素値取得部2333、積分成分演算部2334、正規方程式生成部2335、および近似関数生成部2336が設けられている。
【0669】
条件設定部2331は、注目画素に対応するX断面波形F(x)を推定するために使用する画素の範囲(以下、タップ範囲と称する)や、近似関数f(x)の次数nを設定する。
【0670】
入力画像記憶部2332は、センサ2からの入力画像(画素値)を一次的に格納する。
【0671】
入力画素値取得部2333は、入力画像記憶部2332に記憶された入力画像のうちの、条件設定部2331により設定されたタップ範囲に対応する入力画像の領域を取得し、それを入力画素値テーブルとして正規方程式生成部2335に供給する。即ち、入力画素値テーブルは、入力画像の領域に含まれる各画素のそれぞれの画素値が記述されたテーブルである。なお、入力画素値テーブルの具体例については後述する。
【0672】
ところで、ここでは、実世界推定部102は、上述した式(46)と式(47)を利用して最小自乗法により近似関数f(x)の特徴量wiを演算するが、上述した式(46)は、次の式(49)のように表現することができる。
【0673】
【数49】
・・・(49)
【0674】
式(49)において、Si(xs,xe)は、i次項の積分成分を表している。即ち、積分成分Si(xs,xe)は、次の式(50)で示される。
【0675】
【数50】
・・・(50)
【0676】
積分成分演算部2334は、この積分成分Si(xs、xe)を演算する。
【0677】
具体的には、式(50)で示される積分成分Si(xs,xe)(ただし、値xsと値xeは、上述した式(46)で示される値)は、相対画素位置(x,y)、シフト量Cx(y)、および、i次項のiが既知であれば演算可能である。また、これらのうちの、相対画素位置(x,y)は注目画素とタップ範囲により、シフト量Cx(y)は角度θにより(上述した式(41)と式(43)により)、iの範囲は次数nにより、それぞれ決定される。
【0678】
従って、積分成分演算部2334は、条件設定部2331により設定されたタップ範囲および次数、並びにデータ定常性検出部101より出力されたデータ定常性情報のうちの角度θに基づいて積分成分Si(xs,xe)を演算し、その演算結果を積分成分テーブルとして正規方程式生成部2335に供給する。
【0679】
正規方程式生成部2335は、入力画素値取得部2333より供給された入力画素値テーブルと、積分成分演算部2334より供給された積分成分テーブルを利用して、上述した式(46)、即ち、式(49)の右辺の特徴量wiを最小自乗法で求める場合の正規方程式を生成し、それを正規方程式テーブルとして近似関数生成部2336に供給する。なお、正規方程式の具体例については後述する。
【0680】
近似関数生成部2336は、正規方程式生成部2335より供給された正規方程式テーブルに含まれる正規方程式を行列解法で解くことにより、上述した式(49)の特徴量wi(即ち、1次元多項式である近似関数f(x)の係数wi)のそれぞれを演算し、画像生成部103に出力する。
【0681】
次に、図75のフローチャートを参照して、1次元近似手法を利用する実世界推定部102(図74)の実世界の推定処理(図29のステップS102の処理)について説明する。
【0682】
例えば、いま、センサ2から出力された1フレームの入力画像であって、上述した図60の細線含有データ領域2302を含む入力画像が、既に入力画像記憶部2332に記憶されているとする。また、データ定常性検出部101が、ステップS101(図29)の定常性の検出の処理において、細線含有データ領域2302に対してその処理を施して、データ定常性情報として角度θを既に出力しているとする。
【0683】
この場合、図75のステップS2301において、条件設定部2331は、条件(タップ範囲と次数)を設定する。
【0684】
例えば、いま、図76で示されるタップ範囲2351が設定されるとともに、次数として5次が設定されたとする。
【0685】
即ち、図76は、タップ範囲の1例を説明する図である。図76において、X方向とY方向は、センサ2のX方向とY方向(図59)を表している。また、タップ範囲2351は、X方向に4画素分、かつY方向に5画素分の総計20個の画素(図中、20個の正方形)からなる画素群を表している。
【0686】
さらに、図76で示されるように、注目画素が、タップ範囲2351のうちの、図中、左から2画素目であって、下から3画素目の画素に設定されるとする。また、各画素のそれぞれに対して、注目画素からの相対画素位置(x,y)(注目画素の中心(0,0)を原点とする注目画素座標系の座標値)に応じて、図76で示されるような番号l(lは、0乃至19のうちのいずれかの整数値)が付されるとする。
【0687】
図75に戻り、ステップS2302において、条件設定部2331は、注目画素を設定する。
【0688】
ステップS2303において、入力画素値取得部2333は、条件設定部2331により設定された条件(タップ範囲)に基づいて入力画素値を取得し、入力画素値テーブルを生成する。即ち、いまの場合、入力画素値取得部2333は、細線含有データ領域2302(図64)を取得し、入力画素値テーブルとして、20個の入力画素値P(l)からなるテーブルを生成する。
【0689】
なお、いまの場合、入力画素値P(l)と、上述した入力画素値P(x,y)の関係は、次の式(51)で示される関係とされる。ただし、式(51)において、左辺が入力画素値P(l)を表し、右辺が入力画素値P(x,y)を表している。
【0690】
【数51】
・・・(51)
【0691】
ステップS2304において、積分成分演算部2334は、条件設定部2331により設定された条件(タップ範囲および次数)、並びにデータ定常性検出部101より供給されたデータ定常性情報(角度θ)に基づいて積分成分を演算し、積分成分テーブルを生成する。
【0692】
いまの場合、上述したように、入力画素値は、P(x,y)でなくP(l)といった、画素の番号lの値として取得されるので、積分成分演算部2334は、上述した式(50)の積分成分Si(xs,xe)を、次の式(52)の左辺で示される積分成分Si(l)といったlの関数として演算する。
【0693】
【数52】
・・・(52)
【0694】
具体的には、いまの場合、次の式(53)で示される積分成分Si(l)が演算される。
【0695】
【数53】
・・・(53)
【0696】
なお、式(53)において、左辺が積分成分Si(l)を表し、右辺が積分成分Si(xs,xe)を表している。即ち、いまの場合、iは0乃至5であるので、20個のS0(l),20個のS1(l),20個のS2(l),20個のS3(l),20個のS4(l),20個のS5(l)の総計120個のSi(l)が演算されることになる。
【0697】
より具体的には、はじめに、積分成分演算部2334は、データ定常性検出部101より供給された角度θを使用して、シフト量Cx(-2),Cx(-1),Cx(1),Cx(2)のそれぞれを演算する。次に、積分成分演算部2334は、演算したシフト量Cx(-2),Cx(-1),Cx(1),Cx(2)を使用して式(52)の右辺に示される20個の積分成分Si(xs,xe)のそれぞれを、i=0乃至5のそれぞれについて演算する。即ち、120個の積分成分Si(xs,xe)が演算される。なお、この積分成分Si(xs,xe)の演算においては、上述した式(50)が使用される。そして、積分成分演算部2334は、式(53)に従って、演算した120個の積分成分Si(xs,xe)のそれぞれを、対応する積分成分Si(l)に変換し、変換した120個の積分成分Si(l)を含む積分成分テーブルを生成する。
【0698】
なお、ステップS2303の処理とステップS2304の処理の順序は、図75の例に限定されず、ステップS2304の処理が先に実行されてもよいし、ステップS2303の処理とステップS2304の処理が同時に実行されてもよい。
【0699】
次に、ステップS2305において、正規方程式生成部2335は、ステップS2303の処理で入力画素値取得部2333により生成された入力画素値テーブルと、ステップS2304の処理で積分成分演算部2334により生成された積分成分テーブルに基づいて、正規方程式テーブルを生成する。
【0700】
具体的には、いまの場合、最小自乗法により、上述した式(49)に対応する次の式(54)の特徴量wiを演算する。それに対応する正規方程式は、次の式(55)のように表される。
【0701】
【数54】
・・・(54)
【0702】
【数55】
・・・(55)
【0703】
なお、式(55)において、Lは、タップ範囲の画素の番号lのうちの最大値を表している。nは、多項式である近似関数f(x)の次数を表している。具体的には、いまの場合、n=5となり、L=19となる。
【0704】
式(55)で示される正規方程式の各行列のそれぞれを、次の式(56)乃至(58)のように定義すると、正規方程式は、次の式(59)のように表される。
【0705】
【数56】
・・・(56)
【0706】
【数57】
・・・(57)
【0707】
【数58】
・・・(58)
【0708】
【数59】
・・・(59)
【0709】
式(57)で示されるように、行列WMATの各成分は、求めたい特徴量wiである。従って、式(59)において、左辺の行列SMATと右辺の行列PMATが決定されれば、行列解法によって行列WMAT(即ち、特徴量wi)の算出が可能である。
【0710】
具体的には、式(56)で示されるように、行列SMATの各成分は、上述した積分成分Si(l)が既知であれば演算可能である。積分成分Si(l)は、積分成分演算部2334より供給された積分成分テーブルに含まれているので、正規方程式生成部2335は、積分成分テーブルを利用して行列SMATの各成分を演算することができる。
【0711】
また、式(58)で示されるように、行列PMATの各成分は、積分成分Si(l)と入力画素値P(l)が既知であれば演算可能である。積分成分Si(l)は、行列SMATの各成分に含まれるものと同一のものであり、また、入力画素値P(l)は、入力画素値取得部2333より供給された入力画素値テーブルに含まれているので、正規方程式生成部2335は、積分成分テーブルと入力画素値テーブルを利用して行列PMATの各成分を演算することができる。
【0712】
このようにして、正規方程式生成部2335は、行列SMATと行列PMATの各成分を演算し、その演算結果(行列SMATと行列PMATの各成分)を正規方程式テーブルとして近似関数生成部2336に出力する。
【0713】
正規方程式生成部2335より正規方程式テーブルが出力されると、ステップS2306において、近似関数生成部2336は、正規方程式テーブルに基づいて、上述した式(59)の行列WMATの各成分である特徴量wi(即ち、1次元多項式である近似関数f(x)の係数wi)を演算する。
【0714】
具体的には、上述した式(59)の正規方程式は、次の式(60)のように変形できる。
【0715】
【数60】
・・・(60)
【0716】
式(60)において、左辺の行列WMATの各成分が、求めたい特徴量wiである。また、行列SMATと行列PMATのそれぞれの各成分は、正規方程式生成部2335より供給された正規方程式テーブルに含まれている。従って、近似関数生成部2336は、正規方程式テーブルを利用して、式(60)の右辺の行列演算を行うことで行列WMATを演算し、その演算結果(特徴量wi)を画像生成部103に出力する。
【0717】
ステップS2307において、近似関数生成部2336は、全画素の処理を終了したか否かを判定する。
【0718】
ステップS2307において、全画素の処理がまだ終了されていないと判定された場合、処理はステップS2302に戻り、それ以降の処理が繰り返される。即ち、まだ注目画素とされない画素が、順次注目画素とされて、ステップS2302乃至S2307の処理が繰り返される。
【0719】
そして、全画素の処理が終了すると(ステップS2307において、全画素の処理が終了されたと判定されると)、実世界1の推定処理は終了となる。
【0720】
なお、以上のようにして演算された係数(特徴量)wiにより生成される近似関数f(x)の波形は、上述した図73の近似関数f3(x)のような波形となる。
【0721】
このように、1次元近似手法においては、1次元のX断面波形F(x)と同一形状の波形が定常性の方向に連なっていると仮定して、例えば、1次元の多項式などの近似関数f(x)の特徴量が演算される。従って、1次元近似手法においては、他の関数近似手法に比較して、少ない演算処理量で近似関数f(x)の特徴量の算出が可能となる。
【0722】
次に、図77乃至図83を参照して、第2の関数近似手法について説明する。
【0723】
即ち、第2の関数近似手法とは、例えば、図77で示されるような、傾きGFで表される空間方向の定常性を有する実世界1の光信号を、X−Y平面上(空間方向の1方向であるX方向と、X方向に垂直なY方向に水平な平面上)の波形F(x,y)とみなし、2次元の多項式などの近似関数f(x,y)で波形F(x,y)を近似することによって、その波形F(x,y)を推定する手法である。従って、以下、第2の関数近似手法を、2次元近似手法と称する。
【0724】
なお、図77において、図中、水平方向は、空間方向の1方向であるX方向を、右上方向は、空間方向の他方向であるY方向を、垂直方向は、光のレベルを、それぞれ表している。GFは、空間方向の定常性の傾きを表している。
【0725】
また、2次元近似手法の説明においても、センサ2は、図78で示されるような、複数の検出素子2−1がその平面上に配置されて構成されるCCDとされる。
【0726】
図78の例では、検出素子2−1の所定の1辺に平行な方向が、空間方向の1方向であるX方向とされており、X方向に垂直な方向が、空間方向の他方向であるY方向とされている。そして、X−Y平面に垂直な方向が、時間方向であるt方向とされている。
【0727】
また、図78の例では、センサ2の各検出素子2−1のそれぞれの空間的な形状は、1辺の長さが1の正方形とされている。そして、センサ2のシャッタ時間(露光時間)が1とされている。
【0728】
さらに、図78の例では、センサ2の所定の1つの検出素子2−1の中心が、空間方向(X方向とY方向)の原点(X方向の位置x=0、およびY方向の位置y=0)とされており、また、露光時間の中間時刻が、時間方向(t方向)の原点(t方向の位置t=0)とされている。
【0729】
この場合、空間方向の原点(x=0,y=0)にその中心が存在する検出素子2−1は、X方向に-0.5乃至0.5の範囲、Y方向に-0.5乃至0.5の範囲、およびt方向に-0.5乃至0.5の範囲で光信号関数F(x,y,t)を積分し、その積分値を画素値Pとして出力することになる。
【0730】
即ち、空間方向の原点にその中心が存在する検出素子2−1から出力される画素値Pは、次の式(61)で表される。
【0731】
【数61】
・・・(61)
【0732】
その他の検出素子2−1も同様に、対象とする検出素子2−1の中心を空間方向の原点とすることで、式(61)で示される画素値Pを出力することになる。
【0733】
ところで、上述したように、2次元近似手法は、実世界1の光信号を、例えば、図77で示されるような波形F(x,y)として扱い、その2次元の波形F(x,y)を、2次元の多項式などの近似関数f(x,y)に近似する手法である。
【0734】
そこで、はじめに、このような近似関数f(x,y)を2次元の多項式で表現する手法について説明する。
【0735】
上述したように、実世界1の光信号は、3次元の空間上の位置x,y、およびz、並びに時刻tを変数とする光信号関数F(x,y,t)で表される。この光信号関数F(x,y,t)を、Y方向の任意の位置yにおいて、X方向に射影した1次元の波形を、ここでは、X断面波形F(x)と称している。
【0736】
このX断面波形F(x)に注目すると、実世界1の信号が、空間方向の所定の方向に定常性を有している場合、X断面波形F(x)と同一形状の波形がその定常性の方向に連なっていると考えることができる。例えば、図77の例では、X断面波形F(x)と同一形状の波形が、傾きGFの方向に連なっている。換言すると、X断面波形F(x)と同一形状の波形が傾きGFの方向に連なって、波形F(x,y)が形成されているとも言える。
【0737】
従って、波形F(x,y)を近似する近似関数f(x,y)の波形は、X断面波形F(x)を近似する近似関数f(x)と同一形状の波形が連なって形成されると考えることで、近似関数f(x,y)を2次元の多項式で表現することが可能になる。
【0738】
さらに詳細に、近似関数f(x,y)の表現方法について説明する。
【0739】
例えば、いま、上述した図77で示されるような、実世界1の光信号、即ち、傾きGFで表される空間方向の定常性を有する光信号が、センサ2(図78)により検出されて入力画像(画素値)として出力されたとする。
【0740】
さらに、図79で示されるように、データ定常性検出部101(図3)が、この入力画像のうちの、X方向に4画素分、かつY方向に5画素分の総計20個の画素(図中、点線で表される20個の正方形)から構成される入力画像の領域2401に対してその処理を実行し、データ定常性情報の1つとして角度θ(傾きGFに対応する傾きGfで表されるデータの定常性の方向と、X方向とのなす角度θ)を出力したとする。
【0741】
なお、入力画像の領域2401において、図中水平方向は、空間方向の1方向であるX方向を表しており、図中垂直方向は、空間方向の他方向であるY方向を表している。
【0742】
また、図79中、左から2画素目であって、下から3画素目の画素が注目画素とされ、その注目画素の中心を原点(0,0)とするように(x,y)座標系が設定されている。そして、原点(0,0)を通る角度θの直線(データの定常性の方向を表す傾きGfの直線)に対するX方向の相対的な距離(以下、断面方向距離と称する)がx’と記述されている。
【0743】
さらに、図79中、右側のグラフは、X断面波形F(x’)が近似された関数であって、n次(nは、任意の整数)の多項式である近似関数f(x’)を表している。右側のグラフの軸のうち、図中水平方向の軸は、断面方向距離を表しており、図中垂直方向の軸は、画素値を表している。
【0744】
この場合、図79で示される近似関数f(x’)は、n次の多項式であるので、次の式(62)のように表される。
【0745】
【数62】
・・・(62)
【0746】
また、角度θが決定されていることから、原点(0,0)を通る角度θの直線は一意に決まり、Y方向の任意の位置yにおける、直線のX方向の位置xlが、次の式(63)のように表される。ただし、式(63)において、sはcotθ(=1/tanθ)を表している。
【0747】
【数63】
・・・(63)
【0748】
即ち、図79で示されるように、傾きGfで表されるデータの定常性に対応する直線上の点は、座標値(xl,y)で表される。
【0749】
式(63)より、断面方向距離x’は、次の式(64)のように表される。
【0750】
【数64】
・・・(64)
【0751】
従って、入力画像の領域2401内の任意の位置(x,y)における近似関数f(x,y)は、式(62)と式(64)より、次の式(65)のように示される。
【0752】
【数65】
・・・(65)
【0753】
なお、式(65)において、wiは、近似関数f(x,y)の係数を表している。なお、近似関数f(x,y)を含む近似関数fの係数wiを、近似関数fの特徴量と位置づけることもできる。従って、以下、近似関数fの係数wiを、近似関数fの特徴量wiとも称する。
【0754】
このようにして、角度θが既知であれば、2次元波形の近似関数f(x,y)を、式(65)の多項式として表現することができる。
【0755】
従って、実世界推定部102は、式(65)の特徴量wiを演算することができれば、図77で示されるような波形F(x,y)を推定することができる。
【0756】
そこで、以下、式(65)の特徴量wiを演算する手法について説明する。
【0757】
即ち、式(65)で表される近似関数f(x,y)を、画素(センサ2の検出素子2−1(図78))に対応する積分範囲(空間方向の積分範囲)で積分すれば、その積分値が、画素の画素値の推定値となる。このことを、式で表現したものが、次の式(66)である。なお、2次元近似手法においては、時間方向tは一定値とみなされるので、式(66)は、空間方向(X方向とY方法)の位置x,yを変数とする方程式とされている。
【0758】
【数66】
・・・(66)
【0759】
式(66)において、P(x,y)は、センサ2からの入力画像のうちの、その中心位置が位置(x,y)(注目画素からの相対位置(x,y))に存在する画素の画素値を表している。また、eは、誤差を表している。
【0760】
このように、2次元近似手法においては、入力画素値P(x,y)と、2次元の多項式などの近似関数f(x,y)の関係を、式(66)で表現することが可能であるので、実世界推定部102は、式(66)を利用して、特徴量wiを、例えば、最小自乗法等により演算することで(演算した特徴量wiを式(64)に代入して近似関数f(x,y)を生成することで)、2次元の関数F(x,y)(傾きGF(図77)で表される空間方向の定常性を有する実世界1の光信号を、空間方向に着目して表した波形F(x,y))を推定することが可能となる。
【0761】
図80は、このような2次元近似手法を利用する実世界推定部102の構成例を表している。
【0762】
図80で示されるように、実世界推定部102には、条件設定部2421、入力画像記憶部2422、入力画素値取得部2423、積分成分演算部2424、正規方程式生成部2425、および近似関数生成部2426が設けられている。
【0763】
条件設定部2421は、注目画素に対応する関数F(x,y)を推定するために使用する画素の範囲(タップ範囲)や、近似関数f(x,y)の次数nを設定する。
【0764】
入力画像記憶部2422は、センサ2からの入力画像(画素値)を一次格納する。
【0765】
入力画素値取得部2423は、入力画像記憶部2422に記憶された入力画像のうちの、条件設定部2421により設定されたタップ範囲に対応する入力画像の領域を取得し、それを入力画素値テーブルとして正規方程式生成部2425に供給する。即ち、入力画素値テーブルは、入力画像の領域に含まれる各画素のそれぞれの画素値が記述されたテーブルである。なお、入力画素値テーブルの具体例については後述する。
【0766】
ところで、上述したように、2次元近似手法を利用する実世界推定部102は、上述した式(66)を最小自乗法で解くことにより、上述した式(65)で示される近似関数f(x,y)の特徴量wiを演算する。
【0767】
式(66)は、次の式(67)乃至式(69)を用いることで得られる次の式(70)を使用することで、次の式(71)のように表現することができる。
【0768】
【数67】
・・・(67)
【0769】
【数68】
・・・(68)
【0770】
【数69】
・・・(69)
【0771】
【数70】
・・・(70)
【0772】
【数71】
・・・(71)
【0773】
式(71)において、Si(x-0.5,x+0.5,y-0.5,y+0.5)は、i次項の積分成分を表している。即ち、積分成分Si(x-0.5,x+0.5,y-0.5,y+0.5)は、次の式(72)で示される通りである。
【0774】
【数72】
・・・(72)
【0775】
積分成分演算部2424は、この積分成分Si(x-0.5,x+0.5,y-0.5,y+0.5)を演算する。
【0776】
具体的には、式(72)で示される積分成分Si(x-0.5,x+0.5,y-0.5,y+0.5)は、相対画素位置(x,y)、上述した式(65)における変数s、および、i次項のiが既知であれば、演算可能である。これらのうちの、相対画素位置(x,y)は注目画素とタップ範囲により、変数sはcotθであるので角度θにより、iの範囲は次数nにより、それぞれ決定される。
【0777】
従って、積分成分演算部2424は、条件設定部2421により設定されたタップ範囲および次数、並びにデータ定常性検出部101より出力されたデータ定常性情報のうちの角度θに基づいて積分成分Si(x-0.5,x+0.5,y-0.5,y+0.5)を演算し、その演算結果を積分成分テーブルとして正規方程式生成部2425に供給する。
【0778】
正規方程式生成部2425は、入力画素値取得部2423より供給された入力画素値テーブルと、積分成分演算部2424より供給された積分成分テーブルを利用して、上述した式(66)、即ち、式(71)を最小自乗法で求める場合の正規方程式を生成し、それを正規方程式テーブルとして近似関数生成部2426に出力する。なお、正規方程式の具体例については後述する。
【0779】
近似関数生成部2426は、正規方程式生成部2425より供給された正規方程式テーブルに含まれる正規方程式を行列解法で解くことにより、上述した式(66)の特徴量wi(即ち、2次元多項式である近似関数f(x,y)の係数wi)のそれぞれを演算し、画像生成部103に出力する。
【0780】
次に、図81のフローチャートを参照して、2次元近似手法が適用される実世界の推定処理(図29のステップS102の処理)について説明する。
【0781】
例えば、いま、傾きGFで表される空間方向の定常性を有する実世界1の光信号が、センサ2(図78)により検出されて、1フレームに対応する入力画像として、入力画像記憶部2422に既に記憶されているとする。また、データ定常性検出部101が、ステップS101(図29)の定常性の検出の処理において、入力画像のうちの、上述した図79で示される領域2401に対して処理を施して、データ定常性情報として角度θを既に出力しているとする。
【0782】
この場合、ステップS2401において、条件設定部2421は、条件(タップ範囲と次数)を設定する。
【0783】
例えば、いま、図82で示されるタップ範囲2441が設定されるとともに、次数として5次が設定されたとする。
【0784】
即ち、図82は、タップ範囲の1例を説明する図である。図82において、X方向とY方向は、センサ2のX方向とY方向(図78)を表している。また、タップ範囲2441は、X方向に4画素分、かつY方向に5画素分の総計20個の画素(図中、20個の正方形)からなる画素群を表している。
【0785】
さらに、図82に示されるように、注目画素が、タップ範囲2441のうちの、図中、左から2画素目であって、下から3画素目の画素に設定されるとする。また、各画素のそれぞれに対して、注目画素からの相対画素位置(x,y)(注目画素の中心(0,0)を原点とする注目画素座標系の座標値)に応じて、図82で示されるような番号l(lは、0乃至19のうちのいずれかの整数値)が付されるとする。
【0786】
図81に戻り、ステップS2402において、条件設定部2421は、注目画素を設定する。
【0787】
ステップS2403において、入力画素値取得部2423は、条件設定部2421により設定された条件(タップ範囲)に基づいて入力画素値を取得し、入力画素値テーブルを生成する。即ち、いまの場合、入力画素値取得部2423は、入力画像の領域2401(図79)を取得し、入力画素値テーブルとして、20個の入力画素値P(l)からなるテーブルを生成する。
【0788】
なお、いまの場合、入力画素値P(l)と、上述した入力画素値P(x,y)の関係は、次の式(73)で示される関係とされる。ただし、式(73)において、左辺が入力画素値P(l)を表し、右辺が入力画素値P(x,y)を表している。
【0789】
【数73】
・・・(73)
【0790】
ステップS2404において、積分成分演算部2424は、条件設定部2421により設定された条件(タップ範囲および次数)、並びにデータ定常性検出部101より供給されたデータ定常性情報(角度θ)に基づいて積分成分を演算し、積分成分テーブルを生成する。
【0791】
いまの場合、上述したように、入力画素値は、P(x,y)でなくP(l)といった、画素の番号lの値として取得されるので、積分成分演算部2424は、上述した式(72)の積分成分Si(x-0.5,x+0.5,y-0.5,y+0.5)を、次の式(74)の左辺で示される積分成分Si(l)といったlの関数として演算する。
【0792】
【数74】
・・・(74)
【0793】
具体的には、いまの場合、次の式(75)で示される積分成分Si(l)が演算される。
【0794】
【数75】
・・・(75)
【0795】
なお、式(75)において、左辺が積分成分Si(l)を表し、右辺が積分成分Si(x-0.5,x+0.5,y-0.5,y+0.5)を表している。即ち、いまの場合、iは0乃至5であるので、20個のS0(l),20個のS1(l),20個のS2(l),20個のS3(l),20個のS4(l),20個のS5(l)の総計120個のSi(l)が演算されることになる。
【0796】
より具体的には、はじめに、積分成分演算部2424は、データ定常性検出部101より供給された角度θに対するcotθを演算し、それを変数sとする。次に、積分成分演算部2424は、演算した変数sを使用して式(74)の右辺で示される20個の積分成分Si(x-0.5,x+0.5,y-0.5,y+0.5) のそれぞれを、i=0乃至5のそれぞれについて演算する。即ち、120個の積分成分Si(x-0.5,x+0.5,y-0.5,y+0.5) が演算されることになる。なお、この積分成分Si(x-0.5,x+0.5,y-0.5,y+0.5) の演算においては、上述した式(72)が使用される。そして、積分成分演算部2424は、式(75)に従って、演算した120個の積分成分Si(x-0.5,x+0.5,y-0.5,y+0.5)のそれぞれを、対応するSi(l)のそれぞれに変換し、変換した120個のSi(l)を含む積分成分テーブルを生成する。
【0797】
なお、ステップS2403の処理とステップS2404の処理の順序は、図81の例に限定されず、ステップS2404の処理が先に実行されてもよいし、ステップS2403の処理とステップS2404の処理が同時に実行されてもよい。
【0798】
次に、ステップS2405において、正規方程式生成部2425は、ステップS2403の処理で入力画素値取得部2423により生成された入力画素値テーブルと、ステップS2404の処理で積分成分演算部2424により生成された積分成分テーブルに基づいて、正規方程式テーブルを生成する。
【0799】
具体的には、いまの場合、上述した式(71)を利用して最小自乗法により特徴量wiが演算される(ただし、式(70)において、積分成分Si(x-0.5,x+0.5,y-0.5,y+0.5)は、式(74)により変換されるSi(l)が使用される)ので、それに対応する正規方程式は、次の式(76)のように表される。
【0800】
【数76】
・・・(76)
【0801】
なお、式(76)において、Lは、タップ範囲の画素の番号lのうちの最大値を表している。nは、多項式である近似関数f(x)の次数を表している。具体的には、いまの場合、n=5となり、L=19となる。
【0802】
式(76)で示される正規方程式の各行列のそれぞれを、次の式(77)乃至(79)のように定義すると、正規方程式は、次の式(80)のように表現される。
【0803】
【数77】
・・・(77)
【0804】
【数78】
・・・(78)
【0805】
【数79】
・・・(79)
【0806】
【数80】
・・・(80)
【0807】
式(78)で示されるように、行列WMATの各成分は、求めたい特徴量wiである。従って、式(80)において、左辺の行列SMATと右辺の行列PMATが決定されれば、行列解法によって行列WMATの演算が可能になる。
【0808】
具体的には、式(77)で示されるように、行列SMATの各成分は、上述した積分成分Si(l)で演算可能である。即ち、積分成分Si(l)は、積分成分演算部2424より供給された積分成分テーブルに含まれているので、正規方程式生成部2425は、積分成分テーブルを利用して行列SMATの各成分を演算することができる。
【0809】
また、式(79)で示されるように、行列PMATの各成分は、積分成分Si(l)と入力画素値P(l)で演算可能である。即ち、積分成分Si(l)は、行列SMATの各成分に含まれるものと同一のものであり、また、入力画素値P(l)は、入力画素値取得部2423より供給された入力画素値テーブルに含まれているので、正規方程式生成部2425は、積分成分テーブルと入力画素値テーブルを利用して行列PMATの各成分を演算することができる。
【0810】
このようにして、正規方程式生成部2425は、行列SMATと行列PMATの各成分を演算し、その演算結果(行列SMATと行列PMATの各成分)を正規方程式テーブルとして近似関数生成部2426に出力する。
【0811】
正規方程式生成部2425より正規方程式テーブルが出力されると、ステップS2406において、近似関数生成部2426は、正規方程式テーブルに基づいて、上述した式(80)の行列WMATの各成分である特徴量wi(即ち、2次元多項式である近似関数f(x,y)の係数wi)を演算する。
【0812】
具体的には、上述した式(80)の正規方程式は、次の式(81)のように変形できる。
【0813】
【数81】
・・・(81)
【0814】
式(81)において、左辺の行列WMATの各成分が、求めたい特徴量wiである。また、行列SMATと行列PMATのそれぞれの各成分は、正規方程式生成部2425より供給された正規方程式テーブルに含まれている。従って、近似関数生成部2426は、正規方程式テーブルを利用して、式(81)の右辺の行列演算を行うことで行列WMATを演算し、その演算結果(特徴量wi)を画像生成部103に出力する。
【0815】
ステップS2407において、近似関数生成部2426は、全画素の処理を終了したか否かを判定する。
【0816】
ステップS2407において、全画素の処理がまだ終了されていないと判定された場合、処理はステップS2402に戻り、それ以降の処理が繰り返される。即ち、まだ注目画素とされない画素が、順次注目画素とされて、ステップS2402乃至S2407の処理が繰り返される。
【0817】
そして、全画素の処理が終了すると(ステップS2407において、全画素の処理が終了されたと判定されると)、実世界1の推定処理は終了となる。
【0818】
以上、2次元近似手法の説明として、空間方向(X方向とY方向)に対する近似関数f(x,y)の係数(特徴量)wiを演算する例を用いたが、2次元近似手法は、時空間方向(X方向とt方向、または、Y方向とt方向)に対しても適用可能である。
【0819】
即ち、上述した例は、実世界1の光信号が、例えば、傾きGF(図77)で表される空間方向の定常性を有する場合の例であったので、上述した式(66)で示されるような、空間方向(X方向とY方向)の二次元積分が含まれる式が利用された。しかしながら、二次元積分の考え方は、空間方向だけによるものではなく、時空間方向(X方向とt方向、または、Y方向とt方向)に対して適用することも可能である。
【0820】
換言すると、2次元近似手法においては、推定したい光信号関数F(x,y,t)が、空間方向の定常性のみならず、時空間方向(ただし、X方向とt方向、または、Y方向とt方向)の定常性を有している場合であっても、2次元の近似関数fにより近似することが可能である。
【0821】
具体的には、例えば、X方向に水平に等速で動いている物体がある場合、その物体の動きの方向は、図83で示されるようなX-t平面においては、傾きVFのように表される。換言すると、傾きVFは、X-t平面における時空間方向の定常性の方向を表しているとも言える。従って、データ定常性検出部101は、上述した角度θ(X-Y平面における、傾きGFで表される空間方向の定常性に対応するデータ定常性情報)と同様に、X-t平面における時空間方向の定常性を表す傾きVFに対応するデータ定常性情報として、図83で示されるような動きθ(厳密には、図示はしないが、傾きVFに対応する傾きVfで表されるデータの定常性の方向と、空間方向のX方向とのなす角度である動きθ)を出力することが可能である。
【0822】
従って、2次元近似手法を利用する実世界推定部102は、動きθを上述した角度θの代わりとして使用すれば、上述した方法と同様な方法で、近似関数f(x,t)の係数(特徴量)wiを演算することが可能になる。ただし、この場合、使用される式は、上述した式(66)ではなく、次の式(82)である。
【0823】
【数82】
・・・(82)
【0824】
なお、式(82)において、sはcotθ(ただし、θは動きである)である。
【0825】
また、空間方向Xの変わりに、空間方向Yに注目した近似関数f(y,t)も、上述した近似関数f(x,t)と全く同様に取り扱うことが可能である。
【0826】
このように、2次元近似手法は、1次元ではなく2次元の積分効果を考慮しているので、1次元近似手法に比較して、より正確に実世界1の光信号を推定することが可能になる。
【0827】
次に、図84乃至図88を参照して、第3の関数近似手法について説明する。
【0828】
即ち、第3の関数近似手法とは、例えば、時空間方向のうちの所定の方向の定常性を有する実世界1の光信号が、光信号関数F(x,y,t)で表されることに注目して、近似関数f(x,y,t)で光信号関数F(x,y,t)を近似することによって、光信号関数F(x,y,t)を推定する手法である。従って、以下、第3の関数近似手法を、3次元近似手法と称する。
【0829】
また、3次元近似手法の説明においても、センサ2は、図84で示されるような、複数の検出素子2−1がその平面上に配置されて構成されるCCDとされる。
【0830】
図84の例では、検出素子2−1の所定の1辺に平行な方向が、空間方向の1方向であるX方向とされており、X方向に垂直な方向が、空間方向の他方向であるY方向とされている。そして、X−Y平面に垂直な方向が、時間方向であるt方向とされている。
【0831】
また、図84の例では、センサ2の各検出素子2−1のそれぞれの空間的な形状は、1辺の長さが1の正方形とされている。そして、センサ2のシャッタ時間(露光時間)が1とされている。
【0832】
さらに、図84の例では、センサ2の所定の1つの検出素子2−1の中心が、空間方向(X方向とY方向)の原点(X方向の位置x=0、およびY方向の位置y=0)とされており、また、露光時間の中間時刻が、時間方向(t方向)の原点(t方向の位置t=0)とされている。
【0833】
この場合、空間方向の原点(x=0,y=0)にその中心が存在する検出素子2−1は、X方向に-0.5乃至0.5の範囲、Y方向に-0.5乃至0.5の範囲、およびt方向に-0.5乃至0.5の範囲で光信号関数F(x,y,t)を積分し、その積分値を画素値Pとして出力することになる。
【0834】
即ち、空間方向の原点にその中心が存在する検出素子2−1から出力される画素値Pは、次の式(83)で表される。
【0835】
【数83】
・・・(83)
【0836】
その他の検出素子2−1も同様に、対象とする検出素子2−1の中心を空間方向の原点とすることで、式(83)で示される画素値Pを出力することになる。
【0837】
ところで、上述したように、3次元近似手法においては、光信号関数F(x,y,t)は、3次元の近似関数f(x,y,t)に近似される。
【0838】
具体的には、例えば、近似関数f(x,y,t)を、N個の変数(特徴量)を有する関数とし、式(83)に対応する入力画素値P(x,y,t)と近似関数f(x,y,t)の関係式を定義する。これにより、Nより大きいM個の入力画素値P(x,y,t)が取得されていれば、定義された関係式からN個の変数(特徴量)の算出が可能である。即ち、実世界推定部102は、M個の入力画素値P(x,y,t)を取得してN個の変数(特徴量)を演算することで、光信号関数F(x,y,t)を推定することが可能である。
【0839】
この場合、実世界推定部102は、センサ2からの入力画像(入力画素値)に含まれるデータの定常性を縛りとして(即ち、データ定常性検出部101より出力される入力画像に対するデータ定常性情報を利用して)、入力画像全体のうちの、M個の入力画像P(x,y,t)を抽出(取得)する。結果的に、近似関数f(x,y,t)は、データの定常性に拘束されることになる。
【0840】
例えば、図85で示されるように、入力画像に対応する光信号関数F(x,y,t)が、傾きGFで表される空間方向の定常性を有している場合、データ定常性検出部101は、入力画像に対するデータ定常性情報として、角度θ(傾きGFに対応する傾きGf(図示せず)で表されるデータの定常性の方向と、X方向のなす角度θ)を出力することになる。
【0841】
この場合、光信号関数F(x,y,t)をX方向に射影した1次元の波形(ここでは、このような波形を、X断面波形と称している)は、Y方向のいずれの位置で射影した場合であっても同一の形状であるとする。
【0842】
即ち、同一形状のX断面波形が、定常性の方向(X方向に対して角度θ方向)に連なっている2次元の(空間方向の)波形が存在するとし、そのような2次元波形が時間方向tに連なった3次元波形を、近似関数f(x,y,t)で近似する。
【0843】
換言すると、注目画素の中心からY方向に位置yだけずれたX断面波形は、注目画素の中心を通るX断面波形がX方向に所定の量(角度θに応じて変化する量)だけ移動した(シフトした)波形となる。なお、以下、このような量を、シフト量と称する。
【0844】
このシフト量は、次のようにして算出が可能である。
【0845】
即ち、傾きVf(例えば、図85の傾きVFに対応する、データの定常性の方向を表す傾きVf)と角度θは、次の式(84)のように表される。
【0846】
【数84】
・・・(84)
【0847】
なお、式(84)において、dxは、X方向の微小移動量を表しており、dyは、dxに対するY方向の微小移動量を表している。
【0848】
従って、X方向に対するシフト量をCx(y)と記述すると、次の式(85)のように表される。
【0849】
【数85】
・・・(85)
【0850】
このようにして、シフト量Cx(y)を定義すると、式(83)に対応する入力画素値P(x,y,t)と近似関数f(x,y,t)の関係式は、次の式(86)のように表される。
【0851】
【数86】
・・・(86)
【0852】
式(86)において、eは、誤差を表している。tsは、t方向の積分開始位置を表しており、teは、t方向の積分終了位置を表している。同様に、ysは、Y方向の積分開始位置を表しており、yeは、Y方向の積分終了位置を表している。また、xsは、X方向の積分開始位置を表しており、xeは、X方向の積分終了位置を表している。ただし、具体的な各積分範囲のそれぞれは、次の式(87)で示される通りになる。
【0853】
【数87】
・・・(87)
【0854】
式(87)で示されるように、注目画素から空間方向に(x,y)だけ離れて位置する画素に対するX方向の積分範囲を、シフト量Cx(y)だけ移動させることで、同一形状のX断面波形が、定常性の方向(X方向に対して角度θ方向)に連なっていることを表すことが可能になる。
【0855】
このように、3次元近似手法においては、画素値P(x,y,t)と、3次元の近似関数f(x,y,t)の関係を式(86)(積分範囲は、式(87))で表すことができるので、式(86)と式(87)を利用して、近似関数f(x,y,t)のN個の特徴量を、例えば、最小自乗法等により演算することで、光信号関数F(x,y,t)(例えば、図85で示されるような傾きVF表される空間方向の定常性を有する光信号)の推定が可能となる。
【0856】
なお、光信号関数F(x,y,t)で表される光信号が、例えば、図85で示されるような傾きVFで表される空間方向の定常性を有している場合、次のようにして光信号関数F(x,y,t)を近似してもよい。
【0857】
即ち、光信号関数F(x,y,t)をY方向に射影した1次元の波形(以下、このような波形を、Y断面波形と称する)は、X方向のいずれの位置で射影した場合であっても同一の形状であるとする。
【0858】
換言すると、同一形状のY断面波形が、定常性の方向(X方向に対して角度θ方向)に連なっている2次元の(空間方向の)波形が存在するとし、そのような2次元波形が時間方向tに連なった3次元波形を、近似関数f(x,y,t)で近似する。
【0859】
従って、注目画素の中心からX方向にxだけずれたY断面波形は、注目画素の中心を通るY断面波形がY方向に所定のシフト量(角度θに応じて変化するシフト量)だけ移動した波形となる。
【0860】
このシフト量は、次のようにして算出が可能である。
【0861】
即ち、傾きGFが、上述した式(84)のように表されるので、Y方向に対するシフト量をCy(x)と記述すると、次の式(88)のように表される。
【0862】
【数88】
・・・(88)
【0863】
このようにして、シフト量Cy(x)を定義すると、式(83)に対応する入力画素値P(x,y,t)と近似関数f(x,y,t)の関係式は、シフト量Cx(y)を定義したときと同様に、上述した式(86)で表される。
【0864】
ただし、今度は、具体的な各積分範囲のそれぞれは、次の式(89)で示される通りになる。
【0865】
【数89】
・・・(89)
【0866】
式(89)(および上述した式(86))で示されるように、注目画素から(x,y)だけ離れて位置する画素に対するY方向の積分範囲を、シフト量Cy(x)だけ移動させることで、同一形状のY断面波形が、定常性の方向(X方向に対して角度θ方向)に連なっていることを表すことが可能になる。
【0867】
このように、3次元近似手法においては、上述した式(86)の右辺の積分範囲を式(87)のみならず式(89)とすることもできるので、積分範囲として式(89)が採用された式(86)を利用して、近似関数f(x,y,t)のn個の特徴量を、例えば、最小自乗法等により演算することで、光信号関数F(x,y,t)(傾きGFで表される空間方向の定常性を有する実世界1の光信号)の推定が可能となる。
【0868】
このように、積分範囲を表す式(87)と式(89)は、定常性の方向にあわせて周辺画素をX方向にシフトさせるか(式(87)の場合)、或いはY方向にシフトさせるか(式(89)の場合)の違いがあるだけであり、本質的には同じことを表している。
【0869】
しかしながら、定常性の方向(傾きGF)に応じて、光信号関数F(x,y,t)を、X断面波形の集まりと捉えるか、Y断面波形の集まりと捉えるかが異なる。即ち、定常性の方向がY方向に近い場合、光信号関数F(x,y,t)を、X断面波形の集まりと捉えた方が好適である。これに対して、定常性の方向がX方向に近い場合、光信号関数F(x,y,t)を、Y断面波形の集まりと捉えた方が好適である。
【0870】
従って、実世界推定部102は、積分範囲として式(87)と式(89)の両方を用意しておき、定常性の方向に応じて、適宜式(86)の右辺の積分範囲として、式(87)と式(89)のうちのいずれか一方を選択するとよい。
【0871】
以上、光信号関数F(x,y,t)が空間方向(X方向とY方向)の定常性(例えば、図85の傾きGFで表される空間方向の定常性)を有する場合についての3次元近似手法について説明したが、3次元近似手法は、図86で示されるように、光信号関数F(x,y,t)が時空間方向(X方向、Y方向、およびt方向)の定常性(傾きVFで表される定常性)を有する場合についても適用可能である。
【0872】
即ち、図86において、フレーム番号#N-1のフレームに対応する光信号関数がF(x,y,#N-1)とされ、フレーム番号#Nのフレームに対応する光信号関数がF(x,y,#N)とされ、かつ、フレーム番号#N+1のフレームに対応する光信号関数がF(x,y,#N+1)とされている。
【0873】
なお、図86において、図中、水平方向は、空間方向の1方向であるX方向とされており、右斜め上方向は、空間方向の他方向であるY方向とされており、かつ、垂直方向は、時間方向であるt方向とされている。
【0874】
また、フレーム#N-1は、フレーム#Nに対して時間的に前のフレームであり、フレーム#N+1は、フレーム#Nに対して時間的に後のフレームである。即ち、フレーム#N-1、フレーム#N、およびフレーム#N+1は、フレーム#N-1、フレーム#N、およびフレーム#N+1の順で表示される。
【0875】
図86の例では、傾きVFで示される方向(図中左下手前から右上奥の方向)に沿った断面の光のレベルがほぼ一定とされている。従って、図86の例では、光信号関数F(x,y,t)は、傾きVFで表される時空間方向の定常性を有していると言える。
【0876】
この場合、時空間方向の定常性を表す関数C(x,y,t)を定義し、かつ、定義された関数C(x,y,t)を利用して、上述した式(86)の積分範囲を定義すれば、上述した式(87)や式(89)と同様に、近似関数f(x,y,t)のN個の特徴量の算出が可能になる。
【0877】
関数C(x,y,t)は、定常性の方向を表す関数であれば特に限定されない。ただし、以下においては、直線的な定常性であるとして、それに対応する関数C(x,y,t)として、上述した空間方向の定常性を表す関数であるシフト量Cx(y)(式(85))やシフト量Cy(x)(式(87))に相当する、Cx(t)とCy(t)を次のように定義するとする。
【0878】
即ち、上述した空間方向のデータの定常性を表す傾きGfに対応する、時空間方向のデータの定常性の傾きをVfとすると、この傾きVfをX方向の傾き(以下、Vfxと記述する)とY方向の傾き(以下、Vfyと記述する)に分割すると、傾きVfxは次の式(90)で、傾きVfyは次の式(91)で、それぞれ表される。
【0879】
【数90】
・・・(90)
【0880】
【数91】
・・・(91)
【0881】
この場合、関数Cx(t)は、式(90)で示される傾きVfxを利用して、次の式(92)のように表される。
【0882】
【数92】
・・・(92)
【0883】
同様に、関数Cy(t)は、式(91)で示される傾きVfyを利用して、次の式(93)のように表される。
【0884】
【数93】
・・・(93)
【0885】
このようにして、時空間方向の定常性2511を表す関数Cx(t)と関数Cy(t)を定義すると、式(86)の積分範囲は、次の式(94)のように表される。
【0886】
【数94】
・・・(94)
【0887】
このように、3次元近似手法においては、画素値P(x,y,t)と、3次元の近似関数f(x,y,t)の関係を式(86)で表すことができるので、その式(86)の右辺の積分範囲として式(94)を利用して、近似関数f(x,y,t)のn+1個の特徴量を、例えば、最小自乗法等により演算することで、光信号関数F(x,y,t)(時空間方向の所定の方向に定常性を有する実世界1の光信号)を推定することが可能となる。
【0888】
図87は、このような3次元近似手法を利用する実世界推定部102の構成例を表している。
【0889】
なお、3次元近似手法を利用する実世界推定部102が演算する近似関数f(x,y,t)(実際には、その特徴量(係数)を演算する)は、特に限定されないが、以下の説明においては、n(n=N-1)次の多項式とされる。
【0890】
図87で示されるように、実世界推定部102には、条件設定部2521、入力画像記憶部2522、入力画素値取得部2523、積分成分演算部2524、正規方程式生成部2525、および近似関数生成部2526が設けられている。
【0891】
条件設定部2521は、注目画素に対応する光信号関数F(x,y,t)を推定するために使用する画素の範囲(タップ範囲)や、近似関数f(x,y,t)の次数nを設定する。
【0892】
入力画像記憶部2522は、センサ2からの入力画像(画素値)を一次格納する。
【0893】
入力画素値取得部2523は、入力画像記憶部2522に記憶された入力画像のうちの、条件設定部2521により設定されたタップ範囲に対応する入力画像の領域を取得し、それを入力画素値テーブルとして正規方程式生成部2525に供給する。即ち、入力画素値テーブルは、入力画像の領域に含まれる各画素のそれぞれの画素値が記述されたテーブルである。
【0894】
ところで、上述したように、3次元近似手法を利用する実世界推定部102は、上述した式(86)(ただし積分範囲は、式(87)、式(90)、または式(94))を利用して最小自乗法により近似関数f(x,y,t)のN個の特徴量(いまの場合、各次の係数)を演算する。
【0895】
式(86)の右辺は、その積分を演算することで、次の式(95)のように表現することができる。
【0896】
【数95】
・・・(95)
【0897】
式(95)において、wiは、i次項の係数(特徴量)を表しており、また、Si(xs,xe,ys,ye,ts,te)は、i次項の積分成分を表している。ただし、xsはX方向の積分範囲の開始位置を、xeはX方向の積分範囲の終了位置を、ysはY方向の積分範囲の開始位置を、yeはY方向の積分範囲の終了位置を、tsはt方向の積分範囲の開始位置を、teはt方向の積分範囲の終了位置を、それぞれ表している。
【0898】
積分成分演算部2524は、この積分成分Si(xs,xe,ys,ye,ts,te)を演算する。
【0899】
即ち、積分成分演算部2524は、条件設定部2521により設定されたタップ範囲および次数、並びにデータ定常性検出部101より出力されたデータ定常性情報のうちの角度若しくは動き(積分範囲として、上述した式(87)若しくは式(90)が利用される場合には角度であり、上述した式(94)が利用される場合には動きである)に基づいて積分成分Si(xs,xe,ys,ye,ts,te)を演算し、その演算結果を積分成分テーブルとして正規方程式生成部2525に供給する。
【0900】
正規方程式生成部2525は、入力画素値取得部2523より供給された入力画素値テーブルと、積分成分演算部2524より供給された積分成分テーブルを利用して、上述した式(95)を最小自乗法で求める場合の正規方程式を生成し、それを正規方程式テーブルとして近似関数生成部2526に出力する。正規方程式の例については、後述する。
【0901】
近似関数生成部2526は、正規方程式生成部2525より供給された正規方程式テーブルに含まれる正規方程式を行列解法で解くことにより、特徴量wi(いまの場合、多項式である近似関数f(x,y,t)の係数wi)のそれぞれを演算し、画像生成部103に出力する。
【0902】
次に、図88のフローチャートを参照して、3次元近似手法が適用される実世界の推定処理(図29のステップS102の処理)について説明する。
【0903】
はじめに、ステップS2501において、条件設定部2521は、条件(タップ範囲と次数)を設定する。
【0904】
例えば、いま、L個の画素からなるタップ範囲が設定されたとする。また、各画素のそれぞれに対して、所定の番号l(lは、0乃至L−1のうちのいずれかの整数値)が付されるとする。
【0905】
次に、ステップS2502において、条件設定部2521は、注目画素を設定する。
【0906】
ステップS2503において、入力画素値取得部2523は、条件設定部2521により設定された条件(タップ範囲)に基づいて入力画素値を取得し、入力画素値テーブルを生成する。いまの場合、L個の入力画素値P(x,y,t)からなるテーブルが生成されることになる。ここで、L個の入力画素値P(x,y,t)のそれぞれを、その画素の番号lの関数としてP(l)と記述することにする。即ち、入力画素値テーブルは、L個のP(l)が含まれるテーブルとなる。
【0907】
ステップS2504において、積分成分演算部2524は、条件設定部2521により設定された条件(タップ範囲および次数)、並びにデータ定常性検出部101より供給されたデータ定常性情報(角度若しくは動き)に基づいて積分成分を演算し、積分成分テーブルを生成する。
【0908】
ただし、いまの場合、上述したように、入力画素値は、P(x,y,t)でなくP(l)といった、画素の番号lの値として取得されるので、積分成分演算部2524は、上述した式(95)の積分成分Si(xs,xe,ys,ye,ts,te)を、積分成分Si(l)といったlの関数として演算することになる。即ち、積分成分テーブルは、L×i個のSi(l)が含まれるテーブルとなる。
【0909】
なお、ステップS2503の処理とステップS2504の処理の順序は、図88の例に限定されず、ステップS2504の処理が先に実行されてもよいし、ステップS2503の処理とステップS2504の処理が同時に実行されてもよい。
【0910】
次に、ステップS2505において、正規方程式生成部2525は、ステップS2503の処理で入力画素値取得部2523により生成された入力画素値テーブルと、ステップS2504の処理で積分成分演算部2524により生成された積分成分テーブルに基づいて、正規方程式テーブルを生成する。
【0911】
具体的には、いまの場合、最小自乗法により、上述した式(95)に対応する次の式(96)の特徴量wiを演算する。で、それに対応する正規方程式は、次の式(97)のように表される。
【0912】
【数96】
・・・(96)
【0913】
【数97】
・・・(97)
【0914】
式(97)で示される正規方程式の各行列のそれぞれを、次の式(98)乃至(100)のように定義すると、正規方程式は、次の式(101)のように表される。
【0915】
【数98】
・・・(98)
【0916】
【数99】
・・・(99)
【0917】
【数100】
・・・(100)
【0918】
【数101】
・・・(101)
【0919】
式(99)で示されるように、行列WMATの各成分は、求めたい特徴量wiである。従って、式(101)において、左辺の行列SMATと右辺の行列PMATが決定されれば、行列解法によって行列WMAT(即ち、特徴量wi)の算出が可能である。
【0920】
具体的には、式(98)で示されるように、行列SMATの各成分は、上述した積分成分Si(l)が既知であれば演算可能である。積分成分Si(l)は、積分成分演算部2524より供給された積分成分テーブルに含まれているので、正規方程式生成部2525は、積分成分テーブルを利用して行列SMATの各成分を演算することができる。
【0921】
また、式(100)で示されるように、行列PMATの各成分は、積分成分Si(l)と入力画素値P(l)が既知であれば演算可能である。積分成分Si(l)は、行列SMATの各成分に含まれるものと同一のものであり、また、入力画素値P(l)は、入力画素値取得部2523より供給された入力画素値テーブルに含まれているので、正規方程式生成部2525は、積分成分テーブルと入力画素値テーブルを利用して行列PMATの各成分を演算することができる。
【0922】
このようにして、正規方程式生成部2525は、行列SMATと行列PMATの各成分を演算し、その演算結果(行列SMATと行列PMATの各成分)を正規方程式テーブルとして近似関数生成部2526に出力する。
【0923】
正規方程式生成部2525より正規方程式テーブルが出力されると、ステップS2506において、近似関数生成部2526は、正規方程式テーブルに基づいて、上述した式(101)の行列WMATの各成分である特徴量wi(即ち、近似関数f(x,y,t)の係数wi)を演算する。
【0924】
具体的には、上述した式(101)の正規方程式は、次の式(102)のように変形できる。
【0925】
【数102】
・・・(102)
【0926】
式(102)において、左辺の行列WMATの各成分が、求めたい特徴量wiである。また、行列SMATと行列PMATのそれぞれの各成分は、正規方程式生成部2525より供給された正規方程式テーブルに含まれている。従って、近似関数生成部2526は、正規方程式テーブルを利用して、式(102)の右辺の行列演算を行うことで行列WMATを演算し、その演算結果(特徴量wi)を画像生成部103に出力する。
【0927】
ステップS2507において、近似関数生成部2526は、全画素の処理を終了したか否かを判定する。
【0928】
ステップS2507において、全画素の処理がまだ終了されていないと判定された場合、処理はステップS2502に戻り、それ以降の処理が繰り返される。即ち、まだ注目画素とされない画素が、順次注目画素とされて、ステップS2502乃至S2507の処理が繰り返される。
【0929】
そして、全画素の処理が終了すると(ステップS2507において、全画素の処理が終了されたと判定されると)、実世界1の推定処理は終了となる。
【0930】
以上、説明したように、3次元近似手法は、1次元や2次元ではなく、時空間方向の3次元の積分効果を考慮しているので、1次元近似手法や2次元近似手法に比較して、より正確に実世界1の光信号を推定することが可能になる。
【0931】
次に、図89乃至図110を参照して、画像生成部103(図3)の実施の形態の1例について説明する。
【0932】
図89は、この例の実施の形態の原理を説明する図である。
【0933】
図89で示されるように、この例の実施の形態においては、実世界推定部102が、関数近似手法を利用することが前提とされている。即ち、センサ2に入射される画像である、実世界1の信号(光の強度の分布)が、所定の関数Fで表されるとして、実世界推定部102が、センサ2から出力された入力画像(画素値P)と、データ定常性検出部101から出力されたデータ定常性情報を使用して、関数Fを所定の関数fで近似することによって、関数Fを推定することが前提とされている。
【0934】
なお、以下、この例の実施の形態の説明においても、画像である、実世界1の信号を、特に光信号と称し、関数Fを、特に光信号関数Fと称する。また、関数fを、特に近似関数fと称する。
【0935】
そこで、この例の実施の形態においては、このような前提に基づいて、画像生成部103が、データ定常性検出部101から出力されたデータ定常性情報と、実世界推定部102から出力された実世界推定情報(図89の例では、近似関数fの特徴量、または特徴量が特定された近似関数f)を使用して、近似関数fを所定の時空間範囲で積分し、その積分値を出力画素値M(出力画像)として出力する。なお、この例の実施の形態においては、入力画像の画素と出力画像の画素を区別するために、入力画素値をPと記述し、出力画素値をMと記述する。
【0936】
換言すると、光信号関数Fが1度積分されて入力画素値Pとなり、その入力画素値Pから光信号関数Fが推測され(近似関数fで近似され)、推測された光信号関数F(即ち、近似関数f)が再度積分されて、出力画素値Mが生成される。従って、以下、画像生成部103が実行する近似関数fの積分を、再積分と称する。また、この例の実施の形態を、再積分手法と称する。
【0937】
なお、後述するように、再積分手法において、出力画素値Mが生成される場合の近似関数fの積分範囲は、入力画素値Pが生成される場合の光信号関数Fの積分範囲(即ち、空間方向においては、センサ2の検出素子の縦幅と横幅であり、時間方向においては、センサ2の露光時間である)に限定されず、任意の積分範囲とすることが可能である。
【0938】
例えば、出力画素値Mが生成される場合、近似関数fの積分範囲のうちの空間方向の積分範囲を可変することで、その積分範囲に応じて出力画像の画素ピッチを可変することが可能になる。即ち、空間解像度の創造が可能になる。
【0939】
同様に、例えば、出力画素値Mが生成される場合、近似関数fの積分範囲のうちの時間方向の積分範囲を可変することで、時間解像度の創造が可能になる。
【0940】
以下、図面を参照して、このような再積分手法のうちの3つの具体的な手法についてそれぞれ個別に説明していく。
【0941】
即ち、3つの具体的な手法とは、関数近似手法の3つの具体的な手法(実世界推定部102の実施の形態の上述した3つの具体的な例)のそれぞれに対応する再積分手法である。
【0942】
具体的には、1つ目の手法は、上述した1次元近似手法(関数近似手法の1手法)に対応する再積分手法である。従って、1つ目の手法では1次元の再積分を行うことになるので、以下、このような再積分手法を、1次元再積分手法と称する。
【0943】
2つ目の手法は、上述した2次元近似手法(関数近似手法の1手法)に対応する再積分手法である。従って、2つ目の手法では2次元の再積分を行うことになるので、以下、このような再積分手法を、2次元再積分手法と称する。
【0944】
3つ目の手法は、上述した3次元近似手法(関数近似手法の1手法)に対応する再積分手法である。従って、3つ目の手法では3次元の再積分を行うことになるので、以下、このような再積分手法を、3次元再積分手法と称する。
【0945】
以下、1次元再積分手法、2次元再積分手法、および3次元再積分手法のそれぞれの詳細について、その順番で説明していく。
【0946】
はじめに、1次元再積分手法について説明する。
【0947】
1次元再積分手法においては、1次元近似手法により近似関数f(x)が既に生成されていることが前提とされる。
【0948】
即ち、3次元の空間上の位置x,y、およびz、並びに時刻tを変数とする光信号関数F(x,y,t)を、空間方向であるX方向、Y方向、およびZ方向、並びに時間方向であるt方向のうちの所定の1方向(例えば、X方向)に射影した1次元の波形(再積分手法の説明においても、このような波形のうちのX方向に射影した波形を、X断面波形F(x)と称することにする)が、n次(nは、任意の整数)の多項式などの近似関数f(x)で近似されていることが前提とされる。
【0949】
この場合、1次元再積分手法においては、出力画素値Mは、次の式(103)のように演算される。
【0950】
【数103】
・・・(103)
【0951】
なお、式(103)において、xsは、積分開始位置を表しており、xeは、積分終了位置を表している。また、Geは、所定のゲインを表している。
【0952】
具体的には、例えば、いま、実世界推測部102が、図90で示されるような画素3101(センサ2の所定の1つの検出素子に対応する画素3101)を注目画素として、図90で示されるような近似関数f(x)(X断面波形F(x)の近似関数f(x))を既に生成しているとする。
【0953】
なお、図90の例では、画素3101の画素値(入力画素値)がPとされ、かつ、画素3101の形状が、1辺の長さが1の正方形とされている。また、空間方向のうちの、画素3101の1辺に平行な方向(図中水平方向)がX方向とされ、X方向に垂直な方向(図中垂直方向)がY方向とされている。
【0954】
また、図90の下側に、画素3101の中心が原点とされる空間方向(X方向とY方向)の座標系(以下、注目画素座標系と称する)と、その座標系における画素3101が示されている。
【0955】
さらに、図90の上方に、y=0(yは、図中下側で示される注目画素座標系のY方向の座標値)における近似関数f(x)をグラフ化したものが示されている。このグラフにおいて、図中水平方向に平行な軸は、図中下側で示される注目画素座標系のX方向のx軸と同一の軸であり(原点も同一であり)、また、図中垂直方向に平行な軸は、画素値を表す軸とされている。
【0956】
この場合、近似関数f(x)と画素3101の画素値Pの間には、次の式(104)の関係が成立する。
【0957】
【数104】
・・・(104)
【0958】
また、図90で示されるように、画素3101は、傾きGfで表される空間方向のデータの定常性を有しているとする。そして、データ定常性検出部101(図89)が、傾きGfで表されるデータの定常性に対応するデータ定常性情報として、図90で示されるような角度θを既に出力しているとする。
【0959】
この場合、例えば、1次元再積分方法においては、図91で示されるように、X方向に−0.5乃至0.5の範囲、かつY方向に−0.5乃至0.5の範囲(図90の画素3101が位置する範囲)に、4個の画素3111乃至画素3114を新たに創造することが可能である。
【0960】
なお、図91の下側に、図90のものと同一の注目画素座標系と、その注目画素座標系における画素3111乃至画素3114が示されている。また、図91の上側に、図90のものと同一のグラフ(y=0における近似関数f(x)をグラフ化したもの)が示されている。
【0961】
具体的には、図91で示されるように、1次元再積分方法においては、次の式(105)により画素3111の画素値M(1)の算出が、次の式(106)により画素3112の画素値M(2)の算出が、次の式(107)により画素3113の画素値M(3)の算出が、次の式(108)により画素3114の画素値M(4)の算出が、それぞれ可能である。
【0962】
【数105】
・・・(105)
【0963】
【数106】
・・・(106)
【0964】
【数107】
・・・(107)
【0965】
【数108】
・・・(108)
【0966】
なお、式(105)のxs1、式(106)のxs2、式(107)のxs3、および式(108)のxs4のそれぞれは、対応する式の積分開始位置を表している。また、式(105)のxe1、式(106)のxe2、式(107)のxe3、および式(108)のxe4のそれぞれは、対応する式の積分終了位置を表している。
【0967】
式(105)乃至式(108)のそれぞれの右辺の積分範囲は、画素3111乃至画素3114のそれぞれの画素幅(X方向の長さ)となる。即ち、xe1-xs1,xe2-xs2,xe3-xs3,xe4-xs4のそれぞれは、0.5となる。
【0968】
ただし、いまの場合、y=0における近似関数f(x)と同一形状の1次元の波形が、Y方向ではなく、傾きGfで表されるデータの定常性の方向(即ち、角度θ方向)に連なっていると考えられる(実際には、y=0におけるX断面波形F(x)と同一形状の波形が定常性の方向に連なっている)。即ち、図91の注目画素座標系における原点(0,0)(図90の画素3101の中心)における画素値f(0)を画素値f1とした場合、画素値f1が続く方向は、Y方向ではなく、傾きGfで表されるデータの定常性の方向(角度θ方向)である。
【0969】
換言すると、Y方向の所定の位置y(ただし、yは0以外の数値)における近似関数f(x)の波形を考えた場合、画素値f1となる位置は、位置(0,y)ではなく、位置(0,y)からX方向に所定の量(ここでも、このような量をシフト量と称することにする。また、シフト量は、Y方向の位置yに依存する量であるので、このシフト量をCx(y)と記述することにする)だけ移動した位置(Cx(y),y)である。
【0970】
従って、上述した式(105)乃至式(108)のそれぞれの右辺の積分範囲として、求めたい画素値M(l)(ただし、lは、1乃至4のうちのいずれかの整数値)の中心が存在するY方向の位置yを考慮した範囲、即ち、シフト量Cx(y)を考慮した積分範囲の設定が必要である。
【0971】
具体的には、例えば、画素3111と画素3112の中心が存在するY方向の位置yは、y=0ではなく、y=0.25である。
【0972】
従って、y=0.25における近似関数f(x)の波形は、y=0における近似関数f(x)の波形をX方向にシフト量Cx(0.25)だけ移動させた波形に相当する。
【0973】
換言すると、上述した式(105)において、画素3111に対する画素値M(1)は、y=0における近似関数f(x)を所定の積分範囲(開始位置xs1から終了位置xe1まで)で積分したものであるとすると、その積分範囲は、開始位置xs1=-0.5から終了位置xe1=0までの範囲(画素3111がX方向に占める範囲そのもの)ではなく、図91で示される範囲、即ち、開始位置xs1=-0.5+Cx(0.25)から終了位置xe1=0+Cx(0.25)(シフト量Cx(0.25)だけ画素3111を仮に移動させた場合における、画素3111がX方向に占める範囲)となる。
【0974】
同様に、上述した式(106)において、画素3112に対する画素値M(2)は、y=0における近似関数f(x)を所定の積分範囲(開始位置xs2から終了位置xe2まで)で積分したものであるとすると、その積分範囲は、開始位置xs2=0から終了位置xe2=0.5までの範囲(画素3112のX方向に占める範囲そのもの)ではなく、図91で示される範囲、即ち、開始位置xs2=0+Cx(0.25)から終了位置xe1=0.5+Cx(0.25)(シフト量Cx(0.25)だけ画素3112を仮に移動させた場合における、画素3112のX方向に占める範囲)となる。
【0975】
また、例えば、画素3113と画素3114の中心が存在するY方向の位置yは、y=0ではなく、y=-0.25である。
【0976】
従って、y=-0.25における近似関数f(x)の波形は、y=0における近似関数f(x)の波形をX方向にシフト量Cx(-0.25)だけ移動させた波形に相当する。
【0977】
換言すると、上述した式(107)において、画素3113に対する画素値M(3)は、y=0における近似関数f(x)を所定の積分範囲(開始位置xs3から終了位置xe3まで)で積分したものであるとすると、その積分範囲は、開始位置xs3=-0.5から終了位置xe3=0までの範囲(画素3113のX方向に占める範囲そのもの)ではなく、図91で示される範囲、即ち、開始位置xs3=-0.5+Cx(-0.25)から終了位置xe3=0+Cx(-0.25)(シフト量Cx(-0.25)だけ画素3113を仮に移動させた場合における、画素3113のX方向に占める範囲)となる。
【0978】
同様に、上述した式(108)において、画素3114に対する画素値M(4)は、y=0における近似関数f(x)を所定の積分範囲(開始位置xs4から終了位置xe4まで)で積分したものであるとすると、その積分範囲は、開始位置xs4=0から終了位置xe4=0.5までの範囲(画素3114のX方向の占める範囲そのもの)ではなく、図91で示される範囲、即ち、開始位置xs4=0+Cx(-0.25)から終了位置xe1=0.5+Cx(-0.25)(シフト量Cx(-0.25)だけ画素3114を仮に移動させた場合における、画素3114のX方向に占める範囲)となる。
【0979】
従って、画像生成部102(図89)は、上述した式(105)乃至式(108)のそれぞれに、上述した積分範囲のうちの対応するものを代入してそれぞれ演算し、それらの演算結果を出力画素値M(1)乃至M(4)のそれぞれとして出力することになる。
【0980】
このように、画像生成部102は、1次元再積分手法を利用することで、センサ2(図89)からの出力画素3101(図90)における画素として、出力画素3101よりも空間解像度の高い4つの画素、即ち、画素3111乃至画素3114(図91)を創造することができる。さらに、図示はしないが、上述したように、画像生成部102は、画素3111乃至画素3114のみならず、積分範囲を適宜変えることで、出力画素3101に対して任意の倍率の空間解像度の画素を劣化することなく創造することができる。
【0981】
図92は、このような1次元再積分手法を利用する画像生成部103の構成例を表している。
【0982】
図92で示されるように、この例の画像生成部103には、条件設定部3121、特徴量記憶部3122、積分成分演算部3123、および出力画素値演算部3124が設けられている。
【0983】
条件設定部3121は、実世界推定部102より供給された実世界推定情報(図92の例では、近似関数f(x)の特徴量)に基づいて近似関数f(x)の次数nを設定する。
【0984】
条件設定部3121はまた、近似関数f(x)を再積分する場合(出力画素値を演算する場合)の積分範囲を設定する。なお、条件設定部3121が設定する積分範囲は、画素の幅である必要は無い。例えば、近似関数f(x)は空間方向(X方向)に積分されるので、センサ2(図89)からの入力画像の各画素の空間的な大きさに対する、出力画素(画像生成部103がこれから演算する画素)の相対的な大きさ(空間解像度の倍率)がわかれば、具体的な積分範囲の決定が可能である。従って、条件設定部3121は、積分範囲として、例えば、空間解像度倍率を設定することもできる。
【0985】
特徴量記憶部3122は、実世界推定部102より順次供給されてくる近似関数f(x)の特徴量を一次的に記憶する。そして、特徴量記憶部3122は、近似関数f(x)の特徴量の全てを記憶すると、近似関数f(x)の特徴量を全て含む特徴量テーブルを生成し、出力画素値演算部3124に供給する。
【0986】
ところで、上述したように、画像生成部103は、上述した式(103)を利用して出力画素値Mを演算するが、上述した式(103)の右辺に含まれる近似関数f(x)は、具体的には、次の式(109)のように表される。
【0987】
【数109】
・・・(109)
【0988】
なお、式(109)において、wiは、実世界推定部102より供給される近似関数f(x)の特徴量を表している。
【0989】
従って、上述した式(103)の右辺の近似関数f(x)に、式(109)の近似関数f(x)を代入して、式(103)の右辺を展開(演算)すると、出力画素値Mは、次の式(110)のように表される。
【0990】
【数110】
・・・(110)
【0991】
式(110)において、Ki(xs,xe)は、i次項の積分成分を表している。即ち、積分成分Ki(xs,xe)は、次の式(111)で示される通りである。
【0992】
【数111】
・・・(111)
【0993】
積分成分演算部3123は、この積分成分Ki(xs,xe)を演算する。
【0994】
具体的には、式(111)で示されるように、積分成分Ki(xs,xe)は、積分範囲の開始位置xs、および終了位置xe、ゲインGe、並びにi次項のiが既知であれば演算可能である。
【0995】
これらのうちの、ゲインGeは、条件設定部3121により設定された空間解像度倍率(積分範囲)により決定される。
【0996】
iの範囲は、条件設定部3121により設定された次数nにより決定される。
【0997】
また、積分範囲の開始位置xs、および終了位置xeのそれぞれは、これから生成する出力画素の中心画素位置(x,y)および画素幅、並びにデータの定常性の方向を表すシフト量Cx(y)により決定される。なお、(x,y)は、実世界推定部102が近似関数f(x)を生成したときの注目画素の中心位置からの相対位置を表している。
【0998】
さらに、これから生成する出力画素の中心画素位置(x,y)および画素幅のそれぞれは、条件設定部3121により設定された空間解像度倍率(積分範囲)により決定される。
【0999】
また、シフト量Cx(y)と、データ定常性検出部101より供給された角度θは、次の式(112)と式(113)のような関係が成り立つので、シフト量Cx(y)は角度θにより決定される。
【1000】
【数112】
・・・(112)
【1001】
【数113】
・・・(113)
【1002】
なお、式(112)において、Gfは、データの定常性の方向を表す傾きを表しており、θは、データ定常性検出部101(図89)より出力されるデータ定常性情報の1つである角度(空間方向の1方向であるX方向と、傾きGfで表されるデータの定常性の方向とのなす角度)を表している。また、dxは、X方向の微小移動量を表しており、dyは、dxに対するY方向(X方向と垂直な空間方向)の微小移動量を表している。
【1003】
従って、積分成分演算部3123は、条件設定部3121により設定された次数および空間解像度倍率(積分範囲)、並びにデータ定常性検出部101より出力されたデータ定常性情報のうちの角度θに基づいて積分成分Ki(xs,xe)を演算し、その演算結果を積分成分テーブルとして出力画素値演算部3124に供給する。
【1004】
出力画素値演算部3124は、特徴量記憶部3122より供給された特徴量テーブルと、積分成分演算部3123より供給された積分成分テーブルを利用して、上述した式(110)の右辺を演算し、その演算結果を出力画素値Mとして外部に出力する。
【1005】
次に、図93のフローチャートを参照して、1次元再積分手法を利用する画像生成部103(図92)の画像の生成の処理(図29のステップS103の処理)について説明する。
【1006】
例えば、いま、上述した図29のステップS102の処理で、実世界推測部102が、上述した図90で示されるような画素3101を注目画素として、図90で示されるような近似関数f(x)を既に生成しているとする。
【1007】
また、上述した図29のステップS101の処理で、データ定常性検出部101が、データ定常性情報として、図90で示されるような角度θを既に出力しているとする。
【1008】
この場合、図93のステップS3101において、条件設定部3121は、条件(次数と積分範囲)を設定する。
【1009】
例えば、いま、次数として5が設定されるとともに、積分範囲として空間4倍密(画素のピッチ幅が上下左右ともに1/2倍となる空間解像度倍率)が設定されたとする。
【1010】
即ち、この場合、図91で示されるように、X方向に−0.5乃至0.5の範囲、かつY方向に−0.5乃至0.5の範囲(図90の画素3101の範囲)に、4個の画素3111乃至画素3114を新たに創造することが設定されたことになる。
【1011】
ステップS3102において、特徴量記憶部3122は、実世界推定部102より供給された近似関数f(x)の特徴量を取得し、特徴量テーブルを生成する。いまの場合、5次の多項式である近似関数f(x)の係数w0乃至w5が実世界推定部102より供給されるので、特徴量テーブルとして、(w0,w1,w2,w3,w4,w5)が生成される。
【1012】
ステップS3103において、積分成分演算部3123は、条件設定部3121により設定された条件(次数および積分範囲)、並びにデータ定常性検出部101より供給されたデータ定常性情報(角度θ)に基づいて積分成分を演算し、積分成分テーブルを生成する。
【1013】
具体的には、例えば、これから生成する画素3111乃至画素3114のそれぞれに対して、番号(このような番号を、以下、モード番号と称する)1乃至4のそれぞれが付されているとすると、積分成分演算部3123は、上述した式(111)の積分成分Ki(xs,xe)を、次の式(114)の左辺で示される積分成分Ki(l)といったl(ただし、lはモード番号を表している)の関数として演算する。
【1014】
【数114】
・・・(114)
【1015】
具体的には、いまの場合、次の式(115)で示される積分成分Ki(l)が演算される。
【1016】
【数115】
・・・(115)
【1017】
なお、式(115)において、左辺が積分成分Ki(l)を表し、右辺が積分成分Ki(xs,xe)を表している。即ち、いまの場合、lは、1乃至4のうちのいずれかであり、かつ、iは0乃至5のうちのいずれかであるので、6個のKi(1),6個のKi(2),6個のKi(3),6個のKi(4)の総計24個のKi(l)が演算されることになる。
【1018】
より具体的には、はじめに、積分成分演算部3123は、データ定常性検出部101より供給された角度θを使用して、上述した式(112)と式(113)よりシフト量Cx(-0.25)、およびCx(0.25)のそれぞれを演算する。
【1019】
次に、積分成分演算部3123は、演算したシフト量Cx(-0.25)、およびCx(0.25)を使用して、式(115)の4つの式の各右辺の積分成分Ki(xs,xe)のそれぞれを、i=0乃至5についてそれぞれ演算する。なお、この積分成分Ki(xs,xe)の演算においては、上述した式(111)が使用される。
【1020】
そして、積分成分演算部3123は、式(115)に従って、演算した24個の積分成分Ki(xs,xe)のそれぞれを、対応する積分成分Ki(l)に変換し、変換した24個の積分成分Ki(l)(即ち、6個のKi(1)、6個のKi(2)、6個のKi(3)、および6個のKi(4))を含む積分成分テーブルを生成する。
【1021】
なお、ステップS3102の処理とステップS3103の処理の順序は、図93の例に限定されず、ステップS3103の処理が先に実行されてもよいし、ステップS3102の処理とステップS3103の処理が同時に実行されてもよい。
【1022】
次に、ステップS3104において、出力画素値演算部3124は、ステップS3102の処理で特徴量記憶部3122により生成された特徴量テーブルと、ステップS3103の処理で積分成分演算部3123により生成された積分成分テーブルに基づいて出力画素値M(1)乃至M(4)のそれぞれを演算する。
【1023】
具体的には、いまの場合、出力画素値演算部3124は、上述した式(110)に対応する、次の式(116)乃至式(119)の右辺を演算することで、画素3111(モード番号1の画素)の画素値M(1)、画素3112(モード番号2の画素)の画素値M(2)、画素3113(モード番号3の画素)の画素値M(3)、および画素3114(モード番号4の画素)の画素値M(4)のそれぞれを演算する。
【1024】
【数116】
・・・(116)
【1025】
【数117】
・・・(117)
【1026】
【数118】
・・・(118)
【1027】
【数119】
・・・(119)
【1028】
ステップS3105において、出力画素値演算部3124は、全画素の処理を終了したか否かを判定する。
【1029】
ステップS3105において、全画素の処理がまだ終了されていないと判定された場合、処理はステップS3102に戻り、それ以降の処理が繰り返される。即ち、まだ注目画素とされない画素が、順次注目画素とされて、ステップS3102乃至S3104の処理が繰り返される。
【1030】
そして、全画素の処理が終了すると(ステップS3105において、全画素の処理が終了されたと判定すると)、出力画素値演算部3124は、ステップS3106において、画像を出力する。その後、画像の生成の処理は終了となる。
【1031】
次に、図94乃至図101を参照して、所定の入力画像に対して、1次元再積分手法を適用して得られた出力画像と、他の手法(従来のクラス分類適応処理)を適用して得られた出力画像の違いについて説明する。
【1032】
図94は、入力画像の元の画像を示す図であり、図95は、図94の元の画像に対応する画像データを示している。図95において、図中垂直方向の軸は、画素値を示し、図中右下方向の軸は、画像の空間方向の一方向であるX方向を示し、図中右上方向の軸は、画像の空間方向の他の方向であるY方向を示す。なお、後述する図97、図99、および図101の軸のそれぞれは、図95の軸と対応している。
【1033】
図96は、入力画像の例を示す図である。図96で示される入力画像は、図94で示される画像の2×2の画素からなるブロックに属する画素の画素値の平均値を、1つの画素の画素値として生成された画像である。即ち、入力画像は、図94で示される画像に、センサの積分特性を模した、空間方向の積分を適用することにより得られた画像である。また、図97は、図96の入力画像に対応する画像データを示している。
【1034】
図94で示される元の画像において、上下方向から、ほぼ5度時計方向に傾いた細線の画像が含まれている。同様に、図96で示される入力画像において、上下方向から、ほぼ5度時計方向に傾いた細線の画像が含まれている。
【1035】
図98は、図96で示される入力画像に、従来のクラス分類適応処理を適用して得られた画像(以下、図98で示される画像を、従来の画像と称する)を示す図である。また、図99は、従来の画像に対応する画像データを示している。
【1036】
なお、クラス分類適応処理は、上述したように、クラス分類処理と適応処理とからなり、クラス分類処理によって、データを、その性質に基づいてクラス分けし、各クラスごとに適応処理を施すものである。適応処理では、例えば、低画質または標準画質の画像が、所定のタップ係数を用いてマッピング(写像)されることにより、高画質の画像に変換される。
【1037】
図100は、図96で示される入力画像に、1次元再積分手法を適用して得られた画像(以下、図100で示される画像を、再積分画像と称する)を示す図である。また、図101は、再積分画像に対応する画像データを示している。
【1038】
図98の従来の画像と、図100の再積分画像を比較するに、従来の画像においては、細線の画像が、図94の元の画像とは異なるものになっているのに対して、再積分画像においては、細線の画像が、図94の元の画像とほぼ同じものになっていることがわかる。
【1039】
この違いは、従来のクラス分類適応処理は、あくまでも図96の入力画像を基準(原点)として処理を行う手法であるのに対して、1次元再積分手法は、細線の定常性を考慮して、図94の元の画像を推定し(元の画像に対応する近似関数f(x)を生成し)、推定した元の画像を基準(原点)として処理を行う(再積分して画素値を演算する)手法であるからである。
【1040】
このように、1次元再積分手法においては、1次元近似手法により生成された1次元の多項式などの近似関数f(x)(実世界のX断面波形F(x)の近似関数f(x))を基準(原点)として、近似関数f(x)を任意の範囲に積分することで出力画像(画素値)が生成される。
【1041】
従って、1次元再積分手法においては、従来の他の手法に比較して、元の画像(センサ2に入射される前の実世界1の光信号)により近い画像の出力が可能になる。
【1042】
また、1次元再積分手法においては、上述したように、積分範囲は任意なので、積分範囲を可変することにより、入力画像の解像度とは異なる解像度(時間解像度、または空間解像度)を創造することも可能になる。即ち、入力画像の解像度に対して、整数値だけではなく任意の倍率の解像度の画像を生成することが可能になる。
【1043】
さらに、1次元再積分手法においては、他の再積分手法に比較して、より少ない演算処理量で出力画像(画素値)の算出が可能となる。
【1044】
次に、図102乃至図108を参照して、2次元再積分手法について説明する。
【1045】
2次元再積分手法においては、2次元近似手法により近似関数f(x,y)が既に生成されていることが前提とされる。
【1046】
即ち、例えば、図102で示されるような、傾きGFで表される空間方向の定常性を有する実世界1(図89)の光信号を表す画像関数F(x,y,t)を、空間方向(X方向とY方向)に射影した波形、即ち、X−Y平面上の波形F(x,y)が、n次(nは、任意の整数)の多項式などの近似関数f(x,y)に近似されていることが前提とされる。
【1047】
図102において、図中、水平方向は、空間方向の1方向であるX方向を、右上方向は、空間方向の他方向であるY方向を、垂直方向は、光のレベルを、それぞれ表している。GFは、空間方向の定常性の傾きを表している。
【1048】
なお、図102の例では、定常性の方向は、空間方向(X方向とY方向)とされているため、近似の対象とされる光信号の射影関数は、関数F(x,y)とされているが、後述するように、定常性の方向に応じて、関数F(x,t)や関数F(y,t)が近似の対象とされてもよい。
【1049】
図102の例の場合、2次元再積分手法においては、出力画素値Mは、次の式(120)のように演算される。
【1050】
【数120】
・・・(120)
【1051】
なお、式(120)において、ysは、Y方向の積分開始位置を表しており、yeは、Y方向の積分終了位置を表している。同様に、xsは、X方向の積分開始位置を表しており、xeは、X方向の積分終了位置を表している。また、Geは、所定のゲインを表している。
【1052】
式(120)において、積分範囲は任意に設定可能であるので、2次元再積分手法においては、この積分範囲を適宜変えることで、元の画素(センサ2(図89)からの入力画像の画素)に対して任意の倍率の空間解像度の画素を劣化することなく創造することが可能になる。
【1053】
図103は、2次元再積分手法を利用する画像生成部103の構成例を表している。
【1054】
図103で示されるように、この例の画像生成部103には、条件設定部3201、特徴量記憶部3202、積分成分演算部3203、および出力画素値演算部3204が設けられている。
【1055】
条件設定部3201は、実世界推定部102より供給された実世界推定情報(図103の例では、近似関数f(x,y)の特徴量)に基づいて近似関数f(x,y)の次数nを設定する。
【1056】
条件設定部3201はまた、近似関数f(x,y)を再積分する場合(出力画素値を演算する場合)の積分範囲を設定する。なお、条件設定部3201が設定する積分範囲は、画素の縦幅や横幅である必要は無い。例えば、近似関数f(x,y)は空間方向(X方向とY方向)に積分されるので、センサ2からの入力画像の各画素の空間的な大きさに対する、出力画素(画像生成部103がこれから生成する画素)の相対的な大きさ(空間解像度の倍率)がわかれば、具体的な積分範囲の決定が可能である。従って、条件設定部3201は、積分範囲として、例えば、空間解像度倍率を設定することもできる。
【1057】
特徴量記憶部3202は、実世界推定部102より順次供給されてくる近似関数f(x,y)の特徴量を一次的に記憶する。そして、特徴量記憶部3202は、近似関数f(x,y)の特徴量の全てを記憶すると、近似関数f(x,y)の特徴量を全て含む特徴量テーブルを生成し、出力画素値演算部3204に供給する。
【1058】
ここで、近似関数f(x,y)の詳細について説明する。
【1059】
例えば、いま、上述した図102で示されるような傾きGFで表される空間方向の定常性を有する実世界1(図89)の光信号(波形F(x,y)で表される光信号)が、センサ2(図89)により検出されて入力画像(画素値)として出力されたとする。
【1060】
さらに、例えば、図104で示されるように、データ定常性検出部101(図3)が、この入力画像のうちの、X方向に4画素分、かつY方向に5画素分の総計20個の画素(図中、点線で表される20個の正方形)から構成される入力画像の領域3221に対してその処理を実行し、データ定常性情報の1つとして角度θ(傾きGFに対応する傾きGfで表されるデータの定常性の方向と、X方向とのなす角度θ)を出力したとする。
【1061】
なお、実世界推定部102から見ると、データ定常性検出部101は、注目画素における角度θを単に出力すればよいので、データ定常性検出部101の処理範囲は、上述した入力画像の領域3221に限定されない。
【1062】
また、入力画像の領域3221において、図中水平方向は、空間方向の1方向であるX方向を表しており、図中垂直方向は、空間方向の他方向であるY方向を表している。
【1063】
さらに、図104中、左から2画素目であって、下から3画素目の画素が注目画素とされ、その注目画素の中心を原点(0,0)とするように(x,y)座標系が設定されている。そして、原点(0,0)を通る角度θの直線(データの定常性の方向を表す傾きGfの直線)に対するX方向の相対的な距離(以下、断面方向距離と称する)がx’とされている。
【1064】
さらに、図104中、右側のグラフは、3次元の空間上の位置x,y、およびz、並びに時刻tを変数とする画像関数F(x,y,t)を、Y方向の任意の位置yにおいて、X方向に射影した1次元の波形(以下、このような波形を、X断面波形F(x’)と称する)が近似された関数であって、n次(nは、任意の整数)の多項式などの近似関数f(x’)を表している。右側のグラフの軸のうち、図中水平方向の軸は、断面方向距離を表しており、図中垂直方向の軸は、画素値を表している。
【1065】
この場合、図104で示される近似関数f(x’)は、n次の多項式であるので、次の式(121)のように表される。
【1066】
【数121】
・・・(121)
【1067】
また、角度θが決定されていることから、原点(0,0)を通る角度θの直線は一意に決まり、Y方向の任意の位置yにおける、直線のX方向の位置xlが、次の式(122)のように表される。ただし、式(122)において、sはcotθを表している。
【1068】
【数122】
・・・(122)
【1069】
即ち、図104で示されるように、傾きGfで表されるデータの定常性に対応する直線上の点は、座標値(xl,y)で表される。
【1070】
式(122)より、断面方向距離x’は、次の式(123)のように表される。
【1071】
【数123】
・・・(123)
【1072】
従って、入力画像の領域3221内の任意の位置(x,y)における近似関数f(x,y)は、式(121)と式(123)より、次の式(124)のように示される。
【1073】
【数124】
・・・(124)
【1074】
なお、式(124)において、wiは、近似関数f(x,y)の特徴量を表している。
【1075】
図103に戻り、式(124)に含まれる特徴量wiが、実世界推定部102より供給され、特徴量記憶部3202に記憶される。特徴量記憶部3202は、式(124)で表される特徴量wiの全てを記憶すると、特徴量wiを全て含む特徴量テーブルを生成し、出力画素値演算部3204に供給する。
【1076】
また、上述した式(120)の右辺の近似関数f(x,y)に、式(124)の近似関数f(x,y)を代入して、式(120)の右辺を展開(演算)すると、出力画素値Mは、次の式(125)のように表される。
【1077】
【数125】
・・・(125)
【1078】
式(125)において、Ki(xs,xe,ys,ye)は、i次項の積分成分を表している。即ち、積分成分Ki(xs,xe,ys,ye)は、次の式(126)で示される通りである。
【1079】
【数126】
・・・(126)
【1080】
積分成分演算部3203は、この積分成分Ki(xs,xe,ys,ye)を演算する。
【1081】
具体的には、式(125)と式(126)で示されるように、積分成分Ki(xs,xe,ys,ye)は、積分範囲のX方向の開始位置xs、およびX方向の終了位置xe、積分範囲のY方向の開始位置ys、およびY方向の終了位置ye、変数s、ゲインGe、並びにi次項のiが既知であれば演算可能である。
【1082】
これらのうちの、ゲインGeは、条件設定部3201により設定された空間解像度倍率(積分範囲)により決定される。
【1083】
iの範囲は、条件設定部3201により設定された次数nにより決定される。
【1084】
変数sは、上述したように、cotθであるので、データ定常性検出部101より出力される角度θにより決定される。
【1085】
また、積分範囲のX方向の開始位置xs、およびX方向の終了位置xe、並びに、積分範囲のY方向の開始位置ys、およびY方向の終了位置yeのそれぞれは、これから生成する出力画素の中心画素位置(x,y)および画素幅により決定される。なお、(x,y)は、実世界推定部102が近似関数f(x)を生成したときの注目画素の中心位置からの相対位置を表している。
【1086】
さらに、これから生成する出力画素の中心画素位置(x,y)および画素幅のそれぞれは、条件設定部3201により設定された空間解像度倍率(積分範囲)により決定される。
【1087】
従って、積分成分演算部3203は、条件設定部3201により設定された次数および空間解像度倍率(積分範囲)、並びにデータ定常性検出部101より出力されたデータ定常性情報のうちの角度θに基づいて積分成分Ki(xs,xe,ys,ye)を演算し、その演算結果を積分成分テーブルとして出力画素値演算部3204に供給する。
【1088】
出力画素値演算部3204は、特徴量記憶部3202より供給された特徴量テーブルと、積分成分演算部3203より供給された積分成分テーブルを利用して、上述した式(125)の右辺を演算し、その演算結果を出力画素値Mとして外部に出力する。
【1089】
次に、図105のフローチャートを参照して、2次元再積分手法を利用する画像生成部103(図104)の画像の生成の処理(図29のステップS103の処理)について説明する。
【1090】
例えば、いま、図102で示される関数F(x,y)で表される光信号がセンサ2に入射されて入力画像となり、上述した図29のステップS102の処理で、実世界推測部102が、その入力画像のうちの、図106で示されるような1つの画素3231を注目画素として、関数F(x,y)を近似する近似関数f(x,y)を既に生成しているとする。
【1091】
なお、図106において、画素3231の画素値(入力画素値)がPとされ、かつ、画素3231の形状が、1辺の長さが1の正方形とされている。また、空間方向のうちの、画素3231の1辺に平行な方向がX方向とされ、X方向に垂直な方向がY方向とされている。さらに、画素3231の中心が原点とされる空間方向(X方向とY方向)の座標系(以下、注目画素座標系と称する)が設定されている。
【1092】
また、図106において、上述した図29のステップS101の処理で、データ定常性検出部101が、画素3231を注目画素として、傾きGfで表されるデータの定常性に対応するデータ定常性情報として、角度θを既に出力しているとする。
【1093】
図105に戻り、この場合、ステップS3201において、条件設定部3201は、条件(次数と積分範囲)を設定する。
【1094】
例えば、いま、次数として5が設定されるとともに、積分範囲として空間4倍密(画素のピッチ幅が上下左右ともに1/2倍となる空間解像度倍率)が設定されたとする。
【1095】
即ち、この場合、図107で示されるように、X方向に−0.5乃至0.5の範囲、かつY方向に−0.5乃至0.5の範囲(図106の画素3231の範囲)に、4個の画素3241乃至画素3244を新たに創造することが設定されたことになる。なお、図107においても、図106のものと同一の注目画素座標系が示されている。
【1096】
また、図107において、M(1)は、これから生成される画素3241の画素値を、M(2)は、これから生成される画素3242の画素値を、M(3)は、これから生成される画素3243の画素値を、M(4)は、これから生成される画素3241の画素値を、それぞれ表している。
【1097】
図105に戻り、ステップS3202において、特徴量記憶部3202は、実世界推定部102より供給された近似関数f(x,y)の特徴量を取得し、特徴量テーブルを生成する。いまの場合、5次の多項式である近似関数f(x)の係数w0乃至w5が実世界推定部102より供給されるので、特徴量テーブルとして、(w0,w1,w2,w3,w4,w5)が生成される。
【1098】
ステップS3203において、積分成分演算部3203は、条件設定部3201により設定された条件(次数および積分範囲)、並びにデータ定常性検出部101より供給されたデータ定常性情報(角度θ)に基づいて積分成分を演算し、積分成分テーブルを生成する。
【1099】
具体的には、例えば、これから生成される画素3241乃至画素3244のそれぞれに対して、番号(このような番号を、以下、モード番号と称する)1乃至4のそれぞれが付されているとすると、積分成分演算部3203は、上述した式(125)の積分成分Ki(xs,xe,ys,ye)を、次の式(127)の左辺で示される積分成分Ki(l)といったl(ただし、lはモード番号を表している)の関数として演算する。
【1100】
【数127】
・・(127)
【1101】
具体的には、いまの場合、次の式(128)で示される積分成分Ki(l)が演算される。
【1102】
【数128】
・・・(128)
【1103】
なお、式(128)において、左辺が積分成分Ki(l)を表し、右辺が積分成分Ki(xs,xe,ys,ye)を表している。即ち、いまの場合、lは、1乃至4のうちのいずれかであり、かつ、iは0乃至5のうちのいずれかであるので、6個のKi(1),6個のKi(2),6個のKi(3),6個のKi(4)の総計24個のKi(l)が演算されることになる。
【1104】
より具体的には、はじめに、積分成分演算部3203は、データ定常性検出部101より供給された角度θを使用して、上述した式(122)の変数s(s=cotθ)を演算する。
【1105】
次に、積分成分演算部3203は、演算した変数sを使用して、式(128)の4つの式の各右辺の積分成分Ki(xs,xe,ys,ye)のそれぞれを、i=0乃至5についてそれぞれ演算する。なお、この積分成分Ki(xs,xe,ys,ye)の演算においては、上述した式(125)が使用される。
【1106】
そして、積分成分演算部3203は、式(128)に従って、演算した24個の積分成分Ki(xs,xe,ys,ye)のそれぞれを、対応する積分成分Ki(l)に変換し、変換した24個の積分成分Ki(l)(即ち、6個のKi(1)、6個のKi(2)、6個のKi(3)、および6個のKi(4))を含む積分成分テーブルを生成する。
【1107】
なお、ステップS3202の処理とステップS3203の処理の順序は、図105の例に限定されず、ステップS3203の処理が先に実行されてもよいし、ステップS3202の処理とステップS3203の処理が同時に実行されてもよい。
【1108】
次に、ステップS3204において、出力画素値演算部3204は、ステップS3202の処理で特徴量記憶部3202により生成された特徴量テーブルと、ステップS3203の処理で積分成分演算部3203により生成された積分成分テーブルに基づいて出力画素値M(1)乃至M(4)のそれぞれを演算する。
【1109】
具体的には、いまの場合、出力画素値演算部3204は、上述した式(125)に対応する、次の式(129)乃至式(132)の右辺のそれぞれを演算することで、図107で示される、画素3241(モード番号1の画素)の画素値M(1)、画素3242(モード番号2の画素)の画素値M(2)、画素3243(モード番号3の画素)の画素値M(3)、および画素3244(モード番号4の画素)の画素値M(4)のそれぞれを演算する。
【1110】
【数129】
・・・(129)
【1111】
【数130】
・・・(130)
【1112】
【数131】
・・・(131)
【1113】
【数132】
・・・(132)
【1114】
ただし、いまの場合、式(129)乃至式(132)のnは全て5となる。
【1115】
ステップS3205において、出力画素値演算部3204は、全画素の処理を終了したか否かを判定する。
【1116】
ステップS3205において、全画素の処理がまだ終了されていないと判定された場合、処理はステップS3202に戻り、それ以降の処理が繰り返される。即ち、まだ注目画素とされない画素が、順次注目画素とされて、ステップS3202乃至S3204の処理が繰り返される。
【1117】
そして、全画素の処理が終了すると(ステップS3205において、全画素の処理が終了されたと判定すると)、出力画素値演算部3204は、ステップS3206において、画像を出力する。その後、画像の生成の処理は終了となる。
【1118】
このように、2次元再積分手法を利用することで、センサ2(図89)からの入力画像の画素3231(図106)における画素として、入力画素3231よりも空間解像度の高い4つの画素、即ち、画素3241乃至画素3244(図107)を創造することができる。さらに、図示はしないが、上述したように、画像生成部103は、画素3241乃至画素3244のみならず、積分範囲を適宜変えることで、入力画素3231に対して任意の倍率の空間解像度の画素を劣化することなく創造することができる。
【1119】
以上、2次元再積分手法の説明として、空間方向(X方向とY方向)に対する近似関数f(x,y)を2次元積分する例を用いたが、2次元再積分手法は、時空間方向(X方向とt方向、または、Y方向とt方向)に対しても適用可能である。
【1120】
即ち、上述した例は、実世界1(図89)の光信号が、例えば、図102で示されるような傾きGFで表される空間方向の定常性を有する場合の例であったので、上述した式(120)で示されるような、空間方向(X方向とY方向)の二次元積分が含まれる式が利用された。しかしながら、二次元積分の考え方は、空間方向だけによるものではなく、時空間方向(X方向とt方向、または、Y方向とt方向)に対して適用することも可能である。
【1121】
換言すると、2次元再積分手法の前提となる2次元近似手法においては、光信号を表す画像関数F(x,y,t)が、空間方向の定常性のみならず、時空間方向(ただし、X方向とt方向、または、Y方向とt方向)の定常性を有している場合であっても、2次元の近似関数fにより近似することが可能である。
【1122】
具体的には、例えば、X方向に水平に等速で動いている物体がある場合、その物体の動きの方向は、図108で示されるようなX-t平面においては、傾きVFのように表される。換言すると、傾きVFは、X-t平面における時空間方向の定常性の方向を表しているとも言える。従って、データ定常性検出部101(図89)は、上述した角度θ(X-Y平面における、空間方向の定常性を表す傾きGFに対応するデータ定常性情報)と同様に、X-t平面における時空間方向の定常性を表す傾きVFに対応するデータ定常性情報として、図108で示されるような動きθ(厳密には、図示はしないが、傾きVFに対応する傾きVfで表されるデータの定常性の方向と、空間方向のX方向とのなす角度である動きθ)を出力することが可能である。
【1123】
また、2次元近似手法を利用する実世界推定部102(図89)は、動きθを上述した角度θの代わりとして使用すれば、上述した方法と同様な方法で、近似関数f(x,t)の係数(特徴量)wiを演算することが可能になる。ただし、この場合、使用される式は、上述した式(124)ではなく、次の式(133)である。
【1124】
【数133】
・・・(133)
【1125】
なお、式(133)において、sはcotθ(ただし、θは動きである)である。
【1126】
従って、2次元再積分手法を利用する画像生成部103(図89)は、次の式(134)の右辺に、上述した式(133)のf(x,t)を代入して、演算することで、画素値Mを算出することが可能になる。
【1127】
【数134】
・・・(134)
【1128】
なお、式(134)において、tsは、t方向の積分開始位置を表しており、teは、t方向の積分終了位置を表している。同様に、xsは、X方向の積分開始位置を表しており、xeは、X方向の積分終了位置を表している。Geは、所定のゲインを表している。
【1129】
また、空間方向Xの変わりに、空間方向Yに注目した近似関数f(y,t)も、上述した近似関数f(x,t)と全く同様に取り扱うことが可能である。
【1130】
ところで、式(133)において、t方向を一定とみなし、即ち、t方向の積分を無視して積分することで、時間方向には積分されないデータ、即ち、動きボケのないデータを得ることが可能になる。換言すると、この手法は、2次元の近似関数fのうちの所定の1次元を一定として再積分する点で、2次元再積分手法の1つとみなしてもよいし、実際には、X方向の1次元の再積分をすることになるという点で、1次元再積分手法の1つとみなしてもよい。
【1131】
また、式(134)において、積分範囲は任意に設定可能であるので、2次元再積分手法においては、この積分範囲を適宜変えることで、元の画素(センサ2(図89)からの入力画像の画素)に対して任意の倍率の解像度の画素を劣化することなく創造することが可能になる。
【1132】
即ち、2次元再積分手法においては、時間方向tの積分範囲を適宜変えることで、時間解像度の創造が可能になる。また、空間方向X(または、空間方向Y)の積分範囲を適宜変えることで、空間解像度の創造が可能になる。さらに、時間方向tと空間方向Xの積分範囲のそれぞれを適宜変えることで、時間解像度と空間解像度の両方の創造が可能になる。
【1133】
なお、上述したように、時間解像度と空間解像度のうちのいずれか一方の創造は、1次元再積分手法でも可能であるが、両方の解像度の創造は、1次元再積分手法では原理上不可能であり、2次元以上の再積分を行うことではじめて可能になる。即ち、2次元再積分手法と後述する3次元再積分手法ではじめて、両方の解像度の創造が可能になる。
【1134】
また、2次元再積分手法は、1次元ではなく2次元の積分効果を考慮しているので、より実世界1(図89)の光信号に近い画像を生成することも可能になる。
【1135】
次に、図109と図110を参照して、3次元再積分手法について説明する。
【1136】
3次元再積分手法においては、3次元近似手法により近似関数f(x,y,t)が既に生成されていることが前提とされる。
【1137】
この場合、3次元再積分手法においては、出力画素値Mは、次の式(135)のように演算される。
【1138】
【数135】
・・・(135)
【1139】
なお、式(135)において、tsは、t方向の積分開始位置を表しており、teは、t方向の積分終了位置を表している。同様に、ysは、Y方向の積分開始位置を表しており、yeは、Y方向の積分終了位置を表している。また、xsは、X方向の積分開始位置を表しており、xeは、X方向の積分終了位置を表している。さらに、Geは、所定のゲインを表している。
【1140】
式(135)において、積分範囲は任意に設定可能であるので、3次元再積分手法においては、この積分範囲を適宜変えることで、元の画素(センサ2(図89)からの入力画像の画素)に対して任意の倍率の時空間解像度の画素を劣化することなく創造することが可能になる。即ち、空間方向の積分範囲を小さくすれば、画素ピッチを自由に細かくできる。逆に、空間方向の積分範囲を大きくすれば、画素ピッチを自由に大きくすることができる。また、時間方向の積分範囲を小さくすれば、実世界波形に基づいて時間解像度を創造できる。
【1141】
図109は、3次元再積分手法を利用する画像生成部103の構成例を表している。
【1142】
図109で示されるように、この例の画像生成部103には、条件設定部3301、特徴量記憶部3302、積分成分演算部3303、および出力画素値演算部3304が設けられている。
【1143】
条件設定部3301は、実世界推定部102より供給された実世界推定情報(図109の例では、近似関数f(x,y,t)の特徴量)に基づいて近似関数f(x,y,t)の次数nを設定する。
【1144】
条件設定部3301はまた、近似関数f(x,y,t)を再積分する場合(出力画素値を演算する場合)の積分範囲を設定する。なお、条件設定部3301が設定する積分範囲は、画素の幅(縦幅と横幅)やシャッタ時間そのものである必要は無い。例えば、センサ2(図89)からの入力画像の各画素の空間的な大きさに対する、出力画素(画像生成部103がこれから生成する画素)の相対的な大きさ(空間解像度の倍率)がわかれば、具体的な空間方向の積分範囲の決定が可能である。同様に、センサ2(図89)のシャッタ時間に対する出力画素値の相対的な時間(時間解像度の倍率)がわかれば、具体的な時間方向の積分範囲の決定が可能である。従って、条件設定部3301は、積分範囲として、例えば、空間解像度倍率や時間解像度倍率を設定することもできる。
【1145】
特徴量記憶部3302は、実世界推定部102より順次供給されてくる近似関数f(x,y,t)の特徴量を一次的に記憶する。そして、特徴量記憶部3302は、近似関数f(x,y,t)の特徴量の全てを記憶すると、近似関数f(x,y,t)の特徴量を全て含む特徴量テーブルを生成し、出力画素値演算部3304に供給する。
【1146】
ところで、上述した式(135)の右辺の近似関数f(x,y)の右辺を展開(演算)すると、出力画素値Mは、次の式(136)のように表される。
【1147】
【数136】
・・・(136)
【1148】
式(136)において、Ki(xs,xe,ys,ye,ts,te)は、i次項の積分成分を表している。ただし、xsはX方向の積分範囲の開始位置を、xeはX方向の積分範囲の終了位置を、ysはY方向の積分範囲の開始位置を、yeはY方向の積分範囲の終了位置を、tsはt方向の積分範囲の開始位置を、teはt方向の積分範囲の終了位置を、それぞれ表している。
【1149】
積分成分演算部3303は、この積分成分Ki(xs,xe,ys,ye,ts,te)を演算する。
【1150】
具体的には、積分成分演算部3303は、条件設定部3301により設定された次数、および積分範囲(空間解像度倍率や時間解像度倍率)、並びにデータ定常性検出部101より出力されたデータ定常性情報のうちの角度θまたは動きθに基づいて積分成分Ki(xs,xe,ys,ye,ts,te)を演算し、その演算結果を積分成分テーブルとして出力画素値演算部3304に供給する。
【1151】
出力画素値演算部3304は、特徴量記憶部3302より供給された特徴量テーブルと、積分成分演算部3303より供給された積分成分テーブルを利用して、上述した式(136)の右辺を演算し、その演算結果を出力画素値Mとして外部に出力する。
【1152】
次に、図110のフローチャートを参照して、3次元再積分手法を利用する画像生成部103(図109)の画像の生成の処理(図29のステップS103の処理)について説明する。
【1153】
例えば、いま、上述した図29のステップS102の処理で、実世界推測部102(図89)が、入力画像のうちの、所定の画素を注目画素として、実世界1(図89)の光信号を近似する近似関数f(x,y,t)を既に生成しているとする。
【1154】
また、上述した図29のステップS101の処理で、データ定常性検出部101(図89)が、実世界推定部102と同じ画素を注目画素として、データ定常性情報として、角度θまたは動きθを既に出力しているとする。
【1155】
この場合、図110のステップS3301において、条件設定部3301は、条件(次数と積分範囲)を設定する。
【1156】
ステップS3302において、特徴量記憶部3302は、実世界推定部102より供給された近似関数f(x,y,t)の特徴量wiを取得し、特徴量テーブルを生成する。
【1157】
ステップS3303において、積分成分演算部3303は、条件設定部3301により設定された条件(次数および積分範囲)、並びにデータ定常性検出部101より供給されたデータ定常性情報(角度θまたは動きθ)に基づいて積分成分を演算し、積分成分テーブルを生成する。
【1158】
なお、ステップS3302の処理とステップS3303の処理の順序は、図110の例に限定されず、ステップS3303の処理が先に実行されてもよいし、ステップS3302の処理とステップS3303の処理が同時に実行されてもよい。
【1159】
次に、ステップS3304において、出力画素値演算部3304は、ステップS3302の処理で特徴量記憶部3302により生成された特徴量テーブルと、ステップS3303の処理で積分成分演算部3303により生成された積分成分テーブルに基づいて各出力画素値のそれぞれを演算する。
【1160】
ステップS3305において、出力画素値演算部3304は、全画素の処理を終了したか否かを判定する。
【1161】
ステップS3305において、全画素の処理がまだ終了されていないと判定された場合、処理はステップS3302に戻り、それ以降の処理が繰り返される。即ち、まだ注目画素とされない画素が、順次注目画素とされて、ステップS3302乃至S3304の処理が繰り返される。
【1162】
そして、全画素の処理が終了すると(ステップS3305において、全画素の処理が終了されたと判定すると)、出力画素値演算部3304は、ステップS3306において、画像を出力する。その後、画像の生成の処理は終了となる。
【1163】
このように、上述した式(135)において、その積分範囲は任意に設定可能であるので、3次元再積分手法においては、この積分範囲を適宜変えることで、元の画素(センサ2(図89)からの入力画像の画素)に対して任意の倍率の解像度の画素を劣化することなく創造することが可能になる。
【1164】
即ち、3次元再積分手法においては、時間方向の積分範囲を適宜変えることで、時間解像度の創造が可能になる。また、空間方向の積分範囲を適宜変えることで、空間解像度の創造が可能になる。さらに、時間方向と空間方向の積分範囲のそれぞれを適宜変えることで、時間解像度と空間解像度の両方の創造が可能になる。
【1165】
具体的には、3次元再積分手法においては、2次元や1次元に落とすときの近似がないので精度の高い処理が可能になる。また、斜め方向の動きも2次元に縮退することなく処理することが可能になる。さらに、2次元に縮退していないので各次元の加工が可能になる。例えば、2次元再積分手法において、空間方向(X方向とY方向)に縮退している場合には時間方向であるt方向の加工ができなくなってしまう。これに対して、3次元再積分手法においては、時空間方向のいずれの加工も可能になる。
【1166】
なお、上述したように、時間解像度と空間解像度のうちのいずれか一方の創造は、1次元再積分手法でも可能であるが、両方の解像度の創造は、1次元再積分手法では原理上不可能であり、2次元以上の再積分を行うことではじめて可能になる。即ち、上述した2次元再積分手法と3次元再積分手法ではじめて、両方の解像度の創造が可能になる。
【1167】
また、3次元再積分手法は、1次元や2次元ではなく3次元の積分効果を考慮しているので、より実世界1(図89)の光信号に近い画像を生成することも可能になる。
【1168】
次に、図3の信号処理装置4においては、データ定常性検出部101においてデータの定常性が検出され、実世界推定部102において、その定常性に基づき、実世界1の信号の波形の推定、即ち、例えば、X断面波形F(x)を近似する近似関数が求められる。
【1169】
このように、信号処理装置4では、定常性に基づいて、実世界1の信号の波形の推定が行われるため、データ定常性検出部101で検出される定常性が誤っていたり、あるいは、その検出精度が悪い場合には、実世界1の信号の波形の推定精度も悪くなる。
【1170】
また、信号処理装置4では、ここでは、例えば、画像である、実世界1の信号が有する定常性に基づいて信号処理を行うため、実世界1の信号のうちの定常性が存在する部分に対しては、他の信号処理装置の信号処理に比べて、精度のよい信号処理を実行することができ、その結果、より実世界1の信号に対応する画像に近い画像を出力することが可能になる。
【1171】
しかしながら、信号処理装置4は、定常性に基づいて信号処理を実行する以上、実世界1の信号のうちの明確な定常性が存在しない部分に対しては、定常性が存在する部分に対する処理と同等の精度で、信号処理を実行することができず、その結果、実世界1の信号に対応する画像に対して誤差を含む画像を出力することになる。
【1172】
従って、信号処理装置4において実世界1の信号に対応する画像より近い画像を得るためには、信号処理装置4による信号処理の対象とする処理領域や、信号処理装置4で用いる定常性の精度などが問題となる。
【1173】
そこで、図111は、図1の信号処理装置4の他の一実施の形態の構成例を示している。
【1174】
図111では、信号処理装置4は、処理領域設定部10001、定常性設定部10002、実世界推定部10003、画像生成部10004、画像表示部10005、およびユーザI/F(Interface)10006から構成されている。
【1175】
図111に構成を示す信号処理装置4には、データ3の一例である画像データ(入力画像)が、センサ2(図1)から入力され、その入力画像は、処理領域設定部10001、定常性設定部10002、実世界推定部10003、画像生成部10004、および画像表示部10005に供給される。
【1176】
処理領域設定部10001は、入力画像について、処理領域を設定し、その処理領域を特定する処理領域情報を、定常性設定部10002、実世界推定部10003、および画像生成部10004に供給する。
【1177】
定常性設定部10002は、処理領域設定部10001から供給される処理領域情報から、入力画像における処理領域を認識し、その処理領域の画像データにおいて欠落した実世界1の信号の定常性を設定し、その定常性を表す定常性情報を、実世界推定部10003および画像生成部10004に供給する。
【1178】
実世界推定部10003は、モデル生成部10011、方程式生成部10012、および実世界波形推定部10013から構成され、処理領域内の画像データから、対応する実世界1の信号の定常性に応じて、その実世界1の信号を推定する。
【1179】
即ち、モデル生成部10011は、処理領域設定部10001から供給される処理領域情報から、入力画像における処理領域を認識し、その処理領域を構成する画素と、その処理領域の画像データに対応する実世界1の信号の定常性に応じて、処理領域内の各画素の画素値と実世界1の信号との関係をモデル化したモデルとしての関数を生成し、方程式生成部10012に供給する。
【1180】
方程式生成部10012は、処理領域設定部10001から供給される処理領域情報から、入力画像における処理領域を認識する。さらに、方程式生成部10012は、その処理領域を構成する各画素の画素値を、モデル生成部10011から供給されるモデルとしての関数に代入し、これにより、方程式を生成して、実世界波形推定部10013に供給する。
【1181】
実世界波形推定部10013は、方程式生成部10012から供給される方程式を演算することにより、実世界1の信号の波形を推定する。即ち、実世界波形推定部10013は、方程式生成部10012から供給される方程式を解くことにより、実世界1の信号を近似する近似関数を求め、その近似関数を、実世界1の信号の波形の推定結果として、画像生成部10004に供給する。ここで、実世界1の信号を近似する近似関数には、引数の値にかかわらず、関数値が一定の関数も含まれる。
【1182】
画像生成部10004は、実世界推定部10003で推定された実世界1の信号の波形を表す近似関数と、定常性設定部10002から供給される定常性情報とに基づいて、実世界1の信号により近似した信号を生成する。即ち、画像生成部10004は、処理領域設定部10001から供給される処理領域情報から、入力画像における処理領域を認識し、その処理領域について、実世界推定部10003(の実世界波形推定部10013)から供給される近似関数と、定常性設定部10002から供給される定常性情報とに基づき、実世界1の信号に対応する画像により近似した画像データを生成する。
【1183】
さらに、画像生成部10004は、入力画像と、近似関数に基づいて生成した画像データ(以下、適宜、近似画像ともいう)とを合成し、入力画像の処理領域の部分を、近似画像に置き換えた画像を生成し、その画像を、出力画像として画像表示部10005に供給する。
【1184】
画像表示部10005は、CRT(Cathode Ray Tube)やLCD(Liquid Crystal Display)で構成され、入力画像や、画像生成部10004から供給される出力画像を表示する。
【1185】
なお、画像表示部10005は、1または複数のCRTやLCDで構成することが可能である。画像表示部10005を1つのCRTやLCDで構成する場合には、その1つのCRTやLCDの画面を複数の画面に分割し、ある画面に入力画像を表示するとともに、他の画面に出力画像を表示するようにすることができる。さらに、画像表示部10005を複数のCRTやLCDで構成する場合には、ある1つのCRTやLCDに入力画像を表示するとともに、他のCRTやLCDに出力画像を表示するようにすることができる。
【1186】
また、画像表示部10005は、ユーザI/F10006の出力に応じて、各種の表示を行う。即ち、画像表示部10005は、例えば、カーソルを表示し、ユーザがカーソルを移動するようにユーザI/F10006を操作した場合、その操作に応じて、カーソルを移動させる。また、画像表示部10005は、例えば、ユーザが所定の範囲を選択するようにユーザI/F10006を操作した場合、その操作に応じて、画面上の選択された範囲を囲む枠を表示する。
【1187】
ユーザI/F10006は、ユーザによって操作され、そのユーザの操作に応じて、例えば、処理領域、定常性、または現実世界の信号のうちの少なくとも1つに関連する情報を、処理領域設定部10001、定常性設定部10002、または実世界推定部10003に供給する。
【1188】
即ち、ユーザは、画像表示部10005に表示された入力画像や出力画像を見て、その入力画像や出力画像に対する入力を与えるように、ユーザI/F10006を操作する。ユーザI/F10006は、ユーザの操作に応じて、処理領域、定常性、または現実世界の信号に関連する情報を、処理領域設定部10001、定常性設定部10002、または実世界推定部10003の処理を補助する補助情報として、処理領域設定部10001、定常性設定部10002、または実世界推定部10003に供給する。
【1189】
処理領域設定部10001、定常性設定部10002、または実世界推定部10003は、ユーザI/F10006から補助情報が供給された場合、その補助情報に基づき、処理領域の設定、定常性の設定、または実世界1の信号の推定を、それぞれ行う。
【1190】
但し、処理領域設定部10001、定常性設定部10002、または実世界推定部10003では、補助情報を用いずに、即ち、ユーザによって、ユーザI/F10006が操作されなくても、処理領域の設定、定常性の設定、または実世界1の信号の推定を、それぞれ行うことが可能である。
【1191】
具体的には、処理領域設定部10001では、図30乃至図48で説明したように、図3のデータ定常性検出部101における場合と同様にして、入力画像から、定常領域を検出し、例えば、その定常領域を囲む矩形(長方形)の領域を、処理領域として設定することができる。
【1192】
また、定常性設定部10002では、図49乃至図57で説明したように、図3のデータ定常性検出部101における場合と同様にして、入力画像から、データの定常性を検出し、そのデータの定常性に基づき、対応する実世界1の信号の定常性を設定すること、即ち、例えば、データの定常性を、そのまま実世界1の信号の定常性として設定することができる。
【1193】
さらに、実世界推定部10003では、図58乃至図88で説明したように、図3の実世界推定部102における場合と同様にして、処理領域設定部10001で設定された処理領域の画像データから、定常性設定部10002で設定された定常性に応じて、実世界1の信号を推定することができる。なお、図3では、実世界推定部102において、実世界1の信号の推定に、データの定常性を用いたが、実世界1の信号の推定には、データの定常性に代えて、対応する実世界1の信号の定常性を用いることができる。
【1194】
次に、図112のフローチャートを参照して、図111の信号処理装置4の処理について説明する。
【1195】
まず最初に、ステップS10001において、信号処理装置4は、前処理を行い、ステップS10002に進む。即ち、信号処理装置4は、センサ2(図1)からデータ3として供給される、例えば1フレームまたは1フィールドの入力画像を、処理領域設定部10001、定常性設定部10002、実世界推定部10003、画像生成部10004、および画像表示部10005に供給する。さらに、信号処理部4は、画像表示部10005に、入力画像を表示させる。
【1196】
ステップS10002では、ユーザI/F10006は、ユーザがユーザI/F10006を操作することにより、何らかのユーザ入力があったかどうかを判定する。ステップS10002において、ユーザ入力がなかったと判定された場合、即ち、ユーザが何らの操作も行わなかった場合、ステップS10003乃至S10005をスキップして、ステップS10006に進む。
【1197】
また、ステップS10002において、ユーザ入力があったと判定された場合、即ち、ユーザが、画像表示部10005に表示された入力画像を見て、ユーザI/F10006を操作し、これにより、何らかの指示または情報を表すユーザ入力があった場合、ステップS10003に進み、ユーザI/F10006は、そのユーザ入力が、信号処理装置4の処理の終了を指示する終了指示であるかどうかを判定する。
【1198】
ステップS10003において、ユーザ入力が終了指示であると判定された場合、信号処理装置4は処理を終了する。
【1199】
また、ステップS10003において、ユーザ入力が終了指示でないと判定された場合、ステップS10004に進み、ユーザI/F10006は、ユーザ入力が補助情報であるかどうかを判定する。ステップS10004において、ユーザ入力が補助情報でないと判定された場合、ステップS10005をスキップして、ステップS10006に進む。
【1200】
また、ステップS10004において、ユーザ入力が補助情報であると判定された場合、ステップS10005に進み、ユーザI/F10006は、その補助情報を、処理領域設定部10001、定常性設定部10002、または実世界推定部10006に供給し、ステップS10006に進む。
【1201】
ステップS10006では、処理領域設定部10001は、入力画像について、処理領域を設定し、その処理領域を特定する処理領域情報を、定常性設定部10002、実世界推定部10003、および画像生成部10004に供給し、ステップS10007に進む。ここで、処理領域設定部10001は、直前に行われたステップS10005においてユーザI/F10006から補助情報が供給された場合は、その補助情報を用いて、処理領域の設定を行う。
【1202】
ステップS10007では、定常性設定部10002は、処理領域設定部10001から供給された処理領域情報から、入力画像における処理領域を認識する。さらに、定常性設定部10002は、その処理領域の画像データにおいて欠落した実世界1の信号の定常性を設定し、その定常性を表す定常性情報を、実世界推定部10003に供給して、ステップS10008に進む。ここで、定常性設定部10002は、直前に行われたステップS10005においてユーザI/F10006から補助情報が供給された場合は、その補助情報を用いて、定常性の設定を行う。
【1203】
ステップS10008では、実世界推定部10003は、入力画像における処理領域内の画像データについて、対応する実世界1の信号の定常性に応じて、その実世界1の信号を推定する。
【1204】
即ち、実世界推定部10003では、モデル生成部10011が、処理領域設定部10001から供給される処理領域情報から、入力画像における処理領域を認識するとともに、定常性設定部10002から供給される定常性情報から、処理領域の画像データに対応する実世界1の信号の定常性を認識する。さらに、モデル生成部10011は、入力画像における処理領域を構成する画素と、その処理領域の画像データに対応する実世界1の信号の定常性に応じて、処理領域内の各画素の画素値と実世界1の信号との関係をモデル化したモデルとしての関数を生成し、方程式生成部10012に供給する。
【1205】
方程式生成部10012は、処理領域設定部10001から供給される処理領域情報から、入力画像における処理領域を認識し、その処理領域を構成する入力画像の各画素の画素値を、モデル生成部10011から供給されるモデルとしての関数に代入し、これにより、実世界1の信号を近似する近似関数を求める方程式を生成して、実世界波形推定部10013に供給する。
【1206】
実世界波形推定部10013は、方程式生成部10012から供給される方程式を演算することにより、実世界1の信号の波形を推定する。即ち、実世界波形推定部10013は、方程式生成部10012から供給される方程式を解くことにより、実世界1の信号をモデル化したモデルとしての近似関数を求め、その近似関数を、実世界1の信号の波形の推定結果として、画像生成部10004に供給する。
【1207】
なお、実世界推定部10003においては、モデル生成部10011および方程式生成部10012は、直前に行われたステップS10005においてユーザI/F10006から補助情報が供給された場合は、その補助情報を用いて、処理を行う。
【1208】
ステップS10008の処理後は、ステップS10009に進み、画像生成部10004は、実世界推定部10003(の実世界波形推定部10013)から供給された、実世界1の信号の波形を近似する近似関数に基づいて、実世界1の信号により近似した信号を生成する。即ち、画像生成部10004は、処理領域設定部10001から供給される処理領域情報から、入力画像における処理領域を認識し、その処理領域について、実世界推定部10003から供給された近似関数に基づき、実世界1の信号に対応する画像により近似した画像データである近似画像を生成する。さらに、画像生成部10004は、入力画像の処理領域の部分を近似画像に置き換えた画像を、出力画像として生成し、画像表示部10005に供給して、ステップS10009からS10010に進む。
【1209】
ステップS10010では、画像表示部10005は、画像生成部10004から供給された出力画像を、ステップS10001で表示された入力画像に代えて、またはその入力画像とともに表示し、ステップS10011に進む。
【1210】
ステップS10011では、ユーザI/F10006は、ステップS10002における場合と同様に、ユーザがユーザI/F10006を操作することにより、何らかのユーザ入力があったかどうかを判定し、ユーザ入力がなかったと判定した場合、即ち、ユーザが何らの操作も行わなかった場合、ステップS10011に戻り、何らかのユーザ入力があるまで待つ。
【1211】
また、ステップS10011において、ユーザ入力があったと判定された場合、即ち、ユーザが、画像表示部10005に表示された入力画像や出力画像を見て、ユーザI/F10006を操作し、これにより、何らかの指示または情報を表すユーザ入力があった場合、ステップS10012に進み、ユーザI/F10006は、そのユーザ入力が、信号処理装置4の処理の終了を指示する終了指示であるかどうかを判定する。
【1212】
ステップS10012において、ユーザ入力が終了指示であると判定された場合、信号処理装置4は処理を終了する。
【1213】
また、ステップS10012において、ユーザ入力が終了指示でないと判定された場合、ステップS10013に進み、ユーザI/F10006は、ユーザ入力が補助情報であるかどうかを判定する。ステップS10013において、ユーザ入力が補助情報でないと判定された場合、ステップS10011に戻り、以下、同様の処理が繰り返される。
【1214】
また、ステップS10013において、ユーザ入力が補助情報であると判定された場合、ステップS10005に戻り、上述したように、ユーザI/F10006は、その補助情報を、処理領域設定部10001、定常性設定部10002、または実世界推定部10006に供給する。そして、ステップS10005からS10006に進み、以下、同様の処理が繰り返される。
【1215】
以上のように、図111の信号処理装置4によれば、ユーザの操作に応じて、処理領域設定部10001、定常性設定部10002、または実世界推定部10003の処理を補助する補助情報を、ユーザI/F10006から処理領域設定部10001、定常性設定部10002、または実世界推定部10003に供給し、処理領域設定部10001、定常性設定部10002、または実世界推定部10003において、ユーザI/F10006からの補助情報に基づき、処理領域の設定、定常性の設定、または実世界1の信号の推定を行うので、処理領域設定部10001、定常性設定部10002、または実世界推定部10003の処理精度を向上させ、例えば、ユーザの好みにあった、高画質の出力画像を得ることが可能となる。
【1216】
次に、図111に示した信号処理装置4の各種の応用例について説明する。
【1217】
図113は、図111に示した信号処理装置4の応用例の一実施の形態の構成例を示している。
【1218】
なお、図113は、例えば、一定方向に一定の速さで移動するという定常性を有するデータ3の一例である動きボケが発生した画像データ(以下、適宜、動きボケ画像データと称する)から、実世界1の光信号を推定する信号処理装置4の一実施の形態の構成例を示している。即ち、この信号処理装置4は、例えば、撮影時に被写体(オブジェクト)が動いたことにより、被写体がボケて撮影されてしまった画像(以下、適宜、動きボケ画像と称する)から、そのボケがない画像(以下、適宜、動きボケのない画像と称する)を推定する。従って、図113の実施の形態では、入力画像として、移動しているオブジェクトを撮影することにより得られた動きボケが生じている動きボケ画像が、信号処理装置4に入力される。なお、ここでは、入力画像として、水平方向(左から右方向)に一定の速さ(動き量)で移動しているオブジェクトを撮像して得られる画像を採用する。
【1219】
図113において、処理領域設定部14001、定常性設定部14002、実世界推定部14003、画像生成部14004、画像表示部14005、ユーザI/F14006は、図111の処理領域設定部10001、定常性設定部10002、実世界推定部10003、画像生成部10004、画像表示部10005、ユーザI/F10006にそれぞれ対応しており、基本的には、処理領域設定部10001、定常性設定部10002、実世界推定部10003、画像生成部10004、画像表示部10005、ユーザI/F10006それぞれと同様の処理を行う。さらに、図113において、実世界推定部14003は、モデル生成部14011、方程式生成部14012、実世界波形推定部14013で構成されている。モデル生成部14011、方程式生成部14012、実世界波形推定部14013は、図111のモデル生成部10011、方程式生成部10012、実世界波形推定部10013にそれぞれ対応しており、基本的には、モデル生成部10011、方程式生成部10012、実世界波形推定部10013それぞれと同様の処理を行う。
【1220】
但し、図113においては、ユーザがユーザI/F14006を操作することにより、ユーザI/F14006が出力する補助情報が、処理領域設定部14001のみに供給されるようになっている。
【1221】
即ち、図113では、ユーザは、ユーザI/F14006を操作することにより、画像表示部14005に表示された画像に対して、処理領域とする領域を指示することができるようになっており、ユーザI/F14006は、ユーザが処理領域を指示する操作を行うと、その操作によって指定された領域としての処理領域を表す処理領域指示情報を、処理領域設定部14001に供給する。
【1222】
なお、ユーザI/F14006を操作することにより処理領域を指示する方法としては、例えば、処理領域を囲む矩形によって指示する方法、処理領域をトリム(trim)することによって指示する方法、処理領域の中の任意の1点以上をポインティングすることによって指示する方法などがあるが、ここでは、例えば、ユーザは、処理領域を囲む矩形を、ユーザI/F14006を操作することにより指示することによって、処理領域を指示するものとする。この場合、ユーザI/F14006は、ユーザによって指示された処理領域を囲む矩形の情報としての、例えば、その矩形の頂点の、画像上の座標を、処理領域指示情報として、処理領域設定部14001に供給する。
【1223】
次に、図114のフローチャートを参照して、図113の信号処理装置4の処理について説明する。
【1224】
まず最初に、ステップS14001において、信号処理装置4は、前処理を行い、ステップS14002に進む。即ち、信号処理装置4は、センサ2(図1)からデータ3として供給される、例えば1フレームまたは1フィールドの入力画像を、処理領域設定部14001、定常性設定部14002、実世界推定部14003、画像生成部14004、および画像表示部14005に供給する。さらに、信号処理部4は、画像表示部14005に、入力画像を表示させる。
【1225】
ステップS14002では、ユーザI/F14006は、ユーザがユーザI/F14006を操作することにより、何らかのユーザ入力があったかどうかを判定する。ステップS14002において、ユーザ入力がなかったと判定された場合、即ち、ユーザが何らの操作も行わなかった場合、ステップS14003乃至S14005をスキップして、ステップS14006に進む。
【1226】
また、ステップS14002において、ユーザ入力があったと判定された場合、即ち、ユーザが画像表示部14005に表示された入力画像を見て、ユーザI/F14006を操作し、これにより、何らかの指示または情報を表すユーザ入力があった場合、ステップS14003に進み、ユーザI/F14006は、そのユーザ入力が、信号処理装置4の処理の終了を指示する終了指示であるかどうかを判定する。
【1227】
ステップS14003において、ユーザ入力が終了指示であると判定された場合、即ち、例えば、画像表示部14005に表示された入力画像を見たユーザが、その入力画像の画質に不満を感じず、入力画像に対して信号処理を施さないで良いとして、信号処理装置4の処理を終了するように、ユーザI/F14006を操作した場合、信号処理装置4は処理を終了する。
【1228】
また、ステップS14003において、ユーザ入力が終了指示でないと判定された場合、ステップS14004に進み、ユーザI/F14006は、ユーザ入力が処理領域指示情報であるかどうかを判定する。ステップS14004において、ユーザ入力が処理領域指示情報でないと判定された場合、ステップS14005をスキップして、ステップS14006に進む。
【1229】
一方、ステップS14004において、処理領域指示情報の入力があったと判定された場合、即ち、画像表示部14005に表示された入力画像を見たユーザが、その入力画像の画質に不満を感じ、その不満のある領域を囲む矩形を指示するように、ユーザI/F14006を操作した場合、ステップS14005に進み、ユーザI/F14006は、ユーザがユーザI/F14006を操作することによって指示した不満のある領域を囲む矩形の頂点などの、その矩形を特定する情報を処理領域指示情報として、処理領域設定部14001に供給し、ステップS14006に進む。
【1230】
ステップS14006では、処理領域設定部14001は、ユーザI/F14006から供給された処理領域指示情報に基づいて、処理領域を設定し、その処理領域情報を、定常性設定部14002、実世界推定部14003、および画像生成部14004に供給し、ステップS14007に進む。但し、ユーザI/F14006から処理領域設定部14001に処理領域指示情報が供給されなかった場合(ステップS14002またはステップS14004の処理直後にステップS14006の処理が行われた場合)には、処理領域設定部14001は、所定の処理(例えば、入力画像において動きボケが生じている領域を検出する処理)を行なうことにより、自動的に(処理領域指示情報なしで)処理領域を設定する。
【1231】
ステップS14007では、定常性設定部14002は、処理領域設定部14001から供給された処理領域情報から、入力画像における処理領域を認識する。さらに、定常性設定部14002は、その処理領域の画像データにおいて欠落した実世界1の光信号の定常性を表す情報として、処理領域に表示されたオブジェクトの動き量を設定し、その定常性を表す定常性情報を、実世界推定部14003に供給して、ステップS14008に進む。なお、この動き量は、ユーザがユーザI/F14006を操作して入力しても良い。また、ここでは、説明を簡単にするため、定常性設定部14002は、入力画像において、オブジェクトが水平方向に移動していることを前提として、その動きの大きさだけを表す動き量を定常性情報として設定することとする。但し、定常性情報としては、その他、オブジェクトの動きの大きさと方向を表す動きベクトルを設定することも可能である。
【1232】
ステップS14008では、実世界推定部14003は、処理領域設定部14001から供給された処理領域情報に応じて、入力画像における画像データ(動きボケ画像のデータ)から、対応する実世界1の光信号の動き量に基づいて、その実世界1の光信号(動きボケのない画像)を推定する。
【1233】
即ち、実世界推定部14003では、モデル生成部14011が、処理領域設定部14001から供給される処理領域情報から、入力画像における処理領域を認識するとともに、定常性設定部14002から供給される定常性情報から、処理領域の画像データに対応する実世界1の光信号の動き量、つまり、ここでは、処理領域に表示されたオブジェクトの動き量を認識する。また、モデル生成部14011は、入力画像における処理領域を構成する画素と、その処理領域の画像データに対応する実世界1の光信号の動き量に応じて、センサ2で検出された処理領域内の各画素の画素値と実世界1の光信号との関係をモデル化したモデル(以下、適宜、関係モデルという)を生成し、方程式生成部14012に供給する。
【1234】
方程式生成部14012は、処理領域設定部14001から供給される処理領域情報から、入力画像における処理領域を認識し、その処理領域に応じて、入力画像の各画素の画素値を、モデル生成部14011から供給される関係モデルに代入し、これにより、実世界1の光信号を近似する近似モデルとしての近似関数を求める方程式を生成して、実世界波形推定部14013に供給する。さらに、方程式生成部14012は、処理領域情報に基づいて、近似関数を拘束する拘束条件式を生成し、実世界波形推定部14013に供給する。
【1235】
実世界波形推定部14013は、方程式生成部14012から供給される方程式を演算することにより、実世界1の光信号の波形を推定する。即ち、実世界波形推定部14013は、方程式生成部14012から供給される方程式を解くことにより、実世界1の光信号をモデル化した近似モデルとしての近似関数を求め、実世界1の光信号の波形の推定結果として、画像生成部14004に供給する。
【1236】
なお、以下、このような実世界推定部14003が実行するステップS14008の処理を、「実世界の推定処理」と称する。「実世界の推定処理」の詳細については、図119のフローチャートを参照して後述する。
【1237】
ステップS14008の処理後は、ステップS14009に進み、画像生成部14004は、実世界推定部14003(の実世界波形推定部14013)から供給された、実世界1の光信号の波形を近似する近似関数に基づいて、実世界1の光信号により近似した信号を生成する。即ち、画像生成部14004は、処理領域設定部14001から供給される処理領域情報から、入力画像における処理領域を認識し、その処理領域について、実世界推定部14003から供給される近似関数に基づき、実世界1の光信号により近似した画像(動きボケのない画像)である近似画像を生成する。
【1238】
さらに、画像生成部14004は、入力画像の処理領域の部分を、近似画像(動きボケのない画像)に置き換えた画像を、出力画像として生成し、画像表示部14005に供給して、ステップS14009からS14010に進む。
【1239】
ステップS14010では、画像表示部14005は、画像生成部14004から供給された出力画像を、ステップS14001で表示された入力画像に代えて、またはその入力画像とともに表示し、ステップS14011に進む。
【1240】
ステップS14011では、ユーザI/F14006は、ステップS14002における場合と同様に、ユーザがユーザI/F14006を操作することにより、何らかのユーザ入力があったかどうかを判定し、ユーザ入力がなかったと判定した場合、即ち、ユーザが何らの操作も行わなかった場合、ステップS14011に戻り、何らかのユーザ入力があるまで待つ。
【1241】
また、ステップS14011において、ユーザ入力があったと判定された場合、即ち、ユーザが、画像表示部14005に表示された入力画像や出力画像を見て、ユーザI/F14006を操作し、これにより、何らかの指示または情報を表すユーザ入力があった場合、ステップS14012に進み、ユーザI/F14006は、そのユーザ入力が、信号処理装置4の処理の終了を指示する終了指示であるかどうかを判定する。
【1242】
ステップS14012において、ユーザ入力が終了指示であると判定された場合、即ち、例えば、画像表示部14005に表示された出力画像を見たユーザが、その出力画像の画質に不満を感じず、出力画像に対して信号処理を施さないで良いとして、信号処理装置4の処理を終了するように、ユーザI/F14006を操作した場合、信号処理装置4は処理を終了する。
【1243】
また、ステップS14012において、ユーザ入力が終了指示でないと判定された場合、ステップS14013に進み、ユーザI/F14006は、ユーザ入力が処理領域指示情報であるかどうかを判定する。ステップS14013において、ユーザ入力が処理領域指示情報でないと判定された場合、ステップS14011に戻り、以下、同様の処理が繰り返される。
【1244】
また、ステップS14013において、ユーザ入力が処理領域指示情報であると判定された場合、即ち、画像表示部14005に表示された出力画像を見たユーザが、その出力画像の画質に不満を感じ、その出力画像に対して、新たにその不満のある領域を囲む矩形を指示するように、ユーザI/F14006を操作した場合、ステップS14005に戻り、上述したように、ユーザI/F14006は、ユーザがユーザI/F14006を操作することによって指示した不満のある領域を囲む矩形の頂点を表す処理領域指示情報を、処理領域設定部14001に供給する。そして、ステップS14005からステップS14006に進み、以下、同様の処理が繰り返される。
【1245】
ステップS14005乃至S14013の処理が繰り返されることにより、適切な処理領域が設定され、その結果、ユーザが所望する画質の出力画像を得ることができる。
【1246】
なお、上述した処理では、信号処理装置4は、ユーザにより処理領域が指示されたかどうかを判定し、処理を行うが、ユーザにより定常性に関連する情報が指示されたかどうかを判定して、処理を行うこともできる。この場合、ステップS14005では、定常性設定部14002に、定常性に関連する情報が供給され、ステップS14007において、定常性設定部14002は、その情報に基づいて定常性を設定する。そして、ステップS14005乃至S14013の処理が繰り返されることにより、適切な定常性が設定され、その結果、ユーザが所望する画像の出力画像を得ることができる。ここで、定常性に関連する情報としては、例えば、入力画像において移動しているオブジェクトの動き量を表すユーザI/F14006の操作量などを採用することができる。
【1247】
以上のように、図113の信号処理装置4では、入力画像に対する処理結果としての出力画像をユーザに提示し、その出力画像から新たな処理領域や定常性を指示してもらい、その処理領域や定常性に基づいて、再度処理を行うようにしたので、ユーザの好みにあった、高画質の出力画像を、容易に得ることができる。つまり、信号処理装置4は、入力画像に対する処理結果として出力画像をユーザに提示する。一方、ユーザは、その出力画像の画質を認識し、所望の画質の画像または所望の画質に近い画像であるかどうかを判断して、信号処理装置4にフィードバックする。そして、信号処理装置4は、そのユーザからのフィードバックを踏まえ、再度、入力画像を処理し、以下、同様の処理が繰り返される。従って、ユーザの好みにあった、高画質の出力画像を、容易に得ることができる。
【1248】
なお、このように、信号処理装置4において、ユーザからのフィードバックを受けて入力画像に対する処理を行うことは、信号処理装置4が、ユーザと協調しながら処理を行っているということができる。
【1249】
次に、実世界推定部14003の具体的な説明に入る前に、センサ2から検出された各画素の画素値と実世界1の光信号との関係をモデル化した関係モデルについて説明する。
【1250】
図115は、センサ2がCCDで構成される場合の積分効果を説明する図である。
【1251】
図115で示されるように、センサ2の平面上には、複数の検出素子2−1(画素)が配置されている。
【1252】
図115の例では、検出素子2−1の所定の1辺に平行な方向が、空間方向の1方向であるX方向とされており、X方向に垂直な方向が、空間方向の他方向であるY方向とされている。そして、X−Y平面に垂直な方向が、時間方向であるt方向とされている。
【1253】
また、図115の例では、センサ2の各検出素子2−1のそれぞれの空間的な形状は、1辺の長さが1の正方形とされている。そして、センサ2のシャッタ時間(露光時間)が1とされている。
【1254】
さらに、図115の例では、センサ2の所定の1つの検出素子2−1の中心が、空間方向(X方向とY方向)の原点(X方向の位置x=0、およびY方向の位置y=0)とされており、また、露光時間の中間時刻(露光時間を2等分する時刻)が、時間方向(t方向)の原点(t方向の位置t=0)とされている。
【1255】
この場合、空間方向の原点(x=0,y=0)にその中心が存在する検出素子2−1は、X方向に-0.5乃至0.5の範囲、Y方向に-0.5乃至0.5の範囲、およびt方向に-0.5乃至0.5の範囲で実世界1の光信号を表す光信号関数F(x,y,t)を積分し、その積分値を画素値Pとして出力することになる。
【1256】
即ち、空間方向の原点にその中心が存在する検出素子2−1から出力される画素値Pは、次の式(137)で表される。
【1257】
【数137】
・・・(137)
【1258】
その他の検出素子2−1も同様に、対象とする検出素子2−1の中心を空間方向の原点とすることで、式(137)で示される画素値Pを出力することになる。
【1259】
このように、センサ2から出力される画素値Pは、光信号関数F(x,y,t)を時空間方向に積分(混合)した値となる。以下、センサ2の空間積分(空間方向の積分)による、光信号関数F(x,y,t)の空間方向の混合を空間混合と称する。また、センサ2の時間積分(時間方向の積分)による、光信号関数F(x,y,t)の時間方向の混合を時間混合と称する。
【1260】
次に、センサ2の積分効果により発生する動きボケを、図116、図117A乃至図117C、および図118A乃至図118Cを参照して説明する。この例において、センサ2から出力される画像データには、空間混合がないものとする。即ち、実世界1の光信号のうちの1画素(センサ2の検出素子)に対応する部分には、同一レベルの光信号が空間的に一様に分布するものとする。
【1261】
図116は、センサ1で撮影される実世界1の光信号としての被写体(オブジェクト)が水平方向(X方向)に一定の速さで動いているという定常性を有する場合の、その動きの動き量を説明する図である。
【1262】
図116において、X方向とt方向は、センサ2のX方向とt方向(図115)を表している。また、露光開始時刻を、t方向の原点(t方向の位置t=0)とし、露光開始時点での被写体のX方向のある位置をX方向の原点(X方向の位置X=0)とする。
【1263】
被写体が水平方向(X方向)に一定速度で移動している場合、時刻tと、被写体のX方向の位置との関係は、図116において、点線で示す直線で表される。なお、この点線の直線の傾きが、被写体が移動する速さを表す。
【1264】
ここで、いまの場合、図116に実線で示すように、被写体は、ある時間Δtは静止し、その後無限小の時間で1画素分だけ移動することを繰り返すことにより、等価的に、1/Δtという一定の速さで移動しているものとする。
【1265】
以上のように、実世界1の光信号のうちの1画素に対応する部分が一定レベルであり、かつ、その動きが1画素単位で行われると仮定することにより、センサ2の積分効果によって生じる空間混合と時間混合のうち、空間混合は生じなくなるので、時間混合だけを考えることができる。ここでは、説明を簡単にするため、センサ2の積分効果によって生じる時間混合のみに起因する動きボケを対象として説明を行う。
【1266】
ここで、動き量は、例えば、被写体が露光時間内に横切るセンサ2の画素数で表すこととする。図116において、例えば、露光時間が5Δtであるとすると、露光時間内に被写体が動く画素数は5であり、従って、動き量も5となる。
【1267】
図117A乃至図117Cは、露光時間において被写体(オブジェクト)がX方向に動き量5で等速で移動する場合の光信号関数F(x,y,t) の引数yとtを固定としたX断面波形F(x)、即ち、処理領域のある水平ラインに射影される光信号関数F(x,y,t)のX断面波形F(x)を近似した近似関数f(x)を説明する図である。
【1268】
図117A乃至図117Cの例では、処理領域のX方向の画素数(水平ラインの画素数)は10である。
【1269】
図117A乃至図117Cにおいて、X方向は、センサ2のX方向(図115)を表している。また、処理領域の左端の画素のX方向の中心が、X方向の原点(X方向の位置x=0)とされている。
【1270】
図117Aは、露光開始時点での近似関数f(x)とセンサ2のX方向の位置の関係を示している。即ち、図117Aの近似関数f(x)は、以下の式(138)で表される。
【1271】
【数138】
・・・(138)
【1272】
なお、ここでは、上述したように、近似関数f(x)によって近似される実世界1の光信号の1画素に対応する部分には、同一レベルの光信号が空間的に一様に分布するものとしているので、式(138)において、Q0乃至Q9はそれぞれ一定値である。
【1273】
ここで、いまの場合、被写体は動き量5で等速で動いている。従って、例えば、露光時間を1とすると、被写体が、前回1画素動いてから次に1画素動くまでの時間は、露光時間/動き量、即ち1/5となる。
【1274】
従って、露光開始時刻を0とすると、時刻1/5には、近似関数f(x)とセンサ2のX方向の位置の関係は、図117Bに示すようになる。即ち、近似関数f(x)は、図117Aに示した露光開始時刻における状態から、X方向(左から右方向)に1画素分ずれた関数となる。従って、このときの近似関数f(x)は、以下の式(139)で表される。
【1275】
【数139】
・・・(139)
【1276】
同様に被写体がX方向に1画素単位で移動していき、例えば、時刻4/5には、近似関数f(x)とセンサ2のX方向の位置の関係は、図117Cに示すようになる。即ち、被写体は、時刻4/5には、X方向に4画素移動しているので、近似関数f(x)は、図117Aの状態から、X方向に4画素分ずれた関数となる。従って、このときの近似関数f(x)は、以下の式(140)で表される。
【1277】
【数140】
・・・(140)
【1278】
ここで、図115で上述したように、センサ2から得られる画素値は、露光開始時刻における実世界1の光信号から、露光終了時刻における実世界1の光信号までが積分された値である。換言すると、画素値は、露光開始時刻における光のレベルから、露光終了時刻における光のレベルまでが時間的に混合されたレベルに対応する値である。
【1279】
従って、実世界1の光信号のうちの1画素(センサ2の検出素子)に対応する部分が、同一レベルの光信号が時間的に一様に分布する部分ではなく、例えば、被写体が動いた場合のように、時間によって異なるレベルの光信号のそれぞれが分布する部分である場合、その部分は、センサ2により検出されると、センサ2の積分効果により、異なる光のレベルが時間的に混合されて(時間方向に積分(加算)されて)1つの画素値となってしまう。このように、被写体が動いたり、被写体の撮影時に手ぶれが生じた場合などにおいて、露光開始時刻における画像(実世界1の光信号)が時間によって異なるレベルである画素からなる領域を、ここでは、時間混合領域と称する。そして、被写体が動いたことにより生じる時間混合領域を、動きボケ領域と称する。従って、動きボケ領域の画素値は、露光開始時刻における被写体の画像(実世界1の光信号)から、露光終了時刻における被写体の画像(実世界1の光信号)が時間的に積分された値となる。
【1280】
図113の実世界推定部14003は、動きボケ領域の画素値から、実世界1の光信号を推定する。即ち、実世界推定部14003は、動きボケ領域の画素値が、実世界1の光信号を近似する近似関数f(x)を、露光開始時刻から露光終了時刻までの間、動き量に対応して移動しながら積分することにより得られた値であるとして、動きボケ領域の画素値と近似関数f(x)の関係をモデル化した関係モデルを生成し、その関係モデルに基づいて近似関数f(x)を求める。
【1281】
図118A乃至図118Cは、動きボケ領域のセンサ2から出力される画像データと、実世界1の光信号を表す光信号関数F(x,y,t)のy,tを固定したX断面波形F(x)、即ち、処理領域のある水平ラインに射影される光信号関数F(x,y,t)のX断面波形F(x)を近似する近似関数f(x)との関係(関係モデル)を説明する図である。
【1282】
図118A乃至図118Cにおいて、X方向とt方向は、センサ2のX方向とt方向(図115)を表している。領域14031は、センサ2のX方向に並ぶ複数の画素に対応する領域の一部を表している。ここでは、領域14031は、10個の小領域(縦長の長方形の領域)に区分されており、この小領域のそれぞれは1つの画素に相当する。
【1283】
即ち、領域14031は、処理領域のある水平ラインに相当する。従って、領域14031の小領域の数、即ち、画素数は、処理領域設定部14001により設定された処理領域のX方向の画素数(水平ラインの画素数)に一致する。また、領域14031のうち、右側の9個の画素からなる領域14032は、ユーザにより処理領域指示情報として指示された不満のある領域を囲む矩形の領域の水平ラインに相当する。即ち、処理領域設定部14001は、処理領域指示情報で表す領域に対して、その左隣の1個の画素を加えた領域を処理領域として設定する。領域14031を構成する小領域のX方向の一辺の長さは、センサ2の1画素のX方向の長さ(画素幅)を表し、t方向の1辺の長さは、センサ2の露光時間を表す。
【1284】
図118Aは、センサ2の領域14031に対して、近似関数f(x)で表される実世界1の光信号が静止している場合に、その光信号が入力されたときのセンサ2から出力される画像データ(画素値)Q0乃至Q9の例を示している。
【1285】
静止している実世界1の光信号は、式(138)乃至式(140)のうちのいずれかの近似関数f(x)で表される。いまの場合、露光時間が1であり、さらに、式(137)から、画素値は、近似関数f(x)を露光時間である1に亘って積分することにより得られる。いま、x0乃至x9それぞれを、領域14031の10個の画素のX方向の中心の座標値とする。但し、x0<x1<・・・<x9の関係があるとし、また、いまの場合、画素のX方向の幅を1としているので、式x1=x0+1,x2=x1+1・・・,x9=x8+1の関係がある。この場合、近似関数f(x)は、式(141)で表すことができる。
【1286】
【数141】
・・・(141)
【1287】
実世界1の光信号が静止している場合、領域14031の10個の画素において得られる画素値は、式(137)から、式(141)の近似関数f(x)を、露光時間に亘って積分した値となる。いまの場合、露光時間は1であるから、領域14031の10個の画素で得られる画素値は、図118Aに示すように、式(141)の近似関数f(x)の値であるQ0乃至Q9と同一の値となる。従って、Q0乃至Q9を、実世界1の光信号が静止している場合の領域14031の10個の画素の画素値とし、この画素値が得られる画素には動きボケが生じていないので、以下、適宜、動きボケのない画素値と称する。
【1288】
図118Bは、近似関数f(x)で表される実世界1の光信号が、ある動き量vで水平方向に移動しているという定常性を有している場合に、センサ2の領域14031に対して、近似関数f(x)で表される信号が入力されたときのセンサ2から出力される画像データの例を示している。ここで、P0乃至P9は、領域14031内のX方向の中心の座標が、それぞれx0,x1・・・,x9である10個の画素のセンサ2から得られる画素値である。
【1289】
露光時間における動き量vが、例えば5であるとき、領域14032の画素値P1乃至P9は、動き量vと動きボケのない画素値Q0乃至Q9を用いて、図118Cで示すように表すことができる。なお、センサ2のX方向に並ぶ複数の画素のうち、領域14032よりX方向の位置が負方向の位置を中心とする画素からなる領域(図中、領域14032より左側の領域)は、平坦な画像の領域とし、その領域の各画素の動きボケのない画素値は、全て、領域14301の左端の画素の動きボケのない画素値Q0に等しいものとする。
【1290】
実世界1の光信号が、図116および図117A乃至図117Cで説明したように、水平方向に一定速度で移動している場合、画素値P1乃至P9の対応するセンサ2の画素には、1/v(図118Cの場合1/5)の時間毎に、その画素の位置における、近似関数f(x)で表される光信号に対応する電荷が蓄積される。
【1291】
例えば、X方向の中心の座標値がx4の画素には、露光開始時刻を0とすると、まず初めに、時刻0から時刻1/vまでの間、その画素の位置における近似関数f(x)で表される光信号に対応する電荷が蓄積される。即ち、このとき蓄積される電荷による画素値は、露光時間が1のときの画素値Q4の1/vである、Q4/vとなる。次に、時刻1/vから時刻2/vまでの間、x4の画素には、その画素の位置における近似関数f(x)で表される光信号に対応する電荷が蓄積される。このとき、実世界1の光信号が動き量vで水平方向に移動しているという定常性により、近似関数f(x)は、X方向に1画素分ずれるので、x4の画素に蓄積される電荷による画素値は、Q3/vとなる。
【1292】
同様に、x4の画素には、時刻2/vから時刻3/vまでの間、画素値Q2/vに対応する電荷が蓄積され、時刻3/vから時刻4/vまでの間、画素値Q1/vに対応する電荷が蓄積される。さらに、x4の画素には、時刻4/vから時刻5/v(図118Cの場合、時刻1、即ち、露光終了時刻)までの間、画素値Q0/vに対応する電荷が蓄積される。従って、最終的には、X方向の中心の座標値がx4の画素の画素値P4は、これらの画素値の和(積分)、即ち、Q4/v+Q3/v+Q2/v+Q1/v+Q0/vとなる。
【1293】
X方向の中心の座標値がx4の画素以外の画素も同様に考えられるので、領域14032の画素の画素値P1乃至P9は、動き量vと動きボケのない画素値Q0乃至Q9を用いて、以下の式(142)で表される。つまり、処理領域内の各画素の画素値Piは、動きボケのない画素値Qiが、水平方向への動き量vでの移動を表す動きベクトルに対応して移動しながら積分(足し算)された値となる。
【1294】
【数142】
・・・(142)
【1295】
ここで、センサ2のX方向に並ぶ複数の画素のうち、ユーザにより不満があるとして、矩形によって指示された領域14032の左隣の画素は、動きボケのない画像である確率が高い。即ち、ユーザは、不満のある領域を囲む矩形によって不満領域を指示する場合、左端から不満領域の全体を囲む確率が高い。従って、ユーザは、不満のない領域を境界部分に含む領域を、不満領域として指示することが多く、ユーザによって指示された領域14032の左側の画素は、不満のない領域の画素、つまり動きボケのない画素であるか、または、ユーザが認識できないほど、微小な動きボケが生じている画素である確率が高い。以上から、センサ2が出力する領域14031の左端の画素の画素値P0と、その画素の動きボケのない画素値Q0との関係は、以下の式(143)で表すことができる。
【1296】
【数143】
・・・(143)
【1297】
式(143)によれば、センサ2が出力する画素値P0と、動きボケのない画素値Q0とは等しいとすることができる。従って、画素値P1乃至P9は、式(142)における動きボケのない画素値Q0を、センサ2が出力する画素値P0に置き換えた、以下の式(144)で表すことができる。
【1298】
【数144】
・・・(144)
【1299】
式(144)においては、動きボケのない画素値Q1乃至Q9の数と、方程式の数とが等しいので、式(144)は連立方程式として解くことができ、動きボケのない画素値Q1乃至Q9、即ち、実世界1を近似する近似関数f(x)を求めることができる。
【1300】
但し、連立方程式により、動きボケのない画素値Q1乃至Q9を求める場合、画素値P0乃至P9が、ノイズ等によって、真値からはずれた値となっているときには、動きボケのない画素値Q1乃至Q9も、そのノイズ等の影響を受けて、真値からはずれた値となることが懸念される。そこで、ここでは、動きボケのない画素値Q1乃至Q9を求めるにあたって、動きボケのない画素値Q1乃至Q9を拘束する何らかの拘束条件式を与えることとする。この場合、拘束条件式により、方程式の数が増え、変数である動きボケのない画素値Q1乃至Q9の数よりも、方程式の数の方が多くなる。このような数の多い方程式を、例えば、最小二乗法などによって解くことにより、その方程式における画素値P0乃至P9に含まれるノイズ等が、最小二乗法により求められる動きボケのない画素値Q1乃至Q9に影響することを抑制することができる。
【1301】
図113の実世界推定部14003は、処理領域の水平ラインの画素数と動き量vに応じて、処理領域内の各画素の画素値Piと動きボケのない各画素の画素値Qiとの関係をモデル化した式(144)を関係モデルとして生成し、その関係モデルと、動きボケのない画素値Q1乃至Q9を拘束する拘束条件に基づいて、動きボケのない画素値、即ち、実世界1の光信号を近似する近似モデルとしての近似関数f(x)を求める。
【1302】
なお、以下においては、説明を簡単にするため、処理領域は矩形であり、また、処理領域における被写体(オブジェクト)は、X方向(左から右方向)に、一定の速さ(動き量v)で移動しているものとする。
【1303】
次に、図119のフローチャートを参照して、実世界推定部14003(図113)の実世界の推定処理(図114のステップS14008の処理)について詳細に説明する。
【1304】
ステップS14031において、モデル生成部14011は、関係モデルを生成する。即ち、モデル生成部14011が、処理領域設定部14001から供給される処理領域情報から、入力画像における処理領域を認識するとともに、定常性設定部14002から供給される定常性情報から、処理領域の画像データに対応する動き量を認識する。さらに、モデル生成部14011は、入力画像における処理領域について、その処理領域を構成する画素と、その処理領域の画像データに対応する動き量に応じて、センサ2で検出された処理領域の各水平ラインの画素の画素値と、実世界1の光信号を近似する近似モデルで表される動きボケのない画像との関係をモデル化した関係モデルを、処理領域の水平ラインごとに生成し、これにより、処理領域の各水平ラインに対して得られる関係モデルを、方程式生成部14012に供給して、ステップS14031からステップS14032に進む。
【1305】
具体的には、モデル生成部14011は、処理領域の水平ラインの画素数と動き量に応じて、図118A乃至図118Cで説明した、センサ2で検出された各画素の画素値Piと、動きボケのない画素値Qiとの関係を表す式を関係モデルとして生成する。例えば、処理領域の画素数が10であり、動き量vが5である場合、関係モデルとして、上述した式(144)が生成される。
【1306】
ステップS14032では、方程式生成部14012は、方程式生成処理を行なう。即ち、処理領域設定部14001から供給される処理領域情報から、入力画像における処理領域を認識し、その処理領域の各画素の画素値Piを、モデル生成部14011から供給される、その処理領域の各水平ラインに対して得られた関係モデルに代入し、これにより、実世界1の光信号を近似する近似関数f(x)(で表される、動きボケのない画素値Qi)を求める方程式(モデル方程式)を生成する。
【1307】
さらに、方程式生成部14012は、処理領域設定部14001から供給される処理領域情報から認識される処理領域における実世界1の光信号を近似する近似関数f(x)を拘束する拘束条件式を生成する。
【1308】
即ち、処理領域の各画素の画素値Piに含まれるノイズ等が動きボケのない画素値Qに影響することを抑制するため、実世界推定部14003(の実世界波形推定部14013)は、動きボケのない画素値Qiを、例えば、最小二乗誤差最小規範によって求める。そして、最小二乗誤差最小規範を採用する場合には、求めるべき変数よりも式(方程式)の数が多くなければならない。
【1309】
一方、式(144)の関係モデルにおいては、求めたい変数である動きボケのない画素値Qiと方程式との数が等しい。そこで、方程式の数を増やすために、方程式生成部14012は、近似関数f(x)で表される動きボケのない画素値Qiを拘束する拘束条件を導入し、その拘束条件を表す式を、動きボケのない画素値Qiを求めるための方程式として採用する。即ち、方程式生成部14012は、例えば、隣接する画素の、近似関数で表される動きボケのない画素値の差が小さい(空間相関がある)という拘束条件を表す拘束条件式を、処理領域の水平ラインごとに生成する。そして、方程式生成部14012は、処理領域の水平ラインごとに生成したモデル方程式と拘束条件式を実世界波形推定部14013に供給し、ステップS14032からステップS14033に進む。
【1310】
なお、以下、このような方程式生成部14012が実行するステップS14032の処理を、「方程式生成処理」と称する。「方程式生成処理」の詳細については、図121のフローチャートを参照して後述する。
【1311】
ステップS14033において、実世界波形推定部14013は、方程式生成部14012から供給される、処理領域の水平ラインごとに生成したモデル方程式と拘束条件式を解くことにより、実世界1の光信号の波形を推定、即ち、近似関数f(x)で表される動きボケのない画素値Qiを求め、その画素値Qiを、画像生成部14004に供給する。
【1312】
次に、図120は、図113の方程式生成部14012の詳細構成例を示している。
【1313】
図120では、方程式生成部14012は、モデル方程式生成部14051、拘束条件式生成部14052、最小二乗法演算部14053、差分演算部14054、絶対値演算部14055、重み決定部14056、および正規方程式生成部14057から構成されている。
【1314】
図120に構成を示す方程式生成部14012には、モデル生成部14011から、処理領域の各水平ラインに対して得られる、処理領域の各画素の画素値(動きボケ画像の画素値)Piと、動きボケのない画素値Qiとの関係をモデル化した関係モデルが入力され、モデル方程式生成部14051に供給される。また、方程式生成部14012には、入力画像が、センサ2(図1)から入力され、その入力画像は、モデル方程式生成部14051に供給される。さらに、方程式生成部14012には、処理領域情報が、処理領域設定部14001から入力され、その処理領域情報が、モデル方程式生成部14051と拘束条件式生成部14052に供給される。
【1315】
モデル方程式生成部14051は、処理領域情報から入力画像の処理領域を認識し、モデル生成部14011から供給された関係モデルに、センサ2で検出された入力画像の処理領域の画素値を代入して、モデル方程式を生成する。そして、モデル方程式生成部14051は、最小二乗法演算部14053と正規方程式生成部14057に、そのモデル方程式を供給する。なお、モデル生成部14011で得られる関係モデルは、例えば、式(144)の動き量vに具体的な値が代入されたものであり、モデル方程式生成部14051で得られるモデル方程式は、さらに、式(144)の画素値P0乃至P9に具体的な値が代入されたものである。
【1316】
拘束条件式生成部14052は、処理領域情報に基づいて、処理領域内の各水平ラインの画素の動きボケのない画素値Qiに対して、所定の拘束条件を与える拘束条件式を生成し、その拘束条件式を最小二乗法演算部14053と正規方程式生成部14057に供給する。
【1317】
最小二乗法演算部14053は、モデル方程式生成部14051から供給されたモデル方程式と、拘束条件式生成部14052から供給された拘束条件式から、最小二乗誤差最小規範により、近似関数f(x)、即ち、処理領域内の各画素の動きボケのない画素値Qiを求め、その画素値Qiを差分演算部14054に供給する。
【1318】
差分演算部14054と絶対値演算部14055は、最小二乗法演算部14053で求められた動きボケのない画素値Qiの画素のアクティビティを求める。
【1319】
即ち、差分演算部14054は、最小二乗法演算部14053から供給された処理領域内の各画素について、その画素の動きボケのない画素値を、その画素の右に隣接する画素の動きボケのない画素値から減算することにより、画素値の差分を求め、その差分を絶対値演算部14055に供給する。
【1320】
絶対値演算部14055は、差分演算部14054から供給された、処理領域内の各画素についての動きボケのない画素値の差分の絶対値を計算し、その絶対値(以下、適宜、差分絶対値と称する)を、画素のアクティビティとして、重み決定部14056に供給する。
【1321】
重み決定部14056は、絶対値演算部14055から供給された処理領域の画素のアクティビティとしての差分絶対値から、拘束条件式に付ける重みを決定し、その重みを正規方程式生成部14057に供給する。
【1322】
正規方程式生成部14057は、拘束条件式生成部14052から供給された拘束条件式に、重み決定部14056から供給された重みを付ける。さらに、正規方程式生成部14057は、その重みを付けた拘束条件式と、モデル方程式生成部14051から供給されたモデル方程式とを合わせて1つの正規方程式を生成し、実世界波形推定部14013に供給する。
【1323】
次に、図121のフローチャートを参照して、方程式生成部14012(図120)の方程式生成処理(図119のステップS14032の処理)について詳細に説明する。
【1324】
ステップS14051において、モデル方程式生成部14051は、モデル生成部14011から関係モデルを取得し、ステップS14052に進む。ステップS14052において、モデル方程式生成部14051は、センサ2から入力画像を取得するとともに、処理領域設定部14001から処理領域情報を取得する。そして、モデル方程式生成部14051は、その入力画像と処理領域情報から、入力画像の処理領域における各水平ラインの画素の画素値を認識し、その画素値を、モデル生成部14011から取得した、各水平ラインについて生成された関係モデルに代入することにより、処理領域の各水平ラインについてモデル方程式を生成する。さらに、モデル方程式生成部14051は、そのモデル方程式を最小二乗法演算部14053と正規方程式生成部14057に供給する。例えば、モデル方程式生成部14051が、上述した式(144)で表される関係モデルを、モデル生成部14011から取得した場合、式(144)の画素値P0乃至P9に入力画像の画素値を代入することで、モデル方程式を生成する。
【1325】
ステップS14052の処理後は、ステップS14053に進み、拘束条件式生成部14052は、処理領域設定部14001から供給された処理領域に基づいて、その処理領域の各水平ラインごとに、拘束条件式を生成し、その拘束条件式を最小二乗法演算部14053と正規方程式生成部14057に供給して、ステップS14054に進む。即ち、拘束条件式生成部14052は、各水平ラインの隣接画素どうしの、近似関数で表される動きボケのない画素値の差は小さいという拘束条件を表す拘束条件式を、処理領域の水平ラインの画素数に応じて生成する。例えば、処理領域のある水平ラインの画素数が10個あり、その動きボケのない画素値が、処理領域の左から順に、Q0乃至Q9であった場合、拘束条件式は、例えば、以下の式(145)で表される。
【1326】
【数145】
・・・(145)
【1327】
なお、Wは、拘束条件式の強さを表す重みを表している。即ち、式(145)では、重みWが大きい場合、隣接画素の差分Qi+1−Qiが小さい必要があり、重みWが小さい場合、隣接画素の差分Qi+1−Qiが小さい必要がない。式(145)においては、隣接画素の差分Qi+1−Qiが小さいという拘束条件式が、処理領域の全ての画素において同じ強さを有している。
【1328】
ステップS14054において、最小二乗法演算部14053は、モデル方程式生成部14051から供給された処理領域の水平ラインごとのモデル方程式と、拘束条件式生成部14052から供給された処理領域の水平ラインごとの拘束条件式から正規方程式を生成し、その正規方程式を最小二乗誤差最小規範で解くことにより、処理領域内の各水平ラインの画素の動きボケのない画素値を求める。ここで求められる動きボケのない画素値は、拘束条件式の重みを決定するための一時的な、いわば仮の動きボケのない画素値であり、以下、適宜、仮画素値と称する。そして、最小二乗法演算部14053は、この仮画素値を差分演算部14054に供給し、ステップS14054からステップS14055に進む。
【1329】
ステップS14055およびS14056では、仮画素値が求められた画素のアクティビティが求められる。
【1330】
即ち、ステップS14055では、差分演算部14054は、最小二乗法演算部14053から供給された処理領域内の各水平ラインについて、その水平ラインにおける隣接画素どうしの仮画素値の差分を求め、その差分を絶対値演算部14055に供給する。例えば、最小二乗法演算部14053から供給された処理領域のある水平ラインの仮画素値が、その左から順にQ1乃至Q9であった場合、差分演算部14054は、隣接画素どうしの仮画素値の差分Kiを、例えば以下の式(146)にしたがって求める。
【1331】
【数146】
・・・(146)
【1332】
なお、式(146)において、Wは、仮画素値を求めるのに用いられた式(145)の重み(以下、適宜、仮重みという)である。式(146)に示すように、隣接画素の仮画素値の差分Kiは、処理領域の水平方向の画素数(式(146)の場合、10)より2少ない数だけ生成される。
【1333】
ステップS14055の処理後は、ステップS14056に進み、絶対値演算部14055は、差分演算部14054から供給された隣接画素の差分Kiの絶対値|Ki|を求め、その差分絶対値|Ki|を重み決定部14056に供給して、ステップS14057に進む。
【1334】
なお、ここでは、仮画素値が求められた画素のアクティビティとして、その画素と、その画素の右隣の画素との差分絶対値が、上述したように求められるが、画素のアクティビティとしては、その他、例えば、画素値の差分の差分の絶対値や、分数などを採用することができる。
【1335】
ステップS14057では、重み決定部14056は、絶対値演算部14055から供給された各画素のアクティビティとしての差分絶対値|Ki|から、その画素に対応する拘束条件式、即ち、その画素とその右隣の画素との画素値どうしの差が小さいという拘束条件を表す拘束条件式に付ける新たな重みを決定し、正規方程式生成部14057に供給する。例えば、上述した式(146)で表される差分絶対値|Ki|が、絶対値演算部14055から重み決定部14056に供給された場合、新たな重みは、例えば以下の式(147)にしたがい、絶対値|Ki|の逆数とされる。
【1336】
【数147】
・・・(147)
【1337】
なお、式(147)において、重みWi(i=1,2,・・・8)は、仮画素値がQiの画素と、その画素の右隣の仮画素値Qi+1に対応する画素との差分が小さいことを表す拘束条件式に対する重みを表す。式(147)では、差分絶対値|Ki|の逆数を重みWiに設定する。従って、差分絶対値|Ki|が大きい場合には重みWiは小さくなり、差分絶対値|Ki|が小さい場合には重みWiは大きくなる。
【1338】
このように、仮画素値に基づいて、差分絶対値|Ki|の逆数を新たな重みWiに決定することにより、方程式生成部14012では、動きボケのない画像のエッジ部分の画素に対応する拘束条件式には、小さな重みが付されるように、また、平坦部分の画素に対応する拘束条件式には、大きな重みが付されるように、重みが変更される。従って、エッジ部分については、そのエッジを維持するような動きボケのない画素値を求めることが可能となり、平坦部分については、ノイズ等による画素値の変動を抑制、つまり、ノイズを抑制した動きボケのない画素値を求めることが可能となる。
【1339】
即ち、方程式生成部14012は、処理領域内の各水平ラインの画素に対して、その右に隣接する画素との動きボケのない画素値どうしの差は小さいという拘束条件を与える拘束条件式に、同一の重みを付して、仮画素値を求め、さらに、処理領域の各水平ラインの画素について、その右隣の隣接画素との仮画素値どうしの差分絶対値を求める。そして、方程式生成部14012は、隣接画素との仮画素値どうしの差分絶対値が大きい画素は、動きボケのない画像のエッジ部分であり、隣接画素の仮画素値の差分絶対値が小さい画素は、動きボケのない画像の平坦部分であるとして、動きボケのない画像のエッジ部分の画素に対応する拘束条件式に対しては小さな重みを付け、動きボケのない画像の平坦部分に対する、隣接画素の動きボケのない画素値の差は小さいという拘束条件式に対しては大きな重みを付ける。従って、このような重み付けが行われた拘束条件式によれば、エッジ部分の画像においてはエッジを維持し、平坦部分の画像においてはノイズを抑制(平坦さを維持)することができる。
【1340】
なお、ここでは、絶対値|Ki|の逆数を重みWiとして採用することとしたが、重みWiは、その他の絶対値|Ki|を引数とする関数によって求めることが可能である。
【1341】
ステップS14057の処理後は、ステップS14058に進み、正規方程式生成部14057は、拘束条件式生成部14052から供給された拘束条件式に対して、重み決定部14056から供給された重みを付ける。
【1342】
例えば、上述した式(145)で表される拘束条件式が、拘束条件式生成部14052から正規方程式生成部14057に供給され、上述した式(147)で表される重みが、重み決定部14056から正規方程式生成部14057に供給された場合、正規方程式生成部14057は、式(145)の重みWを、式(147)の重みWiに変更した、例えば、式(148)の拘束条件式を生成する。
【1343】
【数148】
・・・(148)
【1344】
ここで、式(148)では、隣接画素の動きボケのない画素値どうしの差は小さいという拘束条件式に対する重みWi、つまり拘束条件の強さが、画素毎に異なっている。即ち、画素値Qiの画素を注目画素として、その注目画素とその右隣の画素との動きボケのない画素値の差は小さいという拘束条件式を、注目画素に対応する拘束条件式というものとすると、式(148)では、注目画素に対応する拘束条件式の強さが画素毎に異なっている。
【1345】
正規方程式生成部14057は、重みが式(148)に示したように変更された拘束条件式と、モデル方程式生成部14051から供給されたモデル方程式とを合わせて、処理領域の水平ラインごとに正規方程式を生成し、その正規方程式を実世界波形推定部14013に供給してリターンする。
【1346】
この後、実世界波形推定部14013は、方程式生成部14012から供給された正規方程式を最小二乗誤差最小規範で解くことにより、処理領域内の各水平ラインの画素の動きボケのない画素値Qiを求める。
【1347】
なお、上述した処理では、処理領域内の各画素に対応するアクティビティとして、その画素とその右隣の画素の画素値の差分絶対値を求めたが、その他、例えば、注目している注目画素と、その右隣と左隣の画素それぞれとの画素値の差分絶対値の和なども、その注目画素のアクティビティとして採用することが可能である。
【1348】
また、上述した実世界波形推定処理は、処理領域内の水平方向に並ぶ画素(水平ライン)毎に行なわれる。即ち、実世界波形推定部14013は、水平ライン毎に、処理領域の各画素の動きボケのない画素値を求める。そして、実世界波形推定部14013は、処理領域内の全ての水平ラインの、各画素の動きボケのない画素値を、画像生成部14004に供給する。画像生成部14004は、入力画像における処理領域の各画素の画素値を、動きボケのない画素値に置き換えた画像を、出力画像として生成し、画像表示部14005に供給して、表示する。
【1349】
なお、上述した処理では、入力画像において、オブジェクトは水平方向に動いているとし、動き量を用いて、実世界1の光信号を推定したが、即ち、実世界1の光信号を近似する近似関数f(x)によって表される動きボケのない画素値を求めたが、その他、オブジェクトの動きの大きさと方向を表す動きベクトルを用いて、実世界波形を推定することも可能である。
【1350】
図122は、文字「Mik」が付された物体が右から左へ水平に高速で移動していく瞬間を撮影して得られた入力画像である。図122に示すように、この入力画像は、動きボケにより文字「Mik」等のエッジ部分が鈍っている。
【1351】
図123は、図122に示した入力画像である動きボケ画像を、処理領域内の全ての画素に対応する拘束条件式に対して同一の重みを付けて処理した処理結果である出力画像を示している。図123に示すように、出力画像では、動きボケが除去(低減)され、「Mik」という文字が鮮明になっている。
【1352】
図124は、図122に示した入力画像である動きボケ画像を、図113の信号処理装置4によって処理した処理結果である出力画像を示している。即ち、図124の出力画像は、処理領域内の動きボケのない画像において、エッジ部分、つまり、隣接画素との画素値の差が大きい画素に対応する拘束条件式に対しては小さな重みを、平坦部分、つまり、隣接画素との画素値の差が小さい画素に対応する拘束条件式に対しては大きな重みを付けて、図122の動きボケ画像を処理した処理結果である。
【1353】
図124の出力画像では、図123と同様に、動きボケが除去(低減)され、「Mik」という文字が鮮明になっている。さらに、図124の出力画像では、図123における場合よりもエッジ部分と平坦部分の画質が向上している。
【1354】
図125乃至図127は、それぞれ図122乃至図124に示す画像の文字「Mik」の「i」の部分を拡大した図である。
【1355】
図125に示すように、入力画像には動きボケが生じており、「i」という文字を認識することは困難である。これに対して、図126に示すように、入力画像を、処理領域内の全ての画素に対応する拘束条件式に対して同一の重みを付けて処理した処理結果である出力画像では、動きボケが除去されており、「i」という文字を容易に認識することができる。さらに、図127に示すように、図113の信号処理装置4によって処理した処理結果である出力画像では、「i」という文字の輪郭が図126の場合よりも明確になっている。
【1356】
図128は、図111に示した信号処理装置4の応用例の他の一実施の形態の構成例を示している。
【1357】
なお、図128は、例えば、一定方向に一定の速さで移動するという定常性を有するデータ3の一例である動きボケが発生した画像データ(動きボケ画像データ)から、実世界1の光信号を推定する信号処理装置4の一実施の形態の構成例を示している。即ち、この信号処理装置4は、例えば、撮影時に被写体(オブジェクト)が動いたことにより、被写体がボケて撮影されてしまった画像(動きボケ画像)から、そのボケがない画像(動きボケのない画像)を推定する。従って、図128の実施の形態では、入力画像として、移動しているオブジェクトを撮影することにより得られた動きボケが生じている動きボケ画像が、信号処理装置4に入力される。なお、ここでは、入力画像として、水平方向(左から右方向)に一定の速さ(動き量)で移動しているオブジェクトを撮像して得られる画像を採用する。
【1358】
図128において、処理領域設定部14071、定常性設定部14072、実世界推定部14073、画像生成部14074、画像表示部14075、ユーザI/F14076は、図111の処理領域設定部10001、定常性設定部10002、実世界推定部10003、画像生成部10004、画像表示部10005、ユーザI/F10006にそれぞれ対応しており、基本的には、処理領域設定部10001、定常性設定部10002、実世界推定部10003、画像生成部10004、画像表示部10005、ユーザI/F10006それぞれと同様の処理を行う。さらに、図128において、実世界推定部14073は、モデル生成部14081、方程式生成部14082、実世界波形推定部14083で構成されている。モデル生成部14081、方程式生成部14082、実世界波形推定部14083は、図111のモデル生成部10011、方程式生成部10012、実世界波形推定部10013にそれぞれ対応しており、基本的には、モデル生成部10011、方程式生成部10012、実世界波形推定部10013それぞれと同様の処理を行う。
【1359】
但し、図128においては、ユーザがユーザI/F14076を操作することにより、ユーザI/F14076が出力する補助情報が、処理領域設定部14071のみに供給されるようになっている。
【1360】
即ち、図128では、ユーザは、ユーザI/F14076を操作することにより、画像表示部14075に表示された画像に対して、処理領域とする領域を指示することができるようになっており、ユーザI/F14076は、ユーザが処理領域を指示する操作を行うと、その操作によって指定された領域としての処理領域を表す処理領域指示情報を、処理領域設定部14071に供給する。
【1361】
なお、ユーザI/F14076を操作することにより処理領域を指示する方法としては、例えば、処理領域を囲む矩形によって指示する方法、処理領域をトリム(trim)することによって指示する方法、処理領域の中の任意の1点以上をポインティングすることによって指示する方法などがあるが、ここでは、例えば、ユーザは、処理領域を囲む矩形を、ユーザI/F14076を操作することにより指示することによって、処理領域を指示するものとする。この場合、ユーザI/F14076は、ユーザによって指示された処理領域を囲む矩形の情報としての、例えば、その矩形の頂点の、画像上の座標を、処理領域指示情報として、処理領域設定部14071に供給する。
【1362】
次に、図129のフローチャートを参照して、図128の信号処理装置4の処理について説明する。
【1363】
まず最初に、ステップS14071において、信号処理装置4は、前処理を行い、ステップS14072に進む。即ち、信号処理装置4は、センサ2(図1)からデータ3として供給される、例えば1フレームまたは1フィールドの入力画像を、処理領域設定部14071、定常性設定部14072、実世界推定部14073、画像生成部14074、および画像表示部14075に供給する。さらに、信号処理部4は、画像表示部14075に、入力画像を表示させる。
【1364】
ステップS14072では、ユーザI/F14076は、ユーザがユーザI/F14076を操作することにより、何らかのユーザ入力があったかどうかを判定する。ステップS14072において、ユーザ入力がなかったと判定された場合、即ち、ユーザが何らの操作も行わなかった場合、ステップS14073乃至S14075をスキップして、ステップS14076に進む。
【1365】
また、ステップS14072において、ユーザ入力があったと判定された場合、即ち、ユーザが画像表示部14075に表示された入力画像を見て、ユーザI/F14076を操作し、これにより、何らかの指示または情報を表すユーザ入力があった場合、ステップS14073に進み、ユーザI/F14076は、そのユーザ入力が、信号処理装置4の処理の終了を指示する終了指示であるかどうかを判定する。
【1366】
ステップS14073において、ユーザ入力が終了指示であると判定された場合、即ち、例えば、画像表示部14075に表示された入力画像を見たユーザが、その入力画像の画質に不満を感じず、入力画像に対して信号処理を施さないで良いとして、信号処理装置4の処理を終了するように、ユーザI/F14076を操作した場合、信号処理装置4は処理を終了する。
【1367】
また、ステップS14073において、ユーザ入力が終了指示でないと判定された場合、ステップS14074に進み、ユーザI/F14076は、ユーザ入力が処理領域指示情報であるかどうかを判定する。ステップS14074において、ユーザ入力が処理領域指示情報でないと判定された場合、ステップS14075をスキップして、ステップS14076に進む。
【1368】
一方、ステップS14074において、処理領域指示情報の入力があったと判定された場合、即ち、画像表示部14075に表示された入力画像を見たユーザが、その入力画像の画質に不満を感じ、その不満のある領域を囲む矩形を指示するように、ユーザI/F14076を操作した場合、ステップS14075に進み、ユーザI/F14076は、ユーザがユーザI/F14076を操作することによって指示した不満のある領域を囲む矩形の頂点などの、その矩形を特定する情報を処理領域指示情報として、処理領域設定部14071に供給し、ステップS14076に進む。
【1369】
ステップS14076では、処理領域設定部14071は、ユーザI/F14076から供給された処理領域指示情報に基づいて、処理領域を設定し、その処理領域情報を、定常性設定部14072、実世界推定部14073、および画像生成部14074に供給し、ステップS14077に進む。但し、ユーザI/F14076から処理領域設定部14071に処理領域指示情報が供給されなかった場合(ステップS14072またはステップS14074の処理直後にステップS14076の処理が行なわれた場合)には、処理領域設定部14071は、所定の処理(例えば、入力画像において動きボケが生じている領域を検出する処理)を行なうことにより、自動的に(処理領域指示情報なしで)処理領域を設定する。
【1370】
ステップS14077では、定常性設定部14072は、処理領域設定部14071から供給された処理領域情報から、入力画像における処理領域を認識する。さらに、定常性設定部14072は、その処理領域の画像データにおいて欠落した実世界1の光信号の定常性を表す情報として、処理領域に表示されたオブジェクトの動き量を設定し、その定常性を表す定常性情報を、実世界推定部14073に供給して、ステップS14078に進む。なお、この動き量は、ユーザがユーザI/F14076を操作して入力しても良い。また、ここでは、説明を簡単にするため、定常性設定部14072は、入力画像において、オブジェクトが水平方向に移動していることを前提として、その動きの大きさだけを表す動き量を定常性情報として設定することとする。但し、定常性情報としては、その他、オブジェクトの動きの大きさと方向を表す動きベクトルを設定することも可能である。
【1371】
ステップS14078では、実世界推定部14073は、処理領域設定部14071から供給された処理領域情報に応じて、入力画像における画像データ(動きボケ画像のデータ)から、対応する実世界1の光信号の動き量に基づいて、その実世界1の光信号(動きボケのない画像)を推定する。
【1372】
即ち、実世界推定部14073では、モデル生成部14081が、処理領域設定部14071から供給される処理領域情報から、入力画像における処理領域を認識するとともに、定常性設定部14072から供給される定常性情報から、処理領域の画像データに対応する実世界1の光信号の動き量、つまり、ここでは、処理領域に表示されたオブジェクトの動き量を認識する。また、モデル生成部14081は、入力画像における処理領域を構成する画素と、その処理領域の画像データに対応する実世界1の光信号の動き量に応じて、センサ2で検出された各画素の画素値と実世界1の光信号との関係をモデル化した関係モデルを生成し、方程式生成部14082に供給する。
【1373】
方程式生成部14082は、処理領域設定部14071から供給される処理領域情報から、入力画像における処理領域を認識し、その処理領域に応じて、入力画像の各画素の画素値を、モデル生成部14081から供給される関係モデルに代入し、これにより、実世界1の光信号を近似する近似モデルとしての近似関数を求める方程式を生成して、実世界波形推定部14083に供給する。さらに、方程式生成部14082は、処理領域情報に基づいて、近似関数を拘束する拘束条件式を生成し、実世界波形推定部14083に供給する。
【1374】
実世界波形推定部14083は、方程式生成部14082から供給される方程式を演算することにより、実世界1の光信号の波形を推定する。即ち、実世界波形推定部14083は、方程式生成部14082から供給される方程式を解くことにより、実世界1の光信号をモデル化した近似モデルとしての近似関数を求め、実世界1の光信号の波形の推定結果として、画像生成部14074に供給する。
【1375】
なお、以下、このような実世界推定部14073が実行するステップS14078の処理を、「実世界の推定処理」と称する。「実世界の推定処理」の詳細については、図130のフローチャートを参照して後述する。
【1376】
ステップS14078の処理後は、ステップS14079に進み、画像生成部14074は、実世界推定部14073(の実世界波形推定部14083)から供給された、実世界1の光信号の波形を近似する近似関数に基づいて、実世界1の光信号により近似した信号を生成する。即ち、画像生成部14074は、処理領域設定部14071から供給される処理領域情報から、入力画像における処理領域を認識し、その処理領域について、実世界推定部14073から供給される近似関数に基づき、実世界1の光信号により近似した画像(動きボケのない画像)である近似画像を生成する。
【1377】
さらに、画像生成部14074は、入力画像の処理領域の部分を、近似画像(動きボケのない画像)に置き換えた画像を、出力画像として生成し、画像表示部14075に供給して、ステップS14079からS14080に進む。
【1378】
ステップS14080では、画像表示部14075は、画像生成部14074から供給された出力画像を、ステップS14071で表示された入力画像に代えて、またはその入力画像とともに表示し、ステップS14081に進む。
【1379】
ステップS14081では、ユーザI/F14076は、ステップS14072における場合と同様に、ユーザがユーザI/F14076を操作することにより、何らかのユーザ入力があったかどうかを判定し、ユーザ入力がなかったと判定した場合、即ち、ユーザが何らの操作も行わなかった場合、ステップS14081に戻り、何らかのユーザ入力があるまで待つ。
【1380】
また、ステップS14081において、ユーザ入力があったと判定された場合、即ち、ユーザが、画像表示部14075に表示された入力画像や出力画像を見て、ユーザI/F14076を操作し、これにより、何らかの指示または情報を表すユーザ入力があった場合、ステップS14082に進み、ユーザI/F14076は、そのユーザ入力が、信号処理装置4の処理の終了を指示する終了指示であるかどうかを判定する。
【1381】
ステップS14082において、ユーザ入力が終了指示であると判定された場合、即ち、例えば、画像表示部14075に表示された出力画像を見たユーザが、その出力画像の画質に不満を感じず、出力画像に対して信号処理を施さないで良いとして、信号処理装置4の処理を終了するように、ユーザI/F14076を操作した場合、信号処理装置4は処理を終了する。
【1382】
また、ステップS14082において、ユーザ入力が終了指示でないと判定された場合、ステップS14083に進み、ユーザI/F14076は、ユーザ入力が処理領域指示情報であるかどうかを判定する。ステップS14083において、ユーザ入力が処理領域指示情報でないと判定された場合、ステップS14081に戻り、以下、同様の処理が繰り返される。
【1383】
また、ステップS14083において、ユーザ入力が処理領域指示情報であると判定された場合、即ち、画像表示部14075に表示された出力画像を見たユーザが、その出力画像の画質に不満を感じその出力画像に対して、新たにその不満のある領域を囲む矩形を指示するように、ユーザI/F14076を操作した場合、ステップS14075に戻り、上述したように、ユーザI/F14076は、ユーザがユーザI/F14076を操作することによって指示した不満のある領域を囲む矩形の頂点を表す処理領域指示情報を、処理領域設定部14071に供給する。そして、ステップS14075からステップS14076に進み、以下、同様の処理が繰り返される。
【1384】
ステップS14075乃至S14083の処理が繰り返されることにより、適切な処理領域が設定され、その結果、ユーザが所望する画質の出力画像を得ることができる。
【1385】
なお、上述した処理では、信号処理装置4は、ユーザにより処理領域が指示されたかどうかを判定し、処理を行うが、ユーザにより定常性に関連する情報が指示されたかどうかを判定して、処理を行なうこともできる。この場合、ステップS14075では、定常性設定部14072に、定常性に関連する情報が供給され、ステップS14077において、定常性設定部14072は、その情報に基づいて定常性を設定する。そして、ステップS14075乃至S14083の処理が繰り返されることにより、適切な定常性が設定され、その結果、ユーザが所望する画像の出力画像を得ることができる。ここで、定常性に関連する情報としては、例えば、入力画像において移動しているオブジェクトの動き量を表すユーザI/F14076の操作量などを採用することができる。
【1386】
以上のように、図128の信号処理装置4では、入力画像に対する処理結果としての出力画像をユーザに提示し、その出力画像から新たな処理領域や定常性を指示してもらい、その処理領域や定常性に基づいて、再度処理を行うようにしたので、ユーザの好みにあった、高画質の出力画像を、容易に得ることができる。つまり、信号処理装置4は、入力画像に対する処理結果として出力画像をユーザに提示する。一方、ユーザは、その出力画像の画質を認識し、所望の画質の画像または所望の画質に近い画像であるかどうかを判断して、信号処理装置4にフィードバックする。そして、信号処理装置4は、そのユーザからのフィードバックを踏まえ、再度、入力画像を処理し、以下、同様の処理が繰り返される。従って、ユーザの好みにあった、高画質の出力画像を、容易に得ることができる。
【1387】
なお、このように、信号処理装置4において、ユーザからのフィードバックを受けて入力画像に対する処理を行うことは、信号処理装置4が、ユーザと協調しながら処理を行っているということができる。
【1388】
次に、図130のフローチャートを参照して、実世界推定部14073(図128)の実世界の推定処理(図129のステップS14078の処理)について詳細に説明する。
【1389】
ステップS14101において、モデル生成部14081は、関係モデルを生成する。即ち、モデル生成部14081が、処理領域設定部14071から供給される処理領域情報から、入力画像における処理領域を認識するとともに、定常性設定部14072から供給される定常性情報から、処理領域の画像データに対応する動き量を認識する。さらに、モデル生成部14081は、入力画像における処理領域について、その処理領域を構成する画素と、その処理領域の画像データに対応する動き量に応じて、センサ2で検出された処理領域の各水平ラインの画素の画素値と、実世界1の光信号を近似する近似モデルで表される動きボケのない画像との関係をモデル化した関係モデルを生成し、これにより、処理領域の各水平ラインに対して得られる関係モデルを、方程式生成部14082に供給して、ステップS14101からステップS14102に進む。
【1390】
具体的には、モデル生成部14081は、処理領域の水平ラインの画素数と動き量に応じて、図118A乃至図118Cで説明した、センサ2で検出された各画素の画素値Piと、動きボケのない画素値Qiとの関係を表す式を関係モデルとして生成する。例えば、処理領域の画素数が10であり、動き量vが5である場合、関係モデルとして、上述した式(144)が生成される。
【1391】
ステップS14102では、方程式生成部14082は、方程式生成処理を行なう。即ち、処理領域設定部14071から供給される処理領域情報から、入力画像における処理領域を認識し、その処理領域の各画素の画素値Piを、モデル生成部14081から供給される、その処理領域の各水平ラインに対して得られた関係モデルに代入し、これにより、実世界1の光信号を近似する近似関数f(x)(で表される、動きボケのない画素値Qi)を求める方程式(モデル方程式)を生成する。
【1392】
さらに、方程式生成部14082は、処理領域設定部14071から供給される処理領域情報から認識される処理領域における実世界1の光信号を近似する近似関数f(x)を拘束する拘束条件式を生成する。
【1393】
即ち、処理領域の各画素の画素値Piに含まれるノイズ等が動きボケのない画素値Qiに影響することを抑制するため、実世界推定部14073(の実世界波形推定部14083)は、動きボケのない画素値Qiを、例えば、最小二乗誤差最小規範によって求める。そして、最小二乗誤差最小規範を採用する場合には、求めるべき変数よりも、式(方程式)の数が多くなければならない。
【1394】
一方、式(144)の関係モデルにおいては、求めたい変数である動きボケのない画素値Qiと方程式との数が等しい。そこで、方程式の数を増やすために、方程式生成部14082は、近似関数f(x)で表される動きボケのない画素値Qを拘束する拘束条件を導入し、拘束条件を表す式を、動きボケのない画素値Qを求めるための方程式として採用する。即ち、方程式生成部14082は、例えば、隣接する画素の、近似関数で表される動きボケのない画素値の差が小さい(空間相関がある)という拘束条件を表す拘束条件式を、処理領域の水平ラインごとに生成する。そして、方程式生成部14082は、処理領域の水平ラインごとに生成したモデル方程式と拘束条件式を実世界波形推定部14083に供給し、ステップS14102からステップS14103に進む。
【1395】
なお、以下、このような方程式生成部14082が実行するステップS14102の処理を、「方程式生成処理」と称する。「方程式生成処理」の詳細については、図132のフローチャートを参照して後述する。
【1396】
ステップS14103において、実世界波形推定部14083は、方程式生成部14082から供給される、処理領域の水平ラインごとに生成されたモデル方程式と拘束条件式を解くことにより、実世界1の光信号の波形を推定、即ち、近似関数F(x)で表される動きボケのない画素値Qiを求め、その画素値Qiを、画像生成部14074に供給する。
【1397】
次に、図131は、図128の方程式生成部14082の詳細構成例を示している。
【1398】
図131では、方程式生成部14082は、モデル方程式生成部14101、拘束条件式生成部14102、最小二乗法演算部14103、差分演算部14104、絶対値演算部14105、閾値処理部14106、重み決定部14107、および正規方程式生成部14108から構成されている。
【1399】
図131に構成を示す方程式生成部14082には、モデル生成部14081から、処理領域の各水平ラインに対して得られる、処理領域の各画素の画素値(動きボケ画像の画素値)Piと、動きボケのない画素値Qiとの関係をモデル化した関係モデルが入力され、モデル方程式生成部14101に供給される。また、方程式生成部14082には、入力画像が、センサ2(図1)から入力され、その入力画像は、モデル方程式生成部14101に供給される。さらに、方程式生成部14082には、処理領域情報が、処理領域設定部14071から入力され、その処理領域情報が、モデル方程式生成部14101、拘束条件式生成部14102、および閾値処理部14106に供給される。
【1400】
モデル方程式生成部14101は、処理領域情報から入力画像の処理領域を認識し、モデル生成部14081から供給された関係モデルに、センサ2で検出された入力画像の処理領域の画素値を代入して、モデル方程式を生成する。そして、モデル方程式生成部14101は、最小二乗法演算部14103と正規方程式生成部14108に、そのモデル方程式を供給する。なお、モデル生成部14081で得られる関係モデルは、例えば、式(144)の動き量vに具体的な値が代入されたものであり、モデル方程式生成部14101で得られるモデル方程式は、さらに、式(144)の画素値P0乃至P9に具体的な値が代入されたものである。
【1401】
拘束条件式生成部14102は、処理領域情報に基づいて、処理領域内の各水平ラインの画素の動きボケのない画素値Qに対して、所定の拘束条件を与える拘束条件式を生成し、その拘束条件式を最小二乗法演算部14103と正規方程式生成部14108に供給する。
【1402】
最小二乗法演算部14103は、モデル方程式生成部14101から供給されたモデル方程式と、拘束条件式生成部14102から供給された拘束条件式から、最小二乗誤差最小規範により、近似関数f(x)、即ち、処理領域内の各画素の動きボケのない画素値Qiを求め、その画素値を差分演算部14104に供給する。
【1403】
差分演算部14104と絶対値演算部14105は、最小二乗法演算部14103で求められた動きボケのない画素値Qiの画素のアクティビティを求める。
【1404】
即ち、差分演算部14104は、最小二乗法演算部14103から供給された処理領域内の各画素について、その画素の動きボケのない画素値を、その画素へ右に隣接する画素の動きボケのない画素値から減算することにより、画素値の差分を求め、その差分を絶対値演算部14105に供給する。
【1405】
絶対値演算部14105は、差分演算部14104から供給された、処理領域内の各画素についての動きボケのない画素値の差分の絶対値を計算し、その絶対値(以下、適宜、差分絶対値と称する)を画素のアクティビティとして、閾値処理部14106に供給する。
【1406】
閾値処理部14106は、絶対値演算部14105から供給された差分絶対値が、所定の閾値以上であるか否かを判定し、その判定結果を重み決定部14107に供給する。ここで、閾値処理部14106は、処理領域設定部14071から供給された処理領域情報から、処理領域の水平方向に並ぶ画素数を認識し、その画素数より2少ない数の回数だけ、即ち、処理領域内の差分絶対値全てについて、この判定処理を行なう。
【1407】
重み決定部14107は、閾値処理部14106から供給された判定結果に基づいて、拘束条件式に付ける重みを決定し、その重みを正規方程式生成部14108に供給する。
【1408】
正規方程式生成部14108は、拘束条件式生成部14102から供給された拘束条件式に、重み決定部14107から供給された重みを付ける。さらに、正規方程式生成部14108は、その重みを付けた拘束条件式と、モデル方程式生成部14101から供給されたモデル方程式とを合わせて1つの正規方程式を生成し、実世界波形推定部14083に供給する。
【1409】
次に、図132のフローチャートを参照して、方程式生成部14082(図131)の方程式生成処理(図130のステップS14102の処理)について詳細に説明する。
【1410】
ステップS14121において、モデル方程式生成部14101は、モデル生成部14081から関係モデルを取得し、ステップS14122に進む。ステップS14122において、モデル方程式生成部14101は、センサ2から入力画像を取得するとともに、処理領域設定部14071から処理領域情報を取得する。そして、モデル方程式生成部14101は、その入力画像と処理領域情報から、入力画像の処理領域における各水平ラインの画素の画素値を認識し、その画素値を、モデル生成部14081から取得した、各水平ラインについて生成された関係モデルに代入することにより、処理領域の各水平ラインについてモデル方程式を生成する。さらに、モデル方程式生成部14101は、そのモデル方程式を最小二乗法演算部14103と正規方程式生成部14108に供給する。即ち、例えば、モデル方程式生成部14101が、上述した式(144)で表される関係モデルを、モデル生成部14081から取得した場合、式(144)の画素値P0乃至P9に入力画像の画素値を代入することで、モデル方程式を生成する。
【1411】
ステップS14122の処理後は、ステップS14123に進み、拘束条件式生成部14102は、処理領域設定部14071から供給された処理領域に基づいて、その処理領域の各水平ラインごとに、拘束条件式を生成し、その拘束条件式を最小二乗法演算部14103と正規方程式生成部14108に供給して、ステップS14124に進む。即ち、拘束条件式生成部14102は、各水平ラインの隣接画素どうしの、近似関数で表される動きボケのない画素値の差は小さいという拘束条件を表す拘束条件式を、処理領域の水平ラインの画素数に応じて生成する。例えば、処理領域のある水平ラインの画素数が10個あり、その動きボケのない画素値が、処理領域の左から順にQ0乃至Q9であった場合、拘束条件式は、例えば、上述した式(145)で表される。
【1412】
ステップS14124において、最小二乗法演算部14103は、モデル方程式生成部14101から供給された処理領域の水平ラインごとのモデル方程式と、拘束条件式生成部14102から供給された処理領域の水平ラインごとの拘束条件式を、最小二乗誤差最小規範で解くことにより、処理領域内の各水平ラインの画素の動きボケのない画素値を求める。ここで求められる動きボケのない画素値は、拘束条件式の重みを決定するための、一時的な、いわば仮の動きボケのない画素値であり、以下、適宜、仮画素値と称する。そして、最小二乗法演算部14103は、この仮画素値を差分演算部14104に供給し、ステップS14124からステップS14125に進む。
【1413】
ステップS14125およびS14126では、仮画素値が求められた画素のアクティビティが求められる。
【1414】
即ち、ステップS14125では、差分演算部14104は、最小二乗法演算部14103から供給された処理領域の各水平ラインについて、その水平ラインにおける隣接画素どうしの仮画素値の差分を求め、その差分を絶対値演算部14105に供給する。例えば、最小二乗法演算部14103から供給された処理領域のある水平ラインの仮画素値が、その左から順にQ1乃至Q9であった場合、差分演算部14104は、隣接画素どうしの仮画素値の差分Kiを、例えば上述した式(146)にしたがって求める。
【1415】
ステップS14125の処理後は、ステップS14126に進み、絶対値演算部14105は、差分演算部14104から供給された隣接画素の差分Kiの絶対値|Ki|を求め、その差分絶対値|Ki|を閾値処理部14106に供給して、ステップS14127に進む。
【1416】
なお、ここでは、仮画素値が求められた画素のアクティビティとして、その画素と、その画素の右隣の画素との差分絶対値が、上述したように求められるが、画素のアクティビティとしては、その他、例えば、画素値の差分の差分の絶対値や、分数などを採用することができる。
【1417】
ステップS14127では、閾値処理部14106は、処理対象となる差分絶対値の変数jを1に初期化し、処理領域のある水平ラインの左からj+1番目の画素#j+1を処理対象として、ステップS14128に進む。
【1418】
ステップS14128において、閾値処理部14106は、処理領域設定部14071から供給された処理領域情報から、処理領域内の水平方向に並ぶ画素数A(以下、適宜、水平画素数Aと称する)を認識し、変数jがA−1未満であるかどうかを判定する。
【1419】
ステップS14128で、閾値処理部14106は、変数jがA−1未満であると判定した場合、ステップS14129に進み、画素#j+1のアクティビティ、即ち、画素#j+1と#j+2との仮画素値どうしの差分絶対値が、所定の閾値以上(または、より大きい)かどうかを判定する。なお、この閾値は、予め設定しておくこともできるし、また、ユーザによるユーザI/F14076の操作に応じて、設定することもできる。
【1420】
ステップS14129において、閾値処理部14106は、画素#j+1のアクティビティを表す差分絶対値が、所定の閾値以上でない(より大きくない)と判定した場合、画素#j+1のアクティビティが小さい旨の判定結果を重み決定部14107に出力し、ステップS14130に進む。ステップS14130では、重み決定部14107は、画素#j+1に対応する拘束条件式に付ける0でない所定の値の重みWを決定し、不図示の記憶部に記憶して、ステップS14131に進む。
【1421】
ステップS14131において、閾値処理部14106は、変数jを1だけインクリメントし、ステップS14128に戻る。
【1422】
一方、ステップS14129において、閾値処理部14106は、画素#j+1のアクティビティを表す差分絶対値が、所定の閾値以上である(または、より大きい)と判定した場合、画素#j+1のアクティビティが大きい旨の判定結果を重み決定部14107に出力し、ステップS14132に進む。ステップS14132では、閾値処理部14106は、画素#j+1に対応する拘束条件式に付す重みを0に決定し、不図示の記憶部に記憶する。そして、ステップS14132からS14131に進み、以下、同様の処理が行なわれる。
【1423】
その後、ステップS14128で、閾値処理部14106は、変数jがA−1未満でないと判定した場合、即ち、処理領域のある水平ラインの左から2番目乃至A−1番目の画素に対応する拘束条件式に対する重みが決定された場合、ステップS14133に進み、重み決定部14107は、その拘束条件に対する重みを正規方程式生成部14108に供給する。
【1424】
なお、ステップS14128乃至S14132の処理は、処理領域のすべての水平ラインを対象に行われ、そのすべての水平ラインについて、各画素に対応する拘束条件式に対する重みWが求められる。そして、ステップS14133では、処理領域のすべての水平ラインについて求められた各画素に対応する重みWが、重み決定部14107から正規方程式生成部14108に供給される。
【1425】
ステップS14133の処理後は、ステップS14134に進み、正規方程式生成部14108は、拘束条件式生成部14102から供給された処理領域の各水平ラインの画素に対応する拘束条件式のそれぞれに、重み決定部14107から供給された、それぞれの拘束条件式に対する重みWを付けて、新たな拘束条件式を生成する。ここで、正規方程式生成部14108は、重みWが0の場合には、対応する拘束条件式を生成しない。
【1426】
例えば、差分演算部14104において、上述した式(146)の差分Kiが求められ、閾値処理部14106で差分K1、K5、K7の絶対値が閾値以上であると判定された場合、正規方程式生成部14108が生成する拘束条件式は、以下の式(149)で表される。
【1427】
【数149】
・・・(149)
【1428】
なお、式(149)における重みWは、重み決定部14107で決定された0でない所定の値の重みを表す。式(149)の重みWとしては、例えば、拘束条件式生成部14102で式(145)の拘束条件式に与えられる重みと同一の値や、異なる値、さらには、絶対値演算部14105で求められるアクティビティとしての絶対値|Ki|の逆数、その他を採用することができる。
【1429】
このように、仮画素値に基づいて、差分絶対値|Ki|が閾値より小さい場合にのみ、拘束条件式を生成することにより、方程式生成部14082では、動きボケのない画像の平坦部分の画素に対応する拘束条件式にのみ、拘束条件式を生成する。従って、平坦部分において、ノイズ等による画素値の変動を抑制、つまり、ノイズを抑制した動きボケのない画素値を求めることが可能となる。
【1430】
即ち、方程式生成部14082は、処理領域内の各水平ラインの画素に対して、その右に隣接する画素との動きボケのない画素値どうしの差は小さいという拘束条件を与える拘束条件式に、同一の重みを付して、仮画素値を求め、さらに、処理領域の各水平ラインの画素について、その右隣の隣接画素との仮画素値どうしの差分絶対値を求める。そして、方程式生成部14082は、隣接画素との仮画素値どうしの差分絶対値が閾値以上の画素は、動きボケのない画像のエッジ部分であり、隣接画素の仮画素値の差分絶対値が閾値より小さい画素は、動きボケのない画像の平坦部分であるとして、動きボケのない画像の平坦部分の画素に対してのみ、隣接画素の動きボケのない画素値の差は小さいという拘束条件式を与える拘束条件式を生成する。従って、このように生成される拘束条件式によれば、エッジ部分の画像においてはエッジを維持し、平坦部分の画像においてはノイズを抑制(平坦さを維持)することができる。
【1431】
正規方程式生成部14108は、ステップS14134において、重みが式(149)に示したように変更された拘束条件式を生成した後、その拘束条件と、モデル方程式生成部14101から供給されたモデル方程式とを合わせて、処理領域の水平ラインごとの正規方程式を生成し、その正規方程式を実世界波形推定部14083に供給してリターンする。
【1432】
この後、実世界波形推定部14083は、方程式生成部14082から供給された正規方程式を最小二乗誤差最小規範で解くことにより、処理領域内の各水平ラインの画素の動きボケのない画素値Qiを求める。
【1433】
なお、上述した処理では、処理領域内の各画素に対応するアクティビティとして、その画素とその右隣の画素の画素値の差分絶対値を求めたが、その他、例えば、注目している注目画素と、その右隣と左隣の画素それぞれとの画素値の差分絶対値の和なども、その注目画素のアクティビティとして採用することが可能である。
【1434】
また、上述した実世界波形推定処理は、処理領域内の水平方向に並ぶ画素(水平ライン)毎に行なわれる。即ち、実世界波形推定部14083は、水平ライン毎に、処理領域の各画素の動きボケのない画素値を求める。そして、実世界波形推定部14083は、処理領域内の全ての水平ラインの各画素の動きボケのない画素値を、画像生成部14074に供給する。画像生成部14074は、入力画像における処理領域の各画素の画素値を、動きボケのない画素値に置き換えた画像を、出力画像として生成し、画像表示部14075に供給して、表示する。
【1435】
さらに、上述した処理では、差分絶対値で表されるアクティビティが大きい画素については、拘束条件式を生成しなかったが、その他、例えば、アクティビティが小さい画素に対する拘束条件式に付けられた重みより小さい重みを付けた拘束条件式を生成してもよい。
【1436】
また、上述した処理では、入力画像において、オブジェクトは水平方向に動いているとし、動き量を用いて、実世界波形を推定したが、その他、オブジェクトの動きの大きさと方向を表す動きベクトルを用いて、実世界波形を推定することも可能である。
【1437】
図133は、図122に示した入力画像である動きボケ画像を、図128の信号処理装置4によって処理した処理結果である出力画像を示している。即ち、図133の出力画像は、処理領域内の動きボケのない画像において、平坦部分の画素、つまり、アクティビティが小さい画素に対してのみ拘束条件式を生成し、動きボケ画像を処理した結果である。
【1438】
図133の出力画像では、動きボケが除去(低減)され、「Mik」という文字が鮮明になっている。さらに、図133の出力画像では、エッジ部分と平坦部分の画質が向上している。
【1439】
図134は、図133に示す画像の文字「Mik」の「i」の部分を拡大した図である。
【1440】
図134に示すように、図128の信号処理装置4によって処理した処理結果である出力画像では、動きボケが除去(低減)され、さらに「i」という文字の輪郭が明確になっている。
【1441】
図135は、図113、図128の信号処理装置4と等価な信号処理装置4の一実施の形態の構成例を示している。
【1442】
図135において、入力画像取得部14121とラインデータ取得部14122は、例えば、図113の処理領域設定部14001に、動きボケ除去処理部14123は、例えば、図113の定常性設定部14002と実世界推定部14003に、ラインデータ結合部14124は、例えば、図113の画像生成部14004に、画像表示部14125は、例えば、図113の画像表示部14005に、ユーザI/F14126は、例えば、図113のユーザI/F14006にそれぞれ対応している。
【1443】
なお、図135は、例えば、一定方向に一定の速さで移動するという定常性を有するデータ3の一例である動きボケが発生した画像データ(動きボケ画像データ)から、実世界1の光信号を推定する信号処理装置4の一実施の形態の構成例を示している。即ち、この信号処理装置4は、例えば、撮影時に被写体(オブジェクト)が動いたことにより、被写体がボケて撮影されてしまった画像(動きボケ画像)から、そのボケがない画像(動きボケのない画像)を推定する。従って、図135の実施の形態では、入力画像として、移動しているオブジェクトを撮影することにより得られた動きボケが生じている動きボケ画像が、信号処理装置4に入力される。
【1444】
ここでは、入力画像として、水平方向(左から右)に一定速度で移動している被写体(オブジェクト)の画像が信号処理装置4に入力されているとする。
【1445】
MPU(Micro Processing Unit)14120は、バス14127を介して入力画像取得部14121、ラインデータ取得部14122、動きボケ除去処理部14123、ラインデータ結合部14124、画像表示部14125、およびユーザI/F14126と接続されており、それぞれを制御する。
【1446】
入力画像取得部14121は、入力画像として、センサ2で検出された動きボケ画像である静止画像または1フレーム等の動画像のデータを取り込み、ラインデータ取得部14122、ラインデータ結合部14124、および画像表示部14125に供給する。また、入力画像取得部14121は、動きボケ画像について、処理領域を設定し、その処理領域を特定する処理領域情報を、ラインデータ取得部14122とラインデータ結合部14124に供給する。入力画像取得部12141は、例えば、センサ2から供給されるデータ3を、記憶するFD(floppy disk)、CD−R(Compact Disk Recordable)、半導体記億媒体等の記億媒体読み取り装置、あるいはセンサ2と通信可能なネットワーク(有線または無線)接続機器などで構成することができる。
【1447】
ラインデータ取得部14122は、入力画像取得部14121から供給される動きボケ画像と処理領域情報から、動きボケ画像における処理領域を認識し、処理領域の動きボケ画像データを各水平ライン毎に分離して、ラインデータを生成する。そして、ラインデータ取得部14122は、各水平ライン毎のラインデータを、動きボケ除去処理部14123に供給する。
【1448】
動きボケ除去処理部14123は、処理領域の動きボケが生じているラインデータから、対応する実世界1の光信号の動きベクトルに基づいて、ライン毎に、実世界1の光信号を推定する。即ち、動きボケ除去処理部14123は、処理領域の動きボケが生じているラインデータから、実世界1の光信号である動きボケのない画像のラインデータを推定する。ここで、動きボケ除去処理部14123は、動きボケが生じているラインデータから、実世界1の光信号である動きボケのない画像のラインデータを推定しているので、動きボケ画像から動きボケを除去しているといえる。さらに、動きボケ除去処理部14123は、処理領域の動きボケのないラインデータを、水平ライン毎に、ラインデータ結合部14124に供給する。
【1449】
なお、ここでは、オブジェクトが水平方向に等速で動いていることを前提としているので、実世界の光信号の動きベクトルとしては、露光時間における水平方向の動き量を採用している。
【1450】
ラインデータ結合部14124は、入力画像取得部14121から供給される処理領域情報と動きボケ画像から、動きボケ画像における処理領域を認識する。そして、ラインデータ結合部14124は、動きボケ除去処理部14123から供給される動きボケのないラインデータを、動きボケ画像における処理領域の画像データに結合する。即ち、ラインデータ結合部14124は、動きボケ画像のうち、処理領域の画像データを、ライン毎に、動きボケのないラインデータに置き換え、動きボケのない画像データを生成する。そして、ラインデータ結合部14124は、動きボケのない画像データ(動きボケのない画像)を、出力画像として、画像表示部14125に供給する。
【1451】
画像表示部14125は、入力画像取得部14121から供給される動きボケ画像を、入力画像として表示し、また、ラインデータ結合部14125から供給される動きボケのない画像を、出力画像として表示する。画像表示部14125には、単数以上の出力画像が表示できるようになっている。
【1452】
ユーザI/F14126は、ユーザによって操作され、そのユーザの操作に応じて、例えば、処理領域と動き量に関連する情報を、それぞれ入力画像取得部14121と動きボケ除去処理部14123に供給する。
【1453】
即ち、ユーザは、画像表示部14125に表示された入力画像や出力画像を見て、ユーザI/F14126を操作することにより、その入力画像や出力画像に対して、動きボケ領域を処理領域として指定し、出力画像を選択し、動き量等を入力する。ユーザI/F14126は、ユーザの操作に応じて、処理領域を指定する情報を入力画像取得部14121に供給する。また、ユーザI/F14126は、ユーザの操作に応じて、処理領域におけるオブジェクトの動き量を、動きボケ除去処理部14123に供給する。ユーザI/F14126は、例えば、マウス、ペンタブレット、ボリューム機器、キーボード等で構成することができる。
【1454】
図136のフローチャートを参照して、図135の信号処理装置4の処理について説明する。
【1455】
ステップS14151において、入力画像取得部14121は、センサ2からデータ3として供給される入力画像として動きボケ画像(の2次元画像データ)を取得し、その動きボケ画像をラインデータ取得部14122、ラインデータ結合部14124、および画像表示部14125に供給して、ステップS14152に進む。ステップS14152では、画像表示部14125は、入力画像取得部14121から供給された動きボケ画像を入力画像として表示する。
【1456】
ステップS14152の処理後は、ステップS14153に進み、入力画像取得部14121は、ユーザI/F14126から処理領域指示情報を取得し、ステップS14154に進む。即ち、画像表示部14125に表示された入力画像を見たユーザが、その入力画像に動きボケがあると感じ、その動きボケのある領域を処理領域として指示するようにユーザI/F14126を操作する。ユーザI/F14126は、ユーザがユーザI/F14126を操作することによって指示した処理領域を表す処理領域指示情報を、入力画像取得部14121に供給する。
【1457】
なお、ユーザI/F14126を操作することにより動きボケ領域を指示する方法としては、例えば、動きボケ領域を囲む矩形によって指示する方法、動きボケ領域をトリム(trim)することによって指示する方法、動きボケ領域の中の任意の1点以上をポインティングすることによって指示する方法などがあるが、ここでは、例えば、ユーザは、動きボケ領域を囲む矩形を、ユーザI/F14126を操作することにより指示することによって、処理領域を指示するものとする。この場合、ユーザI/F14126は、ユーザによって指示された動きボケ領域を囲む矩形の情報としての、例えば、その矩形の頂点の、画像上の座標を、処理領域指示情報として、入力画像取得部14121に供給する。
【1458】
ステップS14154では、入力画像取得部14121は、ユーザI/F14126から供給された処理領域指示情報から、処理領域を設定し、処理領域を特定する処理領域情報を、ラインデータ取得部14122とラインデータ結合部14124に供給する。なお、ユーザが処理領域を指示せずに、入力画像取得部14121が、所定の処理(例えば、入力画像において動きボケが生じている領域を検出する処理)を行なうことにより、自動的に(処理領域指示情報なしで)処理領域を設定してもよい。
【1459】
ステップS14154の処理後は、ステップS14155に進み、動きボケ除去処理部14123は、処理領域の画像データにおいて欠落した実世界1の光信号の定常性を表す情報として、処理領域に表示されたオブジェクトの動き量を取得し、ステップS14156に進む。動き量を取得する方法としては、動きボケ除去処理部14123が、ユーザI/F14126から、ユーザがユーザI/F14126を操作することにより、動き量として入力した値を取得する方法、または動き量を検出する方法があるが、ここでは、動きボケ除去処理部14123は、ユーザI/F14126から動き量を取得するものとする。
【1460】
ステップS14156では、ラインデータ取得部14122は、動きボケ除去処理の対象となる水平ライン(以下、適宜、対象ラインと称する)の番号iを0に設定し、ステップS14157に進む。即ち、ラインデータ取得部14122は、入力画像取得部14121から供給される処理領域情報から、処理領域の水平方向の画素数(水平画素数)Aと、垂直方向の画素数を表すライン数Bを認識する。そして、ラインデータ取得部14122は、処理領域の最上行の水平ラインからの各ラインに、0から順にB−1まで番号iを付加し、番号iが0のラインデータを今回の処理対象とする。
【1461】
ステップS14157において、ラインデータ取得部14122は、対象ラインの番号iが処理領域のライン数Bより小さいかどうかを判定し、対象ラインの番号iが処理領域のライン数Bより小さいと判定した場合、ステップS14158に進む。ステップS14158では、ラインデータ取得部14122は、入力画像取得部14121から供給される動きボケ画像(の2次元画像データ)から、番号iが付加された対象ラインの画像データを分離し、ラインデータとして、動きボケ除去処理部14123に供給する。
【1462】
ステップS14158の処理後は、ステップS14159に進み、動きボケ除去処理部14123は、番号iのラインデータ(以下、適宜、ラインデータ#iという)を対象に、動きボケ除去処理を行ない、動きボケ画像における処理領域のラインデータ(以下、適宜、動きボケ画像のラインデータと称する)#iから、動きボケのない画像のラインデータ#iを推定し、その動きボケのない画像のラインデータ#iを、ラインデータ結合部14124に供給する。動きボケ除去処理の詳細は後述する。
【1463】
ステップS14159の処理後は、ステップS14160に進み、ラインデータ結合部14124は、ステップS14159で動きボケ除去処理部14123から供給される動きボケのない画像のラインデータ#iを、動きボケ画像のラインデータ#iと置き換え、ステップS14161に進む。即ち、ラインデータ結合部14124は、入力画像取得部14121から供給される動きボケ画像と処理領域情報から、動きボケ画像における処理領域を認識し、処理領域の対象ラインとなっている水平ラインの動きボケ画像のラインデータ#iを、動きボケのない画像のラインデータ#iに置き換える。
【1464】
ステップS14161において、ラインデータ取得部14122は、対象ラインの番号iを1だけインクリメントし、ステップS14157に戻って、上述した処理を繰り返す。
【1465】
ステップS14157において、動きボケ除去処理部14123は、対象ラインの番号iがライン数Bより小さくない(対象ラインの番号iがライン数B以上である)と判定した場合、即ち、処理領域の全ての水平ラインを対象に、動きボケ除去処理を行った場合、ステップS14162に進み、ラインデータ結合部14124は、ステップS14160で動きボケ画像のラインデータを、動きボケのない画像のラインデータに置き換えた画像を、出力画像として画像表示部14125に表示させ、処理を終了する。
【1466】
次に、図137は、図135の動きボケ除去処理部14123の第1の構成例を示している。
【1467】
図137では、動きボケ除去処理部14123は、モデル方程式生成部14141、拘束条件式生成部14142、および最小二乗法演算部14143から構成されている。
【1468】
図137に構成を示す動きボケ除去処理部14123には、ラインデータ取得部14122から入力画像である動きボケ画像の処理領域の水平ラインごとのラインデータが入力され、モデル方程式生成部14141と拘束条件式生成部14142に供給される。また、動きボケ除去処理部14123には、ユーザI/F14126から動き量が入力され、モデル方程式生成部14141に供給される。
【1469】
モデル方程式生成部14141は、そこに供給される動きボケ画像のラインデータから処理領域の水平方向の画素数(水平画素数)Aを認識し、動き量に応じて、動きボケ画像のラインデータにおける各画素の画素値と、実世界1の光信号を近似する近似モデルf(x)で表される動きボケのない画像のラインデータにおける各画素の画素値との関係をモデル化した関係モデルを生成する。さらに、モデル方程式生成部14141は、動きボケ画像のラインデータにおける各画素の画素値を、式(144)の関係モデルに代入して、モデル方程式を生成し、最小二乗法演算部14143に供給する。
【1470】
拘束条件式生成部14142は、動きボケ画像のラインデータから処理領域の水平方向の画素数(水平画素数)Aを認識して、処理領域の各画素に対応する、所定の拘束条件式を生成し、さらに、その拘束条件式に所定の重みWを与えて、最小二乗法演算部14143に供給する。
【1471】
最小二乗法演算部14143は、モデル方程式生成部14141から供給されたモデル方程式と拘束条件式生成部14142から供給された拘束条件式から、最小二乗誤差最小規範により、処理領域内の各画素の動きボケのない画素値(動きボケのない画像のラインデータ)を求め、動きボケのない画像のラインデータをラインデータ結合部14124に供給する。
【1472】
次に、図138のフローチャートを参照して、動きボケ除去処理部14123(図137)の動きボケ除去処理(図136のステップS14159の処理)について詳細に説明する。
【1473】
ステップS14171において、モデル方程式生成部14141は、動きボケ画像の1ラインデータと動き量から、モデル方程式を生成する。即ち、動きボケ画像の1ラインデータから処理領域の水平画素数Aを認識し、ユーザI/F14126から入力された動き量に基づいて、動きボケ画像の1ラインデータと実世界1の光信号を近似する近似モデルf(x)(動きボケのない画像の1ラインデータ)との関係をモデル化した関係モデルを生成する。
【1474】
具体的には、モデル方程式生成部14141は、処理領域の水平画素数Aと動き量に応じて、図118A乃至図118Cで説明した、センサ2で検出された各画素の画素値Pi(動きボケ画像の1ラインデータ)と動きボケのない画素値Qi(動きボケのない画像の1ラインデータ)との関係を表す式を関係モデルとして生成する。例えば、処理領域の画素数が10であり、動き量vが5である場合、関係モデルとして、上述した式(144)が生成される。
【1475】
さらに、モデル方程式生成部14141は、動きボケ画像の1ラインデータの各画素の画素値を、関係モデルに代入して、モデル方程式を生成し、最小二乗法演算部14143に供給する。例えば、モデル方程式生成部14141は、関係モデルが上述した式(144)で表される場合、式(144)の画素値P0乃至P9に動きボケ画像の1ラインデータの各画素の画素値を代入することで、モデル方程式を生成する。
【1476】
ステップS14171の処理後は、ステップS14172に進み、拘束条件式生成部14142は、動きボケ画像の1ラインデータから、その水平方向の画素数(水平画素数)Aを認識し、その画素数に応じて拘束条件式を生成する。さらに、拘束条件式生成部14142は、その拘束条件式を最小二乗法演算部14143に供給して、ステップS14172からステップS14173に進む。即ち、拘束条件式生成部14142は、ラインデータのある注目する注目画素と、その注目画素の右に隣接する画素との、近似関数で表される動きボケのない画素値どうしの差は小さいという拘束条件を表す拘束条件式を、水平画素数Aに応じて生成する。例えば、水平画素数Aが10であり、その左側からの画素の動きボケのない画素値がQ0乃至Q9で表される場合、同一の重みWが与えられた拘束条件式は、例えば、上述した式(145)で表される。
【1477】
ステップS14173では、最小二乗法演算部14143は、ラインデータについて、モデル方程式生成部14141から供給されたモデル方程式と、拘束条件式生成部14142から供給された拘束条件式とを、最小二乗誤差最小規範で解くことにより、即ち、モデル方程式と拘束条件式とから正規方程式を生成し、その正規方程式を演算することにより、動きボケのない画像の1ラインデータを算出し、リターンする。
【1478】
以上のように、動きボケ除去処理部14123の第1の構成例では、ラインデータの画素に対応する拘束条件式に同一の重みWが与えられ、その拘束条件式とモデル方程式とを解くことにより、動きボケのない画像のラインデータが求められる。
【1479】
なお、最小二乗法演算部14143では、モデル方程式と拘束条件式を最小二乗誤差最小規範で解いたが、その式の数によっては、LU分解等の一般的解法で解くことも可能である。
【1480】
次に、図139は、図135の動きボケ除去処理部14123の第2の構成例を示している。
【1481】
図139では、動きボケ除去処理部14123は、モデル方程式生成部14181、拘束条件式生成部14182、最小二乗法演算部14183、および絶対値演算部14184から構成されている。
【1482】
図139に構成を示す動きボケ除去処理部14123には、ラインデータ取得部14122から入力画像である動きボケ画像の処理領域の水平ラインごとのラインデータが入力され、モデル方程式生成部14181と拘束条件式生成部14182に供給される。また、動きボケ除去処理部14123には、ユーザI/F14126から動き量が入力され、モデル方程式生成部14181に供給される。
【1483】
モデル方程式生成部14181は、そこに供給される動きボケ画像のラインデータから処理領域の水平方向の画素数(水平画素数)Aを認識し、動き量に応じて、動きボケ画像のラインデータにおける各画素の画素値Piと、実世界1の光信号を近似する近似モデルf(x)で表される動きボケのない画像のラインデータにおける各画素の画素値Qiとの関係をモデル化した式(144)の関係モデルを生成する。さらに、モデル方程式生成部14181は、動きボケ画像のラインデータにおける各画素の画素値Piを、式(144)の関係モデルに代入して、モデル方程式を生成し、最小二乗法演算部14183に供給する。
【1484】
拘束条件式生成部14182は、動きボケ画像のラインデータから処理領域の水平方向の画素数(水平画素数)Aを認識して、処理領域の各画素に対応する、所定の拘束条件式を生成し、さらに、その拘束条件式に所定の重みWを与えて、最小二乗法演算部14183に供給する。
【1485】
さらに、拘束条件式生成部14182は、絶対値演算部14184の出力に応じて、最初に拘束条件式に与えた重みを変更し、最小二乗法演算部14183に、再度供給する。
【1486】
最小二乗法演算部14183は、モデル方程式生成部14181から供給されたモデル方程式と拘束条件式生成部14182から供給された拘束条件式から、最小二乗誤差最小規範により、処理領域内の各画素の動きボケのない画素値(動きボケのない画像のラインデータ)を求め、動きボケのない画像のラインデータを絶対値演算部14184またはラインデータ結合部14124に供給する。
【1487】
絶対値演算部14184は、最小二乗法演算部14183で求められた動きボケのない画像のラインデータの画素について、その右に隣接する画素との動きボケのない画素値どうしの差分絶対値を求め、その差分絶対値を拘束条件式生成部14182に供給する。
【1488】
次に、図140のフローチャートを参照して、動きボケ除去処理部14123(図139)の動きボケ除去処理(図136のステップS14159の処理)について詳細に説明する。
【1489】
ステップS14211において、モデル方程式生成部14181は、動きボケ画像の1ラインデータと動き量から、モデル方程式を生成する。即ち、動きボケ画像の1ラインデータから処理領域の水平画素数Aを認識し、ユーザI/F14126から入力された動き量に基づいて、動きボケ画像の1ラインデータと実世界1の光信号を近似する近似モデルf(x)(動きボケのない画像の1ラインデータ)との関係をモデル化した関係モデルを生成する。
【1490】
具体的には、モデル方程式生成部14181は、処理領域の水平画素数Aと動き量に応じて、図118A乃至図118Cで説明した、センサ2で検出された各画素の画素値Pi(動きボケ画像の1ラインデータ)と動きボケのない画素値Qi(動きボケのない画像の1ラインデータ)との関係を表す式を関係モデルとして生成する。例えば、処理領域の水平画素数Aが10であり、動き量vが5である場合、関係モデルとして、上述した式(144)が生成される。
【1491】
さらに、モデル方程式生成部14181は、動きボケ画像の1ラインデータの各画素の画素値を、関係モデルに代入して、モデル方程式を生成し、最小二乗法演算部14183に供給する。例えば、モデル方程式生成部14181は、関係モデルが上述した式(144)で表される場合、式(144)の画素値P0乃至P9に動きボケ画像の1ラインデータの各画素の画素値を代入することで、モデル方程式を生成する。
【1492】
ステップS14211の処理後は、ステップS14212に進み、拘束条件式生成部14182は、動きボケ画像の1ラインデータから、その水平方向の画素数(水平画素数)Aを認識し、その画素数に応じて、拘束条件式を生成する。さらに、拘束条件式生成部14182は、その拘束条件式を最小二乗法演算部14183に供給して、ステップS14212からステップS14213に進む。即ち、拘束条件式生成部14182は、ラインデータのある注目する注目画素と、その注目画素の右に隣接する画素との、近似関数で表される動きボケのない画素値どうしの差は小さいという拘束条件を表す拘束条件式を、水平画素数Aに応じて生成する。例えば、水平画素数Aが10であり、その左側からの画素の動きボケのない画素値がQ0乃至Q9で表される場合、同一の重みWが与えられた拘束条件式は、例えば、上述した式(145)で表される。
【1493】
ステップS14213では、最小二乗法演算部14183は、ラインデータについて、モデル方程式生成部14181から供給されたモデル方程式と、拘束条件式生成部14182から供給された拘束条件式とを、最小二乗誤差最小規範で解くことにより、即ち、モデル方程式と拘束条件式とから正規方程式を生成し、その正規方程式を演算することにより、処理領域内の各画素の動きボケのない画素値を算出し、絶対値演算部14184に供給する。この動きボケのない画素値は、拘束条件式に与える重みを変更するために一時的に求めた、いわば仮の動きボケのない画素値(仮画素値)である。
【1494】
ステップS14213の処理後は、ステップS14214に進み、絶対値演算部14184は、最小二乗法演算部14183から供給されるラインデータの各画素について、その画素と、その画素の右に隣接する画素との仮画素値どうしの差分Kiを演算し、ステップS14215に進む。例えば、最小二乗法演算部14183から供給されたラインデータの各画素の仮画素値がQ0乃至Q9であった場合、仮画素値どうしの差分Kiは、例えば、上述した式(146)で求められる。
【1495】
ステップS14215では、絶対値演算部14184は、ラインデータの画素についての仮画素値どうしの差分Kiの絶対値|Ki|を演算し、その差分絶対値|Ki|を拘束条件式生成部14182に供給する。即ち、絶対値演算部14184は、ラインデータの各画素のアクティビティとして、その画素と、その画素の右隣の画素との差分絶対値|Ki|を検出し、拘束条件式生成部14182に供給する。
【1496】
ステップS14215の処理後は、ステップS14216に進み、拘束条件式生成部14182は、絶対値演算部14184から供給された各画素のアクティビティとしての差分絶対値|Ki|から、その画素とその右隣の画素との画素値によって定義される拘束条件式(その画素に対応する拘束条件式)に付ける新たな重みを決定し、ステップS14217に進む。例えば、上述した式(146)で表される差分絶対値|Ki|が絶対値演算部14184から拘束条件式生成部14182に供給された場合、新たな重みは、例えば、上述した式(147)で表される。上述したように、式(147)では、差分絶対値|Ki|の逆数を重みWiに設定するので、差分絶対値|Ki|が大きい場合には、重みWiは小さくなり、差分絶対値|Ki|が小さい場合には、重みWiは大きくなる。
【1497】
このように、仮画素値に基づいて、差分絶対値|Ki|の逆数を新たな重みWiに決定することにより、拘束条件式生成部14182では、動きボケのない画像のエッジ部分の画素に対応する拘束条件式には、小さな重みが付されるように、また、平坦部分の画素に対応する拘束条件式には、大きな重みが付されるように、重みが変更される。従って、エッジ部分については、そのエッジを維持するような動きボケのない画素値を求めることが可能となり、平坦部分については、ノイズ等による画素値の変動を抑制、つまり、ノイズを抑制した動きボケのない画素値を求めることが可能となる。
【1498】
即ち、動きボケ除去処理部14123は、処理領域内の各水平ラインの画素に対して、その右に隣接する画素との動きボケのない画素値どうしの差は小さいという拘束条件を与える拘束条件式に、同一の重みを付して、仮画素値を求め、さらに、処理領域の各水平ラインの画素について、その右隣の隣接画素との仮画素値どうしの差分絶対値を求める。そして、動きボケ除去処理部14123は、隣接画素との仮画素値どうしの差分絶対値が大きい画素は、動きボケのない画像のエッジ部分であり、隣接画素との仮画素値どうしの差分絶対値が小さい画素は、動きボケのない画像の平坦部分であるとして、動きボケのない画像のエッジ部分の画素に対応する拘束条件式に対しては小さな重みを付け、動きボケのない画像の平坦部分の画素に対応する拘束条件式に対しては、大きな重みを付ける。従って、このような重み付けが行われた拘束条件式によれば、エッジ部分の画像においては、エッジ部分を維持し、平坦部分の画像においてはノイズを抑制(平坦さを維持)することができる。
【1499】
なお、ここでは、絶対値|Ki|の逆数を重みWiとして採用することとしたが、重みWiは、その他の絶対値|Ki|を引数とする関数によって求めることが可能である。
【1500】
ステップS14217では、拘束条件式生成部14182は、ステップS14212で生成した拘束条件式に与えた重みを、ステップS14216で設定した重みに変更し、その重みが変更された拘束条件式を最小二乗法演算部14183に供給して、ステップS14218に進む。例えば、上述した式(145)で表される拘束条件式が、ステップS14212の処理で拘束条件式生成部14182により生成され、上述した式(147)で表される重みが、ステップS14216の処理で拘束条件式生成部14182により設定された場合、拘束条件式生成部14182は、式(145)の重みWを、式(147)の重みWiに変更し、その結果得られる式(148)の新たな拘束条件式を、最小二乗法演算部14183に供給する。
【1501】
ステップS14218では、最小二乗法演算部14183は、ラインデータについて、ステップS14211でモデル方程式生成部14181から供給されるモデル方程式と、ステップS14217で拘束条件式生成部14182から供給される新たな拘束条件式を最小二乗誤差最小規範で解くことにより、即ち、モデル方程式と拘束条件式とから正規方程式を生成し、その正規方程式を演算することにより、動きボケのない画像の1ラインデータを算出し、リターンする。
【1502】
以上のように、動きボケ除去処理部14123の第2の構成例では、ラインデータの画素に対応する拘束条件式に与えられる重みが、画素のアクティビティに基づいて変更され、そのアクティビティが変更された拘束条件式とモデル方程式とを解くことにより、動きボケのない画素のラインデータが求められる。
【1503】
次に、図141は、図135の動きボケ除去処理部14123の第3の構成例を示している。
【1504】
図141では、動きボケ除去処理部14123は、モデル方程式生成部14221、拘束条件式生成部14222、最小二乗法演算部14223、および閾値処理部14224から構成されている。
【1505】
図141に構成を示す動きボケ除去処理部14123には、ラインデータ取得部14122から入力画像である動きボケ画像の処理領域の水平ラインごとのラインデータが入力され、モデル方程式生成部14221、拘束条件式生成部14222、および閾値処理部14224に供給される。また、動きボケ除去処理部14123には、ユーザI/F14126から動き量が入力され、モデル方程式生成部14221に供給される。
【1506】
モデル方程式生成部14221は、そこに供給される動きボケ画像の1ラインデータから処理領域の水平方向の画素数(水平画素数)Aを認識し、動き量に応じて、動きボケ画像のラインデータにおける各画素の画素値と、実世界1の光信号を近似する近似モデルf(x)で表される動きボケのない画像のラインデータにおける各画素の画素値との関係をモデル化した式(144)の関係モデルを生成する。さらに、モデル方程式生成部14221は、動きボケ画像のラインデータにおける各画素の画素値Pを、式(144)の関係モデルに代入して、モデル方程式を生成し、最小二乗法演算部14223に供給する。
【1507】
拘束条件式生成部14222は、動きボケ画像のラインデータから処理領域の水平方向の画素数(水平画素数)Aを認識して、処理領域の各画素に対応する所定の拘束条件式を生成し、さらに、その拘束条件式に所定の重みWを与えて、最小二乗法演算部14223に供給する。
【1508】
さらに、拘束条件式生成部14222は、閾値処理部14224の出力に応じて、最初に拘束条件式に与えた重みを変更し、最小二乗法演算部14223に供給する。
【1509】
最小二乗法演算部14223は、モデル方程式生成部14221から供給されたモデル方程式と拘束条件式生成部14222から供給された拘束条件式から、最小二乗誤差最小規範により、処理領域内の各画素の動きボケのない画素値(動きボケのない画像のラインデータ)を求め、動きボケのない画像のラインデータを閾値処理部14224またはラインデータ結合部14124に供給する。
【1510】
閾値処理部14224は、最小二乗法演算部14223で求められた動きボケのない画像のラインデータの画素について、その画素と、その画素の右に隣接する画素との動きボケのない画素値どうしの差分絶対値をそれぞれ求め、その差分絶対値が、所定の閾値以上であるかどうかを判定し、その判定結果を拘束条件式生成部14222に供給する。
【1511】
次に、図142のフローチャートを参照して、動きボケ除去処理部14123(図141)の動きボケ除去処理(図136のステップS14159の処理)について詳細に説明する。
【1512】
ステップS14251において、モデル方程式生成部14221は、動きボケ画像の1ラインデータと動き量から、モデル方程式を生成する。即ち、動きボケ画像の1ラインデータから処理領域の水平画素数Aを認識し、ユーザI/F14126から入力された動き量に基づいて、動きボケ画像の1ラインデータと実世界1の光信号を近似する近似モデルf(x)(動きボケのない画像の1ラインデータ)との関係をモデル化した関係モデルを生成する。
【1513】
具体的には、モデル方程式生成部14221は、処理領域の水平画素数Aと動き量に応じて、図118A乃至図118Cで説明した、センサ2で検出された各画素の画素値Pi(動きボケ画像の1ラインデータ)と動きボケのない画素値Qi(動きボケのない画像の1ラインデータ)との関係を表す式を関係モデルとして生成する。例えば、処理領域の水平画素数Aが10であり、動き量vが5である場合、関係モデルとして、上述した式(144)が生成される。
【1514】
さらに、モデル方程式生成部14221は、動きボケ画像の1ラインデータの各画素の画素値を、関係モデルに代入して、モデル方程式を生成し、最小二乗法演算部14223に供給する。例えば、モデル方程式生成部14221は、関係モデルが上述した式(144)で表される場合、式(144)の画素値P0乃至P9に動きボケ画像の1ラインデータの各画素の画素値を代入することで、モデル方程式を生成する。
【1515】
ステップS14251の処理後は、ステップS14252に進み、拘束条件式生成部14222は、動きボケ画像の1ラインデータから、その水平方向の画素数(水平画素数)Aを認識し、その画素数に応じて拘束条件式を生成する。さらに、拘束条件式生成部14222は、その拘束条件式に同一の重みWを与え、最小二乗法演算部14223に供給して、ステップS14252からステップS14253に進む。即ち、拘束条件式生成部14222は、ラインデータのある注目する注目画素と、その注目画素の右に隣接する画素との、近似関数で表される動きボケのない画素値どうしの差は小さいという拘束条件を表す拘束条件式を、水平画素数Aに応じて生成する。例えば、水平画素数Aが10であり、その左側からの画素の動きボケのない画素値がQ0乃至Q9で表される場合、同一の重みWが与えられた拘束条件式は、例えば、上述した式(145)で表される。
【1516】
ステップS14253では、最小二乗法演算部14223は、ラインデータについて、モデル方程式生成部14221から供給されたモデル方程式と、拘束条件式生成部14122から供給された拘束条件式とを、最小二乗誤差最小規範で解くことにより、即ち、モデル方程式と拘束条件式とから正規方程式を生成し、その正規方程式を演算することにより、処理領域内の各画素の動きボケのない画素値を算出し、閾値処理部14224に供給する。この動きボケのない画素値は、拘束条件式に与える重みを変更するために一時的に求めた、いわば仮の動きボケのない画素値(仮画素値)である。
【1517】
ステップS14253の処理後は、ステップS14254に進み、閾値処理部14224は、最小二乗法演算部14223から供給されるラインデータの各画素について、その画素と、その画素の右に隣接する画素との仮画素値どうしの差分Kiを演算し、ステップS14255に進む。例えば、最小二乗法演算部14223から供給されたラインデータの各画素の仮画素値がQ1乃至Q9であった場合、仮画素値どうしの差分Kiは、例えば、上述した式(146)で求められる。
【1518】
ステップS14255では、閾値処理部14224は、ラインデータの画素についての仮画素値どうしの差分Kiから、絶対値|Ki|を演算し、ステップS14256に進む。即ち、閾値処理部14224は、処理領域内の各画素のアクティビティとして、その画素と、その画素の右隣の画素との差分絶対値|Ki|を検出する。
【1519】
ステップS14256では、閾値処理部14224は、処理対象となる差分絶対値の変数jを1に初期化し、処理領域のある水平ラインの左からj+1番目の画素#j+1を処理対象として、ステップS14257に進む。
【1520】
ステップS14257において、閾値処理部14224は、動きボケ画像の1ラインデータから、処理領域の水平方向に並ぶ画素数A(水平画素数A)を認識し、処理対象となる差分絶対値に付加された番号jが、変数jがA−1未満であるかどうかを判定する。
【1521】
ステップS14257で、閾値処理部14224は、変数jが、A−1未満であると判定した場合、ステップS14258に進み、画素#j+1のアクティビティ、即ち、画素#j+1と#j+2との仮画素値どうしの差分絶対値が、所定の閾値以上(または、より大きい)かどうかを判定する。なお、この閾値は、予め設定しておくこともできるし、また、ユーザによるユーザI/F14126の操作に応じて、設定することもできる。
【1522】
ステップS14258において、閾値処理部14224は、画素#j+1のアクティビティを表す差分絶対値が、所定の閾値以上でない(より大きくはない)と判定した場合、画素#j+1のアクティビティが小さい旨の判定結果を拘束条件式生成部14222に出力し、ステップS14259に進む。ステップS14259では、拘束条件式生成部14222は、画素#j+1に対応する拘束条件式に付ける0でない所定の値の重みWを決定し、不図示の記憶部に記憶する。
【1523】
ステップS14259の処理後は、ステップS14260に進み、閾値処理部14224は、変数jを1だけインクリメントし、ステップS14257に戻る。
【1524】
一方、ステップS14258において、閾値処理部14224は、画素#j+1のアクティビティを表す差分絶対値が、所定の閾値以上である(または、より大きい)と判定した場合、画素#j+1のアクティビティが大きい旨の判定結果を拘束条件式生成部14222に出力し、ステップS14261に進む。ステップS14261では、閾値処理部14224は、画素#j+1に対応する拘束条件式に付す重みを0に決定し、不図示の記憶部に記憶する。
【1525】
その後、ステップS14257で、閾値処理部14224は、変数jがA−1未満でないと判定した場合、即ち、処理領域のある水平ラインの左から2番目乃至A−1番目の画素に対応する拘束条件式に対する重みが決定された場合、ステップS14262に進み、拘束条件式生成部14222は、その拘束条件式に対する重みWを、拘束条件式に付けて、新たな拘束条件式を生成する。
【1526】
例えば、閾値処理部14224において、上述した式(146)の差分Kiが求められ、閾値処理部14224で差分K1、K5、K7の絶対値が閾値以上であると判定された場合、拘束条件式生成部14222が生成する拘束条件式は、上述した式(149)で表される。
【1527】
このように、仮画素値に基づいて、差分絶対値|Ki|が閾値より小さい場合にのみ、拘束条件式を生成することにより、動きボケ除去処理部14123では、動きボケのない画像の平坦部分の画素に対応する拘束条件式にのみ、拘束条件式を生成する。従って、平坦部分において、ノイズ等による画素値の変動を抑制、つまり、ノイズを抑制した動きボケのない画素値を求めることが可能となる。
【1528】
即ち、動きボケ除去処理部14123は、処理領域内の各水平ラインの画素に対して、その右に隣接する画素との動きボケのない画素値どうしの差は小さいという拘束条件を与える拘束条件式に、同一の重みを付して、仮画素値を求め、さらに、処理領域の各水平ラインの画素について、その右隣の隣接画素との仮画素値どうしの差分絶対値を求める。そして、動きボケ除去処理部14123は、隣接画素との仮画素値どうしの差分絶対値が閾値以上の画素は、動きボケのない画像のエッジ部分であり、隣接画素の仮画素値の差分絶対値が閾値より小さい画素は、動きボケのない画像の平坦部分であるとして、動きボケのない画像の平坦部分の画素に対してのみ、隣接画素の動きボケのない画素値の差は小さいという拘束条件式を与える拘束条件式を生成する。従って、このように生成される拘束条件式によれば、エッジ部分の画像においてはエッジを維持し、平坦部分の画像においてはノイズを抑制(平坦さを維持)することができる。
【1529】
ステップS14263では、ラインデータについて、ステップS14251でモデル方程式生成部14221から供給されるモデル方程式と、ステップS14262で拘束条件式生成部14222から供給される新たな拘束条件式とを最小二乗誤差最小規範で解くことにより、即ち、モデル方程式と拘束条件式とから正規方程式を生成し、その正規方程式を演算することにより、動きボケのない画像の1ラインデータを算出し、リターンする。
【1530】
以上のように、動きボケ除去処理部14123の第3の構成例では、ラインデータの画素に対応する拘束条件式に与えられる重みが、画素のアクティビティに基づいて0とされ、0でない重みが与えられている拘束条件式とモデル方程式とを解くことにより、動きボケのない画像のラインデータが求められる。
【1531】
なお、上述した式(145)や式(149)における重みWの値は、ユーザが入力することもできる。
【1532】
また、上述した説明では、拘束条件式に対して重みを与え、その重みを変更したが、拘束条件式だけでなく、モデル方程式に対して重みを与え、その重みを変更してもよい。
【1533】
なお、上述した図113の定常性設定部14002(他の定常性設定部においても同様)においては、定常性情報としての動きは、ユーザの操作に基づいて設定する他、入力画像から動きを検出して設定することもできる。
【1534】
そこで、図113の定常性設定部14002における動きの検出方法について説明する。
【1535】
入力画像におけるあるオブジェクトが動いている場合の、そのオブジェクトの動きとしての、例えば動きベクトルを検出する方法としては、いわゆるブロックマッチング法が知られている。
【1536】
しかしながら、ブロックマッチング法では、注目しているフレームと、その前または後のフレームとのマッチングを行うため、注目している1フレームだけから動きを検出することは困難である。
【1537】
そこで、定常性設定部14002では、1フレームの入力画像だけから、動きの検出を行うことができるようになっている。
【1538】
即ち、図143は、図113の定常性設定部14002の構成例を示している。
【1539】
図143で構成が示される定常性設定部14002においては、入力画像の中の処理領域におけるオブジェクトの動き方向が検出され、動き方向が水平方向になるように入力画像が補正される。そして、動き方向に隣接する画素の画素値の差分値である、入力画像のオブジェクトの動き方向に一次微分した特徴量が検出される。
【1540】
さらに、注目している画素の特徴量と動き方向に所定の距離の対応画素の特徴量との相関が検出され、検出された相関が最大である対応画素と注目画素との距離に応じてオブジェクトの動き量が検出される。
【1541】
すなわち、図143で構成が示される定常性設定部14002は、動き方向検出部11201、動き方向修正部11202、特徴量検出部11203、および動き量検出部11204を含む。
【1542】
さらに、動き方向検出部11201は、アクティビティ演算部11211およびアクティビティ評価部11212を含む。動き方向修正部11202は、アフィン変換部11213を含む。
【1543】
特徴量検出部11203は、差分演算部11214、差分評価部11215、中間画像作成部11216、中間画像作成部11217、フレームメモリ11218、符号反転部11219、およびフレームメモリ11220を含む。
【1544】
さらに、動き量検出部11204は、相関検出部11221および相関評価部11222を含む。
【1545】
図143で構成が示される定常性設定部14002において、入力画像は、動き方向検出部11201および動き方向修正部11202に供給される。さらに、図113の処理領域設定部14001が出力する処理領域情報も、動き方向検出部11201および動き方向修正部11202に供給される。
【1546】
動き方向検出部11201は、入力画像と処理領域情報を取得して、取得した入力画像から処理領域における動き方向を検出する。
【1547】
動いている対象物を撮像したとき、対象物の画像には動きボケが生じる。これは、対象物の画像を撮像するセンサ2としてのカメラまたはビデオカメラのイメージセンサの働きによるものである。
【1548】
すなわち、CCD(Charge Coupled Device)またはCMOS(Complementary Metal-Oxide Semiconductor)センサなどのイメージセンサは、露光時間(シャッタ時間)において、画素毎に入射された光を連続的に電荷に変換し、さらに電荷を1つの画像値に変換する。撮像の対象物が静止しているとき、露光している期間において、対象物の同じ部位の画像(光)が1つの画素値に変換される。このように撮像された画像には、動きボケは含まれていない。
【1549】
これに対して、対象物が動いているとき、露光している期間において、1つの画素に入射される対象物の部位の画像が変化し、対象物の異なる部位の画像が1つの画素値に変換されてしまう。逆に言えば、対象物の1つの部位の画像が複数の画素値に射影される。これが動きボケである。
【1550】
動きボケは、対象物の動き方向に生じる。
【1551】
動きボケが生じている部分(動きボケを含む領域)の動き方向に並んでいる画素の画素値のそれぞれに注目すると、動き方向に並んでいる画素の画素値には、対象物のほぼ同じ範囲の部位の画像が射影されている。従って、動きボケが生じている部分の、動き方向に並んでいる画素の画素値の変化は、より少なくなっていると言える。
【1552】
動き方向検出部11201は、このような入力画像の処理領域における画素の画素値の変化、すなわちアクティビティを基に、動き方向を検出する。
【1553】
より具体的には、動き方向検出部11201のアクティビティ演算部11211は、予め定めた方向毎に、各方向に並んでいる画素の画素値の変化(アクティビティ)を演算する。例えば、アクティビティ演算部11211は、予め定めた方向毎に、各方向に対応して位置する画素の画素値の差分をアクティビティとして演算する。アクティビティ演算部11211は、演算した画素値の変化を示す情報をアクティビティ評価部11212に供給する。
【1554】
アクティビティ評価部11212は、アクティビティ演算部11211から供給された、予め定めた方向毎の画素の画素値の変化の中の、最小の画素値の変化を選択し、選択した画素値の変化に対応する方向を動き方向とする。
【1555】
動き方向検出部11201は、このように検出した動き方向を示す動き方向情報を動き方向修正部11202に供給する。
【1556】
動き方向修正部11202には、処理領域情報も供給される。動き方向修正部11202は、動き方向検出部11201から供給された動き方向情報を基に、動き方向が画像の水平方向となるように入力画像における処理領域の中の画像データを変換する。
【1557】
例えば、動き方向修正部11202のアフィン変換部11213は、動き方向検出部11201から供給された動き方向情報を基に、動き方向情報で示される動き方向が画像の水平方向となるように入力画像における処理領域の中の画像データをアフィン変換する。
【1558】
動き方向修正部11202は、動き方向が画像の水平方向となるように変換された入力画像における処理領域の中の画像データを特徴量検出部11203に供給する。
【1559】
なお、ここでは、入力画像において、オブジェクトが水平方向(左から右方向)に移動していることを仮定しているので、定常性設定部14002は、動き方向検出部11201と動き方向修正部11202を設けずに構成することが可能である。
【1560】
特徴量検出部11203は、動き方向修正部11202から供給された画像の特徴量を検出する。
【1561】
すなわち、特徴量検出部11203の差分演算部11214は、入力画像の処理領域の画素から1つの画素を選択することにより、注目している注目画素とする。そして、特徴量検出部11203の差分演算部11214は、注目画素の画素値から、注目画素の右隣の画素の画素値を引き算することにより差分値を求める。
【1562】
差分演算部11214は、入力画像の処理領域の画素を順に注目画素として、差分値を求める。すなわち、差分演算部11214は、入力画像の処理領域の全ての画素に対して、差分値を求める。差分演算部11214は、差分値に対応する注目画素の位置を示す情報(差分値の画面上の位置を示す位置情報)と共に、このように演算された差分値を差分評価部11215に供給する。
【1563】
差分評価部11215は、差分値が0以上であるか否かを判定し、0以上である差分値を、差分値の画面上に位置を示す位置情報と共に、中間画像作成部11216に供給し、0未満である差分値を、差分値の画面上の位置を示す位置情報と共に、中間画像作成部11217に供給する。
【1564】
中間画像作成部11216は、差分値の画面上に位置を示す位置情報と共に、差分評価部11215から供給された0以上である差分値を基に、差分値からなる中間画像を作成する。すなわち、中間画像作成部11216は、位置情報で示される画面上の位置の画素に、差分評価部11215から差分値が供給された0以上である差分値を設定し、差分評価部11215から差分値が供給されなかった位置の画素に0を設定して、中間画像を作成する。中間画像作成部11216は、このように作成した中間画像(以下、非反転中間画像と称する。)をフレームメモリ11218に供給する。
【1565】
中間画像作成部11217は、差分値の画面上に位置を示す位置情報と共に、差分評価部11215から供給された0未満(負の値)である差分値を基に、差分値からなる中間画像を作成する。すなわち、中間画像作成部11217は、位置情報で示される画面上の位置の画素に、差分評価部11215から差分値が供給された0未満である差分値を設定し、差分評価部11215から差分値が供給されなかった位置の画素に0を設定して、中間画像を作成する。中間画像作成部11216は、このように作成した中間画像を符号反転部11219に供給する。
【1566】
符号反転部11219は、中間画像作成部11217から供給された中間画像の画素に設定されている、0未満である差分値の符号を反転する。中間画像の画素に設定されている0である値の符号は、反転されない。すなわち、符号反転部11219は、中間画像作成部11217から供給された中間画像の画素に設定されている、0未満である差分値を選択し、選択した0未満である差分値を、差分値と同じ絶対値の0を超える値に変換する。例えば、−15である差分値は、符号が反転され、15に変換される。符号反転部11219は、このように符号が反転された中間画像(以下、反転中間画像と称する。)をフレームメモリ11220に供給する。
【1567】
フレームメモリ11218は、0以上である差分値と0とからなる非反転中間画像を、特徴量として動き量検出部11204に供給する。フレームメモリ11220は、符号が反転され0を超える値とされた差分値と0とからなる反転中間画像を、特徴量として動き量検出部11204に供給する。
【1568】
動き量検出部11204は、特徴量検出部11203から供給された特徴量を基に、動きを検出する。すなわち、動き量検出部11204は、入力画像の処理領域における対象物の画像(オブジェクト)の画素の中の少なくとも注目画素の特徴と、注目画素に対して動き方向に沿って配される対応画素の特徴との相関を検出し、検出された相関に応じて、入力画像の処理領域における対象物の画像(オブジェクト)の動き量を検出する。
【1569】
動き量検出部11204の相関検出部11221は、特徴量検出部11203のフレームメモリ11218から供給された、特徴量としての、非反転中間画像と、特徴量検出部11203のフレームメモリ11220から供給された、特徴量としての、反転中間画像との相関を検出する。相関検出部11221は、検出された相関を相関評価部11222に供給する。
【1570】
より詳細に説明すれば、例えば、動き量検出部11204の相関検出部11221は、特徴量検出部11203のフレームメモリ11218から供給された、0以上である差分値と0とからなる非反転中間画像に対して、特徴量検出部11203のフレームメモリ11220から供給された、符号が反転され0を超える値とされた差分値と0とからなる反転中間画像を、画素を単位として、画面の水平方向に移動させる(ずらす(シフトさせる))。すなわち、相関検出部11221は、反転中間画像を構成する画素の画面上の位置を水平方向に移動させる。
【1571】
反転中間画像(の画素)を、画面上の水平方向に移動させることによって、非反転中間画像の画素と、反転中間画像の画素との画面上の位置の関係が変化する。例えば、移動前に、非反転中間画像の注目画素に対応する画面上の位置にある、反転中間画像の対応画素は、移動後において、移動量だけ、非反転中間画像の注目画素に対応する位置から離れることになる。より具体的には、反転中間画像を右に20画素移動したとき、反転中間画像の対応画素は、非反転中間画像の注目画素に対応する位置から右に20画素離れる。逆に言えば、移動後に、非反転中間画像の注目画素に対応する画面上の位置にある、反転中間画像の対応画素は、移動前において、注目画素に対応する位置から移動量だけ離れている。
【1572】
相関検出部11221は、非反転中間画像と、移動された反転中間画像との、対応する位置の画素の画素値の差分を演算し、差分の絶対値の和を相関値とする。
【1573】
例えば、相関検出部11221は、非反転中間画像に対して、反転中間画像を、画面の左方向に70画素乃至画面の右方向に70画素の範囲で、1画素ずつ画面の水平方向に移動させ(ずらして)、移動させた位置毎(移動量毎)に、非反転中間画像および移動された反転中間画像について、画面上の同じ位置となる画素の画素値の差分を演算し、差分の絶対値の和を相関値とする。
【1574】
例えば、非反転中間画像に対して反転中間画像を、画面の左方向に移動するとき、移動量を負(マイナス)で表す。非反転中間画像に対して反転中間画像を、画面の右方向に移動するとき、移動量を正(プラス)で表す。相関検出部11221は、−70画素乃至+70画素の移動量毎に、非反転中間画像および移動された反転中間画像について、画面上の同じ位置となる画素の画素値の差分を演算し、差分の絶対値の和を相関値とする。
【1575】
相関検出部11221は、移動量に対応する相関値を相関評価部11222に供給する。すなわち、相関検出部11221は、移動量と相関値との組を相関評価部11222に供給する。
【1576】
相関評価部11222は、相関に応じて、入力画像の処理領域における対象物の画像の動き量を検出する。具体的には、相関評価部11222は、相関検出部11221から供給された相関のうち、最大の(最も強い)相関に対応する移動量を動き量とする。
【1577】
例えば、相関評価部11222は、相関検出部11221から供給された相関値である、差分の絶対値の和の内、最小の値を選択し、選択された最小の値に対応する移動量を動き量に設定する。
【1578】
相関評価部11222は、検出された動き量を出力する。
【1579】
図144乃至図146は、図143の定常性設定部14002による動き検出の原理を説明する図である。
【1580】
いま、撮像の対象物である、白い前景オブジェクトが、他の撮像の対象物である、黒い背景オブジェクトの前(手前)に配置され、左側から右側に移動しており、CCDまたはCMOSセンサなどのイメージセンサを有するカメラが、所定の露光時間(シャッタ時間)で、背景オブジェクトと共に、前景オブジェクトを撮像するものとする。
【1581】
この場合にカメラが出力する画像の1フレームに注目すると、背景オブジェクトは、黒いので、例えば、カメラは、背景オブジェクトの画像に対して0である画素値を出力する。前景オブジェクトは、白いので、例えば、カメラは、前景オブジェクトの画像に対して255である画素値を出力する。なお、ここでは、カメラが、0乃至28−1の範囲の画素値を出力するものであるとする。
【1582】
図144上側の図は、カメラのシャッタが開いた瞬間(露光を開始した瞬間)における位置に、前景オブジェクトが静止しているとき、カメラが出力する画像の画素値を示す図である。
【1583】
図144下側の図は、カメラのシャッタが閉じる瞬間(露光を終了する瞬間)における位置に、前景オブジェクトが静止しているとき、カメラが出力する画像の画素値を示す図である。
【1584】
図144で示されるように、前景オブジェクトの画像の動き量は、カメラのシャッタが開いた瞬間から、カメラのシャッタが閉じる瞬間までに、前景オブジェクトの画像が移動した距離である。
【1585】
図145は、背景オブジェクトの前を移動する前景オブジェクトをカメラで撮像したときに、カメラから出力される画像の画素値を示す図である。カメラのイメージセンサは、露光時間(シャッタ時間)において、画素毎に対象物の画像(光)を連続的に電荷に変換し、さらに電荷を1つの画像値に変換するので、前景オブジェクト11251の画像は、複数の画素の画素値に射影される。図144で示される画像の画素値の最大値に比較して、図145で示される画像の画素値の最大値は小さくなる。
【1586】
図145で示される画素値のスロープの幅は、背景オブジェクトの画像の幅に対応する。
【1587】
図145で示される画像の個々の画素について、右隣の画素との差分値を計算し、差分値を画素に設定すると、図146に示される、差分値からなる画像が得られる。
【1588】
すなわち、図145で示される画像の画素から1つの画素が選択され、注目している注目画素とされる。そして、注目画素の画素値から、注目画素の右隣の画素の画素値が引き算されることにより差分値が求められる。差分値は、注目画素に対応する位置の画素に設定される。図145で示される画像の画素が順に注目画素とされ、図146で示される差分値からなる画像が求められる。
【1589】
図144上側の図で示される、カメラのシャッタが開いた瞬間における、前景オブジェクトの位置に対して1画素左側に、符号が負(マイナス)である差分値が現れ、図144下側の図で示される、カメラのシャッタが閉じる瞬間における、前景オブジェクトの位置に対して1画素左側に、符号が正(プラス)である差分値が現れる。
【1590】
従って、図146で示される、符号が負(マイナス)である差分値の符号を反転した値と、符号が正(プラス)である差分値とのマッチングをとると、例えば、マッチングしたときの、符号が正(プラス)である差分値を基準とした、符号が負(マイナス)である差分値の符号を反転した値の移動量は、動き量と同じである。
【1591】
例えば、符号が正(プラス)である差分値を基準として、符号が負(マイナス)である差分値の符号を反転した値が水平方向に移動され、その移動量毎に、負である差分値を反転した値と正である差分値との相関が検出され、最大の(最も強い)相関が検出される。最大の相関が検出されたときの移動量は、動き量と同じである。
【1592】
より具体的には、例えば、符号が正(プラス)である差分値を基準として、符号が負(マイナス)である差分値の符号を反転した値が水平方向に移動され、その移動量毎に、負である差分値を反転した値と正である差分値との相関として、画素毎に、反転した値から正の差分値が引き算される。そして、引き算した結果の内の最小の値、すなわち最大の相関が検出される。検出された最大の相関に対応する移動量は、動き量と同じである。
【1593】
以上のように、画像の1フレームから、露光時間(シャッタ時間)において、対象物の画像が移動した量である動き量を検出することができる。
【1594】
すなわち、特徴量検出部11203の差分演算部11214は、入力画像の処理領域における画素から1つの画素を選択して、注目画素とし、注目画素の画素値から、注目画素の右隣の画素の画素値を引き算することにより、例えば、図146で示される差分値を演算する。差分評価部11215は、差分の符号を基に、正の差分値と負の差分値とに分類する。
【1595】
中間画像作成部11216は、分類された正の差分値から、その正の差分値からなる非反転中間画像を作成する。中間画像作成部11217は、分類された負の差分値から、その負の差分値からなる中間画像を作成する。符号反転部11219は、負の差分値からなる中間画像の負の画素値の符号を反転することにより、反転中間画像を作成する。
【1596】
動き量検出部11204は、相関が最も強い非反転中間画像と反転中間画像との移動量を求めて、求められた移動量を動き量とする。
【1597】
特徴量検出部11203が、動いている対象物の画像(オブジェクト)を検出し、動いている対象物の画像の特徴量を検出したとき、動き量検出部11204は、特徴量を基に相関を検出し、検出された相関に応じて、入力画像内の対象物の画像(オブジェクト)の動き量を検出する。
【1598】
また、特徴量検出部11203が、動いている対象物の画像に属する画素から注目している画素である注目画素を選択し、注目画素の特徴量を検出したとき、動き量検出部11204は、注目画素の特徴量と、注目画素に対して動き方向に沿って配される対応画素の特徴量との相関を検出し、検出された相関に応じて、入力画像の処理領域における対象物の画像の動き量を検出する。
【1599】
図147は、図143の定常性設定部14002による動き量の検出の処理を説明するフローチャートである。
【1600】
ステップS11201において、動き方向検出部11201および動き方向修正部11202は、入力画像と処理領域情報を取得し、ステップS11202に進む。
【1601】
ステップS11202において、動き方向検出部112011のアクティビティ演算部11211は、ステップS11201の処理により取得された入力画像における処理領域の画素について、アクティビティを演算し、ステップS11203に進む。
【1602】
例えば、アクティビティ演算部11211は、入力画像における処理領域の画素のうち、注目している画素である注目画素を選択する。アクティビティ演算部11211は、注目画素の周辺の所定の数の周辺画素を抽出する。例えば、アクティビティ演算部11211は、注目画素を中心とした、縦×横が5×5の画素からなる周辺画素を抽出する。
【1603】
そして、アクティビティ演算部11211は、抽出した周辺画素から、予め定めた画像上の方向に対応するアクティビティを検出する。
【1604】
以下の説明において、横方向の画素の1列の並びを行と称し、縦方向の画素の1列の並びを列と称する。
【1605】
アクティビティ演算部11211は、例えば、5×5の周辺画素について、画面上の上下方向(垂直)に隣接する画素の画素値の差分を算出して、算出された差分の絶対値の総和を差分の数で割り、その結果をアクティビティとすることにより、画面の水平方向を基準として、90度の角度(画面の垂直方向)に対する、アクティビティを検出する。
【1606】
例えば、20組の、画面上の上下方向に隣接する2つの画素について、画素値の差分が算出され、算出された差分の絶対値の和が20で割り算され、その結果(商)が、90度の角度に対するアクティビティに設定される。
【1607】
アクティビティ演算部11211は、例えば、5×5の周辺画素について、最も下の行の画素であって、最も左側の画素乃至左から4番目の画素のそれぞれの画素値と、それぞれの画素に対して、4画素上側であって、1画素右側の画素の画素値との差分を算出して、算出された差分の絶対値の総和を差分の数で割り、その結果をアクティビティとすることにより、画面の水平方向を基準として、76度の角度(tan-1(4/1))に対する、アクティビティを検出する。
【1608】
そして、例えば、4組の、右上方向であって、上下方向に4画素、および左右方向に1画素離れた位置にある2つの画素について、画素値の差分が算出され、算出された差分の絶対値の和が4で割り算され、その結果(商)が、76度の角度に対するアクティビティに設定される。
【1609】
アクティビティ演算部11211は、同様の処理で、画面の水平方向を基準として、90度乃至180度の範囲の角度に対するアクティビティを検出する。90度乃至180度の範囲の角度に対するアクティビティを検出する場合、左上方向に位置する画素の画素値の差分を基に、アクティビティが算出される。
【1610】
このように検出されたアクティビティは、注目画素に対するアクティビティとされる。
【1611】
なお、検出されたアクティビティを、周辺画素に対するアクティビティとするようにしてもよい。
【1612】
また、周辺画素は、縦×横が5×5の画素からなると説明したが、5×5の画素に限らず、所望の範囲の画素とすることができる。周辺画素の数が多い場合、角度の分解能が向上する。
【1613】
アクティビティ演算部11211は、複数の方向に対応するアクティビティを示す情報をアクティビティ評価部11212に供給する。
【1614】
図147に戻り、ステップS11203において、アクティビティ評価部11212は、ステップS11202の処理において算出された、所定の方向に対応するアクティビティを基に、最小のアクティビティを選択し、選択された方向を動き方向とすることにより、動き方向を求めて、ステップS11204に進む。
【1615】
ステップS11204において、動き方向修正部11202は、ステップS11203の処理において求められた動き方向を基に、動き方向が画像の水平方向となるように入力画像の処理領域における画像データを変換し、ステップS11205に進む。例えば、ステップS11204において、動き方向修正部11202のアフィン変換部11213は、ステップS11203の処理において求められた動き方向を基に、動き方向が画像の水平方向となるように入力画像の処理領域における画像データをアフィン変換する。より具体的には、例えば、アフィン変換部11213は、画面の水平方向を基準として、動き方向が18度の角度であるとき、入力画像の処理領域における画像データを時計方向に18度回動するようにアフィン変換する。
【1616】
ステップS11205において、特徴量検出部11203の差分演算部11214は、ステップS11204の処理において、動き方向が画面の水平方向となるように変換された入力画像の処理領域における各画素について、水平方向に隣接する画素との画素値の差分値を演算し、ステップS11206に進む。
【1617】
例えば、ステップS11205において、差分演算部11214は、入力画像の処理領域における画素から1つの画素を選択することにより、注目している注目画素とする。そして、差分演算部11214は、注目画素の画素値から、注目画素の右隣の画素の画素値を引き算することにより差分値を求める。
【1618】
ステップS11206において、特徴量検出部11203の差分評価部11215は、差分値の符号を基に、差分値を振り分け、ステップS11207に進む。すなわち、差分評価部11215は、0以上である差分値を中間画像作成部11216に供給し、0未満である差分値を中間画像作成部11217に供給する。この場合において、差分評価部11215は、差分値の画面上に位置を示す位置情報と共に、差分値を中間画像作成部11216または中間画像作成部11217に供給する。
【1619】
ステップS11207において、特徴量検出部11203の中間画像作成部11216は、ステップS11206の処理で振り分けられた、0以上である差分値(正の差分値)を基に、正の差分値からなる中間画像を生成し、ステップS11208に進む。すなわち、ステップS11207において、中間画像作成部11216は、位置情報で示される画面上の位置の画素に正の差分値を設定し、差分値が供給されなかった位置の画素に0を設定することにより、中間画像を作成する。
【1620】
このように、ステップS11207の処理において、非反転中間画像が生成される。
【1621】
ステップS11208において、特徴量検出部11203の中間画像作成部11217は、ステップS11206の処理で振り分けられた、0未満である差分値(負の差分値)を基に、負の差分値からなる中間画像を生成し、ステップS11209に進む。すなわち、ステップS11208において、中間画像作成部11217は、位置情報で示される画面上の位置の画素に負の差分値を設定し、差分値が供給されなかった位置の画素に0を設定することにより、中間画像を作成する。
【1622】
ステップS11209において、特徴量検出部11203の符号反転部11219は、ステップS11208の処理で生成された負の差分値からなる中間画像の負の差分値の符号を反転する。すなわち、ステップS11209において、負の中間画像の画素に設定されている、負の差分値が、同じ絶対値の正の値に変換される。
【1623】
このように、ステップS11209において、反転中間画像が生成され、その後、ステップS11210に進む。
【1624】
ステップS11210において、動き量検出部11204は、相関の検出の処理を実行する。ステップS11210の処理の詳細は、図148のフローチャートを参照して、後述する。
【1625】
ステップS11211において、相関評価部11222は、ステップS11210の処理で検出された相関のうち、最も強い相関を選択し、ステップS11212に進む。例えば、ステップS11211において、画素値の差分の絶対値の和である相関値のうち、最小の相関値が選択される。
【1626】
ステップS11212において、相関評価部11222は、ステップS11211の処理で選択された、最も強い相関に対応する移動量を動き量に設定して、ステップS11213に進む。例えば、ステップS11212において、画素値の差分の絶対値の和である相関値のうち、選択された最小の相関値に対応して、後述するステップS11223の処理により記憶されている、反転中間画像の移動量が動き量に設定される。
【1627】
ステップS11213において、動き量検出部11204は、ステップS11210の処理において検出した動き量を出力して、処理は終了する。
【1628】
図148は、ステップS11210の処理に対応する、相関の検出の処理を説明するフローチャートである。
【1629】
ステップS11221において、動き量検出部11204の相関検出部11221は、ステップS11209の処理で生成された、反転中間画像の画素の位置を、画素を単位として水平方向に移動し、ステップS11222に進む。
【1630】
ステップS11222において、相関検出部11221は、非反転中間画像と、ステップS11221の処理において、画素の位置が移動された反転中間画像との相関を検出し、ステップS11223に進む。例えば、ステップS11222において、非反転中間画像の画素の画素値と、画面上で対応する位置の、反転中間画像の画素の画素値との差分が算出され、算出された差分の絶対値の和が相関値として検出される。相関検出部11221は、ステップS11221の処理における反転中間画像の画素の移動量と共に、検出された相関を示す相関情報を相関評価部11222に供給する。
【1631】
ステップS11223において、相関評価部11222は、ステップS11221の処理における反転中間画像の画素の移動量と共に、ステップS11222の処理において検出された相関を記憶し、ステップS11224に進む。例えば、相関評価部11222は、ステップS11221の処理における反転中間画像の画素の移動量と共に、画素値の差分の絶対値の和である相関値を記憶する。
【1632】
ステップS11224において、相関検出部11221は、全ての移動量に対する相関を検出したか否かを判定し、まだ相関を検出していない移動量があると判定された場合、ステップS11221に戻り、次の移動量に対する相関を検出する処理を繰り返す。
【1633】
例えば、ステップS11224において、相関検出部11221は、画面の左方向に70画素乃至画面の右方向に70画素の範囲で、反転中間画像の画素を移動したときの相関を全て検出したか否かを判定する。
【1634】
ステップS11224において、全ての移動量に対する相関を検出したと判定された場合、処理は終了する(リターンする)。
【1635】
このように、相関検出部11221は、相関を検出することができる。
【1636】
以上のように、図143に構成を示す定常性設定部14002は、画像の1つのフレームから、動き量を検出することができる。
【1637】
なお、ここでは、処理領域を対象として動きを検出するようにしたが、全画面を処理対象とすることで、例えば、手振れにより発生した全画面の動きを検出することができる。
【1638】
また、入力画像に同じ模様の繰り返しパターンが多く含まれていても、処理の対象となる入力画像の処理領域の動き量および動き方向が一定であれば、正確に動き量を検出することができる。
【1639】
なお、上述の場合には、画像の1つのフレームから動き量を検出すると説明したが、1つのフィールドから動き量を検出するようにしてもよいことは勿論である。
【1640】
また、選択した注目画素の周辺についてのみ、動き量を検出するようにしてもよい。
【1641】
なお、センサ2は、固体撮像素子である、例えば、BBD(Bucket Brigade Device)、CID(Charge Injection Device)、またはCPD(Charge Priming Device)などのセンサでもよい。
【1642】
本発明の信号処理を行うプログラムを記録した記録媒体は、図2で示されるように、コンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク51(フレキシブルディスクを含む)、光ディスク52(CD-ROM(Compaut Disk-Read Only Memory),DVD(Digital Versatile Disk)を含む)、光磁気ディスク53(MD(Mini-Disk)(商標)を含む)、もしくは半導体メモリ54などよりなるパッケージメディアにより構成されるだけでなく、コンピュータに予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM22や、記憶部28に含まれるハードディスクなどで構成される。
【1643】
なお、上述した一連の処理を実行させるプログラムは、必要に応じてルータ、モデムなどのインタフェースを介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を介してコンピュータにインストールされるようにしてもよい。
【1644】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【1645】
【発明の効果】
以上の如く、本発明によれば、現実世界の信号により近似した画像等を得ることが可能となる。
【図面の簡単な説明】
【図1】本発明の原理を示す図である。
【図2】信号処理装置4のハードウェア構成の例を示すブロック図である。
【図3】図1の信号処理装置4の一実施の形態の構成例を示すブロック図である。
【図4】信号処理装置4の信号処理の原理をより具体的に説明する図である。
【図5】イメージセンサ上の画素の配置の例を説明する図である。
【図6】 CCDである検出素子の動作を説明する図である。
【図7】画素D乃至画素Fに対応する検出素子に入射される光と、画素値との関係を説明する図である。
【図8】時間の経過と、1つの画素に対応する検出素子に入射される光と、画素値との関係を説明する図である。
【図9】実世界1の線状の物の画像の例を示す図である。
【図10】実際の撮像により得られた画像データの画素値の例を示す図である。
【図11】背景とは異なる色であって、単色の、直線状の縁を有する物の実世界1の画像の例を示す図である。
【図12】実際の撮像により得られた画像データの画素値の例を示す図である。
【図13】画像データの模式図である。
【図14】M個のデータ162によるモデル161の推定を説明する図である。
【図15】実世界1の信号とデータ3との関係を説明する図である。
【図16】式を立てるときに注目するデータ3の例を示す図である。
【図17】式を立てる場合における、実世界1における2つの物体に対する信号および混合領域に属する値を説明する図である。
【図18】式(18)、式(19)、および式(22)で表される定常性を説明する図である。
【図19】データ3から抽出される、M個のデータ162の例を示す図である。
【図20】データ3における、時間方向および2次元の空間方向の実世界1の信号の積分を説明する図である。
【図21】空間方向により解像度の高い高解像度データを生成するときの、積分の領域を説明する図である。
【図22】時間方向により解像度の高い高解像度データを生成するときの、積分の領域を説明する図である。
【図23】時間空間方向により解像度の高い高解像度データを生成するときの、積分の領域を説明する図である。
【図24】入力画像の元の画像を示す図である。
【図25】入力画像の例を示す図である。
【図26】従来のクラス分類適応処理を適用して得られた画像を示す図である。
【図27】細線の領域を検出した結果を示す図である。
【図28】信号処理装置4から出力された出力画像の例を示す図である。
【図29】信号処理装置4による、信号の処理を説明するフローチャートである。
【図30】データ定常性検出部101の構成を示すブロック図である。
【図31】背景の前に細線がある実世界1の画像を示す図である。
【図32】平面による背景の近似を説明する図である。
【図33】細線の画像が射影された画像データの断面形状を示す図である。
【図34】細線の画像が射影された画像データの断面形状を示す図である。
【図35】細線の画像が射影された画像データの断面形状を示す図である。
【図36】頂点の検出および単調増減領域の検出の処理を説明する図である。
【図37】頂点の画素値が閾値を超え、隣接する画素の画素値が閾値以下である細線領域を検出する処理を説明する図である。
【図38】図37の点線AA'で示す方向に並ぶ画素の画素値を表す図である。
【図39】単調増減領域の連続性の検出の処理を説明する図である。
【図40】細線の画像が射影された領域の検出の他の処理の例を示す図である。
【図41】定常性検出の処理を説明するフローチャートである。
【図42】時間方向のデータの定常性を検出の処理を説明する図である。
【図43】非定常成分抽出部201の構成を示すブロック図である。
【図44】棄却される回数を説明する図である。
【図45】非定常成分の抽出の処理を説明するフローチャートである。
【図46】定常成分の抽出の処理を説明するフローチャートである。
【図47】定常成分の抽出の他の処理を説明するフローチャートである。
【図48】定常成分の抽出のさらに他の処理を説明するフローチャートである。
【図49】データ定常性検出部101の他の構成を示すブロック図である。
【図50】データの定常性を有する入力画像におけるアクティビティを説明する図である。
【図51】アクティビティを検出するためのブロックを説明する図である。
【図52】アクティビティに対するデータの定常性の角度を説明する図である。
【図53】データ定常性検出部101のより詳細な構成を示すブロック図である。
【図54】画素の組を説明する図である。
【図55】画素の組の位置とデータの定常性の角度との関係を説明する図である。
【図56】データの定常性の検出の処理を説明するフローチャートである。
【図57】時間方向および空間方向のデータの定常性の角度を検出するとき、抽出される画素の組を示す図である。
【図58】図3の実世界推定部の実施の形態の1例である、関数近似手法の原理を説明する図である。
【図59】センサがCCDとされる場合の積分効果を説明する図である。
【図60】図59のセンサの積分効果の具体的な例を説明する図である。
【図61】図59のセンサの積分効果の具体的な他の例を説明する図である。
【図62】図60で示される細線含有実世界領域を表した図である。
【図63】図3の実世界推定部の実施の形態の1例の原理を、図58の例と対比させて説明する図である。
【図64】図60で示される細線含有データ領域を表した図である。
【図65】図64の細線含有データ領域に含まれる各画素値のそれぞれをグラフ化した図である。
【図66】図65の細線含有データ領域に含まれる各画素値を近似した近似関数をグラフ化した図である。
【図67】図60で示される細線含有実世界領域が有する空間方向の定常性を説明する図である。
【図68】図64の細線含有データ領域に含まれる各画素値のそれぞれをグラフ化した図である。
【図69】図68で示される入力画素値のそれぞれを、所定のシフト量だけシフトさせた状態を説明する図である。
【図70】空間方向の定常性を考慮して、図65の細線含有データ領域に含まれる各画素値を近似した近似関数をグラフ化した図である。
【図71】空間混合領域を説明する図である。
【図72】空間混合領域における、実世界の信号を近似した近似関数を説明する図である。
【図73】センサの積分特性と空間方向の定常性の両方を考慮して、図65の細線含有データ領域に対応する実世界の信号を近似した近似関数をグラフ化した図である。
【図74】図58で示される原理を有する関数近似手法のうちの、1次多項式近似手法を利用する実世界推定部の構成例を説明するブロック図である。
【図75】図74の構成の実世界推定部が実行する実世界の推定処理を説明するフローチャートである。
【図76】タップ範囲を説明する図である。
【図77】空間方向の定常性を有する実世界の信号を説明する図である。
【図78】センサがCCDとされる場合の積分効果を説明する図である。
【図79】断面方向距離を説明する図である。
【図80】図58で示される原理を有する関数近似手法のうちの、2次多項式近似手法を利用する実世界推定部の構成例を説明するブロック図である。
【図81】図80の構成の実世界推定部が実行する実世界の推定処理を説明するフローチャートである。
【図82】タップ範囲を説明する図である。
【図83】時空間方向の定常性の方向を説明する図である。
【図84】センサがCCDとされる場合の積分効果を説明する図である。
【図85】空間方向の定常性を有する実世界の信号を説明する図である。
【図86】時空間方向の定常性を有する実世界の信号を説明する図である。
【図87】図58で示される原理を有する関数近似手法のうちの、3次元近似手法を利用する実世界推定部の構成例を説明するブロック図である。
【図88】図87の構成の実世界推定部が実行する実世界の推定処理を説明するフローチャートである。
【図89】図3の画像生成部の実施の形態の1例である、再積分手法の原理を説明する図である。
【図90】入力画素と、その入力画素に対応する、実世界の信号を近似する近似関数の例を説明する図である。
【図91】図90で示される近似関数から、図90で示される1つの入力画素における、高解像度の4つの画素を創造する例を説明する図である。
【図92】図89で示される原理を有する再積分手法のうちの、1次元再積分手法を利用する画像生成部の構成例を説明するブロック図である。
【図93】図92の構成の画像生成部が実行する画像の生成処理を説明するフローチャートである。
【図94】入力画像の元の画像の例を表す図である。
【図95】図94の画像に対応する画像データの例を表す図である。
【図96】入力画像の例を表す図である。
【図97】図96の画像に対応する画像データの例を表す図である。
【図98】入力画像に対して従来のクラス分類適応処理を施して得られる画像の例を表す図である。
【図99】図98の画像に対応する画像データの例を表す図である。
【図100】入力画像に対して1次元再積分手法の処理を施して得られる画像の例を表す図である。
【図101】図100の画像に対応する画像データの例を表す図である。
【図102】空間方向の定常性を有する実世界の信号を説明する図である。
【図103】図89で示される原理を有する再積分手法のうちの、2次元再積分手法を利用する画像生成部の構成例を説明するブロック図である。
【図104】断面方向距離を説明する図である。
【図105】図103の構成の画像生成部が実行する画像の生成処理を説明するフローチャートである。
【図106】入力画素の1例を説明する図である。
【図107】2次元再積分手法により、図106で示される1つの入力画素における、高解像度の4つの画素を創造する例を説明する図である。
【図108】時空間方向の定常性の方向を説明する図である。
【図109】図89で示される原理を有する再積分手法のうちの、3次元再積分手法を利用する画像生成部の構成例を説明するブロック図である。
【図110】図109の構成の画像生成部が実行する画像の生成処理を説明するフローチャートである。
【図111】図1の信号処理装置4の他の一実施の形態の構成例を示すブロック図である。
【図112】図111の信号処理装置4の処理を説明するフローチャートである。
【図113】図111の信号処理装置4の応用例の一実施の形態の構成例を示すブロック図である。
【図114】図113の信号処理装置4の処理を説明するフローチャートである。
【図115】センサ2がCCDとされる場合の積分効果を説明する図である。
【図116】動き量を説明する図である。
【図117】センサ2の積分効果により発生する動きボケを説明する図である。
【図118】センサ2の積分効果により発生する動きボケを説明する図である。
【図119】実世界推定部14003の実世界の推定処理を説明するフローチャートである。
【図120】方程式生成部14012の構成例を示すブロック図である。
【図121】図119のステップS14032の方程式生成処理を説明するフローチャートである。
【図122】入力画像の例を示す図である。
【図123】図122の入力画像を処理した処理結果の出力画像を示す図である。
【図124】図122の入力画像を処理した処理結果の出力画像を示す図である。
【図125】図122の入力画像を拡大した図である。
【図126】図123の出力画像を拡大した図である。
【図127】図124の出力画像を拡大した図である。
【図128】図111の信号処理装置4の応用例の他の一実施の形態の構成例を示すブロック図である。
【図129】図128の信号処理装置4の処理を説明するフローチャートである。
【図130】実世界推定部14073の実世界の推定処理を説明するフローチャートである。
【図131】方程式生成部14082の構成例を示すブロック図である。
【図132】図130のステップS14102の方程式生成処理を説明するフローチャートである。
【図133】図122の入力画像を処理した処理結果の出力画像を示す図である。
【図134】図133の出力画像を拡大した図である。
【図135】図113、図128の信号処理装置4と等価な信号処理装置4の構成例を示すブロック図である。
【図136】図135の信号処理装置4の処理を説明するフローチャートである。
【図137】動きボケ除去処理部14123の構成例を示すブロック図である。
【図138】図136のステップS14159の動きボケ除去処理を説明するフローチャートである。
【図139】動きボケ除去処理部14123の構成例を示すブロック図である。
【図140】図136のステップS14159の動きボケ除去処理を説明するフローチャートである。
【図141】動きボケ除去処理部14123の構成例を示すブロック図である。
【図142】図136のステップS14159の動きボケ除去処理を説明するフローチャートである
【図143】定常性設定部14002の構成例を示すブロック図である。
【図144】動き量を説明する図である。
【図145】背景オブジェクトの前を移動する前景オブジェクトをカメラで撮像したときに、カメラから出力される画像の画素値を示す図である。
【図146】図145で示される画像の画素の画素値の差分値を示す図である。
【図147】動き量の検出の処理を説明するフローチャートである。
【図148】相関の検出の処理を説明するフローチャートである。
【符号の説明】
4 信号処理装置, 21 CPU, 22 ROM, 23 RAM, 28 記憶部, 51 磁気ディスク, 52 光ディスク, 53 光磁気ディスク, 54 半導体メモリ, 101 データ定常性検出部, 102 実世界推定部, 103 画像生成部, 14001 処理領域設定部, 14002 定常性設定部, 14003 実世界推定部, 14004 画像生成部, 14005 画像表示部, 14006 ユーザI/F, 14011 モデル生成部, 14012 方程式生成部, 14013 実世界波形推定部, 14071 処理領域設定部, 14072 定常性設定部, 14073 実世界推定部, 14074 画像生成部, 14075 画像表示部, 14076 ユーザI/F, 14081 モデル生成部, 14082 方程式生成部, 14083 実世界波形推定部
Claims (5)
- それぞれ時間積分効果を有する複数の画素に現実世界の光信号が射影されることにより取得された画像データ内の処理領域を設定する処理領域設定手段と、
前記画像データ内のオブジェクトの動きベクトルを設定する動きベクトル設定手段と、
前記処理領域内の各画素の画素値は、前記オブジェクトに対応する、動きボケが生じていない各画素の画素値が前記動きベクトルに対応して移動しながら積分された値であるとして、前記処理領域内の各画素の画素値と、前記動きボケが生じていない各画素の画素値との関係をモデル化するモデル生成手段と、
前記モデル生成手段により生成されたモデルに対して、前記処理領域内の各画素の画素値を代入した第1の方程式と、前記動きボケが生じていない各画素間の関係を拘束する第2の方程式とにより正規方程式を生成する正規方程式生成手段と、
前記正規方程式生成手段により生成された正規方程式を演算することにより前記動きボケが生じていない各画素の画素値を推定する第1の実世界推定手段と、
前記第1の実世界推定手段により画素値が推定される前記画像データ内の画素のアクティビティを、その画素の画素値と、空間方向において、その画素の周辺に位置する周辺画素の画素値との間の変化に応じて検出するアクティビティ検出手段と、
前記アクティビティ検出手段による検出結果に応じて、前記第1または第2の方程式の一部に対する重みを変更する重み変更手段と、
前記重み変更手段により重みが変更された前記第1または第2の方程式から生成される正規方程式を演算することにより前記動きボケの生じていない各画素の画素値を推定する第2の実世界推定手段と
を備えることを特徴とする信号処理装置。 - 前記重み変更手段は、前記アクティビティ検出手段による注目画素のアクティビティ検出結果が閾値以上であるとき、前記注目画素に対応する前記第1または第2の方程式の一部に対する重みを0に変更する
ことを特徴とする請求項1に記載の信号処理装置。 - それぞれ時間積分効果を有する複数の画素に現実世界の光信号が射影されることにより取得された画像データ内の処理領域を設定する処理領域設定ステップと、
前記画像データ内のオブジェクトの動きベクトルを設定する動きベクトル設定ステップと、
前記処理領域内の各画素の画素値は、前記オブジェクトに対応する、動きボケが生じていない各画素の画素値が前記動きベクトルに対応して移動しながら積分された値であるとして、前記処理領域内の各画素の画素値と、前記動きボケが生じていない各画素の画素値との関係をモデル化するモデル生成ステップと、
前記モデル生成ステップの処理により生成されたモデルに対して、前記処理領域内の各画素の画素値を代入した第1の方程式と、前記動きボケが生じていない各画素間の関係を拘束する第2の方程式とにより正規方程式を生成する正規方程式生成ステップと、
前記正規方程式生成ステップの処理により生成された正規方程式を演算することにより前記動きボケが生じていない各画素の画素値を推定する第1の実世界推定ステップと、
前記第1の実世界推定ステップの処理により画素値が推定される前記画像データ内の画素のアクティビティを、その画素の画素値と、空間方向において、その画素の周辺に位置する周辺画素の画素値との間の変化に応じて検出するアクティビティ検出ステップと、
前記アクティビティ検出ステップの処理による検出結果に応じて、前記第1または第2の方程式の一部に対する重みを変更する重み変更ステップと、
前記重み変更ステップの処理により重みが変更された前記第1または第2の方程式から生成される正規方程式を演算することにより前記動きボケの生じていない各画素の画素値を推定する第2の実世界推定ステップと
を含むことを特徴とする信号処理方法。 - コンピュータに所定の信号処理を行なわせるプログラムにおいて、
それぞれ時間積分効果を有する複数の画素に現実世界の光信号が射影されることにより取得された画像データ内の処理領域を設定する処理領域設定ステップと、
前記画像データ内のオブジェクトの動きベクトルを設定する動きベクトル設定ステップと、
前記処理領域内の各画素の画素値は、前記オブジェクトに対応する、動きボケが生じていない各画素の画素値が前記動きベクトルに対応して移動しながら積分された値であるとして、前記処理領域内の各画素の画素値と、前記動きボケが生じていない各画素の画素値との関係をモデル化するモデル生成ステップと、
前記モデル生成ステップの処理により生成されたモデルに対して、前記処理領域内の各画素の画素値を代入した第1の方程式と、前記動きボケが生じていない各画素間の関係を拘束する第2の方程式とにより正規方程式を生成する正規方程式生成ステップと、
前記正規方程式生成ステップの処理により生成された正規方程式を演算することにより前記動きボケが生じていない各画素の画素値を推定する第1の実世界推定ステップと、
前記第1の実世界推定ステップの処理により画素値が推定される前記画像データ内の画素のアクティビティを、その画素の画素値と、空間方向において、その画素の周辺に位置する周辺画素の画素値との間の変化に応じて検出するアクティビティ検出ステップと、
前記アクティビティ検出ステップの処理による検出結果に応じて、前記第1または第2の方程式の一部に対する重みを変更する重み変更ステップと、
前記重み変更ステップの処理により重みが変更された前記第1または第2の方程式から生成される正規方程式を演算することにより前記動きボケの生じていない各画素の画素値を推定する第2の実世界推定ステップと
を備えることを特徴とするプログラム。 - コンピュータに所定の信号処理を行なわせるプログラムが記録されている記録媒体において、
それぞれ時間積分効果を有する複数の画素に現実世界の光信号が射影されることにより取得された画像データ内の処理領域を設定する処理領域設定ステップと、
前記画像データ内のオブジェクトの動きベクトルを設定する動きベクトル設定ステップと、
前記処理領域内の各画素の画素値は、前記オブジェクトに対応する、動きボケが生じていない各画素の画素値が前記動きベクトルに対応して移動しながら積分された値であるとして、前記処理領域内の各画素の画素値と、前記動きボケが生じていない各画素の画素値との関係をモデル化するモデル生成ステップと、
前記モデル生成ステップの処理により生成されたモデルに対して、前記処理領域内の各画素の画素値を代入した第1の方程式と、前記動きボケが生じていない各画素間の関係を拘束する第2の方程式とにより正規方程式を生成する正規方程式生成ステップと、
前記正規方程式生成ステップの処理により生成された正規方程式を演算することにより前記動きボケが生じていない各画素の画素値を推定する第1の実世界推定ステップと、
前記第1の実世界推定ステップの処理により画素値が推定される前記画像データ内の画素のアクティビティを、その画素の画素値と、空間方向において、その画素の周辺に位置する周辺画素の画素値との間の変化に応じて検出するアクティビティ検出ステップと、
前記アクティビティ検出ステップの処理による検出結果に応じて、前記第1または第2の方程式の一部に対する重みを変更する重み変更ステップと、
前記重み変更ステップの処理により重みが変更された前記第1または第2の方程式から生成される正規方程式を演算することにより前記動きボケの生じていない各画素の画素値を推定する第2の実世界推定ステップと
を備えるプログラムが記録されている
ことを特徴とする記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003183702A JP4419454B2 (ja) | 2003-06-27 | 2003-06-27 | 信号処理装置および信号処理方法、並びにプログラムおよび記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003183702A JP4419454B2 (ja) | 2003-06-27 | 2003-06-27 | 信号処理装置および信号処理方法、並びにプログラムおよび記録媒体 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2005018498A JP2005018498A (ja) | 2005-01-20 |
JP2005018498A5 JP2005018498A5 (ja) | 2006-08-03 |
JP4419454B2 true JP4419454B2 (ja) | 2010-02-24 |
Family
ID=34183671
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003183702A Expired - Fee Related JP4419454B2 (ja) | 2003-06-27 | 2003-06-27 | 信号処理装置および信号処理方法、並びにプログラムおよび記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4419454B2 (ja) |
-
2003
- 2003-06-27 JP JP2003183702A patent/JP4419454B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2005018498A (ja) | 2005-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4148041B2 (ja) | 信号処理装置および信号処理方法、並びにプログラムおよび記録媒体 | |
JP4392584B2 (ja) | 信号処理装置および信号処理方法、並びにプログラムおよび記録媒体 | |
JP4144378B2 (ja) | 画像処理装置および方法、記録媒体、並びにプログラム | |
JP4144374B2 (ja) | 画像処理装置および方法、記録媒体、並びにプログラム | |
JP4392583B2 (ja) | 信号処理装置および信号処理方法、並びにプログラムおよび記録媒体 | |
JP4143916B2 (ja) | 画像処理装置および方法、記録媒体、並びにプログラム | |
JP4423537B2 (ja) | 信号処理装置および信号処理方法、並びにプログラムおよび記録媒体 | |
JP4423535B2 (ja) | 信号処理装置および信号処理方法、並びにプログラムおよび記録媒体 | |
JP4419453B2 (ja) | 信号処理装置および信号処理方法、並びにプログラムおよび記録媒体 | |
JP4419454B2 (ja) | 信号処理装置および信号処理方法、並びにプログラムおよび記録媒体 | |
JP4423536B2 (ja) | 信号処理装置および信号処理方法、並びにプログラムおよび記録媒体 | |
JP4182827B2 (ja) | 信号処理装置および信号処理方法、並びにプログラムおよび記録媒体 | |
JP4325296B2 (ja) | 信号処理装置および信号処理方法、並びにプログラムおよび記録媒体 | |
JP4182826B2 (ja) | 信号処理装置および信号処理方法、並びにプログラムおよび記録媒体 | |
JP4214460B2 (ja) | 画像処理装置および方法、記録媒体、並びにプログラム | |
JP4214462B2 (ja) | 画像処理装置および方法、記録媒体、並びにプログラム | |
JP4161729B2 (ja) | 画像処理装置および方法、記録媒体、並びにプログラム | |
JP4161732B2 (ja) | 画像処理装置および方法、記録媒体、並びにプログラム | |
JP4161733B2 (ja) | 画像処理装置および方法、記録媒体、並びにプログラム | |
JP4161735B2 (ja) | 画像処理装置および方法、記録媒体、並びにプログラム | |
JP4161734B2 (ja) | 画像処理装置および方法、記録媒体、並びにプログラム | |
JP4214461B2 (ja) | 画像処理装置および方法、記録媒体、並びにプログラム | |
JP4182776B2 (ja) | 画像処理装置および方法、記録媒体、並びにプログラム | |
JP4161730B2 (ja) | 画像処理装置および方法、記録媒体、並びにプログラム | |
JP4264631B2 (ja) | 画像処理装置および方法、記録媒体、並びにプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060616 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060616 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090722 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090728 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090918 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20091110 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20091123 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121211 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121211 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131211 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |