- 博客(12)
- 资源 (1)
- 收藏
- 关注
原创 opencv教程(基于python)----图象金字塔
图象金字塔是我们创建一组图象,这些图象是具有不同分辨率的原始图像,如果把分辨率最大的放在底部,最小的放在上面,看起来就像一个金字塔,这也是他名字的由来。一般来说具体的应用是,不同的设备显示图像需要不同的分辨率,建立一个金字塔可以快速适应不同的设备;还用一个应用是图形分割方面的(基于区域)。 有两类金字塔:高斯金字塔和拉普拉斯金字塔。高斯金字塔高斯金字塔的顶部是通过将底部图像中的连续
2018-01-31 10:11:51 409
原创 opencv教程(基于python)----边缘检测
这一节主要讲的是关于图象的边缘检测。先说一下一个基本的概念图象梯度:可以把图象看成关于像素的离散二元函数,所谓梯度其实就是图象的导数。由于图象在边界的像素变化剧烈所以,在导数上格外明显了。图象梯度梯度简单来说就是求导,而opencv提供理论三种梯度滤波器:Sobel,Scharr,和Laplacian。 前两个是求一阶或者二阶导数,scharr是对sobel的优化。laplacian
2018-01-30 09:22:12 757
原创 opencv教程(基于python)----图象形态学转换
形态学造作是根据图象形状进行的简单操作。一般情况下对二值化图象进行的操作,需要输入两个参数,一个是原始图像,第二个是被称为结构化元素或和,它是用来决定操作性质的两个基本操作是腐蚀和膨胀。腐蚀腐蚀会把物体的边界腐蚀掉,卷积核沿着图象滑动,如果卷积核对应的原图的所有像素值为1,那么中心元素就保持原来的值,否则变为零。主要应用在去除白噪声,也可以断开连在一起的物体。主要的函数是cv2.ero
2018-01-29 10:04:04 553
原创 opencv教程(基于python)----图象平滑处理
图象平滑处理其实就是用滤波器对图象进行模糊,也可以看成一种去噪的方式。平均这里的原理是用卷积框覆盖区域所有像素的平均值代替中心元素,这里用到的主要函数是cv2.blur() cv2.blur(src, ksize, dst=None, anchor=None, borderType=None)src是图象,ksize是框的大小,剩下的元素可以忽略了。import
2018-01-28 11:16:09 1551
原创 opencv教程(基于python)----几何变换
几何变换的几个操作其实就是缩放,移动,旋转,放射变换。先看缩放,主要函数是resize,形式为resize(img,(x,y),interpolation=)。img是原图像;第二个参数是缩放的规模,可以自定义;interpolation是变换方法,默认的是interpolation=CV2.INTER_LINEAR,此外还有CV2.INTER_NN,CV2.INTER_AREA像素关系重采样
2018-01-26 09:32:48 618
原创 opencv教程(基于python)----图象运算
图象的运算主要有加减,位运算等。对于图象的加减来说注意图象的大小和数据类型一样。图象混合主要是addWeighted函数,形式为cv2.addWeighted(src1, alpha, src2, beta, gamma[, dst[, dtype]])scr1是第一个图片,alpha是透明度;src2是第二个图片,beta是透明度。两个通名都加起来是1.后面的gamma有点玄学默认为0就
2018-01-24 11:48:09 728
原创 opencv教程(基于python)----关于滑条
其实关于调色板就两个主要的函数CV2.getTrackbarPos和CV2.createTrackbar函数。分别看一下这两个函数的作用吧,getTrackbarPos是得到滑动条的位置并返回,具体的格式为cv2.getTrackbarPos('G','image')第一个参数是轨迹条的名称,第二个参数是画板的名称。createTrackbar函数是创建一个轨迹条可以附加在
2018-01-22 10:31:34 1124
原创 opencv教程(基于python)----关于调用鼠标
关于鼠标操作最重要的是setMousecallback函数,这是鼠标操作的核心函数。下面看一下具体的用法:cv2.setMouseCallback('image',draw_circle,[img,a])第一个参数是窗口的名称,第二个参数是被传值的函数,第三个参数是你要传递的参数(可以被省略。。)这里的被传值的draw_circle函数也不是你自己随便DIY的函数,也是有具体的
2018-01-21 10:37:52 751
原创 opencv教程(基于python)----关于绘图
毫无疑问,python的绘图功能可不是c++可以比的,接下来我们来看看一些基本的opencv的绘图函数。有基本的画直线,矩形,圆椭圆,还有添加文字。import cv2import numpy as npimport matplotlib.pyplot as pltimg=np.zeros((512,512,3),np.uint8)#画直线cv2.line(img,(0,0),(
2018-01-20 11:00:16 407
原创 opencv教程(基于python)----关于视频
以后争取每天一更,估计写完的时候,我们可以达到写出一个目标追踪的程序,或者微信跳一跳的刷分程序(这个失败了,亲身试过分数提交失败)。接下来进行关于视频的基本操作。这里重点介绍两个函数CV2.VideoCapture()和CV2.VideoRead()函数,看出来了吧,一个是读视频一个是写函数。下面具体介绍一下用法。import cv2import numpy as npcap=cv2.
2018-01-17 10:36:14 1954 2
原创 基于python的opencv教程
第一次写博客,学习是要有输入与输出的,所谓教学相长。所以我想试着自己写一份教程,算是对自己的学习总结吧,博客的排版比较直男,请凑合看吧。首先建议的IDE是pycharm,opencv的库直接pip安装就好,最好大家有一定的python基础。第一部分是关于图象读取和保存。import cv2import numpy as np#导入图象img=cv2.imread('C:/U
2018-01-12 15:24:10 1072
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人