【发布时间】:2014-06-26 20:24:20
【问题描述】:
我试图通过根据缩放值裁剪原始图像的尺寸来放大图像。我的图像是一个 RGBA numpy 数组。为了在 wxPython 中显示它,我将它转换为 wxImage,然后使用 Scale() 函数以 StaticBitmap 的正确大小显示它。问题是,在某些区域(主要是左下角和右上角附近),我的图像看起来像这样(在某些缩放“刻度”处):
而它前面的勾号(较小的缩放)看起来像这样:
如果在 numpy 数组上使用scipy.misc.imresize(),然后将其转换为 wxImage 进行显示,问题就消失了。我宁愿不这样做的原因是速度。它要慢得多,因此变焦感觉不那么流畅。我相当肯定这与Scale() 函数有关,尽管我不确定问题是什么。有什么想法吗?
【问题讨论】:
-
您尝试过 FloatCanvas 吗?它具有内置缩放功能,可能会更好地支持此功能
-
@MikeDriscoll 我刚刚调查了一下。在浏览了一些示例并查看了一些代码之后,不幸的是,我认为这不会很有帮助。我现在缩放的方式允许以更小的增量进行缩放,并且导航更快(使用滑块或鼠标滚轮)。我还需要能够旋转,我不知道整合它需要多长时间。你知道是否可以只使用画布部分并拥有可以与缩放功能接口的我自己的导航?另外,它可以显示二维浮点数组图像(或RGB图像,我可以转换)?
-
我不确定,虽然我认为它可以旋转图像并且它使用 NumPy,所以我认为它会很快。您应该将您的问题重新发布到 wxPython Google 组。他们那边可能有一些好主意。
标签: python image wxpython scipy wxwidgets