sane-project-website/old-archive/1999-07/0212.html

129 wiersze
6.3 KiB
HTML

<!-- received="Thu Jul 29 02:47:36 1999 PDT" -->
<!-- sent="Thu, 29 Jul 1999 12:00:29 +0200" -->
<!-- name="Andreas Rick" -->
<!-- email="rickand@gemse.fr" -->
<!-- subject="Re: SANE &amp; exposure times" -->
<!-- id="37A0263D.607F0B81@gemse.fr" -->
<!-- inreplyto="SANE &amp; exposure times" -->
<title>sane-devel: Re: SANE &amp; exposure times</title>
<h1>Re: SANE &amp; exposure times</h1>
<b>Andreas Rick</b> (<a href="mailto:rickand@gemse.fr"><i>rickand@gemse.fr</i></a>)<br>
<i>Thu, 29 Jul 1999 12:00:29 +0200</i>
<p>
<ul>
<li> <b>Messages sorted by:</b> <a href="date.html#212">[ date ]</a><a href="index.html#212">[ thread ]</a><a href="subject.html#212">[ subject ]</a><a href="author.html#212">[ author ]</a>
<!-- next="start" -->
<li> <b>Next message:</b> <a href="0213.html">Ewald R. de Wit: "Re: SANE &amp; exposure times"</a>
<li> <b>Previous message:</b> <a href="0211.html">Didier Carlier: "Re: SANE &amp; exposure times"</a>
<li> <b>Maybe in reply to:</b> <a href="0208.html">Ewald R. de Wit: "SANE &amp; exposure times"</a>
<!-- nextthread="start" -->
<li> <b>Next in thread:</b> <a href="0220.html">Didier Carlier: "Re: SANE &amp; exposure times"</a>
<!-- reply="end" -->
</ul>
<!-- body="start" -->
Didier Carlier wrote:<br>
<i>&gt; </i><br>
<i>&gt; <a href="mailto:ewald@pobox.com">ewald@pobox.com</a> said:</i><br>
<i>&gt; &gt; My concern is not changing the values but getting them from the</i><br>
<i>&gt; &gt; backend so the frontend knows how to make sense out of the RGB values.</i><br>
<i>&gt; &gt; I think we could use SANE_NAME_SCAN_EXPOS_TIME_R (defined in sane/</i><br>
<i>&gt; &gt; saneopts.h) and friends for that. That is, the frontend should check</i><br>
<i>&gt; &gt; these options and if they are present then it should divide the RGB</i><br>
<i>&gt; &gt; values by their corresponding exposure time.</i><br>
<i>&gt; </i><br>
<i>&gt; What is the meaning of an RGB value divided by a time ? Nothing says</i><br>
<i>&gt; for instance that the sensitivity of the detectors is the same for all</i><br>
<i>&gt; colors so that even for a picture that looks perfectly grey, you would get</i><br>
<i>&gt; completely different values for the quotients.</i><br>
<i>&gt; </i><br>
<i>&gt; I'm just curious to understand in what application that division makes sense.</i><br>
<p>
I agree with Didier: Just dividig by the exposure values returned<br>
by the scanner will do nothing but degrade the color balance that<br>
the scanner establishes on its own, because it already has some compensation<br>
for the different light-source efficiencies+detector sensibility.<br>
<p>
<br>
Nevertheless I think the relation between exposure time and sensor<br>
result is quite interesting.<br>
If we assume that the exposure time really accurate its variation<br>
can be used to verify the linear reponse of the scanner.<br>
I did that and found the result to be quite sattisfactory for the LS-30.<br>
This makes me think of the following application:<br>
<p>
The major difference between the LS-30 and LS-2000<br>
film-scanners is the color resolution and the dynamic range<br>
of the images and the fact that the LS-2000 can do<br>
"multi scanning".<br>
<p>
I don't have the LS-2000 so I don't know whether the<br>
multiple scanning is done by moving the scanner head<br>
multiple times over the image or wether the head does<br>
only one cycle but each line is scanned multiple times.<br>
<p>
The multi scanning allows to reduce the noise captured<br>
in dark areas in the image (or bright on negatives),<br>
where detector noise is important relative to the image signal.<br>
<p>
I would like to state that in theory you can scan<br>
any image with any scanner multiple times.<br>
The limitations of the usefullness of multiple scanning<br>
is the repositioning precision of the scanner.<br>
On the LS-30 it is pretty good. I think it may be<br>
sufficient for full resolution scanning and adding of<br>
the images.<br>
<p>
While I am trying to implement this functionality<br>
into the SANE-backend I had some doubts if this feature<br>
should not rather be implemented in the frontends.<br>
They have everything in their power to do so.<br>
If I want to do it in the backend I have to store the<br>
whole image (up to 70MB on the LS-30).<br>
<p>
What do you think?<br>
<p>
The exposure related idea is: multi-exposure scanning.<br>
Instead of scanning all the images of a multi-scanning<br>
process with the same exposure level we might want to<br>
scan one image with the exposure calculated by the scanner,<br>
one with the double and one with 4-times the exposure.<br>
We then fusion the images by choosing the 3rd scan for<br>
all pixel values where the detector was not saturated during the<br>
third scan (ususally 25% of the dynamic range) the second<br>
image for the remaining pixels where the second image was not<br>
satturated and the first for the rest.<br>
Of course we have to scale the values to the same exposure<br>
level before the fusion (-&gt;divide by exposure).<br>
We may also leave out the second scan, extend the method to<br>
even more scans and or use a weighting scheme for the fusion.<br>
The advantage of this method is to add two bits of resolution<br>
(or reduce the noise by a factor of sqrt(4)=2) with only 2/3 scans.<br>
<p>
As the absolut resolution (or noise) is not so important as<br>
the SNR (Signal to Noise Ratio) and the resulting image<br>
should have an almost signal independent SNR (to be verified)<br>
we get good improvement in the subjective image quality<br>
especially in the dark areas of images with a high contrast<br>
where the quality of the LS-30 is quite poor.<br>
<p>
Any comments?.<br>
<p>
Andreas<br>
<p>
<pre>
--
Source code, list archive, and docs: <a href="http://www.mostang.com/sane/">http://www.mostang.com/sane/</a>
To unsubscribe: echo unsubscribe sane-devel | mail <a href="mailto:majordomo@mostang.com">majordomo@mostang.com</a>
</pre>
<!-- body="end" -->
<p>
<ul>
<!-- next="start" -->
<li> <b>Next message:</b> <a href="0213.html">Ewald R. de Wit: "Re: SANE &amp; exposure times"</a>
<li> <b>Previous message:</b> <a href="0211.html">Didier Carlier: "Re: SANE &amp; exposure times"</a>
<li> <b>Maybe in reply to:</b> <a href="0208.html">Ewald R. de Wit: "SANE &amp; exposure times"</a>
<!-- nextthread="start" -->
<li> <b>Next in thread:</b> <a href="0220.html">Didier Carlier: "Re: SANE &amp; exposure times"</a>
<!-- reply="end" -->
</ul>