如何确定Python(使用OpenCV)中哪个参数引发异常?

1 投票
1 回答
510 浏览
提问于 2025-04-18 02:48

在使用Python和OpenCV的时候,出现了一个类型错误(TypeError)。但是我不知道到底是哪个参数引起的这个错误。我该怎么找出是哪个呢?

Traceback (most recent call last):
  File "u.py", line 18, in <module>
    out = unravel2(img,pupil)
  File "/home/chris/code/opencv/iris/support.py", line 57, in unravel2
    cv2.logPolar(img, out, center, cv2.WARP_FILL_OUTLIERS)
TypeError: a float is required

为了让大家更了解,这里是我的代码:

def unravel2(img, pupil):
  out = np.zeros((max_radius-min_radius,720,3), np.uint8)
  center = (297.5,234.5)
  cv2.logPolar(img, out, center, cv2.WARP_FILL_OUTLIERS)

  return out

1 个回答

2

你把logPolar的参数搞错了(可能是从旧版的cv API包装中来的)

>>> import cv2
>>> help(cv2.logPolar)
Help on built-in function logPolar in module cv2:

logPolar(...)
    logPolar(src, center, M, flags[, dst]) -> dst

(M就是那个需要关注的浮点数)

撰写回答