NeuroDesk / neurocontainers

The containers can be used in combination with our transparent singularity or neurocommand tool, that wrap the executables inside a container to make them easily available for pipelines
https://www.neurodesk.org
MIT License
21 stars 54 forks source link

add brkraw #601

Closed timwahoo closed 8 months ago

timwahoo commented 9 months ago

The ‘BrkRaw’ is a python module designed to provide a comprehensive tool to access raw data acquired from Bruker Biospin preclinical MRI scanner. This module is also compatible with the zip compressed data to enable use of the archived data directly. The module is comprised of four components, including graphical user interface (GUI), command-line tools, high-level and low-level python APIs.

For the GUI, we focused on improving convenience for checking metadata and previewing the reconstructed image.
For the command-line tool, we focused on providing tools for converting, organizing, archiving, and managing data. The command-line tool also provides easy-to-use function to convert large set of raw data into organized structure according to [BIDS](https://bids.neuroimaging.io/).
For the high-level python API, we focused on enhancing the accessibility of reconstructed image data with preserved image orientation and metadata for the image analysis. It compatible users' convenient objects type ([nibabel](https://nipy.org/nibabel/) or [SimpleITK](https://simpleitk.readthedocs.io/en/master/gettingStarted.html#python-binary-files)) without the conversion step.
For the low-level python API, we focused on providing a consistent method to access raw Bruker data including parameter and binary files with the python compatible datatype while keeping the sake of simplicity.
stebo85 commented 9 months ago

@Vbitz - could you try building this container using your new system?

stebo85 commented 9 months ago

Dear @timwahoo - brkraw is added now :) You need to run the update function in the application menu to see the entry in the application menu.

Let us know if it works well for you!

timwahoo commented 9 months ago

That's amazing, Thank you!

timwahoo commented 9 months ago

Hi @stebo85,

I tried to use brkraw on neurodesktop and was able to use it through singularity exec. Is there a way to add the library's CLI as well?

Thank you!

stebo85 commented 9 months ago

Dear @timwahoo,

You have have two options to access the CLI: 1) Click the update button in the Application menu and start the application from the Data Organisation tab -> brkraw -> brkraw 0.3.11. This will open the terminal with the CLI:

image

Alternatively, you can use the module system (there was a little bug there before, but this is fixed now):

image

Let us know if this works well for you :)

timwahoo commented 9 months ago

Hi stebo85,

Thank you for the update! Yes I was able to get it to work, but I ran into a problem with brkraw when testing it with my datasets. I'm not sure why this error occurred.

I am a developer for this software and would be happy to get this software working on neurodesktop. Is there anyway for me to debug the singularity container?

image

stebo85 commented 9 months ago

What do you mean with debug? Would it help to be able to install packages?

If yes you can make the singularity container writable: singularity shell --writable

timwahoo commented 9 months ago

I think the issue is the reading/opening the Bruker files through the singularity container. However, I'm not sure if that is the issue without confirming it because it works fine when installed on a local host machine.

I do not think any other packages need to be installed.

stebo85 commented 9 months ago

Ahh, when running through singularity did you make sure you can read the file in the first place? Did you bind mount the directory where the data is located?

stebo85 commented 8 months ago

Dear @timwahoo - are there any updates on this problem? Can you give us test dataset so we can also try to figure out why it's not working on our end?

timwahoo commented 8 months ago

Hi @stebo85,

Yes, I have tried it with different datasets and it only fails on datasets obtained from Bruker ParaVision 360. The problem is definitely in the brkraw side of things.

Here is a link to my datasets https://drive.google.com/drive/folders/1_3xzqR8CJD4VC1DIhy7lT_zyFYe2Pfyy?usp=sharing

Latest update: I think I found the problem, the brkraw version on neurodesktop was actually v0.2.14 not v0.3.11.

stebo85 commented 8 months ago

Dear @timwahoo

Ok, that's great to know! So should we update to v0.3.11 and the problem is solved?

Vbitz commented 8 months ago

Should be fixed with #625. A new container should be built soon.

brkraw changed their pip package name in a recent version. I've tested locally and it returns v0.3.11 now.

stebo85 commented 8 months ago

thank you!

stebo85 commented 8 months ago

Dear @timwahoo,

This is fixed now:

image

can you test on your side?

timwahoo commented 8 months ago

It works great, thank you for taking the time and effort!

stebo85 commented 8 months ago

great to hear and thank you for confirming!