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

如何解决cv2.dnn.readNetFromDarknet运行报错问题?

解决Yolov3+OpenCV运行报错的两个问题

问题1:OpenCV解析模型文件报错(Failed to open NetPara)

针对cv2.error: (-212:Parsing error) Failed to open NetPara错误,按以下步骤排查:

  • 核对文件路径
    确认yolov3.cfg和yolov3.weights确实存在于指定路径,文件夹、文件名无拼写错误。同时调整路径写法为Windows兼容格式,推荐两种方式:
    # 方式1:使用原始字符串(前缀r)
    model = cv2.dnn.readNetFromDarknet(r"C:\Users\deniz\Desktop\yolofiles\yolov3-coco_directory\yolov3.cfg", r"C:\Users\deniz\Desktop\yolofiles\yolov3-coco_directory\yolov3.weights")
    # 方式2:使用单斜杠
    model = cv2.dnn.readNetFromDarknet("C:/Users/deniz/Desktop/yolofiles/yolov3-coco_directory/yolov3.cfg", "C:/Users/deniz/Desktop/yolofiles/yolov3-coco_directory/yolov3.weights")
    
  • 验证模型文件完整性
    重新下载官方Yolov3权重文件(大小约240MB,注意不要下成tiny版本),确认文件未损坏;同时确保cfg文件是官方原版,未被修改导致格式错误。
  • 升级OpenCV版本
    旧版OpenCV对Darknet模型的解析可能存在兼容问题,执行命令升级:
    pip install --upgrade opencv-python opencv-contrib-python
    

问题2:终端直接输入代码报错(术语未被识别)

cv2.dnn.readNetFromDarknet : 该术语未被识别是因为这是Python代码,不能直接在CMD/PowerShell中执行,正确做法是:

  • 进入Python交互环境运行
    打开终端输入python(或python3)进入Python交互模式,先导入cv2再执行代码:
    import cv2
    model = cv2.dnn.readNetFromDarknet("C:/Users/deniz/Desktop/yolofiles/yolov3-coco_directory/yolov3.cfg", "C:/Users/deniz/Desktop/yolofiles/yolov3-coco_directory/yolov3.weights")
    
  • 保存为脚本文件运行
    将代码写入.py文件(比如yolo_test.py),然后在终端执行:
    python yolo_test.py
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 22:30:57