使用 OpenCV 从小图像中提取点描述符

2024-01-01

我正在尝试提取不同的点描述符(SIFT、SURF、ORB、BRIEF,...)来构建视觉词袋。问题似乎是我使用的图像非常小:12x60px。 使用密集提取器,我可以获得一些关键点,但是在提取描述符时,没有提取任何数据。

这是代码:

vector<KeyPoint> points;
Mat descriptor; // descriptor of the current image
Ptr<DescriptorExtractor> extractor = DescriptorExtractor::create("BRIEF");
Ptr<FeatureDetector> detector(new DenseFeatureDetector(1.f,1,0.1f,6,0,true,false));
image = imread(filename, 0);
roi = Mat(image,Rect(0,0,12,60));

detector->detect(roi,points);

extractor->compute(roi,points,descriptor);
cout << descriptor << endl;

结果是[](使用BRIEF和ORB)和SegFault(使用SURF和SIFT)。 有谁知道如何从 OpenCV 上的小图像中密集提取点描述符? 感谢您的帮助。


事实上,我终于设法找到了解决方案。谢谢您的帮助。

我现在使用带有初始化参数的 Orb 探测器,而不是随机参数,例如:

Ptr<DescriptorExtractor> extractor(new ORB(500, 1.2f, 8, orbSize, 0, 2, ORB::HARRIS_SCORE, orbSize));

在找到问题的答案之前,我必须彻底探索 OpenCV 的文档:Orb 文档 http://docs.opencv.org/2.4.3/modules/features2d/doc/feature_detection_and_description.html#orb.

