自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

翻译 Leaflet 快速入门指南

Leaflet是一个轻量级(42KB)的开源JavaScript地图库,具有简洁高效的特点。它支持多端运行,提供丰富的API和插件扩展功能。示例代码展示了如何快速创建地图、添加图层和标记弹窗。Leaflet拥有完善的文档、教程和活跃的社区支持,是开发交互式地图应用的理想选择。

2025-05-28 15:58:26 8

翻译 GPU加速——使用带有thrust的 cv::cuda::GpuMat OpenCV v4.8.0

本文介绍了如何将OpenCV的cv::cuda::GpuMat封装为Thrust库兼容的迭代器,实现在CUDA加速算法中对矩阵数据的灵活处理。主要内容包括:通过自定义step_functor和变换迭代器,构建能够适应GpuMat内存布局的Thrust迭代器利用Thrust的随机数生成功能填充GpuMat矩阵示例演示了对GpuMat单列进行原地排序的方法展示了如何配合使用CUDA流,将满足条件的元素复制到新矩阵该方法填补了OpenCV GPU模块缺乏随机数生成功能的空白,并提供了高效的矩阵数据处

2025-05-27 18:21:56 11

翻译 GPU加速——GPU 上的相似度检查(PNSR 和 SSIM) OpenCV v4.8.0

本教程介绍如何在CUDA GPU上使用OpenCV实现PSNR和SSIM算法,以加速图像相似性计算。首先展示了CPU版本的PSNR和SSIM实现,随后分别提供基础CUDA实现和优化版本(通过缓冲区重用减少内存分配开销)。对于SSIM,教程演示了如何在GPU上分通道处理图像数据。这些优化显著提高了计算速度,尤其适用于大规模图像处理任务。代码示例包含完整的实现细节,包括数据转换、像素操作和性能优化技巧。

2025-05-27 18:14:08 10

翻译 OpenCV教程:GPU 加速计算机视觉(cuda 模块) OpenCV v4.8.0

本文介绍了如何利用GPU加速OpenCV算法的两种方法:1) 使用GPU模块实现图像相似度检测(PNSR和SSIM),将原有CPU算法移植到GPU;2) 通过thrust库与GpuMat的交互,扩展GPU计算功能。两种方法均采用C++实现,兼容不同版本的OpenCV,可有效提升计算性能。

2025-05-27 17:59:41 9

翻译 OpenCV iOS——视频处理 OpenCV v4.8.0

本教程介绍了在iOS平台上使用OpenCV处理摄像头视频帧的方法。主要内容包括:1) 在Xcode项目中集成OpenCV框架;2) 创建基础UI界面并添加摄像头控制器;3) 利用CvVideoCamera类捕获视频帧;4) 实现CvVideoCameraDelegate协议处理视频帧;5) 示例展示了灰度转换和图像反转处理。教程还提供了性能优化建议,如避免矩阵复制和使用加速框架。项目需要Xcode 4.3+和iOS开发基础,支持OpenCV 3.0及以上版本。

2025-05-27 17:55:28 7

翻译 OpenCV iOS——图像处理 OpenCV v4.8.0

本文介绍了在iOS平台上使用OpenCV进行图像处理的基本方法。重点讲解了OpenCV的Mat结构与iOS的UIImage类之间的相互转换技术:通过Core Graphics框架实现彩色/灰度Mat到UIImage的转换,以及UIImage到Mat的转换流程。文章提供了完整的Objective-C代码示例,包括cvMatFromUIImage、cvMatGrayFromUIImage和UIImageFromCVMat等核心转换函数。这些转换是iOS平台OpenCV应用开发的基础,使开发者能够在保留OpenC

2025-05-27 17:44:58 7

翻译 OpenCV iOS——OpenCV iOS 入门 OpenCV v4.8.0

本教程介绍如何在iOS项目中集成OpenCV框架并使用Xcode开发简单应用。主要内容包括:1)创建Xcode项目后,通过Build Phases将opencv2.framework链接到项目;2)在预编译头文件中添加OpenCV头文件引用;3)开发一个显示"Welcome to OpenCV"提示框的Hello World示例。教程还针对XCode5+和iOS8+版本特别说明:需要将.m文件改为.mm扩展名,并手动添加AssetsLibrary.framework。通过图文并茂的方式,详细演示了从框架集成

2025-05-27 17:36:02 4

