Python OpenCV使用图像的中心坐标列表绘制多个圆

Python OpenCV使用图像的中心坐标列表绘制多个圆,python,pandas,numpy,opencv,Python,Pandas,Numpy,Opencv,首先,我不确定是否应该使用pandas或numpy来读取csv文件中的坐标列表? 第二,当我尝试其中一个时,我被OpenCV函数cv2.circle(图像,(x,y),25,(0255,0))卡住了,原因是(x,y)只接受单个整数,另一个原因是它只接受这个函数的单个整数!我的问题是这张图片有多个坐标,另一个问题是我有浮点数 import numpy as np from PIL import Image import cv2 import pandas as pd import math dfa

首先,我不确定是否应该使用pandas或numpy来读取csv文件中的坐标列表? 第二,当我尝试其中一个时,我被OpenCV函数cv2.circle(图像,(x,y),25,(0255,0))卡住了,原因是(x,y)只接受单个整数,另一个原因是它只接受这个函数的单个整数!我的问题是这张图片有多个坐标,另一个问题是我有浮点数

import numpy as np
from PIL import Image
import cv2
import pandas as pd
import math
dfa = pd.read_csv("filter_14.csv")
image = cv2.imread("image_1602.png")
x = dfa['project_image_X'].astype(int)
y = dfa['project_image_Y'].astype(int)
cv2.circle(image,(x,y),25,(0,255,0))
cv2.imshow('test image', image)
cv2.waitKey(0)**
这是错误消息:

回溯(最近一次呼叫最后一次): 文件“image_print.py”,第23行,在 cv2.圆(图像,(x,y),25,(0255,0)) 包装器中的文件“/usr/local/lib/python3.6/dist-packages/pandas/core/series.py”,第131行 raise TypeError(“无法将序列转换为”{0}”。格式(str(converter)))
TypeError:无法将序列转换为

如果没有csv文件的内容,很难说清楚,但看起来您正在传递整个序列以绘制一个圆,而不是一个(x,y)值对。 尝试循环遍历数据帧中的所有值:

import numpy as np
from PIL import Image
import cv2
import pandas as pd
import math
dfa = pd.read_csv("filter_14.csv")
image = cv2.imread("image_1602.png")
x = dfa['project_image_X'].astype(int)
y = dfa['project_image_Y'].astype(int)
for idx in dfa.index:
    x, y = dfa.loc[idx, ['project_image_X', 'project_image_Y']]
    cv2.circle(image,(x,y),25,(0,255,0))
cv2.imshow('test image', image)
cv2.waitKey(0)**

如果问题仍然存在,请查看csv文件的示例。

请不要截图。您的问题,代码为文本。谢谢@CarlosMelus,我通过两次分别提取数据来解决这个问题,但我也会尝试您的方法。。。谢谢