GithubHelp home page GithubHelp logo

Comments (10)

DStrelak avatar DStrelak commented on August 31, 2024

Hi @MohamadHarastani,

thanks for reporting this issue.
We will have a look at it shortly. You can expect some answer on Monday.

Thanks

from xmipp.

MohamadHarastani avatar MohamadHarastani commented on August 31, 2024

Hi @DStrelak ,
Thanks a lot
KR

from xmipp.

MohamadHarastani avatar MohamadHarastani commented on August 31, 2024

Hi @DStrelak
I am stuck due to this issue, I would really appreciate some help soon.
Thanks

from xmipp.

Vilax avatar Vilax commented on August 31, 2024

Hi @DStrelak
I am stuck due to this issue, I would really appreciate some help soon.
Thanks

Dear MohamadHarastani,

Thanks for getting in touch with us.

The right command is the second one, it means:

xmipp_transform_filter -i volume.vol -o filtered.vol --fourier wedge -60 60 --save filter.vol

The --fourier wedge -60 60 means that the information or data are between the tilt angles -60 to 60 degrees. So the missing wedged is a cone of angle 60ΒΊ or 30 if you measure the angle between the axis and the generatrix.

This command present two outputs: 1) The filtered map -o filtered.vol, provides the output filtered map as you pointed out. 2) The applied filter. The missing wedge is applied in Fourier space, and because of the Hermitic symmetry, the half of this space can be removed, because the information is redundant (complex conjugate values). For that reason the filter has the half dimensions than your original map. I checked the command with a map, and the filter looks correct in Fourier space.

Do you need the filtered for any reason?

Anything else, please let me know

Kind regards

Vilas

from xmipp.

MohamadHarastani avatar MohamadHarastani commented on August 31, 2024

Dear @Vilax
Thanks for your detailed reply. When the mask is saved, how can I reuse it?
Meaning, say that I generate this mask using this command
xmipp_transform_filter -i volume.vol -o filtered.vol --fourier wedge -60 60 --save filter.vol
and I wand to use the mask on another volume or pass the mask to another function (namely this function: xmipp_volume_align).
There is an option to reuse this mask as:
xmipp_transform_filter -i somevolume.vol -o someoutput.vol --fourier binary_file filter.vol
This will give me an incorrect output!
Would you please elaborate more in this regard?
Thanks
Mohamad

from xmipp.

Vilax avatar Vilax commented on August 31, 2024

Dear @MohamadHarastani ,

If you want to apply a missing wedge to many maps, I recommend you to write a shell script with the command

xmipp_transform_filter -i volume.vol -o filtered.vol --fourier wedge -60 60

Xmipp (please someone correct me if I'm wrong) does not allow to take a binary file as input and directly applied in Fourier space as a mask. In other words, all mask you can applied in command line only work in real space. The solution I give you, it means, write an script that launches the command for all volumes, is perhaps not the most efficient, but I'm sure you can do it is short computational times.

Anything you need, do not hesitate to ask

Kind regards

Vilas

from xmipp.

cossorzano avatar cossorzano commented on August 31, 2024

Thank you, Vilas, for jumping on this. Your description is accurate.

from xmipp.

MohamadHarastani avatar MohamadHarastani commented on August 31, 2024

Dear @Vilax and @cossorzano
Thank you again for your time and help.
Actually, I am trying to compensate for the missing wedge while performing rigid body alignment. In other words, applying a missing wedge filter while aligning two volumes. Hence, this filter should be applied iteratively.
The program (xmipp_volume_align) has an option mask, and it permits selecting a wedge option (--mask wedge -60 60). Yet, this function depends on (xmipp_transform_mask) which in turn generates an incorrect filter (and eventually an incorrect output).
What I was trying to achieve, is to generate the missing wedge filter using "xmipp_transform_filter" as above, and pass its resultant filter to xmipp_volume_align. But this is not allowed as you say.

In summary, things are more clear, but there are two issues that need attention:
1- xmipp_transform_mask gives incorrect results for both wedge and cone.
2- How to use a wedge mask with xmipp_volume_align?
I will try to solve the second one. Please @cossorzano let me know if you already know how to do it or have any lead, clue or hint about it. (I have seen something here that seems to do that).

I sincerely appreciate all your time and efforts
Cheers,
Mohamad

from xmipp.

cossorzano avatar cossorzano commented on August 31, 2024

Dear @MohamadHarastani

note that the mask in xmipp_volume_align is meant to be a real space mask which is not what you want. To align two volumes using a wedge mask in Fourier, we only have the Fourier based algorithm that was published in Y. Chen, S. Pfeffer, J.J. Fernandez, C.O.S. Sorzano, F. Foerster. Autofocused 3D Classification of cryo-electron subtomograms. Structure, 22: 1528-1537 (2014). The way to call it is rather involved and you can see an example in https://github.com/I2PC/xmipp/blob/devel/src/xmipp/libraries/parallel/mpi_classify_CLTomo_prog.cpp.

This algorithm performs a global search of the alignment parameters, which in a context of normal modes I am not sure that is what you need. You may rather use xmipp_transform_filter as in

xmipp_transform_filter -i myvolume.vol -o myFilteredVolume.vol --fourier wedge -60 60

I have just checked that it works and seems to produce the appropriate filter.

from xmipp.

MohamadHarastani avatar MohamadHarastani commented on August 31, 2024

Dear @cossorzano
Thank you for the reference and the explanations. It is true that I need alignment with normal modes, however, it involves rigid body alignment. What I am trying to add is a compensation for the missing wedge during this rigid body alignment.
I have some ideas now to test and I will keep you posted.
Kindly,
Mohamad

from xmipp.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.