如何从光谱图像中提取 EELS 光谱?

How can I extract EELS spectra from a Spectrum Image?

我使用以下脚本从 3D 光谱图像中提取 EELS 光谱。
(此脚本是为回答 similar question 而发布的。)

    number px = 5
    number py = 3
    image SIblock := GetFrontImage()
    number sx, sy, sz 
    Get3DSize( SIblock, sx, sy, sz ) 
    image spec := Slice1( SIblock, px,py,0,  2,sz,1 ) 
    image specCopy := ImageClone( spec ) 
    ShowImage( specCopy )

然而,当我尝试分析光谱时(例如使用 EELS 量化),我得到以下结果:

No valid EELS data front-most

我假设我没有正确提取元数据。

我做错了什么?提前谢谢你。

当您执行 ImageClone() 时,您会复制所有标签和校准。特别是,您复制元数据信息,告诉 DM 该数据是一个光谱图像

但是,提取的光谱不再是SI,而是光谱。因此,您需要更改此标签(在显示图像之前)。

您可以通过稍微调整脚本来做到这一点:

number px = 5
number py = 3
image SIblock := GetFrontImage()
number sx, sy, sz 
Get3DSize( SIblock, sx, sy, sz ) 
image specCopy := SIblock.Slice1( px,py,0,  2,sz,1 ).ImageClone() 
specCopy.ImageGetTagGroup().TagGroupSetTagAsString( "Meta Data:Format", "Spectrum" )   
ShowImage( specCopy )