命令行的图像查看器
vimg的Python项目详细描述
作者:Johannes Hansen
为什么?
如果你像我一样,你会花很多时间在命令行环境中。其中一件事 在这样的环境下很难处理的就是图像。
这个小工具旨在允许在命令行中快速查看图像文件。
图像使用背景色、前景色和Unicode字符的组合进行渲染 使每个字符单元以最佳方式表示原始像素。挑战是有限的 256色调色板。
在最简单的情况下,每个字符单元代表一个像素。然而,决议可以是 通过打印更好地捕获图像结构的Unicode字符而增加。 或者,可以通过在前景中混合两种可用颜色来提高颜色精度。 背景,从而失去获得的分辨率。
默认模式尝试通过优化高分辨率区域的分辨率来优化渲染 细节,并优化低细节区域的颜色精度。
安装
$ pip install vimg
要求
一种支持256色的终端。
脚本基于python的curses和opencv。
用法
$ vimg path/to/image
图形用户界面模式
进入图形用户界面后,您可以在不同的查看模式之间进行切换:
Key shortcut | Mode | Description |
---|---|---|
^{tt3}$ | color | (default) display optimal representation of image |
^{tt4}$ | fast | display image in fast mode (reduced resolution) |
^{tt5}$ | ascii | display a black-and-white representation of the image |
^{tt6}$ | edge | (experimental) edge detection based rendering |
^{tt7}$/^{tt8}$ | – | zoom in/out (by 30%) |
^{tt9}$ ^{tt10}$ ^{tt11}$ ^{tt12}$ or arrow keys | – | move view (by 10%) |
^{tt13}$ | – | reset zoom |
^{tt14}$ | – | refresh the screen |
^{tt15}$ | – | quit |
注释
如果使用正确显示Unicode块元素字符的字体,结果会更好 具有全行高度,如Dejavu Sans。
限制
该脚本当前仅支持opencv(.jpg本机支持的图像文件, .png,.bmp)。
待办事项
未来的计划包括:
- 支持更多图像文件类型,例如.gif
- 边缘检测模式的改进
- 使opencv依赖项成为可选的
- 改善对比度丰富的边缘处的颜色渐变