先端運転支援システムへ向けた各種画像・ コン …...4...

33
1 © 2014 The MathWorks, Inc. 先端運転支援システムへ向けた各種画像・ コンピュータビジョンアルゴリズム開発環境 MathWorks Japan アプリケーションエンジニアリング部 シニアアプリケーションエンジニア 乙部 雅則

Transcript of 先端運転支援システムへ向けた各種画像・ コン …...4...

1© 2014 The MathWorks, Inc.

先端運転支援システムへ向けた各種画像・コンピュータビジョンアルゴリズム開発環境

MathWorks Japan

アプリケーションエンジニアリング部

シニアアプリケーションエンジニア乙部 雅則

2

設立:1984年

1985 1990 1995 2000 2005

• Rapid prototyping and HIL

• DSP designs • State charts • Physical modeling

• Discrete-event simulation

• Video & Image processing Blocksets

•Model checking

• Test and measurement

• Code verification

• Embedded software

• VHDL/Verilog generation

MATLAB

Simulink

• Control design

• Signal processing

• Image processingToolbox

• Computational finance

• Computational biology

• Application deployment

• Parallel computing• Student version

•Optimization

• Statistics

システム設計シミュレーション

自動コード生成

テスト検証

• Instrument and database connectivity

• DSP software

• Communications systems

2010

• Certification kits

• PLC code

•MATLAB Mobile for iPhone/iPad

•MATLAB Coder

• Computer Vision System Toolbox

• System objects

MATLAB / Simulink

データ解析アルゴリズム開発

テクニカルコンピューティング

様々なオプション製品により、幅広いテクニカルコンピューティング環境を提供

3

でのコミュニティー活動

File Exchangeには、ユー

ザー様が作られた、画像処理・コンピュータービジョン系のアルゴリズム、アプリケーション等が2,700件以上登録

共有されているほとんどのファイルは、BSDライセンス

R2012bより、Apps機能も使用可能

この一年で400件以上増加

4

アクティブセーフティシステムへ向けたアルゴリズム開発

From Advance Driver Assistance Systems Market,

Drivers, Functions , Continental AG, KSAE 2011

アダプティブクルーズコントロールストップ&ゴー

前方衝突防止警告

緊急ブレーキ支援

先進緊急ブレーキシステム

道路標識認識

ヘッドライトコントロール

車線変更支援

後退時支援

車線逸脱警告

車線維持システム

死角検知

5

アイデアを試してみたい /

システムレベルで確認したい

世の中にあるやり方と比べてみたい

差別化にならない部分は、一般的なやり方で済

ませたい

MATLAB/Simulink 環境を用いることで、効率的なアルゴリズム開発

6

幾何学変換

幾何学的変換(位置や形の変換) デモ

簡潔なコードで処理を実行各種GUIツール

7

高速動画ストリーミング処理・動き検出、トラッキング

動画の高速ストリーミング処理・動き検出

トラッキング(物陰への隠れ)

物体が隠れてしまっても、位置を予測しながらトラッキングを続ける

車のカウント

動いている領域の検出

デモ

8

顔・人物の認識、機械学習

顔認識 人物認識(Viola-Jonesアルゴリズム) (HOG特徴量)

わずか数行のMATLABコードで、人の顔認識 デモ

I = imread('visionteam.jpg'); % 画像の読込みdetector = vision.CascadeObjectDetector(); % 顔検出オブジェクト定義faces = step(detector, I) % 顔検出I2 = insertObjectAnnotation(I, 'rectangle', faces, 'Face'); %枠描画figure; imshow(I2); % 表示

9

ステレオビジョン向けワークフロー:ステレオカメラキャリブレーション

ステレオカメラキャリブレーション

平行化

デモ

パラメータ

ステレオ画像

10

% 人物認識 用のオブジェクト (HOG 特徴量)

vision.PeopleDetector()

ステレオビジョン:動画での人物認識・距離測定

デモ

ステレオカメラにより、人物までの距離を測定し、3m以内になったら赤で警告 =>衝突防止等への応用

11

システム検証事例:レーンキープアシストシステム

車線からの車両の逸脱を監視、認識

ドライバーへの警告や、ステアリングを自動的に調整し車両位置を修正

Vision algorithm for lane detection

Control algorithm for steering

input

Vision algorithm for lane

detection

Control System for Steering

Input

13

Prescan from TASS

– 3D driving environment modeling

– is used to test various driving conditions

Provides:

– 各種センサーや、自動車のモデル

480 x 640 VGA Camera

Simple Dynamics Model

– ビル、道路などの環境モデル

– 天候、照度、道路のコンディションの変化

アクティブセーフティシステムの開発システムレベルシミュレーション

オープンなMATLAB/Simulink環境に、サードパーティー製品を接続可能

14

周波数変調連続波レーダーによる、アダプティブ クルーズコントロール

前方の車が、間隔50m・速度96km/h、自車が100km/h (相対速度4km/h)で走行のときの例

FMCW信号により、送信時と受信時の周波数シフト情報から、

前方の車までの距離を推定

15

フェーズドアレイシステムとは?

以下を含むシステム:

トランスデューサのアレイ– 一般的には等間隔に配置 (必須条件ではない)

複数のトランスデューサを空間的に配置することで有効に活用する信号処理技術– トランスデューサ信号の位相をずらし(遅延させ)、特定の方向にお

いてゲインを得る (他の方向からの雑音/干渉を最小化)

S

t1

t2

t2

t1

0

Signal

WavefrontSteering

Delay Stage

Signal

Alignment

16

フェーズドアレイ信号処理システムをモデル化・シミュレーションするツールおよびアルゴリズム

Phased Array System Toolbox

アレイ設計・解析

波形設計・解析

送信/受信モデル

ターゲット/環境モデル

時間処理

空間処理

時空間適応処理

10-10

10-8

10-6

10-4

10-2

100

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

SNR=0dB

SNR=3dB

SNR=10dB

SNR=13dB

NonfluctuatingCoherent Receiver Operating Characteristic (ROC) Curves

Pfa

Pd

0 0.005 0.01 0.015 0.02 0.025 0.03

-300

-280

-260

-240

-220

-200

-180

-160

-140

-120

Time (ms)

Pow

er

(dB

w)

Target Range Estimation

17

Zynq(などのプログラマブルSoC)向けワークフロー

コントローラ

物理モデル

ARM FPGA

制御対象

AXIバス

ARMプロセッサC Code

Software

FPGAHDL Code

Hardware

Zynq等のプログラマブルSoC

HDL CoderEmbedded

Coder

I/Oドライバ

AX

II/

F

18

まとめ

MATLAB・Simulinkを使用することにより、

すぐに動かすことが出来る統合開発環境上で、画像処理・コンピュータービジョンの対話的

アルゴリズム検討・検証

統合マルチドメイン開発プラットフォームを提供:– 画像システム

– 制御設計

– システムレベルシミュレーション

– サードパーティー製品との接続

案内画像処理・コンピュータービジョンの開発効率の向上

19

画像処理・コンピュータビジョン向けMATLAB活用セミナー

2014年8月27日(水) 13:30-16:45秋葉原(予定)(予定)

20

Image Processing Toolbox

画像処理のベースとなる関数群

各種画像データフォーマットの読込

画像調査用の各種GUIツール

画像(色・コントラスト等)の調整・変換

幾何学的変換(位置や形の変換)

レジストレーション(位置合せ)

各種フィルタ処理

モルフォロジー処理(膨張・収縮等の様々な形態処理)

オブジェクト(物体)検出・解析

セグメンテーション(領域切出し)

物体の定量評価

ROIベースの処理(特定領域処理)

21

画像の表示・調査 / コントラストの調整・マッチング

画像の表示・調査

コントラストの調整・マッチング

画像ビューアー アプリケーション 色の閾値 アプリケーション

22

幾何学変換 / 各種フィルター処理

幾何学的変換(位置や形の変換)

各種フィルター処理

ノイズ除去

23

モルフォロジー処理 /オブジェクト検出・解析

モルフォロジー処理(膨張・収縮等の様々な形態処理)

オブジェクト(物体)検出・解析

直線検出による

レーン検出

境界線を抽出

車線の検出

24

セグメンテーション /定量評価

セグメンテーション(領域切出し)

物体の定量評価

各中心位置・面積を計測

葉の部分を抽出

中心点・面積の抽出

25

画像処理やコンピュータビジョンのための機能・高速ストリーミング処理Computer Vision System Toolbox

カメラキャリブレーション

グラフィックス

特徴点検出・特徴量抽出、マッチング・レジストレーション

物体認識、文字認識(OCR)

– 顔・人物認識

– カスタム物体に対する機械学習

動画ストリーミングデータの高速処理

物体のトラッキング

ステレオビジョン向けツール

画像処理用のSimulink ブロックセット

Cコード生成・固定小数点に対応した画像処理用システムオブジェクト

26

注釈挿入

レンズ歪補正

カメラ位置推定

マーカー挿入

図形挿入

テキスト挿入

レンズ歪カメラ内部カメラ外部のパラメータ抽出

カメラキャリブレーション

高速なグラフィックス

画像取扱い機能

27

特徴点ベースのワークフロー

特徴点のマッチングを用いた、物体認識

特徴点ベースのレジストレーション(位置合せ)

SURF/Harris/FAST/BRISK等の特徴点検出

RANSACを用いた対応点推定

物体の検出

SURF/FREAK/BRISK/HOG等の特徴量抽出

28

パターンマッチング

テンプレートマッチング

ブロックマッチング

テンプレート

ターゲット

29

文字認識

OCR (光学文字認識)

30

顔・人物の認識、機械学習

顔認識

機械学習

人物認識(Viola-Jonesアルゴリズム) (HOG特徴量)

(Haar / HOG / LBP特徴量) データベース

ラベリング用のツール

31

高速動画ストリーミング処理・動き検出、トラッキング

動画の高速ストリーミング処理・動き検出

トラッキング

物体が隠れてしまっても、位置を予測しながらトラッキングを続ける

車のカウント

動いている領域の検出

32

ステレオビジョン向けワークフロー

ステレオ画像の平行化

奥行きの推定 (視差画像)

平行化

左右の画像から特徴点の抽出

ステレオカメラキャリブレーション

デモ

33

各種カメラからの画像データ直接取込みImage Acquisition Toolbox

認識した人(6人まで)

RGB画像+骨格座標(2人まで)

深度画像

深度プロット

業界標準のHWからの動画像取込み機能を提供

– フレームグラバ (画像入力ボード)

Analog入力

Camera Link入力

– DCAM 互換 FireWire (IIDC 1394)

– GigE Vision

– 一般的なUSB Webカメラ =>簡易的取込みはMATLABの関数で可能

Microsoft Kinect for Windows

カスタムアダプター開発キット

Simulink ブロック