From garyfallidis at gmail.com Thu Jan 3 17:31:37 2019 From: garyfallidis at gmail.com (Eleftherios Garyfallidis) Date: Thu, 3 Jan 2019 17:31:37 -0500 Subject: [Neuroimaging] [DIPY WORKSHOP 2019 - titanium edition] Registration is now open! Message-ID: Hello fellow Neuroimagers! The *DIPY* project is hosting an exquisite educational workshop *March 11-15* at Indiana University, USA. See topics and detailed information here: *https://workshop.dipy.org* The workshop will include tutorials from a great range of topics including tracking, microstructure, and statistical analysis (see all tutorials here ). The workshop will also include a data accelerator where you will be able to analyse your own data together with the *DIPY* developers. More than 15 DIPY developers will be available this year on site to help. All tutorials will run on 3 levels: novice, intermediate and advanced. Have in mind that this is a registration-only 5 day event. The event is co-sponsored by the National Institute of Health (NIH) and the School of Informatics, Computing and Engineering of Indiana University. Exciting? Register here . Questions? More than happy to answer any questions you may have here or at dipy at python.org. Best regards, Eleftherios p.s. Please forward to all interesting parties. -------------- next part -------------- An HTML attachment was scrubbed... URL: From arokem at gmail.com Fri Jan 4 09:23:07 2019 From: arokem at gmail.com (Ariel Rokem) Date: Fri, 4 Jan 2019 06:23:07 -0800 Subject: [Neuroimaging] failure using DIPY Free Water Elimination DTI In-Reply-To: References: Message-ID: Hi Ping, I can't quite reproduce your error, though I am getting similar errors. Could you also share the code that you are running? For the time being, the one thing that I noticed is that there are NaNs in your data. That might be causing this issue. Cheers, Ariel On Mon, Dec 31, 2018 at 5:43 AM Ping-Hong Yeh wrote: > Hi Ariel, > > Have you got the chance to look at the DWI data that was attached to the > previous email? > > Thank you for your time. > > Ping > > On Sat, Dec 29, 2018 at 1:12 AM Ariel Rokem wrote: > >> Hi Ping, >> >> Thanks for your email. Hard to say exactly what is going on without >> further information. Could you tell us more about the data you are using? >> How many b-values? How many directions? Any chance you could share the data >> from the voxel that caused that error to be raised? >> >> Thanks! >> >> Ariel >> >> On Thu, Dec 27, 2018 at 6:55 AM Ping-Hong Yeh >> wrote: >> >>> Hi Dipy Users, >>> >>> I've ran into errors "Eigenvalues did not converge" when using the >>> free water elimination model, >>> and here is the error message: >>> >>> File >>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/reconst/dti.py", >>> line 1615, in _decompose_tensor_nan >>> min_diffusivity=min_diffusivity) >>> File >>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/reconst/dti.py", >>> line 1946, in decompose_tensor >>> eigenvals, eigenvecs = eigh(tensor) >>> File >>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/utils/arrfuncs.py", >>> line 128, in eigh >>> return np.linalg.eigh(a, UPLO) >>> File >>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/numpy/linalg/linalg.py", >>> line 1291, in eigh >>> w, vt = gufunc(a, signature=signature, extobj=extobj) >>> File >>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/numpy/linalg/linalg.py", >>> line 95, in _raise_linalgerror_eigenvalues_nonconvergence >>> raise LinAlgError("Eigenvalues did not converge") >>> numpy.linalg.linalg.LinAlgError: Eigenvalues did not converge >>> >>> >>> Any suggestions? >>> >>> Thank you. >>> >>> Ping >>> >>> _______________________________________________ >>> Neuroimaging mailing list >>> Neuroimaging at python.org >>> https://mail.python.org/mailman/listinfo/neuroimaging >>> >> _______________________________________________ >> Neuroimaging mailing list >> Neuroimaging at python.org >> https://mail.python.org/mailman/listinfo/neuroimaging >> > _______________________________________________ > Neuroimaging mailing list > Neuroimaging at python.org > https://mail.python.org/mailman/listinfo/neuroimaging > -------------- next part -------------- An HTML attachment was scrubbed... URL: From pinghongyeh at gmail.com Fri Jan 4 10:42:10 2019 From: pinghongyeh at gmail.com (Ping-Hong Yeh) Date: Fri, 4 Jan 2019 10:42:10 -0500 Subject: [Neuroimaging] failure using DIPY Free Water Elimination DTI In-Reply-To: References: Message-ID: Hi Ariel, Thank you for your time. I've run fslmaths using the syntax of -nan beforehand, i thought that has taken care of it. Here is the script i used, import dipy.reconst.fwdti as fwdti Delta = 22.536 delta = 21.908 _Delta = 0.022536 _delta = 0.021908 dname=os.path.join('/data/NEURO2/ping/MUX', id, 'SOA_N270_plus19b0_fwd','data_DIFFPREP_t2acpc_proc_DRBUDDI_proc') fdwi = join(dname, 'data_DIFFPREP_t2acpc_proc_DRBUDDI_up_final_no7b0_nan.nii.gz') fbvec = join(dname, 'data_DIFFPREP_t2acpc_proc_DRBUDDI_up_final_no7b0_invY.bvecs') #the final oriention after TORTOISE is RAS for earlier SOA289 data fbval = join(dname, 'data_DIFFPREP_t2acpc_proc_DRBUDDI_up_final_no7b0.bvals') from dipy.io import read_bvals_bvecs bvals, bvecs = read_bvals_bvecs(fbval, fbvec) from dipy.core.gradients import gradient_table gtab = gradient_table(bvals, bvecs, big_delta=Delta, small_delta=delta) img = nib.load(fdwi) data = img.get_data() affine = img.affine #free water fwdtimodel = fwdti.FreeWaterTensorModel(gtab, fit_method='NLS' ) fwdtifit = fwdtimodel.fit(data, mask=mask) img = nib.Nifti1Image(fwdtifit.fa, affine) nib.save(img, join(dname, 'FWdti_FA.nii.gz')) img = nib.Nifti1Image(fwdtifit.md, affine) nib.save(img, join(dname, 'FWdti_MD.nii.gz')) img = nib.Nifti1Image(fwdtifit.ad, affine) nib.save(img, join(dname, 'FWdti_AD.nii.gz')) img = nib.Nifti1Image(fwdtifit.rd, affine) nib.save(img, join(dname, 'FWdti_RD.nii.gz')) img = nib.Nifti1Image(fwdtifit.f, affine) nib.save(img, join(dname, 'FWdti_fw.nii.gz')) On Fri, Jan 4, 2019 at 9:23 AM Ariel Rokem wrote: > Hi Ping, > > I can't quite reproduce your error, though I am getting similar errors. > Could you also share the code that you are running? > > For the time being, the one thing that I noticed is that there are NaNs in > your data. That might be causing this issue. > > Cheers, > > Ariel > > > > On Mon, Dec 31, 2018 at 5:43 AM Ping-Hong Yeh > wrote: > >> Hi Ariel, >> >> Have you got the chance to look at the DWI data that was attached to the >> previous email? >> >> Thank you for your time. >> >> Ping >> >> On Sat, Dec 29, 2018 at 1:12 AM Ariel Rokem wrote: >> >>> Hi Ping, >>> >>> Thanks for your email. Hard to say exactly what is going on without >>> further information. Could you tell us more about the data you are using? >>> How many b-values? How many directions? Any chance you could share the data >>> from the voxel that caused that error to be raised? >>> >>> Thanks! >>> >>> Ariel >>> >>> On Thu, Dec 27, 2018 at 6:55 AM Ping-Hong Yeh >>> wrote: >>> >>>> Hi Dipy Users, >>>> >>>> I've ran into errors "Eigenvalues did not converge" when using the >>>> free water elimination model, >>>> and here is the error message: >>>> >>>> File >>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/reconst/dti.py", >>>> line 1615, in _decompose_tensor_nan >>>> min_diffusivity=min_diffusivity) >>>> File >>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/reconst/dti.py", >>>> line 1946, in decompose_tensor >>>> eigenvals, eigenvecs = eigh(tensor) >>>> File >>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/utils/arrfuncs.py", >>>> line 128, in eigh >>>> return np.linalg.eigh(a, UPLO) >>>> File >>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/numpy/linalg/linalg.py", >>>> line 1291, in eigh >>>> w, vt = gufunc(a, signature=signature, extobj=extobj) >>>> File >>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/numpy/linalg/linalg.py", >>>> line 95, in _raise_linalgerror_eigenvalues_nonconvergence >>>> raise LinAlgError("Eigenvalues did not converge") >>>> numpy.linalg.linalg.LinAlgError: Eigenvalues did not converge >>>> >>>> >>>> Any suggestions? >>>> >>>> Thank you. >>>> >>>> Ping >>>> >>>> _______________________________________________ >>>> Neuroimaging mailing list >>>> Neuroimaging at python.org >>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>> >>> _______________________________________________ >>> Neuroimaging mailing list >>> Neuroimaging at python.org >>> https://mail.python.org/mailman/listinfo/neuroimaging >>> >> _______________________________________________ >> Neuroimaging mailing list >> Neuroimaging at python.org >> https://mail.python.org/mailman/listinfo/neuroimaging >> > _______________________________________________ > Neuroimaging mailing list > Neuroimaging at python.org > https://mail.python.org/mailman/listinfo/neuroimaging > -------------- next part -------------- An HTML attachment was scrubbed... URL: From arnavlohe15 at gmail.com Fri Jan 4 11:56:03 2019 From: arnavlohe15 at gmail.com (Arnav Lohe) Date: Fri, 4 Jan 2019 11:56:03 -0500 Subject: [Neuroimaging] Looping through 3D NIFTI Image: Help Message-ID: Dear Neuroimaging List Members, My name is Arnav Lohe, and I am a junior at Rutgers University working on a neuroimaging project. I want to write an original piece of code to calculate the total tissue volume in a (.nii) MRI image, and to do this I need to loop through the multidimensional array. The loop is what I do not know how to do. I tried triple indexing, I tried converting the .nii image into a numpy array, and got nowhere with my approaches. Does someone know how to loop through the individual voxels and extract the numerical information inside each one? https://stackoverflow.com/questions/54031899/how-can-i-loop-through-3d-nifti-image-in-python I have also posted this to StackOverflow, all additional relevant details should be there. Sincerely, Thanking you, Arnav Lohe -------------- next part -------------- An HTML attachment was scrubbed... URL: From jxrel at hotmail.com Fri Jan 4 12:29:44 2019 From: jxrel at hotmail.com (=?utf-8?B?Sm9zZSBSZXkgTMOzcGV6?=) Date: Fri, 4 Jan 2019 17:29:44 +0000 Subject: [Neuroimaging] Looping through 3D NIFTI Image: Help In-Reply-To: References: Message-ID: Using nilearn you could do: niimage = nilearn.image.load_img(?path?) Voxels = niimage.get_data() You get a numpy array, with Voxel[i,j,k] would allow you to access any voxel Voxels[:,x,y] to acces a single line Voxels[:,:,x] to access any slice Or to iterate over all voxels for i .... for j .... for k ..... Voxels[i,j,k] On 4 Jan 2019, at 17:58, Arnav Lohe > wrote: Dear Neuroimaging List Members, My name is Arnav Lohe, and I am a junior at Rutgers University working on a neuroimaging project. I want to write an original piece of code to calculate the total tissue volume in a (.nii) MRI image, and to do this I need to loop through the multidimensional array. The loop is what I do not know how to do. I tried triple indexing, I tried converting the .nii image into a numpy array, and got nowhere with my approaches. Does someone know how to loop through the individual voxels and extract the numerical information inside each one? https://stackoverflow.com/questions/54031899/how-can-i-loop-through-3d-nifti-image-in-python I have also posted this to StackOverflow, all additional relevant details should be there. Sincerely, Thanking you, Arnav Lohe _______________________________________________ Neuroimaging mailing list Neuroimaging at python.org https://mail.python.org/mailman/listinfo/neuroimaging -------------- next part -------------- An HTML attachment was scrubbed... URL: From arokem at gmail.com Fri Jan 4 13:12:52 2019 From: arokem at gmail.com (Ariel Rokem) Date: Fri, 4 Jan 2019 10:12:52 -0800 Subject: [Neuroimaging] failure using DIPY Free Water Elimination DTI In-Reply-To: References: Message-ID: On Fri, Jan 4, 2019 at 7:42 AM Ping-Hong Yeh wrote: > Hi Ariel, > > Thank you for your time. > I've run fslmaths using the syntax of -nan beforehand, i thought that > has taken care of it. > I believe it's still there. My script crashed on that. > Here is the script i used, > > import dipy.reconst.fwdti as fwdti > Delta = 22.536 > delta = 21.908 > _Delta = 0.022536 > _delta = 0.021908 > > dname=os.path.join('/data/NEURO2/ping/MUX', id, > 'SOA_N270_plus19b0_fwd','data_DIFFPREP_t2acpc_proc_DRBUDDI_proc') > fdwi = join(dname, > 'data_DIFFPREP_t2acpc_proc_DRBUDDI_up_final_no7b0_nan.nii.gz') > fbvec = join(dname, > 'data_DIFFPREP_t2acpc_proc_DRBUDDI_up_final_no7b0_invY.bvecs') #the final > oriention after TORTOISE is RAS for earlier SOA289 data > fbval = join(dname, > 'data_DIFFPREP_t2acpc_proc_DRBUDDI_up_final_no7b0.bvals') > > from dipy.io import read_bvals_bvecs > bvals, bvecs = read_bvals_bvecs(fbval, fbvec) > from dipy.core.gradients import gradient_table > gtab = gradient_table(bvals, bvecs, big_delta=Delta, small_delta=delta) > img = nib.load(fdwi) > data = img.get_data() > affine = img.affine > > #free water > fwdtimodel = fwdti.FreeWaterTensorModel(gtab, fit_method='NLS' ) > fwdtifit = fwdtimodel.fit(data, mask=mask) > img = nib.Nifti1Image(fwdtifit.fa, affine) > nib.save(img, join(dname, 'FWdti_FA.nii.gz')) > img = nib.Nifti1Image(fwdtifit.md, affine) > nib.save(img, join(dname, 'FWdti_MD.nii.gz')) > img = nib.Nifti1Image(fwdtifit.ad, affine) > nib.save(img, join(dname, 'FWdti_AD.nii.gz')) > img = nib.Nifti1Image(fwdtifit.rd, affine) > nib.save(img, join(dname, 'FWdti_RD.nii.gz')) > img = nib.Nifti1Image(fwdtifit.f, affine) > nib.save(img, join(dname, 'FWdti_fw.nii.gz')) > > Where did `mask` come from? Cheers, Ariel > > On Fri, Jan 4, 2019 at 9:23 AM Ariel Rokem wrote: > >> Hi Ping, >> >> I can't quite reproduce your error, though I am getting similar errors. >> Could you also share the code that you are running? >> >> For the time being, the one thing that I noticed is that there are NaNs >> in your data. That might be causing this issue. >> >> Cheers, >> >> Ariel >> >> >> >> On Mon, Dec 31, 2018 at 5:43 AM Ping-Hong Yeh >> wrote: >> >>> Hi Ariel, >>> >>> Have you got the chance to look at the DWI data that was attached to >>> the previous email? >>> >>> Thank you for your time. >>> >>> Ping >>> >>> On Sat, Dec 29, 2018 at 1:12 AM Ariel Rokem wrote: >>> >>>> Hi Ping, >>>> >>>> Thanks for your email. Hard to say exactly what is going on without >>>> further information. Could you tell us more about the data you are using? >>>> How many b-values? How many directions? Any chance you could share the data >>>> from the voxel that caused that error to be raised? >>>> >>>> Thanks! >>>> >>>> Ariel >>>> >>>> On Thu, Dec 27, 2018 at 6:55 AM Ping-Hong Yeh >>>> wrote: >>>> >>>>> Hi Dipy Users, >>>>> >>>>> I've ran into errors "Eigenvalues did not converge" when using the >>>>> free water elimination model, >>>>> and here is the error message: >>>>> >>>>> File >>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/reconst/dti.py", >>>>> line 1615, in _decompose_tensor_nan >>>>> min_diffusivity=min_diffusivity) >>>>> File >>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/reconst/dti.py", >>>>> line 1946, in decompose_tensor >>>>> eigenvals, eigenvecs = eigh(tensor) >>>>> File >>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/utils/arrfuncs.py", >>>>> line 128, in eigh >>>>> return np.linalg.eigh(a, UPLO) >>>>> File >>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/numpy/linalg/linalg.py", >>>>> line 1291, in eigh >>>>> w, vt = gufunc(a, signature=signature, extobj=extobj) >>>>> File >>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/numpy/linalg/linalg.py", >>>>> line 95, in _raise_linalgerror_eigenvalues_nonconvergence >>>>> raise LinAlgError("Eigenvalues did not converge") >>>>> numpy.linalg.linalg.LinAlgError: Eigenvalues did not converge >>>>> >>>>> >>>>> Any suggestions? >>>>> >>>>> Thank you. >>>>> >>>>> Ping >>>>> >>>>> _______________________________________________ >>>>> Neuroimaging mailing list >>>>> Neuroimaging at python.org >>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>> >>>> _______________________________________________ >>>> Neuroimaging mailing list >>>> Neuroimaging at python.org >>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>> >>> _______________________________________________ >>> Neuroimaging mailing list >>> Neuroimaging at python.org >>> https://mail.python.org/mailman/listinfo/neuroimaging >>> >> _______________________________________________ >> Neuroimaging mailing list >> Neuroimaging at python.org >> https://mail.python.org/mailman/listinfo/neuroimaging >> > _______________________________________________ > Neuroimaging mailing list > Neuroimaging at python.org > https://mail.python.org/mailman/listinfo/neuroimaging > -------------- next part -------------- An HTML attachment was scrubbed... URL: From markiewicz at stanford.edu Fri Jan 4 12:29:26 2019 From: markiewicz at stanford.edu (Christopher Markiewicz) Date: Fri, 4 Jan 2019 17:29:26 +0000 Subject: [Neuroimaging] Looping through 3D NIFTI Image: Help In-Reply-To: References: Message-ID: Hi Arnav, First, welcome! Just so you know, Neurostars (https://neurostars.org) is going to be a better place than StackOverflow to ask neuroscience/neuroinformatics questions. This list is also a good place, but I suspect Neurostars gets a wider audience. Anyway, I'm interpreting your question as asking how to find the number of non-zero voxels in an image, multiplied by the voxel volume. I would do it as follows: ----- import numpy as np import nibabel as nb path = '...' img = nb.load(path) data = img.get_fdata(dtype=np.float32) # Use a test that accounts for floating point imprecision; you may want a tighter threshold non_zero_voxels = np.abs(data) > 1e-5 # NIfTI allows for non-mm spatial units xyz_units = img.header.get_xyzt_units()[0] factor = 1 if xyz_units == 'meter': factor = int(1e9) elif xyz_units == 'micron': factor = 1e-9 # If missing, assume mm # Voxel volume in mm^3 voxel_vol = np.prod(img.header.get_zooms()[:3]) * factor non_zero_volume = non_zero_voxels.sum() * voxel_vol ----- As a sanity check, human brains are generally around 1.5L, so if you're not seeing something on the order of 1-2 million mm^3, you might want to check on your data. If the numbers are off by more than a factor of 2 or so, you might have bad headers or your data might not be masked to 0 outside the brain. For more information on working with nibabel images, I would highly recommend the documentation: http://nipy.org/nibabel/nibabel_images.html Chris ________________________________ From: Neuroimaging on behalf of Arnav Lohe Sent: Friday, January 4, 2019 11:56:03 AM To: neuroimaging at python.org Subject: [Neuroimaging] Looping through 3D NIFTI Image: Help Dear Neuroimaging List Members, My name is Arnav Lohe, and I am a junior at Rutgers University working on a neuroimaging project. I want to write an original piece of code to calculate the total tissue volume in a (.nii) MRI image, and to do this I need to loop through the multidimensional array. The loop is what I do not know how to do. I tried triple indexing, I tried converting the .nii image into a numpy array, and got nowhere with my approaches. Does someone know how to loop through the individual voxels and extract the numerical information inside each one? https://stackoverflow.com/questions/54031899/how-can-i-loop-through-3d-nifti-image-in-python I have also posted this to StackOverflow, all additional relevant details should be there. Sincerely, Thanking you, Arnav Lohe -------------- next part -------------- An HTML attachment was scrubbed... URL: From markiewicz at stanford.edu Fri Jan 4 13:40:21 2019 From: markiewicz at stanford.edu (Christopher Markiewicz) Date: Fri, 4 Jan 2019 18:40:21 +0000 Subject: [Neuroimaging] ANN: nibabel 2.3.2 Message-ID: Hi all, Nibabel 2.3.2 was released this past Wednesday. 2.3.2 is a bug fix release, and it was primarily triggered by some API changes in the upcoming numpy 1.16. Please cite using the Zenodo DOI: https://doi.org/10.5281/zenodo.2530243 Thanks to all contributors. This release also includes a number of fiddly fixes that improved the documentation and dealt with some of the accumulating warnings issued by upstream libraries, which is great for usability. The full changelog follows: Bug fix release for the 2.3 series. Most work on NiBabel so far has been by Matthew Brett (MB), Michael Hanke (MH) Ben Cipollini (BC), Marc-Alexandre C?t? (MC), Chris Markiewicz (CM), Stephan Gerhard (SG), Eric Larson (EL), Yaroslav Halchenko (YOH) and Chris Cheng (CC). References like "pr/298" refer to github pull request numbers. Enhancements ------------ * Enable toggling crosshair with ``Ctrl-x`` in ``OrthoSlicer3D`` viewer (pr/701) (Miguel Estevan Moreno, reviewed by CM) Bug fixes --------- * Read .PAR files corresponding to ADC maps (pr/685) (Gregory R. Lee, reviewed by CM) * Increase maximum number of items read from Siemens CSA format (Igor Solovey, reviewed by CM, MB) * Check boolean dtypes with ``numpy.issubdtype(..., np.bool_)`` (pr/707) (Jon Haitz Legarreta Gorro?o, reviewed by CM) Maintenance ----------- * Fix small typos in parrec2nii help text (pr/682) (Thomas Roos, reviewed by MB) * Remove deprecated calls to ``numpy.asscalar`` (pr/686) (CM, reviewed by Gregory R. Lee) * Update QA directives to accommodate Flake8 3.6 (pr/695) (CM) * Update DOI links to use ``https://doi.org`` (pr/703) (Katrin Leinweber, reviewed by CM) * Remove deprecated calls to ``numpy.fromstring`` (pr/700) (Ariel Rokem, reviewed by CM, MB) * Drop ``distutils`` support, require ``bz2file`` for Python 2.7 (pr/700) (CM, reviewed by MB) * Replace mutable ``bytes`` hack, disabled in numpy pre-release, with ``bytearray``/``readinto`` strategy (pr/700) (Ariel Rokem, CM, reviewed by CM, MB) API changes and deprecations ---------------------------- * Add ``Opener.readinto`` method to read file contents into pre-allocated buffers (pr/700) (Ariel Rokem, reviewed by CM, MB) -- Chris Markiewicz Center for Reproducible Neuroscience Stanford University -------------- next part -------------- An HTML attachment was scrubbed... URL: From matthew.brett at gmail.com Fri Jan 4 16:01:00 2019 From: matthew.brett at gmail.com (Matthew Brett) Date: Fri, 4 Jan 2019 21:01:00 +0000 Subject: [Neuroimaging] ANN: nibabel 2.3.2 In-Reply-To: References: Message-ID: Hi Chris, On Fri, Jan 4, 2019 at 7:17 PM Christopher Markiewicz wrote: > > Hi all, > > Nibabel 2.3.2 was released this past Wednesday. 2.3.2 is a bug fix release, and it was primarily triggered by some API changes in the upcoming numpy 1.16. > > Please cite using the Zenodo DOI: https://doi.org/10.5281/zenodo.2530243 > > Thanks to all contributors. This release also includes a number of fiddly fixes that improved the documentation and dealt with some of the accumulating warnings issued by upstream libraries, which is great for usability. Thanks very much for doing this release, and, as ever, doing all the hard work. Cheers, Matthew From pinghongyeh at gmail.com Fri Jan 4 13:31:35 2019 From: pinghongyeh at gmail.com (Ping-Hong Yeh) Date: Fri, 4 Jan 2019 13:31:35 -0500 Subject: [Neuroimaging] failure using DIPY Free Water Elimination DTI In-Reply-To: References: Message-ID: I have attached the mask file. Thank you. maskimg = nib.load(join(dname, 'structural_mask.nii.gz')) mask = maskimg.get_data() affinemask = maskimg.affine On Fri, Jan 4, 2019 at 1:13 PM Ariel Rokem wrote: > > On Fri, Jan 4, 2019 at 7:42 AM Ping-Hong Yeh > wrote: > >> Hi Ariel, >> >> Thank you for your time. >> I've run fslmaths using the syntax of -nan beforehand, i thought that >> has taken care of it. >> > > I believe it's still there. My script crashed on that. > > >> Here is the script i used, >> >> import dipy.reconst.fwdti as fwdti >> Delta = 22.536 >> delta = 21.908 >> _Delta = 0.022536 >> _delta = 0.021908 >> >> dname=os.path.join('/data/NEURO2/ping/MUX', id, >> 'SOA_N270_plus19b0_fwd','data_DIFFPREP_t2acpc_proc_DRBUDDI_proc') >> fdwi = join(dname, >> 'data_DIFFPREP_t2acpc_proc_DRBUDDI_up_final_no7b0_nan.nii.gz') >> fbvec = join(dname, >> 'data_DIFFPREP_t2acpc_proc_DRBUDDI_up_final_no7b0_invY.bvecs') #the final >> oriention after TORTOISE is RAS for earlier SOA289 data >> fbval = join(dname, >> 'data_DIFFPREP_t2acpc_proc_DRBUDDI_up_final_no7b0.bvals') >> >> from dipy.io import read_bvals_bvecs >> bvals, bvecs = read_bvals_bvecs(fbval, fbvec) >> from dipy.core.gradients import gradient_table >> gtab = gradient_table(bvals, bvecs, big_delta=Delta, small_delta=delta) >> img = nib.load(fdwi) >> data = img.get_data() >> affine = img.affine >> >> #free water >> fwdtimodel = fwdti.FreeWaterTensorModel(gtab, fit_method='NLS' ) >> fwdtifit = fwdtimodel.fit(data, mask=mask) >> img = nib.Nifti1Image(fwdtifit.fa, affine) >> nib.save(img, join(dname, 'FWdti_FA.nii.gz')) >> img = nib.Nifti1Image(fwdtifit.md, affine) >> nib.save(img, join(dname, 'FWdti_MD.nii.gz')) >> img = nib.Nifti1Image(fwdtifit.ad, affine) >> nib.save(img, join(dname, 'FWdti_AD.nii.gz')) >> img = nib.Nifti1Image(fwdtifit.rd, affine) >> nib.save(img, join(dname, 'FWdti_RD.nii.gz')) >> img = nib.Nifti1Image(fwdtifit.f, affine) >> nib.save(img, join(dname, 'FWdti_fw.nii.gz')) >> >> > Where did `mask` come from? > > Cheers, > > Ariel > >> >> On Fri, Jan 4, 2019 at 9:23 AM Ariel Rokem wrote: >> >>> Hi Ping, >>> >>> I can't quite reproduce your error, though I am getting similar errors. >>> Could you also share the code that you are running? >>> >>> For the time being, the one thing that I noticed is that there are NaNs >>> in your data. That might be causing this issue. >>> >>> Cheers, >>> >>> Ariel >>> >>> >>> >>> On Mon, Dec 31, 2018 at 5:43 AM Ping-Hong Yeh >>> wrote: >>> >>>> Hi Ariel, >>>> >>>> Have you got the chance to look at the DWI data that was attached to >>>> the previous email? >>>> >>>> Thank you for your time. >>>> >>>> Ping >>>> >>>> On Sat, Dec 29, 2018 at 1:12 AM Ariel Rokem wrote: >>>> >>>>> Hi Ping, >>>>> >>>>> Thanks for your email. Hard to say exactly what is going on without >>>>> further information. Could you tell us more about the data you are using? >>>>> How many b-values? How many directions? Any chance you could share the data >>>>> from the voxel that caused that error to be raised? >>>>> >>>>> Thanks! >>>>> >>>>> Ariel >>>>> >>>>> On Thu, Dec 27, 2018 at 6:55 AM Ping-Hong Yeh >>>>> wrote: >>>>> >>>>>> Hi Dipy Users, >>>>>> >>>>>> I've ran into errors "Eigenvalues did not converge" when using the >>>>>> free water elimination model, >>>>>> and here is the error message: >>>>>> >>>>>> File >>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/reconst/dti.py", >>>>>> line 1615, in _decompose_tensor_nan >>>>>> min_diffusivity=min_diffusivity) >>>>>> File >>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/reconst/dti.py", >>>>>> line 1946, in decompose_tensor >>>>>> eigenvals, eigenvecs = eigh(tensor) >>>>>> File >>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/utils/arrfuncs.py", >>>>>> line 128, in eigh >>>>>> return np.linalg.eigh(a, UPLO) >>>>>> File >>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/numpy/linalg/linalg.py", >>>>>> line 1291, in eigh >>>>>> w, vt = gufunc(a, signature=signature, extobj=extobj) >>>>>> File >>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/numpy/linalg/linalg.py", >>>>>> line 95, in _raise_linalgerror_eigenvalues_nonconvergence >>>>>> raise LinAlgError("Eigenvalues did not converge") >>>>>> numpy.linalg.linalg.LinAlgError: Eigenvalues did not converge >>>>>> >>>>>> >>>>>> Any suggestions? >>>>>> >>>>>> Thank you. >>>>>> >>>>>> Ping >>>>>> >>>>>> _______________________________________________ >>>>>> Neuroimaging mailing list >>>>>> Neuroimaging at python.org >>>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>>> >>>>> _______________________________________________ >>>>> Neuroimaging mailing list >>>>> Neuroimaging at python.org >>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>> >>>> _______________________________________________ >>>> Neuroimaging mailing list >>>> Neuroimaging at python.org >>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>> >>> _______________________________________________ >>> Neuroimaging mailing list >>> Neuroimaging at python.org >>> https://mail.python.org/mailman/listinfo/neuroimaging >>> >> _______________________________________________ >> Neuroimaging mailing list >> Neuroimaging at python.org >> https://mail.python.org/mailman/listinfo/neuroimaging >> > _______________________________________________ > Neuroimaging mailing list > Neuroimaging at python.org > https://mail.python.org/mailman/listinfo/neuroimaging > -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: structural_mask.nii.gz Type: application/x-gzip Size: 80760 bytes Desc: not available URL: From matthew.brett at gmail.com Fri Jan 4 16:13:33 2019 From: matthew.brett at gmail.com (Matthew Brett) Date: Fri, 4 Jan 2019 21:13:33 +0000 Subject: [Neuroimaging] Looping through 3D NIFTI Image: Help In-Reply-To: References: Message-ID: Hi, On Fri, Jan 4, 2019 at 4:58 PM Arnav Lohe wrote: > > Dear Neuroimaging List Members, > > My name is Arnav Lohe, and I am a junior at Rutgers University working on a neuroimaging project. I want to write an original piece of code to calculate the total tissue volume in a (.nii) MRI image, and to do this I need to loop through the multidimensional array. The loop is what I do not know how to do. I tried triple indexing, I tried converting the .nii image into a numpy array, and got nowhere with my approaches. Does someone know how to loop through the individual voxels and extract the numerical information inside each one? Just to add to other replies, it is almost always better to vectorize - I mean - use Numpy arrays to do multiple operations at once. For example, if your image is a grey matter probability image, and you just want the sum of the voxels: img = nib.load('my_image.nii') data = img.get_fdata() print(data.sum()) Or you want to do a histogram: import matplotlib.pyplot as plt plt.hist(data.ravel()) I don't myself do StackOverflow or Neurostars, so for nibabel questions, at least, this list is a good place to ask. Cheers, Matthew From skoudoro at iu.edu Fri Jan 4 21:03:02 2019 From: skoudoro at iu.edu (Koudoro, Serge) Date: Sat, 5 Jan 2019 02:03:02 +0000 Subject: [Neuroimaging] ANN: nibabel 2.3.2 In-Reply-To: References: , Message-ID: <1546653782333.72405@iu.edu> Great! Thanks to you and all devs for this release! Serge K. ________________________________________ From: Neuroimaging on behalf of Matthew Brett Sent: Friday, January 4, 2019 3:01 PM To: Neuroimaging analysis in Python Subject: Re: [Neuroimaging] ANN: nibabel 2.3.2 Hi Chris, On Fri, Jan 4, 2019 at 7:17 PM Christopher Markiewicz wrote: > > Hi all, > > Nibabel 2.3.2 was released this past Wednesday. 2.3.2 is a bug fix release, and it was primarily triggered by some API changes in the upcoming numpy 1.16. > > Please cite using the Zenodo DOI: https://doi.org/10.5281/zenodo.2530243 > > Thanks to all contributors. This release also includes a number of fiddly fixes that improved the documentation and dealt with some of the accumulating warnings issued by upstream libraries, which is great for usability. Thanks very much for doing this release, and, as ever, doing all the hard work. Cheers, Matthew _______________________________________________ Neuroimaging mailing list Neuroimaging at python.org https://mail.python.org/mailman/listinfo/neuroimaging From ts+ml at rcmd.org Sun Jan 6 11:16:43 2019 From: ts+ml at rcmd.org (ts+ml at rcmd.org) Date: Sun, 6 Jan 2019 17:16:43 +0100 (CET) Subject: [Neuroimaging] Reading mgz files in NiBabel 2.3.0 Message-ID: <1897947400.183303.1546791404016@ox.hosteurope.de> Dear list members, I'm trying to load a FreeSurfer MGZ file (its header to be precise) using nibabel 2.3.0: import nibabel.freesurfer.mghformat as fsmgh def read_mgh(mgh_file_name): with open(mgh_file_name, 'rb') as mgh_file_handle: header = fsmgh.MGHHeader.from_fileobj(mgh_file_handle) ... This works fine if the file is in MGH format, but NOT if it is gzipped (MGZ format). In that case, you get the following exception in the last line: klass = , fileobj = check = True @classmethod def from_fileobj(klass, fileobj, check=True): ''' classmethod for loading a MGH fileobject ''' # We need the following hack because MGH data stores header information # after the data chunk too. We read the header initially, deduce the # dimensions from the header, skip over and then read the footer # information hdr_str = fileobj.read(klass._hdrdtype.itemsize) hdr_str_to_np = np.ndarray(shape=(), dtype=klass._hdrdtype, buffer=hdr_str) if not np.all(hdr_str_to_np['dims']): > raise MGHError('Dimensions of the data should be non-zero') E MGHError: Dimensions of the data should be non-zero env/local/lib/python2.7/site-packages/nibabel/freesurfer/mghformat.py:165: MGHError So my question is: how should I read the file? Am I supposed to unpack it myself before reading, or is there some other function for this in nibabel which I overlooked? The files in question are available here in case you want them: - The MGZ file, it fails with this one: http://rcmd.org/tmp/orig.mgz - The same file, manually unzipped using gunzip in the shell. The code works with this one: http://rcmd.org/tmp/orig.mgh Thanks in advance, -- Tim From arokem at gmail.com Mon Jan 7 22:48:35 2019 From: arokem at gmail.com (Ariel Rokem) Date: Mon, 7 Jan 2019 19:48:35 -0800 Subject: [Neuroimaging] NeuroHackademy 2019 Message-ID: We are happy to announce a call for applications to participate in Neurohackademy 2019! This two-week hands-on workshop held at the University of Washington eScience Institute in Seattle, July 29th - August 9th, 2019, focuses on tools and techniques used to analyze human neuroscience data, on methods used to extract information from large datasets of publicly available data (such as the Human Connectome Project, OpenfMRI, etc.), and on tools for making human neuroscience research open and reproducible. Neurohackademy sessions in the first week will include lectures and tutorials on data science, machine learning, data visualization and data resources. The second week will be devoted to participant-directed activities: guided work on team projects, hackathon sessions, and breakout sessions on topics of interest. *For more details and a preliminary list of instructors, see: **https://neurohackademy.org/ * We are now accepting applications to participate at: https://neurohackademy.org/apply/ Ideally, applicants should have some prior experience with programming and with neuroscience data analysis, but we welcome applications from participants with a variety of relevant backgrounds. Accepted applicants will be asked to pay a fee of $200 upon final registration. This fee will include participation in the course, accommodation in the UW dorms, and two meals a day (breakfast and lunch), for the duration of the course. A limited number of fee waivers and travel grants will be available. We encourage students with financial need and students from groups that are underrepresented in neuroimaging and data science to apply for these grants (see application form for details). *Important dates:* *February 18th: Application deadline* *March 15th: Notification of acceptance* *April 1st: Final registration deadline* On behalf of the instructors, Ariel Rokem, University of Washington Tal Yarkoni, University of Texas, Austin -------------- next part -------------- An HTML attachment was scrubbed... URL: From bakk.hbg at googlemail.com Tue Jan 8 12:30:22 2019 From: bakk.hbg at googlemail.com (Barbara Kreilkamp) Date: Tue, 8 Jan 2019 17:30:22 +0000 Subject: [Neuroimaging] Postdoctoral Position: structural/functional connectivity and networks Message-ID: <12747630-429a-9c90-80ed-270da5a96bd5@googlemail.com> Dear all, As a current post-doc in this lab, I am happy to announce this three-year post-doc opportunity availabile in Dr Simon Keller's lab at the University of Liverpool, United Kingdom. The successful applicant will be specialising in structural and functional brain connectivity and networks in human epilepsy. Please find more information here https://www.jobs.ac.uk/job/BPF608/postdoctoral-research-fellow-neuroimaging-grade-7?and in this PDF https://app.box.com/s/8tiylekoiivq4s3kx8fmlsotply8kd0h Please read this job description and direct your informal inquiries to Dr Simon Keller (simon.keller at liv.ac.uk ). Kind regards and a happy new year! Barbara -------------- next part -------------- An HTML attachment was scrubbed... URL: From ts+ml at rcmd.org Wed Jan 9 03:45:25 2019 From: ts+ml at rcmd.org (ts+ml at rcmd.org) Date: Wed, 9 Jan 2019 09:45:25 +0100 (CET) Subject: [Neuroimaging] Reading mgz files in NiBabel 2.3.0 In-Reply-To: <1897947400.183303.1546791404016@ox.hosteurope.de> References: <1897947400.183303.1546791404016@ox.hosteurope.de> Message-ID: <1684110950.190435.1547023525736@ox.hosteurope.de> I must have been very confused when I wrote that, sorry. Of course, the question doesn't make much sense as the nibabel function gets the file handle only. One should just gzip.open() in case the file name end with 'mgz' I guess. Sorry for the noise. > On January 6, 2019 at 5:16 PM ts+ml at rcmd.org wrote: > > > Dear list members, > > I'm trying to load a FreeSurfer MGZ file (its header to be precise) using nibabel 2.3.0: -- Tim From pinghongyeh at gmail.com Wed Jan 9 07:47:03 2019 From: pinghongyeh at gmail.com (Ping-Hong Yeh) Date: Wed, 9 Jan 2019 07:47:03 -0500 Subject: [Neuroimaging] failure using DIPY Free Water Elimination DTI In-Reply-To: References: Message-ID: Hi Ariel Have you got the mask file? Any update? Thanks! Ping On Fri, Jan 4, 2019 at 1:31 PM Ping-Hong Yeh wrote: > I have attached the mask file. Thank you. > > maskimg = nib.load(join(dname, 'structural_mask.nii.gz')) > mask = maskimg.get_data() > affinemask = maskimg.affine > > > On Fri, Jan 4, 2019 at 1:13 PM Ariel Rokem wrote: > >> >> On Fri, Jan 4, 2019 at 7:42 AM Ping-Hong Yeh >> wrote: >> >>> Hi Ariel, >>> >>> Thank you for your time. >>> I've run fslmaths using the syntax of -nan beforehand, i thought that >>> has taken care of it. >>> >> >> I believe it's still there. My script crashed on that. >> >> >>> Here is the script i used, >>> >>> import dipy.reconst.fwdti as fwdti >>> Delta = 22.536 >>> delta = 21.908 >>> _Delta = 0.022536 >>> _delta = 0.021908 >>> >>> dname=os.path.join('/data/NEURO2/ping/MUX', id, >>> 'SOA_N270_plus19b0_fwd','data_DIFFPREP_t2acpc_proc_DRBUDDI_proc') >>> fdwi = join(dname, >>> 'data_DIFFPREP_t2acpc_proc_DRBUDDI_up_final_no7b0_nan.nii.gz') >>> fbvec = join(dname, >>> 'data_DIFFPREP_t2acpc_proc_DRBUDDI_up_final_no7b0_invY.bvecs') #the final >>> oriention after TORTOISE is RAS for earlier SOA289 data >>> fbval = join(dname, >>> 'data_DIFFPREP_t2acpc_proc_DRBUDDI_up_final_no7b0.bvals') >>> >>> from dipy.io import read_bvals_bvecs >>> bvals, bvecs = read_bvals_bvecs(fbval, fbvec) >>> from dipy.core.gradients import gradient_table >>> gtab = gradient_table(bvals, bvecs, big_delta=Delta, small_delta=delta) >>> img = nib.load(fdwi) >>> data = img.get_data() >>> affine = img.affine >>> >>> #free water >>> fwdtimodel = fwdti.FreeWaterTensorModel(gtab, fit_method='NLS' ) >>> fwdtifit = fwdtimodel.fit(data, mask=mask) >>> img = nib.Nifti1Image(fwdtifit.fa, affine) >>> nib.save(img, join(dname, 'FWdti_FA.nii.gz')) >>> img = nib.Nifti1Image(fwdtifit.md, affine) >>> nib.save(img, join(dname, 'FWdti_MD.nii.gz')) >>> img = nib.Nifti1Image(fwdtifit.ad, affine) >>> nib.save(img, join(dname, 'FWdti_AD.nii.gz')) >>> img = nib.Nifti1Image(fwdtifit.rd, affine) >>> nib.save(img, join(dname, 'FWdti_RD.nii.gz')) >>> img = nib.Nifti1Image(fwdtifit.f, affine) >>> nib.save(img, join(dname, 'FWdti_fw.nii.gz')) >>> >>> >> Where did `mask` come from? >> >> Cheers, >> >> Ariel >> >>> >>> On Fri, Jan 4, 2019 at 9:23 AM Ariel Rokem wrote: >>> >>>> Hi Ping, >>>> >>>> I can't quite reproduce your error, though I am getting similar errors. >>>> Could you also share the code that you are running? >>>> >>>> For the time being, the one thing that I noticed is that there are NaNs >>>> in your data. That might be causing this issue. >>>> >>>> Cheers, >>>> >>>> Ariel >>>> >>>> >>>> >>>> On Mon, Dec 31, 2018 at 5:43 AM Ping-Hong Yeh >>>> wrote: >>>> >>>>> Hi Ariel, >>>>> >>>>> Have you got the chance to look at the DWI data that was attached to >>>>> the previous email? >>>>> >>>>> Thank you for your time. >>>>> >>>>> Ping >>>>> >>>>> On Sat, Dec 29, 2018 at 1:12 AM Ariel Rokem wrote: >>>>> >>>>>> Hi Ping, >>>>>> >>>>>> Thanks for your email. Hard to say exactly what is going on without >>>>>> further information. Could you tell us more about the data you are using? >>>>>> How many b-values? How many directions? Any chance you could share the data >>>>>> from the voxel that caused that error to be raised? >>>>>> >>>>>> Thanks! >>>>>> >>>>>> Ariel >>>>>> >>>>>> On Thu, Dec 27, 2018 at 6:55 AM Ping-Hong Yeh >>>>>> wrote: >>>>>> >>>>>>> Hi Dipy Users, >>>>>>> >>>>>>> I've ran into errors "Eigenvalues did not converge" when using the >>>>>>> free water elimination model, >>>>>>> and here is the error message: >>>>>>> >>>>>>> File >>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/reconst/dti.py", >>>>>>> line 1615, in _decompose_tensor_nan >>>>>>> min_diffusivity=min_diffusivity) >>>>>>> File >>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/reconst/dti.py", >>>>>>> line 1946, in decompose_tensor >>>>>>> eigenvals, eigenvecs = eigh(tensor) >>>>>>> File >>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/utils/arrfuncs.py", >>>>>>> line 128, in eigh >>>>>>> return np.linalg.eigh(a, UPLO) >>>>>>> File >>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/numpy/linalg/linalg.py", >>>>>>> line 1291, in eigh >>>>>>> w, vt = gufunc(a, signature=signature, extobj=extobj) >>>>>>> File >>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/numpy/linalg/linalg.py", >>>>>>> line 95, in _raise_linalgerror_eigenvalues_nonconvergence >>>>>>> raise LinAlgError("Eigenvalues did not converge") >>>>>>> numpy.linalg.linalg.LinAlgError: Eigenvalues did not converge >>>>>>> >>>>>>> >>>>>>> Any suggestions? >>>>>>> >>>>>>> Thank you. >>>>>>> >>>>>>> Ping >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Neuroimaging mailing list >>>>>>> Neuroimaging at python.org >>>>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>>>> >>>>>> _______________________________________________ >>>>>> Neuroimaging mailing list >>>>>> Neuroimaging at python.org >>>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>>> >>>>> _______________________________________________ >>>>> Neuroimaging mailing list >>>>> Neuroimaging at python.org >>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>> >>>> _______________________________________________ >>>> Neuroimaging mailing list >>>> Neuroimaging at python.org >>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>> >>> _______________________________________________ >>> Neuroimaging mailing list >>> Neuroimaging at python.org >>> https://mail.python.org/mailman/listinfo/neuroimaging >>> >> _______________________________________________ >> Neuroimaging mailing list >> Neuroimaging at python.org >> https://mail.python.org/mailman/listinfo/neuroimaging >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From alexandra.badea at duke.edu Wed Jan 9 11:45:21 2019 From: alexandra.badea at duke.edu (Alexandra Badea, Ph.D.) Date: Wed, 9 Jan 2019 16:45:21 +0000 Subject: [Neuroimaging] metrics on bundles in dipy Message-ID: <86C83DD5-BCA9-41B5-BD77-F13DAE9D3FE7@duke.edu> Hi! I am trying to use dipy to extract image associated metrics like FA on bundles. I guess this has already been implemented, and would be grateful for a pointer to the proper function. Alternatively, will try and write a script to interpolate values from images to bundle centroids. Many thanks, Alexandra - -------------- next part -------------- An HTML attachment was scrubbed... URL: From arokem at gmail.com Thu Jan 10 13:48:50 2019 From: arokem at gmail.com (Ariel Rokem) Date: Thu, 10 Jan 2019 10:48:50 -0800 Subject: [Neuroimaging] metrics on bundles in dipy In-Reply-To: <86C83DD5-BCA9-41B5-BD77-F13DAE9D3FE7@duke.edu> References: <86C83DD5-BCA9-41B5-BD77-F13DAE9D3FE7@duke.edu> Message-ID: Hi Alexandra, There's a work-in-progress pull request implementing something like this: https://github.com/nipy/dipy/pull/1695 For the time being, you'll need to pull this branch down to get these features, but it should make it into the master branch soon, and hopefully into the next release. Cheers, Ariel On Wed, Jan 9, 2019 at 8:45 AM Alexandra Badea, Ph.D. < alexandra.badea at duke.edu> wrote: > Hi! > > I am trying to use dipy to extract image associated metrics like FA on > bundles. I guess this has already been implemented, and would be grateful > for a pointer to the proper function. > > Alternatively, will try and write a script to interpolate values from > images to bundle centroids. > > Many thanks, > > Alexandra > > - > > > _______________________________________________ > Neuroimaging mailing list > Neuroimaging at python.org > https://mail.python.org/mailman/listinfo/neuroimaging > -------------- next part -------------- An HTML attachment was scrubbed... URL: From alexandra.badea at duke.edu Thu Jan 10 14:04:05 2019 From: alexandra.badea at duke.edu (Alexandra Badea, Ph.D.) Date: Thu, 10 Jan 2019 19:04:05 +0000 Subject: [Neuroimaging] metrics on bundles in dipy In-Reply-To: References: <86C83DD5-BCA9-41B5-BD77-F13DAE9D3FE7@duke.edu> Message-ID: <89FC9939-C0D3-479B-8CDC-B382BA5F0934@duke.edu> Great news, thanks much Ariel! Alexandra From: Neuroimaging on behalf of Ariel Rokem Reply-To: Neuroimaging analysis in Python Date: Thursday, January 10, 2019 at 1:48 PM To: Neuroimaging analysis in Python Subject: Re: [Neuroimaging] metrics on bundles in dipy Hi Alexandra, There's a work-in-progress pull request implementing something like this: https://github.com/nipy/dipy/pull/1695 For the time being, you'll need to pull this branch down to get these features, but it should make it into the master branch soon, and hopefully into the next release. Cheers, Ariel On Wed, Jan 9, 2019 at 8:45 AM Alexandra Badea, Ph.D. > wrote: Hi! I am trying to use dipy to extract image associated metrics like FA on bundles. I guess this has already been implemented, and would be grateful for a pointer to the proper function. Alternatively, will try and write a script to interpolate values from images to bundle centroids. Many thanks, Alexandra - _______________________________________________ Neuroimaging mailing list Neuroimaging at python.org https://mail.python.org/mailman/listinfo/neuroimaging -------------- next part -------------- An HTML attachment was scrubbed... URL: From arokem at gmail.com Thu Jan 10 18:27:29 2019 From: arokem at gmail.com (Ariel Rokem) Date: Thu, 10 Jan 2019 15:27:29 -0800 Subject: [Neuroimaging] failure using DIPY Free Water Elimination DTI In-Reply-To: References: Message-ID: Hi Ping, Sorry. Using your mask, I can't reproduce the error. Here is my code: https://gist.github.com/arokem/2b7963ad5bd625f24e60c4a9307e7b7c I'd make sure to get rid of all the nans first (although I didn't seem to need to do this in my implementation). Hope that helps, Ariel On Wed, Jan 9, 2019 at 4:47 AM Ping-Hong Yeh wrote: > Hi Ariel > > Have you got the mask file? > > Any update? > > Thanks! > Ping > > On Fri, Jan 4, 2019 at 1:31 PM Ping-Hong Yeh > wrote: > >> I have attached the mask file. Thank you. >> >> maskimg = nib.load(join(dname, 'structural_mask.nii.gz')) >> mask = maskimg.get_data() >> affinemask = maskimg.affine >> >> >> On Fri, Jan 4, 2019 at 1:13 PM Ariel Rokem wrote: >> >>> >>> On Fri, Jan 4, 2019 at 7:42 AM Ping-Hong Yeh >>> wrote: >>> >>>> Hi Ariel, >>>> >>>> Thank you for your time. >>>> I've run fslmaths using the syntax of -nan beforehand, i thought that >>>> has taken care of it. >>>> >>> >>> I believe it's still there. My script crashed on that. >>> >>> >>>> Here is the script i used, >>>> >>>> import dipy.reconst.fwdti as fwdti >>>> Delta = 22.536 >>>> delta = 21.908 >>>> _Delta = 0.022536 >>>> _delta = 0.021908 >>>> >>>> dname=os.path.join('/data/NEURO2/ping/MUX', id, >>>> 'SOA_N270_plus19b0_fwd','data_DIFFPREP_t2acpc_proc_DRBUDDI_proc') >>>> fdwi = join(dname, >>>> 'data_DIFFPREP_t2acpc_proc_DRBUDDI_up_final_no7b0_nan.nii.gz') >>>> fbvec = join(dname, >>>> 'data_DIFFPREP_t2acpc_proc_DRBUDDI_up_final_no7b0_invY.bvecs') #the final >>>> oriention after TORTOISE is RAS for earlier SOA289 data >>>> fbval = join(dname, >>>> 'data_DIFFPREP_t2acpc_proc_DRBUDDI_up_final_no7b0.bvals') >>>> >>>> from dipy.io import read_bvals_bvecs >>>> bvals, bvecs = read_bvals_bvecs(fbval, fbvec) >>>> from dipy.core.gradients import gradient_table >>>> gtab = gradient_table(bvals, bvecs, big_delta=Delta, small_delta=delta) >>>> img = nib.load(fdwi) >>>> data = img.get_data() >>>> affine = img.affine >>>> >>>> #free water >>>> fwdtimodel = fwdti.FreeWaterTensorModel(gtab, fit_method='NLS' ) >>>> fwdtifit = fwdtimodel.fit(data, mask=mask) >>>> img = nib.Nifti1Image(fwdtifit.fa, affine) >>>> nib.save(img, join(dname, 'FWdti_FA.nii.gz')) >>>> img = nib.Nifti1Image(fwdtifit.md, affine) >>>> nib.save(img, join(dname, 'FWdti_MD.nii.gz')) >>>> img = nib.Nifti1Image(fwdtifit.ad, affine) >>>> nib.save(img, join(dname, 'FWdti_AD.nii.gz')) >>>> img = nib.Nifti1Image(fwdtifit.rd, affine) >>>> nib.save(img, join(dname, 'FWdti_RD.nii.gz')) >>>> img = nib.Nifti1Image(fwdtifit.f, affine) >>>> nib.save(img, join(dname, 'FWdti_fw.nii.gz')) >>>> >>>> >>> Where did `mask` come from? >>> >>> Cheers, >>> >>> Ariel >>> >>>> >>>> On Fri, Jan 4, 2019 at 9:23 AM Ariel Rokem wrote: >>>> >>>>> Hi Ping, >>>>> >>>>> I can't quite reproduce your error, though I am getting similar >>>>> errors. Could you also share the code that you are running? >>>>> >>>>> For the time being, the one thing that I noticed is that there are >>>>> NaNs in your data. That might be causing this issue. >>>>> >>>>> Cheers, >>>>> >>>>> Ariel >>>>> >>>>> >>>>> >>>>> On Mon, Dec 31, 2018 at 5:43 AM Ping-Hong Yeh >>>>> wrote: >>>>> >>>>>> Hi Ariel, >>>>>> >>>>>> Have you got the chance to look at the DWI data that was attached to >>>>>> the previous email? >>>>>> >>>>>> Thank you for your time. >>>>>> >>>>>> Ping >>>>>> >>>>>> On Sat, Dec 29, 2018 at 1:12 AM Ariel Rokem wrote: >>>>>> >>>>>>> Hi Ping, >>>>>>> >>>>>>> Thanks for your email. Hard to say exactly what is going on without >>>>>>> further information. Could you tell us more about the data you are using? >>>>>>> How many b-values? How many directions? Any chance you could share the data >>>>>>> from the voxel that caused that error to be raised? >>>>>>> >>>>>>> Thanks! >>>>>>> >>>>>>> Ariel >>>>>>> >>>>>>> On Thu, Dec 27, 2018 at 6:55 AM Ping-Hong Yeh >>>>>>> wrote: >>>>>>> >>>>>>>> Hi Dipy Users, >>>>>>>> >>>>>>>> I've ran into errors "Eigenvalues did not converge" when using >>>>>>>> the free water elimination model, >>>>>>>> and here is the error message: >>>>>>>> >>>>>>>> File >>>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/reconst/dti.py", >>>>>>>> line 1615, in _decompose_tensor_nan >>>>>>>> min_diffusivity=min_diffusivity) >>>>>>>> File >>>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/reconst/dti.py", >>>>>>>> line 1946, in decompose_tensor >>>>>>>> eigenvals, eigenvecs = eigh(tensor) >>>>>>>> File >>>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/utils/arrfuncs.py", >>>>>>>> line 128, in eigh >>>>>>>> return np.linalg.eigh(a, UPLO) >>>>>>>> File >>>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/numpy/linalg/linalg.py", >>>>>>>> line 1291, in eigh >>>>>>>> w, vt = gufunc(a, signature=signature, extobj=extobj) >>>>>>>> File >>>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/numpy/linalg/linalg.py", >>>>>>>> line 95, in _raise_linalgerror_eigenvalues_nonconvergence >>>>>>>> raise LinAlgError("Eigenvalues did not converge") >>>>>>>> numpy.linalg.linalg.LinAlgError: Eigenvalues did not converge >>>>>>>> >>>>>>>> >>>>>>>> Any suggestions? >>>>>>>> >>>>>>>> Thank you. >>>>>>>> >>>>>>>> Ping >>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> Neuroimaging mailing list >>>>>>>> Neuroimaging at python.org >>>>>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>>>>> >>>>>>> _______________________________________________ >>>>>>> Neuroimaging mailing list >>>>>>> Neuroimaging at python.org >>>>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>>>> >>>>>> _______________________________________________ >>>>>> Neuroimaging mailing list >>>>>> Neuroimaging at python.org >>>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>>> >>>>> _______________________________________________ >>>>> Neuroimaging mailing list >>>>> Neuroimaging at python.org >>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>> >>>> _______________________________________________ >>>> Neuroimaging mailing list >>>> Neuroimaging at python.org >>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>> >>> _______________________________________________ >>> Neuroimaging mailing list >>> Neuroimaging at python.org >>> https://mail.python.org/mailman/listinfo/neuroimaging >>> >> _______________________________________________ > Neuroimaging mailing list > Neuroimaging at python.org > https://mail.python.org/mailman/listinfo/neuroimaging > -------------- next part -------------- An HTML attachment was scrubbed... URL: From eric.condamine at univ-grenoble-alpes.fr Fri Jan 11 10:26:05 2019 From: eric.condamine at univ-grenoble-alpes.fr (Eric Condamine) Date: Fri, 11 Jan 2019 16:26:05 +0100 Subject: [Neuroimaging] Apply resolution of one image.nii to another image.nii Message-ID: Hello nipy experts, I would like to change the resolution of an nifti image (let's say mask.nii) according to the resolution of one other nifti image (let's say ref.nii), a process that i was doing with the imcalc function of spm before i start to switch to python ... i confess that i do not yet know all the tools currently available under nipy umbrella ... One way to do it could be something like that. """ from skimage.transform import resize import nibabel as nib mask = nib.load(mask.nii) mask_data = mask.get_fdata() ref = nib.load(ref.nii) ref_data = ref.get_fdata() ref_size = ref_data.shape[:3] resized_mask_data = resize(mask_data, ref_size, order=1, mode='reflect') # order=1 (Bi-linear) is the default value and it seems that with 3D image, Bi-linear is equivalent to 'trilinear' of SPM's imcalc function ? mask_final = nib.Nifti1Image(resized_mask_data, xxx, yyy) nib.save(mask_final, mask_final) I do not succeed to obtain the wanted mask_final.nii (exactly the same as mask.nii, ie. same orientation in the same space, with only a change of the resolution). may be I am wrong with the xxx and yyy in nib.Nifti1Image(). I tried: nib.Nifti1Image(resized_mask_data, mask.affine, ref.header) or nib.Nifti1Image(resized_mask_data, mask.affine, mask.header) etc. without success. So I plan to make a python function in order to make the correct header for the mask_final.nii after the resize() function. Because this need seems pretty commun, i guess that a tools to do it is is already existing in python ? So before reinvent the wheel, I would like to be sure that I do not make mistake with? xxx and/or yyy ? May be other function/tool doing the job and that I do not know exist ? Thank you for all suggests or informations, All the best. -- Eric Condamine IRMaGe INSERM US17-CNRS UMS3552-UGA-CHUGA Unit? IRM 3T Recherche CHU Grenoble - CS 10217 38043 Grenoble Cedex 9 Tel : (00 33) 4 7676 7575 - Poste 63 202 : (00 33) 4 7676 8726 Fax : (00 33) 4 7676 9305 e-mail:eric.condamine at univ-grenoble-alpes.fr -------------- next part -------------- An HTML attachment was scrubbed... URL: From matthew.brett at gmail.com Fri Jan 11 11:00:12 2019 From: matthew.brett at gmail.com (Matthew Brett) Date: Fri, 11 Jan 2019 16:00:12 +0000 Subject: [Neuroimaging] Apply resolution of one image.nii to another image.nii In-Reply-To: References: Message-ID: Hi, On Fri, Jan 11, 2019 at 3:26 PM Eric Condamine wrote: > > Hello nipy experts, > I would like to change the resolution of an nifti image (let's say mask.nii) according to the resolution of one other nifti image (let's say ref.nii), a process that i was doing with the imcalc function of spm before i start to switch to python ... i confess that i do not yet know all the tools currently available under nipy umbrella ... > One way to do it could be something like that. > > """ > from skimage.transform import resize > import nibabel as nib > > mask = nib.load(mask.nii) > mask_data = mask.get_fdata() > > ref = nib.load(ref.nii) > ref_data = ref.get_fdata() > > ref_size = ref_data.shape[:3] > resized_mask_data = resize(mask_data, ref_size, order=1, mode='reflect') # order=1 (Bi-linear) is the default value and it seems that with 3D image, Bi-linear is equivalent to 'trilinear' of SPM's imcalc function ? Did you discover the processing module in nibabel? Maybe "resample_from_to" would help: http://nipy.org/nibabel/reference/nibabel.processing.html#nibabel.processing.resample_from_to Something like: import nibabel.processing as nibp resized = nibp.resample_from_to(mask, ref) Does that work? You'd probably have to threshold the image binarize it - trilinear resampling is the default - or use 0 (nearest neighbor) resampling. Cheers, Matthew From diana.prata at kcl.ac.uk Fri Jan 11 20:26:37 2019 From: diana.prata at kcl.ac.uk (Prata, Diana) Date: Sat, 12 Jan 2019 01:26:37 +0000 Subject: [Neuroimaging] TWO POST-DOC POSITIONS IN NEUROIMAGING @LISBON Message-ID: TWO POST-DOC POSITIONS IN NEUROIMAGING @LISBON Two post-doc vacancies opened at the Biomedical Neuroscience Lab (https://dpratalab.wordpress.com/; PI: Dr Diana Prata, with double affiliation in King?s College London), at the University of Lisbon - for research in human social neuroscience and the oxytocin and the dopamine systems in a highly interdisciplinary 3-year project involving pharmacology, genetics and a range of psychophysiological techniques. Expertise in fMRI and/or EEG highly preferred; and in eye-tracking and SCR favourable. Negotiable salary. Open until 26th of Jan 2019. We look forward to welcoming you!: http://www.eracareers.pt/opportunities/index.aspx?task=global&jobId=106526 Diana Prata, Phd Marie Curie Fellow Principal Investigator (Biomedical Neuroscience Lab), Instituto de Biof?sica e Engenharia Biom?dica, FCUL Visiting Lecturer, IoPPN, King's College London -------------- next part -------------- An HTML attachment was scrubbed... URL: From pinghongyeh at gmail.com Sat Jan 12 16:17:05 2019 From: pinghongyeh at gmail.com (Ping-Hong Yeh) Date: Sat, 12 Jan 2019 16:17:05 -0500 Subject: [Neuroimaging] failure using DIPY Free Water Elimination DTI In-Reply-To: References: Message-ID: HI Ariel, Thank you so much for the code and it ran without any errors. However, i am still puzzled what my scripts failed, which i do not see the differences between yours and mine. Regards, Ping On Thu, Jan 10, 2019 at 6:27 PM Ariel Rokem wrote: > Hi Ping, > > Sorry. Using your mask, I can't reproduce the error. Here is my code: > https://gist.github.com/arokem/2b7963ad5bd625f24e60c4a9307e7b7c > > I'd make sure to get rid of all the nans first (although I didn't seem to > need to do this in my implementation). > > Hope that helps, > > Ariel > > On Wed, Jan 9, 2019 at 4:47 AM Ping-Hong Yeh > wrote: > >> Hi Ariel >> >> Have you got the mask file? >> >> Any update? >> >> Thanks! >> Ping >> >> On Fri, Jan 4, 2019 at 1:31 PM Ping-Hong Yeh >> wrote: >> >>> I have attached the mask file. Thank you. >>> >>> maskimg = nib.load(join(dname, 'structural_mask.nii.gz')) >>> mask = maskimg.get_data() >>> affinemask = maskimg.affine >>> >>> >>> On Fri, Jan 4, 2019 at 1:13 PM Ariel Rokem wrote: >>> >>>> >>>> On Fri, Jan 4, 2019 at 7:42 AM Ping-Hong Yeh >>>> wrote: >>>> >>>>> Hi Ariel, >>>>> >>>>> Thank you for your time. >>>>> I've run fslmaths using the syntax of -nan beforehand, i thought >>>>> that has taken care of it. >>>>> >>>> >>>> I believe it's still there. My script crashed on that. >>>> >>>> >>>>> Here is the script i used, >>>>> >>>>> import dipy.reconst.fwdti as fwdti >>>>> Delta = 22.536 >>>>> delta = 21.908 >>>>> _Delta = 0.022536 >>>>> _delta = 0.021908 >>>>> >>>>> dname=os.path.join('/data/NEURO2/ping/MUX', id, >>>>> 'SOA_N270_plus19b0_fwd','data_DIFFPREP_t2acpc_proc_DRBUDDI_proc') >>>>> fdwi = join(dname, >>>>> 'data_DIFFPREP_t2acpc_proc_DRBUDDI_up_final_no7b0_nan.nii.gz') >>>>> fbvec = join(dname, >>>>> 'data_DIFFPREP_t2acpc_proc_DRBUDDI_up_final_no7b0_invY.bvecs') #the final >>>>> oriention after TORTOISE is RAS for earlier SOA289 data >>>>> fbval = join(dname, >>>>> 'data_DIFFPREP_t2acpc_proc_DRBUDDI_up_final_no7b0.bvals') >>>>> >>>>> from dipy.io import read_bvals_bvecs >>>>> bvals, bvecs = read_bvals_bvecs(fbval, fbvec) >>>>> from dipy.core.gradients import gradient_table >>>>> gtab = gradient_table(bvals, bvecs, big_delta=Delta, small_delta=delta) >>>>> img = nib.load(fdwi) >>>>> data = img.get_data() >>>>> affine = img.affine >>>>> >>>>> #free water >>>>> fwdtimodel = fwdti.FreeWaterTensorModel(gtab, fit_method='NLS' ) >>>>> fwdtifit = fwdtimodel.fit(data, mask=mask) >>>>> img = nib.Nifti1Image(fwdtifit.fa, affine) >>>>> nib.save(img, join(dname, 'FWdti_FA.nii.gz')) >>>>> img = nib.Nifti1Image(fwdtifit.md, affine) >>>>> nib.save(img, join(dname, 'FWdti_MD.nii.gz')) >>>>> img = nib.Nifti1Image(fwdtifit.ad, affine) >>>>> nib.save(img, join(dname, 'FWdti_AD.nii.gz')) >>>>> img = nib.Nifti1Image(fwdtifit.rd, affine) >>>>> nib.save(img, join(dname, 'FWdti_RD.nii.gz')) >>>>> img = nib.Nifti1Image(fwdtifit.f, affine) >>>>> nib.save(img, join(dname, 'FWdti_fw.nii.gz')) >>>>> >>>>> >>>> Where did `mask` come from? >>>> >>>> Cheers, >>>> >>>> Ariel >>>> >>>>> >>>>> On Fri, Jan 4, 2019 at 9:23 AM Ariel Rokem wrote: >>>>> >>>>>> Hi Ping, >>>>>> >>>>>> I can't quite reproduce your error, though I am getting similar >>>>>> errors. Could you also share the code that you are running? >>>>>> >>>>>> For the time being, the one thing that I noticed is that there are >>>>>> NaNs in your data. That might be causing this issue. >>>>>> >>>>>> Cheers, >>>>>> >>>>>> Ariel >>>>>> >>>>>> >>>>>> >>>>>> On Mon, Dec 31, 2018 at 5:43 AM Ping-Hong Yeh >>>>>> wrote: >>>>>> >>>>>>> Hi Ariel, >>>>>>> >>>>>>> Have you got the chance to look at the DWI data that was attached >>>>>>> to the previous email? >>>>>>> >>>>>>> Thank you for your time. >>>>>>> >>>>>>> Ping >>>>>>> >>>>>>> On Sat, Dec 29, 2018 at 1:12 AM Ariel Rokem >>>>>>> wrote: >>>>>>> >>>>>>>> Hi Ping, >>>>>>>> >>>>>>>> Thanks for your email. Hard to say exactly what is going on without >>>>>>>> further information. Could you tell us more about the data you are using? >>>>>>>> How many b-values? How many directions? Any chance you could share the data >>>>>>>> from the voxel that caused that error to be raised? >>>>>>>> >>>>>>>> Thanks! >>>>>>>> >>>>>>>> Ariel >>>>>>>> >>>>>>>> On Thu, Dec 27, 2018 at 6:55 AM Ping-Hong Yeh < >>>>>>>> pinghongyeh at gmail.com> wrote: >>>>>>>> >>>>>>>>> Hi Dipy Users, >>>>>>>>> >>>>>>>>> I've ran into errors "Eigenvalues did not converge" when using >>>>>>>>> the free water elimination model, >>>>>>>>> and here is the error message: >>>>>>>>> >>>>>>>>> File >>>>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/reconst/dti.py", >>>>>>>>> line 1615, in _decompose_tensor_nan >>>>>>>>> min_diffusivity=min_diffusivity) >>>>>>>>> File >>>>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/reconst/dti.py", >>>>>>>>> line 1946, in decompose_tensor >>>>>>>>> eigenvals, eigenvecs = eigh(tensor) >>>>>>>>> File >>>>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/utils/arrfuncs.py", >>>>>>>>> line 128, in eigh >>>>>>>>> return np.linalg.eigh(a, UPLO) >>>>>>>>> File >>>>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/numpy/linalg/linalg.py", >>>>>>>>> line 1291, in eigh >>>>>>>>> w, vt = gufunc(a, signature=signature, extobj=extobj) >>>>>>>>> File >>>>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/numpy/linalg/linalg.py", >>>>>>>>> line 95, in _raise_linalgerror_eigenvalues_nonconvergence >>>>>>>>> raise LinAlgError("Eigenvalues did not converge") >>>>>>>>> numpy.linalg.linalg.LinAlgError: Eigenvalues did not converge >>>>>>>>> >>>>>>>>> >>>>>>>>> Any suggestions? >>>>>>>>> >>>>>>>>> Thank you. >>>>>>>>> >>>>>>>>> Ping >>>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> Neuroimaging mailing list >>>>>>>>> Neuroimaging at python.org >>>>>>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> Neuroimaging mailing list >>>>>>>> Neuroimaging at python.org >>>>>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>>>>> >>>>>>> _______________________________________________ >>>>>>> Neuroimaging mailing list >>>>>>> Neuroimaging at python.org >>>>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>>>> >>>>>> _______________________________________________ >>>>>> Neuroimaging mailing list >>>>>> Neuroimaging at python.org >>>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>>> >>>>> _______________________________________________ >>>>> Neuroimaging mailing list >>>>> Neuroimaging at python.org >>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>> >>>> _______________________________________________ >>>> Neuroimaging mailing list >>>> Neuroimaging at python.org >>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>> >>> _______________________________________________ >> Neuroimaging mailing list >> Neuroimaging at python.org >> https://mail.python.org/mailman/listinfo/neuroimaging >> > _______________________________________________ > Neuroimaging mailing list > Neuroimaging at python.org > https://mail.python.org/mailman/listinfo/neuroimaging > -------------- next part -------------- An HTML attachment was scrubbed... URL: From elef at indiana.edu Sat Jan 12 17:55:01 2019 From: elef at indiana.edu (Eleftherios Garyfallidis) Date: Sat, 12 Jan 2019 17:55:01 -0500 Subject: [Neuroimaging] failure using DIPY Free Water Elimination DTI In-Reply-To: References: Message-ID: Must be magic :) On Sat, Jan 12, 2019 at 4:17 PM Ping-Hong Yeh wrote: > HI Ariel, > Thank you so much for the code and it ran without any errors. > However, i am still puzzled what my scripts failed, which i do not see the > differences between yours and mine. > > Regards, > > Ping > > On Thu, Jan 10, 2019 at 6:27 PM Ariel Rokem wrote: > >> Hi Ping, >> >> Sorry. Using your mask, I can't reproduce the error. Here is my code: >> https://gist.github.com/arokem/2b7963ad5bd625f24e60c4a9307e7b7c >> >> I'd make sure to get rid of all the nans first (although I didn't seem to >> need to do this in my implementation). >> >> Hope that helps, >> >> Ariel >> >> On Wed, Jan 9, 2019 at 4:47 AM Ping-Hong Yeh >> wrote: >> >>> Hi Ariel >>> >>> Have you got the mask file? >>> >>> Any update? >>> >>> Thanks! >>> Ping >>> >>> On Fri, Jan 4, 2019 at 1:31 PM Ping-Hong Yeh >>> wrote: >>> >>>> I have attached the mask file. Thank you. >>>> >>>> maskimg = nib.load(join(dname, 'structural_mask.nii.gz')) >>>> mask = maskimg.get_data() >>>> affinemask = maskimg.affine >>>> >>>> >>>> On Fri, Jan 4, 2019 at 1:13 PM Ariel Rokem wrote: >>>> >>>>> >>>>> On Fri, Jan 4, 2019 at 7:42 AM Ping-Hong Yeh >>>>> wrote: >>>>> >>>>>> Hi Ariel, >>>>>> >>>>>> Thank you for your time. >>>>>> I've run fslmaths using the syntax of -nan beforehand, i thought >>>>>> that has taken care of it. >>>>>> >>>>> >>>>> I believe it's still there. My script crashed on that. >>>>> >>>>> >>>>>> Here is the script i used, >>>>>> >>>>>> import dipy.reconst.fwdti as fwdti >>>>>> Delta = 22.536 >>>>>> delta = 21.908 >>>>>> _Delta = 0.022536 >>>>>> _delta = 0.021908 >>>>>> >>>>>> dname=os.path.join('/data/NEURO2/ping/MUX', id, >>>>>> 'SOA_N270_plus19b0_fwd','data_DIFFPREP_t2acpc_proc_DRBUDDI_proc') >>>>>> fdwi = join(dname, >>>>>> 'data_DIFFPREP_t2acpc_proc_DRBUDDI_up_final_no7b0_nan.nii.gz') >>>>>> fbvec = join(dname, >>>>>> 'data_DIFFPREP_t2acpc_proc_DRBUDDI_up_final_no7b0_invY.bvecs') #the final >>>>>> oriention after TORTOISE is RAS for earlier SOA289 data >>>>>> fbval = join(dname, >>>>>> 'data_DIFFPREP_t2acpc_proc_DRBUDDI_up_final_no7b0.bvals') >>>>>> >>>>>> from dipy.io import read_bvals_bvecs >>>>>> bvals, bvecs = read_bvals_bvecs(fbval, fbvec) >>>>>> from dipy.core.gradients import gradient_table >>>>>> gtab = gradient_table(bvals, bvecs, big_delta=Delta, >>>>>> small_delta=delta) >>>>>> img = nib.load(fdwi) >>>>>> data = img.get_data() >>>>>> affine = img.affine >>>>>> >>>>>> #free water >>>>>> fwdtimodel = fwdti.FreeWaterTensorModel(gtab, fit_method='NLS' ) >>>>>> fwdtifit = fwdtimodel.fit(data, mask=mask) >>>>>> img = nib.Nifti1Image(fwdtifit.fa, affine) >>>>>> nib.save(img, join(dname, 'FWdti_FA.nii.gz')) >>>>>> img = nib.Nifti1Image(fwdtifit.md, affine) >>>>>> nib.save(img, join(dname, 'FWdti_MD.nii.gz')) >>>>>> img = nib.Nifti1Image(fwdtifit.ad, affine) >>>>>> nib.save(img, join(dname, 'FWdti_AD.nii.gz')) >>>>>> img = nib.Nifti1Image(fwdtifit.rd, affine) >>>>>> nib.save(img, join(dname, 'FWdti_RD.nii.gz')) >>>>>> img = nib.Nifti1Image(fwdtifit.f, affine) >>>>>> nib.save(img, join(dname, 'FWdti_fw.nii.gz')) >>>>>> >>>>>> >>>>> Where did `mask` come from? >>>>> >>>>> Cheers, >>>>> >>>>> Ariel >>>>> >>>>>> >>>>>> On Fri, Jan 4, 2019 at 9:23 AM Ariel Rokem wrote: >>>>>> >>>>>>> Hi Ping, >>>>>>> >>>>>>> I can't quite reproduce your error, though I am getting similar >>>>>>> errors. Could you also share the code that you are running? >>>>>>> >>>>>>> For the time being, the one thing that I noticed is that there are >>>>>>> NaNs in your data. That might be causing this issue. >>>>>>> >>>>>>> Cheers, >>>>>>> >>>>>>> Ariel >>>>>>> >>>>>>> >>>>>>> >>>>>>> On Mon, Dec 31, 2018 at 5:43 AM Ping-Hong Yeh >>>>>>> wrote: >>>>>>> >>>>>>>> Hi Ariel, >>>>>>>> >>>>>>>> Have you got the chance to look at the DWI data that was attached >>>>>>>> to the previous email? >>>>>>>> >>>>>>>> Thank you for your time. >>>>>>>> >>>>>>>> Ping >>>>>>>> >>>>>>>> On Sat, Dec 29, 2018 at 1:12 AM Ariel Rokem >>>>>>>> wrote: >>>>>>>> >>>>>>>>> Hi Ping, >>>>>>>>> >>>>>>>>> Thanks for your email. Hard to say exactly what is going on >>>>>>>>> without further information. Could you tell us more about the data you are >>>>>>>>> using? How many b-values? How many directions? Any chance you could share >>>>>>>>> the data from the voxel that caused that error to be raised? >>>>>>>>> >>>>>>>>> Thanks! >>>>>>>>> >>>>>>>>> Ariel >>>>>>>>> >>>>>>>>> On Thu, Dec 27, 2018 at 6:55 AM Ping-Hong Yeh < >>>>>>>>> pinghongyeh at gmail.com> wrote: >>>>>>>>> >>>>>>>>>> Hi Dipy Users, >>>>>>>>>> >>>>>>>>>> I've ran into errors "Eigenvalues did not converge" when using >>>>>>>>>> the free water elimination model, >>>>>>>>>> and here is the error message: >>>>>>>>>> >>>>>>>>>> File >>>>>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/reconst/dti.py", >>>>>>>>>> line 1615, in _decompose_tensor_nan >>>>>>>>>> min_diffusivity=min_diffusivity) >>>>>>>>>> File >>>>>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/reconst/dti.py", >>>>>>>>>> line 1946, in decompose_tensor >>>>>>>>>> eigenvals, eigenvecs = eigh(tensor) >>>>>>>>>> File >>>>>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/utils/arrfuncs.py", >>>>>>>>>> line 128, in eigh >>>>>>>>>> return np.linalg.eigh(a, UPLO) >>>>>>>>>> File >>>>>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/numpy/linalg/linalg.py", >>>>>>>>>> line 1291, in eigh >>>>>>>>>> w, vt = gufunc(a, signature=signature, extobj=extobj) >>>>>>>>>> File >>>>>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/numpy/linalg/linalg.py", >>>>>>>>>> line 95, in _raise_linalgerror_eigenvalues_nonconvergence >>>>>>>>>> raise LinAlgError("Eigenvalues did not converge") >>>>>>>>>> numpy.linalg.linalg.LinAlgError: Eigenvalues did not converge >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Any suggestions? >>>>>>>>>> >>>>>>>>>> Thank you. >>>>>>>>>> >>>>>>>>>> Ping >>>>>>>>>> >>>>>>>>>> _______________________________________________ >>>>>>>>>> Neuroimaging mailing list >>>>>>>>>> Neuroimaging at python.org >>>>>>>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> Neuroimaging mailing list >>>>>>>>> Neuroimaging at python.org >>>>>>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> Neuroimaging mailing list >>>>>>>> Neuroimaging at python.org >>>>>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>>>>> >>>>>>> _______________________________________________ >>>>>>> Neuroimaging mailing list >>>>>>> Neuroimaging at python.org >>>>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>>>> >>>>>> _______________________________________________ >>>>>> Neuroimaging mailing list >>>>>> Neuroimaging at python.org >>>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>>> >>>>> _______________________________________________ >>>>> Neuroimaging mailing list >>>>> Neuroimaging at python.org >>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>> >>>> _______________________________________________ >>> Neuroimaging mailing list >>> Neuroimaging at python.org >>> https://mail.python.org/mailman/listinfo/neuroimaging >>> >> _______________________________________________ >> Neuroimaging mailing list >> Neuroimaging at python.org >> https://mail.python.org/mailman/listinfo/neuroimaging >> > _______________________________________________ > Neuroimaging mailing list > Neuroimaging at python.org > https://mail.python.org/mailman/listinfo/neuroimaging > -------------- next part -------------- An HTML attachment was scrubbed... URL: From arokem at gmail.com Mon Jan 14 00:20:04 2019 From: arokem at gmail.com (Ariel Rokem) Date: Sun, 13 Jan 2019 21:20:04 -0800 Subject: [Neuroimaging] failure using DIPY Free Water Elimination DTI In-Reply-To: References: Message-ID: On Sat, Jan 12, 2019 at 2:56 PM Eleftherios Garyfallidis wrote: > Must be magic :) > > On Sat, Jan 12, 2019 at 4:17 PM Ping-Hong Yeh > wrote: > >> HI Ariel, >> Thank you so much for the code and it ran without any errors. >> However, i am still puzzled what my scripts failed, which i do not see >> the differences between yours and mine. >> >> Yeah - I have no idea. But happy to hear that it works for you :-) Ariel > Regards, >> >> Ping >> >> On Thu, Jan 10, 2019 at 6:27 PM Ariel Rokem wrote: >> >>> Hi Ping, >>> >>> Sorry. Using your mask, I can't reproduce the error. Here is my code: >>> https://gist.github.com/arokem/2b7963ad5bd625f24e60c4a9307e7b7c >>> >>> I'd make sure to get rid of all the nans first (although I didn't seem >>> to need to do this in my implementation). >>> >>> Hope that helps, >>> >>> Ariel >>> >>> On Wed, Jan 9, 2019 at 4:47 AM Ping-Hong Yeh >>> wrote: >>> >>>> Hi Ariel >>>> >>>> Have you got the mask file? >>>> >>>> Any update? >>>> >>>> Thanks! >>>> Ping >>>> >>>> On Fri, Jan 4, 2019 at 1:31 PM Ping-Hong Yeh >>>> wrote: >>>> >>>>> I have attached the mask file. Thank you. >>>>> >>>>> maskimg = nib.load(join(dname, 'structural_mask.nii.gz')) >>>>> mask = maskimg.get_data() >>>>> affinemask = maskimg.affine >>>>> >>>>> >>>>> On Fri, Jan 4, 2019 at 1:13 PM Ariel Rokem wrote: >>>>> >>>>>> >>>>>> On Fri, Jan 4, 2019 at 7:42 AM Ping-Hong Yeh >>>>>> wrote: >>>>>> >>>>>>> Hi Ariel, >>>>>>> >>>>>>> Thank you for your time. >>>>>>> I've run fslmaths using the syntax of -nan beforehand, i thought >>>>>>> that has taken care of it. >>>>>>> >>>>>> >>>>>> I believe it's still there. My script crashed on that. >>>>>> >>>>>> >>>>>>> Here is the script i used, >>>>>>> >>>>>>> import dipy.reconst.fwdti as fwdti >>>>>>> Delta = 22.536 >>>>>>> delta = 21.908 >>>>>>> _Delta = 0.022536 >>>>>>> _delta = 0.021908 >>>>>>> >>>>>>> dname=os.path.join('/data/NEURO2/ping/MUX', id, >>>>>>> 'SOA_N270_plus19b0_fwd','data_DIFFPREP_t2acpc_proc_DRBUDDI_proc') >>>>>>> fdwi = join(dname, >>>>>>> 'data_DIFFPREP_t2acpc_proc_DRBUDDI_up_final_no7b0_nan.nii.gz') >>>>>>> fbvec = join(dname, >>>>>>> 'data_DIFFPREP_t2acpc_proc_DRBUDDI_up_final_no7b0_invY.bvecs') #the final >>>>>>> oriention after TORTOISE is RAS for earlier SOA289 data >>>>>>> fbval = join(dname, >>>>>>> 'data_DIFFPREP_t2acpc_proc_DRBUDDI_up_final_no7b0.bvals') >>>>>>> >>>>>>> from dipy.io import read_bvals_bvecs >>>>>>> bvals, bvecs = read_bvals_bvecs(fbval, fbvec) >>>>>>> from dipy.core.gradients import gradient_table >>>>>>> gtab = gradient_table(bvals, bvecs, big_delta=Delta, >>>>>>> small_delta=delta) >>>>>>> img = nib.load(fdwi) >>>>>>> data = img.get_data() >>>>>>> affine = img.affine >>>>>>> >>>>>>> #free water >>>>>>> fwdtimodel = fwdti.FreeWaterTensorModel(gtab, fit_method='NLS' ) >>>>>>> fwdtifit = fwdtimodel.fit(data, mask=mask) >>>>>>> img = nib.Nifti1Image(fwdtifit.fa, affine) >>>>>>> nib.save(img, join(dname, 'FWdti_FA.nii.gz')) >>>>>>> img = nib.Nifti1Image(fwdtifit.md, affine) >>>>>>> nib.save(img, join(dname, 'FWdti_MD.nii.gz')) >>>>>>> img = nib.Nifti1Image(fwdtifit.ad, affine) >>>>>>> nib.save(img, join(dname, 'FWdti_AD.nii.gz')) >>>>>>> img = nib.Nifti1Image(fwdtifit.rd, affine) >>>>>>> nib.save(img, join(dname, 'FWdti_RD.nii.gz')) >>>>>>> img = nib.Nifti1Image(fwdtifit.f, affine) >>>>>>> nib.save(img, join(dname, 'FWdti_fw.nii.gz')) >>>>>>> >>>>>>> >>>>>> Where did `mask` come from? >>>>>> >>>>>> Cheers, >>>>>> >>>>>> Ariel >>>>>> >>>>>>> >>>>>>> On Fri, Jan 4, 2019 at 9:23 AM Ariel Rokem wrote: >>>>>>> >>>>>>>> Hi Ping, >>>>>>>> >>>>>>>> I can't quite reproduce your error, though I am getting similar >>>>>>>> errors. Could you also share the code that you are running? >>>>>>>> >>>>>>>> For the time being, the one thing that I noticed is that there are >>>>>>>> NaNs in your data. That might be causing this issue. >>>>>>>> >>>>>>>> Cheers, >>>>>>>> >>>>>>>> Ariel >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> On Mon, Dec 31, 2018 at 5:43 AM Ping-Hong Yeh < >>>>>>>> pinghongyeh at gmail.com> wrote: >>>>>>>> >>>>>>>>> Hi Ariel, >>>>>>>>> >>>>>>>>> Have you got the chance to look at the DWI data that was attached >>>>>>>>> to the previous email? >>>>>>>>> >>>>>>>>> Thank you for your time. >>>>>>>>> >>>>>>>>> Ping >>>>>>>>> >>>>>>>>> On Sat, Dec 29, 2018 at 1:12 AM Ariel Rokem >>>>>>>>> wrote: >>>>>>>>> >>>>>>>>>> Hi Ping, >>>>>>>>>> >>>>>>>>>> Thanks for your email. Hard to say exactly what is going on >>>>>>>>>> without further information. Could you tell us more about the data you are >>>>>>>>>> using? How many b-values? How many directions? Any chance you could share >>>>>>>>>> the data from the voxel that caused that error to be raised? >>>>>>>>>> >>>>>>>>>> Thanks! >>>>>>>>>> >>>>>>>>>> Ariel >>>>>>>>>> >>>>>>>>>> On Thu, Dec 27, 2018 at 6:55 AM Ping-Hong Yeh < >>>>>>>>>> pinghongyeh at gmail.com> wrote: >>>>>>>>>> >>>>>>>>>>> Hi Dipy Users, >>>>>>>>>>> >>>>>>>>>>> I've ran into errors "Eigenvalues did not converge" when using >>>>>>>>>>> the free water elimination model, >>>>>>>>>>> and here is the error message: >>>>>>>>>>> >>>>>>>>>>> File >>>>>>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/reconst/dti.py", >>>>>>>>>>> line 1615, in _decompose_tensor_nan >>>>>>>>>>> min_diffusivity=min_diffusivity) >>>>>>>>>>> File >>>>>>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/reconst/dti.py", >>>>>>>>>>> line 1946, in decompose_tensor >>>>>>>>>>> eigenvals, eigenvecs = eigh(tensor) >>>>>>>>>>> File >>>>>>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/dipy/utils/arrfuncs.py", >>>>>>>>>>> line 128, in eigh >>>>>>>>>>> return np.linalg.eigh(a, UPLO) >>>>>>>>>>> File >>>>>>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/numpy/linalg/linalg.py", >>>>>>>>>>> line 1291, in eigh >>>>>>>>>>> w, vt = gufunc(a, signature=signature, extobj=extobj) >>>>>>>>>>> File >>>>>>>>>>> "/Users/yehp/anaconda3/lib/python3.6/site-packages/numpy/linalg/linalg.py", >>>>>>>>>>> line 95, in _raise_linalgerror_eigenvalues_nonconvergence >>>>>>>>>>> raise LinAlgError("Eigenvalues did not converge") >>>>>>>>>>> numpy.linalg.linalg.LinAlgError: Eigenvalues did not converge >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> Any suggestions? >>>>>>>>>>> >>>>>>>>>>> Thank you. >>>>>>>>>>> >>>>>>>>>>> Ping >>>>>>>>>>> >>>>>>>>>>> _______________________________________________ >>>>>>>>>>> Neuroimaging mailing list >>>>>>>>>>> Neuroimaging at python.org >>>>>>>>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>>>>>>>> >>>>>>>>>> _______________________________________________ >>>>>>>>>> Neuroimaging mailing list >>>>>>>>>> Neuroimaging at python.org >>>>>>>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> Neuroimaging mailing list >>>>>>>>> Neuroimaging at python.org >>>>>>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> Neuroimaging mailing list >>>>>>>> Neuroimaging at python.org >>>>>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>>>>> >>>>>>> _______________________________________________ >>>>>>> Neuroimaging mailing list >>>>>>> Neuroimaging at python.org >>>>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>>>> >>>>>> _______________________________________________ >>>>>> Neuroimaging mailing list >>>>>> Neuroimaging at python.org >>>>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>>>> >>>>> _______________________________________________ >>>> Neuroimaging mailing list >>>> Neuroimaging at python.org >>>> https://mail.python.org/mailman/listinfo/neuroimaging >>>> >>> _______________________________________________ >>> Neuroimaging mailing list >>> Neuroimaging at python.org >>> https://mail.python.org/mailman/listinfo/neuroimaging >>> >> _______________________________________________ >> Neuroimaging mailing list >> Neuroimaging at python.org >> https://mail.python.org/mailman/listinfo/neuroimaging >> > _______________________________________________ > Neuroimaging mailing list > Neuroimaging at python.org > https://mail.python.org/mailman/listinfo/neuroimaging > -------------- next part -------------- An HTML attachment was scrubbed... URL: From newsletter at a2mailserver.com Wed Jan 9 22:50:09 2019 From: newsletter at a2mailserver.com (Avraham F) Date: Thu, 10 Jan 2019 04:50:09 +0100 Subject: [Neuroimaging] Call for abstract (2019) Tel Aviv Message-ID: <0.0.1.97.1D4A89795492964.0@erricson.jartent.info> Your email client cannot read this email. To view it online, please go here: http://track.yoganews.info/campaigns/webversion/NzcwNg==/MzI3OTQwNg==/MjU5
If you received this email by mistake - we apologize and please?Unsubscribe me from this list

