gpt4 book ai didi

imagemagick - gravatar 如何自动调整图像中的颜色?

转载 作者:行者123 更新时间:2023-12-04 12:41:07 26 4
gpt4 key购买 nike

我决定我想把我的头像变成圆形。我在我的博客上使用 css 将它循环,并且更喜欢这种效果,所以决定使用一些 imagemagick 为我的图像提供一个圆形的 alpha channel (这样我也可以在 SO 上使用它,等等)。几个快速命令之后我被排序:

# crop to square 422x422 with 0x0 offset
convert mike_gravatar.jpeg -crop 422x422+0+0 mike_gravatar_square.jpeg
# give circular alpha channel around it NOTE this is for a 422x422 image (note the 211x211)
convert mike_gravatar_square.jpeg \( +clone -threshold -1 -negate -fill white -draw "circle 211,211,211,0" \) -alpha off -compose copy_opacity -composite mike_gravatar_circle.png

太棒了,现在我们只需将它上传到 gravatar,我就会有一个漂亮的圆形裁剪图像,一切都会好起来的。

正如您可能从问题中猜到的那样,一切都不好:

darkened gravatar image

好吧,我一定已经清楚地搞砸了我的 imagemagick 并且没有检查前后图像是否相同,重新打开彼此相邻的图像,看看它们确实是一样的。我尝试再次上传到 gravatar 并注意到它们似乎在“裁剪”阶段之后处理图像,这是文件上传后(在裁剪弄乱之前)在浏览器中的样子:

working gravatar picture

好吧,让我们挖掘一下,之前肯定有人偶然发现过这个,所以我四处看看 one lone soul in a desolate forum wasteland cries out .现在对此没有任何回应,但相关文字在这里:

It seems that if a photo or picture uploaded to Gravatar's cropper doesn't have jet black, it will auto-level the nearest grey to black and darken the whole image, including darkening whites into greys. Can confirm that this occurs with any PNG image that has a grey background or has a large enough proportion of it, whether or not it has 255 whites and regardless if it has alpha-blending or not



所以看起来我可以通过放入一个黑色像素来解决这个问题,这听起来不错,所以我尝试添加一个黑色像素,然后添加一个黑色和一个白色像素,结果:

goddammit gravatar

所以基本上现在我没有想法了:
  • 有没有人知道后处理 gravatar 是做什么的,所以我可以撤消它或通过预处理抵消它的影响?
  • 这个“功能”是否记录在任何地方,或者可以关闭或绕过?

  • 我认为预处理图像以抵消他们对它所做的变暗会很酷,但这需要确切地知道他们做了什么以改变事物并且显然可能是不可能的(取决于每种颜色的相对运动,我想)

    编辑:

    我尝试制作一个逆向图像,看看它是基于平均值还是极值进行处理,并且它也变暗了,似乎它更有可能是平均值:

    darkened inverse circle

    最佳答案

    好吧,我有一个“对我有用”的解决方案,不幸的是它只是经验性的并且“足够好”(我很想检查实际发生的事情,但不幸的是没有更多时间投入到成为 nerd sniped )我将发布我做了什么,我认为可能发生了什么,以及如果有人有足够的时间,我认为应该如何解决这个问题。

    首先我所做的,我只是尝试通过随机数量对图像进行白化,最终工作的是 2 左右的 Gamma

    convert mike_gravatar_circle.png -gamma 2 mike_gravatar_circle_light_2.png

    这是gravatar处理之前和之后的图片:

    gravatar pic before processing gravatar pic after processing

    我觉得我需要像在左边那样破坏我的照片以使其看起来正常,这很荒谬,所以我将这个问题保持开放,看看是否有人可以向我展示一个更好/更干净的方法来做到这一点。

    编辑:忘了提及我的(完全没有根据的)关于如何解决这个问题的猜测。所以我的猜测是,gravatar 可能会尝试使图像的平均颜色成为某种类型的中值(因为这可能看起来很合理......我猜,我不知道)并将 alpha 视为全白。尝试一些实验来确定可能很有趣,但前提是他们有一个 api 来自动上传和下载图像,否则这将是痛苦的努力,我期待任何关于人们认为正在发生的事情的建议。

    关于imagemagick - gravatar 如何自动调整图像中的颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24130724/

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