所以我正在使用循环来获取图像中的每个像素,但是我遇到了一个我不理解的错误。我正在使用in range循环来做到这一点
height,width=img.shape
当我记录这些时,它会给出正确的结果。尺寸被记录下来,但是当我循环时它给出了错误。我已经看到很多代码使用此功能,但是现在却出现了一些错误。这是怎么回事?
for i in range(0, height):
TypeError: 'int' object is not callable
循环的代码如下:
p =[]
p.append(5000)
p.append(0)
p.append(5000)
p.append(0)
for i in range(0, height):
for j in range(0, width):
if mask[i][j]==0:
if i<p[0]:
p[0]=i
if i>p[1] :
p[1] = i
if j<p[2]:
p[2]=j
if j>p[3] :
p[3] = j
else:
img[i,j]=[255,255,255]
答案 0 :(得分:4)
您已将range
名称重新定义为一个整数,如果执行type(range)
,它将返回int
而不是range
使用以下代码行,您甚至可以返回到旧方法:
range = 5 # Oh no ! I have done a mistake !
import builtins
range = builtins.range # Getting back the original method