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
180
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
トラブルがあったコンペに学ぶデータ分析
tereka114
2
610
Harnessing Large Language Models for Training-free Video Anomaly Detection
tereka114
1
1.4k
KDD2023学会参加報告
tereka114
2
490
Prompting Large Language Models with Answer Heuristics for Knowledge-based Visual Question Answering
tereka114
0
340
Mobile-Former: Bridging MobileNet and Transformer
tereka114
0
1k
DER: Dynamically Expandable Representation for Class Incremental Learning
tereka114
0
150
Jupyter Notebookを納品した話
tereka114
0
340
Multi Scale Recognition with DAG-CNNs
tereka114
0
98
面倒くさいこと考えたくないあなたへ〜Tpotと機械学習〜
tereka114
0
210
Other Decks in Programming
See All in Programming
NSOutlineView何もわからん:( 前編 / I Don't Understand About NSOutlineView :( Pt. 1
usagimaru
0
270
Dev ContainersとGitHub Codespacesの素敵な関係
ymd65536
1
140
2024/11/8 関西Kaggler会 2024 #3 / Kaggle Kernel で Gemma 2 × vLLM を動かす。
kohecchi
4
550
PLoP 2024: The evolution of the microservice architecture pattern language
cer
PRO
0
2.3k
Googleのテストサイズを活用したテスト環境の構築
toms74209200
0
300
ふかぼれ!CSSセレクターモジュール / Fukabore! CSS Selectors Module
petamoriken
0
120
イベント駆動で成長して委員会
happymana
1
260
Amazon Qを使ってIaCを触ろう!
maruto
0
370
シェーダーで魅せるMapLibreの動的ラスタータイル
satoshi7190
1
440
現場で役立つモデリング 超入門
masuda220
PRO
15
3.1k
LLM生成文章の精度評価自動化とプロンプトチューニングの効率化について
layerx
PRO
2
170
Why Jakarta EE Matters to Spring - and Vice Versa
ivargrimstad
0
580
Featured
See All Featured
Building Adaptive Systems
keathley
38
2.3k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9k
Statistics for Hackers
jakevdp
796
220k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
109
49k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
810
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
505
140k
Designing on Purpose - Digital PM Summit 2013
jponch
115
7k
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で、簡単にできる。