YOLO v3 的 OpenCV 实现在 GCP 实例上重现异常
OpenCV implementation of YOLO v3 reproduces Exception on a GCP instance
我已经使用来自 OpenCV 4.0.0.21 的 YOLO v3 模型成功实现了视频对象检测。它在本地机器上 运行 成功,所以我想在 Google 云平台实例上测试它。
我克隆了我的项目,从源代码构建了 OpenCV 并启动了 YOLO v3 对象检测。不过,这次我在 Darknet 初始化步骤中发现了一个异常:
net = cv2.dnn.readNetFromDarknet(cfg_path, weights_path)
这也是回溯:
Traceback (most recent call last):
File "/home/username/path_to_app/yolo_object_detection.py",
line 21, in run_detection:
net = cv2.dnn.readNetFromDarknet(cfg_path, weights_path)
cv2.error: OpenCV(4.0.0) /home/username/opencv-
4.0.0/modules/dnn/src/darknet/darknet_io.cpp:690:
error: (-213:The function/feature is not implemented)
Transpose the weights (except for convolutional)
is not implemented in function 'ReadDarknetFromWeightsStream'
这是什么原因,我该如何克服这个异常?
我不太确定,但看起来 yolov3.weights 文件没有正确存储在 Github 上(原因可能超过 100MB)。但是获得不同的权重文件对我有用:
!wget "https://pjreddie.com/media/files/yolov3.weights"
参考:
https://colab.research.google.com/drive/1EjN6PrqXABZApL2GmlegOeLhhwmtWrlJ
我已经使用来自 OpenCV 4.0.0.21 的 YOLO v3 模型成功实现了视频对象检测。它在本地机器上 运行 成功,所以我想在 Google 云平台实例上测试它。
我克隆了我的项目,从源代码构建了 OpenCV 并启动了 YOLO v3 对象检测。不过,这次我在 Darknet 初始化步骤中发现了一个异常:
net = cv2.dnn.readNetFromDarknet(cfg_path, weights_path)
这也是回溯:
Traceback (most recent call last):
File "/home/username/path_to_app/yolo_object_detection.py",
line 21, in run_detection:
net = cv2.dnn.readNetFromDarknet(cfg_path, weights_path)
cv2.error: OpenCV(4.0.0) /home/username/opencv-
4.0.0/modules/dnn/src/darknet/darknet_io.cpp:690:
error: (-213:The function/feature is not implemented)
Transpose the weights (except for convolutional)
is not implemented in function 'ReadDarknetFromWeightsStream'
这是什么原因,我该如何克服这个异常?
我不太确定,但看起来 yolov3.weights 文件没有正确存储在 Github 上(原因可能超过 100MB)。但是获得不同的权重文件对我有用:
!wget "https://pjreddie.com/media/files/yolov3.weights"
参考: https://colab.research.google.com/drive/1EjN6PrqXABZApL2GmlegOeLhhwmtWrlJ