OpenCV
文章平均质量分 55
NCUTer
图像算法工程师,主要记录一些学习工作上的项目小案例,目前工作涉及视觉相关的缺陷检测、定位识别、定制化检测方面的内容。空闲时间会研究一些深度学习方面的知识,不管什么,欢迎大家一起学习交流~
展开
-
Forstner与Harris点特征提取算子c++
功能:Points_foerstner从图像中提取显著点。显著点是与领域不同的点,即,图像函数在二维种变化的点。这些变化一方面在图像边缘的交点(称为交点),另一方面发生在颜色或亮度与周围邻居不同的地方(称为面积点)。优化函数的局部极小值决定了所提取的点。原创 2023-08-15 09:33:35 · 311 阅读 · 0 评论 -
基于OpenCV [c++]——形态学操作(分析和应用)
形态学的击中击不中操作, 击中击不中也是基础形态学操作组合,它可以实现对象的细化跟剪枝操作,根据结构元素不同,可以提取二值图像中的一些特殊区域,得到我们想要的结果。图像形态学的梯度跟我们前面介绍的图像卷积计算出来的梯度有本质不同,形态学梯度可以帮助我们获得连通组件的边缘与轮廓,实现图像轮廓或者边缘提取。它的原理就是使用腐蚀;(后面的开闭运算等重要的也是结构元素的设计,一个合适的结构元素的设计可以带来很好的处理效果。1️⃣腐蚀操作的原理就是求局部最小值的操作,并把这个最小值赋值给参考点指定的像素。原创 2023-05-30 17:13:21 · 3207 阅读 · 0 评论 -
opencv[c++] findContours()轮廓特征分析大全(求面积、周长、几何矩、质心、凸包、最小外接矩形、最小外接三角形、最小外接椭圆等)---后续完善总结版本
在OpenCV里面利用findContours()函数和drawContours()函数实现这一功能。参数一: image,输入图像、八位单通道的,背景为黑色的二值图像。(一般是经过Canny、拉普拉斯等边缘检测算子处理过的二值图像)参数二:contours,输出轮廓图像。是一个向量,向量的每个元素都是一个轮廓。因此,这个向量的每个元素仍是一个向量。即: vector<vector<Point> > contours;参数三:hierarchy,输出各个轮廓原创 2022-07-03 20:27:42 · 14062 阅读 · 0 评论 -
opencv[c++] findContours()轮廓特征分析大全(求面积、周长、几何矩、质心、凸包、最小外接矩形、最小外接三角形、最小外接椭圆等)
opencv[c++] findContours()轮廓特征分析大全(求面积、周长、几何矩、质心、凸包、最小外接矩形、最小外接三角形、最小外接椭圆等)原创 2022-06-26 22:08:15 · 2122 阅读 · 0 评论 -
opencv [c++] OpenCV实现Halcon相关算子算法
Halcon部分算子 的 OpenCV[c++] 实现原创 2022-06-25 23:23:54 · 3731 阅读 · 4 评论 -
OpenCV [c++](图像处理基础示例程序汇总)
目录一、图像读取与显示二、图像预处理[高斯滤波、canny边缘检测、膨胀腐蚀]Canny边缘检测三、图像裁剪 四、绘制形状和添加文本 五、透视投影变换矫正 六、颜色检测 七、形状检测和轮廓检测[findContours(),approxPolyDP()] 八、人脸识别九、虚拟画笔作画十、文档扫描 十一.车牌区域级联检测定位opencv与VS环境配置参考我的另一篇文章:vs2019 + opencv4.3.0 开发环境配置(后续更新QT与OpenCV配置)_NCUTer的博客-CSDN博客 wait原创 2022-06-25 10:39:49 · 8132 阅读 · 0 评论 -
opencv [c++] 连通域分析connectedComponentsWithStats() 和 connectedComponents()
labels :对原始图中的每一个像素都打上标签,背景为0,连通域打上1,2,3。。。的标签,同一个连通域的像素打上同样的标签。相当与对每一个像素进行了分类(分割)2.设置连通域 connectedComponentsWithStats() 精简版【参考网上资料】:connectedComponents()用的较少,和上述用法大致相同。...............原创 2022-06-23 22:23:04 · 7294 阅读 · 0 评论 -
opencv [c++] 通过滚动条给图像增加正弦波纹以及波浪
2.程序运行效果图:未处理原图处理效果图原创 2022-06-21 11:28:52 · 349 阅读 · 0 评论 -
OpenCV的 Mat对象 与Halcon的 HImage对象 的相互转换
OpenCV的 Mat对象 与Halcon的 HImage对象 的相互转换原创 2022-06-17 22:57:04 · 1462 阅读 · 0 评论 -
opencv [c++] 轮廓查找与绘制及轮廓特征属性的应用
opencv [c++] 轮廓查找与绘制及轮廓特征属性的应用原创 2022-06-01 22:48:34 · 1354 阅读 · 0 评论 -
opencv [c++] 单模板匹配与多模板匹配
opencv [c++] 单模板匹配与多模板匹配原创 2022-06-01 00:10:38 · 1034 阅读 · 0 评论 -
opencv [c++] 利用滚动条进行对比度与亮度调节以及拆分颜色通道
#include <iostream>#include<opencv2/opencv.hpp>using namespace std;using namespace cv;Mat srcImg;Mat dstImg;int Contrast_value = 20;int Bright_value = 20;//滚动条回调事件void onChange(int, void*){ for (int i = 0; i < srcImg.rows; i++).原创 2022-05-21 16:55:26 · 667 阅读 · 0 评论 -
OpenCV [c++]画矩形框截图显示ROI并保存 以及 滚动条视频播放控制
实例1:鼠标事件SetMouseCallBack画矩形框截图显示ROI并保存#include <iostream>#include<opencv2/opencv.hpp>using namespace std;using namespace cv;Mat srcImg, temp, ROI;Point p;bool flag =false; void onMouse(int event, int x, int y, int flags, void* para原创 2022-05-16 20:34:03 · 1440 阅读 · 0 评论 -
opencv [c++] 滚动条操作事件
1.opencv中使用createTrackbar函数来进行滚动条的操作,createTrackbar函数创建一个可以调整数值的轨迹条,并将轨迹条附加到指定的窗口上,使用起来很方便。函数原型: int createTrackbar(conststring& trackbarname, conststring& winname,int* value, int count, TrackbarCallback onChange=0,void* userdata=0); 第一个参数,con原创 2022-05-16 16:08:09 · 437 阅读 · 0 评论 -
Opencv鼠标回调函数[SetMouseCallBack]
#include <iostream>#include<opencv2/opencv.hpp>using namespace std;using namespace cv;Mat img;void onMouse(int event, int x, int y, int flags, void* param){ if (event == EVENT_LBUTTONDOWN) { cout << "Mouse Down" &l.原创 2022-05-16 12:24:32 · 1566 阅读 · 0 评论 -
OpenCV [C++]-图像大小计算以及获取图像的尺寸和通道数
1.图像的尺寸就是高和宽,对于二维数组(矩阵)的行数和列数#include <opencv2\opencv.hpp>#include<iostream>using namespace cv;using namespace std;int main() { Mat src; src = imread("D:/lena.png"); if (src.empty()) { printf("could not find the picture!"); retur原创 2022-05-15 11:47:48 · 12261 阅读 · 0 评论 -
QT5.14 [MSVC 2017编译版]与 OpenCV4.3.0 联编环境配置
1.下载好OpenCV4.3.0之后在系统中添加好OpenCV的环境变量,若不明白则可参考如下我另一篇VS的配置博文或者参考其他环境变量指导。vs2019 + opencv4.3.0 开发环境配置(后续更新QT与OpenCV配置)_NCUTer的博客-CSDN博客2.其次创建一个基于MSVC编译器的QT项目文件(QWidget Application),然后第一要义为切换成Release编译版本,然后构建运行一下为接下来做准备。3.添加库引用4.工程文件添加代码//QT..原创 2022-05-14 22:36:32 · 629 阅读 · 0 评论 -
vs2019 + opencv4.3.0 开发环境配置(后续更新QT与OpenCV配置)
1、环境配置首先设置环境变量Path,添加路径是opencv所在的路径,以我的路径为例:D:\OpenCV 4.3.0\opencv\build\x64\vc15\bin其中,vc14是用于vs2015的,vs2019使用vc15目录2、打开vs2019,创建一个C++控制台新项目3、点击“视图”菜单,然后在下拉菜单的其他窗口选项选择“属性管理器”4、在左侧的“属性管理器”侧栏,在Debug | x64上右键单击,选择“添加新项目属性表”5、新添加的属性表会显示在左边原创 2022-05-14 17:02:15 · 976 阅读 · 2 评论