一次摄像头的任务 - 5

去超时买完菜,回来后想再做一次测试,
没想到,成了~
这里写图片描述

这次,store还是部署在docker里面,不过有个文件夹做了映射,让配置啥的落到了host主机上;远端还是使用ubuntu的虚拟机。

[root@localhost ~]# cat docker.sh 
#!/bin/bash

docker stop test
docker rm test
docker run --name test -p 5901:5901 -p 9080:9080 -p 9081:9081 -v /root/ve:/usr/local/cvr/ve 6fa8847d5cb2
[root@localhost ~]# 

另外,速度方面,两个开起来大概7Mbps带宽消耗,单个通道大概在3Mbps左右,由于是远程跨internet,所以通信质量不大有保障,变化有点起伏。

在Java中调用摄像头进行拍照并设置5一次的间隔,可以通过使用相关的库和API来实现。 首先,你可以使用JavaCV这个开源的计算机视觉库来访问摄像头。它提供了一系列用于视频捕获和处理的类和方法。 在JavaCV中,可以通过调用opencv_core库中的CvCapture类的`cvCreateCameraCapture`方法来创建一个摄像头捕捉对象。然后,使用`cvQueryFrame`方法来获取当前帧,并保存为图像文件。 要设置5秒的拍照间隔,你可以使用Java的计时器类来实现。可以使用`java.util.Timer`类和`java.util.TimerTask`类来创建一个简单的定时任务,该任务每隔5秒就调用一次摄像头拍照的方法。 这是一个简单的示例代码: ``` import org.bytedeco.javacv.FrameGrabber; import org.bytedeco.javacv.OpenCVFrameGrabber; import java.util.Timer; import java.util.TimerTask; public class CameraCapture { private static final String SAVE_PATH = "path_to_save_images"; private static final int INTERVAL = 5000; // 5 seconds public static void main(String[] args) { Timer timer = new Timer(); timer.schedule(new CaptureTask(), 0, INTERVAL); } static class CaptureTask extends TimerTask { @Override public void run() { try { FrameGrabber grabber = new OpenCVFrameGrabber(0); // Access the default camera grabber.start(); // Capture a frame // You can save the frame as an image using ImageIO or any other image processing library // For simplicity, let's assume the frame is saved as "image.jpg" grabber.trigger(); grabber.stop(); } catch (Exception e) { e.printStackTrace(); } } } } ``` 上述代码创建了一个定时任务`CaptureTask`,该任务在每个5秒的时间间隔中调用摄像头拍照的方法。在该方法中,我们使用JavaCV库创建一个`FrameGrabber`对象,并从默认摄像头获取当前帧,并保存为图像文件。 请确保你已在项目中添加了JavaCV库的依赖,并根据实际需求修改代码中相应的路径和摄像头索引。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值