自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(92)
  • 资源 (19)
  • 收藏
  • 关注

原创 opencv 视频处理

OpenCV 的视频模块是其核心组成部分之一,主要负责视频文件的读取、处理、分析以及视频流的捕获和输出。这一模块使得开发者能够轻松地处理来自摄像头、文件或其他视频源的视频数据,进行实时或离线的图像处理和计算机视觉任务。

2024-06-19 16:36:22 839

原创 ChatTTS 文字生成语言本地模型部署

如果报错未定义的Normalizer,可以执行一下指令。

2024-06-08 18:12:23 808 3

原创 opencv进阶 ——(十二)基于三角剖分实现人脸对齐

三角剖分(Triangulation)是一种将多边形或曲面分解为一系列互不相交的三角形的技术,它是计算几何、计算机图形学、地理信息系统、工程和科学计算中的一个基本概念。通过三角剖分,复杂的形状可以被简化为基本的三角形元素,这些元素更容易处理和分析。在二维空间中,一个简单的三角剖分将一个多边形划分为若干个不相交的三角形,这些三角形的边要么是多边形的边,要么是连接多边形内部点的边。在三维空间中,三角剖分通常应用于表面建模,将一个曲面分割成一系列互不相交的三角面片。

2024-06-06 19:21:24 984

原创 opencv进阶 ——(十一)基于RMBG实现生活照生成寸照

1、检测人脸,可以使用opencv自带的级联分类器或者dlib实现人脸检测。4、生成尺寸相同的纯色背景与当前人像进行ALPHA融合即可。2、放大人脸范围,调整到正常寸照尺寸。3、基于RMGB算法得到人像掩码。

2024-06-05 16:08:29 550

原创 opencv进阶 ——(十)图像处理之基于dlib人脸检测与识别

Dlib是一个功能丰富的C++库,设计用于构建复杂的软件系统,尤其在机器学习、计算机视觉和数值计算等领域有着广泛的应用。

2024-06-05 15:59:39 981 2

原创 opencv进阶 ——(九)图像处理之人脸修复祛马赛克算法CodeFormer

CodeFormer是一种基于深度学习的人脸复原模型,由南洋理工大学和商汤科技联合研究中心联合开发,它能够接收模糊或马赛克图像作为输入,并生成更清晰的原始图像。

2024-06-01 20:58:05 1415

原创 opencv进阶 ——(八)图像处理之RMBG模型AI抠图

BRIA.AI团队于HuggingFace开源了一个基于ISNet背景移除模型RMBG-1.4,它可以有效对前景与背景进行分离。RMBG-1.4在精心构建的数据集上训练而来,该数据包含常规图像、电商、游戏以及广告内容,该方案达到了商业级性能,但仅限于非商业用途。关于所用到的训练数据:12000+高质量&高分辨率像素级精度手工标注。更详细的数据分布介绍请移步[RMBG-1.4]

2024-05-31 12:03:17 790

原创 opencv进阶 ——(七)图像处理之寸照换背景

寸照换背景,通常指的是将个人证件照片的背景色更换为另一种颜色,如白色、蓝色或红色等,以满足不同用途的要求。例如,护照照片通常要求白色背景,而身份证照片可能需要蓝色背景。这个过程通常涉及到图像处理技术,尤其是图像分割和合成技术。

2024-05-29 22:50:18 1072 1

原创 opencv进阶 ——(六)图像处理之图像增强

图像增强算法的目的是改善图像的视觉质量,使其更易于分析或增强特定特征。这些方法可以单独使用,也可以组合使用,以根据特定应用场景定制增强效果。在实际应用中,通常需要根据图像的内容和目标应用选择合适的增强策略。

2024-05-29 16:22:17 1731

原创 opencv进阶 ——(五)图像处理之马赛克

二、直接使用resize,先缩小、后放大,以此产生马赛克效果。一、遍历图像并对每个马赛克区域进行像素化处理。

2024-05-26 10:13:06 521

原创 opencv进阶 ——(四)图像处理之去高光

4、通过illuminationChange函数对高光区域消除高光。3、进行膨胀操作,放大高光区域,以此得到高光蒙版。2、二值化图像,得到高光区域。

