gpt4 book ai didi

python - 如何有效地将 pandas 数据帧转换为图像数组?

转载 作者:行者123 更新时间:2023-12-01 00:44:31 25 4
gpt4 key购买 nike

我有一个 Pandas 数据框,其中包含 X、Y 和 I 列。X 和 Y 是像素坐标,I 是,比方说,一个介于 0 到 255 之间的强度值,我希望将其显示在相应的 X 和 Y 处位置。

图像的每个像素都没有条目,因此数据帧中未列出的所有像素的 I 值都设置为 0。

因此,我用图像尺寸初始化了一个二维数组img。然后,我已经尝试过类似的事情

img.at[df.X,df.Y] = df.I

这不起作用。我认为一个简单的 for 循环可以解决这个问题,但我想知道是否有更有效的方法来做到这一点(例如调用一个花哨的 numpy/opencv/任何我不知道的函数知道...)。

最佳答案

最简单的方法可能是使用 scipy.sparse 数组,如 coo_matrix与您的输入的构建方式相同。

from scipy.sparse import coo_matrix

sparse_image = coo_matrix((df.I, (df.X, df.Y)), shape = image.shape)
image = sparse_image.todense()
如果在此步骤之前累积您的 I 值,

coo_matrix 还具有一些不错的功能。

关于python - 如何有效地将 pandas 数据帧转换为图像数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57090020/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com