Hi, I have some confusion about the synthetic data generation process.
One is that I noticed the value of the original density volume data (.mrc) is processed by the following formula src/dataio.py#L177
$$mrc\_data = 2e4 (power\_signal / power\_init) (mrc\_data.shape[0] / projection\_sz[0]) * mrc\_data$$
the term $power\_signal$ is commented as the sum of squares in src/reconstruct/main.py#L162, but $power\_init$ is the sum of absolute values of the src data. Is this the expected behavior?
I didn't get a mathematical intuition of the process, why a 2e4 multiplier, why the term $mrc\_data.shape[0] / projection\_sz[0]$ not $projection\_sz[0] / mrc\_data.shape[0]$. Could you kindly give me some comments?
Another question is about the snr parameter. I see the default value is 10 in configfile configfiles/mrc2star_80S_128.ini#L5. Usually SNR in cryoEM is believed near 0.1-0.01 or even lower. In the code, the sigma of additive Gaussian noise is controlled by $power\_signal/snr$ src/noise_utils.py#L10.
Any guidelines about how to choose the two hyper-params? (Is there a more explicit relation between the hyper-param $snr$ and the actual physical SNR?) Is 0.1 (or even smaller number) a more appropriate value for snr?
Hi, I have some confusion about the synthetic data generation process.
One is that I noticed the value of the original density volume data (.mrc) is processed by the following formula src/dataio.py#L177 $$mrc\_data = 2e4 (power\_signal / power\_init) (mrc\_data.shape[0] / projection\_sz[0]) * mrc\_data$$
Another question is about the snr parameter. I see the default value is 10 in configfile configfiles/mrc2star_80S_128.ini#L5. Usually SNR in cryoEM is believed near 0.1-0.01 or even lower. In the code, the sigma of additive Gaussian noise is controlled by $power\_signal/snr$ src/noise_utils.py#L10.