Yesterday I finally wrote my first display auto-calibration algorithm

Results are good 🙂
Also the approach is completely different from everything I saw so far.

Attached: D65 calibration on Nexus 7 (2013): very first results

I take all the measurements I need first and then everything can be done with calculations.
Usually auto calibration algorithms measure various kind of color patches that I can't justify, then try to improve their vastly interpolated early results by several optimization pass.
Not sure why they do that as it seems inefficient. Maybe those algorithms were designed with different goals in mind than mine.
Like if you're not sure of what the hardware will do with your profile, so you load it, retry, again and again.
But it means you're not measuring correctly to begin with or working with inconsistent and unpredictable hardware.

A huge benefit of my approach seems to be the accuracy first, and also you can tune the algorithm parameters all you want without taking any new measurement (which takes a vast amount of time).

Today I'm adding black point compensation strategies in it in order to provide a smooth gradation near black instead of clipping at rgb (10, 10, 15) on Nexus 7 (2013) when targeting a Gamma 2.2 response curve with pure black output.

And I'm having a lot of fun doing this!

I was really not sure I would be able to make this auto calibration thing, thinking I was too limited in my maths skills.
But it seems to be no issue even if it took quite some time to turn to code the theoretical concept I had in mind.

Back to code 🙂

#supercurioBlog #calibration #display #color #development

     

In Album Very first auto calibration algorithm results

Source post on Google+

Alright I almost completed a brand new automated universal display measurement engine :)

The key here is that it's capable of measuring pretty much any kind of display: smartphone, tablet (any OS), TV, computer..
It also uses several techniques to give accurate results even on display implementing funky dynamic contrast, content adaptive backlight control or other similar effects.

During the process I learned a ton about color theory, maths, algorithms, colorspace conversion and representations.

..Which now gives me ideas on how to write my own automatic and high precision calibration engine!
Later maybe, but it's stuff I'm dreaming of since years actually.

Just letting you now that despite I didn't released new snapshots of the Android app, there's progress 🙂

#supercurioBlog #display #measurements #color

Source post on Google+

Dear next person telling me "Movie Mode" on Samsung smartphones or tablets is color-accurate:

Please check your eye sight with a professional, and don't wait!

Here's the funky color response of Samsung Galaxy S 4 I9500 in Movie Mode.

#supercurioBlog #color #display #measurements

 

Source post on Google+

Oh yeah, a win here!

Latest 2 or..3 days? and a bit more, I lost track of time I worked on something new, that among other things allows full-resolution measurements.

I never saw that before but I really wanted that for years so.. I did it 🙂
256 values per graph for grayscale.. can't do more accurate on a 24bit display!

This is a very good step towards a full calibration suite for mobile. I'll explain more about it later.

#supercurioBlog #display #measurements #color #development

   

In Album First full resolution measurements

Source post on Google+