特表-17145818IP Force 特許公報掲載プロジェクト 2015.5.11 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ソニー株式会社の特許一覧
再表2017-145818信号処理装置、および信号処理方法、並びにプログラム
<>
  • 再表WO2017145818-信号処理装置、および信号処理方法、並びにプログラム 図000003
  • 再表WO2017145818-信号処理装置、および信号処理方法、並びにプログラム 図000004
  • 再表WO2017145818-信号処理装置、および信号処理方法、並びにプログラム 図000005
  • 再表WO2017145818-信号処理装置、および信号処理方法、並びにプログラム 図000006
  • 再表WO2017145818-信号処理装置、および信号処理方法、並びにプログラム 図000007
  • 再表WO2017145818-信号処理装置、および信号処理方法、並びにプログラム 図000008
  • 再表WO2017145818-信号処理装置、および信号処理方法、並びにプログラム 図000009
  • 再表WO2017145818-信号処理装置、および信号処理方法、並びにプログラム 図000010
  • 再表WO2017145818-信号処理装置、および信号処理方法、並びにプログラム 図000011
  • 再表WO2017145818-信号処理装置、および信号処理方法、並びにプログラム 図000012
  • 再表WO2017145818-信号処理装置、および信号処理方法、並びにプログラム 図000013
  • 再表WO2017145818-信号処理装置、および信号処理方法、並びにプログラム 図000014
< >
(19)【発行国】日本国特許庁(JP)
【公報種別】再公表特許(A1)
(11)【国際公開番号】WO/0
(43)【国際公開日】2017年8月31日
【発行日】2018年12月13日
(54)【発明の名称】信号処理装置、および信号処理方法、並びにプログラム
(51)【国際特許分類】
   G06F 11/14 20060101AFI20181116BHJP
【FI】
   G06F11/14
