车牌检测识别过程中遇到如下图的错误:
报错:cv2.error: OpenCV(4.1.2) /io/opencv/modules/imgproc/src/resize.cpp:3720: error: (-215:Assertion failed) !ssize.empty() in function ‘resize’
程序开始正常运行,检测视频过程中突然报错。在网上查询相关问题大多数都说是:
- 路径问题(路径错误或含有中文)
- 格式、数量不对
分析:视频路径、格式等都应该没有问题,因为程序是在检测视频的过程中报错,报错的之前的检测视频结果都能够正常保存,所以应该是视频的某种原因导致程序中断,最后经过查找发现可能是因为视频的帧数不同导致或者获取的frame为空。
解决方法:
原代码:
if plate.shape[0] > 36:
plate = cv2.resize(image_sub, (136, 36 * 2))
else:
plate = cv2.resize(image_sub, (136, 36))
修改后代码:
try:
if plate.shape[0] > 36:
plate = cv2.resize(image_sub, (136, 36 * 2))
else:
plate = cv2.resize(image_sub, (136, 36))
except:
break
成功解决: