OpenCV使用GrabCut实现抠图
摘要:一、概述 案例:使用OpenCV的GrapCut实现有用户交互的抠图 grabCut( InputArray img, InputOutputArray mask, Rect rect, InputOutputArray bgdModel, InputOutputArray fgdModel, in
阅读全文
posted @
2022-04-14 22:07
飘杨......
阅读(1724)
推荐(0) 编辑
Qt的mouseMoveEvent捕获鼠标事件不生效的解决办法
摘要:一、概述 案例:在使用OpenCV的grabCut算法实现简单抠图操作的时候(因为使用到了鼠标坐标选择目标区域),使用到的Qt的鼠标的mousePressEvent(按下)、mouseMoveEvent(移动)、mouseReleaseEvent(释放)事件。实验下来其中只有mousePressEv
阅读全文
posted @
2022-04-13 23:24
飘杨......
阅读(1995)
推荐(0) 编辑
OpenCV使用分水岭算法实现图像分割
摘要:一、概述 案例:使用分水岭算法实现图像的分割实现 API:介绍参考上一遍 实现步骤: 1.输入图像 2.灰度化 3.二值化 4.执行距离变换 5.归一化 6.二值化 7.生成marker:通过findContours+drawContours来创建一个marker 8.将7生成的marker放入分水
阅读全文
posted @
2022-04-12 21:51
飘杨......
阅读(406)
推荐(0) 编辑
OpenCV使用分水岭变换来实现图像中对象计数
摘要:一、概述 案例:使用分水岭变换来实现图像中对象计数,达到统计图像中对象数目的目的 重要API介绍: watershed(src,markers);src:原图像markers:目标markers,生成markers是通过findContours边沿查找+drawContours来实现的。ps:这一步
阅读全文
posted @
2022-04-12 20:21
飘杨......
阅读(358)
推荐(0) 编辑
OpenCV使用GMM实现图像分割
摘要:一、概述 案例:使用GMM机器学习算法实现图像分割 相关API介绍: Ptr<EM> emModel = EM::create();//创建EM实例 emModel->setClustersNumber(numCluster);//设置分类个数 emModel->setCovarianceMatri
阅读全文
posted @
2022-04-11 12:11
飘杨......
阅读(348)
推荐(0) 编辑
使用OpenCV的kmeans实现图像分割
摘要:一、概述 案例:使用kmeans算法实现图像分割 kmeans算法参数介绍: kmeans( InputArray data, int K, InputOutputArray bestLabels, TermCriteria criteria, int attempts, int flags, Ou
阅读全文
posted @
2022-04-10 16:34
飘杨......
阅读(415)
推荐(0) 编辑
OpenCV使用级联分类器实现猫脸检测
摘要:一、概述 ps:步骤同上一篇https://www.cnblogs.com/tony-yang-flutter/p/16121237.html 二、代码示例 String catFile = "/usr/local/share/opencv4/haarcascades/haarcascade_fro
阅读全文
posted @
2022-04-09 11:40
飘杨......
阅读(78)
推荐(0) 编辑
OpenCV使用级联分类器找出视频文件中的人脸
摘要:一、概述 案例:使用OpenCV自带的级联分类器找出视频中的人脸 操作步骤: 1.实例化VideoCapture 2.使用其open方法打开文件 3.检测是否打开了文件 4.创建CascadeClassifier实例 5.加载加载特征数据 6.循环读取视频文件中的每一帧 7.将读取出来的视频帧转为灰
阅读全文
posted @
2022-04-09 11:18
飘杨......
阅读(256)
推荐(0) 编辑
使用OpenCV中的Haar特征检测图片中的人脸
摘要:一、概述 案例:使用OpenCV的Haar特征数据检测人脸。 相关API介绍 1.使用CascadeClassifier类 2.使用其load方法加载特征文件 3.使用其detectMultiScale方法在多尺度空间进行检测,其中该参数解释如下: /** @brief Detects object
阅读全文
posted @
2022-04-06 16:15
飘杨......
阅读(200)
推荐(0) 编辑
OpenCV使用brisk做一个简单的场景匹配
摘要:一、概述 案例:使用opencv+qt+brisk实现关键点提前、生成描述子,并使用BFMatcher实现场景对象匹配,最后使用drawMatches将匹配结果绘制出来 实现步骤: 1.使用Qt制作场景对象及场景图像的选择页面,并放置一个按钮开始检测 2.使用imread载入场景图像及场景对象 3.
阅读全文
posted @
2022-03-25 16:14
飘杨......
阅读(166)
推荐(0) 编辑
OpenCV使用级联分类器实现人脸检测
摘要:一、概述 案例:使用opencv级联分类器CascadeClassifier+其提供的特征数据实现人脸检测,检测到人脸后使用红框画出来。 API介绍:detectMultiScale( InputArray image, CV_OUT std::vector<Rect>& objects,doubl
阅读全文
posted @
2022-03-23 16:56
飘杨......
阅读(316)
推荐(0) 编辑
OpenCV使用ingegral计算积分图
摘要:一、概述 案例:使用OpenCV中的integral计算图像积分图及平方像素积分图 API描述: integral( InputArray src, OutputArray sum, OutputArray sqsum, int sdepth = -1, int sqdepth = -1 );src
阅读全文
posted @
2022-03-23 15:06
飘杨......
阅读(367)
推荐(0) 编辑
OpenCV使用HOGDescriptor实现行人检测
摘要:一、概述 案例:使用HOGDescriptor实现行人检测 实现步骤: 1.载入图像 2.图像灰度化 3.实例化HOGDescriptor,并使用SVM检测器来检测行人 4.使用detectMultScale在不同的尺度空间上实现行人检测 5.将4中检测到的行人矩形框绘制出来,并输出最终结果 在多尺
阅读全文
posted @
2022-03-23 13:42
飘杨......
阅读(623)
推荐(0) 编辑
OpenCV计算卫星云图大致面积及周长
摘要:一、概述 案例:使用OpenCV实现卫星云图的周长面积计算 实现步骤: 1.输入图像 2.对图像进行高斯模糊,主要是为了降噪 3.图像灰度化 4.图像二值分割 5.执行形态学操作去除小点并使对象黏连 6.轮廓发现,并过滤目标轮廓 7.计算轮廓周长及面积 8.输出目标图像,并在目标图像上显示周长及面积
阅读全文
posted @
2022-03-18 09:40
飘杨......
阅读(339)
推荐(0) 编辑
OpenCV利用透视变换矫正图像
摘要:一、概述 案例:使用OpenCV将一张折射的图片给矫正过来 实现步骤: 1.载入图像 2.图像灰度化 3.二值分割 4.形态学操作去除噪点 5.轮廓发现 6.使用霍夫直线检测,检测上下左右四条直线(有可能是多条,但是无所谓) 7.绘制出直线 8.寻找与定位上下左右是条直线 9.拟合四条直线方程 10
阅读全文
posted @
2022-03-17 17:40
飘杨......
阅读(1450)
推荐(0) 编辑
OpenCV找出图片中的圆并标注圆心
摘要:一、概述 案例:输入一张图片找到图片中的一个圆,并标注圆心 实现步骤: 1.输入原图 2.图像图像灰度化 3.图像二值化 4.执行形态学操作去除噪点 5.边缘检测 6.轮廓发现 7.根据面积和纵横比过滤目标轮廓 8.找出圆心并绘制圆心 9.在原图上也绘制圆心并输出 二、代码示例 //【1】载入图像
阅读全文
posted @
2022-03-17 15:32
飘杨......
阅读(3198)
推荐(0) 编辑
OpenCV将考试卷中的直线提取出来并标注直线
摘要:一、概述 案例:识别考试卷中的填空的直线,并用红色线描述出来 实现步骤: 1.载入图像 2.转灰度图像 3.图像二值化 4.使用形态学开操作去除文本部分,只保留直线 5.使用形态学膨胀操作使保留的直线黏连 6.使用使用霍夫直线检测找到图中的直线 7.根据直线坐标绘制直线到原图上 8.输出最终图片 二
阅读全文
posted @
2022-03-17 14:16
飘杨......
阅读(331)
推荐(0) 编辑
使用OpenCV对图像进行切边
摘要:一、概述 案例:使用OpenCV对旋转图片及正常图片进行切边。 A:对正常图片切边的步骤 1.加载图像 2.对图像进行灰度化 3.边缘检测 4.轮廓发现 5.找出符合目标的最大外接矩形,并使用矩形的四个坐标点绘制线 6.根据找到Rect在原图上切除ROI区域 7.显示ROI区域 B:对旋转图像切边的
阅读全文
posted @
2022-03-16 10:41
飘杨......
阅读(500)
推荐(0) 编辑
OpenCV使用goodFeaturesToTrack实现角点检测
摘要:一、概述 案例:使用goodFeaturesToTrack实现角点检测 特点:goodFeaturesToTrack的检测速度比cornerHarris角点检测的速度更加快速,且API的使用更加方便 goodFeaturesToTrack(src,corners,maxCorners,quality
阅读全文
posted @
2022-03-13 22:25
飘杨......
阅读(1476)
推荐(0) 编辑
OpenCV实现角点检测(cornerHarris)
摘要:一、概述 案例:使用cornerHarris实现角点检测,并调节其参数看看不同参数下的不同效果 技术:Qt+C+++OpenCV 角点检测函数介绍:cornerHarris(src,dst,blockSize,ksize,k,BORDER_DEFAULT)1.src:必须是单通道8位或者32位浮点图
阅读全文
posted @
2022-03-13 15:32
飘杨......
阅读(1481)
推荐(0) 编辑