【審査請求】未請求
【予備審査請求】未請求
【全頁数】35
【出願番号】特願2018-501584(P2018-501584)
(21)【国際出願番号】PCT/0/0
(22)【国際出願日】2017年2月10日
(31)【優先権主張番号】特願2016-32983(P2016-32983)
(32)【優先日】2016年2月24日
(33)【優先権主張国】JP
(81)【指定国】 AP(BW,GH,GM,KE,LR,LS,MW,MZ,NA,RW,SD,SL,ST,SZ,TZ,UG,ZM,ZW),EA(AM,AZ,BY,KG,KZ,RU,TJ,TM),EP(AL,AT,BE,BG,CH,CY,CZ,DE,DK,EE,ES,FI,FR,GB,GR,HR,HU,IE,IS,IT,LT,LU,LV,MC,MK,MT,NL,NO,PL,PT,RO,RS,SE,SI,SK,SM,TR),OA(BF,BJ,CF,CG,CI,CM,GA,GN,GQ,GW,KM,ML,MR,NE,SN,TD,TG),AE,AG,AL,AM,AO,AT,AU,AZ,BA,BB,BG,BH,BN,BR,BW,BY,BZ,CA,CH,CL,CN,CO,CR,CU,CZ,DE,DJ,DK,DM,DO,DZ,EC,EE,EG,ES,FI,GB,GD,GE,GH,GM,GT,HN,HR,HU,ID,IL,IN,IR,IS,JP,KE,KG,KH,KN,KP,KR,KW,KZ,LA,LC,LK,LR,LS,LU,LY,MA,MD,ME,MG,MK,MN,MW,MX,MY,MZ,NA,NG,NI,NO,NZ,OM,PA,PE,PG,PH,PL,PT,QA,RO,RS,RU,RW,SA,SC,SD,SE,SG,SK,SL,SM,ST,SV,SY,TH,TJ,TM,TN,TR,TT,TZ
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.HDMI
(71)【出願人】
【識別番号】000002185
【氏名又は名称】ソニー株式会社
(74)【代理人】
【識別番号】100121131
【弁理士】
【氏名又は名称】西川 孝
(74)【代理人】
【識別番号】100082131
【弁理士】
【氏名又は名称】稲本 義雄
(72)【発明者】
【氏名】池田 哲崇
【テーマコード(参考)】
5B027
【Fターム(参考)】
5B027BB01
(57)【要約】
本開示は、信号処理を停止することなく故障検出することができるようにする信号処理装置、および信号処理方法、並びにプログラムに関する。
信号処理部の前段と後段との信号のトグル率を計算し、その差分が所定の閾値よりも大きい場合、信号処理部に故障に起因するエラーが発生しているものとみなす。本開示は、車両の運転支援装置に適用することができる。
【特許請求の範囲】
【請求項1】
デジタル信号からなる入力信号を順次処理する信号処理部と、
入力信号のトグル率を第1のトグル率として計算する第1のトグル率計算部と、
前記信号処理部により信号処理された信号のトグル率を第2のトグル率として計算する第2のトグル率計算部と、
前記第1のトグル率と、前記第2のトグル率との差分と、所定の閾値とを比較し、比較結果に応じてエラーの発生を検出するエラー検出部と
を含む信号処理装置。
【請求項2】
前記第1のトグル率計算部、および前記第2のトグル率計算部は、いずれも、所定のクロック数に対する、前記デジタル信号の各桁の数値の変化する回数の割合の、全ての前記桁の平均を前記トグル率として計算する
請求項1に記載の信号処理装置。
【請求項3】
前記入力信号は、バイナリデータからなる画像信号であり、
前記第1のトグル率計算部、および前記第2のトグル率計算部は、いずれも、1フレーム分のビット毎のトグル率の平均値を、前記信号処理部の前段の平均トグル率、および後段の平均トグル率として計算する
請求項1に記載の信号処理装置。
【請求項4】
前記入力信号は、バイナリデータからなる画像信号であり、
前記第1のトグル率計算部、および前記第2のトグル率計算部は、いずれも、1フレーム分の各ビットのトグル率の平均値を計算し、さらに、それらの全ビットの平均値を、前記信号処理部の前段の平均トグル率、および後段の平均トグル率として計算する
請求項1に記載の信号処理装置。
【請求項5】
前記入力信号は、バイナリデータからなる画像信号であり、
前記エラー検出部は、前記第1のトグル率と、前記第2のトグル率との差分が、第1の閾値からなるエラー閾値より大きい場合、前記信号処理部のエラーの発生を検出する
請求項1に記載の信号処理装置。
【請求項6】
前記信号処理部は、複数段にシリーズに接続されており、さらに、それぞれの前記信号処理部の間にトグル率計算部が設けられており、それぞれの前記信号処理部の前段の前記トグル率計算部が、前記第1のトグル率計算部であり、それぞれの前記信号処理部の後段の前記トグル率計算部が、前記第2のトグル率計算部であり、
前記エラー検出部は、それぞれの複数の前記信号処理部について、前記第1のトグル率と、前記第2のトグル率との差分が、前記エラー閾値より大きい場合、前記信号処理部のエラーの発生を検出し、前記信号処理部のエラーの発生を検出したとき、前記エラーが検出された前記信号処理部の段数を通知する
請求項5に記載の信号処理装置。
【請求項7】
最前段の前記第1のトグル率計算部は、前記入力信号のトグル率を入力トグル率として計算し、
前記入力トグル率が、所定の閾値よりも小さい場合、前記エラー検出部は、前記エラー閾値を、前記第1の閾値よりも小さな第2の閾値に設定し、それぞれの複数の前記信号処理部について、前記第1のトグル率と、前記第2のトグル率との差分が、前記エラー閾値より大きいとき、前記信号処理部のエラーの発生を検出し、前記信号処理部のエラーの発生を検出したとき、前記エラーが検出された前記信号処理部の段数を通知する
請求項6に記載の信号処理装置。
【請求項8】
前記画像信号を撮像する複数の撮像部をさらに含み、
前記複数の前記撮像部のそれぞれに複数段の前記信号処理部が設けられ、
前記信号処理部は、複数段にシリーズに接続されており、さらに、それぞれの前記信号処理部の間に前記トグル率計算部が設けられており、それぞれの前記信号処理部の前段の前記トグル率計算部が、前記第1のトグル率計算部であり、それぞれの前記信号処理部の後段の前記トグル率計算部が、前記第2のトグル率計算部であり、
前記入力トグル率が、所定の閾値よりも小さい場合、前記エラー検出部は、前記エラー閾値を、前記第1の閾値よりも小さな第2の閾値に設定し、それぞれの複数の前記信号処理部について、前記第1のトグル率と、前記第2のトグル率との差分が、前記エラー閾値より大きいとき、並びに、前記撮像部のそれぞれについて、前記複数の前記信号処理部のうち、最終段の、前記第2のトグル率間の差分が所定の閾値よりも大きいとき、前記信号処理部のエラーの発生を検出し、前記信号処理部のエラーの発生を検出したとき、前記エラーが検出された前記信号処理部の段数を通知する
請求項6に記載の信号処理装置。
【請求項9】
前記信号処理部の信号処理結果に基づいて、車両に設けられる駆動部分の動作を制御して運転を支援する支援部と、
前記車両の制御情報を表示する表示部とをさらに含み、
前記エラー検出部によりエラーが検出された場合、前記支援部は、前記信号処理部の信号処理結果に基づいた、車両に設けられる駆動部分の動作を制御した運転の支援を停止する
請求項1に記載の信号処理装置。
【請求項10】
デジタル信号からなる入力信号を順次処理し、
入力信号のトグル率を第1のトグル率として計算し、
前記信号処理部により信号処理された信号のトグル率を第2のトグル率として計算し、
前記第1のトグル率と、前記第2のトグル率との差分と、所定の閾値とを比較し、比較結果に応じてエラーの発生を検出する
ステップを含む信号処理方法。
【請求項11】
デジタル信号からなる入力信号を順次処理する信号処理部と、
入力信号のトグル率を第1のトグル率として計算する第1のトグル率計算部と、
前記信号処理部により信号処理された信号のトグル率を第2のトグル率として計算する第2のトグル率計算部と、
前記第1のトグル率と、前記第2のトグル率との差分と、所定の閾値とを比較し、比較結果に応じてエラーの発生を検出するエラー検出部と
してコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、信号処理装置、および信号処理方法、並びにプログラムに関し、特に、信号処理を停止することなく故障検出できるようにした信号処理装置、および信号処理方法、並びにプログラムに関する。
【背景技術】
【0002】
画像信号、および音声信号等を含む信号の処理を行う複数の信号処理部からなる信号処理装置において、いずれかの信号処理部において、故障が発生しているか否かを検出するには、一般的に、信号処理を停止して、テストパターンなどの既知の信号を処理させて、既知の処理結果が出力されるか否かに基づいて判断する必要があった。
【0003】
より具体的には、一般的に、信号処理を継続動作する回路において故障を判別するには、一旦画像出力を止めてテストパターンを流し、予め作成している期待値と比較することで故障の有無を検出する技術が提案されている(特許文献1参照)。
【0004】
また、ブランク期間中にテスト画像を挿入し、期待値と比較することで故障の有無を検出する技術が提案されている(特許文献2参照)。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2009−246803号公報
【特許文献2】特開2009−111546号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、特許文献1,2の技術においては、いったん信号処理を停止させたうえで故障を検出する必要があった。
【0007】
また、全ての故障を検出するには全回路を活性化させる必要があるが、そのためには多くのテスト画像や、パラメータを用意してテスト実行しなければできないにも関わらず、従来においては、特定の演算対象データ(テスト画像に依存)や、一意に設定した演算パラメータで活性化する一部の回路の故障の有無を検出することしかできなかった。
【0008】
本開示は、このような状況に鑑みてなされたものであり、特に、リアルタイムで、かつ、特定の演算対象データ(テスト画像に依存)や、一意に設定した演算パラメータを用いることなく、信号処理装置の故障検出を実現できるようにするものである。
【課題を解決するための手段】
【0009】
本開示の一側面の信号処理装置は、デジタル信号からなる入力信号を順次処理する信号処理部と、入力信号のトグル率を第1のトグル率として計算する第1のトグル率計算部と、前記信号処理部により信号処理された信号のトグル率を第2のトグル率として計算する第2のトグル率計算部と、前記第1のトグル率と、前記第2のトグル率との差分と、所定の閾値とを比較し、比較結果に応じてエラーの発生を検出するエラー検出部とを含む信号処理装置である。
【0010】
前記第1のトグル率計算部、および前記第2のトグル率計算部には、いずれも、所定のクロック数に対する、前記デジタル信号の各桁の数値の変化する回数の割合の、全ての前記桁の平均を前記トグル率として計算させるようにすることができる。
【0011】
前記入力信号は、バイナリデータからなる画像信号とすることができ、前記第1のトグル率計算部、および前記第2のトグル率計算部には、いずれも、1フレーム分のビット毎のトグル率の平均値を、前記信号処理部の前段の平均トグル率、および後段の平均トグル率として計算させるようにすることができる。
【0012】
前記入力信号は、バイナリデータからなる画像信号とすることができ、前記第1のトグル率計算部、および前記第2のトグル率計算部には、いずれも、1フレーム分の各ビットのトグル率の平均値を計算させ、さらに、それらの全ビットの平均値を、前記信号処理部の前段の平均トグル率、および後段の平均トグル率として計算させるようにすることができる。
【0013】
前記入力信号は、バイナリデータからなる画像信号とすることができ、前記エラー検出部には、前記第1のトグル率と、前記第2のトグル率との差分が、第1の閾値からなるエラー閾値より大きい場合、前記信号処理部のエラーの発生を検出させる。
【0014】
前記信号処理部には、複数段にシリーズに接続されており、さらに、それぞれの前記信号処理部の間にトグル率計算部が設けられており、それぞれの前記信号処理部の前段の前記トグル率計算部が、前記第1のトグル率計算部であり、それぞれの前記信号処理部の後段の前記トグル率計算部が、前記第2のトグル率計算部であり、前記エラー検出部には、それぞれの複数の前記信号処理部について、前記第1のトグル率と、前記第2のトグル率との差分が、前記エラー閾値より大きい場合、前記信号処理部のエラーの発生を検出し、前記信号処理部のエラーの発生を検出したとき、前記エラーが検出された前記信号処理部の段数を通知させるようにすることができる。
【0015】
最前段の前記第1のトグル率計算部には、前記入力信号のトグル率を入力トグル率として計算し、前記入力トグル率が、所定の閾値よりも小さい場合、前記エラー検出部には、前記エラー閾値を、前記第1の閾値よりも小さな第2の閾値に設定させ、それぞれの複数の前記信号処理部について、前記第1のトグル率と、前記第2のトグル率との差分が、前記エラー閾値より大きいとき、前記信号処理部のエラーの発生を検出させ、前記信号処理部のエラーの発生を検出したとき、前記エラーが検出された前記信号処理部の段数を通知させるようにすることができる。
【0016】
前記画像信号を撮像する複数の撮像部をさらに含ませるようにすることができ、前記複数の前記撮像部のそれぞれに複数段の前記信号処理部が設けられ、前記信号処理部は、複数段にシリーズに接続されており、さらに、それぞれの前記信号処理部の間に前記トグル率計算部が設けられており、それぞれの前記信号処理部の前段の前記トグル率計算部が、前記第1のトグル率計算部であり、それぞれの前記信号処理部の後段の前記トグル率計算部が、前記第2のトグル率計算部であり、前記入力トグル率が、所定の閾値よりも小さい場合、前記エラー検出部には、前記エラー閾値を、前記第1の閾値よりも小さな第2の閾値に設定させ、それぞれの複数の前記信号処理部について、前記第1のトグル率と、前記第2のトグル率との差分が、前記エラー閾値より大きいとき、並びに、前記撮像部のそれぞれについて、前記複数の前記信号処理部のうち、最終段の、前記第2のトグル率間の差分が所定の閾値よりも大きいとき、前記信号処理部のエラーの発生を検出させ、前記信号処理部のエラーの発生を検出したとき、前記エラーが検出された前記信号処理部の段数を通知させるようにすることができる。
【0017】
前記信号処理部の信号処理結果に基づいて、車両に設けられる駆動部分の動作を制御して運転を支援する支援部と、前記車両の制御情報を表示する表示部とがさらに設けられ、前記エラー検出部によりエラーが検出された場合、前記支援部には、前記信号処理部の信号処理結果に基づいた、車両に設けられる駆動部分の動作を制御した運転の支援を停止させるようにすることができる。
【0018】
本技術の一側面の信号処理方法は、デジタル信号からなる入力信号を順次処理し、入力信号のトグル率を第1のトグル率として計算し、前記信号処理部により信号処理された信号のトグル率を第2のトグル率として計算し、前記第1のトグル率と、前記第2のトグル率との差分と、所定の閾値とを比較し、比較結果に応じてエラーの発生を検出するステップを含む信号処理方法である。
【0019】
本技術の一側面のプログラムは、デジタル信号からなる入力信号を順次処理する信号処理部と、入力信号のトグル率を第1のトグル率として計算する第1のトグル率計算部と、前記信号処理部により信号処理された信号のトグル率を第2のトグル率として計算する第2のトグル率計算部と、前記第1のトグル率と、前記第2のトグル率との差分と、所定の閾値とを比較し、比較結果に応じてエラーの発生を検出するエラー検出部としてコンピュータを機能させるためのプログラム。
【0020】
本開示の一側面においては、デジタル信号からなる入力信号により順次処理する、入力信号のトグル率が第1のトグル率として計算され、信号処理された信号のトグル率が第2のトグル率として計算され、前記第1のトグル率と、前記第2のトグル率との差分と、所定の閾値とを比較し、比較結果に応じてエラーの発生が検出される。
【発明の効果】
【0021】
本開示の一側面によれば、リアルタイムで、かつ、特定の演算対象データ(テスト画像に依存)や、一意に設定した演算パラメータを用いることなく、信号処理装置の故障検出を実現することが可能となる。
【図面の簡単な説明】
【0022】
図1】本開示を適用した車載カメラシステムの構成例を示す図である。
図2】全ビットの平均トグル率を説明する図である。
図3図1の車載カメラシステムにおけるエラー判定処理を説明するフローチャートである。
図4図1の車載カメラシステムにおけるエラー判定処理を説明する図である。
図5図1の車載カメラシステムにおけるその他のエラー判定処理を説明するフローチャートである。
図6図5のフローチャートによるエラー判定処理を説明する図である。
図7図5のフローチャートによるエラー判定処理を説明する図である。
図8】本開示を適用した車載ステレオカメラシステムの構成例を示す図である。
図9図8の車載ステレオカメラシステムにおけるエラー判定処理を説明するフローチャートである。
図10】汎用のパーソナルコンピュータの構成例を説明する図である。
図11】車両制御システムの概略的な構成の一例を示すブロック図である。
図12】車外情報検出部及び撮像部の設置位置の一例を示す説明図である。
【発明を実施するための形態】
【0023】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【0024】
また、以下の順序で説明を行う。
1.第1の実施の形態
2.変形例
3.第2の実施の形態
4.第1の応用例
5.第2の応用例
【0025】
<<1.第1の実施の形態>>
<本開示の信号処理装置を適用した車載カメラシステムの第1の構成例>
図1は、本開示の信号処理装置を適用した車載カメラシステムの第1の構成例を示している。
【0026】
図1の車載カメラシステムは、例えば、車両のフロントウィンドウ、リアウィンドウ、およびサイドウィンドウ等のそれぞれに搭載されるイメージセンサにより撮像された画像を信号処理し、信号処理結果に基づいて、車両のステアリング、ブレーキ、およびライト等の動作を制御し、車両の運転を支援するものである。
【0027】
しかしながら、車載カメラシステムが、故障等により信号処理結果に何らかのエラーが発生するような場合、そのような信号処理結果に基づいて、ステアリング、ブレーキ、およびライト等を制御すると、車両の挙動に危険な状況を生じさせる恐れがある。
【0028】
そこで、車載カメラシステムは、信号処理におけるエラーを検出した場合には、信号処理結果に基づいた運転の支援を停止させると共に、ユーザであるドライバ(運転者)に車載カメラシステムによる運転の支援が停止されたことを速やかに通知して、ドライバの意志による運転を実施するように促すものである。
【0029】
より詳細には、図1の車載カメラシステム11は、イメージセンサ31、画像処理ブロック32、後段LSI33を備えており、処理結果を表示部12に出力する。
【0030】
イメージセンサ31は、CMOS(Complementary Metal Oxide Semiconductor)などからなり、車載カメラシステム11が搭載された車両の前方、後方、および側面方向の画像を撮像し、例えば、16ビットの画素信号からなる画像を画像処理ブロック32に出力する。尚、画素信号のビット数については、16ビット以外のビット数でもよいものであり、12ビットや10ビット等であってもよいものであるが、ここでは、一例として16ビットであるものとして説明を進めるものとする。
【0031】
画像処理ブロック32は、イメージセンサ31により撮像された16ビットの画素信号からなる画像を信号処理し、信号処理結果を後段LSI33に出力する。尚、ここでは、画像処理ブロック32が、16ビットの画素信号を信号処理して、やはり16ビットの画素信号として出力する例について説明するものとするが、これは一例であり、16ビットの画素信号を信号処理して、12ビットや20ビットなど、他のビット数の画素信号として出力するようにしてもよいものである。
【0032】
画像処理ブロック32は、トグル率計算部51−0乃至51−4、信号処理部52−1乃至52−4、および判定部53を備えている。
【0033】
トグル率計算部51−0は、信号処理部52−1の前段の入力信号である画像を構成する16ビットからなる画素信号のそれぞれについて、1フレーム毎の平均トグル率を計算し、判定部53に供給する。
【0034】
ここで、トグル率とは、画素信号の各ビットにおける0から1、および1から0へと変化する活性化率であり、このトグル率が所定の割合以上であれば、入力されてくる画像は自然画像であることを示すものである。すなわち、全面が黒画素からなる画像などの場合、例えば、ラスタスキャン順に画素信号の各ビットの値は、いずれも同じであるから、画素信号を構成する各ビットの平均トグル率は、略ゼロとなる。
【0035】
また、トグル率計算部51−1乃至51−4は、基本的にトグル率計算部51−0と同様の処理をするものであるが、信号処理部52−1乃至52−4のそれぞれの後段のトグル率を計算する。
【0036】
尚、トグル率計算部51−0乃至51−4、および信号処理部52−1乃至52−4は、それぞれ特に区別する必要がない場合、単に、トグル率計算部51、および信号処理部52と称するものとする。
【0037】
また、トグル率計算部51−0は、信号処理部52−1の前段に設けられたものであり、以降においては、第0段のトグル率計算部51とも称するものとする。さらに、信号処理部52−1乃至52−4は、それぞれ第1段乃至第4段の信号処理部52とも称するものとし、トグル率計算部51−1乃至51−4は、それぞれ第1段乃至第4段の信号処理部52の後段の第1段乃至第4段のトグル率計算部51とも称する。
【0038】
より詳細には、トグル率計算部51−0は、入力画像における各画素信号を、例えば、ラスタスキャン順に読み出し、16ビットのそれぞれの画素信号のトグル率を計算し、その平均を平均トグル率として計算する。
【0039】
より具体的には、例えば、図2で示されるような16ビットの画素信号が、ラスタスキャン順に読み出されると、トグル率計算部51は、各ビットのトグル率を計算する。図2においては、最下段のクロック信号に同期して、上からbit[15]乃至bit[0]で示される16ビット分の画素信号の時系列の変化が示されており、5クロック分のトグル率が示されている。
【0040】
図2においては、例えば、16ビット目の信号となるbit[15]については、0から1への変化が1回であるので、トグル率計算部51は、20%であり、bit[14]については、0から1への変化が1回であり、1から0への変化が1回の合計2回であるので、トグル率は、40%である。
【0041】
また、bit[2]については、0から1への変化が2回であり、1から0への変化が1回の合計3回であるので、トグル率は、60%であり、bit[1]については、0から1への変化が2回であり、1から0への変化が3回の合計5回であるので、トグル率は、100%であり、bit[0]については、0から1への変化が3回であり、1から0への変化が2回の合計5回であるので、トグル率は、100%である。
【0042】
すなわち、ここでいうトグル率は、所定のクロック数に対する、各ビット(各桁)の数値が変化する回数の割合である。尚、ここでは、バイナリデータからなるデジタル信号を対象としているので、所定クロック数に対する各ビットの数値の変化の回数、すなわち、各桁の数値の変化の回数の割合がトグル率となる。したがって、バイナリデータ、すなわち、2進数以外の表現を用いたデジタル信号に対しても、所定のクロック数に対する、各桁における数値の変化の回数の割合をトグル率として定義することができる。
【0043】
トグル率計算部51は、このように求められた16ビット分のトグル率の1フレーム分であって、かつ、16ビット分の平均値を平均トグル率として算出する。
【0044】
判定部53は、トグル率計算部51−0乃至51−4より供給されてくるトグル率に基づいて、信号処理部52−1乃至52−4のいずれにおいて故障等に起因するエラーが発生しているのか否かを判定し、判定結果を後段LSI33に通知する。
【0045】
後段LSI(Large Scale Integrated circuit)33は、画像処理ブロック32の画像処理結果(信号処理結果)に基づいて、図示せぬ車両のステアリング、ブレーキ、およびライト等の動作を制御してドライバの運転を支援すると共に、信号処理結果に対応する情報をインストルメントパネル等からなる表示部12に出力して表示する。
【0046】
より詳細には、画像処理ブロック32より信号処理部52−1乃至52−4のいずれかに異常が発生していることを示す情報が供給されてきた場合、後段LSI33は、画像処理ブロック32の処理結果を利用した、図示せぬ車両のステアリング、ブレーキ、およびライト等の動作を制御してドライバの運転の支援を停止して、その旨をドライバに認識できるように表示部12に表示する。
【0047】
すなわち、信号処理部52−1乃至52−4の後段における画像のフレーム単位の平均トグル率は、所定値以上で維持されていれば、信号処理部52−1乃至52−4は、正常に機能しているとみなすことができる。逆に、信号処理部52−1乃至52−4のいずれかでエラーが発生すると、信号処理部52−1乃至52−4における平均トグル率が大きく変化する。例えば、その後段の画像信号が黒画像などの同一色の画像となってしまうような状態になると、後段以降の信号処理部52−1乃至52−4における平均トグル率がほぼ0に近い値で変化しない状態となる。
【0048】
そこで、判定部53は、トグル率計算部51−0乃至51−4の計算結果である平均トグル率の、信号処理部52−1乃至52−4の前段および後段のそれぞれの比較により、どの信号処理部52で故障が発生しエラーが生じているのかを特定し、エラーが発生している場合、その情報を後段LSI33に出力する。
【0049】
また、トグル率計算部51−0のトグル率は、入力される画像そのものに異常が発生している場合、すなわち、例えば、全体が黒画像であるような場合、以降においてフレーム単位でのトグル率の変化は期待できず、異常の発生を検出できなくなる恐れがある。そこで、このような場合、判定部53は、信号処理部52−1乃至52−4の前後のトグル率の比較結果とは無関係に異常が発生していないものとみなす。すなわち、この場合、入力画像の異常であって、信号処理部52−1乃至52−4の異常とはみなさない。
【0050】
図1の車載カメラシステムによる全ビットの平均トグル率を用いたエラー判定処理>
次に、図3のフローチャートを参照して、図1の車載カメラシステムによる全ビットの平均トグル率を用いたエラー判定処理について説明する。
【0051】
ステップS11において、判定部53は、トグル率計算部51−Nおよび信号処理部52−Nの段数を区別するカウンタNを0に初期化する。尚、信号処理部52には、第0段目は存在しないので、カウンタNが0である場合には、トグル率計算部51−0のみが設定されることになる。
【0052】
ステップS12において、第N段のトグル率計算部51−N(51−0)は、入力画像からなる1フレーム分の各画素信号の全ビットの平均トグル率(N)を計算し、判定部53に出力すると共に、入力画像の画素信号を順次信号処理部52−1に出力する。すなわち、ここでは、入力画像に対する信号処理前の1フレーム分の画像の平均トグル率(0)が計算される。より詳細には、ラスタスキャン順の各画素の画素信号における1ビット目の平均トグル率、2ビット目の平均トグル率、・・・16ビット目の平均トグル率が求められ、これらの各ビットの平均トグル率の平均が、入力画像の1フレーム分の平均トグル率(0)として算出される。
【0053】
ステップS13において、判定部53は、平均トグル率(0)が所定の閾値th0よりも高いか否かを判定する。すなわち、ここで、閾値th0は、入力画像の各画素間に変化があり、この処理により、黒画像や灰色画像といった画像の全体にわたってほぼ均一な画素値からなる何らかのエラー画像が入力されてきているか否かが判定される。ステップS13において、平均トグル率(0)が所定の閾値th0よりも高く、正常な画像が供給されてきているような場合、処理は、ステップS14に進む。
【0054】
ステップS14において、判定部53は、以降の後段の平均トグル率の信号処理部52の前後の差分における異常を検出するための閾値th1を通常閾値に設定する。
【0055】
尚、ここで設定される閾値th1については、信号処理される対象の画素信号の特性に応じて、適切な値が設定されることが望ましい。すなわち、閾値th1が不要に高すぎるとエラーが発生してもエラーを適切に検出し難くなり、逆に、低すぎるとエラーを起こしていないのに誤検出してしまうことがあるため、例えば、統計的に適切な値を設定するといった手法を取ることが望ましい。
【0056】
一方、ステップS13において、平均トグル率(0)が所定の閾値th0よりも小さく、入力画像が黒画像や灰色画像といった画像の全体にわたってほぼ均一な画素値からなる何らかのエラー画像が入力されてきているとみなされた場合、処理は、ステップS15に進む。
【0057】
ステップS15において、判定部53は、以降の後段の平均トグル率の信号処理部52の前後の差分における異常を検出するための閾値th1を通常閾値よりも十分に低い値に設定する。すなわち、入力画像がエラー画像である可能性が高いので、以降において、同様な画像が入力されてくる可能性があり、以降の信号処理部52−1乃至52−4の前後の平均トグル率(N)変化がない状態であっても、信号処理部52−1乃至52−4の異常ではない可能性があるため、閾値th1を十分に小さくして変化がないような場合でも異常ではないものとみなすようにする。
【0058】
ステップS16において、判定部53は、トグル率計算部51−Nおよび信号処理部52−Nの段数を区別するカウンタNを1インクリメントする。
【0059】
ステップS17において、第N段の信号処理部52−Nは、第N段目の信号処理を実行し、後段のトグル率計算部51−Nに出力する。
【0060】
ステップS18において、トグル率計算部51−Nは、第N段目の信号処理部52−Nの信号処理結果における1フレーム分の全ビットの平均トグル率(N)を計算し、判定部53に出力する。
【0061】
ステップS19において、判定部53は、第N段目の信号処理部52−Nの後段の平均トグル率(N)と前段の平均トグル率(N−1)との差分絶対値が所定の閾値th1よりも大きいか否かを判定する。
【0062】
ステップS19において、例えば、平均トグル率(N−1)と平均トグル率(N)との差分絶対値が所定の閾値th1よりも大きく、平均トグル率に大きな変化があり、第N段目の信号処理部52−Nにエラーがあるとみなされた場合、処理は、ステップS20に進む。
【0063】
ステップS20において、判定部53は、第N段目の信号処理部52−Nにエラーが発生していることを記憶する。
【0064】
一方、ステップS19において、例えば、平均トグル率(N−1)と平均トグル率(N)との差分絶対値が所定の閾値th1よりも小さく、平均トグル率に大きな変化がない場合、第N段目の信号処理部52−Nにエラーがないとみなされた場合、ステップS20の処理はスキップされる。
【0065】
ステップS21において、判定部53は、トグル率計算部51−Nおよび信号処理部52−Nを区別するためのカウンタNが4であるか、すなわち、4段全ての信号処理部52についてエラーの有無を確認したか否かを確認する。ステップS21において、カウンタNが4ではない場合、処理は、ステップS16に戻り、カウンタNが4になるまで、すなわち、信号処理部52−1乃至52−4の全てにわたってエラーの発生の有無が確認されるまで、ステップS16乃至S21の処理が繰り返される。
【0066】
そして、信号処理部52−1乃至52−4の全てにわたってエラーの発生の有無が確認され、カウンタNが4であるとみなされた場合、処理は、ステップS22に進む。
【0067】
ステップS22において、判定部53は、信号処理部52−1乃至52−4のエラーの発生の有無を判定し、エラーが発生していた場合、処理は、ステップS23に進む。
【0068】
ステップS23において、判定部53は、エラーの発生していた信号処理部52を特定する情報を後段LSI33に出力する。
【0069】
この処理により、後段LSI33は、エラーが発生していることを示す情報と共に、信号処理部52を特定する情報を表示部12に表示し、処理は、ステップS24に進む。
【0070】
ステップS24において、後段LSI33は、信号処理部52−1乃至52−4の処理結果を利用した、図示せぬ車両のステアリング、ブレーキ、およびライト等の動作の制御による運転支援を停止して、その旨をドライバに認識できるように表示部12に表示し、処理は、ステップS25に進む。
【0071】
一方、ステップS22において、エラーが発生していないとみなされた場合、処理は、ステップS26に進む。
【0072】
ステップS26において、判定部53は、閾値th1が通常より小さく設定されているか、すなわち、入力画像のエラーが発生しているか否かを判定する。ステップS26において、閾値th1が通常より小さく設定されており、入力画像が、例えば、黒画像などであり、適切な画像処理が困難であるとき、処理は、ステップS24に進む。
【0073】
すなわち、この場合、入力画像が黒画像などによるものであるので、信号処理部52−1乃至52−4にエラー等が発生しているのかの判断はできないが、信号処理部52−1乃至52−4の信号処理結果を用いた運転支援については、適切に実行できない恐れがあるので、運転支援のみが停止され、その旨のみが表示部12に表示される。
【0074】
また、ステップS26において、閾値th1が通常より小さく設定されておらず、適切に処理ができる正常な状態であるとき、処理は、ステップS25に進む。
【0075】
すなわち、この場合、入力画像も黒画像などではなく、また、エラーもないものとみなされるので、後段LSI33は、信号処理部52−1乃至52−4のそれぞれの信号処理結果に基づいて、図示せぬ車両のステアリング、ブレーキ、およびライト等の動作を制御してドライバの運転の支援を継続する。
【0076】
ステップS25において、判定部53は、次の画像、すなわち、次のフレームの入力があるか否かを判定し、次のフレームの入力がある場合、処理は、ステップS11に戻り、それ以降の処理が繰り返される。そして、ステップS25において、次のフレームの入力がない場合、処理は終了する。
【0077】
以上の処理により、例えば、図4の左部で示されるように、信号処理部52−1前段のトグル率計算部51−0により計算される平均トグル率(0)が、時系列に上から15%、14%、および15%と推移しているような場合、正常な画像が入力されているものとみなされて、閾値th1は、通常閾値が設定される。これにより、後段の例えば、図2で示される第4段目となる信号処理部52−4の後段の平均トグル率(4)が、時系列に13%、14%、および13%と推移しているような場合、正常な信号処理結果が出力されているものとみなされエラーは検出されない。
【0078】
一方、図4の右部で示されるように、第0段目のトグル率(0)は、時系列に15%、14%、15%と変移し、第1段目のトグル率(1)は、時系列に14%、12%、14%と変移し、第2段目のトグル率(2)は、時系列に13%、11%、13%と変移し、第3段目のトグル率(3)は、時系列に12%、10%、1%と変移し、第4段目のトグル率(4)は、時系列に12%、10%、1%と変移している場合、3番目のタイミングにおいては、信号処理部52−3にエラーが発生することで、信号処理部52−4においても平均トグル率が低下する。
【0079】
結果として、このような場合、図4の右側における時系列の3番目のタイミングにおいて、信号処理部52−3にエラーが発生していることが通知されて、以降において、信号処理結果が利用されない状態となる。
【0080】
尚、図示しないが、入力画像が黒色画像であるような場合、入力画像における平均トグル率(0)については、略0となり、当然のことながら平均トグル率(N−1)と平均トグル率(N)との差分絶対値も略0となり、この場合、信号処理部52−1乃至52−4のいずれかにおいてエラー等が発生していても、エラー等の発生は確認できないので、この場合の処理については、信号処理結果に基づいた図示せぬ車両のステアリング、ブレーキ、およびライト等の動作の制御による運転支援を中止して、その旨をドライバに認識できるように表示部12に表示する。
【0081】
この処理により、ドライバは、画像に対応した運転を支援する機能が停止していることを認識し、自らが運転に注力しなければならないことを適切に認識させることが可能となり、突然、運転を支援する機能がなくなったことで、ドライバの運転に対する意識が低下しているようなことで生じる事故の発生を低減させることが可能となる。
【0082】
また、以上の処理においては、閾値th1を、信号処理部52−Nの全てについて同一の値として設定する例について説明してきたが、信号処理部52−Nのそれぞれの機能などに応じて異なる値に設定するようにしてもよい。
【0083】
すなわち、信号処理部52−Nは、それぞれ平均トグル率を変化させるような処理を行うこともあるので、閾値th1は、信号処理部52−Nのそれぞれの機能によって適切な値が設定されることが望ましい。
【0084】
例えば、特定の信号処理部52が、ゲイン処理の様に掛け算を行うような機能を備えているような場合、他の信号処理部52に対して、平均トグル率が上昇する傾向を示す可能性がある。逆に、例えば、特定の信号処理部52が、明るすぎる画像を暗く調整するような処理では、他の信号処理部52に対して、平均トグル率が下がるような傾向を示す可能性がある。
【0085】
従って、信号処理部52−Nの平均トグル率は、処理内容に応じた、それぞれ個別に異なる傾向を示す可能性があるので、閾値th1についても、個別に設定するようにしてもよい。
【0086】
例えば、信号処理部52−Nのそれぞれについて、閾値th1に代えて、閾値th11(=閾値th1×kN)が、設定されるようにしてもよい。ここで、kNは、ブロック固有係数であり、例えば、N段目の信号処理部52−Nに応じて、ブロック固有係数kNを閾値th1に乗じることにより、信号処理部52−Nの機能や特性に応じて補正された閾値th1に対応する閾値th11を設定する。このように、信号処理部52−Nの個別の特性に応じて、閾値th1が補正された閾値th11を設定することにより、信号処理部52の故障の有無を、より高精度に検出することができる。
【0087】
以上の処理により、リアルタイムで、かつ、特定の演算対象データ(テスト画像に依存)や、一意に設定した演算パラメータを用いることなく、画像処理装置の故障検出を信号処理部の単位で実現することが可能となる。
【0088】
また、画像を利用した運転支援を実現する機能を実現するにあたって、リアルタイムでエラーの発生を検出して、運転支援における誤動作の発生を抑制すると共に、ドライバに対して運転支援が停止したことを適切に提示することが可能となる。
【0089】
<<2.変形例>>
以上においては、画像信号の全ビットの平均トグル率が求められて、第N段目の信号処理部52−Nのエラーの発生の有無を検出する例について説明してきたが、ビット毎に平均トグル率を求めて、信号処理部52−Nのビット単位でのエラーの発生の有無を検出し、より高精度なエラー検出を実現するようにしてもよい。
【0090】
尚、ビット毎に平均トグル率を求めて、信号処理部52−Nのビット単位でのエラーの発生の有無を検出するようにした車載カメラシステムの基本的な構成については、図1と同様であるので、その説明は省略するものとする。
【0091】
ただし、トグル率計算部51−0乃至51−4については、画像信号のビット毎に平均トグル率を計算して判定部53に供給する。判定部53は、トグル率計算部51−0乃至51−4を用いて、画像信号のビット毎の平均トグル率を計算して、ビット単位での信号処理部52−1乃至52−4のエラーの有無を検出する。
【0092】
図1の車載カメラシステムによるビット毎の平均トグル率を用いたエラー判定処理>
次に、図5のフローチャートを参照して、図1の車載カメラシステムによるビット毎の平均トグル率を用いたエラー判定処理について説明する。
【0093】
ステップS51において、判定部53は、トグル率計算部51−Nおよび信号処理部52−Nの段数を区別するカウンタNと、画素信号におけるビット位置を区別するカウンタMとを0に初期化する。尚、信号処理部52には、第0段目は存在しないので、ここでは、トグル率計算部51−0のみが設定されることになる。
【0094】
ステップS52において、第N段のトグル率計算部51−N(51−0)は、入力画像からなる1フレーム分の各画素信号のMビット目の平均トグル率(N,M)を計算し、判定部53に出力すると共に、入力画像の画素信号を順次信号処理部52−1に出力する。すなわち、ここでは、入力画像に対する信号処理前の1フレーム分の画像のMビット目の平均トグル率(N,M)(=(0,M))が計算される。
【0095】
ステップS53において、判定部53は、平均トグル率(N,M)が所定の閾値thM0よりも高いか否かを判定する。ステップS53において、Mビット目の平均トグル率(0,M)が所定の閾値thM0よりも高く、正常な画像が供給されてきているような場合、処理は、ステップS54に進む。
【0096】
ステップS54において、判定部53は、Mビット目の以降の後段の平均トグル率の信号処理部52の前後の差分におけるエラーを検出するための閾値thM1を通常閾値に設定する。
【0097】
一方、ステップS53において、Mビット目の平均トグル率(0,M)が所定の閾値thM0よりも小さく、エラー画像が入力されてきているとみなされた場合、処理は、ステップS55に進む。
【0098】
ステップS55において、判定部53は、以降の後段のMビット目の平均トグル率の信号処理部52の前後の差分におけるエラーを検出するための閾値thM1を通常閾値よりも十分に低い値に設定する。すなわち、入力画像がエラー画像である可能性が高いので、以降において、同様な画像が入力されてくる可能性があり、以降の信号処理部52−1乃至52−4の前後の平均トグル率(N,M)の変化がない状態であっても、信号処理部52−1乃至52−4のエラーではない可能性があるため、閾値thM1を十分に小さくして変化がないような場合でもエラーではないものとみなすものとする。
【0099】
ステップS56において、判定部53は、ビット位置を区別するカウンタMが15になっているか否かを判定する。すなわち、全ビットについて、それぞれ閾値thM1が設定されたか否かを判定し、全てのビットについて、それぞれの閾値thM1が設定されていない場合、処理は、ステップS57に進む。
【0100】
ステップS57において、判定部53は、ビット位置を区別するカウンタMを1インクリメントし、処理は、ステップS52に戻る。
【0101】
すなわち、各ビットについて、閾値thM1が設定されるまで、ステップS52乃至S56の処理が繰り返される。そして、ステップS56において、全ビットについて、閾値thM1が設定された場合、処理は、ステップS58に進む。
【0102】
ここで、各ビットに設定される閾値thM1については、信号処理される対象の画素信号の特性に応じて、適切な値が設定されることが望ましい。さらに、ビット毎に適切な閾値が設定されることが望ましい。すなわち、画素信号は、上位ビット程、平均トグル率が低く、下位ビット程、トグル率が高い。すなわち、上位ビットは、大きな変動がないと変化しないが、下位ビットは、小さな変動の影響を受け易い。このため、各ビットに設定される閾値thM1は、ビット位置に応じて適切な値とすることが望ましく、例えば、統計処理などに基づいて、適切な値が設定されることが望ましい。
【0103】
ステップS58において、判定部53は、ビット位置を区別するカウンタMを0に初期化する。
【0104】
ステップS59において、判定部53は、トグル率計算部51−Nおよび信号処理部52−Nの段数を区別するカウンタNを1インクリメントする。
【0105】
ステップS60において、第N段の信号処理部52−Nは、第N段目の信号処理を実行し、後段のトグル率計算部51−Nに出力する。
【0106】
ステップS61において、トグル率計算部51−Nは、第N段目の信号処理部52−Nの信号処理結果における1フレーム分のMビット目の平均トグル率(N,M)を計算し、判定部53に出力する。
【0107】
ステップS62において、判定部53は、第N段目のMビット目の信号処理部52−Nの後段の平均トグル率(N,M)と前段の平均トグル率(N−1,M)との差分絶対値が所定の閾値thM1よりも大きいか否かを判定する。
【0108】
ステップS62において、例えば、平均トグル率(N−1,M)と平均トグル率(N,M)との差分絶対値が所定の閾値thM1よりも大きく、平均トグル率に大きな変化があり、第N段目の信号処理部52−Nの第Mビット目にエラーが発生しているとみなされた場合、処理は、ステップS63に進む。
【0109】
ステップS63において、判定部53は、第N段目の信号処理部52−Nの第Mビット目にエラーが発生していることを記憶する。
【0110】
一方、ステップS62において、例えば、平均トグル率(N−1)と平均トグル率(N)との差分絶対値が所定の閾値thM1よりも小さく、平均トグル率に大きな変化がなく、第N段目の信号処理部52−NのMビット目にエラーが発生していないとみなされた場合、ステップS63の処理はスキップされる。
【0111】
ステップS64において、判定部53は、ビット位置を区別するためのカウンタMが15であるか、すなわち、全てのビットについてエラーの有無が判定されたか否かを判定し、全てのビットについてエラーの有無が判定されていない場合、処理は、ステップS65に進む。
【0112】
ステップS65において、判定部53は、カウンタMを1インクリメントし、処理は、ステップS61に戻る。
【0113】
すなわち、第N段目の信号処理部52−Nの全ビットについてエラーの有無が判定されるまで、ステップS60乃至S65の処理が繰り返される。そして、ステップS64において、判定部53は、第N段目の全ビットについてエラーの有無が判定された後、処理は、ステップS66に進む。
【0114】
ステップS66において、判定部53は、トグル率計算部51−Nおよび信号処理部52−Nを区別するためのカウンタNが4であるか、すなわち、4段全ての信号処理部52についてエラーの有無を確認したか否かを確認する。ステップS66において、カウンタNが4ではない場合、処理は、ステップS59に戻り、カウンタNが4になるまで、すなわち、信号処理部52−1乃至52−4の全ビットにわたってエラーの発生の有無が確認されるまで、ステップS59乃至S66の処理が繰り返される。
【0115】
そして、ステップS66において、信号処理部52−1乃至52−4の全てにわたって、全ビットのエラーの発生の有無が確認され、カウンタNが4であるとみなされた場合、処理は、ステップS67に進む。
【0116】
ステップS67において、判定部53は、信号処理部52−1乃至52−4の各ビットについて、エラーの発生の有無を判定し、エラーが発生していた場合、処理は、ステップS68に進む。
【0117】
ステップS68において、判定部53は、エラーの発生していた信号処理部52のビット位置を特定する情報を後段LSI33に出力する。
【0118】
この処理により、後段LSI33は、エラーが発生していることを示す情報と共に、信号処理部52を特定する情報を表示部12に表示し、処理は、ステップS69に進む。
【0119】
ステップS69において、後段LSI33は、信号処理部52−1乃至52−4の処理結果を利用した、図示せぬ車両のステアリング、ブレーキ、およびライト等の動作の制御による運転支援を停止して、その旨をドライバに認識できるように表示部12に表示し、処理は、ステップS70に進む。
【0120】
一方、ステップS67において、エラーが発生していないとみなされた場合、処理は、ステップS71に進む。
【0121】
ステップS71において、判定部53は、閾値thM1が通常より小さく設定されているか、すなわち、入力画像のエラーが発生しているか否かを判定する。ステップS71において、閾値thM1が通常より小さく設定されており、入力画像が、例えば、黒画像などであり、適切な画像処理が困難であるとき、処理は、ステップS69に進む。
【0122】
すなわち、この場合、入力画像が黒画像などによるものであるので、信号処理部52−1乃至52−4にエラー等が発生しているのかの判断はできないが、信号処理部52−1乃至52−4の信号処理結果を用いた運転支援については、適切に実行できない恐れがあるので、運転支援のみが停止され、その旨のみが表示部12に表示される。
【0123】
また、ステップS71において、閾値thM1が通常より小さく設定されておらず、適切に処理ができる正常な状態であるとき、処理は、ステップS70に進む。
【0124】
すなわち、この場合、入力画像も黒画像などではなく、また、エラーもないものとみなせるので、後段LSI33は、信号処理部52−1乃至52−4のそれぞれの各ビットの信号処理結果に基づいて、図示せぬ車両のステアリング、ブレーキ、およびライト等の動作を制御し、ドライバの運転の支援を継続する。
【0125】
ステップS70において、判定部53は、次の画像、すなわち、次のフレームの入力があるか否かを判定し、次のフレームの入力がある場合、処理は、ステップS51に戻り、それ以降の処理が繰り返される。そして、ステップS70において、次のフレームの入力がない場合、処理は終了する。
【0126】
以上の処理により、例えば、図6の左部で示されるように、自然画像が入力されている場合、信号処理部52−1前段のトグル率計算部51−0により計算される上位3ビット(MSBから3ビット)と、下位5ビット(LSBから5ビット)の各ビットについて、平均トグル率(0,M)が、図中上から5%、5%、6%、8%、8%、13%、14%、および15%と推移している。このような場合、正常な画像が入力されているものとみなされて、閾値thM1は、通常閾値が設定される。
【0127】
ここで、MSBに近いビット位置における閾値thM1は、平均トグル率が小さくなることにより、設定される閾値thM1も低めに設定される。これに対して、LSBに近いビット位置における閾値thM1は、平均トグル率が高くなるので、設定される閾値thM1も高く設定される。
【0128】
また、第3段目の信号処理部52−3の後段における各ビットの平均トグル率(3,M)は、図6の左部の場合、図中上から3%、5%、9%、8%、7%、12%、14%、および18%と推移している。さらに、第4段目の信号処理部52−4の後段における各ビットの平均トグル率(4,M)は、図6の左上部の場合、図中上から4%、4%、6%、7%、7%、14%、11%、および20%と推移している。
【0129】
すなわち、図6の左部で示されるような場合、各ビットについて、平均トグル率の差分が所定の閾値thM1よりも大きいので、エラーの発生はないものとみなされる。
【0130】
これに対して、例えば、図6の右部で示されるような場合、第3段目の信号処理部52−3の後段の下位2番目のビット位置(M=1)については、平均トグル率(3,1)が0%となり、以降、第4段目の信号処理部52−4の下位2番目のビット位置については、平均トグル率(4,1)が0%となっている。
【0131】
同様に、図6の右部で示されるように、第4段目の信号処理部52−4の後段の上位の13ビット目については、平均トグル率(4,13)が0%となっている。
【0132】
結果として、図6の右部で示されるような場合、信号処理部52−3における第1ビット目、および、信号処理部52−4における第13ビット目にエラーが発生しているものとみなせる状態となる。
【0133】
このように、何段目の信号処理部52における、どのビット位置にエラーが発生しているのかを正確に検出することが可能となる。
【0134】
さらに、暗闇などの黒画像が入力画像であるような場合、例えば、図7の左部で示されるように、信号処理部52−1前段のトグル率計算部51−0により計算される上位3ビット(MSBから3ビット)と、下位5ビット(LSBから5ビット)の各ビットについては、平均トグル率(0,M)が、図中上から0%、0%、1%、0%、1%、1%、0%、および1%と推移している。このような場合、正常な画像が入力されているものとはみなされないので、閾値thM1は、通常閾値よりも十分に低い値が設定される。
【0135】
これにより、第3段目の信号処理部52−3の後段における各ビットの平均トグル率(3,M)は、図7の左部の場合、図中上から1%、0%、1%、0%、1%、1%、0%、および1%と推移している。さらに、第4段目の信号処理部52−4の後段における各ビットの平均トグル率(4,M)は、図7の左部の場合、図中上から0%、0%、0%、1%、0%、1%、0%、および1%と推移している。
【0136】
図7の左部で示されるような場合、各ビットについて、平均トグル率の差分が十分に小さい所定の閾値thM1が設定され、エラーの発生はないものとみなされる。
【0137】
これに対して、例えば、図7の右部で示されるような場合、第3段目の信号処理部52−3の後段の下位2番目のビット位置(M=1)については、平均トグル率(3,1)が0%となり、以降、第4段目の信号処理部52−4の下位2番目のビット位置については、平均トグル率(4,1)が0%となっている。
【0138】
同様に、図7の右部で示されるように、第4段目の信号処理部52−4の後段の上位の13ビット目については、平均トグル率(4,13)が0%となっている。
【0139】
ただし、図7の右部で示されるような場合でも、平均トグル率の差分が十分に小さい所定の閾値thM1が設定されているので、エラーの発生はないものとみなされる。
【0140】
結果として、この場合、信号処理部52−1乃至52−4のいずれかにおいてエラー等が発生しているか否かの判断がつかないため、エラーであるとの通知はされない。
【0141】
ただし、この場合、安全性の観点から、適切に判断できない画像に基づいた運転支援については停止させ、運転支援が停止したことをドライバに通知することが望ましい。
【0142】
尚、図3のフローチャートを参照して説明したように、この例においても、信号処理部52−Nのそれぞれについて、ブロック固有係数kNを設定して、閾値thM1に乗じるようにしてもよい。ブロック固有係数kNを用いるようにすることで、信号処理部52−Nの個別の特性に応じて、ビット毎に閾値thM1が補正された閾値thM11を設定することにより、信号処理部52−Nのビット毎の故障の有無を、より高精度に検出することができる。
【0143】
以上の処理により、リアルタイムで、かつ、特定の演算対象データ(テスト画像に依存)や、一意に設定した演算パラメータを用いることなく、画像処理装置の故障検出をビット単位で実現することが可能となる。
【0144】
また、画像を利用した運転支援を実現する機能を実現するにあたって、リアルタイムでエラーの発生を検出して、運転支援における誤動作の発生を抑制すると共に、ドライバに対して運転支援が停止したことを提示することが可能となる。
【0145】
<<3.第2の実施の形態>>
以上においては、イメージセンサが1個の、いわゆる単眼の画像を利用した車載カメラシステムである例について説明してきたが、例えば、2個の車載カメラシステムを用いてステレオ画像を撮像するようにして、ステレオ画像を用いた運転支援をするようにしてもよく、その際、いずれか一方の画像においてエラーが発生しているものとみなされるとき、ステレオ画像を取得することができないので、運転支援を停止させると共に、ドライバにエラー(異常)の発生を通知するようにしてもよい。
【0146】
図8は、図1の車載カメラシステム11のイメージセンサ31、および画像処理ブロック32を、それぞれ右眼画像用、および左眼画像用に用いた車載ステレオカメラシステム101の構成例を示したものである。
【0147】
尚、図8の車載ステレオカメラシステム101においては、基本的に、右眼用の図1の車載カメラシステム11のイメージセンサ31、および画像処理ブロック32に対応する各構成には、「−1」を付しており、左眼用の図1の車載カメラシステム11に対応する各構成には、「−2」を付している。このため、それらの説明については、適宜省略するものとする。
【0148】
すなわち、図8における車載ステレオカメラシステム101において、図1の車載カメラシステム11と異なる点は、イメージセンサ31−1,31−2、および画像処理ブロック32−1,32−2に対して、1個の後段LSI33が設けられており、画像処理ブロック32−1,32−2がそれぞれ最終段である第4段の平均トグル率を後段LSI33に供給すると共に、さらに、トグル情報比較部121が設けられている点である。
【0149】
トグル情報比較部121は、左右の画像処理ブロック32−1,32−2からのエラー判定処理結果とトグル率とを比較し、少なくともいずれかにエラーがあるか、または、双方の平均トグル率に所定値以上の差がある場合、左右いずれか、または、両方の画像が使用できないものとみなし、図示せぬ車両のステアリング、ブレーキ、およびライト等の動作の制御による運転支援を停止すると共に、車載カメラシステム11−1,11−2のエラー個所、または、左右画像の平均トグル率に差があり、何らかのエラーが発生していることを表示部12に出力して表示する。
【0150】
図8の車載ステレオカメラシステムによるエラー判定処理>
次に、図9のフローチャートを参照して、図8の車載ステレオカメラシステムによるエラー判定処理について説明する。
【0151】
ステップS101において、右眼用の車載カメラシステムに対応するイメージセンサ31−1、および画像処理ブロック32−1は、右カメラエラー判定処理を実行し、判定結果と、それぞれの平均トグル率の情報を後段LSI33に出力する。尚、右カメラエラー判定処理については、右眼用の画像に対して、図3または図5のフローチャートを参照して説明したエラー判定処理を実行するものであるので、その説明は省略するものとする。また、この際、画像処理ブロック32−1の判定部53−1は、第4段の平均トグル率として、全ビットの平均トグル率、または、ビット毎の平均トグル率を出力する。
【0152】
ステップS102において、左眼用の車載カメラシステムに対応するイメージセンサ31−2、および画像処理ブロック32−2は、左カメラエラー判定処理を実行し、判定結果と、それぞれの平均トグル率の情報を後段LSI33に出力する。尚、左カメラエラー判定処理については、左眼用の画像に対して、図3または図5のフローチャートを参照して説明したエラー判定処理を実行するものであるので、その説明は省略するものとする。また、この際、画像処理ブロック32−2の判定部53−2は、第4段の平均トグル率として、全ビットの平均トグル率、または、ビット毎の平均トグル率を出力する。
【0153】
ステップS103において、後段LSI33は、左右カメラエラー判定処理に基づいて、少なくともいずれかにエラーが検出されたか否かを判定する。
【0154】
ステップS104において、後段LSI33は、カメラ画像に基づいた運転支援を停止すると共に、表示部12にエラーが発生している信号処理部52の位置(、および、ビット位置:図5のフローチャートのエラー判定処理を実行していた場合)についての情報を表示すると共に、運転支援が打ち切られていることを表示する。
【0155】
また、ステップS103において、左右の画像のいずれからもエラーが検出されなかった場合、処理は、ステップS105に進む。
【0156】
ステップS105において、後段LSI33は、トグル情報比較部121を制御して、左右の平均トグル率の差分絶対値が所定の閾値よりも大きく、左右で差が生じているか否かを判定する。ステップS105において、左右の平均トグル率の差分絶対値が所定の閾値よりも大きく、左右で差が生じているとみなされた場合、処理は、ステップS106に進む。
【0157】
ステップS106において、後段LSI33は、カメラ画像に基づいた運転支援を停止すると共に、表示部12に左右の画像に差が生じて、適切に運転を支援するができないことを表示すると共に、運転支援が打ち切られていることを表示する。尚、ここで、図3のフローチャートの処理である場合には、第1段乃至第4段のいずれの信号処理部52で左右のずれがあるのか、または、図5のフローチャートの処理である場合には、第1段乃至第4段のいずれの信号処理部52の何ビット目で左右のずれがあるのかを示す情報が表示される。
【0158】
例えば、図8で示されるように、イメージセンサ31−2の正面に、画像の撮像を妨げる障害物111が、例えば、フロントウィンドウなどに付着しているような場合、黒画像が撮像されてしまうことがある。
【0159】
このような場合、上述した処理では、エラーが検出されないことになる。しかしながら、左右の画像に著しい差が生じていると、運転支援に必要とされる適切なステレオ画像を取得することができず、実質的にエラーが発生した状態とみなして対応する必要がある。
【0160】
そこで、この場合、左右の画像に著しい差が生じており、運転支援を制御する処理を停止させ、その旨を表示部12に表示する。
【0161】
このように実質的に使用不能な画像が撮像されてしまっているような場合にだけ、運転支援を停止させ、その旨をドライバに伝えるようにすることで、故障に起因したものではない可能性があるにも関わらず、故障が発生してしまっているといった不要なエラーの通知を抑制しつつ、適切な運転支援を実現させることが可能となる。
【0162】
尚、ステップS105において、左右の平均トグル率の差分絶対値が所定の閾値よりも低い場合、通常の処理が実現されているものと見なし、ステップS104,S106の処理がスキップされる。
【0163】
以上の処理により、不要なエラーの通知を発することを抑制しつつ、適切にエラー判定を実現することが可能となる。
【0164】
また、リアルタイムで、かつ、特定の演算対象データ(テスト画像に依存)や、一意に設定した演算パラメータを用いることなく、画像処理装置の故障検出を実現することが可能となる。
【0165】
さらに、以上においては、信号処理の対象が画像信号である例について説明してきたが、信号処理が可能なものであれば、その他の信号であってもよく、音声信号や光信号など信号処理がなされる構成であれば、利用することが可能である。
【0166】
また、以上においては、信号処理の対象となる画像信号をバイナリデータとして、各ビット、または、全ビットの平均トグル率を用いて信号処理部のエラーを検出する例について説明してきたが、バイナリデータ以外のデータであってもよく、例えば、16進表現された各桁のデジタルデータに用いてもよい。すなわち、以上の例においては、バイナリデータの2進数における各桁の値に変化がある場合、すなわち、各ビットの値に変化がある場合、所定のクロック数で定義される時間内の、各桁の変化の回数の割合がトグル率となる。したがって、2進数以外の、例えば、16進数であっても、所定のクロック数で定義される時間内の、各桁の変化の回数の割合としてトグル率を算出するようにして、信号処理部が正常に動作しているか否かを判断するようにしてもよい。
【0167】
さらに、以上においては、信号処理部52は直列に4段構成である例について説明してきたが、それ以下の段数の構成がなされていても、それ以上の段数の構成がなされているものであってもよい。
【0168】
また、以上においては、信号処理部52は、並列に複数段構成されるようにしてもよいし、1個の信号処理部52の処理結果を複数の信号処理部52で処理するようにしてもよく、いずれにおいても信号処理部52の前段と後段とでトグル率を計算して、両者の比較により大きな変化があるか否かに応じて、信号処理部52のそれぞれにエラーが発生しているか否かを判定するようにしてもよい。
【0169】
<<4.第1の応用例>>
<ソフトウェアにより実行させる例>
ところで、上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。
【0170】
図10は、汎用のパーソナルコンピュータの構成例を示している。このパーソナルコンピュータは、CPU(Central Processing Unit)1001を内蔵している。CPU1001にはバス1004を介して、入出力インタ-フェイス1005が接続されている。バス1004には、ROM(Read Only Memory)1002およびRAM(Random Access Memory)1003が接続されている。
【0171】
入出力インタ-フェイス1005には、ユーザが操作コマンドを入力するキーボード、マウスなどの入力デバイスよりなる入力部1006、処理操作画面や処理結果の画像を表示デバイスに出力する出力部1007、プログラムや各種データを格納するハードディスクドライブなどよりなる記憶部1008、LAN(Local Area Network)アダプタなどよりなり、インターネットに代表されるネットワークを介した通信処理を実行する通信部1009が接続されている。また、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory)、DVD(Digital Versatile Disc)を含む)、光磁気ディスク(MD(Mini Disc)を含む)、もしくは半導体メモリなどのリムーバブルメディア1011に対してデータを読み書きするドライブ1010が接続されている。
【0172】
CPU1001は、ROM1002に記憶されているプログラム、または磁気ディスク、光ディスク、光磁気ディスク、もしくは半導体メモリ等のリムーバブルメディア1011ら読み出されて記憶部1008にインストールされ、記憶部1008からRAM1003にロードされたプログラムに従って各種の処理を実行する。RAM1003にはまた、CPU1001が各種の処理を実行する上において必要なデータなども適宜記憶される。
【0173】
以上のように構成されるコンピュータでは、CPU1001が、例えば、記憶部1008に記憶されているプログラムを、入出力インタフェース1005及びバス1004を介して、RAM1003にロードして実行することにより、上述した一連の処理が行われる。
【0174】
コンピュータ(CPU1001)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア1011に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
【0175】
コンピュータでは、プログラムは、リムーバブルメディア1011をドライブ1010に装着することにより、入出力インタフェース1005を介して、記憶部1008にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部1009で受信し、記憶部1008にインストールすることができる。その他、プログラムは、ROM1002や記憶部1008に、あらかじめインストールしておくことができる。
【0176】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【0177】
また、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
【0178】
なお、本開示の実施の形態は、上述した実施の形態に限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更が可能である。
【0179】
例えば、本開示は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
【0180】
また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
【0181】
さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
【0182】
<<5.第2の応用例>>
本開示に係る技術は、様々な製品へ応用することができる。例えば、本開示に係る技術は、自動車、電気自動車、ハイブリッド電気自動車、自動二輪車、自転車、パーソナルモビリティ、飛行機、ドローン、船舶、ロボット、建設機械、農業機械(トラクター)などのいずれかの種類の移動体に搭載される装置として実現されてもよい。
【0183】
図11は、本開示に係る技術が適用され得る移動体制御システムの一例である車両制御システム7000の概略的な構成例を示すブロック図である。車両制御システム7000は、通信ネットワーク7010を介して接続された複数の電子制御ユニットを備える。図11に示した例では、車両制御システム7000は、駆動系制御ユニット7100、ボディ系制御ユニット7200、バッテリ制御ユニット7300、車外情報検出ユニット7400、車内情報検出ユニット7500、及び統合制御ユニット7600を備える。これらの複数の制御ユニットを接続する通信ネットワーク7010は、例えば、CAN(Controller Area Network)、LIN(Local Interconnect Network)、LAN(Local Area Network)又はFlexRay(登録商標)等の任意の規格に準拠した車載通信ネットワークであってよい。
【0184】
各制御ユニットは、各種プログラムにしたがって演算処理を行うマイクロコンピュータと、マイクロコンピュータにより実行されるプログラム又は各種演算に用いられるパラメータ等を記憶する記憶部と、各種制御対象の装置を駆動する駆動回路とを備える。各制御ユニットは、通信ネットワーク7010を介して他の制御ユニットとの間で通信を行うためのネットワークI/Fを備えるとともに、車内外の装置又はセンサ等との間で、有線通信又は無線通信により通信を行うための通信I/Fを備える。図11では、統合制御ユニット7600の機能構成として、マイクロコンピュータ7610、汎用通信I/F7620、専用通信I/F7630、測位部7640、ビーコン受信部7650、車内機器I/F7660、音声画像出力部7670、車載ネットワークI/F7680及び記憶部7690が図示されている。他の制御ユニットも同様に、マイクロコンピュータ、通信I/F及び記憶部等を備える。
【0185】
駆動系制御ユニット7100は、各種プログラムにしたがって車両の駆動系に関連する装置の動作を制御する。例えば、駆動系制御ユニット7100は、内燃機関又は駆動用モータ等の車両の駆動力を発生させるための駆動力発生装置、駆動力を車輪に伝達するための駆動力伝達機構、車両の舵角を調節するステアリング機構、及び、車両の制動力を発生させる制動装置等の制御装置として機能する。駆動系制御ユニット7100は、ABS(Antilock Brake System)又はESC(Electronic Stability Control)等の制御装置としての機能を有してもよい。
【0186】
駆動系制御ユニット7100には、車両状態検出部7110が接続される。車両状態検出部7110には、例えば、車体の軸回転運動の角速度を検出するジャイロセンサ、車両の加速度を検出する加速度センサ、あるいは、アクセルペダルの操作量、ブレーキペダルの操作量、ステアリングホイールの操舵角、エンジン回転数又は車輪の回転速度等を検出するためのセンサのうちの少なくとも一つが含まれる。駆動系制御ユニット7100は、車両状態検出部7110から入力される信号を用いて演算処理を行い、内燃機関、駆動用モータ、電動パワーステアリング装置又はブレーキ装置等を制御する。
【0187】
ボディ系制御ユニット7200は、各種プログラムにしたがって車体に装備された各種装置の動作を制御する。例えば、ボディ系制御ユニット7200は、キーレスエントリシステム、スマートキーシステム、パワーウィンドウ装置、あるいは、ヘッドランプ、バックランプ、ブレーキランプ、ウィンカー又はフォグランプ等の各種ランプの制御装置として機能する。この場合、ボディ系制御ユニット7200には、鍵を代替する携帯機から発信される電波又は各種スイッチの信号が入力され得る。ボディ系制御ユニット7200は、これらの電波又は信号の入力を受け付け、車両のドアロック装置、パワーウィンドウ装置、ランプ等を制御する。
【0188】
バッテリ制御ユニット7300は、各種プログラムにしたがって駆動用モータの電力供給源である二次電池7310を制御する。例えば、バッテリ制御ユニット7300には、二次電池7310を備えたバッテリ装置から、バッテリ温度、バッテリ出力電圧又はバッテリの残存容量等の情報が入力される。バッテリ制御ユニット7300は、これらの信号を用いて演算処理を行い、二次電池7310の温度調節制御又はバッテリ装置に備えられた冷却装置等の制御を行う。
【0189】
車外情報検出ユニット7400は、車両制御システム7000を搭載した車両の外部の情報を検出する。例えば、車外情報検出ユニット7400には、撮像部7410及び車外情報検出部7420のうちの少なくとも一方が接続される。撮像部7410には、ToF(Time Of Flight)カメラ、ステレオカメラ、単眼カメラ、赤外線カメラ及びその他のカメラのうちの少なくとも一つが含まれる。車外情報検出部7420には、例えば、現在の天候又は気象を検出するための環境センサ、あるいは、車両制御システム7000を搭載した車両の周囲の他の車両、障害物又は歩行者等を検出するための周囲情報検出センサのうちの少なくとも一つが含まれる。
【0190】
環境センサは、例えば、雨天を検出する雨滴センサ、霧を検出する霧センサ、日照度合いを検出する日照センサ、及び降雪を検出する雪センサのうちの少なくとも一つであってよい。周囲情報検出センサは、超音波センサ、レーダ装置及びLIDAR(Light Detection and Ranging、Laser Imaging Detection and Ranging)装置のうちの少なくとも一つであってよい。これらの撮像部7410及び車外情報検出部7420は、それぞれ独立したセンサないし装置として備えられてもよいし、複数のセンサないし装置が統合された装置として備えられてもよい。
【0191】
ここで、図12は、撮像部7410及び車外情報検出部7420の設置位置の例を示す。撮像部7910,7912,7914,7916,7918は、例えば、車両7900のフロントノーズ、サイドミラー、リアバンパ、バックドア及び車室内のフロントガラスの上部のうちの少なくとも一つの位置に設けられる。フロントノーズに備えられる撮像部7910及び車室内のフロントガラスの上部に備えられる撮像部7918は、主として車両7900の前方の画像を取得する。サイドミラーに備えられる撮像部7912,7914は、主として車両7900の側方の画像を取得する。リアバンパ又はバックドアに備えられる撮像部7916は、主として車両7900の後方の画像を取得する。車室内のフロントガラスの上部に備えられる撮像部7918は、主として先行車両又は、歩行者、障害物、信号機、交通標識又は車線等の検出に用いられる。
【0192】
なお、図12には、それぞれの撮像部7910,7912,7914,7916の撮影範囲の一例が示されている。撮像範囲aは、フロントノーズに設けられた撮像部7910の撮像範囲を示し、撮像範囲b,cは、それぞれサイドミラーに設けられた撮像部7912,7914の撮像範囲を示し、撮像範囲dは、リアバンパ又はバックドアに設けられた撮像部7916の撮像範囲を示す。例えば、撮像部7910,7912,7914,7916で撮像された画像データが重ね合わせられることにより、車両7900を上方から見た俯瞰画像が得られる。
【0193】
車両7900のフロント、リア、サイド、コーナ及び車室内のフロントガラスの上部に設けられる車外情報検出部7920,7922,7924,7926,7928,7930は、例えば超音波センサ又はレーダ装置であってよい。車両7900のフロントノーズ、リアバンパ、バックドア及び車室内のフロントガラスの上部に設けられる車外情報検出部7920,7926,7930は、例えばLIDAR装置であってよい。これらの車外情報検出部7920〜7930は、主として先行車両、歩行者又は障害物等の検出に用いられる。
【0194】
図11に戻って説明を続ける。車外情報検出ユニット7400は、撮像部7410に車外の画像を撮像させるとともに、撮像された画像データを受信する。また、車外情報検出ユニット7400は、接続されている車外情報検出部7420から検出情報を受信する。車外情報検出部7420が超音波センサ、レーダ装置又はLIDAR装置である場合には、車外情報検出ユニット7400は、超音波又は電磁波等を発信させるとともに、受信された反射波の情報を受信する。車外情報検出ユニット7400は、受信した情報に基づいて、人、車、障害物、標識又は路面上の文字等の物体検出処理又は距離検出処理を行ってもよい。車外情報検出ユニット7400は、受信した情報に基づいて、降雨、霧又は路面状況等を認識する環境認識処理を行ってもよい。車外情報検出ユニット7400は、受信した情報に基づいて、車外の物体までの距離を算出してもよい。
【0195】
また、車外情報検出ユニット7400は、受信した画像データに基づいて、人、車、障害物、標識又は路面上の文字等を認識する画像認識処理又は距離検出処理を行ってもよい。車外情報検出ユニット7400は、受信した画像データに対して歪補正又は位置合わせ等の処理を行うとともに、異なる撮像部7410により撮像された画像データを合成して、俯瞰画像又はパノラマ画像を生成してもよい。車外情報検出ユニット7400は、異なる撮像部7410により撮像された画像データを用いて、視点変換処理を行ってもよい。
【0196】
車内情報検出ユニット7500は、車内の情報を検出する。車内情報検出ユニット7500には、例えば、運転者の状態を検出する運転者状態検出部7510が接続される。運転者状態検出部7510は、運転者を撮像するカメラ、運転者の生体情報を検出する生体センサ又は車室内の音声を集音するマイク等を含んでもよい。生体センサは、例えば、座面又はステアリングホイール等に設けられ、座席に座った搭乗者又はステアリングホイールを握る運転者の生体情報を検出する。車内情報検出ユニット7500は、運転者状態検出部7510から入力される検出情報に基づいて、運転者の疲労度合い又は集中度合いを算出してもよいし、運転者が居眠りをしていないかを判別してもよい。車内情報検出ユニット7500は、集音された音声信号に対してノイズキャンセリング処理等の処理を行ってもよい。
【0197】
統合制御ユニット7600は、各種プログラムにしたがって車両制御システム7000内の動作全般を制御する。統合制御ユニット7600には、入力部7800が接続されている。入力部7800は、例えば、タッチパネル、ボタン、マイクロフォン、スイッチ又はレバー等、搭乗者によって入力操作され得る装置によって実現される。統合制御ユニット7600には、マイクロフォンにより入力される音声を音声認識することにより得たデータが入力されてもよい。入力部7800は、例えば、赤外線又はその他の電波を利用したリモートコントロール装置であってもよいし、車両制御システム7000の操作に対応した携帯電話又はPDA(Personal Digital Assistant)等の外部接続機器であってもよい。入力部7800は、例えばカメラであってもよく、その場合搭乗者はジェスチャにより情報を入力することができる。あるいは、搭乗者が装着したウェアラブル装置の動きを検出することで得られたデータが入力されてもよい。さらに、入力部7800は、例えば、上記の入力部7800を用いて搭乗者等により入力された情報に基づいて入力信号を生成し、統合制御ユニット7600に出力する入力制御回路などを含んでもよい。搭乗者等は、この入力部7800を操作することにより、車両制御システム7000に対して各種のデータを入力したり処理動作を指示したりする。
【0198】
記憶部7690は、マイクロコンピュータにより実行される各種プログラムを記憶するROM(Read Only Memory)、及び各種パラメータ、演算結果又はセンサ値等を記憶するRAM(Random Access Memory)を含んでいてもよい。また、記憶部7690は、HDD(Hard Disc Drive)等の磁気記憶デバイス、半導体記憶デバイス、光記憶デバイス又は光磁気記憶デバイス等によって実現してもよい。
【0199】
汎用通信I/F7620は、外部環境7750に存在する様々な機器との間の通信を仲介する汎用的な通信I/Fである。汎用通信I/F7620は、GSM(Global System of Mobile communications)、WiMAX、LTE(Long Term Evolution)若しくはLTE−A(LTE−Advanced)などのセルラー通信プロトコル、又は無線LAN(Wi−Fi(登録商標)ともいう)、Bluetooth(登録商標)などのその他の無線通信プロトコルを実装してよい。汎用通信I/F7620は、例えば、基地局又はアクセスポイントを介して、外部ネットワーク(例えば、インターネット、クラウドネットワーク又は事業者固有のネットワーク)上に存在する機器(例えば、アプリケーションサーバ又は制御サーバ)へ接続してもよい。また、汎用通信I/F7620は、例えばP2P(Peer To Peer)技術を用いて、車両の近傍に存在する端末(例えば、運転者、歩行者若しくは店舗の端末、又はMTC(Machine Type Communication)端末)と接続してもよい。
【0200】
専用通信I/F7630は、車両における使用を目的として策定された通信プロトコルをサポートする通信I/Fである。専用通信I/F7630は、例えば、下位レイヤのIEEE802.11pと上位レイヤのIEEE1609との組合せであるWAVE(Wireless Access in Vehicle Environment)、DSRC(Dedicated Short Range Communications)、又はセルラー通信プロトコルといった標準プロトコルを実装してよい。専用通信I/F7630は、典型的には、車車間(Vehicle to Vehicle)通信、路車間(Vehicle to Infrastructure)通信、車両と家との間(Vehicle to Home)の通信及び歩車間(Vehicle to Pedestrian)通信のうちの1つ以上を含む概念であるV2X通信を遂行する。
【0201】
測位部7640は、例えば、GNSS(Global Navigation Satellite System)衛星からのGNSS信号(例えば、GPS(Global Positioning System)衛星からのGPS信号)を受信して測位を実行し、車両の緯度、経度及び高度を含む位置情報を生成する。なお、測位部7640は、無線アクセスポイントとの信号の交換により現在位置を特定してもよく、又は測位機能を有する携帯電話、PHS若しくはスマートフォンといった端末から位置情報を取得してもよい。
【0202】
ビーコン受信部7650は、例えば、道路上に設置された無線局等から発信される電波あるいは電磁波を受信し、現在位置、渋滞、通行止め又は所要時間等の情報を取得する。なお、ビーコン受信部7650の機能は、上述した専用通信I/F7630に含まれてもよい。
【0203】
車内機器I/F7660は、マイクロコンピュータ7610と車内に存在する様々な車内機器7760との間の接続を仲介する通信インタフェースである。車内機器I/F7660は、無線LAN、Bluetooth(登録商標)、NFC(Near Field Communication)又はWUSB(Wireless USB)といった無線通信プロトコルを用いて無線接続を確立してもよい。また、車内機器I/F7660は、図示しない接続端子(及び、必要であればケーブル)を介して、USB(Universal Serial Bus)、HDMI(High-Definition Multimedia Interface)、又はMHL(Mobile High-definition Link)等の有線接続を確立してもよい。車内機器7760は、例えば、搭乗者が有するモバイル機器若しくはウェアラブル機器、又は車両に搬入され若しくは取り付けられる情報機器のうちの少なくとも1つを含んでいてもよい。また、車内機器7760は、任意の目的地までの経路探索を行うナビゲーション装置を含んでいてもよい。車内機器I/F7660は、これらの車内機器7760との間で、制御信号又はデータ信号を交換する。
【0204】
車載ネットワークI/F7680は、マイクロコンピュータ7610と通信ネットワーク7010との間の通信を仲介するインタフェースである。車載ネットワークI/F7680は、通信ネットワーク7010によりサポートされる所定のプロトコルに則して、信号等を送受信する。
【0205】
統合制御ユニット7600のマイクロコンピュータ7610は、汎用通信I/F7620、専用通信I/F7630、測位部7640、ビーコン受信部7650、車内機器I/F7660及び車載ネットワークI/F7680のうちの少なくとも一つを介して取得される情報に基づき、各種プログラムにしたがって、車両制御システム7000を制御する。例えば、マイクロコンピュータ7610は、取得される車内外の情報に基づいて、駆動力発生装置、ステアリング機構又は制動装置の制御目標値を演算し、駆動系制御ユニット7100に対して制御指令を出力してもよい。例えば、マイクロコンピュータ7610は、車両の衝突回避あるいは衝撃緩和、車間距離に基づく追従走行、車速維持走行、車両の衝突警告、又は車両のレーン逸脱警告等を含むADAS(Advanced Driver Assistance System)の機能実現を目的とした協調制御を行ってもよい。また、マイクロコンピュータ7610は、取得される車両の周囲の情報に基づいて駆動力発生装置、ステアリング機構又は制動装置等を制御することにより、運転者の操作に拠らずに自律的に走行する自動運転等を目的とした協調制御を行ってもよい。
【0206】
マイクロコンピュータ7610は、汎用通信I/F7620、専用通信I/F7630、測位部7640、ビーコン受信部7650、車内機器I/F7660及び車載ネットワークI/F7680のうちの少なくとも一つを介して取得される情報に基づき、車両と周辺の構造物や人物等の物体との間の3次元距離情報を生成し、車両の現在位置の周辺情報を含むローカル地図情報を作成してもよい。また、マイクロコンピュータ7610は、取得される情報に基づき、車両の衝突、歩行者等の近接又は通行止めの道路への進入等の危険を予測し、警告用信号を生成してもよい。警告用信号は、例えば、警告音を発生させたり、警告ランプを点灯させたりするための信号であってよい。
【0207】
音声画像出力部7670は、車両の搭乗者又は車外に対して、視覚的又は聴覚的に情報を通知することが可能な出力装置へ音声及び画像のうちの少なくとも一方の出力信号を送信する。図11の例では、出力装置として、オーディオスピーカ7710、表示部7720及びインストルメントパネル7730が例示されている。表示部7720は、例えば、オンボードディスプレイ及びヘッドアップディスプレイの少なくとも一つを含んでいてもよい。表示部7720は、AR(Augmented Reality)表示機能を有していてもよい。出力装置は、これらの装置以外の、ヘッドホン、搭乗者が装着する眼鏡型ディスプレイ等のウェアラブルデバイス、プロジェクタ又はランプ等の他の装置であってもよい。出力装置が表示装置の場合、表示装置は、マイクロコンピュータ7610が行った各種処理により得られた結果又は他の制御ユニットから受信された情報を、テキスト、イメージ、表、グラフ等、様々な形式で視覚的に表示する。また、出力装置が音声出力装置の場合、音声出力装置は、再生された音声データ又は音響データ等からなるオーディオ信号をアナログ信号に変換して聴覚的に出力する。
【0208】
なお、図11に示した例において、通信ネットワーク7010を介して接続された少なくとも二つの制御ユニットが一つの制御ユニットとして一体化されてもよい。あるいは、個々の制御ユニットが、複数の制御ユニットにより構成されてもよい。さらに、車両制御システム7000が、図示されていない別の制御ユニットを備えてもよい。また、上記の説明において、いずれかの制御ユニットが担う機能の一部又は全部を、他の制御ユニットに持たせてもよい。つまり、通信ネットワーク7010を介して情報の送受信がされるようになっていれば、所定の演算処理が、いずれかの制御ユニットで行われるようになってもよい。同様に、いずれかの制御ユニットに接続されているセンサ又は装置が、他の制御ユニットに接続されるとともに、複数の制御ユニットが、通信ネットワーク7010を介して相互に検出情報を送受信してもよい。
【0209】
なお、図1を用いて説明した本実施形態に係る画像処理ブロック32の各機能を実現するためのコンピュータプログラムを、いずれかの制御ユニット等に実装することができる。また、このようなコンピュータプログラムが格納された、コンピュータで読み取り可能な記録媒体を提供することもできる。記録媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリ等である。また、上記のコンピュータプログラムは、記録媒体を用いずに、例えばネットワークを介して配信されてもよい。
【0210】
以上説明した車両制御システム7000において、図1を用いて説明した本実施形態に係る画像処理ブロック32は、図11に示した応用例の統合制御ユニット7600に適用することができる。例えば、画像処理ブロック32のトグル率計算部51−0乃至51−4、信号処理部52−1乃至52−4、判定部53は、統合制御ユニット7600のマイクロコンピュータ7610、記憶部7690、車載ネットワークI/F7680に相当する。例えば、統合制御ユニット7600が、画像信号の全ビットの平均トグル率を求めることにより、第N段目の信号処理部52−Nのエラーの発生の有無を検出することができる。また、統合制御ユニット7600が、画像を利用した運転支援を実現するにあたって、リアルタイムでエラーの発生を検出して、運転支援における誤動作の発生を抑制すると共に、ドライバに対して運転支援が停止したことを適切に提示することが可能となる。
【0211】
また、図1を用いて説明した画像処理ブロック32の少なくとも一部の構成要素は、図11に示した統合制御ユニット7600のためのモジュール(例えば、一つのダイで構成される集積回路モジュール)において実現されてもよい。あるいは、図1を用いて説明した画像処理ブロック32が、図11に示した車両制御システム7000の複数の制御ユニットによって実現されてもよい。
【0212】
尚、本開示は、以下のような構成も取ることができる。
<1> デジタル信号からなる入力信号を順次処理する信号処理部と、
入力信号のトグル率を第1のトグル率として計算する第1のトグル率計算部と、
前記信号処理部により信号処理された信号のトグル率を第2のトグル率として計算する第2のトグル率計算部と、
前記第1のトグル率と、前記第2のトグル率との差分と、所定の閾値とを比較し、比較結果に応じてエラーの発生を検出するエラー検出部と
を含む信号処理装置。
<2> 前記第1のトグル率計算部、および前記第2のトグル率計算部は、いずれも、所定のクロック数に対する、前記デジタル信号の各桁の数値の変化する回数の割合の、全ての前記桁の平均を前記トグル率として計算する
<1>に記載の信号処理装置。
<3> 前記入力信号は、バイナリデータからなる画像信号であり、
前記第1のトグル率計算部、および前記第2のトグル率計算部は、いずれも、1フレーム分のビット毎のトグル率の平均値を、前記信号処理部の前段の平均トグル率、および後段の平均トグル率として計算する
<1>または<2>に記載の信号処理装置。
<4> 前記入力信号は、バイナリデータからなる画像信号であり、
前記第1のトグル率計算部、および前記第2のトグル率計算部は、いずれも、1フレーム分の各ビットのトグル率の平均値を計算し、さらに、それらの全ビットの平均値を、前記信号処理部の前段の平均トグル率、および後段の平均トグル率として計算する
<1>乃至<3>のいずれかに記載の信号処理装置。
<5> 前記入力信号は、バイナリデータからなる画像信号であり、
前記エラー検出部は、前記第1のトグル率と、前記第2のトグル率との差分が、第1の閾値からなるエラー閾値より大きい場合、前記信号処理部のエラーの発生を検出する
<1>乃至<4>に記載の信号処理装置。
<6> 前記信号処理部は、複数段にシリーズに接続されており、さらに、それぞれの前記信号処理部の間にトグル率計算部が設けられており、それぞれの前記信号処理部の前段の前記トグル率計算部が、前記第1のトグル率計算部であり、それぞれの前記信号処理部の後段の前記トグル率計算部が、前記第2のトグル率計算部であり、
前記エラー検出部は、それぞれの複数の前記信号処理部について、前記第1のトグル率と、前記第2のトグル率との差分が、前記エラー閾値より大きい場合、前記信号処理部のエラーの発生を検出し、前記信号処理部のエラーの発生を検出したとき、前記エラーが検出された前記信号処理部の段数を通知する
<5>に記載の信号処理装置。
<7> 最前段の前記第1のトグル率計算部は、前記入力信号のトグル率を入力トグル率として計算し、
前記入力トグル率が、所定の閾値よりも小さい場合、前記エラー検出部は、前記エラー閾値を、前記第1の閾値よりも小さな第2の閾値に設定し、それぞれの複数の前記信号処理部について、前記第1のトグル率と、前記第2のトグル率との差分が、前記エラー閾値より大きいとき、前記信号処理部のエラーの発生を検出し、前記信号処理部のエラーの発生を検出したとき、前記エラーが検出された前記信号処理部の段数を通知する
<6>に記載の信号処理装置。
<8> 前記画像信号を撮像する複数の撮像部をさらに含み、
前記複数の前記撮像部のそれぞれに複数段の前記信号処理部が設けられ、
前記信号処理部は、複数段にシリーズに接続されており、さらに、それぞれの前記信号処理部の間に前記トグル率計算部が設けられており、それぞれの前記信号処理部の前段の前記トグル率計算部が、前記第1のトグル率計算部であり、それぞれの前記信号処理部の後段の前記トグル率計算部が、前記第2のトグル率計算部であり、
前記入力トグル率が、所定の閾値よりも小さい場合、前記エラー検出部は、前記エラー閾値を、前記第1の閾値よりも小さな第2の閾値に設定し、それぞれの複数の前記信号処理部について、前記第1のトグル率と、前記第2のトグル率との差分が、前記エラー閾値より大きいとき、並びに、前記撮像部のそれぞれについて、前記複数の前記信号処理部のうち、最終段の、前記第2のトグル率間の差分が所定の閾値よりも大きいとき、前記信号処理部のエラーの発生を検出し、前記信号処理部のエラーの発生を検出したとき、前記エラーが検出された前記信号処理部の段数を通知する
<6>に記載の信号処理装置。
<9> 前記信号処理部の信号処理結果に基づいて、車両に設けられる駆動部分の動作を制御して運転を支援する支援部と、
前記車両の制御情報を表示する表示部とをさらに含み、
前記エラー検出部によりエラーが検出された場合、前記支援部は、前記信号処理部の信号処理結果に基づいた、車両に設けられる駆動部分の動作を制御した運転の支援を停止する
<1>乃至<8>のいずれかに記載の信号処理装置。
<10> デジタル信号からなる入力信号を順次処理し、
入力信号のトグル率を第1のトグル率として計算し、
前記信号処理部により信号処理された信号のトグル率を第2のトグル率として計算し、
前記第1のトグル率と、前記第2のトグル率との差分と、所定の閾値とを比較し、比較結果に応じてエラーの発生を検出する
ステップを含む信号処理方法。
<11> デジタル信号からなる入力信号を順次処理する信号処理部と、
入力信号のトグル率を第1のトグル率として計算する第1のトグル率計算部と、
前記信号処理部により信号処理された信号のトグル率を第2のトグル率として計算する第2のトグル率計算部と、
前記第1のトグル率と、前記第2のトグル率との差分と、所定の閾値とを比較し、比較結果に応じてエラーの発生を検出するエラー検出部と
してコンピュータを機能させるためのプログラム。
【符号の説明】
【0213】
11 車載カメラシステム, 31,31−1,31−2 イメージセンサ, 32,32−1,32−2 画像処理ブロック, 33 後段LSI, 51,51−0乃至51−4,51−0−1乃至51−4−1,51−0−2乃至51−4−2 トグル率計算部, 52,52−1乃至52−4,52−1−2乃至52−4−2 信号処理部, 53,53−1,53−2 判定部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
【国際調査報告】