
计算机视觉
文章平均质量分 91
学习、收藏OpenCV相关的知识点
Quz
路在脚下,不在远方;路在当下,不在未来。
展开
-
OpenCV:dnn实现图像分类
在计算机视觉领域,图像分类是一个基础且重要的任务。OpenCV 提供了 dnn 模块,可以方便地加载深度学习模型并实现图像分类。本文将详细介绍如何使用 OpenCV 的 dnn 模块实现图像分类,包括模型导入、使用步骤、支持的模型类型以及完整的代码示例。原创 2025-02-10 08:15:00 · 1509 阅读 · 0 评论 -
Tesseract-OCR 文字识别
Tesseract-OCR 是一个由 Google 维护的开源 OCR 引擎,其最初由 HP 开发,后来在 2006 年被 Google 开源。它支持多种语言的文本识别,并不断优化提升识别精度。Tesseract 支持从简单的命令行调用到与复杂项目集成,是一个灵活而强大的工具。原创 2024-12-31 21:02:27 · 1682 阅读 · 0 评论 -
OpenCV实战:图像拼接
在计算机视觉领域,图像拼接(Image Stitching) 是一项将多张有重叠区域的图像拼接成一张全景图的关键技术,广泛应用于无人机航拍、虚拟现实、医学影像等领域。本文将深入浅出地讲解图像拼接的核心原理,并通过Python+OpenCV代码演示如何实现这一过程。原创 2025-02-10 08:00:00 · 2172 阅读 · 0 评论 -
OpenCV:使用Haar级联分类器实现人脸识别
Haar级联分类器是经典的人脸检测方法,基于特征的快速检测使其在实时场景中广泛应用。本文详解Haar原理,提供Python代码实现,并逐行解析代码逻辑,适合OpenCV初学者实践。原创 2025-02-07 08:00:00 · 1760 阅读 · 0 评论 -
OpenCV:图像修复
在 OpenCV 中,图像修复是一种用于去除图像中不需要的部分(如划痕、污渍等)的技术。OpenCV 提供了两种主要的图像修复算法:基于流体动力学的图像修复方法(Navier-Stokes,NS)和基于快速行进算法(Fast Marching Method,FMM)的修复方法。原创 2025-02-06 08:15:00 · 2143 阅读 · 0 评论 -
OpenCV实战:基于Haar+Tesseract的车牌识别
本文将结合Haar级联分类器和Tesseract OCR,实现车牌检测与文字识别全流程。通过OpenCV定位车牌区域,Tesseract提取文字,最终完成车牌识别系统。附完整Python代码及优化技巧,适合计算机视觉初学者进阶实践。原创 2025-02-08 08:00:00 · 1219 阅读 · 0 评论 -
OpenCV:视频背景减除
在计算机视觉领域,背景减除广泛应用于目标检测、视频监控、运动分析等任务。OpenCV提供了多种背景减除算法,本文进行逐一介绍。原创 2025-02-06 08:00:00 · 973 阅读 · 0 评论 -
OpenCV:图像分割之MeanShift
MeanShift 算法 是一种强大的无监督分割方法,基于图像的颜色和空间信息,能够实现图像的高效分割。通过调节空间半径 (sp) 和 颜色半径 (sr),可以实现不同效果的图像分割,适用于目标提取、背景建模、去噪等任务。在实际应用中,调节参数是非常关键的,合适的参数选择可以显著提高图像分割的精度和效率。原创 2025-02-05 08:15:00 · 974 阅读 · 0 评论 -
OpenCV实战:图像分割
本项目通过 OpenCV 库实现了一个简单的交互式图像截取和处理程序。用户可以使用鼠标在图像上绘制矩形区域,然后按g键进行图像截取和处理,按ESC键退出程序。主要涉及鼠标事件处理、图像读取、显示和图像分割等操作。原创 2025-02-05 08:00:00 · 1747 阅读 · 0 评论 -
OpenCV:图像分割之GrabCut算法
GrabCut是一种强大的图像分割算法,结合了高斯混合模型和图割优化,能够高效地从图像中提取前景区域。通过矩形框或掩码的初始化,算法能够快速适应不同的图像分割任务。GrabCut 在前景与背景对比明显的情况下效果显著。原创 2025-02-04 08:15:00 · 1131 阅读 · 0 评论 -
OpenCV:图像分割之分水岭算法
分水岭算法是一种基于拓扑理论的数学形态学的分割方法,其基本思想是把图像看作是测地学上的拓扑地貌,图像中每一点像素的灰度值表示该点的海拔高度,每一个局部极小值及其影响区域称为集水盆,而集水盆的边界则形成分水岭。原创 2025-02-04 08:00:00 · 1426 阅读 · 0 评论 -
OpenCV实战:图像查找
单应性矩阵可用于透视变换,在大图中找到目标图像。SIFT/ORB + FLANN/BFMatcher 可以进行高效的特征匹配。cv2.findHomography() 计算目标的变换矩阵,找到在大图中的位置。原创 2025-02-03 08:15:00 · 2110 阅读 · 0 评论 -
OpenCV:FLANN与暴力特征匹配
在计算机视觉任务中,特征匹配是一种重要的技术,广泛应用于 图像拼接、目标识别、目标跟踪、三维重建 等领域。OpenCV 提供了两种主要的特征匹配方法:暴力匹配和FLANN 匹配,本文将介绍 FLANN 和暴力匹配的原理、应用场景、代码示例,帮助大家理解OpenCV 中的特征匹配方法。原创 2025-02-03 08:00:00 · 1835 阅读 · 0 评论 -
OpenCV:特征检测总结
特征检测(Feature Detection)是计算机视觉中的重要技术,用于识别图像中的关键点(如角点、边缘、纹理等),帮助计算机理解和分析图像内容。特征检测的核心目标是找到能够稳定、独特、可区分的图像区域,以便在后续的目标识别、图像匹配、运动估计等任务中使用。特征检测的基本类型:角点检测(Corner Detection):检测图像中的拐角点,例如Harris 角点Shi-Tomasi 角点。边缘检测(Edge Detection):检测图像中强度变化明显的边界,例如Canny 边缘检测。原创 2025-02-01 08:15:00 · 1715 阅读 · 0 评论 -
OpenCV:SURF、OBR特征检测
SURF 是 SIFT 的加速版,计算更快,适用于高精度匹配任务,但受专利保护。ORB 是 SIFT/SURF 的免费替代方案,计算速度快,适用于 实时应用、移动设备。如果 需要高精度匹配,使用 SURF;如果 计算速度要求高,使用 ORB。原创 2025-02-01 08:00:00 · 1124 阅读 · 0 评论 -
OpenCV:SIFT关键点检测与描述子计算
SIFT 是经典的特征检测算法,可用于关键点检测、特征描述和图像匹配。OpenCV 提供了 cv2.SIFT_create() API,可以高效检测关键点并计算 128 维特征描述子。SIFT 具有鲁棒性强、匹配精度高的特点,适用于 目标识别、图像匹配、三维重建 等任务。若计算速度是关键因素,可考虑 ORB(免费)或 SURF(更快,但有专利限制)。原创 2025-01-31 08:55:22 · 1622 阅读 · 0 评论 -
OpenCV:Harris、Shi-Tomasi角点检测
Harris 角点检测 基于矩阵行列式和迹,检测速度快,但对噪声敏感。Shi-Tomasi 角点检测 基于最小特征值,角点质量更高,适用于目标跟踪。在目标跟踪、图像匹配、3D 重建等任务中,Shi-Tomasi 角点通常表现更优。原创 2025-01-31 08:26:23 · 1011 阅读 · 0 评论 -
OpenCV实战:车辆统计
通过OpenCV相关接口以及统计逻辑处理,可以快速实现车辆计数。背景去除:排除背景干扰。图像预处理:通过降噪和形态学操作增强目标。轮廓检测与计数:基于矩形中心点穿越计数线进行车辆计数。此方案适用于普通道路监控场景,结合跟踪算法和深度学习技术可进一步提升性能与适用性。原创 2025-01-30 08:00:00 · 1568 阅读 · 0 评论 -
OpenCV:外接矩形
在图像处理和计算机视觉中,外接矩形 是一种用于描述轮廓或目标区域最小矩形边界的技术。它在目标检测、目标跟踪以及图像裁剪等领域中有广泛的应用。本文将介绍外界矩形的概念、分类、相关接口及具体用例。原创 2025-01-29 08:15:00 · 842 阅读 · 0 评论 -
OpenCV:多边形逼近与凸包
多边形逼近 是一种通过减少轮廓点数量简化形状表示的技术,适用于形状分析、目标检测和图像简化。凸包 是计算轮廓的最小凸多边形边界,常用于形状分析、碰撞检测和目标识别。OpenCV 提供了 cv2.approxPolyDP() 和 cv2.convexHull() 函数,方便地实现这些操作。原创 2025-01-29 08:00:00 · 1193 阅读 · 0 评论 -
OpenCV:图像轮廓
在图像处理领域,轮廓是图像中物体的边界或形状信息的表达方式。通过提取轮廓,可以对图像中的目标进行识别、测量和分析。本文将从概念到实际操作详细介绍图像轮廓及其相关操作,并展示如何在 OpenCV 中实现。原创 2025-01-28 08:15:00 · 1494 阅读 · 0 评论 -
OpenCV:形态学操作总结
形态学操作是基于图像的像素形态进行的操作,主要涉及图像的局部区域。这些操作通常通过一个叫做卷积核的工具来定义如何处理图像中的每个像素。形态学操作的基本思想:腐蚀:缩小或收缩图像中的物体区域。膨胀:扩展或增加物体区域的面积。开运算:先进行腐蚀,再进行膨胀,通常用于去除小物体噪声。闭运算:先进行膨胀,再进行腐蚀,通常用于填补小的孔洞。梯度运算:膨胀图像与腐蚀图像的差异,用于检测物体的边缘。这些操作不仅能够增强图像的几何特征,还能够减少图像中的噪声,提升后续图像处理的准确性。原创 2025-01-28 08:00:00 · 739 阅读 · 0 评论 -
OpenCV:顶帽与黑帽运算
在图像处理和分析中,顶帽运算(Top Hat Transform) 和 黑帽运算(Black Hat Transform) 是两种重要的形态学操作。它们用于从图像中提取特定的特征区域:顶帽运算突出亮点区域,黑帽运算强调暗点区域。这篇博文将详细介绍它们的定义、作用、相关接口及使用场景。原创 2025-01-27 08:15:00 · 2011 阅读 · 0 评论 -
OpenCV:形态学梯度
形态学梯度 是一种重要的形态学操作,主要用于突出图像中的边缘信息,特别适用于边缘检测、特征提取和噪声消除等任务。OpenCV 提供了非常强大的接口 cv2.morphologyEx() 来实现形态学梯度操作,结合不同的结构元素,能够处理不同的图像处理需求。原创 2025-01-27 08:00:00 · 869 阅读 · 0 评论 -
OpenCV:闭运算
闭运算 是一种重要的形态学操作,主要用于填补前景小孔洞、连接断裂区域以及平滑边界。OpenCV 提供了强大的接口 cv2.morphologyEx(),可以轻松实现闭运算及其他形态学操作。合理选择结构元素的大小和形状,可以针对不同应用场景达到理想的处理效果。原创 2025-01-26 08:15:00 · 1021 阅读 · 0 评论 -
OpenCV:开运算
开运算是图像形态学中的基本操作,用于去除小噪点、平滑边缘等。OpenCV 提供了功能强大的接口 cv2.morphologyEx(),可以灵活实现开运算及其他形态学操作。通过选择合适的卷积核,可以在实际项目中轻松应对各种图像处理问题。原创 2025-01-26 08:00:00 · 1335 阅读 · 0 评论 -
OpenCV:图像的腐蚀与膨胀
腐蚀和膨胀是形态学图像处理中的两个基本操作,常用于图像的噪声去除、目标修复以及形状增强。通过设置不同的卷积核和迭代次数,可以灵活地调整图像处理效果。OpenCV 提供了简洁的接口 cv2.erode() 和 cv2.dilate() 来实现这两种操作,结合卷积核的选择,可以高效地处理各种图像。原创 2025-01-25 08:15:00 · 1044 阅读 · 0 评论 -
OpenCV:二值化与自适应阈值
二值化是图像处理中一种简单的图像分割方法,其目标是将灰度图像转换成黑白图像。具体来说,它通过一个阈值将每个像素的灰度值与该阈值进行比较,如果像素值大于该阈值,则将其置为最大值(通常是255);如果小于阈值,则将其置为最小值(通常是0)。这样,图像就只有两种颜色:黑色和白色。二值化(GlobalThresholding)使用全局阈值将图像转换为黑白图像,适用于光照均匀或噪声较少的图像。OpenCV提供的函数能够方便地实现这种操作。原创 2025-01-25 08:00:00 · 2412 阅读 · 0 评论 -
OpenCV实战:为图像添加水印
本文介绍了如何使用OpenCV为图像添加文字和图片水印,并通过透明度处理和位置控制实现灵活的水印效果。原创 2025-01-24 08:00:00 · 857 阅读 · 0 评论 -
OpenCV:图像边缘检测
Canny边缘检测是一种高效且经典的边缘提取方法。在OpenCV中,通过cv2.Canny函数可以快速实现边缘检测。通过调整高低阈值、滤波器大小和梯度计算方式,可以灵活适应不同的图像和应用场景。原创 2025-01-23 08:15:00 · 820 阅读 · 0 评论 -
OpenCV:在图像中添加噪声(瑞利、伽马、脉冲、泊松)
在图像处理中,添加噪声是模拟真实场景的重要手段,用于测试算法的鲁棒性、增强模型的泛化能力或生成合成数据。以下介绍几种常见的噪声类型,包括:瑞利噪声、伽马噪声、脉冲噪声和泊松噪声,并展示如何使用Python和NumPy添加这些噪声。原创 2025-01-23 08:00:00 · 1270 阅读 · 0 评论 -
OpenCV:在图像中添加高斯噪声、胡椒噪声
高斯噪声是一种常见的噪声类型,其特性是噪声值服从正态分布。在图像处理中,添加高斯噪声可以用于测试算法的抗噪性能或生成合成数据。胡椒噪声通过在图像中引入黑点,模拟了现实中的噪声情况。结合降噪算法(如中值滤波)可以有效去除此类噪声,提高图像质量。通过调整噪声比例,可以测试算法在不同噪声强度下的表现。原创 2025-01-22 08:15:00 · 1537 阅读 · 0 评论 -
OpenCV:高通滤波之索贝尔、沙尔和拉普拉斯
高通滤波是一种增强图像高频分量的处理方法,常用于边缘检测和特征提取。在图像处理中,高通滤波可以突出图像中的边缘、轮廓和细节信息,而抑制平滑区域(低频分量)。本文将重点介绍三种常见的高通滤波器:索贝尔(Sobel)、沙尔(Scharr)和拉普拉斯(Laplacian),并结合代码和应用场景进行讲解。原创 2025-01-22 08:00:00 · 2357 阅读 · 0 评论 -
OpenCV:图像处理中的低通滤波
低通滤波是一种在图像处理中广泛使用的技术,主要用于去噪和平滑处理。本文将从基础概念出发,结合方盒滤波、均值滤波、中值滤波、高斯滤波和双边滤波的具体实现与应用场景,进行详细讲解。原创 2025-01-21 08:15:00 · 1306 阅读 · 0 评论 -
OpenCV基础:图像变换
图像变换是图像处理中的重要部分,常用于调整图像尺寸、方向、位置或形状等属性。OpenCV提供了一系列灵活高效的图像变换函数,涵盖缩放、翻转、平移、仿射变换等操作。本文将详细介绍这些变换的常用接口、参数以及示例代码。原创 2025-01-20 08:15:00 · 1061 阅读 · 0 评论 -
OpenCV:图像滤波、卷积与卷积核
图像处理中,有许多基础概念和操作是理解更复杂算法的前提,比如图像滤波和卷积。本文将从基础概念出发,带你了解这些技术在图像处理中的意义,以及如何使用它们。原创 2025-01-21 08:00:00 · 1023 阅读 · 0 评论 -
OpenCV实战:使用鼠标绘制图形
本文主要是介绍在OpenCV中如何使用鼠标绘制图形。原创 2025-01-18 08:15:00 · 490 阅读 · 0 评论 -
OpenCV基础:绘制基本图形
本文介绍了如何使用 OpenCV + Python 绘制基本图形。通过调用 OpenCV 提供的绘图函数,我们可以轻松地在图像上绘制线条、矩形、圆形、椭圆、多边形以及文字。原创 2025-01-18 08:00:00 · 1130 阅读 · 0 评论 -
OpenCV基础:图像的溶合
在 OpenCV 中,图像融合是将两个或多个图像合并为一个图像的过程,同时可以对合并的过程进行控制,以实现不同的视觉效果。它不是简单的图像叠加,而是根据一定的权重和规则将不同图像的像素值组合在一起,产生新的图像,融合后的图像可以保留原始图像的部分信息,实现一些特殊的效果。原创 2025-01-17 08:15:00 · 580 阅读 · 0 评论 -
OpenCV基础:通道的分割与合并
在图像处理中,通道是图像数据的重要组成部分。例如,彩色图像通常由三个通道(RGB 或 BGR)组成,每个通道表示一种颜色分量。在某些场景中,我们可能需要对单个通道进行操作,这就需要用到 OpenCV 的通道分割与通道合并功能。原创 2025-01-17 08:00:00 · 432 阅读 · 0 评论