tweesaic, My Mix10k Submission
2010-2-1
Last year I was very excited to see Microsoft's Mix 10k coding challenge but because of time constraints I wasn't able to finish an entry before the deadline. This year was threatening to do the same, but I managed to come down with a cold, work for 20 hours and squeak it in before the deadline.
So without further ado I present tweesaic, which (to my knowledge) is the first fully online photo mosaic creator. To use it, paste in an image you want generated and tweesaic will search twitter for tweets related to the 10k challenge, analyze the profile pictures associated with each tweet, and create a photo mosaic.
Here are some samples I've created with tweesaic:
My initial working version was 80k, so I was a little nervous about getting it down to size. The first four-fold reduction came easily, but getting it from 20k down to 10 was brutal. There were a couple a couple features that didn't make the cut:
- Doing image processing on a BackgroundWorker thread
- Saving a generated image, transitions and animations
- Error messaging was drastically reduced
- Buttons! (use the tab key instead)
The last is possibly the most painful omission; I had to remove the Xaml for submitting search terms and image urls. The workaround is to use the tab button to submit new search terms via the LostFocus event on each TextBox. I'm wondering if it would have been smarter to remove the logo and background gradients instead.
There are some features that I'm really glad I was able to keep in like using isolated storage for caching image data. That means mosaics will be generated faster the more you use the tool. I also like having the preview image up in the toolbar to let you compare how the mosaic looks versus the source image. The file upload feature is a convenient way to upload your own photos without hosting them (or to get around some sites which don't provide a cross domain policy).
Unfortunately, there are some bugs too. You can only upload ".jpg" images into the app, so you will have to rename any ".jpeg" extensions for them to work. Png image uploads work as expected. Also there is a bug in the image processing algorithm where an image with a high alpha component may get a higher match rating than a low alpha component. This will manifest itself on some dark regions that look unnaturally light because of the white background.
Play around with it and let me know what you think. To start, here are some images that you can copy paste into the url bar:



Special thanks to Nick Thiel for helping with the logo.
Comments
Add a comment here. Comments are moderated, your comment will appear within a few hours.




Test comment (http://peterbrady.netasfeas)
afesafe