Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/150.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 将图像写入内存的优化_C++_Opencv_Image Processing_Nvidia - Fatal编程技术网

C++ 将图像写入内存的优化

C++ 将图像写入内存的优化,c++,opencv,image-processing,nvidia,C++,Opencv,Image Processing,Nvidia,我目前正在进行一个项目,其中一部分任务是尽快将图像保存到磁盘。我正在使用Nvidia Jetson TX1板和SSD驱动器,同时相机通过USB3连接。对于图像处理,我用的是用C++编写的OpenCV。每个图像大约有1.5Mb,到目前为止,我已经使用openCV的方法imwrite来完成这项任务。这导致录制时的速度约为8Fps。我想知道如何改进这些结果。使用videoWriter类比imwrite更快?也许创建一个图像队列和一个并行线程来进行写入?还有其他方法吗 谢谢, Yuval您正在使用什么操

我目前正在进行一个项目,其中一部分任务是尽快将图像保存到磁盘。我正在使用Nvidia Jetson TX1板和SSD驱动器,同时相机通过USB3连接。对于图像处理,我用的是用C++编写的OpenCV。每个图像大约有1.5Mb,到目前为止,我已经使用openCV的方法imwrite来完成这项任务。这导致录制时的速度约为8Fps。我想知道如何改进这些结果。使用videoWriter类比imwrite更快?也许创建一个图像队列和一个并行线程来进行写入?还有其他方法吗

谢谢,
Yuval

您正在使用什么操作系统?SSD是如何连接的?你的图像真的是1.5Mbit吗?或者实际上是1.5兆字节?你需要记录多长时间?你需要写什么格式-JPEG,PNG?你想保存未压缩的BMP文件吗?压缩jpeg?无损png?您是否在获取线程上进行处理?在不进行处理或保存的情况下,可以实现多大的帧速率?那么仅仅是获取和处理呢?我正在使用Ubuntu16.04和通过USB3连接的1T GB SSD。我需要保存原始图像(马赛克-1088x2048-1通道,无符号字符)。因为这是原始数据,所以我不能使用压缩,到目前为止,我已经在openCV“imwrite”中使用了无损PNG。对于另一个项目,我尝试将图像保存到二进制文件中,但与imwrite相比,几乎没有任何速度提升。录制时间可以限制在一定程度上(我知道AVI限制在2GB,因此当达到此限制时,我可以创建一个新文件)