Системный интегратор
Установка сканера Epson в Linux.
На практике проверена технология установки сканера EPSON PERFECTION 3490 PHOTO в Linux Fedora 16 и в Linux Ubuntu 12.04 LTS. Скорее всего, так же можно установить другую модель USB сканера в другой версии Linux.
Подключите сканер к компьютеру.
Запустите терминал и выполните команду «lsusb»
В приведенном примере обратите внимание на последнюю строку.
В Linux Fedora установите программу для сканирования xsane следующим образом:
В Linux Ubuntu для установки программы xsane воспользуйтесь Центром приложений Ubuntu:
Отредактируйте файл конфигурации /etc/sane.d/dll.conf
В этом файле символом # закомментируйте строки epson, epson2, epkowa, V4L и V4L2
В строке Snapscan наоборот удалите символ #, если он там есть.
Найдите файл с прошивкой от вашего сканера и поместите его в свою домашнюю папку.
Я нашел этот файл в Windows XP системе C:\Program Files\epson\escndv\es0052\Esfw52.bin. Кроме того, Вы можете найти этот файл в фирменных драйверах для 32 битной версии Windows от вашего сканера. Так для сканера EPSON PERFECTION 3490 PHOTO файл Esfw52.bin можно извлечь из архива драйвера escan_27vr.zip, доступного для скачивания на официальном сайте EPSON. Путь к файлу escan_27vr.zip/ESCAN/ModUsd.cab/esfw54.bin.
Создайте папку /usr/share/sane/snapscan и скопируйте в нее файл с прошивкой от вашего сканера.
Отредактируйте конфигурационный файл /etc/sane.d/snapscan.conf, заменив в нем строку
Все, сканер должен работать с программой xsane и со стандартно поставляемой с Fedora программой Simple Scan.
Источник
Установка сканера Epson в Ubuntu 20.04
В данной статье я рассматриваю установку драйверов Epson в ОС Ubuntu 20.04 на примере устройства EPSON PERFECTION V100 PHOTO.
Данный способ подойдёт для многих Epson’ов, включая МФУ.
Для начала скачаем с официального сайта Epson драйверы для нашего устройства:
По окончании загрузки файла переходим в папку » Загрузки», кликаем правой клавишей мыши по файлу -> Извлечь в текущую папку. Далее переходим в директорию с распакованными файлами, запускаем эмулятор терминала (по умолчанию Ctrl+Alt+T) и вводим:
(чтобы не прописывать вручную путь к файлу, можно просто перетащить install.sh в терминал).
После ввода пароля начнётся установка драйверов и программы сканирования .
Для начала работы со сканером необходимо запустить программу » Image Scan! for Linux» из меню приложений.
Кстати, у меня запуск занимает достаточно много времени (намного дольше остальных приложений). Возможно, это связано с особенностями устройств Epson. Если есть возможность, напишите, пожалуйста, в комментариях название устройства и версию Ubuntu, а также скорость запуска данной программы (дольше, чем другие приложения или так же).
Интерфейс программы позволяет выбрать тип документа, разрешение и многие другие параметры сканирования, которые вряд ли пригодятся среднестатистическому пользователю.
В целом программа достаточно простая, но, сожалению, у неё есть несколько значительных минусов:
1. Отсутствие русскоязычного интерфейса.
2. Отсканированный документ можно сохранить только в форматах: PCX, PNM, TIFF, PDF.
3. Нет поддержки многостраничного сканирования.
Преобразовать PCX в привычный формат можно с помощью бесплатной альтернативы Adobe Photoshop — GIMP (да, это неудобно, но лучше, чем ничего).
Вот такая короткая статья получилась сегодня, спасибо что дочитали до конца. Оставляйте комментарии, делитесь мнениями и главное, будьте здоровы!
Источник
Linux.yaroslavl.ru
Последнее изменение файла: 2003.03.26
Скопировано с www.bog.pp.ru: 2003.09.22
Использование USB сканера в Linux
Компьютер с современной версией Linux можно использовать не только в качестве интернет-сервера, но и как рабочую станцию для графических работ (например, с использованием Gimp). Для этого, в частности, необходима возможность получать изображения с помощью сканера (вы же не будете покупать отдельный компьютер и ставить на него MS Windows только для сканирования?).
- Цена. Так как я не занимаюсь графикой профессионально, то я даже не смотрел в сторону профессиональных моделей. Кстати, существует громадный ценовой разрыв между любительскими и профессиональными моделями. Например, Seiko Epson продает сканеры либо дешевле $500, либо дороже $2000. Так что купить модель неподходящего уровня вам просто не дадут 😉
- Область сканирования — A4.
- Тип датчика. Какой датчик выбрать: CIS, ПЗС (CCD) или ФЭУ? На ФЭУ денег нет (см. выше), про CIS достаточно вспомнить, что там нет оптики. Так что выбор очевиден — CCD.
- Тип кинематического механизма: ручной, роликовый, планшетный, проекционный или барабанный (в них используется ФЭУ, так что отбрасываем сразу). Ручные и проекционные сканеры я уже имел несчастье пробовать, так что также отбросим их. Роликовый сканер, конечно, лучше ручного, но доверия все же не внушает. Итого — планшетный сканер.
- Тип оригинала: прозрачный или непрозрачный. Хотелось бы иметь универсальное устройство, которое могло бы сканировать как бумажные носители, так и слайды, а в идеале и негативы. Для слайд адаптера нужна функция фокусировки.
- Аппаратный интерфейс: параллельный порт (устарел и слишком медленный), SCSI или USB. Вы где нибудь видели дешевый SCSI сканер? Вот и я тоже. Устаревшие модели не предлагать!
- Драйвера. Большинство (все ?) изготовители сканеров не предоставляют драйверов под Linux. К счастью, драйвера ко многим моделям можно получить от энтузиастов. Поэтому перед покупкой сканера необходимо убедиться, что кем-нибудь написан драйвер именно для этой модели сканера. Отличие одной буквы в имени приведет к тому, что сканером вы воспользоваться не сможете. Убедитесь также, что драйвер достаточно отлажен, и не верьте обещаниям, что все будет работать буквально на следующей неделе (в крайнем случае, можно отложить покупку на неделю ;). Информацию о поддерживаемых сканерах можно найти:
- Linux-USB device overview (отзывы счастливых или несчастных владельцев)
- USB Scanners under Linux
- страница разработчика драйвера для USB сканеров (обобщенный драйвер USB сканера обеспечивает только транспортный уровень!)
- список драйверов, входящих в комплект SANE (технически говоря, это не драйвера, а библиотека, исполняемая в userspace, но именно она обеспечивает интерпретацию данных, получаемых от обобщенного драйвера USB сканеров в зависимости от конкретной модели сканера)
- Оптическое разрешение (число элементов CCD-линейки, деленное на ширину поля сканирования) и механическое разрешение (количество считываний линейки, деленное на длину поля сканирования). С моей точки зрения, необходимо иметь такое разрешение, чтобы самая маленькая отсканированная фотография (или слайд) помещалась ровно на экран (а лучше с запасом — IBM обещает ЭЛТ с разрешением 200dpi): 35 миллиметрам слайда в этом случае соответствует 1920 пикселов на экране, т.е. получается около 1400 dpi. Лучше иметь запас, чтобы не думать об уровне взаимных помех ячеек CCD-матрицы.
- Глубина цвета. Казалось бы простой вопрос — 8 бит на цвет, все равно больше на экран не выводится и глазом не распознается (кроме людей, профессионально работающих с красками). Однако, если вы собираетесь обрабатывать получившиеся изображения, то необходимо иметь «запас прочности», т.к. в результате округлений при обработке часть информации теряется. Следует также учитывать, что младшие биты содержат скорее «шум», чем полезную информацию. Так что сканер должен уметь выдавать наружу минимум 10 бит на цвет (правда, для обработки такого изображения вам потребуется самостоятельно собрать Gimp Hollywood). Неплохо также, если сканер умеет делать гамма- и цветокоррекцию в аналоговом режиме.
- Диапазон оптических плотностей (Dmax-Dmin). Для сканеров «любительского» ценового диапазона обычно не сообщается (стыдно признаться, наверное). Равняется разнице между максимальной (Dmax, до 4.0 D) и минимальной оптической (Dmin, от 0.0 D) плотностью оригиналов, которые сканер еще способен различить (0.0 D — проходит 100% света, 1.0 D — 10%, 2.0 D — 1%, 3.0 D — 0.1% ). Для справки: газетная бумага — 0.9 D, мелованная бумага — 1.9 D, цветная фотография — 2.5 D, негатив — 2.8 D (но Dmin здоровый), любительский слайд — 3.0 D, рентгеновский снимок — 3.6 D. Теоретический предел при 10-битной глубине цвета — 3.0 D, при 12-битной — 3.6 D (шумы и пребразования не дадут достичь этих значений).
- Такие характеристики CCD-матрицы как уровень шума, разброс чувствительности ячеек, уровень взаимных помех и совмещение цветов, а также уровень шума АЦП я опущу — все равно оценить их можно только после покупки 😉
- Количество проходов — 1 (бывают еще слайд-сканеры с дополнительным проходом для выявления пыли и царапин или уменьшения случайных шумов).
- Скорость сканирования.
- Возможность коррекции экспозиции (управление мощностью лампы освещения).
Теперь вы поняли, как я мучился выбирая сканер? К счастью, все гораздо проще — посмотрите список сканеров с интерфейсом USB и сравните со списком современных сканеров, продаваемых в местном магазине. В пересечении списков окажется всего несколько моделей. Дальнейший выбор можно провести исходя из личных пристрастий и обзоров в журналах.
Seiko Epson Perfection 1650 Photo (GT-8200UF):
- Изготовитель: Seiko Epson (сайт поддержки, российский сайт Seiko Epson, российский сайт поддержки).
- Цена: около $250.
- Область сканирования: A4 (216x297mm).
- Датчик: CCD (2 линии на цвет).
- Планшетный со съемной крышкой, 4 кнопки.
- Встроенный пассивный адаптер (EU-54) для сканировная 35мм пленок (вертикально расположенная лампа с матовым стеклом). Область сканирования 48.26×231.1mm (? 36x226mm). Пленку надо класть блестящей стороной вниз. Две точки фокусировки: на стекло и 2 mm над ним (пленка в держателе).
- Аппаратный интерфейс: USB 1.1, гнездо типа B (глубокое, так что USB кабель с ограничителем глубины не подошел), Full Speed mode (12Mbits/sec), подключать к корневому концентратору или концентратору первого уровня с блоком питания. Выдает о себе следующую информацию (надо бы добавить в modules.usbmap, в ядре 2.4.18 — RH 8.0 — уже есть):
- string description: manufacturer: «EPSON», product: «EPSON Scanner»
- Device Class: ff
- Device Subclass: ff
- Device Protocol: ff
- Vendor Id: 0x04b8
- Product Id: 0x0110
- Revision Number: 1.10
- Драйвера для Linux:
- страница на сайте Epson о драйверах сканеров для Linux
- Image Scan! for Linux от Epson Kowa
- SANE EPSON Backend
- SANE EPSON Backend (зеркало)
- Оптическое разрешение: 13600 элементов (1600 dpi). Механическое разрешение: 3200 dpi (пользы от сканирования с разрешением 3200 dpi нет).
- Глубина цвета: 16 бит на цвет внутренних и внешних (похоже, что младшие 8 бит выдумываются firmware).
- Диапазон оптических плотностей: 3.2 D (в некоторых текстах — 3.0 D, при самостоятельном тестировании получается 2.4 D, линейная часть — до 1.7 D).
- Скорость (полная область сканирования: 215.9mm x 297.18mm):
- preview 8 бит — 10 секунд
- preview 16 бит — 15 секунд
- scanimage —mode Color —depth 8 —resolution 50 (10.5 секунд)
- scanimage —mode Color —depth 16 —resolution 50 (10.5 секунд)
- scanimage —mode Color —depth 8 —resolution 100 (10.5 секунд)
- scanimage —mode Color —depth 16 —resolution 100 (13.5 секунд)
- scanimage —mode Color —depth 8 —resolution 200 (21 секунда)
- scanimage —mode Color —depth 16 —resolution 200 (37.5 секунд)
- scanimage —mode Color —depth 8 —resolution 400 (71 секунда)
- scanimage —mode Color —depth 16 —resolution 400 (159 секунд)
- scanimage —mode Color —depth 8 —resolution 600 (150 секунд)
- scanimage —mode Color —depth 16 —resolution 600 (300 секунд)
- scanimage —mode Color —depth 8 —resolution 800 (293 секунды)
- scanimage —mode Color —depth 16 —resolution 800 -x 172.7 (413 секунд, PNM создается с ошибкой, а в TIFF нет последней строки)
- scanimage —mode Color —depth 8 —resolution 1600 -x 172.7 (833 секунды)
- Дополнительные возможности:
- command level: ESC/I-B8, FS
- 7 уровней яркости (реализовано программно, а не увеличением яркости лампы)
- line art: fixed threshold, text enhancement technology
- halftone: auto area segmentation, 3 режима error diffusion, 4 шаблона dither, 2 загружаемых шаблона (bi-level и quad-level)
- гамма коррекция: 2 типа для CRT, 3 типа для печати, 1 загружаемый
- цветокоррекция: 1 для CRT, 3 для принтера, 1 загружаемая
- Источник питания: DC 24V, 0.8A (15W/6W)
Я использую Red Hat 7.2 с ядром 2.4.9-13. USB-контроллер: UHCI (chipset Intel BX).
Так как ядро 2.4.9 ничего не знает о Epson Perfection 1650 (в 2.4.18 всё в порядке), то надо добавить в /etc/modules.conf строку:
Может возникнуть проблема со слишком маленьким временем ожидания подтверждения в драйвере. Стандартное время ожидания (в /usr/src/linux/drivers/usb/scanner.h) равно 10 секундам. Для Epson этого мало, особенно в режиме TPU и в больших разрешениях. В старом ядре приходилось менять scanner.h и пересобирать ядро. Затем у модуля scanner появился параметр read_timeout (только задавать его надо не в секундах, как написано в документации, а в тиках — 1/100 секунды). Сейчас драйвер сканера самостоятельно увеличивает этот параметр до 40 секунд для сканеров Epson. В новой версии драйвера также убран эффект «тормознутости» — приложение нельзя было снять в течении этих самых 40 секунд.
При подсоединении сканера в syslog приходят сообщения от ядра:
Oops! Ядро 2.4.9 (в 2.4.18 всё в порядке) ничего не знает об этом устройстве. Берем подходящую строчку из /etc/hotplug/usb.distmap от другого сканера Epson:
Копируем ее в /etc/hotplug/usb.handmap (не надо в /lib/modules/2.4.9-13/modules.usbmap, т.к. он формируется при каждой загрузке), заменив идентификатор устройства на 0x110. Переподсоединяем сканер — теперь hotplug счастлив (lsmod показывает загруженный модуль scanner):
То же самое можно сделать вручную:
Осталось убедиться, что права к устройству /dev/usb/scanner0 достаточны для пользователя, который будет сканировать.
Если сканер долго не использовать, то он отключается, а модуль выгружается из памяти. В результате автоматический поиск устройства не работает. Можно или передернуть устройство, перезагрузить драйвер вручную или указывать имя устройства явно.
Убедившись, что при подсоединении сканера автоматически загружается модуль scanner, переходим к следующему этапу. Дело в том, что USB драйвер Linux обеспечивает только транспортный уровень протокола, т.е. он умеет передавать/принимать байты, но не понимает их значения. Для работы с конкретной моделью сканера (или серией сканеров, если они используют общий командный язык) необходима программа, умеющая общаться именно с данной моделью сканера. Наиболее популярным комплектом таких программ является SANE.
SANE представляет собой API, который обеспечивает доступ к сканирующему оборудованию стандартизованным образом и библиотеку модулей для конкретных моделей сканеров. Поддерживаются не только USB сканеры, но SCSI-сканеры, устройства, подключаемые к параллельному порту, цифровые камеры из комплекта gphoto2 и другие устройства. Обеспечивается сетевая работа (я не пробовал).
В дополнение к библиотеке (backends), в состав пакета входят программы для сканирования (frontends): scanimage, xcam, xscanimage. scanimage — это консольная программа и пользоваться ею можно, но неудобно. xcam и xscanimage — убогие и глючные, так что лучше пользоваться xsane.
Получить SANE можно
- вместе с Red Hat 7.2: пакеты sane-frontends-1.0.5, sane-backends-1.0.5 и sane-backends-devel-1.0.5
- переустановив (rpm -Uvh) новые версии (1.0.6) с RawHide (они тянут за собой libusb-0.1.4-1.i386.rpm)
- собрав их самостоятельно (удалив предварительно старую версию и пакеты, которые от нее зависят):
- ./configure
- make
- make install
- добавить в /etc/ld.so.conf директории /usr/local/lib, /usr/local/lib/sane и запустить /sbin/ldconfig (т.к. самосборный SANE (устанавливается в /usr/local, вместо /usr)
Редактируем список устройств в файле /etc/sane.d/dll.conf (/usr/local/etc/sane.d/dll.conf, если собирали SANE самостоятельно): все лишние устройства надо закоментировать — автопроба неправильного драйвера может привести устройство или всю систему в неработоспособное состояние.
В /etc/sane.d/epson.conf добавить:
Тестируем список доступных устройств:
Среди распознанных устройств должно быть:
Тестируем работоспособность получившейся системы (весьма поверхностно):
Посмотрим какие возможности сканера доступны с помощью SANE:
Похоже версия 1.0.6 извлекает из аппаратуры все, что только можно:
- —mode Binary|Gray|Color
- —depth 8|16
- —halftoning (все что обещано аппаратурой)
- —dropout None|Red|Green|Blue
- —brightness -4..3 (не совместим с гаммакоррекцией)
- —sharpness -2..2
- —gamma-correction аппаратная гаммакоррекция, в т.ч. загружаемые кривые отдельно по каждому цвету
- —color-correction (эти параметры вручную точно не задашь 😉
- —resolution 50|60|72|75|80|90|100|120|133|144|150|160|175|180|200|216|240|266|300|320|350|360|400|480|600|720|800|900|1200|1600|1800|2400|3200
- —threshold 0..255
- —mirror[=(yes|no)]
- —speed[=(yes|no)]
- —auto-area-segmentation[=(yes|no)] (картинки halftoned, текст наоборот)
- —zoom 50..200
- —wait-for-button (1.0.8)
- —preview[=(yes|no)]
- —preview-speed[=(yes|no)]
- геометрия: -l, -t, -x, -y (mm)
- —source Flatbed|Transparency Unit
- —film-type Positive Film|Negative Film
- —focus-position Focus on glass|Focus 2.5mm above glass
При попытке сканирования более 32 КБ на строку выдает ошибку «out of memory». Это не недостаток оперативной памяти (памяти я закупил достаточно по случаю снижения цен ;), а проблемы с адресацией командного языка (на самом деле ограничение равняется 64 КБ на строку — Epson Twain 5 позволяет такое, но sane-epson ошибается вдвое).
Установив переменную окружения SANE_DEBUG_EPSON (от 1 до 128) можно получить отладочную печать в случае затруднений. Вот что устройство сообщает о себе:
Кстати, в комплекте есть модуль для захвата изображений с video4linux (например, v4l:/dev/video0), который работает с моей AverMedia TVPhone98.
scanimage позволяет отсканировать изображение с нужными параметрами и сохранить его в формате TIFF или PNM. Но пользоваться им можно разве что для тестирования. Поможет нам xsane — графическая оболочка к SANE. Также используется как plugin для GIMP, что позволяет сканировать изображения прямо из графического редактора.
Получить xsane можно
- вместе с Red Hat 7.2: пакеты xsane-0.77-4 и xsane-gimp-0.77-4 (но это очень старая версию с огромным количеством ошибок, например в некоторых режимах PNG сохраняется с ошибками)
- переустановив (rpm -Uvh) новые версии (0.82-3) с RawHide (почему-то нет русских меню)
- собрав их самостоятельно (удалив предварительно старую версию и пакеты, которые от нее зависят; не забудьте о plugin для GIMP:
/.gimp-1.2/pluginrc!):
- ./configure (иногда приходится давать —disable-sanetest)
- make
- в RH 7.1 ошибка gcc-2.96-81 при компиляции xsane.c:4501(xsane_mail_dialog), о чем честно предупреждается в xsane.INSTALL (видимо силенок не хватает скомпилировать 260КБ с -O2). Уменьшение уровня оптимизации позволяют завершить сборку.
- в RH 7.2 потребовалось установить пакет libusb-devel в дополнение к libusb, который потребовался обновленному sane
- make install
- /usr/local/share/sane/xsane
- /usr/local/share/locale
- /usr/local/man/man1
- /usr/local/share/sane
Вот и все: запускаем командой xsane или xsane epson:/dev/usb/scanner0, если не срабатывает автоматическое распознавание. После этого надо обязательно включить отображение всех окон и погулять по конфигурации.
Гаммакоррекция похоже в xsane-0.82 только программная.
Заменяет libsane-epson.so в /usr/lib/sane на свою реализацию libsane-epsonkw.so (является модификацией одной из ранних версий libsane-epson). Единственное замеченное мной различие — появилась гаммакоррекция — 1.8. Устанавливается библиотека libesmod.so в /usr/lib и графический интерфейс к SANE — iscan. Его также можно использовать как plugin для gimp.
Интерфейс проще, чем xsane. Появились кривые гамма- и цветокоррекции, но нет возможности управлять аппаратными функциями, белой и черной точек, гистограммы, 16 битных цветов, как в xsane. В общем, я не понял зачем это нужно.
Ограничение на размер строки сканирования в 32 КБ осталось 🙁
VueScan — библиотека драйверов сотни сканеров и графическая оболочка в одной программе. Нет исходных текстов. Shareware (изображения не сохраняются, пока не заплатишь автору). Ориентирована на слайдсканеры: поддержка инфракрасного канала, фокусировки, установки времени экспозиции, пакетной обработки, многократного сканирования (гм, Floating point exception); специальные фильтры обработки изображений для пленки: удаление зерна, восстановление «увядших» цветов (рекомендуется нажать кнопку «advanced options»). При попытке сканировать весь лист 1600x1600x16 получаем Segmentation fault (видимо та же проблема с ограничением размера изображения). Перед запуском надо установить переменные окружения, описывающие сканер:
Сканирование 3200 dpi. Заметна явная полосатость изображения — либо кто-то путает четные и нечетные строки, либо CCD не успевает «отдохнуть» за полшага.
Попытка многократного сканирования одной фотографии (c идеей дальнейшего усреднения с помощью convert -depth 16 -average) и последующее сравнение их (composite -depth 16 -compose difference) наводит на мысль, что младшие 8 бит на цвет генерируются датчиком случайных чисел (а на границе светлого и темного — все 10 ;).
Источник