此外,如果人们使用密集点提取器,他们应该意识到,在描述符计算过程之后,他们拥有的关键点可能少于关键点提取器生成的关键点。描述符计算删除任何无法获取数据的关键点。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 OpenCV 从小图像中提取点描述符 的相关文章

  • 检测植物图片中的所有分支

    我想知道有什么可以检测下图中的所有绿色树枝 目前我开始应用 Frangi 过滤器 options struct FrangiScaleRange 5 5 FrangiScaleRatio 1 FrangiBetaOne 1 FrangiBe
  • 如何将 OpenCV 的测试框架与 CMake 结合使用?

    好像 OpenCV 有一个测试框架 https github com Itseez opencv tree ef91d7e8830c36785f0b6fdbf2045da48413dd76 modules ts include opencv
  • 将向量 转换为大小为 (n x 3) 的 Mat,反之亦然

    我有 Point3d 向量 向量形式的点云 如果我使用 OpenCV 提供的转换 比如 cv Mat tmpMat cv Mat pts Here pts is vector
  • 如何识别与我的对象相关的轮廓并找到它们的几何质心

    问题陈述和背景信息 EDIT 约束 法兰上的红色会随着时间的推移而变化 所以我此时不会尝试使用颜色识别来识别我的对象 除非它足够强大 此外 外部照明也可能是一个因素 因为将来这将是在室外区域 我有 RGB 深度相机 有了它 我就能捕捉到这个
  • 使用 openCV 对图像中的子图像进行通用检测

    免责声明 我是计算机视觉菜鸟 我看过很多关于如何在较大图像中查找特定子图像的堆栈溢出帖子 我的用例有点不同 因为我不希望它是具体的 而且我不确定如何做到这一点 如果可能的话 但我感觉应该如此 我有大量图像数据集 有时 其中一些图像是数据集的
  • 如何使用Android opencv使图像的白色部分透明

    我无法链接超过 2 个网址 因此我将我的照片发布到此博客 请在这里查看我的问题 http blog naver com mail1001 220650041897 http blog naver com mail1001 220650041
  • 访问图像的 Windows“标签”元数据字段

    我正在尝试进行一些图像处理 所以现在我正在尝试读取图像 exif 数据 有 2 个内置函数可用于读取图像的 exif 数据 问题是我想读取图像标签 exifread and imfinfo这两个函数都不显示图像标签 Is there any
  • OpenCV 中的 Gabor 内核参数

    我必须在我的应用程序中使用 Gabor 过滤器 但我不知道这个 OpenCV 方法参数值 我想对虹膜进行编码 启动 Gabor 过滤器并获取特征 我想对 12 组 Gabor 参数值执行此操作 然后我想计算 Hamming Dystans
  • 如何将 Opencv VideoWriter 与 GStreamer 结合使用?

    我正在尝试使用 Opencv VideoWriter 传输 h264 流 以使用 VideoCapture 将其传输到网络上的另一台电脑上 但是 我被困在 VideoWriter 上 执行此代码会返回错误 并且 out isOpened 始
  • OpenCV:将垫子除以标量的最简单方法是什么

    我认为标题中已经包含了很多内容 显然我可以迭代和划分 但我认为有一种内置的方法 我看见cvConvertScale但这不适用于类型cv Mat 我知道标量乘法的缩放运算 cv Mat M float alpha cv Mat Result
  • Python 中的 Lanczos 插值与 2D 图像

    我尝试重新缩放 2D 图像 灰度 图像大小为 256x256 所需输出为 224x224 像素值范围从 0 到 1300 我尝试了两种使用 Lanczos 插值来重新调整它们的方法 首先使用PIL图像 import numpy as np
  • OpenCV 2.4 Jpeg 到 PNG(带 alpha 通道)

    我有一个 JPEG 和一个蒙版 我想创建一个具有三个 JPEG 通道的 PNG 并且 Alpha 通道应该是蒙版 如何使用 OpenCV 实现这一目标 Regards std vector
  • 如何绘制每个分割对象的轮廓

    我应用分水岭分割来检测触摸对象 这样做效果很好 现在 我想绘制每个对象的轮廓 这样我就可以获得它们的长度 面积 矩等 但是分割结果中的对象仍然是触摸的 所以 我没能画出每一个的轮廓 如何绘制每个对象的轮廓 include
  • 在 HSV 颜色空间内定义组织学图像掩模的颜色范围(Python、OpenCV、图像分析):

    为了根据颜色将组织学切片分成多个层 我修改了 OpenCV 社区提供的一些广泛分布的代码 1 我们的染色程序用不同的颜色标记组织横截面的不同细胞类型 B 细胞为红色 巨噬细胞为棕色 背景细胞核为蓝色 I m interested in se
  • 如何褪色

    我想将像素的颜色淡化为白色 但显然保持相同的颜色 如果我有一个像素 200 120 40 将每个值加上 10 以使 210 130 50 使其颜色相同 只是颜色更浅 还是会完全改变颜色 例如 我知道 100 100 100 即将 110 1
  • 为什么opencv videowriter这么慢?

    你好 stackoverflow 社区 我有一个棘手的问题 我需要你的帮助来了解这里发生了什么 我的程序从视频采集卡 Blackmagic 捕获帧 到目前为止 它工作得很好 同时我用 opencv cv imshow 显示捕获的图像 它也工
  • 图像处理以提高 tesseract OCR 准确性

    我一直在使用 tesseract 将文档转换为文本 文档的质量参差不齐 我正在寻找有关哪种图像处理可以改善结果的提示 我注意到高度像素化的文本 例如由传真机生成的文本 对于超正方体来说尤其难以处理 大概所有这些字符的锯齿状边缘都会混淆形状识
  • 如何将本机库链接到 IntelliJ 中的 jar?

    我正在尝试在 IntelliJ 中设置 OpenCV 但是我一直在弄清楚如何告诉 IntelliJ 在哪里可以找到本机库位置 在 Eclipse 中 添加 jar 后 您可以在 Build Config 屏幕中设置 Native 库的位置
  • 每当使用 import cv2 时 OpenCV 都会出错

    我在终端上使用 pip3 install opencv contrib python 安装了 cv2 并且它工作了 但是每当我尝试导入 cv2 或运行导入了 cv2 的 vscode 文件时 在 python IDLE 上它都会说 Trac
  • 光学标记阅读器的开源库[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我想要一个用于光学标记读取 OMR 的开源库 有这样的库吗 我想在我的 java 应用程序中使用这个库 zxing 可能对你有用 http

随机推荐

  • Android RecyclerView - 多个Edittext同时更改

    我有一个RecyclerView有很多张牌可以容纳 4EditText 当我在其中输入值时EditText一张卡的值会在随机卡中填充相同的值 令人惊讶的是它不会跳EditText例如 如果我输入值edittext1 of card1它会将相
  • 如何在 Android RecyclerView 上对字符串进行排序?

    我有一个充满 CardView 的 recyclerView 它有 2 个参数 它们都是字符串 其中之一是标题 我想要一个按钮来根据标题按字母顺序对它们进行排序 因为它没有太多元素 所以我决定使用插入排序 即 o n 2 这是我的实现 pu
  • Spring Boot中处理嵌入式Tomcat异常

    我们遇到嵌入式 Tomcat 抛出的问题IllegalArgumentException来自LegacyCookieProcessor 它抛出 500 HTTP 响应代码 我们需要处理异常并对其执行某些操作 具体来说 将其作为 400 发送
  • Android中TextView的TextAppearance属性

    我正在开发我正在使用的 Android 应用程序TextView在屏幕上显示文本 我将此属性用于TextView设置文本的大小android textAppearance android attr textAppearanceMedium
  • 使用 Cognito 令牌访问 S3 时收到“AccessDenied”

    我正在尝试在存储桶上使用 listObjects 操作 这是通过 WebService 访问的 我不想授予用户控制台访问权限 角色政策 Version 2012 10 17 Statement Effect Allow Action mob
  • U2Net模型在android中的使用

    我按照以下步骤将原始 u2net 模型权重文件 u2net pth 转换为tensorflow lite说明 https qiita com PINTO items ed06e03eb5c007c2e102 就转换成功了 但是我在tenso
  • 了解分段错误的堆栈跟踪

    我正在做一个snprintf并出现段错误 当我像这样在 gdb 上加载核心文件时 gdb my executable core 并做了bt为了获得回溯 我得到了以下内容 Program terminated with signal 11 S
  • 构建 OpenAPI 响应,包括 oneOf 或 allOf

    我正在尝试使用 OpenAPI 3 从各种架构组件构建响应 响应基本上分为三个部分 其他端点使用的共享组件 即成功 失败标志 components schemas core response schema inside allOf 属性al
  • 用 Angular 上传文件?

    我知道这是一个非常普遍的问题 但我无法在 Angular 2 中上传文件 我努力了 1 http valor software com ng2 file upload http valor software com ng2 file upl
  • 将用户控件与 ViewModel 类关联

    当我定义一个DataTemplate内联 Visual Studio 知道我要绑定的类型 并且该类型中的属性会在自动完成中出现 例如 在下面的代码中 我可以选择DisplayName从里面的自动完成列表FirstViewModel模板
  • jQuery 同时切换“幻灯片”和“淡入淡出”动画

    jQuery 有一个slideToggle and a fadeToggle 但他们在一起玩得不好 参见小提琴here http jsfiddle net Y2yvd div on click function span slideTogg
  • Spring Boot 自定义错误页面堆栈跟踪

    我在几个位置找到了如何使用 Spring boot 制作自定义错误页面 但我似乎无法弄清楚如何使其显示堆栈跟踪 这就是我所拥有的 Bean public EmbeddedServletContainerCustomizer containe
  • 从 WooCommerce 中的 apply_filters('prefix_xml_feeds_productname_variant') 函数获取数据

    我对 WordPress 和 WooCommerce 完全陌生 所以对糟糕的解释表示歉意 我有这个代码 text apply filters prefix xml feeds productname variant text product
  • 使用java代码计算S3上文件的行数

    使用java代码 是否可以计算AWS s3上文件的行数 而无需将其下载到本地计算机 取决于你所说的下载是什么意思 S3 中没有远程处理 您无法上传将在 S3 服务中执行的代码 可能的替代方案 如果问题是文件太大而无法存储在内存或本地磁盘中
  • 如何将一个值的所有权从 Rust 转移到 C 代码?

    我正在尝试使用 FFI 编写一些 Rust 代码 其中涉及 C 获取结构的所有权 fn some function let c SomeStruct new unsafe c function mut c I want c function
  • Spring Security 如何在跨 Web 应用程序请求的线程中管理 SecurityContext?

    在 SpringSecurity 中 它有一个类名 SecurityContextHolder 及其规范 将给定的 SecurityContext 与当前执行线程关联 对于Web应用程序 每当请求到达服务器时 Spring也会重新加载并在S
  • 对部分文本使用自定义字体

    Typeface robotoBold Typeface createFromAsset activity getAssets fonts Roboto Bold ttf Typeface robotoLight Typeface crea
  • 如何将 HTC android 手机连接到电脑作为调试设备

    我想将 HTC Desire 连接到电脑 仅作为调试设备 每次我插入数据线时 它都会在电脑上搜索 HTC Sync 软件 需要很长时间 直到手机上出现一条消息 例如 未找到 HTC Sync 请安装 之后手机就可以在eclipse中进行调试
  • 仅使用 proc 获取本地网络接口地址?

    如何仅使用以下命令获取所有网络接口的 IPv4 地址proc http linux die net man 5 proc 经过一番广泛的调查后 我发现了以下内容 ifconfig利用SIOCGIFADDR 这需要打开套接字并预先了解所有接口
  • 使用 OpenCV 从小图像中提取点描述符

    我正在尝试提取不同的点描述符 SIFT SURF ORB BRIEF 来构建视觉词袋 问题似乎是我使用的图像非常小 12x60px 使用密集提取器 我可以获得一些关键点 但是在提取描述符时 没有提取任何数据 这是代码 vector