分裂的优势帮助! !

5视图(30天)
弗朗西斯科·Pignatelli
弗朗西斯科·Pignatelli 2023年3月11日
你好所有的,
我有下面的边缘提取(黄色),我想分成了两个不同的部分基于线穿过每一行之间的两条边的中点(黑线)
有人知道怎么做吗?我把优势矩阵(完整图像)。
谢谢!
最好的
弗朗西斯科

接受的答案

亚当·德雷克
亚当·德雷克 2023年3月11日
编辑:亚当·德雷克 2023年3月13日
几乎可以肯定不是最有效的方法,但它的工作原理。
负载edge.mat
XLim = 1:550;
YLim = 300:1015;
subBUB =小家伙(YLim XLim);
日元= 0;y2 = 716;
x1 = 0;x2 = 425;
m = (y1, y2) / (x1, x2);
x = XLim;
y = m * (x - x1) +日元;
顶级= 0(大小(subBUB));
底= 0(大小(subBUB));
r = 1:尺寸(subBUB, 1)
c = 1:尺寸(subBUB, 2)
如果r < m * (c - x1) +日元%的小于由于轴反转显示亮度图像的阴谋
顶部(r、c) = subBUB (r、c);
其他的
底部(r、c) = subBUB (r、c);
结束
结束
结束
次要情节(1、3、1)
显示亮度图像(subBUB)
标题(“原始”)
线(x, y,“颜色”,“黑”)
次要情节(1、3、2)
显示亮度图像(上)
标题(“高级”)
线(x, y,“颜色”,“黑”)
次要情节(1、3、3)
显示亮度图像(底部)
标题(“底”)
线(x, y,“颜色”,“黑”)
3评论
弗朗西斯科·Pignatelli
弗朗西斯科·Pignatelli 2023年3月13日
我的意思是用样条“平滑”这两个边缘一旦分裂。

登录置评。

答案(1)

亚当·德雷克
亚当·德雷克 2023年3月14日
你的第二个问题是一个完全不同的问题。我有图像进行向量化,花键,然后重组。增加stepsize光滑样条但是会减少输出像素的数量。你可以做一个初始样条在一个较大的步长和第二个花键stepsize 1,但是我认为你可以处理。这是我说再见的地方。
请接受答案!谢谢!
clc,清晰变量,关闭所有
负载edge.mat
XLim = 10:550;
YLim = 300:1015;
subBUB =小家伙(YLim XLim);
日元= 0;y2 = 716;
x1 = 0;x2 = 425;
m = (y1, y2) / (x1, x2);
x = XLim;
y = m * (x - x1) +日元;
顶级= 0(大小(subBUB));
底= 0(大小(subBUB));
r = 1:尺寸(subBUB, 1)
c = 1:尺寸(subBUB, 2)
如果r < m * (c - x1) +日元
顶部(r、c) = subBUB (r、c);
其他的
底部(r、c) = subBUB (r、c);
结束
结束
结束
次要情节(1、3、1)
显示亮度图像(subBUB)
标题(“原始”)
线(x, y,“颜色”,“黑”)
次要情节(1、3、2)
显示亮度图像(上)
标题(“高级”)
线(x, y,“颜色”,“黑”)
次要情节(1、3、3)
显示亮度图像(底部)
标题(“底”)
线(x, y,“颜色”,“黑”)
% img矩阵转换成向量
(欧美,xt) =找到(上);
(yb, xb) =找到(底部);
% %花键
stepsize = 1;
xxt = min (xt): stepsize:马克斯(xt);
xxb = min (xb): stepsize:马克斯(xb);
%样条函数需要独特的价值观
[xt_d、ut_idx ~] =独特(xt);
yt_d =欧美(ut_idx);
[xb_d、ub_idx ~] =独特(xb);
yb_d = yb (ub_idx);
yyt =花键(xt_d yt_d xxt);
yyb =花键(xb_d yb_d xxb);
次要情节(1、2、1)
情节(xt,欧美)
集(gca),“YDir”,“反向”)
标题(“高级”)
次要情节(1、2、2)
情节(xb,)
集(gca),“YDir”,“反向”)
标题(“底”)
次要情节(1、2、1)
情节(xxt yyt)
集(gca),“YDir”,“反向”)
标题(“高级”)
次要情节(1、2、2)
情节(xxb yyb)
集(gca),“YDir”,“反向”)
标题(“底”)
% %重组
% Preallocate数组
= 0(大小(subBUB));
%让x和y值的整数(介绍一些错误)
xt_out =圆(xxt);
xb_out =圆(xxb);
yt_out =圆(yyt);
yb_out =圆(yyb);
% 1 x和y值
i = 1:长度(xt_out)
r = yt_out(我);
c = xt_out(我);
(r、c) = 1;
结束
i = 1:长度(xb_out)
r = yb_out(我);
c = xb_out(我);
(r、c) = 1;
结束
显示亮度图像(出)
标题(“重组”)
线(x, y,“颜色”,“黑”)
1评论
弗朗西斯科·Pignatelli
弗朗西斯科·Pignatelli 2023年3月14日
Hej !当然,我接受它!谢谢很多! !:D

登录置评。

类别

找到更多的在图片帮助中心文件交换

社区寻宝

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

开始狩猎!