PhirePhly
PhirePhly

Reputation: 2948

How would you generate default user profile pictures?

I've been admiring StackOverflow's default quilt-like profile pictures (which I notice are also on the Fail Blog) and am curious what program both are using to generate them.

But what I really want to know is: If you were to design the system to create default profile pictures, how would you do it?

I'm looking for ideas on what algorithm you'd use, as well as things like how you would related the image to the user, be it related to their username, or some portrayal of their progress (ie the image gets more complex, or larger, as they gain reputation).

Upvotes: 14

Views: 5276

Answers (7)

PhirePhly
PhirePhly

Reputation: 2948

A very good source of images would be flame fractals. They are rather computationally expensive, so simply sourcing them from a project like electric sheep or having them be rendered by the user's computer should be considered to offload the work.

Who wouldn't want default profile pictures like these?

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

Upvotes: 1

Paige Ruten
Paige Ruten

Reputation: 176743

It's called an Identicon. On Stackoverflow it Gravatar uses your IP address to generate the image.

Upvotes: 12

Adam Pierce
Adam Pierce

Reputation: 34365

I did something similar years back, I used POV-Ray to generate little 3D scenes with torusses (torii ?) and spheres. There were lots of parameters to tweak such as the position, size and colour of each object.

POV-Ray is a scriptable 3D render engine, you can find it here.

Unfortunately my images all looked too similar to each other. I love Gravatar's identicons as uses on this site. I think the symmetry helps and the shapes are unique enough that you can identify users fairly clearly.

Upvotes: 0

John Sheehan
John Sheehan

Reputation: 78132

This is an editorial, not necessarily an answer.

Those auto-generated avatars on this site come from a service (Gravatar) that focuses exclusively on providing avatars and is therefore the core of their business. For apps that aren't specifically intended to generate and display avatars, I would just go with an empty placeholder (like Facebook). It's a neat feature, but is it worth your development time when a simple placeholder would be just as effective?

Upvotes: 3

Kolten
Kolten

Reputation: 3503

I'd use a jpeg server tool (aspjpg or similar) to manipulate the image on load so it displays their badges within their profile pic. In fact, using any tool to dynamically generate images is pretty cool. Applying some sort of 3d or flash technology to dynamically create images using random variables for eye spacing or facial structure would be pretty wicked as well. But ya this is a weird question. hah!

Upvotes: 0

Adam Pierce
Adam Pierce

Reputation: 34365

Use a Julia set or something like that and set the initial conditions to a hash of the user's email address.

Upvotes: 0

Greg Hewgill
Greg Hewgill

Reputation: 993861

FWIW, the default pictures are generated by gravatar, which is why you'll see them on more than this site.

Upvotes: 11

Related Questions