Supported File Formats

<< Click to Display Table of Contents >>

Navigation:  Image Manager > CVB Technology >

Supported File Formats

 

Common Vision Blox supports a number of standard and non-standard file formats.

Non-standard file formats are often required to store extended information, for instance Windows graphics file formats do not offer the ability to store Common Vision Blox coordinate system information, for this reason a proprietary CVB format exists.

 

The hardware independent architecture of CVB requires a Video INterface file (VIN) to be loaded when an image acquisition device like a frame grabber or camera is used, the VIN format is proprietary to CVB and supports a wide variety of interfaces for ping pong acquisition, linescan acquisition, triggered acquisition and many more.

 

Video files such as AVI or MPG can be handled as an image acquisition device, meaning they expose at least the IGrabber interface which is used to acquire frame by frame of the video file.

This functionality is also available for a list of images that is defined in the so called EMUlator file format.

A list of any graphic files can be defined in a simple text file (extension *.EMU). Once the EMU file is loaded as an image it exposes the IGrabber interface.

 

 

Graphics File Formats

 

Video files

 

VIN Format ( image acquisition devices)

 

MIO Format

 

EMU Format

 

Graphics File Formats

 

Common Vision Blox supports several standard and non-standard image file formats and it does so using different libraries for loading and saving different image formats.

Find below a list of the supported formats along with some additional information :

 

BMP (*.bmp)

The Windows Bitmap format is perhaps the most important format on the PC platform. CVB supports BMP files with either 8 bits/Pixel (monochrome) or 24 bits/Pixel (colour).

RLE-compressed BMP can neither be loaded nor saved with CVB.

BMP file format support for CVB is native to the CVCImg.dll, i. e. no additional libraries are used for that format.

 

MIO (*.mio)

The MIO file format (MIO = Minos Image Object) is an uncompressed format proprietary to CVB and may only be loaded and saved using CVB-based software (e. g. the VCSizeableDisplay.exe sample application).
The MIO format supports any kind of image representation that CVB supports, i.e. you may have an arbitrary number of planes per image, any bit-depth supported by CVB, even floating point pixels.

Additionally the MIO format contains the coordinate system associated with the image object, plus the overlay information of your image (if the image has been created as an overlay image).

MIO support is again native to the CVCImg.dll.

TIFF (*.tif, *.tiff, *.xif)

The TIFF-format is a very widespread format on several computer platforms. However, the TIFF standard itself is quite complex and offers a huge variety of pixel formats, additional tags, planes etc.

Therefore almost all software packages support only a certain subset of the official TIFF standard - and CVB is no exception to this.

TIFF formats supported by CVB are from 8 to 16 bits/Pixel for one (monochrome) or 3 channels (colour).

Reading is supported for uncompressed images, LZW77 compressed images and Packbits compressed images.

Huffman-coding and Fax-coding are not supported as they would result in images with less than 8 bpp.

TIFF support in CVB is achieved through the libtiff library, version 3.5.7, Copyright (c) 1988-1997 Sam Leffler, Copyright (c) 1991-1997 Silicon Graphics, Inc.
The source of libtiff is available from www.libtiff.org.

For the complete libtiff copyright notice see below.

 

JPEG (*.jpg, *.jpeg, *.jpe, *.jif, *.jfif, *.thm)

The JPEG format is the perhaps most popular and most widespread image format with lossy compression.

JPEG support in CVB comprises 8 bpp images (monochrome) and 24 bpp images (colour) with jpeg compression.

There is an inherent limitation to images of 65536 pixels width and height in jpeg formats.

To adjust the compression level use the functions SaveLossyImage (method of the image Control ) or WriteLossyImageFile (function from the CVCImg.dll).
Valid quality values range from 0.1 to 1.0).

The default compression factor is 0.7.

JPEG support in CVB is fully based on the libjpg library version 6 provided by the Independent Jpeg Group, Copyright (C) 1991-1998, Thomas G. Lane, www.ijg.org.

JPEG2000 (*.j2k, *.jp2, *.jp2k, *.jpc, *.jpx)

The comparatively young JPEG2000 format is - much like its ancestor JPEG - a lossy image compression format based on wavelet compression technology.

It is recommended to use this image format only on fairly up-to-date computers, because JPEG2000 compression and decompression are extremely time consuming.

