[请益]如何把约三千张的照片存成影片

楼主: ecogod (雪翎)   2017-05-25 10:22:18
大家好
我想使用Matlab把2880张png照片(每张约500kb)存成影片。
但是程式码写完之后,跑了平行处理,还是会把服务器的内存吃光光
貌似是暂存在cell中吃的内存太大,导致我还没汇入完所有照片就掰了
想请大家帮我看看程式码如何改进比较好,谢谢
作者: YoursEver (猪是妳)   2017-05-25 11:05:00
google: appending image frames to existing avi file你的图档都是2048*2048左右的color image?若是灰阶那就一样大, 4096*3072*1 = 2048*2048*3我不知道你要转成影片的目的是什么,如果只是要连续播放写个小function连播static image就好. 如果只是单纯要变成单一一个video sequence,那么拿其他软件拼凑这2800张也行.没必要要求用matlab来处理. 毕竟读档之后,存在内存里面的是影像的raw data,故需2800*4000*3000byte若坚持用matlab,请试gpuarray,确认能否交给显卡处理.
作者: sunev (Veritas)   2017-05-25 18:19:00
若无暂停,快倒转需求可考虑gif格式
作者: YoursEver (猪是妳)   2017-05-25 23:37:00
如果存成gif 89a,假设压缩率相同,那么一次要读一个2GB的图档,也是件容易让人头皮发麻的事. XD不如存成multiple page的TIFF; TIFF的压缩率比gif89a好只是TIFF format要自己按next page... =_=;
作者: sunev (Veritas)   2017-05-25 23:49:00
不然就不要强求lossless,档案可以小很多
作者: YoursEver (猪是妳)   2017-05-26 02:47:00
所以要原po说明一下需求是什么了,单张影像的大小比4kUHDTV的一张frame还大... orz但是,站在压缩率的立场,拿LZW-TIFF或是motion jpeg都不如直接压成video sequence; 因此,或许比较简单的做法是用matlab的videowriter先写成数个video,然后再拿其他的软件把这些短video合并成一个长video.
楼主: ecogod (雪翎)   2017-06-05 17:02:00
后来我解决的矩阵的问题,谢谢大家
作者: YoursEver (猪是妳)   2017-06-06 10:22:00
所以是怎么解决的呢?

Links booklink

Contact Us: admin [ a t ] ucptt.com