【画像処理】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を入れてればいいと・・ ふ~ん。。

OpenCV 3(core + contrib)をWindows & Python 3の環境にインストール&OpenCV 2とOpenCV 3の違い&簡単な動作チェック - Qiita
# はじめに OpenCV(Open Source Computer Vision Library)はBSDライセンスの映像/画像処理ライブラリ集です。画像のフィルタ処理、テンプレートマッチング、物体認識、映像解析、機械学習などのアル...
conda install -c https://conda.anaconda.org/menpo opencv3
簡単にpython3系列とOpenCV3を導入する - Qiita
#今回の目的 1.pythonの3系列をインストールする。 2.そのpython環境を用いてOpenCV3.1を使えるようにする。 #環境 - ubuntu 15.04 ~ - windows 8.1 ~ #作業手順 1.pyt...

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

データサイエンティストを目指す人のpython環境構築 2016 - Qiita
# pythonの環境構築について "python 環境構築"でググると20万件くらいヒットしますが、割と内容が古いです。 タイトルにはデータサイエンティストと書いてありますが、データサイエンティスト以外にもanacondaはおすす...

PythonでのOpenCV3のAPI一覧

OpenCV3のPython API一覧 - Qiita
# はじめに ■ OpenCVのPythonバインディング  OpenCVは、C++だけでなくPythonでも実行できます。他のPythonライブラリとOpenCVを組み合わせたプログラムをつくることができとても便利です。 ■ Op...

このやり方だと、インストールはかなり簡単そうですね。。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()

うぉ・・・速い!!

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

OpenCVでエッジ検出してみる - Qiita
# はじめに OpenCV(Open Source Computer Vision Library)はBSDライセンスの映像/画像処理ライブラリ集です。画像のフィルタ処理、テンプレートマッチング、物体認識、映像解析、機械学習などのア...

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

org

これを読み込んで

gray

canny

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

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

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

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

シリーズ記事
「python,OpenCVを用いたCVプログラミング」過去記事 第1回:背景と主旨説明 第2回:Windows向け科学技術系pythonライブラリパッケージ「python(x,y)」のインストール 第3回:科学技術計算向けのpython標準シェル拡張「IPython 」① 紹介編 第4回:...

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

Python版OpenCV入門
このページでは、Python版OpenCVの使い方を環境構築から入門向けにまとめました。

Python+OpenCVならここかな?

PyImageSearch - Be awesome at learning OpenCV, Python, and computer vision
This OpenCV and Python blog is written by Adrian Rosebrock. Learn OpenCV, Python, and computer vision through my OpenCV articles, tutorials, and guides.

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

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を入れなおすと解決しました。

Opencv3 :: Anaconda Cloud

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

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")

のような感じです。

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

コメント

  1. […] 【画像処理】Windows10に Python3.5 OpenCV3.1を入れてみる【Anaconda】Open CV の新しいの入れてみようかな? Raspberry Piだと、Pythonとかも最初から入ってて、あんまり悩まずに、Open…tom2rd.sakura.ne.j […]

Loading Facebook Comments ...
%d人のブロガーが「いいね」をつけました。