You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

调用anna_phog提取图像特征触发int与内置方法不支持/运算的TypeError

问题根因

报错的核心原因是命名冲突+变量未定义:

  1. 你在业务代码中调用anna_phog(img, bin, angle, Level, roi)时,没有提前定义名为bin的数值变量(bin是phog算法的直方图分桶数参数)
  2. 业务代码中的from numpy import *语句将numpy内置的bin()函数导入了全局命名空间,你传入的bin实际是函数对象,而非数值。在anna_BinMatrix函数执行nAngle = angle/bin时,就出现了「int类型不能和内置函数对象做除法」的类型错误。
修复方案

按以下步骤修改即可解决问题:

  • 删掉业务代码中不规范的from numpy import *语句,这种全局导入极易引发命名冲突。原代码中用到的numpy size方法,替换为np.size调用即可(你已经提前导入了import numpy as np)
  • 在业务代码的参数定义段,补充bin参数的数值定义,示例如下(数值可根据你的算法需求调整):
S = 8
bin = 8 # 新增:直方图分桶数
angle = 360
Level = 3
roi = [1,225,1,300]
save=True
  • (可选优化)建议将phog实现代码中所有的参数名bin改为bin_num之类的别名,彻底避免和Python/numpy内置的bin函数重名。

修改完成后重新运行代码即可正常执行。

内容的提问来源于stack exchange,提问作者Lila

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.15 13:24:02