みんなのPython勉強会	#16	
Sep	7,	2016	
阿久津 剛史	
Start	Python	Club	
1	
私のPython学習奮闘記	#6	
 〜コンピュータビジョン編〜

自己紹介	
•  阿久津 剛史	
	@akucchan_world	
•  某メーカー勤務	
– 非プログラマ	
•  Python経験2年ちょい	
– まだまだ初心者ですorz	
2
Q1.	ポケモンGOはやりましたか?	
3	hCp://www.pokemongo.jp/
Q2.	画像検索を使ったことはありますか?	
4
Q3.	顔認識機能を使ったことはありますか?	
5	
CNN,	“Why	face	recogniOon	isn't	scary	--	yet”,	
hCp://ediOon.cnn.com/2010/TECH/innovaOon/07/09/face.recogniOon.facebook/
いずれもコンピュータビジョンが	
使われています	
6
コンピュータビジョンとは?	
コンピュータビジョン(computer	vision)は大雑把に言っ
て、「ロボットの目」を作る研究分野である。	
この分野はコンピュータが実世界の情報を取得する全
ての過程を扱うため、画像センシングのためのハード
ウェアから情報を認識するための人工知能的理論ま
で幅広く研究されている。また、近年ではコンピュータ
グラフィックスとコンピュータ・ビジョンの融合が注目を
集めている。	
7	
Wikipedia,	“コンピュータビジョン”	
hCps://ja.wikipedia.org/wiki/コンピュータビジョン
Pythonのコンピュータビジョンパッケージ	
8	
mahotas
『実践コンピュータビジョン』	
“Programming	Computer	Vision	with	Python”	(PCV)	
Jan	Erik	Solem		
(@jesolem)
1章 基本的な画像処理 	
2章 画像の局所記述子 	
3章 画像間の写像 	
4章 カメラモデルと拡張現実感 	
5章 多視点幾何 	
6章 画像のクラスタリング 	
7章 画像検索 	
8章 画像認識 	
9章 画像の領域分割 	
10章  OpenCV		
目次
1章 基本的な画像処理 	
2章 画像の局所記述子 	
3章 画像間の写像 	
4章 カメラモデルと拡張現実感 	
5章 多視点幾何 	
6章 画像のクラスタリング 	
7章 画像検索 	
8章 画像認識 	
9章 画像の領域分割 	
10章  OpenCV		
目次
1章 基本的な画像処理	
12
エンパイア・ステートビルの画像	
•  empire.jpg	
•  縦	800	px	*	横	569	px	
13
白黒画像(グレースケール)	
14	
•  濃度(強度)を256階調で表現	
•  0=白、255=黒	
125	 123	 123	 ...	
126	 125	 125	 ...	
127	 126	 125	 ...	
...	 ...	 ...	 ...	
白黒化	
(800,	569)
カラー画像(RGB)	
15	
188	 186	 186	 ...	
189	 188	 188	 ...	
189	 188	 187	 ...	
...	 ...	 ...	 ...	
133	 131	 131	 ...	
134	 133	 133	 ...	
135	 134	 133	 ...	
...	 ...	 ...	 ...	
88	 86	 86	 ...	
89	 88	 88	 ...	
88	 87	 86	 ...	
...	 ...	 ...	 ...	
=	 +	 +	
•  R(赤)、G(緑)、B(青)の合成	
•  各ピクセルの色強度は256階調	
R	 G	 B	
(800,	569,	3)	 (800,	569)	 (800,	569)	 (800,	569)
2章 画像の局所記述子	
16
2つの写真は同じですか?	
17
2つの写真は同じですか?	
18
2つの写真は同じですか?	
19
マシンは特徴量を使う	
20
画像の特徴量	
PCVで扱う2つの特徴量(記述子) 	
21	
Harrisコーナー	
記述子	
HarrisとStephensによって考案されたコー
ナー(角)の検出アルゴリズム。画像の勾配
を計算して、ピクセルごとに特徴を抽出する。	
SIFT特徴量	
Scale	Invariant	Feature	Transform(スケール
不変特徴量変換)。David	Loweが考案した
特徴量抽出法。スケール、回転、明度に対
して不変でロバストな特徴抽出ができる。
3章 画像間の写像	
22
顔の画像の位置合わせ	
23	
•  J.	K.	Keller氏の顔画像データセット	
•  16年間毎日、顔写真を撮影した
手順	
① 制御点(両目と口の位置)を読み込む	
② 顔画像の位置を補正する	
③ 画像データの平均を取る	
④ 主成分分析(PCA)をする	
	
file:	pcv_03_2_jkfaces.ipynb	
24
パノラマ写真を作る
手順	
① 画像ファイルを読み込む	
② SIFT特徴量を計算する	
③ RANSACでホモグラフィーを推定する	
④ ホモグラフィーに応じて画像を変形する	
⑤ 対応点に合わせて画像を重ねる	
	
