I.R.I.S. Working Group

Interoperable Multimedia Retrieval in Distributed Systems

JPSearch - File Format

According to the reference software development plan, this document describes the implementation of the JPSearch File Format which supports the storage of metadata descriptions in a JPEG-2000 coded image. The provided implementation contains a standalone version for attaching existing metadata descriptions to an image raw data and an adaptation of the well known Caliph software for additional metadata annotation and transformation between metadata formats. Finally, the individual metadata descriptions in the arbitrary metadata formats can be stored as JPSearch File Format in a JPEG-2000 coded image file.


An overall description of the framework and its functionality has been already introduced in the input document WG1N5322 'JPSearch Part 6: Demonstration of the JPSearch File Format by a semi-automatic Image Annotation Tool'. In this document, the internal classes and modules are described, the changes in the Caliph application are highlighted as well as installation and utilization hints are given.
Related to this, Figure 1 presents the architecture of the JPSearch File Format framework. The implementation bases on the following external technologies (Java Swing for the graphical user interface and JDOM for manipulating XML instance documents). In addition it realizes the Model-View-Controller (MVC) concept.

The View component contains specialized user interfaces that provide means for adding metadata annotations in the supported metadata formats, namely MPEG-7, Dublin Core and JPSearch Core. Example screenshots of the respective interfaces are provided in Figure 2 (for MPEG-7), Figure 3 (for Dublin Core) and Figure 4 (for JPSearch Core).
The Controller component delegates the individual functionality requests (save, transform, delete, etc.) from the respective view elements to the model component.
The Model component provides the implementation for the addressed functionality. The main element in this component is the MetadataManager class. This class is implemented as singleton and ensures consistency among the instantiated metadata descriptions.

JPSearch File Format Architecture
Figure 1: Architecture of the JPSearch File Format application

The transformation between metadata formats is realized by a set of transformFromXXX methods. The current implementation supports three metadata formats, namely transformFromJPSearch (to map to JPSearch Core), transformFromMPEG7 (to map to MPEG-7) and transformFromDC (to map to Dublin Core). Furthermore, the MetadataManager supports checking the validity of the created XML instance documents (by using the checkValdidation() method).
By calling the doImport() method, the MetadataManager allows the creation of a valid image file concerning to the JPSearch File Format specification. Besides, by using the doExport() method a JPSearch File Format file can be decoded and the contained information is extracted.

Visualization of MPEG-7

The original Caliph implementation already provided visual components for annotation metadata with the MPEG-7 format. However, as the tool has been extended by additional metadata formats, the MPEG- 7 view has been organized within a tabbed pane (see Figure 2). Besides, the original implementation already provided means for annotation visual effects of images (e.g. color) and semantic descriptions. Furthermore, the pane allows through the buttons Show XML and Save XML, the visualization of the XML content as well as the storage of the active metadata description into a separate file at the local file system.

Screenshot for MPEG-7 annotations
Figure 2: Screenshot for MPEG-7 annotations in the extended Caliph application

Visualization of Dublin Core

Similar to the MPEG-7 visualisation, an annotation module for the Dublin Core schema has been integrated (see Figure 3). As the Dublin Core schema is focused on 15 core elements, two tabs are sufficient. Besides, the manual annotation in the provided text fields, a user is able to load preconfigured annotations by using the Get XML button. Again, the Save XML functionality supports the storage of the annotation in an external XML instance document at the file system.

Screenshot for Dublin Core annotations
Figure 3: Screenshot for Dublin Core annotations in the extended Caliph application

Visualization of JPSearch Core

Finally, the current implementation offers a user interface for annotating metadata according to the JPSearch core metadata format (see Figure 4). For supporting the full standard, 3 tabs for manually annotating the metadata are integrated. Here, again the full functionality (Get XML, Show XML, Save XML) for managing the description is available.

Screenshot for JPSearch core annotations
Figure 4: Screenshot for JPSearch core annotations in the extended Caliph application

back to JPSearch