PET是获取生物活体功能影像的工具,而GATE是一款基于Mento Carlo方法的PET/SPECT设备专用仿真软件,它针对核医学成像技术对蒙特卡洛模拟软件包Geant4进行了模块化的封装并提供了许多新的特性。
GATE官方网址:http://www.opengatecollaboration.org/GATE80 GATE介绍:https://opengate.readthedocs.io/en/latest/ GATE是在OpenGATE的合作下开发的,目的是为学术界提供一个基于GEANT4的自由软件、通用的、基于GEANT4的发射断层成像仿真平台。
在这里面我首先选择的是deepin20,国产的Linux系统,说不香都不行,很多常用软件都做了很好的适配。Deepin深度操作系统是基于Debian GNU/Linux开发的,和Ubuntu有很多的类似之处。
官方链接:https://www.deepin.org/zh/download/
直接根据官方的说明一步一步来就行,步骤极其简单。
当然,选择双系统也是可以的,【史上最详细】win10下的Deepin双系统安装小白教程
clhep是高能物理库,它是一组特定于HEP的基础和效用类,如随机生成器、物理向量、几何和线性代数。CLHEP是在一组独立于任何外部包的包中构造的(在某些条件下,CLHEP内部的相互依赖是允许的)。
下载链接:http://proj-clhep.web.cern.ch/proj-clhep/ 提前先建立好一个gate的文件夹,接着在gate的文件夹里面下载刚刚的源码包 接下来就是编译了
cd build cmake ../2.4.1.3/CLHEP make sudo make all install大概有10min之后
安装Geant4并下载数据文件
Geant4(GEometry ANd Tracking)由欧洲核子中心(CERN)于1994年开发,是一个以C++为底层语言,以蒙特卡罗方法为基础的模拟粒子在材料中的输运过程的工具,对所有用户开放且开源。
下载链接:https://geant4.web.cern.ch/support/download 再根据自己的需要下载对应的数据文件 接着将下载好的软件压缩包放到gate文件夹里面的geant4文件夹中并解压缩,数据文件放在gate4-data文件夹中。下载数据集可以使用wegt指令。
在对应的gate文件夹打开终端,使用cmake进行编译,过程中记得使用sudo给权限 注意匹配自己的路径!!
cd geant4 mkdir geant4-build cd geant4-build cmake -DCMAKE_INSTALL_PREFIX=/data/home/magician/gate/geant4/geant4-install/ -DGEANT4_USE_OPENGL_X11=ON -DGEANT4_USE_RAYTRACER_X11=ON -DGEANT4_USE_QT=ON -DGEANT4_USE_SYSTEM_EXPAT=OFF GEANT4_BUILD_MULTITHREADED=ON /data/home/magician/gate/geant4/geant4.10.06.p02 make -j4 make install关于cmake的参数可以自行百度了解~ -DCMAKE_INSTALL_PREFIX 参数表示安装的位置 -DGEANT4_USE_OPENGL_X11=ON -DGEANT4_USE_RAYTRACER_X11=ON 表示开启图形可视化 -DGEANT4_USE_QT=ON 表示开启Qt(不需要Qt界面的可以不加此参数) GEANT4_BUILD_MULTITHREADED=ON 为开启多线程 /data/home/magician/gate/geant4/geant4.10.06.p02 表示源程序,如果下载的不同版本记得更改为解压后的文件夹名字。 make -j4 or make install -j4中的-j4表示八个线程运行。 make和make install的区别
附:官网的安装提示http://geant4-userdoc.web.cern.ch/geant4-userdoc/UsersGuides/InstallationGuide/html/index.html
将数据集解压到data文件夹中 添加完数据之后继续添加环境变量,直接加在.bashrc文件里面,防止以后多次添加
cd ~/ sudo gedit .bashrc source /data/home/magician/gate/geant4/geant4-install/bin/geant4.sh source /data/home/magician/gate/geant4/geant4-install/share/Geant4-10.6.2/geant4make/geant4make.sh打开gedit后后面两条命令复制进去
或者使用下面的方法也可以
echo 'source /data/home/magician/gate/geant4/geant4-install/share/Geant4-10.06.p02/geant4make/geant4make.sh' >> ~/.bashrc echo 'source /data/home/magician/gate/geant4/geant4-install/bin/geant4.sh' >> ~/.bashrc再接着就是测试是否安装成功geant4了,屏住呼吸!!!
进入示例文件夹,我这边是/data/home/magician/gate/geant4/geant4.10.06.p02/examples/basic/B1
mkdir B1-build cd B1-build cmake ../B1 make -j4 ./exampleB1看到如图所示界面则说明成功了
安装其他依赖项
sudo apt-get install git dpkg-dev cmake g++ gcc binutils libx11-dev libxpm-dev \ libxft-dev libxext-dev sudo apt-get install gfortran libssl-dev libpcre3-dev \ xlibmesa-glu-dev libglew1.5-dev libftgl-dev \ libmysqlclient-dev libfftw3-dev libcfitsio-dev \ graphviz-dev libavahi-compat-libdnssd-dev \ libldap2-dev python-dev libxml2-dev libkrb5-dev \ libgsl0-dev libqt4-dev下载ROOT安装包 官网链接:https://root.cern.ch/
ROOT是CERN诞生的数据处理框架,是高能物理研究的核心。
很不幸的是基于Ubuntu和Debian的发行版还没有对应的安装包,只能我们自己编译 找到release版本,这里面我们直接选择源码进行编译
将压缩包放入root文件夹解压缩后执行以下命令
cd /data/home/magician/gate/root cmake -DCMAKE_INSTALL_PREFIX=/data/home/magician/gate/root/root-install -DGEANT4_USE_OPENGL_X11=ON -DGEANT4_BUILD_MULTITHREADED=ON /data/home/magician/gate/root/root-6.22.02 make -j4 sudo make all install再次经过漫长的等待之后,编译完成之后我们紧接着添加环境变量
cd ~ gedit ./.bashrc source /data/home/magician/gate/root/bin/thisroot.sh打开root执行文件
cd root/bin ./root有如下界面则说明安装成功
安装OpenGL
OpenGL 是一套由SGI公司发展出来的绘图函式库,它是一组 C 语言的函式,用于 2D 与 3D 图形应用程式的开发上。OpenGL 让程序开发人员不需要考虑到各种显示卡底层运作是否相同的问题,硬件由 OpenGL 核心去解决,因此只要显示卡支持 OpenGL,那么程序就不需要重新再移植,而程式开发人员也不需要重新学习一组函式库来移植程序
sudo apt-get install build-essential sudo apt-get install libgl1-mesa-dev sudo apt-get install freeglut3-dev安装ITK,官网链接:https://itk.org/
ITK是一个开源的、跨平台的库,它为开发人员提供了一套广泛的图像分析软件工具。ITK通过极限编程方法开发,它建立在一个成熟的、面向空间的体系结构上,用于处理、分割和注册两个、三个或更多维度的科学图像。 请记住,ITK是一个工具包,因此,一旦它安装在计算机上,它就不提供一个运行的应用程序。ITK提供的是一组可以用来创建自己的应用程序的库。除了工具包本身,ITK还包括一组扩展的示例和测试。
mkdir ITK-Sandbox cd ITK-Sandbox git clone git@github.com:InsightSoftwareConsortium/ITK.git mkdir ITK-build cd ITK-build cmake ../ITK make -j4安装RTK,官网链接:http://www.openrtk.org/
mkdir RTK-Sandbox cd RTK-Sandbox git clone git@github.com:SimonRit/RTK.git mkdir RTK-build cd RTK-build cmake ../RTK make -j4如果你这时候遇到了这样的错误
-- Looking for isnan -- Looking for isnan - found CMake Error at CMakeLists.txt:239 (message): Modules can only be built against an ITK build tree; they cannot be built against an ITK install tree. -- Configuring incomplete, errors occurred! See also "/data/home/magician/gate/RTK-Sandbox/RTK-build/CMakeFiles/CMakeOutput.log".不要慌,根据ITK的githubissue,RTK移到了Modules / External并激活了Module_RTK
回到我们的Gate官网,下载源码包http://www.opengatecollaboration.org/node/94
在Gate文件夹中解压该压缩包,并奖励gate-build和gate-install文件夹
mkdir gate-build mkdir gate-install cd gate-build cmake ../Gate-9.0打开ccmake配置环境
ccmake ../Gate-9.0链接生成二进制可执行文件
make -j4 sudo make install -j4假如我们这时发现如下报错GATE should be compiled with a non-multithreaded installation of Geant4直接将cmake文件中对应行数注释掉就OK了,也可以使用多线程的
配置环境变量,在Gate文件中建立一个auto.bashrc文本文件
gedit auto.bashrc将我们需要的所有的环境变量都放进去
source /data/home/magician/gate/root/bin/thisroot.sh source /data/home/magician/gate/geant4/geant4-install/bin/geant4.sh export PATH=$PATH:/data/home/magician/gate/gate-install export PATH=$PATH:/data/home/magician/gate/ITK-Sandbox/ITK-build/bin export LD_LIBRARY_PATH=/data/home/magician/gate/ITK-Sandbox/ITK-build/bin:$LD_LIBRARY_PAT打开我们之前建立的gate-install文件夹,在终端运行Gate二进制可执行文件
到这里Gate环境就已经配置完成了