`
fanguanghui
  • 浏览: 97005 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
最近访客 更多访客>>
社区版块
存档分类
最新评论

小玩OpenSURF图像识别

 
阅读更多

本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处!

最近工作有点闲,有时间就玩点有意思的东西------SURF 图像识别(WIKI地址),懂了图像识别,真的有很多东西可以玩。。。。。先看看本文实现的效果:

左图不是相同的指纹,右图为相同的指纹

ShapeContext算法中典型的实验图片。。。借来用用而已。。。

本文修改后的代码可以到这里:http://download.csdn.net/source/2515577下载,本文的代码改自GoogleCode的OpenSource。

网上已经有很多封装好的SURF算法,这里我挑OpenSURF.OpenSURF在GoogleCode的地址http://code.google.com/p/opensurf1/,在【Source】 Tab里有C++版和C#版,C++版依赖Opencv,C#版不依赖OpenCV,我选择了C#版裸奔SURF。。。。在使用OpenSURF的C#版发现两个问题:

1。没有Match模块,所以这个就得自己写了;
2。OpenSURF for C#竟然大量使用GetPixel()...... -. -||| ......做过图像处理的兄弟都应该知道GetPixel()的效率...........这个也得自己改改。

解决问题1:C++版包含了Match模块,所以我就参考C++版的,写成C#。。。。。以下是我自己添加的Match代码:

解决问题2:参考网上的代码,把IntegralImage.cs的FromImage(Bitmap image)函数改成:

OK,解决了以上两个问题,OpenSURF的C#版功能算是跟C++差不多了。。。。当然,C#跟C++的速度还有点差距的。。。。接下来就说说如何提高识别率,有两个关键的系数要微调的:

1。FastHessian.getIpoints(0.0001f, 5, 2, iimg);的第一个参数决定了特征点的数量,越小则特征点越多;

2。在Utils.cs里面的if (d1 / d2 < 0.77) //越小匹配的点越少,但误判断点也越少;越大匹配的点越多,但误判断点也越多。

以上两个要微调的函数就要具体情况具体微调了。。。。

分享到:
评论

相关推荐

    opensurf算法

    OpenSURF广泛应用于图像识别、物体检测、场景理解、视频稳定等领域,尤其是在需要实时处理的场合,如无人机导航、自动驾驶和监控系统。 综上所述,OpenSURF算法在保持与SIFT相似的性能基础上,通过优化计算流程和...

    OpenSURF.zip_OpenSURF_SURF descriptor_descriptor_surf_zip

    - **特征检测**:使用OpenSURF库检测图像中的关键点。 - **特征描述**:计算每个关键点的描述子。 - **匹配**:将不同图像的描述子进行比较,找出匹配的关键点对。 - **后处理**:通过几何验证和剔除错误匹配,提高...

    OpenSURF实现

    OpenSURF在原版SURF的基础上进行了优化,提高了算法的执行速度,使其更适合实时应用,如视频分析、场景识别和图像拼接等。在VS2008环境下开发的OpenSURFcpp项目,提供了一个实现这一算法的C++库,便于开发者集成到...

    OpenSURF_version

    在实际应用中,OpenSURF常用于图像识别、物体检测、场景理解、图像拼接等多个领域。开发者可以通过学习和理解OpenSURF的代码,结合提供的示例,进一步改进或扩展其功能,以满足特定需求。例如,可以尝试调整参数以...

    OpenSURF_version1c.zip_OpenSURF

    OpenSURF算法在许多领域都有应用,如图像识别、物体识别、图像拼接、增强现实等。它的开源性质促进了计算机视觉技术的发展,使得研究者和开发者能够基于此进行二次开发,推动了相关领域的创新。

    matlab算法源码surf算法OpenSURF

    SURF算法被广泛应用于物体识别、图像配准、三维重建等计算机视觉任务中。 首先,SURF算法的关键在于其提取特征点的速度快于SIFT算法,并且具有很高的重复性和良好的视角、尺度不变性。它通过使用积分图来加速特征点...

    改进OpenSURF的C#版

    OpenSURF,全称为Speeded Up Robust Features,是一种计算机视觉中的特征检测算法,它在图像处理领域广泛应用,尤其在图像匹配、物体识别和视频分析等任务中扮演着重要角色。OpenSURF是对原版SURF算法的优化实现,...

    OpenSURF_version1c

    OpenSURF_version1c是一个基于MATLAB实现的图像处理项目,专注于SIFT(尺度不变特征变换)算法的优化,以提高特征提取和匹配的效率。SIFT是David G. Lowe在1999年提出的,它是一种强大的图像描述符,能够有效识别...

    224.MATLAB编程 OpenSURF_version1c.zip

    该算法的核心在于快速地检测图像中的关键点,并对这些关键点进行稳定描述,使得它们在不同条件下的图像变换下仍能被准确识别。 OpenSurf.m文件很可能是实现OpenSURF算法的主要代码文件,可能包含了关键点检测、特征...

    移动设备上使用opencv 1.10做图像识别的举例说明

    在移动设备上使用OpenCV 1.10进行图像识别是一项技术性强且具有广泛应用前景的任务。OpenCV(开源计算机视觉库)自1999年由Intel创建以来,已经成为计算机视觉领域的重要工具,由Willow Garage继续支持并发展。...

    图像匹配算法SURF算法的matlab实现

    在计算机视觉领域,图像匹配是一项基础且关键的任务,广泛应用于目标识别、图像拼接、3D重建等多个场景。SURF(Speeded Up Robust Features)算法是SIFT(Scale-Invariant Feature Transform)的一种高效改进版本,...

    SURF Matlab代码

    总的来说,SURF算法在图像处理领域有着广泛的应用,包括但不限于图像识别、物体追踪、三维重建和图像拼接等。通过理解和掌握SURF算法,开发者可以利用其优势来提升计算机视觉系统的性能。而`OpenSURF_version1c`提供...

    SURF算法基于自然图像的源代码

    2. **目标检测与识别**:特征点匹配可用于物体识别,如人脸识别、车辆检测等。 3. **视频分析**:在视频序列中,跟踪同一物体的SURF特征,可以进行运动估计和跟踪。 4. **增强现实**:通过匹配真实世界图像的SURF...

    基于SURF特征点的图像配准算法

    "OpenSURF_version1c"可能是指一个开源的SURF实现版本,可能包含C语言或C++编写的代码库,用于在非MATLAB环境中实现SURF特征点检测和图像配准。这个库可能提供了更底层的控制和更高的性能,适合于需要高效处理大量...

    MATLAB源代码MATLAB源码大集合220MB上千个源码文件.zip

    MATLAB源代码MATLAB源码大集合220MB上千个源码文件: ...文字图像识别.rar 牛顿Newton插值 MATLAB源程序代码.rar 现代通信系统(MATLAB版) 源码.zip 用MATLAB对两幅图片进行图像匹配.rar 电滤波效果查看器GUI设计--浙江

    毕业设计MATLAB_图像特征点检测、匹配.zip

    图像特征点检测是图像处理的重要组成部分,它可以帮助我们识别和定位图像中的关键信息点,如角点、边缘或特定形状。特征点匹配则是将不同图像中的对应特征点进行关联,用于图像拼接、目标识别、三维重建等应用。 ...

    MATLAB编程源代码文件大全集合【约1000+】

    MATLAB编程源代码文件大全集合【约1000+】 MATLAB源代码MATLAB源码大集合220MB上千个源码文件: ...文字图像识别.rar 牛顿Newton插值 MATLAB源程序代码.rar 现代通信系统(MATLAB版) 源码.zip 用MATLAB对两幅图片进行

    基于surf特征提取的图像配准算法的MATLAB仿真.zip

    综上所述,这个项目涵盖了图像处理和计算机视觉的基础知识,包括特征检测(SURF)、特征匹配、几何变换估计和图像配准,这些都是图像分析和识别领域的重要组成部分。通过MATLAB的仿真,开发者可以直观地理解这些概念...

    基于SIFT的图像特征值寻找改进SURF

    在图像处理领域,特征提取是关键步骤之一,它有助于识别和匹配图像中的特定元素。SIFT(尺度不变特征变换)算法和SURF(加速稳健特征)算法是两种广泛使用的特征提取方法。本项目主要探讨了如何在SIFT的基础上进行...

    SIFT\PCA-SIFT\SURF源码

    这些算法被广泛应用于图像识别、物体检测、图像匹配等多个场景。下面将详细阐述这三个算法以及它们的源码实现。 1. SIFT(尺度不变特征变换) SIFT由David Lowe在1999年提出,是一种具有尺度不变性和旋转不变性的...

Global site tag (gtag.js) - Google Analytics