(57)【要約】【課題】簡単な回路構成で、且つ、様々な状況の手ぶれ振動に素早く適応し、精度の高い予測値をリアルタイムで得ることができる手ぶれ予測装置及びこの装置を備えた撮像機器を提供することである。【解決手段】所定時間毎に手ぶれによる振動量を手ぶれ信号として検出する手ぶれ信号検出手段と、手ぶれ信号検出手段で検出した手ぶれ信号を記憶する手ぶれ信号記憶手段と、手ぶれ信号検出手段で検出した最新の手ぶれ信号に基づき自己に設定してあるパラメータ値を修正し、修正したパラメータ値を用いて手ぶれ信号記憶手段に記憶してある手ぶれ信号から次の手ぶれ信号の予測値を算出するニューラルネットワークを備えた予測値演算手段と、予測値演算手段で算出した予測値に基づいて予測手ぶれ信号を生成して出力する予測手ぶれ信号出力手段とを設ける。【選択図】  図１
2004158902.tif 000002
【特許請求の範囲】
【請求項１】
所定時間毎に手ぶれによる振動量を手ぶれ信号として検出する手ぶれ信号検出手段と、
前記手ぶれ信号検出手段で検出した手ぶれ信号を記憶する手ぶれ信号記憶手段と、
前記手ぶれ信号検出手段で検出した最新の手ぶれ信号に基づき自己に設定してあるパラメータ値を修正し、該修正したパラメータ値を用いて前記手ぶれ信号記憶手段に記憶してある手ぶれ信号から次の手ぶれ信号の予測値を算出するニューラルネットワークを備えた予測値演算手段と、
前記予測値演算手段で算出した予測値に基づいて予測手ぶれ信号を生成して出力する予測手ぶれ信号出力手段と、
を備えた手ぶれ信号予測装置。
【請求項２】
手ぶれによる振動量を予測する手ぶれ信号予測部を備え、該手ぶれ信号予測部から出力される予測手ぶれ信号を用いて撮像する画像を補正できる撮像機器であって、
前記手ぶれ信号予測部は、
所定時間毎に手ぶれによる振動量を手ぶれ信号として検出する手ぶれ信号検出手段と、
前記手ぶれ信号検出手段で検出した手ぶれ信号を記憶する手ぶれ信号記憶手段と、
前記手ぶれ信号検出手段で検出した最新の手ぶれ信号に基づき自己に設定してあるパラメータ値を修正し、該修正したパラメータ値を用いて前記手ぶれ信号記憶手段に記憶してある手ぶれ信号から次の手ぶれ信号の予測値を算出するニューラルネットワークを備えた予測値演算手段と、
前記予測値演算手段で算出した予測値に基づいて予測手ぶれ信号を生成して出力する予測手ぶれ信号出力手段と、を具備していること
を特徴とする撮像機器。
【請求項３】
所定時間毎に手ぶれによる振動量を手ぶれ信号として検出する手ぶれ信号検出手段と、
前記手ぶれ信号検出手段で検出した手ぶれ信号を記憶する手ぶれ信号記憶手段と、
前記手ぶれ信号検出手段で検出した最新の手ぶれ信号に基づき自己に設定してあるパラメータ値を修正し、該修正したパラメータ値を用いて前記手ぶれ信号記憶手段に記憶してある手ぶれ信号から次の手ぶれ信号の予測値を算出するニューラルネットワークを備えた予測値演算手段と、
前記予測値演算手段で算出した予測値に基づいて予測手ぶれ信号を生成して出力する予測手ぶれ信号出力手段と、
前記予測値演算手段のニューラルネットワークに設定するパラメータ値を記憶しておくパラメータ記憶手段と、
前記手ぶれ信号検出手段で検出した手ぶれ信号と前記予測手ぶれ信号出力手段から出力された予測手ぶれ信号との誤差を検出し、該検出した誤差に基づいて前記予測値演算手段のニューラルネットワークに設定するパラメータ値を選択し、該選択したパラメータ値を前記パラメータ記憶手段に記憶させる予測誤差評価手段と、
を具備している手ぶれ信号予測装置。
【請求項４】
前記予測値演算手段は、前記ニューラルネットワークに前記パラメータ記憶手段に記憶してある全てのパラメータ値を順次設定して次の手ぶれ信号の予測値を順次算出し、該設定した全てのパラメータ値の中から前記予測誤差評価手段で選択されたパラメータ値をニューラルネットワークに再度設定してから次の手ぶれ信号の予測値を算出すること
を特徴とする請求項３に記載の手ぶれ信号予測装置。
【請求項５】
手ぶれによる振動量を予測する手ぶれ信号予測部を備え、該手ぶれ信号予測部から出力される予測手ぶれ信号を用いて撮像する画像を補正できる撮像機器であって、
前記手ぶれ信号予測部は、
所定時間毎に手ぶれによる振動量を手ぶれ信号として検出する手ぶれ信号検出手段と、
前記手ぶれ信号検出手段で検出した手ぶれ信号を記憶する手ぶれ信号記憶手段と、
前記手ぶれ信号検出手段で検出した最新の手ぶれ信号に基づき自己に設定してあるパラメータ値を修正し、該修正したパラメータ値を用いて前記手ぶれ信号記憶手段に記憶してある手ぶれ信号から次の手ぶれ信号の予測値を算出するニューラルネットワークを備えた予測値演算手段と、
前記予測値演算手段で算出した予測値に基づいて予測手ぶれ信号を生成して出力する予測手ぶれ信号出力手段と、
前記予測値演算手段のニューラルネットワークに設定するパラメータ値を記憶しておくパラメータ記憶手段と、
前記手ぶれ信号検出手段で検出した手ぶれ信号と前記予測手ぶれ信号出力手段から出力された予測手ぶれ信号との誤差を検出し、該検出した誤差に基づいて前記予測値演算手段のニューラルネットワークに設定するパラメータ値を選択し、該選択したパラメータ値を前記パラメータ記憶手段に記憶させる予測誤差評価手段と、を具備していること
を特徴とする撮像機器。
【請求項６】
前記予測値演算手段は、前記ニューラルネットワークに前記パラメータ記憶手段に記憶してある全てのパラメータ値を順次設定して次の手ぶれ信号の予測値を順次算出し、該設定した全てのパラメータ値の中から前記予測誤差評価手段で選択されたパラメータ値をニューラルネットワークに再度設定してから次の手ぶれ信号の予測値を算出すること
を特徴とする請求項５に記載の撮像機器。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、手ぶれ信号予測装置及び撮像機器に関するものである。詳しくは、撮影者の手ぶれによる振動をリアルタイムに予測して撮像する画像を補正できるようにした手ぶれ信号予測装置及び撮像機器に関するものである。
【０００２】
【従来の技術】
従来の撮像装置において、撮影者の手ぶれによる振動で画質が劣化することを防ぐ為の方法が種々考案されている。これらの方法は、手ぶれによる振動を信号として検出する機構、いわゆる、手ぶれ信号を検出する機構として角速度センサを備えていたり、動画を撮像する装置では、撮像した各時間の画像データを比較し、手ぶれ振動として認識される画像データの変化分を抽出するベクトル検出方式と呼ばれる機構を備え、この抽出した画像データの変化分を光学的、電子的に打ち消すことにより画質の劣化を防止（補正）している。
【０００３】
手ぶれ振動を打ち消した画像を得る為には、露光と同時間で手ぶれ振動に対する補正信号（以下、手ぶれ補正信号と云う）が必要となるが、角速度センサ等のセンサ類を用いている場合、ノイズ除去フィルタ等の影響により手ぶれ信号の検出に遅延が生じてしまう。
【０００４】
また、べクトル検出方式の場合は、手ぶれ振動として認識される画像データの変化分、いわゆる、手ぶれ信号を得るためには、露光して取り込んだ画像を信号処理した後に画像データを比較するため、手ぶれ信号の検出に遅延が生じてしまう。
【０００５】
このように、実際に得られる手ぶれ補正信号は、撮像した画像に対して時間的に遅れたものとなってしまうため、撮像した画像全体を一旦記憶装置に保存しておき、手ぶれ補正信号を得た後に記憶装置から手ぶれを打ち消した（補正した）画像を切り出すという方法により画質の劣化を防止（補正）している。
【０００６】
しかし、撮像した画像全体を一旦記憶装置に保存するため、現在撮像している画像に対する手ぶれ振動を補正することはできない。そこで、画像を撮像した時点で、次の手ぶれ振動を予測し、画質の劣化をリアルタイムで補正するという方法がある。
【０００７】
次の手ぶれ振動を予測する方法は、発生する手ぶれ振動を手ぶれ信号としてサンプリングして記憶し、記憶した手ぶれ信号に対して適切な予測演算処理を施すことで、次に発生する手ぶれ振動の予測値を算出し、この予測値に基づいて制御を行うことで、手ぶれによる振動の影響を抑えた露光動作を可能とし、画質の劣化をリアルタイムで補正するものである（例えば、特許文献１参照。）。
【０００８】
【特許文献１】
特許３２３８４４９号公報（第３頁、図１）
【０００９】
【発明が解決しようとする課題】
しかしながら、上述したような次の手ぶれ振動を予測する方法では、手ぶれによる振動が複雑な動きをするため、予測演算処理が複雑で演算量が多くなり、様々な状況の手ぶれ振動に適応するまでに時間がかかるというような問題がある。
【００１０】
従って、簡単な回路構成で、且つ、様々な状況の手ぶれ振動に素早く適応し、精度の高い予測値をリアルタイムで得ることができるようにすること、に解決しなければならない課題を有する。
【００１１】
【課題を解決するための手段】
前記課題を解決するため、本発明に係る手ぶれ信号予測装置及び撮像機器は次のような構成にすることである。
【００１２】
（１）所定時間毎に手ぶれによる振動量を手ぶれ信号として検出する手ぶれ信号検出手段と、前記手ぶれ信号検出手段で検出した手ぶれ信号を記憶する手ぶれ信号記憶手段と、前記手ぶれ信号検出手段で検出した最新の手ぶれ信号に基づき自己に設定してあるパラメータ値を修正し、該修正したパラメータ値を用いて前記手ぶれ信号記憶手段に記憶してある手ぶれ信号から次の手ぶれ信号の予測値を算出するニューラルネットワークを備えた予測値演算手段と、前記予測値演算手段で算出した予測値に基づいて予測手ぶれ信号を生成して出力する予測手ぶれ信号出力手段と、を備えた手ぶれ信号予測装置。
（２）手ぶれによる振動量を予測する手ぶれ信号予測部を備え、該手ぶれ信号予測部から出力される予測手ぶれ信号を用いて撮像する画像を補正できる撮像機器であって、前記手ぶれ信号予測部は、所定時間毎に手ぶれによる振動量を手ぶれ信号として検出する手ぶれ信号検出手段と、前記手ぶれ信号検出手段で検出した手ぶれ信号を記憶する手ぶれ信号記憶手段と、前記手ぶれ信号検出手段で検出した最新の手ぶれ信号に基づき自己に設定してあるパラメータ値を修正し、該修正したパラメータ値を用いて前記手ぶれ信号記憶手段に記憶してある手ぶれ信号から次の手ぶれ信号の予測値を算出するニューラルネットワークを備えた予測値演算手段と、前記予測値演算手段で算出した予測値に基づいて予測手ぶれ信号を生成して出力する予測手ぶれ信号出力手段と、を具備していることを特徴とする撮像機器。
【００１３】
（３）所定時間毎に手ぶれによる振動量を手ぶれ信号として検出する手ぶれ信号検出手段と、前記手ぶれ信号検出手段で検出した手ぶれ信号を記憶する手ぶれ信号記憶手段と、前記手ぶれ信号検出手段で検出した最新の手ぶれ信号に基づき自己に設定してあるパラメータ値を修正し、該修正したパラメータ値を用いて前記手ぶれ信号記憶手段に記憶してある手ぶれ信号から次の手ぶれ信号の予測値を算出するニューラルネットワークを備えた予測値演算手段と、前記予測値演算手段で算出した予測値に基づいて予測手ぶれ信号を生成して出力する予測手ぶれ信号出力手段と、前記予測値演算手段のニューラルネットワークに設定するパラメータ値を記憶しておくパラメータ記憶手段と、前記手ぶれ信号検出手段で検出した手ぶれ信号と前記予測手ぶれ信号出力手段から出力された予測手ぶれ信号との誤差を検出し、該検出した誤差に基づいて前記予測値演算手段のニューラルネットワークに設定するパラメータ値を選択し、該選択したパラメータ値を前記パラメータ記憶手段に記憶させる予測誤差評価手段と、を具備している手ぶれ信号予測装置。
（４）前記予測値演算手段は、前記ニューラルネットワークに前記パラメータ記憶手段に記憶してある全てのパラメータ値を順次設定して次の手ぶれ信号の予測値を順次算出し、該設定した全てのパラメータ値の中から前記予測誤差評価手段で選択されたパラメータ値をニューラルネットワークに再度設定してから次の手ぶれ信号の予測値を算出することを特徴とする（３）に記載の手ぶれ信号予測装置。
【００１４】
（５）手ぶれによる振動量を予測する手ぶれ信号予測部を備え、該手ぶれ信号予測部から出力される予測手ぶれ信号を用いて撮像する画像を補正できる撮像機器であって、前記手ぶれ信号予測部は、所定時間毎に手ぶれによる振動量を手ぶれ信号として検出する手ぶれ信号検出手段と、前記手ぶれ信号検出手段で検出した手ぶれ信号を記憶する手ぶれ信号記憶手段と、前記手ぶれ信号検出手段で検出した最新の手ぶれ信号に基づき自己に設定してあるパラメータ値を修正し、該修正したパラメータ値を用いて前記手ぶれ信号記憶手段に記憶してある手ぶれ信号から次の手ぶれ信号の予測値を算出するニューラルネットワークを備えた予測値演算手段と、前記予測値演算手段で算出した予測値に基づいて予測手ぶれ信号を生成して出力する予測手ぶれ信号出力手段と、前記予測値演算手段のニューラルネットワークに設定するパラメータ値を記憶しておくパラメータ記憶手段と、前記手ぶれ信号検出手段で検出した手ぶれ信号と前記予測手ぶれ信号出力手段から出力された予測手ぶれ信号との誤差を検出し、該検出した誤差に基づいて前記予測値演算手段のニューラルネットワークに設定するパラメータ値を選択し、該選択したパラメータ値を前記パラメータ記憶手段に記憶させる予測誤差評価手段と、を具備していることを特徴とする撮像機器。
（６）前記予測値演算手段は、前記ニューラルネットワークに前記パラメータ記憶手段に記憶してある全てのパラメータ値を順次設定して次の手ぶれ信号の予測値を順次算出し、該設定した全てのパラメータ値の中から前記予測誤差評価手段で選択されたパラメータ値をニューラルネットワークに再度設定してから次の手ぶれ信号の予測値を算出することを特徴とする（５）に記載の撮像機器。
【００１５】
このような手ぶれ信号予測装置及び撮像機器の構成において、予測値演算手段のニューラルネットワークにより、手ぶれ信号検出手段で検出した最新の手ぶれ信号に基づいて、自己に設定してあるパラメータ値を修正し、修正したパラメータ値によって前記手ぶれ信号記憶手段に記憶してある手ぶれ信号から次の手ぶれ信号の予測値を算出し、算出した予測値に基づいて予測手ぶれ信号を生成して出力するので、簡単な回路構成で様々な手ぶれ振動に適応した精度の良い予測をリアルタイムに実現することができる。
【００１６】
更に、予測誤差評価手段によって手ぶれ信号検出手段で検出した手ぶれ信号と予測手ぶれ信号出力手段から出力された予測手ぶれ信号との誤差を検出し、検出した誤差に基づいて予測値演算手段のニューラルネットワークに設定するパラメータ値を選択し、選択したパラメータ値をパラメータ記憶手段に記憶させることにより、予測演算処理を行うニューラルネットワークのパラメータ値がユーザの使用環境に特化され、また、ニューラルネットワークのパラメータ値を最適化するまでの時間が短縮できるので、様々な手ぶれ振動に素早く適応することができる。
【００１７】
【発明の実施の形態】
次に、本発明に係る手ぶれ信号予測装置及び撮像機器の実施の形態を図面を参照して説明する。但し、図面は専ら解説のためのものであって、本発明の技術的範囲を限定するものではない。
【００１８】
まず、第１の実施例として、ニューラルネットワークを用いた手ぶれ信号予測装置の基本的な構成及び動作について説明する。
【００１９】
図１は、ニューラルネットワークを用いて手ぶれ信号を予測する手ぶれ信号予測装置の概略構成を示すブロック図であり、手ぶれ信号検出部１００、手ぶれ信号記憶部１１０、手ぶれ信号予測部１２０とから構成される。
【００２０】
手ぶれ信号検出部１００は、図２に示すような所定時間ごとに手ぶれによる振動量（以下、手ぶれ量と云う）をサンプリングしたサンプル値（図２の黒点）、いわゆる、手ぶれ信号を検出し、手ぶれ信号記憶部１１０に送る。なお、サンプリングの時間間隔は、手ぶれ信号の周波数（手ぶれ振動の周期）に対して十分に短い時間とする。
【００２１】
手ぶれ信号記憶部１１０は、例えば、ＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  ＦｉｒｓｔＯｕｔ）スタックメモリの様なメモリを備えており、手ぶれ信号検出部１００でサンプリングされたサンプル値（以下、最新の手ぶれ信号）及びニューラルネットワークの入力値として必要となる数の過去のサンプル値（以下、過去の手ぶれ信号）を記憶しておくと共に、記憶している最新及び過去の手ぶれ信号を手ぶれ信号予測部１２０に送出する。
【００２２】
ここで、ニューラルネットワークの入力として必要な過去の手ぶれ信号の数は、６〜８個の程度を用いれば十分精度のよい予測ができるので、手ぶれ信号記憶部１１０には、過去の手ぶれ信号を６〜８個分記憶しておけばよい。
【００２３】
手ぶれ信号予測部１２０は、三層パーセプトロンと呼ばれる構成のニューラルネットワーク（ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ）を備え、手ぶれ信号記憶部１１０に記憶してある最新の手ぶれ信号及び過去の手ぶれ信号を入力値とするとともに、手ぶれ信号予測部１２０の最新の出力信号を自己にフィードバックして入力値とし、この入力値とニューラルネットワークの出力値とに基づいて、入力と出力の対応関係を学習し、ニューラルネットワークに設定するパラメータ値を変化させ、適切な予測手ぶれ信号を生成して出力する。
【００２４】
ここで、三層パーセプトロンで構成されるニューラルネットワークについて説明する。図３は、手ぶれ信号予測部１２０の三層パーセプトロンによるニューラルネットワークの構成を略示的に示したものである。
【００２５】
三層パーセプトロンによるニューラルネットワークは、入力層ユニット１２１、隠れ層（中間層）ユニット１２２、出力層ユニット１２３の順で配置された階層構造となっており、各ユニット１２１〜１２３には、それぞれ所定数のニューロンと呼ばれる信号処理エレメントが配置されている。
【００２６】
入力層ユニット１２１には、入力信号Ｐ（ｎ）、Ｐ（ｎ−１）・・・Ｐ（ｎ−（ｋ−２））、Ｐ（ｎ−（ｋ−１））からなる入力パターンＡ（ｎ）に応じた数のニューロンＳ１、Ｓ２、・・・Ｓｋ−１、Ｓｋが配置され、各ニューロンの出力側は、隠れ層ユニット１２２に配置されているニューロンｈ１〜ｈｘ全ての入力側にそれぞれ接続されている。
【００２７】
なお、入力層ユニット１２１を構成するニューロンの数は手ぶれ信号記憶部１１０で保持する手ぶれ信号の数と同数とする。
【００２８】
隠れ層ユニット１２２には、ニューロンｈ１〜ｈｘが配置され、各ニューロンｈ１〜ｈｘの入力側には、入力層ユニット１２１のニューロンＳ１〜Ｓｋそれぞれの出力側が接続されており、各ニューロンｈ１〜ｈｘの出力側は、出力層ユニット１２３のニューロンＲの入力側に接続される。
【００２９】
なお、隠れ層ユニット１２２のニューロン数は、ニューラルネットワークの汎化能力や、ある入力パターンベクトルに対する出力の精度へ影響する為、例えば、手ぶれ信号の予測する場合、入力層ユニット１２１のニューロン数が８個であれば、隠れ層ユニット１２２のニューロン数は、５個程度で十分な性能である。
【００３０】
出力層ユニット１２３のニューロンＲの入力側には、隠れ層ユニット１２２のニューロンｈ１〜ｈｘの出力側が全て接続されており、隠れ層ユニット１２２のニューロンｈ１〜ｈｘからの信号に応じた出力信号が出力される。
【００３１】
各ユニット１２１〜１２３に配置されているそれぞれのニューロンは、入力信号と出力信号の関係の応じて変化する結合係数、いわゆる、パラメータ値が設定されており、入力信号に対し、前回の出力信号（出力値）に応じて設定されるパラメータ値を乗じ、その総和（以下、ネット値）を算出して所定の出力関数へ入力することで得られる出力信号（出力値）を出力する。
【００３２】
各ニューロンの出力信号は、数式１に基づいた出力値が出力される。
【００３３】
【数１】
2004158902.tif 000003
【００３４】
続いて、図３のような三層パーセプトロンによるニューラルネットワークの動作について説明する。
【００３５】
まず、入力層ユニット１２１に入力信号Ｐ（ｎ）、Ｐ（ｎ−１）・・・Ｐ（ｎ−（ｋ−２））、Ｐ（ｎ−（ｋ−１））からなる入力パターンＡ（ｎ）が入力されると、各ニューロンＳ１、Ｓ２、・・・Ｓｋ−１、Ｓｋは、それぞれの入力信号（入力値）に対し、所定のパラメータ値を乗じてネット値を算出して所定の出力関数へ入力することで得られる出力信号（出力値）を、隠れ層ユニット１２２の各ニューロンｈ１〜ｈｘそれぞれ全てに送出する。
【００３６】
隠れ層ユニット１２２の各ニューロンｈ１〜ｈｘは、入力層ユニット１２１の各ニューロンＳ１〜Ｓｋから送出されてきた出力信号（出力値）に対し、所定のパラメータ値を乗じてネット値を算出して所定の出力関数へ入力することで得られるそれぞれの出力信号（出力値）を、出力層ユニット１２３のニューロンＲに送出する。
【００３７】
出力層ユニット１２３のニューロンＲは、隠れ層ユニット１２２の各ニューロンＳ１〜Ｓｋから送出されてきた出力信号（出力値）に対し、所定のパラメータ値を乗じてネット値を算出して所定の出力関数へ入力することで得られる出力信号Ｐ’（ｎ＋１）を出力する。
【００３８】
そして、各層ユニット１２１〜１２３のそれぞれのニューロンは、この出力信号Ｐ’（ｎ＋１）と次の入力信号Ｐ（ｎ＋１）に基づいて現在設定されているパラメータ値を修正し、この修正したパラメータ値によって入力信号Ｐ（ｎ＋１）、Ｐ（ｎ）・・・Ｐ（ｎ−（ｋ−３））、Ｐ（ｎ−（ｋ−２））からなる入力パターンＡ（ｎ＋１）に対する出力値を算出し、出力信号として出力する。
【００３９】
次に、上述したようなニューラルネットワークを用いた手ぶれ信号予測装置の動作について図４を参照しながら説明する。
【００４０】
まず、手ぶれ信号検出部１００は、所定時間毎に手ぶれによる振動量をサンプリングすることにより手ぶれ信号Ｐ（ｎ）を検出し、検出した手ぶれ信号を最新の手ぶれ信号として手ぶれ信号記憶部１１０に送る（ＳＴ１００）。
【００４１】
手ぶれ信号記憶部１１０は、手ぶれ信号検出部１００からの最新の手ぶれ信号Ｐ（ｎ）を記憶するとともに、手ぶれ信号予測部１２０に送出する（ＳＴ１１０）。
【００４２】
手ぶれ信号予測部１２０では、最新の手ぶれ信号Ｐ（ｎ）を教師信号（入力データに対して理想的と考えられる出力）とし、図５に示すように、手ぶれ信号記憶部１１０のスタックメモリに記憶してある過去の手ぶれ信号Ｐ（ｎ−１）、Ｐ（ｎ−２）・・・Ｐ（ｎ−ｋ）からなる入力パターンＡ（ｎ−１）をニューラルネットワークに入力し、その出力結果と教師信号とをバックプロパゲーションアルゴリズムに基づいて比較し、その誤差をできる限り小さくなるように各ニューロン（Ｓ１〜Ｓｋ、ｈ１〜ｈｘ、Ｒ）のパラメータ値の修正を行う、即ち、ニューラルネットワークによる学習を行う（ＳＴ１２０）。
【００４３】
次に、手ぶれ信号記憶部１１０のスタックメモリでは、図５に示すように、過去の手ぶれ信号の最も古い手ぶれ信号Ｐ（ｎ−ｋ）を破棄して、最新の手ぶれ信号Ｐ（ｎ）をスタックメモリに追加する（ＳＴ１３０）。
【００４４】
続いて、手ぶれ信号予測部１２０は、手ぶれ信号記憶部１１０のスタックメモリに追加された最新の手ぶれ信号Ｐ（ｎ）及び過去の手ぶれ信号Ｐ（ｎ−１）、Ｐ（ｎ−２）・・・Ｐ（ｎ−（ｋ−１））からなる新たな入力パターンＡ（ｎ）をニューラルネットワークに入力する（ＳＴ１４０）。
【００４５】
ニューラルネットワークの各ニューロン（Ｓ’１〜Ｓ’ｋ、ｈ’１〜ｈ’ｘ、Ｒ’）には、上述の学習によって修正されたパラメータ値が設定されており、図７に示すように、入力信号である入力パターンＡ（ｎ）を入力層ユニット１２１、隠れ層ユニット１２２、出力層ユニット１２３の順に伝達していくと、この修正されたパラメータ値に基づいて次の手ぶれ信号の予測値Ｐ’（ｎ＋１）が算出される（ＳＴ１５０）。
【００４６】
そして、手ぶれ信号予測部１２０は、この予測値Ｐ’（ｎ＋１）に基づいて予測手ぶれ信号を生成して出力する（ＳＴ１６０）。
【００４７】
上述した動作を繰り返すことにより、新たな手ぶれ信号を検出するたびにニューラルネットワークが学習を行い、学習するたびに、更に最適な予測値を求めることができるようになっていく。なお、手ぶれ信号をサンプリングする間隔が１／６０［ｓ］以下という短い時間なので、十分精度の良い予測をすることが可能である。
【００４８】
なお、手ぶれ補正機能を備えた撮像機器では、一般的に撮像機器に対する垂直方向、水平方向の二種類の手ぶれ信号を検出しているので、図３に示すようなニューラルネットワークを垂直方向及び水平方向それぞれに１個ずつ設ける。
【００４９】
ところで、このようなニューラルネットワークを用いて手ぶれ信号の予測は可能であるが、実際の撮像機器における手ぶれ予測装置で手ぶれ振動を予測する場合、ニューラルネットワークの演算量が多くなり、予測誤差が収束する、言い換えると、最適なパラメータ値となるまでの処理時間が長くなる。そこで、以下に示すような方法でこれを改善する。
【００５０】
［方法１］
一般的なニューラルネットワークの学習アルゴリズムでは、ニューラルネットワークのパラメータ値（結合荷重）の初期値をランダムに設定する。しかし、ランダムな結合荷重から予測誤差が収束するまでには非常に多い学習回数が必要となる。そこで、装置を使用する個人別、使用環境別に手ぶれを学習させたニューラルネットワークのパラメータ値を保存しておき、これを初期値として用いる様にする。
【００５１】
このようにすることで、実際に予測させる手ぶれ振動と、初期値を作成する時に学習させた手ぶれ信号の特徴が異なる場合であっても、パラメータが最適値に収束するまでの時間（学習回数）が少なくする。
【００５２】
［方法２］
上記［方法１］と同様に、事前に複数の個人、複数の環境においてニューラルネットワークの学習を行い、複数のパラメータ値（学習済み結合荷重）を装置に記憶しておく。そして、新たに手ぶれを予測する際、記憶してある複数のパラメータ値を順次ニューラルネットワークに設定し、ぞれぞれのパラメータ値を用いて手ぶれ振動の予測を一定時間を行い、その中で予測誤差の最も少なかったパラメータ値を再度ニューラルネットワークに設定して改めて手ぶれ振動の予測を開始する。
【００５３】
方法２では、事前に記憶しているパラメータ値の特徴が、新たに手ぶれ振動を予測するときに用いる最適なパラメータ値である可能性が高く、パラメータが最適値に収束するまでの時間、言い換えると、ニューラルネットワークの学習回数が少なくなる。
【００５４】
［方法３］
ベクトル検出方式によって検出された手ぶれ信号は、露光した画像一枚につき、一つの手ぶれ信号しか得られないので、ニューラルネットワークへの入力値を定める場合、入力パターン（図３参照）が完全に一致する確率は極めて小さく、特定の入力パターンに対する特定の出力（以下、入出力パターンという）に対し何度も学習すると、汎化能力は落ちてしまうので、一つの入出力パターンに対して学習回数を１回とすることが望ましい。
【００５５】
ところが、このようにすると手ぶれ信号を一つ得る毎に（つまりは露光する毎に）一度しか学習しないことになり、ニューラルネットワークの学習に必要な学習回数（予測誤差が収束するまでの時間）を満たす為に長い時間がかかってしまう。
【００５６】
そこで、一つの入出力パターンに対し学習回数を２〜３回とすることで、予測処理能力にはほとんど影響することなく、ニューラルネットワークの学習によって予測誤差が収束するまでにかかる時間（必要なサンプリング数）を少なくすることができる。
【００５７】
［方法４］
小型の撮像機器に搭載されている演算処理装置において、一般的に、浮動小数点型の演算の方が、整数型の演算よりも処理時間がかかる。また、浮動小数点型での演算では、指数関数の演算処理にかなりの処理時間が必要になる。
【００５８】
そこで、演算処理装置におけるニューラルネットワークの演算処理を、数式２で示すような置き換えにより、整数型で演算処理するようにする。
【００５９】
【数２】
2004158902.tif 000004
【００６０】
また、上述した数式１において、ニューロンの出力ｆ（ｎｅｔ）と入力の総和ｎｅｔとの関係は、一般的にシグモイド関数が用いられ、滑らかなＳ字曲線状のグラフとなるが、このグラフを図８のように線形で近似したＳ字形のグラフとなるようにニューラルネットワークを設定することで、ニューラルネットワークの処理速度を向上させることができる。
【００６１】
図８に示すグラフは、数式１における定数β＝１．０としたときの線形で近似したグラフであり、その時のｆ（ｎｅｔ）は、次のような値をとる。
【００６２】
ｆ（ｎｅｔ）＝  １．０                          ［１２．０＜ｎｅｔ］
ｆ（ｎｅｔ）＝  ０．９９３  ＋  ０．００１（ｎｅｔ−５．０）  ［５．０＜ｎｅｔ≦１２．０］
ｆ（ｎｅｔ）＝  ０．７３１  ＋  ０．０６５６（ｎｅｔ−１．０）  ［１．０＜ｎｅｔ≦５．０］
ｆ（ｎｅｔ）＝  ０．２６９  ＋  ０．２３１０（ｎｅｔ＋１．０）  ［−１．０＜ｎｅｔ≦１．０］
ｆ（ｎｅｔ）＝  ０．００７  ＋  ０．０６５６（ｎｅｔ＋５．０）  ［−１２．０＜ｎｅｔ≦−５．０］
ｆ（ｎｅｔ）＝  ０．０                            ［ｎｅｔ＜−１２．０］
【００６３】
なお、バックプロパゲーションのアルゴリズムによりニューラルネットワークが学習をする際、図８のグラフにおける出力ｆ（ｎｅｔ）の傾きが必要となってくるが、入力の総和が「ｎｅｔ＜−１２．０」及び「１２．０＜ｎｅｔ」の場合、ｆ（ｎｅｔ）の傾きが０になってしまい、一定以上収束が進まなくなることがある。
【００６４】
そこで、入力の総和が「ｎｅｔ＜−１２．０」及び「１２．０＜ｎｅｔ」において、上述した数式２で表すことのできる傾きが０より大きな値のうち、最小である値をｆ（ｎｅｔ）の傾きとする。
【００６５】
［方法５］
図９に示すように、手ぶれ振動を予測するため、垂直方向及び水平方向に対してそれぞれ１個ずつ設けるニューラルネットワークを一つのニューラルネットワークで構成する。
【００６６】
図９のニューラルネットワークは、入力層ユニット１２１Ａ、隠れ層ユニット１２２Ａ、出力層ユニット１２３Ａの順で配置された階層構造となっており、各ユニット１２１Ａ〜１２３Ａには、それぞれ所定数のニューロンと呼ばれる信号処理エレメントが配置されている。
【００６７】
入力層ユニット１２１Ａには、検出する垂直方向の手ぶれ信号Ｐｐ（ｎ）・・・Ｐｐ（ｎ−（ｋ−２））、Ｐｐ（ｎ−（ｋ−１））と同数のニューロンＳｐ１、Ｓｐ２、・・・Ｓｐｋ−１、Ｓｐｋが配置され、また、検出する水平方向の手ぶれ信号Ｐｙ（ｎ）・・・Ｐｙ（ｎ−（ｋ−２））、Ｐｙ（ｎ−（ｋ−１））と同数のニューロンＳｙ１、Ｓｙ２、・・・Ｓｙｋ−１、Ｓｙｋが配置されており、各ニューロンの出力側は、隠れ層ユニット１２２Ａに配置されているニューロンｈ１〜ｈｘ全ての入力側に接続されている。
【００６８】
隠れ層ユニット１２２Ａには、ニューロンｈ１〜ｈｘが配置され、各ニューロンｈ１〜ｈｘの入力側には、入力層ユニット１２１Ａの垂直方向の手ぶれ信号に関するニューロンＳｐ１〜Ｓｐｋ及び水平方向の手ぶれ信号に関するニューロンＳｙ１〜Ｓｙｋそれぞれの出力側全てが接続されており、各ニューロンｈ１〜ｈｘの出力側は、出力層ユニット１２３ＡのニューロンＲｐ及びニューロンＲｙの入力側にそれぞれ接続される。
【００６９】
出力層ユニット１２３のニューロンＲｐ及びニューロンＲｙの各入力側には、隠れ層ユニット１２２のニューロンｈ１〜ｈｘの出力側が全て接続されており、隠れ層ユニット１２２のニューロンｈ１〜ｈｘからの出力信号に応じて、垂直方向の手ぶれ信号の予測値Ｐ’ｐ（ｎ＋１）と、水平方向の手ぶれ信号の予測値Ｐ’ｙ（ｎ＋１）を出力する。
【００７０】
各ユニット１２１Ａ〜１２３Ａに配置されているそれぞれのニューロンは、入力信号と出力信号の関係の応じて変化する結合係数、いわゆる、パラメータ値が設定されており、入力信号に対し、前回の出力信号（出力値）に応じて設定されるパラメータ値を乗じ、その総和（以下、ネット値）を算出して所定の出力関数へ入力することで得られる出力信号（出力値）を出力する。
【００７１】
図９のニューラルネットワークの動作は、上述の図３で説明したニューラルネットワークと同様であるのでその説明は省略する。
【００７２】
このように、垂直方向及び水平方向の手ぶれ信号の間に相関性があるならば、独立した２つのニューラルネットワークで予測を行うよりもその学習の効果が高まり、ニューラルネットワークによる予測の精度を向上させることができる。
【００７３】
上述した［方法１］〜［方法５］を用いて、手ぶれ信号予測部１２０のニューラルネットワークによる予測の処理速度と精度を上げることにより、手ぶれ振動による画質の劣化をリアルタイムで補正することができる。
【００７４】
次に、第２の実施例である手ぶれ信号予測装置について説明する。第２の実施例の手ぶれ信号予測装置では、第１の実施例で示した手ぶれ信号予測装置（図１参照）にパラメータ記憶部、予測誤差評価部を設け、予測手ぶれ信号と実際の手ぶれ信号との誤差を評価し、その時の最適なパラメータ値を記憶しておくことで、パラメータの設定時間を短縮できるようにしたものである。
【００７５】
図１０に示す手ぶれ信号予測装置は、手ぶれ信号検出部１００Ａ、手ぶれ信号記憶部１１０Ａ、手ぶれ信号予測部１２０Ａ、パラメータ記憶部１３０、予測誤差評価部１４０から構成される。
【００７６】
手ぶれ信号検出部１００Ａは、図２に示すような所定時間ごとに手ぶれによる振動量（以下、手ぶれ量と云う）をサンプリングしたサンプル値（図２の黒点）、いわゆる、手ぶれ信号を検出し、手ぶれ信号記憶部１１０Ａと予測誤差評価部１４０に送る。なお、サンプリングの時間間隔は、手ぶれ信号の周波数（手ぶれ振動の周期）に対して十分に短い時間とする。
【００７７】
手ぶれ信号記憶部１１０Ａは、例えば、ＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  ＦｉｒｓｔＯｕｔ）スタックメモリの様なメモリを備えており、手ぶれ信号検出部１００でサンプリングされたサンプル値（以下、最新の手ぶれ信号）及びニューラルネットワークの入力値として必要となる数の過去のサンプル値（以下、過去の手ぶれ信号）を記憶しておくと共に、記憶している最新及び過去の手ぶれ信号を手ぶれ信号予測部１２０Ａに送出する。
【００７８】
ここで、ニューラルネットワークの入力として必要な過去の手ぶれ信号の数は、６〜８個の程度を用いれば十分精度のよい予測ができるので、手ぶれ信号記憶部１１０Ａには、過去の手ぶれ信号を６〜８個分記憶しておけばよい。
【００７９】
手ぶれ信号予測部１２０Ａは、上述した第１の実施例と同様、三層パーセプトロンと呼ばれる構成のニューラルネットワーク（ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ）を備え、手ぶれ信号記憶部１１０Ａに記憶してある最新の手ぶれ信号及び過去の手ぶれ信号を入力値とするとともに、最新の出力信号を自己にフィードバックして入力値とし、この入力値とニューラルネットワークの出力値とに基づいて、入力と出力の対応関係を学習し、ニューラルネットワークに設定するパラメータ値を変化させ、適切な予測手ぶれ信号を生成して出力する。
【００８０】
また、装置で予測値の算出を開始するとき、パラメータ記憶部１３０からパラメータセットを順次取得してニューラルネットワークに設定し、予測誤差評価部１４０において、誤差が最も小さい予測手ぶれ信号が出力されたときに設定していたパラメータセットをパラメータ記憶部１３０から取得してニューラルネットワークに再度設定する。
【００８１】
なお、ニューラルネットワークの構成および動作については第１の実施例と同じであるので詳細な説明を省略する。
【００８２】
パラメータ記憶部１３０は、不揮発メモリなどであり、ニューラルネットワークに最適なパラメータ値の組み合わせデータであるパラメータセットを複数個（複数セット）記憶しており、装置の起動時（電源投入時）など、手ぶれ信号の予測を開始するときに、記憶してあるパラメータセットを手ぶれ信号予測部１２０Ａに順次送出し、予測誤差評価部１４０に従って、誤差が最も小さい予測手ぶれ信号が出力されたときにニューラルネットワークに設定していたパラメータセットを手ぶれ信号予測部１２０Ａに送出する。
【００８３】
また、予測誤差評価部１４０に従って、手ぶれ信号予測部１２０Ａのニューラルネットワークに設定されているパラメータ値（パラメータセット）を適宜記憶する。
【００８４】
予測誤差評価部１４０は、手ぶれ信号予測部１２０Ａから出力される予測手ぶれ信号と手ぶれ信号検出部１００Ａで検出した実際の（最新の）手ぶれ信号との誤差を検出し、ニューラルネットワークに設定されているパラメータ値の評価を行い、誤差が最小である最適なパラメータ値を適宜パラメータ記憶部１３０に記憶させる。
【００８５】
また、手ぶれ信号予測装置が起動した時、ニューラルネットワークに対する最適なパラメータセットを選択するため、パラメータ記憶部１３０のパラメータセットに基づき手ぶれ信号予測部１２０Ａから順次出力される予測手ぶれ信号と、手ぶれ信号検出部１００Ａで検出した実際の手ぶれ信号との誤差を検出し、最小誤差となったパラメータセットをパラメータ記憶部１３０に通知する。
【００８６】
続いて、このような構成からなる手ぶれ信号予測装置の動作について、図１１のフローチャートを参照しながら説明する。
【００８７】
手ぶれ信号予測装置を起動して手ぶれ信号の予測を開始すると、まず、ニューラルネットワーク部１２０Ａのニューラルネットワークに対する最適なパラメータ値の選択を始める（ＳＴ２００）。
【００８８】
パラメータセットの番号ｋ（ｋ；１〜ｎの整数）と、ニューラルネットワークに前回設定していたパラメータ値による予測手ぶれ信号の誤差Ｅｒｒを初期化設定する（ＳＴ２０１）。
【００８９】
次に、手ぶれ信号予測部１２０Ａは、パラメータ記憶部１３０に記憶してあるパラメータセットの番号ｋ（ｋ；１〜ｎの整数）のパラメータ値Ａｋをニューラルネットワークに設定（入力）する（ＳＴ２０２）。
【００９０】
手ぶれ信号予測部１２０Ａにパラメータ値Ａｋが設定されると、手ぶれ信号検出部１００Ａは所定時間ごとに手ぶれ信号を検出し、検出した手ぶれ信号を手ぶれ信号記憶部１１０Ａと予測誤差評価部１４０に送る（ＳＴ２０３）。
【００９１】
手ぶれ信号記憶部１１０Ａは、手ぶれ信号検出部１００で検出した最新の手ぶれ信号を記憶するとともに、この手ぶれ信号を手ぶれ信号予測部１２０Ａに送出する（ＳＴ２０３）。
【００９２】
手ぶれ信号予測部１２０Ａでは、ニューラルネットワークに設定したパラメータ値Ａｋに基づいて予測手ぶれ信号を生成して出力するとともに、この予測手ぶれ信号を予測誤差評価部１４０に送出する（ＳＴ２０４）。
【００９３】
予測誤差評価部１４０では、手ぶれ信号検出部１００Ａで実際に検出した手ぶれ信号と手ぶれ信号予測部１２０Ａで生成された予測手ぶれ信号との誤差を検出し、所定の時間内（例えば、６０個分のサンプリング値を得るために必要な時間程度）において得た誤差の絶対値を積分して誤差Ｅｋを算出する（ＳＴ２０５）。
【００９４】
そして、前回ニューラルネットワークに設定したパラメータ値における誤差Ｅｒｒと、現在ニューラルネットワークに設定しているパラメータ値における誤差Ｅｋとを比較する（ＳＴ２０６）。
【００９５】
誤差Ｅｋ＜誤差Ｅｒｒである場合は、現在ニューラルネットワークに設定しいるパラメータセットの番号ｋ（ｋ；１〜ｎの整数）のパラメータ値Ａｋを最適なパラメータ値とし、そのパラメータセットの番号ｋを最適なパラメータセットの番号ｋｂｅｓｔとする。また、このときの誤差Ｅｋを誤差Ｅｒｒとしてセットすし、手ぶれ信号記憶部１１０Ａに次のパラメータセットがあるか否かを判別する処理へ移行する（ＳＴ２０７→ＳＴ２０８）。
【００９６】
もし、誤差Ｅｋ＞誤差Ｅｒｒである場合は、手ぶれ信号記憶部１１０Ａに次のパラメータセットがあるか否かを判別する処理へ移行する（ＳＴ２０６→ＳＴ２０８）。
【００９７】
手ぶれ信号記憶部１１０Ａに、次のパラメータセットがある場合は、パラメータセットの番号ｋ（ｋ；１〜ｎの整数）をインクリメントする（ＳＴ２０９）。
【００９８】
そして、手ぶれ信号予測部１２０Ａは、パラメータ記憶部１３０に記憶してある次のパラメータセットの番号ｋ（ｋ；１〜ｎの整数）のパラメータ値Ａｋをニューラルネットワークに設定し、上述した動作を繰り返し行い、これを全てのパラメータセットで行う。（ＳＴ２０９→ＳＴ２０２→・・・）。
【００９９】
全てのパラメータセットについての誤差Ｅｋの評価が完了すると、最適なパラメータセットの番号ｋｂｅｓｔに設定してある番号のパラメータセットをパラメータ記憶部１３０から読み出して、手ぶれ信号予測部１２０Ａのニューラルネットワークに再設定する（ＳＴ２０８→ＳＴ２２０）。
【０１００】
これによって、手ぶれ信号予測部１２０Ａのニューラルネットワークには、現時点における最適なパラメータ値Ａｋｂｅｓｔが設定される（ＳＴ２２０）。
【０１０１】
手ぶれ信号予測部１２０Ａに最適なパラメータ値Ａｋｂｅｓｔが設定されると、手ぶれ信号の予測を再開し、手ぶれ信号検出部１００Ａは所定時間ごとに手ぶれ信号を検出し、手ぶれ信号記憶部１１０Ａと予測誤差評価部１４０に送る（ＳＴ２２１）。
【０１０２】
手ぶれ信号記憶部１１０Ａは、手ぶれ信号検出部１００Ａで検出した最新の手ぶれ信号を記憶するとともに、最新の手ぶれ信号及び過去の手ぶれ信号を手ぶれ信号予測部１２０Ａに送出する（ＳＴ２２２）。
【０１０３】
手ぶれ信号予測部１２０Ａは、最新の手ぶれ信号に基づいてニューラルネットワークに設定したパラメータ値を修正し、修正したパラメータ値によって予測手ぶれ信号を生成して出力するとともに、この予測手ぶれ信号を予測誤差評価部１４０に送出する（ＳＴ２２３）。
【０１０４】
予測誤差評価部１４０では、手ぶれ信号検出部１００Ａで実際に検出した手ぶれ信号と手ぶれ信号予測部１２０Ａで生成された予測手ぶれ信号との誤差を検出し、所定の時間内において得た誤差の絶対値を積分して誤差Ｅｋを算出する（ＳＴ２２４）。
【０１０５】
そして、最適値として設定したパラメータ値による誤差Ｅｒｒと修正したパラメータ値による誤差Ｅとを比較する（ＳＴ２２５）。
【０１０６】
誤差Ｅ＜誤差Ｅｒｒである場合は、現在ニューラルネットワークに設定されている修正したパラメータ値を最適なパラメータ値として手ぶれ信号記憶部１１０Ａに記憶し、このときの誤差Ｅを誤差Ｅｒｒにセットする（ＳＴ２２５→ＳＴ２２６）。
【０１０７】
そして、再び手ぶれ信号検出部１００Ａで次の手ぶれ信号を検出し、上述した処理を繰り返し行う（ＳＴ２２６→ＳＴ２２１→・・・）。
【０１０８】
誤差Ｅｋ＞誤差Ｅｒｒである場合は、最適値として設定したパラメータ値はそのままとし、誤差Ｅｒｒも現状のままとし、再び手ぶれ信号検出部１００Ａで次の手ぶれ信号を検出し、上述した処理を繰り返し行う（ＳＴ２２５→ＳＴ２２１→・・・）。
【０１０９】
このような手ぶれ信号予測装置によれば、ニューラルネットワークが学習するたびにパラメータの初期値が更に最適化され、ニューラルネットワークに最適なパラメータ値がセットされるまでの時間が短縮される。
【０１１０】
【発明の効果】
以上説明したように、手ぶれ振動の予測にニューラルネットワークを用いることで個人差や使用環境によって異なる手ぶれ振動に対して精度の良い予測を簡単な回路構成で実現することができるので、手ぶれ補正機能を低コストで導入することができるという極めて優れた効果を奏するものである。
【０１１１】
また、手ぶれ予測装置の使用回数が多くなるに従い、予測演算処理を行うニューラルネットワークのパラメータ値がユーザの使用環境に特化され、更に、このパラメータ値を記憶しておくことでパラメータ値を最適化するまでの時間が短縮できるので、個人に応じた最適な手ぶれ振動の補正が可能となるというメリットがある。
【図面の簡単な説明】
【図１】本発明に係る手ぶれ信号予測装置の基本的な構成を略示的に示したブロック図である。
【図２】図１に示す手ぶれ信号予測装置における手ぶれ振動のサンプリングについて説明するための説明図である。
【図３】図１に示す手ぶれ信号予測装置における手ぶれ信号予測部のニューラルネットワークの概略構成を示したブロック図である。
【図４】図１に示す手ぶれ信号予測装置の動作を説明するためのフローチャートである。
【図５】図１に示す手ぶれ信号予測装置における手ぶれ信号予測部のニューラルネットワークの動作を説明するための説明図である。
【図６】図１に示す手ぶれ信号予測装置における手ぶれ信号予測部のニューラルネットワークの動作を説明するための説明図である。
【図７】図１に示す手ぶれ信号予測装置における手ぶれ信号予測部のニューラルネットワークの動作を説明するための説明図である。
【図８】図１に示す手ぶれ信号予測装置において、ニューラルネットワークの処理速度を向上させるときの各層ユニットの入力−出力の関係を示したグラフである。
【図９】図１に示す手ぶれ予測装置を用いて、ニューラルネットワークにおける処理速度を向上するための構成例を示したブロック図である。
【図１０】本願発明に関する手ぶれ予測装置における第２の実施例の概略構成を示したブロック図である。、
【図１１】図１０に示す手ぶれ予測装置の動作を説明するためのフローチャートである。
【符号の説明】
１００；手ぶれ信号検出部、１１０；手ぶれ信号記憶部、１２０；手ぶれ信号予測部（ニューラルネットワーク）
１２１／１２１Ａ；入力層ユニット、１２２／１２２Ａ；隠れ層ユニット、１２３／１２３Ａ；出力層ユニット、
１００Ａ；手ぶれ信号検出部、１１０Ａ；手ぶれ信号記憶部、１２０Ａ；手ぶれ信号予測部（ニューラルネットワーク）、１３０；パラメータ記憶部、１４０；予測誤差評価部
【図１】
2004158902.tif 000005
【図２】
2004158902.tif 000006
【図３】
2004158902.tif 000007
【図４】
2004158902.tif 000008
【図５】
2004158902.tif 000009
【図６】
2004158902.tif 000010
【図７】
2004158902.tif 000011
【図８】
2004158902.tif 000012
【図９】
2004158902.tif 000013
【図１０】
2004158902.tif 000014
【図１１】
2004158902.tif 000015