采用ImageJ+插件批量转换透射电镜ser图像
透射電鏡兩大圖像格式,dm3和ser,分屬Gatan和ThermoFisher(原FEI)。Gatan放出了公開版的GMS,可以免費使用和轉換dm3格式為tif,但是ThermoFisher就很摳,離了電鏡沒有公開的TIA軟件可用于處理和轉換圖像,已知的一些破解版本都很老舊。
現在試出一種方法,用ImageJ軟件配合插件去批量將ser文件轉換成jpg文件,就可以進行后續處理了。
ImageJ軟件版本很重要,版本不對,插件里使用的函數識別不出來,已知Fiji版本(https://fiji.sc/)可以滿足需求,注意下載后Fiji文件夾放置路徑不能有中文名。
使用方法:
1.下載Fiji
2.下載TIA_reader.jar?插件放入plugins文件夾
3.下載TEM_Ser_dm3_Folder_Export.ijm插件放入plugins文件夾
4.在ImageJ的plugins下面找到TEM_Ser_dm3_Folder_Export即可使用。
感謝“我不是龍哥”文章的幫助,以下為“我不是龍哥”原文原版轉載
https://www.bilibili.com/read/cv10923101
我們拿到的透射電鏡原始數據格式,主要是TIA拍攝的.ser(.emi為TIA內部格式,第三方軟件不可讀)以及DM拍攝的dm3格式。對于dm3格式轉成普通圖片比較容易,因為新版DM已經免費,網上也還有各種舊版可以搜到。然而.ser格式對于部分同學可能還是比較麻煩,雖然也有TIA安裝包和教程(鄙人也上傳過,需要的可以自行查看),但是還是有部分人會裝不上。
????那么還有沒有其他軟件可以實現將.ser直接轉換成圖片呢?當然是有的,那就是Image J。其實這也是一個功能強大的軟件,可以添加各種插件,功能很多,我們利用它可以將.ser文件批量轉為圖片。下面介紹怎么使用Image J進行.ser文件讀取和批量轉換。
軟件下載地址:https://imagej.nih.gov/ij/download.html
Image J軟件下載頁面,選擇對應系統版本下載即可。
插件下載地址:https://imagej.nih.gov/ij/plugins/index.html#io
插件下載頁面
對于我們處理dm3和ser文件,只需要下載TIA Reader就行了,其他插件可以自行探索。將下載的軟件壓縮包解壓,把下載的TIA Reader插件復制到文件夾:ImageJ\plugins\Input-Output。此時直接運行Image J文件夾下的Image J.exe就可以打開軟件:
Image J 軟件主界面
可以看到Plugins->Input-Output下有了TIA Reader插件:
Input-Output下TIA Reader插件
利用TIA Reader便可以直接打開ser格式TEM圖片:
Image J打開ser格式圖片窗口,雖然沒有標尺,但是窗口頂部有整張圖片的尺寸信息,利用這個信息便可以添加標尺。
可以看到Image J還自帶了dm3插件,因此也可以直接讀取dm3格式TEM圖片。下一步我們講如何實現批量轉換。批量轉換需要添加另一個插件,該插件可以將文件夾下的ser和dm3文件同時轉換為普通圖片,名稱為TEM_Ser_dm3_batch_convert.ijm,插件由github上IMBalENce發布,原地址:https://github.com/IMBalENce/EM-tool。部分愿意折騰的同學可以在文末獲取該插件源碼,將源碼復制到文本文檔中便可進行修改調試,然后將名稱及后綴修改為TEM_Ser_dm3_Folder_Export.ijm,同樣復制到文件夾ImageJ\plugins\Input-Output。不愿麻煩的直接下載(鏈接:https://pan.baidu.com/s/1gcCW2sW4_01knRis7Hvc3Q
提取碼:2ueq 復制這段內容后打開百度網盤手機App,操作更方便哦),然后復制到對應文件夾,重啟軟件就可以看到該插件:
TEM_Ser_dm3_Folder_Export
好了,這回愉快地進行批量格式轉換吧!點擊插件后選擇源文件夾和導出目標文件夾:
選擇源文件夾和導出目標文件夾,可以復制目錄填入
軟件會自動完成轉換,轉換出的圖片標尺信息在文件名末尾,為整圖橫向尺寸信息。如下圖所示:
導出圖片尺寸信息在文件名末尾,為整圖尺寸
(說明:試用過程發現轉換為tif格式會出現圖片襯度不對,即整圖全黑。因此,此處給出的插件已經自行修改為導出jpg格式,如果需要其他格式請自行研究。
注意:如果數據中有EDS面掃和線掃,請將對應的文件先拿出再進行轉換,否則插件會讀取每個點的譜圖造成速度緩慢,不過沒有其他問題。)
TEM_Ser_dm3_batch_convert插件源碼:
// Batch convert TIA or Gatan dm3 image file to tiff
// by Zhou XU
// 2020/05/05
// at Monash Centre for Electron Microscopy
// Windows 10 Enterprise Ver. 1803
// ImageJ ver. 1.52p
List.setCommands;
if (List.get("TIA Reader")!="") {
????// Check to make sure TIA reader plugin is installed
????//open directory of images
????input = getDirectory("location where images are stored");
????output = getDirectory("Location for results");
????// determine number of Files of given FileFormat
????list = getFileList(input);
????ImgNumber=0;
????for (i=0; i<list.length; i=i+1) {
????????if (endsWith(list[i], ".ser")) {
????????????ImgNumber=ImgNumber+1;
????????????filename = input + list[i];
????????????print(filename);
????????????run("TIA Reader", ".ser-reader...=filename");
???
????????????// get the pixel size and unit of image, TIA reader should have set the scale when import in
????????????getPixelSize (unit, pixelWidth, pixelHeight);
????????????imageWidth = getWidth();
????????????HFW = imageWidth * pixelWidth;
???
????????????filename_short = substring(list[i], 0, lastIndexOf(list[i], "."));
????????????exportFile = output + filename_short +"_HFW"+ HFW + unit + ".jpg";
????????????saveAs("JPEG", exportFile);
????????????run("Close All");
?????????}
?
????????else if (endsWith(list[i], ".dm3")) {
????????// for gatan dm3 files
????????ImgNumber=ImgNumber+1;
????????filename = input + list[i];
????????print(filename);
????????open(filename);
???
????????// get the pixel size and unit of image, TIA reader should have set the scale when import in
????????getPixelSize (unit, pixelWidth, pixelHeight);
????????imageWidth = getWidth();
????????HFW = imageWidth * pixelWidth;
???
????????filename_short = substring(list[i], 0, lastIndexOf(list[i], "."));
?????????exportFile = output + filename_short +"_HFW"+ HFW + unit + ".jpg";
????????saveAs("JPEG", exportFile);
????????run("Close All");
????????}
????}
}
else {
????Dialog.create("Error");
????Dialog.addMessage("TIA Reader plugin is not intalled, \nplease download and install from ????\nhttps://imagej.nih.gov/ij/plugins/tia-reader.html \n ");
????//Dialog.addHelp("<html>https://imagej.nih.gov/ij/plugins/tia-reader.html");
????Dialog.show();
} 作者:我不是龍哥 https://www.bilibili.com/read/cv10923101 出處:bilibili
總結
以上是生活随笔為你收集整理的采用ImageJ+插件批量转换透射电镜ser图像的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: k均值聚类算法考试例题_K-均值法计算示
- 下一篇: 认知机器人:相机校准