为大图像替换 cv2.warpPerspective
Replace cv2.warpPerspective for big images
我使用 python OpenCV 配准图像,找到单应矩阵 H
后,我使用 cv2.warpPerspective
计算最终的转换。
但是,为了性能目的,cv2.warpPerspective
似乎仅限于 short
编码,see here。我没有测试,确实图像尺寸的限制是 32767 像素所以 2^15,这与其他讨论中给出的解释是有道理的。
是否有 cv2.warpPerspective
的替代方案?我已经有了单应矩阵,我只需要做变换就可以了。
查看替代库后,有一个使用 skimage
的解决方案。
如果H
是单应矩阵,这个OpenCV代码:
warped_img = cv2.warpPerspective(image, H, (width, height))
变为:
warped_imgnew = skimage.transform.warp(image, numpy(H), output_shape=(height, width)) * 255.0
我使用 python OpenCV 配准图像,找到单应矩阵 H
后,我使用 cv2.warpPerspective
计算最终的转换。
但是,为了性能目的,cv2.warpPerspective
似乎仅限于 short
编码,see here。我没有测试,确实图像尺寸的限制是 32767 像素所以 2^15,这与其他讨论中给出的解释是有道理的。
是否有 cv2.warpPerspective
的替代方案?我已经有了单应矩阵,我只需要做变换就可以了。
查看替代库后,有一个使用 skimage
的解决方案。
如果H
是单应矩阵,这个OpenCV代码:
warped_img = cv2.warpPerspective(image, H, (width, height))
变为:
warped_imgnew = skimage.transform.warp(image, numpy(H), output_shape=(height, width)) * 255.0