如何找到大曲率的位置

2视图(30天)
迈克尔scheinfeild
迈克尔scheinfeild 2018年3月2日
评论道: 约翰BG 2018年3月3日
我想检测曲线点线的线本身不直

接受的答案

约翰BG
约翰BG 2018年3月2日
编辑:约翰BG 2018年3月3日
嗨迈克尔
有一个简单的方法来包围的点你想要的,有高度的准确性。
图像的领域你想点拐点变化的导数符号:几何顶点。
如果我们只寻找高度的曲率,这与半径,非常小的圈子会给错误的检测。
你精确要求的突然转变的迹象的方向跟踪。
1。
图像采集:
我试着和你的原始图像,包括一个灰色的痕迹,但它复杂处理。
只允许我黑色的痕迹显示解决方案:
清晰的所有clc;密切所有
一个= imread (“011. jpg”);
sz1 =大小(1);
sz2 =大小(2);
hf1 =图(1);imshow(一个);
ax₁= hf1.CurrentAxes;
cp1 = campos;
不适用imbinarize这里,它消除了灰色的线吗
% A2 = imbinarize (A1)
% th1 = 200;
% (> th1) = 255;
% (< = th1) = 0;
% = 255 -一个;
图(2)%;imshow (A)
2. -
图像的二维方差点直接到感兴趣的领域
D = var(双(A), 0, 3);
高频=图(3);h =冲浪(D);
hs.EdgeColor =“没有”;
hs.FaceAlpha = 5;
ax = hf.CurrentAxes;
斧子。DataAspectRatio = 50 50 [1];
斧子。cp1 cp1 CameraPosition = [(1) (2) cp1 (3)];
3. -
现在FastPeakFind•的函数
2 d表面的坐标是现成的,请注意,提供的坐标是交错的。
p = FastPeakFind (D)
pxy = [p(2:2:结束)p(1:2:结束)];% deinterleave峰值坐标
持有(ax₁“上”);情节(ax₁, p(1:2:结束)、p(2:2:结束),' r + ')%方差的山峰
[idx C] = kmeans (pxy 4);
持有所有;viscircles (ax₁,翻转(uint32 (C), 2), 10 * 1 (1、4),“颜色”,“绿色”)
迈克尔
如果你发现这个答案有用请是考虑将我的答案标记为接受答案?
其他读者,如果你发现这个答案有用请点击竖起大拇指投票链接
谢谢提前
约翰BG
2的评论
约翰BG
约翰BG 2018年3月3日
嗨迈克尔
我也考虑专注于白色点的方法,获得骨架后,所以我做了以下几点:
清晰的所有clc;密切所有
一个= imread (“010. jpg”);
图(1);imshow(一个);
cp1 % = campos;
th1 = 200;
(> th1) = 255;
(< = th1) = 0;
一个= 255;
图(2);imshow (A)
A1 = (:,: 1);%只是一层
A2 = imbinarize (A1);
A3 = bwmorph (A2,“skel”、正);
图(3);imshow (A3)
(n1、n2, v) =找到(A3 = = 1);
但有三个问题:
1. -
不再有锋利的导数符号,突然乘看起来都像一个小转弯半径,但超过180º锋利的推力反转。
2. -
在2排,2左边,用黑色墨水,现在显示短射,是不应该,但bwmorph缩小这些跟踪感兴趣的点,一个明显的分歧是补充说,这并不真的存在。
3. -
左上角跟踪现在再次短射,看起来好像有三路路口。
我也有一个观察的变化信号的方差的衍生品:
A4 = del2(双((:,:1)+ (:,:2)+ (:,:,3)));
图(4);imshow (A4);
W1 = var (A4 0 1);
人物,情节(W1)
人物,情节(diff (W1。* W1))
W2 = var (A4 0 2);
人物,情节(diff (W2。* W2))
W2 = var (A4 0 2);
V = diff (W2。* W2);
nV =[1:1:元素个数(V)];
人物,情节(- v([结束:1:1】),nV);
如果隔离每个跟踪重叠得到解决。
约翰BG

登录置评。

答案(1)

迈克尔scheinfeild
迈克尔scheinfeild 2018年3月3日
编辑:迈克尔scheinfeild 2018年3月3日
文件有//www.tianjin-qmedu.com/matlabcentral/fileexchange/37388-fast-2d-peak-finder

标签

s manbetx 845

社区寻宝

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

开始狩猎!