Submit Search
勉強会 Cvml python基礎
Download as PPTX, PDF
4 likes
685 views
真
真哉 杉野
コンピュータビジョン講習会用資料です。 pythonの基礎講座について
Technology
Read more
1 of 41
Download now
Downloaded 14 times
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
More Related Content
What's hot
(20)
PPTX
Pythonの環境導入 2014年春季版
Katsuhiro Morishita
PDF
Pythonを取り巻く開発環境 #pyconjp
Yoshifumi Yamaguchi
PDF
scikit-learnを用いた機械学習チュートリアル
敦志 金谷
PDF
第1回python勉強会
Yoshio Shimomura
PDF
サードパーティパッケージの歩き方
Takesxi Sximada
PPTX
Python札幌201406
Shinya Okano
PDF
BPStudy#54 そろそろPython3
Atsushi Odagiri
PPTX
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版
Katsuhiro Morishita
PDF
パッケージングの今と未来
Atsushi Odagiri
PPTX
Python エンジニアの作り方 2011.08 #pyconjp
Takeshi Komiya
PPTX
Pythonスタートアップ勉強会201109 python入門
Takayuki Shimizukawa
PDF
Python & PyConJP 2014 Report
gree_tech
PDF
なぜ科学計算にはPythonか?
Aki Ariga
PDF
次世代言語 Python による PyPy を使った次世代の処理系開発
shoma h
POTX
素振りのススメ at Python入門者の集い
Takayuki Shimizukawa
PDF
WindowsでPython
drillan
PDF
Python × Herokuで作る 雑談slack bot
dcubeio
PDF
Pyconjp2016 pyftplib
Shinya Okano
PDF
スクレイピングとPython
Hironori Sekine
PPTX
Stapy#17LT
drillan
Pythonの環境導入 2014年春季版
Katsuhiro Morishita
Pythonを取り巻く開発環境 #pyconjp
Yoshifumi Yamaguchi
scikit-learnを用いた機械学習チュートリアル
敦志 金谷
第1回python勉強会
Yoshio Shimomura
サードパーティパッケージの歩き方
Takesxi Sximada
Python札幌201406
Shinya Okano
BPStudy#54 そろそろPython3
Atsushi Odagiri
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版
Katsuhiro Morishita
パッケージングの今と未来
Atsushi Odagiri
Python エンジニアの作り方 2011.08 #pyconjp
Takeshi Komiya
Pythonスタートアップ勉強会201109 python入門
Takayuki Shimizukawa
Python & PyConJP 2014 Report
gree_tech
なぜ科学計算にはPythonか?
Aki Ariga
次世代言語 Python による PyPy を使った次世代の処理系開発
shoma h
素振りのススメ at Python入門者の集い
Takayuki Shimizukawa
WindowsでPython
drillan
Python × Herokuで作る 雑談slack bot
dcubeio
Pyconjp2016 pyftplib
Shinya Okano
スクレイピングとPython
Hironori Sekine
Stapy#17LT
drillan
Similar to 勉強会 Cvml python基礎
(20)
KEY
ひのきのぼうだけで全クリ目指す
AromaBlack
KEY
Hello World Python featuring GAE
Maito Kuwahara
PDF
はじめてのPython
Katsumi Honda
PPTX
Wacode5thでのpython講義資料
丈 宮本
PPTX
2017/12/21 虎の穴 Python勉強会
虎の穴 開発室
PDF
OSS Study#19_LT
NaoY-2501
PPTX
(python)勉強会のすすめ
Kioto Hirahara
PDF
Introduction to Numpy (and Python) [JPN]
MasaruOinaga
PDF
Introduction Pycon2010
(shibao)芝尾 (kouichiro)幸一郎
PDF
Lispmeetup #53 PythonベースのLisp方言、 Hyのすすめ
Satoshi imai
PDF
LLdeade Python Language Update
Atsushi Shibata
PDF
PyPy 紹介
shoma h
PPT
Pythonintro
Mikio Kubo
PDF
Pythonで始めるDropboxAPI
Daisuke Igarashi
PDF
Lisp tutorial for Pythonista : Day 2
Ransui Iso
PDF
DATUM STUDIO PyCon2016 Turorial
Tatsuya Tojima
PDF
Lisp tutorial for Pythonista : Day 1
Ransui Iso
PPTX
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
Katsuhiro Morishita
PDF
おまえらこのライブラリ使ってないの? m9 (2013-07)
Toru Furukawa
ODP
Introduction of Python
Tomoya Nakayama
ひのきのぼうだけで全クリ目指す
AromaBlack
Hello World Python featuring GAE
Maito Kuwahara
はじめてのPython
Katsumi Honda
Wacode5thでのpython講義資料
丈 宮本
2017/12/21 虎の穴 Python勉強会
虎の穴 開発室
OSS Study#19_LT
NaoY-2501
(python)勉強会のすすめ
Kioto Hirahara
Introduction to Numpy (and Python) [JPN]
MasaruOinaga
Introduction Pycon2010
(shibao)芝尾 (kouichiro)幸一郎
Lispmeetup #53 PythonベースのLisp方言、 Hyのすすめ
Satoshi imai
LLdeade Python Language Update
Atsushi Shibata
PyPy 紹介
shoma h
Pythonintro
Mikio Kubo
Pythonで始めるDropboxAPI
Daisuke Igarashi
Lisp tutorial for Pythonista : Day 2
Ransui Iso
DATUM STUDIO PyCon2016 Turorial
Tatsuya Tojima
Lisp tutorial for Pythonista : Day 1
Ransui Iso
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
Katsuhiro Morishita
おまえらこのライブラリ使ってないの? m9 (2013-07)
Toru Furukawa
Introduction of Python
Tomoya Nakayama
Ad
Recently uploaded
(11)
PDF
SIG-AUDIO 2025 Vol.02 オンラインセミナー 「GDC2025 オーディオ報告会」SIG-Audio_GDC2024_報告会資料_増野さ...
IGDA Japan SIG-Audio
PDF
第3回デジタル理学療法学会のシンポジウム「デジタル理学療法の組織活用:教育・管理・研究を繋ぐ新たな地平」での話題提供
Matsushita Laboratory
PPTX
オープンソース界隈の利用者や技術者から見たオープンソースEDAとは? What is open source EDA from the perspecti...
Industrial Technology Research Institute (ITRI)(工業技術研究院, 工研院)
PDF
漁船に搭載されている電子装備と漁法について_VRC海洋学研究会_海のLT会発表資料
Yuuitirou528 default
PDF
go tool と Minimal Version Selection アルゴリズム
Keisuke Ishigami
PPTX
新卒・中途採用者向け採用ピッチ資料2025年7月版(20250702).pptx
Official74
PDF
AIツールを使った研究の効率化 Improving Research Efficiency with AI Tools
Tohoku University
PDF
SIG-AUDIO 2025 Vol.02 オンラインセミナー 「GDC2025 オーディオ報告会」SIG-Audio_GDC2025_報告会資料_渡辺さ...
IGDA Japan SIG-Audio
PDF
2023年版Web3技術の理想と現実
Syuhei Hiya
PDF
第3回デジタル理学療法研究会学術大会シンポジウム「デジタル理学療法の組織活用:教育・管理・研究を繋ぐ新たな地平」の講演資料.
Matsushita Laboratory
PDF
API認可を支えるKeycloakの基本と設計の考え方 ~ OAuth/OIDCによるAPI保護のベストプラクティス ~
Hitachi, Ltd. OSS Solution Center.
SIG-AUDIO 2025 Vol.02 オンラインセミナー 「GDC2025 オーディオ報告会」SIG-Audio_GDC2024_報告会資料_増野さ...
IGDA Japan SIG-Audio
第3回デジタル理学療法学会のシンポジウム「デジタル理学療法の組織活用:教育・管理・研究を繋ぐ新たな地平」での話題提供
Matsushita Laboratory
オープンソース界隈の利用者や技術者から見たオープンソースEDAとは? What is open source EDA from the perspecti...
Industrial Technology Research Institute (ITRI)(工業技術研究院, 工研院)
漁船に搭載されている電子装備と漁法について_VRC海洋学研究会_海のLT会発表資料
Yuuitirou528 default
go tool と Minimal Version Selection アルゴリズム
Keisuke Ishigami
新卒・中途採用者向け採用ピッチ資料2025年7月版(20250702).pptx
Official74
AIツールを使った研究の効率化 Improving Research Efficiency with AI Tools
Tohoku University
SIG-AUDIO 2025 Vol.02 オンラインセミナー 「GDC2025 オーディオ報告会」SIG-Audio_GDC2025_報告会資料_渡辺さ...
IGDA Japan SIG-Audio
2023年版Web3技術の理想と現実
Syuhei Hiya
第3回デジタル理学療法研究会学術大会シンポジウム「デジタル理学療法の組織活用:教育・管理・研究を繋ぐ新たな地平」の講演資料.
Matsushita Laboratory
API認可を支えるKeycloakの基本と設計の考え方 ~ OAuth/OIDCによるAPI保護のベストプラクティス ~
Hitachi, Ltd. OSS Solution Center.
Ad
勉強会 Cvml python基礎
1.
http://www.globalwalkers.co.jp/ Global Walkers, inc. 【
GWゼミ #0 】 Pythonの基礎について Global Walkers 杉野
2.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Pythonでプログラムを書きたい! このセクションの目的
3.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Pythonの基礎に入る前に 「スクリプトが書ける」ということへのニーズとは? ■
作業する時に、ちょっとした便利機能を作ることができる 3
4.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Pythonを勉強したいけど ■
公式ドキュメントを見ても、何をどこから見ていいやら・・・ ■ チュートリアルに沿って進んでいると、とっても時間がかかる・・・ ■ なかなか、目的に到達しない・・・ 4
5.
http://www.globalwalkers.co.jp/ Global Walkers, inc. やる気を高めよう! 5 【
Python チュートリアルより抜粋 】 コンピュータを使って様々な作業をしていたら、自動化したい作業が出てくるでしょう。たとえば、たくさんのテキストファイルで検索-置換操作を行いたい、 大量の写真ファイルを込み入ったやりかたでリネームまたは整理したいといったものです。ひょっとすると、小さなカスタムデータベースや、何かに特化した GUIアプリケーション、シンプルなゲームを作りたいかもしれません。 もしあなたがプロのソフト開発者なら、C/C++/Java ライブラリを扱う必要があって、通常の write/compile/test/re-compile サイクルが遅すぎると感じるかもしれ ません。ひょっとするとそのようなライブラリのテストスイートを書いていて、テスト用のコードを書くのにうんざりしているかもしれません。拡張言語を使え るプログラムを書いていて、アプリケーションのために新しい言語一式の設計と実装をしたくないと思っているかもしれません。 Pythonはそんなあなたのための言語です。
6.
http://www.globalwalkers.co.jp/ Global Walkers, inc. 今回の目的 ■
「書いてみる」事の敷居を下げる ■ 調べるときのインデックスや引き出しを作る! 6 Pythonの言語仕様を全て話すわけではありません! 言語仕様なんて暗記するものでもありません!
7.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Pythonとは?
8.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Pythonとは ■
インタプリタ型のスクリプト言語 ■ オブジェクト指向言語 ■ 科学演算や機械学習で利用可能なライブラリが多数用意されている ■ Pythonで作られているもの Google App Engine, YouTube, DropBox, etc… 8
9.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Python
Version には 2系と3系があるけど ■ 今回の講習では python 3系で進みますが・・・ → 公式ドキュメントでは、2系の方がライブラリサポートが多いと書いてある → やりたいことに即して調べてからバージョンを決めましょう・・・ ■ Python3で何が変わったの? 9 printが関数に dict の keys, items, valuesメソッドはイテレート可能なオブジェクトを返す 文字列の標準の方がUnicode型に統一 etc …
10.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Python
を書いてみよう ■ 実際のコードを見ながら、キーポイントをピックアップしていきます ■ 「Python を書ける人」と思われるための初歩
11.
http://www.globalwalkers.co.jp/ Global Walkers, inc. テーマ ■
file_list.pyというスクリプトを作って 指定したディレクトリの中に格納されている ファイル名をターミナルに表示してみよう 11
12.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Update
1 ■ まずは → コマンドラインの第一引数を取る → ディレクトリ内のファイル名を取得してみる 12
13.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Update
1 13
14.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Update
1: 詳細 14 globモジュールのglob関数に検索したいディレクトリ名を渡すと、 その配下にあるファイルの一覧がリスト(厳密にはイテレータ)で返されます。 コマンド引数の値は、sysモジュールのargvというリストに格納されています。 リストの何番目の値を参照するかは、[ index番号 ] でアクセスします。
15.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Pythonの特徴 ■
型宣言がない! → pythonでは、型は自動判定してくれます(動的型付け) ■ { } がない! → pythonでは、ステートメントブロックはインデントで表現されます ■ “ ; ”もいらない! → pythonでは、1行1ステートメントが基本です 15
16.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Update
1:実行結果 16 あれ? dir_2, dir_3 の下にあるファイルは出てこないんだ・・・
17.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Update
2 17
18.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Update
2:詳細 18 os.path モジュールを使って、 検索されたパスがファイルもしくはディレクトリなのか判定し、 ディレクトリならば、その配下のファイルを検索するようにしてみました。
19.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Pythonの特徴 ■
if文やfor文に { } がない! → pythonでは、ステートメントブロックはインデントで表現されます 19
20.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Update
2:実行結果 20 とは言え、最下層のディレクトリはまだ検索できていませんね・・・そりゃ、そうだ・・・ 階層が違うだけでやることは、同じことの繰り返し。 関数化して再帰的に処理してエレガントにいきたいなー・・・
21.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Update
3 21
22.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Update
3:詳細 22 ディレクトリの時には再度同じ関数をよぶ再帰呼出しにして 階層が深くなっても同様に動作するように変えてみました。
23.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Pythonの特徴 ■
関数は以下のように宣言する 23 def 関数名( 引数 ): ステートメントブロック
24.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Update
3:実行結果 24 よし、全部キレイにファイル名取れたし、表示できたな。 しかしファイル名を置換したりできるように使いまわせるようにしたいなー
25.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Update
4 25
26.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Update
4:詳細 26 「ファイルを検索する」という処理と、 「ファイル名を表示する」という処理を分けてみました。
27.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Pythonの特徴 ■
Iterator は yield を使って表現する 27 yield とは・・・ 簡単に言うと関数の処理を一旦とめて、呼び出し元に値を返します
28.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Update
4:実行結果 28 よし、全部キレイにファイル名取れたままで問題なしと。 しかし、ファイルについての情報を何かの処理で参照したくなるかもなー
29.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Update
5 29
30.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Update
5:詳細 30 ファイルの情報を記憶するための FileInfomationというクラスを作ってみました。
31.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Pythonの特徴 ■
classは以下のように宣言する ■ 初期化関数は以下のように宣言する(特殊メソッドのオーバーロード) ■ クラス内でinstanceアクセスは self 31 class クラス名( 親クラス ): class クラス名( 親クラス ): def __init__( self, 引数 ): ステートメントブロック ■ ガベージコレクションはどうなっている? ■ クラス内の関数宣言でのスコープは? クラスに対して関数宣言をする場合には第一引数には必ず self がいる!
32.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Update
5:実行結果 32 よし、実行結果変わらず、問題なしと・・・ もうちょっと、知ったかぶってみようかな・・・
33.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Update
6 33
34.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Update
6:詳細 34 objectの特殊メソッドで文字列表現用のメソッドがあったのでオーバーロードしてみました 手続き型処理部分に __name__ == ‘__main__’ なる条件をつけてみました
35.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Pythonの特徴 ■
手続き処理部分には if __name__ == ‘__main__’ をつけよう 35 作成したスクリプトファイルを実行した際には、 トップレベルのコード名として、モジュール属性である __name__ に ‘__main__’ という名前が入る 複数ファイルで実装するときに使えるテクニック
36.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Update
6:実行結果 36 よし、実行結果変わらず、問題なしと・・・ まぁ、これならコード見られても恥ずかしくないかな・・・
37.
http://www.globalwalkers.co.jp/ Global Walkers, inc. OpenCV ■
PythonでOpenCVを使うために
38.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Python
+ OpenCV 38
39.
http://www.globalwalkers.co.jp/ Global Walkers, inc. Appendix ■
Script Text Data
40.
http://www.globalwalkers.co.jp/ Global Walkers, inc. #!/usr/bin/env
python import sys, os, glob class FileInfomation( object ): def __init__( self, fname ): self.fname = fname def __str__( self ): return "[file]: %s" % self.fname def each_file( dir ): for fname in glob.glob( "%s/*" % dir ): if os.path.isfile( fname ): yield FileInfomation( fname ) if os.path.isdir( fname ): for finfo in each_file( fname ): yield finfo raise StopIteration flie_list.py 40 if __name__ == '__main__': target_dir = sys.argv[1] for finfo in each_file( target_dir ): print( finfo )
41.
http://www.globalwalkers.co.jp/ Global Walkers, inc. #!/usr/bin/env
python import sys, cv2 import numpy as np def create_window( img, wname, x, y ): cv2.namedWindow( wname ) cv2.moveWindow( wname, x, y ) cv2.imshow( wname, img ) def show_image( fname, target_func ): mimg = cv2.imread( fname, cv2.IMREAD_UNCHANGED ) oimg = target_func( mimg ) height, width = mimg.shape[:2] create_window( mimg, fname, 50, 50 ) create_window( oimg, 'after convert', width + 50, 50 ) cv2.waitKey( 0 ) cv2.destroyAllWindows() def simple_view( img ): return img def gray_scale( img ): gray_img = cv2.cvtColor( img, cv2.COLOR_RGB2GRAY ) _, threshold_img = cv2.threshold( gray_img, 60, 255, cv2.THRESH_BINARY ) return cv2.cvtColor( threshold_img, cv2.COLOR_GRAY2RGB ) opencv_sample.py 41 if __name__ == '__main__': show_image( sys.argv[1], # (lambda img: simple_view(img) ) (lambda img: gray_scale(img) ) )
Download