大家帮我看看如何提高程序的效率!

gisbirdsky 2006-11-30 09:03:43
问题是这样的,我现在要用VC来实现影像金字塔,采用倍率法,即用2的倍数来层层抽取,待建立金字塔图像大小为16290*14009象素,真彩色RGB,GeoTiff格式图像,我用256*256象素块对图像进行分块,得到64*55块,做为影像金字塔的第0层,之后在第0层基础上用第0层2*2大小进行抽取做为第1层影像金字塔相应点的象素值,就是说第0层上11,12,21,22(第1位代表行数,第2位代表列数)4个象素的平均值做为第1层11个象素的象素值,这样我就需要循环64*55个象素块,每个象素块从第0层构建到第9层,即第9层金字塔大小为64*55象素大小,但这样创建完成的金字塔耗时太长了,大约需要10分钟,无法忍受,并且图像不经过处理就显示的话,效果不好,因为没有做加权,象素点之间的过渡不平滑。
小弟请教兄弟姐妹们怎么能帮我提高整个程序的效率,因为每次机器只处理大概1/4M,循环次数太多,所以时间有些长(我估计的原因)。或是大家有谁知道好的影像金字塔构建的方法请赐教,小弟不胜感谢!
...全文
287 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
buggycode 2007-01-27
  • 打赏
  • 举报
回复
lz估计应该多少时间?我试了一下应该在10几秒以内。

lz是不是有足够的内存?如果没有先试试如果有足够内存的时间是多少。
还有是不是有图像层,要不要考虑透明度的合成(就是11,12,21,22的合成是不是要考虑透明度加权)

LZ如果再详细一点可能可以给你看看。

woodylee1974 2007-01-25
  • 打赏
  • 举报
回复
我的mail为woodyli@126.com
woodylee1974 2007-01-25
  • 打赏
  • 举报
回复
如不介意, 可发送部分程序, 让我来帮你优化. 我是做嵌入式开发, 不知能不能帮上你的忙
gisbirdsky 2006-12-18
  • 打赏
  • 举报
回复
不好意思,我前段时间出差,刚回来!
HUNTON(追求完美)
呵呵,是这样的,用倍率法就是要用构建好的金字塔,参与循环,在该层的基础上进行抽取,构建下一层金字塔!
housisong(HouSisong)
我不知道你说的是什么意思?请说的详细一点好吗?谢谢!
housisong 2006-12-11
  • 打赏
  • 举报
回复
16290*14009/1024/1024*4=870M 数据,因为内存是瓶颈,所以估算一下完成时间应该在几秒钟内完成
housisong 2006-12-11
  • 打赏
  • 举报
回复
你的代码写得太慢了:)
HUNTON 2006-12-01
  • 打赏
  • 举报
回复
该不会金字塔内部的也要参与循环吧。

4,445

社区成员

发帖
与我相关
我的任务
社区描述
图形图像/机器视觉
社区管理员
  • 机器视觉
  • 迪菲赫尔曼
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