Ever find yourself glancing at your desktop looking for a shortcut for more than a few seconds ?
People will sometimes choose beautiful pictures that aren’t fit to be a wallpaper. The heart of the problem tends to be the lack of contrast between your icon/s and the wallpaper it’s sitting on. That’s why an Icon can lurk in some dark/bright corner of the screen and almost get swallowed by the beautiful wallpaper you chose to put there.
For once I had enough with that I decided to write a small program that will find your icons and make sure they don’t blend in with your desktop, all this in an elegant way ofcourse as I’m a design/elegance freak.
I know I could have taken the icon-positions from the desktops Image-List, but that’s just too easy I wanted to try out some image-processing, so here’s what I did :
- Take a clear screen-shot of the desktop.
- Calc the |difference| between this and the user’s wallpaper. (so logically the icons should stand out).
- Remove all the noise, as in take only the big differences.
- Run a Maximum-Filter, this will expand that area consumed by the icons.
- Divide into a grid, then try to Flood-Fill each point in the grid to find the areas from the previous step, then bound these areas with nice rectangles.
- Give these rectangles round-corners, a border, and make them semi-transparent.
- Blend back with the Original Wallpaper, and there we go.
Use the navigation buttons at the lower-left corner of the slideshow |
I used the Corona Library for loading/saving images.
And I decided to start using the GPL for source-code I release, so here we go.
Note: The program currently works with ‘Stretched Wallpapers‘ only, changes will be pleasantly accepted.
Download: Source, Binary.
Check out this desktop
http://www.flickr.com/photos/w00kie/sets/180637/
I’m sure they can use your software : )
Ohad, can you please tell me how you put the chart of visitors in your blog?
Contact me at ce0trix [at] gmail.com
Thanks.
P.S.
Very nice blog, and a very nice program as well…