Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2009-03-05, 07:09   #1
Jael
普通会员
 
注册日期: 2009-03-05
年龄: 37
帖子: 34
声望力: 17
Jael 正向着好的方向发展
默认 [求助]怎样取8*8块?

读出一幅图像数据,想把这个256*256大小的图,分成32*32个8*8的块,用什么语句实现自动取8*8的块呢?应该怎样写循环呢?
Jael 当前离线   回复时引用此帖
旧 2009-03-05, 09:40   #2
silas_xue
高级会员
 
注册日期: 2008-11-01
年龄: 39
帖子: 406
声望力: 26
silas_xue 是一个将要出名的人
默认 回复: [求助]怎样取8*8块?

以下是pseudo code,个人看法,仅供参考.
assume A(i,j) is the image, B(m,n) is the block for memory saving, then
for i from 1 to 32
for j from 1 to 32
for m from 1 to 8
for n from 1 to 8
B(m,n) = A(m+(i-1)*32,n+(j-1)*32)
....(any further process you want)
end
end
end
end
当然 要考虑先按行还是,先按列,做compression的话,取法有很多种,做tracking或者recognition基本这样一行一行取应该没有什么问题;另外,由于有四层循环,要看你自己进一步的处理的复杂度,综合考虑总的运行效率;还有其它的写法,主要看array的indexing methods;提醒:这样得到的B是一个2-D的,不知道你的意图,所以,一旦重新给B赋值,B原先的值就被覆盖了。

Thx for reading.

(缩进出了写问题)
silas_xue 当前离线   回复时引用此帖
回复

主题工具
显示模式

发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码


相似的主题
主题 主题作者 版面 回复 最后发表
为什么这个程序在7.0中没有频谱? 梦龙 MATLAB论坛 2 2009-03-29 16:07
我想问下matlab a和b版本的问题 b181 MATLAB论坛 2 2009-03-24 15:29
请大家帮我实现这样一个等待的功能 jerome_and_angela MATLAB论坛 1 2009-03-20 09:26
[求助]matlab gui编译 hit-wang MATLAB论坛 0 2009-02-16 14:28
opc toolbox 肥肥雪 MATLAB论坛 0 2008-10-06 22:52


所有时间均为北京时间。现在的时间是 01:08


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.