导入object_detection库报Illegal instruction错误的原因及源码位置咨询
导入TensorFlow Object Detection库报Illegal instruction问题解答
报错属性判定
你遇到的Illegal instruction报错与TensorFlow本体的AVX指令集不匹配报错属于同一类问题。
Object Detection库依赖TensorFlow底层算子能力,官方发布的预编译版本默认开启AVX、AVX2等现代CPU指令集优化,若你使用的CPU不支持对应指令集(比如老旧消费级CPU、部分低配置云服务器CPU实例),就会触发非法指令报错。
源码获取及编译注意事项
- 你需要首先完成适配你CPU指令集的TensorFlow 2.6.1版本源码编译,确保基础TensorFlow可以正常导入使用
- Object Detection库属于TensorFlow Model Garden项目的组件,对应2.6.1版本的源码可以从TensorFlow官方代码仓库的对应版本tag下获取
- 编译安装时需确保所有依赖版本与你当前的Python 3.8.2、TF 2.6.1环境严格对齐,避免出现版本兼容问题
临时规避方案
如果暂时不想做源码编译,可以尝试寻找第三方编译的无AVX指令集版本的Object Detection预编译包,注意确认包版本匹配你的环境,同时做好安全校验。
内容的提问来源于stack exchange,提问作者Vento
相关产品推荐
相关产品推荐

