Hi Marco,
inspired by your and Sander's posts on how much the sun was covered during the last eclipse, I also tried to write an evaluation from picture data. For this I use Tanvi's first picture (@Tanvi: Thanks for posting!), because in the second one the sun seem to be "cut" a bit at the edges by clouds. My ansatz is to use a model of the eclipse consisting of two equal sized disks overlapping each other.
This simple model has five parameters (the number on the right side represents a fitness of match):
One can define a "fitness function" to quantify the goodness of match and try an optimization for this. Unfortunately I was not able to get that working perfectly - the result of NMaximize is not bad but by no means perfect. This seems strange because it is very easy to improve the solution by hand.
Once a result is obtained, e.g.:
one can very easy calculate the covering:
\[ScriptCapitalR] = RegionDifference[Disk[{x, y}, r], Disk[{x + dr Cos[\[Phi]], y + dr Sin[\[Phi]]}, r]] /. opt;
Print["covering: ", 100 (1 - RegionMeasure[\[ScriptCapitalR]]/(Pi r^2) /. opt), "%"]
Otherwise I would not have a quick idea on how to do that - probably some ugly integrals ...
I have attached the notebook with the code. The next solar eclipse may come!
Henrik
Attachments: