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

MATLAB®製品紹介セミナー

N/A
N/A
Protected

Academic year: 2021

シェア "MATLAB®製品紹介セミナー"

Copied!
50
0
0

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

全文

(1)

© 2013 The MathWorks, Inc.

いまからはじめる、MATLABによる

画像処理・コンピュータービジョン

(活用編)

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

(2)

デモ

認識した人(6人まで) 深度画像 RGB画像+ 骨格座標 深度プロット Microsoft Kinectとの連携 ハードウェアからの容易なデータ 取り込み • 3次元座標・奥行き取得 • ジェスチャ認識 etc デモ

(3)

アジェンダ

1. Microsoft Kinect を使ったデモ 2. 画像処理・コンピュータービジョン向けツールボックス概要 3. デモ (2種類 + Kinectのデモスクリプト紹介) 4. 高速化ソリューション(GPU処理、Cコード化)最新対応状 況のご紹介 5. Simulinkによる実装環境のご紹介 プレゼンテーションファイル・デモに使用したファイルは 後日ダウンロードいただけます。

(4)

アジェンダ

1. Microsoft Kinect を使ったデモ 2. 画像処理・コンピュータービジョン向けツールボックス概要 3. デモ (2種類 + Kinectのデモスクリプト紹介) 4. 高速化ソリューション(GPU処理、Cコード化)最新対応状 況のご紹介 5. Simulinkによる実装環境のご紹介

(5)

5

画像処理、解析およびアルゴリズム開発

Image Processing Toolbox

 各種画像データフォーマットの読込  画像調査用の各種GUIツール  画像(色・コントラスト等)の調整・変換  幾何学的変換(位置や形の変換)  レジストレーション(位置合せ)  各種フィルタ処理  モルフォロジー処理(膨張・収縮等の様々な形態処理)  オブジェクト(物体)検出・解析  セグメンテーション(領域切出し)  物体の定量評価  ROIベースの処理(特定領域処理)

(6)

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

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

 各種フィルター処理

(7)

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

 モルフォロジー処理(膨張・収縮等の様々な形態処理)  オブジェクト(物体)検出・解析 直線検出 による レーン検出 境界線を 抽出

(8)

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

 セグメンテーション(領域切出し)  物体の定量評価 各中心位置・ 葉の部分を 抽出

(9)

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

Computer Vision System Toolbox

 カメラキャリブレーション  グラフィックス  特徴点検出・特徴量抽出、 マッチング・レジストレーション  物体認識 – 顔・人物認識 – カスタム物体に対する機械学習  動画ストリーミングデータの高速処理  物体のトラッキング  ステレオビジョン向けツール  画像処理用のSimulink ブロックセット

(10)

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

注釈挿入

グラフィックス

レンズ歪補正 カメラ位置推定 マーカー挿入 図形挿入 テキスト挿入 レンズ歪 カメラ内部 カメラ外部の パラメータ抽出

(11)

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

 特徴点のマッチング・物体認識  特徴点ベースのレジストレーション(位置合せ) SURF/Harris/FAST等 の特徴点検出・特徴量抽出 RANSACを用いた対応点推定

(12)

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

 顔認識  機械学習  人物認識 (Viola-Jonesアルゴリズム) (HOG特徴量) (Haar / HOG / LBP 特徴量) データベース

(13)

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

 動画の高速ストリーミング処理・動き検出  トラッキング 物体が隠れてしまっても、 位置を予測しながら トラッキングを続ける 車のカウント 動いている領域の検出

(14)

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

 2枚のステレオ画像の平行化

 奥行きの推定 (ディスパリティーマップ)

2つの画像から特徴点の抽出

(15)

アジェンダ

1. Microsoft Kinect を使ったデモ 2. 画像処理・コンピュータービジョン向けツールボックス概要 3. デモ (2種類 + Kinectのデモスクリプト紹介) 4. 高速化ソリューション(GPU処理、Cコード化)最新対応状 況のご紹介 5. Simulinkによる実装環境のご紹介

(16)

デモ1:物体を識別し数える・面積を求める

