linux中如何切换python使用的opencv版本

假如系统中安装有多个OpenCV版本,可以通过终端进入python命令行输入以下命令查看当前python所使用的opencv版本

import cv2
cv2.__version__

python中使用的opencv版本被系统变量PYTHONPATH控制着,可以在终端echo一下
在这里插入图片描述
如果要使用opencv3.x的版本,用vi或gedit打开home目录下的.bashrc文件,重新设定该变量即可

export PYTHONPATH=/home/ismart/ipa2/devel/lib/python2.7/dist-packages:/home/ismart/catkin_ws/install_isolated/lib/python2.7/dist-packages:/usr/local/opencv3.x/lib/python2.7/dist-packages

稍微复杂一点的情况,像我这样PYTHONPATH引用了ROS路径的

/home/ismart/ipa2/devel/lib/python2.7/dist-packages:/home/ismart/catkin_ws/install_isolated/lib/python2.7/dist-packages:/opt/ros/kinetic/lib/python2.7/dist-packages

ROS中包含了python版本的opencv,如果用以上方法当然可以切换opencv版本,但这会导致无法使用ROS的python库,而且以下设定是无效的,即使把opencv2.4的路径放到ros路径前面依然无效

/home/ismart/ipa2/devel/lib/python2.7/dist-packages:/home/ismart/catkin_ws/install_isolated/lib/python2.7/dist-packages:/opt/ros/kinetic/lib/python2.7/dist-packages:/usr/local/opencv2.4.13/lib/python2.7/dist-packages

备份ros路径/opt/ros/kinetic/lib/python2.7/dist-packagescv2.so文件,从自定义安装的opencv的lib/python2.7/dist-packages路径下,复制cv2.so文件到ros路径下的lib/python2.7/dist-packages的文件夹中即可。

你可能感兴趣的:(技术文档,Linux,编程开发)