自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 收藏
  • 关注

原创 OpenCV联合C++/Qt 学习笔记(二十五)----加载深度神经网络模型及深度神经网络模型的使用

本文介绍了OpenCV DNN模块加载和使用深度神经网络模型的方法。主要内容包括:1)通过readNet()函数加载Caffe、TensorFlow等不同框架的模型文件;2)使用blobFromImage()函数对输入图像进行尺寸转换、归一化等预处理;3)通过setInput()和forward()函数执行网络推理;4)提供了图像分类、风格迁移和人脸性别识别三个应用示例。这些示例展示了如何加载预训练模型、处理输入数据、执行推理并解析输出结果,为计算机视觉任务中的深度学习应用提供了实用参考。

2026-05-23 14:54:37 159

原创 OpenCV联合C++/Qt 学习笔记(二十五)----监督学习聚类及K均值聚类

本文介绍了监督学习和K均值聚类两种机器学习方法。监督学习部分详细讲解了K近邻算法和支持向量机的原理及OpenCV实现,包括KNN手写数字识别和SVM二维坐标点分类的完整代码示例。K均值聚类部分阐述了其无监督学习原理,展示了OpenCV中kmeans函数的使用方法,并提供了二维点集聚类和图像颜色分割两个应用实例。全文通过具体代码演示了从数据预处理、模型训练到结果可视化的完整流程,为机器学习实践提供了实用参考。

2026-05-22 14:35:24 161

原创 OpenCV联合C++/Qt 学习笔记(二十四)----差值法检测移动物体、稠密光流法跟踪移动物体及稀疏光流法跟踪移动物体

本文介绍了三种视频运动物体检测与跟踪方法:1)差值法通过帧间像素差异检测运动区域,包括两帧/三帧差分、二值化和形态学处理;2)稠密光流法(Farneback算法)计算所有像素的运动向量,通过HSV可视化运动方向和幅度;3)稀疏光流法(Lucas-Kanade算法)仅跟踪特征点运动,结合角点检测实现目标跟踪。每种方法均提供OpenCV函数说明和C++实现代码,涵盖图像预处理、参数设置和结果可视化等关键步骤,适用于不同场景下的运动分析需求。

2026-05-21 15:06:59 465

原创 OpenCV联合C++/Qt 学习笔记(二十三)----图像校正及单目位姿估计

本文介绍了计算机视觉中的图像校正和单目位姿估计技术。图像校正部分详细说明了利用相机标定参数去除镜头畸变的方法,包括OpenCV的undistort()函数使用及示例代码。单目位姿估计部分阐述了通过solvePnP()函数求解目标物体相对于相机的位置和姿态的原理,对比了其与相机标定的区别,并提供了基于棋盘格的位姿估计实现代码。两种技术共同构成了计算机视觉中从二维图像恢复三维信息的重要基础。

2026-05-21 09:51:54 296

原创 OpenCV联合C++/Qt 学习笔记(二十二)----相机模型与投影及单目相机标定

本文介绍了单目相机模型及其标定方法。主要内容包括:1)单目相机的小孔成像原理和坐标系转换过程,重点阐述了相机内参矩阵的作用;2)相机畸变类型及其数学表示;3)OpenCV中的投影函数projectPoints的使用方法;4)单目相机标定的原理和流程,包括标定板角点提取、亚像素优化和标定函数calibrateCamera的应用。文章通过代码示例详细演示了从三维世界坐标到二维像素坐标的投影过程,以及完整的相机标定实现步骤,为计算机视觉中的相机标定提供了实用指导。

2026-05-20 16:26:32 638

原创 OpenCV联合C++/Qt 学习笔记(二十一)----ORB特征点、特征点匹配及RANSAC优化特征点匹配

本文介绍了OpenCV中ORB特征点检测、特征匹配以及RANSAC优化的基本原理与实现方法。ORB结合FAST角点检测与BRIEF描述子生成,具有速度快、鲁棒性强的特点,适用于目标识别与图像匹配。文章详细说明了ORB特征提取流程、BFMatcher暴力匹配方法以及match、knnMatch、radiusMatch等常用匹配函数的作用。随后通过汉明距离筛选错误匹配点,并利用RANSAC算法结合findHomography函数进一步剔除误匹配,提高匹配精度与稳定性。

