获取线的像素-:-MATLAB

获取线的像素-:-MATLAB,matlab,plot,line,Matlab,Plot,Line,可能重复: 我想检测图像中的两个像素,并得到它们之间绘制线的所有像素 我不想画这条线,我只想得到这两个像素之间的所有像素的位置[如图中的(x,y)] . 在这段代码中,MATLAB中的哪个函数可以帮助我,我如何使用它? 谢谢 你需要像这样的东西。我不知道这方面的Matlab函数,但现在你知道你在寻找什么,你的搜索可能会更有成效。在Matlab中实现并不困难。求解简单的y=m*x+b线性方程(或其参数形式),然后检查线条经过的像素可能也足够了。这真的取决于你希望你的线有多精确。当然,Bre

可能重复:

我想检测图像中的两个像素,并得到它们之间绘制线的所有像素

我不想画这条线,我只想得到这两个像素之间的所有像素的位置[如图中的(x,y)] .

在这段代码中,MATLAB中的哪个函数可以帮助我,我如何使用它?


谢谢

你需要像这样的东西。我不知道这方面的Matlab函数,但现在你知道你在寻找什么,你的搜索可能会更有成效。在Matlab中实现并不困难。

求解简单的
y=m*x+b
线性方程(或其参数形式),然后检查线条经过的像素可能也足够了。这真的取决于你希望你的线有多精确。当然,Bresenham的直线算法会给出更精确的结果(更细、更漂亮的直线)。

如果我正确理解了你的问题,这里有两个问题

(1) 如何检测图像中的两个像素 ---这在很大程度上取决于您在问题中没有提到的其他内容,它们的属性,例如它们的颜色、在图像中的位置(它们在一起或分开),这两个像素相对于整个图像大小的相对比例(以设计有效的检测方法)

(2) 如何显示像素之间没有线条 ---我想您可以将所有像素位置偏移0.5,然后使用“pcolor”显示图像。然后,您可以键入以下内容:

p=pcolor(X,Y,C)

设置(p,‘EdgeColor’、‘none’);%这将删除像素之间的线条


祝你好运。

y=m*x+b。。。。。。。。。。我不认为它可以做我想要的正确,因为许多线在相同的比例有相同的斜率,我处理的像素有一个面积(不是绝对点),可能有些像素不完全实现线方程。。。。。。。。我将尝试使用Bresenham的直线算法。。。谢谢大家,还有几个相关问题:,