微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何找到两个像素之间的距离?

如何解决如何找到两个像素之间的距离?

我有一个512x512 CT图像。如何找到像素A =(151,30)和B =(200,300)之间的距离?我应该使用哪种方法?我将图像转换为np.array,但是我不知道下一步该怎么做:

npimage=np.array(img)

0.675781和0.675781是单个像素的宽度和高度,单位为mm

解决方法

您需要两个像素的x和y位置。但是一旦有了这些,使用math模块就可以相对容易地实现距离。

这称为Euclidean distance

import math

def calculateDistance(x1,y1,x2,y2):
    dist = math.sqrt( (x2 - x1)**2 + (y2 - y1)**2 )
    return dist

pixel_pos1 = [10,20]
pixel_pos2 = [5,20]

distance = calculateDistance(
    pixel_pos1[0],pixel_pos1[1],pixel_pos2[0],pixel_pos2[1]
)

calculateDistance返回的距离转换为毫米,您必须将该距离乘以屏幕上像素的大小。

mm = distance * 0.675781

请记住,屏幕上的像素大小会随屏幕的不同而变化

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。