file:	pcv_03_3_panorama.ipynb	
26
7章 画像の検索	
27
ケンタッキー大学	
28
物体認識ベンチマークデータセット	
29	
•  4枚1組の画像データセット
画像検索のデモ	
30	
① 画像の特徴をSIFT特徴量で記述する	
② SIFT特徴量をBoVWとして、データベースに保存す
る	
③ 画像ボキャブラリの中から、類似する画像をランキ
ングして表示する。
まとめ	
•  『実践コンピュータビジョン』を題材として、コンピュー
タビジョンの基本をプログラミングしながら、学びまし
た。	
•  Pillowを軸にして、豊富なPythonパッケージを使って、
いろいろなアプリケーション開発ができます。	
•  実用上はOpenCVの利用やJavaScriptなどほかの言
語による開発が必要になる場合もあると思います。

More Related Content

PDF
S14 t0 introduction
PDF
S15 t0 introduction
PPTX
S13 t0 introduction
PDF
プログラミング学習とScratch raspi python
PDF
S20 t1 stapyのこれまでとこれから
PDF
S18 t0 introduction
PPTX
Stapy#17LT
PDF
チームで活用するAnaconda入門
S14 t0 introduction
S15 t0 introduction
S13 t0 introduction
プログラミング学習とScratch raspi python
S20 t1 stapyのこれまでとこれから
S18 t0 introduction
Stapy#17LT
チームで活用するAnaconda入門

What's hot (20)

PPTX
Python入門者の集い #6 Lightning Talk
PDF
Introduction
PDF
S01 t1 tsuji_pylearn_ut_01
ODP
stapy#23 LT
PDF
S12 t1 python学習奮闘記#5
PPTX
Pynyumon03 LT
PPTX
Pythonのプロファイリング
PDF
Python札幌 2012/06/17
PDF
OSS Study#19_LT
PDF
S09 t0 orientation
PDF
WindowsでPython
PDF
PyLadies Tokyo - 初心者向けPython体験ワークショップ開催の裏側
PDF
S10 t1 spc_by_nowfromnow
PPTX
Pythonスタートアップ勉強会201109 python入門
PDF
本気でPythonで宛名書きした話
PPTX
Python エンジニアの作り方 2011.08 #pyconjp
PDF
サードパーティパッケージの歩き方
PDF
Python学習奮闘記#07 webapp
PDF
S10 t0 orientation
PPTX
オリエンテーション
Python入門者の集い #6 Lightning Talk
Introduction
S01 t1 tsuji_pylearn_ut_01
stapy#23 LT
S12 t1 python学習奮闘記#5
Pynyumon03 LT
Pythonのプロファイリング
Python札幌 2012/06/17
OSS Study#19_LT
S09 t0 orientation
WindowsでPython
PyLadies Tokyo - 初心者向けPython体験ワークショップ開催の裏側
S10 t1 spc_by_nowfromnow
Pythonスタートアップ勉強会201109 python入門
本気でPythonで宛名書きした話
Python エンジニアの作り方 2011.08 #pyconjp
サードパーティパッケージの歩き方
Python学習奮闘記#07 webapp
S10 t0 orientation
オリエンテーション
Ad

Viewers also liked (20)

