- 博客(254)
- 收藏
- 关注
原创 RAG检索增强生成
RAG是让大模型变聪明的性价比最高的方式。核心要点:1. 分块是关键——太大太小都不行2. Embedding决定检索质量——选对模型很重要3. 不要迷信向量检索——混合检索往往更好4. 持续优化——评估、迭代、改进建议的学习路径:1. 先用LangChain/LlamaIndex快速搭建一个原型2. 用自己的数据测试,发现问题3. 学习优化技巧(Rerank、HyDE等)4. 了解底层原理,根据需求定制RAG不是万能的,但在知识密集型应用中,它是目前最实用的解决方案。
2026-08-02 13:37:41
230
原创 OpenCV HOG 特征与行人检测
内置的行人检测器只能检测人。如果你想检测其他目标(比如车辆、动物),需要自己训练 SVM 分类器。import cv2#加载检测器#创建 HOG 描述子nbins=9#检测。
2026-07-12 22:56:23
257
原创 OpenCV 模板匹配:单目标与多目标匹配
有时候你需要在一张大图里找某个特定的小图。比如在一堆商品里找某个特定商标,或者在卫星图里找某个建筑物。这种场景用模板匹配(Template Matching)就挺合适。模板匹配的原理很简单:把小图(模板)在大图上滑动,逐个位置比较相似度,最后找出最相似的位置。OpenCV 用 cv2.matchTemplate 实现这个功能。
2026-07-12 22:39:51
212
原创 OpenCV 霍夫变换:直线与圆检测
我的经验是:先把 threshold 和 minLineLength 设大一点,保证检测出来的都是真直线,然后慢慢降低门槛,直到把需要的线都找出来。反过来想:图像里一个点 (x₀, y₀),通过它可以做无数条直线,对应参数空间里一条正弦曲线。这样一来,图像里的一条直线就变成了参数空间里的一个点 (ρ, θ)。霍夫变换做的事情就是:遍历图像中所有边缘点,在参数空间里"投票",最后票数最高的位置就是检测到的直线。一个经典的应用场景。核心思路:先做边缘检测,然后限制检测区域(只关注道路部分),最后跑霍夫变换。
2026-06-21 22:43:51
455
原创 OpenCV去噪算法实战:中值滤波与双边滤波应用
图像噪声是指在图像获取、传输或处理过程中引入的随机干扰信号。噪声会降低图像质量,影响后续的图像处理和分析任务。1. 噪声类型:识别不同的噪声类型高斯噪声:使用高斯滤波、非局部均值去噪椒盐噪声:使用中值滤波混合噪声:组合多种去噪方法2. 中值滤波:对椒盐噪声效果极佳去除椒盐噪声保留边缘计算量较大3. 双边滤波:保边去噪去噪同时保留边缘适用于保边去噪计算量大4. 非局部均值去噪:保留细节去噪效果好保留细节和纹理计算量大。
2026-05-30 22:38:40
337
原创 OpenCV图像混合技术:ROI操作与alpha混合
图像混合(Image Blending)是指将两幅或多幅图像按照一定规则合并为一幅图像的技术。图像混合可以创建各种视觉效果,如淡入淡出、水印添加、图像融合等。1. ROI操作:提取和修改图像的特定区域减少计算量提高处理速度专注于重要部分2. Alpha混合:使用alpha通道进行图像融合基本Alpha混合加权混合渐变Alpha混合3. 图像融合:将多幅图像融合为一幅多频混合图像金字塔混合全景拼接4. 应用场景:图像混合有广泛的应用水印添加淡入淡出效果图像拼接特效制作。
2026-04-19 19:50:30
391
原创 OpenCV颜色空间应用:基于颜色分割与识别
颜色分割(Color Segmentation)是指根据颜色特征将图像分割成不同区域的技术。它利用不同颜色在特定颜色空间中的分布差异,将具有相似颜色的像素归类到同一区域。1. 颜色空间选择:根据任务选择合适的颜色空间HSV:颜色分割、目标识别YCrCb:肤色检测、光照鲁棒LAB:颜色校正、图像增强2. 颜色范围定义:准确定义目标颜色的范围使用HSV空间进行颜色分割使用YCrCb空间进行肤色检测可以通过ROI自动确定颜色范围3. 后处理:形态学操作去噪开运算:去除小噪声闭运算:填充小孔洞。
2026-04-19 19:35:56
436
原创 OpenCV图像增强实战:对比度调整与Gamma校正
图像增强(Image Enhancement)是指通过一系列技术手段改善图像的视觉效果,使图像更适合人眼观察或机器处理。图像增强不增加图像的信息量,而是通过调整图像的亮度、对比度、颜色等属性,突出感兴趣的特征。import cv2#读取图像#基础锐化核#强锐化核#应用锐化核#显示结果1. 对比度增强:使用convertScaleAbs函数线性对比度调整直方图拉伸CLAHE自适应增强2. 亮度调整:使用convertScaleAbs函数线性亮度调整自适应亮度调整Gamma校正。
2026-04-19 19:18:10
516
原创 OpenCV图像算术运算:加减乘除与位运算实战
图像算术运算是指对图像进行基本的数学运算,包括加法、减法、乘法、除法以及位运算等。这些运算在图像处理、图像融合、特效制作等领域有着广泛的应用。1. 图像算术运算:使用add、subtract、multiply、divide函数加法:图像融合、亮度调整减法:运动检测、差异分析乘法:亮度调整、遮罩效果除法:归一化、对比度调整2. 位运算:使用bitwise_and、bitwise_or、bitwise_not、bitwise_xor函数与运算:遮罩提取或运算:图像合并非运算:图像反转。
2026-04-07 20:55:44
466
原创 OpenCV直方图处理技术:均衡化与CLAHE详解
直方图(Histogram)是图像处理中的重要工具,它统计了图像中每个灰度级(或颜色)出现的频率。直方图可以直观地反映图像的亮度分布、对比度等特征。直方图的定义:H(k) = nk其中,H(k)是灰度级k的频率,nk是图像中灰度级为k的像素数量。1. 直方图计算:使用calcHist函数计算图像直方图支持灰度和彩色图像可以计算多个通道的直方图支持掩码操作2. 直方图均衡化:使用equalizeHist函数自动提高图像对比度适合低对比度图像但可能过度增强噪声。
2026-03-08 22:12:27
628
2
原创 OpenCV颜色空间转换详解:RGB、HSV与YCrCb实战
颜色空间(Color Space)是一种用数学方式表示颜色的方法,它定义了如何用数值来描述颜色。不同的颜色空间适用于不同的应用场景,选择合适的颜色空间可以大大简化图像处理任务。import cv2#定义常见颜色的HSV范围#读取图像#提取红色(红色跨越色调0和180)#提取绿色#显示结果1. 颜色空间选择:根据任务选择合适的颜色空间图像显示:RGB颜色分割:HSV人脸检测:YCrCb颜色校正:LAB2. 转换方法:使用OpenCV的cvtColor函数高效、准确。
2026-02-25 06:00:00
1591
1
原创 OpenCV图像滤波技术详解:从均值滤波到双边滤波
图像滤波是图像处理中的基础操作,它通过对图像中的每个像素及其邻域像素进行加权平均或其他运算,来达到去除噪声、平滑图像或增强图像特征的目的。滤波的核心思想是利用像素的空间相关性,通过邻域像素的信息来改善当前像素的质量。滤波操作在图像预处理、去噪、边缘检测等领域有着广泛的应用。OpenCV允许使用自定义的滤波核进行卷积操作,这为图像处理提供了更大的灵活性。1. 滤波器选择:根据噪声类型选择合适的滤波器高斯噪声:均值滤波、高斯滤波椒盐噪声:中值滤波保边去噪:双边滤波。
2026-02-01 20:11:04
966
1
原创 OpenCV DNN模块:深度学习模型部署实战
OpenCV DNN(Deep Neural Network)模块是OpenCV 3.3版本引入的深度学习推理引擎,允许开发者在不依赖其他深度学习框架的情况下,直接在OpenCV中加载和运行预训练的深度学习模型。核心优势跨平台支持:可在Windows、Linux、macOS、Android等平台上运行轻量级部署:无需安装庞大的深度学习框架高性能推理:针对CPU和GPU进行了优化丰富的模型支持:兼容多种主流深度学习框架的模型与OpenCV无缝集成:可直接使用OpenCV的图像处理功能。
2026-01-24 09:22:54
1308
2
原创 OpenCV背景减法:视频中的运动物体检测
背景减法(Background Subtraction)是视频分析中的核心技术之一,主要用于从视频序列中自动提取运动物体。其基本原理是通过比较当前帧与背景模型,将像素分为"背景"和"前景"(运动物体)两部分。应用场景视频监控系统中的行人检测交通流量统计与车辆跟踪智能安防中的异常行为检测视频会议中的人物分割工业生产线的物体检测背景减法是视频分析中的基础技术,OpenCV提供的MOG2和KNN算法已经能够满足大多数应用需求。
2026-01-18 19:47:08
1231
1
原创 OpenCV光流估计:运动检测与跟踪
光流(Optical Flow)是指图像中物体在连续帧之间的移动速度和方向的向量场。它描述了像素从一帧到下一帧的运动轨迹,是计算机视觉中用于分析物体运动的重要工具。光流可以直观地理解为:当我们观察运动物体时,物体上的点在视网膜上形成的连续图像位置变化。在计算机视觉中,光流估计就是从连续的图像序列中计算出这种像素级的运动信息。光流估计是计算机视觉中分析物体运动的重要工具,主要包括:稀疏光流:如LucasKanade算法,适用于跟踪特征点稠密光流:如Farneback算法,适用于生成完整的运动场。
2026-01-18 19:07:23
1005
原创 OpenCV Haar级联分类器:人脸检测入门
Haar级联分类器(Haar Cascade Classifier)是一种基于机器学习的目标检测方法,由Paul Viola和Michael Jones在2001年提出。它在计算机视觉领域具有重要地位,特别在人脸检测方面取得了突破性进展。该方法的核心优势在于:高效性:能够实时进行目标检测准确性:在标准测试集上达到了当时的最高水平轻量级:模型体积小,易于部署如果需要检测特定类型的目标,可以训练自定义的Haar级联分类器:1. 数据准备:正样本:包含目标的图像负样本:不包含目标的图像。
2026-01-18 16:01:20
1243
原创 OpenCV特征匹配:暴力匹配与FLANN匹配实战
特征匹配是计算机视觉中的核心技术之一,它通过比较不同图像中提取的特征描述符,找到它们之间的对应关系。图像配准与拼接目标识别与跟踪三维重建视觉定位与导航暴力匹配和FLANN匹配是OpenCV中两种常用的特征匹配算法,它们各有优缺点:暴力匹配:精确但速度慢,适用于小规模特征点集FLANN匹配:近似但速度快,适用于大规模特征点集在实际应用中,应根据具体需求选择合适的匹配算法,并结合Lowe's比率测试、RANSAC等优化策略提高匹配质量。
2026-01-11 23:57:01
848
原创 OpenCV特征描述符:SIFT、SURF与ORB对比
尺度不变性:在不同缩放比例下保持一致旋转不变性:在不同旋转角度下保持一致光照不变性:在不同光照条件下保持稳定唯一性:能区分不同的特征点SIFT、SURF和ORB是OpenCV中最常用的三种特征描述符,它们各有优缺点:SIFT:性能全面,但速度慢且受专利保护SURF:比SIFT快,但同样受专利保护ORB:速度极快且开源,适合实时应用在实际应用中,应根据具体需求选择合适的特征描述符,并结合匹配算法进行优化,以达到最佳的性能和效果。
2026-01-04 17:33:24
1642
原创 OpenCV角点检测:Harris与ShiTomasi算法
角点通常具有以下特征:几何特征:图像中不同区域的交点灰度特征:在任意方向上的灰度值变化都很明显唯一性:角点在图像中具有唯一的位置稳定性:角点在不同视角、光照条件下保持稳定角点检测是计算机视觉中的基础任务之一,Harris和ShiTomasi算法是两种经典的角点检测方法。Harris角点检测:基于图像灰度的二阶导数矩阵,使用det(M) k(trace(M))²作为角点响应函数。
2026-01-03 23:03:41
1029
原创 OpenCV GrabCut前景提取技术详解
GrabCut算法是一种交互式前景提取方法,由Rother等人于2004年提出。它结合了图割(Graph Cut)和高斯混合模型(GMM),能够从图像中精确提取前景对象,只需少量用户交互。GrabCut算法是一种强大的前景提取方法,它结合了图割和高斯混合模型,能够从图像中精确提取前景对象。GrabCut算法只需要少量用户交互(如指定矩形区域或标记种子点),就可以获得高质量的分割结果。主要内容回顾1. 算法原理:基于图割和高斯混合模型,通过最小化能量函数来分割前景和背景。
2026-01-01 06:00:00
1209
原创 OpenCV分水岭算法:图像分割的利器
分水岭算法(Watershed Algorithm)是一种基于区域的图像分割方法,由Vincent和Soille于1991年提出。它将图像视为地形地貌,通过模拟水从高海拔区域流向低海拔区域的过程来分割图像。分水岭算法是一种强大的图像分割工具,通过模拟水从高海拔区域流向低海拔区域的过程来分割图像。它在医学图像处理、工业检测和计算机视觉等领域有广泛的应用。主要内容回顾1. 算法原理:基于地形地貌的模拟,通过洪水填充和大坝构建来分割图像。
2025-12-30 22:29:39
1374
原创 OpenCV Otsu‘s二值化算法原理与实现
Otsu's二值化算法(大津阈值法)是一种自动阈值选择方法,由日本学者大津展之(Nobuyuki Otsu)于1979年提出。它通过最大化类间方差来确定最优阈值,是图像处理中最常用的阈值分割方法之一。假设选择阈值T将图像分为两部分:背景区域:灰度值小于等于T的像素前景区域:灰度值大于T的像素Otsu's二值化算法是一种经典的自动阈值选择方法,通过最大化类间方差来确定最优阈值。它具有自动化、高效性和适应性等优点,广泛应用于图像处理的各个领域。主要内容回顾。
2025-12-30 22:28:30
895
原创 OpenCV轮廓特征分析:面积、周长与形状拟合
1. 轮廓特征分析的应用场景目标识别:通过轮廓特征识别不同形状的物体尺寸测量:测量物体的长度、宽度、面积等参数质量控制:检测产品的形状是否符合要求机器人视觉:引导机器人进行抓取、装配等操作2. 技巧与注意事项图像预处理:在进行轮廓检测前,使用高斯模糊减少噪声,提高轮廓检测的准确性轮廓过滤:通过面积、周长等特征过滤掉噪声或不需要的小轮廓特征选择:根据实际应用选择合适的轮廓特征,如形状识别使用顶点数量和圆形度,尺寸测量使用边界矩形或最小外接圆。
2025-12-28 21:37:28
816
原创 OpenCV轮廓检测与绘制实战
轮廓检测是OpenCV中图像处理的重要功能,通过cv2.findContours()和cv2.drawContours()函数可以方便地实现轮廓的检测和绘制。
2025-12-28 11:54:01
1039
原创 OpenCV边缘检测算法全面对比:Canny、Sobel与Laplacian
1. Sobel算法:适合需要快速边缘检测的应用,如实时视频处理,但边缘较粗。2. Laplacian算法:适合需要精确定位边缘的应用,但对噪声敏感,通常需要先进行高斯模糊处理。3. Canny算法:适合对边缘检测效果要求较高的应用,如图像分割、目标检测等,但需要仔细调整阈值参数。选择建议:如果对边缘检测速度要求高,选择Sobel如果需要精确定位边缘,选择Laplacian(配合高斯模糊)如果对边缘检测质量要求高,选择Canny。
2025-12-28 10:54:16
1274
原创 OpenCV高级形态学变换:梯度、顶帽与黑帽
本文详细介绍了OpenCV中的三种高级形态学变换:形态学梯度、顶帽变换和黑帽变换。这些变换在图像分析和处理中有着广泛的应用:形态学梯度:用于提取物体的边界和增强轮廓顶帽变换:用于校正不均匀光照和提取小物体黑帽变换:用于检测小空洞和提取阴影在实际应用中,这些变换通常与其他图像处理技术结合使用,如阈值分割、轮廓检测等,以解决更复杂的图像处理问题。通过合理选择结构元素的形状和大小,可以获得最佳的处理效果。
2025-12-28 09:39:24
982
原创 OpenCV开运算与闭运算在图像处理中的应用
开运算和闭运算是形态学图像处理中重要的组合操作,它们由基本的腐蚀和膨胀操作组合而成。开运算的主要作用是去除图像中的小物体(噪声),平滑物体的边界;闭运算的主要作用是填补图像中的小空洞,连接断开的物体。在OpenCV中,开运算和闭运算通过`cv2.morphologyEx()`函数实现,使用方便灵活。这两种操作在图像预处理、目标检测、文本识别等领域有着广泛的应用。在实际应用中,需要根据具体需求选择合适的结构元素和处理顺序,以达到最佳的处理效果。
2025-12-27 22:36:11
866
原创 OpenCV形态学操作:腐蚀与膨胀原理解析
腐蚀和膨胀是形态学图像处理中最基本的两种操作,它们通过使用结构元素来探测和提取图像中的形状特征。腐蚀操作可以消除边界点,去除噪声和分割物体;膨胀操作可以增加边界点,填补空洞和连接物体。这两种操作是其他复杂形态学操作(如开运算、闭运算、形态学梯度等)的基础,广泛应用于图像预处理、目标检测和图像分析等领域。在实际应用中,需要根据具体需求选择合适的结构元素和参数,以达到最佳的处理效果。同时,腐蚀和膨胀操作通常结合使用,如先腐蚀后膨胀(开运算)或先膨胀后腐蚀(闭运算),可以实现更复杂的图像处理任务。
2025-12-27 21:49:08
1618
原创 OpenCV图像金字塔与图像拼接技术
本文详细介绍了OpenCV中图像金字塔和图像拼接技术的原理和实现方法。图像金字塔是一种多尺度表示方法,广泛应用于图像融合、特征检测等领域;图像拼接技术则可以将多幅图像拼接成全景图像,常用于虚拟现实、地图制作等领域。
2025-12-24 22:05:53
1028
原创 OpenCV仿射变换与透视变换实战
本文详细介绍了OpenCV中仿射变换和透视变换的原理、实现方法和应用场景。仿射变换适用于需要保持平行性的场景,而透视变换适用于需要模拟真实透视效果的场景。
2025-12-23 21:31:12
1565
原创 OpenCV几何变换详解:缩放、旋转与平移
关键词:OpenCV、几何变换、缩放、旋转、平移、resize、warpAffine、getRotationMatrix2D
2025-12-21 23:38:00
1010
原创 Ultralytics YOLO11常见的问题以及解决方法
解决方案:坐标格式:YOLO11 以绝对像素值提供边界框坐标。要将这些转换为相对坐标(范围从 0 到 1),你需要除以图像尺寸。例如,假设你的图像大小为 640x640。然后你将执行以下操作:文件名:要获取你正在预测的图像的文件名,请直接从预测循环中的结果对象访问图像文件路径。
2025-12-16 21:33:51
694
原创 IPSec 详细介绍
IPSec(Internet Protocol Security)是一组开放的网络安全协议套件,用于在IP网络层提供端到端的安全通信。它通过对IP数据包进行加密和认证,确保数据在互联网或专用网络上传输时的机密性、完整性和真实性。
2025-11-24 20:30:00
450
原创 Ultralytics YOLO11 框架详细分析
Ultralytics YOLO11 代表了目标检测技术的较新进展,通过创新的架构设计和优化的实现,在保持实时性能的同时提供了出色的检测精度。Ultralytics YOLO11 是一个尖端的计算机视觉框架,基于之前 YOLO 系列的成功,引入了新功能和改进以进一步提升性能和灵活性。│ ├── models/ # 模型配置文件(包含YOLOv3-v11)│ ├── yolo/ # YOLO系列模型。│ └── datasets/ # 数据集配置。
2025-10-30 21:20:58
1578
原创 Ultralytics 相关的词汇解释(1)
人工智能(AI)是计算机科学中一个广泛且具有变革性的领域,专注于创建能够执行通常需要人类智能的任务的机器和系统。这包括从经验中学习、推理、解决问题、理解语言和感知环境等能力。这一概念由约翰·麦卡锡等先驱于1956年著名地定义为"制造智能机器的科学与工程"。AI不是单一技术,而是一个涵盖广泛方法和应用的统称,从简单的基于规则的系统到复杂的自学习模型。主动学习是机器学习(ML)中的一种专门训练方法,其中学习算法可以交互式地询问用户或其他信息源("Oracle")来标记新的数据点。
2025-10-30 19:45:36
891
原创 Android开发常见报错及解决方法(详细版)
在实际开发中,遇到问题时,应当仔细阅读错误日志,定位问题根源,然后采取针对性的解决措施。错误日志 : java.lang.ClassCastException: com.example.A cannot be cast to com.example.B。错误日志 : android.content.res.Resources$NotFoundException: Resource ID 0x7f070050。问题分析 :解析XML布局文件时出错,通常是因为XML格式错误或引用了不存在的视图。
2025-10-28 21:00:07
622
原创 网络层次划分
这种设计与OSI/RM和TCP/IP模型并不冲突,而是在网络架构层面的另一种划分方式,旨在优化网络性能和管理。接收方则执行相反的解封装过程,层层去掉头部信息,最终得到原始数据。5. 技术更新不影响整体 :某一层的技术更新不会影响其他层。2. 传输层 → 添加TCP/UDP头 → 数据段。4. 数据链路层 → 添加MAC头和尾 → 数据帧。1. 模块化设计 :各层独立工作,便于开发和维护。3. 网络层 → 添加IP头 → 数据包。1. 应用层数据 → 添加应用层头。5. 物理层 → 转换为比特流。
2025-10-20 18:30:43
1024
原创 opencv 梯度提取
图像梯度表示图像中像素强度的变化率和方向,是边缘检测的核心。在 OpenCV 中,常用的梯度提取算子包括 Sobel、Scharr、Laplacian 等。OpenCV进行图像梯度提取的多种方法,包括原理、完整代码实现以及参数说明。梯度提取是图像处理中的基础操作,广泛应用于边缘检测、特征提取和对象识别等领域。threshold1, threshold2 : 双阈值,较小的用于边缘连接,较大的用于初始边缘检测。使用 CV_16S 作为中间深度,避免梯度计算中的溢出问题。边缘检测 :识别图像中的物体边界。
2025-08-31 22:39:32
473
原创 字典树trie
字典树,又称为前缀树或Trie树,是一种树形数据结构,专门用于高效地存储和检索字符串数据集中的键。字典树是一种非常高效的字符串处理数据结构,尤其适合于有大量共享前缀的字符串集合。节点结构 :每个节点包含多个子节点(通常对应字符集的大小),一个指向父节点的指针,以及一个标记表示是否为某个单词的结束。共享前缀 :具有相同前缀的字符串在树中共享相同的路径,直到前缀结束。前缀共享 :节省存储空间,尤其是当有大量具有相同前缀的字符串时。后缀字典树 :用于存储字符串的所有后缀,用于字符串匹配问题。
2025-08-06 12:27:21
551
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