imgp 是一个用于JPEG和PNG图像的命令行图像调整器和旋转器。它可以一次性调整(或缩略)和旋转数千张图像的大小,速度快如闪电,同时显著节省存储空间。
由多进程处理、SIMD并行(得益于Pillow-SIMD库)、智能自适应算法、递归操作、shell完成脚本、EXIF保留(等等)驱动,imgp是一个非常灵活的实用工具,具有详细记录的易用选项。
imgp旨在成为Nautilus图像转换器扩展的更强大替代品,不依赖于任何文件管理器,而且速度更快。在不集成Nautilus的桌面环境(如Xfce或LxQt)中,imgp将成为你的得力助手。文件管理器nnn提供了一个脚本,可以使用imgp批量调整图像大小。
例如,如果一个图像的分辨率为2048x1365,正在调整为1366x768:
imgp能够在约8分钟内调整8823张混合分辨率(从高到普通)的图像(约4.5GB大小)的大小,这些图像存储在USB 2.0外部硬盘中,调整后的自适应分辨率为1366x1000。最终大小为897MB(约20%)。
imgp使用Python PIL/Pillow库。Nautilus图像转换器调用ImageMagick的convert工具。有关比较基准,请参阅这里。
imgp需要Python 3.8或更高版本。
要在Ubuntu上安装PIL库,运行:
sudo apt-get install python3-pil
或者,使用pip3:
sudo pip3 install pillow
在SIMD处理器上,可以用pillow-simd替换pillow。
从你的包管理器安装imgp。如果可用版本较旧,请尝试其他安装方法。
最新稳定版本提供了Arch Linux、CentOS、Debian、Fedora、openSUSE Leap和Ubuntu的软件包。
如果你已安装git,克隆此仓库。否则下载最新稳定版本或开发版本(风险)。
安装到默认位置(/usr/local):
sudo make install
要卸载,运行:
sudo make uninstall
支持PREFIX,以防你想安装到不同的位置。
imgp是一个独立的工具。从包含目录运行:
./imgp
Bash、Fish和Zsh的Shell补全脚本可以在auto-completion/的相应子目录中找到。请参阅你的Shell手册以获取安装说明。
用法: imgp [-h] [-x res] [-o deg] [-a] [-c] [-e] [-f] [-H] [-i] [-k] [-m] [-M res]
[-n] [-N] [-O] [-P] [-q N] [-r] [-s byte] [-w] [-d] [路径 [路径 ...]]
调整 JPEG 和 PNG 图像的大小和旋转角度。
位置参数:
路径 源文件或目录 [默认: 当前目录]
可选参数:
-h, --help 显示此帮助信息并退出
-x res, --res res 输出分辨率,格式为 宽x高 或百分比
-o deg, --rotate deg 顺时针旋转角度(度)
-a, --adapt 根据方向自适应分辨率 [默认: 关闭]
-c, --convert 将 PNG 转换为 JPG 格式 [默认: 关闭]
-e, --eraseexif 删除 exif 元数据 [默认: 关闭]
-f, --force 强制调整到指定的精确分辨率 [默认: 关闭]
-H, --hidden 包含隐藏(点)文件 [默认: 关闭]
-i, --includeimgp 重新处理 _IMGP 文件。* 风险:请参阅文档
-k, --keep 跳过(遵循 -c 或 --pr)与指定的宽或高或 --res=100 匹配的图像 [默认: 关闭]
-m, --mute 静默操作 [默认: 提供信息]
-M res, --minres res 最小分辨率,格式为 宽x高 或 --res 的百分比
-n, --enlarge 放大较小的图像 [默认: 关闭]
-N, --nearest 对 PNG 使用最近邻插值 [默认: 抗锯齿]
-O, --optimize 优化输出图像 [默认: 关闭]
-P, --progressive 将 JPEG 图像保存为渐进式 [默认: 关闭]
-q N, --quality N 质量因子(N=1-95,仅适用于 JPEG) [默认: 75]
-r, --recurse 递归处理非符号链接目录 [默认: 关闭]
-s byte, --size byte 处理图像的最小大小 [默认: 1024]
-w, --overwrite 覆盖源图像 [默认: 关闭]
-d, --debug 启用调试日志 [默认: 关闭]
操作说明
路径,则处理当前目录。--overwrite 选项,输出图像名称将附加 _IMGP。默认情况下不处理 _IMGP 文件。在使用 --overwrite 选项时这样做可能会导致潜在的竞态条件。--convert)。请单独运行 imgp --convert (*.png) 来转换这些文件。--optimize 和 --eraseexif 选项。--optimize 选项速度较慢,编码器会对图像进行额外的处理以选择最佳编码设置。示例
转换一些图像和目录:
$ imgp -x 1366x768 ~/ ~/Pictures/image3.png ~/Downloads/
/home/testuser/image1.png
3840x2160 -> 1365x768
11104999 字节 -> 1486426 字节
/home/testuser/image2.jpg
2048x1365 -> 1152x768
224642 字节 -> 31421 字节
/home/testuser/Pictures/image3.png
1920x1080 -> 1365x768
2811155 字节 -> 1657474 字节
/home/testuser/Downloads/image4
2048x1365 -> 1152x768
224642 字节 -> 31421 字节
将图像缩放到 75% 并覆盖源图像:
$ imgp -x 75 -w ~/image.jpg
/home/testuser/image.jpg
1366x767 -> 1025x575
120968 字节 -> 45040 字节
将图像顺时针旋转 90 度:
$ imgp -o 90 ~/image.jpg
120968 字节 -> 72038 字节
将当前目录中的图像调整为 1366x1000 分辨率。递归访问所有目录,覆盖源图像,忽略宽度或高度匹配的图像,但将 PNG 图像转换为 JPEG。
$ imgp -x 1366x1000 -wrack
设置 宽度为 800,并保持比例调整高度。
$ imgp -x 800x0
未指定源。正在处理当前目录...
./image1.jpg
1366x911 -> 800x534
69022 字节 -> 35123 字节
./image2.jpg
1050x1400 -> 800x1067
458092 字节 -> 78089 字节
仅处理大于 50KiB 的图像:
$ imgp -wrackx 1366x1000 -s 51200
为当前目录中最近修改的文件生成 64px 自适应缩略图:
#!/usr/bin/env sh
thumb64 ()
{
pop=$(ls -1t | head -1)
imgp -acx 64x64 "$pop"
}
开发者


