All Projects → smistad → Fast

smistad / Fast

Licence: bsd-2-clause
A framework for GPU based high-performance medical image processing and visualization

Projects that are alternatives of or similar to Fast

Arraymancer
A fast, ergonomic and portable tensor library in Nim with a deep learning focus for CPU, GPU and embedded devices via OpenMP, Cuda and OpenCL backends
Stars: ✭ 793 (+343.02%)
Mutual labels:  parallel-computing, opencl, gpu-computing
gardenia
GARDENIA: Graph Analytics Repository for Designing Efficient Next-generation Accelerators
Stars: ✭ 22 (-87.71%)
Mutual labels:  opencl, parallel-computing, gpu-computing
learn-gpgpu
Algorithms implemented in CUDA + resources about GPGPU
Stars: ✭ 37 (-79.33%)
Mutual labels:  opencl, parallel-computing, gpu-computing
Dicom
⚡High Performance DICOM Medical Image Parser in Go.
Stars: ✭ 643 (+259.22%)
Mutual labels:  streaming, medical-imaging
Trisycl
Generic system-wide modern C++ for heterogeneous platforms with SYCL from Khronos Group
Stars: ✭ 354 (+97.77%)
Mutual labels:  opencl, gpu-computing
Hipsycl
Implementation of SYCL for CPUs, AMD GPUs, NVIDIA GPUs
Stars: ✭ 377 (+110.61%)
Mutual labels:  opencl, gpu-computing
Clojurecl
ClojureCL is a Clojure library for parallel computations with OpenCL.
Stars: ✭ 266 (+48.6%)
Mutual labels:  opencl, gpu-computing
Pyopencl
OpenCL integration for Python, plus shiny features
Stars: ✭ 790 (+341.34%)
Mutual labels:  parallel-computing, opencl
Accelerate
Embedded language for high-performance array computations
Stars: ✭ 751 (+319.55%)
Mutual labels:  parallel-computing, gpu-computing
Neanderthal
Fast Clojure Matrix Library
Stars: ✭ 927 (+417.88%)
Mutual labels:  opencl, gpu-computing
Cekirdekler
Multi-device OpenCL kernel load balancer and pipeliner API for C#. Uses shared-distributed memory model to keep GPUs updated fast while using same kernel on all devices(for simplicity).
Stars: ✭ 76 (-57.54%)
Mutual labels:  opencl, gpu-computing
Bayadera
High-performance Bayesian Data Analysis on the GPU in Clojure
Stars: ✭ 342 (+91.06%)
Mutual labels:  opencl, gpu-computing
Blendluxcore
Blender Integration for LuxCore
Stars: ✭ 287 (+60.34%)
Mutual labels:  opencl, gpu-computing
Luxcore
LuxCore source repository
Stars: ✭ 601 (+235.75%)
Mutual labels:  opencl, gpu-computing
Kernels
This is a set of simple programs that can be used to explore the features of a parallel platform.
Stars: ✭ 287 (+60.34%)
Mutual labels:  parallel-computing, opencl
Parenchyma
An extensible HPC framework for CUDA, OpenCL and native CPU.
Stars: ✭ 71 (-60.34%)
Mutual labels:  parallel-computing, opencl
Openclga
A Python Library for Genetic Algorithm on OpenCL
Stars: ✭ 103 (-42.46%)
Mutual labels:  opencl, gpu-computing
Accelerate Llvm
LLVM backend for Accelerate
Stars: ✭ 134 (-25.14%)
Mutual labels:  parallel-computing, gpu-computing
artic
The AlteRnaTive Impala Compiler
Stars: ✭ 16 (-91.06%)
Mutual labels:  parallel-computing, gpu-computing
MOT
Multi-threaded Optimization Toolbox
Stars: ✭ 28 (-84.36%)
Mutual labels:  opencl, parallel-computing

Join the chat on Gitter GitHub Downloads Pip Downloads

FAST is an open-source cross-platform framework with the main goal of making it easier to do high-performance processing and visualization of medical images on heterogeneous systems utilizing both multi-core CPUs and GPUs. To achieve this, FAST use modern C++, OpenCL and OpenGL.

Get started

First, make sure you have the requirements installed.
Stable binary releases/installers can be downloaded for Windows and Ubuntu Linux.

To start using the framework, see the Getting started with FAST guide and examples.

FAST is also available for Python 3 through pip: pip install pyfast
Python examples can be found here.

Need help? Use the gitter chat: Join the chat on Gitter

Main features

  • Data streaming – Processing pipelines in FAST can handle both static and dynamic/temporal data without any change to the code. FAST can stream data from movie files, your webcamera, an Intel RealSense camera, a sequence of images and even directly from ultrasound scanners such as Clarius.
  • Deep learning – FAST provides a common interface for neural networks supporting different model formats (ONNX, protobuf, SavedModel, OpenVINO, UFF) and backends (Google TensorFlow, NVIDIA TensorRT, Intel OpenVINO), making it possible to create real-time neural network pipelines.
  • High-level data management – Data objects in FAST represent data, such as an image, on all processors. FAST keeps data coherent across the different storage areas thereby removing the burden of explicit memory handling from the developer.
  • Wide data format support - FAST supports several data formats (DICOM, metaimage (MHD), regular jpg/png/bmp images, videos, HDF5, VTK polydata, whole slide images, ultrasound file format) and data types (images 2D and 3D, grayscale and color, image pyramids, surface mesh, vertices, lines, text ++).
  • High performance algorithms – FAST has several high performance parallel OpenCL implementations of common algorithms, such as marching cubes surface extraction, Gaussian smoothing, non-local means, block matching tracking and seeded region growing.
  • Fast concurrent visualization – Rendering and computation are done in separate threads to ensure smooth responsive visualizations. Several types of visualizations are supported both 3D (mesh, point, line, image slice and volume rendering) and 2D (2D image, image slice and segmentation/label rendering, whole slide image (WSI) pyramids).
  • Interoperability – FAST can be used with Python and can also be easily integrated into existing Qt applications.

Research

FAST has been described in the following research articles. If you use this framework for research please cite them:

FAST: framework for heterogeneous medical image computing and visualization
Erik Smistad, Mohammadmehdi Bozorgi, Frank Lindseth
International Journal of Computer Assisted Radiology and Surgery 2015

High Performance Neural Network Inference, Streaming, and Visualization of Medical Images Using FAST
Erik Smistad, Andreas Østvik, André Pedersen
IEEE Access 2019

Build

To setup and build the framework, see the instructions for your operating system:

  • Linux (Ubuntu)
  • Windows
  • Mac OS X Note: Mac OS X version is unstable and not actively maintained anymore due to Apple's decision to stop supporting OpenCL and OpenGL.

License

FAST itself is licenced under the permissive BSD 2-clause license, however the binary releases of FAST include several third-party libraries which use a number of different open source licences (MIT, Apache 2.0, LGPL ++), see the licences folder in the release for more details.

Surface mesh extracted from a large abdominal CT scan. Alpha blending ray casting rendering of a thorax CT image.

Ultrasound image segmentation using neural netwoks. Whole slide microscopy image.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].