とか、など

プログラミングとか、画像処理とか、機械学習を勉強しようとして挫折中

python3にopencvを入れてみる

機械学習を勉強するためと言いつつ、なかなか学習まで辿り着かない。

 

今回はopencvを入れて画像処理をしてみる。

 

2015/12/21現在どうもpython3.5だと、opencvがうまく入らなかったので。

conda create -n py34 python=3.4 anaconda

する。こういうときcondaは本当便利

source activate py34 して

Up & Running: OpenCV3, Python 3, & Anaconda - River City Labs

このページに従って、opencvを入れる。

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

せっかくなのでopencv3にした。

import cv2
print(cv2.__version__)

して問題なければOK

 

試しに

#1.画像読み込み

import cv2
import numpy as np

cv2.namedWindow('test')
img = cv2.imread('./images/lenna.png')#画像を適当に用意
cv2.imshow('test', img)

cv2.waitKey(0)
cv2.destroyAllWindows()

#2.グレースケール化

gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

#3.平滑化フィルタ

blured = cv2.blur(gray, (5,5))#単純平均
gaussianBlured = cv2.GaussianBlur(gray, (5, 5), 0)#ガウシアン

#4.キャニーフィルタ

thrs1 =1000
thrs2 =10
edge = cv2.Canny(gray, thrs1, thrs2, apertureSize=5)

#5.二値化

ret, binImg = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY)#retは単に閾値が入る。大津の2値化なら決定した閾値が入る

 

というかチュートリが素晴らしいのでそっちを見れば良い。

OpenCV-Python Tutorials — OpenCV-Python Tutorials 1 documentation

 

機械学習学習3日目の記事です