(17)
(18)

デモ1:数えるデモ : 手順

[統計処理] 面積で グループ分け 機械学習で判別 フィルター処理 [色空間変換] 色相で判別 二値化 (輝度二値化) エッジ検出 モルフォロジー処理 (塗り潰し・橋渡し・オー プン処理等) デモ [形状計測] 扁平率で判別 MATLAB Central File Exchange

(19)

HSV色空間

赤:0 / 1.0 Value: 明度 Hue: 色相 Saturation: 彩度 (白/灰色/黒は0)

(20)

機械学習

> 機械学習用の関数 [Haar-like/Histogram of Orientation (HOG)/Local Binary Pattern (LBP)]

trainCascadeObjectDetector() カスケード型分類器 ポジティブ画像と ネガティブ画像を準備 学習済みデータベース (xxx.xml) I = imread('visionteam.jpg'); % 画像の読込み detector = vision.CascadeObjectDetector('xxx.xml'); % 検出オブジェクト定義 faces = step(detector, I) % 顔検出

I2 = insertObjectAnnotation(I, 'rectangle', faces, 'Face'); %枠描画 figure; imshow(I2); % 表示

(21)

デモ1:数えるデモ : まとめ

様々な処理を簡潔な記述で処理可能な、豊富な関数群 対話的な処理方法探索 File Exchangeサイトの利用 [統計処理] 面積で グループ分け 機械学習で判別 フィルター処理 [色空間変換] 色相で判別 二値化 (輝度二値化) エッジ検出 モルフォロジー処理 (塗り潰し・橋渡し・オー プン処理等) [形状計測] 扁平率で判別

(22)
(23)

でのコミュニティー活動

File Exchangeには、ユー ザー様が作られた、画像処 理・コンピュータービジョン 系のアルゴリズム、サンプ ル等が2千件以上登録 共有されているほとんど のファイルは、BSDライ センス R2012bより、Apps機能 も使用可能

(24)
(25)

watershed (分水嶺) セグメンテーション

~BWclear BWclear -bwdist(~BWclear) 0 bwdist(~BWclear) 0 BWdist(~BWclear) = -Inf -Inf 極小 0 1 0 1 距離変換 分水嶺 背景部分を-Infにして、 領域に含まれないようにする 分水嶺変換 領域#1 領域#2

(26)

デモ2:

(27)

AR (拡張現実:Augmented Reality)

 動画のストリーミング処理  局所特徴量を用いたマッチング  トラッキングによる認識処理の高速化 =>  局所特徴量を用いた物体認識  物体や人物のトラッキング  リアルタイムの画像の向き補正 等々への応用

(28)

動画のストリーミング処理

% ビデオ読込み用のオブジェクトの作成 vidReader = vision.VideoFileReader('fileName.avi'); % ビデオ表示用のオブジェクトの作成 vidPlayer = vision.DeployableVideoPlayer; % ループ処理 while (1) I = step(vidReader); % 1フレーム 読込み ... % 各種処理 step(vidPlayer, I); % 1フレーム 表示 end

(29)

デモ2 : 手順1

リファレンス画像 カメラからの画像 局所特徴量: SURF 特徴点の検出 特徴量の抽出 マッチング

(30)

デモ2 : 手順2

RANSACを用いた幾何学変換推定 (外れ値の除去) 0.525 0.041 0 −0.042 0.486 0 75.123 168.891 1 幾何学変換 合成 第1フレーム

(31)

デモ2 : 手順3

次のフレームの画像 局所特徴量マッチングの代わりに、 エッジのトラッキングを用いることで、 高速化 推定した幾何学変換 高速な動画ストリーミング処理 特徴点ベースマッチングやトラッキング等 の高度な処理を簡潔に実現 アイデアの迅速なプロトタイピング この中でエッジを検出 最初のフレームの画像

(32)

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

Image Acquisition Toolbox

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

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

 Analog 入力

 Camera Link 入力

– DCAM 互換 FireWire (IIDC 1394)