2026-05-18 08:45:37 283

原创 OpenCV联合C++/Qt 学习笔记(二十)----Harri角点检测、Shi-Tomas角点检测及亚像素级别角点位置优化

本文介绍了三种角点检测方法:1)Harris角点检测通过计算矩形区域移动前后的像素差值来识别角点,使用cornerHarris函数实现;2)Shi-Tomasi角点检测改进Harris算法,采用goodFeaturesToTrack函数自动筛选稳定特征点;3)亚像素级优化通过cornerSubPix函数将角点坐标精确到小数级别。文中提供了各方法的OpenCV实现代码示例,包括图像预处理、角点检测和结果可视化步骤,并比较了不同算法的特点和应用场景。

2026-05-14 14:16:11 300

原创 OpenCV联合C++/Qt 学习笔记(十九)----图像分割

本文介绍了两种图像分割方法:漫水填充和分水岭算法。漫水填充通过种子点生长,基于像素差值阈值填充连通区域,使用cv::floodFill函数实现,支持4/8邻域填充和掩码控制。分水岭算法模拟注水过程形成分割边界,通过cv::watershed函数处理标记图像,最终生成彩色分割结果。两种方法均提供OpenCV代码示例,包括参数设置、图像处理和结果显示步骤,适用于不同场景的图像分割需求。

2026-05-14 09:59:08 197

原创 OpenCV联合C++/Qt 学习笔记(十八)----二维码检测及积分图像

本文介绍了二维码检测和积分图像两个计算机视觉技术。在二维码检测部分,详细说明了QR码的结构组成(定位图案、对齐图案等)及其识别原理,并给出了OpenCV中二维码检测、解码的函数接口及示例代码。积分图像部分阐述了其计算原理(通过预先统计像素累加和快速计算任意矩形区域像素和),介绍了OpenCV的integral()函数及其参数说明,同时提供了创建测试图像并计算标准求和、平方求和及倾斜求和积分图像的完整代码示例。两部分内容均包含详细的函数说明和实际应用代码,为图像处理中的二维码识别和区域像素统计提供了实用参考。

2026-05-13 11:25:31 175

原创 OpenCV联合C++/Qt 学习笔记(十七)----凸包检测、直线检测及点集拟合

本文介绍了计算机视觉中三种重要的几何检测方法:凸包检测、直线检测和点集拟合。凸包检测通过cv::convexHull函数计算点集的最小凸多边形包围结构;直线检测使用霍夫变换(HoughLines和HoughLinesP函数)从边缘图像中提取直线参数或线段端点;点集拟合则通过fitLine、minEnclosingCircle和minEnclosingTriangle函数分别实现直线、圆形和三角形的最佳拟合。文中提供了详细的函数参数说明和示例代码,展示了如何在实际图像处理中应用这些方法进行几何形状检测和分析。

2026-05-13 08:33:49 422

原创 OpenCV联合C++/Qt 学习笔记(十六)----图像细化、轮廓检测、轮廓信息统计及轮廓外接多边形

本文介绍了图像处理中的轮廓检测与分析方法。首先阐述了图像细化(骨架化)的原理和ZS细化算法流程,通过迭代删除边界像素点来获取单像素宽度的骨架。其次详细讲解了轮廓检测的概念、与边缘的区别,以及findContours()和drawContours()函数的使用方法。接着介绍了轮廓信息统计技术,包括计算轮廓面积和周长。最后探讨了三种轮廓外接多边形方法:最大外接矩形、最小外接矩形和多边形逼近,并给出了相应的OpenCV函数实现和示例代码。这些技术为图像分析、目标识别等计算机视觉任务提供了基础工具。

2026-05-09 16:07:38 462

原创 OpenCV联合C++/Qt 学习笔记(十五)----形态学操作及应用

本文详细介绍了图像形态学处理中的基本操作和应用。首先阐述了图像腐蚀和膨胀的原理、目的及实现方法:腐蚀用于去除噪声、分离物体和细化边界,膨胀则用于扩大目标、填补孔洞和连接区域。接着讲解了开运算(先腐蚀后膨胀)、闭运算(先膨胀后腐蚀)等复合操作,以及形态学梯度、顶帽/黑帽运算等高级应用。文章提供了完整的OpenCV函数说明和示例代码,包括结构元素生成、腐蚀/膨胀操作实现,以及多种形态学运算的对比演示。这些方法在图像去噪、目标增强、边缘提取等计算机视觉任务中具有重要作用。

