简体   繁体   English

TypeError: 'numpy.ndarray' object 不可调用

[英]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.

相关问题 多重处理:TypeError:“ numpy.ndarray”对象不可调用 - multiprocessing: TypeError: 'numpy.ndarray' object is not callable 未知的TypeError:&#39;numpy.ndarray&#39;对象不可调用 - Uknown TypeError: 'numpy.ndarray' object is not callable 收到TypeError:&#39;numpy.ndarray&#39;对象不可调用 - getting TypeError: 'numpy.ndarray' object is not callable Pyomo,TypeError:&#39;numpy.ndarray&#39; 对象不可调用 - Pyomo, TypeError: 'numpy.ndarray' object is not callable “类型错误:&#39;numpy.ndarray&#39; 对象不可调用” - Numpy 错误 - "TypeError: 'numpy.ndarray' object is not callable " - Numpy Error &#39;numpy.ndarray&#39;对象不可调用 - 'numpy.ndarray' object is not callable “&#39;numpy.ndarray&#39;对象不可调用” - “'numpy.ndarray' object is not callable” TypeError: &#39;numpy.ndarray&#39; 对象不可调用,用于比较两行 - TypeError: 'numpy.ndarray' object is not callable, for comparing two lines 类型错误:'numpy.ndarray' object 不可调用。 奇怪的错误 - TypeError: 'numpy.ndarray' object is not callable. Strange error sklearn.confusion_matrix - TypeError:&#39;numpy.ndarray&#39;对象不可调用 - sklearn.confusion_matrix - TypeError: 'numpy.ndarray' object is not callable
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM