説明

撮像装置および動きベクトル検出方法

【課題】ローリングシャッタ法を用いて撮影された画像から検出される動きベクトルの垂直方向の誤差を補正することができる撮像装置および動きベクトル検出方法を提供する。
【解決手段】カメラ11は、行列に配置された撮像素子を有し、上端の行から下端の行に向かって隣接する行間のシャッタ時間が所定のずれ時間を有するXYアドレス読み出し法により撮像素子の信号を取り出すことにより所定のフレーム周期でフレーム画像を得る。動きベクトル検出部13は、時間的に連続する2枚のフレーム画像に含まれる対象物について、2枚のフレーム画像間における対象物の行方向および列方向の移動量を検出する。動きベクトル垂直成分補正部14は、動きベクトル検出部13により検出された移動量の列方向成分を所定のずれ時間およびフレーム周期の少なくとも一方を用いて補正し、移動量の行方向成分および補正後の列方向成分を出力する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、撮像装置および動きベクトル検出方法に関する。
【背景技術】
【0002】
CMOS(Complementary Metal Oxide Semiconductor)イメージセンサなどのイメージセンサの駆動方法の1つに、XYアドレス読み出し法(以下、ローリングシャッタ法という)がある。ローリングシャッタ法は、1枚のフレーム画像を作成する際に、上部から画素行ごとに順次シャッタ動作を行って画像信号を取り出し、フレーム周期以内に全行の読み出し動作を完了する方法である。
【0003】
画像信号は、シャッタが開の期間にサンプリングされる。このため、ローリングシャッタ法では、一枚のフレーム画像内において、上部の行から下部の行に向かって行ごとにサンプリング時刻が所定のずれ時間ずつ遅れることになる。このため、ローリングシャッタ法を用いて移動体を撮影した場合、行ごとに異なるサンプリング時刻を考慮しつつ、動きベクトルを用いて画像を補正することが好ましい。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2009−141717号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、ローリングシャッタ法において、時間的に隣り合うフレーム画像の同一行どうしのサンプリング間隔は、フレーム周期と一致する。このため、動きベクトルの画素行方向(水平方向)の成分については、フレーム間の移動画素量をフレーム周期で除すことにより容易に求めることができる。
【0006】
一方、時間的に隣り合うフレーム画像の異なる行どうしのサンプリング間隔は、フレーム周期とは異なる。このため、動きベクトルの画素列方向(垂直方向)の成分は、横方向成分と同様にフレーム間の移動画素量をフレーム周期で除して算出してしまうと、誤差が生ることになる。したがって、従来の技術では、動きベクトルに縦方向成分を含む被写体(垂直方向に移動する被写体)については、検出した動きベクトルの縦方向成分に誤差が含まれてしまう。
【課題を解決するための手段】
【0007】
本発明の一実施形態に係る撮像装置は、上述した課題を解決するために、カメラと、動きベクトル検出部と、動きベクトル垂直成分補正部とを備える。カメラは、行列に配置された撮像素子を有し、上端の行から下端の行に向かって隣接する行間のシャッタ時間が所定のずれ時間を有するXYアドレス読み出し法により撮像素子の信号を取り出すことにより所定のフレーム周期でフレーム画像を得る。動きベクトル検出部は、時間的に連続する2枚のフレーム画像に含まれる対象物について、2枚のフレーム画像間における対象物の行方向および列方向の移動量を検出する。動きベクトル垂直成分補正部は、動きベクトル検出部により検出された移動量の列方向成分を所定のずれ時間およびフレーム周期の少なくとも一方を用いて補正し、移動量の行方向成分および補正後の列方向成分を出力する。
【図面の簡単な説明】
【0008】
【図1】本発明の一実施形態に係る撮像装置の一例を示す全体構成図。
【図2】図2(a)はグローバルシャッタ法におけるフレーム画像のサンプリング面と時間の関係の一例を示す説明図、(b)はローリングシャッタ法におけるフレーム画像のサンプリング面と時間の関係の一例を示す説明図。
【図3】図2(b)に示すローリングシャッタ法におけるフレーム画像のサンプリング面のyt平面の一例を示す説明図。
【図4】図1に示す主制御部のCPUにより、ローリングシャッタカメラにより取得された画像から検出される動きベクトルの列方向(垂直方向)の誤差を補正し、補正後の動きベクトルを用いて画像の歪みを補正する際の手順を示すフローチャート。
【発明を実施するための形態】
【0009】
本発明に係る撮像装置および動きベクトル検出方法の実施の形態について、添付図面を参照して説明する。
【0010】
図1は、本発明の一実施形態に係る撮像装置10の一例を示す全体構成図である。
【0011】
撮像装置10は、ローリングシャッタカメラ11および主制御部12を有する。
【0012】
ローリングシャッタカメラ11は、行列に配置された撮像素子を有しローリングシャッタ法(XYアドレス読み出し法)により画像信号を出力するCMOS(Complementary Metal Oxide Semiconductor)イメージセンサなどにより構成される。
【0013】
主制御部12は、CPU、RAMおよびROMなどの記憶媒体などにより構成される。主制御部12のCPUは、ROMなどの記憶媒体に記憶された動きベクトル検出プログラムおよびこのプログラムの実行のために必要なデータをRAMへロードし、このプログラムに従って、ローリングシャッタカメラ11により取得された画像から検出される動きベクトルの列方向(垂直方向)の誤差を補正する。
【0014】
主制御部12のRAMは、CPUが実行するプログラムおよびデータを一時的に格納するワークエリアを提供する。主制御部12のROMなどの記憶媒体は、動きベクトル検出プログラムや、これらのプログラムを実行するために必要な各種データを記憶する。
【0015】
なお、ROMをはじめとする記憶媒体は、磁気的もしくは光学的記録媒体または半導体メモリなどの、CPUにより読み取り可能な記録媒体を含んだ構成を有し、これら記憶媒体内のプログラムおよびデータの一部または全部は図示しないネットワーク接続部を介して電子ネットワークを介してダウンロードされるように構成してもよい。
【0016】
なお、この場合、ネットワーク接続部は、ネットワークの形態に応じた種々の情報通信用プロトコルを実装し、この各種プロトコルに従って主制御部12と他の電気機器とを電子ネットワークを介して接続する。この接続には、電子ネットワークを介した電気的な接続などを適用することができる。ここで電子ネットワークとは、電気通信技術を利用した情報通信網全般を意味し、無線/有線LAN(Local Area Network)やインターネット網のほか、電話通信回線網、光ファイバ通信ネットワーク、ケーブル通信ネットワークおよび衛星通信ネットワークなどを含む。
【0017】
図1に示すように、主制御部12のCPUは、動きベクトル検出プログラムによって、少なくとも動きベクトル検出部13、動きベクトル垂直成分補正部14および画像歪み補正部15として機能する。この各部13〜15は、RAMの所要のワークエリアを、データの一時的な格納場所として利用する。なお、これらの機能実現部は、CPUを用いることなく回路などのハードウエアロジックによって構成してもよい。
【0018】
図2(a)はグローバルシャッタ法におけるフレーム画像のサンプリング面と時間の関係の一例を示す説明図であり、(b)はローリングシャッタ法におけるフレーム画像のサンプリング面と時間の関係の一例を示す説明図である。
【0019】
行列に配置された撮像素子を有するカメラの駆動方法には、大きくグローバルシャッタ法とローリングシャッタ法の2通りがある。
【0020】
行列に配置された撮像素子の各素子に対応するフレーム上の画素をP(x、y)とし、さらに時間tにサンプリングが開始されるフレーム上の画素をP(x、y、t)とする。
【0021】
グローバルシャッタ法は、全ての撮像素子のサンプリングを同時に行う方法である。このため、グローバルシャッタ法では、同一フレーム上の任意の画素が同一時刻tでサンプリングされる。したがって、グローバルシャッタ法では、図2(a)に示すように、x軸、y軸およびt軸が互いに直交する。
【0022】
一方、ローリングシャッタ法は、1枚のフレーム画像を作成する際に、上部から画素行ごとに順次シャッタ動作を行って画像信号を取り出し、フレーム周期T以内に全行の読み出し動作を完了する方法である。このため、同一行の撮像素子間ではサンプリング時刻が等しいが、上部の行から下部の行に向かって行ごとにサンプリング時刻が所定のずれ時間kずつ遅れる。したがって、ローリングシャッタ法では、図2(b)に示すように、x軸とy軸およびX軸とt軸は直交するものの、y軸とt軸は直交しない。
【0023】
次に、ローリングシャッタ法で得られたフレーム画像にもとづいて検出される動きベクトルの補正方法について説明する。
【0024】
図3は、図2(b)に示すローリングシャッタ法におけるフレーム画像のサンプリング面のyt平面の一例を示す説明図である。図3において、破線はローリングシャッタ法におけるフレーム画像のサンプリング面を表す。
【0025】
動きベクトル検出部13は、ブロックマッチング法や勾配法などを用いて、ローリングシャッタ法で得られた時間的に連続する2枚のフレーム画像に含まれる対象物について、2枚のフレーム画像間における対象物の行方向および列方向の動きベクトルm(u、v)を検出する。
【0026】
たとえば、時間的に連続する2枚のフレームをフレームn−1およびフレームnとし、フレームn−1においてy座標y1にあった被写体が、フレームnにおいてy座標y2で観測された場合を考える。
【0027】
このとき、動きベクトル検出部13は、フレーム周期Tを用いて動きベクトルm(u、v)を算出する。したがって、動きベクトル検出部13により検出される動きベクトルmの列方向成分vは、次のように書ける。
v = (y2−y1)/T (1)
【0028】
一般に、動きベクトルは単位時間当たりではなく、フレーム間の移動量として定義することが多い。このため、動きベクトル検出部13は、フレーム間の移動量を出力してもよい。このとき、たとえば動きベクトル検出部13が出力するフレーム間の移動量の列方向成分は、式(1)を変形した次式で得ることができる。
vT = y2−y1 (2)
【0029】
しかし、ローリングシャッタ法のサンプリング面は、垂直方向の画素位置に応じてグローバルシャッタ法のサンプリング面に対して時間遅れが発生するため、式(1)および式(2)で求められる動きベクトルmの列方向成分vは誤差を含んでいる。
【0030】
そこで、動きベクトル垂直成分補正部14は、動きベクトル検出部13により検出された移動量の列方向成分v・Tを、所定のずれ時間(ローリングシャッタ法におけるサンプリング時刻の行間のずれ時間)およびフレーム周期Tの少なくとも一方を用いて補正し、移動量の行方向成分u・Tおよび補正後の列方向成分v0・Tを出力する。
【0031】
ローリングシャッタ法におけるサンプリング時刻の行間のずれ時間をk、1枚のフレームの読み出しに要する時間をτ、撮像素子の総行数をNとすると、行間のずれ時間kはk=τ/Nで表される。このとき、y座標y1およびy2におけるローリングシャッタ法のサンプリング面のグローバルシャッタ法のサンプリング面に対する時間遅れΔt1およびΔt2は、それぞれ次の式(3)および式(4)のように表せる。
Δt1 = (τ/N) y1 = ky1 (3)
Δt2 = (τ/N) y1 = ky2 (4)
【0032】
このため、フレームn−1においてy座標y1がサンプリングされる時刻から、フレームnにおいてy座標y2がサンプリングされる時刻までの時間は、フレーム周期Tに比べ時間Δtだけずれることになる(図3参照)。
Δt = Δt2−Δt1 = k(y2−y1) (5)
【0033】
したがって、y1からy2への移動に対応する動きベクトルの列方向成分(垂直成分)の単位時間当たりの移動量v0は、次のように表せる。
v0 = (y2−y1) /(T+Δt) (6)
【0034】
この式(5)が正しい動きベクトルの列方向成分(垂直成分)の単位時間当たりの移動量v0を示す式であって、グローバルシャッタサンプリング面に換算した単位時間当たりの移動量と考えることができる。式(5)を変形すれば、正しいフレーム間の移動量の列方向成分を与える次式を得ることができる。
v0 T =(y2−y1) T /(T+Δt)
=(y2−y1) /(1+Δt/T) (7)
【0035】
フレーム間の移動量の垂直成分について、補正前をv・T=V、補正後をv0・T=V0とすると、式(2)および式(7)から次式が導かれる。
V0 = V /(1+Δt/T) (8)
【0036】
また、式(2)および式(5)からV=Δt/kと書けるため、式(8)は次のように変形できる。
V0 = V /(1+kV/T) (9)
【0037】
動きベクトル垂直成分補正部14は、この式(9)を用いて動きベクトル検出部13が出力した移動量の垂直成分VをV0に補正して出力する。
【0038】
また、kV/Tが1より十分小さい場合、式(9)を次のように近似できる。
V0 ≒ V(1−KV) (10)
ただし、K=k/T=(τ/T)/N
【0039】
このとき、さらにτ/T≒1であれば、K=(τ/T)/N≒1/Nであるから、式(10)は次のように変形できる。
V0 ≒ V(1−V/N) (11)
【0040】
動きベクトル垂直成分補正部14は、式(10)または式(11)を用いて動きベクトル検出部13が出力した移動量の垂直方向成分VをV0に補正して出力してもよい。
【0041】
なお、動きベクトルの行方向成分(水平成分)は、フレーム間で同一行上にあるため、ローリングシャッタ法に起因するサンプリング時刻差は発生しない。このため、水平成分を補正する必要は無い。
【0042】
続いて、画像歪み補正について説明する。
画像歪み補正部15は、動きベクトル垂直成分補正部14により出力された移動量の行方向成分Uおよび補正後の列方向成分V0を用いて、ローリングシャッタカメラ11により出力されたフレーム画像のローリングシャッタ法に起因する歪みを補正する。ここで、U=u・Tを表すものとする。以下、画像歪み補正についてより具体的に説明する。
【0043】
垂直方向については、画像歪み補正部15は、補正後の列方向成分V0を用いてグローバルシャッタ法のサンプリング面における画素位置のy座標y0を算出する。
y0 = y2−v0Δt2
= y2(1−kv0) (∵式(4))
= y2(1−kV0/T)
= y2(1−KV0) (12)
【0044】
水平方向については、画像歪み補正部15は、動きベクトル検出部13が出力したフレーム間の移動量の行方向成分Uを用いてグローバルシャッタ法のサンプリング面における画素位置のx座標x0を算出する。
x0 = x2−uΔt2
= x2−uky2 (∵式(4))
= x2−Uky2 /T
= x2−UKy2 (13)
【0045】
さらに、τ/T≒1であれば、K=(τ/T)/N≒1/Nであるから、式(12)および式(13)はそれぞれ次のように変形できる。
y0 = y2(1−V0/N) (14)
x0 = x2−U(y2 /N ) (15)
【0046】
画像歪み補正部15は、式(14)および式(15)を用いてローリングシャッタカメラ11により出力されたフレーム画像の各画素の画素位置を補正することにより、ローリングシャッタ法に起因する画像の歪みを補正する。
【0047】
次に、本実施形態に係る撮像装置および動きベクトル検出方法の動作の一例について説明する。
【0048】
図4は、図1に示す主制御部12のCPUにより、ローリングシャッタカメラ11により取得された画像から検出される動きベクトルの列方向(垂直方向)の誤差を補正し、補正後の動きベクトルを用いて画像の歪みを補正する際の手順を示すフローチャートである。図4において、Sに数字を付した符号は、フローチャートの各ステップを示す。
【0049】
まず、ステップS1において、動きベクトル検出部13は、ローリングシャッタカメラ11からローリングシャッタ法で得られた時間的に連続する2枚のフレーム画像の画像データを取得する。
【0050】
次に、ステップS2において、動きベクトル検出部13は、取得した画像データにもとづいて、時間的に連続する2枚のフレーム画像間における対象物のフレーム間移動量の行方向成分Uおよび列方向成分Vを算出する。
【0051】
次に、ステップS3において、動きベクトル垂直成分補正部14は、式(9)−式(11)のいずれかにもとづき、ローリングシャッタ法におけるサンプリング時刻の行間のずれ時間(シャッタずれ時間)k(=τ/N)およびフレーム周期Tの少なくとも一方を用いてフレーム間移動量の補正後の列方向成分V0を算出する。
【0052】
次に、ステップS4において、画像歪み補正部15は、式(12)および式(13)、または式(14)および式(15)にもとづき、フレーム間の移動量の行方向成分Uおよび補正後の列方向成分V0を用いてローリングシャッタカメラ11により出力されたフレーム画像の各画素の画素位置を補正することにより、ローリングシャッタ法に起因する画像の歪みを補正する。
【0053】
以上の手順により、ローリングシャッタカメラ11により取得された画像から検出される動きベクトルの列方向(垂直方向)の誤差を補正し、補正後の動きベクトルを用いて画像の歪みを補正することができる。
【0054】
本実施形態に係る撮像装置10は、動きベクトル垂直成分補正部14により式(9)−式(11)のいずれかにもとづいてフレーム間移動量の補正後の列方向成分V0を算出することができる。このため、ローリングシャッタ法に起因する動きベクトルの列方向成分の誤差を、容易かつ正確に補正することができる。したがって、本実施形態に係る撮像装置10は、たとえば運転支援技術などの正確な動きベクトルを必要とする技術に好適である。
【0055】
また、フレーム間移動量の補正後の列方向成分V0にもとづいて、ローリングシャッタ法に起因する画像の歪みを正確に補正することができる。
【0056】
なお、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【0057】
また、本発明の実施形態では、フローチャートの各ステップは、記載された順序に沿って時系列的に行われる処理の例を示したが、必ずしも時系列的に処理されなくとも、並列的あるいは個別実行される処理をも含むものである。
【符号の説明】
【0058】
10 撮像装置
11 ローリングシャッタカメラ
12 主制御部
13 動きベクトル検出部
14 動きベクトル垂直成分補正部
15 画像歪み補正部

