(57)【要約】【課題】ローリングシャッター機能により露光処理を行う撮像素子を備えた撮像装置において、動体歪みを補正する。【解決手段】ローリングシャッター機能により露光処理を行う撮像素子を用いて、連続して２フレームの画像を生成し、オブジェクト検出部１３１は、前記２フレームの画像から、水平方向に移動している被写体の像である移動画像を検出し、補正位置算出部１３２は、前記２フレームの画像が水平方向に区切られた複数の領域について、対応する領域毎に、一方に含まれる前記移動画像の位置と、他方に含まれる前記移動画像の位置とから、補正位置を算出し、オブジェクト抽出部１３３、背景画像生成部１３４および合成部１３５は、前記移動画像が含まれるすべての領域について、領域毎に、算出された前記補正位置に移動画像を移動させて、背景画像と合成することにより、補正画像を生成する【選択図】図５
2015046812.tif 000002
【特許請求の範囲】
【請求項１】
二次元配列された複数の画素を備え、水平ライン毎にタイミングをずらして電荷の蓄積および転送を行うことにより１フレームの画像を生成する撮像素子と、
前記撮像素子により連続して生成された２フレームの画像を格納する画像記憶部と、
前記画像記憶部に格納されている前記２フレームの画像から、水平方向に移動している被写体の像である移動画像を検出する検出手段と、
前記２フレームの画像が水平方向に区切られた複数の領域について、対応する領域毎に、一方に含まれる前記移動画像の位置と、他方に含まれる前記移動画像の位置とから、補正位置を算出する算出手段と、
前記移動画像が含まれるすべての領域について、領域毎に、算出された前記補正位置に移動画像を移動させて補正画像を生成する補正手段と
を備えることを特徴とする撮像装置。
【請求項２】
前記撮像装置は、
前記撮像素子に、第１水平ラインから第ｎ水平ラインの順に電荷の蓄積および転送を行い１フレームの画像を生成させ、連続して、前記第ｎ水平ラインから前記第１水平ラインの順に電荷の蓄積および転送を行い１フレームの画像を生成させるように制御する制御手段を備え、
前記検出手段は、前記画像記憶部に格納されている前記２フレームの画像が水平方向に区切られた複数の領域について、対応する領域毎に、相関の強い像が互いに異なる位置に存在する場合に、前記相関の強い像を前記移動画像として検出し、
前記算出手段は、前記２フレームの画像が水平方向に区切られた前記複数の領域について、対応する領域毎に、当該２つの領域に含まれる前記移動画像の位置の中間点を前記補正位置として算出し、
前記補正手段は、領域毎に、前記移動画像を前記中間点に移動させた前記補正画像を生成する
ことを特徴とする請求項１に記載の撮像装置。
【請求項３】
前記撮像装置は、
水平方向に移動する被写体を撮影するための移動体モードを含む複数の撮影モードの何れかを記憶しているモード記憶部を備え、
前記制御手段は、前記モード記憶部に記憶されている撮影モードが前記移動体モードである場合に、前記撮像素子に、第１水平ラインから第ｎ水平ラインの順に電荷の蓄積および転送を行い１フレームの画像を生成させ、連続して、前記第ｎ水平ラインから前記第１水平ラインの順に電荷の蓄積および転送を行い１フレームの画像を生成させるように制御する
ことを特徴とする請求項２に記載の撮像装置。
【請求項４】
前記２フレームの画像が水平方向に区切られた前記各領域は、前記撮像素子の第１水平ラインから第ｎ水平ラインまでに対応したｎ個の領域であり、
前記撮像素子の隣接する水平ライン間の露光タイミング差がΔｔである場合に、
前記算出手段は、
前記画像記憶部に格納されている前記２フレームの画像に含まれる前記移動画像の位置に基づき、前記被写体の速度ｖを算出し、
隣接する領域間における歪み量Ｘ＝ｖ×Δｔを算出し、
算出された前記歪み量Ｘを用いて、前記補正位置を調整する
ことを特徴とする請求項２に記載の撮像装置。
【請求項５】
前記撮像装置は、
前記撮像素子に、第１水平ラインから第ｎ水平ラインの順に電荷の蓄積および転送を行い１フレームの画像を生成させ、連続して、第１水平ラインから第ｎ水平ラインの順に電荷の蓄積および転送を行い１フレームの画像を生成させるように制御する制御手段を備え、
前記検出手段は、前記画像記憶部に格納されている前記２フレームの画像が水平方向に区切られた複数の領域について、対応する領域毎に、相関の強い像が互いに異なる位置に存在する場合に、前記相関の強い像を前記移動画像として検出し、
前記２フレームの画像が水平方向に区切られた前記各領域は、前記撮像素子の第１水平ラインから第ｎ水平ラインまでに対応したｎ個の領域であり、
前記撮像素子の隣接する水平ライン間の露光タイミング差がΔｔである場合に、
前記検出手段は、更に、前記被写体の移動方向を検出し、
前記算出手段は、
前記画像記憶部に格納されている前記２フレームの画像に含まれる前記移動画像の位置に基づき、前記被写体の速度ｖを算出し、
隣接する領域間における歪み量Ｘ＝ｖ×Δｔを算出し、
算出された前記歪み量Ｘと前記検出手段により検出された前記移動方向とを用いて、前記補正位置を算出する
ことを特徴とする請求項１に記載の撮像装置。
【請求項６】
前記画像記憶部は、前記撮像素子により連続して生成された３フレーム以上の画像を記憶しており、
前記検出手段は、更に、前記画像記憶部に記憶されている前記３フレーム以上の画像から、前記補正位置の算出に利用する前記２フレームの画像を選択する
ことを特徴とする請求項１に記載の撮像装置。
【請求項７】
二次元配列された複数の画素を備え、水平ライン毎にタイミングをずらして電荷の蓄積および転送を行うことにより１フレームの画像を生成する撮像素子と画像記憶部とを備える撮像装置で用いる撮像方法であって、
前記撮像素子により、連続して２フレームの画像を生成する撮像ステップと、
前記撮像ステップにより生成された前記２フレームの画像を、前記画像記憶部に格納する格納ステップと、
前記画像記憶部に格納されている前記２フレームの画像から、水平方向に移動している被写体の像である移動画像を検出する検出ステップと、
前記２フレームの画像が水平方向に区切られた複数の領域について、対応する領域毎に、一方に含まれる前記移動画像の位置と、他方に含まれる前記移動画像の位置とから、補正位置を算出する算出ステップと、
前記移動画像が含まれるすべての領域について、領域毎に、算出された前記補正位置に移動画像を移動させて補正画像を生成する補正ステップと
を含むことを特徴とする撮像方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像装置に関し、特に、移動している物体を撮影したときに生じる画像の歪みを補正する技術に関する。
【背景技術】
【０００２】
携帯電話機、スマートフォン、タブレット型端末など、可搬機器に搭載される撮像装置は、ＣＭＯＳイメージセンサが用いられることが多い。ＣＭＯＳイメージセンサは、画素毎にフォトダイオードと増幅器とを備え、所謂ローリングシャッター機能により、水平ライン毎に順次、電荷の蓄積および転送を行う。このように、ＣＭＯＳイメージセンサは、水平ライン毎に電荷の蓄積および転送を行う構成を有しており、すべての電荷を一括で転送するＣＣＤイメージセンサと比較すると、小規模な電源で動かすことが可能である（特許文献１〜５参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−１１４６４９号公報
【特許文献２】特開２００９−１８２５２７号公報
【特許文献３】特開２００７−２３５８１９号公報
【特許文献４】特開２００３−００６６５０号公報
【特許文献５】特開２００２−３３５４５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記のような特徴を有するＣＭＯＳイメージセンサを用い、水平方向に移動している被写体を撮影すると、被写体の像はライン毎にずれ、歪んだ画像が生成される。このような歪み（以下、「動体歪み」と記載する。）は、被写体の速度が速い場合、および、シャッター速度が遅い場合に顕著になる。
本発明は、上記の問題点に鑑みなされたものであって、ＣＭＯＳイメージセンサのように、ローリングシャッター機能により電荷の蓄積および転送を行う撮像素子を備えた撮像装置において、動体歪みを補正することが可能な撮像装置および撮像方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記の目的を達成するために、本発明の一態様である撮像装置は、二次元配列された複数の画素を備え、水平ライン毎にタイミングをずらして電荷の蓄積および転送を行うことにより１フレームの画像を生成する撮像素子と、前記撮像素子により連続して生成された２フレームの画像を格納する画像記憶部と、前記画像記憶部に格納されている前記２フレームの画像から、水平方向に移動している被写体の像である移動画像を検出する検出手段と、前記２フレームの画像が水平方向に区切られた複数の領域について、対応する領域毎に、一方に含まれる前記移動画像の位置と、他方に含まれる前記移動画像の位置とから、補正位置を算出する算出手段と、前記移動画像が含まれるすべての領域について、領域毎に、算出された前記補正位置に移動画像を移動させて補正画像を生成する補正手段とを備えることを特徴とする。
【発明の効果】
【０００６】
上記の構成を備えることにより、撮像装置は、動体歪みを補正することができる。
【図面の簡単な説明】
【０００７】
【図１】撮像装置１の機能ブロック図
【図２】撮像素子１０６の概略図
【図３】（ａ）通常モードのときの撮像素子１０６の露光処理を示す図（ｂ）動きモードのときの撮像素子１０６の露光処理を示す図
【図４】（ａ）オブジェクトについて説明するための図（ｂ）１回目の露光処理で撮影されるオブジェクトの画像（ｃ）２回目の露光処理で撮影されるオブジェクトの画像
【図５】歪み補正部１１１の内部構成を示す機能ブロック図
【図６】撮像装置１による撮像処理の動作フロー
【図７】（ａ）フレームメモリＡに格納される画像データの一例（ｂ）フレームメモリＢに格納される画像データの一例（ｃ）補正位置の算出について説明するための図（ｄ）背景画像の生成について説明するための図（ｅ）背景画像の一例を示す図（ｆ）背景画像とオブジェクトの合成について説明するための図
【図８】歪み補正部１１１により生成される補正画像の図
【図９】変形例に係る撮像素子１０６の露光処理を示す図
【図１０】変形例に係る撮像装置１による撮像処理の動作フロー
【図１１】（ａ）変形例におけるフレームメモリＡに格納される画像データの一例（ｂ）変形例におけるフレームメモリＢに格納される画像データの一例（ｃ）変形例における補正位置の算出について説明するための図（ｄ）変形例において歪み補正部１１１により生成される補正画像の一例
【発明を実施するための形態】
【０００８】
以下では、本発明に係る撮像装置の一態様である撮像装置１について説明する。
＜１．撮像装置１の構成＞
図１は、撮像装置１の構成を示すブロック図である。
同図に示すように、撮像装置１は、操作部１０１、モード記憶部１０２、制御部１０３、光学系１０４、タイミング制御回路１０５、撮像素子１０６、垂直走査部１０７、水平走査部１０８、画像処理部１０９、画像記憶部１１０、歪み補正部１１１、および、出力部１１２を含む。
【０００９】
操作部１０１は、タッチパネル、操作キー、操作ボタン等により構成されるユーザインタフェースである。操作部１０１は、制御部１０３と接続されており、ユーザの操作を受け付けると、ユーザの操作に対応した操作信号を、制御部１０３へ出力する。
図１に示すように、操作部１０１は、少なくとも、撮影モードを選択するためのモード設定ボタン１２１と、撮像処理を開始するためのシャッターボタン１２２とを含む。ここで、撮像装置１は、「動きモード」および「通常モード」の２つの撮影モードを有している。「動きモード」とは、電車や自動車など、高速で移動している被写体を撮影するモードである。「通常モード」とは、それ以外の被写体（主に静止している被写体）を撮影するモードである。
【００１０】
モード記憶部１０２は、操作部１０１がユーザから受け付けた撮影モードを記憶する記憶領域である。一例として、モード記憶部１０２には、１ビットのフラグが格納される。モード記憶部１０２に格納されているフラグの値が「０」であるとき、撮像装置１の撮影モードは、「通常モード」である。モード記憶部１０２に格納されているフラグの値が「１」であるとき、撮像装置１の撮影モードは、「動きモード」である。
【００１１】
制御部１０３は、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）およびＲＡＭ（Random Access Memory）で構成されるマイクロコンピュータであり、撮像装置１の各機能ブロックの動作を制御する機能を有する。ＲＯＭには、ＣＰＵが実行する各種のプログラム、処理に必要なデータ等が記憶されている。ＣＰＵは、ＲＯＭに記憶されている各種のプログラムを実行することにより、撮像装置１の各機能ブロックを制御する。ＲＡＭは、処理の途中結果を一時記憶する等、主に作業領域として用いられる。
【００１２】
光学系１０４は、撮像レンズ、フォーカス機構、絞り機構等を含む。図示していない光学ドライバは、制御部１０３の制御を受けて、フォーカス機構および絞り機構に供給する駆動信号を生成する。フォーカス機構および絞り機構は、光学ドライバから駆動信号を受けて駆動する。
タイミング制御回路１０５は、制御部１０３の制御により、垂直走査部１０７および水平走査部１０８を駆動するためのタイミング信号を生成し、生成したタイミング信号を、垂直走査部１０７および水平走査部１０８に供給する。
【００１３】
撮像素子１０６は、ローリングシャッター機能を備えた固体撮像素子であり、一例としては、ＣＭＯＳ（Complementary Metal-Oxide Semiconductor）イメージセンサである。
撮像素子１０６は、図２に示すように、有効画素領域にマトリクス状に配列された複数の画素ＰＸ１−１、ＰＸ１−２、…、ＰＸｎ−ｍを備える。各画素は、フォトダイオードおよび増幅器を含み、光学系１０４を介して入射された光を電荷に変換し、増幅する。マトリクス状に配列された複数の画素のうち、有効画素領域の最上端に配置されたｍ個の画素を「第１水平ライン」とし、垂直走査方向の下向きに、順に、「第２水平ライン」、「第３水平ライン」とし、有効画素領域の最下端に配置されたｍ個の画素を「第ｎ水平ライン」とする。
【００１４】
また、撮像素子１０６は、水平ライン毎に画素を駆動させて、電荷を読み出すための垂直信号線１０７ａ、１０７ｂ、…、１０７ｍと、各垂直信号線１０７ａ、１０７ｂ、…、１０７ｍにより読み出された電荷を、画像処理部１０９へ転送するための水平信号線１０８ａおよび１０８ｂを含む。
撮像素子１０６のローリングシャッター機能は、撮影モードによって動作が異なる。
【００１５】
図３（ａ）に示すように、通常モードのとき、撮像素子１０６は、第１水平ラインから第ｎ水平ラインへ順にタイミングをΔｔずらしながら、水平ライン毎に露光し、電荷の蓄積と読み出し（転送）とを行って、被写体を撮影する。通常モードで撮影された被写体の画像データは、画像記憶部１１０のフレームメモリＡに格納される。
図３（ｂ）に示すように、動きモードのとき、撮像素子１０６は、2回のシャッター動作を連続して行う。1回目のシャッター動作では、撮像素子１０６は、第１水平ラインから第ｎ水平ラインへ、順に、タイミングをΔｔずらしながら露光して被写体を撮影する。2回目のシャッター動作では、撮像素子１０６は、第ｎ水平ラインから第１水平ラインへ、順に、タイミングをΔｔずらしながら露光して被写体を撮影する。１回目のシャッター動作で撮影された画像データは、画像記憶部１１０のフレームメモリＡに格納される。２回目のシャッター動作で撮影された画像データは、画像記憶部１１０のフレームメモリＢに格納される。
【００１６】
例えば、図４（ａ）に示すように、紙面の矢印方向に高速で移動している被写体（以下、「オブジェクト」と記載する。）を、動きモードで撮影する。この場合、１回目のシャッター動作により撮影された画像は、図４（ｂ）に示すような歪みが生じる。一方、２回目のシャッター動作により撮影された画像は、図４（ｃ）に示すような歪みが生じる。即ち、１回目のシャッター動作と2回目のシャッター動作とにおいて、画素を駆動させる方向を逆方向に制御することにより、互いに水平方向逆向きに歪んだ２つの画像が生成される。後述する歪み補正部１１１では、このような水平方向逆向きの歪みを利用して、補正画像を生成する。
【００１７】
画像処理部１０９は、ＣＤＳ（Correlated Double Sampling）、ＡＧＣ（Automatic Gain Control）、および ＡＤ（Analog to Digital）コンバータなどを含む。画像処理部１０９は、撮像素子１０６から出力されるアナログの画素信号に対して、ノイズ除去、自動利得制御、および、Ａ／Ｄ変換等の信号処理を行い、デジタルの画像データを生成する。画像処理部１０９は、生成した画像を制御部１０３へ出力する。生成された画像データは、制御部１０３を介して、画像記憶部１１０に保存される。
【００１８】
画像記憶部１１０は、一例として、３フレーム分の画像データを格納することができる記憶領域（ＲＡＭ）である。上述したように、フレームメモリＡには、通常モードで撮影された画像データと、動きモードの１回目のシャッター動作で撮影された画像データとが格納される。フレームメモリＢには、動きモードの２回目のシャッター動作で撮影された画像データが格納される。フレームメモリＣには、歪み補正部１１１により生成された補正画像が格納される。
【００１９】
歪み補正部１１１は、動きモードで撮影された２つの画像データを用い、歪みを補正した補正画像を生成する機能を有する。歪み補正部１１１は、具体的には、歪み補正用のＬＳＩを有し、歪み補正用のＬＳＩが制御部１０３の制御を受けて動作することによって補正画像を生成する。
図５は、歪み補正部１１１の機能ブロック図である。同図に示すように、歪み補正部１１１は、オブジェクト検出部１３１、補正位置算出部１３２、オブジェクト抽出部１３３、背景生成部１３４および合成部１３５から構成される。また、歪み補正部１１１は、補正画像を生成する過程で用いる作業用の記憶領域であるラインメモリＡおよびラインメモリＢを含む。各構成要素の機能については、図６〜図８を用いて説明する。
【００２０】
出力部１１２は、画像記憶部１１０から出力画像を読み出して、外部（例えば、表示装置等）に出力する機能を有する。
＜２．撮像処理の動作＞
図６は、撮像装置１による撮像処理の動作を示すフローチャートである。この動作は、シャッターボタン１１２が押下されることにより開始する。
【００２１】
制御部１０３は、モード記憶部１０２に格納されているフラグの値を判断することにより、撮影モードが、通常モードであるか、動きモードであるか判断する（ステップＳ１０１）。
撮影モードが通常モードである場合（ステップＳ１０１で「通常モード」）、制御部１０３は、他のブロックを制御することにより、撮像素子１０６の上から下へシャッターを切り、画像データを生成する（ステップＳ１０２）。即ち、撮像素子１０６は、第１水平ラインから第ｎ水平ラインへ順に露光処理を行い、画像データを生成する。ステップＳ１０２のシャッター動作で撮影された画像データは、画像記憶部１１０のフレームメモリＡに格納される。その後、出力部１１２は、フレームメモリＡに格納されている画像データを読み出して、外部に出力する（ステップＳ１１６）。
【００２２】
撮影モードが動きモードである場合（ステップＳ１０１で「動きモード」）、制御部１０３は、他のブロックを制御することにより、先ず、撮像素子１０６の上から下へシャッターを切り、画像データを生成する（ステップＳ１０３）。即ち、撮像素子１０６は、第１水平ラインから第ｎ水平ラインへ順に露光処理を行い、画像データを生成する。ステップＳ１０３のシャッター動作で撮影された画像データは、画像記憶部１１０のフレームメモリＡに格納される。一例として、図７（ａ）に示す画像データが、フレームメモリＡに格納される。
【００２３】
次に、制御部１０３は、他のブロックを制御することにより、撮像素子１０６の下から上へシャッターを切り、画像データを生成する（ステップＳ１０４）。即ち、撮像素子１０６は、第ｎ水平ラインから第１水平ラインへ順に露光処理を行い、画像データを生成する。ステップＳ１０４のシャッター動作で撮影された画像データは、画像記憶部１１０のフレームメモリＢに格納される。一例として、図７（ｂ）に示す画像データが、フレームメモリＢに格納される。
【００２４】
続いて、歪み補正部１１１は、フレームメモリＡおよびフレームメモリＢに格納されている２つの画像データについて、同一ラインのライン画像毎にステップＳ１０６からステップＳ１１４を繰り返す（ステップＳ１０５）。
ここでは一例として、歪み補正部１１１の処理単位である「ライン画像」は、撮像素子１０６の水平走査線（水平ライン）１本分に相当する。
【００２５】
図７（ａ）〜（ｆ）および図８では、１フレームの画像データが１６×９個の画素で構成されている例を示す。また、ここでは、図７（ａ）に示すように、フレームメモリの左上端の画素のｘｙ座標を（０，０）とし、右上端の画素のｘｙ座標を（１５，０）とし、左下端の画素のｘｙ座標を（０，８）とし、左下端の画素のｘｙ座標を（１５，８）とする。
【００２６】
オブジェクト検出部１３１は、フレームメモリＡに格納されている処理対象のライン画像と、フレームメモリＢに格納されている処理対象のライン画像とについて画素値を比較する（ステップＳ１０６）。
ステップＳ１０６の結果、相関が強い画素が、フレームメモリＡおよびフレームメモリＢの互いに異なる座標に現れていない場合、即ち、相関が強い画素のすべてが、フレームメモリＡおよびフレームメモリＢの同一の座標に現れている場合（ステップＳ１０７でＮＯ）、オブジェクト検出部１３１は、処理対象のライン画像はオブジェクトを含まない背景であると判定する。オブジェクト検出部１３１は、フレームメモリＡに格納されている処理対象のライン画像を、フレームメモリＣの対応するラインに格納する（ステップＳ１１４）。
【００２７】
ステップＳ１０６の結果、相関が強い画素が、フレームメモリＡおよびフレームメモリＢの互いに異なる座標に現れている場合（ステップＳ１０７でＹＥＳ）、オブジェクト検出部１３１は、当該画素は、オブジェクトの一部であると判定する（ステップＳ１０８）。
図７（ａ）および図７（ｂ）の例を用いて説明すると、処理対象のライン画像が、ｙ＝４のライン画像の場合、フレームメモリＡにおける座標（１５，４）に位置する画素と相関が強い画素が、フレームメモリＢにおいては、座標（１，４）に現れている。そこで、オブジェクト検出部１３１は、当該画素を、オブジェクトの一部であると判定する。
【００２８】
ここで、「相関が強い画素」とは、同一の被写体であるとみなされる程度に互いの画素値が近似していることを言う。オブジェクト検出部１３１は、予め閾値を保持しており、比較対象である２つの画素の画素値の差が閾値より小さい場合に、「相関が強い」と判断してもよい。
続いて、補正位置算出部１３２は、ステップＳ１０８で、オブジェクトの一部であると判定された画素について、補正位置のｘ座標を、Ｘ＝（ｘ1＋ｘ2）／２から算出する（ステップＳ１０９）。ここで、ｘ1は、フレームメモリＡにおけるオブジェクトの一部である画素のｘ座標であり、ｘ2は、フレームメモリＢにおけるオブジェクトの一部である画素のｘ座標である。補正位置が算出されると、オブジェクト抽出部１３３は、ラインメモリＡの補正位置に、オブジェクトの一部である画素を格納する（ステップＳ１１０）。
【００２９】
図７（ａ）および図７（ｂ）の例において、処理対象のライン画像が、ｙ＝４のライン画像の場合、ｘ1＝１５、ｘ2＝１であるから、補正位置のｘ座標は、Ｘ＝８である。そこで、オブジェクト抽出部１３３は、図７（ｃ）に示すように、ラインメモリＡのＸ＝８の位置に、オブジェクトの一部である画素を格納する（画素をコピーする）。
次に、背景生成部１３４は、フレームメモリＡに格納されている処理対象のライン画像から、オブジェクトの一部である画素を消去したライン画像を、ラインメモリＢに格納する（ステップＳ１１１）。
【００３０】
そして、背景生成部１３４は、図７（ｄ）および図７（ｅ）に示すように、ラインメモリＢにおいて欠損している画素を、フレームメモリＢの同一位置の画素で補間することにより、背景画像を生成する（ステップＳ１１２）。
次に、合成部１３５は、ラインメモリＢに格納されているライン画像（背景画像）に、ラインメモリＡに格納されているライン画像（オブジェクト）を重畳し、図７（ｆ）に示すように、１ライン分の補正画像を生成する（ステップＳ１１３）。合成部１３５は、生成した１ライン分の補正画像を、画像記憶部１１０のフレームメモリＣの対応するラインに格納する（ステップＳ１１４）。
【００３１】
歪み補正部１１１は、フレームメモリＡおよびフレームメモリＢに格納されている２つの画像データのすべてのラインについて、ステップＳ１０６からステップＳ１１４までの処理を終了すると（ステップＳ１１５）、図８に示すように、フレームメモリＣには、１フレーム分の補正画像が格納される。
その後、出力部１１２は、フレームメモリＣに格納されている画像データを外部に出力する（ステップＳ１１７）。
【００３２】
＜３．効果＞
このように、撮像装置１は、水平方向に高速で移動している被写体を撮影した場合であっても、メカシャッターなどの物理的機構を追加することなく、また、少ない計算量により、動体歪みを補正した補正画像を生成することができる。
＜４．その他の変形例＞
以上、本発明の撮像装置の一態様である実施形態を説明したが、例示した撮像装置１を以下のように変形することも可能であり、本発明が上述の実施形態で示したとおりの撮像装置に限られないことは勿論である。
【００３３】
（１）上記の実施形態では、撮像素子１０６は、動きモードで撮像処理を行うとき、１回目のシャッター動作では、水平ラインの上から下へ順に露光し、２回目のシャッター動作では、水平ラインの下から上へ順に露光する構成であった。しかし、本発明はこの構成に限定されない。１回目のシャッター動作では、水平ラインの下から上へ順に露光し、２回目のシャッター動作では、水平ラインの上から下へ順に露光する構成であってもよいのは勿論である。この場合も、上記の歪み補正部１１１の処理と同様の処理により補正画像を生成することができ、同様の効果を奏する。
【００３４】
（２）上記の実施形態では、撮像装置１は、動きモードのとき、連続して撮影した２つの画像データを用いて補正位置を計算する構成であった。しかし、本発明は、この構成に限定されない。例えば、画像記憶部１１０は、撮像素子１０６により撮影された複数の画像データ（３フレーム以上の画像データ）を格納しており、これら複数の画像データの中から、補正位置の計算に用いる２つの画像データを選択する構成でもよい。
【００３５】
更に具体的に説明する。オブジェクトが水平方向に等速運動をしている場合、連続して撮影された２つの画像データにおいて、オブジェクトの像は、相関が強く現れる。しかし、オブジェクトが斜め方向に移動したり、水平方向に加速度運動をしたりすると、連続して撮影された２つの画像データにおいて、オブジェクトの像は、相関が強く現れない可能性がある。このような場合に、上記の実施形態で説明したように、連続して撮影した２つの画像データを用いてライン毎に補正位置を計算すると、動体歪みが適切に補正できない可能性がある。
【００３６】
そこで、撮像装置１は、撮像素子１０６により撮影された複数の画像データ（３フレーム以上の画像データ）を格納しており、これら複数の画像データの中から、相関が強く現れている２つの画像データを選択し、選択した２つの画像データを用いて、補正位置の算出、背景画像の生成および補正画像の生成を行うように構成してもよい。
（３）上記の実施形態では、歪み補正部１１１は、撮像素子１０６の水平走査線（水平ライン）１本分に相当するライン画像を処理単位とした。しかし、これは一例であり、歪み補正部１１１の処理単位は、水平走査線１本分のライン画像に限定されない。歪み補正部１１１は、画像記憶部１１０に格納されている１フレームの画像データを水平方向に複数の領域に区切り、この区切られた領域の単位で、（ａ）オブジェクトの検出、（ｂ）補正位置の算出、（ｃ）補正位置へのオブジェクトの移動、（ｄ）背景画像の生成、（ｅ）背景画像とオブジェクトとの合成、を行う構成でもよい。
【００３７】
この場合、オブジェクト検出部１３１は、処理単位である領域を更に複数のブロックに分割し、ブロック毎に当該ブロックに含まれる画素の画素値の平均値を算出し、算出された平均値を比較することにより、対応するブロック毎の相関を取るように構成してもよい。
（４）上記の実施形態では、オブジェクト検出部１３１は、ライン画像を処理単位とし、相関が強い画素が、フレームメモリＡおよびフレームメモリＢの互いに異なる座標に現れている場合に、当該画素は、オブジェクトの一部であると判定する構成を有していた。しかし、撮像装置１のオブジェクト検出部１３１は、水平方向に移動している被写体の像を検出する機能を有していれば足り、どのような検出方法を用いてもよい。
【００３８】
上記の実施形態では、図４および図７に示したように、フレームメモリＡに格納される画像データおよびフレームメモリＢに格納される画像データには、水平方向逆向き歪んだ像が含まれている。オブジェクト検出部１３１は、２つの画像データの全体を比較して、水平方向逆向きの歪みが生じている像が現れている場合に、これを「オブジェクトである」と判定してもよい。
【００３９】
（５）撮像装置１のシャッター速度やシャッター方向は、制御部１０３によるソフトウェア処理により設定や変更が可能である。そこで、歪み補正部１１１は、上記の実施形態で説明した処理に加えて、更に、以下の処理を行ってもよい。
例えば、図３（ｂ）に示すように、隣接する水平ライン間の露光タイミング差がΔｔであり、１回目のシャッター動作による第ｎ水平ラインの露光タイミングと、２回目のシャッター動作による第ｎ水平ラインの露光タイミングとの差がΔＴであるとする。
【００４０】
先ず、歪み補正部１１１は、撮像素子１０６の第ｎ水平ラインに対応する２つのライン画像に含まれるオブジェクトの移動量ΔＸを計測する。更に、歪み補正部１１１は、オブジェクトの移動速度ｖを、ｖ＝ΔＸ／ΔＴから算出する。
続いて、歪み補正部１１１は、算出した移動速度ｖを用いて、隣接する水平ライン間の歪み量Δｘを、Δｘ＝Δｔ×ｖから算出する。歪み補正部１１１は、図６のステップＳ１０９で算出された補正位置Ｘを、Δｘの値を用いて調整してもよい。
【００４１】
（６）上記の実施形態では、撮像素子１０６は、動きモードで撮像処理を行うとき、１回目のシャッター動作では、水平ラインの上から下へ順に露光し、２回目のシャッター動作では、水平ラインの下から上へ順に露光する構成であった。しかし、撮像装置１は、この構成に限定されない。撮像装置１は、シャッターボタンが押下されると、連続して２つの画像データを生成し、生成した２つの画像データを利用して動体歪みを補正する機能を実現する構成であればよい。
【００４２】
例えば、撮像装置１は、図９に示すように、１回目のシャッター動作で、水平ラインの上から下へ順に露光した後、２回目のシャッター動作でも、水平ラインの上から下へ順に露光するように撮像素子１０６を制御する構成でもよい。
図１０および図１１を用いて、この変形例についてより詳細に説明する。
図１０は、変形例に係る撮像装置１の撮像処理の動作を示すフローチャートである。この動作は、シャッターボタン１１２が押下されることにより開始する。
【００４３】
制御部１０３は、モード記憶部１０２に格納されているフラグの値を判断することにより、撮影モードが、通常モードであるか、動きモードであるか判断する（ステップＳ２０１）。
撮影モードが通常モードである場合（ステップＳ２０１で「通常モード」）、制御部１０３は、他のブロックを制御することにより、撮像素子１０６の上から下へシャッターを切り、画像データを生成する（ステップＳ２０２）。即ち、撮像素子１０６は、第１水平ラインから第ｎ水平ラインへ順に露光処理を行い、画像データを生成する。ステップＳ２０２のシャッター動作で撮影された画像データは、画像記憶部１１０のフレームメモリＡに格納される。その後、出力部１１２は、フレームメモリＡに格納されている画像データを読み出して、外部に出力する（ステップＳ２１６）。
【００４４】
撮影モードが動きモードである場合（ステップＳ２０１で「動きモード」）、撮像素子１０６は、水平ラインの上から下へシャッターを切り、画像データを生成する（ステップＳ２０３）。ステップＳ２０３で生成された画像データは、画像記憶部１１０のフレームメモリＡに格納される。一例として、図１１（ａ）に示す画像データが、フレームメモリＡに格納される。
【００４５】
続けて、撮像素子１０６は、再度、上から下へシャッターを切り、画像データを生成する（ステップＳ２０４）。ステップＳ２０４で生成された画像データは、画像記憶部１１０のフレームメモリＢに格納される。一例として、図１１（ｂ）に示す画像データが、フレームメモリＢに格納される。
続いて、歪み補正部１１１は、フレームメモリＡおよびフレームメモリＢに格納されている２つの画像データについて、同一ラインのライン画像毎にステップＳ２０６からステップＳ２１４を繰り返す（ステップＳ２０４）。
【００４６】
ここでは、上記の実施形態と同様に、歪み補正部１１１の処理単位である「ライン画像」は、撮像素子１０６の水平走査線（水平ライン）１本分に相当する。
オブジェクト検出部１３１は、フレームメモリＡに格納されている処理対象のライン画像と、フレームメモリＢに格納されている処理対象のライン画像とについて画素値を比較する（ステップＳ２０６）。
【００４７】
ステップＳ２０６の結果、相関が強い画素が、フレームメモリＡおよびフレームメモリＢの互いに異なる座標に現れていない場合、即ち、相関が強い画素のすべてが、フレームメモリＡおよびフレームメモリＢの同一の座標に現れている場合（ステップＳ２０７でＮＯ）、オブジェクト検出部１３１は、処理対象のライン画像はオブジェクトを含まない背景であると判定する。オブジェクト検出部１３１は、フレームメモリＡに格納されている処理対象のライン画像を、フレームメモリＣの対応するラインに格納する（ステップＳ２１４）。
【００４８】
ステップＳ２０６の結果、相関が強い画素が、フレームメモリＡおよびフレームメモリＢの互いに異なる座標に現れている場合（ステップＳ２０７でＹＥＳ）、オブジェクト検出部１３１は、当該画素は、オブジェクトの一部であると判定する（ステップＳ２０８）。
図１１（ａ）および図１１（ｂ）の例を用いて説明する。処理対象がｙ＝４のライン画像である場合、フレームメモリＡのｘ1＝１０に位置する画素と相関が強い画素が、フレームメモリＢにおいては、ｘ2＝８に現れている。そこで、オブジェクト検出部１３１は、当該画素を、オブジェクトの一部であると判定する。
【００４９】
続いて、補正位置算出部１３２は、ステップＳ２０８で、オブジェクトの一部であると判定された画素について、補正位置のｘ座標を、Ｘ＝ｘ1−ｖ×Δｔ×ｌから算出する（ステップＳ２０９）。ここで、ｘ1は、フレームメモリＡにおけるオブジェクトの一部である画素のｘ座標であり、ｖは、オブジェクトの移動速度である。また、Δｔは、図９に示すように、隣接する水平ライン間の露光タイミング差であり、ｌは、処理対象であるライン画像のライン数（ｙ座標の値）である。
【００５０】
ここで、図９に示すように、１回目のシャッター動作による第１水平ラインの露光タイミングと、２回目のシャッター動作による第１水平ラインの露光タイミングとの差をΔＴとすると、オブジェクトの速度ｖは、ｖ＝（ｘ2−ｘ1）／ΔＴから算出することができる。
補正位置Ｘが算出されると、オブジェクト抽出部１３３は、図１１（ｃ）に示すように、ラインメモリＡにおける補正位置Ｘに、オブジェクトの一部である画素を格納する（ステップＳ２１０）。
【００５１】
次に、背景生成部１３４は、上記の実施形態と同様に、フレームメモリＡに格納されている処理対象のライン画像から、オブジェクトの一部である画素を消去したライン画像を、ラインメモリＢに格納する（ステップＳ２１１）。そして、背景生成部１３４は、ラインメモリＢにおいて欠損している画素を、フレームメモリＢの同一位置の画素で補間することにより、背景画像を生成する（ステップＳ２１２）。
【００５２】
次に、合成部１３５は、ラインメモリＢに格納されているライン画像（背景画像）に、ラインメモリＡに格納されているライン画像（オブジェクト）を重畳し、１ライン分の補正画像を生成する（ステップＳ２１３）。合成部１３５は、生成した１ライン分の補正画像を、画像記憶部１１０のフレームメモリＣの対応するラインに格納する（ステップＳ２１４）。
【００５３】
歪み補正部１１１は、フレームメモリＡおよびフレームメモリＢに格納されている２つの画像データのすべてのラインについて、ステップＳ２０６からステップＳ２１４までの処理を終了すると（ステップＳ２１５）、図７（ｄ）に示すように、フレームメモリＣには、１フレーム分の補正画像が格納される。
その後、出力部１１２は、フレームメモリＣに格納されている画像データを読み出し、外部に出力する（ステップＳ２１７）。
【００５４】
（７）上記の変形例（６）で説明した補正位置Ｘの算出方法は一例である。歪み補正部１１１は、少なくとも、隣接する水平ライン間の露光タイミング差Δｔとオブジェクトの速度ｖとから、隣接する水平ライン間の歪み量Δｘを、Δｘ＝Δｔ×ｖにより算出し、この歪み量Δｘを用いて、補正画像を生成する構成であればよい。
（８）上記の実施形態では、図６のステップＳ１１０及び図７（ｃ）に示したように、処理対象であるライン画像の補正位置Ｘが算出されると、オブジェクト抽出部１３３は、ラインメモリＡの補正位置Ｘに、オブジェクトの一部である画素をコピーする構成であった。このとき、オブジェクト抽出部１３３は、フレームメモリＡの画素をラインメモリＡにコピーしてもよいし、フレームメモリＢの画素をラインメモリＡにコピーしてもよい。更に、オブジェクト抽出部１３３は、１フレーム分の補正画像を生成する一連の処理において、あるライン画像については、フレームメモリＡの画素をラインメモリＡにコピーし、別のライン画像については、フレームメモリＢの画素をラインメモリＡにコピーする構成でもよい。
【００５５】
上記の変形例（６）も同様である。変形例（６）では、図１０のステップＳ２１０及び図１１（ｃ）に示したように、処理対象であるライン画像の補正位置Ｘが算出されると、オブジェクト抽出部１３３は、ラインメモリＡの補正位置Ｘに、オブジェクトの一部である画素をコピーする構成であった。このとき、オブジェクト抽出部１３３は、フレームメモリＡの画素をラインメモリＡにコピーしてもよいし、フレームメモリＢの画素をラインメモリＡにコピーしてもよい。更に、オブジェクト抽出部１３３は、１フレーム分の補正画像を生成する一連の処理において、あるライン画像については、フレームメモリＡの画素をラインメモリＡにコピーし、別のライン画像については、フレームメモリＢの画素をラインメモリＡにコピーする構成でもよい。
【００５６】
（９）上記の実施形態では、撮像素子１０６の具体例として、ＣＭＯＳイメージセンサを用いて説明した。しかし、撮像素子１０６は、ローリングシャッター機能により、水平ライン毎にタイミングをずらして画素の露光処理を行う構成であれば、ＣＭＯＳイメージセンサに限定されない。
（１０）上記の実施形態及び変形例で示した撮像装置による処理（図６および図１０）を、撮像装置のプロセッサおよびそのプロセッサに接続された各種回路に実行させるための機械語或いは高級言語のプログラムコードからなる制御プログラムを、記録媒体に記録すること、又は各種通信路等を介して流通させ頒布することもできる。このような記録媒体には、ＩＣカード、ハードディスク、光ディスク、フレキシブルディスク、フラッシュメモリの様な不揮発性メモリ等がある。流通、頒布された制御プログラムはプロセッサに読み出され得るメモリ等に格納されることにより利用に供され、そのプロセッサがその制御プログラムを実行することにより実施形態で示したような機能が実現されるようになる。なお、プロセッサは、制御プログラムを直接実行する他、コンパイルして実行或いはインタプリタにより実行してもよい。
【００５７】
（１１）上記の実施形態で示した各機能構成要素（制御部１０３、画像処理部１０９、歪み補正部１１１等）は、その機能を実行する回路として実現されてもよいし、１又は複数のプロセッサによりプログラムを実行することで実現されてもよい。また、実施形態で示した撮像装置１は、ＩＣ、ＬＳＩその他の集積回路のパッケージとして構成されるものとしてもよい。このパッケージは各種装置に組み込まれて利用に供され、これにより撮像装置１は、実施形態で示したような各機能を実現するようになる。
【００５８】
（１２）上記の実施形態と上記の変形例とを適宜組み合わせてもよい。
＜５．補足＞
以下、更に本発明の一態様としての構成、その変形例及び効果について説明する。
（ａ）本発明の一態様である撮像装置は、二次元配列された複数の画素を備え、水平ライン毎にタイミングをずらして電荷の蓄積および転送を行うことにより１フレームの画像を生成する撮像素子と、前記撮像素子により連続して生成された２フレームの画像を格納する画像記憶部と、前記画像記憶部に格納されている前記２フレームの画像から、水平方向に移動している被写体の像である移動画像を検出する検出手段と、前記２フレームの画像が水平方向に区切られた複数の領域について、対応する領域毎に、一方に含まれる前記移動画像の位置と、他方に含まれる前記移動画像の位置とから、補正位置を算出する算出手段と、前記移動画像が含まれるすべての領域について、領域毎に、算出された前記補正位置に移動画像を移動させて補正画像を生成する補正手段とを備えることを特徴とする。
【００５９】
この構成によると、メカシャッター等の物理的機構を追加することなく、水平方向に移動している被写体を撮影したときに生じる動体歪みを補正することができる。
ここで、２フレームの画像を水平方向に区切った各領域は、撮像素子の水平ライン１本分に相当する領域でもよいし、撮像素子の水平ライン複数本に相当する領域でもよい。
（ｂ）ここで、前記撮像装置は、前記撮像素子に、第１水平ラインから第ｎ水平ラインの順に電荷の蓄積および転送を行い１フレームの画像を生成させ、連続して、前記第ｎ水平ラインから前記第１水平ラインの順に電荷の蓄積および転送を行い１フレームの画像を生成させるように制御する制御手段を備え、前記検出手段は、前記画像記憶部に格納されている前記２フレームの画像が水平方向に区切られた複数の領域について、対応する領域毎に、相関の強い像が互いに異なる位置に存在する場合に、前記相関の強い像を前記移動画像として検出し、前記算出手段は、前記２フレームの画像が水平方向に区切られた前記複数の領域について、対応する領域毎に、当該２つの領域に含まれる前記移動画像の位置の中間点を前記補正位置として算出し、前記補正手段は、領域毎に、前記移動画像を前記中間点に移動させた前記補正画像を生成することを特徴とする。
【００６０】
なお、前記制御手段は、前記撮像素子に、第ｎ水平ラインから第１水平ラインの順に電荷の蓄積および転送を行い１フレームの画像を生成させ、連続して、前記第１水平ラインから前記第ｎ水平ラインの順に電荷の蓄積および転送を行い１フレームの画像を生成させるように制御する構成でもよい。
このように、撮像装置は、連続して逆方向にシャッターを切り、２フレームの画像を生成することにより、補正位置の計算を簡略化することができる。そして、補正位置の計算の簡略化により、処理負荷の軽減および補正画像の出力の高速化を実現することができる。
【００６１】
（ｃ）ここで、前記撮像装置は、水平方向に移動する被写体を撮影するための移動体モードを含む複数の撮影モードの何れかを記憶しているモード記憶部を備え、前記制御手段は、前記モード記憶部に記憶されている撮影モードが前記移動体モードである場合に、前記撮像素子に、第１水平ラインから第ｎ水平ラインの順に電荷の蓄積および転送を行い１フレームの画像を生成させ、連続して、前記第ｎ水平ラインから前記第１水平ラインの順に電荷の蓄積および転送を行い１フレームの画像を生成させるように制御することを特徴とする。
【００６２】
このように、電車や自動車など水平方向に高速で移動している被写体を撮影するための撮影モードを設けることにより、動体歪みが生じることが予測される場合にのみ、撮像素子および歪み補正部に歪み補正のための特殊な動作を実行させることができる。
（ｄ）前記２フレームの画像が水平方向に区切られた前記各領域は、前記撮像素子の第１水平ラインから第ｎ水平ラインまでに対応したｎ個の領域であり、前記撮像素子の隣接する水平ライン間の露光タイミング差がΔｔである場合に、前記算出手段は、前記画像記憶部に格納されている前記２フレームの画像に含まれる前記移動画像の位置に基づき、前記被写体の速度ｖを算出し、隣接する領域間における歪み量Ｘ＝ｖ×Δｔを算出し、算出された前記歪み量Ｘを用いて、前記補正位置を調整することを特徴とする。
【００６３】
上述したように、前記算出手段は、前記２つの領域にそれぞれ含まれる移動画像の位置の中間点を算出し、算出した前記中間点を、前記補正位置とする構成であった。これに加えて、被写体の速度ｖ（被写体の移動方向が水平方向でない場合には、被写体の速度の水平成分をｖとしてもよい）を用いて、補正位置を調整することにより、より精度の高い補正画像を生成することができる。
【００６４】
（ｅ）ここで、前記撮像装置は、前記撮像素子に、第１水平ラインから第ｎ水平ラインの順に電荷の蓄積および転送を行い１フレームの画像を生成させ、連続して、第１水平ラインから第ｎ水平ラインの順に電荷の蓄積および転送を行い１フレームの画像を生成させるように制御する制御手段を備え、前記検出手段は、前記画像記憶部に格納されている前記２フレームの画像が水平方向に区切られた複数の領域について、対応する領域毎に、相関の強い像が互いに異なる位置に存在する場合に、前記相関の強い像を前記移動画像として検出し、前記２フレームの画像が水平方向に区切られた前記各領域は、前記撮像素子の第１水平ラインから第ｎ水平ラインまでに対応したｎ個の領域であり、前記撮像素子の隣接する水平ライン間の露光タイミング差がΔｔである場合に、前記検出手段は、更に、前記被写体の移動方向を検出し、前記算出手段は、前記画像記憶部に格納されている前記２フレームの画像に含まれる前記移動画像の位置に基づき、前記被写体の速度ｖを算出し、隣接する領域間における歪み量Ｘ＝ｖ×Δｔを算出し、算出された前記歪み量Ｘと前記検出手段により検出された前記移動方向とを用いて、前記補正位置を算出することを特徴とする。
【００６５】
この構成によると、「連続して逆方向にシャッターを切る」という特殊な処理を行う必要がなく、被写体の速度ｖ（被写体の移動方向が水平方向でない場合には、被写体の速度の水平成分をｖとしてもよい）を算出することにより、補正画像を生成することが可能となる。
（ｆ）ここで、前記画像記憶部は、前記撮像素子により連続して生成された３フレーム以上の画像を記憶しており、前記検出手段は、更に、前記画像記憶部に記憶されている前記３フレーム以上の画像から、前記補正位置の算出に利用する前記２フレームの画像を選択することを特徴とする。
【００６６】
被写体が水平方向に等速運動をしている場合には、連続して撮影された２フレームの画像において、被写体の像は相関が強く現れる。しかし、被写体が斜め方向に移動したり、水平方向に加速度運動をしたりすると、連続して撮影された２フレームの画像において、被写体の像は、相関が強く現れない可能性がある。
このような場合に、撮像装置が上記の構成を備えることにより、例えば、相関が強く現れている画像を２つ選択し、選択した２つの画像を用いて補正位置の算出および補正画像の生成を行えば、より美しい補正画像を生成することが可能となる。
【産業上の利用可能性】
【００６７】
本発明は、携帯電話機やスマートフォン等に搭載する小型の撮像装置において、移動している被写体を撮像したときに生じる動体歪みを補正する技術として利用することができる。
【符号の説明】
【００６８】
１        撮像装置
１０１    操作部
１０２    モード記憶部
１０３    制御部
１０４    光学系
１０５    タイミング制御回路
１０６    撮像素子
１０７    垂直走査部
１０８    水平走査部
１０９    画像処理部
１１０    画像記憶部
１１１    歪み補正部
１１２    出力部
１３１    オブジェクト検出部
１３２    補正位置算出部
１３３    オブジェクト抽出部
１３４    背景生成部
１３５    合成部
【図１】
2015046812.tif 000003
【図２】
2015046812.tif 000004
【図３】
2015046812.tif 000005
【図４】
2015046812.tif 000006
【図５】
2015046812.tif 000007
【図６】
2015046812.tif 000008
【図７】
2015046812.tif 000009
【図８】
2015046812.tif 000010
【図９】
2015046812.tif 000011
【図１０】
2015046812.tif 000012
【図１１】
2015046812.tif 000013