– GigE Vision – 一般的なUSB Webカメラ  Microsoft Kinect RGB画像+ スケルトン 認識した人(6人まで) 深度画像

(33)

Microsoft Kinect 接続のサポート

赤外線照射 カラーカメラ マイクロフォン アレー 赤外線深度センサー RGB画像:1280 x 960 / 12 fps or 640 x 480 / 30 fps Depth : 640x480、320x240、80x60 30fps

Depth Mode: Default (range of 50 to 400 cm) Near (range of 40 to 300 cm).

(34)

デモ

認識した人(6人まで) 深度画像 RGB画像+ 骨格座標 深度プロット Microsoft Kinectとの連携 ハードウェアからの容易なデータ 取り込み • 3次元座標・奥行き取得 • ジェスチャ認識 etc スクリプト

(35)

アジェンダ

1. Microsoft Kinect を使ったデモ 2. 画像処理・コンピュータービジョン向けツールボックス概要 3. デモ (2種類 + Kinectのデモスクリプト紹介) 4. 高速化ソリューション(GPU処理、Cコード化)最新対応状 況のご紹介 5. Simulinkによる実装環境のご紹介

(36)

並列/分散処理・GPGPUによる高速・大規模データ処理

Parallel Computing Toolbox

• 並列・分散処理による高速化

• 12コアまでのマルチコア、マルチCPU処理が可能 • MATLAB 関数のGPUによる実行

• 2次元FFT等 150以上のMATLAB基本関数

• Image Processing ToolboxのGPUサポート関数

imrotate(), imfilter(), imdilate(), imerode(), imopen(), imclose(), imtophat(), imbothat(), imshow(), padarray() ...

(37)

Image Processing ToolboxのGPUサポート関数

imrotate, imfilter, imdilate, imerode, imopen, imclose, imtophat, imbothat, imshow, padarray, bwlookup

bwmorph, im2single, imgradientxy, medfilt2 corr2, im2uint8, imhist, rgb2gray

edge, im2uint16, imlincomb, rgb2ycbcr histeq, imabsdiff, imnoise, std2

im2double, imadjust, imresize, stdfilt

im2int16, imgradient, mat2gray, ycbcr2rgb (11関数)

(38)

GPGPU処理

CPU GPU メモリー メモリー gpuArray() gather() I = imrotate(I, 75, 'bicubic'); % 画像を75°回転 I = gpuArray(I); I = imrotate(I, 75, 'bicubic'); % 画像を75°回転 各種関数を、GPU上で実行

(39)

MATLABファイルからCコードを生成

MATLAB Coder .c .exe .lib MEX コード生成/実装 実装(C/HDL)技術者へハンドオフ スタンドアロンの アプリケーション作成 (プロトタイプ・配布) 他のソフトウェアへ MATLABアルゴリズムの統合 MATLABファイル実行 の高速化 MATLABファイル • ANSI-C/ISO-C/GNU-C準拠 • 整数・浮動小数点・ 固定小数点演算対応 (Fixed-Point Designerが必要)

(40)

Cコード生成: MATLAB Coder

conndef, imcomplement, imfill, imhmax, imhmin, imreconstruct, imregionalmax, imregionalmin, iptcheckconn, padarray

extractHOGFeatures, extractFeatures,

detectSURFFeatures, disparity, detectMSERFeatures, detectFASTFeatures, vision.CascadeObjectDetector, vision.PointTracker, vision.PeopleDetector,

MSERRegions, cornerPoints, SURFPoints

(Image Processing Toolbox: 10関数の追加)

(Computer Vision System Toolbox: 14関数の追加) 画像処理・コンピュータービジョン関連関数の、Cコード生成対応状況

(41)

アジェンダ

1. Microsoft Kinect を使ったデモ 2. 画像処理・コンピュータービジョン向けツールボックス概要 3. デモ (2種類 + Kinectのデモスクリプト紹介) 4. 高速化ソリューション(GPU処理、Cコード化)最新対応状 況のご紹介 5. Simulinkによる実装環境のご紹介

(42)

MATLAB/Simulinkにおける実装環境

Simulink Coder / Embedded Coder HDL Coder / HDL Verifier アルゴリズム検討 システム設計 実装 テ ス ト & 検証 コード 生成 検証 VHDL, Verilog FPGA/ASIC  アルゴリズム検討、 システム設計と実装・検証 が統合された環境  ターゲット依存しないコー ド(C、VHDL、Verilog)  コードの自動生成による 開発期間の短縮  MATLAB/Simulinkモデル を動作可能な仕様とし、そ れを中心とした開発フロー Processor C, C++ SoC Virtual Platform SystemC モデル

(43)

Simulinkとは?  ブロック線図ベースのシステムモデリング・ シミュレーション  様々な系でのマルチドメインシミュレーション (連続系・離散、マルチレート、浮動・固定小 数点、イベントドリブン等、制御/制御対象)  分かりやすい並列動作モデリング  時間軸シミュレーション・ストリーミング処理  プリコンパイル型のため高速な処理 MATLAB/ Simulink システムシミュレーション環境 時間/周波数応答の表示 ブロックライブラリ C/C++コードのブロック化 システムシミュレーション を短期間で実現

Simulinkの特長・概観

(44)

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

ARM/FPGA実装用コントローラ 制御対象物理モデル ARM FPGA AXIバス ARM プロセッサ C Code Software FPGA HDL Code Hardware HDL Coder Embedded Coder

(45)

デモブースのご案内

信号処理アルゴリズム設計 ~システム設計~実装

(46)
(47)

各種サービス リソース  100名を超えるサポートエンジニア – 北米、欧州、アジアで現地サポート 高い顧客満足度  24時間以内に70%問題解決  80%のお客様が80-100%の満足度と回答 利用方法  Webページ http://www.mathworks.co.jp/support/contact_us/  MATLABヘルプメニュー MATLABデスクトップから サポートリクエストを起動 トレーニングサービス、コンサルティング テクニカルサポート 効率的な導入

(48)

まとめ

 MATLAB・Simulinkを使用することにより、 すぐに動かすことが出来る統合開発環境上で、 画像処理・コンピュータービジョンの効率的 アルゴリズム検討・検証 – 多くの高速/高度な関数・ブロックを用いた様々な方式検討 – 様々な方式・パラメーターのトライ&エラーを迅速に実施が可 – 統合された開発環境上で、GPGPU高速化や、C・HDL生成による実装 を含む、多くのツールとの連携機能 – テクニカルサポートや、多くのユーザ・研究者の方々によるMATLAB Centralなどの共有リソースの有効活用 画像処理・コンピュータービジョンの開発効率の向上

(49)

スクリプトのダウンロード先

http://www.mathworks.co.jp/matlabcentral/fileexchange/44214-how-to-apply-image-processing-and-computer-vision-wih-matlab-japanese-matlab-expo-2013

(50)

参照

関連したドキュメント

はたらき 本機への電源の供給状態、HDC-RH100-D またはツイストペアケーブル対 応製品との接続確立、映像信号の HDCP

7.2 第2回委員会 (1)日時 平成 28 年 3 月 11 日金10~11 時 (2)場所 海上保安庁海洋情報部 10 階 中会議室 (3)参加者 委 員: 小松

(実 績) ・地下水解析、地下水バイパス段階的稼働方法の検討等 ・地下水バイパス工事(揚水・移送設備 水質確認)

北区無電柱化推進計画の対象期間は、平成 31 年(2019 年)度を初年度 とし、2028 年度までの 10

北区では、地域振興室管内のさまざまな団体がさらなる連携を深め、地域のき

「ゼロエミッション東京戦略 2020 Update & Report」、都の全体計画などで掲げている目標の達成 状況と取組の実施状況を紹介し

 次に、羽の模様も見てみますと、これは粒粒で丸い 模様 (図 3-1) があり、ここには三重の円 (図 3-2) が あります。またここは、 斜めの線

もうひとつ、今年度は安定した職員体制の確保を目標に取り組んでおり、年度の当初こそ前年度から かしの木から出向していた常勤職員 1