翻译 OpenCV iOS——在iOS中安装 OpenCV v4.8.0

本文介绍了在iOS系统上构建OpenCV框架的详细步骤。主要内容包括:1)软件要求(CMake 2.8.8+、Xcode 4.2+);2)通过Git克隆OpenCV主仓库及可选贡献模块的方法;3)使用CMake构建框架的完整命令行流程,包括添加额外模块(--contrib)、排除特定模块(--without)以及自定义架构(--iphoneos_archs)等选项;4)成功构建后生成的opencv2.framework文件说明。文末提供了更多OpenCV iOS教程的参考链接。注意:教程可能存在信息过时的情

2025-05-27 17:30:19 6

翻译 OpenCV教程:OpenCV iOS OpenCV v4.8.0

OpenCV iOS 开发指南摘要:包含 iOS 平台安装教程、入门指南、图像处理(如滤镜与变换)和视频处理(实时分析)等核心内容。适用于移动端计算机视觉开发,帮助快速实现图像/视频处理功能。参考官方文档获取详细实现步骤。

2025-05-27 17:22:41 4

翻译 条形码识别——4.8.0+新增 OpenCV v4.8.0

本文介绍了使用OpenCV进行条形码检测和解码的方法。主要内容包括:支持的条形码标准(EAN-8/13、UPC-A/E)、BarcodeDetector类的使用方法(初始化、检测、解码),以及检测结果的可视化。重点讲解了detectAndDecodeWithType函数,该函数可同时完成检测和解码,输出条形码内容和类型。文中提供了代码示例展示如何检测图像中的条形码并绘制检测结果,包括绘制检测框、顶点及解码文本。最后展示了原始图像与检测效果的对比图。

2025-05-27 17:16:01 5

翻译 图形API——使用 DepthAI 硬件/OAK 深度传感器 OpenCV v4.8.0

本文介绍了如何使用OpenCV G-API模块与Luxonis DepthAI深度传感器协同工作。通过配置CMake中的WITH_OAK标志并安装depthai-core库后,开发者可以利用G-API接口处理RGB图像及深度数据。示例代码展示了一个人脸检测的异构图形处理流程,包括模型推理、结果解析和可视化渲染。该方案支持从Oak系列相机获取实时视频流,并对检测到的目标进行可视化标记。文中还详细说明了如何配置开发环境、构建处理管道,以及执行实时推理任务。

2025-05-27 17:05:47 8

翻译 图形API——利用 G-API 实现人脸美化算法 OpenCV v4.8.0

本文介绍了一种基于G-API实现的人脸美化算法,结合深度学习与计算机视觉技术。算法通过DNN检测人脸和特征点,生成背景、面部及皮肤三个蒙版区域,应用不同滤镜后合成最终图像。文章详细展示了构建G-API管道的步骤,包括声明两个DNN网络(人脸检测和特征点检测)、描述处理图的代码实现(包含标准操作、自定义操作和推理调用),以及如何通过蒙版组合实现平滑皮肤保留特征的效果。该算法需要OpenCV 4.2+和OpenVINO工具包支持,已在Linux/Windows平台测试。

2025-05-27 17:00:34 7

翻译 图形API——在 G-API 上移植各向异性图像分割技术 OpenCV v4.8.0

本教程讲解如何将传统OpenCV图像处理算法转换为G-API计算图。以梯度结构张量(GST)的图像分割算法为例,展示了如何将原有的calcGST()函数重构为G-API版本,只生成计算图而不处理实际数据。教程重点包括:1)将Mat操作转换为GMat操作;2)构建计算流程;3)保留算法逻辑不变。通过这种方法,可以在不修改核心算法的情况下,利用G-API实现图形化执行和性能优化。适合想了解OpenCV G-API转换方法的开发者学习。

2025-05-27 16:08:19 8

原创 Whisper命令行调用参数简析(20240930版本)

众所周知,Whisper也已经算一个老牌的语音识别,转录字幕的功臣了。

2025-04-07 20:35:46 391 1

翻译 图形API——使用 G-API 的人脸分析管线 OpenCV v4.8.0

