[sane-devel] Colored vertical stripes with Visioneer Xerox DocuMate 510

stef stef.dev at free.fr
Mon Sep 27 16:31:15 UTC 2010

Le Monday 27 September 2010 18:12:06 stef, vous avez écrit :
> Le Saturday 25 September 2010 22:58:03 chris guirl, vous avez écrit :
> > Hi, I recently got this model scanner and tried it out. It works fine
> > in grayscale but when I scan color images, there are wide, repeating
> > vertical bars overlaying the image.
> > 
> > It is not dissimilar to the problem in the picture from the thread
> > "[sane-devel] Vertical bands with Lexmark X1150". However in this case
> > there is a much more pronounced effect with brightly colored stripes
> > blended with much of the image.
> > 
> > I'll get a sample uploaded soon, the scanner is currently in use (it
> > works fine with the manufacturer's drivers in Windows).
> > 
> > I am using Ubuntu 10.04 x86-64 (kernel 2.6.32-25), with sane and xsane
> > installed via .deb packages: libsane 1.0.21-0ubuntu1, sane-utils
> > 1.0.21-0ubuntu1, xsane and xsane common 0.996-2ubuntu3.
> > 
> > I'm a programmer and happy to hack on the driver, if necessary, since
> > I have the equipment and can easily test it...but I'm not quite sure
> > where to start as this is my first time working with sane or any
> > scanning on Linux for that matter.
> > 
> > Thanks
> > 
> > Chris Guirl
> 	Hello,
> 	pixels on the CCD sensor aren't exactly the same on a CCD sensor. To
> adjust for this differences the lexmark backend scans a pure white area.
> The scanned value for each pixel is used to compute a correction
> coefficient. The targetted area is the white area between a black round
> spot (used to locate home position) and the glass off the effective scan
> area. It is located 'under the roof' of the scanner and can only be seen
> by disassembling the scanner. I seems that this isn't enough to get good
> white data. To my opinion, the best solution is to scan backward (ie move
> the head to the top of scanner and away from the glass). I hope the area
> there is better, but I can't know for sure. The problem is that these
> scanners don't have a mechanical system to prevent the moving sensor going
> to far, and it may hit the top of the casing. It happened to me quite a
> few times, and I had no damage since I always kept a hand free to unplug
> the power cable. But think of it before doing the following code change:
> 	Currently, shading calibration is done in 'forward' direction, then a
> scan is done backward to put back the sensor to start position. The code is
> in lexmark_low.c, in the sanei_lexmark_low_shading_calibration() function.
> The direction of the scan is driven by bit 3 of register 0xc6.
> 	To go backward we do line 4987:
>  regs[0xc6] &= 0xF7;
> 	Move it before the first low_simple_scan() line 4881,
> and put
> regs[0xc6] |= 0x08;
> 	where it was to get to back to 'forward' direction. You might rename the
> debug file names as well to reflect this direction change. They are written
> when DEEP_DEBUG is defined in lexmark.h . Currently 8 lines are scanned,
> maybe there is room to scan more lines when scanning backward. You might
> try to increase this value. Adding a define for this line number would be
> handy and would improve the current code.
> 	Don't hesitate to ask me for more information and advice.
> Regards,
> 	Stef
> --
> sane-devel mailing list: sane-devel at lists.alioth.debian.org
> http://lists.alioth.debian.org/mailman/listinfo/sane-devel
> Unsubscribe: Send mail with subject "unsubscribe your_password"
>              to sane-devel-request at lists.alioth.debian.org

	forgot to check that your scanner was supported by the lexmark backend. 
Is it the case ? Sometimes scanners are merely relabeled models.
	Shading correction is varying from backend to backend with the 
capabilities of the underlying hardware.


More information about the sane-devel mailing list