【特許請求の範囲】
【請求項1】
行列に配置された撮像素子を有し、上端の行から下端の行に向かって隣接する行間のシャッタ時間が所定のずれ時間を有するXYアドレス読み出し法により前記撮像素子の信号を取り出すことにより所定のフレーム周期でフレーム画像を得るカメラと、
時間的に連続する2枚のフレーム画像に含まれる対象物について、前記2枚のフレーム画像間における前記対象物の行方向および列方向の移動量を検出する動きベクトル検出部と、
前記動きベクトル検出部により検出された前記移動量の前記列方向成分を前記所定のずれ時間および前記フレーム周期の少なくとも一方を用いて補正し、前記移動量の前記行方向成分および補正後の列方向成分を出力する動きベクトル垂直成分補正部と、
を備えた撮像装置。
【請求項2】
前記動きベクトル垂直成分補正部は、
前記動きベクトル検出部に検出された前記移動量の前記列方向成分をV、前記所定のずれ時間を前記フレーム周期で除した値をKとしたとき、V0=V/(1+KV)により前記補正後の列方向成分V0を算出し、前記移動量の前記行方向成分および補正後の前記列方向成分V0を出力する、
請求項1記載の撮像装置。
【請求項3】
前記動きベクトル垂直成分補正部は、
前記動きベクトル検出部に検出された前記移動量の前記列方向成分をV、前記所定のずれ時間を前記フレーム周期で除した値をKとしたとき、V0=V(1−KV)により前記補正後の列方向成分V0を算出し、前記移動量の前記行方向成分および補正後の前記列方向成分V0を出力する、
請求項1記載の撮像装置。
【請求項4】
前記動きベクトル垂直成分補正部は、
前記動きベクトル検出部に検出された前記移動量の前記列方向成分をV、前記撮像素子の総行数をNとしたとき、V0=V(1−V/N)により前記補正後の列方向成分V0を算出し、前記移動量の前記行方向成分および補正後の前記列方向成分V0を出力する、
請求項1記載の撮像装置。
【請求項5】
前記動きベクトル垂直成分補正部により出力された前記移動量の前記行方向成分および補正後の前記列方向成分を用いて、前記カメラにより得られた前記フレーム画像の前記XYアドレス読み出し法に起因する歪みを補正する画像歪み補正部、
をさらに備えた請求項1ないし4のいずれか1項に記載の撮像装置。
【請求項6】
行列に配置された撮像素子を有したカメラから、上端の行から下端の行に向かって隣接する行間のシャッタ時間が所定のずれ時間を有するXYアドレス読み出し法により前記撮像素子の信号を取り出すことにより、所定のフレーム周期でフレーム画像を得るステップと、
時間的に連続する2枚のフレーム画像に含まれる対象物について、前記2枚のフレーム画像間における前記対象物の行方向および列方向の移動量を検出するステップと、
この検出された移動量の前記列方向成分を前記所定のずれ時間および前記フレーム周期の少なくとも一方を用いて補正し、前記移動量の前記行方向成分および補正後の列方向成分を出力するステップと、
を有する動きベクトル検出方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公開番号】特開2012−160887(P2012−160887A)
【公開日】平成24年8月23日(2012.8.23)
【国際特許分類】
【出願番号】特願2011−18837(P2011−18837)
【出願日】平成23年1月31日(2011.1.31)
【出願人】(504113008)東芝アルパイン・オートモティブテクノロジー株式会社 (110)
【Fターム(参考)】