The Geospatial Data Abstraction Library (GDAL) is a unifying C/C++ API for accessing raster geospatial data, and currently includes formats like GeoTIFF, Erdas Imagine, Arc/Info Binary, CEOS, DTED, GXF, and SDTS. It is intended to provide efficient access, suitable for use in viewer applications, and also attempts to preserve coordinate systems and metadata. Python, C, and C++ interfaces are available.
libgeotiff is a library (normally built on top of libtiff) for reading and writing coordinate system information from/to GeoTIFF files. It includes CSV files for expanding projected coordinate system codes into full projections definitions and examples of transforming the definitions into a form that can be used with the PROJ.4 projections library. It also includes the sample applications listgeo (for dumping GeoTIFF information in readable form) and geotifcp (for applying geotiff tags to an existing TIFF or GeoTIFF file).
PROJ.4 is a cartographic projections and datum shifting library written in C. It includes support for many (100+) projections, including Transverse Mercator and Lambert Conformal Conic. Included is a command line program for reprojecting points. It was originally written by Gerald Evenden of the USGS, and is in active use in various commercial and freeware software.
Shapefile C Library is a C library for reading and writing ESRI Shapefiles and their related DBF files. All geometry types are supported, with robust DBF support. Shapelib is widely used for commercial and free projects. Shapelib includes command line utilities for dumping, subsetting, clipping, shifting, scaling, and reprojecting shapefiles.
arrayfrombuffer allows a programmer to use Numerical Python arrays whose contents are stored in buffer objects, including memory-mapped files. Loading an array from a file is easy, requiring only a module import and a single function call. Loading the array is quick because it doesn't require any copying from one part of memory to another. Arrays created with arrayfrombuffer are also highly memory-efficient, since only the array data that you are currently using gets loaded into memory. When an array is modified, only the modified parts get written back out to disk. These arrays can also be bigger than physical memory.
The libmba package is a collection of mostly independent C modules potentially useful to any project. There are the usual ADTs including a linkedlist, hashmap, pool, stack, and varray, a flexible memory allocator, CSV parser, path canonicalization routine, I18N text abstraction, configuration file module, portable semaphores, condition variables, and more. The code is designed so that individual modules can be integrated into existing codebases rather than requiring the user to commit to the entire library. The code has no typedefs, few comments, and extensive man pages and HTML documentation.
The OGR Simple Features Library is a C++ library providing read/write support for a variety of Geospatial (GIS) vector file formats including Shapefiles, Mapinfo MID/MIF and TAB, PostGIS, and Oracle Spatial. It attempts to follow an OpenGIS Simple Features geometry model, and use OpenGIS coordinate system standards. C and Python bindings are provided. It is a component of the GDAL project.
OpenGLUT is an open source project to evolve the GLUT API. It uses the FreeGLUT code base as a foundation for extending, enhancing, and refining the library interface. The initial goal is to define and implement OpenGLUT API Version 1.0, which is intended to supercede the GLUT 3.x API.
PCP (Pattern Classification Program) is a machine learning program for supervised classification of patterns. It runs in interactive and batch modes, and implements the following machine learning algorithms and methods: k-means clustering, Fisher's linear discriminant, dimension reduction using Singular Value Decomposition, Principal Component Analysis, feature subset selection, Bayes error estimation, parametric classifiers (linear and quadratic), pseudo-inverse linear discriminant, k-Nearest Neighbor method, neural networks, Support Vector Machine algorithm (SVM), model selection for SVM, cross-validation, and bagging (committee) classification.