?

Dear colleagues,

?

You are welcome to join us in the 2019 International Conference on?"Movement and Cognition" which will take place on 22-24 July 2019? at the Tel-Aviv University, Israel.

The event addresses the relationship between movement and cognition and the broad topic of the conference include?scientific explorations?of Cognitive-Movement applications.

?

You are welcome also to submit to the scientific committee an abstract for oral presentation, poster, symposium, or workshop,? if you wish to present your work or research at the conference.




For more details please check out our conference website at: www.movementis.co.il

?

Should you have questions relating to the conference, please contact the conference organizers at:?office at movememntis.com ?

?

I hope to meet you in Tel-Aviv in July 2019.

Wish very best wishes,

?

Gerry Leisman

Full Professor Neuro-?&?Rehabilitation Sciences and Research Fellow

University of Haifa

Faculty of Social Welfare and Health Sciences

Abba Khoushy Ave. 199,?Eshkol Tower, Rm. 910

Mt. Carmel, Haifa, Israel 3498838

Profesor de Neurolog?a Restaurativa

Universidad de Ciencias M?dicas

Facultad 'Manuel Fajardo'

Instituto de Neurolog?a y Neurocirug?a

Neurofisiolog?a Clin?ca

Ciudad de la Habana, Cuba?

+(972)-(0)52-420-5643 [Israel] ; ?

