如何在SO上生成用户ID图像?

时间:2008-09-19 13:43:32

标签: image-processing image-manipulation identicon

我对这个网站上与每个用户相关的可爱小万花筒图像有点好奇。 这些是如何产生的?可能性是:

  1. 某个文件夹中已存在图像列表,随机选择。
  2. 只要用户注册,就会生成图像。
  3. 无论如何,我更感兴趣的是使用什么样的算法来生成这样的图像。

6 个答案:

答案 0 :(得分:12)

它被称为Identicon。如果您输入并通过电子邮件发送,则它基于您的电子邮件地址的哈希值。如果您没有输入电子邮件,则它取决于您的IP地址。

Jeff posted some .NET code生成基于IP的Identicons。

答案 1 :(得分:5)

它通常是通过用户名,电子邮件地址或IP地址的哈希生成的。

Stackoverflow使用Gravatar来生成图像。

据我所知,这个想法来自Don Parks,他撰写了关于他使用的技术的文章。

答案 2 :(得分:1)

IIRC,它是从IP地址生成的。

“IP Hashing”我相信它被称为。

我记得在博客上阅读过它;他让代码可供下载。然而,我不知道它是从哪里来的。 :(

答案 3 :(得分:1)

图像由Gravatar制作,其详细信息为outlined here,但是,他们并没有透露他们是如何做到的。

答案 4 :(得分:0)

我认为图像是4×4网格,上部2×2网格顺时针重复4次,每次旋转90度,再次顺时针旋转。似乎两种颜色是随机选择的,每个1×1块都是从预定义的集合中选择的。

编辑:显然我的答案是临时的。很高兴知道同志。

试试这个:http://www.docuverse.com/blog/9block?code=(32-bit整数)8& size =(16 | 32 | 64)

用括号中的相应数字代替。

答案 5 :(得分:0)

我敢打赌,每张小瓷砖图片都会给出一组看起来不错的其他瓷砖图片。考虑将图块作为节点的图形。您为角落选择一个随机节点,并与合作伙伴填充相邻的点,然后旋转它并应用相同的模式四次。然后选择一种颜色。

它也可以是方形矩阵,而不是图形,其中每行代表一个图像,每列代表一个图像,单元格值是权重。