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

调用TextDetector实例报错TypeError: 'TextDetector' object is not callable原因求解

TypeError报错原因及解决方案

错误本质

你遇到的TypeError: 'TextDetector' object is not callable核心原因是:你尝试将TextDetector类的实例对象作为函数调用(即实例后加括号传参),但当前版本的TextDetector类未实现__call__魔法方法,不支持该调用方式。

常见触发原因

  • 你本地的predict_det模块代码被改动过:此前可运行的版本中TextDetector类实现了__call__方法,后续更新、修改操作删掉了该方法,或者将推理逻辑封装到了其他命名的普通方法(比如detect、predict)中。
  • 导入的TextDetector不是预期的类:从你输出的<class 'list'>来看,当前predict_det.TextDetector指向的根本不是类,可能是predict_det.py文件中被新增了同名的列表变量,覆盖了原本的类定义。

修复方案

  • 先校验导入的对象是否正确:在实例化代码前加一行print(type(predict_det.TextDetector)),如果输出结果不是<class 'type'>,直接打开predict_det.py文件,排查是否有重名变量覆盖了TextDetector类,修正命名冲突即可。
  • 确认类定义正确后,查看类的可用方法:在实例化text_detector后加一行print(dir(text_detector)),查找对应的文本检测推理方法名,将调用代码改成对应方法即可,比如方法名为detect时,修改为dt_boxes, elapse = text_detector.detect(img)。
  • 若要保留原调用写法,直接在TextDetector类内部新增__call__方法,将推理逻辑封装到该方法中即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 01:36:01