(57)【特許請求の範囲】
【請求項１】
カメラにより撮像された動画像を処理してディスプレイに表示させる画像処理装置であって、
画像と該画像の露光時間とを関連付けて記憶する画像記憶部と、
前記カメラから画像および該画像の露光時間を取得して、該画像と該画像の露光時間とを関連付けて該画像記憶部に順次格納する画像取得部と、
前記画像記憶部に記憶された該画像から照度を算定し、該算定した照度に対応する第一露光時間を算出する第一露光時間算出部と、
前記画像記憶部に記憶された該画像から画像信号の信号対ノイズ比を示すＳＮ比を算出し、前記カメラから取得する画像の前記ＳＮ比が画像内の対象物の視認を可能とする所定値以上になる第二露光時間を算出する第二露光時間算出部と、
前記第二露光時間算出部で算出された前記第二露光時間を前記カメラに出力する通信制御部と、 
前記画像取得部により取得された該画像の露光時間が前記第一露光時間よりも短い場合に、最新のフレームの画像の露光時間と過去のフレームの画像の露光時間とを積算して前記第一露光時間に合致させ、合致させたときに使用した複数の画像を特定する画像特定部と、
特定した前記複数の画像をフレーム加算して出力画像を生成する出力画像生成部と、
生成した前記出力画像を前記ディスプレイに出力する出力部と、
を有することを特徴とする画像処理装置。
【請求項２】
前記第二露光時間算出部は、算出した前記ＳＮ比が前記所定値以上の場合は、現在の露光時間よりも１段階短い露光時間を前記カメラに出力することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記画像処理装置は、自動車に設置されており、
前記自動車の速度に応じて第三露光時間を特定する第三露光時間算出部を有し、
前記第二露光時間算出部は、
前記第一露光時間と前記第三露光時間との内の短いほうの露光時間を前記第二露光時間とすることを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記第一露光時間算出部は、前記画像記憶部に記憶された該画像の前記ＳＮ比を算出し、前記ＳＮ比に対応する第一露光時間を算出することを特徴とする請求項１に記載の画像処理装置。
【請求項５】
前記出力画像生成部は、前記第一露光時間に合致するように最新のフレームの画像の露光時間から過去のフレームの画像の露光時間を積算したときに、端数が生じる場合、最古のフレームの画像の露光時間と当該端数とから、当該最古のフレームの画像をフレーム加算する際の重みを決定することを特徴とする請求項１に記載の画像処理装置。
【請求項６】
前記カメラが撮像した画像内に、ノイズ検出のためのノイズ領域が撮像されるように設けられており、
前記第二露光時間算出部は、前記ＳＮ比を画像内の前記ノイズ領域から算出した雑音電力の分散値と、前記画像内の前記ノイズ領域以外の領域から算出した信号電力の分散値とから算出することを特徴とする請求項１に記載の画像処理装置。
【請求項７】
前記カメラが撮像した画像内に、ノイズ検出のためのノイズ領域が撮像されるように設けられており、
前記第一露光時間算出部は、前記ＳＮ比を画像内の前記ノイズ領域から算出した雑音電力の分散値と、前記画像内の前記ノイズ領域以外の領域から算出した信号電力の分散値とから算出することを特徴とする請求項４に記載の画像処理装置。
【請求項８】
カメラにより撮像された動画像を処理してディスプレイに表示させる処理をコンピュータに実行させるプログラムであって、
該コンピュータに、
前記カメラから画像および該画像の露光時間を取得して、該画像と該画像の露光時間とを関連付けて画像記憶部に順次格納させ、
前記画像記憶部に記憶された該画像から照度を算定し、該算定した照度に対応する第一露光時間を算出し、
前記画像記憶部に記憶された該画像から画像信号の信号対ノイズ比を示すＳＮ比を算出し、前記カメラから取得する画像の前記ＳＮ比が画像内の対象物の視認を可能とする所定値以上になる第二露光時間を算出して前記カメラに出力し、
前記取得された該画像の露光時間が前記第一露光時間よりも短い場合に、最新のフレームの画像の露光時間と過去のフレームの画像の露光時間とを積算して前記第一露光時間に合致させ、合致させたときに使用した複数の画像を特定し、
特定した前記複数の画像をフレーム加算して出力画像を生成し、
生成した前記出力画像を前記ディスプレイに出力する処理を実行させることを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
開示の画像処理装置は、入力された画像を処理し、処理した画像を出力する装置に関する。
【背景技術】
【０００２】
自動車などの移動体は、移動体に搭載したカメラで撮像した動画像をディスプレイに表示するカメラシステムを搭載することがある。
【０００３】
このカメラシステムは、移動体に搭載したカメラで所定時間露光することにより取得した静止画の画像データであるフレームを、短時間で連続して撮像していき、フレームを連続的に切り替えながら表示を行う事で動画像を実現している。よって、この様なカメラシステムは、フレーム１枚あたりの露光時間が短いほど、単位時間当たりに撮像できるフレームの数を多くする事ができ、滑らかな動画像を提供することが可能となる。
【０００４】
カメラは、露光時間が短すぎると、光量が少ない場所、すなわち暗い場所において露光不足が生じてしまうことがある。そこで露光不足を避けるため、カメラは暗い場所においてはある程度長い露光時間を必要とする。露光時間を長くすると、フレームの切り替え時間が長くなるため、滑らかな動画像は得られない。
【０００５】
従来のカメラシステムは、車速と最大露光時間の関係を予め定めておき、外部の照度を検出して、露光時間不足にならないような露光時間で撮像する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１１−１１９７８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、露光時間不足にならないような露光時間で撮像する場合、十分な精度の画像は得られるものの、フレームレートが低くなってしまう問題がある。そこで、開示の画像処理装置は、撮像対象の明暗を問わず、円滑でかつＳＮ比の高い動画表示を可能にすることを目的とする。
【課題を解決するための手段】
【０００８】
カメラにより撮像された動画像を処理してディスプレイに表示させる画像処理装置は、画像と画像の露光時間と関連付けて記憶する画像記憶部と、カメラから画像および画像の露光時間を取得して、画像と画像の露光時間とを関連付けて画像記憶部に順次格納する画像取得部と、画像記憶部に記憶された画像から照度を算定し、算定した照度に対応する第一露光時間を算出する第一露光時間算出部と、画像記憶部に記憶された画像から画像信号の信号対ノイズ比を示すＳＮ比を算出し、カメラから取得する画像のＳＮ比が画像内の対象物の視認を可能とする所定値以上になる第二露光時間を算出する第二露光時間算出部と、第二露光時間算出部で算出された第二露光時間をカメラに出力する通信制御部と、画像取得部により取得された画像の露光時間が第一露光時間よりも短い場合に、最新のフレームの画像の露光時間と過去のフレームの画像の露光時間とを積算して第一露光時間に合致させ、合致させたときに使用した複数の画像を特定する画像特定部と、特定した複数の画像をフレーム加算して出力画像を生成する出力画像生成部と、生成した出力画像をディスプレイに出力する出力部とを有する。
【発明の効果】
【０００９】
開示の画像処理装置は、通常のフレームレートでは露光時間が不足する場合でも、フレームレートの低下の少ない動画像を出力することができる。
【図面の簡単な説明】
【００１０】
【図１】本実施の形態のカメラシステムのハードウェア構成例である。
【図２】撮像処理のフローチャートである。
【図３】フレーム情報である。
【図４】車速算出処理のフローチャートである。
【図５】速度情報の例である。
【図６】車速算出方法決定処理のフローチャートである。
【図７】ドライブシフト情報の例である。
【図８】照度およびＳＮ比算出処理のフローチャートである。
【図９】露光時間の調整処理のフローチャートである。
【図１０】照度と露光時間調整率の関係を示す図である。
【図１１】照度−露光時間調整率テーブル６の構成例である。
【図１２】速度と露光時間の関係を示す図である。
【図１３】車速−露光時間対応テーブル７の例である。
【図１４】算出した露光時間の例である。
【図１５】撮像画像と表示画像の関係を説明する図である。
【図１６】露光時間調整量と加算フレーム数の関係を示す図である。
【図１７】露光時間に基づく出力画像生成処理のフローチャートである。
【図１８】ＳＮ比に基づく出力画像生成処理のフローチャートである。
【発明を実施するための形態】
【００１１】
［カメラシステムのハードウェア構成］
図１は、本実施の形態のカメラシステムのハードウェア構成例である。なお、本実施の形態のカメラシステムは、移動体の一種である自動車に設置され、当該自動車の周囲を監視するものとして説明する。図１において、１００は自動車である。
【００１２】
図１において、１は自動車１００の走行速度を示す車速パルス情報を出力する車速パルス出力部である。車速パルス出力部１は、自動車１００に搭載されたメーターワイヤーが回転する毎に車速パルスを出力する。メーターワイヤーの回転数は、自動車１００の走行速度が速いほど増加するものとする。メーターワイヤーの回転数が毎分６３７回転の時に、自動車１００のスピードは６０ｋｍ／ｈであるとする。車速パルスの出力には種々の種類があるが、本実施例では、メーターワイヤー１回転あたり「４パルス」であるとする。メーターワイヤー１回転につき車速パルス数が４パルスの場合、自動車１００の時速が６０ｋｍの車速パルス数は、６３７（ワイヤ回転）×４（パルス）＝２５４８パルスとなる。よって、本実施例の車速パルス出力部１は、例えば自動車１００が時速６０ｋｍ／ｈで走行中のとき毎分２５４８パルス（毎秒では４２．４７パルス（Ｈｚ））を出力する。また、自動車１００のタイヤ外形が６２．５ｃｍとするとタイヤ一周長は１．９６２５［ｍ］である。時速６０［ｋｍ／ｈ］の時、１秒あたりタイヤは８．４９回転する。したがって、時速６０［ｋｍ／ｈ］では、タイヤ一回転あたり４２．４７パルス／８．４９回転＝５パルス（Ｈｚ）となる。よって、車速パルス出力部１が出力する車速パルス数から自動車１００が進む距離および速度を算出することが可能になる。本実施例の自動車１００は１パルスあたり０．３９２５［ｍ］である。なお、この車速パルス出力部１は、これに限らず車速に関係する情報で同様の出力を行うものであれば良い。例えば、車速パルス出力部１は、加速度センサにより、擬似的に速度を求め、その速度に応じたパルスの出力を行うものであっても良い。
【００１３】
図１において、２は自動車１００の図示しないシフトレバーの位置を示すドライブシフト情報を出力するドライブシフト情報出力部である。なお、本実施の形態において、自動車１００は、オートマチック型の変速機を有する事とする。また、自動車１００のシフトレバーの位置が、前進方向への駆動を示すドライブ位置にある場合にはＤ情報、バックにある場合にはＲ情報、ニュートラル位置にある場合にはＮ情報、パーキング位置にある場合にはＰ情報が出力されることとする。また、これらの信号及び信号名は、代表的なオートマチック型変速機をベースにしたもので、他の名称、駆動機構でも、同様の作用をするものであれば、これらに限られるものではない。
【００１４】
図１において、３は、車速パルス出力部１およびドライブシフト情報出力部２から取得する情報に基づき、自動車１００の車速や、走行中・停車中などの走行状態を特定したり、後述する撮像装置４からの画像情報を画像処理してディスプレイ５へ出力したりする画像処理装置である。
【００１５】
画像処理装置３は、インターフェイス３０１、ＣＰＵ（中央処理装置）３０２、ＲＯＭ(Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ)３０３、通信画像制御部３０４、ＲＡＭ（Ｒａｍｄｏｍ  Ａｃｃｓｅｓｓ  Ｍｅｍｏｒｙ）３０５、画像記憶部として機能するフレームメモリ３０７、ＧＤＣ（Ｇｒａｐｈｉｃs  Ｄｉｓｐｌａｙ  Ｃｏｎtｒｏｌｌｅｒ）３０６、及び、カウンタ３０８を有している。また、これらは、バス３０９を介してデータ通信を行っている。なお、本実施例の画像処理装置３に含まれるインターフェイス３０１、ＣＰＵ３０２、ＲＯＭ３０３、通信画像制御部３０４、ＲＡＭ３０５、フレームメモリ３０７、ＧＤＣ３０６、及び、カウンタ３０８の構成は、本実施例に限るものではなく、適宜変更が可能であるものとする。
【００１６】
インターフェイス３０１は、車速パルス出力部１及びドライブシフト情報出力部との通信を行うものである。また、ＲＯＭ３０３には、ＣＰＵ３０２が実行するプログラムが記憶されている。すなわち、ＣＰＵ３０２は、ＲＯＭ３０３に記憶されたプログラムを読み込みながら処理を行うことで、画像処理装置３としての各種処理を行う。
【００１７】
ＣＰＵ３０２は、例えば、カメラから画像および画像の露光時間を取得して、画像と画像の露光時間とを関連付けて時系列に画像記憶部に記憶させる画像取得部、画像から照度を推定し、照度に対応する第一露光時間を算出する第一露光時間算出部、画像取得部により取得された最新のフレームの画像の露光時間が第一露光時間よりも短い場合に、最新のフレームの画像の露光時間と過去のフレームの画像の露光時間とを積算して第一露光時間に合致させ、合致させたときに使用した複数の画像を特定する画像特定部、特定した複数の画像をフレーム加算して出力画像を生成する出力画像生成部、生成した出力画像をディスプレイに出力する出力部、として機能する。
【００１８】
また、ＣＰＵ３０２は、画像からＳＮ比を算出し、カメラから取得する画像のＳＮ比が所定値以上になる第二露光時間を算出する第二露光時間算出部、第二露光時間算出部で算出された第二露光時間をカメラに出力する通信制御部として機能する。また、第二露光時間算出部は、取得した画像からＳＮ比を算出し、算出したＳＮ比が第二の所定値以下になるまで、現在の露光時間よりも少ない露光時間を前記カメラに出力する。また、ＣＰＵ３０２は、例えば、自動車の速度に応じて第三露光時間を特定する第三露光時間算出部、として機能し、第二露光時間算出部は、第一露光時間と第三露光時間との内の短いほうの露光時間を第二露光時間とする。また、第一露光時間算出部は、画像記憶部に記憶された画像のＳＮ比を算出し、ＳＮ比に対応する第一露光時間を算出しても良い。また、出力画像生成部は、第一露光時間に合致するように最新のフレームの画像の露光時間から過去のフレームの画像の露光時間を積算したときに、端数が生じる場合、最古のフレームの画像の露光時間と当該端数とから、当該最古のフレームの画像をフレーム加算する際の重みを決定する。第二露光時間算出部は、カメラが撮像した画像内にノイズ検出のためのノイズ領域が撮像されるように設けられた場合に、ＳＮ比を画像内のノイズ領域から算出した雑音電力の分散値と、画像内のノイズ領域以外の領域から算出した信号電力の分散値とから算出する。
【００１９】
ＲＡＭ３０５は、ＣＰＵ３０２のプログラム実行の際の一時データを格納する。また、このＲＡＭ３０５は、後述する撮像装置４の露光時間情報、車速パルス出力部１からの車速パルス信号、及び、ドライブシフト情報出力部２からのドライブシフト情報が格納される。
【００２０】
以下の記載において、ＣＰＵ３０２が、データを取得・記憶する記載がある場合、実際には、ＲＡＭ３０５に一時的に該データを記憶させているものとする。
【００２１】
フレームメモリ３０７は、撮像装置４から送られてくる各フレームの画像が一時的に記憶される。本実施例でフレームは、撮像装置４が撮像した動画像の最小単位である１コマの画像を示す。例えば、撮像装置４が１秒で３０枚の画像を撮像する場合、各１枚それぞれの画像をフレームという。また、フレームメモリ３０７は、画像と画像の露光時間と関連付けて記憶する画像記憶部として機能する。なお、本実施例では、フレームメモリ３０７が画像と画像の露光時間と関連付けて記憶するが、この構成に限らずＲＡＭ３０５とフレームメモリ３０７が共通した構成であっても良い。
【００２２】
ＧＤＣ３０６は、ＣＰＵ３０２が生成してフレームメモリ３０７に記憶された各フレームの出力画像をディスプレイ５に表示させる。
【００２３】
カウンタ３０８は、例えば、1／１０２４秒間に1カウントずつカウントアップするカウンタである。このカウンタは、本実施例では、説明の便宜上、ハードウエアによるカウンタとしたが、1／１０２４秒間隔でパルスを発生させるパルス出力器を設け、ＣＰＵ３０２がカウントするようにしても良い。また、その際には、ＲＯＭ３０３は、ＣＰＵ３０２にこのカウント処理を行わせるプログラムが格納されており、ＣＰＵ３０２は、このプログラムに従い、カウント処理を行うことになる。
【００２４】
なお、本実施例では、ＲＯＭ３０３にＣＰＵ３０２が処理するプログラムが格納されている。しかしながら、これに限らず、画像処理装置３は、ハードディスクを有し、このハードディスクに該プログラムを蓄積させておき、ＣＰＵ３０２は、そのハードディスクからプログラムを読み出して処理を行っても良い。同様に、ＤＶＤ、ＣＤ、Ｂｌｕｅ−ｒａｙなどの記憶媒体に記憶させたプログラムを、対応する読み出し装置で読み出すようにしても良い。なお、ＣＰＵ３０２は、ＲＯＭ３０３に記憶されているオペレーティングシステムプログラムを実行しているものとする。また、このオペレーティングシステム上では、マルチタスクが可能であり、ＣＰＵ３０２は、後述する各処理を、見かけ上、並列に処理できるものとする。また、各々の処理は、ＲＯＭ３０３に記憶されているプログラムをＣＰＵ３０２が実行することにより、行われるものとする。
【００２５】
図１において、４は自動車１００に設置され、自動車１００の外部を撮像するための撮像装置である。本実施例では、撮像装置４は、自動車１００の前方に設置されていることとする。なお、この実施例では、自動車の前方としたが、対象となる自動車の形状や、カメラ設置の目的に合わせて、設置場所の変更や複数のカメラを使用しても良い。
【００２６】
撮像装置４は、カメラ４０１、カメラ制御部４０２、及び、ＲＡＭ４０３を有する。
【００２７】
カメラ４０１は、ＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）やＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）などの撮像素子（図示せず）及びレンズ(図示せず)を有している。また、このカメラ４０１は、カメラ制御部４０２による制御に基づき、撮像を行い、ディジタルの撮像データを出力する。
【００２８】
カメラ制御部４０２は、画像処理装置３との通信を行うことが可能である。このカメラ制御部４０２は、画像処理装置３との通信により、画像処理装置３から取得した露光時間情報をＲＡＭ４０３に記憶する。また、カメラ制御部４０２は、ＲＡＭ４０３に記憶した露光時間情報に基づき、カメラ４０１の露光時間制御を行うと共に、カメラ４０１が出力した撮像データを、画像処理装置３へ送信する。
【００２９】
なお、画像処理装置３と撮像装置４との間の通信は、ＩＥＥＥ１３９４Ａｕｔｏｍｏｔｉｖｅの規格に基づく伝送路による通信を行ってもよい。本実施例では、カメラ４０１にて撮像された画像は、各画素毎に０〜２５５の２５６階調のディジタル画像データとする。また、階調の値が小さいほど暗い事を示しているものとする。なお、カラーのディジタル画像データの場合、一般には光の三原色である、赤・青・緑の各々で階調を有しているが、実施の形態１では、説明を容易にするために単に各画素が２５６階調を有するとして説明することとする。ただし、カラー画像データのうち、１つの色の階調情報、例えば、赤の階調情報を使用して実施の形態１の階調情報として利用しても良い。当然、画素毎に各色の平均を算出し、それを実施の形態１の階調情報としても良い。
【００３０】
［撮像処理］
図２は、撮像処理のフローチャートである。本実施例の撮像装置４のＲＡＭ４０３はカメラ４０１によるフレーム撮像時間（露光時間）を記憶していることとする。撮像装置４のカメラ制御部４０２は、ＲＡＭ４０３に記憶されている露光時間情報に基づく露光時間で、カメラ４０１による撮像を行う。カメラ制御部４０２はカメラ４０１にて撮像された画像情報と露光時間情報とをＲＡＭ４０３に蓄積する（Ｓ８０１）。カメラ制御部４０２は、ＲＡＭ４０３に蓄積した画像情報および露光時間情報を画像処理装置３へ送信する（Ｓ８０２）。画像処理装置３のＣＰＵ３０２は、通信画像制御部３０４を介して、この画像情報と露光時間情報とを受信する（Ｓ８０３）。なお、Ｓ８０３における受信処理は、ＣＰＵ３０２が、通信画像制御部３０４からの画像情報と露光時間情報が到来するのを待っており、画像情報と露光時間情報が到来したときに、Ｓ８０４の処理に移行するものとする。
【００３１】
ＣＰＵ３０２は、受信した画像情報と露光時間情報とをフレーム情報に関連付けてフレームメモリ３０７に記憶する（Ｓ８０４）。
【００３２】
図３はフレームメモリに格納されたフレーム情報である。フレーム情報８は、画像情報のフレーム番号と当該フレーム番号に対応する画像情報を撮像したときの露光時間情報とを含む。
【００３３】
ＣＰＵ３０２は、露光時間の算出を行う（Ｓ８０５）。この処理については、後述する［露光時間算出処理］にて詳細を説明する。Ｓ８０５の露光時間の算出処理が完了すると、ＣＰＵ３０２は、通信画像制御部３０４を制御し、算出した露光時間情報を撮像装置４に送信する（Ｓ８０６）。
【００３４】
撮像装置４のカメラ制御部４０２は、画像処理装置３からの露光時間情報を受信する（Ｓ８０７）と、ＲＡＭ４０３の露光時間情報を、画像処理装置３から受信した露光時間情報に更新する（Ｓ８０８）。カメラ制御部４０２は、このＳ８０８の処理が完了すると、Ｓ８０１に戻り、次の撮像処理を行う。
【００３５】
なお、本実施例において、撮像装置４の処理は、撮像した画像情報に対する露光時間を受信し、その後、次の撮像を行っている。しかしながら、カメラ制御部４０２は、Ｓ８０１〜Ｓ８０２、Ｓ８０７〜Ｓ８０８の処理を並行して実行できるようにしてもよい。この場合、カメラ制御部４０２は、Ｓ８０２の処理が完了するとＳ８０１に処理を移行し、また、Ｓ８０８の処理が完了するとＳ８０７の処理へ各々移行すればよい。これにより、カメラ制御部４０２は、画像情報の送信が完了すると、すぐ次の撮像処理を行うことが可能となる。この場合、撮像装置４は、撮像した画像情報と共に当該画像情報を撮像したときの露光時間情報を画像処理装置３に送信する。
【００３６】
なお、カメラ制御部４０２は、Ｓ８０２の処理が完了するとＳ８０１の処理を実行するようにしておき、画像処理装置３からの通信があると、割り込みにてＳ８０７〜Ｓ８０８の処理を行うようにしても良い。具体的には、撮像装置４に画像処理装置３からの情報を受信する受信部を設け、この受信部は、画像処理装置３から情報を受信すると、カメラ制御部４０２へ割り込み信号を出力するようにしておく。カメラ制御部４０２は、この割り込み信号に応じてＳ８０７〜Ｓ８０８の処理を実行するようにしておけばよい。
【００３７】
また、カメラ４０１は、カメラ制御部４０２が、カメラ４０１へ露光時間情報を入力すれば、カメラ４０１がそれに応じた露光時間で撮像を行うようにし、Ｓ８０１の処理の後、次の露光時間をカメラ４０１に指示するようにすれば、次の撮像を開始することができる。これにより、カメラ制御部４０２は、ＲＡＭ４０３の画像情報を転送と並行して、次の画像の取得処理（Ｓ８０１の処理）を開始することが可能となる。
【００３８】
なお、ＣＰＵ３０２は、Ｓ８０４の処理においてフレームメモリ３０７に記憶された画像情報について、［撮像処理］とは独立して、出力画像を生成する画像処理を実行する。ＣＰＵ３０２は、フレームメモリ３０７に記憶された画像情報に基づき出力画像を生成し、生成した出力画像をＧＤＣ３０６によって、ディスプレイ５に表示させる。
【００３９】
以下、Ｓ８０５の［露光時間算出処理］の説明をする。画像処理装置３は、露光時間を算出する［露光時間算出処理］において、［車速算出方法決定処理］、［車速算出処理］および［照度・ＳＮ比算出処理］を実行する。
【００４０】
［車速算出処理］
図４は、車速算出処理のフローチャートである。
【００４１】
ＲＡＭ３０５には、図５（Ａ）に示すように、過去の速度を算出した時のカウンタ３０８のカウント値と過去の速度情報が記憶されるものとする。
【００４２】
ＣＰＵ３０２は、インターフェイス３０１に車速パルス出力部１からのパルスが入力されていないか、チェックする（Ｓ２０１）。ここで、パルスが入力されていなければ（Ｓ２０１：Ｎｏ）、ＣＰＵ３０２は、Ｓ２０１の処理に戻る。また、Ｓ２０１において、パルスの入力があったと判定した場合（Ｓ２０１：Ｙｅｓ）、カウンタ３０８よりカウント値を取得する（Ｓ２０２）。ここでは、カウンタ３０８のカウント値が「１２５２２８」であり、ＣＰＵ３０２はこの値を取得したものとする。
【００４３】
次に、ＣＰＵ３０２は、ＲＡＭ３０５に記憶されているカウント値を読み出す（Ｓ２０３）。ここでは、図５（Ａ）に示されるように、ＲＡＭ３０５にはカウント値として「１２５２００」が記憶されていたものとし、ＣＰＵ３０２は、このカウント値「１２５２００」を読み出したものとする。
【００４４】
次に、ＣＰＵ３０２は、カウント値の差分を元に速度計算を行う（Ｓ２０４）。具体的には、ＣＰＵ３０２は、カウンタ３０８から取得したカウント値から、ＲＡＭ３０５から読み出した値の差分を求める処理を実行する。上記したように、カウンタ３０８から取得したカウント値は、「１２５２２８」であり、ＲＡＭ３０５から読み出したカウント値は「１２５２００」であるので、ＣＰＵ３０２が、上記した差分を求める処理を行い出力する値（以下、差分値Ｄ）は、「２８」である。
【００４５】
次に、ＣＰＵ３０２は、以下の式に基づく演算を行い、自動車１００の速度として時速を算出する。カウンタ値は１秒で「１０２４」であるため、前回のパルスの受信から今回のパルスの受信までの経過時間は、経過時間＝Ｄ／１０２４となる。よって、「自動車１００の速度Ｓ［ｋｍ／ｈ］＝ｍ［ｍ］÷（Ｄ÷１０２４）［Ｓ］＊Ｃ」となる。
【００４６】
ここで、「ｍ」は、車速パルス出力部１からのパルスが出力されてから次のパルスが出力されるまでに自動車１００が進む距離［ｍ］である。本実施例では、「ｍ」＝０．３９２５［ｍ］である。「Ｄ」は差分値である。「Ｃ」は定数である。本実施例の定数Ｃは「３．６」である。定数Ｃは、ｍが［ｍ］すなわちメートル単位であり、また（Ｄ÷１０２４）が、［Ｓ］すなわち秒単位であるため、［ｋｍ／ｈ］に変換するための定数である。よって、ＣＰＵ３０２が算出する速度自動車１００の速度Ｓは、５１．６８［ｋｍ／ｈ］となる。
【００４７】
次に、ＣＰＵ３０２は、図５（Ｂ）に示されるように、ＲＡＭ３０５に記憶されている速度情報をＳ２０４の処理にて求めた自動車の速度「５１．６８」に更新する。同様に、ＣＰＵ３０２は、図５（Ｂ）に示されるように、ＲＡＭ３０５に記憶されているカウント値を、Ｓ２０２の処理にて取得したカウンタ３０８のカウント値「０１２５２２８」に更新し、Ｓ２０１の処理へ戻る。（Ｓ２０５）
なお、本実施例の画像処理装置３は、車速パルス出力部１が出力した一つの車速パルスが到来するごとに自動車１００の走行速度を求めていたが、複数パルスが到来したときを契機に、速度算出処理を行っても良い。この場合、Ｓ２０４の処理における「ｍ」の値は、自動車１００が、車速パルス出力部１から、複数パルスが出力されるまでに進む距離と置き換えることで、算出が可能である。また、本実施例では、画像処理装置３は、算出した自動車１００の走行速度をそのまま更新しているが、何回か同様の算出を行い、その平均を算出した結果を走行速度として、更新するようにしても良い。
【００４８】
［車速算出方法決定処理］
図６は車速を算出する方法を決定する処理のフローチャートである。
【００４９】
ＲＡＭ３０５には、図７に示すように、ドライブシフト情報が記憶されるものとする。
【００５０】
ＣＰＵ３０２は、インターフェイス３０１にドライブシフト情報出力部２からのドライブシフト情報の入力がされているか否かを確認する（Ｓ３０１）。ドライブシフト情報の入力がされていない場合（Ｓ３０１：Ｎｏ）、ＣＰＵ３０２は、Ｓ３０１を再度実行する。ドライブシフト情報の入力がされていた場合（Ｓ３０１：Ｙｅｓ）、ＣＰＵ３０２は、ドライブシフトがパーキングを示すドライブシフト情報であるか否かを判別する（Ｓ３０２）。ドライブシフトがパーキングを示すドライブシフト情報である場合（Ｓ３０２：Ｙｅｓ）、ＣＰＵ３０２は、車両の速度が「０」であると決定する（Ｓ３０３）。ドライブシフトがパーキングを示すドライブシフト情報ではない場合（Ｓ３０２：Ｎｏ）、ＣＰＵ３０２は、図４の処理を実行することで車両の速度を車速パルスのデータから算出する（Ｓ３０４）。
【００５１】
シフトレバーがパーキングであるとき、自動車１００は停車している状態であり、自動車１００のタイヤは回転していない。そこで、車速パルス出力部１から車速パルスが誤って出力された場合であっても、シフトレバー情報が、事実上停止している事を示すパーキングであれば、パルス出力に関係なく速度を“０”とする。以上の処理により、ＣＰＵ３０２は車速を正確に算出することができる。
【００５２】
［照度およびＳＮ比算出処理］
図８は照度および信号雑音比（以下ＳＮ比とする）の算出処理のフローチャートである。ＣＰＵ３０２は、撮像された画像から照度を推定し、ＳＮ比を算出して露光時間の算出に使用する。
【００５３】
撮像装置４で撮像された画像は二つの領域を含むものとする。画像内の第一の領域は対象物を撮像する領域であるとし、画像内の第二の領域は画像のノイズ量を算出する領域であるとする。例えば、撮像装置４のカメラ４０１は、画像の所定の領域に所定の対象を撮像するように配置されてあるものとする。所定の対象は、例えば、車体のボディの一部などである。この所定の対象は、常に同じ画像が得られるため、同じ照度であれば同じ輝度になる。そこで、車体のボディの一部が撮像された領域を本実施例の第二の領域とすることができる。
【００５４】
ＣＰＵ３０２は、第一の領域（以下信号電力領域とする）内の各画素の輝度値の分散を算出することにより、信号電力の分散を算出する。信号電力領域は、画像内のオプティカルブラックの領域または車体が写る領域を含まない領域である。なお、以下信号電力領域は対象物を撮像する領域の一部でよい。
【００５５】
ＣＰＵ３０２は、第二の領域（以下雑音信号電力領域とする）内の各画素の輝度値の分散を算出することにより、雑音電力の分散を算出する。雑音電力領域は、画像内のオプティカルブラックの領域または車体が写る領域である。なお、以下雑音電力領域は、画像内のオプティカルブラックの領域または車体が写る領域の一部でよい。
【００５６】
ＣＰＵ３０２は、画像内の信号電力領域内の画素の輝度値の平均値と分散値を算出する（Ｓ６０１）。ＣＰＵ３０２は、取得した画像情報の信号電力領域内に相当する画素のそれぞれの輝度値を抽出し、抽出したそれぞれの輝度値の平均値および分散値を算出する。
【００５７】
ＣＰＵ３０２は、例えば、数１の式により、信号電力領域の輝度値の加重平均を算出する。
【００５８】
【数１】
0005742541.tif 000002
【００５９】
数１のＮは信号電力領域に含まれる画素数である。数１のＸｉは信号電力領域のｉ番目の画素の輝度値である。数１のＡＶＥｓは信号電力領域の輝度値の加重平均である。ＡＶＥｓは、領域内の画素数（Ｎ個）のそれぞれの輝度値（Ｘｉ）の総和を信号電力領域内の画素数（Ｎ個）で割ることで算出される。
【００６０】
次に、ＣＰＵ３０２は、例えば、数１の結果を用いて、数２の式により、信号電力の分散を算出する。
【００６１】
【数２】
0005742541.tif 000003
【００６２】
数２のＰｓは信号電力の分散を示す。Ｐｓは、信号電力領域の各画素の輝度値とＡＶＥｓとの差の総和を信号電力領域内の画素数（Ｎ個）で割ることで算出される。
【００６３】
次に、ＣＰＵ３０２は、画像内の雑音信号電力領域内の画素の輝度値の平均値と分散値を算出する（Ｓ６０２）。ＣＰＵ３０２は、取得した画像情報の第二の領域内に相当する画素のそれぞれの輝度値を抽出し、抽出したそれぞれの輝度値の平均値および分散値を算出する。
【００６４】
ＣＰＵ３０２は、例えば、数３の式により、雑音電力領域の加重平均を算出する。
【００６５】
【数３】
0005742541.tif 000004
【００６６】
数３のＭは雑音電力領域に含まれる画素数である。数３のＸｉは雑音電力領域のｉ番目の画素の輝度値である。数３のＡＶＥｎは雑音電力領域の輝度値の加重平均である。ＡＶＥｎは、領域内の画素数（Ｍ個）のそれぞれの輝度値（Ｘｉ）の総和を雑音電力領域内の画素数（Ｍ個）で割ることで算出される。
【００６７】
次に、ＣＰＵ３０２は、例えば、数３の結果を用いて、数４の式により、雑音電力の分散を算出する。
【００６８】
【数４】
0005742541.tif 000005
【００６９】
数４のＰｎは雑音電力の分散を示す。Ｐｎは、雑音電力領域の各画素の輝度値とＡＶＥｎとの差の総和を雑音電力領域内の画素数（Ｍ個）で割ることで算出される。
【００７０】
次に、ＣＰＵ３０２はＳＮ比を算出する（Ｓ６０３）。ＣＰＵ３０２は、Ｓ６０１，およびＳ６０２算出したＰｓおよびＰｎから、数５の式により、ＳＮ比を算出する。
【００７１】
【数５】
0005742541.tif 000006
【００７２】
数５のＳ／ＮはＳＮ比を示す。ＣＰＵ３０２は、数６により、数５で算出したＳＮ比をｄＢに単位変換する。
【００７３】
【数６】
0005742541.tif 000007
【００７４】
次に、ＣＰＵ３０２は、上記した撮像処理４から取得してフレームメモリ３０７に格納した画像の照度を推定する（Ｓ６０４）。上記撮像処理にて説明したように、フレームメモリ３０７に記憶された画像は、カメラ４０１が撮像した画像である。この画像の各画素は０（暗い）〜２５５（明るい）までの示す輝度情報を有している。ＣＰＵ３０２は、フレームメモリ３０７に記憶されている画像の各画素の輝度情報を読み出して平均値を求めることによって、この画像の輝度の平均値を算出する処理を行う。本説明においては、ＣＰＵ３０２は、輝度の平均値を“７３”と算出したこととする。なお、本実施の形態は、平均値としたが、実際の人間の視覚に応じた適当な計数をかける処理を行うなどしても良い。
【００７５】
［露光時間算出処理］
図９は露光時間の調整処理のフローチャートである。ＣＰＵ３０２は、画像から推定した照度、ＳＮ比、および車速から露光時間を決定する。
【００７６】
画像の明るさは、照度と露光時間のそれぞれに比例する。すなわち、照度が一定の場合、露光時間が増すほど画像は明るくなり、露光時間が一定の場合は、照度が増すほど明るくなる。このため、照度が小さい場合で露光時間を長くした場合、画像の明るさは十分になる。しかし、露光時間を長くした場合、画像処理装置３は、画像を出力するまでに時間を要することになるため、滑らかな映像を出力することができなくなる。
【００７７】
本実施例のカメラシステムは、通常時、１秒間に３０フレームの画像を撮像し表示するものとする。本実施例の画像処理装置３は、滑らかな画像をディスプレイ５に出力することを目的とする。したがって、露光時間は少なくとも３０フレームを表示できる時間（０．０３３ｓｅｃ）内になることが望ましい。
【００７８】
まず、ＣＰＵ３０２は、推定した画像の照度から露光時間（Ａ）を算出する（Ｓ７０１）。具体的には、ＣＰＵ３０２は、照度−露光時間対応テーブル６を参照して、露光時間調整率を決定し、決定した露光時間調整率を元に現在の露光時間を調整することで、露光時間（Ａ）を決定する。
【００７９】
図１０は照度と露光時間調整率の関係を示す図である。
【００８０】
横軸は画像から推定した照度の状態、すなわち画像の平均輝度値を示す。縦軸は画像の照度から特定する露光時間の調整率を示す。現在撮像されている画像が適正明るさより明るい場合、カメラ４０１の露光時間を短くし、暗ければ長くする処理を実行すると、撮像装置４で撮像する画像が適正な明るさを有するようになる。上記したように照度の値は、その値が小さいほど暗い画像であることを示す。
【００８１】
照度−露光時間調整率テーブル６は、画像の照度を元に算出する露光時間（Ａ）を特定するために用いるテーブルである。照度−露光時間調整率テーブル６は、照度と露光時間調整率とを含む。露光時間調整率は、現在の露光時間に対して調整する率を示す。例えば、現在の画像の露光時間が０．５秒で、露光調整率が１２０％の場合、露光時間（Ａ）は、０．５×１．２＝０．６秒となる。
【００８２】
本実施例では、照度と露光時間の関係を離散的に格納するものとし、ＲＯＭ３０３またはＲＡＭ３０５は、図１１に示す照度と露光時間の関係を照度−露光時間調整率テーブル６に記憶する。
【００８３】
図１１は、照度−露光時間調整率テーブル６の構成例である。照度−露光時間調整率テーブル６は、照度と当該照度の場合の露光時間（Ａ）との対応関係を記憶する。照度−露光時間調整率テーブル６は、適正明るさである１２８〜１５９より小さい値の場合は、露光時間を長くする露光調整率（１００％を超える）、逆に大きい場合は、露光時間を短くする露光調整率（１００％未満）が対応付されている。Ｓ６０４において、ＣＰＵ３０２は、輝度平均値を“７３”と算出している。また、取得した画像情報の露光時間は「０．０２」秒であったとする。この場合、ＣＰＵ３０２は、照度−露光時間調整率テーブル６を参照し、輝度平均値“７３”に対応する露光時間調整率「１．２」を選択する。ＣＰＵ３０２は、露光時間「０．０２」秒と露光時間調整率「１．２」との積から、調整後の露光時間「０．０２４」秒を算出する。この調整後の露光時間を露光時間（Ａ）とする。なお、露光時間（Ａ）は、撮像された画像の目標の露光時間である。目標の露光時間とは、画像をディスプレイ５に表示する場合、当該画像が適切な明るさになるための露光時間である。目標の露光時間は、後述する［フレーム加算処理］で使用する。
【００８４】
次に、ＣＰＵ３０２は、自動車１００の速度から露光時間（Ｂ）を特定する（Ｓ７０２）。露光時間（Ｂ）は、自動車１００のある速度において許容できる露光時間の最大時間である。具体的には、ＣＰＵ３０２は、［車速情報取得処理］にてＲＡＭ３０５に記憶した速度情報を読み出し、ＲＯＭ３０３に記憶している車速−露光時間対応テーブル７を参照して、読み出した速度情報に対応する露光時間（Ｂ）を特定する。
【００８５】
例えば、Ｓ２０４までの処理後の速度情報が図５（Ｂ）で示されるように“５１．６８”［ｋｍ／ｈ］であった場合、ＣＰＵ３０２は、ＲＡＭ３０５からこの速度情報“５１．６８”を読み出し、車速−露光時間対応テーブル７に対応する露光時間（Ｂ）として“０．０６２５”を決定する。
【００８６】
図１２は速度と露光時間の関係を示す図である。横軸は自動車１００の走行状態、すなわち車速を示す。縦軸は露光時間の最大時間を示す。図１２の車速と露光時間の関係は、車速が速くなるほど露光時間の最大時間が短くなることを示す。本実施例では、車速と露光時間の最大値を離散的に格納するものとし、ＲＯＭ３０３またはＲＡＭ３０５は、車速と露光時間の関係を車速−露光時間対応テーブル７に記憶する。
【００８７】
速度が遅い場合、露光時間（Ｂ）を長く設定するため、事実上、画像データの更新が遅くとも、運転者にとって見やすい明るさの画像データの取得が行われることを優先する。すなわち、低速もしくは停止している場合には、暗い場所においても詳細な画像の取得が可能となる。自動車１００が低速走行している時もしくは停止しているとき、自動車１００の運転者は、車幅の確認、後方の確認、周囲の物（人・障害物）などを行うことが多い。そして、そのような行動を行う際に、運転者は、撮像装置４で取得され、ディスプレイ５に映し出された画像情報を参考にして運転することが多い。本実施例のカメラシステムは、自動車１００の速度が遅い場合、暗い場所でも露光不足の状態で撮影することはない。そのため、低速走行時や停止時に、自動車１００の運転者に見やすい明るさの画像を提供することが可能となる。
【００８８】
また、運転者が通常の走行状態で自動車１００を運転している場合は、カメラシステムに表示される画像を見ることは少なく、ほぼ車外を視認しながら運転を行っている。近年、運転者が車外を視認しながら運転している際の視線を大きく変えることなくディスプレイを見ることができる様に、運転者が運転している時に運転者の視界に入る位置にディスプレイ５が配置されることが多い。この様な状況において、ディスプレイ５に、運転者が車外を直接見ているのと似た画像で、かつ、フレームレートの低い画像が表示されてしまうと、運転者にとって違和感が生じてしまい、運転がしづらくなってしまうことがある。本実施例では、自動車１００の速度が速くなると、フレームレートを高くする事により、車外を直接視認しながら運転する運転者にとって違和感の少ない画像を提供することが可能となる。  
【００８９】
図１３は、車速−露光時間対応テーブル７の例である。車速−露光時間対応テーブル７は自動車１００の速度と当該速度での露光時間（Ｂ）との対応関係を記憶する。
【００９０】
図１４は算出した露光時間の例である。図１４（Ａ）は算出した露光時間（Ａ）であり、図１４（Ｂ）は算出した露光時間（Ｂ）である。
【００９１】
次に、ＣＰＵ３０２は、Ｓ７０１で算出した露光時間（Ａ）またはＳ７０２で算出した露光時間（Ｂ）の値が変化したか否かを判定する（Ｓ７０３）。いずれかの露光時間が変化したと判定した場合（Ｓ７０３：Ｙｅｓ）、ＣＰＵ３０２は、撮像装置４の露光時間を、露光時間（Ａ）および露光時間（Ｂ）の内、短いほうの値に設定する（Ｓ７０４）。上記してきた例では、露光時間（Ｂ）は”０．０６２５”［秒］であり、露光時間（Ａ）は“０．０２４”［秒］であるため、ＣＰＵ３０２は、値の小さい“０．０２４”［秒］を選択する。この設定にすることで、撮像装置４は、露光時間（Ａ）および露光時間（Ｂ）の内、短いほうの露光時間で撮像を行うことになる。
【００９２】
次に、ＣＰＵ３０２は、露光調整済みフラグをオフにする（Ｓ７０５）。露光調整済フラグは、露光時間の設定が終了したか否かを示すフラグ情報である。本実施例では、動画像の滑らかな表示を目的とするため、露光時間は短いほうが望ましい。そこで、ＣＰＵ３０２は、露光調整済フラグをオフにすることで、後に各フレームの画像を撮像する際の露光時間の設定を行う処理を実行する。
【００９３】
次に、ＣＰＵ３０２は、Ｓ７０４で選択した露光時間を撮像装置４に送信するための露光時間に決定する（Ｓ７０６）。ＣＰＵ３０２は、Ｓ８０６で撮像装置４にＳ７０６で決定した露光時間を送信する。撮像装置４は、Ｓ８０６で画像処理装置３から送信された露光時間情報で撮像を行う。一方、いずれの露光時間も変化していないと判定した場合（Ｓ７０３：Ｎｏ）、ＣＰＵ３０２は、露光調整済フラグのオン／オフを確認する（Ｓ７０７）。
【００９４】
一方、露光調整済フラグがオフの場合（Ｓ７０７：Ｎｏ）、ＣＰＵ３０２はＳＮ比が所定の閾値以上であるか判定する（Ｓ７０８）。所定の閾値は、画像をフレーム合成することで画像内の対象物の視認性が上昇することが見込めるＳＮ比よりも大きい値とする。ＳＮ比が閾値未満の場合、複数の画像をフレーム合成しとしても、画像のノイズが大きく、対象物の視認はできない。
【００９５】
画像のＳＮ比が当該閾値よりも大きい場合、撮像装置４の露光時間を短くしても、フレームを加算することで、画像に写る対象物の視認が可能なＳＮ比となる。そこで、ＳＮ比が所定の閾値以上である場合（Ｓ７０８：Ｙｅｓ）、ＣＰＵ３０２は露光時間を短くする（Ｓ７０９）。その後、ＣＰＵ３０２は、Ｓ７０９で設定した露光時間を撮像装置４に送信するための露光時間に決定する（Ｓ７０６）。
【００９６】
一方、ＳＮ比が所定の閾値未満である場合（Ｓ７０８：Ｎｏ）、ＣＰＵ３０２は調整済みフラグをオンにする（Ｓ７１０）。ＣＰＵ３０２は、現在の露光時間を維持（Ｓ７１１）し、現在の露光時間を撮像装置４に送信するための露光時間に決定する（Ｓ７０６）。
【００９７】
露光調整済フラグがオンの場合（Ｓ７０７：Ｙｅｓ）、ＣＰＵ３０２は、現在の露光時間を維持する（Ｓ７１１）。露光調整済フラグがオンの場合、現在の露光時間は露光時間（Ａ）および露光時間（Ｂ）に基づいて調整されているので、継続して使用される。ＣＰＵ３０２は、Ｓ７０４で選択した露光時間を撮像装置４に送信するための露光時間に決定する（Ｓ７０６）。なお、ＣＰＵ３０２は、露光時間に変化があった場合のみ撮像装置４に送信する構成にしてもよい。
【００９８】
ＣＰＵ３０２は、画像から推定した照度が所定の値以下のときのみ、露光時間を調整する処理を実行することも可能である。この構成により、周囲が明るく十分な照度がある場合、従来どおりに動作することで、ＣＰＵ３０２は滑らかな画像を表示できる。なお、画像のフレーム数が３０ｆｐｓであり、１秒間に３０枚の画像を撮像すればよい場合、複数の画像を重ね合わせることなく対象物を視認可能な画像が得られるのであれば、必要以上に露光時間を短くする必要はない。例えば、フレームを重ね合わせることなく、希望の明るさの画像を撮像できる場合、ＣＰＵ３０２はその露光時間を撮像装置４に出力する。
【００９９】
次に画像処理装置３が実行する出力画像生成処理について説明する。
【０１００】
［撮像画像と出力画像の関係］（フレーム加算の説明）
図１５は、撮像画像と表示画像の関係を説明する図である。図１５では、撮像画像の各フレームの（露光時間あるいはＳＮ比）が（目標露光時間あるいは目標ＳＮ比）よりも小さいため、撮像装置４は複数のフレームの画像をフレーム合成して出力画像を生成して、出力画像を出力する場合を説明する。
【０１０１】
ａ０１，ａ０２，ａ０３，ａ０４，ａ０５，ａ０６．．．はそれぞれ撮像装置４で撮像された画像（撮像画像）である。各撮像画像の露光時間は、画像処理装置３によって設定されている。ａ０１，ａ０２，ａ０３，ａ０４，ａ０５，ａ０６はそれぞれ時刻ｔ０１、ｔ０２、ｔ０３、ｔ０４、ｔ０５、ｔ０６で撮像されたものとする。
【０１０２】
ｂ００，ｂ０１，ｂ０２，ｂ０３，ｂ０４，ｂ０５，ｂ０６．．．はそれぞれディスプレイ５に出力する画像（出力画像）である。ｂ００，ｂ０１，ｂ０２，ｂ０３，ｂ０４，ｂ０５，ｂ０６はそれぞれ時刻ｔ０１，ｔ０２、ｔ０３、ｔ０４、ｔ０５、ｔ０６、ｔ０７で撮像されたに対応する時刻に出力するものとする。ｂ０１、ｂ０２、ｂ０３、ｂ０４、ｂ０５、ｂ０６．．．は、複数の撮像画像を合成して作成されている。合成する画像の数は、各撮像画像の露光時間と、目標露光時間とから決定される。
【０１０３】
例えば、ｂ０１は、ａ０１およびａ０２が合成されたフレームである。ｂ０１，ｂ０２，ｂ０３，ｂ０４，ｂ０５，ｂ０６は、複数の撮像画像を合成しているため、実質的に露光時間が長くなり、この結果、画像の輝度が増加する。この結果、ディスプレイ５に出力するｂ０１，ｂ０２，ｂ０３，ｂ０４，ｂ０５，ｂ０６の表示画像は、撮像された画像ａ０１，ａ０２，ａ０３，ａ０４，ａ０５，ａ０６に比べて明るくなり、撮像画像よりも対象物の視認性が向上する。
【０１０４】
なお、撮像開始直後など、複数の撮像画像がない場合、ＣＰＵ３０２は、例えばｂ００のように撮像画像ａ０１を直接表示してもよい。ただし、撮像開始直後の場合、数秒の経過で合成するための過去の撮像画像を記憶できるまでは、ディスプレイ５に表示しないことも可能である。
【０１０５】
なお、各画像の露光時間の積算値と目標露光時間とが一致しない場合、ＣＰＵ３０２は以下の方法で出力画像を算出する。図１５では、ｂ０４は、ａ０５、ａ０４およびａ０３の一部を合成することで算出されている。
【０１０６】
ＣＰＵ３０２は、目標露光時間を越える積算値（Ａ）を特定する。ｂ０４の場合、ＣＰＵ３０２はａ０５、ａ０４およびａ０３の露光時間を積算する。この積算値（Ａ）は、目標露光時間を越える最小の値とする。したがって、最も過去のフレームに相当する画像の露光時間があることにより、積算値（Ａ）は目標露光時間を越えている。このとき、最も過去のフレームに相当する画像を調整してフレーム合成することが望ましい。
【０１０７】
ＣＰＵ３０２は、例えば以下の処理を行うことで、目標露光時間に合致する露光時間でのフレーム合成を行う。
【０１０８】
まず、ＣＰＵ３０２は、積算値（Ａ）から最も過去のフレームに相当する画像の露光時間を引いた積算値（Ｂ）を求める。ｂ０４の場合、ＣＰＵ３０２は、積算値（Ａ）からａ０３の露光時間を引いた積算値（Ｂ）を求める。
【０１０９】
次に、ＣＰＵ３０２は、目標露光時間から積算値（Ｂ）を引くことで、目標露光時間に合致させるために必要な露光時間を算出する。ｂ０４の場合、ＣＰＵ３０２は、目標露光時間から積算値（Ｂ）引いて必要な露光時間を求める。
【０１１０】
次に、ＣＰＵ３０２は、最も過去のフレームの画像の露光時間と必要な露光時間との比率に応じて、最も過去のフレームの画像の輝度値を下げる。ｂ０４の場合、ＣＰＵ３０２は、ａ０３の露光時間に対する必要な露光時間の割合でａ０３の画像の輝度の値を下げる。
【０１１１】
次に、ＣＰＵ３０２は、積算値（Ｂ）に含まれる露光時間に関連する画像、及び、輝度値を下げた最も過去のフレームの画像をフレーム合成する。ｂ０４の場合、ＣＰＵ３０２は、積算値（Ｂ）に含まれるａ０５，ａ０４の画像と、最も過去のフレームの画像のａ０３の輝度値を下げた画像とをフレーム合成する。
【０１１２】
目標の露光時間に合わせて複数のフレームの画像を合成して出力画像を生成することにより、出力画像の輝度は一定になる。また、最も過去のフレームの画像の輝度を下げることにより、画像処理装置３は現時点の撮像対象の状態に近い出力画像を生成することができる。
【０１１３】
［露光時間と加算フレーム数の関係］
図１６は、露光時間調整量と加算フレーム数の関係を示す図である。縦軸は加算フレーム数を示す。横軸は目標露光時間に対する露光時間算出処理で算出した露光時間の割合を示す露光時間調整量である。露光時間調整量が短い場合は、目標露光時間に対して現在の露光時間が短いことが示されており、目標露光時間にするために合成するフレーム数は多くなる。露光時間調整量が長い場合は、目標露光時間に対して現在の露光時間が長いことが示されており、目標露光時間にするために合成するフレーム数は少なくなる。
【０１１４】
本実施例では、露光時間と加算フレーム数の関係を例えば関数の情報として、ＲＯＭ３０３またはＲＡＭ３０５に格納されているものとする。なお、離散的に記憶することも可能であるが、出力画像の明るさがばらつく恐れがある。
【０１１５】
［出力画像生成処理（露光時間）］
図１７は露光時間に基づく出力画像生成処理のフローチャートである。画像は、目標の露光時間であれば照度が十分であり、対象物を視認することが可能な明るさとなる。しかし、露光時間算出処理で短時間に調整された露光時間で撮像される画像は、当該画像を重ね合わせた場合、対象物を視認できるだけの明るさが確保できない場合がある。したがって、一枚の画像のみでは暗く利用者は対象物を視認することは難しい場合がある。
【０１１６】
そこで、ＣＰＵ３０２は、取得した画像の露光時間が目標露光時間に足りない場合に、目標露光時間に相当する出力画像を生成する。出力画像は、複数のフレームの画像を合成（重畳）することで生成させる。本実施例では、合成の一つとしてフレーム加算を説明する。ＣＰＵ３０２は、フレーム加算するフレームの数（加算フレーム数）を以下の処理により決定する。
【０１１７】
ＣＰＵ３０２は、現フレームの露光時間が目標露光時間よりも短いか否かを判定する（Ｓ９０１）。本実施例の目標露光時間は、撮像画像に基づき推定された照度から算出された露光時間（Ａ）とする。撮像画像から推定された照度によって目標の露光時間を決定することで、ディスプレイ５に出力される映像の明暗の変化が自然になる。
【０１１８】
現フレームは、撮像装置４から受信した画像である。受信した画像は露光時間情報が関連付けられている。ＣＰＵ３０２は画像に関連付けられた露光時間情報が示す露光時間と目標露光時間とを比較する。
【０１１９】
現フレームの露光時間が目標露光時間以上である場合（Ｓ９０１：Ｎｏ）、ＣＰＵ３０２はフレーム加算を行わない（Ｓ９０２）。現フレームの露光時間が目標露光時間以上である場合、現在のフレームの画像は要求される輝度を有するためである。なお、ＣＰＵ３０２は、Ｓ９０２においてフレーム加算を行わず、目標の露光時間に合致するように、目標露光時間と現在のフレームの露光時間の比率に応じて現在のフレームの輝度値を下げることも可能である。
【０１２０】
一方、現在のフレームの画像の露光時間が目標露光時間よりも短い場合（Ｓ９０１：Ｙｅｓ）、ＣＰＵ３０２はフレーム加算を行う必要がある。ＣＰＵ３０２は、フレーム加算を行うフレーム数を決定し（Ｓ９０３）、目標露光時間に加算後の画像の露光時間の積算が合致するように、現フレームと過去の複数のフレームとを加算する。
【０１２１】
なお、加算するフレーム数は、演算時間の短縮の観点では、正数でよい。しかし、加算するフレーム数を決定する閾値の近辺であった場合、正数で算出した結果得られるフレームの照度によっては、加算フレーム数が変動することにより、目標の照度に対して不安定になる場合がある。この結果、ディスプレイに表示する画像が明るくなったり暗くなったりする恐れがある。そこで、加算するフレーム数に小数点以下の端数が生じた場合、該当するフレームに小数点以下の重み付けをしたうえで加算することが考えられる。この場合、加算するフレームで最古のフレームについては、重み付けするため、薄くなる。この結果、出力画像の明るさが一定になるだけでなく、最古の画像が薄くなるため、出力画像の残像(像流れ)が減少する効果がある。また、加算するフレーム数に小数点以下の端数が生じた場合、該当するフレームを加算フレームとした後、フレームの輝度が一定になるように演算することも考えられる。
【０１２２】
ＣＰＵ３０２は、Ｓ９０３で決定したフレーム数に応じてフレーム加算を実行し、実行得られる出力画像を生成する（Ｓ９０４）。ＣＰＵ３０２はフレーム数に相当する数のフレームの画像を現在から過去に順に読みだす。ＣＰＵ３０２は、現在のフレームの画像の各画素の輝度値に、読み出した過去のフレームの画像の各画像の輝度値を積算することで、出力画像を生成する。なお、本実施例では、単に各フレームの各画素をそれぞれ積算して出力画像を生成したが、その前に各フレームの画像単独でのノイズ除去をしても良い。
【０１２３】
ＣＰＵ３０２は、生成した出力画像をＧＤＣ３０６からディスプレイ５に出力する（Ｓ９０５）。ディスプレイ５は画像処理装置３から送信された出力画像を受信すると、受信した出力画像を表示する。
【０１２４】
［出力画像生成処理（ＳＮ比）］
図１８はＳＮ比に基づく出力画像生成処理のフローチャートである。画像は、目標のＳＮ比であれば信号電力が雑音電力に対して十分であり、対象物を視認することが可能な画像となる。しかし、露光時間算出処理で短時間に調整された露光時間で撮像される画像は、当該画像を重ね合わせた場合、対象物を視認できるだけの明るさが確保できない場合がある。したがって、一枚の画像のみでは利用者は対象物を視認することは難しい。
【０１２５】
そこで、ＣＰＵ３０２は、目標のＳＮ比になるように複数のフレームをフレーム加算する。ＣＰＵ３０２は、フレーム加算するフレームの数（加算フレーム数）を以下の処理により決定する。なお、目標のＳＮ比は、予め定義しておく。
【０１２６】
ＣＰＵ３０２は、現フレームのＳＮ比は目標のＳＮ比よりも短いか否かを判定する（Ｓ１００１）。本実施例の目標のＳＮ比は、撮像画像に基づき推定されたＳＮ比から算出された露光時間（Ａ）とする。撮像画像から推定されたＳＮ比によって決定された露光時間に対応するように目標のＳＮ比を決定することで、ディスプレイ５に出力される映像のＳＮ比が自然になる。  現フレームは、撮像装置４から受信した最新の画像である。受信した画像は露光時間情報が関連付けられている。ＣＰＵ３０２は画像から算出したＳＮ比と露光時間調整処理において算出した目標のＳＮ比とを比較する。
【０１２７】
現フレームのＳＮ比が目標のＳＮ比以上である場合（Ｓ１００１：Ｎｏ）、ＣＰＵ３０２はフレーム加算を行わない（Ｓ１００２）。現フレームのＳＮ比が目標のＳＮ比以上である場合、現在のフレームの画像は要求されるＳＮ比を有するためである。
【０１２８】
一方、現在のフレームの画像のＳＮ比が目標のＳＮ比未満の場合（Ｓ１００１：Ｙｅｓ）、ＣＰＵ３０２はフレーム加算を行う必要がある。ＣＰＵ３０２は、フレーム加算を行うフレーム数を決定し（Ｓ１００３）、目標のＳＮ比に加算後の画像のＳＮ比の積算が合致するように、現フレームと過去の複数のフレームとを加算する。
【０１２９】
なお、加算するフレーム数は、演算時間の短縮の観点では、正数でよい。しかし、加算するフレーム数を決定する閾値の近辺であった場合、正数で算出した結果得られるフレームの照度によっては、加算フレーム数が変動することにより、目標のＳＮ比に対して不安定になる場合がある。この結果、ディスプレイに表示する画像が明るくなったり暗くなったりする恐れがある。そこで、加算するフレーム数に小数点以下の端数が生じた場合、該当するフレームに小数点以下の重み付けをしたうえで加算することが考えられる。この場合、加算するフレームで最古のフレームについては、重み付けするため、薄くなる。この結果、出力画像の明るさが一定になるだけでなく、最古の画像が薄くなるため、出力画像の残像(像流れ)が減少する効果がある。また、加算するフレーム数に小数点以下の端数が生じた場合、該当するフレームを加算フレームとした後、フレームの輝度が一定になるように演算することも考えられる。
【０１３０】
ＣＰＵ３０２は、Ｓ１００３で決定したフレーム数に応じてフレーム加算を実行し、実行得られる出力画像を生成する（Ｓ１００４）。ＣＰＵ３０２はフレーム数に相当する数のフレームの画像を現在から過去に順に読みだす。ＣＰＵ３０２は、現在のフレームの画像の各画素の輝度値に、読み出した過去のフレームの画像の各画素の輝度値を積算することで、出力画像を生成する。なお、本実施例では、単に各フレームの各画素をそれぞれ積算して出力画像を生成したが、その前に各フレームの画像単独でのノイズ除去をしても良い。
【０１３１】
ＣＰＵ３０２は、生成した出力画像をＧＤＣ３０６からディスプレイ５に出力する（Ｓ１００５）。ディスプレイ５は画像処理装置３から送信された出力画像を受信すると、受信した出力画像を表示する。
【０１３２】
以上の処理により、画像処理装置３は、撮像装置４が画像を撮像する際の露光時間をＳＮ比が確保できる最短の時間に設定する。画像処理装置３は、目標露光時間よりも現在撮像しているフレームの露光時間が短い場合、露光時間の積算が目標の露光時間になるように、過去のフレームをフレーム合成する。画像処理装置３は、フレーム合成した画像をディスプレイ５に出力する。出力画像の露光時間は、事実上、目標露光時間に等しくなる。この結果、出力画像は、一定の明るさとなり、かつＳＮ比が確保できる最短時間のフレームレートで出力できるようになる。
【０１３３】
例えば、暗所でかつ自動車１００の速度が遅い場合、露光時間（Ｂ）は目標の露光時間（Ａ）よりも短くなる。また、ディスプレイに表示する画像を滑らかにするためには、ディスプレイの出力可能なフレームレートで画像を切り替えることが望ましい。撮像装置４は、このフレームレートに合う露光時間で撮像することが望ましい。しかし、暗い場所で露光時間を下げすぎる場合、ノイズが大きくなるため、対象物を視認できなくなる場合がある。そこで、撮像装置４は、所定値以上のＳＮ比となる画像を撮像できる露光時間以上で対象を撮像する。所定値以上のＳＮ比となる条件で撮像された画像は目標の明るさに足りず、暗い画像となる。ここで、単なる画像補正で明るくした場合、ノイズも増幅されるため、対象物を視認しにくい状態は変わらない。しかし、複数のフレームの画像に対応付けた露光時間の積算値が露光時間（Ａ）に合致するように、複数のフレームの画像を重ね合わせることで、ノイズが減少するとともに、滑らかな画像を出力することが可能になる。
【０１３４】
車内のディスプレイ５は滑らかで外部の照度に応じた明るさの動画像を表示することにより、車窓から見る車外の景色とディスプレイ５が表示する動画像の明るさおよび動きの差が小さくなるため、自動車１００を運転する運転者は違和感なく運転に集中することができる。
【０１３５】
この結果、画像処理装置３は、滑らかで、ノイズが少なく、外部の照度に合致した映像を出力することができる。
【０１３６】
なお、本実施例では、常時、露光時間（Ａ）と露光時間（Ｂ）とを対比させ、一枚のフレームの露光時間を所定値以上のＳＮ比が確保できる画像を撮像可能な長さにし、複数のフレームを合成することでディスプレイに出力する画像を生成している。しかし、例えば昼間など、露光時間が短くとも明瞭な画像が取得できる場合は、露光時間の最大時間の制限をする必要はない。例えば、車外の照度を検出する照度センサをインターフェイス３０１に接続可能に設け、所定以下の照度であった場合に、露光時間の制限を掛けるようにしても良い。
【０１３７】
また、実施例では、カメラ４０１が撮像した画像の輝度を元に露光時間（Ａ）を選択しているが、これに限るものではない。例えば、カメラ４０１の撮像方向の照度を検出する照度センサを設け、その照度センサの照度情報を元に、露光時間（Ａ）の選択を行うようにしても良い。但し、本実施例の様にカメラ４０１が撮像した画像の輝度を元に露光時間の選択をすれば、照度センサが無くとも適切な露光時間を選択できることが可能である。
【符号の説明】
【０１３８】
１  車速パルス出力部
２  ドライブシフト情報出力部
３  画像処理装置
４  撮像装置
１００  自動車
３０１  インターフェイス
３０２  ＣＰＵ
３０３  ＲＯＭ
３０４  通信画像制御部
３０５  ＲＡＭ
３０７  フレームメモリ
３０６  ＧＤＣ
３０８  カウンタ
３０９  バス
４０１  カメラ
４０２  カメラ制御部
４０３  ＲＡＭ
【図１】
0005742541.tif 000008
【図２】
0005742541.tif 000009
【図３】
0005742541.tif 000010
【図４】
0005742541.tif 000011
【図５】
0005742541.tif 000012
【図６】
0005742541.tif 000013
【図７】
0005742541.tif 000014
【図８】
0005742541.tif 000015
【図９】
0005742541.tif 000016
【図１０】
0005742541.tif 000017
【図１１】
0005742541.tif 000018
【図１２】
0005742541.tif 000019
【図１３】
0005742541.tif 000020
【図１４】
0005742541.tif 000021
【図１５】
0005742541.tif 000022
【図１６】
0005742541.tif 000023
【図１７】
0005742541.tif 000024
【図１８】
0005742541.tif 000025