在本教程中,您将学习如何在 G-API 图形中集成深度学习推理;如何在视频流上运行 G-API 图形并从中获取数据。许多计算机视觉算法是在视频流而非单个图像上运行的。视频流处理通常由多个步骤组成,如解码、预处理、检测、跟踪、分类(检测到的物体)和可视化,从而形成一个视频处理流水线。此外,这种流水线的许多步骤可以并行运行–现代平台在同一芯片上有不同的硬件块,如解码器和 GPU,还可以插入额外的加速器作为扩展,如用于深度学习卸载的 Intel® Movidius™ 神经计算棒。

2024-08-15 16:13:57 119 1

翻译 OpenCV教程:图形 API(gapi 模块) OpenCV v4.8.0

本教程介绍如何使用 G-API 构建混合视频处理流水线,其中深度学习与图像处理有效结合,以最大限度地提高整体吞吐量。这是一个端到端的教程,将一个现有的示例算法移植到 G-API 上,涵盖了这一转换过程背后的基本直觉,并探讨了图模型带来的好处。在本教程中,我们展示了如何将 Luxonis DepthAI 库与 G-API 结合使用。在本教程中,我们使用 G-API 构建了一个复杂的计算机视觉/深度学习混合视频处理管道。在本节中,您将了解基于图的图像处理以及如何使用 G-API 模块。

2023-11-11 22:12:50 818

翻译 深度神经网络——转换 TensorFlow 分段模型并使用 OpenCV 启动 OpenCV v4.8.0

要将图像传入 TF 模型,我们只需构建一个适当的形状,其余的图像预处理将在 feature_extractor.py 中描述并自动调用。21 个预测通道(21 代表 PASCAL VOC 类别的数量)中的每个预测通道都包含概率,表示像素对应 PASCAL VOC 类别的可能性。模块允许在 PASCAL VOC 数据集上运行完整的评估管道,并测试 DeepLab MobileNet 模型的执行情况。的第一步是获取冻结的 TF 模型图。在这一步中,我们将分割蒙板的概率与预测类别的适当颜色进行映射。

2023-11-11 22:08:11 446

翻译 深度神经网络——转换 TensorFlow 检测模型并使用 OpenCV Python 发布 OpenCV v4.8.0

要启动测试过程,我们需要提供适当的模型配置。我们将使用 TensorFlow 对象检测 API 中的 ssd_mobilenet_v1_coco.config。让我们简单了解一下用 OpenCV API 转换 TensorFlow 模型的流程中涉及的关键概念。的第一步是获取冻结的 TF 模型图。要使用下面的代码进行实验,您需要安装一组库。,我们将使用相应的 samples/dnn/tf_text_graph_ssd.py。函数中,我们将提取模型归档中提供的。为了提供模型推论,我们将使用下面的。

2023-11-11 18:14:44 317

翻译 深度神经网络——转换 TensorFlow 分类模型并用 OpenCV Python 发布 OpenCV v4.8.0

首先减去平均值,然后将像素值乘以定义的比例。TF 和 OpenCV 模型的评估结果(准确率、推理时间、L1)将写入日志文件。推理时间值也将以图表形式显示,以概括所获得的模型信息。的第一步是获取冻结的 TF 模型图。为了提供模型推理,我们将使用下面与 ImageNet 类 ID 335 相对应的。如果您只想运行评估或测试模型管道,可以跳过 "模型转换管道 "教程部分。从实验中可以看出,OpenCV 和 TF 的推理结果相同。函数中的图像预处理流程,我们将平均值乘以 127.5。

2023-11-05 15:33:18 250

翻译 深度神经网络——转换 PyTorch 分割模型并使用 OpenCV 启动 OpenCV v4.8.0

需要注意的是,cv2.dnn.blobFromImage 首先要减去平均值,然后才对像素值进行缩放。推理时间值也将以图表形式显示,以概括所获得的模型信息。在 21 个预测通道(21 代表 PASCAL VOC 类别的数量)中,每个预测通道都包含概率,表示像素对应于 PASCAL VOC 类别的可能性有多大。和分割模型与 OpenCV API 的转换流水线涉及的关键点是相同的。在这一步中,我们将分割掩码中的概率与预测类别的适当颜色进行映射。如果您只想运行评估或测试模型管道,可以跳过 "模型转换管道 "部分。

2023-11-05 15:19:09 292

翻译 深度神经网络——转换 PyTorch 分类模型并用 OpenCV C++ 启动 OpenCV v4.8.0

为了对预测结果进行标签解码,我们还需要 imagenet_classes.txt 文件,其中包含 ImageNet 类别的完整列表。让我们简要回顾一下使用 OpenCV API 转换 PyTorch 模型的流程中涉及的关键概念。要使用下面的代码进行实验,您需要安装一组库。为了提供模型推理,我们将使用下面与 ImageNet 类 ID 335 相对应的。我们将以 ResNet-50 架构为例,探讨上述要点。中的平均值,然后才将像素值乘以比例。因此,转换后的 ResNet-50 将保存在。

2023-11-05 14:57:18 148

翻译 深度神经网络——转换 PyTorch 分类模型并用 OpenCV Python 启动 OpenCV v4.8.0

PyTorch 和 OpenCV 模型的评估结果(准确率、推理时间、L1)将写入日志文件。推理时间值也将以图表形式显示,以概括所获得的模型信息。为了对预测结果进行标签解码,我们还需要 imagenet_classes.txt 文件,其中包含 ImageNet 类别的完整列表。要使用下面的代码进行实验,您需要安装一组库。关键字定义您是想用某些特定值参数化模型测试过程,还是使用默认值,例如。如果只想运行评估或测试模型管道,可以跳过 "模型转换管道 "部分。我们将以 ResNet-50 架构为例,探讨上述要点。

2023-11-05 14:41:39 159

翻译 深度神经网络——基于 DNN 的人脸检测与识别 OpenCV v4.8.0

检测输出的人脸是一个 CV_32F 类型的二维数组,其行是检测到的人脸实例,列是人脸的位置和 5 个人脸地标。获得两张人脸图像的人脸特征 feature1 和 feature2 后,运行下面的代码来计算两张人脸的身份差异。例如,如果余弦距离大于或等于 0.363,或 normL2 距离小于或等于 1.128,则两张脸具有相同的身份。分别代表右眼、左眼、鼻尖、右嘴角和左嘴角的坐标。人脸检测后,运行以下代码从面部图像中提取人脸特征。分别为人脸边界框的左上角坐标、宽度和高度,训练并提供的人脸识别模型。

2023-11-05 14:24:24 627

翻译 深度神经网络——高级应用程序接口: 文本检测模型和文本识别模型 OpenCV v4.8.0

在本教程中,我们将详细介绍 TextRecognitionModel 和 TextDetectionModel 的 API。按照上述步骤操作后,很容易就能得到输入图像的检测结果。然后,您可以对文本图像进行转换和裁剪,以便进行识别。只支持基于 CNN+RNN+CTC 的算法,并提供了 CTC 的贪婪解码方法。步骤 1. 加载带有词汇表的图像和模型。可以找到更多模型,这些模型来自。步骤 2.a 设置参数(DB)训练更多模型,也可以用。步骤 1. 加载图片和模型。发布更多 DB 模型。测试图像的下载链接可在。

2023-11-05 13:48:42 669

翻译 深度神经网络——如何运行自定义 OCR 模型 OpenCV v4.8.0

DenseNet_CTC 参数最小,FPS 最佳,适合对计算成本非常敏感的边缘设备。如果计算资源有限,又想获得更高的准确率,VGG_CTC 是一个不错的选择。是训练您自己的 OCR 模型的良好起点。在本教程中,我们首先介绍如何获取自定义 OCR 模型,然后介绍如何转换自己的 OCR 模型,使其能够被 opencv_dnn 模块正确运行。文本识别模型的输入是文本检测模型的输出,这导致文本检测的性能在很大程度上影响文本识别的性能。文本识别模型的性能是在 OpenCV DNN 上测试的,不包括文本检测模型。

2023-11-05 13:26:22 180

翻译 深度神经网络——支持自定义深度学习层 OpenCV v4.8.0

因此,使用最新版本的 Caffe 或 OpenCV,你将获得填充边框的偏移结果。但是,您可能会遇到这样的问题:您的网络无法使用 OpenCV 导入,因为您网络的某些层无法在 OpenCV 的深度学习引擎中实现。层的名称、类型、权重和超参数存储在本地框架在训练过程中生成的文件中。构建神经网络的新方法通常会引入新的层类型。这些层可能是对现有层的修改,也可能是对杰出研究想法的实现。下面的示例展示了如何在 Python 中自定义 OpenCV 的图层。如果你的层有可训练的权重,它们将已存储在层的成员。

2023-11-05 13:18:23 164

翻译 深度神经网络——如何在浏览器中运行深度网络 OpenCV v4.8.0

应用程序的主循环接收来自摄像头的帧,并对帧上检测到的每个人脸进行识别。教程参考了人脸检测和人脸识别模型管道的示例。人脸检测网络将 BGR 图像作为输入,并生成一组可能包含人脸的边界框。我们需要做的只是选择具有较强置信度的边界框。维单位向量,将输入的人脸表示为单位多维球体上的一个点。因此,两个人脸之间的差异就是两个输出向量之间的夹角。输入 blob 越大,检测到的人脸可能越少。将新的特征向量与已注册的特征向量匹配。返回匹配度最高的人的姓名。,命名一个被识别为未知的人。的 RGB 人脸图像。

2023-11-05 12:56:36 169

翻译 深度神经网络——YOLO DNNs OpenCV v4.8.0

在本文中,您将学习如何使用 yolo_object_detection(通过设备捕获、视频和图像实时使用 OpenCV dnn 模块的示例)来使用 opencv_dnn 模块。问题和建议请发送电子邮件至 Alessandro de Oliveira Faria cabelo@opensuse.org 或 OpenCV 团队。语言编写的对象检测模型的通用示例。我们将在下图中演示该示例的结果。使用图像或视频文件执行。

2023-11-05 12:46:11 129

翻译 深度神经网络——如何在 Android 设备上运行深度网络 OpenCV v4.8.0

我们的示例将从摄像头获取图片,将其转发到深度网络,并接收一组矩形、类别标识符和置信度值(范围为。在本教程中,你将了解如何使用 OpenCV 深度学习模块在安卓设备上运行深度学习网络。打开 Android Studio。插入设备并运行项目。在我们进行下一步之前,它应已安装并成功启动。使用 "Empty Template "模板。恭喜您 现在我们可以使用 OpenCV 制作一个示例了。如遇到问题,请阅读《

2023-11-05 12:38:00 454

翻译 深度神经网络——利用 OpenVINO 使用 OpenCV OpenCV v4.8.0

自 2021.1.1 版发布后,OpenVINO 不再提供预编译的 OpenCV。如果您直接使用 OpenVINO 运行时或 OpenVINO 样本,这一变化不会对您产生影响:它与 OpenCV 没有很强的依赖关系。但是,如果您使用 Open Model Zoo 演示或 OpenVINO 运行时作为 OpenCV DNN 后端,则需要获取 OpenCV 版本。本教程提供了如何在OpenVINO中使用OpenCV的安装指南。

2023-11-05 11:29:51 478

翻译 深度神经网络——如何为Halide后端调度网络 OpenCV v4.8.0

在本教程中,我们将介绍在OpenCV深度学习模块中使用Halide后端调度网络的方法。通过层融合,我们可以只调度融合集的顶层。有时,网络会使用阻塞结构,这意味着某些层是相同或非常相似的。如果想根据平铺或矢量化因素对不同层应用相同的调度,可在调度文件开头的。但如果特定图层需要手动调度,则可以混合使用手动和自动调度方式。编写调度文件,跳过需要自动调度的图层。调度配置文件以 YAML 文件表示,其中每个节点都是一个调度函数或调度指令。此外,您的模式可能会使用一些参数变量。中找到调度示例,并用它来调度你的网络。

2023-11-05 11:20:39 86

翻译 深度神经网络——如何启用 Halide 后端以提高效率 OpenCV v4.8.0

本教程介绍如何使用 Halide 语言后端在 OpenCV 深度学习模块中运行模型。Halide 是一个开源项目,可以让我们以可读格式编写图像处理算法,根据特定设备安排计算,并以相当高的效率进行评估。LLVM 编译可能需要很长时间。

2023-11-05 11:13:38 239

翻译 深度神经网络——加载 Caffe 框架模型 OpenCV v4.8.0

我们将网络输出(包含 1000 个 ILSVRC2012 图像类别中每个类别的概率)放到 prob blob 中。在本教程中,你将学习如何使用 opencv_dnn 模块,利用 Caffe 模型动物园中的 GoogLeNet 训练网络进行图像分类。在前向传递过程中,会计算每个网络层的输出,但在本例中,我们只需要最后一层的输出。形状的四维 blob(即所谓的批处理)。将这些文件放到本程序示例的工作目录下。我们将在以下图片上演示此示例的结果。我们将使用示例应用程序中的片段,可从。对于我们的图像,我们得到的。

2023-11-05 11:06:32 561

翻译 OpenCV教程:深度神经网络(DNN 模块) OpenCV v4.8.0

在本节中,您将找到介绍如何使用 OpenCV 运行分类、分割和检测 PyTorch DNN 模型的指南。本节将介绍如何使用 OpenCV 运行分类、分割和检测 TensorFlow DNN 模型。

2023-10-25 18:31:24 236

翻译 二维特征框架——用代码解释同构的基本概念 OpenCV v4.8.0

由于物体是平面的,因此在物体帧中表示的点与在归一化摄像机帧中表示的投影到图像平面中的点之间的变换就是同轴变换。,可以根据三维物体点(在物体帧中表示的点)和投影二维图像点(在图像中查看的物体点)的对应关系计算摄像机姿态。在我们的例子中,棋盘的 Z 轴位于物体内部,而在 homography 图中,Z 轴位于物体外部。请注意,根据同轴度估计摄像机姿态的代码只是一个示例,如果您想估计平面或任意物体的摄像机姿态,请使用。),因为这并不能确保所得到的旋转矩阵是正交的,而刻度大致是通过将第一列归一化为 1 来估算的。

