python - 在 Linux Angstrom 上使用 Python 显示图像

标签 python image angstrom-linux

我有一个 Python 脚本,可以在禁用 GUI 的情况下在 BeagleBoard 上全屏显示图像。该脚本在板启动时启动。为此,我使用 PyGame,它工作得很好。除某些原因外,图像质量会按比例缩小。因为图像存储在 HQ 中,所以我假设 PyGame 对图像进行了重新采样。我无法找到可以更改的位置,因此我决定替换 PyGame,“仅”显示图像似乎也有点过分。

我有下面的代码来显示图像。根据文档,默认图像查看器将显示图像。 (这应该是XV)。但是,一旦我运行下面的代码(其中图像是文件路径),我就会得到“sh:xv:找不到”。

from PIL import Image
im = Image.open(image)
im.show()

所以我尝试安装 XV 软件包,但找不到如何为 Angstrom 安装它。

我的问题可能是“如何使用 Python 全屏显示图像?” (答案应该是上面的代码)。或者问题是“如何在 Angstrom 上安装 XV?” (opkg install的包名是什么)

我进行了搜索,但没有找到有效的东西...

最佳答案

Image.show() PIL 更适合调试而不是实际的生产使用。它被硬编码为调用 xv <temp-image-file-pil-creates> 。您可以解决这个问题(创建一个名为 xv 的符号链接(symbolic link),它将调用其他一些图像查看器),但这仍然是一个相当糟糕的方法。

我对 BeagleBoard 的了解不够,无法告诉您全屏显示图像的最佳/规范方式,但如果您使用 PyGame 做到了一半,也许您可​​以发布您的代码,社区可以帮助您修复质量问题。

如果图像缩小以适应屏幕,您可以考虑使用 transform.smoothscale手动缩放图像(以避免质量下降)。

关于python - 在 Linux Angstrom 上使用 Python 显示图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12912883/

相关文章:

c# - 如何正确读取图像文件?

angstrom-linux - 未从 opkg 接收详细输出

java - 并行/并发加载 AWT-Image,然后替换占位符图像

image - 如何通过单击主图像打开 fotorama 全屏模式?

linux - 在 Angstrom Linux 上自动登录

linux - Poll() 以监视 BeagleBone Black 上的引脚。即使未连接引脚也能连续输出。

python - Python 中的变量复制究竟是如何工作的?

python - 与python一起使用的时间序列数据库

python - 如何应用 re.sub() 但有异常(exception)

python - 当图像是表格时,是否可以更改图像的部分背景颜色?