Open GoogleCodeExporter opened 9 years ago
Well, it seems you're right, the different pattern is causing problems. VNG4
should be the only algorithm giving reasonable results, since the others work
on three colors and your camera has 4. Considering demosaicing it seems Photivo
does it right, but the color profile application might be wrong giving the bad
results with other then flat profiles.
So, the question is, who is willing to go these extra miles you mention.
Someone needs to invest his/her spare time to a problem that is very rare,
since as you say, it is an old model and it seems only few people use it any
more. I'm honest here, I won't dig into this; I've very little time for the
project and there are more urgent things to do. So, the only thing I could
offer, is some guidance on our code base so that you can dig into this issue
yourself. I'm happy to include your corrections into Photivo afterwards.
This is not a matter of seriousness of the team in our or any other project,
just consider the motivation people have working in their spare time on open
source projects without payment; we have a family, a day job and photography as
a hobby, too ;-)
greets mike
Original comment by m...@mm-log.com
on 23 Feb 2013 at 9:13
"VNG4 should be the only algorithm giving reasonable results, since the others
work on three colors and your camera has 4."
Actually, they work well with most (dichromatic) infrared shots. The blue
artifacts avoided in this case by the VNG4 show up only with certain white
balances encountered when using the external hot mirror, and only at
highlights. It's more like some internal clipping issue.
"Considering demosaicing it seems Photivo does it right, but the color profile
application might be wrong giving the bad results with other then flat
profiles. "
No, the flat profile or any other profile give invalid color information, while
the profile designed for this camera gives correct colors, but also the extra
noise. Using the latter on GRGB RAWs produce distorted and extremely strong
colors.
For me, the strange profile seems to be a simple-but-dirty solution to the
problem.
"So, the only thing I could offer, is some guidance on our code base so that
you can dig into this issue yourself. I'm happy to include your corrections
into Photivo afterwards. "
If you help me (I'll definitely need it), I'll give it a try. I never
officially learned to program, but have already developed a few simple but
sophisticated apps, often learning things on the fly. So of course I can't
promise anything except my effort to try to solve it.
Also, I have a trade offer: if I don't manage to solve the problem myself, but
someone does it, in return I'll spend time in areas where I'm good, like
testing (I tend to notice every small detail), hunting down bugs or improving
GUI (just one quick idea: implementing custom step values for sliders, and
adjusting them individually for each, according to the changes usually needed
to be made to it, and also a "low gear" dragging using the middle mouse button).
And of course a good Hungarian translation (that's my mother tongue), but i'll
make that anyway soon.
Maybe it's also worth to mention that 4-color CFAs might come back and become
widespread, as some companies experiment with RGBW and RGBE arrays (W for
white, E for emerald). Yes, simply ignoring the W or E pixels will likely work,
but by doing so, not only will their advantage be renounced, but also a quarter
of useful pixel information wasted, resulting in inferior resolution.
Original comment by gabor.sz...@gmail.com
on 23 Feb 2013 at 4:41
Alternative solution: since Photivo already incorporates DCRAW as far as I
know, maybe we could add an "Use DCRAW to process" checkbox. After the Camera
tab no low level image data is needed, or is any?
DCRAW not only supports CYMG arrays flawlessly, but is also said to read even
many unknown or partially corrupted raws refused by other SW, so this
compatibility feature could be useful for lots of people.
Original comment by gabor.sz...@gmail.com
on 24 Feb 2013 at 1:48
Hello Gabor,
having dcraw as external fall back would indeed be possible, but several of the
current options on the input tab would stop working in that case and that
wouldn't be the simplest change to Photivo.
Considering your investigation: I would start with a environment, in which you
can easily compile and test Photivo. Simplest here is Linux
(http://photivo.org/photivo/download_and_setup/linux), but it also works with
Windows (http://photivo.org/photivo/download_and_setup/windows). Once that is
in place, the file ptdcraw.cpp contains the demosaicing steps. You find 4
functions with phase in their name in there. These do all the work of the input
tab. For demosaicing you just need phase 1 and 2. Please have a first look
there and try to get a feeling what's going on in the called functions; not
mathematically but from the effect (e.g. demosaicing, RAW decoding, color
scaling, etc.) I hope that helps as a first step. (You might need quite some
motivation here, it's not the simplest stuff :-) ) I'll try to help if you have
questions.
greets mike
Original comment by m...@mm-log.com
on 24 Feb 2013 at 8:34
Original issue reported on code.google.com by
gabor.sz...@gmail.com
on 23 Feb 2013 at 12:13