我试图找到确切的弯曲线的距离。

1视图(30天)
我需要找到直线的距离用红色标出。我在想我可以筛选照片,找到线距离的像素计数,但没能成功。任何建议都是感谢。
原来的照片和编辑的版本都附呈。
蓝线画在原始照片是一样的红色边界编辑的版本。这只是供参考。
我的代码——以下
清晰的
clc
关闭所有
我= imread (“ss3.png”);
% imshow(我)
持有
% J = imcrop(我)
J = rgb2gray(我);
BW1 =边缘(J,“索贝尔”.009,“水平”);
掩码= imclose (BW1,真正的(7));
掩码= conv2(双(面具),(3),“相同”)> 3;%调整数量的大小来控制新面具。
= imfill(面具,面具“黑洞”);%删除任何内部漏洞
% imshow(面具)
%汽车作物图像使用设置点- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
I2 = imcrop(面具,[407.51 - 0.51 83.98 - 1037.98]);
imshow (I2,“InitialMagnification”,“健康”)
%边界轮廓和跟踪- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
[B, L] = bwboundaries (I2,“noholes”);
imshow (label2rgb (L, @jet,。5。5。5)))
持有
k = 1:长度(B)
边界= B {k};
情节(边界(:,2),边界(:1),“r”,“线宽”,0.5)
结束
4评论
图像分析
图像分析 2021年7月22日
我们可以看到都是红色或蓝色的版本注释行或地区已经卷入了形象。我们没有看到图片 没有 红或蓝线画/。

登录置评。

接受的答案

马特·J
马特·J 2021年7月21日
编辑:马特·J 2021年7月21日
为什么不这样?
I2 = imread (“image.jpeg”);
蓝色= bwareafilt (I2 (:,: 1) < = 50 & I2 (:,: 2) < = 50 & I2 (:,:, 3) > = 200, 1);
长度= getfield (regionprops(蓝色,“周长”),“周长”)
长度= 1.6471 e + 03

更多的答案(2)

j·亚历克斯。李
j·亚历克斯。李 2021年7月21日
假设的边界点命令(相邻),然后你可以计算广场相邻点之间的距离也沿着曲线的近似arclength
x =边界(:1);
y =边界(:,2);
dx = diff (x);
dy = diff (y);
d =√dx, dy。^ ^ 2 + 2);
L = (d)和

沃尔特·罗伯森
沃尔特·罗伯森 2021年7月21日
确切的 距离沿着曲线很可能是一个无理数。
你有 近似 的曲线。你距离测量取决于您使用的近似模型。答案你近似的更准确,更可以改变。

类别

找到更多的在图像处理和计算机视觉帮助中心文件交换

社区寻宝

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

开始狩猎!