无法调用OpenCV的TrackerKCF函数,报AttributeError错误求助
问题解决:OpenCV TrackerKCF 找不到的报错
核心原因
不是单纯的库未更新,TrackerKCF属于OpenCV的扩展功能模块,默认安装的opencv-python包不包含这类扩展跟踪器,必须安装opencv-contrib-python扩展包才能使用。
解决步骤
安装扩展包
先卸载原有opencv-python,再安装带扩展模块的版本:pip uninstall opencv-python -y pip install opencv-contrib-python如果需要和原有OpenCV版本匹配,指定版本号(比如4.5.5.62):
pip install opencv-contrib-python==4.5.5.62修正代码调用
OpenCV版本不同,跟踪器的调用方式有差异:- OpenCV 3.x版本:
rastreador = cv2.TrackerKCF() - OpenCV 4.x及以上版本:
# 两种写法都可以,取决于具体版本 rastreador = cv2.TrackerKCF_create() # 部分新版本移到legacy模块 rastreador = cv2.legacy.TrackerKCF_create()
- OpenCV 3.x版本:
VS Code高亮问题说明
TrackerKCF显示白色是因为VS Code的Python语言服务在当前环境的cv2模块中找不到该函数的定义,安装好opencv-contrib-python并重启VS Code后,高亮会恢复正常。
内容的提问来源于stack exchange,提问作者Douglas Tirloni
相关产品推荐
相关产品推荐

