Thanks for the replies. I have done intensity normalization for T1w MRIs. I did an experiment of making a T1w template alone with population_template, and it looks pretty decent.
For my last experiment, with flirt I resampled T1w MRI to B0 , which I assumed to have the same grid and transform as the FOD. Maybe I am wrong on this.
In the linear stage, I give all the weights to T1w MRI, and it was completed. In the nonlinear stage, I give the weight of 1,1 for T1w and ODFs, and I received the following error:
mrregister: [ERROR] -nl_lmax option is not valid with 3D images
Without drilling into the specific code, it looks to me that maybe structural MRI nonlinear registration uses different setup, and once ODFs is in the picture, the registration will use the setup for ODFs on both image pairs?