特許第6025095号(P6025095)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 公立大学法人首都大学東京の特許一覧

<>
  • 特許6025095-並列処理システム及び車両走行システム 図000002
  • 特許6025095-並列処理システム及び車両走行システム 図000003
  • 特許6025095-並列処理システム及び車両走行システム 図000004
  • 特許6025095-並列処理システム及び車両走行システム 図000005
  • 特許6025095-並列処理システム及び車両走行システム 図000006
  • 特許6025095-並列処理システム及び車両走行システム 図000007
  • 特許6025095-並列処理システム及び車両走行システム 図000008
  • 特許6025095-並列処理システム及び車両走行システム 図000009
  • 特許6025095-並列処理システム及び車両走行システム 図000010
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6025095
(24)【登録日】2016年10月21日
(45)【発行日】2016年11月16日
(54)【発明の名称】並列処理システム及び車両走行システム
(51)【国際特許分類】
   G06T 1/20 20060101AFI20161107BHJP
   G06T 1/00 20060101ALI20161107BHJP
【FI】
   G06T1/20 B
   G06T1/00 330A
【請求項の数】6
【全頁数】16
(21)【出願番号】特願2012-168150(P2012-168150)
(22)【出願日】2012年7月30日
(65)【公開番号】特開2013-58191(P2013-58191A)
(43)【公開日】2013年3月28日
【審査請求日】2015年7月16日
(31)【優先権主張番号】特願2011-178525(P2011-178525)
(32)【優先日】2011年8月17日
(33)【優先権主張国】JP
(73)【特許権者】
【識別番号】305027401
【氏名又は名称】公立大学法人首都大学東京
(74)【代理人】
【識別番号】100140109
【弁理士】
【氏名又は名称】小野 新次郎
(74)【代理人】
【識別番号】100075270
【弁理士】
【氏名又は名称】小林 泰
(74)【代理人】
【識別番号】100096013
【弁理士】
【氏名又は名称】富田 博行
(74)【代理人】
【識別番号】100092967
【弁理士】
【氏名又は名称】星野 修
(74)【代理人】
【識別番号】100112634
【弁理士】
【氏名又は名称】松山 美奈子
(72)【発明者】
【氏名】福永 力
【審査官】 村松 貴士
(56)【参考文献】
【文献】 特開2000−353237(JP,A)
【文献】 特開2004−145838(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 1/00 − 5/50
(57)【特許請求の範囲】
【請求項1】
動画データをフレームごとにデジタルデータとして抽出したデータを処理して、所望の加工データを得る並列処理システムであって、
動画を撮影する1個又は複数個の撮影部と、
当該撮影部が取得した画像情報をフレームごとにデジタルデータに変換するデータ変換部と、
当該フレームごとのデジタルデータをn個のデータ集合体に区分する信号変換部と、
当該信号変換部からのn個のデータ集合体を処理するデータ処理部と、
当該信号変換部及び当該データ処理部が連結されているルータと、を具備し、
当該データ処理部は、
区分されたn個のデータ集合体が割り当てられ、割り当てられたデータ集合体を同時並行処理して、所定の処理データを出力するn個のプロセッサと、
当該ルータを介して、n個のプロセッサのそれぞれから出力されるn個の当該処理データを受け入れ、n個の当該処理データを統合して全体処理を行って所望の加工データを出力する1個のマスタプロセッサと、からなり、
当該信号変換部は、画像の分割と、分割されたデータの各プロセッサへの分配を行う機能を有し、
当該n個のプロセッサ及び当該マスタプロセッサは、
前記撮影部が1個の場合に、各プロセッサは各分割領域内での直線認識を行って処理データを出力し、マスタプロセッサは処理データを受け入れ、n個の直線をクラスタ認識により統合して加工データを出力する機能を有するか、又は
前記撮影部が1個又は複数個である場合に、各プロセッサは各分割領域について前フレームにかかる分割領域画像からの射影変換行列を導出し、分割領域での参考画像の射影変換を行い、基準画像の射影変換データと比べて差分を求めて処理データを出力し、マスタプロセッサは処理データを受け入れ、n個の射影変換結果を合成して、フレームにおける平面でない部分を障害物として認識して加工データを出力する機能を有する、
並列処理システム。
【請求項2】
前記撮影部が1個であり
前記各プロセッサは、有限の時間差で撮られた2つの異なる2画像を利用して、2画像の一方を基準画像とし、他方を参考画像として、基準画像の射影変換データと比べて差分を求めて処理データを出力し、
前記マスタプロセッサは、処理データを受け入れ、n個の射影変換結果を合成して、フレームにおける平面でない部分を障害物として認識して加工データを出力する機能を有する、請求項1に記載の並列処理システム。
【請求項3】
前記マスタプロセッサは、前記信号変換部のプロセッサを兼務する、請求項1又は2に記載の並行処理システム。
【請求項4】
さらに、前記データ処理部がデータを一時的に保存する一時保存部、および1又は複数のプロセッサに連結されている外部メモリを具備する、請求項1〜のいずれかに記載の並列処理システム。
【請求項5】
前記プロセッサが、プロセッサ本体と、プロセッサメモリと、前記一時保存部に保存された一時保存用のデータを該プロセッサ本体及び該プロセッサメモリ又は前記外部メモリに移送するデータ移送部とを有する請求項記載の並列処理システム。
【請求項6】
動画を撮影する撮影部と、
当該動画をフレームごとにデジタルデータに変換する画像変換部と、
請求項1〜5のいずれか1に記載の並行処理システムと、
当該並行処理システムからの所望の加工データに基づいて、駆動系又は制動系を制御するナビゲーション制御部と、を具備し、
前記マスタプロセッサは、
前記撮影部が1個である場合に、前記n個の直線をクラスタ認識により統合して、車両から直線までの距離、車両の進行方向を加味して車両が直線に近接するか否かの算出、車両の進行速度を加味して直線に接触するまでの時間の計算、及びアラーム信号生成の決定を含む加工データを出力するか、又は
前記撮影部が1個又は複数個である場合に、フレームにおける平面でない部分を障害物として認識して、車両から障害物までの距離及び車両の進行方向を加味して、車両が障害物に近接するか否かを算出し、車両の進行速度を加味して障害物に接触するまでの時間を計算し、及びアラーム信号生成の決定を含む加工データを出力する、
車両走行システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、動画の解析を行うのに適した並列処理システム及びこの並列処理システムを用いた安全に車両を走行させるための車両走行システムに関するものである。
【背景技術】
【0002】
車両を安全に走行させる等のための車両走行システムは種々提案されており、中でも動画情報を基に制御することはリアルタイムに車両の走行を制御でき好適であると考えられるため、種々提案されている(たとえば特許文献1又は2)。
【0003】
このようなシステムが提案される背景としては、高齢化社会が進行するに伴い、自らの能力だけでは十分に車両を安全に走行させることができない運転者が増加しつつあることが挙げられる。また、車両には、通常の自動車の他電動車いす等もあり、車いすなどの車両は特に運転者の能力にかかわらずに安全に走行できるようにすることが、運転者が介護者を必要とせずに自立する観点からも求められている。
【0004】
このような動画を基にした走行システムを実現するために、動画から必要な情報を抽出するための並列処理も種々提案されており、特に複数のプロセッサを用いてへ入れて並列処理を行うシステムがたとえば特許文献3等において提案されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2008−013081号公報
【特許文献2】特開2008−033617号公報
【特許文献3】特開2004−289636号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、上述の並列処理システムでは、いまだに動画を連続的に処理して車両の走行に際して必要な情報を抽出できるほどの高速性がなく、また、上述の車両走行システムでは走行時における危険性を検知して安全に走行させる観点で十分ではなかった。
【0007】
要するに、より高速な並列処理システムや、リアルタイムに走行時における危険性を検知して運転者に注意喚起する他、駆動系統を制御できる車両走行システムの開発が要望されているのが現状である。
【0008】
したがって本発明の目的は、より高速に動画を処理して必要な情報を抽出することができる並列処理システム、及び当該並列処理システムを用いてリアルタイムな動画情報を基にして車両の走行を安全に行うことができる車両走行システムを提供することにある。
【課題を解決するための手段】
【0009】
本発明者らは上記課題を解消すべく鋭意検討した結果、データ処理を行う際にデータ処理を行うプロセッサ群とは別に統合処理を行うマスタプロセッサを用意することで上記目的を達成しうることを知見し、本発明を完成するに至った。
【0010】
本発明は、以下の並列処理システムを提供する。
[1]大量のデータを処理して、所望の加工データを得る並列処理システムであって、
大量のデータをn個のデータ集合体に区分する信号変換部と、
当該信号変換部からのn個のデータ集合体を処理するデータ処理部と、
当該信号変換部及び当該データ処理部が連結されているルータと、を具備し、
当該データ処理部は、
区分されたn個のデータ集合体が割り当てられ、割り当てられたデータ集合体を同時並行処理して、所定の処理データを出力するn個のプロセッサと、
当該ルータを介して、n個のプロセッサのそれぞれから出力されるn個の当該処理データを受け入れ、n個の当該処理データを統合して全体処理を行って所望の加工データを出力する1個のマスタプロセッサと、からなる
並列処理システム。
【0011】
ここで、「大量のデータ」とは動画データの各コマの画像データを意味し、例えば640×480、256色、30fpsの動画データをフレームごとにデジタルデータとして抽出したデータ(約30万バイト)が挙げられる。好ましくは35000バイト以上のデータである。
【0012】
「所定の処理データ」とは、各コマの画像データから抽出される線や面の位置情報等のデータを意味する。
「所望の加工データ」とは、各コマの線や面の位置情報を元の画像データに統合して、例えば車両走行上の問題となる段差、ギャップあるいは障害物の存在などの走行危険性(危険因子)を示すデータ等を意味する。
[2]画像を撮影する撮影部と、前記撮像部が取得した画像情報を前記の大量のデータに変換するデータ変換部と、をさらに具備する、[1]記載の並列処理システム。
[3]前記画像は動画である、[2]記載の並列処理システム。
[4]前記マスタプロセッサは、前記信号変換部のプロセッサを兼務する、[1]〜[3]の何れかに記載の並行処理システム。
[5]さらに、前記データ処理部がデータを一時的に保存する一時保存部、および1又は複数のプロセッサに連結されている外部メモリを具備する、[1]〜[4]のいずれかに記載の並列処理システム。
[6]前記プロセッサが、プロセッサ本体と、プロセッサメモリと、前記一時保存部に保存された一時保存用のデータを該プロセッサ本体及び該プロセッサメモリ又は前記外部メモリに移送するデータ移送部とを有する[5]記載の並列処理システム。
[7]動画を撮影する撮影部と、当該動画を大量のデータに変換する画像変換部と、[1]記載の並行処理システムと、当該並行処理システムからの所望の加工データに基づいて、駆動系又は制動系を制御するナビゲーション制御部と、を具備する車両走行システム。
【発明の効果】
【0013】
本発明の並列処理システムは、従来の並列処理よりもシンプルな回路構成をとり低発熱・低消費電力で、高速に動画を処理して必要な情報を抽出することができるものである。
また、本発明の車両走行システムは、動画情報を基にしてリアルタイムに車両の走行に必要な情報を抽出して、車両走行における危険性を認知することで車両の走行上必要な措置を取ることができるものであり、常に運行に神経を集中させておくことが不可能な運転者や十分な運転スキルのない運転者であっても車両を安全に運転できるようにすることができるものである。
【図面の簡単な説明】
【0014】
図1図1は、本発明の並列処理システムの1実施形態の概要を示す概略図である。
図2図2は、図1に示す並列処理システムで並列処理を行う際の処理する際の流れを示すフローシートである。
図3図3は、データ処理部における各プロセッサの処理の概要を示す概略図である。
図4図4は、画像処理の具体例を示す概略図である。
図5図5は、本発明の並列処理システムの他の実施形態を示す概略図である。
図6図6は、図1に示す実施形態の並列処理システムが車両走行システムとして組み込まれた電動車いすを示す斜視図である。
図7図7は、本発明の並列処理システムの他の実施形態の概要を示す概略図である。
図8図8は、図7に示す実施形態に用いられるプロセッサの構成を主として示す概略図である。
図9図9は、データ処理部のプロセッサのネットワーク構成の1実施形態の概要を示す概略図である
【符号の説明】
【0015】
1:並列処理システム、10:カメラ、20:画像変換部、30:信号変換部、40:ルータ、50:データ処理部、51:n個のプロセッサ、52:マスタプロセッサ、101:ナビゲーション制御部
【発明を実施するための形態】
【0016】
以下、図面を参照して本発明の実施形態を説明するが、本発明はこれら実施形態に何ら制限されるものではない。
図1に示す本実施形態の並列処理システム1は、大量のデータを処理して、所望の加工データを得る並列処理システムであって、大量のデータをn個のデータ集合体に区分する信号変換部30と、信号変換部30からのn個のデータ集合体を処理するデータ処理部50と、信号変換部30及びデータ処理部50が連結されているルータ40と、を具備し、データ処理部50は、区分されたn個のデータ集合体が割り当てられ、割り当てられたデータ集合体を同時並行処理して、所定の処理データを出力するn個のプロセッサ51と、ルータ40を介して、n個のプロセッサのそれぞれから出力されるn個の処理データを受け入れ、n個の当該処理データを統合して全体処理を行って所望の加工データを出力する1個のマスタプロセッサ52と、からなる。
【0017】
以下、さらに詳細に説明する。
本実施形態の並列処理システム1は、動画を処理するためのシステムであり、画像を撮影する撮影部としてのカメラ10と、前記撮像部が取得した画像情報を前記の大量のデータに変換するデータ変換部20とを具備している。カメラ10としては通常公知のビデオカメラを特に制限なく使用することができる。
【0018】
特に図示しないが、画像変換部20は、カメラ10からの画像データを一時保存するメモリと、当該メモリから順次移送される画像データをフレームごとのデジタルデータに変換又は分割して信号変換部に移送するプロセッサと、からなる。プロセッサにて処理を実行させるためのプログラムは、プロセッサ自体に実装させてもよいし、メモリに記憶させておいてもよい。
【0019】
信号変換部30は、画像変換部20からのフレームごとの画像デジタルデータを所望の区分数に分割してn個のデータ集合体にすると共に、各データ集合体をそれぞれ信号に変換する装置部分であり、特に図示しないがプログラム内蔵プロセッサからなる。またデータを保持するためのメモリを設置することもできる。変換される信号としては、パケット信号等が挙げられる。
【0020】
ルータ40は、信号変換部30からのデータをデータ処理部50に移送すると共に、データ処理部を構成する各プロセッサ51及び52間でデータの流通を行うためのものであり、通常公知のルータシステムを特に制限なく使用することができる。
【0021】
データ処理部50は、分割されたデータ集合体の個数に対応するn個のプロセッサ51とマスタプロセッサ52とからなり、プロセッサ51で各データ集合体のデータについて後述する処理を行う。マスタプロセッサ52は、その結果得られた各処理データを受け入れてフレームに再構築して画面全体での情報として解析し、必要な情報を抽出する。プロセッサ51とマスタプロセッサ52とは、それぞれプログラムを実装したものとなっている。また、上記プロセッサとしては、通常公知のLSI等を特に制限なく用いることができる。
【0022】
次に本実施形態の並列処理システムの使用方法及び処理手順について図2〜4を参照して説明する。
本実施形態の並列処理システムは、図2に示すように動画の処理を行う。
【0023】
すなわち、撮影した動画をフレームごとのデータにする工程(工程1)、フレームごとの画像データをさらに複数の領域に区分して複数のデータとする工程(工程2)、各領域のデータを処理して必要な情報を抽出する工程(工程3)及び各領域で抽出したデータを再度まとめてフレームごとのデータに纏めると共にフレームごとのデータを動画のデータに取り纏めて、その中から必要な情報を抽出し、行動の判断基準として図1に示すナビゲーション制御部等の次工程を行う装置に提供する工程(工程4)を含む。
【0024】
ここで、工程1は画像変換部20が、工程2は信号変換部30が、工程3はn個のプロセッサ51が、工程4はマスタプロセッサ52が行う。
ここで、本実施形態においては、信号変換部30とマスタプロセッサ52とを別のプロセッサにより構成しているため、パイプライン構造により高速の処理を行うことが可能となっている。
【0025】
パイプライン構造について図3を参照して説明する。
すなわち、工程2(Image Decomposition & Distribution:画像分解及び分配)、工程3(Parallel Image Processing:並列画像処理)及び工程4(Data Collection & Alarm Signal Generation:データ収集及びアラーム信号生成)の3つの工程に対しての所要処理時間がすべて同じ時間Tであると仮定すると、1コマ(frame)を処理するのに3T時間かかることになる。
【0026】
従来の方法では、図3(a)に示すように、工程2〜4を順次行う1コマの処理が完全に終了した後、次の工程2〜4を行う1コマの処理に入るため、図3(b)に示すように、例えば4コマの処理には4(frames)×3Tで12T時間かかることになる。
【0027】
しかし、図3(c)に示すように、信号変換部が最初の1コマ(第1コマ)の工程2を終了した時点で、プロセッサが第1コマの工程3を開始すると同時に信号変換部が次の1コマ(第2コマ)の工程2を開始する。プロセッサが第1コマの工程3を終了した時点で、マスタプロセッサが第1コマの工程4を開始すると同時に、プロセッサが第2コマの工程3を開始し、並行して信号変換部がさらに次の1コマ(第3コマ)の工程2を開始する。このように工程2が終了した時点で次の工程3への処理につながるようにプロセッサを分割しておくと、いわゆるパイプライン処理が可能となる。すなわち、本実施形態においては、工程3と工程4とを別々のプロセッサが担当することになるため、図3(b)のような処理を行う必要がなく、図3(c)のように、画像の分割(工程2)→分割された画像の処理(工程3)→分割された画像データの結合及び動画化並びに必要な情報の抽出(工程4)を順次並行して行うことができ、同じ4コマの処理に要する時間は6T時間となる。よって本発明の方法では、処理時間の短縮、迅速なデータ処理が可能である。
【0028】
本実施形態の並列処理システムは、車両を安全に走行させるためのシステムであり、車に搭載されたカメラから撮影された動画データに基づいて段差やギャップなどの危険を認識し、駆動システムに制御信号を送るものである。
【0029】
以下、具体的にいかなる処理を行うのか、特に工程3及び4に焦点を当てて説明するが、処理する画像が単独のカメラで得た単純なパターン抽出によるものである場合と、単独または複数(2つ)のカメラからの複数の画像を用いる場合とで処理方式が異なるため、分けて説明する。
【0030】
<単独カメラによる場合(単純なパターン抽出)>
単独カメラによる画像解析では道路端や白線マーカーなど直線的な構造パターンの認識はできるが、より進んだ危険物・障害物の認識にまでは単独画像を用いる限り発展できない。また画面分割による並列処理手法では、道路端や路面白線がいくつかの画面に分割されてしまい、各分割画面では強い直線のサインとならずに、段差等を正常に認識しないという危惧もある。そこで、直線認識には画像データから直線パラメータを抽出し、そのパラメータが形成するすクラスタ認識を利用し、クラスタが強ければ(空間で集中度が高ければ)1つの長い直線であると認識するように処理を行う。
【0031】
具体的には、図4を用いて説明する。図4に示すように、例えば一つの画像を−1−,−2−,−3−,−4−の4つに分解した場合、工程3では4つに分割された各領域をそれぞれ一つのプロセッサで処理することになる。その際、図中直線(a)は分割領域−1−、−2−、−4−で1つのクラスタを作る。そのため、各クラスタはそれぞれの分割領域を処理するプロセッサにより、それぞれクラスタ(直線のHough 変換により形成される)として認識される。ここでHough変換は通常公知の手法を特に制限なく用いて実施される。
【0032】
例えば、画像データ内で、あるパターンに配置された位置(画像データ内における任意の線画)情報(x0、y0)、(x1、y1)、(x2、y2)、・・・・(xn、yn)がある直線上にラフに並んでいれば、このラフに並んだ直線状のクラスタを含めてy=ax+bで表すことができる。クラスタが強ければ、測定した(x、y)の集合が顕在化し、このクラスタに所属する点の数や分布から直線の長さを知ることができる。
【0033】
そして、各領域のデータをマスタプロセッサにて統合すると、画像上に一つの直線として出現する。この直線は、そのまま直進すれば接触すると予想される危険因子を示す。
同じく直線(b)も領域−1−と−3−とで1つのクラスタが作られ、同様の処理によりマスタプロセッサにて画像上の直線として認識される危険因子を示す。
【0034】
ついで、直線として認識される危険因子が、カメラの位置情報(カメラの地上高とカメラ仰角とからカメラと直線との位置関係を計算により算出)に基づいて現実的にどの程度離れているか(何メートル離れているか)の評価を行うと共に、以前のフレーム群からの継続情報に基づき(連続するコマ間で標的となる直線が存在しているか、連続して存在するか、断続的に出現するか)、車両がこの直線として認識される危険因子に向かって進んでいるかどうかを認識する。そしてさらに、車両がいかなる速度で進んでいるかを合わせて計算し(コマ間のずれとコマ間の時間差から移動速度を把握)、所定時間以内(たとえば5秒以内)に車両が直線として認識される危険因子に接触すると判断した場合にはアラームを鳴らすように設定する。
【0035】
例えば、連続するコマに進行方向に沿って出現する直線は、道路端と見なす。進行方向に対して直交する直線は、段差又は障害物、あるいは横断歩道などの道路面の模様と見なし、パターン検出及び明暗により判別する。判別できない直線は段差又は障害物などの危険因子と見なす。ここまでの処理をマスタプロセッサに行わせることができる。
【0036】
以上をまとめると以下のようになる。
工程2:信号変換部30が、画像の分割と、分割されたデータの各プロセッサへの分配を行う
工程3:各プロセッサが、各分割領域内での直線認識(Hough 変換によるクラスタ解析)を行う
工程4:マスタプロセッサが、クラスタ認識による直線の統合、車両から直線までの距離、車両の進行方向を加味して車両が直線に近接するか否かの算出、車両の進行速度を加味して直線に接触するまでの時間の計算、及びアラーム信号生成(駆動制御)の決定を行う
この使用方法は、計算量が少ないにもかかわらず、危険判断としての道路境界を的確に認識できる点で有利である。
<複数画像を用いた処理(障害物検出)>
2つのカメラを用いるステレオカメラでの障害物(突起物や窪み等の車両走行において障害となりうるもの全てを意味する)検出は簡単な幾何学応用で可能であり、それを発展させたステレオカメラ画像解析によるパターン認識も種々提案されている。本発明においてもそのような2つのカメラを用いた方法を用いることができる。なお、2つのカメラを用いずに単独のカメラの画像であっても、時差を利用して複数の画像を利用することとすれば、2つのカメラを用いた場合と同様に複数の画像を用いた処理を行うことができる。
【0037】
例えば、以下の例をもって説明する。なお単独のカメラ利用の場合、有限の時間差で撮られた2つの異なる2画像を利用すれば以下の例で述べられたものと同じ原理をもって障害物検出が可能になる。射影変換はカメラの台数に関わらず同じ記述が適用できる。
【0038】
2画像の一方を基準画像(base)とし、他方を参考画像(reference)とする。ここで、実空間におけるある特定の位置の2次元座標を基準画像でp、参考画像でpとする。どちらも各画像でのx、y座標と1を加えた3次元ベクトル(x,y,1)として表される。そうすると射影変換でp=Hpと関係付けられる。ここにHは3×3行列である。
【0039】
一方の画面、例えば参考画像を行列Hを用いて射影変換させ、これと基準画像を較べて、差分を導出する。ここまでは上記工程3にかかる部分であり、プロセッサ51が各分割領域の画像データについて行う。
【0040】
次いで、画像が平面であれば、それらは一致することが知られているので、この理論を応用して、この一致度(完全に一致していなくても誤差範囲内であれば平面と認識)に基づいて平面と平面でない部分とを分類し、平面でない部分、すなわち壁や段差、突起物等を、進行方向を遮る障害物として認識する(平面認識)。平面認識は、基準画面を射影変換して作られる参照画面と、オリジナルの参照画面データの絶対値の比較を統計的に行い、平均値を0として、平均値からの差分が閾値以内の部分を基準面と同じ平面とみなし、平均値からの差分が閾値を超えている部分を非平面、すなわち段差や障害物が存在する領域とみなす。また、平均値からの差分が閾値を超えているが、同程度の差分が集中して分布している領域は、基準面とは異なる平面と見なす。閾値の設定は対象ごとに最適化される。これは上記工程4にかかる部分であり、プロセッサ52が行う。
【0041】
具体的には以下のように工程2〜4を行う。
工程2:信号変換部30が、画像の分割と、分割されたデータの各プロセッサへの分配を行う
工程3:各プロセッサが、各分割領域について前フレームにかかる分割領域画像からの射影変換行列Hを導出(更新)し、分割領域での参考画像の射影変換を行い、基準画像の射影変換データと比べて差分を求める
工程4:マスタプロセッサが、工程3での射影変換結果(差分を含む)を合成してフレームにおける平面でない部分を障害物として認識し、車両から障害物までの距離及び車両の進行方向を加味して、車両が障害物に近接するか否かを算出し、車両の進行速度を加味して障害物に接触するまでの時間を計算し、最終にアラーム信号生成(駆動制御)の決定を行う
この使用方法では、原理的に3次元空間で走行可能な平面を推定するため、天候変化、例えば晴天、曇天の違いによる画像の明るさの違いや影の影響を排除でき、確実で安定した空間認識が可能となる。
【0042】
以上のように、本発明の並列処理システムを用いて動画の並列処理を行うことにより、動画の各フレームに分解した場合における各画像データをさらに分解して複数の領域にして、各領域について詳細に分析することができるため、画像中の段差や非平面形状に関する情報を効率的に抽出することができる。しかも、マスタプロセッサが各分割領域におけるデータを統合してフレームごとの画像におけるデータとして把握すると共に、各フレームのデータを経時的に並べたうえで、段差や非平面形状などの危険因子に関する上記情報を動画として把握して、車両の進行状況と照らして危険性を把握し、アラームの要否も判断する。
【0043】
このため大量の動画データであっても迅速に処理でき、リアルタイムに車両走行上の危険性を把握し、運転者に通知する等の処理を行うことができる。
次に図5を参照して、本発明の並列処理システムの他の実施形態について説明する。なお、以下の説明においては上述の図1に示すシステムと異なる点を中心に説明する。図面の符号は上述の実施形態と同じ符号を用い、特に説明しない点については上述の実施形態における説明が適宜適用される。
【0044】
本実施形態の並列処理システムは、マスタプロセッサ52が、信号変換部のプロセッサ30を兼務する点で図1に示す実施形態とは異なる。
すなわち、マスタプロセッサ52は、画像変換部20に連結されており、フレームごとの画像データをさらに複数の領域に区分して複数のデータに分割できるようになされている。そして、区分された複数のデータは、ルータ40を介して各プロセッサ51に移送されて処理された後、最終にマスタプロセッサ52に送られて、各領域で抽出したデータを再度まとめてフレームごとのデータに纏めると共に、フレームごとのデータを動画のデータに取り纏めてその中から必要な情報を抽出し、行動の判断基準として図1に示すナビゲーション制御部等の次工程を行う装置に提供する工程(工程4)を行うようになされている。
【0045】
本実施形態においては、工程2はマスタプロセッサ52が、工程3はn個のプロセッサ51が、工程4はマスタプロセッサ52が行うことになる。
このように構成した場合にはシステムの簡素化が可能であり、装置の小型化の観点から有利である。
【0046】
次に、図6を参照して本発明の車両走行システムについて説明する。
図6に示す車両走行システムは、車いす100に搭載されたシステムであり、車いす100は、動画を撮影する撮影部としてのカメラ10と、動画を大量のデータに変換する画像変換部20と、上述の本発明の並行処理システム1と、並行処理システム1からの所望の加工データに基づいて、駆動系又は制動系を制御するナビゲーション制御部101と、を具備する。
【0047】
本実施形態の車いす100は電動車いすである。まず、従来の車いすと同様に構成されている点を説明する。
車いす100は、背もたれ部分を有する椅子本体110と、椅子本体110の左右両側に設けられた一対の大径の駆動用車輪120と、椅子本体110の前方に位置しシャフトを介して設けられ、椅子の安定性や走行方向の決定を担う小径車輪130と、駆動用車輪に連結されたモーターからなる駆動用装置140と、駆動用装置140に電力を供給するバッテリー150と、走行制御を行うためのコントローラ160とを具備している。
【0048】
そして、本実施形態の車いす100は、走行を安全に行うためのシステムとして上述の本発明の並行処理システム1を組み込んだ車両走行システムを具備する。
すなわち、椅子本体の前方左右両側にカメラ10が設置されており、椅子本体の下側に2つのボックスが設置されている。一方はカメラからの動画情報を一旦記憶しておくためのメモリと情報を処理するプロセッサ(いずれも図示せず)が格納された画像変換部20であり、他方は上述の信号変換部、データ処理部及びルータが格納された並列処理システム1である。そしてカメラ10と画像変換部20を含む並列処理システムとは有線又は無線にて信号の送受信が可能となるように連結されている。
【0049】
またコントローラ160の下にはナビゲーション制御部101が設けられており、並列処理システムとナビゲーション制御部とは有線又は無線にて信号の送受信が可能となるように連結されている。
【0050】
ナビゲーション制御部101は、公知のアラーム発信機を設けてあり、並列処理システムから「危険、アラームを発信すべき」という信号を受け取った段階で、アラームを発信できるようになされている。その他、プロセッサを設置しておき、危険を認識する信号を受け取った場合に駆動用車輪120にブレーキをかけるように指示する、駆動装置に減速を指示する等、種々駆動系統に指示をだせるようにしておくこともできる。
【0051】
これら10、20あるいは101の車椅子内での設置箇所は図6にあるものが最終的なものではない。車椅子の構造は製造元により大きく異なり、また利用者の運行形態もさまざまである。設置場所にとらわれないカメラ固定法・治具、また101のパッケージングを考慮しなければならない。
【0052】
このように構成された本実施形態の車両走行システムを具備する車いすは、車両走行システムがリアルタイムに危険性を認識して運転者に警告したり、自動的に減速したりする等、走行制御の補助を行うため、運転者の運転技術や注意力を補って、より安全な車両走行を実現することができる。
【0053】
次に、本発明の並列処理システムの別の実施形態について図7及び8を参照して説明する。
なお、以下の説明においては、上述した実施形態と異なる点を中心に説明する。上述の実施形態と同じに構成されている部分には同じ番号を付し、特に説明しない点については上述の実施形態における説明が適宜適用される。
【0054】
図7に示す形態の並列処理システム201は、信号変換部30とルータ40との間に、信号変換部30で画像データから変換された信号を一時的に蓄積して、適宜データ処理部250に移送することで、データ処理部250がデータを一時的に保存しておくために使用できる一時保存部260を具備する。また、データ処理部250内の1個以上のプロセッサ251は、外部メモリ270に直結されている。そのため、プロセッサ251は外部メモリへのアクセスインターフェース251−3(図8)を具備する。データ処理部250のなかでマスタプロセッサであるプロセッサ251の数は、図7に示すようにカメラの数に等しくすることができる。プロセッサ252の数は、データ処理効率を考慮して適宜決定され、特に制限されない。
【0055】
一時保存部260は、データ処理部250及び信号変換部30から送信されるデータを一時的に保持するための装置である。一時保存部260は、データ処理部250における各プロセッサ251、252のメモリの一部として扱うことができ、DMA(Direct Memory Access)と呼ばれるメモリ−メモリ間直接データ転送を用いてアクセスすることができる。
【0056】
外部メモリ270は、データ処理部250のデータを一時的に保持するための装置である。外部メモリ270は、プロセッサ251、252(251はマスタプロセッサ)のメモリの一部として扱うことができ、DMA(Direct Memory Access)と呼ばれるメモリ−メモリ間直接データ転送を用いてアクセスすることができる。
【0057】
外部メモリ270としては、一般のコンピュータなどに使用される半導体のメモリを用いることができる。外部メモリは、後述するプロセッサメモリにくらべ、非常に高容量であることから、これまで動画像データ等を扱うには不十分な容量だったメモリ空間を大幅に拡張して十分な処理を実現することができる。なお、この外部メモリ270は、複数のプロセッサによりアクセスされる可能性があることから、バスアービタ(バス利用調停システム、図示せず)を内蔵しているのが好ましい。
【0058】
また、図7に示す形態において使用されるプロセッサは、図8に示すように構成することができる。なお、かかる構成のプロセッサは、上述の図1に示す形態の並列処理システムにも好適に適用できる。またプロセッサ251を例示して説明するが、プロセッサ252でも同様である。ただし、プロセッサ252ではカメラよりのデータ入力の必要がないので、必要に応じて後述するインターフェース251−4を具備していない構成とすることができる。
【0059】
図8に示す形態では、プロセッサ251(252)が、プロセッサ本体251−1と、プロセッサ内部メモリ251−2と、外部メモリ270へのアクセスインターフェース251−3とを有する。
【0060】
さらに詳述すると、プロセッサ251は、処理全般を実行するプロセッサ本体251−1、プロセッサに画像データを直接アクセスさせるためのインターフェース251−4、内部記憶装置であるプロセッサ内部メモリ251−2、プロセッサから直接外部メモリ270にアクセスしデータを移送する外部メモリへのアクセスインターフェース251−3からなる。
【0061】
各プロセッサは、このようにプロセッサ本体251−1とプロセッサメモリ251−2とを個別に有しているため、それぞれ単体で動作させることが可能である。またさらに、各プロセッサは、それぞれに4本の外部リンクインターフェースを内蔵している(図示せず)ため、複数のプロセッサを連結することも可能である。これにより、ネットワークを構成し、使用用途に応じて構成とすることが可能である。
【0062】
ネットワークの一例として図9にメッシュ構造を示す。この構造では、ルーター51aに4つのプロセッサグループ51gが連結されている。そして各プロセッサグループ51gは、それぞれ4つのプロセッサ51bからなり、各プロセッサ51bはそれぞれ連結されて相互にデータの送受信が可能になっている。ネットワーク構造としては、他にパイプライン構造やツリー構造を採用することも可能である。このような構造を採用しても、データの送受信以外の情報については共有しないようにすることで、各プロセッサの独立性を保ちつつ高速な並列処理を行うことができる。
【0063】
このように一時保存部260を設け、プロセッサ251のメモリの一部として用いることができるようにし、既存の命令「move」(メモリ間のコピー)を用いて、プロセッサ251が外部メモリ270に画像データを送ることができるようにし、さらにそこにプロセッサ252がアクセスできるように構成したことにより、プロセッサがカメラから送られてくる動画像を効率的に取得し処理できる。従来の構成では、外部メモリなしにカメラの動画像が非圧縮のデータで送られてくるので、ルータを入れたとしてもネットワークを介して各プロセッサに配分するにはデータ量が大容量すぎて、効率が悪すぎたが、一時保存部260と外部メモリ270とをこのようにプロセッサが「move」命令でDMA転送させることができるように構成したことにより、従来の構成での問題点を解消することができる。
【0064】
なお、この例では一時保存部260を有するのはプロセッサ251だけであるもので説明したが、これに制限されず、すべてのプロセッサを、一時保存部260およびそのアクセスインターフェース251−4を有するもので構成することもできる。
【0065】
ついで、このように構成された並列処理システムでの処理方法について説明する。ここでも上述の実施形態と異なる部分を中心に説明する。特に詳述しない点については上述の実施形態における説明が適宜適用される。
【0066】
まず、カメラ10からの信号(clock、同期信号、データ)を所定のプロトコルで画像変換部20、信号変換部30を介してプロセッサに送る。プロトコルとしてはCIS社の商品名「VCC-G21V31CL」等の市販品を用いることができる。そして、信号変換部30で各種同期信号(垂直同期信号、水平同期信号、データ同期信号)から有効データを判断することができるようになっている。
【0067】
次に信号変換部30が、画像変換部20から送られてくる信号を解析し、一時保存部260にバッファリングする。この際、初期状態の時にFVAL信号を受けて遷移状態となり、当該遷移状態で画像データを取得して動作する。そして取得する同期信号により現在転送されてきているデータが有効であると判断されたら、アドレスを1加算し、順に一時保存部260に書き込む。これにより、カメラからは常に最新のフレームのみが保持されることになる。
【0068】
本実施形態では、使用したカメラの画像サイズは648×494ピクセルであり、1ピクセルあたり8byteのデータ量であるため、1回の遷移状態で320112byteの有効データを取得し、一時保存部260にバッファリングすることになるため、一時保存部260のサイズも320112byteで設計してある。また、信号変換部30からの書き込みとプロセッサからの読み込みを同時に行うのが好ましい。
【0069】
そして一時保存部260に保存されたデータは、インターフェース251−4を介してプロセッサ251内に送られる(図8参照)。このインターフェース251−4は、プロセッサ251に送られてきたアドレスを一時保存部260用に変換し、逆に一時保存部260から読み込んだデータをプロセッサ本体251−1のデータバス幅(32bit)に拡張する。これによりプロセッサ本体251−1のアドレスで一時保存部260にアクセスし、読み込んだデータをプロセッサ本体251のデータバスに流すことができる。
【0070】
そしてデータをプロセッサ本体251に送り、動画像のフレームの取得を行うが、その際に一時保存部が次のフレームに上書きされてしまうという状況が生じうる。これは信号変換部30から送られるデータ量に対してプロセッサ本体の動作速度が遅い場合があるためである。このため、現在取得中のフレームでカメラからの動画像フレームの取得を一時停止すると共にアクセスが終了するタイミングでフレーム取得を再開することができるように一時保存部を制御できるようにすることが好ましい。
【0071】
次に取得した動画像に処理を加えるために、1枚〜数枚のフレームをプロセッサメモリ内に保持しておくが、大量のデータはプロセッサメモリに蓄積することはできない。このため、優先順位の高いデータはプロセッサメモリ251−2に蓄積しておき、プロセッサメモリ251−2に蓄積しきれないデータはメモリを拡張する外部メモリ270に優先順位をつけて蓄積しておく。この際、インターフェース251−4と同様にデータの変換能力を有するインターフェース251−3を介してデータの移送を行うことにより一時保存部で生じるのと同様の問題を解消している。
【0072】
外部メモリは、一般のコンピュータなどに使用される半導体メモリの規格の一つであるDDR2-SDRAM(Double-Data-Rate2 Synchronous Dynamic Random Access Memory)を好ましく用いることができる。コンデンサに電荷を蓄えることにより情報を記憶する揮発性メモリであるため、一時的な作業記憶に用いられる。
【0073】
なお、本発明は上述の実施形態に何ら制限されるものではなく、本発明の趣旨を逸脱しない範囲で種々変更可能である。
たとえば、上述の車両走行システムは車いすを例示して説明したが、この他通常の自動車や、自動二輪車、自転車等種々の車両に適用可能である。また、車両走行システムにおいて、撮像した動画を表示するためのモニタを適宜位置に設置してもよい。
図6
図7
図8
図9
図1
図2
図3
図4
図5