[英]TypeError: 'numpy.ndarray' object is not callable
I am trying to convert a scilab code to python I have the following code:我正在尝试将 scilab 代码转换为 python 我有以下代码:
for ( i = 0:roi_sx:imgg_sx-roi_sx)
for ( j = 0:roi_sy:imgg_sy-roi_sy)
intensity = 0;
for ( m = i+1:1:i+roi_sx )
for ( n = j+1:1:j+roi_sy )
intensity = intensity + imgg(m,n);
end
end
if ( intensity < threshold*roi_sx*roi_sy ) then
imgs(i+1:1:i+roi_sx, j+1:1:j+roi_sy) = zeros(roi_sx, roi_sy);
end
end
end
this is what I could come up with:这是我能想到的:
for i in range(0,imgg_sx-roi_sx,roi_sx):
for j in (0,imgg_sy-roi_sy,roi_sy):
intensity = 0
for m in range (i+1,i+roi_sx,1):
for n in range (j+1,j+roi_sy,1):
intensity = intensity + (imggmatrix[m][n])
if intensity < threshold*roi_sx*roi_sy:
imgs([i+1 for i in range(i+roi_sx)],[j+1 for j in range(j+roi_sx)]) = np.zeros((roi_sx, roi_sy),dtype=float)
#np.imgs([i+1 for i in range(i+roi_sx)],[j+1 for j in range(j+roi_sx)]) = np.zeros((roi_sx, roi_sy),dtype=float)
anyone can please help me figure out what is wrong with this line, I appreciate every contribution任何人都可以帮我弄清楚这条线有什么问题,我感谢每一个贡献
imgs([i+1 for i in range(i+roi_sx)],[j+1 for j in range(j+roi_sx)]) = np.zeros((roi_sx, roi_sy),dtype=float)
I got the following error:我收到以下错误:
File "C:\Users\medyo\Desktop\MIP\DataMatrix\DataMatrix.py", line 26, in <module>
imgs([i+1 for i in range(i+roi_sx)],[j+1 for j in range(j+roi_sx)])
TypeError: 'numpy.ndarray' object is not callable
I didn't try it, but from what I see your code should be like this since The "if statement" if intensity < threshold*roi_sx*roi_sy:
at its current location will always see intensity = 0
.我没有尝试过,但据我所知,您的代码应该是这样的,因为“if 语句”
if intensity < threshold*roi_sx*roi_sy:
在其当前位置将始终看到intensity = 0
。 It should be indented under the "for loop".它应该在“for 循环”下缩进。
for i in range(0,imgg_sx-roi_sx,roi_sx):
for j in (0,imgg_sy-roi_sy,roi_sy):
intensity = 0
for m in range (i+1,i+roi_sx,1):
for n in range (j+1,j+roi_sy,1):
intensity = intensity + (imggmatrix[m][n])
if intensity < threshold*roi_sx*roi_sy:
imgs([i+1 for i in range(i+roi_sx)],[j+1 for j in range(j+roi_sx)]) = np.zeros((roi_sx, roi_sy),dtype=float)
#np.imgs([i+1 for i in range(i+roi_sx)],[j+1 for j in range(j+roi_sx)]) = np.zeros((roi_sx, roi_sy),dtype=float)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.