使用java将网络摄像头流中的图像直接保存到Web服务器

时间:2010-01-03 19:22:18

标签: java

是否可以将图像直接从我系统的网络摄像头保存到Java中的Web服务器?也许它可以直接传递到URL地址,并且可以是服务器上的GET或其他任何内容。

2 个答案:

答案 0 :(得分:2)

取决于您的网络摄像头/网络摄像头软件。很多网络摄像头都带有将图像存储在目录中的软件。配置软件和Web服务器的方式可以从Web服务器访问图像或流。就这样。

通过这种方式,您可以轻松地在网页上查看新的网络摄像头图像并进行显示。

如果您的网络服务器是远程的,请通过安装一个小型服务器或java工具来执行相同的操作,该工具会检查配置目录中的新映像。如果找到了一些,请写一些代码将这些图像作为上传发布到您的远程Web服务器。

希望有所帮助。

答案 1 :(得分:1)

您可以使用Java Media Framework (JMF)使用Java从网络摄像头捕获图像。 JMF使您能够将当前镜头捕获到java.awt.Image对象(Java SE的内置Java 2D API的一部分)中。最后,您可以使用Java 2D API将每种JPEG格式下捕获的镜头写入OutputStream。这可以是网络服务器URLConnection#getOutputStream()URL

你真的不应该使用GET。这样,您就不得不将编码为查询字符串的图像数据发送,而查询字符串的长度也有限制。你不想依赖它。更好地使用POST。您需要urlConnection.setDoOutput(true)来触发POST。或者,您可以使用Apache Commons HttpClient来根据标准将其作为multipart / form-data请求发送。

假设您在服务器端使用Servlet,则只需相应地实施doPost()方法即可从HttpServletRequest#getInputStream()中提取图像。或者,如果您使用HttpClient发送多部分/表单数据请求,则可以使用Apache Commons FileUpload进行此操作。

祝你好运。