2026-05-09 16:07:23 593

原创 OpenCV联合C++/Qt 学习笔记(十四)----连通域分析及图像距离变换

本文介绍了图像处理中的连通域分析与距离变换技术。连通域分析部分详细讲解了4-邻域、D-邻域和8-邻域的概念,以及两遍法分割连通域的原理和实现方法,包括connectedComponents和connectedComponentsWithStats函数的使用。距离变换部分阐述了欧氏距离、街区距离和棋盘距离的计算方式,并演示了distanceTransform函数的应用。文章通过代码示例展示了如何对二值图像进行连通域标记和距离变换操作,包括结果可视化方法。

2026-05-06 17:30:17 210

原创 OpenCV联合C++/Qt 学习笔记(十三)----边缘检测

本文系统介绍了四种经典边缘检测算法。Sobel和Scharr算子基于一阶梯度,分别通过3×3卷积核计算水平和垂直方向边缘,其中Scharr精度更高。Laplacian算子利用二阶导数实现方向无关的边缘检测,但对噪声敏感。Canny算法通过高斯滤波、梯度计算、非极大值抑制和双阈值处理等步骤,综合性能最优。实验对比表明:Canny边缘连续性最好但计算复杂,Sobel/Scharr适合实时应用,Laplacian易受噪声干扰。实际应用中需根据精度、速度和抗噪性需求选择合适的算子。

2026-05-06 11:06:20 552

原创 OpenCV联合C++/Qt 学习笔记(十二)----线性滤波、非线性滤波(中值滤波)及可分离滤波

本文介绍了三种常见的图像线性滤波方法(均值滤波、方框滤波、高斯滤波)和一种非线性滤波方法(中值滤波)。均值滤波通过邻域像素平均值平滑图像,方框滤波可输出像素和或平均值,高斯滤波采用加权平均保留轮廓同时抑制噪声。中值滤波则通过取邻域像素中值有效去除椒盐噪声。此外还介绍了可分离滤波技术,将二维卷积拆分为两个一维滤波提高效率。文中提供了OpenCV函数接口说明和示例代码,展示了不同滤波方法对高斯噪声和椒盐噪声的处理效果。

2026-04-29 11:03:50 213

原创 OpenCV联合C++/Qt 学习笔记(十一)----模板匹配、图像卷积及图像噪声的产生

本文介绍了图像处理中的三大核心技术:模板匹配、图像卷积和噪声处理。模板匹配通过滑动模板图像寻找目标图像中最相似区域,常用于目标定位和缺陷检测。图像卷积利用核矩阵进行邻域像素计算,实现图像增强和特征提取。噪声处理部分详细讲解了椒盐噪声和高斯噪声的产生原理及实现方法,包括随机位置处理和概率分布生成。文章通过具体代码示例演示了如何在OpenCV中实现模板匹配、卷积运算以及添加不同类型噪声的操作,为图像处理任务提供了实用的技术参考。

2026-04-28 09:54:42 322

原创 OpenCV联合C++/Qt 学习笔记(十)----图像直方图绘制、直方图均衡化及直方图匹配

本文介绍了图像直方图处理的三种方法:直方图绘制、直方图均衡化和直方图匹配。首先详细说明了calcHist函数的参数和使用方法,演示了如何计算和绘制图像直方图。其次阐述了直方图均衡化的原理和equalizeHist函数的使用,通过重新分配像素值增强图像对比度。最后讲解了直方图匹配的实现过程,包括累计分布函数计算、误差矩阵构建和查找表生成,使源图像直方图匹配目标分布。三种方法均附有完整代码示例,展示了从基础统计到高级匹配的图像处理技术。

2026-04-27 14:38:58 186

原创 OpenCV联合C++/Qt 学习笔记(九)----创建滑动条及鼠标事件响应

本文介绍了OpenCV中滑动条和鼠标事件的使用方法。滑动条部分详细说明了createTrackbar()函数的参数和使用场景,包括回调函数的设置和实时参数调整功能。鼠标事件部分讲解了setMouseCallback()函数的参数配置,列出了完整的鼠标事件和响应标志枚举值,并提供了绘制轨迹的示例代码,展示如何通过鼠标移动实时修改图像内容。这两个功能模块共同构成了OpenCV图形交互的基础,可用于实现参数调节和交互式图像处理。

