当前位置: 首页 > 面试题库 >

用Java实现SIFT

淳于博
2023-03-14
问题内容

因此,我正在开发一个简单的Java应用程序,该应用程序允许用户输入图像作为查询,并使该应用程序将其与图像数据库进行比较(基本上只不过是不同图像的目录)。我基本上是在研究几种图像相似性测量技术,以找出哪些适合比较汽车图片。

我一直在做一些阅读,除了FFT /
SSIM之外,我还阅读了SIFT算法可以产生非常好的结果。但是,作为只有大约一年的Java基本经验的人,老实说,我不确定我是否有足够的能力来实现它。地狱,由于算法的复杂性,我仍然难以理解算法的核心概念。

所以我想问那些比我经验更多的人。为此目的首先实施SIFT甚至可行吗?我可以单独使用JDK吗?(即使可能,也不要其他插件)吗?我将如何去做?

提前致谢


问题答案:

扩展了ImageJ的斐济图像处理软件包具有一个Wiki网站,其中包含有关其SIFT插件的信息:

http://pacific.mpi-
cbg.de/wiki/index.php/Feature_Extraction

在mpicbg.git存储库中提供了Java中SIFT实现的源代码:

http://pacific.mpi-cbg.de/cgi-
bin/gitweb.cgi?p=mpicbg.git

下载斐济时,包含SIFT特征提取和特征匹配的库为mpicbg.jar,位于Fiji.app/jars/文件夹下。

斐济可以从这里下载:

http://pacific.mpi-cbg.de/wiki/index.php/下载

SIFT插件的用法示例是电子显微镜堆栈中连续切片的配准。看到这个页面:

http://pacific.mpi-
cbg.de/wiki/index.php/Register_Virtual_Stack_Slices

源代码将教您如何使用该库进行SIFT特征提取和从匹配特征集计算转换模型:

http://pacific.mpi-cbg.de/cgi-bin/gitweb.cgi?p=fiji.git;a=blob;f=src-
plugins/register_virtual_stack_slices/register_virtual_stack/Register_Virtual_Stack_MT.java;hb=HEAD



 类似资料:
  • 问题内容: 我尝试用Java的编程思想实现OAuth,但失败了。我不知道为什么,但是我的代码不起作用。每次运行程序时,都会引发IOException,其原因为“ java.io.IOException:服务器返回的HTTP响应代码:401”(401表示未授权)。我仔细查看了文档,但是我真的不明白为什么它不起作用。我想使用的OAuth提供程序是twitter,我也在其中注册了我的应用程序。 在此先感

  • 这是实现上述关系的正确方法吗?我需要解释一下。谢谢。

  • 问题内容: 这个问题与我有关Java中现有协程实现的问题有关。如我所怀疑的,如果事实证明Java中尚没有完整的协程实现,那么实现这些协程将需要什么? 正如我在该问题中所说的,我了解以下内容: 您可以将“协程”实现为后台的线程/线程池。 您可以在后台使用JVM字节码来完成棘手的事情,以使协程成为可能。 所谓的“达芬奇机” JVM实现具有使协程在无需字节码操作的情况下就可以实现的原语。 也有多种基于J

  • 我是Qpid的新手,我正在尝试设置环境。在阅读了大量文档之后,我设法下载了Apache Qpid并在localhost:8080中运行它 我还安装了maven、cmake。现在我正在尝试在Eclipse中启动一个新的maven项目以发送一条简单的消息。我根本不熟悉API接口和概念。我必须在我的项目解决方案中包含任何类型的jar吗?或者我如何使用服务器? 我也找到了这个https://github.

  • 用java实现以下场景,有100条商品,每个商品的价格0到1000元不等 商品数据: 例如200元 加价之后就是240元 利润是40元 首先把0到300元的商品的加价30%,301到500的加价20%,501到1000元商品的加价10%, 然后0到300元的商品订单有300条,301-500的商品订单有400条,501-1000的商品订单有300条, 最后计算他的总利润有多少,最好写出算法

  • 问题内容: hashCode()如何实现? 我的假设是它将对象存储位置用作运行哈希函数的初始数字(种子)。然而,这种情况并非如此。 我还研究了Hash:它在内部如何工作?但它不能回答我的问题。 是的,我可以下载SDK,但是在执行此操作并查看代码之前,也许其他人已经知道了。 谢谢 :) 编辑: 我知道它应该被覆盖等等,所以请尝试保持话题:) 问题答案: 当然,它是特定于实现的,但是通常,对象的哈希码