opencv
lc_MVP
这个作者很懒,什么都没留下…
展开
-
ubuntu18.04下qt调用opencv使用yolov5 onnx模型推理
报错信息:14:error:undefined reference to 'cv::dnn:dnn4_v202111220::Net::~Net()'解决办法:需要在pro文件中加入红框的库,即可完美运行。结果展示:原创 2022-04-24 15:43:35 · 3595 阅读 · 2 评论 -
opencv图像操作——轮廓周围绘制矩形
基于RDP算法实现,目的是减少多边形轮廓点数。流程:首先将图像变为二值图像发现轮廓,找到图像轮廓通过相关API在轮廓点上找到最小包含矩形和圆,旋转矩形和椭圆绘制他们代码如下:#include<opencv2/opencv.hpp>#include<iostream>using namespace std;using namespace cv;Mat src, dst, gray_src;int threshold_value = 100;...原创 2022-03-31 10:50:08 · 4790 阅读 · 0 评论 -
opencv图像操作——凸包
概念:在一个多边形边缘或者内部任意两个点的连线都包含在多边形边界或者内部。检测算法:Graham扫描法正式定义:包含集合S中所有点的最小凸多边形称为凸包。Graham扫描法:首先选择Y方向最低的点作为起始点p0,从p0开始极坐标扫描,依次添加p1...pn(排序顺序是根据极坐标的角度的大小,逆时针方向)对每个点pi来说,如果添加pi点到凸包中导致一个左转向(逆时针方法)则添加该点到凸包,反之如果导致一个右转向(顺时针方向)删除该点从凸包中流程:首先把图像从RGB转为灰度然后在转为二值图.原创 2022-03-31 10:11:49 · 3662 阅读 · 0 评论 -
opencv图像操作——霍夫变换直线检测
霍夫直线变换:Hough Line Transform用来做直线检测;前提条件-边缘检测已经完成;平面空间到极坐标空间转换;检测直线原理:对于任意一条直线上的所有点来说,变换到极坐标中,从[0,360]空间,可与得到r的大小,属于同一条直线上的点在极坐标空(r,theta)必然在一个点上有最强的信号出现,根据此反算到平面坐标中就可以得到直线上各点的像素坐标。从而得到直线。代码如下:#include<opencv2/opencv.hpp>#include<iost原创 2022-03-28 09:26:37 · 4234 阅读 · 0 评论 -
opencv图像操作——边缘检测
Canny边缘检测算法流程:高斯模糊——GaussianBlur灰度转换——cvtColor计算梯度——Sobel/Scharr非最大信号抑制高低阈值输出二值图像Canny——高低阈值输出二值图像T1,T1为阈值,凡是高于T2的都保留,凡是小于T1都丢弃,从高于T2的像素出发,凡是大于T1而且相互连接的,都保留。最终得到一个输出二值图像推荐的高低阈值比例为T2 : T1 = 3:1 / 2:1 ,其中T2为高阈值,T1为低阈值代码如下:#include<opencv2原创 2022-03-28 09:16:18 · 322 阅读 · 0 评论 -
opencv图像操作——基本阈值操作
阈值(threshold):图像分割的标尺。阈值类型:阈值二值化(threshold binary)阈值反二值化(threshold binary Inverted)截断(truncate)阈值取零(threshold to zero)阈值反取零(threshold to zero Inverted)实现代码如下:#include<opencv2/opencv.hpp>#include<iostream>using namespace std;usin原创 2022-03-25 09:27:46 · 236 阅读 · 2 评论 -
opencv图像操作——上下采样
opencv上下采样原创 2022-03-25 09:19:31 · 1041 阅读 · 0 评论 -
opencv图像操作——膨胀与腐蚀
opencv——膨胀与腐蚀原创 2022-03-24 09:07:10 · 3413 阅读 · 0 评论 -
opencv图像操作——模糊图像
均值滤波模糊高斯模糊中值滤波模糊高斯双边模糊均值模糊无法克服边缘像素信息缺失缺陷。原因是均值滤波是基于平均权重的;高斯模糊部分克服了该缺陷,但是无法完全避免,因为没有考虑像素值的不同;中值滤波对椒盐噪声有很好的抑制作用;高斯双边模糊是边缘保留的滤波方法,避免了边缘信息的丢失,保留了图像轮廓不变。具体代码实现:#include <opencv2/opencv.hpp>#include <iostream>using namespace std;u原创 2022-03-23 10:12:57 · 447 阅读 · 0 评论 -
opencv图像操作——打开图像获得灰度图的反差图
本机环境为vs2017+opencv3.4.1。首先需要在vs中配置opencv,右击项目,点击属性,在VC++目录中的包含目录和库目录中添加如下信息:包含目录中添加:(此处根据自己电脑中opencv的路径进行添加)D:\opencv\build\include\opencv2D:\opencv\build\include\opencvD:\opencv\build\include库目录中添加:(此处根据自己电脑中opencv的路径进行添加)D:\opencv\build\.原创 2022-03-21 10:33:39 · 3928 阅读 · 0 评论