Monday, December 8, 2014

The trials and tribulations of a hobbyist programmer

Hi all,

I know, I know, long time no see... I've been pretty busy lately and could not devote as much time as I would like to FotoSketcher. Such is the plight of the hobbyist programmer ;-)
At least, I am not alone as I have recently learnt that I am part of a large group of 7.5 million developpers worldwide (cf.

As for FotoSketcher, I still find time to do some research, think up new ideas, test new algorithms. Once in a while an idea is not too shaky and its translation into code within my capacity as a developper. That's when you see a new effect in FotoSketcher!

But that is just the tip of the iceberg. In the last couple of months alone, I have tested, refined and discarded new algorithms, which simply did not hold up to my expectations. But that's OK. It is part of the fun and a failed idea often sends me on a completely different route, which might lead to a nice new effect.

I'm currently working on some realistic brush strokes to better emulate a hand painted look (using transparent textures, Bezier curves, new stroke placement ideas, etc.).  I don't know yet if that endeavour is going to be fruitful, but I'll keep you posted.

I had also tried a totally different approach, based on the merging of hundreds of different layers - made of geometric shapes - hoping the resulting image would coalesce into a arty approximation of the source image. Alas, the results were rarely up to scratch.

Here is one of the best abstract examples I could produce (click image to view in full size):

Well, it's back to the drawing board for me :-)

Best regards,


P.S. As usual, if you like FotoSketcher you are most welcome to buy a me a nice cup of coffee (or tea!).


Peter, BC, Canada said...

Hi David,

We all know (or should know) that you give your time freely (beside the cup of coffee, that is!) Your creativity is well needed in a world where people think everything revolves around them. Yet, didn't someone say that "The center of the
universe is where your two feet are!" Lots of wisdom here.

Anyway, I always love to play with your creation, and I hope 2015 will prove even more fruitful.

All the Best for you and your family for 2015! Health, prosperity and, above all, love!

BTW: I like you new effect!

David said...

Hi Peter,

Thank you for your kind words. I certainly intend to continue improving FotoSketcher in 2015!
I also wish you the best for you and your family :-)

Warm regards,


Casey said...

That is definitely NOT a failure!

I'm not the biggest fan of abstracts or Picasso Cubism, but that actually looks good.

David said...

Thanks Casey!
I quite like this abstract piece too, but it is a bit misleading. It was almost the only test image which looked good. I'll continue working on the concept though, just in case...

Casey said...

One of the secrets of art is not so much WHAT you do (or, in digital terms, the filter you use) - it's in the choice of the subject (or the initial photo to start the digital artwork on).

In a sense, it wasn't your filter that failed - the images failed the filter!

David said...

I certainly agree with you: great photos will give the best results in FotoSketcher. Yet, my goal is to produce filters which will give decent results on as many source images as possible. I have noticed an interesting pattern (which might be subjective, though): when creating a new filter I sometimes get really nice results on my limited test set of photos. Once I start testing on a broader range of images, I have to tweak the effect to make it work on more diverse sources. This sometimes reduces slightly the quality of the output on some images, but makes the filter more versatile. That's an unavoidable trade-off I guess.

Casey said...

I'd say it was subjective - you might subconsciously be picking the images you love for the tests.

Try finding an image that just does not push you buttons - a street image if you dislike street photography, A cat if you're a dog lover, urban ruins or rubbish if you're a "neat freak" ( :-) )

If the style works on them then you're on a good thing - and you've taken out your "bias" from the equation.

One little trick I do - invert (negative) the image, save as a new name, run whatever painter program you want, save the output and re-invert back to normal - you'll be surprised at what this does.

I'll demo the idea with FS and post again.

David said...

That's a neat idea! Can't wait to see the results.

Casey said...

Here we go:

Arabian (horse) original then the original FS (painting 9 default):

and the original inverted, saved, painting 9, saved then reinverted:

As you can see, inverting before painting can really enhance where strokes go (compare the sky and the horse's head!)

Casey said...

At the risk of bombing your blog (sorry)

Another example: (both images were enlarged 200% after finishing, with PhotoZoom pro (for best quality).

Original image direct into FS and painter 7 (default setting):

Same image, inverted the FS painter 7 then reinverted:

Not saying either is better - I note that the people in the invert are a little scrappier but the houses and trees are better painted.

Odd effect, huh!?

(I'll stop bombing you now :-) )

David said...

I think your examples look great, especially the Painting 9 one (
I might even add the invert image option in the next version of FotoSketcher!

Peter said...

Casey: That is a very sweet effect! I never thought of inverting the image first before applying the effect. I'll play with that idea for awhile, and maybe add other tweaks to go along with it. Who knows? I may become the next Monet or Renoir.

David: Indeed, that could be a great tool to add to your "paint box"!

And, while I have you in front of your screen :-) How about creating a "Van Gogh" painting effect? Would that be possible? (Van Gogh is one of my favorite painters of all time!)

David said...

Hi Peter,

Doing a nice Van Gogh effect is actually quite hard. I'm not sure I can make a convincing effect. Mediachance's Dynamic Auto-Painter does a very decent one - not free like FotoSketcher, though ;-)

Casey said...

Irfanview offers the option to invert colour channels - resist the urge, invert the whole image.

Inverting a colour channel makes the re-inverted image a mess, unless PopArt is the aim.

Here's Autopainter's VanGogh and another interpretation (I used the FS image as the texture layer with screen blending):


(Not trying to take away FS's thunder.. If you made a VG style it would be great! I don't think it would be easy, you'd need multiple circular/starry brushes)

(Last blog-bomb, I promise!)

David said...

I actually use IrfanView too. A great piece of freeware.
Thanks for the Van Gogh examples, which will give me food for thought.