ユーザ用ツール

サイト用ツール


サイドバー

目次

機械学習とは

プログラミング無しで機械学習

機械学習プログラミング入門

初めてのKeras2.0

初めてのTensorflow(YouTube)

初めてのChainer2.0

初めてのビットコイン

ビットコイン用語集

初めてのSolidityプログラミング

初めての医療統計

初めてのエクセルで医療統計

初めてのEZRで医療統計

初めてのRStudioでレポート作成

スマホアプリ作成ソフトIonic3

スマホアプリ作成ソフトIonic4

Ionicのためのjavascript tips

その他

NiftyCloudMobileBackend

税金など

Dokuwiki

初めてのopencv3

以前のリビジョンの文書です



Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in /home/i-doctor/www/ai/dokuwiki/inc/parser/handler.php on line 1552

初めてのOpenCV3

Chainerで自前の画像データで機械学習を行う場合、

  1. 画像を収集して分類して保存(なるべくjpgファイルで収集)
  2. 画像をグレースケール化(カラーのままのこともある)
  3. 画像をリサイズ
  4. chainerの、tuple_datasetで使用できる形に変換

などの操作が必要であり、その過程が私のような初心者には難しい。

画像のリサイズなどは、OpenCV3というモジュールで行うと、比較的簡単にできるらしいので、OpenCV3(with Python)について学んでいきたいと思います。

開発環境

Windows8.1
Python 3.5
Anaconda 4.4.0 (64-bit)
Chainer 2.0

OpenCV3をWindows8.1にインストール

2017/8月時点で、Python3.5であれば、Anaconda Promptで、

conda install -c https://conda.anaconda.org/menpo opencv3

で、OpenCV3をインストール可能です。

python3.6の場合については、WindowsにOpenCV3をインストールをご覧ください。

インストール後にOpenCV3を試してみる

(作成中)

初めてのOpenCV_with_Python
http://twosquirrel.mints.ne.jp/?p=20039

をご覧ください。

Image.sizeとnp.array.shape

PILのImage.size

from PIL import Image
import numpy as np

# 画像の読み込み
img = Image.open('cat.jpg')
# 画像の幅と高さを取得
width, height = img.size
# 元の画像と同じサイズのImageオブジェクトを作成する
img2 = Image.new('RGB', (width, height))

初めてのPython画像処理
https://qiita.com/uosansatox/items/4fa34e1d8d95d8783536

2017-02-16 — Tag: Python / Pillow / Image Python, Pillowを使って画像を一括でリサイズ(拡大・縮小)する方法
https://www.outoutput.com/programming/python-pil-pillow-image-resize/

2017-01-25 — Tag: Python Pythonでファイル名の前後に文字列や連番を加えて一括で変更
https://www.outoutput.com/programming/python-os-rename-glob-format-basename-splitext/

参考文献

Pyconjp 2014 OpenCVのpythonインターフェース入門
Masaki Hayashi,Published on Sep 28, 2014
https://www.slideshare.net/payashim/pyconjp-2014-opencv
→わかりやすいです。コードがPython2, OpenCV2なので、一部動かないことがありそうなので、Python3, OpenCV3のコードに少しだけ変換したものを、上記リンクに記載しました。

jupyter notebookでOpenCV 3.1を動かす(2) データ解析 2017/05/07
http://takacity.blog.fc2.com/blog-entry-142.html

→jupyter notebookでcv2で画像をインライン表示する場合は、

%matplotlib inline
import matplotlib.pyplot as plt

として、利用します。RGBとBGRに注意しながら、コードを記載します。

OpenCVで画像の読み込みと表示、保存20160216
http://rabbitfoot141.hatenablog.com/entry/2016/02/06/123859

pillowについてのリンク

OpenCVはインストールがややこしいことがあります。pillowという、あらかじめAnacondaに入っているモジュールも、OpenCVと似たような画像処理を行うことができます。

PIL/Pillow チートシート 20170307
https://qiita.com/pashango2/items/145d858eff3c505c100a

2017-02-16 — Tag: Python / Pillow / Image Python, Pillowを使って画像を一括でリサイズ(拡大・縮小)する方法
https://www.outoutput.com/programming/python-pil-pillow-image-resize/

http://pc.atsuhiro-me.net/entry/2015/04/30/215643?amp=1

リンク

初めてのopencv3.1508798759.txt.gz · 最終更新: 2018/10/07 (外部編集)