You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Bernd Zeimetz 19fbc08405 Updating changelog 5 years ago
debian Updating changelog 5 years ago
docs Imported Upstream version 0.4.2 6 years ago
examples Imported Upstream version 0.4.2 6 years ago
lqr Imported Upstream version 0.4.2 6 years ago
man Imported Upstream version 0.4.2 6 years ago
AUTHORS Initial release 11 years ago
BUGS Initial release 11 years ago
COPYING Initial release 11 years ago
COPYING.LESSER Initial release 11 years ago
ChangeLog Imported Upstream version 0.4.1 10 years ago
INSTALL Initial release 11 years ago
Makefile.am Imported Upstream version 0.4.0 10 years ago
Makefile.in Imported Upstream version 0.4.2 6 years ago
NEWS Imported Upstream version 0.4.0 10 years ago
README Imported Upstream version 0.4.1 10 years ago
README.Windows Imported Upstream version 0.4.2 6 years ago
TODO Imported Upstream version 0.2.0 11 years ago
aclocal.m4 Imported Upstream version 0.4.2 6 years ago
autogen.sh Imported Upstream version 0.4.0 10 years ago
config.guess Imported Upstream version 0.4.2 6 years ago
config.h.in Imported Upstream version 0.4.2 6 years ago
config.sub Imported Upstream version 0.4.2 6 years ago
configure Imported Upstream version 0.4.2 6 years ago
configure.ac Imported Upstream version 0.4.2 6 years ago
depcomp Initial release 11 years ago
install-sh Imported Upstream version 0.4.2 6 years ago
lqr-1.pc.in Initial release 11 years ago
ltmain.sh Imported Upstream version 0.4.2 6 years ago
missing Initial release 11 years ago
mkinstalldirs Initial release 11 years ago

README


LiquidRescale library 0.4.0
===========================

Table of contents
-----------------
* Introduction
+ Library features
* Installation
+ Requirements
+ Normal setup
* Using the library
* References
* Copyright


+ Introduction
--------------

The LiquidRescale (lqr) library provides a C/C++ API for
performing non-uniform resizing of images by the seam-carving
technique.

++ Library features

The library takes images in plain array format as input
and converts them to a multi-size representation.
Following is a list of features:

* Easy to use and fully documented API
* Currently supports 8 bit to 64 bit per channel images
* Support for different color models: grayscale, RGB, CMY
and their variants, and even custom ones
* Areas in the image can be marked for preservation or
discard, or for additional seam rigidity
* Once the image has been fully processed, the scaling can
be done in real-time. In fact, the information can be saved
and read out later without any further processing
* The resizing is done with a single function which
automatically performs all the necessary operations; it
can also work in successive steps without wasting
computational time
* Possibility to tune the carving operation by letting the
seams be less connected, or more rigid, or both (the
rigidity can be also be modulated through a mask, to get
a differnet behaviour in different areas of the image)
* Can export and import the visibility map (the seams)
* Other images can be attached and undergo the same carving
process as the parent image
* The automatic feature detection algorithm can be tuned
by selecting among different energy gradient functions,
and easily defining custom ones
* Reports progress through a customisable interface
* A signalling system permits to cleanly handle errors
* Portable to all major OS's



+ Installation
--------------

++ Dependencies

The lqr library depends on the glib-2.0 libraries

++ Normal setup

The build package uses autotools and libtool, so the installation
commands on Unix systems are simply

./configure && make && sudo make install

The last step requires administrative privileges.
(Note: the default installation path is /usr since version 0.4)

If you want to also install the man pages for the library functions,
add the option `--enable-install-man' in the call to ./configure.

If you want to disable legacy macro names which do not begin with
LQR_ then add the option `--diable-legacy-macros'

See the INSTALL file for a full description.



+ Using the library for development
-------------------------------------

In order to use the library functions and structures from
a C or C++ program, you have to add this include line in
your program:

#include <lqr.h>

At compile time, you can take advantage of pkg-config to set
the proper flags.

In the `examples' directory you can find a basic example program,
`liquidrescale-basic', and a full-featured demo program,
`liquidrescale', together with a simple Makefile. Both
programs are fully commented.

The "basic" version demonstrates how to use the strictly-needed
library functions, while the full version uses almost all of the
API methods provided. The Makefile shows how to set the compilation
flags.

See the README file in that directory for more information.

The complete manual and reference for the library, together with
some additional notes, can be found in the `docs' directory in
docbook format. The reference is also provided in man page format.
The makefile in that directory (hopefully) generates the manual in
html format, using xsltproc; then you'll find the index named after
`liblqr_manual_index.html'.
See the README file in that directory for further information.



+ References
------------

The library implements the algorithm described in the paper
"Seam Carving for Content-Aware Image Resizing"
by Shai Avidan and Ariel Shamir, which can be found at
http://www.faculty.idc.ac.il/arik/imret.pdf



+ Copyright
-----------

Copyright (C) 2007-2009 Carlo Baldassi <carlobaldassi@gmail.com>