我正在使用 CV2 从图像中查找轮廓,然后使用 Shapely 将它们转换为多边形。我目前陷入困境,因为当我尝试将其中一个轮廓数组放入Polygon()Shapely 时,它会引发未指定的错误。
我已经仔细检查过我导入了我需要的所有东西,并且当我手动输入数组坐标点时,创建一个 Shapely 多边形是有效的。
这是代码的问题部分:
contours, hierarchy = cv2.findContours(thresh, cv2.RETR_CCOMP, cv2.CHAIN_APPROX_SIMPLE)
testcontour = contours[1]
ply = Polygon(testcontour)
Run Code Online (Sandbox Code Playgroud)
轮廓列表如下所示:
contours = [np.array([[[700, 700]],
[[700, 899]],
[[899, 899]],
[[899, 700]]]),
np.array([[[774, 775]],
[[775, 774]],
[[824, 774]],
[[825, 775]],
[[825, 824]],
[[824, 825]],
[[775, 825]],
[[774, 824]]]),
np.array([[[200, 200]],
[[200, 399]],
[[399, 399]],
[[399, 200]]]),
np.array([[[274, 275]],
[[275, 274]],
[[324, 274]],
[[325, 275]],
[[325, 324]],
[[324, 325]],
[[275, 325]],
[[274, 324]]])]
Run Code Online (Sandbox Code Playgroud)
我得到的错误是:
---------------------------------------------------------------------------
AssertionError Traceback (most …Run Code Online (Sandbox Code Playgroud)