cv2.IMREAD_COLOR:彩色图像
cv2.IMREAD_GRAYSCALE:灰度图像
每一个像素点的值是由0-255组成的。(一般都是RGB三颜色通道组成的)
将图片输入进计算机,将图片转换成像素矩阵的形式。
将输出图像的过程定义为一个函数。
这样输出的形式就是像素矩阵形式,并输出一个图片。
在waitkey括号里面的数字表示等待关闭的毫秒数,当数字为0的时候,输入任意键可关闭窗口。
直接用shape语句可以获得图像的属性。
.size可以查出图像的大小,dtype可以查询图片的类型。
可以改变固定大小,在不知道要改多大的时候也可以使用方所的功能。
Canny边缘检测
①使用高斯滤波器,以平滑图像,滤除噪声。
②计算图像中每个像素点的梯度强度和方向。
③应用非极大值抑制,以消除边缘检测带来的杂散相应
④应用双阈值检测来确定真实的和潜在的边缘。
⑤通过抑制孤立的弱边缘最终完成边缘检测。
1.使用高斯滤波器
2.梯度和方向
3.非极大值抑制
线性差值法非常繁琐,所以通常使用下列方法。
如果A的值比B比C的值都大,就把A的值保留下来,求得A的边界。
4.双阈值检测
如果minval设置的过低,会获取过多的边缘。(maxval同理)
如果minval设置的过高,会获取较少的边缘。(maxval同理)
图像金字塔
高斯金字塔和拉普拉斯金字塔。
图像变大是上采样,图像变小是下采样。
图像轮廓
一般情况下都使用RETR_TREE
不断用线段来取轮廓近似。
模版匹配
找到图像中区域与模板最相近的部分。
模板匹配和卷积原理很像,模板在原图像上从原点开始滑动,计算模板与(图像被模板覆盖的地方)的差别程度,这个差别程度的计算方法在opencv里有6种,之后将每次计算的结果放入一个矩阵里,作为结果输出。加入原图形是A×B大小,而模板是a×b大小,则输出结果的矩阵是
(A-a+1)×(B-b+1)
图像特征-harris角点检测
判断平移后的自相似性
因为对角线相等,所以是一个实对称阵,一定能找到N个单位特征向量,使得它能够进行对角化操作。
c(x,y···)近似为一个椭圆
通过一定方式将椭圆扭过来。