python OpenCV保存图片error: (-215:Assertion failed) !_img.empty()

错误详细描述

在使用OpenCV的imwrite函数保存图片的时候报cv2.error: OpenCV(4.2.0) C:\projects\opencv-python\opencv\modules\imgcodecs\src\loadsave.cpp:715: error: (-215:Assertion failed) !_img.empty() in function ‘cv::imwrite’

错误原因分析

使用clip来切分图片,代码如下

clip_img = img[top:(top+height),left:(left+width),:]

解决办法

img不为None,通过clip_img is None并不能判断,可以通过size属性进行判断,代码如下

if clip_img.size ==  0:#对于这种情况就不要用imwriter

除了不处理之外,还有一种解决办法,检查分割的行和列的数值是否合法,合法条件:

  • 分割的最小值不能小于0
  • 分割的最大值不能大于图片的宽和高
  • 分割的最大值要大于分割的最小值

你可能感兴趣的:(opencv修炼之路)