如何快速平移图像?

hitzheng 2009-03-12 08:43:00
有一幅灰度图的数据矩阵,现在要将它向x,y方向平移(M,N)个像素,平移后补充的部分用0填充,数据存于原矩阵,要能尽可能地高效,应该怎么实现.
...全文
214 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Tinary3v0 2009-03-13
  • 打赏
  • 举报
回复
需要自己计算 然后填充BMP移动过后产生的空白位置。

也可以在内存中创建一个移动后大小的位图 然后把原图贴在移动后的位置 再用内存中创建的位图数据替换原来的矩阵数据。
zhao1zhong6 2009-03-12
  • 打赏
  • 举报
回复
一行一行的memcpy(),用0填充的部分用memset(),就只能这么快了.
如果行之间还是不连续,而且模式高于8位,RGB模式rgb(255,255,255)
可以改成rgb(0,255,255),rgb(1,255,255),rgb(2,255,255),rgb(3,255,255)
r位用来作标记,反正是灰度图像.
hitzheng 2009-03-12
  • 打赏
  • 举报
回复
可否说得具体点,要copy的内存不是连续的啊?
chiwa737 2009-03-12
  • 打赏
  • 举报
回复
计算好位置用memcpy何如

19,464

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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