GithubHelp home page GithubHelp logo

zzhalan / fast Goto Github PK

View Code? Open in Web Editor NEW

This project forked from smistad/fast

0.0 0.0 0.0 12.19 MB

A framework for GPU based high-performance medical image processing and visualization

Home Page: https://fast.eriksmistad.no

License: BSD 2-Clause "Simplified" License

CMake 5.82% C++ 82.64% C 10.03% Python 0.76% GLSL 0.35% SWIG 0.39%

fast's Introduction

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

See installation instructions for Windows, Ubuntu Linux and macOS.

To start using the framework, check out the C++ Intro Tutorial or the Python Intro Tutorial.

Learn best by example? Check out all the examples for C++ and Python.

For more examples and documentation, go to fast.eriksmistad.no.

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:

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.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.