实例介绍
python上面的opencv程序开发方便快捷,而且借助python的向量库和数学库性能也不差,很适合做验证和测试。这里提供一个比较入门的中文教程。
书虽然挺好的,但是不够全面,不能让读者完全了解 opencv的现状)。而 我翻译的这本书是来源于 OpenCv的官方文档,内容全面,对各种的算 法的描述简单易懂,而且不拘泥于长篇大论的数学推导,非常适合想使用 OpencⅤ解决实际问题的人,对他们来说具体的数学原坦并不重要,重要 是能解决实际问题。 在国内这本书可以说是第一本 Python OpenCV的译作。 4本书的时效性 本书的编写时针对最新的 Opencv3.0的,本版本还没有正式发布(但 很稳定),其中的内容页非常新,甚至用到了2012年才提出的算法。因此 本书的时效性上应该是没有问题的。 5本书的目标读者 本书针的读者是高校学生,科研工作者,图像处理爱好者。对于这些 人群,他们往往是带着具体的问题,在苫苫寻找解决方案。为了·个小问 题就让他们去学习C++这么深奥的语言几乎是不可能的。而 Python的悄 然兴起给他们带来的希望,如果说C++是tex的话,那 Python的易用性 相当于word。他们可以很快的看懂本书的所有代码,并可以学着使用它们 来解决自己的问题,同时也能拓展自己的视野。别人经常说 Python不够 快,但是对于上面的这些读者,我相信这不是问趣,现在我们日常使用的 PC机已经无比强大了,而且绝大多数情况下不会用到实时处理,更不会在 嵌入式设备上使用。因此这不是问题。 Opencv-Python 段力辉 2014年1月30日 目录 Ⅰ走进 Opencv 10 1关于 OpenCv-Python教程 10 2在 Windows上安装 OpenCV- Python 11 3在 Fedora上安装 Opencv-Python 12 II OpenCV中的Gui特性 13 4图片 13 4.1读入图像 13 4.2显示图像... 14 4.3保存图像 15 4.4总结一下 15 5视频 18 5.1用摄像头捕获视频 18 5.2从文件中播放视频 ...19 5.3保存视频 21 6 OpencV中的绘图函数 24 6.1画线 24 6.2画矩形. .24 3画圆 25 6.4画椭圆,..,,,,,,,,,, 25 6.5画多边形.. 25 6.6在图片上添加文字 26 7把鼠标当画笔 28 7.1简单演 28 7.2高级一点的示例 29 8用滑动条做谓色板 32 8.1代码示例 ,,,,,,,,32 III核心操作 36 9图像的基础操作 36 9.1获取并修改像素值 36 9.2获取图像属性 .38 9.3图像ROI 39 9.4拆分及合并图像通道 40 9.5为图像扩边(填充) 41 10图像上的算术运算 43 10.1图像加法 43 10.2图像混合 43 10.3按位运算 44 11程序性能检测及优化 47 11.1使用 OpenCV检测程序效率 ,,47 11.2 Opencv中的默认优化 48 11.3在 IPython中检测程序效率 49 11.4更多 IPython的魔法命令 51 11.5效率优化技术 51 12 Openc中的数学工具 53 IV OpenCV中的图像处理 54 13顏色空间转换 54 13.1转换颜色空间 ,,,54 13.2物体跟踪 55 13.3怎样找到要跟踪对象的HSⅤ值?.., 57 14几何变换 59 14.1扩展缩放 59 14.2平移 ,,,60 14.3旋转 62 14.4仿射变换 63 14.5透视变换 64 15图像闻值 66 15.1简单阈值.. 66 15.2自适应间值. ..68 15.3Otsu′s二值化 70 15.4Otsu's二值化是如何工作的? 72 16图像平滑 75 16.1平均 77 16.2高斯模糊 78 16.3中值模糊 79 16.4双边滤波 79 17形态学转换 81 17.1腐蚀 ..81 17.2膨胀 82 17.3开运算 83 17.4闭运算 83 17.5形态学梯度 83 17.6礼帽.. 84 17.7黑帽 ..84 17.8形态学操作之问的关系.. 84 18图像梯度 87 18.1 Sobel算子和 Scharr算子 87 182 Laplacian算子 87 19 Canny边缘检测 91 19.1原理 91 19.1.1噪声去除 91 19.1.2计算图像梯度 91 19.1.3非极大值抑制,.. ,,,,,,..91 19.1.4滞后阈值 92 1920pnCV中的 Canny边界检测 92 20图像金字塔 94 20.1原理 94 20.2使用金字塔进行图像融合 96 210 penCV中的轮廓 101 21.1初识轮廓.. ,,,,,,.101 21.1.1什么是轮廓 101 21.1.2怎样绘制轮廓. · 01 21.1.3轮廓的近似方法 102 21.2轮廓特征 104 21.2.1矩 ,,.104 21.2.2轮廓面积 104 21.2.3轮廓周长 ,,,105 21.2.4轮廓近似,,. 105 21.2.5凸包 106 21.2.6凸性检测 .107 21.2.7边界矩形 107 21.2.8最小外接圆 ,,,,,,,,,,,,,108 21.2.9椭圆拟合 ··10 9 21.2.1值线拟合 109 21.3轮廓的性质 111 21.3.1长宽比 ..111 21.3.eXtent 111 21.3.3 Solidity ..111 21.3.eQuivalent Diameter ....... 112 21.3.5方向 .112 21.3.6掩模和像素点 112 21.3.7最大值和最小值及它们的位置 113 21.3.8平均颜色及平均灰度 113 21.3.9极点 ,,,,,,,,.114 21.4轮廓:更多函数 ,.115 21.4.1凸缺陷 115 21.4.2Point Polygon Test ,,,116 21.4.3形状匹配 117 21.5轮廓的层次结构 .·.119 21.5.1什么是层次结构 119 21.5.2 Opencv中层次结构 ,,,,,.,,,,.,120 21.5.3轮廓检索模式 .120 22直方图 124 22.1直方图的计算,绘制与分析 ,,,,..124 22.1.1统计直方图 ,,,,,,,,,,,,,,,,,124 22.1.2绘制直方图 126 22.1.3使用掩模 128 22.2直方图均衡化. 130 22.2.1 OpencV中的直方图均衡化 132 22.2.2 CLAHE有限对比适应性直方图均衡化 132 22.32D直方图.., 135 22.3.1介绍 ,135 22.3.2 Opencv中的2D直方图 .....135 22.33 Numpy中2D直方图. 136 22.3.4绘制2D直方图 136 22.4直方图反向投影 ,,,,,,,,,,,,,,,141 224.1 Numpy中的算法 141 2242 OpenCv中的反向投影 143 23图像变换 146 23.1傅里叶变换 146 23.1.1 Numpy中的傳里叶变换 146 23.1.2 OpenCV中的傅里叶变换 .148 23.1.3DFT的性能优化 ..150 23.1.4为什么拉普拉斯算子是高通滤波器?.,,,,,,,.152 24模板匹配 155 24.1 Opencv中的模板匹配 155 24.2多对象的模板匹配.. ,,,,,,,,,,,,,.158 25 Hough直线变换 160 25.1 Opencv中的霍夫变换 161 25.2 Probabilistic Hough Transform 163 26 Hough圆环变换 165 27分水岭算法图像分割 168 27.1代码 168 28使用 GrabCut算法进行交互式前景提取 173 28.1演 174 V图像特征提取与描述 178 29理解图像特征 178 29.1解释 .178 30 Harris角点检测 181 30.1 pencV中的 Harris角点检测. 182 30.2亚像素级精确度的角点 184 31shi- omasi角点检测&适合于跟踪的图食特征 187 31.1代码 .,187 32 5 SIFT(Scale-Invariant Feature Transform) 190 33介绍 SURF(Speeded- Up Robust Features 195 33.1 Opencv中的SURF 197 34角点检测的FAST算法 200 34.1使用FAST算法进行特征提取 200 34.2机器学习的角点检测器 ..201 34.3非极大值扣制. 202 34.4总结 ..202 34.5 Opencv中FAST特征检测器 202 35 BRIEF(Binary Robust Independent Elementary Features205 351 OpencV中的 BRIEF ,205 36ORB (Oriented FAsT and Rotated BRIEF) 207 36.1 OpencV中的ORB算法 .208 37特征匹配 211 37.1 Brute-Force匹配的基础 211 37.2对ORB描述符进行蛮力匹配 212 37.3匹配器对象是什么? 213 37.4对SIFT描述符进行蛮力匹配和比值测试 213 375 FLANN匹配器 ,,,214 38使用特征匹配和单应性查找对象 18 38.1基础,... 218 38.2代码 ,,,,,218 VI视频分析 222 39 Meanshift A Camshift 222 39.1 Meanshift 222 392 OpenCV中的 Meanshift 223 39.3 Camshift 225 394 Opencv中的 Camshift 226 40光流 231 40.1光流 231 40.2 Lucas- Kanade法 232 40.3 Opencv中的 Lucas-Kanade光流 .,,,..232 40.4 Opencv中的稠密光流 ..235 41背景减除 238 41.1基础 ,,238 41.2 BackgroundSubtractorMOG ···.,.238 41.3 Background Subt ractorMOG2 239 【实例截图】
【核心代码】
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论