Hi,
First about those a, b, c coefficients - yes they were dynamically
calculated for every iteration, but they worked quite crappy - so here is
another idea that is extremely simple, already implemented and working quite
well.
So what's the idea. We don't need to know the relation between exposure and
yavg ("linear", "square" or "linear with correction"). It's enough to know
that exposure goes up when yavg goes up. So if yavg is too low we add a
little bit to exposure and if yavg is too high we substract a little bit
from exposure. To get rid of the oscillations we keep track of the direction
of the last two chainges - if they are in opposite directions we make the
step smaller, if not we make it bigger. It's working with me, I tested it
all ready. I will be very happy to give you the sorce if you think it's
usefull, but I don't know how "patch" works. What should I do.
There is a question left - when changing the exposure it seems that for my
chip the maximum is 83 (decimal) and not 0xFF. Is this normal.
2009/3/8 Vasily Khoruzhick <[email protected]>
> On Sunday 08 March 2009 12:40:17 Stefan Krastanov wrote:
> > OK, my mistake, but still why min_stable and max_stable instead in
> between
> > ( (70+140)/2 if I am getting right the initialization function)? And I'm
> > writing it in the moment, I am a bit slow, sorry ;)
>
> Yep, that's better, I don't remember why I've chosen "double ranges" :)
>
--~--~---------~--~----~------------~-------~--~----~
Lets make microdia webcams plug'n play, (currently plug'n pray)
To post to this group, send email to [email protected]
Visit us online https://groups.google.com/group/microdia
-~----------~----~----~----~------~----~------~--~---