• 検索結果がありません。

MATLAB ではじめる画像処理とロボットビジョン ~ 機械学習による物体認識と SLAM~ MathWorks Japan アプリケーションエンジニアリング部信号処理 通信 木川田亘 2015 The MathWorks, 1Inc.

N/A
N/A
Protected

Academic year: 2021

シェア "MATLAB ではじめる画像処理とロボットビジョン ~ 機械学習による物体認識と SLAM~ MathWorks Japan アプリケーションエンジニアリング部信号処理 通信 木川田亘 2015 The MathWorks, 1Inc."

Copied!
25
0
0

読み込み中.... (全文を見る)

全文

(1)

1

© 2015 The MathWorks, Inc.

MATLAB

®

ではじめる画像処理とロボットビジョン

~機械学習による物体認識とSLAM~

MathWorks Japan

アプリケーションエンジニアリング部 信号処理・通信 木川田 亘

(2)

7

ロボットビジョンとは?

ロボットに搭載することを目的としたコンピュータービジョン技術の一分野

– 標識認識などさまざまな環境下での物体認識や複雑なシーンの理解 – 未知の領域を探索する際にロボット自身の位置推定と地図作成(SLAM) 

MATLAB環境で効率的にロボットビジョン開発が行なえることをご紹介いたします!

Computer Vision System Toolbox™ Robotics System Toolbox™

標識認識

地図作成 ロボット

(3)

8

アジェンダ

MATLABによる効率的な画像処理

ロボットビジョン開発ソリューション

– 機械学習による物体認識 – SLAMと3次元点群処理 

まとめ

(4)

9

アジェンダ

MATLABによる効率的な画像処理

ロボットビジョン開発ソリューション

– 機械学習による物体認識 – SLAMと3次元点群処理 

まとめ

(5)

10

MATLABではじめる画像処理のワークフロー

レポート ドキュメント生成 アプリケーション C/HDLコード 出力 アルゴリズム探索 データ解析 モデリング アルゴリズム開発 画像・動画ファイル ソフトウェア カメラデバイス 入力 アプリケーション 開発 コードやアプリケーション .exe .dll C 短期間で効率的にアルゴリズム探索!

Image Processing Toolbox™

(6)

14

アジェンダ

MATLABによる効率的な画像処理

ロボットビジョン開発ソリューション

– 機械学習による物体認識 – SLAMと3次元点群処理 

まとめ

(7)

15

MATLABによるロボットビジョン開発ソリューション

物体の検出 文字認識(OCR) 顔、人物認識 高度な画像検索、分類(BoF) 機械学習による検出 トラッキング AR(拡張現実) ステレオビジョン カメラキャリブレーション

Computer Vision System Toolbox™

(8)

16

アジェンダ

MATLABによる効率的な画像処理

ロボットビジョン開発ソリューション

– 機械学習による物体認識 – SLAMと3次元点群処理 

まとめ

(9)

17

機械学習とは?

人間が自然に行っている学習能力と同様の機能を、コンピュータで実現しようとする技術

機械学習を使わない場合 手書き プログラム If brightness > 0.5 then ‘hat’

If edge_density < 4 and major_axis > 5 then “boat” … ‘boats’ ‘mugs’ ‘hats’ 機械学習を使った場合 機械学習 分類器= <機械学習アルゴリズム>(学習データ, ラベル) ‘boats’ ‘mugs’ ‘hats’ コンピュータ ビジョン 複雑な模様や色をもった物体を手書き プログラムで識別させるのは困難 大量の学習データを使って より汎用的な検出器を設計可能

(10)

22

学習フェーズ

分類フェーズ

MATLABによる効率的な機械学習のワークフロー

学習用データ 特徴抽出 学習

学習器

‘hat’ 入力画像 特徴抽出 分類

(11)

24

MATLABによる効率的な機械学習のワークフロー

特徴抽出 学習

分類器

入力画像 識別

Statistics and Machine Learning Toolbox™ 出力

Computer Vision System Toolbox™ 前処理 (ノイズ除去など) 特徴抽出 前処理 (ノイズ除去など)

学習データ

検出したいもの画像 検出したくないものの画像 大規模画像を取り扱うための 専用クラス imageSet さまざまな分類器 を探索するための GUIアプリケー ション HOGなどの基本的な画像 特徴量からBag of Featuresを使った複雑 なワークフローまで様々 画像特徴量の抽出に対応

(12)

29

アジェンダ

MATLABによる効率的な画像処理

ロボットビジョン開発ソリューション

– 機械学習による物体認識 – SLAMと3次元点群処理 

まとめ

(13)

30

SLAMとは?

SLAM(Simultaneous Localization and Mapping)

– ロボットが未知の領域で自己位置を推定しながら、環境地図作成を行なう手法 – 入力:ロボットの指令値、周辺のセンサ情報

– 出力:地図データとロボットの移動経路

Computer Vision System Toolbox™ 自己位置推定と地図作成

⇒タイヤが滑った場合はどうする? タイヤの回転角データ+画像データ+点群データ

(14)

35

Visual-SLAMとは?

画像センサ情報のみを使ってカメラの自己位置を推定しながら環境地図作成を行なう

地図作成手法

– 主に特徴点ベースで作成 

自己位置推定手法