2024-05-26 10:11:40 512

原创 opencv进阶 ——(三)图像处理之怀旧滤镜

一、将图像转换成灰度图,然后通过applyColorMap进行上色,再与原图进行融合,生成怀旧效果。二、对颜色通道进行变换得到怀旧效果。

2024-05-22 17:31:03 178

原创 opencv进阶 ——(二)图像处理之毛玻璃效果

四、将高斯模糊后的图像减去噪音点图像,然后对应原图的相应图像相见,参数叠加效果。一、通过用像素点邻域内随机一个像素点的颜色替代当前像素点的颜色实现。三、使用boxFilter将噪音点拉长,从而产生横纹或竖纹效果。六、将图像打乱,然后随机抽取部分点,替换到高斯模糊后的图像中。二、通过高斯模糊后,与原图对比生成噪音点叠加实现。五、直接用高斯模糊叠加噪音点实现。

2024-05-22 17:30:12 400 1

原创 opencv进阶 ——(一)图像处理之浮雕

浮雕就是把所要呈现的图像突起于石头表面,根据凹凸的程度不同从而形成三维的立体感。计算机产生浮雕效果原理与之类似,即通过勾画图像的轮廓,并且降低周围的值,从而产生一张具有立体感的浮雕效果图片。这里我们通过相邻元素相减的方法得到轮廓与边缘的差,从而获得凹凸的立体感觉。图像浮雕效果的原理是利用图像中像素之间的灰度差异来模拟立体感。通常情况下,图像中相邻像素的灰度值会有微小的差异,浮雕效果利用这些差异来产生阴影和凸起的立体感。

2024-05-19 11:43:37 476

原创 opencv基础篇 ——(十八)级联分类器CascadeClassifier

是 OpenCV 库中的一个关键组件,主要用于对象检测,特别是面部检测和其他特征点的检测。这个类实现了一种基于级联分类器的算法,该算法最初由 Paul Viola 和 Michael Jones 在他们的论文《Rapid Object Detection using a Boosted Cascade of Simple Features》中提出。以下是empty()read(node)

2024-05-19 11:03:40 2139 2

原创 opencv基础篇 ——(十七)霍夫变换

