About Generic Tagged Arrays (GTA)
The GTA project provides a file format called Generic Tagged Arrays that
- is very easy to use
- can store any kind of multidimensional array data
- allows generic manipulations of array data
- allows conversion to and from other file formats
The project consists of two parts:
- Libgta, a library that reads and writes GTA files, with interfaces in C and C++.
- Gtatool, a tool that manipulates GTAs and converts GTAs to and from other file formats.
Gtatool provides a set of commands that manipulate GTAs on various levels: array element components, array dimensions, whole arrays, and streams of arrays. For example, you can add components to array elements, merge separate arrays into combined arrays in different ways, apply global transformations to array data, reorder the array data, and much more.
Additionally, gtatool can import from and export to many other file formats, including:
- any kind of traditional image file formats (via GraphicsMagick or NetPBM))
- any kind of multimedia data (via FFmpeg and libsndfile)
- any kind of remote sensing data (via GDAL)
- medical image data in DICOM format (via DCMTK)
- high dynamic range images and data (via OpenEXR and Pfstools)
- volumetric data (in PVM or .dat/.raw or DICOM or raw binary format, or as image stacks)
- NetCDF files, including many HDF4 and HDF5 files (via NetCDF)
- MATLAB .mat files (via Matio)
- CSV (comma separated values) files
- NRRD data files (via Teem)
- Point cloud vertex data (via PLY and PCL)
- RAT RadarTools .rat files
- raw binary files (little/big endian, arbitrary data types)
The gui
command provides a graphical user interface for a subset of the full functionality.
Both libgta and gtatool are free software. Libgta is licensed under the terms of the GNU LGPL version 2.1 or later, and gtatool is licensed under the terms of the GNU GPL version 3 or later.