SpaceBIT (Big Images Tool): Very Big Image visualization and processing tool
An Italian SME developed SpaceBIT, a technology for visualizing and manipulating huge image and metadata coming from Earth Observation sources such as satellites and drones. Thanks to its capability to create, configure and execute massively parallel processing tasks on big datasets, spaceBIT can bring the power of heterogeneous computing on the desk of those professionals using imagery for diagnostic and second opinion (e.g. radiologists, dermatologists, ophthalmologists, etc.).
Space BIT is a tool that manipulates very big SAR and hyperspectral images together with image streams (live videos from e.g. drones) in real-time. It allows to create, configure and execute massively parallel processing tasks (specific for satellite imagery or science data) on big datasets on a high-end multi monitor desktop workstation by leveraging the power of a proprietary map/reduce framework. Its modern Human Machine Interface enables the user to easily interact with algorithms, image data and unstructured metadata and exploit the power of heterogeneous computing devices such as modern multi-core CPUs, Graphics Processing Units (GPUs) and Accelerators (FPGA and ASICs with OpenCL support). Great efforts were also made on designing a fluid, responsive and performant image visualization engine, based on industry standard technologies such as C++11, modern OpenGL and Qt5 toolkit. SpaceBIT supports simultaneous visualization of different images that can be navigated in co-registration mode, providing real-time graphical operation on them. Therefore, thanks to its high performance visualization and processing capabilities SpaceBIT is ready for use in production environment for manipulating HDF5, JPG, PNG and TIFF data sources. It can be adapted, for example, to typical medical imaging applications bringing the power of heterogeneous computing on the desk of many interested professionals such as radiologists, dermatologists, ophthalmologists and other categories that use imagery for diagnostic and second opinion.
Innovations & Advantages
Many fields of bio-medical research and clinical practice require imaging as an essential component. Radiologists identify and quantify tumours from Magnetic Resonance Imaging (MRI) and Computed Tomography (CT) scans, and neuroscientists detect regional metabolic brain activity from PET (Positron Emission Tomography) and functional MRI scans. Sophisticated computerized quantification and visualisation tools are required for the analysis of these diverse types of images. There are similar applications already available. Nevertheless, the advantages that SpaceBIT can provide to the user are:
• An accurate and generic coordinate conversion engine, given its capability to handle many different coordinate spaces: the user can load data sets and attributes from hierarchical and generic data files (HDF5, HDF-EOS, TIFF, JPEG,FITS)
• More processing power and interaction speed by exploiting the use of heterogeneous computing and parallel processing techniques: the user is able to visualize and process big images and data sets executing processing and visualization algorithms on multicore CPUs and discrete GPUs, thanks to a proprietary acceleration engine integrating Khronos OpenGL and OpenCL Application Programming Interface (API) for parallel applications
• Plug own algorithms for image processing, exploiting the SpaceBIT Software Development Kit (SDK) features
• Load ~4GiB image from disk to memory in less than 15s
• Create image pyramids on the fly, within-memory caching of tiles
• Maximise the use of Solid State Disks
• Execute real-time image filtering at about 400fps on GPU
SpaceBIT SDK engine framework
The desktop application of SpaceBIT is based on the SpaceBIT SDK. The SDK is a set of dynamic linking libraries, shared objects, C++11/C++17 include files, CMake scripts and executables that form an application framework.
Its main purpose is to support the development of performance critical, advanced scientific and engineering tools for processing oversized images (SAR, hyperspectral and standard) and oversized multidimensional data.
The framework provides many C++ classes, structures and functions, to:
• Interact with the underlying operating system
• Read and write image pixels
• Read and write hierarchical metadata
• Interact with standard hardware platforms
• Accelerate processing by driving any available multicore CPU and GPU
• Implement a Map/Reduce scheduler over multicore CPU
• Implement many accelerated image processing features
• Implement many accelerated coordinate transformation features
The framework provides many extension points. The most important ones are the “Engine Registry” and the “HD/IO Filters Registries”. The first allows adding new algorithms and processing capabilities. The second allows adding new input/output formats.
Furthermore, SpaceBIT SDK provides dynamic linking libraries for the following operating systems:
• Microsoft ® Windows 10 (32 bit & 64 bit)
• Linux RedHat
• Ubuntu Linux
• CentOS 7
• Gentoo Linux
• Apple ® macOS Sierra and MacOS X,
Space BIT is suitable for running on the following processor architectures:
• Intel/AMD x86 and x86_64
• ARM ARMv7-A and ARMv8-A
Current and Potential Domains of Application
Developed within two R&D programmes founded by the Italian and European Space Agencies, SpaceBIT is a tool that manipulates very big SAR and hyperspectral images together with image streams (live videos from e.g. drones) in real-time. Providing high performance visualization and processing capabilities, it is ready for use in production environment for manipulating generic HDF5, JPG, PNG and TIFF data sources. Given its modular architecture, for example, specific plugins for handling typical medical image formats such as DICOM files can be developed. Many fields of biomedical research and clinical practice require imaging, as an essential component: MRI, CT scans or PET exams require sophisticated computerized quantification and visualization tools for the analysis of their diverse types of images.
Nevertheless, the use space BIT is not limited to the medical sector. It could be applied to all those sectors requiring big image visualization and processing.
Other fields that could benefit from SpaceBIT are e.g. the energy and the defence & security ones. In the first case, SpaceBIT could be used, for example, to elaborate the output of thermal imaging cameras or modelling outputs of complex combustion systems in order to identify cold areas and optimise the combustion process itself. In the defence & security sectors, instead, SpaceBIT could support, for example, the surveillance of critical events or infrastructures to identify suspicious individual/activities or it could be used also to automatically identify and alert on the beginning of natural fires/arson, reducing the intervention time and natural devastation.