The boon of using JPEG2000 is a comparatively good image quality even at higher compression ratios (like JPEG, JPEG 2000 supports a quality parameter that may be set using the functions SaveLossyImage (method of the image Control ) or WriteLossyImageFile (function from the CVCImg.dll).
Valid quality values range from 0.002 to 1.0.

The default compression factor is 0.075.

Under CVB, JPEG2000 supports image formats with 8, 10, 12 or 16 bpp (monochrome) as well as 3x8, 3x10, 3x12, 3x16 bpp (colour).

JPEG2000 support in CVB is based on the free j2000 codec available from www.j2000.org.

The following file formats are supported in CVB through the commercially available AccuSoft ImageGear library.

They are available in CVB for the sake of completeness and flexibility, however we strongly recommend that you use the image formats listed above that cover most of the possible applications and offer a reasonably wide range of portability.

All of the formats below support 8 bpp and 24 bpp images only, the only exception being WMF which only supports 24 bpp.

For IFF and TGA both the RLE-compressed and the uncompressed variant are supported. Please note that the GIF support has been removed.

Adobe Photoshop (*.psd)

Clipboard format (*.clp)

Interchange File Format (*.iff)

Mac Picture (*.pct)

Multipage PCX (*.dcx) - only 1. page!

Portable Network Graphics (*.png)

Sun Rasterfile (*.ras)

Targe (*.tga)

Windows Metafile (*.wmf) - no vector images!

X-Windows Dump (*.xwd)

X11 Pixmap (*.xpm)

ZSoft Paintbrush (*.pcx)

It lies in the nature of most image formats that they are at times quite complex - especially if they offer a big variety of options such as TIFF for example.

Therefore it cannot be guaranteed, that CVB is able to read each and every image file in one of the above formats generated by each and every application - and vice versa - because different applications may provide different approximations to the standard.

Nevertheless we would be pleased to hear about any incompatibilities you may find, as this gives us the opportunity to further improve our software.

All the CVB image loading and image saving functions will decode the file format from the given filename, for example if you open a file called 'Clara.tif' it will automatically be interpreted correctly.

Similarly if you save an image with, for example, filename 'Clara.jpg' it will be saved with the correct encoding.

If you use a lossy format with the standard image saving functions, a reasonable default quality value applies that puts the emphasize on image quality rather than maximum compression ratio.

 

For more information and examples see chapter More Basics - Image file handling (load and save).

 

MIO Format

 

The Minos Image Object (MIO) file format is proprietary to CVB.

This format saves the image data as well as the coordinate system and origin information.

This extended information could be used to store calibrated spatial information, coordinate information used for correlation or simply information about a processed image.

 

The MIO format allows to store images with more than 8 Bit image data called High Dynamic range images (HDR).

 

 

Video files

 

This CVB AVI driver enables access to DirectShow compatible video files via the grabber interface of Common Vision Blox.

Among the supported file types are AVI and MPEG formats, but effectively the selection of compatible file formats depends on the codecs installed on your system .

As a general rule of thumb, most video formats that can be replayed using Microsoft Media Player can also be used with this driver.

 

For more details regarding the AVI driver take a look extra chapter How to deal with Video files.

FiledriverVideo

 

 

VIN Format

 

The Video INterface (VIN) files are used in Common Vision Blox to access different frame grabbers, cameras and other real or virtual devices.

The are at their core DLLs that contain the adaption of the hardware abstraction layer of Common Vision Blox for a given data source and are commonly referred to as "drivers" or "vin drivers" in Common Vision Blox.

For details refer chapter Image acquisition device drivers.

 

EMU Format

 

An EMU file is a simple text file defining a number of images to be loaded.

Using the IGrabber interface the application can 'acquire' from the image list.

Of course all images must have the same size and the same number of planes.

For details refer extra chapter How to use the virtual driver (EMUlator).

 

 

libtiff Copyright notice:

Copyright (c) 1988-1997 Sam Leffler

Copyright (c) 1991-1997 Silicon Graphics, Inc.

Permission to use, copy, modify, distribute, and sell this software and

its documentation for any purpose is hereby granted without fee, provided

that (i) the above copyright notices and this permission notice appear in

all copies of the software and related documentation, and (ii) the names of

Sam Leffler and Silicon Graphics may not be used in any advertising or

publicity relating to the software without the specific, prior written

permission of Sam Leffler and Silicon Graphics.

THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,

EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY

WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR

ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,

OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,

WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF

LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE

OF THIS SOFTWARE.