You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用jbig2enc编码图片无输出文件问题求助

解决jbig2enc执行后无输出文件及压缩验证问题

问题原因排查

你遇到的找不到gt和original.jb2命令错误,大概率是实际输入的命令存在拼写/格式错误——比如误将重定向符号>写成了管道符|,或者额外输入了不存在的gt命令(比如输入成jbig2 -s original.jpg | gt original.jb2),导致shell把gt和original.jb2当作待执行的命令,自然找不到。

正确执行步骤

  1. 确认并修正命令
    确保执行的是标准重定向命令,不要添加多余字符:

    jbig2 -s original.jpg > original.jb2
    

    若不确定之前的命令,可通过history | grep jbig2查看shell历史记录,排查输入错误。

  2. 验证压缩是否成功

    • 命令执行后,用ls -l查看当前目录,确认是否生成original.jb2文件;
    • 若仍无文件,尝试将标准错误输出也重定向到文件,排查执行细节:
      jbig2 -s original.jpg > original.jb2 2>&1
      
      打开生成的original.jb2查看内容,如果是正常的JBIG2二进制数据则没问题,若为错误信息则根据提示调整(比如原图片是彩色图,需先转成灰度二值图);
    • 补充:JBIG2是针对二值(黑白)图像的压缩算法,若原original.jpg是彩色图,建议先转成灰度图再处理:
      # 需要先通过Macports安装imagemagick
      convert original.jpg -colorspace gray -threshold 50% original_binary.png
      jbig2 -s original_binary.png > original.jb2
      
  3. 计算压缩比
    成功生成original.jb2后,用以下命令获取文件大小并计算:

    # 获取原始文件和压缩后文件的字节数
    original_size=$(stat -f "%z" original.jpg)
    compressed_size=$(stat -f "%z" original.jb2)
    # 计算压缩比(保留两位小数)
    compression_ratio=$(echo "scale=2; $original_size / $compressed_size" | bc)
    echo "压缩比: $compression_ratio:1"
    

    也可以用du -h直观查看文件大小:

    du -h original.jpg original.jb2
    

内容的提问来源于stack exchange,提问作者Sahil Sharma

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 12:40:36