Shiver is an image processing program providing the ability to perform algorithms on one or more images.
The user selects a frontend like the command line or a QT-based graphical user interface. Depending on the frontend different work flows become more appropriate:
You can find shiver at http://sourceforge.net/projects/shiverfork.
needs
if documentation is required
Install the required libraries (development versions)
apt-get install libqt4-dev libqt4-core libqt4-gui
apt-get install libopencv-dev
apt-get install libopenexr-dev
apt-get install zlib1g-dev
apt-get install libpng12-dev
apt-get install libnetpbm10-dev
apt-get install libtiff5-dev
apt-get install libgif-dev
apt-get install libjpeg-dev
apt-get install doxygen
The above was tested on Debian Jessy, on Ubunto 12.04, also install
apt-get install libcv-dev
apt-get install libcvaux-dev
apt-get install highgui-dev
if OpenCV detection/compilation fails.
For dcraw: Download, compile and install the program in a directory contained in $PATH:
URL: https://www.cybercom.net/~dcoffin/dcraw/
e.g.
cd /tmp
wget https://www.cybercom.net/~dcoffin/dcraw/dcraw.c
gcc -o dcraw -O4 dcraw.c -lm -DNODEPS
sudo cp dcraw /usr/bin/
Create a new projects directory in your home directory (if not already present):
cd ~ && mkdir projects && cd projects
Check out the latest version using svn:
svn checkout svn://svn.code.sf.net/p/shiverfork/code/ shiverfork-code
Create a build directory (for out of source builds) into your shiver directory and go into it:
cd shiverfork-code && mkdir build && cd build
Run cmake pointing to the directory containing shiver.cpp e.g. ../shiver:
cmake -DCMAKE_BUILD_TYPE=release ../shiver
Run make scripts:
make
An executable called "shiver" should exist in the build directory afterwards.
If you want to update your local copy to the latest version, you just have to run (in ~/projects/shiver):
svn update
If you want to build the documentation, go to the build directory and run
make doc
This will generate html and latex directories within the build directory.
firefox html/index.html
or
cd latex
make
''Note:'' the documentation needs to be cleaned and improved.
Copy the "shiver" executable and the "plugins" directory to your local installation path.
Shiver provides two different interfaces: An intuitive QT window and a command line interface. One can perform image modifying routines in each of them. One can also save Filter configurations in one interface and use them in another.
The most important flags are:
A common console execution of shiver looks like this:
./shiver -FConsole --FThreshedTag ~/images/image.png ~/images/output_image.png
Or like this:
./shiver -FConsole --FThreshedTag --saveMarkers ~/images/imageslide/image*.png -o ~/images/tracked_imageslide/image%d.png
Or just (GUI)
./shiver
or
./shiver <filenames>
The QT frontend of shiver provides a scientific HDR image viewer. It allows you to view several images in parallel.
Shiver makes it easy to compare a set of image to each other. To achieve this, there are several Features implemented:
The default interface is the QMdiArea. One can control it via the Subwindow menu entry at the top. A tabbed image interface is also accessible from here.
Shiver also implements a filter interface. I will implement arbitrary filters in the course of time (for example Tone mapping operators, Resize, Corner/Edge detection and Thresholding). All of such filters will be available via command line interface as well. On top of that, they can be shortcutted by user defined buttons via the top menu entry Settings->Buttons. Each applied filter will be appended to a list of filters.
A global context menu can be activated by pressing the right mouse button at the top right corner of the program window. This context menu allows to toggle each dialog in the program window.
Besides the mentioned dialogs - the histogram and the user defined buttons - the global context menu toggles some additional widgets which enhance the productivity:
Finally a list of some short cuts:
*'''Backspace (<-)''': Setting viewing properties of given image (and all other connected images) to default parameters.
*'''Backslash ()''': Setting histogram limits to "Fit exactly".
*'''1,..,9''': Select image at tab position 1,..,9, when being in tabbed image interface.
*'''Alt + 1''': Switch to previous image.
*'''Alt + 2''': Switch to next image.
*'''F5''': Reload image.
Shiver provides several filters. Using filters is a common way to perform image processing algorithms on an image. One can store filters into a chain, called "filter chain". These filter chains are accessible via all available frontends. So one can design filter chains via the QT Gui and perform them via the command line, without using a graphical environment afterwards.
Download [[attachment:shiver_plugins.tbz2]] and extract it.
Ensure that
Create a build directory for the 'shiver_plugins' environment, preferably in shiver_plugins:
mkdir build && cd build
Run cmake with a path pointing to 'shiver_plugins' directory:
cmake -DCMAKE_BUILD_TYPE=debug ../
Run make:
make
Run make install. Consider permissions at install directory ( e.g. by sudo ).
make install
Finally run your shiver executable. The filter should be selectable.
Now you can change the contents of shiver_plugins to develop new filters.
More about git: http://git-scm.com/about
More about cmake: http://www.cmake.org/cmake/project/about.html
Welcome to your wiki!
This is the default page, edit it as you see fit. To add a new page simply reference it within brackets, e.g.: [SamplePage].
The wiki uses Markdown syntax.