我正在使用MATLAB中的实时测试软件。在用户输入上,我想从50-200个高分辨率图像(~25 MB)中提取一个(或几个相邻)像素的值。
我的问题是总图像集要大(〜2000个图像)存储在RAM中,因此我需要在每次用户输入后从磁盘读取每个50-200个图像,这当然是慢!
所以我考虑将图像分割成子图像(~100x100像素)并分别保存。这样可以使图像读取过程足够快。
这种方法我应该注意哪些问题?例如,我读过有关复制许多小文件时遇到问题的人,这会影响我,使图像读取速度变慢吗?
答案 0 :(得分:0)
rahnema1是对的 - imread(...,'PixelRegion')将紧固读取操作。如果它还不够,即使您的文件没有碎片,也许是时候考虑一些数据库了? 磁盘操作始终是瓶颈。首先,我们切换到磁盘缓存,然后是分布式存储,然后是RAID,经过一段时间后,我们完成了内存数据库。您应该选择合理的访问速度。