2026-04-27 08:48:09 58

原创 OpenCV联合C++/Qt 学习笔记(八)----高斯图像金字塔及拉普拉斯图像金字塔

本文介绍了两种图像金字塔的实现方法:高斯金字塔和拉普拉斯金字塔。高斯金字塔通过对图像逐层进行高斯平滑和降采样(使用pyrDown函数),生成一组分辨率递减的图像。拉普拉斯金字塔则通过计算高斯金字塔相邻层之间的差值(结合pyrUp上采样操作)获得带通图像,反映不同尺度的细节信息。文中给出了两种金字塔的具体实现代码,包括3层高斯金字塔构建和对应的拉普拉斯金字塔生成过程,最终通过imshow展示处理结果。这些方法可用于图像多尺度分析,在缩小/放大图像时能有效抑制混叠和噪声。

2026-04-25 15:46:17 49

原创 OpenCV联合C++/Qt 学习笔记(七)----图像中绘制基础图形、ROI区域截取及图像深拷贝与浅拷贝

本文介绍了OpenCV中常用的图像绘制和操作功能。基础图形绘制包括直线、圆形、椭圆、矩形、多边形和文字,各函数参数详细说明了坐标、颜色、线宽等属性。ROI区域截取可通过Range或Rect实现。图像拷贝分为深拷贝(copyTo创建独立副本)和浅拷贝(直接赋值共享内存)。示例代码演示了图形绘制、ROI操作及拷贝效果对比,展示了修改原图对浅拷贝图像的影响。这些功能为图像处理提供了基本的绘制和区域操作工具。

2026-04-25 14:16:08 62

原创 OpenCV联合C++/Qt 学习笔记(六)----图像尺寸变换、图像仿射变换及图像透视变换

本文介绍了图像处理中的插值原理与几何变换方法。首先阐述了双线性插值原理,通过四个角点加权平均实现平滑过渡。其次详细讲解了图像缩放、翻转和拼接的实现函数及参数设置。在仿射变换部分,说明了平移、旋转、缩放等基本变换的组合应用,并给出了相关函数的使用示例。最后介绍了透视变换的核心原理,通过四点变换实现图像投影效果,包括透视矩阵计算和变换函数的具体应用。文中提供了完整的代码示例,展示了各种图像变换的实际操作过程,为图像处理中的几何变换提供了实用参考。

2026-04-24 17:27:05 874

原创 OpenCV联合C++/Qt 学习笔记(五)----图像二值化及LUT查找表

本文系统介绍了图像二值化处理的三种方法:固定阈值法、自适应阈值法和LUT查找表法。固定阈值法包含BINARY、BINARY_INV等5种类型,通过对比分析了大津法和三角形法的特点;自适应阈值法根据局部亮度动态计算阈值;LUT法则通过预定义映射表实现快速像素转换。文中提供了各方法的OpenCV实现代码示例,包括参数说明和应用场景分析,为图像分割任务提供了实用的技术参考。

2026-04-24 11:35:36 637

原创 OpenCV联合C++/Qt 学习笔记(四)----两张图像像素比较及图像像素逻辑操作

本文介绍了OpenCV中图像像素比较与逻辑运算的核心操作。主要内容包括:1) 像素比较函数min()和max()的用法,用于获取两幅图像逐像素的最小/最大值;2) minMaxLoc()函数查找图像全局极值及其位置的方法;3) 四种位运算操作:bitwise_and(与)、bitwise_or(或)、bitwise_xor(异或)和bitwise_not(非),详细说明了各函数的参数要求和使用场景。这些操作广泛应用于图像处理中的遮罩提取、区域合并、差异检测等任务,文末还提供了完整的示例代码展示实际应用效果。

2026-04-23 15:28:02 241

原创 OpenCV联合C++/Qt 学习笔记(三)----图像颜色空间转换及多通道分离与合并

本文介绍了图像处理中的颜色空间转换和通道操作。主要内容包括:1)RGB、HSV和GRAY三种颜色空间模型的特性;2)使用convertTo()和cvtColor()函数进行颜色空间转换的方法;3)通过split()和merge()函数实现多通道图像的分离与合并。文中提供了完整的示例代码,演示了如何加载图像、转换颜色空间、分离通道以及重新合并通道等操作。

