wanderine / BROCCOLI

BROCCOLI: Software for Fast fMRI Analysis on Many-Core CPUs and GPUs
GNU General Public License v3.0
113 stars 38 forks source link

Roadmap? #47

Open a-hurst opened 6 years ago

a-hurst commented 6 years ago

Just discovered this project through the frontiers article and am very impressed with the speed you've managed to achieve with OpenCL. However, given the lack of recent activity in the repo, I'm concerned that the funding or interest for maintaining/refining the project has died out, making it potentially a bad time investment to learn. If there is still a will and intent to keep working on BROCCOLI (which I really hope there is, being able to do first-level analyses in minutes instead of days would be amazing), is there a development roadmap that could be made public to reassure us that the project has a future?

If funding is an issue, I'd imagine a little publicity on some neuro blogs and a proper website with some simple tutorials would help get more people interested in the project, including people who would happily contribute code/donations.

Cheers,

wanderine commented 6 years ago

Hi Austin,

for the last years I struggled to find funding for my research, but now I have finally secured funding for the next 4 years (not for BROCCOLI per se, but to stay alive). Since I had to spend a lot of time writing grants, I could not spend a lot of time on BROCCOLI.

Another aspect is that I'm now supervising several PhD students, and thereby have less time for my own research.

But yes I want to continue working on BROCCOLI. Regarding development roadmap I have to give it some thought on what needs to be improved and/or added.

2018-04-09 4:31 GMT+02:00 a-hurst notifications@github.com:

Just discovered this project through the frontiers article and am very impressed with the speed you've managed to achieve with OpenCL. However, given the lack of recent activity in the repo, I'm concerned that the funding or interest for maintaining/refining the project has died out, making it potentially a bad time investment to learn. If there is still a will and intent to keep working on BROCCOLI (which I really hope there is, being able to do first-level analyses in minutes instead of days would be amazing), is there a development roadmap that could be made public to reassure us that the project has a future?

If funding is an issue, I'd imagine a little publicity on some neuro blogs and a proper website with some simple tutorials would help get more people interested in the project, including people who would happily contribute code/donations.

Cheers,

  • Austin

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/wanderine/BROCCOLI/issues/47, or mute the thread https://github.com/notifications/unsubscribe-auth/AEGryJ58NxoSoKrxmYeH5h3t3gExo0J7ks5tmsgYgaJpZM4TL2D8 .

-- Anders Eklund, PhD

a-hurst commented 6 years ago

Great news Anders, thanks for the response!

