gpt4 book ai didi

python - 尝试在 C++ 中重现 PIL 调整大小图像的输出

转载 作者:行者123 更新时间:2023-12-04 14:00:54 25 4
gpt4 key购买 nike

我目前正在使用 python 调整 PIL 图像的大小

resized_image = pil_image.resize((128, 128), resample=Image.BILINEAR)

我想使用 C++ 调整相同图像的大小并使输出与 python 版本相同。我曾尝试使用这样的 opencvs resize 函数
cv::GpuMat::src;
cv::GpuMat::dst;
cv::cuda::resize(src, dst, cv::Size(128, 128), NULL, NULL, cv::INTER_LINEAR);

但是,如果我将两个图像都写入文件并检查它们,我会发现调整大小后的图像的 Python 版本明显更加模糊。

我正在寻找在 C++ 中忠实地重现调整大小的 python 图像的方法,但我不确定最好的方法是什么。首先,我真的不明白为什么输出会有差异,他们使用相同的双线性下采样。

我尝试检查 https://github.com/python-pillow/Pillow/blob/master/PIL/Image.py 中的代码, 看看它是否在调用 c-lib。但老实说,我什至不明白这种调整大小的方法是如何工作的。看起来它只是在最后调用自己而不做任何调整大小的工作。

最佳答案

在 GitHub 上,您可以在存储库 https://github.com/zurutech/pillow-resize 中找到在 C++ 中调整 Pillow 大小的代码。 .
已从 Pillow 的源代码中提取相关部分获得代码,
免责声明:该库由我在 Zuru Tech 的团队开发。

关于python - 尝试在 C++ 中重现 PIL 调整大小图像的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45799559/

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