pythonで操るsas viyaの画像処理技術入門編
TRANSCRIPT
![Page 1: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/1.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Pythonで操るSAS Viyaの画像処理技術入門編~フィルタリングからマッチングまで~
SAS Institute Japan 株式会社
![Page 2: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/2.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Agenda
企業を取り巻く環境の変動 (画像技術関連)
画像処理の必要性増加
従来SASの画像処理機能 (例:手書き文字認識)
SAS Viyaの画像処理(image processing)機能
基本機能デモ(Pythonから操る、画像読込、フィルタリングからマッチングまで)
車体損傷箇所検出デモ
SAS Viyaで実現予定のCNNを用いた画像解析デモ
SAS Viyaとは、そのメリットとは!
![Page 3: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/3.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
企業を取り巻く環境の変動
AI、コグニティブ技術の進展
製品の品質向上生産コスト削減
H/W処理速度向上と下落する価格
顧客志向囲い込み、離反防止
高齢化社会医療費の増大
不正・犯罪増加手口の巧妙化
変化の時代に求められる能力とは....
![Page 4: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/4.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
画像処理技術の必要性増加
深層学習による画像解析精度向上
製品の欠陥検出精度向上
大量の画像データを高速に解析
画像検索、顔認証ターゲットマーケティング
医療費削減早期発見早期治療
顔認証による個人識別・不正検知
画像処理技術を今のビジネスに活かす
![Page 5: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/5.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
&画像処理
画像処理技術に対するSASのアプローチを過去、現在、未来に分けて紹介します。
![Page 6: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/6.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
画像処理に関するSASのテクノロジー過去~現在~未来
(例)オープンソース技術+SASで、手書き文字認識
Python & OpenCV
前処理グレイスケール化
2値化・・・
特徴量抽出ニューラルネットワーク(自己符号化器)
・・・
学習と識別データマイニング
・・・
Python & OpenCV
結果の表示特徴量マッチング
・・・
9
SAS
![Page 7: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/7.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
手書き数字の認識
• MNIST*1の手書き数字データ
http://yann.lecun.com/exdb/mnist/
• 0-9の手書き数字
• 28*28ピクセル
• グレースケール(0-255)
• 学習用の数字:60,000件
• 検証用の数字:10,000件
*1・・・The Mixed National Institute of Standard and Technologies
手書の「4」に見える画像は、数字の「4」である可能性が最も高いと精度高く判別
![Page 8: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/8.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
画像処理に関するSASのテクノロジー過去~現在~未来
画像読込~フィルタリング~特徴量抽出~マッチング
前処理グレイスケール化
2値化
・・・
特徴量抽出ニューラルネットワーク(自己符号化器)
・・・
学習と識別データマイニング
・・・
結果の表示特徴量マッチング
・・・
SASSAS SAS
SAS Viya
インメモリーテーブル イメージ(画像)型
SAS Viyaには、画像処理専用機能が搭載されています。
SAS Viyaだけで全てを実行可能
SAS Viyaでは「画像型」を新たにサポート
![Page 9: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/9.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
画像処理に関するSASのテクノロジーインメモリーテーブル:イメージ(画像)型
_id_ = イメージデータごとのユニークID値
_type_ = イメージファイルフォーマット(3文字の文字列)
_path_ = イメージデータファイルのフルパス
_size_ = イメージデータサイズ(バイト)
_image_ = イメージ全体のバイナリBLOB データ
.
.
.
.
![Page 10: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/10.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
画像処理に関するSASのテクノロジー主な画像処理専用機能
画像読込 画像フィルタリング 画像マッチング
画像比較
• イメージファイル• ZIPファイル• ディレクトリ階層内の上記ファイル
• URL
• バイラテラルフィルタ• ボックスフィルタ•画像ピラミッド• キャニーエッジ検出•輪郭検出•色空間変換• ガウシアンフィルタ• パッチ抽出• ラプラシアンフィルタ• メディアンフィルタ• モルフォロジー•画像の正規化
•画像の粒度変換•画像のサイズ変換• ソーベルフィルタ• 2値化(THRESHOLD)•画像変形(回転, 先鋭化, 色調, 明暗度, …)• etc
• テンプレートマッチング•特徴点マッチング(BRISK|ORB|ORB&BRISK)
•元画像とターゲット画像の比較(SSIM|PSNR)
![Page 11: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/11.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
SAS Viyaの画像処理機能画像フィルタリング / 画像検出 (一部抜粋)
• グレースケール
• バイラテラルフィルタ
• 2値化 (Thresholding)
• エッジ検出
• 輪郭検出
• 輪郭直線近似
• 外接矩形
• グループ化外接矩形
https://github.com/sassoftware/sas-viya-programming/blob/master/python/AX2016/Image%20Analytics%20Using%20SAS%20Viya.ipynb
![Page 12: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/12.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Demonstration 1Jupyter NotebookからPythonでSAS Viyaの画像処理実行
画像をメモリーへロード
![Page 13: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/13.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Demonstration 1
グレースケール化
![Page 14: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/14.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Demonstration 1
ノイズ削減:バイラテラルフィルタ
![Page 15: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/15.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Demonstration 12値化(Thresholding)
![Page 16: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/16.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Demonstration 1エッジ検出:ラプラシアンフィルタ
![Page 17: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/17.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Demonstration 1輪郭検出
![Page 18: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/18.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Demonstration 1外郭矩形
![Page 19: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/19.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Demonstration 2Jupyter NotebookからPythonでSAS Viyaの画像処理実行
![Page 20: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/20.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
CAS
c1 c2 c3 c4 c5 c6 c7 c8 C9
208.0 220.0 225.0 232.0 237.0 244.0 250.0 254.0 255.0
_channel1_ _channel2_ _channel3_ _channel4_ _source_id_ _reference_id_
0.00245 0.00481 0.00147 1.0 sor.jpg ref.jpg
loadImages
flattenImageTable
compareImages
Column jpg minWidth maxWidth … max3rdChannel
0 _image_ 1.0 704.0 704.0 … 255.0
colorJittering
colorShifting darken
horizontalFlipinvertPixelslighten
pyramidDown
pyramidUp
rotateRightsharpen verticalFlip
rotateLeft
augmentImages
summarizeImages
matchImages
saveimages
Demonstration 2SAS Viyaのインメモリー分析エンジン:CAS(Cloud Analytic Services)
![Page 21: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/21.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
CASloadImages
contour
Contour image is combination of: Convert_color Bilateral_filter Threshold Laplacian Contours
processImages
processImages
resize get_patch sobel normalize rescale
Add_constant Mutation_sharpHist_equal_global Hist_equal_addl Mutation_vert
morphology Box_filter Gaussian_filter Build_pyramidMedian_filter
Convert_color Bilateral_filter threshold Canny_edgelaplacian
Demonstration 2SAS Viyaのインメモリー分析エンジン:CAS(Cloud Analytic Services)
![Page 22: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/22.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Viyaの画像処理例マッチング:テンプレートマッチング
元画像
テンプレート画像
マッチング結果
![Page 23: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/23.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Viyaの画像処理例マッチング:特徴点マッチング
テンプレート画像 マッチング結果
画像上での特徴となる点(特徴点)を抽出し、マッチングすることで、画像が拡大、縮小や回転された形状でもマッチングが可能になります。
拡大 拡大と回転
右90°回転 左90°回転テンプレート画像
![Page 24: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/24.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
自動車保険会社:車体損傷度合解析
• 最大の課題 : データ品質と整合性
- その日の状態 (暗い, 明るい)
- 画像の解像度 (不鮮明, 拡大, 縮小)
- 画像のアングル (角度, 調整)
Use case
![Page 25: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/25.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
画像フィルタリング
画像サイズの標準化
グレースケール化
ノイズ削減と2値化
輪郭検出
![Page 26: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/26.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Demonstration 3Jupyter NotebookからPythonでSAS Viyaの画像処理実行画像をメモリーへロード&サイズ標準化
![Page 27: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/27.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Demonstration 3
グレースケール化
![Page 28: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/28.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Demonstration 3
ノイズ削減:バイラテラルフィルタ&Thresholding
![Page 29: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/29.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Demonstration 3
エッジ検出:ラプラシアンフィルタ
![Page 30: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/30.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
9
猫?
物体1 物体2
物体3
過去:手書文字認識は可能
過去:猫か犬かの判別は困難
現在:物体の認識や画像マッチングは可能
![Page 31: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/31.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
9
猫?
カモメ? やしの木?
山田花子?
物体が何であるかを精度高く認識できれば…
その実現のためには深層学習技術が必要
![Page 32: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/32.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
画像処理に関するSASのテクノロジー過去~現在~未来
画像読込~フィルタリング~深層学習~マッチング
前処理グレイスケール化
2値化
・・・
特徴量抽出~モデル作成~スコアリングCNN(畳み込みニューラルネットワーク)
結果の表示機械学習
データマイニング・・・
SASSAS SAS
SAS Viya
インメモリーテーブル イメージ(画像)型
2017年後半に予定されているSAS Viyaの新版には各種ディープラーニングの機能が搭載予定
現行の画像フィルタリング機能+CNNで画像認識精度を格段に向上可能
![Page 33: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/33.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Demonstration 4Jupyter NotebookからPythonでSAS Viyaの画像処理実行
画像をメモリーへロード
![Page 34: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/34.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Demonstration 4
CNN構造定義
入力層
畳込み層1畳込み層2
プーリング層
全結合層
出力層
![Page 35: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/35.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Demonstration 4
CNNモデル作成
検証用画像をメモリーへロード
スコアリング
![Page 36: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/36.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Demonstration 4
モデル精度評価
![Page 37: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/37.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Demonstration 4
事前に画像フィルタリングを行いモデル精度を改善しよう!
画像スケールの標準化&コントラストの正規化
![Page 38: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/38.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Demonstration 4
再学習・モデル再作成
![Page 39: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/39.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Demonstration 4
検証用画像もスケールの標準化&コントラストの正規化
再スコアリング
モデル精度評価
![Page 40: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/40.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Demonstration 4
さらに画像フィルタリングを行いモデル精度を改善しよう!
1画像ごとに4種類の異なる画像パターンを作成
![Page 41: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/41.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Demonstration 4
再学習・モデル再作成
再スコアリング
![Page 42: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/42.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
Demonstration 4
モデル精度評価
![Page 43: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/43.jpg)
Copyright © SAS Inst itute Inc. A l l r ights reserved.
SAS® Viya™
アナリティクスのための全く新しいプラットフォーム
オンプレミスまたはプライベート/パブリッククラウド
IaaS/PaaS/SaaS
様々な業務課題に柔軟に対応
スケーラビリティ
Public REST APIによるアプリケーション拡張・社内外システム連携
使い慣れた言語から直接利用(SAS, Python, R, Lua, Java)
ITガバナンス/アナリティクスガバナンス
アナリティクス・ライフサイクル全体をカバー
容易な環境管理
パフォーマンス・拡張性に優れた独自のインメモリテクノロジー
画像処理やテキスト解析を含む網羅的な機械学習・アナリティクス機能
高度な機能をセルフサービスで
画像解析は、SAS Viyaに搭載されている機能の一部にすぎません。
企業(組織)の標準分析プラットフォームとしてSAS Viyaは最適です。
![Page 44: Pythonで操るSAS Viyaの画像処理技術入門編](https://reader034.vdocuments.mx/reader034/viewer/2022052116/5a671bd77f8b9aaa098b4625/html5/thumbnails/44.jpg)
sas.com
Copyright © SAS Inst itute Inc. A l l r ights reserved.
https://www.sas.com/ja_jp/software/viya.html
Viya 検索