2026-04-22 14:31:36 224

原创 OpenCV联合C++/Qt 学习笔记(二)----图像读取、显示与保存及视频加载与摄像头使用

OpenCV图像与视频处理核心功能摘要 本文系统介绍了OpenCV在图像和视频处理中的核心功能模块。图像处理部分涵盖图像的加载(imread)、显示(namedWindow/imshow)和保存(imwrite)操作;视频处理部分详细说明了视频捕获(VideoCapture)和视频写入(VideoWriter)的方法,包括参数设置和属性获取。文中提供了完整的代码示例,展示如何从文件/摄像头读取图像和视频,以及如何将处理结果保存为图像文件或视频流。

2026-04-22 11:15:51 71

原创 OpenCV联合C++/Qt 学习笔记(一)----Mat容器

本文介绍了OpenCV中Mat类的核心功能和使用方法。Mat类是OpenCV中表示多维数组(特别是图像数据)的主要数据结构,支持多种数据类型(如CV_8U、CV_32F等)和创建方式。文章详细说明了Mat类的创建与赋值方法,包括矩阵初始化、单位矩阵/对角矩阵生成等,并介绍了矩阵元素的读取方式(如at方法)和常用属性(如rows、cols等)。最后,总结了Mat类支持的各种运算操作,包括四则运算、矩阵乘积、内积等,并提供了相应的代码示例和输出结果。这些内容为OpenCV中矩阵操作提供了全面的参考。

2026-04-21 16:04:18 399

原创 OpenCV联合C++/Qt 学习笔记----环境配置

本文介绍了OpenCV与Qt的集成开发方法,用于构建可视化图像处理系统。OpenCV负责图像算法处理,Qt提供GUI界面支持,适用于工业检测、视频监控等场景。配置步骤包括:在Visual Studio 2019中设置OpenCV 4.5.4的包含目录、库目录及链接器参数(区分Debug/Release模式),并确保运行时DLL文件部署至可执行程序目录。环境要求为Qt 5.15.2(MSVC2019)和x86架构平台,通过两者结合可高效开发跨平台图像应用。

2026-04-21 09:45:33 459

原创 QCefView(VS2019,QT5.15.2,32位,Windows平台)

QCefView 编译(VS2019,QT5.15.2,32位,Windows平台)详细教程

2025-03-04 13:27:47 1963

原创 编译QT5.15.2 qtwebengine模块以支持mp4

重新编译QtWebEngneView以支持mp4

2024-10-25 12:32:42 1935 2

原创 VS中设置Qt程序默认管理员权限运行

VS中设置Qt程序默认管理员权限运行

2024-09-02 10:59:22 1097

原创 如何在 Qt 中使用多线程构建高效的 TCP 客户端(C++)

本文深入探讨了如何使用 Qt 实现一个多线程 TCP 客户端,详细介绍了如何在主窗口中管理客户端线程,通过信号槽机制处理连接、数据收发和断开连接等事件,并确保在多线程环境中安全地处理资源。

2024-09-02 10:35:10 2015

原创 如何在 Qt 中使用多线程构建高效的 TCP 服务器(C++)

本文探讨了在 Qt 中实现多线程并发服务器的过程,重点介绍了如何通过重写 QTcpServer 类的 incomingConnection() 方法,自定义客户端连接的处理方式。此方法不仅支持多线程并发,还能够有效管理连接生命周期,并实现安全验证、连接限制等高级功能。

2024-08-20 15:46:01 1334 2

深度神经网络模型的使用

深度神经网络模型的使用

2026-05-23

图像缩放、翻转、拼接测试用图

图像缩放、翻转、拼接测试用图

2026-04-24

OpenCV4.5.4-X86-MSVC2019

OpenCV4.5.4-X86-MSVC2019

2026-04-21

编译QT5.15.2 qtwebengine模块以支持mp4

由于版权限制,Qt官方无法在其二进制包中提供某些解码器,这导致Qt WebEngine无法支持一些常见的视频格式(如MP4)。为了解决这一问题,可以通过重新编译Qt WebEngine来集成所需的解码器

2024-10-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除