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

如何使用ImageMagick将图像转像素十六进制文本再还原为图像

需求实现方案

1. 提取像素坐标与十六进制颜色生成单行文本

直接对convert命令的输出做管道处理,组合awk工具即可完成提取,完整命令如下:

convert myimage.png txt: | awk -F '[: ]+' '{printf "%s,%s ", $1, $3}' > pixel.txt

命令说明:

  • awk以冒号、空格作为分隔符,直接取第1段(坐标值,如7,20)和第3段(十六进制颜色值,如#C8FBFBFF),拼接为要求的格式输出
  • 通过printf加空格分隔,最终输出为无换行的单行内容存入pixel.txt,和你需要的格式完全匹配。

2. 从像素文本文件还原为图像

没有直接兼容你自定义格式的convert pixel.txt image.png命令,你需要先将自定义格式转换为ImageMagick可识别的标准像素文本格式,再生成图像,步骤如下:

  1. 先获取原图宽高,执行命令:identify -format "%w %h" myimage.png,记返回的两个数值为W(宽)、H(高)
  2. 转换为标准像素格式文件:
# 先写入头信息
echo "# ImageMagick pixel enumeration: W,H,255,srgba" > standard_pixel.txt
# 替换上面命令里的W、H为你查到的实际数值,再执行下面的内容转换命令
cat pixel.txt | tr ' ' '\n' | awk -F ',' '{print $1","$2": (" strtonum("0x"substr($3,2,2)) "," strtonum("0x"substr($3,4,2)) "," strtonum("0x"substr($3,6,2)) "," strtonum("0x"substr($3,8,2))/255 ") " $3}' >> standard_pixel.txt
  1. 执行标准convert命令生成图片:
convert standard_pixel.txt output.png

如果不想手动处理格式,也可以用简单的Python脚本读取像素文件逐点绘图,生成图片的逻辑更可控。

内容的提问来源于stack exchange,提问作者Jiro Saito

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 06:48:03