gpt4 book ai didi

regex - 从识别命令解析图像大小

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:21:16 26 4
gpt4 key购买 nike

使用 identify 命令我得到了一些关于图像的信息,它看起来像这样

my_image.png PNG 154x78 154x78+0+0 8-bit DirectClass 946B 0.000u 0:00.000

图像大小为 154x78

但我不知道如何将这些值放入变量中

w=154 #But I want this 154 to be somehow parsed...
h=78

请注意,此解析脚本适用于所有类型的图像,而不仅仅是 .png 扩展名

另外,如果可能的话,我想知道这一行 154x78+0+0 中的 0+0 是什么

谢谢

最佳答案

这是一个很难编写正则表达式的情况,因为我们不知道文件名是否包含空格或是否有扩展名。使用 format 会更容易切换为 identify :

identify -format '%w' filename.jpg
3360
identify -format '%h' filename.jpg
1080

在 bash 中,你会写:

W=`identify -format '%w' filename.jpg`
H=`identify -format '%h' filename.jpg`

+0+0是图像的偏移量+0+0 just 表示从 0 开始在 x 上轴,和 0y 上轴。您可以阅读更多 in the imagemagick manual .

由 Mark Setchell 编辑

前面的答案非常好,我不想添加竞争性答案,只是澄清一下,或者小的改进,这对评论来说太大了......

由于 OP 正在使用 bash ,他可以一次性获取宽高,不需要多次打开图片,像这样:

read w h < <(identify -format "%w %h" filename.jpg)

连同其他任何东西,例如色彩空间和独特颜色的数量:

read w h c u < <(identify -format "%w %h %[colorspace] %k" filename.jpg)

关于regex - 从识别命令解析图像大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9207965/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com