Giter VIP home page Giter VIP logo

itkmghimageio's Introduction

ITKMGHImageIO

Build, test, package status PyPI Version

ITK remote module for IO of images stored in mgh, mgz and mgh.gz formats.

See https://surfer.nmr.mgh.harvard.edu/fswiki/FsTutorial/MghFormat https://surfer.nmr.mgh.harvard.edu/

History

The original implementation was developed in the Slicer code base (folder Slicer/Libs/MGHImageIO) with contributions from Nicole Aucoin, Steve Pieper, Georghe, Dennis Jen, Bruce Fischl, Sebastien Barre, Jim Miller, Bill Lorensen, Dominique Belhachemi, Jean-Christophe Fillion-Robin, Julien Finet, Matt McCormick, Hans Johnson, Kent Williams and Andras Lasso.

In May 2013, Hans Johnson created the repository Slicer/itkMGHImageIO enabling ITK based programs to support reading and writing MGH files. See Slicer/itkMGHImageIO@4fa1fd815. Between 2013 and 2021, this more general implementation has been developed with contributions from Hans Johnson, Mathew Seng, Xiaoxiao Liu, Matt McCormick, Jon Haitz Legarreta, François Budin, Zach Williamson and Jean-Christophe Fillion-Robin.

In September 2015, starting with Slicer commit Slicer/Slicer@184e907df, Slicer was updated to use the IO provided by Slicer/itkMGHImageIO through the ITK remote module mechanism.

Finally, in December 2021, the project originally created in the Slicer GitHub organization was transferred to the InsightSoftwareConsortium GitHub organization and re-forked into the Slicer one. The ITK remote module was also updated to reference the project in the InsightSoftwareConsortium organization. See InsightSoftwareConsortium/ITK@f84c9ef09.

itkmghimageio's People

Contributors

blowekamp avatar dzenanz avatar hjmjohnson avatar jcfr avatar jhlegarreta avatar mseng10 avatar tbirdso avatar thewtex avatar xiaoxiaoliu avatar zachary-williamson avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

itkmghimageio's Issues

Propose moving ITK Remote Module to InsightSoftwareConsortium.

====== Can we start an InightSoftwareConsortium/itkMGHImageIO repository that is separate from this one as the preferred repo for this code? From a development standpoint this will be easier because itkMGHImageIO is now part of the standard ITK remote modules. I would suggest keeping the current repo hosted under the Slicer/ organization for historical purposes, but make one more merge request that replaces all the master head content with a single README file redirecting to the new InightSoftwareConsortium/itkMGHImageIO home.

MGHIO File Writing is incorrect

The MGHIO file writing seems to have bugs when certain direction cosigns are used. There seems to be a bug in computing the correct origin to store in the .mgz file

TODO:

  1. use freesurfer's mriconvert to read a reference.nii.gz file and write a proper reference.mgh file
  2. write a test case that reads the nii.gz file, and writes a temporay test.mgh file
  3. compare the test.mgh file to the reference.mgh file
  4. read the reference.mgh file and compare to the reference.nii.gz file

HINTS:

Refactor the code to replace c-style arrays with itk::Vector and itk::Matrix, then use matrix operations to describe the mathemetics that need to occur.

For example when converting from RAS to LPS, multiply by a matrix:
LPS2RPS=
[ -1 0 0;
0 -1 0;
0 0 1]

https://surfer.nmr.mgh.harvard.edu/fswiki/CoordinateSystems?action=AttachFile&do=get&target=fscoordinates.pdf

itk::Point ( .GetVectorFromOrigin() )
itk::Vector
itk::Matrix

Propose moving ITK Remote Module to InsightSoftwareConsortium.

====== Can we start an InightSoftwareConsortium/itkMGHImageIO repository that is separate from this one as the preferred repo for this code? From a development standpoint this will be easier because itkMGHImageIO is now part of the standard ITK remote modules. I would suggest keeping the current repo hosted under the Slicer/ organization for historical purposes, but make one more merge request that replaces all the master head content with a single README file redirecting to the new InightSoftwareConsortium/itkMGHImageIO home.

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.