Archv API

Archv has a REST API implemented using Eclipse Jetty. The Jetty servlet is meant to be embedded within the Archv application. When the servlet is started, the four programs of archv can be interfaced with using HTTP GET and POST requests.

If you want to set up the servlet on your system, you can clone the repository here: /avkoehl/archv-jetty.

What follows are the descriptions for interfacing with Archv through localhost served on port 8888. Each program can be accessed through a base url. The parameters are passed to the program following a specific format through the url. The structure is something like this:


Upon success, a json message will be recieved from the url.

{"file": "path/to/outputfile"}

Show Keypoints

The base url for showKeypoints:


The parameters that can be passed to showKeypoints:

-i = path/to/inputimage
-o = path/to/output.jpg
-p = path/to/paramfile

The full url:


Process Images

The base url for processImages:


The parameters that can be passed to processImages:

-i = path/to/imageset/
-o = path/to/keypointdirectory/
-p = path/to/paramfile

The full url:


Scan Database

The base url for scanDatabase:


The parameters that can be passed to scanDatabase::

-i = path/to/inputimage
-d = path/to/imageset
-k = path/to/keypointdirectory
-o = path/to/output.json
-p = path/to/paramfile

The full url:


Draw Matches

The base url for drawMatches:


The parameters that can be passed to drawMatches::

-i1 = path/to/image1
-i2 = path/to/image2
-o = path/to/output.jpg
-p = path/to/paramfile

The full url: