Skip to content

Commit

Permalink
Update version to 0.2, update requirements and README
Browse files Browse the repository at this point in the history
  • Loading branch information
jbaiter committed Jun 30, 2013
1 parent 19dd0c3 commit 1245782
Show file tree
Hide file tree
Showing 4 changed files with 54 additions and 32 deletions.
14 changes: 14 additions & 0 deletions CHANGELOG.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
0.2 (2013/06/30)
- New plugin system based on Doug Hellmann's `stevedore` package,
allows packages to extend spreads without being included in the core
distribution
- The driver for CHDK cameras no longer relies on gphoto2 and ptpcam,
but relies on Abel Deuring's `pyptpchdk` package to communicate with
the cameras.
- `Wand` is now used to deal with image data instead of `Pillow`
- New 'colorcorrection' plugin allows users to automatically correct
white balance.
- Improved tutorial

0.1 (2013/06/23)
Initial release
63 changes: 35 additions & 28 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,34 +3,46 @@
.. image:: https://secure.travis-ci.org/jbaiter/spreads.png
:target: http://travis-ci.org/jbaiter/spreads

Introduction
------------
*spreads* is a tool that aims to streamline your book scanning workflow.
It takes care of every step: Setting up your capturing devices, handling
the shooting process, downloading the images to your machine,
the capturing process, downloading the images to your machine,
post-processing them and finally assembling a variety of output formats.

Along the way you can always fine-tune the auto-generated results either
by supplying arguments beforehand, or by inspecting the output and
applying your modifications.

*spreads* is meant to be fully customizable. This means, adding support for
plugins is made as painless as possible. Support for plugins that can
either hook into the various commands or add new ones is on the agenda,
stay tuned!
*spreads* is meant to be fully customizable. This means, `adding support
for new devices`_ is made as painless as possible. You can also
hook into any of the *spread* commands by imlementing one of the available
`plugin classes`.


Quickstart
----------
*spreads* can be easily installed from PyPi::

$ pip install git+git://github.com/jbaiter/spreads.git@master
$ pip install spreads

*spreads* offers an interactive wizard that guides you through the whole
process::
*spreads* offers an interactive wizard that takes you from a physical book
to a digitized version in one single workflow with minimal user input::

$ spread wizard ~/my_scanning_project

*spreads* is a tool that aims to streamline your book scanning workflow.
It takes care of every step: Setting up your capturing devices, handling
the shooting process, downloading the images to your machine,
post-processing them and finally assembling a variety of output formats.

Along the way you can always fine-tune the auto-generated results either
by supplying arguments beforehand, or by inspecting the output and
applying your modifications.

*spreads* is meant to be fully customizable. This means, adding support for
plugins is made as painless as possible. Support for plugins that can
either hook into the various commands or add new ones is on the agenda,
stay tuned!


Features
--------
Expand All @@ -40,40 +52,35 @@ The following features are supported:
which is right)
* Shoot with both cameras **simultaneously**
* Download images from cameras and combine them into a single directory
* Automatically rotate the images and optionally adjust the white balance
(if a gray card has been used during shooting).
* Create a ScanTailor project file that the user can either further edit
or run automatically
* Automaitcally generate PDF and DJVU output
* Interactive Wizard-Mode that handles the full workflow from image
capturing to post-processing

The following features are on the agenda, but not implemented yet:

* Automatically dewarp the scanned images using ppmunwarp_
* Do color-correction using a `graycard and imagemagick`_

Requirements
------------
* Python 2.7
* The `clint library`_ (used for the console interface)
* The `pillow library`_ (used to obtain EXIF information and rotate images)
* The `pyusb library`_ (used to obtain information about attached cameras)
* Two cameras running CHDK (development was done using two Canon A2200s,
no further cameras were tested, but should work in theory)
* A version of `ptpcam modified for CHDK`_ in /usr/bin
* gphoto2
* Python 2.7 with pip_ installed
* libusb with headers installed
* An up-to date version of ScanTailor-enhanced_
* pdfbeads_
* djvubind_

Documentation
-------------
More documentation is available on readthedocs_

.. _DIYBookScanner: http://diybookscanner.org
.. _adding support for new devices: http://spreads.readthedocs.org/en/latest/extending.html#adding-support-for-new-devices
.. _plugin classes: http://spreads.readthedocs.org/en/latest/api.html#spreads-plugin
.. _ppmunwarp: http://diybookscanner.org/forum/viewtopic.php?f=19&t=2589&p=14281#p14281
.. _graycard and imagemagick: http://diybookscanner.org/forum/viewtopic.php?f=20&t=2848
.. _clint library: https://github.com/kennethreitz/clint
.. _pillow library: https://github.com/python-imaging/Pillow
.. _pyusb library: https://pypi.python.org/pypi/pyusb/1.0.0a3
.. _ptpcam modified for CHDK: http://forum.chdk-treff.de/download/file.php?id=1640
.. _ScanTailor-enhanced: http://sourceforge.net/p/scantailor/code/ci/enhanced/tree/
.. _ISO: http://chdk.wikia.com/wiki/CHDK_scripting#set_sv96
.. _shutter: http://chdk.wikia.com/wiki/CHDK_scripting#set_tv96_direct
.. _readthedocs: http://spreads.readthedocs.org
.. _pip: http://www.pip-installer.org
.. _ScanTailor-enhanced: http://sourceforge.net/p/scantailor/code/ci/enhanced/tree/
.. _pdfbeads: http://rubygems.org/gems/pdfbeads
.. _djvubind: http://code.google.com/p/djvubind/
3 changes: 3 additions & 0 deletions requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,6 @@ coverage>=3.6
mock>=1.0.1
nose>=1.3.0
sphinxcontrib-fulltoc==1.0
pyptpchdk >= 0.2.1
Wand >= 0.3.1
stevedore >= 0.9.1
6 changes: 2 additions & 4 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,10 @@

setup(
name='spreads',
version='0.1',
version='0.2',
author='Johannes Baiter',
author_email='[email protected]',
#packages=['spreads', 'spreadsplug'],
packages=find_packages(),
packages=['spreads', 'spreadsplug'],
include_package_data=True,
scripts=['spread', ],
url='http://github.com/jbaiter/spreads',
Expand All @@ -22,7 +21,6 @@
"PyYAML >= 3.10",
"Wand >= 0.3.1",
"stevedore >= 0.9.1",
"setuptools-git >= 1.0b1",
],
entry_points={
'spreadsplug.devices': [
Expand Down

0 comments on commit 1245782

Please sign in to comment.