画像撮像装置
【課題】NTSC方式のフレーム周波数から外したフレーム周波数で撮像素子から画像データを取り込み、フレームメモリにプログレッシブで書込み、インタレースで読み出す撮像装置におけるインタレース特有のコムノイズの発生を防止、また、実装するクロック発振器はNTSC方式対応の発振器のみとして、低コストな撮像装置を提供する。
【解決手段】フレームメモリ105を少なくとも3つの領域に分ける。制御部10は、各領域を書込み領域・読出し領域として、その役割を順次切り替えるようにし、ある領域からの読出し終了時に、次に読出す領域への書込みが完了しているか確認して、読出し領域の切替えを行う。撮像素子101は、NTSC方式対応の発振器107のクロックで動作し、垂直方向のブランキング期間乃至水平方向のブランキング期間を変更することで、NTSC方式のフレーム周波数から外れたフレーム周波数で画像データを出力する。
【解決手段】フレームメモリ105を少なくとも3つの領域に分ける。制御部10は、各領域を書込み領域・読出し領域として、その役割を順次切り替えるようにし、ある領域からの読出し終了時に、次に読出す領域への書込みが完了しているか確認して、読出し領域の切替えを行う。撮像素子101は、NTSC方式対応の発振器107のクロックで動作し、垂直方向のブランキング期間乃至水平方向のブランキング期間を変更することで、NTSC方式のフレーム周波数から外れたフレーム周波数で画像データを出力する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、車両に搭載して用いられる車載カメラなどの画像撮像装置に係り、詳しくは、NTSC方式出力の画像撮像装置に関する。
【背景技術】
【0002】
一般に車載カメラは、NTSC方式の表示装置などに合わせるために、CMOSセンサなどの撮像素子により、撮影コマ数を約30fpsで撮影している。このような車載カメラで路上の例えばLED式信号機を撮影した場合、以下のような問題が発生する。
【0003】
LED式信号機は、商用交流電源を全波整流した駆動電圧で駆動されているので、目視では確認することができないが、信号の点灯及び消灯が微小時間で周期的に繰り返されている。そのため、あるフレームにおいて、撮像素子の電荷蓄積時間と信号の消灯期間とが重なった場合には、そのフレームに関しては、実際には赤、青、緑のいずれかが点灯状態であっても消灯状態として撮像されることとなる。そして、このようなフレームが連続すると、消灯状態の信号機が撮影された映像が数十フレームにもわたって出力されることになる。これは、ドライブレコーダにおいて特に深刻な問題である。ドライブレコーダは、車載カメラにより撮影された映像を記録しておくもので、事故分析を行う際などに広く用いられるが、事故・ヒヤリ発生時の信号機の正確な状態が判別できないと、事故処理における責任判別等に支障が生じてしまう。
【0004】
上記のような問題に対処するため、撮像素子のフレーム周波数をNTSC方式のフレーム周波数に対して所定のオフセット周波数だけオフセットさせたフレーム周波数(オフセットフレーム周波数)に設定することが知られている(例えば、特許文献1参照)。これによれば、LED方式信号機などを撮影しても、点灯時、消灯状態の映像が数十フレームにわたって出力されることはなくなるが、映像信号のフレーム周波数はNTSC方式のフレーム周波数から外れているため、このままでは、NTSC方式の表示装置に表示することができない。
【0005】
この対策としては、NTSC方式のフレーム周波数から外したフレーム周波数(オフセットフレーム周波数)で、撮像素子から取り込んだ画像データをフレームメモリに保存し、該フレームメモリからNTSC方式のフレーム周波数で読出し、表示装置に出力することが考えられる。しかしながら、これには、以下のような問題が新たに発生する。
【0006】
通常、撮像素子からの画像データの読出しはプログレッシブ方式で行われる。一方、NTSC方式の表示装置はインタレース方式を採用している。そのため、上記方法では、撮像素子から読出された画像データをプログレッシブ方式でフレームメモリに書込み、該フレームメモリからインタレース方式で読出すこととなる。この場合、フレームメモリに1フレームの画像データを書込む時間とフレームメモリから1フレームの画像データを読出す時間が異なるため、フレームメモリをダブルバッファとしても、インタレース方式に特有なコムノイズが発生する。コムノイズとは、異なるフレームの奇数フィールドと偶数フィールドからなるフレーム画像に発生する櫛歯状の画像ずれのことである。
【発明の概要】
【発明が解決しようとする課題】
【0007】
本発明は、LED信号機などの点灯機の点灯時における明滅周期の影響を受け難くし、かつ、NTSC方式の表示装置をそのまま使用できるように、NTSC方式のフレーム周波数から外したフレーム周波数で撮像素子から画像データを読出し、それをプログレッシブ方式でフレームメモリに書込み、該フレームメモリからNTSC方式のフレーム周波数でインタレース方式で読出すようにした撮像装置において、さらにコムノイズの発生を防止することを目的とする。
【0008】
また、本発明は、装置に実装する発振器はNTSC方式におけるクロック信号発生用の発振器のみとし、簡単な構成でNTSC方式のフレーム周波数から外れたフレーム周波数で撮像素子から画像データを読出しできるようして、低コストな撮像装置の提供を目的とする。
【課題を解決するための手段】
【0009】
請求項1の発明は、被写体の光学像を結像する光学系と、前記光学系により結像される光学像を撮像し、NTSC方式のフレーム周波数Ffrから外れたフレーム周波数Ffsで画像データを出力する撮像素子と、前記画像データを格納するフレームメモリと、前記撮像素子から出力される画像データを前記フレームメモリにプログレッシブに書込み、該フレームメモリからNTSC方式のフレーム周波数Ffrでインタレースに読み出す制御部とを有する画像撮像装置であって、前記フレームメモリを少なくとも3つの領域に分け、前記制御部は、前記フレームメモリの各領域を書込み領域・読出し領域として、その役割を順次切り替え、各領域に1フレームの画像データをプログレッシブに順次書込み、各領域から1フレームの画像データをインタレースに順次読み出すことを特徴とする。
【0010】
請求項2の発明は、請求項1に記載の画像撮像装置において、前記制御部は、ある領域から1フレームの画像データの読出しが終了した時点で、次に読出す領域に1フレームの画像データの書込みが完了しているか判別し、完了していなければ、いま読出した領域から再度、1フレームの画像データを読出すことを特徴とする。
【0011】
請求項3の発明は、請求項2に記載の画像撮像装置において、前記制御部は、次に読出す領域に1フレームの画像データの書込みが完了していれば、次の次に読出す領域に1フレームの画像データの書込みが完了しているか判別し、完了していなければ、次に読出す領域から画像データの読出しを開始し、完了していれば、次に読出す領域を飛ばして、次の次に読出す領域から画像データの読出しを開始することを特徴とする。
【0012】
請求項4の発明は、請求項1乃至3のいずれか1項に記載の画像撮像装置において、前記制御部は、フレームメモリから画像データを読出す際に、所定の画像変換処理を行うことを特徴とする。
【0013】
請求項5の発明は、請求項1乃至4のいずれか1項に記載の画像撮像装置において、前記撮像素子は、一定のフレーム周期のフレーム周波数Ffsで画像データを出力することを特徴とする。
【0014】
請求項6の発明は、請求項1乃至4のいずれか1項に記載の画像撮像装置において、前記撮像素子は、隣り合うフレーム周期は不定で、かつ、それらを平均するとNTSC方式のフレーム周期となる、可変のフレーム周波数Ffsで画像データを出力することを特徴とする。
【0015】
請求項7の発明は、請求項1乃至6のいずれか1項に記載の画像撮像装置において、NTSC方式対応のクロック信号発生用の単一の発振器を有し、前記制御部は、前記発振器からのNTSC方式対応のクロック周波数のクロックを基に、NTSC方式のフレーム周波数Ffrでのフレームメモリからのインタレース読出しを制御し、前記撮像素子は、前記発振器からNTSC方式対応のクロック周波数のクロックを入力して動作し、垂直方向のブランキング期間乃至水平方向のブランキング期間を変更することで、NTSC方式のフレーム周波数Ffrから外れたフレーム周波数Ffsで画像データを出力することを特徴とする。
【0016】
請求項8の発明は、請求項7に記載の画像撮像装置において、前記撮像素子はレジスタを有し、該レジスタに設定されるパラメータ値に従って垂直方向のブランキング期間乃至水平方向のブランキング期間を変更することを特徴とする。
【0017】
請求項9の発明は、請求項1乃至6のいずれか1項に記載の画像撮像装置において、NTSC方式対応のクロック信号発生用の単一の発振器を有し、前記制御部は、前記発振器からのNTSC方式対応のクロック周波数のクロックを基に、NTSC方式のフレーム周波数Ffrでのフレームメモリからのインタレース読出しを制御し、前記撮像素子は、前記発振器からNTSC方式対応のクロック周波数から外れたクロックを入力して動作することを特徴とする。
【0018】
請求項10の発明は、請求項9に記載の画像撮像装置において、前記撮像素子は、前記NTSC方式対応のクロック周波数から外れたクロックを前記撮像素子内部のPLLでn倍の周波数に変換し、変換後の周波数で画像データを出力することを特徴とする。
【0019】
請求項11の発明は、請求項10に記載の画像撮像装置において、前記クロックおよび変換後のクロックは、NTSC方式対応のクロック周波数の公約数および公倍数以外に設定することを特徴する。
【0020】
請求項12の発明は、請求項11に記載の画像撮像装置において、前記撮像素子は、垂直方向のブランキング期間乃至水平方向のブランキング期間を変更することで、NTSC方式のフレーム周波数Ffrから外れたフレーム周波数Ffsで画像データを出力することを特徴とする。
【0021】
請求項13の発明は、請求項8または12記載の画像撮像装置において、装置全体を制御するためのCPUを有し、該CPUが前記撮像素子内のレジスタのパラメータ値を設定することを特徴とする。
【0022】
請求項14の発明は、請求項1乃至13のいずれか1項に記載の画像撮像装置において、前記撮像素子は、画像データと共にフレーム周波数Ffrの垂直同期信号を出力し、前記制御部は、前記撮像素子からの垂直同期信号を基にフレームメモリの読出しタイミングを制御することを特徴とする。
【発明の効果】
【0023】
本発明では、LED信号機などの点灯機の点灯時における明滅周期の影響を受け難くし、かつ、NTSC方式の表示装置をそのまま使用できるように、NTSC方式のフレーム周波数から外したフレーム周波数で撮像素子から画像データを読出し、それをプログレッシブ方式でフレームメモリに書込み、該フレームメモリからNTSC方式のフレーム周波数でインタレース方式で読出すようにした撮像装置において、フレームメモリを少なくとも3つの領域に分け、各領域を書込み領域・読出し領域として、その役割を順次切り替えるようにし、ある領域からの読出し終了時に、次に読み出す領域への書込みが完了しているか確認して、読出し領域の切替えを行うことで、インタレース方式に特有のコムノイズの発生を防止することができる。
【0024】
また、本発明の画像撮像装置では、装置に実装するクロック発振器はNTSC方式対応のクロック信号発生用の発振器のみとし、撮像素子を、該発振器からのNTSC方式対応のクロック周波数のクロックで動作せしめ、垂直方向のブランキング期間乃至水平方向のブランキング期間を変更して、NTSC方式のフレーム周波数から外れたフレーム周波数で画像データを出力するようにすることで、低コストな画像撮像装置を提供できる。
【0025】
なお、本発明の画像撮像装置の上記以外の種々の作用効果は、次の実施形態の説明で明らかになる。
【図面の簡単な説明】
【0026】
【図1】本発明の画像撮像装置の一実施形態の全体構成図。
【図2】従来の撮像素子からの出力信号とフレームメモリからの読出し信号の関係を示す図。
【図3】本発明の撮像素子からの出力信号とフレームメモリからの読出し信号の関係を示す図。
【図4】図1中の制御部の詳細構成図。
【図5】図4中の座標計算手段の処理イメージを示す図。
【図6】周期Toで明滅する照明光と撮像素子の露光タイミングを示す図(その1)。
【図7】周期Toで明滅する照明光とロータリングシャッターの撮像素子の露光タイミングによる信号機の映り方を示す図。
【図8】周期Toで明滅する照明光と撮像素子の露光タイミングを示す図(その2)。
【図9】従来のダブルバッファの場合の書込み・読出しの遷移及び出力画像の状態を示す図(書込み時間=読出し時間)。
【図10】ダブルバッファの場合の書込み・読出しタイミング図(書込み時間>読出し時間)。
【図11】ダブルバッファの場合の書込み・読出しの遷移及び出力画像の状態を示す図(書込み時間>読出し時間)。
【図12】ダブルバッファの場合の書込み・読出しタイミング図(書込み時間<読出し時間)。
【図13】ダブルバッファの場合の書込み・読出しの遷移及び出力画像の状態を示す図(書込み時間<読出し時間)。
【図14】コムノイズ発生の出力画像の具体例を示す図。
【図15】本発明のトリプルバッファとした場合の画像データ読出しの処理フロー例を示す図。
【図16】トリプルバッファの場合の書込み・読出しタイミング図(書込み時間>読出し時間)。
【図17A】トリプルバッファの場合の書込み・読出しの遷移及び出力画像の状態を示す図(書込み時間>読出し時間)。
【図17B】図17Aの続きの図である。
【図18】トリプルバッファの場合の書込み・読出しタイミング図(書込み時間<読出し時間)。
【図19A】トリプルバッファの場合の書込み・読出しの遷移及び出力画像の状態を示す図(書込み時間<読出し時間)。
【図19B】図19Aの続きの図である。
【図20】図4のアドレス作成部の具体的実装例を示す図。
【図21】図20中のステートマシンの状態遷移図。
【図22】図20中のアドレス計算部の動作を説明する真理値表。
【図23】本発明の画像撮像装置の別の実施形態の全体構成図。
【発明を実施するための形態】
【0027】
以下、本発明の実施の形態について図面を参照して詳しく説明する。
【0028】
図1に、本発明に係る画像撮像装置の一実施形態(実施形態1)の全体構成図を示す。本画像撮像装置は、光学系101、撮像素子102、処理部103、NTSCエンコーダ104、及び、全体の動作を制御するCPU108などを備えている。処理部103は、その内部にフレームメモリ105、制御部106、発振器107を有する。NTSCエンコーダ104は、NTSC方式の表示装置や画像レコーダに接続されるが、図1では省略してある。ここで、発振器107は、NTSC方式対応のクロック信号発生用の水晶素子であり、具体的には、クロック周波数は13.5MHzである。該発振器107のクロック(CK)は、当該処理部10内の制御部106に与えられると同時にNTSCエンコーダ104に与えられ、さらに、撮像素子102にも与えられる。
【0029】
撮像素子102は、発振器107からNTSC方式対応のクロック周波数(13.5MHz)のクロックを入力として、NTSC方式のフレーム周波数Ffr(約30FPS)に対して所定のオフセット周波数だけオフセットさせたオフセットフレーム周波数Ffs(例えば、27FPS)でもって、光学系101を通して撮影された画像データをプログレッシブに読出し、処理部103に送る。具体的には、撮像素子102はレジスタ(センサレジスタ)を備え、CPU108から該レジスタに設定されるパラメータ値に応じて垂直方向のブランキング期間乃至水平方向のブランキング期間を変更することで、画像データのフレーム周波数がFfs(例えば、27FPS)になるようにしている。撮像素子102は、画像データと共に、このフレーム周波数Ffsの垂直同期信号Svを処理部103に送る。
【0030】
撮像素子102から出力される画像データは、そのフレーム周波数Ffs(例えば、27FPS)のタイミングで、処理部103内のフレームメモリ105にプログレシッブに順次書込まれる。そして、このフレームメモリ105に書込まれた画像データは、制御部106の制御下で、NTSC方式のフレーム周波数Ffr(約30FPS)のタイミングでインタレースに順次読出される。制御部106は、フレームメモリ105に対して読出しアドレスを指定すると共に、撮像素子102からの垂直同期信号Svを基にフレームメモリ105の読出しタイミングを制御し、また、発振器107からNTSC方式対応のクロック周波数(13.5MHz)のクロックを受け取って、NTSC方式のフレーム周波数Ffrのタイミングによるフレームメモリ105からのインタレース読出しを制御する。この制御部106の構成については後述する。
【0031】
フレームメモリ105から読出された画像データは、NTSCエンコーダ104でデジタル・アナログ変換処理を施されてNTSC方式の映像信号に変換され、図示しない表示装置やレコーダに送られる。
【0032】
図1の構成のように、NTSC方式のフレーム周波数Ffrに対して所定のオフセット周波数だけオフセットさせたオフセットフレーム周波数Ffsで撮像素子102から画像データを取り込み、フレームメモリ105に書込み(プログレッシブ)、該フレームメモリからNTSC方式のフレーム周波数Ffrで読出す(インタリーブ)ことで、LED信号機などの点灯機の点灯時における明滅周期の影響を受け難くし、かつ、NTSC方式の表示装置などをそのまま使用可能な画像撮像装置を実現することができる。コムノイズ発生の対策について後述する。
【0033】
また、撮像素子102は、処理部103内に実装される発振器107からNTSC方式対応のクロック周波数のクロック(CK)を入力して、当該撮像素子102から出力される画像データが、NTSC方式のフレーム周波数Ffrから外れたフレーム周波数Ffsになるようにしたことで、別途、該フレーム周波数Ffs用の発振器が不要であり、低コストな撮像装置を実現することができる。以下、これについて詳述する。
【0034】
図2は、従来の撮像素子からの出力信号とフレームメモリからの読出し信号の関係を示したもので、図2(A)は撮像素子からの出力信号(プログレッシブ)であり、図2(B)はフレームメモリからの読出し信号(インタレース)である。すなわち、従来は、NTSC方式に合わせて、撮像素子からの出力信号とフレームメモリからの読出し信号との垂直方向のブランキング期間を同じにしている。このため、撮像素子から出力される画像データを、NTSC方式のフレーム周波数Ffrから外れたフレーム周波数Ffsになるようにするためには、フレームメモリからの画像データ読出し用のNTSC方式対応のクロック信号発生用の発振器(13.5MHz)とは別に、そのクロック周波数を異にする発振器(例えば、12.2MHz)を、撮像素子からの画像データ読出しのために用意する必要がある。本発明の実施形態では、このような発振器は不要となる。
【0035】
図3は、本発明の実施形態における撮像素子からの出力信号とフレームメモリからの読出し信号の関係を示したもので、図3(a)は撮像素子からの出力信号(プログレッシブ)であり、図3(b)はフレームメモリからの読出し信号(インタレース)である。ここで、フレームメモリからの読出し信号は、図2(b)と同様である。一方、撮像素子からの出力信号は、垂直方向のブランキング期間が変更されている。すなわち、本実施形態では、NTSC方式対応のクロック信号発生用の発振器107からの同一のクロック(13.5MHz)でもって、撮像素子102からの画像データ読出しとフレームメモリ105からの画像データ読出しを実施し、この時、撮像素子102からの画像データ読出しの垂直方向のブランキング期間を変更することで、該撮像素子102の出力画像データをNTSC方式のフレーム周波数Ffrから外れたフレーム周波数Ffsになるようにしている。先に述べたように、撮像素子102はレジスタ(センサレジスタ)を備え、CPU108から該レジスタに設定されるパラメータ値に応じて垂直方向のブランキング期間を変更する。図3の例は、Ffs<Ffrとする場合であるが、センサレジスタのパラメータ値を変更することで、Ffs>Ffrとすることも可能である。また、CPU108によりフレームごとにセンサレジスタのパラメータ値を逐次変更することで、後述するように、隣り合うフレーム周期を不定にして、かつ、それらを平均すると、NTSC方式のフレーム周波数Ffrで撮像素子を駆動することが可能となる。
【0036】
なお、図3では、撮像素子102からの画像データ読出しの垂直方向のブランキング期間を変更するとしたが、水平方向のブランキング期間、あるいは垂直方向と水平方向の両方のブランキング期間を変更して、撮像素子1402の出力画像データをNTSC方式のフレーム周波数Ffrから外れたフレーム周波数Ffsになるようにしてもよい。
【0037】
次に、制御部106の構成動作について説明する。図4に制御部106の詳細構成図を示す。制御部106は、フレームメモリ読出し開始トリガ作成部201、出力用垂直水平同期信号作成部202、アドレス作成部203を有する。なお、アドレス作成部203には、歪み補正や視点変換などのための座標計算手段204を含めてもよい。
【0038】
フレームメモリ読出し開始トリガ作成部201は、撮像素子102から垂直同期信号Svを受け取り、撮像装置の電源投入直後に次のように作動する。なお、撮像素子102はプログレッシブ読出しを想定している。撮像装置の電源投入直後のSvを1つ見送って、2つ目のSvでフレームメモリ読出し開始トリガ(Tr)をアサートする(有効)する。
【0039】
このようにすることで、フレームメモリ105ら画像データが存在しない時点で、フレームメモリ105から画像データを読出すことがないようできる。
【0040】
出力用垂直水平同期信号作成部202は、発振器107からNTSC方式対応のクロック周波数(13.5MHz)のクロックを用いて、フレームメモリ105からの画像読出しがNTSC方式のフレーム周波数Ffr(約30FPS)になるように、垂直同期信号及び水平同期信号を作成する。
【0041】
アドレス作成部203は、発振器107からのクロック(CK)、出力用垂直水平同期信号作成部202からの垂直同期信号及び水平同期信号を基に、フレームメモリ105の読出しアドレスを順次指定し、該フレームメモリ105に書込まれた画像データをNTSC方式のフレーム周波数Ffr(約30FPS)のタイミングで読出していく。
【0042】
ここで、アドレス作成部203は、フレームメモリ105の読出しアドレスを順次指定するのではなく、ある座標変換ルール(例えば、歪み補正、見下ろし画像のような視点変換、中央切出し変換、サイド切出し変換、三面鏡変換など)に従って指定していく座標計算手段204を含めてもよい。
【0043】
図5に座標計算手段204の処理イメージを示す。これは、撮像素子からの画像データ(入力画像)を90°回転変形した画像を出力する例を示したものである。ここで、図5(a)は、ある二つの画素の変換前と変換後の座標上の位置関係を示し、図5(b)は、フレームメモリ105に記憶された入力画像と出力画像上の対応する画素の位置関係を示す。
【0044】
座標計算手段204では、フレームメモリ105からの画像データの読出しの際に、出力画像上の座標(X1,Y1)の画素として、入力画像上の座標(x1,y1)の画素の画素データが読出されるように、読出しアドレスを計算する。また、出力画像の座標(X2,Y2)の画素としては、入力画像上の座標(x2,y2)の画素の画像データが読出されるように読出しアドレスを計算する。この読出しアドレスに基づき、フレームメモリ105の対応するアドレスから画像データを読出すことにより、出力画像として、入力画像を90°回転変形した画像を得ることができる。
【0045】
同様にして、魚眼カメラの画像を変形し、魚眼画像に起因する画像の歪みを補正したり、視点変換に基づいた画像変形により真上から見た画像に変形することができ、車の後方部分を見るバックモニターなどにおいて、ドライバーに見やすい画像を表示することができる。なお、座標計算手段204の構成、処理アルゴリズムは従来から種々提案されているので、詳しい説明は省略する。
【0046】
次に、NTSC方式のフレーム周波数Ffrに対して所定のオフセット周波数だけオフセットさせたフレーム周波数(オフセットフレーム周波数)Ffsで撮像素子102から画像データを読出すことで、LED信号機などの点灯機の点灯時における明滅周期の影響が改善されることを具体的に説明する。
【0047】
図6、図7に、フレームのサンプリング周期をNTSC方式から外した一定の周期で行う場合を示す。この場合、撮像素子102内のセンサレジスタのパラメータ値は一定である。
【0048】
図6において、1番上のグラフは、周期Toで明滅する照明光(例えば、60Hzの信号機)の光量変化を表わしている。該グラフの凸部の部分が1番明るい状態(明)、谷の部分が暗い状態(滅)である。ここで、消灯期間をtoとする。
【0049】
図6(a)および(b)は、グローバルシャッターで、プログレッシブ読出しの撮像素子の露光タイミングを表わしている。図中、tiが露光時間である。(a)が撮像素子を30FPSで駆動する場合、(b)が30FPSから外した場合である。(a)の場合、NTSC方式のフレーム周波数Ffr(29.97Hz)とほぼ同期しているので、露光が照明光の滅のタイミングに入り込んでしまうと、滅の照明光が数秒間続いて撮像される。一方、(b)の場合は、NTSC方式のフレーム周波数Ffrと同期していないので、露光が照明光の滅のタイミングに入り込んでしまっても、それから抜け出しやすいので、滅の照明光が数秒間続いて撮像されることは避けられる。
【0050】
同様のことは、ローリングシャッターでもいえる。図6(c)および(d)は、ローリングシャッターで、プログレッシブ読出しの撮像素子の露光タイミングを表わしている。図中、tiが露光時間である。ローリングシャッターは、グローバルシャッターと異なり、行毎に独立して露光する。図6(c)および(d)では、1行目、2行目、3行目、…というように露光時間が少しずつ長時間側に移行していることを表わしている。(c)が撮像素子を30FPSで駆動する場合、(d)が30FPSから外した場合で、図中の斜線部分で露光した行は、その行に明滅する照明光が映っている場合、滅の状態で撮像されてしまう。(c)の場合、NTSC方式のフレーム周波数Ffr(29.97Hz)とほぼ同期しているので、露光が照明光の滅のタイミングに入り込んでしまうと、滅の照明光が数秒間続いて撮像される。一方、(d)の場合は、NTSC方式のフレーム周波数Ffrと同期していないので、露光が照明光の滅のタイミングに入り込んでしまっても、それから抜け出し易いので、滅の照明光が数秒間続いても撮像されることは避けられる。
【0051】
図7は、周期Toで明滅する照明光と、ローリングシャッターで、プログレッシブ読出しの撮像素子の露光タイミングによる信号機の映り方を示したものである。図7の左側では、露光が照明光の滅のタイミングに入り込んでいるので、信号機の色が撮像されないが、右側では、露光が照明光の滅のタイミングから外れているので、信号機の色が(例えば、青)が撮像される。
【0052】
次に、図8に、隣り合うフレームのサンプリング周期を不定にして、かつ、それらを平均してNTSC方式(1秒間に30フレーム)に対応させる場合を示す。この場合、撮像素子102内のセンサレジスタのパラメータ値はフレーム毎に変化することとなる。
【0053】
図8の1番上のグラフは、図6と同様に、周期Toで明滅する照明光(例えば、60Hzの信号機)の光量変化を表わしている。該グラフの凸部の部分が1番明るい状態(明)、谷の部分が暗い状態(滅)である。ここでも、消灯期間をtoとする。
【0054】
図8(a)〜(d)において、tiが露光時間、Tf,Tf’,Tf”はフレームのサンプリング周期である。ここで、TfはNTSC方式のサンプリング周期で、Tf’,Tf”はNTSC方式のサンプリング周期から短時間側または長時間側にずらした周期である。ただし、NTSC方式に対応させるため、1秒間に30フレームを出力できるようにする。
【0055】
図8(a)および(b)は、グローバルシャッターで、プログレッシブ読出しの撮像素子の露光タイミングを表わしている。(a)はサンプリング周期を一定(Tf)にして、撮像素子を駆動する場合、(b)はサンプリング周期を不定(Tf’,Tf”など)にして、撮像素子を駆動する場合である。(a)の場合、露光が照明光の滅のタイミングに入り込んでしまうと、滅の照明光が数秒間続いて撮像される。一方、(b)の場合は、露光が照明光の滅のタイミングに入り込んでしまっても、滅のタイミングから抜け出し易いので、滅の照明光が数秒間続いて撮像されることは避けられる。しかも、隣り合うフレームのサンプリング周期を不定にし、かつ、それらを平均して、1秒間に30フレームを出力するようにすることで、NTSC方式に対応させることができる。
【0056】
同様のことは、ローリングシャッターでもいえる。図8(c)および(d)は、ローリンナグシャッターで、プログッレシブ読出しの撮像素子の露光タイミングを表わしている。ローリングシャッターは、グローバルシャッターと異なり、行毎に独立して露光する。先の図6(c)および(d)と同様に、図8(c)および(d)でも、1行目、2行目、3行目、…というように露光時間が少しずつ長時間側に移行していることを表わしている。図中の斜線部分で露光した行は、その行に明滅する照明光が移している場合、滅の状態で撮像されてしまう。(c)がサンプリング周期を一定(Tf)にして、撮像素子を駆動する場合、(d)はサンプリング周期を不定(Tf’,Tf”など)にして、撮像素子を駆動する場合である。(c)の場合、露光が照明光の滅のタイミングに入り込んでしまうと、滅の照明光が数秒間続いて撮像される。一方、(d)の場合は、露光が照明光の滅のタイミングに入り込んでしまっても、滅のタイミングから抜け出し易いので、滅の照明光が数秒間続いて撮像されることは避けられる。しかも、隣り合うフレームのサンプリング周期を不定にし、かつ、それらを平均して、1秒間に30フレームを出力するようにすることで、NTSC方式に対応させることができる。
【0057】
さて、NTSC方式のフレーム周波数Ffrから外れたフレーム周波数Ffsで撮像素子102からプログレッシブ読出しされた画像データは、そのままフレームメモリ105にプログレッシブに書込まれ、該フレームメモリ105からNTSC方式のフレーム周波数でインタレースに読出される。これにより、NTSC方式の表示装置や画像レコーダをそのまま利用できる。しかし、フレームメモリ105に1フレームの画像データを書込む時間とフレームメモリ105から1フレームの画像データを読出す時間が異なることにより、インタレース方式に特有なコムノイズが発生する。以下、これについて具体的に説明する。
【0058】
初めに、NTSC方式のフレーム周波数Ffrでフレームメモリ105へプログレッシブ書込みを行い、同じくNTSC方式のフレーム周波数Ffrでフレームメモリ105からインタレース読出しを行う場合について説明する。この場合、フレームメモリ105を領域A、領域Bというような少なくとも2つの領域に分け(ダブルバッファ)、各領域を書込み領域・読出し領域とし、その役割を順次切り替えるようにすると、コムノイズは発生しない。
【0059】
図9は、この場合の領域A、領域Bの書込み・読出しの遷移及び出力画像(受け手側)の状態を示したものである。ここで、書込みは、30フレーム/秒、プログレッシブであり、読出しは60フィールド/秒、インタレースである。なお、図中の同じ紋様は撮像素子102から出力される同じフレームの画像データであることを表わしている。これは以後の各図面でも同様である。
【0060】
図9の場合、フレームメモリ105の一方の領域に1フレームの画像データを書込む時間と他方の領域から1フレーム(奇数フィールド+偶数フィールド)の画像データを読出す時間が同じであるため、書込みスタートと読出しスタートのタイミングを一度合わせれば(例えば(a))、書込みエンドと読出しエンドが永久的に揃う。したがって、書込みエンドのタイミングで、書込み領域と読出し領域を切り替えることができる。例えば、領域Aへの書込みが終了したなら、領域Bへの書込みを始め、領域Aから読出しを始める(例えば(d))。これにより、常に同一フレームの奇数フィールドと偶数フィールドからなるフレームを出力することができるので、コムノイズが発生しない(例えば(c),(e))。
【0061】
次に、NTSC方式のフレーム周波数Ffrから外したフレーム周波数Ffsでフレームメモリ105へプログレッシブ書込みを行い、NTSC方式のフレーム周波数Ffrでフレームメモリ105からインタレース読出しを行う場合について説明する。この場合、フレームメモリ105をダブルバッファとしてもコムノイズが発生する。
【0062】
まず、Ffs<Ffrとした場合、すなわち、1フレームの画像データの読出し時間に対して1フレームの画像データの書込み時間が長い場合について説明する。
【0063】
図10は、この場合のダブルバッファ(領域A、領域B)への書込み・読出しのタイミングチャートを示したものである。いま、図10の点線、すなわち、領域Aからの読出しが終了したタイミングに注目する。領域Aからの読出しが終わったので、書込み・読出し領域を切り替えて、領域Bから読出しを開始し、領域Aへの書込みを開始したい。しかし、この時点では、領域Bでは書込みが終わっていない。このため、領域Aから再び読出し(インタレース)を行い、領域Bの書込みが終了した時点で、読出し・書込み領域を切り替えて、領域Bから読出しを開始し、領域Aへの書込みを開始することとなる。この場合、出力画像に異なるフレームの奇数フィールド行、偶数フィールド行を混在したコムノイズが発生する。注目する読出し領域と書込み領域の関係が逆の場合でも同様である。
【0064】
図11は、上記Ffs<Ffrの場合、すなわち、1フレームの画像データの読出し時間に対して、1フレームの画像データの書込み時間が長い場合のダブルバッファ(領域A、領域B)の書込み・読出しの遷移及び出力画像(受け手側)の状態を示したものである。なお、図11では、読出しはNTSC方式対応に30フレーム/秒、インタレース読出しとし、これに対して、書込みは27フレーム/秒、プログレッシブ書込みとした場合を示している。
【0065】
いま、領域Aへのプログレッシブ書込みを開始し、同時に領域Bからインタレース読出しを開始して(a)、領域Bからの読出しが終了した時点に注目する(c)。この時、領域Aでは、また、書込みが行われている最中である。このため、領域Bから再びインタレース読出しを開始し、領域Aの書込みが終了した時点で(d)、書込み・読出し領域を切り替え、領域Bを書込み、領域Aを読出しとする。この時、領域Aからは、(d)の状態以降のインタレース読出しが継続して行われることとなる(e)。この結果、1フレームの画像データが読出された時点での出力画像は(f)のようになる。すなわち、コムノイズが発生する。
【0066】
次に、Ffs>Ffrとした場合、すなわち、1フレームの画像データの読出し時間に対して1フレームの画像データの書込み時間が短い場合について説明する。
【0067】
図12は、この場合のダブルバッファ(領域A、領域B)への書込み・読出しのタイミングチャートを示したものである。いま、図12の点線、すなわち、領域Bへの書込みが終了したタイミングに注目する。領域Bへの書込みが終わったので、書込み・読出し領域を切り替えて、領域Aへの書込みを開始し、領域Bから読出しを開始することとなる。しかし、この時点では、領域Aでは読出しが行われている最中である。この状態で書込み・読出し領域を切り替えると、先のFfs<Ffrの場合と同様に、出力画像に、異なるフレームの奇数フィールド行、偶数フィールド行が混在したコムノイズが発生する。注目する書込み領域と読出し領域の関係が逆の場合でも同様である。
【0068】
図13は、上記Ffs>Ffrの場合、すなわち、1フレームの画像データの読出し時間に対して、1フレームの画像データの書込み時間が短い場合のダブルバッファ(領域A、領域B)の書込み・読出しの遷移及び出力画像(受け手側)の状態を示したものである。なお、図13では、読出しはNTSC方式対応に30フレーム/秒、インタレース読出しとし、これに対して、書込みは33フレーム/秒、プログレッシブ書込みとした場合を示している。
【0069】
いま、領域Aへのプログレッシブ書込みを開始し、同時に領域Bからのインタレース読出しを開始して(a)、領域Aへの書込みが終了した時点に注目する(b)。この時、領域Bでは、まだ読出しが行われている最中である。詳しくは、奇数フィールドの読出しは終了しているが、偶数フィールドが、まだ、読出し中である。しかし、領域Aへの書込みが終了したので、書込み・読出し領域を切り替え、領域Bを書込み、領域Aを読出しとする。この時、領域Aからは(b)の状態以降のインタレース読出しが継続して行われることとなる。この結果、1フレームの画像データが読出された時点での出力画像は(c)のようになる。すなわち、コムノイズが発生する。
【0070】
図14に出力画像の一例を示す。図14(a)は、NTSC方式のフレーム周波数Ffrで撮像素子を駆動し、該撮像素子からの出力画像データをフレームメモリにプログレッシブに書込み、該フレームメモリから同じくNTSC方式のフレーム周波数Ffrでインタレースに読出した場合の画像であり、コムノイズは発生していない。一方、図14(b)は、NTSC方式のフレーム周波数から外れたフレーム周波数Ffs(ここでは、Ffs<Ffr)で撮像素子を駆動し、該撮像素子からの出力画像データをフレームメモリにプログレッシブに書込み、該フレームメモリからNTSC方式のフレーム周波数Ffrでインタレースに読出した場合の画像であり、該画像の一部でコムノイズが発生していることが分かる。
【0071】
本発明は、このように撮像素子からNTSC方式のフレーム周波数Ffrから外したフレーム周波数Ffsで画像データを取り込んでフレームメモリにプログレッシブに書込み、フレームメモリからNTSC方式のフレーム周波数Ffrでインタレースに読出す場合に、インタレース方式に特有なコムノイズの発生を防止することにある。以下、その仕掛け・構成について詳述する。
【0072】
本発明では、フレームメモリ105を領域A、領域B、領域Cというように少なくとも3つの領域に分け(トリプルバッファ)、各領域を書込み領域・読出し領域として、その役割を順次切り替えるようにする。
【0073】
ここでは、書込み領域の移行は、領域A→領域C→領域B→領域A・・・の繰り返しとする。読出し領域の移行は、領域B(ステート1)→領域A(ステート2)→領域C(ステート3)→領域B(ステート1)・・・の繰り返しとする。ただし、例えば、ステート1からステート2への移行時、領域Aの書込みが完了していない場合には、領域Bの全データを再読出しする。また、ステート1からステート2への移行時、領域Aの書込みが完了し、さらに領域Cの書込みも完了している場合には、ステート2を飛ばしてステート3へ移行する。これは、ステート2からステート3やステート3からステート1への移行時でも同様である。
【0074】
図15に、本発明のフレームメモリ105をトリプルバッファ構成とした場合のフレームメモリ105から画像データを読出す際の処理フローチャートを示す。以下、ステート1について説明するが、ステート2やステート3の場合も同様である。
【0075】
いま、領域Bからデータ読出し(インタレース読出し;以下同様)を開始し(ステップ1)、該領域Bから全データの読出しが終了した時(ステップ2)、領域Aのデータ書込み(プログレッシプ書込み;以下同様)が完了しているか確認する(ステップ3)。ここで、領域Aのデータ書込みが完了していない場合、領域Bの全データを再度読出し(ステップ1,2)、再びステップ3に進む。
【0076】
ステップ3で領域Aのデータ書込み完了が確認された場合、次に領域Cのデータ書込みが完了しているか確認する(ステップ4)。そして、領域Cのデータ書込みが完了していない場合にはステート2に移行して、領域Aからデータ読出しを開始する(ステップ5)。また、領域Cのデータ書込みが完了している場合には、ステート2を飛ばしてステート3に移行し、領域Cからのデータ読出しを開始する(ステップ9)。
【0077】
このように、フレームメモリを少なくともトリプルバッファ(領域A,領域B,領域C)として、ある領域から全データを読出し(あるいは再読出し)して、その読出し終了時に、次に読出す領域への書込みが完了しているかを確認して、読出し領域の切替えを行うようにうすることで、コムノイズの発生を防ぐことができる。また、ある領域からの読出し終了時に、更に次の次に読出す領域への書込みが完了しているか確認して、書込みが完了していれば、当該領域へ読出し領域を切り替えることで、最新の画像データを提供できる。なお、フレームメモリは少なくともトリプルバッファとする必要があるが、もちろん、4つ以上のメモリ領域を持っていても構わない。
【0078】
図15の処理フローチャートは、書込み時間と読出し時間の大小関係が、書込み時間>読出し時間、あるいは書込み時間<読出し時間のいずれの場合でも対処可能である。以下、それぞれの場合について詳述する。
【0079】
初めに、書込み時間(書込み周期)>読出し時間(読出し周期)の場合について説明する。これは、撮像素子101からNTSC方式のフレーム周波数Ffrより低いフレーム周波数Ffs(Ffs<Ffr)で画像データを取り込んでフレームメモリ105にプログレッシブに書込み、フレームメモリ105からNTSC方式のフレーム周波数Ffrで読出すケースである。
【0080】
図16は、この場合のトリプルバッファ(領域A、領域B、領域C)への書込み・読出しのタイミングチャートを示したものである。図16において、Svは撮像素子102からの垂直同期信号である。書込み完了信号は、ある領域に書込みが完了するとアサートし、その領域から読出しを開始するとネゲートする。
【0081】
いま、図16のタイミングaに注目する。タイミングaは、ステート1で領域Bからデータ読出しが終了した時点である(図15のステップ2)。図15の処理フローに従い、領域Aにデータ書込みが完了しているか確認すると(図15のステップ3)、書込み完了信号がネゲートしていることから分かるように、領域Aへの書込みは未完了である。そこで、再び領域Bから読出しを開始する(図15のステップ1)。
【0082】
次に、図16のタイミングbに注目する。タイミングbは、領域Bから2度目の読出しが終了した時点である(図15のステップ2)。図15の処理フローに従い、再び領域Aに書込みが完了しているか確認すると(図15のステップ3)、書込み完了信号がアサートしていることから分かるように、領域Aに書込みが完了している。そこで、図15の処理フローに従い、更に領域Cに書込みが完了しているか確認すると(図15のステップ4)、領域Cは書込みの最中であるため、領域Aから読出しを開始する(図15のステップ5)。
【0083】
このようにすると、領域Bに書込んだデータを2度読出しているので、数フレームに1回同じ画像を出力することになるが、次に読出す領域の書込み終了を待ってから読出し領域を切り替えることで、フレームメモリの1フレームの書込み時間が1フレームの読出し時間より長い場合でも、同一フレームの奇偶フレーム画像からなるフレームを出力することが可能であり、コムノイズの発注を防ぐことができる。
【0084】
図17(A)及び図17(B)は、上記書込み時間(書込み周期)>読出し時間(読出し周期)の場合のトリプルバッファ(領域A、領域B、領域C)の書込み・読出しの遷移及び出力画像の状態を示したものである。ここでも、読出しはNTSC方式対応に30フレーム/秒、インタレース読出しとし、これに対して、書込みは27フレーム/秒、プログレッシブ書込みとした例を示している。
【0085】
いま、(e)に注目する。これは、(a)から(d)と、ステート1→ステート2→ステート3を何度か繰り返してステート1に戻った場合である。(e)は、領域Bから奇数・偶数フィールドの全データ(1フレーム)の読出しが終了した状態を表わしている。この時、領域Aは、また、書込みの最中である。そこで、領域Bから再び読出しを開始する(f)。そして、領域Bからの読出し(再読出し)が終了し、この時、領域Aへの書込みが完了しており、領域Cへの書込みが完了していない場合、領域Aから読出しを開始する(ステート2への移行)。(g)はこの状態を表わしている。
【0086】
図17の(e),(g)に示すように、書込み時間>読出し時間のケースでは、数フレームに1度同じフレームを出力することになるが、コムノイズでの発生を防ぐことができる。
【0087】
次に、書込み時間(書込み周期)<読出し時間(読出し周期)の場合について説明する。これは、撮像素子101からNTSC方式のフレーム周波数Ffrより高いフレーム周波数Ffs(Ffs>Ffr)で画像データを取り込んでフレームメモリ105にプログレッシブに書込み、フレームメモリ105からNTSC方式のフレーム周波数Ffrで読出すケースである。
【0088】
図18は、この場合のトリプルバッファ(領域A、領域B,領域C)への書込み・読出しのタイミングチャートを示したものである。図18において、Svは撮像素子102からの垂直同期信号である。書込み完了信号は、ある領域に書込みが完了するとアサートし、その領域から読出しを開始するとネゲートする。
【0089】
いま、図18のタイミングbに注目する。タイミングbは、ステート1で領域Bから読出しが完了した時点である(図15のステップ2)。図15の処理フローに従い、領域Aに書込みが完了しているか確認すると(図15のステップ3)、領域Aへの書込みは完了している。通常なら読出し領域を領域Aに切り替えるが、(ステート2に移行)、図15の処理フローに従い、更に領域Cへの書込みが完了しているか確認する(ステップ4)。図18では、タイミングbより前のタイミングaで、領域Cへの書込みが完了している。そこで、領域Aを飛ばし、読出し領域を領域Cに切り替えて(ステート3に移行)、領域Cから読出しを開始する(図15のステップ5)。
【0090】
このように、書込み時間<読出し時間の場合は、数フレームに1回画像データを間引いて出力することになるが、コムノイズの発生を防ぐことができる。また、画像データを取り込むフレーム周波数FfsとNTSC方式対応のフレーム周波数Ffrの差分を吸収することができる。さらに、領域Cは領域Aより新しい画像データを保存しているので、領域Aを飛ばし領域Cを選択することで、最新の画像データを提供できる。
【0091】
図19(A)及び図19(B)は、上記書込み時間(書込み周期)<読出し時間(読出し周期)の場合のトリプルバッファ(領域A、領域B、領域C)の書込み・読出しの遷移及び出力画像の状態を示したものである。ここでも、読出しはNTSC方式対応に30フレーム/秒、インタレース読出しとし、これに対して、書込みは33フレーム/秒、プログレッシブ書込みとした例を示している。
【0092】
いま、(d)に注目する。これは、(a)から(c)と、ステート1→ステート2→ステート3を何度か繰り返してステート1に戻った場合である。(d)は、領域Bから奇数・偶数フィールドの全データ(1フレーム)の読出しが終了した状態を表わしている。この時、領域Aへの書込みは完了し(c)、さらに領域Cへの書込みも完了している(d)。そこで、領域Aを飛ばし、領域Cから読出しを開始する(ステート3へ移行)。(e)はこの状態を表わしている。なお、(e)は、領域Cから奇数・偶数フィールドの全データ(1フレーム)の読出しが終了した状態を表わし、さらに領域Bへの書込みも完了した状態を表わしている。
【0093】
図19の(d),(e)に示すように、書込み時間<読出し時間のケースでは、数フレームに1度画像データを間引いて出力することになるが、コムノイズの発生を防ぐことができる。
【0094】
図15の処理フローは、図1の制御部106内のアドレス作成部203(図4)が受け持つ。図20に、アドレス作成部203の具体的実装例を示す。ここで、アドレス作成部203はステートマシン1100、アドレス計算部1101及びRAM/IF1102を有する。なお、アドレス計算部1101は図4の座標計算手段204を兼ねている。図中、Svは撮像素子102からのフレーム周波数Ffsに従う垂直同期信号である。Vvは、NTSC方式のフレーム周波数Ffrに従う垂直同期信号であり、出力用垂直水平同期信号作成部202(図4)で作成される。
【0095】
RAM/IF1102は、Svを受け取ると、書込みアドレスo_calram_aを順次指定し、かつ、o_calram_xwe=00を出力する。また、Vvを受け取ると、読出しアドレスo_calram_aを順次指定し、かつ、o_calram_xwe=01を出力する。o_calram_xweはwrite enable信号である(負論理としている)。
【0096】
ステートマシン1100は、図21のように動作(遷移)する。図21において、(a)は書込み時の遷移図であり、(b)は読出し時の遷移図である。(b)中、実線は次の読出し領域の書き込み完了を示し(以下、書込み完了信号1)、破線は次の次の読出し領域の書込み完了を示す(以下、書込み完了信号2)。
【0097】
書込み(WRITE)は、Svの立ち上がりで次の状態に遷移する。それ以外は、次のアドレスにデータを書き込む。例えば、状態B(領域Bに書込み)のときに、Svの立ち上がりで、状態A(領域Aに書込み)に遷移する。出力のo_writeは、00→01となる。Svの立ち上がり以外は、状態Bなら領域Bの次のアドレスにデータを書込む。
【0098】
読出し(READ)は、Vvの立ち上がり時に書込み完了信号がアサートしていたら、次の状態に遷移する。それ以外は、次のアドレスのデータを読出す。全データを読み出してしまったら、現領域内の一番初めのアドレスに戻り、順次読出す。例えば、状態B(領域Bを読出し)のときに、Vvの立ち上がり時に書込み完了信号1がアサートし、書込み完了信号2がネゲートしていたら、状態A(領域Aを読出し)に遷移する。出力のo_readは、00→01となる。Vvの立ち上がり以外、または、Vvの立ち上がり時に書込み完了信号がネゲートしていたら、例えば、状態Bなら領域Bの次のアドレスのデータを読み出す。領域Bの全データを読み出してしまったら、例えば、領域Bの一番初めのアドレスに戻り、順次読み出す。また、例えば、状態B(領域Bを読出し)のときに、Vvの立ち上がり時に書込み完了信号1がアサートし、さらに書込み完了信号2もアサートしていたら、状態C(領域Cを読み出し)に遷移する。出力のo_readは、00→10となる。
【0099】
アドレス計算部1101は、図22に示す真理値表で動作する。ステートマシン1100からi_writeとi_readを受け取り、RAM/IF1102から、i_addrとi_xweを受け取る。i_writeはどの領域に書込むかを示し、i_readはどの領域から読出すかを示し、i_addrはメモリのアドレスであり、i_xweはメモリに対する書込み/読出しの指定である。図22のように、i_writeおよびi_readで指定する領域によって、i_addrをアレンジして、フレームメモリ105のアドレスを指定する。
【0100】
図23に、本発明に係る画像撮像装置の別の実施形態(実施形態2)の全体構成図を示す。本画像撮像装置は、光学系101、撮像素子102、処理部103、NTSCエンコーダ104、及び、全体の動作を制御するCPU108などを備えている。処理部103は、その内部にフレームメモリ105、制御部106、発振器107及びPLL109を有する。NTSCエンコーダ104は、NTSC方式の表示装置や画像レコーダに接続されるが、図23では省略してある。ここで、発振器107は、NTSC方式対応のクロック信号発生用の水晶素子であり、PLL109は、発振器107から受け取ったNTSC方式対応のクロック周波数CK(13.5MHz)をそのままスルーで出力し、同時にNTSC方式対応のクロック周波数(13.5MHz)から外れたクロック周波数CK’を作る。PLL109は、制御部が内蔵されているチップにPLLも内蔵することで、新たな部品を増やす必要がないので、コストや基盤の設置面積を考慮することなく、図23の構成を実現できる。
【0101】
PLL109からのNTSC方式対応のクロック周波数CK(13.5MHz)は、当該処理部103内の制御部106に与えられると同時にNTSCエンコーダ104にも与えられる。NTSC方式対応のクロック周波数から外れたクロック周波数(CK’)は、撮像素子102に与えられる。EMC対策において、クロック周波数が小さいほど効果があるため、クロック周波数CK’は、クロック周波数CKより低い周波数であることが望ましい。例えば、CK’=12.65625MHzとする。
【0102】
撮像素子102は、PLL109からNTSC方式対応のクロック周波数から外れたクロック周波数CK’を入力として、該撮像素子102内部のPLL(不図)でn倍の周波数に変換する。以下、変換後の周波数をセンサ出力クロック周波数とする。例えば、n=2の場合、センサ出力クロック周波数は25.3125MHzとなる。通常のNTSCのセンサ出力クロック周波数27MHzと本構成のセンサ出力クロック周波数25.3125MHzを比較すると、本構成のセンサ出力クロック周波数の方が低いので、EMC対策に効果的である。また、センサ出力クロック周波数を通常のNTSCのセンサ出力クロック周波数27MHzの公約数および公倍数以外に設定することもEMC対策に効果がある。撮像素子102は、NTSC方式のフレーム周波数Ffr(約30FPS)に対して所定のオフセット周波数だけオフセットさせたオフセットフレーム周波数Ffs(例えば、27FPS)でもって、光学系101を通して撮影された画像データをプログレッシブに読出し、処理部103に送る。
【0103】
実施形態1で述べたように、撮像素子102はレジスタ(センサレジスタ)を備え、CPU108から該レジスタに設定されるパラメータ値に応じて垂直方向のブランキング期間乃至水平方向のブランキング期間を変更することで、画像データのフレーム周波数がFfs(例えば、27FPS)になるようにしている。撮像素子102は、画像データと共に、このフレーム周波数Ffsの垂直同期信号Svを処理部103に送る。処理部103の動作は実施形態1と同様であるので、説明を省略する。
【符号の説明】
【0104】
101 光学系
102 撮像素子
103 処理部
104 NTSCエンコーダ
105 フレームメモリ
106 制御部
107 発振器
108 CPU
109 PLL
201 フレームメモリ読出し開始トリガ作成部
202 出力用垂直水平同期信号作成部
203 アドレス作成部
204 座標計算手段
【先行技術文献】
【特許文献】
【0105】
【特許文献1】特開2009−181339号公報
【技術分野】
【0001】
本発明は、車両に搭載して用いられる車載カメラなどの画像撮像装置に係り、詳しくは、NTSC方式出力の画像撮像装置に関する。
【背景技術】
【0002】
一般に車載カメラは、NTSC方式の表示装置などに合わせるために、CMOSセンサなどの撮像素子により、撮影コマ数を約30fpsで撮影している。このような車載カメラで路上の例えばLED式信号機を撮影した場合、以下のような問題が発生する。
【0003】
LED式信号機は、商用交流電源を全波整流した駆動電圧で駆動されているので、目視では確認することができないが、信号の点灯及び消灯が微小時間で周期的に繰り返されている。そのため、あるフレームにおいて、撮像素子の電荷蓄積時間と信号の消灯期間とが重なった場合には、そのフレームに関しては、実際には赤、青、緑のいずれかが点灯状態であっても消灯状態として撮像されることとなる。そして、このようなフレームが連続すると、消灯状態の信号機が撮影された映像が数十フレームにもわたって出力されることになる。これは、ドライブレコーダにおいて特に深刻な問題である。ドライブレコーダは、車載カメラにより撮影された映像を記録しておくもので、事故分析を行う際などに広く用いられるが、事故・ヒヤリ発生時の信号機の正確な状態が判別できないと、事故処理における責任判別等に支障が生じてしまう。
【0004】
上記のような問題に対処するため、撮像素子のフレーム周波数をNTSC方式のフレーム周波数に対して所定のオフセット周波数だけオフセットさせたフレーム周波数(オフセットフレーム周波数)に設定することが知られている(例えば、特許文献1参照)。これによれば、LED方式信号機などを撮影しても、点灯時、消灯状態の映像が数十フレームにわたって出力されることはなくなるが、映像信号のフレーム周波数はNTSC方式のフレーム周波数から外れているため、このままでは、NTSC方式の表示装置に表示することができない。
【0005】
この対策としては、NTSC方式のフレーム周波数から外したフレーム周波数(オフセットフレーム周波数)で、撮像素子から取り込んだ画像データをフレームメモリに保存し、該フレームメモリからNTSC方式のフレーム周波数で読出し、表示装置に出力することが考えられる。しかしながら、これには、以下のような問題が新たに発生する。
【0006】
通常、撮像素子からの画像データの読出しはプログレッシブ方式で行われる。一方、NTSC方式の表示装置はインタレース方式を採用している。そのため、上記方法では、撮像素子から読出された画像データをプログレッシブ方式でフレームメモリに書込み、該フレームメモリからインタレース方式で読出すこととなる。この場合、フレームメモリに1フレームの画像データを書込む時間とフレームメモリから1フレームの画像データを読出す時間が異なるため、フレームメモリをダブルバッファとしても、インタレース方式に特有なコムノイズが発生する。コムノイズとは、異なるフレームの奇数フィールドと偶数フィールドからなるフレーム画像に発生する櫛歯状の画像ずれのことである。
【発明の概要】
【発明が解決しようとする課題】
【0007】
本発明は、LED信号機などの点灯機の点灯時における明滅周期の影響を受け難くし、かつ、NTSC方式の表示装置をそのまま使用できるように、NTSC方式のフレーム周波数から外したフレーム周波数で撮像素子から画像データを読出し、それをプログレッシブ方式でフレームメモリに書込み、該フレームメモリからNTSC方式のフレーム周波数でインタレース方式で読出すようにした撮像装置において、さらにコムノイズの発生を防止することを目的とする。
【0008】
また、本発明は、装置に実装する発振器はNTSC方式におけるクロック信号発生用の発振器のみとし、簡単な構成でNTSC方式のフレーム周波数から外れたフレーム周波数で撮像素子から画像データを読出しできるようして、低コストな撮像装置の提供を目的とする。
【課題を解決するための手段】
【0009】
請求項1の発明は、被写体の光学像を結像する光学系と、前記光学系により結像される光学像を撮像し、NTSC方式のフレーム周波数Ffrから外れたフレーム周波数Ffsで画像データを出力する撮像素子と、前記画像データを格納するフレームメモリと、前記撮像素子から出力される画像データを前記フレームメモリにプログレッシブに書込み、該フレームメモリからNTSC方式のフレーム周波数Ffrでインタレースに読み出す制御部とを有する画像撮像装置であって、前記フレームメモリを少なくとも3つの領域に分け、前記制御部は、前記フレームメモリの各領域を書込み領域・読出し領域として、その役割を順次切り替え、各領域に1フレームの画像データをプログレッシブに順次書込み、各領域から1フレームの画像データをインタレースに順次読み出すことを特徴とする。
【0010】
請求項2の発明は、請求項1に記載の画像撮像装置において、前記制御部は、ある領域から1フレームの画像データの読出しが終了した時点で、次に読出す領域に1フレームの画像データの書込みが完了しているか判別し、完了していなければ、いま読出した領域から再度、1フレームの画像データを読出すことを特徴とする。
【0011】
請求項3の発明は、請求項2に記載の画像撮像装置において、前記制御部は、次に読出す領域に1フレームの画像データの書込みが完了していれば、次の次に読出す領域に1フレームの画像データの書込みが完了しているか判別し、完了していなければ、次に読出す領域から画像データの読出しを開始し、完了していれば、次に読出す領域を飛ばして、次の次に読出す領域から画像データの読出しを開始することを特徴とする。
【0012】
請求項4の発明は、請求項1乃至3のいずれか1項に記載の画像撮像装置において、前記制御部は、フレームメモリから画像データを読出す際に、所定の画像変換処理を行うことを特徴とする。
【0013】
請求項5の発明は、請求項1乃至4のいずれか1項に記載の画像撮像装置において、前記撮像素子は、一定のフレーム周期のフレーム周波数Ffsで画像データを出力することを特徴とする。
【0014】
請求項6の発明は、請求項1乃至4のいずれか1項に記載の画像撮像装置において、前記撮像素子は、隣り合うフレーム周期は不定で、かつ、それらを平均するとNTSC方式のフレーム周期となる、可変のフレーム周波数Ffsで画像データを出力することを特徴とする。
【0015】
請求項7の発明は、請求項1乃至6のいずれか1項に記載の画像撮像装置において、NTSC方式対応のクロック信号発生用の単一の発振器を有し、前記制御部は、前記発振器からのNTSC方式対応のクロック周波数のクロックを基に、NTSC方式のフレーム周波数Ffrでのフレームメモリからのインタレース読出しを制御し、前記撮像素子は、前記発振器からNTSC方式対応のクロック周波数のクロックを入力して動作し、垂直方向のブランキング期間乃至水平方向のブランキング期間を変更することで、NTSC方式のフレーム周波数Ffrから外れたフレーム周波数Ffsで画像データを出力することを特徴とする。
【0016】
請求項8の発明は、請求項7に記載の画像撮像装置において、前記撮像素子はレジスタを有し、該レジスタに設定されるパラメータ値に従って垂直方向のブランキング期間乃至水平方向のブランキング期間を変更することを特徴とする。
【0017】
請求項9の発明は、請求項1乃至6のいずれか1項に記載の画像撮像装置において、NTSC方式対応のクロック信号発生用の単一の発振器を有し、前記制御部は、前記発振器からのNTSC方式対応のクロック周波数のクロックを基に、NTSC方式のフレーム周波数Ffrでのフレームメモリからのインタレース読出しを制御し、前記撮像素子は、前記発振器からNTSC方式対応のクロック周波数から外れたクロックを入力して動作することを特徴とする。
【0018】
請求項10の発明は、請求項9に記載の画像撮像装置において、前記撮像素子は、前記NTSC方式対応のクロック周波数から外れたクロックを前記撮像素子内部のPLLでn倍の周波数に変換し、変換後の周波数で画像データを出力することを特徴とする。
【0019】
請求項11の発明は、請求項10に記載の画像撮像装置において、前記クロックおよび変換後のクロックは、NTSC方式対応のクロック周波数の公約数および公倍数以外に設定することを特徴する。
【0020】
請求項12の発明は、請求項11に記載の画像撮像装置において、前記撮像素子は、垂直方向のブランキング期間乃至水平方向のブランキング期間を変更することで、NTSC方式のフレーム周波数Ffrから外れたフレーム周波数Ffsで画像データを出力することを特徴とする。
【0021】
請求項13の発明は、請求項8または12記載の画像撮像装置において、装置全体を制御するためのCPUを有し、該CPUが前記撮像素子内のレジスタのパラメータ値を設定することを特徴とする。
【0022】
請求項14の発明は、請求項1乃至13のいずれか1項に記載の画像撮像装置において、前記撮像素子は、画像データと共にフレーム周波数Ffrの垂直同期信号を出力し、前記制御部は、前記撮像素子からの垂直同期信号を基にフレームメモリの読出しタイミングを制御することを特徴とする。
【発明の効果】
【0023】
本発明では、LED信号機などの点灯機の点灯時における明滅周期の影響を受け難くし、かつ、NTSC方式の表示装置をそのまま使用できるように、NTSC方式のフレーム周波数から外したフレーム周波数で撮像素子から画像データを読出し、それをプログレッシブ方式でフレームメモリに書込み、該フレームメモリからNTSC方式のフレーム周波数でインタレース方式で読出すようにした撮像装置において、フレームメモリを少なくとも3つの領域に分け、各領域を書込み領域・読出し領域として、その役割を順次切り替えるようにし、ある領域からの読出し終了時に、次に読み出す領域への書込みが完了しているか確認して、読出し領域の切替えを行うことで、インタレース方式に特有のコムノイズの発生を防止することができる。
【0024】
また、本発明の画像撮像装置では、装置に実装するクロック発振器はNTSC方式対応のクロック信号発生用の発振器のみとし、撮像素子を、該発振器からのNTSC方式対応のクロック周波数のクロックで動作せしめ、垂直方向のブランキング期間乃至水平方向のブランキング期間を変更して、NTSC方式のフレーム周波数から外れたフレーム周波数で画像データを出力するようにすることで、低コストな画像撮像装置を提供できる。
【0025】
なお、本発明の画像撮像装置の上記以外の種々の作用効果は、次の実施形態の説明で明らかになる。
【図面の簡単な説明】
【0026】
【図1】本発明の画像撮像装置の一実施形態の全体構成図。
【図2】従来の撮像素子からの出力信号とフレームメモリからの読出し信号の関係を示す図。
【図3】本発明の撮像素子からの出力信号とフレームメモリからの読出し信号の関係を示す図。
【図4】図1中の制御部の詳細構成図。
【図5】図4中の座標計算手段の処理イメージを示す図。
【図6】周期Toで明滅する照明光と撮像素子の露光タイミングを示す図(その1)。
【図7】周期Toで明滅する照明光とロータリングシャッターの撮像素子の露光タイミングによる信号機の映り方を示す図。
【図8】周期Toで明滅する照明光と撮像素子の露光タイミングを示す図(その2)。
【図9】従来のダブルバッファの場合の書込み・読出しの遷移及び出力画像の状態を示す図(書込み時間=読出し時間)。
【図10】ダブルバッファの場合の書込み・読出しタイミング図(書込み時間>読出し時間)。
【図11】ダブルバッファの場合の書込み・読出しの遷移及び出力画像の状態を示す図(書込み時間>読出し時間)。
【図12】ダブルバッファの場合の書込み・読出しタイミング図(書込み時間<読出し時間)。
【図13】ダブルバッファの場合の書込み・読出しの遷移及び出力画像の状態を示す図(書込み時間<読出し時間)。
【図14】コムノイズ発生の出力画像の具体例を示す図。
【図15】本発明のトリプルバッファとした場合の画像データ読出しの処理フロー例を示す図。
【図16】トリプルバッファの場合の書込み・読出しタイミング図(書込み時間>読出し時間)。
【図17A】トリプルバッファの場合の書込み・読出しの遷移及び出力画像の状態を示す図(書込み時間>読出し時間)。
【図17B】図17Aの続きの図である。
【図18】トリプルバッファの場合の書込み・読出しタイミング図(書込み時間<読出し時間)。
【図19A】トリプルバッファの場合の書込み・読出しの遷移及び出力画像の状態を示す図(書込み時間<読出し時間)。
【図19B】図19Aの続きの図である。
【図20】図4のアドレス作成部の具体的実装例を示す図。
【図21】図20中のステートマシンの状態遷移図。
【図22】図20中のアドレス計算部の動作を説明する真理値表。
【図23】本発明の画像撮像装置の別の実施形態の全体構成図。
【発明を実施するための形態】
【0027】
以下、本発明の実施の形態について図面を参照して詳しく説明する。
【0028】
図1に、本発明に係る画像撮像装置の一実施形態(実施形態1)の全体構成図を示す。本画像撮像装置は、光学系101、撮像素子102、処理部103、NTSCエンコーダ104、及び、全体の動作を制御するCPU108などを備えている。処理部103は、その内部にフレームメモリ105、制御部106、発振器107を有する。NTSCエンコーダ104は、NTSC方式の表示装置や画像レコーダに接続されるが、図1では省略してある。ここで、発振器107は、NTSC方式対応のクロック信号発生用の水晶素子であり、具体的には、クロック周波数は13.5MHzである。該発振器107のクロック(CK)は、当該処理部10内の制御部106に与えられると同時にNTSCエンコーダ104に与えられ、さらに、撮像素子102にも与えられる。
【0029】
撮像素子102は、発振器107からNTSC方式対応のクロック周波数(13.5MHz)のクロックを入力として、NTSC方式のフレーム周波数Ffr(約30FPS)に対して所定のオフセット周波数だけオフセットさせたオフセットフレーム周波数Ffs(例えば、27FPS)でもって、光学系101を通して撮影された画像データをプログレッシブに読出し、処理部103に送る。具体的には、撮像素子102はレジスタ(センサレジスタ)を備え、CPU108から該レジスタに設定されるパラメータ値に応じて垂直方向のブランキング期間乃至水平方向のブランキング期間を変更することで、画像データのフレーム周波数がFfs(例えば、27FPS)になるようにしている。撮像素子102は、画像データと共に、このフレーム周波数Ffsの垂直同期信号Svを処理部103に送る。
【0030】
撮像素子102から出力される画像データは、そのフレーム周波数Ffs(例えば、27FPS)のタイミングで、処理部103内のフレームメモリ105にプログレシッブに順次書込まれる。そして、このフレームメモリ105に書込まれた画像データは、制御部106の制御下で、NTSC方式のフレーム周波数Ffr(約30FPS)のタイミングでインタレースに順次読出される。制御部106は、フレームメモリ105に対して読出しアドレスを指定すると共に、撮像素子102からの垂直同期信号Svを基にフレームメモリ105の読出しタイミングを制御し、また、発振器107からNTSC方式対応のクロック周波数(13.5MHz)のクロックを受け取って、NTSC方式のフレーム周波数Ffrのタイミングによるフレームメモリ105からのインタレース読出しを制御する。この制御部106の構成については後述する。
【0031】
フレームメモリ105から読出された画像データは、NTSCエンコーダ104でデジタル・アナログ変換処理を施されてNTSC方式の映像信号に変換され、図示しない表示装置やレコーダに送られる。
【0032】
図1の構成のように、NTSC方式のフレーム周波数Ffrに対して所定のオフセット周波数だけオフセットさせたオフセットフレーム周波数Ffsで撮像素子102から画像データを取り込み、フレームメモリ105に書込み(プログレッシブ)、該フレームメモリからNTSC方式のフレーム周波数Ffrで読出す(インタリーブ)ことで、LED信号機などの点灯機の点灯時における明滅周期の影響を受け難くし、かつ、NTSC方式の表示装置などをそのまま使用可能な画像撮像装置を実現することができる。コムノイズ発生の対策について後述する。
【0033】
また、撮像素子102は、処理部103内に実装される発振器107からNTSC方式対応のクロック周波数のクロック(CK)を入力して、当該撮像素子102から出力される画像データが、NTSC方式のフレーム周波数Ffrから外れたフレーム周波数Ffsになるようにしたことで、別途、該フレーム周波数Ffs用の発振器が不要であり、低コストな撮像装置を実現することができる。以下、これについて詳述する。
【0034】
図2は、従来の撮像素子からの出力信号とフレームメモリからの読出し信号の関係を示したもので、図2(A)は撮像素子からの出力信号(プログレッシブ)であり、図2(B)はフレームメモリからの読出し信号(インタレース)である。すなわち、従来は、NTSC方式に合わせて、撮像素子からの出力信号とフレームメモリからの読出し信号との垂直方向のブランキング期間を同じにしている。このため、撮像素子から出力される画像データを、NTSC方式のフレーム周波数Ffrから外れたフレーム周波数Ffsになるようにするためには、フレームメモリからの画像データ読出し用のNTSC方式対応のクロック信号発生用の発振器(13.5MHz)とは別に、そのクロック周波数を異にする発振器(例えば、12.2MHz)を、撮像素子からの画像データ読出しのために用意する必要がある。本発明の実施形態では、このような発振器は不要となる。
【0035】
図3は、本発明の実施形態における撮像素子からの出力信号とフレームメモリからの読出し信号の関係を示したもので、図3(a)は撮像素子からの出力信号(プログレッシブ)であり、図3(b)はフレームメモリからの読出し信号(インタレース)である。ここで、フレームメモリからの読出し信号は、図2(b)と同様である。一方、撮像素子からの出力信号は、垂直方向のブランキング期間が変更されている。すなわち、本実施形態では、NTSC方式対応のクロック信号発生用の発振器107からの同一のクロック(13.5MHz)でもって、撮像素子102からの画像データ読出しとフレームメモリ105からの画像データ読出しを実施し、この時、撮像素子102からの画像データ読出しの垂直方向のブランキング期間を変更することで、該撮像素子102の出力画像データをNTSC方式のフレーム周波数Ffrから外れたフレーム周波数Ffsになるようにしている。先に述べたように、撮像素子102はレジスタ(センサレジスタ)を備え、CPU108から該レジスタに設定されるパラメータ値に応じて垂直方向のブランキング期間を変更する。図3の例は、Ffs<Ffrとする場合であるが、センサレジスタのパラメータ値を変更することで、Ffs>Ffrとすることも可能である。また、CPU108によりフレームごとにセンサレジスタのパラメータ値を逐次変更することで、後述するように、隣り合うフレーム周期を不定にして、かつ、それらを平均すると、NTSC方式のフレーム周波数Ffrで撮像素子を駆動することが可能となる。
【0036】
なお、図3では、撮像素子102からの画像データ読出しの垂直方向のブランキング期間を変更するとしたが、水平方向のブランキング期間、あるいは垂直方向と水平方向の両方のブランキング期間を変更して、撮像素子1402の出力画像データをNTSC方式のフレーム周波数Ffrから外れたフレーム周波数Ffsになるようにしてもよい。
【0037】
次に、制御部106の構成動作について説明する。図4に制御部106の詳細構成図を示す。制御部106は、フレームメモリ読出し開始トリガ作成部201、出力用垂直水平同期信号作成部202、アドレス作成部203を有する。なお、アドレス作成部203には、歪み補正や視点変換などのための座標計算手段204を含めてもよい。
【0038】
フレームメモリ読出し開始トリガ作成部201は、撮像素子102から垂直同期信号Svを受け取り、撮像装置の電源投入直後に次のように作動する。なお、撮像素子102はプログレッシブ読出しを想定している。撮像装置の電源投入直後のSvを1つ見送って、2つ目のSvでフレームメモリ読出し開始トリガ(Tr)をアサートする(有効)する。
【0039】
このようにすることで、フレームメモリ105ら画像データが存在しない時点で、フレームメモリ105から画像データを読出すことがないようできる。
【0040】
出力用垂直水平同期信号作成部202は、発振器107からNTSC方式対応のクロック周波数(13.5MHz)のクロックを用いて、フレームメモリ105からの画像読出しがNTSC方式のフレーム周波数Ffr(約30FPS)になるように、垂直同期信号及び水平同期信号を作成する。
【0041】
アドレス作成部203は、発振器107からのクロック(CK)、出力用垂直水平同期信号作成部202からの垂直同期信号及び水平同期信号を基に、フレームメモリ105の読出しアドレスを順次指定し、該フレームメモリ105に書込まれた画像データをNTSC方式のフレーム周波数Ffr(約30FPS)のタイミングで読出していく。
【0042】
ここで、アドレス作成部203は、フレームメモリ105の読出しアドレスを順次指定するのではなく、ある座標変換ルール(例えば、歪み補正、見下ろし画像のような視点変換、中央切出し変換、サイド切出し変換、三面鏡変換など)に従って指定していく座標計算手段204を含めてもよい。
【0043】
図5に座標計算手段204の処理イメージを示す。これは、撮像素子からの画像データ(入力画像)を90°回転変形した画像を出力する例を示したものである。ここで、図5(a)は、ある二つの画素の変換前と変換後の座標上の位置関係を示し、図5(b)は、フレームメモリ105に記憶された入力画像と出力画像上の対応する画素の位置関係を示す。
【0044】
座標計算手段204では、フレームメモリ105からの画像データの読出しの際に、出力画像上の座標(X1,Y1)の画素として、入力画像上の座標(x1,y1)の画素の画素データが読出されるように、読出しアドレスを計算する。また、出力画像の座標(X2,Y2)の画素としては、入力画像上の座標(x2,y2)の画素の画像データが読出されるように読出しアドレスを計算する。この読出しアドレスに基づき、フレームメモリ105の対応するアドレスから画像データを読出すことにより、出力画像として、入力画像を90°回転変形した画像を得ることができる。
【0045】
同様にして、魚眼カメラの画像を変形し、魚眼画像に起因する画像の歪みを補正したり、視点変換に基づいた画像変形により真上から見た画像に変形することができ、車の後方部分を見るバックモニターなどにおいて、ドライバーに見やすい画像を表示することができる。なお、座標計算手段204の構成、処理アルゴリズムは従来から種々提案されているので、詳しい説明は省略する。
【0046】
次に、NTSC方式のフレーム周波数Ffrに対して所定のオフセット周波数だけオフセットさせたフレーム周波数(オフセットフレーム周波数)Ffsで撮像素子102から画像データを読出すことで、LED信号機などの点灯機の点灯時における明滅周期の影響が改善されることを具体的に説明する。
【0047】
図6、図7に、フレームのサンプリング周期をNTSC方式から外した一定の周期で行う場合を示す。この場合、撮像素子102内のセンサレジスタのパラメータ値は一定である。
【0048】
図6において、1番上のグラフは、周期Toで明滅する照明光(例えば、60Hzの信号機)の光量変化を表わしている。該グラフの凸部の部分が1番明るい状態(明)、谷の部分が暗い状態(滅)である。ここで、消灯期間をtoとする。
【0049】
図6(a)および(b)は、グローバルシャッターで、プログレッシブ読出しの撮像素子の露光タイミングを表わしている。図中、tiが露光時間である。(a)が撮像素子を30FPSで駆動する場合、(b)が30FPSから外した場合である。(a)の場合、NTSC方式のフレーム周波数Ffr(29.97Hz)とほぼ同期しているので、露光が照明光の滅のタイミングに入り込んでしまうと、滅の照明光が数秒間続いて撮像される。一方、(b)の場合は、NTSC方式のフレーム周波数Ffrと同期していないので、露光が照明光の滅のタイミングに入り込んでしまっても、それから抜け出しやすいので、滅の照明光が数秒間続いて撮像されることは避けられる。
【0050】
同様のことは、ローリングシャッターでもいえる。図6(c)および(d)は、ローリングシャッターで、プログレッシブ読出しの撮像素子の露光タイミングを表わしている。図中、tiが露光時間である。ローリングシャッターは、グローバルシャッターと異なり、行毎に独立して露光する。図6(c)および(d)では、1行目、2行目、3行目、…というように露光時間が少しずつ長時間側に移行していることを表わしている。(c)が撮像素子を30FPSで駆動する場合、(d)が30FPSから外した場合で、図中の斜線部分で露光した行は、その行に明滅する照明光が映っている場合、滅の状態で撮像されてしまう。(c)の場合、NTSC方式のフレーム周波数Ffr(29.97Hz)とほぼ同期しているので、露光が照明光の滅のタイミングに入り込んでしまうと、滅の照明光が数秒間続いて撮像される。一方、(d)の場合は、NTSC方式のフレーム周波数Ffrと同期していないので、露光が照明光の滅のタイミングに入り込んでしまっても、それから抜け出し易いので、滅の照明光が数秒間続いても撮像されることは避けられる。
【0051】
図7は、周期Toで明滅する照明光と、ローリングシャッターで、プログレッシブ読出しの撮像素子の露光タイミングによる信号機の映り方を示したものである。図7の左側では、露光が照明光の滅のタイミングに入り込んでいるので、信号機の色が撮像されないが、右側では、露光が照明光の滅のタイミングから外れているので、信号機の色が(例えば、青)が撮像される。
【0052】
次に、図8に、隣り合うフレームのサンプリング周期を不定にして、かつ、それらを平均してNTSC方式(1秒間に30フレーム)に対応させる場合を示す。この場合、撮像素子102内のセンサレジスタのパラメータ値はフレーム毎に変化することとなる。
【0053】
図8の1番上のグラフは、図6と同様に、周期Toで明滅する照明光(例えば、60Hzの信号機)の光量変化を表わしている。該グラフの凸部の部分が1番明るい状態(明)、谷の部分が暗い状態(滅)である。ここでも、消灯期間をtoとする。
【0054】
図8(a)〜(d)において、tiが露光時間、Tf,Tf’,Tf”はフレームのサンプリング周期である。ここで、TfはNTSC方式のサンプリング周期で、Tf’,Tf”はNTSC方式のサンプリング周期から短時間側または長時間側にずらした周期である。ただし、NTSC方式に対応させるため、1秒間に30フレームを出力できるようにする。
【0055】
図8(a)および(b)は、グローバルシャッターで、プログレッシブ読出しの撮像素子の露光タイミングを表わしている。(a)はサンプリング周期を一定(Tf)にして、撮像素子を駆動する場合、(b)はサンプリング周期を不定(Tf’,Tf”など)にして、撮像素子を駆動する場合である。(a)の場合、露光が照明光の滅のタイミングに入り込んでしまうと、滅の照明光が数秒間続いて撮像される。一方、(b)の場合は、露光が照明光の滅のタイミングに入り込んでしまっても、滅のタイミングから抜け出し易いので、滅の照明光が数秒間続いて撮像されることは避けられる。しかも、隣り合うフレームのサンプリング周期を不定にし、かつ、それらを平均して、1秒間に30フレームを出力するようにすることで、NTSC方式に対応させることができる。
【0056】
同様のことは、ローリングシャッターでもいえる。図8(c)および(d)は、ローリンナグシャッターで、プログッレシブ読出しの撮像素子の露光タイミングを表わしている。ローリングシャッターは、グローバルシャッターと異なり、行毎に独立して露光する。先の図6(c)および(d)と同様に、図8(c)および(d)でも、1行目、2行目、3行目、…というように露光時間が少しずつ長時間側に移行していることを表わしている。図中の斜線部分で露光した行は、その行に明滅する照明光が移している場合、滅の状態で撮像されてしまう。(c)がサンプリング周期を一定(Tf)にして、撮像素子を駆動する場合、(d)はサンプリング周期を不定(Tf’,Tf”など)にして、撮像素子を駆動する場合である。(c)の場合、露光が照明光の滅のタイミングに入り込んでしまうと、滅の照明光が数秒間続いて撮像される。一方、(d)の場合は、露光が照明光の滅のタイミングに入り込んでしまっても、滅のタイミングから抜け出し易いので、滅の照明光が数秒間続いて撮像されることは避けられる。しかも、隣り合うフレームのサンプリング周期を不定にし、かつ、それらを平均して、1秒間に30フレームを出力するようにすることで、NTSC方式に対応させることができる。
【0057】
さて、NTSC方式のフレーム周波数Ffrから外れたフレーム周波数Ffsで撮像素子102からプログレッシブ読出しされた画像データは、そのままフレームメモリ105にプログレッシブに書込まれ、該フレームメモリ105からNTSC方式のフレーム周波数でインタレースに読出される。これにより、NTSC方式の表示装置や画像レコーダをそのまま利用できる。しかし、フレームメモリ105に1フレームの画像データを書込む時間とフレームメモリ105から1フレームの画像データを読出す時間が異なることにより、インタレース方式に特有なコムノイズが発生する。以下、これについて具体的に説明する。
【0058】
初めに、NTSC方式のフレーム周波数Ffrでフレームメモリ105へプログレッシブ書込みを行い、同じくNTSC方式のフレーム周波数Ffrでフレームメモリ105からインタレース読出しを行う場合について説明する。この場合、フレームメモリ105を領域A、領域Bというような少なくとも2つの領域に分け(ダブルバッファ)、各領域を書込み領域・読出し領域とし、その役割を順次切り替えるようにすると、コムノイズは発生しない。
【0059】
図9は、この場合の領域A、領域Bの書込み・読出しの遷移及び出力画像(受け手側)の状態を示したものである。ここで、書込みは、30フレーム/秒、プログレッシブであり、読出しは60フィールド/秒、インタレースである。なお、図中の同じ紋様は撮像素子102から出力される同じフレームの画像データであることを表わしている。これは以後の各図面でも同様である。
【0060】
図9の場合、フレームメモリ105の一方の領域に1フレームの画像データを書込む時間と他方の領域から1フレーム(奇数フィールド+偶数フィールド)の画像データを読出す時間が同じであるため、書込みスタートと読出しスタートのタイミングを一度合わせれば(例えば(a))、書込みエンドと読出しエンドが永久的に揃う。したがって、書込みエンドのタイミングで、書込み領域と読出し領域を切り替えることができる。例えば、領域Aへの書込みが終了したなら、領域Bへの書込みを始め、領域Aから読出しを始める(例えば(d))。これにより、常に同一フレームの奇数フィールドと偶数フィールドからなるフレームを出力することができるので、コムノイズが発生しない(例えば(c),(e))。
【0061】
次に、NTSC方式のフレーム周波数Ffrから外したフレーム周波数Ffsでフレームメモリ105へプログレッシブ書込みを行い、NTSC方式のフレーム周波数Ffrでフレームメモリ105からインタレース読出しを行う場合について説明する。この場合、フレームメモリ105をダブルバッファとしてもコムノイズが発生する。
【0062】
まず、Ffs<Ffrとした場合、すなわち、1フレームの画像データの読出し時間に対して1フレームの画像データの書込み時間が長い場合について説明する。
【0063】
図10は、この場合のダブルバッファ(領域A、領域B)への書込み・読出しのタイミングチャートを示したものである。いま、図10の点線、すなわち、領域Aからの読出しが終了したタイミングに注目する。領域Aからの読出しが終わったので、書込み・読出し領域を切り替えて、領域Bから読出しを開始し、領域Aへの書込みを開始したい。しかし、この時点では、領域Bでは書込みが終わっていない。このため、領域Aから再び読出し(インタレース)を行い、領域Bの書込みが終了した時点で、読出し・書込み領域を切り替えて、領域Bから読出しを開始し、領域Aへの書込みを開始することとなる。この場合、出力画像に異なるフレームの奇数フィールド行、偶数フィールド行を混在したコムノイズが発生する。注目する読出し領域と書込み領域の関係が逆の場合でも同様である。
【0064】
図11は、上記Ffs<Ffrの場合、すなわち、1フレームの画像データの読出し時間に対して、1フレームの画像データの書込み時間が長い場合のダブルバッファ(領域A、領域B)の書込み・読出しの遷移及び出力画像(受け手側)の状態を示したものである。なお、図11では、読出しはNTSC方式対応に30フレーム/秒、インタレース読出しとし、これに対して、書込みは27フレーム/秒、プログレッシブ書込みとした場合を示している。
【0065】
いま、領域Aへのプログレッシブ書込みを開始し、同時に領域Bからインタレース読出しを開始して(a)、領域Bからの読出しが終了した時点に注目する(c)。この時、領域Aでは、また、書込みが行われている最中である。このため、領域Bから再びインタレース読出しを開始し、領域Aの書込みが終了した時点で(d)、書込み・読出し領域を切り替え、領域Bを書込み、領域Aを読出しとする。この時、領域Aからは、(d)の状態以降のインタレース読出しが継続して行われることとなる(e)。この結果、1フレームの画像データが読出された時点での出力画像は(f)のようになる。すなわち、コムノイズが発生する。
【0066】
次に、Ffs>Ffrとした場合、すなわち、1フレームの画像データの読出し時間に対して1フレームの画像データの書込み時間が短い場合について説明する。
【0067】
図12は、この場合のダブルバッファ(領域A、領域B)への書込み・読出しのタイミングチャートを示したものである。いま、図12の点線、すなわち、領域Bへの書込みが終了したタイミングに注目する。領域Bへの書込みが終わったので、書込み・読出し領域を切り替えて、領域Aへの書込みを開始し、領域Bから読出しを開始することとなる。しかし、この時点では、領域Aでは読出しが行われている最中である。この状態で書込み・読出し領域を切り替えると、先のFfs<Ffrの場合と同様に、出力画像に、異なるフレームの奇数フィールド行、偶数フィールド行が混在したコムノイズが発生する。注目する書込み領域と読出し領域の関係が逆の場合でも同様である。
【0068】
図13は、上記Ffs>Ffrの場合、すなわち、1フレームの画像データの読出し時間に対して、1フレームの画像データの書込み時間が短い場合のダブルバッファ(領域A、領域B)の書込み・読出しの遷移及び出力画像(受け手側)の状態を示したものである。なお、図13では、読出しはNTSC方式対応に30フレーム/秒、インタレース読出しとし、これに対して、書込みは33フレーム/秒、プログレッシブ書込みとした場合を示している。
【0069】
いま、領域Aへのプログレッシブ書込みを開始し、同時に領域Bからのインタレース読出しを開始して(a)、領域Aへの書込みが終了した時点に注目する(b)。この時、領域Bでは、まだ読出しが行われている最中である。詳しくは、奇数フィールドの読出しは終了しているが、偶数フィールドが、まだ、読出し中である。しかし、領域Aへの書込みが終了したので、書込み・読出し領域を切り替え、領域Bを書込み、領域Aを読出しとする。この時、領域Aからは(b)の状態以降のインタレース読出しが継続して行われることとなる。この結果、1フレームの画像データが読出された時点での出力画像は(c)のようになる。すなわち、コムノイズが発生する。
【0070】
図14に出力画像の一例を示す。図14(a)は、NTSC方式のフレーム周波数Ffrで撮像素子を駆動し、該撮像素子からの出力画像データをフレームメモリにプログレッシブに書込み、該フレームメモリから同じくNTSC方式のフレーム周波数Ffrでインタレースに読出した場合の画像であり、コムノイズは発生していない。一方、図14(b)は、NTSC方式のフレーム周波数から外れたフレーム周波数Ffs(ここでは、Ffs<Ffr)で撮像素子を駆動し、該撮像素子からの出力画像データをフレームメモリにプログレッシブに書込み、該フレームメモリからNTSC方式のフレーム周波数Ffrでインタレースに読出した場合の画像であり、該画像の一部でコムノイズが発生していることが分かる。
【0071】
本発明は、このように撮像素子からNTSC方式のフレーム周波数Ffrから外したフレーム周波数Ffsで画像データを取り込んでフレームメモリにプログレッシブに書込み、フレームメモリからNTSC方式のフレーム周波数Ffrでインタレースに読出す場合に、インタレース方式に特有なコムノイズの発生を防止することにある。以下、その仕掛け・構成について詳述する。
【0072】
本発明では、フレームメモリ105を領域A、領域B、領域Cというように少なくとも3つの領域に分け(トリプルバッファ)、各領域を書込み領域・読出し領域として、その役割を順次切り替えるようにする。
【0073】
ここでは、書込み領域の移行は、領域A→領域C→領域B→領域A・・・の繰り返しとする。読出し領域の移行は、領域B(ステート1)→領域A(ステート2)→領域C(ステート3)→領域B(ステート1)・・・の繰り返しとする。ただし、例えば、ステート1からステート2への移行時、領域Aの書込みが完了していない場合には、領域Bの全データを再読出しする。また、ステート1からステート2への移行時、領域Aの書込みが完了し、さらに領域Cの書込みも完了している場合には、ステート2を飛ばしてステート3へ移行する。これは、ステート2からステート3やステート3からステート1への移行時でも同様である。
【0074】
図15に、本発明のフレームメモリ105をトリプルバッファ構成とした場合のフレームメモリ105から画像データを読出す際の処理フローチャートを示す。以下、ステート1について説明するが、ステート2やステート3の場合も同様である。
【0075】
いま、領域Bからデータ読出し(インタレース読出し;以下同様)を開始し(ステップ1)、該領域Bから全データの読出しが終了した時(ステップ2)、領域Aのデータ書込み(プログレッシプ書込み;以下同様)が完了しているか確認する(ステップ3)。ここで、領域Aのデータ書込みが完了していない場合、領域Bの全データを再度読出し(ステップ1,2)、再びステップ3に進む。
【0076】
ステップ3で領域Aのデータ書込み完了が確認された場合、次に領域Cのデータ書込みが完了しているか確認する(ステップ4)。そして、領域Cのデータ書込みが完了していない場合にはステート2に移行して、領域Aからデータ読出しを開始する(ステップ5)。また、領域Cのデータ書込みが完了している場合には、ステート2を飛ばしてステート3に移行し、領域Cからのデータ読出しを開始する(ステップ9)。
【0077】
このように、フレームメモリを少なくともトリプルバッファ(領域A,領域B,領域C)として、ある領域から全データを読出し(あるいは再読出し)して、その読出し終了時に、次に読出す領域への書込みが完了しているかを確認して、読出し領域の切替えを行うようにうすることで、コムノイズの発生を防ぐことができる。また、ある領域からの読出し終了時に、更に次の次に読出す領域への書込みが完了しているか確認して、書込みが完了していれば、当該領域へ読出し領域を切り替えることで、最新の画像データを提供できる。なお、フレームメモリは少なくともトリプルバッファとする必要があるが、もちろん、4つ以上のメモリ領域を持っていても構わない。
【0078】
図15の処理フローチャートは、書込み時間と読出し時間の大小関係が、書込み時間>読出し時間、あるいは書込み時間<読出し時間のいずれの場合でも対処可能である。以下、それぞれの場合について詳述する。
【0079】
初めに、書込み時間(書込み周期)>読出し時間(読出し周期)の場合について説明する。これは、撮像素子101からNTSC方式のフレーム周波数Ffrより低いフレーム周波数Ffs(Ffs<Ffr)で画像データを取り込んでフレームメモリ105にプログレッシブに書込み、フレームメモリ105からNTSC方式のフレーム周波数Ffrで読出すケースである。
【0080】
図16は、この場合のトリプルバッファ(領域A、領域B、領域C)への書込み・読出しのタイミングチャートを示したものである。図16において、Svは撮像素子102からの垂直同期信号である。書込み完了信号は、ある領域に書込みが完了するとアサートし、その領域から読出しを開始するとネゲートする。
【0081】
いま、図16のタイミングaに注目する。タイミングaは、ステート1で領域Bからデータ読出しが終了した時点である(図15のステップ2)。図15の処理フローに従い、領域Aにデータ書込みが完了しているか確認すると(図15のステップ3)、書込み完了信号がネゲートしていることから分かるように、領域Aへの書込みは未完了である。そこで、再び領域Bから読出しを開始する(図15のステップ1)。
【0082】
次に、図16のタイミングbに注目する。タイミングbは、領域Bから2度目の読出しが終了した時点である(図15のステップ2)。図15の処理フローに従い、再び領域Aに書込みが完了しているか確認すると(図15のステップ3)、書込み完了信号がアサートしていることから分かるように、領域Aに書込みが完了している。そこで、図15の処理フローに従い、更に領域Cに書込みが完了しているか確認すると(図15のステップ4)、領域Cは書込みの最中であるため、領域Aから読出しを開始する(図15のステップ5)。
【0083】
このようにすると、領域Bに書込んだデータを2度読出しているので、数フレームに1回同じ画像を出力することになるが、次に読出す領域の書込み終了を待ってから読出し領域を切り替えることで、フレームメモリの1フレームの書込み時間が1フレームの読出し時間より長い場合でも、同一フレームの奇偶フレーム画像からなるフレームを出力することが可能であり、コムノイズの発注を防ぐことができる。
【0084】
図17(A)及び図17(B)は、上記書込み時間(書込み周期)>読出し時間(読出し周期)の場合のトリプルバッファ(領域A、領域B、領域C)の書込み・読出しの遷移及び出力画像の状態を示したものである。ここでも、読出しはNTSC方式対応に30フレーム/秒、インタレース読出しとし、これに対して、書込みは27フレーム/秒、プログレッシブ書込みとした例を示している。
【0085】
いま、(e)に注目する。これは、(a)から(d)と、ステート1→ステート2→ステート3を何度か繰り返してステート1に戻った場合である。(e)は、領域Bから奇数・偶数フィールドの全データ(1フレーム)の読出しが終了した状態を表わしている。この時、領域Aは、また、書込みの最中である。そこで、領域Bから再び読出しを開始する(f)。そして、領域Bからの読出し(再読出し)が終了し、この時、領域Aへの書込みが完了しており、領域Cへの書込みが完了していない場合、領域Aから読出しを開始する(ステート2への移行)。(g)はこの状態を表わしている。
【0086】
図17の(e),(g)に示すように、書込み時間>読出し時間のケースでは、数フレームに1度同じフレームを出力することになるが、コムノイズでの発生を防ぐことができる。
【0087】
次に、書込み時間(書込み周期)<読出し時間(読出し周期)の場合について説明する。これは、撮像素子101からNTSC方式のフレーム周波数Ffrより高いフレーム周波数Ffs(Ffs>Ffr)で画像データを取り込んでフレームメモリ105にプログレッシブに書込み、フレームメモリ105からNTSC方式のフレーム周波数Ffrで読出すケースである。
【0088】
図18は、この場合のトリプルバッファ(領域A、領域B,領域C)への書込み・読出しのタイミングチャートを示したものである。図18において、Svは撮像素子102からの垂直同期信号である。書込み完了信号は、ある領域に書込みが完了するとアサートし、その領域から読出しを開始するとネゲートする。
【0089】
いま、図18のタイミングbに注目する。タイミングbは、ステート1で領域Bから読出しが完了した時点である(図15のステップ2)。図15の処理フローに従い、領域Aに書込みが完了しているか確認すると(図15のステップ3)、領域Aへの書込みは完了している。通常なら読出し領域を領域Aに切り替えるが、(ステート2に移行)、図15の処理フローに従い、更に領域Cへの書込みが完了しているか確認する(ステップ4)。図18では、タイミングbより前のタイミングaで、領域Cへの書込みが完了している。そこで、領域Aを飛ばし、読出し領域を領域Cに切り替えて(ステート3に移行)、領域Cから読出しを開始する(図15のステップ5)。
【0090】
このように、書込み時間<読出し時間の場合は、数フレームに1回画像データを間引いて出力することになるが、コムノイズの発生を防ぐことができる。また、画像データを取り込むフレーム周波数FfsとNTSC方式対応のフレーム周波数Ffrの差分を吸収することができる。さらに、領域Cは領域Aより新しい画像データを保存しているので、領域Aを飛ばし領域Cを選択することで、最新の画像データを提供できる。
【0091】
図19(A)及び図19(B)は、上記書込み時間(書込み周期)<読出し時間(読出し周期)の場合のトリプルバッファ(領域A、領域B、領域C)の書込み・読出しの遷移及び出力画像の状態を示したものである。ここでも、読出しはNTSC方式対応に30フレーム/秒、インタレース読出しとし、これに対して、書込みは33フレーム/秒、プログレッシブ書込みとした例を示している。
【0092】
いま、(d)に注目する。これは、(a)から(c)と、ステート1→ステート2→ステート3を何度か繰り返してステート1に戻った場合である。(d)は、領域Bから奇数・偶数フィールドの全データ(1フレーム)の読出しが終了した状態を表わしている。この時、領域Aへの書込みは完了し(c)、さらに領域Cへの書込みも完了している(d)。そこで、領域Aを飛ばし、領域Cから読出しを開始する(ステート3へ移行)。(e)はこの状態を表わしている。なお、(e)は、領域Cから奇数・偶数フィールドの全データ(1フレーム)の読出しが終了した状態を表わし、さらに領域Bへの書込みも完了した状態を表わしている。
【0093】
図19の(d),(e)に示すように、書込み時間<読出し時間のケースでは、数フレームに1度画像データを間引いて出力することになるが、コムノイズの発生を防ぐことができる。
【0094】
図15の処理フローは、図1の制御部106内のアドレス作成部203(図4)が受け持つ。図20に、アドレス作成部203の具体的実装例を示す。ここで、アドレス作成部203はステートマシン1100、アドレス計算部1101及びRAM/IF1102を有する。なお、アドレス計算部1101は図4の座標計算手段204を兼ねている。図中、Svは撮像素子102からのフレーム周波数Ffsに従う垂直同期信号である。Vvは、NTSC方式のフレーム周波数Ffrに従う垂直同期信号であり、出力用垂直水平同期信号作成部202(図4)で作成される。
【0095】
RAM/IF1102は、Svを受け取ると、書込みアドレスo_calram_aを順次指定し、かつ、o_calram_xwe=00を出力する。また、Vvを受け取ると、読出しアドレスo_calram_aを順次指定し、かつ、o_calram_xwe=01を出力する。o_calram_xweはwrite enable信号である(負論理としている)。
【0096】
ステートマシン1100は、図21のように動作(遷移)する。図21において、(a)は書込み時の遷移図であり、(b)は読出し時の遷移図である。(b)中、実線は次の読出し領域の書き込み完了を示し(以下、書込み完了信号1)、破線は次の次の読出し領域の書込み完了を示す(以下、書込み完了信号2)。
【0097】
書込み(WRITE)は、Svの立ち上がりで次の状態に遷移する。それ以外は、次のアドレスにデータを書き込む。例えば、状態B(領域Bに書込み)のときに、Svの立ち上がりで、状態A(領域Aに書込み)に遷移する。出力のo_writeは、00→01となる。Svの立ち上がり以外は、状態Bなら領域Bの次のアドレスにデータを書込む。
【0098】
読出し(READ)は、Vvの立ち上がり時に書込み完了信号がアサートしていたら、次の状態に遷移する。それ以外は、次のアドレスのデータを読出す。全データを読み出してしまったら、現領域内の一番初めのアドレスに戻り、順次読出す。例えば、状態B(領域Bを読出し)のときに、Vvの立ち上がり時に書込み完了信号1がアサートし、書込み完了信号2がネゲートしていたら、状態A(領域Aを読出し)に遷移する。出力のo_readは、00→01となる。Vvの立ち上がり以外、または、Vvの立ち上がり時に書込み完了信号がネゲートしていたら、例えば、状態Bなら領域Bの次のアドレスのデータを読み出す。領域Bの全データを読み出してしまったら、例えば、領域Bの一番初めのアドレスに戻り、順次読み出す。また、例えば、状態B(領域Bを読出し)のときに、Vvの立ち上がり時に書込み完了信号1がアサートし、さらに書込み完了信号2もアサートしていたら、状態C(領域Cを読み出し)に遷移する。出力のo_readは、00→10となる。
【0099】
アドレス計算部1101は、図22に示す真理値表で動作する。ステートマシン1100からi_writeとi_readを受け取り、RAM/IF1102から、i_addrとi_xweを受け取る。i_writeはどの領域に書込むかを示し、i_readはどの領域から読出すかを示し、i_addrはメモリのアドレスであり、i_xweはメモリに対する書込み/読出しの指定である。図22のように、i_writeおよびi_readで指定する領域によって、i_addrをアレンジして、フレームメモリ105のアドレスを指定する。
【0100】
図23に、本発明に係る画像撮像装置の別の実施形態(実施形態2)の全体構成図を示す。本画像撮像装置は、光学系101、撮像素子102、処理部103、NTSCエンコーダ104、及び、全体の動作を制御するCPU108などを備えている。処理部103は、その内部にフレームメモリ105、制御部106、発振器107及びPLL109を有する。NTSCエンコーダ104は、NTSC方式の表示装置や画像レコーダに接続されるが、図23では省略してある。ここで、発振器107は、NTSC方式対応のクロック信号発生用の水晶素子であり、PLL109は、発振器107から受け取ったNTSC方式対応のクロック周波数CK(13.5MHz)をそのままスルーで出力し、同時にNTSC方式対応のクロック周波数(13.5MHz)から外れたクロック周波数CK’を作る。PLL109は、制御部が内蔵されているチップにPLLも内蔵することで、新たな部品を増やす必要がないので、コストや基盤の設置面積を考慮することなく、図23の構成を実現できる。
【0101】
PLL109からのNTSC方式対応のクロック周波数CK(13.5MHz)は、当該処理部103内の制御部106に与えられると同時にNTSCエンコーダ104にも与えられる。NTSC方式対応のクロック周波数から外れたクロック周波数(CK’)は、撮像素子102に与えられる。EMC対策において、クロック周波数が小さいほど効果があるため、クロック周波数CK’は、クロック周波数CKより低い周波数であることが望ましい。例えば、CK’=12.65625MHzとする。
【0102】
撮像素子102は、PLL109からNTSC方式対応のクロック周波数から外れたクロック周波数CK’を入力として、該撮像素子102内部のPLL(不図)でn倍の周波数に変換する。以下、変換後の周波数をセンサ出力クロック周波数とする。例えば、n=2の場合、センサ出力クロック周波数は25.3125MHzとなる。通常のNTSCのセンサ出力クロック周波数27MHzと本構成のセンサ出力クロック周波数25.3125MHzを比較すると、本構成のセンサ出力クロック周波数の方が低いので、EMC対策に効果的である。また、センサ出力クロック周波数を通常のNTSCのセンサ出力クロック周波数27MHzの公約数および公倍数以外に設定することもEMC対策に効果がある。撮像素子102は、NTSC方式のフレーム周波数Ffr(約30FPS)に対して所定のオフセット周波数だけオフセットさせたオフセットフレーム周波数Ffs(例えば、27FPS)でもって、光学系101を通して撮影された画像データをプログレッシブに読出し、処理部103に送る。
【0103】
実施形態1で述べたように、撮像素子102はレジスタ(センサレジスタ)を備え、CPU108から該レジスタに設定されるパラメータ値に応じて垂直方向のブランキング期間乃至水平方向のブランキング期間を変更することで、画像データのフレーム周波数がFfs(例えば、27FPS)になるようにしている。撮像素子102は、画像データと共に、このフレーム周波数Ffsの垂直同期信号Svを処理部103に送る。処理部103の動作は実施形態1と同様であるので、説明を省略する。
【符号の説明】
【0104】
101 光学系
102 撮像素子
103 処理部
104 NTSCエンコーダ
105 フレームメモリ
106 制御部
107 発振器
108 CPU
109 PLL
201 フレームメモリ読出し開始トリガ作成部
202 出力用垂直水平同期信号作成部
203 アドレス作成部
204 座標計算手段
【先行技術文献】
【特許文献】
【0105】
【特許文献1】特開2009−181339号公報
【特許請求の範囲】
【請求項1】
被写体の光学像を結像する光学系と、
前記光学系により結像される光学像を撮像し、NTSC方式のフレーム周波数Ffrから外れたフレーム周波数Ffsで画像データを出力する撮像素子と、
前記画像データを格納するフレームメモリと、
前記撮像素子から出力される画像データを前記フレームメモリにプログレッシブに書込み、該フレームメモリからNTSC方式のフレーム周波数Ffrでインタレースに読み出す制御部とを有する画像撮像装置であって、
前記フレームメモリを少なくとも3つの領域に分け、
前記制御部は、前記フレームメモリの各領域を書込み領域・読出し領域として、その役割を順次切り替え、各領域に1フレームの画像データをプログレッシブに順次書込み、各領域から1フレームの画像データをインタレースに順次読み出すことを特徴とする画像撮像装置。
【請求項2】
前記制御部は、ある領域から1フレームの画像データの読出しが終了した時点で、次に読出す領域に1フレームの画像データの書込みが完了しているか判別し、完了していなければ、いま読出した領域から再度、1フレームの画像データを読出すことを特徴とする請求項1に記載の画像撮像装置。
【請求項3】
前記制御部は、次に読出す領域に1フレームの画像データの書込みが完了していれば、次の次に読出す領域に1フレームの画像データの書込みが完了しているか判別し、完了していなければ、次に読出す領域から画像データの読出しを開始し、完了していれば、次に読出す領域を飛ばして、次の次に読出す領域から画像データの読出しを開始することを特徴とする請求項2に記載の画像撮像装置。
【請求項4】
前記制御部は、フレームメモリから画像データを読出す際に、所定の画像変換処理を行うことを特徴とする請求項1乃至3のいずれか1項に記載の画像撮像装置。
【請求項5】
前記撮像素子は、一定のフレーム周期のフレーム周波数Ffsで画像データを出力することを特徴とする請求項1乃至4のいずれか1項に記載の画像撮像装置。
【請求項6】
前記撮像素子は、隣り合うフレーム周期は不定で、かつ、それらを平均するとNTSC方式のフレーム周期となる、可変のフレーム周波数Ffsで画像データを出力することを特徴とする請求項1乃至4のいずれか1項に記載の画像撮像装置。
【請求項7】
NTSC方式対応のクロック信号発生用の単一の発振器を有し、
前記制御部は、前記発振器からのNTSC方式対応のクロック周波数のクロックを基に、NTSC方式のフレーム周波数Ffrでのフレームメモリからのインタレース読出しを制御し、
前記撮像素子は、前記発振器からNTSC方式対応のクロック周波数のクロックを入力して動作し、垂直方向のブランキング期間乃至水平方向のブランキング期間を変更することで、NTSC方式のフレーム周波数Ffrから外れたフレーム周波数Ffsで画像データを出力することを特徴とする請求項1乃至6のいずれか1項に記載の画像撮像装置。
【請求項8】
前記撮像素子はレジスタを有し、該レジスタに設定されるパラメータ値に従って垂直方向のブランキング期間乃至水平方向のブランキング期間を変更することを特徴とする請求項7に記載の画像撮像装置。
【請求項9】
NTSC方式対応のクロック信号発生用の単一の発振器を有し、
前記制御部は、前記発振器からのNTSC方式対応のクロック周波数のクロックを基に、NTSC方式のフレーム周波数Ffrでのフレームメモリからのインタレース読出しを制御し、
前記撮像素子は、前記発振器からNTSC方式対応のクロック周波数から外れたクロックを入力して動作することを特徴とする請求項1乃至6のいずれか1項に記載の画像撮像装置。
【請求項10】
前記撮像素子は、前記NTSC方式対応のクロック周波数から外れたクロックを前記撮像素子内部のPLLでn倍の周波数に変換し、変換後の周波数で画像データを出力することを特徴とする請求項9に記載の画像撮像装置。
【請求項11】
前記クロックおよび変換後のクロックは、NTSC方式対応のクロック周波数の公約数および公倍数以外に設定することを特徴する請求項10に記載の画像撮像装置。
【請求項12】
前記撮像素子は、垂直方向のブランキング期間乃至水平方向のブランキング期間を変更することで、NTSC方式のフレーム周波数Ffrから外れたフレーム周波数Ffsで画像データを出力することを特徴とする請求項11に記載の画像撮像装置。
【請求項13】
装置全体を制御するためのCPUを有し、該CPUが前記撮像素子内のレジスタのパラメータ値を設定することを特徴とする請求項8または12に記載の画像撮像装置。
【請求項14】
前記撮像素子は、画像データと共にフレーム周波数Ffrの垂直同期信号を出力し、
前記制御部は、前記撮像素子からの垂直同期信号を基にフレームメモリの読出しタイミングを制御することを特徴とする請求項1乃至13のいずれか1項に記載の画像撮像装置。
【請求項1】
被写体の光学像を結像する光学系と、
前記光学系により結像される光学像を撮像し、NTSC方式のフレーム周波数Ffrから外れたフレーム周波数Ffsで画像データを出力する撮像素子と、
前記画像データを格納するフレームメモリと、
前記撮像素子から出力される画像データを前記フレームメモリにプログレッシブに書込み、該フレームメモリからNTSC方式のフレーム周波数Ffrでインタレースに読み出す制御部とを有する画像撮像装置であって、
前記フレームメモリを少なくとも3つの領域に分け、
前記制御部は、前記フレームメモリの各領域を書込み領域・読出し領域として、その役割を順次切り替え、各領域に1フレームの画像データをプログレッシブに順次書込み、各領域から1フレームの画像データをインタレースに順次読み出すことを特徴とする画像撮像装置。
【請求項2】
前記制御部は、ある領域から1フレームの画像データの読出しが終了した時点で、次に読出す領域に1フレームの画像データの書込みが完了しているか判別し、完了していなければ、いま読出した領域から再度、1フレームの画像データを読出すことを特徴とする請求項1に記載の画像撮像装置。
【請求項3】
前記制御部は、次に読出す領域に1フレームの画像データの書込みが完了していれば、次の次に読出す領域に1フレームの画像データの書込みが完了しているか判別し、完了していなければ、次に読出す領域から画像データの読出しを開始し、完了していれば、次に読出す領域を飛ばして、次の次に読出す領域から画像データの読出しを開始することを特徴とする請求項2に記載の画像撮像装置。
【請求項4】
前記制御部は、フレームメモリから画像データを読出す際に、所定の画像変換処理を行うことを特徴とする請求項1乃至3のいずれか1項に記載の画像撮像装置。
【請求項5】
前記撮像素子は、一定のフレーム周期のフレーム周波数Ffsで画像データを出力することを特徴とする請求項1乃至4のいずれか1項に記載の画像撮像装置。
【請求項6】
前記撮像素子は、隣り合うフレーム周期は不定で、かつ、それらを平均するとNTSC方式のフレーム周期となる、可変のフレーム周波数Ffsで画像データを出力することを特徴とする請求項1乃至4のいずれか1項に記載の画像撮像装置。
【請求項7】
NTSC方式対応のクロック信号発生用の単一の発振器を有し、
前記制御部は、前記発振器からのNTSC方式対応のクロック周波数のクロックを基に、NTSC方式のフレーム周波数Ffrでのフレームメモリからのインタレース読出しを制御し、
前記撮像素子は、前記発振器からNTSC方式対応のクロック周波数のクロックを入力して動作し、垂直方向のブランキング期間乃至水平方向のブランキング期間を変更することで、NTSC方式のフレーム周波数Ffrから外れたフレーム周波数Ffsで画像データを出力することを特徴とする請求項1乃至6のいずれか1項に記載の画像撮像装置。
【請求項8】
前記撮像素子はレジスタを有し、該レジスタに設定されるパラメータ値に従って垂直方向のブランキング期間乃至水平方向のブランキング期間を変更することを特徴とする請求項7に記載の画像撮像装置。
【請求項9】
NTSC方式対応のクロック信号発生用の単一の発振器を有し、
前記制御部は、前記発振器からのNTSC方式対応のクロック周波数のクロックを基に、NTSC方式のフレーム周波数Ffrでのフレームメモリからのインタレース読出しを制御し、
前記撮像素子は、前記発振器からNTSC方式対応のクロック周波数から外れたクロックを入力して動作することを特徴とする請求項1乃至6のいずれか1項に記載の画像撮像装置。
【請求項10】
前記撮像素子は、前記NTSC方式対応のクロック周波数から外れたクロックを前記撮像素子内部のPLLでn倍の周波数に変換し、変換後の周波数で画像データを出力することを特徴とする請求項9に記載の画像撮像装置。
【請求項11】
前記クロックおよび変換後のクロックは、NTSC方式対応のクロック周波数の公約数および公倍数以外に設定することを特徴する請求項10に記載の画像撮像装置。
【請求項12】
前記撮像素子は、垂直方向のブランキング期間乃至水平方向のブランキング期間を変更することで、NTSC方式のフレーム周波数Ffrから外れたフレーム周波数Ffsで画像データを出力することを特徴とする請求項11に記載の画像撮像装置。
【請求項13】
装置全体を制御するためのCPUを有し、該CPUが前記撮像素子内のレジスタのパラメータ値を設定することを特徴とする請求項8または12に記載の画像撮像装置。
【請求項14】
前記撮像素子は、画像データと共にフレーム周波数Ffrの垂直同期信号を出力し、
前記制御部は、前記撮像素子からの垂直同期信号を基にフレームメモリの読出しタイミングを制御することを特徴とする請求項1乃至13のいずれか1項に記載の画像撮像装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図15】
【図16】
【図17A】
【図17B】
【図18】
【図19A】
【図19B】
【図20】
【図21】
【図22】
【図23】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図15】
【図16】
【図17A】
【図17B】
【図18】
【図19A】
【図19B】
【図20】
【図21】
【図22】
【図23】
【図14】
【公開番号】特開2011−139432(P2011−139432A)
【公開日】平成23年7月14日(2011.7.14)
【国際特許分類】
【出願番号】特願2010−203581(P2010−203581)
【出願日】平成22年9月10日(2010.9.10)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】
【公開日】平成23年7月14日(2011.7.14)
【国際特許分類】
【出願日】平成22年9月10日(2010.9.10)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】
[ Back to top ]