Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Pythonによる画像処理について
2015/01/17
名古屋CVPRML勉強会
@yasutomo57jp
PYTHON 使っていますか?
研究を進める上で
スクリプト言語を1つ使えると強い
パラメータを変えて実験したい
大量の実験データを整理したい
実験結果の統計を取りたい
スクリプト言語
sh
Windowsのbatファイル/Powershell
Ruby
P...
Pythonのいいところ
シンプルで覚えやすい
基本的な文法が簡単
どの環境でも動く(Win, Mac, Linux)
プログラムの文書化が基本機能
必然的にコメントをしっかり書く
様々なモジュールが存在
Pythonとモジュール
Pythonは基本機能はとてもシンプル
実際使うには拡張モジュールが必要
行列演算など:numpy
科学技術計算など:scipy
グラフの描画など:matplotlib
機械学習:scikit-learn
...
Pythonの実行環境
忙しい人のためのPythonインストール
Anaconda
https://store.continuum.io/cshop/anaconda
Python本体に加えて、
データ分析や科学計算に使えるモジュール群...
Pythonスクリプトの編集・実行
python
IPython
IPython notebook
あとで詳しく
spyder
Matlabライク,わりとおすすめ
eclipse
Visual Studio
Visual St...
私の場合
Vim
jedi-vimというプラグインを利用
参考
VimでPython環境をいい感じに整える
[vim]python補完プラグイン「jedi-vim」を
快適にする方法(jedi-vim+neocomplete)
Em...
Pythonでプログラムを書くにあたって
インデント
コメント: docstring
コーディング規約
インデント
Pythonではインデントが非常に重要
クラス,関数,ifやwhileなどの範囲を表現
通常インデントはスペース4個分
インデントが正しく揃っていないと動かない
def hoge(x, y):
z = y + 1
if x ...
docstring
プログラムにはコメントを書きましょう
特に関数
この関数は何をする関数であるか
それぞれの引数は何で,どういう値を取りうるか
docstring
オブジェクト定義の最初の行にある文字列リテラル
“3個で囲う
...
docstringの例
def sum(x, y):
"""整数xとyの和を返す関数"""
return x + y
def minus_one(a):
"""
1を引く関数
引数:
a -- 整数
戻り値:
計算結果の整数値
"""
retu...
コーディング規約
PEP8 (Python Enhancement Proposal 8)
Pythonのモジュールで使われているコーディング規
約
PEP8 日本語版
でもPEPにこだわりすぎてコードの後方互換性を崩す
のはダメ
I...
コーディング規約
PEP8チェックツール
Python のコーディング規約 PEP8 に準拠する
pep8とpyflakesを入れるとよい
pip install pep8
pip install pyflakes
もしくは
pi...
実践編
実際にPythonコードを見てみましょう
資料はこちら
https://github.com/yasutomo57jp/python_image_processing
Pythonを勉強するための資料集
@shima__shimaさん
機械学習の Python との出会い
numpyと簡単な機械学習への利用
@payashimさん
PyConJP 2014での「OpenCVのpythonイン
ターフ...
今後の課題話題
Pythonじゃ遅くて我慢できない人のため
のC++との共存について
SWIGなど
Simplified Wrapper and Interface Generator
C/C++で書いたライブラリをPythonやRub...
Upcoming SlideShare
Loading in …5
×
Upcoming SlideShare
画像処理でのPythonの利用
Next
Download to read offline and view in fullscreen.

Share

Pythonによる画像処理について

Download to read offline

名古屋CVPRML勉強会での発表

Related Audiobooks

Free with a 30 day trial from Scribd

See all

