我正在编写一个wxpython小部件,它会显示多个对象随时间的变化状态(x个周期)。现在我让它以1像素/周期工作并放大和缩小到1:1;但我想允许缩小。在我开始使用自己的微弱启发式方法开始自己编辑之前,我想看看是否存在任何用于丢弃/组合数据的算法。有没有这样的算法,或者我应该开始编写自己的解决方案?
答案 0 :(得分:0)
很大程度上取决于您要调整大小的图像类型。我们自己的Jeff见The myth of infinite detail: Bilinear vs. Bicubic和Better Image Resizing!在那里,您可以比较幼稚最近邻居,bilinear filtering,bicubic filtering,bicubic sharper和genuine fractals的结果。
杰夫的结论:
缩小图像是完全安全的 合理运作。你很简单 降低精度和分辨率 丢弃信息。制作图像 尽可能小,你有 完全保真 - 在界限内 你有多少像素 一个> llowed。你会得到很好的结果没有 你选择哪种算法。 (好吧,除非你选择中殿Pixel 调整大小或最近邻 算法。)
放大图像存在风险。超越 某点,放大图像是一个 傻瓜的差事;你不能神奇地 S取代; ynthesize无数新的 凭空而出的像素。和 内插像素永远不会那么好 作为真实像素。这就是为什么它更多 而不是一点点人工的增长 512x512 Lena图像按500%计算。它会 更聪明地找到更高的分辨率 扫描或图片所需的一切* 而不是将它扩大 软件
但是当你无法避免扩大 图像,那是什么时候才知道 双线性,双线性,双线性之间的权衡 以及更高级的调整大小算法。 至少武装自己 知识挑选最好的坏 你有的选择。