(57)【特許請求の範囲】
【請求項１】
圧縮センシング撮像システムであって、
圧縮規定行列を用いて、物体の圧縮画像を表す複数の圧縮測定値を取得し、
複数の圧縮測定値の少なくとも１つの取得に対応する期間中の、物体の相対的な動きに基づいて、少なくとも１つのカーネル行列を決定し、少なくとも１つのカーネル行列は、少なくとも１つのカーネル行列と復元画像の１次元表現との間の行列演算が、物体の相対的な動きに基づいて復元画像の１次元表現における物体の位置を物体の以前の位置までシフトすることを表すよう決定され、
期間中の物体の相対的な動きを補償するために、圧縮基底行列の少なくとも１つの基底に少なくとも１つのカーネル行列を適用することで再構成基底行列を決定し、
再構成基底行列を用いて複数の圧縮測定値から物体の復元画像を生成する
ように構成される処理デバイスと、
複数の圧縮測定値を取得するように構成されるカメラユニットとを備え、
カメラユニットがレンズレスカメラユニットである、圧縮センシング撮像システム。
【請求項２】
処理デバイスが、
１つまたは複数のセンサからの動きデータに基づいて期間中の物体の相対的な動きを決定する
ようにさらに構成される、請求項１に記載の圧縮センシング撮像システム。
【請求項３】
処理デバイスが、
動きデータに基づいて期間中の物体の相対的な動きの程度を決定する
ようにさらに構成される、請求項２に記載の圧縮センシング撮像システム。
【請求項４】
処理デバイスが、
物体の相対的な動きの決定された程度を用いて少なくとも１つのカーネル行列を決定する
ようにさらに構成される、請求項２に記載の圧縮センシング撮像システム。
【請求項５】
処理デバイスが、
再構成基底行列を用いて複数の圧縮測定値から物体の画像を生成するためにスパース化演算子を適用する
ようにさらに構成される、請求項１に記載の圧縮センシング撮像システム。
【請求項６】
カメラユニットが、選択可能な開口素子のアレイと検出器とを備え、処理デバイスが、
期間中の複数の圧縮測定値の少なくとも１つを取得するために圧縮基底行列の少なくとも１つの基底に基づいてアレイの開口素子の１つまたは複数を選択的に有効化または無効化するようにさらに構成され、複数の圧縮測定値の少なくとも１つが、期間中に検出器により検出される光の総合計に基づいて決定される、請求項１に記載の圧縮センシング撮像システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、以下の米国特許出願の主題を引用し、その各々は引用によりその全体が本明細書に組み込まれている：２０１２年１０月２４日に出願され、「Ｒｅｓｏｌｕｔｉｏｎ  ａｎｄ  Ｆｏｃｕｓ  Ｅｎｈａｎｃｅｍｅｎｔ」と題された米国特許出願第１３／６５８，９０４号、２０１２年１０月２４日に出願され、「Ｌｅｎｓｌｅｓｓ  Ｃｏｍｐｒｅｓｓｉｖｅ  Ｉｍａｇｅ  Ａｃｑｕｉｓｉｔｉｏｎ」と題された米国特許出願第１３／６５８，９００号、２０１２年２月７日に出願され、「Ｌｅｎｓｌｅｓｓ  Ｃｏｍｐｒｅｓｓｉｖｅ  Ｉｍａｇｅ  Ａｃｑｕｉｓｉｔｉｏｎ」と題された米国特許出願第１３／３６７，４１３号、および２０１４年２月４日に米国特許第８，６４４，３７６号として発行された、２０１０年９月３０日に出願され「Ａｐｐａｒａｔｕｓ  ａｎｄ  Ｍｅｔｈｏｄ  ｆｏｒ  Ｇｅｎｅｒａｔｉｎｇ  Ｃｏｍｐｒｅｓｓｉｖｅ  Ｍｅａｓｕｒｅｍｅｎｔｓ  ｏｆ  Ｖｉｄｅｏ  Ｕｓｉｎｇ  Ｓｐａｔｉａｌ  ａｎｄ  Ｔｅｍｐｏｒａｌ  Ｉｎｔｅｇｒａｔｉｏｎ」と題された米国特許出願第１２／８９４，８５５号。
【０００２】
本開示は、圧縮センシング画像処理（ｃｏｍｐｒｅｓｓｉｖｅ  ｓｅｎｓｅ  ｉｍａｇｅ  ｐｒｏｃｅｓｓｉｎｇ）のためのシステムおよび方法を対象とする。
【背景技術】
【０００３】
本節は、本明細書で開示されるシステムおよび方法をより良く理解するのを促進するのに有用であり得る態様を紹介する。したがって、本節の記述はこの観点で読まれるべきであり、何が従来技術に含まれるか否かに関して認めるものとして理解または解釈されるべきではない。
【０００４】
デジタル画像／ビデオカメラは、大量の生データを取得し処理する。画像データを効率的に記憶または送信するために、Ｎ画素画像のＮ個の画素のそれぞれについての生画素データが最初にキャプチャされ、次いで典型的には、記憶および／または送信のために適切な圧縮アルゴリズムを用いて圧縮される。画像のＮ個の画素のそれぞれについての生データをキャプチャした後の圧縮は、カメラによりキャプチャされた画像（またはビデオ）のサイズを削減するのに一般的には有益であるが、多大な計算資源および時間を必要とする。加えて、生画素データの圧縮は、キャプチャされた画像のサイズを常に有意義に削減するわけではない。
【０００５】
圧縮センシング撮像（ｃｏｍｐｒｅｓｓｉｖｅ  ｓｅｎｓｅ  ｉｍａｇｉｎｇ）として知られているより最近の手法は、Ｎ画素画像のＮ個の画素の全てについて生データを最初に収集することなく、ランダム投影を用いて圧縮画像（またはビデオ）データを取得する。たとえば、圧縮測定基底を適用して、符号化された（すなわち圧縮された）画像を表す一連の圧縮測定値を取得する。所望のＮ画素画像のＮ個の画素値のそれぞれについての生データと比較して削減された数の圧縮測定値が取得されるので、この手法は、生データがキャプチャされた後に圧縮を適用する必要性を大幅に排除または削減することができる。
【発明の概要】
【課題を解決するための手段】
【０００６】
圧縮センシング撮像のためのシステムおよび方法が提供される。一態様では、システムおよび方法は、物体の圧縮画像を表す複数の圧縮測定値の少なくとも１つの取得に対応する期間中の、物体の相対的な動きに基づいて、少なくとも１つのカーネル行列を決定することと、少なくとも１つのカーネル行列に基づいて期間中の物体の相対的な動きを補償するための再構成基底行列を決定することと、再構成基底行列を用いて複数の圧縮測定値から物体の復元画像を生成することとを含む。
【０００７】
いくつかの態様では、圧縮測定値を取得するために使用される圧縮基底行列の少なくとも１つの基底に少なくとも１つのカーネル行列を適用することで再構成基底行列が決定される。
【０００８】
いくつかの態様では、少なくとも１つのカーネル行列と復元画像の１次元表現との間の行列演算が、物体の相対的な動きに基づいて復元画像の１次元表現における物体の位置を物体の以前の位置までシフトすることを表すように、少なくとも１つのカーネル行列が決定される。
【０００９】
いくつかの態様では、１つまたは複数のセンサからの動きデータを用いて、期間中の物体の相対的な動きを決定する。
【００１０】
いくつかの態様では、動きデータを用いて、期間中の物体の相対的な動きの程度が決定される。
【００１１】
いくつかの態様では、物体の相対的な動きの決定された程度を用いて少なくとも１つのカーネル行列を決定する。
【００１２】
いくつかの態様では、再構成基底行列を用いて複数の圧縮測定値から物体の画像を生成するためにスパース化演算子（ｓｐａｒｓｉｆｙｉｎｇ  ｏｐｅｒａｔｏｒ）が用いられる。
【００１３】
いくつかの態様では、期間中に圧縮基底行列を用いて圧縮測定値が取得される。
【００１４】
いくつかの態様では、検出器により出力される光の総合計を決定して、圧縮測定値の少なくとも１つを取得する。いくつかの態様では、期間中に圧縮基底行列の少なくとも１つの基底に基づいて開口アレイの１つまたは複数の開口素子を選択的に有効化または無効化して、光の総合計が決定される。
【図面の簡単な説明】
【００１５】
【図１】本開示の様々な態様による圧縮センシング撮像システムの一例の図である。
【図２】本開示の一態様による、圧縮基底行列を用いて物体の圧縮測定値を取得するためのカメラユニットの一例の図である。
【図３】本開示の様々な態様による、再構成基底行列を用いて圧縮測定値から物体の画像を再構成するための一例示的処理の図である。
【図４】本開示の様々な態様を実装するための一例示的装置の図である。
【発明を実施するための形態】
【００１６】
以下、本開示の様々な態様が添付の図面を参照して説明され、図の説明において同様の番号は同様の要素を指す。説明および図面は単に本開示の原理を例示するに過ぎず、様々な構造、システムおよびデバイスが、説明の目的のみで、当業者に良く知られている細部によって本発明を不明瞭にしないように説明され図面に示されており、当業者は、本明細書に明示的に説明または示されていないが、本原理を具現化し本開示の趣旨および範囲内に含まれる様々な構成を考案できよう。
【００１７】
本明細書で使用される場合、「または（ｏｒ）」という用語は、別途指示されていない限り（たとえば、「またはそれ以外に（ｏｒ  ｅｌｓｅ）」もしくは「または代替的に（ｏｒ  ｉｎ  ｔｈｅ  ａｌｔｅｒｎａｔｉｖｅ）」）、非排他的なまたはを指す。さらに、要素間の関係を記述するのに用いられる単語は、別途指示されていない限り、直接的な関係または介在要素の存在を含むように広く解釈されるべきである。たとえば、ある要素が他の要素に「接続される」または「結合される」と称される場合、その要素は他の要素に直接的に接続もしくは結合されることがあり、または介在要素が存在することがある。対照的に、ある要素が他の要素に「直接的に接続される」または「直接的に結合される」と称される場合、介在要素は存在しない。同様に、「の間に（ｂｅｔｗｅｅｎ）」、「隣接する（ａｄｊａｃｅｎｔ）」などの単語は同様に解釈されるべきである。
【００１８】
単数形「１つの（ａ）」、「１つの（ａｎ）」、および「その（ｔｈｅ）」は、文脈が明らかに別途指示していない限り、複数形も含むものとする。「備える（ｃｏｍｐｒｉｓｅｓ）」、「備えている（ｃｏｍｐｒｉｓｉｎｇ）」、「含む（ｉｎｃｌｕｄｅｓ）」および「含んでいる（ｉｎｃｌｕｄｉｎｇ）」という用語は、本明細書で使用される場合、提示された特徴、整数、ステップ、動作、要素および／または構成要素の存在を示すが、１つまたは複数の他の特徴、整数、ステップ、動作、要素、構成要素、および／またはこれらのグループの存在もしくは追加を排除しないこともさらに理解されよう。
【００１９】
図１に、本開示の一態様による圧縮撮像取得および再構成システム１００（「システム１００」）の概略的な例を示す。物体１１０から反射した入射光１０５はカメラユニット１１５により受光され、カメラユニット１１５は、センシング行列または測定行列と呼ばれることもある所定の圧縮測定基底行列（以下、「圧縮基底行列」と呼ばれる）１２０を用いて、物体１１０の圧縮画像を表す圧縮測定値１２５を生成する。物体１１０の圧縮画像を表す圧縮測定値１２５は、記憶／送信ユニット１３０により記憶（または送信）することができる。
【００２０】
再構成ユニット１３５は、圧縮測定値１２５から物体１１０の復元画像１４０を生成する（たとえば表示ユニットで表示するため）。本開示の１つの特徴は、カメラユニット１１５に対する物体１１０の動きを表す動きデータを考慮しながら、再構成画像または復元画像１４０が圧縮測定値１２５から生成されることである。一態様では、再構成画像１４０は、圧縮測定値１２５を生成するのに使用される圧縮基底行列１２０とは異なる再構成基底行列１５０を用いて生成される。本開示の他の特徴は、カメラユニット１１５に対する物体１１０の動きを表す動きデータ１５５に基づいて再構成基底行列１５０が決定される（たとえば、生成または更新される）ことである。本開示のこれらおよび他の態様が、以下でさらに詳細に説明される。
【００２１】
これらのユニットは図１では別々に示されているが、これは本開示の理解を支援するためのものに過ぎない。他の態様では、上記のユニットのいずれかまたは全てのユニットの機能は、より少数または多数のユニットを用いて実装することができる。さらに、様々なユニットによる機能は、単一の処理デバイスで実装するかまたは複数の処理デバイスの間で分散させることができる。適切な処理デバイスのいくつかの例には、カメラ、カメラシステム、携帯電話、パーソナルコンピュータシステム、タブレット、セットトップボックス、スマートフォン、または画像データを取得、処理、もしくは表示するように構成された任意のタイプのコンピューティングデバイスが含まれる。
【００２２】
一実装では、単一の処理デバイスを、システム１００のユニットそれぞれの機能を提供するように構成することができる。単一の処理デバイスは、たとえば、１つまたは複数の命令を記憶するメモリと、実行時に、ユニットによる機能を提供するようにプロセッサを構成することが可能な１つまたは複数の命令を実行するためのプロセッサとを含むことができる。単一の処理デバイスは、コンピューティングデバイスにおいて典型的に見られる他のコンポーネント、たとえば処理デバイスとの間で情報を入力または出力するための１つまたは複数の入力／出力コンポーネント、たとえばカメラ、ディスプレイ、キーボード、マウス、ネットワークアダプタなどを含むことができる。
【００２３】
他の実装では、ローカル処理デバイスを、ネットワークを介して遠隔地のリモート処理デバイスと通信可能に相互接続された第１の場所に設けることができる。ローカル処理デバイスは、ローカルな物体１１０の圧縮測定値１２５をリモート処理デバイスへネットワークを介して生成し提供するための機能によって構成することができる。次に、リモート処理デバイスは、ローカル処理デバイスから圧縮測定値を受信して、再構成基底行列１５０を用いて圧縮測定値１２５から再構成画像１４０を生成し、後述の態様に従ってリモートユーザに再構成画像を表示するように構成することができる。ローカル処理デバイスおよびリモート処理デバイスは、単一の処理デバイスと同様の装置を用いてそれぞれ実装することができ、単一の処理デバイスの場合と同様に、１つまたは複数の命令を記憶するメモリと、１つまたは複数の命令を実行するためのプロセッサと、様々な入力／出力コンポーネントとを含むことができる。ネットワークは、イントラネット、インターネット、あるいは１つまたは複数の有線または無線ネットワークの任意のタイプまたは組み合わせとすることができる。
【００２４】
復元画像１４０を圧縮測定値１２５から再構成するための例示的な態様を説明する前に、圧縮センシング撮像に適したカメラユニット１１５の一例示的実施形態が最初に以下で説明される。カメラユニット１１５の特定の実施形態が説明されるが、これは限定と解釈されるべきではなく、本開示の原理は圧縮センシング画像取得システムの他の実施形態に適用することができる。
【００２５】
図２に、圧縮センシング撮像を用いて物体１１０の圧縮画像を表す圧縮測定値１２５を取得するためのカメラユニット１１５の一例を示す。物体１１０から反射した入射光１０５は（たとえば光学レンズを介してまたは介さずに）カメラユニット１１５で受光され、ここで光１０５は、Ｎ個の個々の開口素子の開口アレイ２２０を通過し光子検出器２３０に衝突することが選択的に許可される。
【００２６】
カメラユニット１１５は、所定の圧縮基底行列１２０を併用して光子検出器２３０の出力を処理することによって、圧縮センシング撮像を用いてＭ個の圧縮測定値１２５を生成する。当業者により理解されるように、Ｍ個の圧縮測定値１２５は集合的に物体１１０の圧縮画像を表す。より詳細には、圧縮センシング撮像において、取得される圧縮測定値の数Ｍは、Ｎ画素画像を生成するためのＮ画素センサを有する従来のカメラシステムで取得されるＮ個の生データ値よりも典型的には大幅に少なく、これにより取得後に生データ値をさらに圧縮する必要性を削減または除去する。
【００２７】
実際には、圧縮測定値の数Ｍは、アレイ２２０のＮ個の開口素子に関連して、圧縮のレベルと、Ｍ個の圧縮測定値を用いて再構成されるＮ画素画像１４０の画質との間の所定の（たとえば所望の）バランスに基づいて事前選択することができる。
【００２８】
図２に示された例示的なアレイ２２０は、６４個（Ｎ＝６４）の離散的な開口素子の２次元の８×８アレイであり、これらは、アレイ２２０の個々の素子が表形式の表記形式「［行，列］」を用いて一意に識別可能となるような２次元の行および列の形式で配列されている。したがって、例示的には、アレイ２２０の１行目の第１の素子は２２０［１，１］として参照され、アレイ２２０の最後の行の最後の素子は２２０［８，８］として参照される。
【００２９】
実際には、アレイ２２０の大きさおよび形式は、画像１４０の所望の解像度に応じて、はるかに多くの（または少ない）素子を有することがある。ほんの例として、アレイ２２０を、６４０×４８０（Ｎ＝３０７，２００）素子アレイとして、画像１４０について６４０×４８０画素の所望の画像解像度を得ることができ、または１９２０×１０８０（Ｎ＝２，０７３，６００）素子アレイとして、画像１４０に対応するより大きい所望の解像度を得ることができる。
【００３０】
図２に示されたアレイ２２０の６４個の開口素子２２０［１，１］から２２０［８，８］のそれぞれを選択的かつ個別に開いてもしくは閉じて（または部分的に開いてもしくは部分的に閉じて）、光１０５の部分がそれらの素子を通過し光子検出器２３０に到達するのをそれぞれ許可または阻止することができる。全開または部分的に開の（たとえば有効化またはアクティブ化された）開口素子は、光１０５の一部がアレイ２２０を通過し開かれた素子を介して光子検出器２３０に到達するのを許可するのに対し、全閉または部分的に閉の（たとえば無効化または非アクティブ化された）開口素子は、光１０５の部分がアレイ２２０の閉じられた素子を通過し光子検出器２３０に到達するのを防止または阻止する。一態様では、たとえば、開口アレイ２２０は、Ｎ個の個別に選択可能なマイクロミラーのマイクロミラーアレイとして実装することができる。他の実施形態では、開口アレイ１２０はＬＣＤアレイとして実装することができる。
【００３１】
動作的には、カメラユニット１１５は、圧縮基底行列１２０の圧縮基底情報に従ってアレイ２２０のＮ個の開口素子の１つまたは複数を（たとえば部分的または完全に）選択的に有効化または無効化し、Ｍ個の圧縮測定値Ｙ１、Ｙ２、．．．．ＹＭを決定するように構成される。先述のように、圧縮を実現するために、圧縮測定値Ｙ１、Ｙ２、．．．．ＹＭの数Ｍは、アレイ２２０の開口素子の数Ｎより少ない。
【００３２】
圧縮測定値Ｙｋ（ｋ∈［１．．．Ｍ］）のそれぞれは、アレイ２２０のＮ個の開口素子のそれぞれが圧縮基底行列１２０の対応する基底ｂｋ（ｋ∈［１．．．Ｍ］）に従って選択的に開かれ（または有効化され）閉じられた（または無効化された）場合に、それぞれの測定時間ｔｋの間にアレイ２２０を経由して検出器２３０に到達した光１０５の検出される総和（または総計）として理解することができる。したがって、圧縮測定値Ｙ１、Ｙ２、．．．．ＹＭは、圧縮基底行列１２０の圧縮基底ｂ１、ｂ２、．．．ｂＭのそれぞれを用いてそれぞれの時間ｔ１、ｔ２、．．．．ｔＭの間に生成することができる。
【００３３】
圧縮基底行列１２０はＭ個の圧縮基底ｂ１、ｂ２、．．．ｂＭの組であり、これらの各々をアレイ２２０にそれぞれ適用して圧縮測定値Ｙ１、Ｙ２、．．．．ＹＭの対応するものを生成する。さらに、圧縮基底行列１２０の各測定基底ｂ１、ｂ２、．．．ｂＭは、それ自体が、アレイ２２０の開口素子の数Ｎに対応するＮ個の値のアレイである。
【００３４】
たとえば、図２に示された実施形態について、圧縮基底行列１２０の各圧縮基底ｂｋ（ｋ∈［１．．．Ｍ］）はｂｋ［１］からｂｋ［６４］の値の組であり、各値は「０」もしくは「１」、または「０」と「１」との間の実数値とすることができ、これは８×８開口アレイ２２０におけるそれぞれの開口素子の状態（たとえば、全閉、全開、または中間の状態）に対応しこれを決定する。したがって、ｂｋ［１］は、アレイ２２０の第１の素子２２０［１，１］の状態（たとえば、開または閉）に位置的に対応しこれを決定することができ、ｂｋ［６４］は、アレイ２２０の最後の素子２２０［８，８］の状態に位置的に対応しこれを決定することができる。
【００３５】
所与の圧縮基底ｂｋを用いて、時刻ｔｋについての対応する圧縮測定値Ｙｋを以下のように生成する。ｂｋ［１］からｂｋ［６４］のそれぞれの値を用いて、図２のアレイ２２０の対応する素子の状態（全開、全閉、または部分的に開もしくは部分的に閉）を設定することによって、時刻ｔｋに対応する圧縮測定値Ｙｋを取得する。
【００３６】
この点で、基底ｂｋの２進値「１」は、アレイ２２０の対応する素子を全開する（または有効化する）ことを示すことができるのに対し、基底ｂｋの「０」の値は、アレイ２２０の対応する素子を全閉する（または無効化する）ことを示すことができる（またはその逆でもよい）。先述のように、基底ｂｋの「０」と「１」との間の実数値は、対応する素子を部分的に開くまたは部分的に閉じることを示すこともでき、その場合、光の一部のみがその対応する素子の通過を許可されるが、光の他の部分は対応する素子の通過が防止される。アレイ２２０を介して検出器２３０に到達した光の総和または総計は、時刻ｔｋに対応する圧縮測定値Ｙｋの決定された値として検出することができる。
【００３７】
圧縮基底行列１２０は、任意の所望の圧縮方式を用いて決定することができる。たとえば、一態様では、圧縮基底行列１２０の少なくとも１つまたはそれぞれの測定基底ｂｋ（ｋ∈［１．．．Ｍ］）は、ランダム（または擬似ランダム）置換ウォルシュ−アダマール行列として構成することができる。他の態様では、当業者に理解されるように、他のタイプの圧縮方式／行列を用いることができる。たとえば、他の実施形態では、少なくとも１つのまたはそれぞれの測定基底ｂｋ（ｋ∈［１．．．Ｍ］）は、０と１との間のランダムまたは擬似ランダムに生成される実数として構成することができる。さらに、測定基底の値は、２進値、数値、テキスト値、または、アレイ１２０の対応する素子を部分的または完全に有効化または無効化するために使用される他のタイプの値とすることができることは理解されよう。
【００３８】
数学的には、圧縮基底行列１２０の個々の基底ｂ１、ｂ２、ｂ３．．．ｂＭ（または行）のそれぞれを開口アレイ１２０のＮ個の開口素子ｘ１、ｘ２、ｘ３．．．ｘＮに適用してＭ個の圧縮測定値Ｙ１、Ｙ２、Ｙ３．．．ＹＭを生成することを表す関係は、
【数１】
0006652510.tif 000002
と表現することができ、ここで、先述のように、圧縮を実現するためにＭ＜Ｎである。
【００３９】
圧縮測定値１２５を取得する一例示的動作を詳細に説明したので、次に、再構成ユニット１３５の動作の様々な態様が、図３に示された処理３００と共に説明される。以下の議論のために、圧縮測定値１２５が、たとえば、それぞれの時間ｔ１、ｔ２、．．．．ｔＭについて、上記の所定の圧縮基底行列アレイ１２０の圧縮基底ｂ１、ｂ２、．．．ｂＭのそれぞれを用いて生成されたＭ個の圧縮測定値Ｙ１、Ｙ２、．．．．ＹＭを含むと仮定される。再構成ユニット１３５は、Ｍ個の圧縮測定値Ｙ１、Ｙ２、Ｙ３．．．ＹＭから物体１１０のＮ画素画像１４０を生成（または再構成）する（たとえば、表示ユニットで表示するため）。
【００４０】
各圧縮測定値Ｙｋは対応する時刻ｔｋについて取得されるので、圧縮測定値の組は、キャプチャするのに一定の期間がかかり得る（たとえば、圧縮測定値Ｙ１からＹＭについては、時刻ｔ１から時刻ｔＭまで）。全ての圧縮測定値は同じシーンを表し得るので、物体が測定値の取得中に動いた場合、これらの測定値から再構成される画像またはビデオは物体を正確にキャプチャしていないことがあり、結果の画像またはビデオは、ぼけなどの不所望のアーティファクトを有することがある。
【００４１】
したがって、一態様では、再構成ユニット１３５は、圧縮測定値１２５が取得されたｔ１からｔＭまでの期間中のカメラユニット１１５に対する物体１１０の動きを表す動きデータに基づいて生成および／または更新された再構成基底行列１５０を用いてＮ画素画像１４０を決定する。したがって、本開示の態様は、有利には、圧縮測定値の組が取得された時間の間に物体がカメラユニットに対して動いた場合に特に、より良好な再構成画像を提供することができる。１つの特定の態様では、再構成基底行列１５０は、カメラユニット１１５に対する物体１１０の相対的な動きに基づいて圧縮基底行列１２０の圧縮基底ｂ１、ｂ２、．．．ｂＭの１つまたは複数を更新または修正することで生成される。
【００４２】
生成または更新された再構成基底行列１５０は、圧縮測定値Ｙ１、Ｙ２、Ｙ３．．．ＹＭが取得された時刻ｔ１からｔＭまでの期間のうちの１つまたは複数の間の、カメラユニット１１５に対する物体１１０の相対的な動きを補償する。物体の動きを考慮した再構成基底行列１５０は、再構成ユニットが用いて、Ｍ個の圧縮測定値を再構成画像１４０のＮ画素値Ｉ１、Ｉ２、Ｉ３．．．ＩＮに復元し、次いでこれをたとえば２次元形式に変換してディスプレイでの目視、印刷、またはさらなる処理に適した物体１１０の２次元画像を実現することができる。
【００４３】
ここで図３の処理３００に注意を向けると、ステップ３０２において、処理は、圧縮測定値を取得するための１つまたは複数の期間中の動きを決定することを含む。動きは、圧縮測定値Ｙ１、Ｙ２、Ｙ３．．．ＹＭが生成された任意の１つまたは複数の時間インスタンスｔ１からｔＭの間の初期位置（複数可）から新たな位置（複数可）へのカメラユニット１１５に対する物体１１０の位置の変化に基づいて決定することができる。圧縮基底行列２２０を用いて圧縮測定値１２５が取得された１つまたは複数の期間において物体１１０の位置がカメラユニット１５に対して動いたという決定は、いくつかの方法で行うことができる。
【００４４】
いくつかの実施形態では、動きの決定は、カメラユニットが圧縮測定値の取得中にパン（および／またはチルト）した場合に、カメラユニット１１５から受信されるパン／チルト動きデータに基づくことができる。いくつかの実施形態では、動きの決定は、地球の回転を示す動きデータに基づいて行うことができる（物体１１０が天体、たとえば月、または地球もしくは他の物体に対して既知の軌道を有する衛星である場合）。いくつかの実施形態では、動きの決定は、物体１１０またはカメラユニット１１５上または近傍に配置された１つまたは複数のセンサ（たとえばジャイロスコープ、加速度計、または他の受動もしくは能動センサ）により提供されるデータに基づいて、あるいは他の所定のまたは手動で提供される情報に基づいて行うことができる。物体１１０の圧縮画像を表す圧縮測定値１２５の場合のように、動きデータは、さらにまたは後で処理できるように、記憶／送信ユニット１３０によって記憶（または送信）することができる。
【００４５】
ステップ３０４において、処理は、ステップ３０２において圧縮測定値を取得するための期間のうちの１つまたは複数の間に決定された動きの程度を決定することを含む。いくつかの実施形態では、動きの程度は、動きデータから、所与の期間（たとえば時刻ｔｋ−１およびｔｋの間、ここで（ｋ∈［１．．．Ｍ］））の間の、カメラユニット１１５に対する１つまたは複数の方向における物体１１０の位置の変化の大きさとして決定することができる。動きデータは、たとえば、時刻ｔｋ−１における初期位置ｉ（ｋ−１），ｊ（ｋ−１）から時刻ｔｋにおける新たな位置ｉ（ｋ），ｊ（ｋ）まで物体１１０の位置がカメラユニット１１５に対して変化したことを示すことができ、ここで（ｋ∈［１．．．Ｍ］）であり、その間にそれぞれの圧縮測定値Ｙ（ｋ−１）およびＹ（ｋ）が生成されている。次いで、ｔｋ−１からｔｋまでの期間中の動きの程度は、たとえば、デカルト座標を用いて距離ｄｉ（ｋ）＝ｉ（ｋ−１）−ｉ（ｋ）およびｄｊ（ｋ）＝ｊ（ｋ−１）−ｊ（ｋ）として決定することができる。
【００４６】
ステップ３０６において、処理は、ステップ３０４で決定された動きの程度に基づいてカーネル行列を決定することを含む。たとえば、Ｎ×Ｎカーネル行列Ｋ（ｋ）は、画像１４０の１次元表現がＮ個の値を有するアレイＩと表される場合、Ｋ（ｋ）・Ｉが、所与の時間ｔｋ−１およびｔｋの間の物体１１０の動きを補償するために物体１１０の位置をｄｉ（ｋ），ｄｊ（ｋ）だけシフトすることを表すように定義することができる。言い換えれば、物体１１５がＩにおいてｉ（ｋ），ｊ（ｋ）の位置にある場合、カーネル行列Ｋ（ｋ）は、物体１１５の位置がＫ（ｋ）・Ｉにおいて初期（または以前の）位置ｉ（ｋ−１），ｊ（ｋ−１）にシフトされるように決定される。
【００４７】
ステップ３０６を反復して、物体１１０がカメラユニット１１５に対して動いた（または動き続けた）異なる時間ｔｋ−１およびｔｋについて、それぞれの圧縮測定値Ｙ（ｋ−１）およびＹ（ｋ）が取得された場合に、一連のカーネル行列Ｋ（ｋ）を決定することができる。たとえば、第１のカーネル行列Ｋ（１）は、Ｙ１が取得された時刻ｔ１およびＹ２が取得された時刻ｔ２の間の物体１１５の位置の決定された変化に基づいて決定することができる。続いて、第２のカーネル行列Ｋ（２）は、Ｙ２が取得された時刻ｔ２およびＹ３が取得された時刻ｔ３の間の物体１１５の位置の決定された変化に基づいて決定することができ、以下同様である。結果として、一連のカーネル行列Ｋ（ｋ）を、ステップ３０６においてｋ≧２、３、４、．．．Ｍについて決定することができる。
【００４８】
ステップ３０８において、処理は、カメラユニット１１５に対する物体１１０の決定された動きに基づいて、ステップ３０６において決定された一連のカーネル行列を用いて再構成基底行列１５０を生成することを含む。一態様では、再構成基底行列１５０は、圧縮測定値１２５を生成するために使用された圧縮基底行列１２０に基づいて以下のように生成される。
【００４９】
圧縮測定値１２５を生成するために使用された圧縮基底行列１２０が、
【数２】
0006652510.tif 000003
と表現されると仮定すると、再構成基底行列Ｒは圧縮基底行列Ｂに基づいて、
【数３】
0006652510.tif 000004
として生成（または更新）することができ、ここでｒｋは行列の積として決定され、
【数４】
0006652510.tif 000005
または等価的に、
ｒ２＝ｂ１Ｋ（２），ｒｋ＝ｒｋ−１Ｋ（ｋ），ｋ＝３、．．．，Ｍ
であり、ここで、圧縮基底ｂ１、ｂ２、．．．ｂＭのそれぞれを用いて圧縮測定値Ｙ１、Ｙ２、Ｙ３．．．ＹＭが取得された全期間の間に物体１１０がカメラユニット１１５に対して動いたと仮定される。
【００５０】
他の実施形態では、たとえば、特定の基底ｂｋを用いてＹｋを生成するときに物体がカメラユニットに対して動かない場合、ｒｋはｂｋと同じであってよいことが分かるであろう。言い換えれば、いくつかの実施形態では、再構成基底行列Ｒは、カメラユニット１１５に対する物体の動きの期間に適用された圧縮基底に関しては圧縮基底行列Ｂと異なるが、その他の圧縮基底に関しては同じのままである。そのような例では、物体の相対的な動きがなかったと決定された対応する期間について構成されたカーネル行列は、Ｎ×Ｎ単位行列となり得る。
【００５１】
ステップ３１０において、ステップ３０８で生成された再構成基底行列１５０を用いて、圧縮測定値１２５から物体１１０の画像１４０を生成する。たとえば、一実施形態では、画像１４０は行列形式で、
【数５】
0006652510.tif 000006
の制約の下での、
【数６】
0006652510.tif 000007
として決定することができ、ここでＷはスパース化演算子であり、ＩはＮ個の値の画像１４０の１次元行列表現であり、Ｒはステップ３０８で生成される再構成基底行列であり、Ｙ１、Ｙ２、Ｙ３．．．ＹＭは圧縮基底行列１２０を用いて取得される圧縮測定値１２５である。スパース化演算子は、たとえばウェーブレットを用いて、または全変動（ｔｏｔａｌ  ｖａｒｉａｔｉｏｎｓ）を用いて生成することができる。
【００５２】
上記の処理を反復して、再構成基底行列を生成または更新することによって、ある期間にわたる圧縮測定値の異なる組から再構成される一連の画像または（ビデオのフレーム）の１つまたは複数についてカメラに対する物体の相対的な動きを補償することができる。上記のステップは例示的なものに過ぎず、既存のステップを修正または省略することができ、追加のステップを追加することができ（たとえば、圧縮基底行列を決定するステップ、および圧縮基底行列を用いて圧縮測定値を決定するステップ）、特定のステップの順序を変更することができることは理解されよう。
【００５３】
本開示の１つまたは複数の態様が、ハードウェア、ソフトウェア、またはこれらの組み合わせを用いて実装できることは理解されよう。図４に、本開示の１つまたは複数の態様を実装するのに適した一例示的処理デバイスまたは装置４００の上位レベルブロック図を示す。装置４００は、様々な入力／出力デバイス４０４およびメモリ４０６と通信可能に相互接続されたプロセッサ４０２を備える。
【００５４】
プロセッサ４０２は任意のタイプのプロセッサ、たとえば汎用の中央処理装置（「ＣＰＵ」）または専用のマイクロプロセッサ、たとえば組み込みマイクロコントローラもしくはデジタルシグナルプロセッサ（「ＤＳＰ」）とすることができる。入力／出力デバイス４０４は、プロセッサ４０２の制御下で動作し、本開示による装置４００にデータを入力またはこれからデータを出力するように構成された任意の周辺デバイス、たとえばレンズカメラもしくはレンズレスカメラまたはビデオキャプチャデバイスとすることができる。また、入力／出力デバイス４０４は、従来のネットワークアダプタ、データポート、および様々なユーザインターフェースデバイス、たとえばキーボード、キーパッド、マウス、またはディスプレイを含むことができる。
【００５５】
メモリ４０６は、データとプロセッサ４０２により実行可能な命令とを含む電子情報を記憶するのに適した任意のタイプのメモリとすることができる。メモリ４０６は、たとえば、ランダムアクセスメモリ（ＲＡＭ）、読み出し専用メモリ（ＲＯＭ）、フラッシュメモリ、ハードディスクドライブメモリ、コンパクトディスクメモリ、光メモリなどのうちの１つまたは複数の組み合わせとして実装することができる。加えて、装置４００は、一実施形態ではメモリ４０６に記憶しプロセッサ４０２により実行することが可能なオペレーティングシステム、キューマネージャ、デバイスドライバ、あるいは１つまたは複数のネットワークプロトコルを含むこともできる。
【００５６】
メモリ４０６は、実行可能命令およびデータを記憶する非一時的メモリを含むことができ、これらの命令は、プロセッサ４０２による実行時に、上記の様々な態様およびステップによる機能を実施するように装置４００を構成することができる。いくつかの実施形態では、プロセッサ４０２は、命令の実行時に、上記の圧縮測定値の取得または再構成に関する機能の全てまたは一部と通信する、これを制御する、または実装するように構成することができる。プロセッサは、動きデータを決定または受信し、動きデータを処理して１つまたは複数のカーネル行列を生成し、上記のカーネル行列に基づいて再構成基底行列を生成するように構成することができる。
【００５７】
いくつかの実施形態では、プロセッサ４０２は、ネットワークなどを介して相互接続された他の装置４００と通信する、および／またはこれを制御するように構成することもできる。そのような場合、本明細書で開示された機能は、各スタンドアローン装置４００に統合することができ、あるいは１つまたは複数の装置４００の間で分散させることができる。いくつかの実施形態では、プロセッサ４０２は、異なる場所に位置しており互いと通信可能に相互接続された複数の相互接続されたプロセッサとして構成することもできる。
【００５８】
特定の装置構成が図４に示されているが、本開示が任意の特定の実装に限定されないことは理解されよう。たとえば、いくつかの実施形態では、本明細書で開示された機能の全部または一部は、１つまたは複数の特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）などを用いて実装することができる。
【００５９】
本明細書の態様は特定の実施形態に関して説明されているが、これらの実施形態が本開示の原理および用途を例示するものに過ぎないことは理解されよう。したがって、多数の修正を例示的実施形態に対して行うことができ、本開示の趣旨および範囲から逸脱することなく、他の構成を考案することができることは理解されよう。
【図１】
0006652510.tif 000008
【図２】
0006652510.tif 000009
【図３】
0006652510.tif 000010
【図４】
0006652510.tif 000011