・センサ製品特集:次世代モビリティ・EV、ロボット、ヘルスケア、教材の分野別にセンサ製品をご紹介。
・【新製品】RoboCar® Lite 1/15を発表。2010年12月出荷開始、ただいま受注受付中。
RoboCar® よくあるご質問(FAQ)
・RoboCar
・e-nuvo IMAGEシリーズ
RoboCarの機能・性能について
- 減速比を教えてください
11.40です。一段目スパーギアで6.222、二段目タイミングベルトで1.833となっています。
- 最高速度は?
最高速度は 2800 [mm/sec] です。センサや画像認識を利用し障害物を検知し自動走行する場合、それらの認識の速度にあわせ遅く走行させる必要があります。
- 速度の分解能は?
速度の分解能は、3.8 [mm/sec] です。
- バッテリーの駆動時間は何時間ですか?
バッテリーには、画像処理ボード、CPUボードを動かす情報系と、走行用モータを動かす駆動系の2系統がございます。駆動系は、通常の走行で約1時間程度です。オプションの大容量バッテリーを使用した場合、約3時間駆動します。情報系は、弊社推奨のSANYO eneloopを使用した場合、約1時間使用できます。RoboCarを走らせない状況(プログラミング等)で長時間使用する場合、家庭用コンセントから電源供給が可能な「AC電源オプション」を推奨いたします。
- どのくらいのスペースがあれば動かせるのか?
速度や動作によって必要な広さが異なりますが、
円を描かせて動かす場合、最低でも2[m]x2[m]のスペースが必要です。
- CPUボードには、キーボード、マウス、ディスプレイをつなぐことはできますか?
はい。通常は、LAN経由で他のPCからシリアルコンソールか、SSHでログインして利用します。CPUボードには、キーボード、マウス、ディスプレイのコネクタやケーブルが付属していますので、これらを接続して通常のLinuxPCのように利用することも可能です。
RoboCarのソフトウェア開発環境について
- どのようなAPIが提供されますか?
センサの値取得、モータとステアリングの制御を行うAPIや、また、画像処理ボードに対して、パラメータを設定する、結果を取得するAPI、レーザーレンジファインダを操作し値を取得するAPIが提供されます。詳細はマニュアルをご覧ください。
- Linuxは、RT-Linux(リアルタイムLinux)を搭載していますか?
いいえ。本体のLinuxは、厳密にはリアルタイムOSではありませんが、リアルタイムのパッチをあてて応答性を高めています。センサやモータは別のCPU(OSなし)で10[msec]毎に制御しています。
RoboCarの画像処理について
- 画像処理はどのような機能がありますか?
ステレオ視によるオブジェクト(障害物)の距離測定と、白線検出の2つです。 レンズ歪み補正/カメラ間位置補正を行ったあと、距離画像に変換いたします。オブジェクトを二値化、ハフ変換、ラベリングのいずれかの方法で検出し、同時に白線検出を常に行っております。ユーザは、それらの結果をアプリケーションから利用することになります。また、途中の画像も読み出して利用することが可能です。
- ステレオカメラのフレームレートは?
30フレーム/秒です。
- 画像処理の性能(速さ)を教えてください。
上記処理を原則として33[msec] (30[frame/sec])で処理いたします。途中の画像を読み出す場合、その画像のサイズによってこれより遅くなる場合があります。
- 距離測定の範囲と精度はどれくらいですか?
測定範囲は、0.3[m]から、2.5~3.0[m]程度です。画像処理の場合、背景や外光の環境により精度が左右されます。精度は、オブジェクトまでの距離が約0.7~0.8[m]までは、約1[cm]以内になります。遠くになる程精度が落ち、2.5~3.0[m]辺りでは、精度は、約20~30[cm]になります。
- どの程度の大きさのオブジェクト(障害物)を識別可能ですか?
距離が近ければ幅20~30[cm]程度の物を識別可能です。遠くなると50~60[cm]程度のオブジェクトを識別可能です。また、障害物が高い方が、識別できる確率が高くなります。
- カメラで見える範囲を教えてください。
水平方向70[°]、垂直方向52[°]のカメラを2つ使用しております。ステレオ視で距離を測れる範囲は、水平方向でこれより5~10[°]程度狭くなります。
- 画像のサイズを教えてください。
入力で、640x240です。距離画像は、横方向に1/3になります。(213x237)
- 画像処理はどのようなアルゴリズムを使っていますか?
それぞれ以下のようなアルゴリズムを搭載しています。
- カメラキャリブレーション
Zhang(チャン)の手法。チェスボードを何枚か撮影して、左右の対応点の組から、線形の連立方程式を解き、カメラパラメータを推定するアルゴリズムです。PC側で処理しております。
- レンズ歪み補正,カメラ補正
カメラパラメータから1ピクセル毎の歪み補正用の対応表(マップ画像)を作成し、実行時に毎フレーム対応点への投影(リマップ)を行います。
- ステレオ処理
ブロックマッチング法。左目画像の、注目画素を中心にする小さな領域を考え、このブロックと一致する(差異がもっとも小さくなる)対象領域を、右目画像中で水平に探索します。このピクセルの差を視差とし距離に換算します。最大120ピクセルまで探索します。ブロックサイズは4x4です。差分評価関数としてはSAD(Sum of Absolute Difference)(輝度差の総和)を使用します。SAD値と、エッジ強度により閾値を設けることができます。
- サブピクセルの推定
パラボラフィッティングを使っています。パラボラフィッティングは、最も一致した点と、その両隣の点、あわせて3点が、放物線にのると仮定して、その頂点位置を視差値のサブピクセル分とするものです。
- オブジェクト抽出
- ヒストグラム画像
三次元情報を平面に投影してから、オブジェクトの距離情報を得ます。カメラ座標でのX-Z平面に投影するために、Y方向の視差値を統計を取りヒストグラムにします。
- ハフ変換
直線成分を検出するためのアルゴリズムです。
- ラベリング
隣接する画素にラベル付けを行うアルゴリズムです。同一のラベルがついた画素をひとつの物体とみなします。
- 画像処理を独自に実装することはできますか?
可能です。ユーザ独自の画像処理アルゴリズムを搭載する場合には、画像処理ボード上のIMAPCARというプロセッサのプログラムを作成します。この場合別途、専用の開発ツールRoboVision SDKが必要です。
- 標識の認識はできますか?
できません。現在実装している機能は、ステレオ視によるオブジェクト(障害物)の距離測定と、白線検出の2つです。 これ以外の処理を行いたい場合、画像処理部分のプログラムをユーザ様に用意していただく必要があります。この場合別途、専用の開発ツールRoboVision SDKが必要です。
RoboCarのサードパーティ製ツールとの連携について
- MATLAB/Simulinkの連携可能と記載されているが、実際はどのように行うのか?
RoboCarの環境は、Real-Time Workshopで生成されたC言語のソースが実行可能です。お手持ちの環境にて生成したソースをRoboCar用に 修正頂ければ動作可能です。
- RoboCar用のMATLAB/Simulinkのブロックはないのか?
RoboCar用のSimulinkブロックは現在開発中です。