【问题标题】:Python OpenCV cv2.putText() - how to label multiple shapes with variate text?Python OpenCV cv2.putText() - 如何用不同的文本标记多个形状?
【发布时间】:2021-03-02 14:44:49
【问题描述】:

我在用文本标记我的形状时遇到问题。图像像素和文本值均来自 csv 文件。我尝试了以下操作,但输出错误。圆圈是正确的,但文字是错误的!好像我正在读取/打印每个坐标(即圆形)处的所有字符串。

dfa = pd.read_csv("filter.csv")
image = cv2.imread("image.png")
dfx = dfa[dfa['Timestamp'] == 1202000000]
dfx['Error_Bool'] = dfx['Percentage_Error']>=50
dfx['Error'] = dfx['Percentage_Error'].astype('int32')
text = dfx['Error'].to_numpy()
dfx = dfx[dfx['Error_Bool'] == False]
dfx = dfx[['Project_image_X', 'Project_image_Y']]
arr_2 = dfx.to_numpy()
for item_2 in arr_2:
    image = cv2.circle(image, (item_2[0], item_2[1]), 20, (0, 255, 0), 2)
    image = cv2.putText(image, "{}".format(text), (item_2[0], item_2[1]), 
            cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 255, 0), 1, cv2.LINE_AA)
cv2.imshow('test image', image)
cv2.waitKey(0)

【问题讨论】:

  • 查看您的 text 变量。

标签: python opencv image-processing


【解决方案1】:

问题在于 dfx['Percentage_Error'] = str(dfx['Percentage_Error'])。它似乎将整个 Percentage Error 列转换为一个字符串,然后将相同的字符串存储在 dfx['Percentage_Error'] 的每一行中。

【讨论】:

    猜你喜欢
    • 2019-09-30
    • 2020-06-25
    • 1970-01-01
    • 1970-01-01
    • 2019-05-24
    • 2018-06-25
    • 2018-04-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多