您将如何生成默认用户个人资料图片?

时间:2008-09-23 22:44:52

标签: algorithm identicon

我一直在欣赏StackOverflow的默认被子般的个人资料图片(我注意到它也在Fail Blog上),我很好奇这个程序都用来生成它们。

但我真正想知道的是:如果你要设计系统来创建默认的个人资料图片,你会怎么做?

我正在寻找关于您使用什么算法的想法,以及诸如如何将图像与用户相关联,与用户名相关或对其进度的一些描述(即图像获取更复杂,或更大,因为他们获得声誉)。

8 个答案:

答案 0 :(得分:11)

FWIW,默认图片由gravatar生成,这就是为什么你会在这个网站上看到它们的原因。

答案 1 :(得分:9)

它被称为Identicon在Stackoverflow上 Gravatar 使用您的IP地址生成图像。

答案 2 :(得分:3)

这是一篇社论,不一定是答案。

这个网站上自动生成的头像来自一个专注于提供头像的服务(Gravatar),因此是他们业务的核心。对于不是专门用于生成和显示头像的应用程序,我会选择一个空的占位符(如Facebook)。这是一个简洁的功能,但是当一个简单的占位符同样有效时,是否值得您的开发时间?

答案 3 :(得分:1)

非常好的图像来源是flame fractals。它们的计算成本相当昂贵,因此只需从像electric sheep这样的项目中获取它们或者让它们由用户的计算机渲染它们就应该考虑卸载它们。

谁不想要这样的默认个人资料图片?

alt text http://sheepserver.net/v2d6/gen/202/124809/icon.jpg alt text http://sheepserver.net/v2d6/gen/202/124805/icon.jpg alt text http://sheepserver.net/v2d6/gen/202/125373/i77.jpg alt text http://sheepserver.net/v2d6/gen/202/125431/i116.jpg

答案 4 :(得分:0)

使用Julia集或类似的东西,并将初始条件设置为用户电子邮件地址的哈希值。

答案 5 :(得分:0)

我使用jpeg服务器工具(aspjpg或类似工具)在加载时操纵图像,以便在他们的个人资料图片中显示他们的徽章。 实际上,使用任何工具动态生成图像都非常酷。应用某种3D或闪光技术动态创建图像使用随机变量的眼睛间距或面部结构将是相当邪恶的。 但是,这是一个奇怪的问题。哈!

答案 6 :(得分:0)

我几年前做过类似的事情,我使用POV-Ray生成带有torus(torii?)和球体的小3D场景。有许多参数需要调整,例如每个对象的位置,大小和颜色。

POV-Ray是一个可编写脚本的3D渲染引擎,您可以找到它here

不幸的是,我的图像看起来彼此太相似了。我喜欢Gravatar的识别作为本网站的用途。我认为对称性有所帮助,形状足够独特,您可以非常清楚地识别用户。

答案 7 :(得分:0)

在ruby中有一个库http://github.com/swdyh/quilt来生成它!