OpenCV4【22】-模板匹配与特征点匹配
摘要:模板匹配 业务描述:从 一张图 中找到 和 模板图片 “非常相似” 的区域,获取该区域坐标; 原理简介:用 模板图像 在 原图上 滑动,然后计算 滑到的区域 和 模板 的相似程度,如像素差,把该值 记录在 对应位置,过程类似卷积; 滑完后,找到 相似程度 最大的 坐标,还原到 原图的坐标,加上 模板
阅读全文
OpenCV4【21】拉普拉斯算子 进行 模糊检测
摘要:原理简介 让图像的单一通道(大概灰度)和以下3 x 3的内核进行卷积 然后取相应的方差。 如果方差低于预先定义的阈值,则认为图像模糊;否则,图像不会模糊。 这种方法有效的原因是由于Laplacian算子本身的定义,它用于测量图像的二阶导数。 拉普拉斯算子突出显示图像中包含快速梯度变化的区域,很像So
阅读全文
OpenCV4【18】-DNN 之 人体姿态评估
摘要:首先需要下载人体姿态评估的预训练模型。 基于COCO数据集训练的模型下载地址:http://posefs1.perception.cs.cmu.edu/OpenPose/models/pose/coco/pose_iter_440000.caffemodel 基于MPI数据集训练的模型下载地址:ht
阅读全文
OpenCV4【16】-DNN 模块
摘要:简介 随着计算机视觉的流行,opencv 也专门开发了 dnn 模块来实现 深度神经网络相关 的功能; 虽然 opencv 无法训练模型,但它支持 载入其他 深度学习框架训练好的模型,并使用该模型进行预测 inference; 而且 opencv 在载入模型时会使用 dnn 模块对模型进行重写,使得
阅读全文
OpenCV4【17】-DNN 之 yolov3 目标检测
摘要:首先下载网络配置文件、权重文件、label文件 wget https://pjreddie.com/media/files/yolov3.weights wget https://github.com/pjreddie/darknet/blob/master/cfg/yolov3.cfg wget
阅读全文
OpenCV4【15】-霍夫变换
摘要:在图像处理中,霍夫变换可以用来检测 各种形状,如 直线、圆、椭圆 等 霍夫空间 在笛卡尔坐标系下,一条直线可以表示为 y=kx+b,两点可以确定一条直线; 如果把表达式改为 b=-kx+y,则转换到了 霍夫空间,该空间 横坐标是 k,纵坐标是 b,可以看到 一组 (k,b) 就可以确定一条直线; 即
阅读全文
目标检测(5)-faster rcnn 生成 anchor 的过程 解析
摘要:看本文之前,请先了解 faster rcnn 的网络结构及原理; 其中 关于 anchor 的部分比较晦涩,不容易搞清楚,本文重点解释下; 先上代码 import numpy as np # 生成anchors总函数:ratios为一个列表,表示宽高比为:1:2,1:1,2:1 # 2**x表示:2
阅读全文
OpenCV4【11】-图像梯度
摘要:图像梯度 在模糊的图像中,物体的轮廓不明显,轮廓边缘灰度变化不明显,导致层次感不强; 而清晰的图像中,物体的轮廓很清晰,轮廓边缘灰度变换明显,层次感强; 这种变化明显与否可以用 导数或梯度 来衡量,实际上可以用 灰度变化率 来计算; 如下图 如果相邻像素相同,灰度变化率为0,没有梯度; 如果相邻像素
阅读全文
OpenCV4【14】-实例 提取特定区域
摘要:源图像 目标是 提取 四个 大圈圈 ; 具体项目描述见 参考资料 实现过程 import cv2 as cv import numpy as np img0 = cv.imread('imgs/640.webp') ########### 预处理 img = cv.cvtColor(img0, cv
阅读全文
OpenCV4【13】-轮廓检测与属性
摘要:轮廓可以简单理解成 具有相同颜色或灰度的 连续的点 连成的曲线; 轮廓在形状分析、物体检测、物体识别 中很有用; 注意: 1.为了准确,需要使用 二值化 图像,故需进行 阈值化处理 或 canny 边缘检测 2.opencv 中与轮廓相关的函数 会改变原始图像 轮廓检测与绘制 def findCon
阅读全文
OpenCV4【12】-边缘检测
摘要:Canny 边缘检测 Canny 边缘检测是一种被广泛应用的算法,效果较好 原理 详见 参考资料1 没搞懂,先记下来,空了研究吧 该方法使用了比高斯差分算法更复杂的技巧,如多向灰度梯度和滞后阈值化。 Canny边缘检测器算法基本步骤: 平滑图像:通过使用合适的模糊半径执行高斯模糊来减少图像内的噪声。
阅读全文
卷积神经网络CNN - padding 小结
摘要:padding 有时候容易迷糊,这里汇总一下 卷积中的 padding 当取 SAME 时,原则上保持输入和输出尺寸相同,但这只是在 步长为1时 如此, 总结来说, n 表示 输入尺寸 f 表示 卷积核尺寸 s 表示 步长 p 表示 padding 的尺寸 out 表示 输出尺寸 p = (f -
阅读全文
Failed to get convolution algorithm. This is probably because cuDNN failed to initialize
摘要:tensorflow 在 gpu 上训练时报如下错误 Failed to get convolution algorithm. This is probably because cuDNN failed to initialize 解决办法 加上如下代码 import os import tenso
阅读全文