This technical FAQ is divided into several sections:
What is a MediaObject?
A MediaObject is an object which contains an analyzed image, as well as information about that image.
MediaObjects contain the following items:
- Image properties such as height, width, size, etc
- Signatures that capture the visual content (color, texture, shape, object)
- Segmentation map
- Thumbnail of the original image (orginal image itself if it is smaller than 128x128)
- Path to the location of the original image
- Date and time when the image is analyzed
- Statistics related to the analysis process
- Metadata
What is a MediaCollection?
A MediaCollection is a set of MediaObjects. The MediaCollection allows a user to add images (as MediaObjects), delete images, search the images contained in it with image queries.
System Defaults and Recommended Parameters |
What are all the system defaults?
maxRegions=3
maxIterations=999
maxNodes=128
maxBinSize=32
maxSearchBins=16
maxClusterIterations=50
maxClusterAccuracy=0.02
maxRegions is the maximum number of regions into which an image should be segmented
maxIterations is the maximum number of iterations the algorithm executes to generate the segmentation map and the signatures (the higher the better, but that takes more time)
maxNodes is the maximum number of retrieval results to be returned by the search
maxBinSize is the maximum number of signature vectors per cluster
maxSearchBins is the maximum number of bins (clusters) to search around the target bin
maxClusterIterations is the maximum number of iterations the clustering algorithm executes to generate the bins
maxClusterAccuracy is the percentage of overall data moved during an iteration of the clustering algo. This is another termination criterion
How do I check to see if a particular MediaCollection exists?
If the directory in which the MediaCollection is stored contains a file named
glrtree.odb , the MediaCollection exists.
If I create a MediaCollection, does eVe open it automatically?
Yes. If you create a MediaCollection, eVe opens it for you. When you are finished with the MediaCollection,
call the MediaCollection's close() method.
Can I insert an image into a MediaCollection more than once?
Yes. Each inserted image receives a unique key.
EDF (eVe Data Format) Files |
When I insert an EDF into a MediaCollection, what key is used?
EDF files have a key (generated from a timestamp) that is stored in the EDF file. When you add an EDF file to a
MediaCollection, the key contained in the EDF file is used.
What happens if I insert two EDFs with the same key?
(This situation would apply in a hosting model where we are receiving EDFs from outside sources and have no control over the date/time when external EDFs are generated)
The second one is rejected. In this situation, you may have to open the second EDF file in a text editor
(such as Windows Notepad or Emacs) and manually edit the key. Incrementing the key value by 1 (one) should
solve the problem.
Is there a deleteProperty method for MediaCollections or for MediaObjects?
No. You cannot delete properties.
What is the difference between properties and metadata?
The main difference is that a property can contain any serializable object, whereas metadata
items can contain only strings. Because metadata contains only strings, you can perform a text
search on metadata items. You cannot search on properties.
What are the default properties in a MediaCollection?
The only default property in a MediaCollection is the CollectionName property.
What are the default properties in a MediaObject?
TBA
Why can't I add metadata to a MediaCollection?
MediaCollections do not contain metadata. They only have properties.
What are the defaults for searchParameters objects?
Color = 1.00
This is the only default. It sets the default search to be a straight color search.
Are metadata and property keys case-sensitive?
Yes.
What is the difference between the getRank() and getSimilarity() methods?
SearchResults.getRank() is used by internal search methods. SearchResults.getSimilarity()
does the final similarity computation.
C++ Questions (C++ high level API wrappers coming soon) |
How do primitive data types in Java get converted to operating system data types?
This is JVM-specific. Refer to your JVM's documentation for details.
How can I add a custom C++ object to a MediaCollection or MediaObject as a property?
Using a serializable object, convert the object to a byte array and attach it using the
setProperty() method.
What is the difference between the two setSearch() methods in SearchParameters?
Both methods have the same functionality. The method which takes an additional (Boolean) value was added
for compatibility.
To perform set operations, do you need an array of SearchResults objects?
Yes.
How do I perform a targeted region search?
At present, you cannot perform a targeted region search. This feature will be made available in the next
version of eVe.
How do I use the high-level API to access an object contained in a property?
In the current release, the high-level API attempts to return every property as a string value. This will be modified in subsequent releases. In the meantime, use the low-level API or cast the value returned by the high-level API to the correct type.
I'm working on applications which use previous versions of eVe. Is there an easy
way to switch between versions?
eVision will provide conversions/patches as new versions of eVe are released.
How can I tell if an image has been analyzed properly?
If the analysis fails, it throws an exception.
How do I create a custom EveException?
Refer to Chapter 5, "Error Handling", in the eVe SDK API Reference Guide.
What types of image files can eVe handle?
The ImageManager.supportedImageTypes() method returns the types of files eVe can handle directly. In addition, you
can use the ImageMagick application, included with eVe, to convert any of the following file types to types directly
supported by eVe.
AVI
|
AVS
|
BMP
|
BMP24
|
Cache
|
CGM
|
CMYK
|
DCM
|
DCX
|
DIB
|
EPDF
|
EPI
|
EPS
|
EPS2
|
EPSF
|
EPSI
|
EPT
|
FAX
|
FIG
|
FITS
|
FPX
|
GIF
|
GIF87
|
GPLT
|
GRADATION
|
GRANITE
|
GRAY
|
HDF
|
HISTOGRAM
|
HPGL
|
HTML
|
ICO
|
ICC
|
ILBM
|
IPTC
|
JBIG
|
JPEG
|
JPEG24
|
LABEL
|
MAP
|
MAN
|
MIFF
|
MNG
|
MPEG
|
M2V
|
MTV
|
MVG
|
NETSCAPE
|
NULL
|
PBM
|
PCD
|
PCDS
|
PCL
|
PCX
|
PDB
|
PDF
|
PGM
|
PICT
|
PIX
|
PLASMA
|
PNG
|
PNM
|
PPM
|
PREVIEW
|
PRINT
|
PS
|
PSD
|
PS2
|
PS3
|
PTIF
|
PWP
|
P7
|
RAD
|
RGB
|
RGBA
|
RLA
|
RLE
|
SCAN
|
SCT
|
SFW
|
SGI
|
SHTML
|
STEGANO
|
SUN
|
SVG
|
TGA
|
TIFF
|
TIFF24
|
TILE
|
TIM
|
TTF
|
TXT
|
UIL
|
UYVY
|
VICAR
|
VID
|
VIFF
|
WBMP
|
WIN
|
WPG
|
WMF
|
X
|
XC
|
XBM
|
XPM
|
XWD
|
|
|
|