2012-03-27 51 views
2

我的项目计算机视觉应用(+网络接口)是应该实现以下计算机视觉Java应用程序:人脸检测和识别来自数据库

  1. 一个网络接口,通过它的形式进入+图像(例如一个学生数据)将被存储到一个数据库(Mysql)&图像到我的Java应用程序通用的目录中。
  2. 然后数据&图像可以从我的Java Gui应用程序检索,我可以通过OpenCV执行以下图像处理操作。
  3. 实际上,我想在检索到的图像上运行人脸检测并丢弃错误的条目(没有合适的人脸)。
  4. 此外,应用程序用户/管理员可以基于文本搜索(通过Id)或通过使用人脸识别的另一个参考图像来搜索图像。

我很熟悉Java,但问题是,我需要就如何将其安排在逐步的方式(链接赞赏).OpenCv,PHP和MySQL真的messy.I知道这样OpenCV的东西指导在Java内部是真正的开销,但我真的想要做到这一点。但如果有任何其他建议,请引导我。所以任何形式的帮助对我来说都是一线希望。

  • 谢谢。
+0

避免所有开销。您可以在稍后的功能工作后再添加它们。 – Diego 2012-03-27 21:00:42

回答

2

这听起来像一个不错的应用程序。以下是我建议你:

1-网络接口,通过它的形式进入+图像(例如一个学生数据)将被存储到数据库(MySQL的)&图像转换成普通目录我的Java应用。

您将可以使用Php和Mysql轻松创建此类应用程序,只需在图像上传和php中查找一些教程即可。

2-然后&图像可以从我的Java GUI应用程序中检索和我可以通过OpenCV的进行图像处理的以下操作的数据。

我会推荐你​​使用JavaCV。它是OpenCV的一个包装,从我做过的一些测试中看起来效果很好。您可以通过本地桥获得Java的灵活性和C++的性能。

3-其实,我想运行在检索到的图像的人脸检测和丢弃虚假条目(没有适当的面)。

可以很容易适应OpenCV的面部检测码以JavaCV:http://opencv.willowgarage.com/wiki/FaceDetection

4-而且应用程序用户/管理员可以基于文本搜索(通过Id)的搜索的图像或由另一参考图像使用人脸识别。

通过一些JPA甚至JDBC连接很容易实现通过id进行搜索。现在类似的脸部搜索很棘手。我会告诉你这个链接http://www.shervinemami.info/faceRecognition.html关于OpenCV中的人脸识别。

我希望有帮助。它如何能够走得太远,因为我虽然可以建议

最好的问候, 丹尼尔

+0

谢谢你Daniel。 – Kush 2012-03-28 15:42:38

+0

嗨Kush,欢迎您!如果你愿意,你可以选择这个作为接受的答案吗?项目祝你好运! – dannyxyz22 2012-03-30 01:58:57

1

这里将需要采取可能不在这里解决问题的关心。

  • 您将创建一个web服务,该服务将直接访问以上传图像。可以使用相同的服务从Java应用程序下载图像。因此,请确保您已经创建了一个定义明确的服务来处理这两种不同的操作,并且完全暴露于外部世界。 MySQL将成为后端数据库,负责存储学生信息和/或图片本身。你可以在没有MySQL的情况下编写一个服务,并让服务在本地存储图像和/或学生信息(在服务器端),随后你可以开发代码来集成MySQL。 A good and simple link to MySQL and Php

  • JavaCV将是您的Java应用程序的候选人。您将轻松利用OpenCV的强大功能。开发应用程序并根据您的服务对其进行测试。尝试从服务中首先下载一些图像。如果可行,继续进行图像处理部分。

  • 确保您不会丢失人脸检测和识别。这是两件不同的事情。从OpenCV wiki FaceDetectionFaceRecognition

  • 如果通过第一步并理解查询数据,则通过ID /文本字符串进行搜索将变得微不足道。通过图像搜索,我会存储人脸识别神器(矢量,尺寸,特征值等..什么)。一旦存储在您的服务器上,您的应用程序将发送一个输入图像工件到您的服务器,在那里完成匹配并返回结果。

**

总结

**

  • 连接您的Web服务和MySQL通过连接器,如JDBC。这个非常重要。没有SQL连接,意味着没有数据库和无用的服务。
  • 照顾学生信息上传/下载的服务。
  • 图像处理。脸部伪影计算必须是常见的。相同的代码可以在服务器和客户端运行(有道理,不是吗?)。
  • 通过字符串或图像查询搜索。两种不同类型的搜索。客户端必须告诉服务器应该做什么类型的搜索。