24小时热门版块排行榜    

查看: 281  |  回复: 3
当前主题已经存档。
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

quartzbj

金虫 (正式写手)

[交流] 【讨论】矩阵部分数赋值问题?

一个矩阵A:
4   5     16     17   18   9  
2   20   30    40   9     0
3   20    8      6    7     0
31  40  18    8    19    6
1    83    2      6   7    18



希望把矩阵A大于10的数先挑出来赋值为1,其它为0,

第二步, 但是如果同一行连续有两个1, 就把原来矩阵A中相应数比较小的再赋值为0,不连续的点保持不变。

第三步,如果某个1周围8个点都为0,把原来矩阵A中对应数比较大的再赋值为1.

老是循环使用不好,怎么办?

[ Last edited by quartzbj on 2009-11-18 at 08:54 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hitzhang

木虫 (正式写手)

★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
sunxiao(金币+2,VIP+0):谢谢专家 11-19 01:00
引用回帖:
Originally posted by quartzbj at 2009-11-18 18:46:
谢谢,想做边界检测

第二步只针对行吗?碰到3个4个连续的怎么办?第三步只针对矩阵内部的格点吗?对于矩阵边界上的格点,周围只有3个或5个的怎么办?老是循环是什么意思?
4楼2009-11-18 21:06:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 4 个回答

zjliu1265

至尊木虫 (正式写手)

★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
kuhailangyu(金币+2,VIP+0):谢谢参与 11-18 11:11
第一步不用循环容易实现,但是后面两步不用循环比较麻烦。
其实循环也不是不好,我个人认为写程序首要的是写出来准确
的程序,其次才是去优化程序。

顺便问一下,你的问题是和元胞自动机相关么?

我写了一段程序如下,仅供参考:

A=[4,5,16,17,18,9;...
        2,20,30,40,9,0;...
        3,20,8,6,7,0;...
        31,40,18,8,19,6;...
        1,83,2,6,7,18];

% step 1
Ao=A;
A(A<=10)=0;
A(A>10)=1;
A
% step 2
[x,y]=find([A(1:end-1,+A(2:end,]>1.5);
Ix1=sub2ind(size(A),x,y);
Ix2=sub2ind(size(A),x,y+1);
Ix1,Ix2
[xx,Ix]=min([Ao(Ix1),Ao(Ix2)],[],1);
Ao(Ix1(Ix<1.5))=0;
Ao(Ix2(Ix>1.5))=0;

% step 3
S=A(1:end-2,2:end-1)+A(3:end,2:end-1)+...
    A(2:end-1,1:end-2)+A(2:end-1,3:end)+...
    A(1:end-2,1:end-2)+A(3:end,1:end-2)+...
    A(1:end-2,3:end)+A(3:end,3:end);
[x,y]=find(S<0.5);
dx=[-1,0,1,-1,1,-1,0,1];
dy=[-1,-1,-1,0,0,1,1,1];
for k=1:length(x);
    xn=x(k)+dx;
    yn=y(k)+dy;
    Ix=sub2ind(size(Ao),xn,yn);
    [xx,Ik]=max(Ao(Ix));
    Ao(Ix(Ik))=1;
end

[ Last edited by zjliu1265 on 2009-11-18 at 11:04 ]
2楼2009-11-18 11:02:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

quartzbj

金虫 (正式写手)

谢谢,想做边界检测
3楼2009-11-18 18:46:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[硕博家园] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 4FFAWE8HcgUD 2026-08-29 4/200 2026-08-30 20:30 by hZiFeudZyoGR
[硕博家园] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 4FFAWE8HcgUD 2026-08-29 3/150 2026-08-30 20:10 by hZiFeudZyoGR
[论文投稿] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 jCd0dEvKHShX 2026-08-29 4/200 2026-08-30 19:57 by hZiFeudZyoGR
[考博] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +5 jCd0dEvKHShX 2026-08-29 7/350 2026-08-30 19:45 by hZiFeudZyoGR
[硕博家园] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 jCd0dEvKHShX 2026-08-29 5/250 2026-08-30 19:35 by hZiFeudZyoGR
[硕博家园] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 G6APbkg8SA6w 2026-08-29 4/200 2026-08-30 18:53 by hZiFeudZyoGR
[考研] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +3 G6APbkg8SA6w 2026-08-29 5/250 2026-08-30 18:40 by hZiFeudZyoGR
[考博] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +4 gy1nBQXYQJqL 2026-08-29 6/300 2026-08-30 18:20 by hZiFeudZyoGR
[硕博家园] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +5 gy1nBQXYQJqL 2026-08-29 6/300 2026-08-30 18:17 by hZiFeudZyoGR
[公派出国] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +5 gy1nBQXYQJqL 2026-08-29 5/250 2026-08-30 18:07 by hZiFeudZyoGR
[考研] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +4 gy1nBQXYQJqL 2026-08-29 6/300 2026-08-30 17:47 by hZiFeudZyoGR
[找工作] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +6 ASdOkHsho7FD 2026-08-28 10/500 2026-08-30 17:36 by hZiFeudZyoGR
[硕博家园] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +7 ASdOkHsho7FD 2026-08-28 14/700 2026-08-30 17:01 by hZiFeudZyoGR
[论文投稿] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +5 gy1nBQXYQJqL 2026-08-29 7/350 2026-08-30 11:51 by l0VvVHGBGRLv
[基金申请] 29号明天会评吗 +3 笨笨唐 2026-08-28 3/150 2026-08-30 09:29 by cww8181
[基金申请] 国社科申报系统有变化 +3 kynobel 2026-08-23 3/150 2026-08-29 21:57 by 余韵清
[基金申请] 2026年叶企孙基金 +4 bud_bud 2026-08-27 7/350 2026-08-29 07:23 by foolishmani
[基金申请] 基金不中,共勉 +11 eulota 2026-08-26 11/550 2026-08-28 14:22 by 火星超人xi
[基金申请] 基金系统什么内容也没有 30+4 winsaint 2026-08-27 9/450 2026-08-28 11:06 by maolC
[基金申请] 怎么看青基中了没有啊 +5 叶九微 2026-08-26 5/250 2026-08-27 10:35 by l_zh2008
信息提示
请填处理意见