Proposals:ImageIO API for GUI Support: Difference between revisions
From KitwarePublic
Jump to navigationJump to search
Line 26: | Line 26: | ||
** std::string GetNthExtension(unsigned int) const | ** std::string GetNthExtension(unsigned int) const | ||
=== Translation Table === | === Translation Table for Writing === | ||
{|border="1" | {|border="1" | ||
Line 33: | Line 33: | ||
|- | |- | ||
| rowspan="2" | AnalyzeImageIO | | rowspan="2" | AnalyzeImageIO | ||
| Uncompressed header in binary || Analyze || .hdr | |||
|- | |||
| Uncompressed pixel data in binary || Analyze || .img | | Uncompressed pixel data in binary || Analyze || .img | ||
|- | |- | ||
| | | Compressed pixel data in binary || Analyze || .img.gz | ||
|- | |- | ||
| rowspan="1" | BMPImageIO | | rowspan="1" | BMPImageIO | ||
Line 100: | Line 102: | ||
| Text header followed by uncompressed pixel data in binary || NRRD || .vtk | | Text header followed by uncompressed pixel data in binary || NRRD || .vtk | ||
|} | |} | ||
=== Translation Table for Reading === |
Revision as of 13:16, 11 September 2008
ImageIO API for GUI Support
The Need
When building GUI applications based on ITK, it is common to use the ImageFileReader and ImageFileWriter classes, that through the ImageIO Factories are capable of supporting a large number of image file formats.
There are in fact, so many file formats supported, that it is challenging to list them all in the File Dialog of a GUI at the application level.
Current Support
Currently the ImageIO classes support the GUI interfaces by providing the following API
ArrayOfExtensionsType GetSupportedWriteExtensions() const ArrayOfExtensionsType GetSupportedReadExtensions() const void AddSupportedWriteExtension( const char * extension ) void AddSupportedReadExtension( const char * extension )
Proposed API
Enumeration of Extensions
- Suggested API for the ImageIO classes
- unsigned int GetNumberOfExtensions() const;
- std::string GetNthExtension(unsigned int) const
Translation Table for Writing
ImageIO | Description | Family | Extension |
---|---|---|---|
AnalyzeImageIO | Uncompressed header in binary | Analyze | .hdr |
Uncompressed pixel data in binary | Analyze | .img | |
Compressed pixel data in binary | Analyze | .img.gz | |
BMPImageIO | Uncompressed pixel data in binary | BMP | .bmp |
BioRadImageIO | ?? | BioRad | .?? |
Brains2ImageIO | ?? | Brains2 | .?? |
DICOMImageIO | ?? | DICOM | .?? |
GDCMImageIO | ?? | DICOM | .?? |
GE4ImageIO | ?? | GE4 | .?? |
GE5ImageIO | ?? | GE5 | .?? |
GEAwImageIO | ?? | GEAw | .?? |
GiplImageIO | ?? | GIPL | .?? |
IPLImageIO | ?? | IPL | .?? |
JPEGImageIO | Compressed pixel data in binary | JPEG | .jpg |
LSMImageIO | ?? | LSM | .?? |
MetaImageIO | ASCII Text Header | MetaImage | .mhd |
NiftiImageIO | Uncompressed pixel data in binary | Nifti | .img |
NrrdImageIO | Uncompressed pixel data in binary | NRRD | .nrrd |
PNGImageIO | Uncompressed pixel data in binary | NRRD | .png |
RawImageIO | Uncompressed pixel data in binary | NRRD | .raw |
SiemensVisionImageIO | Uncompressed pixel data in binary | NRRD | .?? |
StimulateImageIO | Uncompressed pixel data in binary | NRRD | .?? |
TIFFImageIO | Compressed pixel data in binary | NRRD | .tiff |
VTKImageIO | Text header followed by uncompressed pixel data in binary | NRRD | .vtk |