Python图像处理(10):从2.4.11到3.0.0
2015-06-10 00:38
726 查看
快乐虾http://blog.csdn.net/lights_joy/欢迎转载,但请保留作者信息
今天费了点时间将opencv从2.4.11升级到了3.0.0,简单记下升级后对python代码的差异。
但到了3.0.0,已经没有cv2.cv了,相应的代码也就成了:
但在3.0.0下却有问题:
观察此函数的导出接口:
可以发现它返回了三个值,因此这个接口的调用就变成了:
暂且就只发现这么多,继续。
今天费了点时间将opencv从2.4.11升级到了3.0.0,简单记下升级后对python代码的差异。
1. VideoCapture的差异
在2.4.11中,我们获取码率等参数是这样的:#获得码率及尺寸 fps = videoCapture.get(cv2.cv.CV_CAP_PROP_FPS) size = (int(videoCapture.get(cv2.cv.CV_CAP_PROP_FRAME_WIDTH)),
但到了3.0.0,已经没有cv2.cv了,相应的代码也就成了:
#获得码率及尺寸 fps = videoCapture.get(cv2.CAP_PROP_FPS) size = (int(videoCapture.get(cv2.CAP_PROP_FRAME_WIDTH)), int(videoCapture.get(cv2.CAP_PROP_FRAME_HEIGHT)))
2. findContours的差异
在2.4.11中,执行findContours是这样的:# 获取轮廓,我们的目的是分块,因此只使用外层轮廓,使用点序列的形式 bin_img_save = np.copy(bin_img) (contoures, hierarchy) = cv2.findContours(bin_img_save, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_NONE)
但在3.0.0下却有问题:
观察此函数的导出接口:
if( PyArg_ParseTupleAndKeywords(args, kw, "Oii|OOO:findContours", (char**)keywords, &pyobj_image, &mode, &method, &pyobj_contours, &pyobj_hierarchy, &pyobj_offset) && pyopencv_to(pyobj_image, image, ArgInfo("image", 1)) && pyopencv_to(pyobj_contours, contours, ArgInfo("contours", 1)) && pyopencv_to(pyobj_hierarchy, hierarchy, ArgInfo("hierarchy", 1)) && pyopencv_to(pyobj_offset, offset, ArgInfo("offset", 0)) ) { ERRWRAP2(cv::findContours(image, contours, hierarchy, mode, method, offset)); return Py_BuildValue("(NNN)", pyopencv_from(image), pyopencv_from(contours), pyopencv_from(hierarchy)); }
可以发现它返回了三个值,因此这个接口的调用就变成了:
# 获取轮廓,我们的目的是分块,因此只使用外层轮廓,使用点序列的形式 bin_img_save = np.copy(bin_img) (new_img, contoures, hierarchy) = cv2.findContours(bin_img_save, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_NONE)
3. legacy
在2.4.11中有一个叫legacy的动态库,但是3.0.0中已经没有此库了,因此有一部分功能只能另想它法了。暂且就只发现这么多,继续。
相关文章推荐
- 基于微信公众平台的Python开发——豆瓣电影搜索
- python 去掉列表(list)中的所有空元素
- ubuntu下python+flask+mysql完整开发环境配置
- python中的代码编码格式转换问题
- python - logging模块使用 (一)
- 如何利用Python嗅探(Sniffer)数据包
- Python之first script
- python 学习笔记(二)
- 渗透测试]python内网渗透信息收集脚本
- [渗透测试]python内网渗透信息收集脚本
- [渗透测试]python内网渗透信息收集脚本
- [渗透测试]python内网渗透信息收集脚本
- 入侵渗透专用的python小脚本
- Python教程: Python 介绍
- Python:mechanize模拟浏览器行为
- python virtualenv开发环境
- CAFFE安装2:MKL python 和 caffe
- import导入模块 【python】
- python及hadoop学习网址
- Python基础:21包装