创建一个矩阵的两个部分之间的“边界”

7视图(30天)
我有一个二维数组(n×n)在Matlab。(见图片1)上的矩阵的一个例子。我想单独的特定部分矩阵(元素' 2 ')和额外的一层0 (“boudnary”elelements改为零,见图片2的示例矩阵)的预期的结果。
只是一般的角度来看,该算法需要之间创建一个boudnary几个3 d功能,但是我想从2 d问题和数据已经导入如上所述。
我想知道如果任何人有建议问题以及如何用Matlab ?算法或者链接到类似的问题吗?欢迎任何建议。
图1 图片1。问题的例子
图片2。想要的结果
12个评论
斯坦尼斯拉夫Buklovskyi
斯坦尼斯拉夫Buklovskyi 2021年9月29日
图像分析,
谢谢你的建议。现在调查分水岭算法。
关于你的疑问“为什么”我想这样做:整个事情是一个材料微观结构的表征。集群的矩阵表示颗粒材料和边界层是另一个材料添加进去,谷物的初始材料。应用程序可以在造型材料的微观结构。
请让我知道如果你认为别的可能有用的检查。

登录置评。

接受的答案

图像分析
图像分析 2021年9月27日
这是一个开始:
= [1 1 1 1 2 2 2 2 2
1 1 1 1 2 2 2 2 2
1 1 1 1 2 2 2 2 2
3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 3]
ua =独特(A)
k = 1:长度(ua)
thisNumber = ua (k);
%找出这个数字出现在图像。
= = = thisNumber地图
%找到每个区域的周长。
周长= bwperim(地图)
%不包括图像的边缘上。
周边(1:)= false;
周长(,)= false;
周长(:1)= false;
周长(:,结束)= false;
%设置为0。
(周边)= 0;
结束
%在命令窗口中显示。
一个
4评论
图像分析
图像分析 2021年10月1日
不知道我理解你的评论。我叫“通路”新鲜感像素non-zero-valued之间地区的地图。我仍然不知道为什么你认为你需要或想要的。
如果你想“介绍”一个新的地区一个新的标签号码,你可以爆炸在像素区域的新标签号码。将不需要的区域是由通路/河流0。

登录置评。

答案(1)

焉耆刘
焉耆刘 2021年9月28日
先生,请检查下代码来得到一些信息
clc;清晰的所有;关闭所有;
= [1 1 1 1 2 2 2 2 2
1 1 1 1 2 2 2 2 2
1 1 1 1 2 2 2 2 2
3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 3
3 3 3 3 3 3 3 3 3];
广告=独特((:));
B =一个;
i = 1:长度(广告)
Ai =一个;
人工智能(~ =广告(i)) = 0;
人工智能(= =广告(i)) = 1;
Ai =逻辑(Ai);
%就瘦
Ai2 = bwmorph (Ai,“薄”1);
B (Ai) = Ai2 (Ai) *广告(我);
结束
图(“颜色”,“c”);
次要情节(1、2、1);imshow ([]);标题(“之前”);
次要情节(1、2、2);imshow (B, []);标题(“后”);
1评论
斯坦尼斯拉夫Buklovskyi
斯坦尼斯拉夫Buklovskyi 2021年9月28日
编辑:斯坦尼斯拉夫Buklovskyi 2021年9月28日
谢谢你的主意。在这一点上我认为盒子的边缘应该保存下来,但根据情况也可以使用。
谢谢你的可视化表示。它有助于理解发生了什么。
编辑:我可以考虑这本书如果我知道中国人:)

登录置评。

类别

找到更多的在开始使用MATLAB帮助中心文件交换

下载188bet金宝搏


释放

R2020a

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!

翻译的