不使用互联网的图像识别

问题描述 投票:3回答:4

我想从相机扫描图像并将其与预装图像进行比较。我想识别扫描图像。

示例:我将此图像保存在我的应用程序中,当我扫描这样的图像时,我想要识别它。

http://icons.iconarchive.com/icons/chrisbanks2/cold-fusion-hd/128/ace-of-spades-icon.png

在识别过程中是否有任何库或SDK可用于实现上述功能而不使用Internet?

我曾尝试使用,但我没有获得有希望的结果和表现。我也不介意使用任何付费SDK。

注意:我想在用户没有internet时实现它。一切都应该在离线模式下工作。

android augmented-reality image-recognition wikitude layar
4个回答
3
投票

[编辑:Moodstocks一直是谷歌的acquired,不再提供这些服务]

[免责声明:我为Moodstocks工作]

您应该看看Moodstocks SDK:它提供了直接在设备上执行图像识别的功能。

在实践中,您的部分工作将包括:

  • 上传您打算在Moodstocks API上识别的图像,
  • 将Moodstocks SDK集成到您的Android应用程序中。

从用户的角度来看:他们最多需要连接到互联网[1]。他们第一次打开应用程序时,Moodstocks SDK将负责将我们服务器识别所需的图像签名直接同步到设备上。完成后,Moodstocks SDK将能够立即识别任何图像,完全脱机!

您可以参考我们的documentation了解更多详情。


[1]:如果您需要完全脱机工作,图像签名可以直接捆绑在应用程序中。这消除了初始互联网连接的需要!


3
投票

另一种解决方案是Vuforia。它们提供了一个可以集成到应用程序中的识别库。唯一的缺点是您必须上传您想要在其网站上识别的图像,以获得2个文件(XML和DAT - 存储图像描述符的位置)。库使用DAT文件与您提供的图像(例如相机帧)进行比较,XML文件包含您在其网站上传的每个目标图像的名称和大小;当识别图像时,库返回已存储在XML文件中的图像的名称。因此,一旦你有文件,一切都在本地执行(在设备=离线)。我已经测试过该库,正如您可能已经听说的那样,该解决方案非常快速且稳健。如果要跟踪识别的目标图像,它们还会提供变换矩阵。


0
投票

您还可以使用Wikitude SDK通过使用Wikitude目标管理器工具创建目标集合并将其下载为WTC文件来执行此操作。

由于它们的复杂性低,你可能会遇到一些问题来识别这个图像。我认为你应该测试它以消除任何疑虑。


0
投票

我几年前创建的想法,在一个小型Linux上我从相机扫描我的图像并将其转换为ImageMagic for Linux的信息。该信息是文本文件。然后我会为下一张图片做同样的事情,几秒后拍摄。调查两张图像中的信息,我发现当新图像发生变化时,几乎没有参数发生根本变化。例如,如果一个人突然进入房间。这会触发我的软件将这些图像保存更长时间。这是一种运动检测。那些日子ML并不那么受欢迎。我的动机是为了节省相机历史的空间。

看到这个命令:

识别-verbose image.jpg

© www.soinside.com 2019 - 2024. All rights reserved.