AI一键生成PPT,就用博思AIPPT!
博思AIPPT,新一代的AI生成PPT平台,支持智能生成PPT、AI美化PPT、文本&链接生成PPT、导入Word/PDF/Markdown文档生成PPT等,内置海量精美PPT模板,涵盖商务、教育、科技等不同风格,同时针对每个页面提供多种版式,一键自适应切换,完美适配各种办公场景。


AI赋能电商视觉革命,一站式智能商拍平台
潮际好麦深耕服装行业,是国内AI试衣效果最好的软件。使用先进AIGC能力为电商卖家批量提供优质的、低成本的商拍图。合作品牌有Shein、Lazada、安踏、百丽等65个国内外头部品牌,以及国内10万+淘宝、天猫、京东等主流平台的品牌商家,为卖家节省将近85%的出图成本,提升约3倍出图效率,让品牌能够快速上架。


企业专属的AI法律顾问
iTerms是法大大集团旗下法律子品牌,基于最先进的大语言模型(LLM)、专业的法律知识库和强大的智能体架构,帮助企业扫清合规障碍,筑牢风控防线,成为您企业专属的AI法律顾问。


稳定高效的流量提升解决方案,助力品牌曝光
稳定高效的流量提升解决方案,助力品牌曝光


最新版Sora2模型免费使用,一键生成无水印视频
最新版Sora2模型免费使用,一键生成无水印视频


实时语音翻译/同声传译工具
Transly是一个多场景的AI大语言模型驱动的同声传译、专业翻译助手,它拥有超精准的音频识别翻译能力,几乎零延迟的使用体验和支持多国语言可以让你带它走遍全球,无论你是留学生、商务人士、韩剧美剧爱好者,还是出国游玩、多国会议、跨国追星等等,都可以满足你所有需要同传的场景需求,线上线下通用,扫除语言障碍,让全世界的语言交流不再有国界。


选题、配图、成文,一站式创作,让内容运营更高效
讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。


AI辅助编程,代码自动修复
Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