+1-516-301-5305?[Office/Labs Both USA and?Israel] University Email:?g.leisman at edu.haifa.ac.il

?

-------------- next part -------------- An HTML attachment was scrubbed... URL: From gbcosme at fc.ul.pt Mon Jan 14 12:11:48 2019 From: gbcosme at fc.ul.pt (gcosme) Date: Mon, 14 Jan 2019 17:11:48 +0000 Subject: [Neuroimaging] Two Post-Doc positions opened at the Biomedical Neuroscience Lab in Lisbon Message-ID: <00d2a734ec1e4ae5b466b5a12f87a608@FC-MBX1.fc.ul.pt> ? Two Post-Doc positions opened at the Biomedical Neuroscience Lab (https://dpratalab.wordpress.com/; PI: Dr Diana Prata, with double affiliation in King's College London), at the University of Lisbon - for research in human social neuroscience and the oxytocin and the dopamine systems in a highly interdisciplinary 3-year project involving pharmacology, genetics and a range of psychophysiological techniques. Expertise in fMRI and/or EEG highly preferred; and in eye-tracking and SCR favourable. Negotiable salary. Open until 26th of Jan 2019. We look forward to welcoming you! http://www.eracareers.pt/opportunities/index.aspx?task=global&jobId=106526? Best, Cosmo Gon?alo Bairos Cosme ________________________________ Biomedical Neuroscience Lab - Diana Prata's Lab Instituto de Biof?sica e Engenharia Biom?dica Faculdade de Ci?ncias da Universidade de Lisboa Campo Grande - 1749-016 Lisboa -------------- next part -------------- An HTML attachment was scrubbed... URL: From markiewicz at stanford.edu Wed Jan 16 10:17:17 2019 From: markiewicz at stanford.edu (Christopher Markiewicz) Date: Wed, 16 Jan 2019 15:17:17 +0000 Subject: [Neuroimaging] ANN: nibabel 2.3.3 Message-ID: Hi all, Some of you may have noticed import issues with the nibabel 2.3.2 release. Due to some changes in the build scripts, the six library was no longer being required. The latest 2.3.3 release is simply 2.3.2 with fixed dependencies, so there's no urgent need to upgrade if your installation is working fine. Any libraries would probably do well to avoid pinning to 2.3.2, however. Thanks to Gael Varoquaux and the rest of the nilearn team for tracking down the issue. Please cite the latest nibabel using the Zenodo DOI: https://doi.org/10.5281/zenodo.2541736 -- Chris Markiewicz Center for Reproducible Neuroscience Stanford University -------------- next part -------------- An HTML attachment was scrubbed... URL: From baran.aydogan at aalto.fi Wed Jan 16 13:06:41 2019 From: baran.aydogan at aalto.fi (Aydogan Baran) Date: Wed, 16 Jan 2019 18:06:41 +0000 Subject: [Neuroimaging] Brain Twitter Conference 2019 #brainTC Message-ID: <895752e970f54c1ba4f24f9e7fa7815d@aalto.fi> Dear colleagues, The 3rd Annual Brain Twitter Conference 2019 (#brainTC) will take place on March 14th, 2019 and the abstract submission is now open! This year the keynote tweeters include Russ Poldrack (@russpoldrack?) and Jay van Bavel (@jayvanbavel)! For more information about the conference and how to submit an abstract, please visit our website https://brain.tc and follow @RealBrainTC. We would also appreciate if can spread the call in your networks! What is Twitter Conference? A Twitter conference is meant for scientists to present and discuss their research on social media. During the conference presenters will be allocated a 15 min time slot, during which they will present a series of 6 tweets or less, marked with the #brainTC tag and an ordinal number of the tweet. This is a great opportunity to practice condensing your message and getting word of your research out there. In the last two years #brainTC has a reached an average of ~ 0.5 million Twitter users! On behalf of the organizing committee, best wishes, D. Baran Aydogan @baranaydogan -- D. Baran Aydogan, PhD Post Doctoral Researcher Department of Neuroscience and Biomedical Engineering Aalto University, Finland -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: brainTC.jpeg Type: image/jpeg Size: 54104 bytes Desc: brainTC.jpeg URL: From gael.varoquaux at normalesup.org Thu Jan 17 09:31:01 2019 From: gael.varoquaux at normalesup.org (Gael Varoquaux) Date: Thu, 17 Jan 2019 15:31:01 +0100 Subject: [Neuroimaging] ANN: nibabel 2.3.3 In-Reply-To: References: Message-ID: <20190117143101.e74ura3nlwervwfg@phare.normalesup.org> On Wed, Jan 16, 2019 at 03:17:17PM +0000, Christopher Markiewicz wrote: > Thanks to Gael Varoquaux and the rest of the nilearn team for tracking down the > issue. Thanks to you and the rest of the team for being incredibly responsive. You are doing a service to the community. Ga?l From j.schreiber at fz-juelich.de Fri Jan 18 04:14:22 2019 From: j.schreiber at fz-juelich.de (Jan Schreiber) Date: Fri, 18 Jan 2019 10:14:22 +0100 Subject: [Neuroimaging] [DIPY] Calculate Path Length Map Message-ID: <4c59cc61-3eb9-42fb-7f1c-c970300c4010@fz-juelich.de> Dear Experts, I am trying to run the "Calculate Path Length Map" example http://nipy.org/dipy/examples_built/path_length_map.html#example-path-length-map Unfortunately I am getting the error message Traceback (most recent call last): File "path_length_map.py", line 26, in from dipy.viz import actor, window, colormap as cmap ImportError: cannot import name 'actor' Python 3.6.7 :: Anaconda custom (64-bit) dipy==0.15.0 vtk==8.1.2 Do you have an idea what's missing? Thanks, Jan -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/pkcs7-signature Size: 5098 bytes Desc: S/MIME Cryptographic Signature URL: From skoudoro at iu.edu Fri Jan 18 09:27:43 2019 From: skoudoro at iu.edu (Koudoro, Serge) Date: Fri, 18 Jan 2019 14:27:43 +0000 Subject: [Neuroimaging] [DIPY] Calculate Path Length Map In-Reply-To: <4c59cc61-3eb9-42fb-7f1c-c970300c4010@fz-juelich.de> References: <4c59cc61-3eb9-42fb-7f1c-c970300c4010@fz-juelich.de> Message-ID: Hi Jan, Try to install FURY package (https://github.com/fury-gl/fury): -> pip install fury It should work after that. Serge K. --- DIPY Workshop 2019, Titanium Edition --- March 11-15 --- More information at https://workshop.dipy.org -----Original Message----- From: Neuroimaging On Behalf Of Jan Schreiber Sent: Friday, January 18, 2019 4:14 AM To: Neuroimaging analysis in Python Subject: [Neuroimaging] [DIPY] Calculate Path Length Map Dear Experts, I am trying to run the "Calculate Path Length Map" example http://nipy.org/dipy/examples_built/path_length_map.html#example-path-length-map Unfortunately I am getting the error message Traceback (most recent call last): File "path_length_map.py", line 26, in from dipy.viz import actor, window, colormap as cmap ImportError: cannot import name 'actor' Python 3.6.7 :: Anaconda custom (64-bit) dipy==0.15.0 vtk==8.1.2 Do you have an idea what's missing? Thanks, Jan From eric.condamine at univ-grenoble-alpes.fr Fri Jan 18 11:42:16 2019 From: eric.condamine at univ-grenoble-alpes.fr (Eric Condamine) Date: Fri, 18 Jan 2019 17:42:16 +0100 Subject: [Neuroimaging] Fwd: Re: Apply resolution of one image.nii to another image.nii In-Reply-To: <676271529.16972194.1547222862788.JavaMail.zimbra@inria.fr> References: <676271529.16972194.1547222862788.JavaMail.zimbra@inria.fr> Message-ID: <4a30a721-5ac7-e981-befb-e22f65f83305@univ-grenoble-alpes.fr> Hello nipy experts, Many thanks to Bertrand Thirion and Matthew Brett for their fast and suitable answers ! i.e. nilearn.image.resample_to_img() and nibabel.processing.resample_from_to(), respectively. I tested these 2 possibilities, in addition to my proposal (skimage) and using as a reference the results obtained from imcalc (SPM), for the comparison (I don't know it is the best reference ... but it is mine :-)) 1- I definitely not recommend my proposal !!! It was the less good result obtained .... 2- all these methods (including imcalc) make the header of the resized image from the header of the reference (especially the affine parameter). So, to obtain a good result, it is better to use images in the same space and position (i.e. after coregistration and normalisation). 3- As warned by Matthew, it was sometimes necessary to threshold the resized image with the nibabel.processing.resample_from_to() option. Indeed, the background with zero intensity in the original image was no longer zero in the resized image. This was not observed in all tests and I didn't take the time to investigate why. This was never necessary with the nilearn.image.resample_to_img(), in the same tests. 4- Except this non-zero intensity in the background of the resized image with nibabel.processing.resample_from_to(), and only in some cases, I obtained with nibabel.processing.resample_from_to() and nilearn.image.resample_to_img(), results very, very close of what it was possible to obtain with imcalc of SPM. Again, thank you very much for your help ! Eric ************************** Script used: ## *imcalc* matlabbatch{1}.spm.util.imcalc.input = { '/home/econdami/Desktop/test_resizeSPM/test1/ref.nii,1' '/home/econdami/Desktop/test_resizeSPM/test1/mask.nii,1' ??????????????????????????????????????? }; matlabbatch{1}.spm.util.imcalc.output = 'output_image'; matlabbatch{1}.spm.util.imcalc.outdir = {'/home/econdami/Desktop/test_resizeSPM/test1/'}; matlabbatch{1}.spm.util.imcalc.expression = 'i2'; matlabbatch{1}.spm.util.imcalc.options.dmtx = 0; matlabbatch{1}.spm.util.imcalc.options.mask = 0; matlabbatch{1}.spm.util.imcalc.options.interp = 1; matlabbatch{1}.spm.util.imcalc.options.dtype = 4; ## *nilearn.image* from nilearn.image import resample_to_img import nibabel as nib output=resample_to_img('/home/econdami/Desktop/test_resize/test_resizeNilearn/mask.nii', '/home/econdami/Desktop/test_resize/test_resizeNilearn/ref.nii') nib.save(output, '/home/econdami/Desktop/test_resize/test_resizeNilearn/output_image') ## *nilearn.image* import nibabel.processing as nibp import nibabel as nib mask = nib.load('/home/econdami/Desktop/test_resize/test_resizeNibabel/mask.nii') ref = nib.load('/home/econdami/Desktop/test_resize/test_resizeNibabel/ref.nii') ref3D = ref.slicer[:,:,:,0] # ref image data is 4-D array (length, length, length, time). Takes the first brain volume. output=nibp.resample_from_to(mask, ref3D) nib.save(output, '/home/econdami/Desktop/test_resize/test_resizeNibabel/output_image') ## *skimage.transform* from skimage.transform import resize import nibabel as nib mask = nib.load('/home/econdami/Desktop/test_resize/test_skimage/mask.nii') ref = nib.load('/home/econdami/Desktop/test_resize/test_skimage/ref.nii') ref_data = ref.get_fdata() mask_data = mask.get_fdata() ref_size = ref_data.shape[:3] # ref image data is a 4-D array (length, length, length, time). Takes the first brain volume size. output = resize(mask_data, ref_size, order=1, mode='reflect') # order=1 (Bi-linear) is the default value and it seems that with 3D image, Bi-linear is equivalent to 'trilinear' of SPM's imcalc function ? output_ref_mask = nib.Nifti1Image(output, ref.affine, mask.header) # Here some test was done by using also output_ref_ref = nib.Nifti1Image(output, ref.affine, ref.header) etc. nib.save(output_ref_mask, '/home/econdami/Desktop/test_resize/test_skimage/output_image_ref_mask') -------- Forwarded Message -------- Date: Fri, 11 Jan 2019 16:00:12 +0000 From: Matthew Brett To: Neuroimaging analysis in Python Subject: Re: [Neuroimaging] Apply resolution of one image.nii to another image.nii Message-ID: Content-Type: text/plain; charset="UTF-8 Hi, Did you discover the processing module in nibabel? Maybe "resample_from_to" would help: http://nipy.org/nibabel/reference/nibabel.processing.html#nibabel.processing.resample_from_to Something like: import nibabel.processing as nibp resized = nibp.resample_from_to(mask, ref) Does that work? You'd probably have to threshold the image binarize it - trilinear resampling is the default - or use 0 (nearest neighbor) resampling. Cheers, Matthew -------- Forwarded Message -------- Subject: Re: [Neuroimaging] Apply resolution of one image.nii to another image.nii Date: Fri, 11 Jan 2019 17:07:42 +0100 (CET) From: Bertrand Thirion To: eric.condamine at univ-grenoble-alpes.fr Hi Eric, you should use nilearn.image.resample_to_img Best, Bertrand ------------------------------------------------------------------------ *De: *"Eric Condamine" *?: *neuroimaging at python.org *Envoy?: *Vendredi 11 Janvier 2019 16:26:05 *Objet: *[Neuroimaging] Apply resolution of one image.nii to another image.nii Hello nipy experts, I would like to change the resolution of an nifti image (let's say mask.nii) according to the resolution of one other nifti image (let's say ref.nii), a process that i was doing with the imcalc function of spm before i start to switch to python ... i confess that i do not yet know all the tools currently available under nipy umbrella ... One way to do it could be something like that. """ from skimage.transform import resize import nibabel as nib mask = nib.load(mask.nii) mask_data = mask.get_fdata() ref = nib.load(ref.nii) ref_data = ref.get_fdata() ref_size = ref_data.shape[:3] resized_mask_data = resize(mask_data, ref_size, order=1, mode='reflect') # order=1 (Bi-linear) is the default value and it seems that with 3D image, Bi-linear is equivalent to 'trilinear' of SPM's imcalc function ? mask_final = nib.Nifti1Image(resized_mask_data, xxx, yyy) nib.save(mask_final, mask_final) I do not succeed to obtain the wanted mask_final.nii (exactly the same as mask.nii, ie. same orientation in the same space, with only a change of the resolution). may be I am wrong with the xxx and yyy in nib.Nifti1Image(). I tried: nib.Nifti1Image(resized_mask_data, mask.affine, ref.header) or nib.Nifti1Image(resized_mask_data, mask.affine, mask.header) etc. without success. So I plan to make a python function in order to make the correct header for the mask_final.nii after the resize() function. Because this need seems pretty commun, i guess that a tools to do it is is already existing in python ? So before reinvent the wheel, I would like to be sure that I do not make mistake with? xxx and/or yyy ? May be other function/tool doing the job and that I do not know? exist ? Thank you for all suggests or informations, All the best. -- Eric Condamine IRMaGe INSERM US17-CNRS UMS3552-UGA-CHUGA Unit? IRM 3T Recherche CHU Grenoble - CS 10217 38043 Grenoble Cedex 9 Tel : (00 33) 4 7676 7575 - Poste 63 202 : (00 33) 4 7676 8726 Fax : (00 33) 4 7676 9305 e-mail:eric.condamine at univ-grenoble-alpes.fr _______________________________________________ Neuroimaging mailing list Neuroimaging at python.org https://mail.python.org/mailman/listinfo/neuroimaging -------------- next part -------------- An HTML attachment was scrubbed... URL: From h.benoudjit at gmail.com Sat Jan 19 20:48:44 2019 From: h.benoudjit at gmail.com (Hakim Benoudjit) Date: Sun, 20 Jan 2019 01:48:44 +0000 Subject: [Neuroimaging] MRF segmentation on a single-band image Message-ID: Hi, I've installed nipy to try out the MRF segmentation included with it. The issue for me is that my dataset contains images with a single-band (gray-level in float), which are not really medical images (remote sensing images instead). I was wondering why the Segmentation algorithm works only with images with 3 or 4 bands? I'm alluding to this line in the source-code: https://github.com/nipy/nipy/blob/628ad8dc41dc0d0a113dcf59ee5921348377b942/nipy/algorithms/segmentation/segmentation.py#L47 Thanks. Hakim. -------------- next part -------------- An HTML attachment was scrubbed... URL: From greynell at gmail.com Wed Jan 23 06:05:37 2019 From: greynell at gmail.com (=?UTF-8?Q?Gabriel_Reyn=C3=A9s?=) Date: Wed, 23 Jan 2019 12:05:37 +0100 Subject: [Neuroimaging] Image reslicing Message-ID: Dear experts, I am doing an small project on Dynamic Susceptibility Contrast (DSC-PWI) MRI, I am trying to So, I have a T1 of shape (256, 256, 20) and a DSC of shape (128, 128, 30). Both images are corregistred. I want to extract the white matter of the T1 to use it as a mask for the DSC image, but I am stuck in a very initial phase. To do so I need to reslice the T1 to the DSC MRI, and I am using the reslice function of dipy: reslicedT1, affine2 = reslice(T1_im_data, T1_affine, T1_zooms,DSC_zooms) where DSC_zooms are the zoom extracted from the nii header. The problem in doing so is that the final shape obtaned is (134, 134, 38). What I am missing? Thanks Gabriel -------------- next part -------------- An HTML attachment was scrubbed... URL: From arokem at gmail.com Thu Jan 24 18:07:26 2019 From: arokem at gmail.com (Ariel Rokem) Date: Thu, 24 Jan 2019 15:07:26 -0800 Subject: [Neuroimaging] Postdoc positions in the Yeatman Lab (University of Washington, Seattle) Message-ID: Excellent opportunity for post-doctoral training at the University of Washington, on a range of different projects (some in collaboration with yours truly). See: http://depts.washington.edu/bdelab/2018/12/17/postdoc-position-neurobiology-reading-dyslexia/, or attached flier. Cheers, Ariel -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Yeatman Lab-PostdocPosition-2019.pdf Type: application/pdf Size: 104360 bytes Desc: not available URL: From federico.nemmi at gmail.com Thu Jan 31 05:38:55 2019 From: federico.nemmi at gmail.com (federico nemmi) Date: Thu, 31 Jan 2019 11:38:55 +0100 Subject: [Neuroimaging] chainging sform and save back image Message-ID: Hi everyone, I am trying to change the sform of an image to those of another image and save the first image back as a nifti file. To do so I do something in the line of > import nipy as ni > img_to_change = ni.load_image("my_image_to_change.nii") > ref_image = ni.load_image("my_ref_image.nii") > img_to_change .metadata["header"]["sform_code"] = ref_image .metadata["header"]["sform_code"] When I wheck now the value of the sform code for the first image it is indeed equal to the value of the sform code in the reference image. However, if I now save the first image with >ni.save_image(img_to_change, "modified_img.nii") load it back >new_img = ni.load_image("modified_img.nii") and check the sform code, this is as in the original image ! Am I missing something, is there a step that I skipping between changing the header of the first image and save it ? Thank in advance F. -- Federico Nemmi, PhD -------------- next part -------------- An HTML attachment was scrubbed... URL: From 20100thomas at gmail.com Thu Jan 31 06:22:18 2019 From: 20100thomas at gmail.com (Thomas Vincent) Date: Thu, 31 Jan 2019 06:22:18 -0500 Subject: [Neuroimaging] chainging sform and save back image In-Reply-To: References: Message-ID: I think the sform is adapted when saving to maintain some consistency with other fields. The easiest way to make it work is to copy the data from img_to_change into ref_image and then save ref_image to a new file. Thomas. Le jeu. 31 janv. 2019 05 h 39, federico nemmi a ?crit : > Hi everyone, > I am trying to change the sform of an image to those of another image and > save the first image back as a nifti file. > To do so I do something in the line of > > import nipy as ni > > img_to_change = ni.load_image("my_image_to_change.nii") > > ref_image = ni.load_image("my_ref_image.nii") > > img_to_change .metadata["header"]["sform_code"] = ref_image > .metadata["header"]["sform_code"] > > When I wheck now the value of the sform code for the first image it is > indeed equal to the value of the sform code in the reference image. > However, if I now save the first image with > > >ni.save_image(img_to_change, "modified_img.nii") > > load it back > > >new_img = ni.load_image("modified_img.nii") > > and check the sform code, this is as in the original image ! > > Am I missing something, is there a step that I skipping between changing > the header of the first image and save it ? > Thank in advance > > F. > -- > Federico Nemmi, PhD > > _______________________________________________ > Neuroimaging mailing list > Neuroimaging at python.org > https://mail.python.org/mailman/listinfo/neuroimaging > -------------- next part -------------- An HTML attachment was scrubbed... URL: From federico.nemmi at gmail.com Thu Jan 31 07:11:59 2019 From: federico.nemmi at gmail.com (federico nemmi) Date: Thu, 31 Jan 2019 13:11:59 +0100 Subject: [Neuroimaging] chainging sform and save back image In-Reply-To: References: Message-ID: Sounds reasonable. I'll give it a try! F. Il giorno gio 31 gen 2019 alle ore 12:22 Thomas Vincent < 20100thomas at gmail.com> ha scritto: > I think the sform is adapted when saving to maintain some consistency with > other fields. > > The easiest way to make it work is to copy the data from img_to_change > into ref_image and then save ref_image to a new file. > > Thomas. > > > Le jeu. 31 janv. 2019 05 h 39, federico nemmi > a ?crit : > >> Hi everyone, >> I am trying to change the sform of an image to those of another image and >> save the first image back as a nifti file. >> To do so I do something in the line of >> > import nipy as ni >> > img_to_change = ni.load_image("my_image_to_change.nii") >> > ref_image = ni.load_image("my_ref_image.nii") >> > img_to_change .metadata["header"]["sform_code"] = ref_image >> .metadata["header"]["sform_code"] >> >> When I wheck now the value of the sform code for the first image it is >> indeed equal to the value of the sform code in the reference image. >> However, if I now save the first image with >> >> >ni.save_image(img_to_change, "modified_img.nii") >> >> load it back >> >> >new_img = ni.load_image("modified_img.nii") >> >> and check the sform code, this is as in the original image ! >> >> Am I missing something, is there a step that I skipping between changing >> the header of the first image and save it ? >> Thank in advance >> >> F. >> -- >> Federico Nemmi, PhD >> >> _______________________________________________ >> Neuroimaging mailing list >> Neuroimaging at python.org >> https://mail.python.org/mailman/listinfo/neuroimaging >> > _______________________________________________ > Neuroimaging mailing list > Neuroimaging at python.org > https://mail.python.org/mailman/listinfo/neuroimaging > -- Federico Nemmi, PhD -------------- next part -------------- An HTML attachment was scrubbed... URL: From arnaud.bore at gmail.com Thu Jan 31 09:07:09 2019 From: arnaud.bore at gmail.com (=?UTF-8?B?QXJuYXVkIEJvcsOp?=) Date: Thu, 31 Jan 2019 09:07:09 -0500 Subject: [Neuroimaging] Research assistant position in Dr Doyon lab (McGill University, Montreal, QC, CA) Message-ID: Position Title: Research Assistant Hiring Unit: ? McConnell Brain Imaging Centre ? Montreal Neurological Institute Supervisor: Dr. Julien Doyon Work Location: 3801 University, Montreal Neurological Institute Hours/Week & Schedule: 35 hours/week; 9:00 ? 5:00 ? Monday to Friday Hourly Wage: $27.87/hour (salary commensurate with experience) Planned Start Date & End Date: ASAP ? one year (renewable) Deadline to Apply: February 8, 2019 *PRIMARY DUTIES * We are looking to hire a research assistant to provide support to the supervisor for all ongoing research projects . Assist graduate students and postdoctoral fellows in carrying out behavioral and neuroimaging studies in cognitive neuroscience, and motor learning in particular. Develop, oversee and maintain data analysis pipelines in conjunction with graduate students and postdoctoral fellows. Supervise undergraduate students as well as casuals. *EDUCATION/EXPERIENCE* MSc degree in computer science or neuroscience with a strong coding experience in Matlab and Python applied to neurosciences. *OTHER QUALIFYING SKILLS & ABILITIES* - Good proficiency using Matlab and coding in Python in neurosciences (preferably in human brain imaging); - Knowledge of neuroimaging software such as FreeSurfer, FSL, AFNI or SPM. - Good communications skills in French or English (both ? preferred). - Social and interpersonal skills. - Team player and dedication to the work at hand. - Ability to work autonomously and deliver on set deadlines. - Willingness to learn new imaging and data analysis techniques. - Experience in neurosciences research, preferably in brain and/or spinal cord imaging and a good understanding of statistical analysis pertaining to neuroimaging data will be an asset. *HOW TO APPLY* Please submit your application to: Dr Julien Doyon by email *julien.doyon at mcgill.ca * *McGill University is committed to equity in employment and diversity. It welcomes applications from indigenous peoples, **visible minorities, ethnic minorities, persons with disabilities, women, persons of minority sexual orientations and gender **identities, and others who may contribute to further diversification. * -------------- next part -------------- An HTML attachment was scrubbed... URL: From matthew.brett at gmail.com Thu Jan 31 12:55:24 2019 From: matthew.brett at gmail.com (Matthew Brett) Date: Thu, 31 Jan 2019 17:55:24 +0000 Subject: [Neuroimaging] Chris Markiewicz taking over as lead maintainer for nibabel Message-ID: Hi, Just so y'all know, Chris has kindly agreed to take over the role of lead maintainer for nibabel. Well, I should say, he had kindly agreed to take on the title, because the observant among you will know he has effectively been doing that job for some time. We nibabelers don't have any real governance docs, but, as my last act as lead maintainer, I'm going propose the following: * the lead maintainer has veto power over commits to nibabel * they should use it only very rarely, when all possible compromises have been explored. If anyone disagrees with this little formalization, please do say. Thanks very much, as ever, to Chris, and good luck with the task, that you are already doing... Cheers, Matthew From krzysztof.gorgolewski at gmail.com Thu Jan 31 12:59:07 2019 From: krzysztof.gorgolewski at gmail.com (Chris Gorgolewski) Date: Thu, 31 Jan 2019 09:59:07 -0800 Subject: [Neuroimaging] Chris Markiewicz taking over as lead maintainer for nibabel In-Reply-To: References: Message-ID: Congratulations to Chris and many thanks for years of extremely valuable service both of you provided to the community. Best, Chris On Thu, Jan 31, 2019 at 9:56 AM Matthew Brett wrote: > Hi, > > Just so y'all know, Chris has kindly agreed to take over the role of > lead maintainer for nibabel. > > Well, I should say, he had kindly agreed to take on the title, because > the observant among you will know he has effectively been doing that > job for some time. > > We nibabelers don't have any real governance docs, but, as my last act > as lead maintainer, I'm going propose the following: > > * the lead maintainer has veto power over commits to nibabel > * they should use it only very rarely, when all possible compromises > have been explored. > > If anyone disagrees with this little formalization, please do say. > > Thanks very much, as ever, to Chris, and good luck with the task, that > you are already doing... > > Cheers, > > Matthew > _______________________________________________ > Neuroimaging mailing list > Neuroimaging at python.org > https://mail.python.org/mailman/listinfo/neuroimaging > -------------- next part -------------- An HTML attachment was scrubbed... URL: From gael.varoquaux at normalesup.org Thu Jan 31 13:01:56 2019 From: gael.varoquaux at normalesup.org (Gael Varoquaux) Date: Thu, 31 Jan 2019 19:01:56 +0100 Subject: [Neuroimaging] Chris Markiewicz taking over as lead maintainer for nibabel In-Reply-To: References: Message-ID: <20190131180156.gofsraum23fzvhfh@phare.normalesup.org> Thanks Matthew for all the work for many many years. I hope that you feel the impact of what you have created: there is a thriving community of happy Python neuroimagers, which is rapidly growing. Cheers, Ga?l On Thu, Jan 31, 2019 at 05:55:24PM +0000, Matthew Brett wrote: > Hi, > Just so y'all know, Chris has kindly agreed to take over the role of > lead maintainer for nibabel. > Well, I should say, he had kindly agreed to take on the title, because > the observant among you will know he has effectively been doing that > job for some time. > We nibabelers don't have any real governance docs, but, as my last act > as lead maintainer, I'm going propose the following: > * the lead maintainer has veto power over commits to nibabel > * they should use it only very rarely, when all possible compromises > have been explored. > If anyone disagrees with this little formalization, please do say. > Thanks very much, as ever, to Chris, and good luck with the task, that > you are already doing... > Cheers, > Matthew > _______________________________________________ > Neuroimaging mailing list > Neuroimaging at python.org > https://mail.python.org/mailman/listinfo/neuroimaging -- Gael Varoquaux Senior Researcher, INRIA Parietal NeuroSpin/CEA Saclay , Bat 145, 91191 Gif-sur-Yvette France Phone: ++ 33-1-69-08-79-68 http://gael-varoquaux.info http://twitter.com/GaelVaroquaux From matthew.brett at gmail.com Thu Jan 31 13:04:04 2019 From: matthew.brett at gmail.com (Matthew Brett) Date: Thu, 31 Jan 2019 18:04:04 +0000 Subject: [Neuroimaging] Chris Markiewicz taking over as lead maintainer for nibabel In-Reply-To: <20190131180156.gofsraum23fzvhfh@phare.normalesup.org> References: <20190131180156.gofsraum23fzvhfh@phare.normalesup.org> Message-ID: Hi, On Thu, Jan 31, 2019 at 6:02 PM Gael Varoquaux wrote: > > Thanks Matthew for all the work for many many years. I hope that you feel > the impact of what you have created: there is a thriving community of > happy Python neuroimagers, which is rapidly growing. Oh yes - I do feel that - and that there are many sturdy shoulders pushing the wheel, so thanks right back at you. Cheers, Matthew From gael.varoquaux at normalesup.org Thu Jan 31 13:10:46 2019 From: gael.varoquaux at normalesup.org (Gael Varoquaux) Date: Thu, 31 Jan 2019 19:10:46 +0100 Subject: [Neuroimaging] Chris Markiewicz taking over as lead maintainer for nibabel In-Reply-To: References: <20190131180156.gofsraum23fzvhfh@phare.normalesup.org> Message-ID: <20190131181046.2sz7vg4cwrapwk53@phare.normalesup.org> On Thu, Jan 31, 2019 at 06:04:04PM +0000, Matthew Brett wrote: > Oh yes - I do feel that - and that there are many sturdy shoulders > pushing the wheel, so thanks right back at you. I haven't done anything for nibabel in many years, though I am an avid user. The nibabel developers are the giants on which shoulders the neuromaging world standards. Ga?l From bertrand.thirion at inria.fr Thu Jan 31 13:28:08 2019 From: bertrand.thirion at inria.fr (Bertrand Thirion) Date: Thu, 31 Jan 2019 19:28:08 +0100 (CET) Subject: [Neuroimaging] Chris Markiewicz taking over as lead maintainer for nibabel In-Reply-To: <20190131180156.gofsraum23fzvhfh@phare.normalesup.org> References: <20190131180156.gofsraum23fzvhfh@phare.normalesup.org> Message-ID: <205638348.3667315.1548959288689.JavaMail.zimbra@inria.fr> Indeed, big thanks to Chris, Matthew and all nibabel developers ! Cheers, Bertrand ----- Mail original ----- > De: "Gael Varoquaux" > ?: "Neuroimaging analysis in Python" > Envoy?: Jeudi 31 Janvier 2019 19:01:56 > Objet: Re: [Neuroimaging] Chris Markiewicz taking over as lead maintainer for nibabel > Thanks Matthew for all the work for many many years. I hope that you feel > the impact of what you have created: there is a thriving community of > happy Python neuroimagers, which is rapidly growing. > > Cheers, > > Ga?l > > On Thu, Jan 31, 2019 at 05:55:24PM +0000, Matthew Brett wrote: >> Hi, > >> Just so y'all know, Chris has kindly agreed to take over the role of >> lead maintainer for nibabel. > >> Well, I should say, he had kindly agreed to take on the title, because >> the observant among you will know he has effectively been doing that >> job for some time. > >> We nibabelers don't have any real governance docs, but, as my last act >> as lead maintainer, I'm going propose the following: > >> * the lead maintainer has veto power over commits to nibabel >> * they should use it only very rarely, when all possible compromises >> have been explored. > >> If anyone disagrees with this little formalization, please do say. > >> Thanks very much, as ever, to Chris, and good luck with the task, that >> you are already doing... > >> Cheers, > >> Matthew >> _______________________________________________ >> Neuroimaging mailing list >> Neuroimaging at python.org >> https://mail.python.org/mailman/listinfo/neuroimaging > > -- > Gael Varoquaux > Senior Researcher, INRIA Parietal > NeuroSpin/CEA Saclay , Bat 145, 91191 Gif-sur-Yvette France > Phone: ++ 33-1-69-08-79-68 > http://gael-varoquaux.info http://twitter.com/GaelVaroquaux > _______________________________________________ > Neuroimaging mailing list > Neuroimaging at python.org > https://mail.python.org/mailman/listinfo/neuroimaging From njvack at wisc.edu Thu Jan 31 14:49:04 2019 From: njvack at wisc.edu (Nate Vack) Date: Thu, 31 Jan 2019 13:49:04 -0600 Subject: [Neuroimaging] Chris Markiewicz taking over as lead maintainer for nibabel In-Reply-To: <11760_1548959514_0PM700HM3KSMP140_205638348.3667315.1548959288689.JavaMail.zimbra@inria.fr> References: <20190131180156.gofsraum23fzvhfh@phare.normalesup.org> <11760_1548959514_0PM700HM3KSMP140_205638348.3667315.1548959288689.JavaMail.zimbra@inria.fr> Message-ID: That is excellent news! Thank you for making and supporting nibabel; it is insanely useful. Best, -Nate -------------- next part -------------- An HTML attachment was scrubbed... URL: From lists at onerussian.com Thu Jan 31 16:20:36 2019 From: lists at onerussian.com (Yaroslav Halchenko) Date: Thu, 31 Jan 2019 16:20:36 -0500 Subject: [Neuroimaging] Chris Markiewicz taking over as lead maintainer for nibabel In-Reply-To: References: Message-ID: <20190131212036.GZ3725@hopa.kiewit.dartmouth.edu> On Thu, 31 Jan 2019, Matthew Brett wrote: > Well, I should say, he had kindly agreed to take on the title, because > the observant among you will know he has effectively been doing that > job for some time. Dear Matthew, thank you for all hard work and wise guidance in the past, and I still hope to meet you again sometime/somewhere. > We nibabelers don't have any real governance docs, but, as my last act > as lead maintainer, I'm going propose the following: > * the lead maintainer has veto power over commits to nibabel > * they should use it only very rarely, when all possible compromises > have been explored. It is great to see it being Chris to carry this burden, so whenever all other means are explored/exploited, I could just drive 40 minutes south, drag him out for a pint, and reach the only possible correct decision ;) Cheers, -- Yaroslav O. Halchenko Center for Open Neuroscience http://centerforopenneuroscience.org Dartmouth College, 419 Moore Hall, Hinman Box 6207, Hanover, NH 03755 Phone: +1 (603) 646-9834 Fax: +1 (603) 646-1419 WWW: http://www.linkedin.com/in/yarik From jbpoline at gmail.com Thu Jan 31 17:27:07 2019 From: jbpoline at gmail.com (JB Poline) Date: Thu, 31 Jan 2019 17:27:07 -0500 Subject: [Neuroimaging] Chris Markiewicz taking over as lead maintainer for nibabel In-Reply-To: <20190131212036.GZ3725@hopa.kiewit.dartmouth.edu> References: <20190131212036.GZ3725@hopa.kiewit.dartmouth.edu> Message-ID: beer decision making sounds great :) +1 on the super useful work that Matthew put in nibabel... On Thu, Jan 31, 2019 at 4:50 PM Yaroslav Halchenko wrote: > > On Thu, 31 Jan 2019, Matthew Brett wrote: > > > Well, I should say, he had kindly agreed to take on the title, because > > the observant among you will know he has effectively been doing that > > job for some time. > > Dear Matthew, thank you for all hard work and wise guidance in the > past, and I still hope to meet you again sometime/somewhere. > > > > We nibabelers don't have any real governance docs, but, as my last act > > as lead maintainer, I'm going propose the following: > > > * the lead maintainer has veto power over commits to nibabel > > * they should use it only very rarely, when all possible compromises > > have been explored. > > It is great to see it being Chris to carry this burden, so whenever all > other means are explored/exploited, I could just drive 40 minutes south, > drag him out for a pint, and reach the only possible correct > decision ;) > > Cheers, > -- > Yaroslav O. Halchenko > Center for Open Neuroscience http://centerforopenneuroscience.org > Dartmouth College, 419 Moore Hall, Hinman Box 6207, Hanover, NH 03755 > Phone: +1 (603) 646-9834 Fax: +1 (603) 646-1419 > WWW: http://www.linkedin.com/in/yarik > _______________________________________________ > Neuroimaging mailing list > Neuroimaging at python.org > https://mail.python.org/mailman/listinfo/neuroimaging > -------------- next part -------------- An HTML attachment was scrubbed... URL: From satra at mit.edu Thu Jan 31 18:46:43 2019 From: satra at mit.edu (Satrajit Ghosh) Date: Thu, 31 Jan 2019 18:46:43 -0500 Subject: [Neuroimaging] Chris Markiewicz taking over as lead maintainer for nibabel In-Reply-To: References: Message-ID: thank you very much matthew for all the shepherding over the years. and chris for taking over and making seem seamless the reviews, the discussions, and the maintenance, not just of nibabel but the many projects you take care of. it's been incredible to be part of such a giving community. cheers, satra On Thu, Jan 31, 2019 at 12:56 PM Matthew Brett wrote: > Hi, > > Just so y'all know, Chris has kindly agreed to take over the role of > lead maintainer for nibabel. > > Well, I should say, he had kindly agreed to take on the title, because > the observant among you will know he has effectively been doing that > job for some time. > > We nibabelers don't have any real governance docs, but, as my last act > as lead maintainer, I'm going propose the following: > > * the lead maintainer has veto power over commits to nibabel > * they should use it only very rarely, when all possible compromises > have been explored. > > If anyone disagrees with this little formalization, please do say. > > Thanks very much, as ever, to Chris, and good luck with the task, that > you are already doing... > > Cheers, > > Matthew > _______________________________________________ > Neuroimaging mailing list > Neuroimaging at python.org > https://mail.python.org/mailman/listinfo/neuroimaging > -------------- next part -------------- An HTML attachment was scrubbed... URL: From code at oscaresteban.es Thu Jan 31 19:06:08 2019 From: code at oscaresteban.es (Oscar Esteban) Date: Thu, 31 Jan 2019 16:06:08 -0800 Subject: [Neuroimaging] Chris Markiewicz taking over as lead maintainer for nibabel In-Reply-To: References: Message-ID: Thanks very much, Matthew. Your driving of nibabel through these years has made it the cornerstone of neuroimaging, and one of the most robust pieces of software available to this community. Congrats Chris, I'm sure you'll keep up the good work :) Cheers, Oscar On Thu, Jan 31, 2019 at 3:47 PM Satrajit Ghosh wrote: > thank you very much matthew for all the shepherding over the years. and > chris for taking over and making seem seamless the reviews, the > discussions, and the maintenance, not just of nibabel but the many projects > you take care of. > > it's been incredible to be part of such a giving community. > > cheers, > > satra > > On Thu, Jan 31, 2019 at 12:56 PM Matthew Brett > wrote: > >> Hi, >> >> Just so y'all know, Chris has kindly agreed to take over the role of >> lead maintainer for nibabel. >> >> Well, I should say, he had kindly agreed to take on the title, because >> the observant among you will know he has effectively been doing that >> job for some time. >> >> We nibabelers don't have any real governance docs, but, as my last act >> as lead maintainer, I'm going propose the following: >> >> * the lead maintainer has veto power over commits to nibabel >> * they should use it only very rarely, when all possible compromises >> have been explored. >> >> If anyone disagrees with this little formalization, please do say. >> >> Thanks very much, as ever, to Chris, and good luck with the task, that >> you are already doing... >> >> Cheers, >> >> Matthew >> _______________________________________________ >> Neuroimaging mailing list >> Neuroimaging at python.org >> https://mail.python.org/mailman/listinfo/neuroimaging >> > _______________________________________________ > Neuroimaging mailing list > Neuroimaging at python.org > https://mail.python.org/mailman/listinfo/neuroimaging > -------------- next part -------------- An HTML attachment was scrubbed... URL: From markiewicz at stanford.edu Thu Jan 31 21:42:49 2019 From: markiewicz at stanford.edu (Christopher Markiewicz) Date: Fri, 1 Feb 2019 02:42:49 +0000 Subject: [Neuroimaging] Chris Markiewicz taking over as lead maintainer for nibabel In-Reply-To: References: Message-ID: Thanks, Matthew, for your many years of guidance and support of nibabel and its contributors. I credit my engagement with nibabel in particular with teaching me how to write and maintain open source software, and I can only say thank you. It really is the bedrock of the community, and I hope to keep it in worthy shape. Chris ________________________________ From: Neuroimaging on behalf of Matthew Brett Sent: Thursday, January 31, 2019 12:55 PM To: neuroimaging Subject: [Neuroimaging] Chris Markiewicz taking over as lead maintainer for nibabel Hi, Just so y'all know, Chris has kindly agreed to take over the role of lead maintainer for nibabel. Well, I should say, he had kindly agreed to take on the title, because the observant among you will know he has effectively been doing that job for some time. We nibabelers don't have any real governance docs, but, as my last act as lead maintainer, I'm going propose the following: * the lead maintainer has veto power over commits to nibabel * they should use it only very rarely, when all possible compromises have been explored. If anyone disagrees with this little formalization, please do say. Thanks very much, as ever, to Chris, and good luck with the task, that you are already doing... Cheers, Matthew _______________________________________________ Neuroimaging mailing list Neuroimaging at python.org https://mail.python.org/mailman/listinfo/neuroimaging -------------- next part -------------- An HTML attachment was scrubbed... URL: