当前位置: 首页 > ds >正文

OpenCV CUDA模块特征检测------角点检测的接口createMinEigenValCorner()

  • 操作系统:ubuntu22.04
  • OpenCV版本:OpenCV4.9
  • IDE:Visual Studio Code
  • 编程语言:C++11

算法描述

该函数创建一个 基于最小特征值(Minimum Eigenvalue)的角点响应计算对象,这是另一种经典的角点检测方法(类似于 Shi-Tomasi 角点检测器)。
返回的是 cv::Ptrcv::cuda::CornernessCriteria 类型的对象,可用于后续调用 .compute() 方法对图像进行角点响应计算。

函数原型

Ptr<CornernessCriteria> cv::cuda::createMinEigenValCorner 	
( int  	srcType,int  	blockSize,int  	ksize,int  	borderType = BORDER_REFLECT101 
) 		

参数

  • srcType 输入源类型。目前仅支持 CV_8UC1 和 CV_32FC1。
  • blockSize 邻域大小。
  • ksize Sobel 算子的孔径参数。
  • borderType 像素外推方法(边界填充方式)。目前仅支持 BORDER_REFLECT101 和 BORDER_REPLICATE。

代码示例

#include <iostream>
#include <opencv2/cudaimgproc.hpp>
#include <opencv2/opencv.hpp>int main()
{// Step 1: 加载图像并转换为灰度图cv::Mat h_img = cv::imread( "/media/dingxin/data/study/OpenCV/sources/images/chessboard.png", cv::IMREAD_GRAYSCALE );if ( h_img.empty() ){std::cerr << "Failed to load image!" << std::endl;return -1;}// Step 2: 将图像上传到 GPUcv::cuda::GpuMat d_img, d_corners;d_img.upload( h_img );// Step 3: 创建 MinEigenVal 角点检测器int srcType   = d_img.type();  // 图像类型(如 CV_8UC1)int blockSize = 3;             // 邻域大小int ksize     = 3;             // Sobel 核大小cv::Ptr< cv::cuda::CornernessCriteria > criteria = cv::cuda::createMinEigenValCorner( srcType, blockSize, ksize );// Step 4: 执行角点响应计算criteria->compute( d_img, d_corners );// Step 5: 下载结果并显示cv::Mat h_corners;d_corners.download( h_corners );cv::normalize( h_corners, h_corners, 0, 255, cv::NORM_MINMAX, CV_8U );cv::imshow( "original picture", h_img );cv::imshow( "Min EigenVal Corner Response", h_corners );cv::waitKey( 0 );return 0;
}

运行结果

在这里插入图片描述

http://www.xdnf.cn/news/10946.html

相关文章:

  • React 项目初始化与搭建指南
  • 算法/机理模型演示平台搭建(二)——算法接口部署(FastApi)
  • 算法训练第七天
  • Web后端快速入门(Maven)
  • TDengine 的 AI 应用实战——运维异常检测
  • Ubuntu22.04安装MinkowskiEngine
  • 灵活运用 NextJS 服务端组件与客户端组件
  • vue-14(使用 ‘router.push‘ 和 ‘router.replace‘ 进行编程导航)
  • Walle-Web:打造轻量级高效的DevOps自动化部署平台
  • Vue混入
  • 种草平台:重新定义购物的乐趣革命
  • 北京大学肖臻老师《区块链技术与应用》公开课:07-BTC-挖矿难度
  • 基于LEAP模型在能源环境发展、碳排放建模预测及分析中实践应用
  • 论文分类打榜赛Baseline:ms-swift微调InternLM实践
  • 常用工具推荐---QQ截图功能、iLovePDF与Pandoc
  • 云服务器部署Gin+gorm 项目 demo
  • python调用硅基流动的视觉语言模型
  • 自然语言处理(NLP)的系统学习路径规划
  • HarmonyOS运动开发:精准估算室内运动的距离、速度与步幅
  • docker中组合这几个命令来排查 import 模块失败 的问题
  • 数字商城小程序源码,开启便捷电商新体验
  • 【论文笔记】High-Resolution Representations for Labeling Pixels and Regions
  • RAG入门 - Reader(2)
  • 定时器:中央对齐模式剖析
  • Neovim - 打造一款属于自己的编辑器(一)
  • 第二章支线六 ·CSS幻纹术:背景、遮罩与视觉层级
  • 实验设计与分析(第6版,Montgomery著,傅珏生译) 第10章拟合回归模型10.9节思考题10.12 R语言解题
  • 大模型分布式训练笔记(基于accelerate+deepspeed分布式训练解决方案)
  • 互联网大厂Java求职面试:AI大模型与云原生技术的深度融合
  • Java面试八股--06-Linux篇