【画像処理】Windows10に Python3.5 OpenCV3.1を入れてみる【Anaconda】

Open CV の新しいの入れてみようかな?

Raspberry Piだと、Pythonとかも最初から入ってて、あんまり悩まずに、OpenCVも入れれる。

$ sudo apt-get install libopencv-dev
$ sudo apt-get install python-opencv

これで入れるとOpenCV2が入るんですよね。使えるのでいいのでしょうけど・・・画素数が多いとやっぱりPiだと遅いことが判明して、使えんなぁ~(ラジコンに使うには・・ですよ!すごい人はこれでも、使いこなせるのでしょうけど・・)

でOpenCVって2と、3ではえらい違うんですねぇ。。。インターネットで調べたりすると結構どつぼにはまりますね。。昔からそうだけど、その記事に書いてあるバージョンじゃないと動かないとか・・いちいち考えなきゃいけない(笑)。。 LinuxもPythonもいろんなもののバージョンがいっぱいあって・・あと肝心な動かし方もなんかあっち試してこっち試してを繰り返さないといけないですねぇ(涙) gitもありのpipもあり~の。。apt-getもあり~の。。 どれがどれだか分かりにくいですねぇ~ 僕らのころは、こんなにたくさんなかったからなぁ~

Windows10だと??

じゃぁWindows機だとどれくらいの速さなのかな?っていうのが気になっていました(笑)

って・・・Web見てたら、Anacondaっていうのがあって・・Anacondaを入れてればいいと・・ ふ~ん。。

http://qiita.com/olympic2020/items/d5d475a446ec9c73261e

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

http://qiita.com/sugurunatsuno/items/ce3c0d486bdc93688192

Anacondaの詳しい説明は、ここに・・

http://qiita.com/y__sama/items/5b62d31cb7e6ed50f02c

PythonでのOpenCV3のAPI一覧

http://qiita.com/olympic2020/items/83e08082a12beb25ff46

このやり方だと、インストールはかなり簡単そうですね。。OpenCVもそうだけど、Rも使えるのはいいな。。 Sを学生時代からちょくちょく使っていたのでRも会社に入ってから雷の分析とか、消費電力で人の活動量推定とかいろいろやってたので、そっちの方が楽なんだけどなぁ~・・・と愚痴ったりしながら・・・Pythonの使い方もOpenCVの使い方もよくわからない(笑)

で・・・AnacondaからのPythonの動かし方は、ここが正解?

Pythonの仮想環境をつくる

conda create -n py35con python=3.5 anaconda

Pythonを動かす

activate py35con

そうすると、Windowsのメニューに、Spyder(py35con)っていうのが出来ているので、そいつで、動かすと、Pythonいろいろいじるの簡単。 Pythonの開発環境って感じですね。

spydermenu

Spyder(py35con)を動かすと・・・左側にスクリプトなどを入れれるところがあるのでこれで、インタラクティブに試すことができますね。

spyder

って・・・コンソールでやっても動くけどね。。(どんどんこんなツール類が出てきてて・・追っかけられないよね(笑)

 

試しにグレースケールにして、エッジ検出してみる。

import cv2

# 定数定義
ORG_WINDOW_NAME = "org"
GRAY_WINDOW_NAME = "gray"
CANNY_WINDOW_NAME = "canny"

ORG_FILE_NAME = "org.jpg"
GRAY_FILE_NAME = "gray.png"
CANNY_FILE_NAME = "canny.png"

# 元の画像を読み込む
org_img = cv2.imread(ORG_FILE_NAME, cv2.IMREAD_UNCHANGED)
# グレースケールに変換
gray_img = cv2.imread(ORG_FILE_NAME, cv2.IMREAD_GRAYSCALE)
# エッジ抽出
canny_img = cv2.Canny(gray_img, 50, 110)

# ウィンドウに表示
cv2.namedWindow(ORG_WINDOW_NAME)
cv2.namedWindow(GRAY_WINDOW_NAME)
cv2.namedWindow(CANNY_WINDOW_NAME)

cv2.imshow(ORG_WINDOW_NAME, org_img)
cv2.imshow(GRAY_WINDOW_NAME, gray_img)
cv2.imshow(CANNY_WINDOW_NAME, canny_img)

# ファイルに保存
cv2.imwrite(GRAY_FILE_NAME, gray_img)
cv2.imwrite(CANNY_FILE_NAME, canny_img)

# 終了処理
cv2.waitKey(0)
cv2.destroyAllWindows()

うぉ・・・速い!!

コードは、こちらから拝借。。

http://qiita.com/olympic2020/items/2c3a2bfefe73ab5c86a4

Windowsだとむっちゃ早いんですね。。

org

これを読み込んで

gray

canny

な~るほど・・・一瞬だ。。

VideoのStreamでもこれなら使えるのかもねぇ~

StreatViewの画像を学習用とかシミュレーション用に使えれば、データ集めなくていいのでちょっと試すにもいいですしね。。Piでやろうとしたら、まず解像度を落とす段階でおそくなっちゃったので・・・進めなかったんですが、PCだと速いんですねぇ~

ちなみに PYTHON,OPENCVを用いたCVプログラミング に使い方などは詳しくのっていますね。

http://derivecv.tumblr.com/serialization

こちらのサイトは画像処理という切り口から紹介されていて参考になりますね。

http://opencv.blog.jp/python/nyumon

Python+OpenCVならここかな?

Homepage

 

って・・今週入れた環境だけでもこんなんになった(笑)

Cygwin Python 2.7 Ardupilot 系 SITLやら ソースからの・・

Windows Mission Planner バイナリで・・・SITLも・・・

Anaconda Python 3.5 OpenCV3.1 ライブラリで?

なるほど CloudのAPIとか、MAVproxyもそうだけど、プログラム間のやり取りを担うプログラムがあったりするんだ。。ROSも突き詰めれば・・・そうだよね。。

ちょっと試すのは簡単な感じだけど、どのバージョンのどれからやるのがいいのか??って悩み始めたら、もう進まんやろなぁ~ だから、悩むより実行!っていう時代になっているのかもなぁ~(笑)

この調子でやってたら、ディスクいくらあっても足りないな(笑)

 

追記1

Spyderで import cv でエラーが出たら、Anacondaのコンソールから、Opencvを入れなおすと解決しました。

https://anaconda.org/menpo/opencv3

にあるインストールをしました。。

conda install -c menpo opencv3=3.1.0

 

追記2

Facedetectなどをするときに、学習ファイル等を読み込むのですが、その時に絶対パスで読み込むようにする場合、Windowsだと、¥の代わりが、\と打って、下のような文字になります(^^;

\\
faceCascade = cv2.CascadeClassifier("haarcascade_frontalface_alt2.xml")

こういう場合は、

faceCascade = cv2.CascadeClassifier("C:\\Users\\hogehoge\\Anaconda3\\envs\\py35con\\Library\\etc\\haarcascades\\haarcascade_frontalface_alt2.xml")

 

のような感じです。

投稿者 tom2rd

コメントを残していただけるとありがたいです

Loading Facebook Comments ...
“【画像処理】Windows10に Python3.5 OpenCV3.1を入れてみる【Anaconda】” に1件のフィードバックがあります

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください