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
120
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
KDD2023学会参加報告
tereka114
2
350
Prompting Large Language Models with Answer Heuristics for Knowledge-based Visual Question Answering
tereka114
0
260
Mobile-Former: Bridging MobileNet and Transformer
tereka114
0
890
DER: Dynamically Expandable Representation for Class Incremental Learning
tereka114
0
120
Jupyter Notebookを納品した話
tereka114
0
220
Multi Scale Recognition with DAG-CNNs
tereka114
0
85
面倒くさいこと考えたくないあなたへ〜Tpotと機械学習〜
tereka114
0
170
Chainerを使ったらカノジョができたお話
tereka114
0
110
Colorful image colorization
tereka114
0
98
Other Decks in Programming
See All in Programming
2024 コーディング研修
ckazu
0
420
Behind VS Code Extensions for JavaScript / TypeScript Linnting and Formatting
unvalley
6
1.3k
Direct Style Effect Systems The Print[A] ExampleA Comprehension Aid
philipschwarz
PRO
0
300
Go製Webアプリケーションのエラーとの向き合い方大全、あるいはやっぱりスタックトレース欲しいやん / Kyoto.go #50
utgwkk
6
1.9k
Open AI APIを使う前に知っておきたいアカウントTier の話
akki_megane
0
110
Compose-View Interop in Practice (mDevCamp 2024)
stewemetal
0
170
Elm Form Validation
bkuhlmann
0
520
デフォルトにして至高、RubyMineの大好きな所
ruzia
0
1.1k
Documentation for users with AsciiDoc and Antora
ahus1
0
370
GNU Makeの使い方 / How to use GNU Make
kaityo256
PRO
12
4.2k
SIMD Parallel Programming with the Vector API
josepaumard
0
240
Deep Dive into React Stream/Serialize
mugi_uno
3
760
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
14
1.5k
What's new in Ruby 2.0
geeforr
337
31k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
660
120k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
21
1.6k
No one is an island. Learnings from fostering a developers community.
thoeni
16
2.1k
Learning to Love Humans: Emotional Interface Design
aarron
267
39k
Web development in the modern age
philhawksworth
203
10k
Principles of Awesome APIs and How to Build Them.
keavy
121
16k
Thoughts on Productivity
jonyablonski
60
3.9k
How To Stay Up To Date on Web Technology
chriscoyier
782
250k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
0
45
How to train your dragon (web standard)
notwaldorf
75
5.2k
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で、簡単にできる。