我使用scanimage
Brother DS-620 单张纸扫描仪扫描一些文档,命令如下:
scanimage --device 'dsseries:usb:0x04F9:0x60E0' \
--format=tiff \
--mode 'Gray' \
--resolution 300 \
-l 90 \
-t 90 \
--brightness -20 \
--contrast 15 \
> ex.tiff
我正在测试 -t 的不同参数,我记得我将其设置为 500,但在扫描过程中,送纸器停止了,我认为出现了段错误(抱歉,我丢失了确切的错误信息并且无法复制它,尽管-t
在设备特定的手册页中其最大值为 355.6,这可能解释了段错误)。此后,上述命令和scanimage -T
(用于测试)都出现错误sane_start: Document feeder out of documents
。下面的设备相关选项--source
说唯一的选项是 ADF,我认为这是不正确的。在发生这种情况之前,扫描仪工作正常。我尝试拔下扫描仪插头、重新启动计算机并尝试 xsane、simple-scan 等,但结果都是负面的。我在下面发布了一些我认为重要的信息。
有人知道哪里出了问题以及如何修复/排除该问题吗?
我在 Ubuntu 14.04 上。scanimage 和 libsane 版本:
desktop:~$ scanimage --version
scanimage (sane-backends) 1.0.23; backend version 1.0.23
从 Brother 网站安装的驱动程序:
libsane-dsseries_1.0.5-1_amd64.
驱动程序的更新日志:
x64-dsscanner (1.0.5-1) unstable; urgency=low
* Fix duplex cut image error.
-- Brother Industries, Ltd. <> Thu, 21 Nov 2013 14:42:01 +0800
设备特定信息:
desktop:~$ scanimage --help -d 'dsseries:usb:0x04F9:0x60E0'
Usage: scanimage [OPTION]...
Start image acquisition on a scanner device and write image data to
standard output.
Parameters are separated by a blank from single-character options (e.g.
-d epson) and by a "=" from multi-character options (e.g. --device-name=epson).
-d, --device-name=DEVICE use a given scanner device (e.g. hp:/dev/scanner)
--format=pnm|tiff file format of output file
-i, --icc-profile=PROFILE include this ICC profile into TIFF file
-L, --list-devices show available scanner devices
-f, --formatted-device-list=FORMAT similar to -L, but the FORMAT of the output
can be specified: %d (device name), %v (vendor),
%m (model), %t (type), %i (index number), and
%n (newline)
-b, --batch[=FORMAT] working in batch mode, FORMAT is `out%d.pnm' or
`out%d.tif' by default depending on --format
--batch-start=# page number to start naming files with
--batch-count=# how many pages to scan in batch mode
--batch-increment=# increase page number in filename by #
--batch-double increment page number by two, same as
--batch-increment=2
--batch-prompt ask for pressing a key before scanning a page
--accept-md5-only only accept authorization requests using md5
-p, --progress print progress messages
-n, --dont-scan only set options, don't actually scan
-T, --test test backend thoroughly
-A, --all-options list all available backend options
-h, --help display this help message and exit
-v, --verbose give even more status messages
-B, --buffer-size=# change input buffer size (in kB, default 32)
-V, --version print version information
Options specific to device `dsseries:usb:0x04F9:0x60E0':
Scan mode:
--mode LineArt|Gray|Color [Gray]
Selects the scan mode (e.g., lineart, monochrome, or color).
--resolution 75..600dpi (in steps of 1) [300]
Sets the resolution of the scanned image.
--preview[=(yes|no)] [no]
Request a preview-quality scan.
--source ADF [ADF]
Selects the scan source (such as a document-feeder).
Geometry:
-l 0..215.9mm [0]
Top-left x position of scan area.
-t 0..355.6mm [0]
Top-left y position of scan area.
-x 0..215.9mm [215.9]
Width of scan-area.
-y 0..355.6mm [355.6]
Height of scan-area.
MultiFeed Detection:
--ultrasonic Disable [Disable]
Use ultrasonic sensor to detect multifeed
Enhancement:
--brightness -100..100% (in steps of 1) [0]
Controls the brightness of the acquired image.
--contrast -100..100% (in steps of 1) [0]
Controls the contrast of the acquired image.
--gamma-table 0..255,...
Gamma-correction table. In color mode this option equally affects the
red, green, and blue channels simultaneously (i.e., it is an intensity
gamma table).
--red-gamma-table 0..255,...
Gamma-correction table for the red band.
--green-gamma-table 0..255,...
Gamma-correction table for the green band.
--blue-gamma-table 0..255,...
Gamma-correction table for the blue band.
Type ``scanimage --help -d DEVICE'' to get list of all options for DEVICE.
List of available devices:
dsseries:usb:0x04F9:0x60E0
扫描仪检测行为不一致:有时如果我发出问题,sudo sane-find-scanner
我会发现它找不到任何 USB 扫描仪,并且sudo scanimage -L
会列出我的扫描仪。以前没有任何可识别的原因,sudo sane-find-scanner
只是挂起并sudo scanimage -L
出现 Ubuntu 系统错误和报告问题对话框窗口,我无法复制粘贴,但重要的部分似乎是:
- 问题类型:崩溃
- SegvAnalysis:段错误发生于:0x0:无法访问地址 0x0 PC(0x00000000)处的内存,该内存不在已知的 VMA 区域(所需的可执行区域)中!
- SegvReason:正在执行 NULL VMA
- 信号:11
我对这种反常的行为感到困惑。
没有sudo
:
desktop:~$ scanimage -L
device `dsseries:usb:0x04F9:0x60E0' is a BROTHER DS-620 sheetfed scanner
desktop:~$ sane-find-scanner
# sane-find-scanner will now attempt to detect your scanner. If the
# result is different from what you expected, first make sure your
# scanner is powered up and properly connected to your computer.
# No SCSI scanners found. If you expected something different, make sure that
# you have loaded a kernel SCSI driver for your SCSI adapter.
could not open USB device 0x8087/0x8000 at 002:002: Access denied (insufficient permissions)
could not open USB device 0x1d6b/0x0002 at 002:001: Access denied (insufficient permissions)
could not open USB device 0x8087/0x8008 at 001:002: Access denied (insufficient permissions)
could not open USB device 0x1d6b/0x0002 at 001:001: Access denied (insufficient permissions)
could not open USB device 0x1d6b/0x0003 at 004:001: Access denied (insufficient permissions)
could not open USB device 0x04f9/0x60e0 at 003:005: Access denied (insufficient permissions)
could not open USB device 0x046d/0xc016 at 003:004: Access denied (insufficient permissions)
could not open USB device 0x046d/0xc315 at 003:003: Access denied (insufficient permissions)
could not open USB device 0x1d6b/0x0002 at 003:001: Access denied (insufficient permissions)
# No USB scanners found. If you expected something different, make sure that
# you have loaded a kernel driver for your USB host controller and have setup
# the USB system correctly. See man sane-usb for details.
# Not checking for parallel port scanners.
# Most Scanners connected to the parallel port or other proprietary ports
# can't be detected by this program.
# You may want to run this program as root to find all devices. Once you
# found the scanner devices, be sure to adjust access permissions as
# necessary.
desktop:~$ sudo sane-find-scanner
# sane-find-scanner will now attempt to detect your scanner. If the
# result is different from what you expected, first make sure your
# scanner is powered up and properly connected to your computer.
# No SCSI scanners found. If you expected something different, make sure that
# you have loaded a kernel SCSI driver for your SCSI adapter.
# No USB scanners found. If you expected something different, make sure that
# you have loaded a kernel driver for your USB host controller and have setup
# the USB system correctly. See man sane-usb for details.
# Not checking for parallel port scanners.
# Most Scanners connected to the parallel port or other proprietary ports
# can't be detected by this program.
使用scanimage -n --device 'dsseries:usb:0x04F9:0x60E0' etc...
给出成功扫描的正确消息:
scanimage: rounded value of br-x from 305.9 to 215.9
scanimage: rounded value of br-y from 445.6 to 355.6
如果我可以测试另一台扫描仪,我会发布结果。