gpt4 book ai didi

matlab - 两条相交线之间的像素

转载 作者:太空宇宙 更新时间:2023-11-03 19:53:59 25 4
gpt4 key购买 nike

我需要找到两条线的交点之间的像素值。下图显示了我想要的点,即棕色区域。

这4个坐标可以变化,不一定是角点。

enter image description here

获取像素值最快的方法是什么?有什么功能可以给我必要的掩码。

最佳答案

您应该计算每个点,无论是在线上方还是在线下方。如果直线以方程形式 Ax+By+C 给出,那么根据您的观点,它就像计算此表达式的符号一样简单 (x,y) .如果你的线条是以任何其他形式给出的,你应该首先计算上面的形式。 (参见 herehere)

L1 是第一条线以下所有点的集合,L2 是第二条线以下所有点的集合。那么,你的集合是 X = Xor(L1,L2)

[ enter image description here ]异或[ enter image description here ]

等于:

enter image description here

这是一个 Matlab 代码,可以根据我描述的解决方案解决角点问题。您可以在代码中调整直线方程。

function CreateMask()
rows = 100;
cols = 200;
[X,Y] = ndgrid(1:cols,1:rows);

belowFirstLine = X*(1/cols) + Y*(-1/rows) + 0 < 0;
belowSecondLine = X*(-1/cols) + Y*(-1/rows) + 1 < 0;

figure;imshow( transpose(xor(belowSecondLine,belowFirstLine)));
end

关于matlab - 两条相交线之间的像素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13245012/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com