[argyllcms] Re: DE2000 Tolerance Ellipsoids

  • From: <graxx@xxxxxxxxxxxx>
  • To: <argyllcms@xxxxxxxxxxxxx>
  • Date: Tue, 14 Apr 2020 09:38:45 -0400

Thanks everyone for your kind help.

Mostly, I experimented with "empirical" approaches.
In one approach, I iterated along the hue axis until I come at a point that
exceeded the desired tolerance. This gave me the length of the major semi
axis. Then I repeated the same "search" using a 90 degree rotation to find
the length of the minor semi axis. From that point on, I used the .NET
DrawEllipse function to draw the ellipse on the ab diagram. But I was wrong
about the "hue" angle of the ellipse; it worked mostly for all hue angles
except in the region of 270 degrees where the ellipse is actually rotated
counterclockwise for that "blue" shift problem that DE2000 solves.

I tried a similar approach using a variation of the hue angle but that
essentially led to the same result.

I then looked at the parametric equation of an ellipse, and reasoned that
the DE2000 formula SC and SH terms correspond to the major semi axis and
minor semi axis of the ellipse but that's where I'm stuck. I was given some
equations by a friend but I can't wrap my head around the results.

My best bet so far is to use a "brute force" approach by iterating every
points around the center of the ellipse. That approach shows correct results
but it is computationally intensive and not elegant, mathematically.

Best / Roger


-----Original Message-----
From: argyllcms-bounce@xxxxxxxxxxxxx <argyllcms-bounce@xxxxxxxxxxxxx> On
Behalf Of Graeme Gill
Sent: Monday, April 13, 2020 11:30 PM
To: argyllcms@xxxxxxxxxxxxx
Subject: [argyllcms] Re: DE2000 Tolerance Ellipsoids

graxx@xxxxxxxxxxxx wrote:

Would anyone have any experience calculating DE2000 Tolerance Ellipsoids?

https://1drv.ms/u/s!AkD78CVR1NBqk8g4WLQJjsLHmizXUw?e=o9a6Ce
<https://1drv.ms/u/s%21AkD78CVR1NBqk8g4WLQJjsLHmizXUw?e=o9a6Ce>

Hi Roger,
        no experience, but I know how I would go about it. Short of an
analytical approach, the pragmatic approach would be to simply use a
numerical minimizer to locate points in the a*b* plane in a given direction
that have your target ellipsoid delta E 2K.
Feed vectors around the circle, and plot your ellipsoid. Coded in a compiled
language this would be pretty fast. I guess it could be coded in something
like MATLAB or GNU Octave as well.

Cheers,
        Graeme Gill.



Other related posts: