ACM International Conference on Image and Video Retrieval
 
 
July 8-10 2009, Island of Santorini, Greece
 
 

VideOlympics 2009 Protocol Definition

For submission of search results all video retrieval systems must adhere to the VideOlympics protocol definition. To register your shot selection, your system needs to use a single HTTP GET call. Since almost any language supports HTTP GET calls it shouldn't be too hard to extend your existing application to do this. If your language does not natively support HTTP GET calls this can be done by manually opening a TCP/IP connection and writing a minimal HTTP header with this call. We provide an example client. This client is command-line based and can be called directly from your application.

You should register your shot as soon as you've found it, not just-before the end of the contest. In the interest of the contest it will not be possible to un-register a shot later on, or re-order your submitted shots in a different sequence. Once a shot is registered this is final. Note: registering the same shot more than once will not produce an error. However, this is also not very effective: each shot will be counted only once.

Call / Response

A shot registration submission has the following form:
http://<SERVER>/team=<TEAMNO>/shot<NR>_<NR>


where:
<SERVER>the server, which will typically be an IP adres with a port number, such as 10.0.0.99:8001
<TEAMNO>your team number, which will be given to you at the start of the contest. Make sure you can change this easily (e.g. by editing a configuration file).
shot<NR>_<NR>the shot you want to bookmark, in the same notation as the TRECVID 2007 test set shot identifiers. For example shot112_34. The parser will stop after the last integer, so if you submit shot112_34_RKF this is not a problem.

The response will be given in the body of the HTTP response. Parsing of the response is not required, but can be helpfull for feedback on the selection. Listed below is a series of possible responses.


Response Description
OK Shot has been registered
ERROR INVALID Shot NR is unknown or you've specified an invalid URL
ERROR TOOSOON You've tried to register a shot but the contest has not yet started.
ERROR TOOLATE You've tried to register a shot after the contest ended.

Example responses

In the examples below we assume that the server is running on 10.0.0.99 port 8001.
INPUT:   http://10.0.0.99:8001/team=3/shot111_14
ANSWER:  OK
MEANING: You are team 3 and bookmarked shot111_14

INPUT:   http://10.0.0.99:8001/shot111_14
ANSWER:  ERROR INVALID
MEANING: You forgot to submit your team number.

INPUT:   http://10.0.0.99:8001/team=3/shot112_300
ANSWER:  ERROR INVALID
MEANING: The shotnumber is invalid: it was not 
         in the TRECVID 2008 test set

Network topology

All clients will be connected through a 100Mbit dedicated Ethernet HUB used solely for communicating with the VideOlympics contest server. The client should be self-contained. An internet connection is not available.

Example client and server

For your convenience we have implemented a test client and a test server. Both are written in Python.

Usage: Start the server:
$ python TestServer.py
Use a client for team 3:
$ python ExampleClient.py shot111_72 3
OK
$ python ExampleClient.py shot112_272 3
ERROR INVALID
As you can see the testing server does know which shots are valid and which are invalid.

As an alternative example for a client the command line tool wget can also be used. The example code below provides a perfectly valid client:

  
wget -q -O- http://localhost:8001/team=3/shot111_14
OK