matlab如何将某一部分的圆变为1
1、方法一:up=(区域上端的行序号);down=(区域下端的行序号);left=(区域左端的列序号);right=(区域右垮逆解仔端的列序号);for row=up:down %行序号for column=left:right %列序号area(row,column)=1; %"area"为区域名字endend
2、方法二:分别设置i,j跟踪行和列,之后再来限制你说的区域就可以了。
3、方法三:> A = [-1 0 2;-3 -4 0;9 -78 1]A = -1 0 2 -3 -4 0 9 -78 1>> A(A~=0) = 1A = 1 0 1 1 1 0 1 1 1
4、方法四:代码如下:clear all;clc;clo衡痕贤伎se all;a=rand(10);la=size(a);nr=la(1);nc=l锾攒揉敫a(2);%圆心位置行列cc=[5 5];%圆半径r=3;%圆内元素值及索引放置矩阵index=[];b=[];in=1;for i=1:nrfor j=1:nct=[i j];if norm(cc-t)<=r %norm为范数函数,默认2-范数,用来求两点距离b(in,1)=a(i,j); %符合条件的元素值index(in,:)=t; %符合条件的元素索引in=in+1;a(i,j)=0; %此句有效输出a可以看到圆效果,看完加%变成注释不执行即可;endendenda,index,b %显示结果
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:22
阅读量:80
阅读量:59
阅读量:54
阅读量:81