24小时热门版块排行榜    

查看: 1428  |  回复: 3
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

whq_nj

金虫 (小有名气)

[求助] matlaB图像边界问题,简化程序

tic
clear all
S=imread('lena.png');
S=double(S);
S=Normalized(S);
[p,q]=size(S);
average=zeros(p,q);
rme=zeros(p,q);
beta=zeros(p,q);
heta=zeros(p,q);
u=zeros(p,q);

for i0=2:1:p-1   %此处开始图像循环
    for i1=2:1:q-1
        V=[S(i0-1,i1-1) S(i0-1,i1) S(i0-1,i1+1);
                S(i0,i1-1) S(i0,i1) S(i0,i1+1);
                S(i0+1,i1-1) S(i0+1,i1) S(i0+1,i1+1)];
        average(i0,i1)=mean(V(: ));%求窗口均值

%%%下面小循环为了求当前窗口的标准差
su=0;
for i=1:1:3
            for j=1:1:3
            su=(V(i,j)-average(i0,i1))^2+su;
            end
end
rme(i0,i1)=sqrt(su/9);%标准差
%%%%下面是最终想要求三个矩阵(应用均值和标准差)
        beta(i0,i1)=(rme(i0,i1)/average(i0,i1));
        u(i0,i1)=log(1/average(i0,i1));
        heta(i0,i1)=average(i0,i1);
    end
end


function [normalized_matrix]=Normalized(matrix)
input_matrix=abs(matrix);
Max_input=max(input_matrix(: ));
Min_input=min(input_matrix(: ));
min_matrix=ones(size(input_matrix)).*Min_input;
normalized_matrix=(input_matrix-min_matrix)./(Max_input-Min_input+eps);

Elapsed time is 5.915782 seconds.

(V是一个3x3的窗口,用此窗口遍历整幅图像,求窗口内图像的均值和标准差;应用标准差和均值求三个矩阵beta,u和heta)

需要解决的问题:
1最后求得的图像均值,标准差和最后三个矩阵边界像素都为0。这个边界问题怎么解决?

2运算时间太长,我想这样窗口遍历图像的算法应该有更加高效的程序,精简程序或其他高效程序?

请高手指点,或可以站内和我联系,如果可以解决可以追加BB,呵呵[ Last edited by jjdg on 2011-11-16 at 01:49 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

★
jjdg(金币+1): 感谢参与 2011-11-18 01:04:46
blkproc(S,[512 512],[3 3],fun);
这样调用可以返回需要的图片大小的,你把源图像S的size传入即可,这里指定是512,好像lena的宽高都是512
matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
4楼2011-11-17 22:31:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 4 个回答

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

★
whq_nj(金币+20): 非常感谢及时回复,程序效率提高了不少,可beta,u和rme三个矩阵大小和源图像不一致,希望您再帮我看看 2011-11-17 22:22:27
余泽成(金币+1): 谢谢参与应助! 2011-11-19 14:28:20
运行了5次,速度提高一倍以上
CODE:
% 清空变量
clear all;

% blkproc后续变成blockproc了,但输入不再是矩阵,而是struct,调用略有差别
% 这里不显示这个warning
warning off;

% 计时
tic;

% 读图
S = imread('lena.png');

% 归一化
S = double(S);
abss = abs(S);
S = (S-min(abss(:)))/(max(abss(:))-min(abss(:)));

% 均值
funmean = @mean2;
heta = blkproc(S,[3,3],funmean);

% 标准差
funstd = @std2;
rme = blkproc(S,[3,3],funstd);

% 标准差/均值
beta = rme./heta;

% log结果
u = log(1./heta);

% 打印处理时间
toc;

运行5次,最小2.5s不到,跟分块处理有关
CODE:

Elapsed time is 2.481932 seconds.
Elapsed time is 2.462658 seconds.
Elapsed time is 2.448344 seconds.
Elapsed time is 2.451187 seconds.
Elapsed time is 2.454321 seconds.

matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
3楼2011-11-17 19:00:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[硕博家园] 极限拉扯,如何抉择 +3 Isak0320 2026-10-12 5/250 2026-10-12 16:42 by Isak0320
[教师之家] 课题组会帮你通过考核么? +3 好运来~9527 2026-10-10 6/300 2026-10-12 14:55 by 简单化xn
[有机交流] OpenAI又攻克数学难题了,离AI做有机合成还有多远? +4 wangyl_123 2026-10-10 7/350 2026-10-12 14:47 by chuans0923
[公派出国] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 9/450 2026-10-11 22:34 by XQNyDCa1Tk5n
[找工作] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 22:26 by XQNyDCa1Tk5n
[公派出国] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 22:26 by XQNyDCa1Tk5n
[考博] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 9/450 2026-10-11 22:15 by XQNyDCa1Tk5n
[教师之家] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 (EPI+-1)(金币-50) +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 22:06 by XQNyDCa1Tk5n
[基金申请] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +5 qR2AdCWTVtkw 2026-10-09 9/450 2026-10-11 22:06 by XQNyDCa1Tk5n
[教师之家] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 (EPI+-1)(金币-50) +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 14:25 by VOMexwnDzOFZ
[教师之家] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 (EPI+-1)(金币-50) +4 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 14:05 by VOMexwnDzOFZ
[考研] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 13:51 by VOMexwnDzOFZ
[硕博家园] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 13:45 by VOMexwnDzOFZ
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 10:54 by VOMexwnDzOFZ
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +4 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 10:34 by VOMexwnDzOFZ
[考博] 招收博士生一名 +3 mandolin 2026-10-10 3/150 2026-10-11 10:21 by 不是山谷!
[公派出国] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +4 qR2AdCWTVtkw 2026-10-09 4/200 2026-10-11 03:14 by M0zrYVSAnxpE
[有机交流] 各位大佬,路线设计求助 +6 zapen 2026-10-08 8/400 2026-10-10 15:59 by zapen
[基金申请] 入职后第一次管课题组的专利缴费,对账才发现官费比别人多掏了一倍 +5 13108017953 2026-10-08 5/250 2026-10-10 11:15 by wdwd123
[有机交流] 我应该选哪条合成路线让实验成功率高一些? +5 jing816y 2026-10-08 9/450 2026-10-10 09:05 by zapen
信息提示
请填处理意见