python计算两个点的最小距离
时间: 2023-03-30 16:04:27 浏览: 122
可以使用数学公式计算两个点之间的距离,公式为:d = √((x2-x1)² + (y2-y1)²),其中(x1,y1)和(x2,y2)分别为两个点的坐标。在Python中可以使用math库中的sqrt函数来计算平方根,具体代码如下:
import math
def distance(x1, y1, x2, y2):
return math.sqrt((x2-x1)**2 + (y2-y1)**2)
# 示例
print(distance(1, 2, 4, 6)) # 输出 5.
相关问题
输入三个点坐标,计算任意两个点之间的最小距离,结果保留两位小数的python代码
以下是计算任意两个点之间的最小距离的 Python 代码:
```python
import math
def distance(x1, y1, x2, y2):
return math.sqrt((x2 - x1) ** 2 + (y2 - y1) ** 2)
x1, y1 = map(float, input("请输入第一个点的坐标(x1, y1): ").split())
x2, y2 = map(float, input("请输入第二个点的坐标(x2, y2): ").split())
x3, y3 = map(float, input("请输入第三个点的坐标(x3, y3): ").split())
d1 = distance(x1, y1, x2, y2)
d2 = distance(x1, y1, x3, y3)
d3 = distance(x2, y2, x3, y3)
min_distance = min(d1, d2, d3)
print("任意两个点之间的最小距离为:{:.2f}".format(min_distance))
```
输入三个点的坐标后,程序会计算出任意两个点之间的距离,并输出最小距离,结果保留两位小数。
python两个轮廓距离倾斜角计算
要计算两个轮廓的倾斜角,需要进行以下步骤:
首先,使用OpenCV库中的findContours函数找到轮廓的边界点。这个函数会返回一个轮廓点的列表。
然后,使用cv2.minAreaRect函数计算每个轮廓的最小外接矩形。该函数返回一个由矩形的中心点、宽度、高度和旋转角度组成的元组。
接下来,从返回的元组中提取出旋转角度信息。
最后,使用提取出的旋转角度信息,计算两个轮廓之间的倾斜角。此角度为两个轮廓的旋转角度之差。
示例代码如下:
```
import cv2
import numpy as np
# 读取图片
image = cv2.imread('image.jpg')
# 转化为灰度图
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
# 二值化
ret, thresh = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY)
# 寻找轮廓
_, contours, _ = cv2.findContours(thresh, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
# 计算第一个轮廓的倾斜角
rect1 = cv2.minAreaRect(contours[0])
angle1 = rect1[-1]
# 计算第二个轮廓的倾斜角
rect2 = cv2.minAreaRect(contours[1])
angle2 = rect2[-1]
# 计算两个轮廓的倾斜角差值
angle_diff = angle2 - angle1
print('轮廓1的倾斜角度:', angle1)
print('轮廓2的倾斜角度:', angle2)
print('两个轮廓的倾斜角度差值:', angle_diff)
```
通过以上步骤,我们可以得到两个轮廓的倾斜角差值,从而计算出它们之间的倾斜角。
阅读全文