版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
出错背景
- 使用的是python-opencv
在调用cv2.minAreaRect()
时候,出现了如下错误:
cv2.error: OpenCV(4.1.1) C:\projects\opencv-python\opencv\modules\imgproc\src\convhull.cpp:137: error:(-215:Assertion failed) total >= 0 && (depth == CV_32F || depth == CV_32S) in function 'cv::convexHull'
出错原因和分析
- 刚开始查找网上的资料,有的说opencv版本不对,但是貌似并非这个原因
- 后来发现问题的关键在于
depth == CV_32F || depth == CV_32S
这里出了错 - 因此。解决方案是:
对向minAreaRect传递的list里的每个数x,使用numpy.float32(x)
转化,就可以完美解决这个问题了!