Brain imaging surface mesh file format converter
Project description
mni2mz3
Converts a file from MNI polygonal surface mesh format (.obj
*) or
vertex-wise data (e.g. curvature, cortical thickness, *.txt
)
to Surf-Ice MZ3 (.mz3
).
Useful for visualizing surfaces using Surf-Ice or NiiVue.
[!WARNING] *Not to be confused with Wavefront .obj, which is a different spec but with the same file extension.
Installation
There are many ways to install and use mni2mz3
. Linux, Mac, and Windows are supported.
Using ChRIS
The easiest way to run mni2mz3
is on ChRIS, no installation needed.
Simply upload your data to a feed in https://app.chrisproject.org, then run pl-mni2common
.
Using Apptainer
pl-mni2common
is a ChRIS plugin wrapper for mni2mz3
, which means you can
use its container image to run mni2mz3
.
apptainer run docker://ghcr.io/fnndsc/pl-mni2common:latest mni2mz3 input.obj output.mz3
Call the wrapper script mni2mz3
instead to do bulk processing on an input directory.
apptainer run docker://ghcr.io/fnndsc/pl-mni2common:latest mni2mz3 inputdir/ outputdir/
Using cargo-binstall
cargo binstall mni2mz3
Using pip
pip install mni2mz3
Manual Download
Select and download the right binary for your architecture and OS from GitHub Releases: https://github.com/FNNDSC/mni2mz3/releases/latest
Compile From Source
Install Rust, then run
cargo install mni2mz3
Usage
# convert mesh
mni2mz3 surface_81920.obj surface.mz3
# convert data
mni2mz3 thickness.txt thickness.mz3
To do bulk conversions, use the ChRIS plugin wrapper.
Details
- Output file will be gzip compressed.
- For surfaces, only triangle meshes are supported.
- For data, only 32-bit single-precision "float" is supported.
Testing
It is recommended to install cargo-nextest.
cargo nextest run
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for mni2mz3-1.0.0rc5-py3-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c6a334df9ca680d659d9866ac8dec0086158d6465fb52556d1940201c8b43f03 |
|
MD5 | 3674e47dda234c1f77d7af9f2629a344 |
|
BLAKE2b-256 | 029a96a1c908a562504ed08a1f4d599f4729ee6f6c146273c1ccb7a6fcc71f5c |
Hashes for mni2mz3-1.0.0rc5-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b8fc6beeb9c87f009ab334875cbb584d6e1151426bdc66c1e477b2731faef376 |
|
MD5 | bc72cece4e29c62117f4ff247111433f |
|
BLAKE2b-256 | d8685bab77e14763633976a57a367a57a93a4581cb9a34234206d2544aa2c3d8 |
Hashes for mni2mz3-1.0.0rc5-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 955b16432dfa78d8bea1ca788260f0323a8fe4de1b5a4352a1c98b9ecba5edfa |
|
MD5 | 3433a28aaaea6033f04b5b97bb9a2919 |
|
BLAKE2b-256 | 238a56c62d23eee871bafd9fd0d3795c9622322b0cb2b45cf8964c6bab832c20 |
Hashes for mni2mz3-1.0.0rc5-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 669c06c932335f590ff9828a5fe2e301536fa413efa75bbc300c067d2b2b9300 |
|
MD5 | 09da664098a62b7f01624ff9a43f9ede |
|
BLAKE2b-256 | bf758e9b8251a7feda71631b758d07632ef7e91367a16f5312ca322e79cba327 |
Hashes for mni2mz3-1.0.0rc5-py3-none-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bf9548ec27d586e29798ff266a6d47bfa4a9e98b4bbb008eab61a8b76c3dd92d |
|
MD5 | 0c59ddfadf0c29ee890581f5baf1838f |
|
BLAKE2b-256 | bf18cc441731b09e016eb1c29da07b710b21c5f052933ed728d679be4d516b8e |
Hashes for mni2mz3-1.0.0rc5-py3-none-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 58105de5c62bb70d64cd8430a6fcdf32c0fdbaf32583e83bccbe0aaf78f138ef |
|
MD5 | a0978b3ef25a5d87faa20b9daffde601 |
|
BLAKE2b-256 | 3283ef9240020302483451f237e664775d4f3fb6653a7e274a17dbb78fb81d96 |