juglab / cryoCARE_pip

PIP package of cryoCARE
BSD 3-Clause "New" or "Revised" License
26 stars 14 forks source link

can i use this implementation to denoise stacks? #6

Closed n1kt0 closed 2 years ago

n1kt0 commented 2 years ago

Hi, can i use this implementation to denoise stacks? And how would be the proper parametrizations to achieve that?

Best regards

Nikita

tibuch commented 2 years ago

Hi,

You can use this implementation to denoise stacks according to the protocols described here: https://arxiv.org/abs/1810.05420

All the default parameters usually work fine, but feel free to try others and optimize for your setup.

Cheers

n1kt0 commented 2 years ago

Hi, I have some questions regarding using the default parameters on stacks? Is it really useful to have a 3d kernel for denoising 2d stacks? also I would like to have just 2 neighbouring projections plus the projection of interes included in the training which seems not to be possible with the 3d kernel...

Cheers

tibuch commented 2 years ago

Hi,

I have difficulties understanding the question. I would recommend 3D kernels for 3D data (stacks of 2D slices). You can also use 2D kernels but then it will be a slice wise processing.

Regarding the second part: Are you trying to denoise the projections before tomographic reconstruction? I.e. use projection n-1 and n+1 as input to predict projection n? For this you would have to create your own network. This implementation supports denoising of 3D volumes if you have two pixel-perfect registered input volumes which are identical up to random noise contributions. You could also reconstruct two tomograms with alternating tilt-angles. However, these results are not as good as if you use two reconstructions from even and odd dose-fractionated movie frames.