Pythonによる画像処理について

  1. 1. Pythonによる画像処理について 2015/01/17 名古屋CVPRML勉強会 @yasutomo57jp
  2. 2. PYTHON 使っていますか?
  3. 3. 研究を進める上で スクリプト言語を1つ使えると強い パラメータを変えて実験したい 大量の実験データを整理したい 実験結果の統計を取りたい スクリプト言語 sh Windowsのbatファイル/Powershell Ruby Python ← C/C++だけでやろうとすると結構めんどくさい
  4. 4. Pythonのいいところ シンプルで覚えやすい 基本的な文法が簡単 どの環境でも動く(Win, Mac, Linux) プログラムの文書化が基本機能 必然的にコメントをしっかり書く 様々なモジュールが存在
  5. 5. Pythonとモジュール Pythonは基本機能はとてもシンプル 実際使うには拡張モジュールが必要 行列演算など:numpy 科学技術計算など:scipy グラフの描画など:matplotlib 機械学習:scikit-learn ディープラーニング:pylearn2, caffe 画像処理:pillow, scikit-image, opencv シミュレーション:simpy 解析的な計算:theano インタラクティブシェル:ipython https://pypi.python.org/pypi で公開 easy_install コマンドや,pip コマンドで 簡単にインストール可能 自作モジュールを簡単に公開できる機能もある
  6. 6. Pythonの実行環境 忙しい人のためのPythonインストール Anaconda https://store.continuum.io/cshop/anaconda Python本体に加えて、 データ分析や科学計算に使えるモジュール群が付 いてくる 自分で入れたい人向けのインストール 通常のPython https://www.python.org Macならbrew等で,Linuxならyum等で 少なくとも入れておくべきモジュール numpy, scipy, matplotlib
  7. 7. Pythonスクリプトの編集・実行 python IPython IPython notebook あとで詳しく spyder Matlabライク,わりとおすすめ eclipse Visual Studio Visual Studioユーザにはかなりおすすめ 拡張機能 http://pytools.codeplex.com/
  8. 8. 私の場合 Vim jedi-vimというプラグインを利用 参考 VimでPython環境をいい感じに整える [vim]python補完プラグイン「jedi-vim」を 快適にする方法(jedi-vim+neocomplete) Emacsの人は… Emacs で Python 開発環境を構築
  9. 9. Pythonでプログラムを書くにあたって インデント コメント: docstring コーディング規約
  10. 10. インデント Pythonではインデントが非常に重要 クラス,関数,ifやwhileなどの範囲を表現 通常インデントはスペース4個分 インデントが正しく揃っていないと動かない def hoge(x, y): z = y + 1 if x > 0: return z else: w = x + z return w def foo(x):
  11. 11. docstring プログラムにはコメントを書きましょう 特に関数 この関数は何をする関数であるか それぞれの引数は何で,どういう値を取りうるか docstring オブジェクト定義の最初の行にある文字列リテラル “3個で囲う モジュール,関数,クラス,メソッドなど docstringで書いておくと… help()関数で使い方を参照できる ドキュメント化ツールでドキュメント作成できる
  12. 12. docstringの例 def sum(x, y): """整数xとyの和を返す関数""" return x + y def minus_one(a): """ 1を引く関数 引数: a -- 整数 戻り値: 計算結果の整数値 """ return a - 1
  13. 13. コーディング規約 PEP8 (Python Enhancement Proposal 8) Pythonのモジュールで使われているコーディング規 約 PEP8 日本語版 でもPEPにこだわりすぎてコードの後方互換性を崩す のはダメ In particular: do not break backwards compatibility just to comply with this PEP! 例 タブはスペース4個 1行は79文字まで docstringを書く I, l, Oを1文字で変数名にしない ClassMei, kansuu_mei()
  14. 14. コーディング規約 PEP8チェックツール Python のコーディング規約 PEP8 に準拠する pep8とpyflakesを入れるとよい pip install pep8 pip install pyflakes もしくは pip install flake8 Spyderやvimでは… 適切に設定をすることでpep8に準拠したコード 分析ができる
  15. 15. 実践編 実際にPythonコードを見てみましょう 資料はこちら https://github.com/yasutomo57jp/python_image_processing
  16. 16. Pythonを勉強するための資料集 @shima__shimaさん 機械学習の Python との出会い numpyと簡単な機械学習への利用 @payashimさん PyConJP 2014での「OpenCVのpythonイン ターフェース入門」の資料 Pythonユーザ向けの,OpenCVを使った画像処理解説 Python Scientific Lecture Notes 日本語訳 非常におすすめ numpy/scipyから画像処理, 3D可視化まで幅広く学べる
  17. 17. 今後の課題話題 Pythonじゃ遅くて我慢できない人のため のC++との共存について SWIGなど Simplified Wrapper and Interface Generator C/C++で書いたライブラリをPythonやRubyなど の他のスクリプト言語から使えるようにするもの 実際に研究に使った話 オフライン人物追跡の実装の話 NetworkXというモジュールによるグラフ理論 DeCAFを使ったDeepLearningの話
  • ssuser24aa6f1

    Sep. 29, 2019
  • FumiakiTono

    Dec. 8, 2017
  • FumiyaYajima

    May. 25, 2017
  • kikubo

    May. 24, 2017
  • FumiyaNagai

    Apr. 12, 2017
  • kjunichi

    Mar. 14, 2017
  • UebayashiKazuhiko

    Jan. 3, 2017
  • YoshihiroKanehara

    Aug. 3, 2016
  • ShinyaMiyagawa

    Jun. 10, 2016
  • but8

    May. 25, 2016
  • rollerball5

    May. 21, 2016
  • nkamata

    Jan. 7, 2016
  • toshiyukikamiya

    Jan. 7, 2016
  • tomonarikamba

    Dec. 26, 2015
  • MasatoFujio

    Dec. 25, 2015
  • KeiichiKurosawa1

    Nov. 20, 2015
  • Nobuhiii

    Oct. 31, 2015
  • szmlb

    Oct. 23, 2015
  • Gan2015

    Aug. 15, 2015
  • shinodatatsuya0826

    Jun. 10, 2015

名古屋CVPRML勉強会での発表

Views

Total views

13,180

On Slideshare

0

From embeds

0

Number of embeds

360

Actions

Downloads

100

Shares

0

Comments

0

Likes

39

×