/himg

Experimental image compression tool based on adaptive hp-FEM

Primary LanguageC++GNU General Public License v2.0GPL-2.0

================
Welcome to HIMG!
================

HIMG is an experimental image compression code based on adaptive 
higher-order finite element methods (hp-FEM). It is built upon the 
Hermes2D library (http://hpfem.org/hermes2d).


Usage
=====

First install HIMG as described below. In Linux, 
set the PYTHONPATH variable to where your 
_hermes_common.so library is, and then (on Linux)
type

./run squares

In addition to "squares" you can also try "diag",
"lena", and "sat".

In MSVC, use the MSVC IDE. Set the command line parameters to 
``-i ../img/squares/squares.ppm`` and run the application HIMG.


License
=======

HIMG is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public 
License along with HIMG; If not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 
MA  02110-1301, USA.


Copyright
=========

Copyright (c) 2009 hp-FEM group at the University of Nevada, 
Reno (UNR). Email: hpfem@unr.edu, home page: http://hpfem.org/.


Download and Installation
=========================

Installation instructions for Linux and Windows MSVC can 
be found in the Sphinx documentation 
at http://hpfem.org/himg/doc/index.html. 


Documentation
=============

Generating and Viewing User Documentation Offline (Linux)
---------------------------------------------------------

Source files of the (Sphinx) user documentation are in the
directory doc/. In order to compile the user documentation, 
you need to install Sphinx. Then follow these steps:

cd doc
make html
firefox _build/html 

Generating and Viewing User Documentation Offline (Windows+MSVC)
----------------------------------------------------------------

This is a sequence of steps which will install Sphinx and which
will allow to generate user documentation. The steps assume that you
have already installed Microsoft Visual Studio 9 (MSVC) Express
Edition (or any higher edition) and you have a copy of HIMG sources.

All commands, which are marked with a keyword 'prompt:', are executed
in a command prompt opened in the step 3. Search for all mentioned
application through Google since, usually, the first link is the right
one.

1) Download and install python 2.6
2) Add paths 'my_python_path\' and 'my_python_path\Scripts' to
   the enviromental variable PATH.
3) Open a command prompt with MSVC variables:
   Search for 'Visual Studio 2008 Command Prompt' in the start menu.
4) Download and install setuptools 0.6c11
5) Install Sphinx using setuptools (Internet access required)
   prompt: easy_install -U Sphinx
6) Go to a folder doc folder of HIMG source tree
   prompt: cd my_himg\doc
7) Run NMAKE requesting HTML version
   prompt: nmake html
8) View the documentation using a file
   'my_himg\doc\_build\index.html'

Generating and Viewing Developer Documentation Offline (Linux)
--------------------------------------------------------------

Source files of the (Doxygen) developer documentation are
in the directory doc.cpp/. In order to build them you need
to install Doxygen. Then do:

cd doc.cpp/
doxygen himg.lib.doxyfile

This will generate documentation for the library.
To view the docs, type

firefox himg/html/index.html