笛卡尔图像到极坐标

时间:2019-05-02 13:46:29

标签: python image polar-coordinates

我知道这个问题已经回答了很多次,但是我不知道我在做什么是好事还是坏事。

我得到了一个带有缺陷位置和图像ID的文件。图片尺寸为96 * 96。起源是(48,48)

imgID  X        Y
1      5        6
1      87       76
2      45       23

由此我计算出R和T

x,y = df.X-48,df.Y-48
r = np.sqrt(x**2+y**2)
t = np.arctan2(y,x)
df["r"]=r
df["t"]=t

然后我为每个图像创建尺寸为96 * 96的空矩阵,并为图像1(例如)在每个坐标(R,T)处分配值0

当我绘制矩阵时,我的结果很奇怪。我错过了重要的东西吗?

1 个答案:

答案 0 :(得分:0)

不确定是否坚持使用Python解决方案,还是只想完成工作。如果是前者,请无视我,我的答案将跌入谷底。如果是后者,则可以使用 ImageMagick 来实现,该工具已安装在大多数Linux发行版中,并且可用于macOS和Windows。

因此,从此colorwheel.png开始:

enter image description here

只需在终端中使用以下命令,或者在Windows上使用命令提示符:

magick colorwheel.png -distort depolar 0 result.png

enter image description here

有点“偏离” ,因为我的输入图像不完全是正方形或居中,但是您知道了:-)

-distort depolar替换为-distort polar进行逆变换。

对于v7之前的版本,在上述命令中将magick替换为convert