2023-10-25 18:26:21 190

翻译 二维特征框架——AKAZE 和 ORB 平面跟踪 OpenCV v4.8.0

如果最接近的匹配比第二个最接近的匹配更接近 nn_match_ratio,那么它就是匹配的。我们需要保存检测到的关键点数量,以确保两个检测器找到的关键点数量大致相同。在本教程中,检测器的设置是在每帧上找到约 1000 个关键点。本地特征,使用它们来查找视频帧之间的匹配点并跟踪物体运动。如果有合理数量的离群值,我们就可以使用估计变换来定位对象。会计算离群值,因此我们只需保存选定的点和匹配值。要进行跟踪,我们需要视频和第一帧上的物体位置。要找到帧间的匹配点,我们必须先找到关键点。在本教程中,我们将比较。

2023-10-25 17:19:06 225

翻译 二维特征框架——AKAZE 本地特征匹配 OpenCV v4.8.0

我们将在给定同构矩阵的一对图像上找到关键点,将它们匹配起来,并计算离群值(即符合给定同构的匹配值)的数量。中找到图像(graf1.png、graf3.png)和同源图(H1to3p.xml)。如果最近的匹配距离明显小于第二近的匹配距离,则说明匹配是正确的(匹配没有歧义)。我们使用Hamming距离,因为 AKAZE 默认使用二进制描述符。如果第一个关键点到第二个关键点的投影距离小于阈值,则符合同构模型。我们会为离群值创建一组新的匹配值,因为绘制函数需要它。这里我们保存生成的图像,并打印一些统计数据。

2023-10-25 17:09:00 713

翻译 二维特征框架——检测平面物体 OpenCV v4.8.0

测试数据:使用数据文件夹中的图片,例如 box.png 和 box_in_scene.png。模块检测场景中的已知平面物体。本教程的目的是学习如何使用。

2023-10-25 16:54:48 159

翻译 二维特征框架——利用特征 2D + 同源性技术查找已知对象 OpenCV v4.8.0

下面是检测到的对象(绿色高亮)的结果。请注意,由于同源性是通过 RANSAC 方法估算的,因此检测到的错误匹配不会影响同源性计算。才能使用 SURF 特征(替代方法有 ORB、KAZE…本教程代码如下所示。本教程代码如下所示。本教程代码如下所示。在本教程中,你将学习如何。

2023-10-25 16:51:35 139

翻译 二维特征框架——使用 FLANN 进行特征匹配 OpenCV v4.8.0

计算一个关键点的两个最近匹配点之间的距离比,当这个值低于阈值时,它就是一个好的匹配点。事实上,这一比率有助于区分模糊匹配(两个最近邻点之间的距离比接近于 1)和良好匹配。)通常使用欧氏距离(或 L2-norm)进行比较和匹配。由于 SIFT 和 SURF 描述符表示邻域中的定向梯度直方图(对于 SURF 来说是 Haar 小波响应的直方图),因此欧氏距离的替代方法是基于直方图的度量(用平方根(海林格)内核代替标准欧几里得距离来衡量 SIFT 描述符之间的相似性,可显著提高管道各阶段的性能。

2023-10-25 16:43:07 1245

空空如也

空空如也

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

TA关注的人

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