霍夫变换(Hough Transform)是一种在图像处理和计算机视觉领域广泛使用的特征检测技术,主要用于检测图像中的直线、曲线等几何形状。它的基本思想是通过将图像中的每个像素点映射到一个参数空间中,以检测特定形状的参数集,例如,对于直线,这些参数通常是斜率和截距。在参数空间中,来自相同形状的像素点会形成一个高峰,从而可以通过检测这些峰来确定形状的存在和位置。:通常在霍夫变换之前,先对图像进行边缘检测,如Canny算法,以减少后续处理的数据量。:对于直线检测,参数空间是基于两个参数,通常是距离(ρ。

2024-05-17 11:59:04 711

原创 opencv基础篇 ——(十六)图形绘制与填充

OpenCV 提供了丰富的图形绘制和填充功能,主要通过cv::circlecv::line和等函数实现。

2024-05-06 22:23:24 636

原创 opencv基础篇 ——(十五)多边形与凸边型

在计算机视觉和图像处理中,多边形和凸多边形是常用的几何形状描述方式。它们在描述对象的形状、边界或区域时非常有用。下面我将简要介绍它们的概念和特点:多边形(Polygon)定义: 多边形是一个平面内的闭合图形,由一系列连续的直线段连接而成,首尾相接,且不相交。特点:示例: 三角形、正方形、五边形等。凸多边形(Convex Polygon):定义: 凸多边形是一种特殊的多边形,其中任意两个顶点之间的连线都位于或在多边形内部。换句话说,凸多边形内部的任意一点都可以通过直线连接到多边形内的任意其他两点。特点:

2024-05-06 13:47:00 1296 1

原创 opencv基础篇 ——(十四)轮廓拟合

轮廓拟合是指通过数学模型(如直线、圆、椭圆或多边形)来逼近或描述轮廓的形状。这一过程有助于简化复杂轮廓,提取其关键特征,或用于进一步的分析和识别。fitLine轮廓拟合在实际应用中非常广泛,比如在物体识别、形状分类、尺寸测量等方面。通过选择合适的拟合方法,可以有效地提取和利用图像中的形状信息。用于轮廓点集的多边形逼近的函数。它用于减少轮廓点的数量,同时保持轮廓的形状近似不变。

2024-05-04 09:47:30 2443 1

原创 opencv基础篇 ——(十三)计算轮廓信息

计算轮廓信息时,有一些辅助函数可以帮助你处理和分析轮廓。:计算轮廓的面积。:计算轮廓的周长。:计算轮廓的边界框。() : 图像矩计算() 不变矩计算用于计算轮廓所围成的区域面积的功能。contourInputArraycv::Matorientedboolfalsetruefalse函数返回一个double类型的值,表示轮廓所围成的区域面积。如果轮廓自相交,这个值可能并不精确,因为使用的是简单的格林公式计算面积,对于复杂轮廓可能无法正确处理自交部分。用于计算曲线或轮廓周长的工具。curve。

2024-05-04 08:29:13 1079

原创 opencv基础篇 ——(十二)轮廓提取与绘制

cv::findContours 是 OpenCV 中用于在图像中查找轮廓的函数之一。它可以帮助你找到图像中所有的轮廓,并且可以选择性地进行轮廓的过滤和处理。主要用于在二值图像中查找对象的边界轮廓。这些轮廓通常是对象之间的分界线,可以通过它们进行形状分析、对象检测等操作。image: 输入图像,必须是单通道的二值图像,即像素值为0或255(或0或1)contours: 输出轮廓的容器。函数会将检测到的轮廓信息存储在这个数据结构中。

2024-05-01 19:21:34 1680

原创 opencv基础篇 ——(十一)常用照片处理函数

用于改善光照条件不佳导致的图像对比度低下或局部过暗/过亮的问题。该函数通过模拟全局和局部光照变化,旨在提高图像的整体视觉质量,特别是在低光照条件下,使得图像中的重要细节更加清晰可见。src: 输入图像,通常为cv::Mat类型,表示待处理的灰度图像或彩色图像(BGR 或 RGB 格式)。如果输入的是彩色图像,内部会先将其转换为灰度图像进行处理。dst: 输出图像,与输入图像src同样大小和类型。该图像存储经过光照变化增强后的结果。alpha: 全局光照调整因子。它控制整体图像亮度的增益。取值范围通常为。

2024-04-30 21:46:40 1077 2

原创 opencv基础篇 ——(十)非真实感渲染

非真实感渲染(Non-Photorealistic Rendering, NPR)是指通过一系列图像处理技术,将真实感图像转换为具有特定艺术风格或视觉效果的图像,模拟绘画、素描、卡通等非现实主义表现手法。OpenCV 提供了一些内置函数来实现非真实感渲染,这些函数可以帮助开发者快速实现各种艺术风格化效果。除了上述直接相关的非真实感渲染函数外,OpenCV 还提供了众多基础图像处理功能,如滤波、形态学操作、色彩空间转换、直方图均衡化等,这些都可以作为非真实感渲染算法的组成部分或辅助手段。

2024-04-30 21:45:33 722

原创 opencv基础篇 ——(九)图像几何变换

transpose图像几何变换是通过对图像的几何结构进行变换来改变图像的形状、大小、方向或者透视关系。常见的图像几何变换包括缩放、旋转、平移、仿射变换和透视变换等。transpose对于图像来说,它可以将图像的行和列进行交换。转置后图像的高度和宽度也将互换。它可以沿水平、垂直或两个方向同时对图像进行翻转。缩放是改变图像尺寸大小的一种变换操作。可以按比例缩小或放大图像。在 OpenCV 中,可以使用cv::resize函数实现图像的缩放操作。旋转是围绕图像的中心点或指定点进行角度旋转的操作。

2024-04-27 16:48:45 1034 1

原创 opencv基础篇 ——(八)图像平滑滤波

常用图像平滑滤波

2024-04-26 10:01:26 1153

原创 opencv基础篇 ——(七)边缘检测和图像锐化

锐化和边缘检测是图像处理中常用的两种技术,它们可以用来增强图像的特征以及检测图像中的边缘锐化是一种增强图像中细节和边缘的技术,它使图像中的过渡区域更加明显,从而提高图像的清晰度和对比度。常见的锐化方法包括拉普拉斯算子和高斯滤波器等。边缘检测是一种寻找图像中突变区域的技术,它可以帮助我们找到图像中不同区域之间的边界。常见的边缘检测算法包括 Sobel、Canny 和 Scharr 等。

2024-04-26 09:52:14 2984 2

原创 opencv基础篇 ——(六)图像形态学

图像形态学

2024-04-23 12:07:12 1244

原创 opencv基础篇 ——(五)颜色通道

若要以各自对应的颜色(如红色、绿色通道显示为红色、绿色)显示这些单通道图像,需要通过特定方式(如 OpenCV 的 cv::applyColorMap 函数)添加伪彩色,或者使用 cv::merge 合并回多通道格式后再显示。这个图像将包含所有输入单通道图像的数据,按照提供的顺序组合成对应的通道。:在进行色彩空间转换时,先使用 cv::split 分离原图像的通道,对各通道进行特定计算(如 BGR 到 HSV 的转换),然后使用 cv::merge 合并新计算出的通道,形成目标色彩空间的图像。

2024-04-23 11:44:02 1074

原创 opencv基础篇 ——(四)cv::Mat 常用功能介绍

cv::Mat是 OpenCV 库中用于表示图像和多维数组的核心数据结构。它是 OpenCV 中进行图像处理、计算机视觉算法操作的基础。以下是对cv::Matcv::Mat支持的数据类型涵盖 OpenCV 定义的各种基本类型,如CV_8U(无符号 8 位整型)、CV_16S(带符号 16 位整型)、CV_32F(32 位浮点型)等,以及它们的多通道组合(如CV_8UC3表示 3 个 8 位无符号整型通道)。

2024-04-22 11:35:36 2669

原创 opencv基础篇 ——(三)图像二值化

图像二值化是图像处理中常用的一种技术,用于将灰度图像转换为只包含两个像素值(通常是黑色和白色)的二值图像。这种处理通常用于简化图像、减少数据量以及强调感兴趣的目标。

2024-04-22 11:32:18 3006

原创 opencv基础篇 ——(二)颜色空间转换

颜色空间是描述图像中颜色的数学模型。不同的颜色空间使用不同的方式来表示颜色,每种颜色空间都有其特定的优点和用途。RGB 是最常见的颜色空间之一,它使用红色(Red)、绿色(Green)、蓝色(Blue)三个颜色通道来描述一个颜色。在 RGB 空间中,每个像素由这三个通道的强度值组成,通常范围在 0 到 255 之间。RGB 颜色空间适用于大多数彩色显示设备,如电脑显示器、数字相机等。BGR 是 RGB 的变种,其中颜色通道的顺序颠倒为蓝色(Blue)、绿色(Green)、红色(Red)。

2024-04-18 15:24:42 1245

原创 opencv基础篇 ——(一)简介

OpenCV(Open Source Computer Vision Library)是一个开源的跨平台计算机视觉库,它提供了丰富的图像处理和计算机视觉功能,涵盖了从简单的图像处理操作到复杂的计算机视觉算法的实现。

2024-04-18 15:23:28 4099

原创 基于Qt的插件扩展

QPluginLoader

2024-03-26 11:18:45 356

原创 视觉平台工作流搭建

图像识别视觉平台

2024-03-26 10:56:20 337

原创 根据运行时索引序号访问tuple的值

【代码】根据运行时索引序号访问tuple的值。

2024-03-10 10:49:42 201

原创 基于curl 使用http多线程下载大文件

7、检验文件MD5是否一致。如需完整代码,可评论区留言。6、获取服务器文件MD5。四、等待所有线程完成。

2023-12-07 20:03:56 1139 2

原创 Qt 如何使用VTK显示点云

点云、VTK 、PCL

2023-12-07 19:30:52 1210

原创 C++ 九阴真经之异步队列

异步队列可以看作是消息队列和线程池的合体,输入端是用户自定义数据,输出端为用户自定义执行体。定义类型T定义执行体bool task(T& t){}就可以实现没每一个消息执行操作task(t)/************************************************************************************* 异步队列* 用户将数据压入队列,并自定义执行函数,对数据...

2020-06-30 21:27:39 1358

原创 C++ 九阴真经之线程池

线程池的作用: 1、避免了在处理短时间任务时创建与销毁线程的代价; 2、在大批量并发任务中,可以更合理的使用系统资源,进行削峰平谷,保证系统运行的稳定性;基于C++11标准构建线程池,具有以下优势; 1、任务无需继承接口 2、支持lambada表达式 3、支持全局函数、静态成员函数; 4、使用bind支持成员函数;class ThreadObject : public QueueObject{public: usin...

2020-06-30 21:24:50 305

原创 C++ 九阴真经之线程间通信(消息队列)

消息队列是线程间通信比较常用得方式,常用于解决经典模型生产者——消费者模型线程间得通信。本文将结束基于C++标准库实现得消息队列,可以支持任意参数类型,任务参数数量。为了方便后续线程池、异步队列得实现,这里提取了公共基类。class QueueObject : public noncopyable{public: QueueObject() :m_bStop(false), m_nCapacity(MAX_QUEUE_CAPACITY) { } virtual ~QueueO

2020-06-30 21:23:03 2861

设置钩子函数

设置钩子

2013-03-14

windows消息函数

windows消息函数

2013-03-14

获取系统时间

获取系统时间

2013-01-22

获取关机、休眠消息托盘程序

当用户正常关机时,可以取消用户关机,或再关机之前执行特定的任务。其中的托盘程序部分,抽取了开源项目的部分代码。

2013-01-13

VC++ 实现计算机休眠、关机、重启

Win32程序实现xp系统休眠、关机、重启功能

2013-01-08

Visual C++黑客编程揭秘与防范源码

Visual C++黑客编程揭秘与防范源码

2013-01-06

win32编程学习笔记

win32编程学习笔记

2012-07-29

马踏棋盘贪心法实现

按国际象棋中马的走法,走遍整个M*M的棋盘,并且不重复,用贪心法能迅速找到,并无误的输出。. 本源码采用递归法实现,可在1秒内循环64个格作为起点,输出所有的路径。基本语法同C,但用到了C++的算法库中的排序函数、和STL容器。为了精确计算时间也用到了win32中的API函数。 核心代码100行左右,简单、明了。

2012-07-16

vc++ 网络编程

VC++ 网络编程,包括FTP、HTTP等常用协议的编程。

2012-06-24

socket入门代码,windows和unix

socket入门代码

2011-12-30

c c++师资培训资料

unix内存分配 电信实战开发 DMS系统分析设计

2011-02-15

windows扫雷程序(源码)

模拟windows扫雷程序实现。 采用virsual c++6.0 实现,使用MFC框架。

2011-01-29

virsual C++ 编程高手

本光盘和图书汇集了来自世界各地的顶尖Visual C++编程高手愿意无偿奉献的得意之作,共计21章206个程序,涉及的方面包括:按钮控件、编辑控件、静态控件、组合框控件、列表视控件、树视控件、工具条控件、状态条控件、其他公共控件、ActiveX控件、对话框、视窗模型、分隔器窗口、位图、剪接板、多媒体、shell、Internet、macro、扩展库和综合应用。绝大部分程序包含源代码、项目文件和可执行文件,直接为你所用。 由于篇幅所限,图书主要介绍各个程序的功能及设计思想,而其完整源程序和演示程序包含在光盘的相关目录中。同时,光盘还提供了一个浏览图书内容的树型结构浏览器,点击树型节点或者工具条的适当按钮,即可自由地浏览感兴趣的内容。 无论对于Visual C++新手还是老手,以及其他编程语言,比如VB、Delphi的程序员,都具有很好的参考价值。

2011-01-29

PL/SQL 字符串分割

字符串分割,..........................................

2011-01-28

c语言版马踏棋盘贪心法实现

按国际象棋中马的走法,走遍整个M*M的棋盘,并且不重复,用贪心法能迅速找到,并无误的输出。

2008-12-25

空空如也

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

TA关注的人

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