– 輝度変化に強い画像特徴量をランドマークとして使う – 既知のランドマークを使う(マーカー併用型Vsiual-SLAMなど) モノキュラーSLAM (単眼カメラを使う) ステレオSLAM (ステレオカメラを使う) RGBD-SLAM (Kinectのような画像+ 深度データが得られるデ バイスを使う) マーカー併用型Visual-SLAM

(15)

37

特徴点ベースのVisual-SLAMのワークフロー

画像データ取得 特徴点検出 特徴点 トラッキング カメラ位置推定 地図作成 特徴点 マッチング 地図データから地面を検出 カメラ位置から走行距離取得 地図 完成

(16)

52

アジェンダ

MATLABによる効率的な画像処理

ロボットビジョン開発ソリューション

– 機械学習による物体認識 – SLAMと3次元点群処理 

まとめ

(17)

53

まとめ

MATLABによる効率的な画像処理

– 対話的アルゴリズム探索や可視化機能、ドキュメントなどの充実した開発環境 

ロボットビジョン開発ロボットビジョン

– 機械学習のためのフレームワークで最適な分類器を探索 – モデルフィッティングやVisual-SLAMなど高度な3次元点群処理機能 このあとセミナーのご紹介

ロボットビジョン開発にMATLABをご活用ください

(18)

54

11/17 画像処理・コンピュータービジョンセミナー

日時:2015年11月17日 13:30-16:45

場所:UDX GALLERY NEXT(JR秋葉原駅より徒歩2分)

画像処理、コンピュータービジョンの機能を隅から隅までご紹介!

– 画像処理・動画処理のアルゴリズム開発 – 特徴検出・マッチング・認識・機械学習・トラッキング – 非剛体レジストレーションやカメラキャリブレーション – ステレオビジョン向けワークフロー、3次元点群処理、Bag-of-Features – 並列化やGPUなどの連携機能やC/HDL実装環境についてもご案内

(19)

55

(20)

56

画像処理

各種画像データの読み書き

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

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

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

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

各種画像フィルタ処理

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

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

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

画像の領域の定量評価

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

(21)

57

コンピュータビジョン・高速ストリーミング処理

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

グラフィックス

大量の画像取り扱い用クラス

特徴点検出・特徴量抽出

マッチング・レジストレーション

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

– 顔・人物認識 – カスタム物体に対する機械学習 – Bag-of-Visual Wordsによる物体認識 

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

物体のトラッキング

ステレオビジョン向けワークフロー・3D表示

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

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

(22)

58

統計解析・機械学習

特徴変換

– 主成分分析 (PCA) – 因子分析 

クラスタリング

– 階層、 K平均クラスタリング – ガウス混合分布モデル 

クラシフィケーション(分類)

– サポートベクターマシン (SVM) – 単純ベイズ分類器、線形分類器、K近傍分類器 

モデルの結合(アンサンブル学習)

– バギング(Tree Bagger等) – ブースティング(AdaBoost等) 

分類学習器アプリケーション

– 効率的に最適な分類器を探索できるGUI

Statistics and Machine Learning Toolbox™

(23)

59

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

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

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

 Analog/Camera Link 入力

– DCAM 互換 FireWire (IIDC 1394) – GigE Vision

– USB Webカメラ(簡易取り込みはMATLABサポートパッケージでも可能) – IPカメラ(MATLABサポートパッケージ)

Microsoft Kinect for Windows

Simulink® ビデオデバイスブロックセット

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

Image Acquisitionアプリケーション

– GUIによるカメラデバイスのパラメータ設定やMATLABコードのエクスポート 認識した人 (6人まで) RGB画像+骨格座標 (2人まで) 深度画像 深度プロッ ト

Image Acquisition Toolbox™

(24)

60

ROS連携機能

ROSのインターフェイス提供

– MATLABをROSマスター、ノードとして起 動 – 開発したアルゴリズムを直接ROSネットワー クに接続して検証 

ROSノード生成

– コード生成機能を使用し、アルゴリズムから C++ ROSノードを生成 

ロボットビジョンアルゴリズム開発の支援

– 座標変換などの基本的な関数群 – パスプランニングなど高度な関数群

Robotics System Toolbox™

(25)

61

© 2015 The MathWorks, Inc. MATLAB and Simulink are registered trademarks of The MathWorks, Inc. See www.mathworks.com/trademarks for a list of additional trademarks. Other product or brand names may be trademarks or registered

trademarks of their respective holders.

参照

関連したドキュメント

評価対象核種は、トリチウム(H-3)、炭素 14(C-14)および ALPS による除去対象 62 核種の合計 64

 実施にあたっては、損傷したHIC排気フィルタと類似する環境 ( ミスト+エアブロー ) ※1 にある 排気フィルタ

前処理フィルタ2B 漏えい個所 漏えいあり 腐⾷あり スラッジ塊あり 異常なし. 

Should Buyer purchase or use ON Semiconductor products for any such unintended or unauthorized application, Buyer shall indemnify and hold ON Semiconductor and its officers,

撮影画像(4月12日18時頃撮影) 画像処理後画像 モックアップ試験による映像 CRDレール

処理処分の流れ図(図 1-1 及び図 1-2)の各項目の処理量は、産業廃棄物・特別管理産業廃 棄物処理計画実施状況報告書(平成

(注)

ALPS 処理水希釈放出設備は通常運転~停止の他, 「意図しない形での ALPS