vtk有什么内存优化方案或办法?
vtk吧
全部回复
仅看楼主
level 1
GarrisonHao 楼主
使用vtk三位重建了一个CT头骨的头像,发现内存占用已经超过1G了,实在有点太大了,难以想象再重建一个会不会挂掉。想问下vtk对内存的占用就是这样的吗?还是我的代码有问题?有什么优化方案吗?
我的代码都是使用vtkSmartPointer创建的,没有管理删除,是不是渲染完成后有些东西可以选择delete,比如source?
vtk对象是使用vtkSmartPointer好呢还是使用指针自己管理好呢?
2016年12月02日 01点12分 1
level 1
GarrisonHao 楼主
是不是要加filter?我对source的处理没有添加filter
2016年12月02日 01点12分 2
level 2
你是表面重建还是体重建?
你原始数据的层厚很薄?
2016年12月02日 01点12分 3
面绘制,层厚好像是3mm
2016年12月02日 02点12分
level 12
1G很正常,你自己手动delete吧
VTK的内存优化是众望所归的事情[哈哈],也是被好多人斜眼看的诟病,
我个人觉得不是什么问题,
如果有时间,我想我给大家一个内存优化方案
2016年12月02日 02点12分 5
期待吧主开个帖子。
2016年12月02日 02点12分
手动delete的话,渲染结束后,数据是不是可以删除了?比如source、mapper
2016年12月02日 02点12分
@GarrisonHao 亲自试一下,你能行的[滑稽]
2016年12月02日 03点12分
@GarrisonHao 我也是装B,其实还是要官方组来更新啦
2016年12月02日 05点12分
level 1
GarrisonHao 楼主
1G正常的话,渲染两三次不久挂掉了,配置不行的话
2016年12月02日 03点12分 6
你电脑配置难道和我的一样老?[哈哈]
2016年12月02日 05点12分
[哈哈]
2016年12月02日 05点12分
@rabbitbride 一个4000万点的数据集,用LODActor渲染出来居然要用接近5G的内存,再怎么高配置也烧不起这玩意吧?4000万点的三维坐标float类型也就7、800M数据的样子
2017年04月25日 11点04分
level 7
说句实话吧,vtk占据内存大,是其引用计数的问题,即使用vtk smartpointer,也会泄漏,建议调试一下,看一下引用计数工作原理,我的感觉是,这货就像汇编语言中的堆栈平衡,时刻要注意平衡计数,一般vc运行库报内存泄漏,都是由于引用计数不正确而无法及时释放内存
2017年06月14日 14点06分 7
1