【カメラシステム開発者必見】自動運転&モビリティ向け車載カメラ ティアフォー製C1カメラについて調べてみた
皆さん、こんにちは。
屋外で動くサービスロボット、ガイドレス自動搬送ロボット(AMR)、電動モビリティシステムの開発においてはカメラが必須で、特にワイドダイナミックレンジ対応とよばれる動作温度範囲が広いカメラが必要不可欠です。
ただ、車載品質を担保し、ダイナミックレンジ対応したカメラは、現状ではそれほど多くないのです。
今回は車載向けのHDR対応カメラ「C1カメラ」の提供を開始した株式会社ティアフォー(以下、TIER Ⅳといいます)の製品を紹介します。
TIER Ⅳは、Pilot.AutoやWeb.Autoなど自動運転用オープンソースソフトウェア(OSS)「Autoware」をベースとした自動運転ソフトウェアプラットフォームを開発・提供している会社です。
「自動運転ソフトウェアプラットフォームを開発しているTIER Ⅳがなぜ車載用のカメラを開発したのか?」と疑問を持つ方がいるかもしれません。そのあたりも含め、本文で説明していきます。
それでは、始めましょう。
目次
- 「C1カメラ」の開発背景
- 「C1カメラ」基本情報と気になるポイント
- 1. 120dbのダイナミックレンジ対応
- 2. レンズオプション
- 3. USB3.0対応
- 「C1カメラ」のLinuxドライバ、ROSドライバ情報
- 「C1カメラ」の画質調整チュートリアル
- 1. CUI Tool
- 2. GUI Tool
- 2-1. カメラ選択(select ports)
- 2-2. 露光制御
- 2-3. デジタルゲイン(digital gain)
- 2-4. シャッタースピード(shutter_speed_fme)
- 2-5. 露出制御(evref_offset_enable/evref_offset)
- 2-6. 画質調整
- データシート、信頼性レポート
- まとめ
「C1カメラ」の開発背景
世界には多数のカメラメーカーが存在していますが、自動運転を評価する上で標準的になりつつある規格GMSL*1インタフェースに対応した標準品カメラをリリースしているメーカーは限られているという現実があります。
TIER Ⅳは自動運転ソフトウェアプラットフォームの開発会社として、これまでカメラメーカー各社からリリースされている車載向けカメラを長時間評価し、自動運転試験を行ってきましたが、満足のいく結果が得られなかったようです。
それは、走行試験は屋外で行われるため、以下のような事象が発生する場合があり対策が必須だったからです。
- ・
- ダイナミックレンジが狭いと画像が真っ白になる
- ・
- 夜間走行時は高感度設定でノイズ抑制をおこなう必要がある
また動作温度範囲については、-20から50℃くらいのカメラは多くラインナップされていますが、動作温度範囲が-40から85℃で動作できるカメラが少ないことも課題の一つでした。
自動運転試験を行う上でカメラは非常に重要や役割を担います。
そこでTIER Ⅳでは「高性能、高品質のカメラを自社で作ろう!!」と方針が決定され、カメラ開発・製造で実績の高い台湾のAbility社と共同で「C1カメラ」を開発に至ったそうです。
それからTIER Ⅳでは、「C1カメラ」を社内用途にとどまらず、2022年11月より外販用途で量産も開始しています。Linuxベースでカメラシステムを開発されている方や、Autowareを活用している方には興味があることではないかと思います。
車載用カメラとカメラモジュールの世界市場は、2022年から2030年の調査期間中に年平均成長率10.9%で成長し、2030年までに159億2,180万ドルに成長すると予測されています。
(出典: Report Ocean Co. Ltd. 車載カメラ・カメラモジュールの市場規模は2030年に159億2,180万米ドルに達すると予測~最新予測)
車載カメラとカメラモジュールというのは、視認性を高めることで自動車のドライバビリティを向上させるために使用され、主に駐車支援、車両性能評価、ナイトビジョン、重要な車両情報の収集に使用されます。
「C1カメラ」は電動モビリティ分野以外に急成長しているサービスロボット、部品などを運搬する自動搬送ロボット、部品を仕分けするピッキングロボットなどに採用が期待されています。
図1.「C1カメラ」
図2. GMSLカメラとECUの接続イメージ図
表1 GVIF、FPD-LINK3、GMSL比較
項目 | SONY | Texas Instruments | ADI |
---|---|---|---|
規格 | GVIF2 | FPD-LINK3 | GMSL2 |
型式 | CXD4968/4963 など |
DS90UB933/934 など |
MAX9291B、MAX9293B、 MAX9276B、MAX9278B など |
データレート | 4.8Gbps | 1.87Gbps | 6Gbpsまで |
解像度/フレームレート | 4M/60fps | 1M/60fps | 2M/60fps |
通信チャンネル | I2C SPI GPIO |
I2C SPI GPIO |
I2C UART GPIO |
特徴 | カメラ映像伝送 制御信号 電源重畳 |
カメラ映像伝送 制御信号 電源重畳 |
カメラ映像伝送 制御信号 電源重畳 |
「C1カメラ」基本情報と気になるポイント
C1の基本情報については以下URLよりご参照ください。
https://www.paltek.co.jp/solution/tier4/index.html#top
以下に筆者がC1について気になるポイントについてコメントします。
1. 120dBのダイナミックレンジ対応
TIER Ⅳでは「C1カメラ」のワイドダイナミックレンジを確保するため、SONY製イメージセンサであるISX021を採用しています。ローリングシャッタ方式での撮像になります。
グローバルシャッタ方式にすると歪や時間差を小さくできますが、AIで処理する場合は補正したローリングシャッタの画像で十分に目的を達成できると考えています。
また、車載カメラで重要なのはHDR性能のため、ISX021を採用しているそうです。TIER Ⅳが自動運転評価を行った際は歪みなど気にならないくらい動画撮影が可能になっています。
YouTube動画はChromeまたはFirefoxでご覧ください。
図3.「C1カメラ」(右画像)と他社カメラ(左画像)との撮影比較
カメラを使用した物体検知(YOLOv5)を行った実験
Object detection comparison (YOLOX) - YouTube
2. レンズオプション
以下3種類のレンズを含むレンズオプションをラインナップしています。
・挟角レンズ(水平46deg)
・標準レンズ(水平85deg)
・広角レンズ(水平120deg)
被写体深度は1m~ でピントが合い、4mで解像度が最高になります。
・46deg 185cm ~Inf.(peak:400cm)
・85deg 111.5cm~Inf.(peak:400cm)
・120deg 107cm~Inf.(peak:400cm)
カメラのサイズは以下となり、小さいです。
- ・
- 46deg WxDxH 38.5mm ×38.5mm×42.19mm
- ・
- 85deg WxDxH 38.5mm ×38.5mm×43.21mm
- ・
- 120deg WxDxH 38.5mm ×38.5mm×48.93mm
3. USB3.0対応
良いカメラだけどGMSLインタフェースに対応していないため、堅牢コンピュータに「C1カメラ」が接続できないという要望をいただきます。
「C1カメラ」のオプション品でGMSL2-USB3.0に変換するアダプタを販売しますので、対応可能となります。(2023年1月予定)
図4. GMSL2-USB3変換キット
「C1カメラ」とUSBアダプタの組み合わせでUSB3.0に対応したコンピュータに接続し、プラグアンドプレイで接続(Windows OS、Linux OS)できます。
UVCドライバで動作し、出力フォーマットはyuv422となっています。
「C1カメラ」のLinuxドライバ、ROSドライバ情報
githubにてtier4/tieriv_automotive_hdr_cameraで公開しています。
https://github.com/tier4/tieriv_automotive_hdr_camera/releases
「C1カメラ」の画質調整チュートリアル
「C1カメラ」の操作方法についてはgithubにて公開されています。
https://tier4.github.io/camera_docs/t4cam-ctrl/
ドライバ関係をインストールした後に以下のBSPとCUIもしくはGUIでカメラ自体を操作することができます。
「C1カメラ」のBSP(Board Support Package)は以下です。
- ・
- NVIDIA Jetson Xavier Develepment Kit / R32.5.1
- ・
- NVIDIA Jetson Orin Development Kit / R35.1
- ・
- ADLINK RQX-58G ROSCUBE-X / R32.5.1, R32.6.1
1. CUI Tool
コマンドにて画質調整機能を提供します。詳細はgithubにあるt4cam-ctrlをご参照ください。
オプション、数値指定によって各パラメータの数値を指定することでカメラのパラメータに反映させることができます。
現在のカメラの値を設定ファイルに保存することができ、保存したファイルを読み込むことで任意の設定を毎回利用することが可能です。
設定ファイルはGUI,CUIともに読み込み可能なフォーマットとなっており、GUIで調整の後、CUIにて設定するような利用も可能です。
YAMLフォーマットですので、テキストエディタでの編集も可能です。
helpオプションをご利用いただくことで各オプションの説明を確認することができます。
図5. CUIコマンド表
2. GUI Tool
GUIにて画質調整を行うツールです。詳細はgithubにあるt4cam-ctrlをご参照ください。
スライドバー、ボタンにて各項目を操作することでカメラのパラメータに反映させることができます。
設定した値は設定ファイルに保存することができ、次回以降同様の設定を設定ファイルから読み込むことが可能です。
設定ファイルはGUI,CUIともに読み込み可能なフォーマットとなっており、GUIで調整の後、CUIにて設定するような利用も可能です。
YAMLフォーマットですので、テキストエディタでの編集も可能です。
GUIツールではカメラ個別の設定はできません。チェックボックスにて選択したカメラすべてに同様の設定が反映されます。
複数台のカメラで別々の設定をしたい場合、カメラごとに設定ファイルを作成し、CUIツールにてカメラデバイスを選択しながら対応する設定ファイルを読み込ませてください。
図6. GUI
2-1. カメラ選択(select ports)
接続が確認できているカメラはチェックボックスが有効になっているため、調整したいカメラのポートを選択してください。
調整したいカメラのポートが選択できない場合、カメラの接続を確認してください。複数選択可能ですが、選択している対象すべてに同一の値を書き込みます。
2-2. 露光制御
露光モードを選択します。
・Auto
・Manual
Autoはカメラに設定されたパラメータの範囲内で自動的に露光制御が行われます。Autoの場合はシャッタースピードの最小値、最大値については本ツールでは設定できません。
カメラドライバのカーネルパラメータより設定できますので /etc/modprobe.d/tier4-isx021.conf を参照して設定してください。
Manualの場合は、本ツールによってデジタルゲイン、シャッタースピードの調整が可能です。
2-3. デジタルゲイン(digital gain)
露光モードがManualの時に操作可能です。 設定値はdB指定で、0から48dBの間で指定してください。 初期値は30dBです。
2-4. シャッタースピード(shutter_speed_fme)
露光モードがManualの時に操作可能です。 設定値はms指定で, 1から260msの範囲で指定してください。
2-5. 露出制御(evref_offset_enable/evref_offset)
evref_offset_enableのチェックボックスを有効化しているときのみパラメータが反映されます。 AEの収束目標値に対してオフセットを与えます。 設定値はdB指定で、-12.8から12.7dBの範囲で指定してください。
2-6. 画質調整
・色相(Hue)
- 色相調整値を設定します。 設定値は角度指定で、-90~90度の範囲で指定してください。
変化させない場合は0度を指定します。
・彩度(Saturation)
- 設定値は係数指定で、0.0倍 ~ 1.99倍の範囲で指定してください。 彩度を高くする場合は大きな値を、低くする場合は小さな値を指定します。
変化させない場合は1.0倍を指定します。
・ブライトネス(Brightness)
- 設定値はオフセット指定で、-256から255の範囲で指定してください。画像を明るくする場合は大きな値を、暗くする場合は小さな値を指定します。変化させない場合は0を指定します。
・コントラスト(Contrast)
- 設定値は係数指定で、0.0から1.99倍の範囲で指定してください。 変化させない場合は1.0倍を指定します。
・シャープネス(Sharpness)
- 設定値は係数指定で、0.0から3.98倍の範囲で指定してください。 変化させない場合は1.0倍を指定します。
図7.「C1カメラデフォルト設定での映像」(GUIを使った画質調整を実施していない状態)
図8.「C1カメラ」GUIを使って明るさ等を変更した場合の例
図7と比較するとよくわかります。
データシート、信頼性レポート
データシートは作成中です。信頼性試験は
・落下試験
・温度変化試験
・温度サイクル試験
・熱衝撃試験
・防水試験
・防塵試験
・耐衝撃試験
・耐振動試験
・耐日射試験
・防湿試験
・結露試験
・氷結試験
に対応可能です。
まとめ
「C1カメラ」はBSPで定義しているコントローラと接続ケーブルなども別売で販売しています。
https://www.paltek.co.jp/solution/tier4/ecu/index.html
今回はHDRカメラC1について紹介させていただきました。
電動モビリティ、ロボット開発をされている方は、是非とも「C1カメラ」の採用をご検討ください。
価格見積やご相談についてはPALTEKにお問い合わせください。
注釈
- *1 GMSLとは
- 検査装置で使用されるCoaXPressとよく似ています。カメラとECU間のケーブルを最小限に1ケーブルで映像データ、制御信号、電力を供給する規格です。
GMSLはアナログデバイセズ社(マキシム社)が規格を策定しています。FAKRAコネクタとケーブルの組み合わせでカメラとECU*2を接続することができます。
SONY社、Texas Instruments社でも別規格名で同様な規格があります。群雄割拠ですね。
GMSLはGMSL1とGMSL2など映像データ、制御信号帯域などで規格化されている様ですが、互換性があるようです。よってGMSL1に対応したデシリアライザを搭載したECUにGMSL2に対応したカメラを接続することは可能だそうです。
GMSLはカメラをディジーチェーンで接続できるのも特徴です。 - *2 ECUとは
- Electronic Control Unitは自動車に搭載される電子制御ユニットになります。
例:エンジンECU、ブレーキECU、ディファレンシャルギアECU、ステアリングECUなど
車業界でよく使われる呼び方です。産業機器などでは制御ユニットやコントロールユニットなどで呼ばれています。