IPOL : Image Processing on Line
Nicolas Limare, Jean-Michel Morel & the Image Team - CMLA, ENS Cachan
IPOL : Image Processing on Line
A new way to publish?
A new way to organize research in a lab?
Nicolas Limare, Jean-Michel Morel
& the Image Team
CMLA, ENS Cachan
Achieve "reproducible research" and therefore:
- allow everybody to try the algorithms on their own images …including deciders who do not program
- testing independent of any platform
(no code download, no system requirement)
- make all results of trials accessible in a public archive (experiment sharing)
"Reproducible research" also requires exhaustive documentation:
- give a list of examples and counterexamples, and explain them
- describe the algorithms carefully
(pseudo code, comments, implementation details)
- usable code for download
(standard, portable, self-contained)
(binary executable too)
for image processing research
- algorithm showcase (pre/post-publication)
- collective work (experiment sharing, debugging)
This is particularly adapted to image processing!
- lightweight data, short execution time
- lots of possible input, visual output
We need interaction and accessibility (technical and human).
-> web interface : HTTP/HTML/browser
Imperfect rendering (images, math, movies) but good compromise. With workarounds. And it's improving.
Only basic interactive controls.
Plug-ins are not reliable (Flash <87%, Java <65%).
means of the project
- on line server(s) (commercial off-the-shelf)
- execution in real/interactive time (<20 seconds)
(easy) parallel computing (multi core)
longer : submission interface
- research team on on line web tools
the interface matters
- reorganization of the work flow in a team
work flow in a research team
- math theory and first algorithm
- elimination of parameters, private tests
- internal web version tested on line by the whole team, feedback on code and theory
- list of examples and counterexamples established
- writing of the web site, green light to on line demo
- submission of paper , clear ideas on future work
- back to 1.
four functions for a demo server
- internal lab workshops, testing in group (private)
easy building blocks for assembling a complex chain
(video processing stereo…)
- on line service to contractors
- on line publication (even for "well known" algorithms)
a fourfold publication
The main page of each algorithm links to
- code download, (self-contained, standard, multi platform)
- archive of on line trials
- on line demo
- publication reference or preprint
on line demo
building a demo requires
- reliable compiled program, non-interactive, non-graphical
- full interface description + example data
basic on line edition tools are available
- cropping, resizing
- noising and blurring
current state of the site : public
main access (web pages and demos) -> http://ipol.im/
- ASIFT : affine invariant image matching
- LSD : line segment detection
- Random Phase Noise : microtexture synthesis
- Cartoon+Texture : image decomposition
- Retinex PDE : color constancy
- Color Balance : color space normalization
current state of the site : internal
- 5000 visits of the documentation pages
- 4000 visits of the demonstration pages
- 8500 executions of the demonstrations
- 4000 experiment archives
ASIFT : interface
ASIFT: affine invariant image comparison
ASIFT : description page
The website of each algorithms shows and explains the failure cases.
For instance for SIFT and ASIFT, failure comparing objects with night and day illumination.
ASIFT : archive
The on line demo gives also access to the on line archive.
More than 1800 different images.
By a simple click a closer view of each experiment is available.
Line segment detector (LSD), no parameter.
More than 1000 images in the archive
Make a substantial database of algorithms.
New ones. But many classic ones too.
Pass from atoms to molecules :
- stereo (calibration, stereo rectification, matching, reconstruction)
- image processing (noise, blur, color, contrast: requires reliable estimates)
- needs a scientific and technical committee
- needs a union of labs to start
(right now three labs volunteer)
- needs to fix very carefully the rules for code description, examples, etc.
- needs money