My mathematics and low-level programming skills aren't quite up to the level where I could contribute to main development, but I am reasonably proficient in Python and R if you had any tasks you wanted help with on that front. I'd also be able to help put together a better README for the GitHub page with a more in-depth description and install instructions (see here for an example of what I mean), as well as some some simple step-by-step markdown tutorials on getting started and analyzing some example data (I'm in the process of trying BROCCOLI out with some data right now, and some practice tutorials would definitely be helpful).

Related to that, I think it might be a good idea to have a task list along with the roadmap for things that interested newcomers could try their hand at (lots of OSS projects I've encountered do this). I think one of the good things BROCCOLI has going for it is that, unlike FSL and many of the other big suites, the development is happening here on GitHub where community involvement and collaboration is much easier, and it would be good to put that advantage to use.

Best,

- Austin

wanderine commented 6 years ago

Hi Austin,

well I need some help with making wrappers for Python and R (similar to the Matlab wrapper), if that would be interesting. Some work was done for a Python wrapper in 2014 but I don't remember how far that went (I have limited knowledge about Python). Integration with nipype would be great, https://github.com/nipy/nipype , I started it but got distracted, https://github.com/wanderine/BROCCOLI/tree/master/code/nipype

Regarding installation, did you look at the BROCCOLI documentation? It needs updating, but should cover most aspects. A better readme would also be useful, and can maybe replace the documentation for installation.

Documentation https://github.com/wanderine/BROCCOLI/raw/master/documentation/broccoli.pdf

2018-04-10 15:58 GMT+02:00 a-hurst notifications@github.com:

Great news Anders, thanks for the response!

My mathematics and low-level programming skills aren't quite up to the level where I could contribute to main development, but I am reasonably proficient in Python and R if you had any tasks you wanted help with on that front. I'd also be able to help put together a better README for the GitHub page with a more in-depth description and install instructions (see here https://github.com/TheKleinLab/TOJ_Motion for an example of what I mean), as well as some some simple step-by-step markdown tutorials on getting started and analyzing some example data (I'm in the process of trying BROCCOLI out with some data right now, and some practice tutorials would definitely be helpful).

Related to that, I think it might be a good idea to have a task list along with the roadmap for things that interested newcomers could try their hand at (lots of OSS projects I've encountered do this). I think one of the good things BROCCOLI has going for it is that, unlike FSL and many of the other big suites, the development is happening here on GitHub where community involvement and collaboration is much easier, and it would be good to put that advantage to use.

Best,

  • Austin

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/wanderine/BROCCOLI/issues/47#issuecomment-380108139, or mute the thread https://github.com/notifications/unsubscribe-auth/AEGryIeYPtLqAm5z5xhAuXSyFeX6MED_ks5tnLqAgaJpZM4TL2D8 .

-- Anders Eklund, PhD

a-hurst commented 6 years ago

Once I get a bit more familiar with BROCCOLI, I'd be happy to take a look at Python/R integration. I've worked with a couple odd projects that are Python wrappers for C libraries so I already have some familiarity with how to bridge that gap.

On the "getting more familiar with BROCCOLI" front, do you have any analysis scripts and/or data sets for event-related fMRI using BROCCOLI that you're willing to share? I looked through some of the analysis scripts in your other repos and found ones that use an odd function here or there, but I couldn't find any examples of a full BROCCOLI first-level analysis with properly-formatted regressors and contrasts files. I've been doing my best to figure things out with the PDF documentation, but the resulting cope contrasts look completely wonky in FSLEyes with the min and max values ranging from -60 to 48 and showing every single voxel as active (the T1-to-MNI registration works beautifully, though). I'm not sure if I'm looking at the data wrong or if there's a problem with the way I ran my analysis (I'm fairly new to fMRI), so it'd be very helpful to have some known-working data/scripts that I could use as a reference. Once I get it working I'd be happy to write up a step-by-step tutorial on how it's done, for both the sake of my future self and the sake of others trying to get started.

Thanks!

wanderine commented 6 years ago

I have added a complete example here, does that help?

https://github.com/wanderine/BROCCOLI/tree/master/examples

2018-04-13 0:56 GMT+02:00 a-hurst notifications@github.com:

Once I get a bit more familiar with BROCCOLI, I'd be happy to take a look at Python/R integration. I've worked with a couple odd projects that are Python wrappers for C libraries so I already have some familiarity with how to bridge that gap.

On the "getting more familiar with BROCCOLI" front, do you have any analysis scripts and/or data sets for event-related fMRI using BROCCOLI that you're willing to share? I looked through some of the analysis scripts in your other repos and found ones that use an odd function here or there, but I couldn't find any examples of a full BROCCOLI first-level analysis with properly-formatted regressors and contrasts files. I've been doing my best to figure things out with the PDF documentation, but the resulting cope contrasts look completely wonky in FSLEyes with the min and max values ranging from -60 to 48 and showing every single voxel as active (the T1-to-MNI registration works beautifully, though). I'm not sure if I'm looking at the data wrong or if there's a problem with the way I ran my analysis (I'm fairly new to fMRI), so it'd be very helpful to have some known-working data/scripts that I could use as a reference. Once I get it working I'd be happy to write up a step-by-step tutorial on how it's done, for both the sake of my future self and the sake of others trying to get started.

Thanks!

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/wanderine/BROCCOLI/issues/47#issuecomment-380968980, or mute the thread https://github.com/notifications/unsubscribe-auth/AEGryMlZ7Npz88tIodj1trmq_fd3dLR-ks5tn9uBgaJpZM4TL2D8 .

-- Anders Eklund, PhD

portokalh commented 6 years ago

With some pointers i wonder if i can help extract the uncorrected stats from randomise/the plain voxel wise permutation results ? thanks for sharing your work!

wanderine commented 6 years ago

Adding support for uncorrected p-values is not a quick fix, but I will see what I can do.

Den fre 20 apr. 2018 04:20AlexBadea notifications@github.com skrev:

With some pointers i wonder if i can help extract the uncorrected stats from randomise/the plain voxel wise permutation results ? thanks for sharing your work!

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/wanderine/BROCCOLI/issues/47#issuecomment-382946462, or mute the thread https://github.com/notifications/unsubscribe-auth/AEGryNyMF8CAZRs4jN7Q7oDqTbrDo7Seks5tqUX2gaJpZM4TL2D8 .

Alea4jacta6est commented 5 years ago

@a-hurst Hi, I'd like to help with writing Python wrapper for BROCCOLI, I just wanted to know, where you started and what problems do you need to resolve?

a-hurst commented 5 years ago

Hi @Alea4jacta6est, unfortunately I had a much busier summer than I had anticipated so I didn't even end up starting on a Python wrapper. If you're starting from scratch, I'd recommend looking at the Nipype project which provides a universal Python API for different MRI softwares (and allows easy passing of data between them so you can mix and match tools in your workflow). All you would need to do would be to write a BROCCOLI implementation of the API and it could be used alongside FSL, SPM et al. in a workflow. Hope this helps!