主要问题
是否有人已经为数字显微图(或者ImageJ)创造了一个自由的自适应傅里叶滤波器?
关于自适应傅里叶滤波器的
我想使用一些有效的过滤过程,我的TEM图像处理。我偶然发现了M bus等人提出的自适应傅里叶滤波技术。1.简而言之,这是一种与工作流程相对应的空间过滤技术:
(图像)
该滤波器的新特点是滤波器的形状与图像的频谱相适应,掩模的窗口被自动放置在所有位置,从而使信号与噪声2的最佳分离。
我已经试过什么了?
过滤器可以从HREM研究https://www.hremresearch.com/Eng/plugin/FiltersEng.html的HREM过滤器专业软件包,但我的研究所没有这方面的许可证。我在DM脚本数据库https://www.felmi-zfe.at/dm_script上找到了其他过滤器的DM脚本,例如Wiener滤波器和平均背景减去滤波器,但是没有自适应滤波器。
,那么问题是什么?
由于我本人没有DM脚本编写经验,所以我倾向于在自适应傅里叶滤波上查找或调整已经存在的DM脚本。或者,我也在ImageJ中做一些图像处理,所以这个程序的脚本也能工作。你们知道这些脚本是否已经存在了吗?
源
1 M bus、G.、G. Necker和M. Rühle。用于界面高分辨率电子显微图定量评价的自适应傅里叶滤波技术。超微显微镜49.1-4 (1993):46-65。
2 Kret,S.,等。从高分辨率电子显微镜中提取定量信息。(b) 227.1 (2001年):247-295。
发布于 2020-11-10 13:12:17
发布于 2020-10-12 10:44:54
我不知道这是一个(开源的)脚本,但是DigitalMicrograph中傅里叶空间过滤脚本的基本模板是:
// Create and show test image
realimage img := RealImage( "Test Image 2D", 4, 512, 512 )
img = abs( itheta*2*icol/(iwidth+1)* sin(iTheta*10)  ) + 15*(irow<iheight/2 ? irow : iheight-irow )/iheight
img = PoissonRandom(100*img)
img.ShowImage()
 
// Transform to Fourier Space
compleximage img_FFT := FFT(img)
 
// Create "Mask" or Filter in Fourier Space
// This is where all the "adaptive" things have to happen to create
// the correct mask. The below is just a dummy
image mask := RealImage("Mask",4, 512,512 )
mask =  (iradius<iheight/3 && iradius>5 ) ? 1 : 0
mask =  SQRT((icol-iwidth/2-100)**2+(irow-iheight/2-50)**2) < 25 ? 0 : mask
mask =  SQRT((icol-iwidth/2+100)**2+(irow-iheight/2+50)**2) < 25 ? 0 : mask
mask.ShowImage()
// Apply mask
img_FFT *= mask 
img_FFT.SetName( "Masked FFT" )
img_FFT.ShowImage()
 
// Transform back
image img_filter := modulus(iFFT(img_FFT))
img_filter.SetName( img.GetName() + " Filtered" )
img_filter.ShowImage() 
// Just arrange
EGUPerformActionWithAllShownImages("arrange")https://stackoverflow.com/questions/64313050
复制相似问题