|
1
3
根据 the Bresenham line drawing algorithm ,确实有
点之间的像素
这条线是一条1像素粗的线。 请注意,像素的数量并不对应于点之间的欧几里得距离,而是对应于L-无穷远距离,也称为最大范数、棋盘距离或 Chebyshev distance . 编辑: 更新后的问题完全不同。以上为上限。 要计算两点之间直线上的实际白色像素数,需要绘制该直线。上面的维基百科链接提供了有关 这个 绘制线条的算法。 Here is a very simple implementation in MATLAB ,应该易于转换为python。虽然不是真正画线,但您将读取像素值,并计算白色的像素值。 @本·琼斯建议用python实现bresenham的算法。不必那么复杂。下面是一个简单的python脚本,它查找两点之间直线上的所有像素(从上面链接的matlab版本翻译而来):
这将产生输出:
现在只剩下读取这些坐标上的像素值,并确定它们是否为白色。 |
|
|
2
1
如果你使用的是线性算法 Bresenham's ,并且正如您所描述的,这两个点都在粗白线上,那么这两个点之间的白色像素数实际上是这样的:
因为,假设整行都在白色区域,组成一行宽度为1的像素的数目
|
|
|
VeceluXa · 在Android中将黑白位图转换为单通道JPEG 2 年前 |
|
|
Mohamed Obeid · 在灰度图像上散射网格 3 年前 |
|
|
Pete · 三维体积与其主轴对齐 3 年前 |
|
|
Doofenmirtz Mirtz · 录制视频中特定对象的角度检测 3 年前 |