機械学習向けCGデータの量産手法の検討
シリコンスタジオ株式会社
技術本部
佐藤 晶威
masatake.sato@siliconstudio.co.jp

本講演の内容• 機械学習におけるCG技術の需要• CG制作のアプローチと課題• 画像品質合わせ込みの自動化検討• レゴブロックを用いた実写とCGの品質比較検証

もくじ• 背景と目的• CG制作のアプローチ• 課題• 解決方法• 実現手段• 実験と結果• まとめ

シリコンスタジオのビジネス戦略• 産業分野を越えて活用できるソリューション/技術の提供– ゲーム産業、アニメ産業– 製造業、広告業• グラフィックス技術を転用した新規サービスの開拓– 広告販促向けCG– 組み込みグラフィックス– 機械学習機械学習を活用したサービス
IoT
自立走行/運転支援

分析/推定

制御
外観検査

画像認識

機械学習

レコメンデーション

音声認識

言語認識

自動翻訳

文書検索エンジン

設備監視/認証

OCR

医療画像診断注目分野と技術開発の方向性• 画像認識を中心とした機械学習技術– 外観検査– 設備監視/認証– 自立走行/運転支援– OCR• 機械学習におけるコンピュータグラフィックス技術活用– 学習用CG画像データの作成– 評価用シミュレーション環境の構築

画像認識における機械学習の基本的な流れ

猫列車

カテゴリ整理
画像前処理
タグ付け

野菜

データセット作成

教師データ

テスト
データ

学習

トレーニング

分類器
未知の画像確認

画像データセット

猫

機械学習

推論結果

推論

画像データセットの特徴• 一定規模の画像データが必要– 数千枚〜数万枚– タグ情報付き• 事象の網羅性も重要

CompCars dataset

PubFig83 + LFW Dataset– 同じ場所で天候が異なる– 発生頻度が低い状況
NEU surface defect database機械学習におけるCG活用事例• 自動運転向け（物体認識用途）の事例– Virtual KITTI、SYNTHIA– VERTECHs

Virtual KITTI dataset• 画像データセットをCGで作成– 実測よりも低コストに量産– 多様なバリエーション– 実写画像に準じた画質

SYNTHIA Dataset機械学習向けCG制作のための仕組み作り• 〜2016年– リアルタイムグラフィックスを活用した画像データ生成• 持ち合わせのツールで最大限の品質で制作• 2017年〜– CG画像量産化のための制作手法検討– 学習に効果的な品質への合わせ込み手法検討– .目的：少量の実写画像サンプルに基づく学習用CG画像データ量産（数千枚〜数万枚のバリエーション画像）

もくじ• 背景と目的• CG制作のアプローチ• 課題• 解決方法• 実現手段• 実験と結果• まとめ

CG制作のアプローチ• 画像データを低コストに量産する– リアルタイムグラフィックスの活用• バリエーションを表現する– プロシージャル生成技術の活用• 実写画像に準じた品質にCG画像を合わせ込む– パラメータチューニングの実施リアルタイムグラフィックスの活用• -プロシージャル生成技術の活用

プロシージャル生成技術の活用

パラメータチューニングの実施
写真〇

簡易描画

×実写
レ× ゴ
× 判
定器

照明配置調整×
レンズ効果調整
カメラアングル変更〇

もくじ• 背景と目的• CG制作のアプローチ• 課題• 解決方法• 実現手段• 実験と結果• まとめ

機械学習向けCG制作の状況• 画像データの低コスト量産✓

CG

CG– リアルタイムグラフィックス
CG ✓• バリエーションの表現✓

実写– プロシージャル生成• CG画像品質の合わせ込み
×– パラメータチューニング
• 時間を要する

CGCGドメイン現状のパラメータチューニングの流れ
CGデータ

パラメータ設定値
カメラ位置10.2597.55-3.231

ライト位置

-50.5

7.55

-50.0

ライト明るさ

0.7

被写体位置

0.0

0.5

0.0

レンダリング

CGデータ修正

試行錯誤…

パラメータ調整
検討

CG画像

チューニング度合い
評価
例示写真（品質指標）

評価結果

