[我正在OCR应用程序上,为图像给出的注释具有这样的轮廓的4个顶点,
x1_1, y1_1,x2_1,y2_1,x3_1,y3_1,x4_1,y4_1, text_line
我该如何绘制?
我尝试使用plt.rectangle
,但是只需要xmin,ymin,xmax,ymax,这里有4个顶点?
如果您坚持不找到最小值/最大值,可以这样做:
import numpy as np
import matplotlib.pyplot as plt
d=[1,1,1,4,3,4,3,1]
Xs = d[::2]
Ys = d[1::2]
for i in range(4):
if i < 3:
plt.plot([Xs[i],Xs[i+1]],[Ys[i],Ys[i+1]],'k-',lw=2)
elif i == 3:
plt.plot([Xs[i],Xs[0]],[Ys[i],Ys[0]],'k-',lw=2)
plt.show()
给出:
正确的方法是先找到最左边的点,然后找到宽度和高度,并将所有3传递给matplotlib.patches.Rectangle
。