Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
How to use scikit-image for data augmentation
Search
tereka114
March 16, 2022
Programming
0
160
How to use scikit-image for data augmentation
第33回コンピュータビジョン勉強会の資料です。内容は、scikit-imageを使ったData Augmentationの方法です。
tereka114
March 16, 2022
Tweet
Share
More Decks by tereka114
See All by tereka114
Harnessing Large Language Models for Training-free Video Anomaly Detection
tereka114
1
1.4k
KDD2023学会参加報告
tereka114
2
450
Prompting Large Language Models with Answer Heuristics for Knowledge-based Visual Question Answering
tereka114
0
320
Mobile-Former: Bridging MobileNet and Transformer
tereka114
0
990
DER: Dynamically Expandable Representation for Class Incremental Learning
tereka114
0
140
Jupyter Notebookを納品した話
tereka114
0
300
Multi Scale Recognition with DAG-CNNs
tereka114
0
90
面倒くさいこと考えたくないあなたへ〜Tpotと機械学習〜
tereka114
0
200
Chainerを使ったらカノジョができたお話
tereka114
0
140
Other Decks in Programming
See All in Programming
What you can do with Ruby on WebAssembly
kateinoigakukun
0
160
REXML改善のその後
naitoh
0
190
rbs-inlineを導入してYARDからRBSに移行する
euglena1215
1
270
『ドメイン駆動設計をはじめよう』中核の業務領域
masuda220
PRO
5
980
From Idea to IDE: Developing Plugins for Android Studio
thisaay
1
170
Debugging: All you need to know (for simultaneous interpreting)
jmatsu
2
740
Modular Monolith Go Server with GraphQL Federation + gRPC
110y
1
580
What is Parser
yui_knk
9
4.1k
Ebitengineの1vs1ゲーム WebRTCの活用
ponyo877
0
370
Rustではじめる負荷試験
skanehira
5
1.2k
unique パッケージから学ぶ interning と weak reference @ Asakusa.go#3
karamaru
2
790
Kotlin 2.0 and Beyond
antonarhipov
2
150
Featured
See All Featured
The Mythical Team-Month
searls
218
43k
Designing for humans not robots
tammielis
248
25k
Large-scale JavaScript Application Architecture
addyosmani
508
110k
What’s in a name? Adding method to the madness
productmarketing
PRO
21
3k
The Pragmatic Product Professional
lauravandoore
31
6.2k
How to name files
jennybc
75
98k
Debugging Ruby Performance
tmm1
72
12k
The Cost Of JavaScript in 2023
addyosmani
42
5.6k
A designer walks into a library…
pauljervisheath
201
24k
How To Stay Up To Date on Web Technology
chriscoyier
786
250k
Facilitating Awesome Meetings
lara
49
5.9k
Code Reviewing Like a Champion
maltzj
517
39k
Transcript
How to use scikit-image for data augmentation @tereka114
自己紹介 1. 山本 大輝(@tereka114) 2. のんびりしているエンジニアの日記(Blog) 1. http://nonbiri-tereka.hatenablog.com/ 3. Acroquest
Technology株式会社 4. データ分析のお仕事しています。 1. 画像処理、自然言語処理
Outline 1. Scikit-imageとは何か 2. Data Augmentationとは何か 3. Data Augmentationで使える関数の紹介 1.
画像の読み込み 2. アフィン変換 3. ヒストグラム正規化 4. Numpyの便利関数紹介
Outline 1. Scikit-imageとは何か 2. Data Augmentationとは何か 3. Data Augmentationで使える関数の紹介 1.
画像の読み込み 2. アフィン変換 3. ヒストグラム正規化 4. Numpyの便利関数紹介
Scikit-imageとは何か? 1. Scikit-imageは画像処理のライブラリ。 2. 因みにscikitとは、scipy toolkitを示していて、 特にこのライブラリは広く使われている。 3. 実は気にしていないだけで、案外バックエン ドでは動いていることがある。
CaffeのData Augmentation
Scikit-imageの良い点 1. Installが簡単 1. Sudo pip install scikit-image 2. 基本的な操作はNumpyの関数で可能
1. 簡単に行列演算を実施することができる。
Scikit-imageでできること 1. 画像の入出力(当たり前) 2. 画像の変換 1. Histogram normalization、Affine Transform 3.
特徴量抽出 1. Local Binary Pattern, Histogram of Orientation
Scikit-imageでできること 1. 画像の入出力(当たり前) 2. 画像の変換 1. Histogram normalization、Affine Transform 3.
特徴量抽出 1. Local Binary Pattern, Histogram of Orientation
Outline 1. Scikit-imageとは何か 2. Data Augmentationとは何か 3. Data Augmentationで使える関数の紹介 1.
画像の読み込み 2. アフィン変換 3. ヒストグラム正規化 4. Numpyの便利関数紹介
Data Augmentation 1. データに対して情報を加えること。 2. 画像に対しては、元画像に対して回転、平 行移動、スケール変更などの情報を加える。 3. Kaggleではよく使われる方法 4.
AlexNetの元論文でも使われている。
Example of Data Augmentation 引用元:https://cesarlaurent.wordpress.com/2015/02/19/29/
Example of Data Augmentation 引用元:https://cesarlaurent.wordpress.com/2015/02/19/29/
Outline 1. Scikit-imageとは何か 2. Data Augmentationとは何か 3. Data Augmentationで使える関数の紹介 1.
画像の読み込み 2. アフィン変換 3. ヒストグラム正規化 4. Numpyの便利関数紹介
画像の読み込み 1. skimage.io.imreadでファイル名を第一引数 に使うと可能です。 2. 読みこんだ画像はnumpy.arrayなので行列 計算はそのまま可能 3. OpenCVと併用する場合は注意、行列の並び 順はRGB。(OpenCVはBGR)
画像の読み込み 1. Scikit-imageでの画像を読み込み
アフィン変換 1. 平行移動を伴う線形変換のこと 1. 「並行移動」・「回転」・「拡大・縮小」が可能 2. パラメータを与えるだけで簡単にできる。 1. Scale:スケールの変換 2.
Rotate:回転 3. Translated:平行移動
アフィン変換 Affine変換の行列を作成 rotateはradian 線形変換
ヒストグラム正規化 1. ヒストグラムを平滑化することによって、コン トラストを調整することができる。 1. このコントラスト調整によって、精度がよくな ることも・・・
ヒストグラム正規化
ヒストグラム正規化
Numpyの便利関数紹介 1. np.random.randomとnp.random.binomialを 組み合わせると、ノイズが作れる。 2. Transpose関数で転置できる。 1. 多くのDeepLearningライブラリでは、 channel,height,widthの順番を求められる。 2.
scikit-imageの画像はheight,width,channel 3. img.transpose(2,0,1)とすると期待する入力にな る。
Numpyの便利関数紹介 1. whereを使うと一定以上の値を抽出して、定 数に変換など可能 1. 値が0.5より高い箇所を1とする。 1. x[np.where(x > 0.5)]
= 1 2. 画像自体はnumpyの行列の為、以下の方法 で、画像を切り取ることが可能 1. img = img[10:10 + 224]
まとめ 1. scikit-imageでData Augmentationをやってみ ようの紹介です。 2. Data Augmentationは画像処理(特に認識) で使われ、成果をあげている。 3.
Scikit-imageで、簡単にできる。