kopia lustrzana https://gitlab.com/sane-project/website
110 wiersze
5.7 KiB
HTML
110 wiersze
5.7 KiB
HTML
<!-- received="Thu Jul 29 01:28:23 1999 PDT" -->
|
|
<!-- sent="Thu, 29 Jul 1999 10:40:53 +0200" -->
|
|
<!-- name="Andreas Rick" -->
|
|
<!-- email="rickand@gemse.fr" -->
|
|
<!-- subject="Re: SANE & exposure times" -->
|
|
<!-- id="37A01395.30ED38F2@gemse.fr" -->
|
|
<!-- inreplyto="SANE & exposure times" -->
|
|
<title>sane-devel: Re: SANE & exposure times</title>
|
|
<h1>Re: SANE & 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 10:40:53 +0200</i>
|
|
<p>
|
|
<ul>
|
|
<li> <b>Messages sorted by:</b> <a href="date.html#210">[ date ]</a><a href="index.html#210">[ thread ]</a><a href="subject.html#210">[ subject ]</a><a href="author.html#210">[ author ]</a>
|
|
<!-- next="start" -->
|
|
<li> <b>Next message:</b> <a href="0211.html">Didier Carlier: "Re: SANE & exposure times"</a>
|
|
<li> <b>Previous message:</b> <a href="0209.html">Brandon Ibach: "Vivicam 2000 / Mustek VDC-100"</a>
|
|
<li> <b>Maybe in reply to:</b> <a href="0208.html">Ewald R. de Wit: "SANE & exposure times"</a>
|
|
<!-- nextthread="start" -->
|
|
<li> <b>Next in thread:</b> <a href="0213.html">Ewald R. de Wit: "Re: SANE & exposure times"</a>
|
|
<li> <b>Next in thread:</b> <a href="0211.html">Didier Carlier: "Re: SANE & exposure times"</a>
|
|
<li> <b>Reply:</b> <a href="0213.html">Ewald R. de Wit: "Re: SANE & exposure times"</a>
|
|
<li> <b>Reply:</b> <a href="0216.html">Nick Lamb: "Re: SANE & exposure times"</a>
|
|
<!-- reply="end" -->
|
|
</ul>
|
|
<!-- body="start" -->
|
|
"Ewald R. de Wit" wrote:<br>
|
|
<p>
|
|
<i>> > > Btw, is there anyway a frontend could extract the proper</i><br>
|
|
<i>> > > RGB exposure times from you backend?</i><br>
|
|
<i>> ></i><br>
|
|
<i>> > Not in version 0.4.2 but I am working on the problem.</i><br>
|
|
<i>> > Do you really need these values or would it be sufficient</i><br>
|
|
<i>> > if you can change the exposure time in percent of the optimal</i><br>
|
|
<i>> > value determined by the prescan as it was for the LS-20?</i><br>
|
|
<i>> </i><br>
|
|
<i>> My concern is not changing the values but getting them from the</i><br>
|
|
<i>> backend so the frontend knows how to make sense out of the RGB values.</i><br>
|
|
<p>
|
|
When you say "make sense out of the RGB values" do you mean:<br>
|
|
"get some calibrated interpretation of the RGB values"?<br>
|
|
This is a difficult topic. It requires that we calibrate the<br>
|
|
scanner with some reference and also that all gamma-LUT-transformation<br>
|
|
is applied to the image after we have done all the sensitivity<br>
|
|
correction (e.g. between R G and B).<br>
|
|
<p>
|
|
<i>> I think we could use SANE_NAME_SCAN_EXPOS_TIME_R (defined in</i><br>
|
|
<i>> sane/saneopts.h) and friends for that. </i><br>
|
|
<p>
|
|
OK. To transmit these values is not really a problem.<br>
|
|
<p>
|
|
<i>> That is, the frontend should</i><br>
|
|
<i>> check these options and if they are present then it should divide the</i><br>
|
|
<i>> RGB values by their corresponding exposure time.</i><br>
|
|
<p>
|
|
This will require to transmit the data in a format that is linear<br>
|
|
with exposure which requires 16 bit data to be transfered to the<br>
|
|
frontend and also that the LUT is applied in the frontend.<br>
|
|
<p>
|
|
<i>> The RGB exposure options that the backend exports need not be absolute</i><br>
|
|
<i>> in any way; they can be relative to each other and the frontend should</i><br>
|
|
<i>> be able to make sense of it.</i><br>
|
|
<p>
|
|
If they were absolut we could do scanning with an absolut reference<br>
|
|
like optical density (=log(attenuation)). That could be nice too.<br>
|
|
This will make professional quality scans possible where the<br>
|
|
result is really as much scanner independent as possible within the<br>
|
|
limits of the scanners capabilities.<br>
|
|
<p>
|
|
<i>> </i><br>
|
|
<i>> An alternative way would be to do the dividing in the backends. Since</i><br>
|
|
<i>> we're dealing with filmscanners here that will most likely use</i><br>
|
|
<i>> 16 bit transmit data, there is no loss of accuracy. For 8 bit data</i><br>
|
|
<i>> there would be unacceptable loss of accuracy when scanning negatives.</i><br>
|
|
<p>
|
|
If you do it in the backend, you can divide and then apply the user<br>
|
|
gamma-LUT and send a 8-Bit result to the fronend which has a good<br>
|
|
accuracy (even for negatives).<br>
|
|
<p>
|
|
<i>> So where should we put it, in the frontend or up the backend?</i><br>
|
|
<br>
|
|
I will probably do a test to implement this in the Coolscan backend,<br>
|
|
but this doesn't exclude the frontend developpers to include<br>
|
|
a better version (the two approaches are not exclusive).<br>
|
|
One reason to do it inside the backend for the LS-30 and LS-2000<br>
|
|
is to do a good correction of the infrared channel at the same time<br>
|
|
so that finding the right threshold for dust removal becomes easy.<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="0211.html">Didier Carlier: "Re: SANE & exposure times"</a>
|
|
<li> <b>Previous message:</b> <a href="0209.html">Brandon Ibach: "Vivicam 2000 / Mustek VDC-100"</a>
|
|
<li> <b>Maybe in reply to:</b> <a href="0208.html">Ewald R. de Wit: "SANE & exposure times"</a>
|
|
<!-- nextthread="start" -->
|
|
<li> <b>Next in thread:</b> <a href="0213.html">Ewald R. de Wit: "Re: SANE & exposure times"</a>
|
|
<li> <b>Next in thread:</b> <a href="0211.html">Didier Carlier: "Re: SANE & exposure times"</a>
|
|
<li> <b>Reply:</b> <a href="0213.html">Ewald R. de Wit: "Re: SANE & exposure times"</a>
|
|
<li> <b>Reply:</b> <a href="0216.html">Nick Lamb: "Re: SANE & exposure times"</a>
|
|
<!-- reply="end" -->
|
|
</ul>
|