(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023124401
(43)【公開日】2023-09-06
(54)【発明の名称】情報処理システムおよび情報処理方法
(51)【国際特許分類】
G06F 11/16 20060101AFI20230830BHJP
G06Q 50/10 20120101ALI20230830BHJP
B61L 23/00 20060101ALN20230830BHJP
【FI】
G06F11/16 629
G06Q50/10
B61L23/00 Z
【審査請求】未請求
【請求項の数】4
【出願形態】OL
(21)【出願番号】P 2022028140
(22)【出願日】2022-02-25
(71)【出願人】
【識別番号】000173784
【氏名又は名称】公益財団法人鉄道総合技術研究所
(71)【出願人】
【識別番号】000001292
【氏名又は名称】株式会社京三製作所
(74)【代理人】
【識別番号】110000121
【氏名又は名称】IAT弁理士法人
(72)【発明者】
【氏名】祗園 昭宏
(72)【発明者】
【氏名】長峯 望
(72)【発明者】
【氏名】向嶋 宏記
(72)【発明者】
【氏名】市川 武
(72)【発明者】
【氏名】福田 光芳
(72)【発明者】
【氏名】板垣 朋範
(72)【発明者】
【氏名】荻原 優
(72)【発明者】
【氏名】安澤 卓也
(72)【発明者】
【氏名】菅野 翔
(72)【発明者】
【氏名】大木 勇治
【テーマコード(参考)】
5B034
5H161
5L049
【Fターム(参考)】
5B034AA03
5B034CC01
5B034DD01
5H161AA01
5H161MM01
5H161MM14
5H161MM15
5H161NN10
5L049CC11
(57)【要約】 (修正有)
【課題】撮像された画像データを利用して、コストを大幅に上昇させることなく高い安全性が要求される分野の監視を行う情報処理システム及び情報処理方法を提供する。
【解決手段】画像データに対して所定の処理を実行する第1の画像処理部41、第1の画像処理部と同一の処理を実行する第2の画像処理部42並びに両画像処理部の動作を管理する処理を2つ以上の系で実行するフェールセーフコンピュータ33を含む画像処理システム1において、第1の画像処理部は、第1の画像処理部及び第2の画像処理部による所定の処理結果を夫々縮小する第1の画像データ縮小処理部を有する。フェールセーフコンピュータの情報処理部51-nは、夫々の縮小結果のハミング距離を算出して所定の閾値と比較し、ハミング距離が閾値を上回っている場合、第1の画像処理部又は第2の画像処理部の少なくともいずれかの異常発生を検出するハミング距離検定処理部を有する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
画像データに対して所定の処理を実行する第1の画像処理部、前記画像データに対して前記第1の画像処理部と同一の処理を実行する第2の画像処理部、並びに、前記第1の画像処理部、および、前記第2の画像処理部の動作を管理するための処理を2つ以上の系で実行する情報処理部を含んで構成される情報処理システムであって、
前記情報処理部は、
前記第1の画像処理部による前記所定の処理結果、および、前記第2の画像処理部による前記所定の処理結果をそれぞれ縮小する画像データ縮小部と、
前記画像データ縮小部により縮小された前記第1の画像処理部による前記所定の処理結果、および、前記第2の画像処理部による前記所定の処理結果とのハミング距離を算出し、前記ハミング距離を所定の閾値と比較し、前記ハミング距離が前記所定の閾値を上回っている場合、前記第1の画像処理部または前記第2の画像処理部の少なくともいずれかに異常が発生していると判断する異常発生判断部と
を有する
ことを特徴とする情報処理システム。
【請求項2】
請求項1に記載の情報処理システムであって、
前記情報処理部の前記画像データ縮小部は、前記画像データの位置によって、縮小の重み付けを変更する
ことを特徴とする情報処理システム。
【請求項3】
請求項1または2のいずれかに記載の情報処理システムであって、
前記第1の画像処理部による前記所定の処理結果、および、前記第2の画像処理部による前記所定の処理結果にはフレームカウンタ値が含まれ、
前記情報処理部は、
前記第1の画像処理部による前記所定の処理結果、および、前記第2の画像処理部による前記所定の処理結果を複数フレーム保持する画像処理バッファをさらに備え、
前記画像データ縮小部は、前記画像処理バッファに保持されている前記第1の画像処理部による前記所定の処理結果、および、前記第2の画像処理部による前記所定の処理結果に付与された前記フレームカウンタ値を参照し、同一フレームの前記画像データに対応する前記第1の画像処理部による前記所定の処理結果、および、前記第2の画像処理部による前記所定の処理結果をそれぞれ縮小する
ことを特徴とする情報処理システム。
【請求項4】
画像データに対して所定の処理を実行する第1の画像処理部、前記画像データに対して前記第1の画像処理部と同一の処理を実行する第2の画像処理部、並びに、前記第1の画像処理部、および、前記第2の画像処理部の動作を管理するための処理を2つ以上の系で実行する情報処理部を含んで構成される情報処理システムの情報処理方法であって、
前記情報処理部において実行される処理は、
前記第1の画像処理部による前記所定の処理結果、および、前記第2の画像処理部による前記所定の処理結果をそれぞれ縮小する画像データ縮小ステップと、
前記画像データ縮小ステップの処理により縮小された前記第1の画像処理部による前記所定の処理結果、および、前記第2の画像処理部による前記所定の処理結果とのハミング距離を算出するハミング距離算出ステップと、
前記ハミング距離算出ステップの処理による前記ハミング距離を所定の閾値と比較し、前記ハミング距離が前記所定の閾値を上回っている場合、前記第1の画像処理部または前記第2の画像処理部の少なくともいずれかに異常が発生していると判断する異常発生判断ステップと
を含むことを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理システムおよび情報処理方法に関する。
【背景技術】
【0002】
安全性確保のために、様々な監視システムが広く用いられている。一般の監視システムの多くは、人による監視のバックアップであり、ある程度の信頼性があれば許容されるか、保守性の向上やアベイラビリティ向上のための監視であり、見逃しがあっても直接的には危険事象には進展しないものである。これに対して、システムの故障等により、監視対象の異常を見逃した場合に、危険事象(人や財産に危害を与える事象)に進展する可能性がある場合は、さらに高い安全性が要求される。例えば、列車接近時に踏切内に人などが残っていることを検出するシステムや、列車走行時の前方の支障物等の有無を監視し、列車の制御に反映させるシステムなどは、システムの故障等により、監視対象の異常を見逃した場合に、危険事象に進展する可能性がある。
【0003】
すなわち、鉄道信号分野における監視システムは、高い安全性を確保する必要がある。この分野において、従来用いられている安全性を確保するための方法は2つに大別される。
【0004】
そのうちの一つは、非対称誤り特性を有する素子等を用いてシステム構成することである。例えば、信号リレーは、動作側(ON側)に故障する確率と、復旧側(OFF側)に故障する確率が大きく異なり、故障時は復旧側に推移するとみなすことができる。そこで、鉄道信号に関わるシステムでは、制御に関わる状態(入力・出力)の安全側を定義し、安全側を信号リレーの復旧側に割り付けて回路設計することにより、故障時に安全を確保することができるようになされている。
【0005】
もう一つは、システムの故障有無を常時監視し、故障検出時は直ちに安全側に固定することである。コンピュータに代表される電子機器や電子素子は、上述したような非対称誤り特性を持たず、故障時の状態を特定することができない。そこで、故障を常に監視し、故障検出時は直ちに安全側に固定する手法により、安全性を確保することができるようになされている。
【0006】
この方法を用いて安全を確保するためには、システムおよびサブシステムなどのすべての構成要素について、故障が検出されるまでの出力は全て正しい、すなわち、安全であること、故障検出時は安全側の出力を行うこと、そして、故障が検出されて安全側の出力を行った後は、なんらかのトリガで制御再開することなく、確実にその状態に固定することが必要である。
【0007】
この要件を満たす実装方法として、同じ処理を2つ以上の系で動作させ、2つ以上の系のそれぞれの処理結果を照合し、エラーを検出するシステム構成が用いられている。この方式においては、2つ以上の系が独立して構成され、共通原因故障が無視できることと、故障確率に対して、十分に高い頻度で照合を行うことが求められる。換言すれば、2つ以上の系において共通原因故障が発生した場合、照合してもエラーを検出することができず、また、一方で故障が発生した後、安全側に状態を固定する前に、他方の系でも故障が発生してしまうと、それぞれの処理結果を照合してもエラーを検出できない場合が発生してしまう。
【0008】
このように、鉄道信号分野における監視システムでは、検知機能が健全であることを、同じ処理を2つ以上の系で動作させる、すなわち冗長化によって確認する必要がある。そのために、フェールセーフコンピュータと称される、ソフト的ハード的に2つ以上の系で同一の処理を実行させ、それぞれの処理結果が同一である場合にのみ、正常な処理結果が得られていると判定する情報処理装置によって、各種情報処理が行われている。
【0009】
また、近年、画像処理、画像認識に関する技術の進歩により、カメラ画像を用いたシステムを監視に適用することが期待されている。
【0010】
例えば、車両用表示システムにおいて、2つのカメラによって撮像された画像のフリーズを検出するために、表示処理を行うメインマイコンとは異なるサブマイコンおよび追加マイコンを用いて、比較対象の画像を比較する技術がある。一方のカメラによって撮像された画像に変化があるにもかかわらず、他方のカメラによって撮像された画像に変化がないことが検出された場合、メインマイコンのリセット等の処理が実行される。また、ここでは、比較対象の画像間で小領域中のハッシュ値(例えばSHA、MD 5、CRC)を比較する方法などにより、画像に変化があるか否かが検出されるようになされている技術がある(例えば、特許文献1)。
【先行技術文献】
【特許文献】
【0011】
【発明の概要】
【発明が解決しようとする課題】
【0012】
しかしながら、特許文献1に記載の技術が用いられている監視システムは、保守性の向上やアベイラビリティ向上のための監視であり、見逃しがあっても直接的には危険事象には進展しないものである。通常、カメラ画像のデータに対して、一意に安全側・危険側を割り付けることは不可能である。また、撮像素子などカメラ内部の部品のほぼ全ては、非対称誤り特性を持たない。このため、上述した特許文献1に記載の技術を用いて高い安全性が要求される分野の監視を行おうとした場合、同じ処理を2つ以上の系で動作させ、2つ以上の系のそれぞれの情報を照合し、エラーを検出するシステム構成する必要がある。
【0013】
上述した特許文献1に記載の技術を用いて高い安全性が要求される分野の監視を行おうとした場合、「検知機能が健全である」ことを、冗長化によって確認する必要があるため、撮像系と処理系をセットとして冗長化しなければならない。その場合、撮像系も2系統以上必須となるので、部品コスト、設置コストの両面で割高となる。また、撮像系を2系統以上用いてシステムを構築したとしても、複数の撮像系により得られる画像は、それぞれ異なる画像であるため、直接的には照合できず、処理系の故障検出が困難である。
【0014】
また、上述したフェールセーフコンピュータは、安全性の確保は可能であるが、冗長な構成を有するため、2つ以上の撮像系から得られる画像を十分な速度で処理させるためには、非常に高性能なものを構築する必要があり、コストが大きく上昇してしまう。
【0015】
そこで、本発明は、前記課題を解決すること、すなわち、撮像された画像データを利用して、コストを大幅に上昇させることなく、高い安全性が要求される分野の監視を行うことができる、情報処理システムおよび情報処理方法を提供することを目的とする。
【課題を解決するための手段】
【0016】
本発明の情報処理システムの一側面は、画像データに対して所定の処理を実行する第1の画像処理部、画像データに対して第1の画像処理部と同一の処理を実行する第2の画像処理部、並びに、第1の画像処理部、および、第2の画像処理部の動作を管理するための処理を2つ以上の系で実行する情報処理部を含んで構成される情報処理システムであって、情報処理部は、第1の画像処理部による所定の処理結果、および、第2の画像処理部による所定の処理結果をそれぞれ縮小する画像データ縮小部と、画像データ縮小部により縮小された第1の画像処理部による所定の処理結果、および、第2の画像処理部による所定の処理結果とのハミング距離を算出し、ハミング距離を所定の閾値と比較し、ハミング距離が所定の閾値を上回っている場合、第1の画像処理部または第2の画像処理部の少なくともいずれかに異常が発生していると判断する異常発生判断部とを有することを特徴とする。
【0017】
本発明の情報処理システムの他の側面は、情報処理部の画像データ縮小部が、画像データの位置によって、縮小の重み付けを変更することを特徴とする。
【0018】
本発明の情報処理システムの他の側面は、第1の画像処理部による所定の処理結果、および、第2の画像処理部による所定の処理結果にはフレームカウンタ値が含まれ、情報処理部は、第1の画像処理部による所定の処理結果、および、第2の画像処理部による所定の処理結果を複数フレーム保持する画像処理バッファをさらに備え、画像データ縮小部は、画像処理バッファに保持されている第1の画像処理部による所定の処理結果、および、第2の画像処理部による所定の処理結果に付与されたフレームカウンタ値を参照し、同一フレームの画像データに対応する第1の画像処理部による所定の処理結果、および、第2の画像処理部による所定の処理結果をそれぞれ縮小することを特徴とする。
【0019】
本発明の情報処理方法の一側面は、画像データに対して所定の処理を実行する第1の画像処理部、画像データに対して第1の画像処理部と同一の処理を実行する第2の画像処理部、並びに、第1の画像処理部、および、第2の画像処理部の動作を管理するための処理を2つ以上の系で実行する情報処理部を含んで構成される情報処理システムの情報処理方法であって、情報処理部において実行される処理は、第1の画像処理部による所定の処理結果、および、第2の画像処理部による所定の処理結果をそれぞれ縮小する画像データ縮小ステップと、画像データ縮小ステップの処理により縮小された第1の画像処理部による所定の処理結果、および、第2の画像処理部による所定の処理結果とのハミング距離を算出するハミング距離算出ステップと、ハミング距離算出ステップの処理によるハミング距離を所定の閾値と比較し、ハミング距離が所定の閾値を上回っている場合、第1の画像処理部または第2の画像処理部の少なくともいずれかに異常が発生していると判断する異常発生判断ステップとを含むことを特徴とする。
【発明の効果】
【0020】
本発明によれば、撮像された画像データを利用して、コストを大幅に上昇させることなく、高い安全性が要求される分野の監視を行うことができる。
【図面の簡単な説明】
【0021】
【
図1】画像処理システム1が有する機能構成を示す機能ブロック図である。
【
図2】データ処理部23が有する機能構成示す機能ブロック図である。
【
図3】フレームカウンタ値、クロックカウンタ値、および、CRCの算出値を書き加えた画像データフレームについて説明するための図である。
【
図4】画像処理ユニット32の第1の画像処理部41が有する機能構成を示す機能ブロック図である。
【
図5】背景差分法を用いた場合の第1の物体検知処理部73-1が有する機能の構成例を示す図である。
【
図6】第1の画像データ縮小処理部75-1の処理について説明するための図である。
【
図7】情報処理部51-nが有する機能について説明するための機能ブロック図である。
【
図8】画像処理バッファ101を用いた画像比較処理について説明するための図である。
【
図9】画像処理バッファ101を用いた画像比較処理について説明するための図である。
【
図10】ハミング距離検定処理部103の処理について説明するための図である。
【
図11】ハミング距離検定処理部103の処理について説明するための図である。
【
図12】撮像処理ユニット11の処理について説明するためのフローチャートである。
【
図13】第1の画像処理部41および第2の画像処理部42の処理について説明するためのフローチャートである。
【
図14】情報処理部51-nのCRC検査処理について説明するためのフローチャートである。
【
図15】情報処理部51-nの画像処理結果比較処理について説明するためのフローチャートである。
【発明を実施するための形態】
【0022】
以下、本発明の一実施の形態の情報処理装置および情報処理方法、情報処理システム、並びに、プログラムについて、図を参照しながら説明する。
【0023】
図1は、本発明の一実施例である画像処理システム1が有する機能構成を示す機能ブロック図である。
【0024】
画像処理システム1は、撮像処理ユニット11、および、判断処理ユニット12を含んで構成されている。画像処理システム1は、1つの装置によって構成されていても、複数の装置によって構成されていてもよい。撮像処理ユニット11は、例えば、踏切内部やホーム周辺など、鉄道安全のために用いられる画像を撮像可能な位置に設置される。ここでは、撮像処理ユニット11が1つの装置として構成されるとともに、判断処理ユニット12が1つの装置として構成されている。
【0025】
なお、ここでは、撮像処理ユニット11は、踏切内部を監視するための画像を取得することができる位置に備えられ、所定個所の撮像処理を行うとともに、画像処理システム1に何らかの故障が発生しているか否かを判断するための所定の処理を実行するものとして説明する。そして、判断処理ユニット12は、撮像処理ユニット11により撮像された画像に基づいて、安全監視処理のために必要な画像処理、具体的には、例えば、踏切内部に人や車などの物体が存在するか否かを判断する処理を実行するとともに、画像処理システム1に何らかの故障が発生しているか否かを判断するものとして説明する。
【0026】
撮像処理ユニット11は、制御部21、撮像部22、データ処理部23、および、送信側インタフェース処理部24の機能を含んで構成されている。なお、撮像処理ユニット11は、撮像部22、データ処理部23、および、送信側インタフェース処理部24を、それぞれ1つしか備えていない。これらがそれぞれ2つ設けられることにより冗長な回路構成を有している場合は、それぞれの処理結果を比較することにより、故障を発見することができるが、コストが上昇してしまうのみならず、異なる撮像部により撮像された対象個所の画像は異なるものであるから直接的には照合できないこと、また、画像処理の処理タイミングを完全に同期させるのも容易ではないため、処理系の故障検出が複雑になるという問題が発生する。そこで、画像処理システム1においては、共通原因故障となりうる撮像処理ユニット11において故障が発生した場合に、処理の後段において確実に検出することができるような機能を有している。
【0027】
制御部21は、撮像処理ユニット11の各部を制御する。
【0028】
撮像部22は、撮像素子とA/D変換器を含んで構成され、所定のフレームレートで撮像処理を実行し、データ処理部23に供給する。
【0029】
データ処理部23は、撮像部22の出力画像に対して、必要な処理(画素ごとのばらつき等を補正する処理など)を施す従来の処理を実行する。さらに、データ処理部23は、これら従来の処理に加えて、画像処理システム1各部の故障を的確に検出するために必要な処理を実行する。
【0030】
すなわち、
図1に示す撮像処理ユニット11は、撮像部22、データ処理部23、および、送信側インタフェース処理部24を、それぞれ1つしか備えていないため、これら各部が共通原因故障となりうる。このため、撮像処理ユニット11各部の故障は、後段において必ず検出可能であることが必要となる。また、後段の各部の故障を検出するために、撮像された画像データの処理の前段において必要な情報を挿入する必要がある。そのため、データ処理部23は、従来と同様の撮像画像の補正等の処理に加えて、画像処理システム1各部の故障を的確に検出するために必要な処理を実行する。データ処理部23の詳細な機能構成については、
図2を用いて後述する。
【0031】
送信側インタフェース処理部24は、データ処理部23から供給された撮像画像データを含む情報に、伝送誤りのチェックのためのフレームチェックシーケンス(以下、FCSと称する)を付与し、判断処理ユニット12に供給する。
【0032】
次に、判断処理ユニット12は、撮像された画像から、所定の処理を実行し、鉄道信号の安全のために必要な情報を検出して、状態を判断するとともに、画像処理システム1が正確に動作しているか否かを判断するものである。判断処理ユニット12は、受信側インタフェース処理部31、画像処理ユニット32、および、フェールセーフコンピュータ33を含んで構成されている。
【0033】
フェールセーフコンピュータ33は、冗長な構成を有するため、安全性の確保は可能であるが、処理速度が比較的遅い。すなわち、フェールセーフコンピュータ33は、2つ以上の撮像系から得られる画像を十分な速度で処理したり、画像処理システム1各部の故障を的確に検出するために必要な処理(以下、故障検出処理と称する)のすべてを、故障確率に対して、十分に高い頻度で照合を行うことは困難である。そのため、判断処理ユニット12は、フェールセーフコンピュータ33に加えて、画像処理ユニット32を設け、画像処理、および、故障検出処理の一部を、画像処理ユニット32が実行するようになされている。画像処理ユニット32とフェールセーフコンピュータ33とは、同じ周期で動作していても非同期で動作する。
【0034】
次に、判断処理ユニット12の各部の処理について説明する。
【0035】
受信側インタフェース処理部31は、撮像処理ユニット11から供給された撮像画像データを含む情報を取得し、FCS検定を実行するとともに、問題がなければ、撮像処理ユニット11から供給された撮像画像データを、画像処理ユニット32の第1の画像処理部41、および、第2の画像処理部42のそれぞれに供給する。また、受信側インタフェース処理部31は、例えば、モニタ等に撮像された映像が、図示しないモニタに表示されたり、図示しないメモリ等に記憶される場合、撮像処理ユニット11から供給された撮像画像データを、対応する装置等に出力するが、ここでは、それらの処理についての説明は省略する。
【0036】
画像処理ユニット32は、同一の機能を有する第1の画像処理部41、および、第2の画像処理部42を有する、すなわち、同一の2つの系統による冗長な構成を有するものである。画像処理ユニット32の第1の画像処理部41、および、第2の画像処理部42は、撮像画像データに対する画像処理を実行する。さらに、第1の画像処理部41、および、第2の画像処理部42は、データ処理部23により付加された各種情報に基づいて、故障検出処理の一部を実行する。第1の画像処理部41、および、第2の画像処理部42が有する詳細な機能については、
図4および
図5を用いて後述する。
【0037】
フェールセーフコンピュータ33は、1つの処理を、ソフト的ハード的に2つ以上の系で動作させ、それぞれの処理結果が同一である場合にのみ、正常な処理結果が得られていると判定する情報処理装置である。フェールセーフコンピュータ33は、n個の情報処理部51-n(n≧2)、処理結果判定部52、および、処理結果出力制御部53の機能を含んで構成されている。
【0038】
情報処理部51-nは、画像処理ユニット32の第1の画像処理部41、および、第2の画像処理部42による画像処理結果が同一であるか否かをそれぞれの処理系統で判断し、判断結果を、処理結果判定部52に供給する。また、情報処理部51-nは、画像処理ユニット32の第1の画像処理部41、および、第2の画像処理部42による故障検出処理のうちの一部の処理結果に基づいて、それぞれの処理系統で故障検出処理を実行し、その結果を、処理結果判定部52に供給する。情報処理部51-nが有する機能についての詳細は、
図7を用いて後述する。
【0039】
処理結果判定部52は、情報処理部51-nにおいて、画像処理結果が同一であり、かつ、故障検出処理により故障が検出されなかった場合、画像処理ユニット32の第1の画像処理部41、および、第2の画像処理部42による画像処理結果は正しいと判断し、結果に基づく各種処理を実行するための制御信号を生成し、処理結果出力制御部53に供給する。また、処理結果判定部52は、すべての処理系統において、画像処理結果が同一ではない場合、または、故障検出処理により故障が検出された場合、安全側に各種動作を制御する、具体的には、例えば、該当する踏切に列車を侵入させないための信号動作を指令するための制御信号を生成し、処理結果出力制御部53に供給する。
【0040】
処理結果出力制御部53は、処理結果判定部52から供給された制御信号の、例えば、鉄道の信号を管理する管理制御装置等の所定の他の装置への出力を制御する。
【0041】
図2は、データ処理部23の更に詳細な機能構成を示す機能ブロック図である。データ処理部23は、上述したように、従来と同様の撮像画像の補正等の処理に加えて、画像処理システム1各部の故障を的確に検出するために必要な処理を実行する。データ処理部23は、撮像データ取得部61、テストパターン生成部62、補正等処理部63、CRC生成部64、フレームカウンタ65、クロックカウンタ66、および、画像データフレーム生成部67の機能を含んで構成されている。
【0042】
データ処理部23のうち、撮像データ取得部61と補正等処理部63は、従来の一般的なカメラ装置のデータ処理部23が有する機能と同一の機能を有している。従来のデータ処理部23がFPGA(Field-Programmable Gate Array)で構成されている場合、従来のデータ処理部23に対して、テストパターン生成部62、CRC生成部64、フレームカウンタ65、クロックカウンタ66、および、画像データフレーム生成部67の機能の追加を容易に行うことが可能である。
【0043】
撮像データ取得部61は、撮像部22から供給されたフレーム画像データを取得し、補正等処理部63に供給する。
【0044】
テストパターン生成部62は、所定のタイミングでテストパターンを生成し、補正等処理部63に供給する。テストパターン生成部62により生成されるテストパターンは、後述する物体検知処理部において背景差分法が用いられている場合、背景画像と十分な画素値の差を有しているものであると好適である。テストパターンの生成間隔は、故障確率に対して、十分に高い頻度である。なお、テストパターンの生成は、判断処理ユニット12からの要求を受けたタイミングであってもかまわない。
【0045】
補正等処理部63は、撮像データ取得部61から供給されたフレーム画像データの画素ごとのばらつき等を補正する処理など、従来の画像補正処理等を実行し、補正等が施された画像データを、画像データフレーム生成部67およびCRC生成部64に供給する。また、補正等処理部63は、供給されたテストパターンをフレーム画像データに挿入して、画像データフレーム生成部67に供給する。
【0046】
また、テストパターン生成部62を撮像部22に設け、生成されたテストパターンを、撮像部22のA/D変換器の前段で挿入することとしてもよいし、電子シャッタなどを用いて強制的にテストパターンを撮像させるものとしてもよい。テストパターンの挿入は、前段であるほど、多くの素子等の以上を検出することが可能である。しかしながら、従来のデータ処理部がFPGAで構成されている場合、テストパターンを補正等処理部63の前段においてフレーム画像データに挿入する機能の追加が容易であるので、ここでは、
図2に示す構成でテストパターンを挿入するものとして説明する。
【0047】
撮像画像に挿入されるテストパターンは、後述するCRCによる画像固着の検出機能の異常発生の検出に用いられる。また、撮像画像に挿入されるテストパターンは、後述する背景差分法による物体検知の異常発生の検出に用いられる。
【0048】
CRC生成部64は、補正等処理部63から供給されるフレーム画像データに基づいて、CRC(Cyclic Redundancy Check:巡回冗長検査)を生成し、画像データフレーム生成部67に供給する。CRC生成部64は、後述する画像データフレーム生成部67により、画像データ以外の情報が埋め込まれる画素位置以外の情報に基づいて、CRCを算出する。CRC生成部64により算出されたCRCの値を、第1のCRC値と称するものとする。後述する判断処理ユニット12においてCRC検定が実行されることにより、撮像部22内の撮像素子やA/D変換器の故障、補正等処理部63の読込回路の故障などによる、画像データの固着を検出することが可能となる。
【0049】
なお、ここでは、通常、静止物を撮像した場合も画素単位では微小な揺らぎが発生することで、CRCの算出値は毎回同じにならないことを前提としている。これに対して、微小な揺らぎの発生しない撮像部22の場合は、撮像対象の動作頻度にあわせて時素設定することが必要となる。
【0050】
また、伝送経路において画像データに異常が発生した場合においても、CRC検定によって検出可能となる。上述したように、撮像処理ユニット11と判断処理ユニット12との間の通信においては、FCSを用いた伝送誤りのチェックを行っているが、FCSを用いた伝送誤りのチェック自体が1系統でしか行われていないこと、また、FCSを用いた伝送誤りのチェック終了後から画像処理が実行されるまでの間の伝送経路等の故障を検出することにより、2系統の画像処理、すなわち、第1の画像処理部41および第2の画像処理部42に入力するデータの一貫性を担保する必要性の観点からも、CRC検定は有効である。
【0051】
フレームカウンタ65は、撮像部22による撮像のフレームレートに合わせて、フレーム画像データのフレーム番号をカウントするカウンタである。また、クロックカウンタ66は、クロックパルスをカウントするカウンタである。これらのカウンタの値は、画像処理時のフレーム抜けやフレームレートの異常発生時の検出に用いられる。また、後述する画像処理ユニット32とフェールセーフコンピュータ33とは、同じ周期で動作していても非同期で動作し、第1の画像処理部41および第2の画像処理部42は非同期で動作するため、第1の画像処理部41および第2の画像処理部42において行われた画像処理の一致を正しく検出するために、フレームカウンタ65のカウンタ値が用いられる。
【0052】
画像データフレーム生成部67は、補正等処理部63から供給された、テストパターンを含むフレーム画像データに、フレームカウンタの値、クロックカウンタの値、および、第1のCRC値を書き加えた画像データフレームを生成し、送信側インタフェース処理部24に供給する。
【0053】
図3を参照して、フレームカウンタの値、クロックカウンタの値、および、CRCの算出値を書き加えた画像データフレームについて説明する。
【0054】
撮像処理ユニット11と判断処理ユニット12との間の通信において、データフレーム構成が規格で定められている場合、専用のデータフレームを設けることはできず、また、画像データフレーム以外に、フレームカウンタの値、クロックカウンタの値、および、第1のCRC値が記されたデータフレームを新たに設けるようにした場合、画像の通信速度が遅れたり、画像データフレームとそれ以外のデータフレームを後段の画像処理において区別する必要が発生する。そこで、画像データフレーム生成部67は、規格で定められたデータフレームの数画素分のデータ領域を用いて、フレームカウンタの値、クロックカウンタの値、および、第1のCRC値を記述する。
【0055】
図3においては、639×479画素の画像データ領域のうち、(637,479)(638,479)および(639,479)の3画素分のデータ領域にフレームカウンタの値、クロックカウンタの値、および、CRCの算出値がそれぞれ書き加えられている。フレームカウンタの値、クロックカウンタの値、および、第1のCRC値が書き込まれる位置については、後述する物体検出処理の障害になりにくい箇所、例えば、画像の端部、四隅などに書き込むものとすると好適である。
【0056】
次に、
図4は、画像処理ユニット32の第1の画像処理部41が有する機能構成を示す機能ブロック図である。第1の画像処理部41は、第1の画像データ取得部71-1、第1のCRC算出処理部72-1、第1の物体検知処理部73-1、第1のクロックチェック用カウンタ74-1、第1の画像データ縮小処理部75-1、および、第1の情報送出処理部76-1の機能を含んで構成されている。
【0057】
なお、第2の画像処理部42は、第2の画像データ取得部71-2、第2のCRC算出処理部72-2、第2の物体検知処理部73-2、第2のクロックチェック用カウンタ74-2、第2の画像データ縮小処理部75-2、および、第2の情報送出処理部76-2の機能を含んで構成され、それらは、第1の画像データ取得部71-1、第1のCRC算出処理部72-1、第1の物体検知処理部73-1、第1のクロックチェック用カウンタ74-1、第1の画像データ縮小処理部75-1、および、第1の情報送出処理部76-1と同一の処理を実行するものであるので、その図示と詳細な説明については省略する。
【0058】
画像処理ユニット32の後段のフェールセーフコンピュータ33は、ソフト的ハード的に2つ以上の系で処理を実行し、それぞれの処理結果が同一である場合にのみ、正常な処理結果が得られていると判定する情報処理装置であるため、処理速度が比較的遅い。しかしながら、監視処理の故障を確実に検出するためには、故障確率に対して、十分に高い頻度で照合を行うことが求められる。したがって、画像処理ユニット32の第1の画像処理部41および第2の画像処理部42は、撮像された画像データの中に、背景以外の物体(人や車など)が含まれているか否かを検出するための画像処理と、その処理結果の縮小処理を行うとともに、CRC検定に必要な処理の一部として、取得した画像のCRCの算出処理を実行する。
【0059】
第1の画像データ取得部71-1は、受信側インタフェース処理部31から、
図3を用いて説明した、フレームカウンタの値、クロックカウンタの値、および、第1のCRC値の情報を含むフレーム画像データを取得し、フレームカウンタの値、および、第1のCRC値を抽出して、第1の情報送出処理部76-1に供給する。また、第1の画像データ取得部71-1は、フレームカウンタの値、クロックカウンタの値、および、第1のCRC値の情報を含むフレーム画像データを、第1のCRC算出処理部72-1、第1の物体検知処理部73-1、および、第1のクロックチェック用カウンタ74-1に供給する。
【0060】
第1のCRC算出処理部72-1は、第1の画像データ取得部71-1から供給されたフレーム画像データのうち、画像データフレーム生成部67の処理により、
図3を用いて説明した画像データ以外の情報が埋め込まれた画素位置以外の情報に基づいて、CRCを算出し、算出結果を、第1の情報送出処理部76-1に供給する。ここで、第1のCRC算出処理部72-1―1で生成されたCRC算出値を、第2aのCRC値と称する(第2のCRC算出処理部72-2で生成されたCRC算出値を、第2bのCRC値と称する)ものとする。
【0061】
第1の物体検知処理部73-1は、第1の画像データ取得部71-1から供給されたフレーム画像データを用いて、撮像範囲内の異常を検出する、具体的には、例えば、踏切内に、人や車などの物体が存在するか否かを検知するための画像処理を実行し、その画像処理結果(すなわち、物体有無の検知結果)を第1の情報送出処理部76-1に供給するとともに、処理後の画像データを、第1の画像データ縮小処理部75-1に供給する。第1の物体検知処理部73-1による物体検知のための画像処理手法は、いずれの手法であってもかまわないが、ここでは、背景差分法を用いるものとして説明する。背景差分法を用いた第1の物体検知処理部73-1についての詳細は、
図5を用いて後述する。第1の物体検知処理部73-1が背景差分法を用いている場合、処理後の画像データは、二値化画像データとなる。
【0062】
第1のクロックチェック用カウンタ74-1は、クロックチェック用のカウンタであり、第1の画像データ取得部71-1から供給されたフレーム画像データに含まれるクロックカウンタ値を抽出し、自ら生成したカウンタ値(以下、チェック用のクロックカウンタ値と称する)とともに、第1の情報送出処理部76-1に供給する。
【0063】
第1の画像データ縮小処理部75-1は、第1の物体検知処理部73-1から供給された二値化画像データのデータ量を縮小し、得られた縮小画像データを、第1の情報送出処理部76-1に供給する。これにより、後段のフェールセーフコンピュータ33の処理時間を短縮することができる。第1の物体検知処理部73-1が背景差分法を用いた場合の第1の画像データ縮小処理部75-1の処理についての詳細は、
図6を用いて後述する。
【0064】
第1の情報送出処理部76-1は、第1の画像データ取得部71-1により抽出されたフレームカウンタの値、および、第1のCRC値、第1のCRC算出処理部72-1から供給された第2aのCRC値、第1の物体検知処理部73-1から供給された画像処理結果、第1の画像データ縮小処理部75-1から供給された縮小画像データ、並びに、第1のクロックチェック用カウンタ74-1によるチェック用クロックカウンタ値、および、抽出されたクロックカウンタ値を、フェールセーフコンピュータ33の情報処理部51-nに供給する。
【0065】
図5に、背景差分法を用いた場合の第1の物体検知処理部73-1が有する機能の構成例を示す。物体検知処理部は、背景情報記憶部81-1、および、背景差分法実行処理部82-1の機能を含んで構成されている。
【0066】
背景情報記憶部81-1は、撮像部22による撮像範囲に物体が存在していない状態、すなわち、背景の画像情報を記憶している。背景差分法実行処理部82-1は、
図3を用いて説明した、フレームカウンタ値、クロックカウンタ値、および、CRCの算出値が記述された画素値以外の画素において、背景情報記憶部81-1により記憶されている背景の画像情報と、第1の画像データ取得部71-1から供給されたフレーム画像データを比較し、画素値の差が閾値以下であれば、その画素は背景が撮像されたものであると検出し、画素値の差が閾値以上であれば、その画素は物体が撮像されたものであると検出する。背景差分法実行処理部82-1は、例えば、物体なしと検出された画素を0、物体ありと検出された画素を1とする二値化画像データを、処理後の画像データとして、第1の画像データ縮小処理部75-1に供給するとともに、画像処理結果(すなわち、物体有無の検知結果)を、第1の情報送出処理部76-1に供給する。
【0067】
ここで、背景情報記憶部81-1より記憶されている背景の画像情報モデルに何らかの要因によって異常が生じ、背景として設定している画素値の範囲が広くなったとする。その状況下で物体が映り込むと、正常な系では画素値の差が十分にあるため、物体として検知できるが、異常な系では画素値の差が少なくなり背景として判定される事象が起こり得る。この事象は、撮像範囲に物体が映り込むこと、すなわち検知可能なレベルの画素値の変化が起こることで、第1の画像処理部41および第2の画像処理部42のそれぞれの処理結果の不一致が発生して顕在化する。これに対して、映像の変化が少ない状態を観測している間は、異常が潜在し続ける可能性がある。
【0068】
しかしながら、画像処理システム1においては、撮像処理ユニット11から供給されるフレーム画像データには、故障確率に対して、十分に高い頻度でテストパターンが挿入されている。テストパターンが背景画像と十分な画素値の差を有しているものである場合、いずれかの系で背景の画像情報モデルに異常が発生しても、テストパターンが挿入されているタイミングで、第1の画像処理部41および第2の画像処理部42のそれぞれの処理結果の不一致が発生し、異常を検知することができる。
【0069】
次に、第1の画像データ縮小処理部75-1は、上述したように、第1の物体検知処理部73-1から供給された二値化画像データを縮小する処理を実行する。上述したように、フェールセーフコンピュータ33は、冗長な構成を有するため、安全性は確保されるが、処理速度が比較的遅い。すなわち、フェールセーフコンピュータ33は、2つ以上の撮像系から得られる画像をそのままのデータ容量で、十分な速度で処理することが困難である。そのため、第1の画像データ縮小処理部75-1は、比較対象となるデータをフェールセーフコンピュータ33で照合可能なサイズとし、かつ微小な差異を許容するように、第1の物体検知処理部73-1から供給された二値化画像データを縮小する。
【0070】
第1の画像データ縮小処理部75-1は、例えば、
図6に示されるように、二値化画像データを所定数のブロックに分割し、それぞれのブロック内に「1」の値が存在するか否かのダイジェスト化を行い、その結果を、第1の情報送出処理部76-1に供給する。この縮小画像データは、後述するハミング距離検定処理部103におけるハミング距離検定に用いられる。
【0071】
なお、第1の画像データ縮小処理部75-1は、供給された二値化画像データを、画像位置に関わりなく平均的に所定数のブロックに分割してもよいし、画像処理において主な検出対象となる画像の中央部分と、例えば、上述した背景差分法において、ほぼ背景画像から変わらないような画像位置、換言すれば、検出の対象とならない端部とのブロック分割の重み付けを変更するようにしてもよい。これにより、後述するハミング距離の算出結果の精度を保ちつつ、画像データを効率よく縮小することが可能となる。
【0072】
次に、
図7は、フェールセーフコンピュータ33の情報処理部51-nが有する機能について説明するための機能ブロック図である。情報処理部51-nは、情報取得部91、CRC情報取得部92、テストパターンCRC情報記憶部93、CRC情報比較処理部94、画像処理結果比較部95、および、出力処理部96の機能を含んで構成されている。
【0073】
なお、フェールセーフコンピュータ33における冗長な機能である全ての情報処理部51-nは、同様の機能を有しているため、ここでは、図示および詳細な説明は省略する。
【0074】
情報取得部91は、第1の画像処理部41の第1の情報送出処理部76-1から供給される第2aのCRC値、画像処理結果(すなわち、物体有無の検知結果)、縮小画像データ、フレームカウンタ値、チェック用クロックカウンタ値、および、抽出されたクロックカウンタ値、並びに、第1のCRC値を取得するとともに、第2の画像処理部42の第2の情報送出処理部76-2から供給される第2bのCRC値、画像処理結果、縮小画像データ、フレームカウンタ値、チェック用クロックカウンタ値、および、抽出されたクロックカウンタ値、並びに、第1のCRC値を取得する。ここで、前述した第1の画像処理部41の第1の情報送出処理部76-1から供給される情報をA系の画像処理結果等、前述した第2の画像処理部42の第2の情報送出処理部76-2から供給される情報をB系の画像処理結果等と称するものとする。
【0075】
CRC情報取得部92は、情報取得部91により取得された情報から、第2aのCRC値、第2bのCRC値、および、第1のCRC値を取得し、CRC情報比較処理部94に供給する。
【0076】
テストパターンCRC情報記憶部93は、テストパターン生成部62により生成されるテストパターンの、
図3を用いて説明した画像データ以外の情報が埋め込まれる画素位置以外の情報に基づいて算出された、第1のCRC値に対応する値、すなわち、いずれかで故障が発生していない場合のCRCの正解値をあらかじめ保存している。
【0077】
CRC情報比較処理部94は、情報取得部91により取得されたフレーム画像データがテストパターンではない場合、第1のCRC値と第2aのCRC値の比較、第1のCRC値と第2bのCRC値の比較、および、第2aのCRC値と第2bのCRC値の比較を実行する。CRC情報比較処理部94は、これらの値がすべて一致している場合、CRC検定に問題が発生していないとして、出力処理部96に比較結果を供給する。そして、CRC情報比較処理部94は、これらの値のうちのいずれかが一致してない場合、CRC検定に問題が発生しているものとして、出力処理部96に比較結果を供給する。
【0078】
ここで、両系ともにCRC検定不良である場合、撮像処理ユニット11の故障であると検出され、A系またはB系のいずれかのCRC検定不良である場合、不良を出力した系の故障、すなわち、第1の画像処理部41または第2の画像処理部42の故障であることが検出される。
【0079】
またCRC情報比較処理部94は、情報取得部91により取得されたフレーム画像データがテストパターンである場合、第1のCRC値とテストパターンCRC情報記憶部93に記憶されている正解値の比較、第2aのCRC値とテストパターンCRC情報記憶部93に記憶されている正解値の比較、および、第2bのCRC値とテストパターンCRC情報記憶部93に記憶されている正解値との比較を実行する。CRC情報比較処理部94は、これらの値がすべて一致している場合、CRC検定に問題が発生していないとして、出力処理部96に比較結果を供給する。そして、CRC情報比較処理部94は、これらの値のうちのいずれかが一致してない場合、一致していない部分のCRCの算出に問題が発生しているものとして、出力処理部96に比較結果を供給する。
【0080】
画像処理結果比較部95は、画像処理バッファ101、フレームカウンタ比較処理部102、ハミング距離検定処理部103、検知処理結果比較判定部104、および、クロックカウンタ比較処理部105の機能を含んで構成されている。
【0081】
画像処理バッファ101は、第1の画像処理部41および第2の画像処理部42のそれぞれで処理されたA系の画像処理結果、縮小画像データ、チェック用クロックカウンタ値、抽出されたクロックカウンタ値、および、フレームカウンタ値、並びに、B系の画像処理結果、縮小画像データ、チェック用クロックカウンタ値、抽出されたクロックカウンタ値、および、フレームカウンタ値を、2周期(発生される周期ずれの範囲の可能性に応じて2周期以上保持可能なバッファ容量としても良い)保持し、フレームカウンタ比較処理部102によるフレームカウンタ値の比較結果に基づいて、照査対象となる画像処理結果、縮小画像データ、チェック用クロックカウンタ値、および、抽出されたクロックカウンタ値を検出し、画像処理結果を検知処理結果比較判定部104に、縮小画像データをハミング距離検定処理部103に、チェック用クロックカウンタ値、および、抽出されたクロックカウンタ値をクロックカウンタ比較処理部105に、それぞれ供給する。
【0082】
画像処理ユニット32とフェールセーフコンピュータ33とは、同じ周期で動作していても非同期で動作し、第1の画像処理部41および第2の画像処理部42は非同期で動作するため、第1の画像処理部41および第2の画像処理部42において行われた画像処理の一致を正しく検出するために、複数フレームのA系およびB系のデータを一時保持することが可能な画像処理バッファ101と、画像処理バッファ101に保持されている画像処理結果から、比較対象となる組み合わせを正しく選択するためのフレームカウンタ比較処理部102が必要となる。
【0083】
なお、画像処理バッファ101に保持可能なフレーム数内にフレームカウンタ値が一致したA系の画像処理結果およびB系の画像処理結果が存在しなかった場合、フレームカウンタ比較処理部102は、フレーム落ちなどの障害が発生していることを、出力処理部96に通知する。
【0084】
図8および
図9を参照して、照査対象となるデータの検出について説明する。
【0085】
図8に示されるように、フェールセーフコンピュータ33のある処理周期t=1において、画像処理バッファ101に保持された第1の画像処理部41および第2の画像処理部42のそれぞれで処理されたA系の画像処理結果等と、B系の画像処理結果等において、それぞれ同時に取得されたフレームカウンタ値が一致していた場合、照査対象は、これらの画像処理結果等となり、対応する縮小画像が、ハミング距離検定処理部103に供給され、画像処理結果が、検知処理結果比較判定部104に供給され、チェック用クロックカウンタ値、および、抽出されたクロックカウンタ値が、クロックカウンタ比較処理部105に供給される。
【0086】
これに対して、
図9に示されるように、フェールセーフコンピュータ33のある処理周期t=1において、画像処理バッファ101に保持された第1の画像処理部41および第2の画像処理部42のそれぞれで処理されたA系の画像処理結果等と、B系の画像処理結果等と同時にそれぞれ取得されたフレームカウンタ値が一致していない場合、次の処理周期t=2において画像処理バッファ101に保持されるそれぞれ2フレームのA系の画像処理結果等と、B系の画像処理結果等とそれぞれ同時に取得されたフレームカウンタ値が比較され、照査対象となる画像処理結果等が検出される。照査対象として検出された縮小画像が、ハミング距離検定処理部103に供給され、画像処理結果が、検知処理結果比較判定部104に供給され、チェック用クロックカウンタ値、および、抽出されたクロックカウンタ値が、クロックカウンタ比較処理部105に供給される。
【0087】
ハミング距離検定処理部103は、画像処理バッファ101から供給された、同一フレームのA系の縮小画像およびB系の縮小画像のそれぞれのダイジェスト化結果のハミング距離を算出する。具体的には、ハミング距離検定処理部103は、
図10に示されるように、ダイジェスト化された二値化データをbit列に並び変え、
図11に示されるように、A系の縮小画像から導き出されたbit列と、B系の縮小画像から導き出されたbit列とを比較することによりハミング距離を算出し、所定の閾値と比較して、ハミング距離が閾値より小さければ、ハミング検定でエラーがなかったと判定し、ハミング距離が閾値より大きければ、ハミング検定でエラーが発生したと判定して、判定結果を、出力処理部96に供給する。
【0088】
図7に戻り、検知処理結果比較判定部104は、画像処理バッファ101から供給された、同一フレームのA系の画像処理結果およびB系の画像処理結果の一致と不一致を判定し、判定結果を出力処理部96に供給する。
【0089】
クロックカウンタ比較処理部105は、画像処理バッファ101から、チェック用クロックカウンタ値、および、抽出されたクロックカウンタ値を取得し、A系のチェック用クロックカウンタ値と抽出されたクロックカウンタ値を比較するとともに、B系のチェック用クロックカウンタ値とB系の抽出されたクロックカウンタ値を比較する。クロックカウンタ比較処理部105は、A系B系とも、比較結果が不一致であった場合、クロックカウンタ値の異常を出力処理部96に供給する。A系B系の少なくともいずれかの比較結果が一致であった場合、異常であるとはみなされない。
【0090】
出力処理部96は、CRC情報比較処理部94から供給された各CRC検定結果、ハミング距離検定処理部103から供給されたハミング検定結果、検知処理結果比較判定部104から供給された、画像処理結果、すなわち、物体有無の検知結果の一致不一致の判定結果、および、クロックカウンタ比較処理部105によりクロックカウンタ値の異常が検出されたか否かに基づいて、いずれかで異常が検出された場合は、エラーが検出されたとして、異常の検出内容を、処理結果判定部52に供給し、異常が検出されていない場合は、エラーが検出されていないこと、並びに、画像処理バッファ101から供給されたA系およびB系の画像処理結果を処理結果判定部52に供給する。
【0091】
上述したように、処理結果判定部52は、情報処理部51-nにおいて、画像処理結果が同一であり、かつ、故障検出処理により故障が検出されなかった場合、画像処理ユニット32の第1の画像処理部41、および、第2の画像処理部42による画像処理結果(ここでは、踏切内に物体が存在するか否かの検出結果)は正しいと判断し、結果に基づく各種処理を実行するための制御信号を生成し、処理結果出力制御部53に供給する。また、処理結果判定部52は、すべての処理系統において、画像処理結果が同一ではない場合、または、故障検出処理により故障が検出された場合、安全側に各種動作を制御する、具体的には、例えば、該当する踏切に列車を侵入させないための信号動作を指令するための制御信号を生成し、処理結果出力制御部53に供給する。処理結果出力制御部53は、処理結果判定部52から供給された制御信号の、例えば、鉄道の信号を管理する管理制御装置等の所定の他の装置への出力を制御する。
【0092】
次に、
図12のフローチャートを参照して、撮像処理ユニット11の処理について説明する。
【0093】
ステップS1において、撮像部22は、所定のフレームレートで撮像処理を実行し、データ処理部23に供給する。データ処理部23の撮像データ取得部61は、撮像して得られたフレーム画像データを取得し、補正等処理部63に供給する。なお、ステップS1の処理は、これ以降説明する各ステップの処理の終了を待つことなく、システムの稼働中は、随時実行されて、それぞれのフレーム画像データに対して、これ以降の処理が実行される。
【0094】
ステップS2において、テストパターン生成部62は、テストパターン挿入タイミングであるか否かを判断する。
【0095】
ステップS2において、テストパターン挿入タイミングであると判断された場合、ステップS3において、テストパターン生成部62は、テストパターンを生成し、補正等処理部63に供給する。
【0096】
ステップS2において、テストパターン挿入タイミングではないと判断された場合、または、ステップS3の処理の終了後、ステップS4において、補正等処理部63は、撮像データ取得部61から供給されたフレーム画像データ、または、テストパターン生成部62から供給されたテストパターンの画素ごとのばらつき等を補正する処理など、従来の画像補正処理等を実行し、補正等が施された画像データ(ただし、テストパターンは、補正等処理部63による補正等の処理で変化されないものである)を、画像データフレーム生成部67およびCRC生成部64に供給する。
【0097】
ステップS5において、CRC生成部64は、補正等処理部63から供給されるフレーム画像データに基づいて、CRCを生成する。
【0098】
ステップS6において、画像データフレーム生成部67は、補正等処理部63から供給された、テストパターンを含むフレーム画像データに、
図3を用いて説明したように、フレームカウンタの値、クロックカウンタの値、および、第1のCRC値を、フレーム画像データの画像データ領域のうちの所定個所に書き加えた送出用データを生成して、送信側インタフェース処理部24に供給する。
【0099】
ステップS7において、送信側インタフェース処理部24は、画像データフレーム生成部67から供給された送出用データにFCSを付与し、判断処理ユニット12に送出する。
【0100】
このような処理により、テストパターンを含むフレーム画像データに、
図3を用いて説明したように、フレームカウンタの値、クロックカウンタの値、および、第1のCRC値を、フレーム画像データの画像データ領域のうちの所定個所に書き加えた送出用データが生成されて、判断処理ユニット12に供給されるので、冗長化されていない撮像処理ユニット11において異常が発生した場合にも、確実に検出することが可能となる。
【0101】
そして、
図12のフローチャートの処理の終了後、判断処理ユニット12の受信側インタフェース処理部31は、撮像処理ユニット11から供給された撮像画像データを含む情報を取得し、FCS検定を実行するとともに、問題がなければ、撮像処理ユニット11から供給された撮像画像データを、画像処理ユニット32の第1の画像処理部41、および、第2の画像処理部42のそれぞれに供給する。
【0102】
次に、
図13のフローチャートを参照して、第1の画像処理部41および第2の画像処理部42の処理について説明する。ここでは、第1の画像処理部41の構成要素を用いて説明するが、第1の画像処理部41および第2の画像処理部42は、同一の処理を実行するので、その説明は省略する。
【0103】
ステップS21において、第1の画像処理部41の第1の画像データ取得部71-1は、受信側インタフェース処理部31から、
図3を用いて説明した、フレームカウンタの値、クロックカウンタの値、および、第1のCRC値の情報を含むフレーム画像データを取得し、フレームカウンタの値、および、第1のCRCを抽出して、第1の情報送出処理部76-1に供給する。また、第1の画像データ取得部71-1は、フレームカウンタの値、クロックカウンタの値、および、第1のCRCの情報を含むフレーム画像データを、第1のCRC算出処理部72-1、第1の物体検知処理部73-1、および、第1のクロックチェック用カウンタ74-1に供給する。
【0104】
ステップS22において、第1のCRC算出処理部72-1は、第1の画像データ取得部71-1から供給されたフレーム画像データのうち、画像データフレーム生成部67の処理により、
図3を用いて説明した画像データ以外の情報が埋め込まれた画素位置以外の情報に基づいて、CRCを算出し、算出結果である第2aのCRC値を、第1の情報送出処理部76-1に供給する。
【0105】
ステップS23において、第1のクロックチェック用カウンタ74-1は、第1の画像データ取得部71-1から供給されたフレーム画像データに記述されているクロックカウンタ値を抽出し、自ら生成したチェック用クロックカウンタ値とともに、第1の情報送出処理部76-1に供給する。
【0106】
ステップS24において、第1の物体検知処理部73-1は、第1の画像データ取得部71-1から供給されたフレーム画像データを用いて、撮像範囲内の異常を検出する、具体的には、例えば、踏切内に、人や車などの物体が存在するか否かを検出する画像処理を実行し、画像処理結果(すなわち、物体有無の検知結果)を第1の情報送出処理部76-1に、処理後の画像データである二値化画像データを第1の画像データ縮小処理部75-1に供給する。ここでは、第1の物体検知処理部73-1は、背景差分法を用いるものとする。
【0107】
ステップS25において、第1の画像データ縮小処理部75-1は、第1の物体検知処理部73-1から供給された二値化画像データに、
図6を用いて説明したようにして、縮小処理を施し、その結果得られる縮小画像データを、第1の情報送出処理部76-1に供給する。
【0108】
ステップS26において、第1の情報送出処理部76-1は、第1の画像データ取得部71-1により抽出されたフレームカウンタ値、および、第1のCRC値、第1のCRC算出処理部72-1から供給された第2aのCRC値、第1のクロックチェック用カウンタ74-1から供給されたチェック用クロックカウンタ値、および、抽出されたクロックカウンタ値、第1の物体検知処理部73-1から供給された画像処理結果、並びに、第1の画像データ縮小処理部75-1から供給された縮小画像データを、フェールセーフコンピュータ33の情報処理部51-nに供給する。
【0109】
このような処理により、同一の機能を有する第1の画像処理部41、および、第2の画像処理部42のそれぞれにおいて、従来と同様の物体検出のための画像処理と、その縮小処理に加えて、故障検出処理の一部が実行されるので、比較的処理が遅いフェールセーフコンピュータ33が、故障確率に対して、十分に高い頻度で照合を行うことが可能となる。
【0110】
次に、
図14のフローチャートを参照して、情報処理部51-nのCRC検査処理について説明する。情報処理部51-nは、同一の処理を実行する。
【0111】
ステップS31において、情報取得部91は、第1の画像処理部41の第1の情報送出処理部76-1から供給される、フレームカウンタ値、第1のCRC値、第2aのCRC値、チェック用クロックカウンタ値、抽出されたクロックカウンタ値、画像処理結果、および、縮小画像データを取得するとともに、第2の画像処理部42の第2の情報送出処理部76-2から供給される、フレームカウンタ値、第1のCRC値、第2bのCRC値、チェック用クロックカウンタ値、抽出されたクロックカウンタ値、画像処理結果、および、縮小画像データを取得する。ここで、前述した第1の画像処理部41の第1の情報送出処理部76-1から供給される画像処理結果をA系の画像処理結果、前述した第2の画像処理部42の第2の情報送出処理部76-2から供給される画像処理結果をB系の画像処理結果と称するものとする。
【0112】
ステップS32において、CRC情報取得部92は、情報取得部91により取得された情報から、第2aのCRC値、第2bのCRC値、および、第1のCRC値を取得し、CRC情報比較処理部94に供給する。
【0113】
ステップS33において、CRC情報比較処理部94は、取得したのはテストパターンであるか否かを判断する。
【0114】
ステップS33において、取得したのはテストパターンであると判断された場合、ステップS34において、CRC情報比較処理部94は、テストパターンCRC情報記憶部93から、テストパターンにおけるCRC情報、すなわち、正解値を読み出し、第1のCRC値とテストパターンCRC情報記憶部93に記憶されている正解値の比較、第2aのCRC値とテストパターンCRC情報記憶部93に記憶されている正解値の比較、および、第2aのCRC値とテストパターンCRC情報記憶部93に記憶されている正解値との比較を実行する。
【0115】
ステップS35において、CRC情報比較処理部94は、これらすべてのCRCは一致するか否かを判断する。
【0116】
ステップS35において、いずれかのCRCが一致しないと判断された場合、ステップS36において、CRC情報比較処理部94は、エラー内容を出力処理部96に出力する。
【0117】
ステップS33において、取得したのはテストパターンではないと判断された場合、ステップS37において、CRC情報比較処理部94は、第1のCRC値と第2aのCRC値の比較、第1のCRC値と第2bのCRC値の比較、および、第2aのCRC値と第2bのCRC値の比較を実行する。
【0118】
ステップS38において、CRC情報比較処理部94は、これらすべてのCRCは一致するか否かを判断する。
【0119】
ステップS38において、いずれかのCRCが一致しないと判断された場合、ステップS39において、CRC情報比較処理部94は、エラー内容を出力処理部96に出力する。
【0120】
ステップS35およびステップS38において、すべてのCRCが一致すると判断された場合、ステップS40において、CRC情報比較処理部94は、CRCチェックに問題ないことを出力処理部96に出力する。
【0121】
このような処理により、CRC検定を実行することができ、画像データの固着や伝送経路における画像データの異常を検出することが可能となる。
【0122】
次に、
図15のフローチャートを参照して、情報処理部51-n、および、処理結果判定部52の画像処理結果比較処理について説明する。情報処理部51-nは、同一の処理を実行する。
【0123】
ステップS51において、画像処理バッファ101はA系B系の画像処理結果、縮小画像データ、チェック用クロックカウンタ値、抽出されたクロックカウンタ値、および、フレームカウンタ値の供給を受ける。
【0124】
ステップS52において、フレームカウンタ比較処理部102は、画像処理バッファ101に保持されているA系の画像処理結果等とB系の画像処理結果等において、フレームカウンタ値が一致する情報を抽出して、縮小画像をハミング距離検定処理部103に、画像処理結果を検知処理結果比較判定部104に供給する。
【0125】
ステップS53において、クロックカウンタ比較処理部105は、画像処理バッファ101から、チェック用クロックカウンタ値、および、抽出されたクロックカウンタ値を取得し、A系のチェック用クロックカウンタ値と抽出されたクロックカウンタ値を比較するとともに、B系のチェック用クロックカウンタ値とB系の抽出されたクロックカウンタ値を比較する。クロックカウンタ比較処理部105は、A系B系とも、比較結果が不一致であった場合、クロックカウンタ値の異常を出力処理部96に供給する。A系B系の少なくともいずれかの比較結果が一致であった場合、異常であるとはみなされない。
【0126】
ステップS54において、ハミング距離検定処理部103は、画像処理バッファ101から供給された、A系の縮小画像およびB系の縮小画像に対して、
図10および
図11を用いて説明したようにして、ハミング距離を算出する。
【0127】
ステップS55において、ハミング距離検定処理部103は、ハミング距離の算出結果と所定の閾値とを比較し、ハミング距離<所定の閾値であるか否かを判断する。
【0128】
ステップS55において、ハミング距離<所定の閾値ではないと判断された場合、ステップS56において、ハミング距離検定処理部103は、ハミングエラーを出力処理部96に供給する。
【0129】
ステップS55において、ハミング距離<所定の閾値であると判断された場合、ステップS57において、ハミング距離検定処理部103は、ハミングエラーが発生していないことを出力処理部96に供給する。
【0130】
ステップS58において、検知処理結果比較判定部104は、画像処理バッファ101から供給された、同一フレームのA系の画像処理結果およびB系の画像処理結果が一致するか否かを判定し、判定結果を出力処理部96に供給する。
【0131】
ステップS59において、出力処理部96は、CRC情報比較処理部94から供給された各CRC検定結果、ハミング距離検定処理部103から供給されたハミング検定結果、クロックカウンタ比較処理部105によるクロックカウンタ値の比較結果、および、検知処理結果比較判定部104から供給された画像処理結果の一致不一致の判定結果に基づいて、いずれかで異常が検出された場合は、エラーが検出されたとして、異常の検出内容を、処理結果判定部52に供給し、異常が検出されていない場合は、エラーが検出されていないこと、並びに、画像処理バッファ101から供給されたA系およびB系の画像処理結果を、処理結果判定部52に供給する。
【0132】
このような処理により、縮小化された二値化画像データのハミング距離が算出されるので、比較的処理速度の遅いフェールセーフコンピュータ33であっても、十分に高い頻度で照合を行うことが可能である。
【0133】
図14のフローチャートを用いて説明した、情報処理部51-nのCRC検査処理、および、
図15のフローチャートを用いて説明した、情報処理部51-nの画像処理結果比較処理のいずれにおいても故障が発見されず、かつ、情報処理部51-nのすべてにおいて、画像処理結果が一致すると判断された場合、処理結果判定部52は、画像処理ユニット32の第1の画像処理部41、および、第2の画像処理部42による画像処理結果は正しいと判断し、結果に基づく各種処理を実行するための制御信号を生成し、処理結果出力制御部53に供給する。また、いずれかにおいてエラーが発生した場合、処理結果判定部52は、安全側に各種動作を制御する、具体的には、例えば、該当する踏切に列車を侵入させないための信号動作を指令するための制御信号を生成し、処理結果出力制御部53に供給する。処理結果出力制御部53は、処理結果判定部52から供給された制御信号の、例えば、鉄道の信号を管理する管理制御装置等の所定の他の装置への出力を制御する。
【0134】
このように、画像データに対して所定の処理を実行する第1の画像処理部41、画像データに対して第1の画像処理部41と同一の処理を実行する第2の画像処理部42、並びに、第1の画像処理部41、および、第2の画像処理部42の動作を管理するための処理を2つ以上の系で実行する情報処理部であるフェールセーフコンピュータ33を含んで構成される画像処理システム1のフェールセーフコンピュータ33は、第1の画像処理部41による所定の処理結果、および、第2の画像処理部42による所定の処理結果をそれぞれ縮小する第1の画像データ縮小処理部75-1と、第1の画像データ縮小処理部75-1により縮小された第1の画像処理部41による所定の処理結果、および、第2の画像処理部42による所定の処理結果とのハミング距離を算出し、ハミング距離を所定の閾値と比較し、ハミング距離が所定の閾値を上回っている場合、第1の画像処理部41または第2の画像処理部42の少なくともいずれかに異常が発生していると判断する異常発生判断部としてのハミング距離検定処理部103とを有する。これにより、画像処理結果が縮小化されてハミング距離が算出されたのち、A系とB系とが比較されるので、比較的処理速度の遅いフェールセーフコンピュータ33であっても、十分に高い頻度で照合を行うことが可能である。
【0135】
また、第1の画像データ縮小処理部75-1は、画像データの位置によって、縮小の重み付けを変更するので、ハミング距離検定処理部103によるハミング距離の算出結果の精度を保ちつつ、画像データを効率よく縮小することが可能となる。
【0136】
第1の画像処理部41による所定の処理結果、および、第2の画像処理部42による所定の処理結果にはフレームカウンタ値が含まれ、フェールセーフコンピュータ33は、 第1の画像処理部41による所定の処理結果、および、第2の画像処理部42による所定の処理結果を複数フレーム保持する画像処理バッファ101をさらに備え、第1の画像データ縮小処理部75-1は、画像処理バッファ101に保持されている第1の画像処理部41による所定の処理結果、および、第2の画像処理部42による所定の処理結果に付与されたフレームカウンタ値を参照し、同一フレームの画像データに対応する第1の画像処理部41による所定の処理結果、および、第2の画像処理部42による所定の処理結果をそれぞれ縮小するので、画像処理ユニット32とフェールセーフコンピュータ33とは、同じ周期で動作するが非同期で動作し、第1の画像処理部41および第2の画像処理部42は非同期で動作するが、比較対象となる組み合わせを正しく選択することが可能となる。
【0137】
上述した技術は、ハードウェアとしては、例えば、パーソナルコンピュータに適用することができる。
【0138】
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【0139】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【0140】
また、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【0141】
1…画像処理システム、 11…撮像処理ユニット、 12…判断処理ユニット、 21…制御部、 22…撮像部、 23…データ処理部、 24…送信側インタフェース処理部、 31…受信側インタフェース処理部、 32…画像処理ユニット、 33…フェールセーフコンピュータ、 41…第1の画像処理部、 42…第2の画像処理部、 51-n…情報処理部、 52…処理結果判定部、 53…処理結果出力制御部、 61…撮像データ取得部、 62…テストパターン生成部、 63…補正等処理部、 64…CRC生成部、 65…フレームカウンタ、 66…クロックカウンタ、 67…画像データフレーム生成部、 71-1~2…第1~2の画像データ取得部、 72-1~2…第1~2のCRC算出処理部、 73-1~2…第1~2の物体検知処理部、 74-1~2…第1~2のクロックチェック用カウンタ、 75-1~2…第1~2の画像データ縮小処理部、 76-1~2…第1~2の情報送出処理部、 91…情報取得部、 92…CRC情報取得部、 93…テストパターンCRC情報記憶部、 94…CRC情報比較処理部、95…画像処理結果比較部、 96…出力処理部、 101…画像処理バッファ、 102…フレームカウンタ比較処理部、 103…ハミング距離検定処理部 104…検知処理結果比較判定部、 105…クロックカウンタ比較処理部