1.opencv编译安装
- # Get all the up-to-date tools you'll need
- sudo apt-get update
- sudo apt-get install git cmake build-essential
- # Get latest greatest OpenCV from GitHub
- git clone https://github.com/opencv/opencv.git
- # Go build and install that puppy
- cd opencv
- mkdir build
- cd build
- cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
- sudo make(漫长的编译过程)
- sudo make install(执行完毕后OpenCV编译过程就结束了,接下来就需要配置一些OpenCV的编译环境首先将OpenCV的库添加到路径,从而可以让系统找到)
- sudo gedit /etc/ld.so.conf.d/opencv.conf (执行此命令后打开的可能是一个空白的文件,不用管,只需要在文件末尾添加:/usr/local/lib )
- sudo ldconfig (执行命令使得刚才的配置路径生效)
- sudo gedit /etc/bash.bashrc (配置bash,在末尾添加:
- PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
- export PKG_CONFIG_PATH )
- source /etc/bash.bashrc 使得配置生效
- 更新 sudo updatedb
- 用一个小程序测试一下,找到 cd到opencv-3.4.1/samples/cpp/example_cmake目录下 ,我们可以看到这个目录里官方已经给出了一个cmake的example我们可以拿来测试下 按顺序执行:
- cmake .
- make
- ./opencv_example
- 即可看到打开了摄像头,在左上角有一个hello opencv ,即表示配置成功
在导入的时候可能会出现错误,可以sudo apt-get install python-opencv
2.OpenCV运用到anaconda下
opencv安装
目录下的cv2.so拷贝到python的site-packages/
中, cv2.so通常在编译的lib文件夹下
如果是anaconda,拷贝至~/anaconda2/lib/python3.6/site-packages
中;
下面运行一个用notebook运行的程序,OpenCV打开图片和tensorflow转置图片
import tensorflow as tf
import cv2
filename = "/home/dong/01.jpg"
image = cv2.imread(filename, 1)
cv2.namedWindow('image', 0)
cv2.imshow('image', image)
# Create a TensorFlow Variable
x = tf.Variable(image, name='x')
model = tf.initialize_all_variables()
with tf.Session() as session:
x = tf.transpose(x, perm=[1, 0, 2])
session.run(model)
result = session.run(x)
cv2.namedWindow('result', 0)
cv2.imshow('result', result)
cv2.waitKey(0)
如果是系统的python,可以拷贝至/usr/local/lib/python2.7/site-packages
中。
一个便捷的方法找cv2.so,find / -name "cv2.so"(权限问题在之前输入sudo su ,再输入find / -name "cv2.so")
在python中导入
cp /usr/local/lib/python2.7/site-packages/cv2.so ~/anaconda2/lib/python2.7/site-packages