在OpenCV中将图像从Polar逆变换为笛卡尔

时间:2019-03-07 02:43:48

标签: python opencv image-processing opencv4

我想将图像从极坐标转换为笛卡尔坐标。 图像如下所示: Image in polar

变换后的图像的形状应如下所示: Image in cartesian

当我使用OpenCV的warpPolar时,我不知道在哪里以极坐标指定图像的原点。似乎OpenCV假设极坐标图像的原点位于左上角(0,0),而在这种情况下,我希望极坐标图像的中心位于图像的底部中间(行,cols / 2)图片。

img = cv.imread(image_path)
(rows,cols,_) = img.shape
dst = cv.warpPolar(img, (rows, cols), (rows/2, cols/2), 800, flags=(cv.WARP_INVERSE_MAP))

运行这段代码后,我得到了一个奇怪的transformation

此外,我希望图像不会完全变形,因为最终图像应该只是一个圆的一部分,而不是一个完整的圆。

如何根据需要变换图像?

0 个答案:

没有答案