PDF
Xamarinの歩き方
PPTX
Chainerで学ぶdeep learning
PDF
S05_T0_orientation
PDF
S05 t1 midorikawa
PDF
Pythonで電卓アプリ(デスクトップ)を作成する
PPTX
近 似值
PPTX
非エンジニアの私でもPythonの勉強会に 参加したらしあわせになれたというお話
PDF
Python for Data Science
PDF
入社式でした話2015
PDF
PostgreSQLとPythonとSQL
PDF
bottle.pyをつかったチャットアプリ作成チュートリアル
PDF
tsuji m
PPTX
20161027 robot seminar in Nagasaki
PPTX
Jupyter NotebookとChainerで楽々Deep Learning
PPT
Deep Auto-Encoder Neural Networks in Reiforcement Learnning (第 9 回 Deep Learn...
PPTX
超音波センサーを用いた4点杖の使用者のコンテキスト推定法の提案
PPTX
筋電制御を支援するIoTプラットフォームと 把持戦略の構築
PDF
ホームエレクトロニクスと身近なセンサ
PDF
2N2-04:3次元電子マットと人体パターン認証を用いた予測型見守り機能 安川徹(nkワークス株式会社)
PPTX
Pre
Xamarinの歩き方
Chainerで学ぶdeep learning
S05_T0_orientation
S05 t1 midorikawa
Pythonで電卓アプリ(デスクトップ)を作成する
近 似值
非エンジニアの私でもPythonの勉強会に 参加したらしあわせになれたというお話
Python for Data Science
入社式でした話2015
PostgreSQLとPythonとSQL
bottle.pyをつかったチャットアプリ作成チュートリアル
tsuji m
20161027 robot seminar in Nagasaki
Jupyter NotebookとChainerで楽々Deep Learning
Deep Auto-Encoder Neural Networks in Reiforcement Learnning (第 9 回 Deep Learn...
超音波センサーを用いた4点杖の使用者のコンテキスト推定法の提案
筋電制御を支援するIoTプラットフォームと 把持戦略の構築
ホームエレクトロニクスと身近なセンサ
2N2-04:3次元電子マットと人体パターン認証を用いた予測型見守り機能 安川徹(nkワークス株式会社)
Pre
Ad

Similar to S16 t1 python学習奮闘記#6 (20)

PDF
[PyConJP2019]Pythonで切り開く新しい農業
PPTX
Pythonでターミナルに画像表示
PDF
S08 t0 orientation
PDF
人間のためのpython #stapy68 2021-04-14
PPTX
211120 他人の書いたPythonスクリプトをステップ実行で理解する
KEY
Windowsにpythonをインストールしてみよう
PDF
こわくないPython
PDF
Pythonでジョブキューシステムを作った
PDF
[クリエイティブハント2018]LT 道場破りしたらできちゃった/// #ゴーハント
PDF
たった一ファイルの python スクリプトから始めるOSS開発入門 / PyCon JP 2016
PDF
RaspberryPiで日本の子供たちにプログラミングのパッションを伝えよう!
PDF
CPythonを読もう
PPTX
Bottle使ってPython学習一緒にはじめませんか?
PDF
Python for Beginners ( #PyLadiesKyoto Meetup )
PDF
Pythonでブラウザをいっぱい動かしたい
PDF
第1回プログラミング大学in福岡
PDF
Tech-Circle Pepperで機械学習体験ハンズオン勉強会inアトリエ秋葉原
PDF
Django で始める PyCharm 入門
PDF
PredictionIOのPython対応計画
PDF
make_information_search.pdf
[PyConJP2019]Pythonで切り開く新しい農業
Pythonでターミナルに画像表示
S08 t0 orientation
人間のためのpython #stapy68 2021-04-14
211120 他人の書いたPythonスクリプトをステップ実行で理解する
Windowsにpythonをインストールしてみよう
こわくないPython
Pythonでジョブキューシステムを作った
[クリエイティブハント2018]LT 道場破りしたらできちゃった/// #ゴーハント
たった一ファイルの python スクリプトから始めるOSS開発入門 / PyCon JP 2016
RaspberryPiで日本の子供たちにプログラミングのパッションを伝えよう!
CPythonを読もう
Bottle使ってPython学習一緒にはじめませんか?
Python for Beginners ( #PyLadiesKyoto Meetup )
Pythonでブラウザをいっぱい動かしたい
第1回プログラミング大学in福岡
Tech-Circle Pepperで機械学習体験ハンズオン勉強会inアトリエ秋葉原
Django で始める PyCharm 入門
PredictionIOのPython対応計画
make_information_search.pdf

More from Takeshi Akutsu (20)

PDF
みんなのPython勉強会#111 LT資料 "AIとサステナビリティについて"
PDF
万年ビギナーによるPythonプログラミングのリハビリ計画
PPTX
Stapyの6年~本との出会いから生まれた技術コミュニティ~
PPTX
Start Python Club 2020年活動報告
PPTX
みんなのPython勉強会#59 Intro
PDF
On the Necessity and Inapplicability of Python
PDF
Stapyユーザーガイド
PDF
stapy_fukuoka_01_akutsu
PDF
Python初心者が4年で5000人のコミュニティに作ったエモい話
PDF
Scipy Japan 2019参加レポート
PDF
Scipy Japan 2019の紹介
PDF
みんなのPython勉強会 in 長野 #3, Intro
PDF
Introduction
PPTX
みんなのPython勉強会#35 まとめ
PDF
モダンな独学の道。そうだ、オープンソースでいこう!
PDF
LT_by_Takeshi
PDF
Orientation
PDF
Introduction
PDF
プログラミング『超入門書』から見るPythonと解説テクニック
PPTX
We are OSS Communities: Introduction of Start Python Club
みんなのPython勉強会#111 LT資料 "AIとサステナビリティについて"
万年ビギナーによるPythonプログラミングのリハビリ計画
Stapyの6年~本との出会いから生まれた技術コミュニティ~
Start Python Club 2020年活動報告
みんなのPython勉強会#59 Intro
On the Necessity and Inapplicability of Python
Stapyユーザーガイド
stapy_fukuoka_01_akutsu
Python初心者が4年で5000人のコミュニティに作ったエモい話
Scipy Japan 2019参加レポート
Scipy Japan 2019の紹介
みんなのPython勉強会 in 長野 #3, Intro
Introduction
みんなのPython勉強会#35 まとめ
モダンな独学の道。そうだ、オープンソースでいこう!
LT_by_Takeshi
Orientation
Introduction
プログラミング『超入門書』から見るPythonと解説テクニック
We are OSS Communities: Introduction of Start Python Club

S16 t1 python学習奮闘記#6