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の開発環境って感じですね。
Spyder(py35con)を動かすと・・・左側にスクリプトなどを入れれるところがあるのでこれで、インタラクティブに試すことができますね。
って・・・コンソールでやっても動くけどね。。(どんどんこんなツール類が出てきてて・・追っかけられないよね(笑)
試しにグレースケールにして、エッジ検出してみる。
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だとむっちゃ早いんですね。。
これを読み込んで
な~るほど・・・一瞬だ。。
VideoのStreamでもこれなら使えるのかもねぇ~
StreatViewの画像を学習用とかシミュレーション用に使えれば、データ集めなくていいのでちょっと試すにもいいですしね。。Piでやろうとしたら、まず解像度を落とす段階でおそくなっちゃったので・・・進めなかったんですが、PCだと速いんですねぇ~
ちなみに PYTHON,OPENCVを用いたCVプログラミング に使い方などは詳しくのっていますね。
http://derivecv.tumblr.com/serialization
こちらのサイトは画像処理という切り口から紹介されていて参考になりますね。
http://opencv.blog.jp/python/nyumon
Python+OpenCVならここかな?
って・・今週入れた環境だけでもこんなんになった(笑)
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")
のような感じです。
[…] 【画像処理】Windows10に Python3.5 OpenCV3.1を入れてみる【Anaconda】Open CV の新しいの入れてみようかな? Raspberry Piだと、Pythonとかも最初から入ってて、あんまり悩まずに、Open…tom2rd.sakura.ne.j […]