Copyright © 2016 OPTiM Co. All Rights Reserved.
OPTiM インターンシップ最終報告
機械学習による画像の領域分割
O大学大学院
情報科学研究科 M1
H.S
1
2016/10/01
• 名前:H.S 修士1年
• 所属:O大学大学院 情報科学研究科
• 機械学習・最適化・コンピュータビジョン
2
自己紹介
Copyright © 2016 OPTiM Co. All Rights Reserved.
背景・目的
3Copyright © 2016 OPTiM Co. All Rights Reserved.
4
背景 - 画像処理における物体認識
物体カテゴリ認識 物体検出 物体領域抽出
顔の位置 顔(人体)の領域
輪郭
画像が顔を含むか否か
Copyright © 2016 OPTiM Co. All Rights Reserved.
• ピクセルごとのラベリングを畳み込み層のみ(DCNN)で実装
5
背景 - 論文紹介 - SegNet
Badrinarayanan, Vijay, Ankur Handa, and Roberto Cipolla. "Segnet: A deep convolutional encoder-decoder
architecture for robust semantic pixel-wise labelling." arXiv preprint arXiv:1505.07293 (2015).
Copyright © 2016 OPTiM Co. All Rights Reserved.
• 空撮画像によるセグメンテーション
• カラー画像、高度画像
• 農業
• 農作物と雑草などを分離
• 測量
• 地面や道路、森林など、車両などを分離
6
目的 - 空撮画像のセグメンテーション
Copyright © 2016 OPTiM Co. All Rights Reserved.
提案手法
7Copyright © 2016 OPTiM Co. All Rights Reserved.
• 画像をウィンドウに分割
• ウィンドウごとにラベリング
• 分類問題として解く
• PROS
• 機械学習の代表的なアプローチ
(多数の手法が提案されている)
• CONS
• “分類”に適さない入出力関係
• ピクセルごとに推定 → 処理時間が増大
8
提案手法 - 概要
Copyright © 2016 OPTiM Co. All Rights Reserved.
9
提案手法 - 詳細
最大の面積を占めるラベル
↓
入力画像のラベル
INPUT Max Pooling
Fully Connected
…
…
102
12
3
ネットワーク構造(CNN
Convolution1(5x5)
Convolution2(5x5) + Max Pooling
1x32x32 16x32x32
16x16x16
16x16x16
16x8x8
Copyright © 2016 OPTiM Co. All Rights Reserved.
評価
10Copyright © 2016 OPTiM Co. All Rights Reserved.
• NVIDIA Jetson TK1 開発者用キット
• GPU:326GFlops (VRAM:2GB)
• CPU:64GFlops (Cortex-A15)
• TDP:10W程度
11
評価 - 実行環境
DNNの計算は行列演算の繰り返し
-> GPUによる高速化
Copyright © 2016 OPTiM Co. All Rights Reserved.
• データセット
• A/B の2個の画像
• トレーニングデータ
• Aからランダムに5000枚のバッチを切り出す
• 評価
• 学習方法による精度への影響
• 処理時間
12
評価 - 概要
Copyright © 2016 OPTiM Co. All Rights Reserved.
BA
• 地面
• acc:0.959
• recall:0.909
• 森林
• acc:0.779
• recall:0.905
• その他
• acc:0.992
• recall:0.978
• 平均
• acc:0.910
• recall:0.930
13
評価 - 推定結果
Copyright © 2016 OPTiM Co. All Rights Reserved.
• 地面
• acc:0.991
• recall:0.980
• 森林
• acc:0.956
• recall:0.850
• その他
• acc:0.577
• recall:0.837
• 平均
• acc:0.841
• recall:0.889
• Iter 1000: 学習不足
• Iter 4000: 学習がうまく進んでいた
• Iter 8000: 過学習が見受けられた
14
評価 - イテレーション回数の影響
Copyright © 2016 OPTiM Co. All Rights Reserved.
• トレーニングデータの正規化
• 深度画像をそのまま用いると過学習を招く
• バッチごとに平均が0になるように正規化
(分散はそのまま)
15
評価 - 過学習の解消
Copyright © 2016 OPTiM Co. All Rights Reserved.
• 正規化を導入することで過学習を防げた (Iter: 8000)
16
評価 - トレーニングデータ正規化の効果
Copyright © 2016 OPTiM Co. All Rights Reserved.
• 学習時間
• CPU (Jetson) : 1.3iter / sec
• GPU (Jetson) : 17.5iter / sec
• 推定時間
• CPU (Jetson) : 8.0ms / image
• GPU (Jetson) : 7.5ms / image
17
評価 - 処理速度
13倍
※A全体を推定するのに60,000枚, 10分程度
※推定ではミニバッチが活用できていない
Copyright © 2016 OPTiM Co. All Rights Reserved.
今後の課題
18Copyright © 2016 OPTiM Co. All Rights Reserved.
• ネットワーク構造 (アップサンプリング系のレイヤー)
• 入力データ (RGB画像、点群…)
• 前処理 (データの性質に合わせた処理)
• トレーニングデータ(手動、擬似生成、シミュレーション)
19
今後の課題
Copyright © 2016 OPTiM Co. All Rights Reserved.
インターンシップの感想
20Copyright © 2016 OPTiM Co. All Rights Reserved.
• 勉強会のSDK開発のお話は、まさに個人や大学における開発と企
業における開発の違いだと感じたので興味深かった
• 菅谷社長とお話できて非常に勉強になりました
• まだまだ試してみたいことがたくさんあります
• 前処理ひとつで精度が左右されるDNNの難しさを実感しました
• これでうまくいった、うまくいかなかった、改善した、しなかっ
たというひとつひとつの経験が興味深かった
• とても短い2週間でした
21
インターンシップの感想
Copyright © 2016 OPTiM Co. All Rights Reserved.
www.optim.co.jp
22Copyright © 2016 OPTiM Co. All Rights Reserved.

Optim インターンシップ 機械学習による画像の領域分割