如何在硬盘上多次保存文件而不损坏硬盘?

olhwl3o2  于 2021-07-06  发布在  Java
关注(0)|答案(0)|浏览(278)

这是个小问题。我在用 Java Process Builder 调用此命令 Darknet 框架。

./darknet detector test ./cfg/coco.data ./cfg/yolov4.cfg ./weights/yolov4.weights ./data/pictureOfMe.jpg -thresh 0.4

这个 pictureOfMe.jpg 将尽快更新并保存到硬盘。那么 darknet 文件将生成一个名为 predictions.jpg 我要读一读。 pictureOfMe.jpg ->写入磁盘。未读到 predictions.jpg ->写入磁盘。然后在读。
如果我把它保存到本地硬盘上,会对我的硬盘造成伤害吗?我能做得更好吗,比如在ram上运行java程序或者做其他事情?
我刚做了一个软件 Darknet 框架和 Vaadin 一起。这是一个web应用程序,用户可以监视一个房间或类似的东西,然后在对象出现时获得邮件响应。
问题:
有没有什么方法可以保存一张图片,它被保存并快速阅读了好几个小时,在内存中,这样我就不会伤害硬盘了。或者今天没关系?我听说硬盘驱动器限制了写作。
我应该在一张实时cd上运行这个吗?把整个操作系统加载到ram上?
我的代码很简单

// Snap
BufferedImage cameraImage = selectedWebcam.getImage(); // Take a snap
ByteArrayOutputStream byteImage = new ByteArrayOutputStream();
ImageIO.write(cameraImage, "png", byteImage);
byte[] streamBytes = byteImage.toByteArray();
// Classify
yoloDetection(streamBytes); // This save the file to the harddrive and then call Darknet

// Read the predictions.jpg file
StreamResource resource = new StreamResource("predictions.jpg", () -> {
try {
    return new FileInputStream(new File("Darknet/predictions.jpg"));
} catch (FileNotFoundException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
    return null;
});
ui.access(() -> {
    realTimeCameraImage.setSrc(resource); // Display the file
    enableDisableSelectAndButton();
});

如果你喜欢,试试这个软件 Darknet 约洛。https://github.com/danielmartensson/camera-reporter

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题