Giter Club home page Giter Club logo

Comments (13)

korbinian90 avatar korbinian90 commented on June 18, 2024 1

With the help of your dataset, I found a bug in scaling Int16 datasets. I have a solution and will push a new version early next week.

Thanks for reporting the problem!

from romeo.

korbinian90 avatar korbinian90 commented on June 18, 2024 1

It could be that I messed up when compiling. I was in a hurry and didn't check the compiled versions. I will do that tomorrow.
The julia version (before compilation) definetily worked for your dataset (I sent you the unwrapped and B0 files per email)

from romeo.

korbinian90 avatar korbinian90 commented on June 18, 2024

Thanks for trying ROMEO and giving feedback!

The phase does definitely not look unwrapped. Your echo times should be fine though.
My first guess would be that the Multi-Echo phase contains a strong phase offset (or initial phase at time 0), then the 4D temporal unwrapping step does not work. In that case the second echo phase should look fine, as it is spatially unwrapped.
You can try the -i flag, which avoids temporal unwrapping.

Please report back if the -i flag solves your problem.

from romeo.

tsalo avatar tsalo commented on June 18, 2024

Adding in -i does make the B0 map more interesting (see below), but now the unwrapped maps are entirely filled with the value -205953, across all four echoes. Although all of the values in both the B0 maps and the unwrapped maps in both cases were extreme and negative (~-5E6), which I wasn't really expecting.

B0 without -i

B0 with -i

from romeo.

korbinian90 avatar korbinian90 commented on June 18, 2024

Hm, that is weird. The B0 looks now only like some kind of combined magnitude.
Is it possible for you to send me this dataset (to [email protected])? I wonder what is different than from our datasets.

Otherwise you could compare your data to the example dataset in https://github.com/korbinian90/ROMEO.jl/tree/master/test/data/small.

Ah, from looking at the B0 (magnitude) image, I have an idea what could be happening. ROMEO creates by default a mask first and starts in a region of easy coherent phase and magnitude to unwrap. It could be that the white part in your image causes the problem here, either ROMEO could mask away the rest or thinks it is a perfect place to start unwrapping. If that is the case, giving ROMEO a mask as additional input or replacing the magnitude with 0 or NaN in that area should help. This should avoid that ROMEO sees the white area as good starting point for unwrapping.

I didn't have data that is rotated like this before. Maybe it would be a good idea if I create a first step in which all data of equal phase values will be cut away.

from romeo.

tsalo avatar tsalo commented on June 18, 2024

Absolutely! I'm planning to post these data to OpenNeuro at some point in the future anyway, so it's totally fine.

from romeo.

korbinian90 avatar korbinian90 commented on June 18, 2024

I uploaded the new release 2.0.2.
The problem should be fixed now.

from romeo.

tsalo avatar tsalo commented on June 18, 2024

Thank you for your help! Just to clarify, what settings did you use? I don't have uncombined data, so I can't use ASPIRE, which I think means that I need to use the -i flag, but at a glance the unwrapped maps look better when I don't use -i. B0 looks odd to me either way.

from romeo.

korbinian90 avatar korbinian90 commented on June 18, 2024

I also didn't use the -i flag for your data. For some coil combination methods the phase offsets are large and the phase evolution not linear anymore. Then you need to use the -i flag.

I think I used the same settings as you:
pha_v0010.nii -m bold_v0010.nii -t [11.8,28.04,44.28,60.52] -Bvq

from romeo.

korbinian90 avatar korbinian90 commented on June 18, 2024

I tried it today with the compiled version on your dataset. It seems to work fine.
I copied your command:
/tmp/romeo_linux_2.0.2/bin/romeo -m bold_v0010.nii -t [11.8,28.04,44.28,60.52] -Bvq -o . pha_v0010.nii

And this is the B0 map, I obtain:
image

If it is still not working for you, you can send me the output images you get, maybe I can guess from them what is going wrong.

from romeo.

tsalo avatar tsalo commented on June 18, 2024

Thanks again! I think I was perhaps seeing what you mentioned in your email, which is that my data may not be appropriate for quantitative B0 map estimation.

I will close this, but before I do I wanted to ask, would this repo or ROMEO.jl be most appropriate to open an issue about pushing to Docker?

from romeo.

korbinian90 avatar korbinian90 commented on June 18, 2024

I haven't worked with docker yet. I would say if the compiled version should be on docker then this repository and if the Julia version should then probably ROMEO.jl
ROMEO.jl has only the Romeo algorithm without nifti and B0 creation.
RomeoApp.jl is exactly the same as the compiled version, but running in Julia and not compiled. (For compilation I used CompileMRI.jl)
MriResearchTools.jl is a collection of tools and includes Romeo as well. (Maybe not yet the B0 part)
So it depends probably on what the purpose of docker would be to decide what would make sense to put into docker.
For me it doesn't really matter where you open the issue to discuss

from romeo.

tsalo avatar tsalo commented on June 18, 2024

It might be easier to push the compiled version if you're already compiling, but in most cases I'd build the Dockerfile around the uncompiled version (I guess RomeoApp.jl). I'll open the issue in this repo though. Thanks again.

from romeo.

Related Issues (19)

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.