パラメータチューニングの課題• 主観によるチューニング度合いの評価– 制作初期の要件決めをする上では重要– 合わせ込みはより明確な指標が必要• 試行錯誤の複雑化– パラメータ数の増加に伴う試行回数増加– 実験の網羅性• -試行錯誤を網羅的に素早くこなす手段が必要

もくじ• 背景と目的• CG制作のアプローチ• 課題• 解決方法• 実現手段• 実験と結果• まとめ

パラメータ自動チューニング技術の開発• チューニング度合いの定量評価– 目標品質を明確化する– 目標品質に対するズレを客観的に把握する• 試行錯誤の自動化– パラメータ探索の網羅性を維持して取りこぼしを減らす– 高感度パラメータの高精度な合わせ込み

パラメータ自動チューニングの流れ
…

…
CGデータ

…
…
…

カメラ位置 10.259
7.55-3.231
カメラ位置
ライト位置
10.2597.55-3.231
-50.5
7.55
-50.0
ライト位置 -50.5
7.55
-50.0
ライト位置
ライト明るさ
0.7
-50.5
7.55
-50.0
ライト明るさ 0.7
被写体位置
ライト明るさ
0.0
0.7
0.5
0.0
被写体位置 0.0
0.5
0.0
被写体位置 0.0
0.5
0.0

パラメータ群

レンダリング

CGデータ修正

パラメータ設定値
パラメータ設定値
カメラ位置 パラメータ設定値
10.2597.55-3.231

CG画像

試行錯誤の自動化…

チューニング度合い定量評価

パラメータ自動調整0.850.43

評価結果

0.0257…

例示写真（品質指標）

もくじ• 背景と目的• CG制作のアプローチ• 課題• 解決方法• 実現手段• 実験と結果• まとめ

パラメータ自動チューニングの要素技術• チューニング度合いの定量評価– 例示写真とCG画像の類似度で評価• 試行錯誤の自動化– 評価結果に基づくパラメータ自動調整

画像特徴量を用いた類似度計算

最適化問題を用いたパラメータの自動探索チューニング度合いの定量評価• 分類器から画像特徴量を抽出• 特徴量間の類似度※を「チューニング度合い」として使用
分類器(多層ニューラルネットワーク)

CG画像
画像特徴量

類似度

例示写真
画像特徴量

0.852456

類似度計算※ コサイン類似度

チューニング度合いの定量評価• Deep Features [B. Zhou, 2014]– 分類器の中間層出力を画像特徴量として使用
犬
猫
鳥
レゴ
列車

ピクセル
データ

…

画像

分類器（多層ニューラルネットワーク）

推論結果

猫
画像特徴量

チューニング度合い定量化の例

CG画像

0.855546

手書き画像

0.200546
0.135256

写真

0.587124
CG画像

CG画像

試行錯誤の自動化手法• 最適化問題を用いたパラメータ自動探索– 進化的アルゴリズム※を使用

例示画像

CGデータ
カメラ撮影位置の自動探索例※ 自己適応型差分進化SHADE [Tanabe 2013]

試行錯誤の自動化手法• 最適化問題を用いたパラメータ探索手法を採用– CAD/CAE等グラフィックス関連の技術/手法を調査（90’s〜）

GRABCAD Community

CAD(形状データ修正)

CAE(流体解析)

自動反復
曲面パラメータ更新

性能評価

翼断面の形状最適化（空力特性の改善）の例

SMART BLADE GmbH

もくじ
• 背景と目的• CG制作のアプローチ• 課題• 解決方法• 実現手段• 実験と結果
• まとめ

実験概要
• 目的
– パラメータ自動チューニングの効果検証• 実施内容– 例示写真の品質にCG画像を近づける• 実験対象– 外観検査を想定したシンプルな対象からスタート– レゴブロック• 製造ばらつきの少なさ、入手性高、撮影簡単• CGデータ制作コストも低

実験• 事前準備– レゴCGデータの作成– レゴ分類器の学習（チューニング度合い定量評価用）• 実験結果チューニング対象パラメータ•

レンダリング品質に与える影響が顕著で、編集頻度の高いものをピックアップ(全53変数)– レゴブロックの位置– カメラの位置

空間配置パラメータ– ライトの位置、明るさ、大きさ– 被写界深度（焦点距離、F値等）– 露光、色相、彩度、明度、ホワイトバランス、ガンマ

撮影カメラ特性パラメータ空間配置パラメータ• Maya 2017で仮想撮影環境を構築
カメラ

ライト（面光源）

ライト（平行光源）

ライト（面光源）

レゴブロックライト（面光源）

Brick Generator &Build A Brickカメラ特性パラメータ• YEBIS for Mayaを使って近似

グレア効果

色相変更

レンズボケ効果

実験• 事前準備– レゴCGデータの準備– レゴ分類器の学習（チューニング度合い定量評価用）• 実験結果まずレゴ写真を撮影• レゴブロックの撮影環境
Webカメラレゴブロック

回転台

レゴ写真データセットのカテゴリ• 26種類のレゴブロックを選定

レゴ写真データセットの構成
270枚

2X3_青

…

26種類
2X4_灰…
・・・

レゴ写真データセットを使って分類器を学習• レゴブロックの種類を判別する多層ニューラルネットワーク– Deep Learningで学習（ImageNet学習済みモデルからファインチューニング）
2X3_青
1X4_白
2X2_灰
2X3_赤
1X1_緑

…

…

レゴ分類器（多層ニューラルネットワーク）

推論結果
2X3_赤

画像特徴量

実験
• 事前準備– レゴCGデータの準備– レゴ分類器の学習（チューニング度合い定量評価用）• 実験結果パラメータ自動チューニング実験１

例示画像
レゴCGデータ（初期状態）

CG画像

例示画像の推論結果

パラメータ自動チューニング前のCG画像推論結果

×パラメータ自動チューニングの様子

パラメータ自動チューニング結果

例示画像
レゴCGデータ
Optimizer -predict;// Predicting rendered image's class... //// Predicted class: 4211387.Brick_2X2_MediumStoneGray(0.999987) //CG画像パラメータ自動チューニング後のCG画像推論結果✓パラメータ自動チューニング実験2
• ｇｄｓ

例示画像
レゴCGデータ

CG画像

例示画像の推論結果

CG画像の推論結果（自動チューニング前）×52

パラメータ自動チューニングの様子

パラメータ自動チューニング結果

Optimizer -predict;// Predicting rendered image's class... //// Predicted class: 4211387.Brick_2X2_MediumStoneGray(0.999987) //例示画像
レゴCGデータ

CG画像パラメータ自動チューニング後のCG画像推論結果

Optimizer -predict;// Predicting rendered image's class... //// [YEBIS] レンダー設定と異なる解像度でレンダリングします(効果が一致しない可能性があります) //// Predicted class:300221.Brick_2X3_BrightRed(0.994896) //// [YEBIS] レンダー設定と異なる解像度でレンダリングします(効果が一致しない可能性があります) //✓自動チューニング後にCGデータ編集✓自動チューニング後にCGデータ編集✓自動チューニング後にCGデータ編集

×

実験結果
• 例示画像とCG画像の差異– おおよそのライト方向/カメラ撮影姿勢を復元✓– 青味を帯びた色調• CG画像の推論結果✓– 自動チューニングによる改善効果を確認– チューニング後編集でバリエーション生成 ✓×✓

もくじ• 背景と目的• CG制作のアプローチ• 課題• 解決方法• 実現手段• 実験と結果• まとめ

結論• 機械学習向けCG画像データの品質改善手法を検討• CGパラメータの自動チューニング手法を開発• レゴブロックを使った検証実験を実施• 機械学習に役立つCG画像を作れる見通しを得た– 自動化による合わせ込み品質改善– バリエーション生成

今後の計画•

レゴブロックでの実験– 十分な数の実験– CG画像で学習 / 写真で推論•より実践に近い対象で自動チューニング検証– キズ/クラック写真 → プロシージャルテクスチャ– 人物画像 → 人体モデルリグ•

パラメータチューニング技術の改善– 実写とCG画像との差異の要因把握– チューニング処理の高速化