利用fsl进行配准

2023-05-16

利用fsl进行配准

配准概念

配准就是将两个不同空间(体素,扫描的位置不一致的nii),配准到同一个空间上,使得两者在大脑上的相应位置就可以一一对应上了

image-20221006105658771

通常MRI数据处理的步骤:先配准到template,再normalization

配准的方式

线性配准(linear transform/affine)

image-20210906220240774

非线性

每个体素都可以有自己不同的转换方向

每个工具配准的算法都不一样,比如Ants

图片的**上采样(upsampling)**目的是为了放大图像,采用各种插值的方法插入新的像素点,下采样就是缩小图片

在这里插入图片描述

image-20221006105849128

配准的步骤

要经历特征提取和空间变换,如果图像的大小不一致,那么就要进行图像插值。 对变化后的浮动图像和参考图像进行相似度检测,然后判断是否达到相似度最优,如果达到了那么输出,没有达到用算法优化变换参数。

image-20210911170202528

基本概念:标准空间,结构空间,功能空间

显示一些结构影像的就是结构空间,还有一种structural MRI结构MRI,常见的T1,T2就是结构

functional MRI就是功能MRI,显示一些功能的信息,比如思考的时候脑是哪些部位在起作用

标准空间就是一些标准脑图所在的空间,比如MNI152

自由度:几个自由度就是可以在几个方向上变换

ref:

医学图像配准技术综述 - 妙祖的文章 - 知乎 https://zhuanlan.zhihu.com/p/267339046

https://blog.csdn.net/qq_41375318/article/details/103006360

https://space.bilibili.com/542601735/channel/detail?cid=179145 配准宝藏UP猪

使用fsl图形界面进行配准

可以使用fsl对图像进行配准或者Ants进行配准

fsl下载

这里不作介绍了

FSL下载步骤:https://fsl.fmrib.ox.ac.uk/fsl/fslwiki/FslInstallation/Linux

非线性配准:https://blog.csdn.net/happyhorizion/article/details/79665363

还可以使用ANTs进行配准: https://www.bilibili.com/video/BV1P5411h7cT?share_source=copy_web

在电脑上安装fsl后,输入fsl,选择FLIRT这个配准工具箱,进入如下界面

image-20221006110228666

其中referencnce image为参考图像,fsl会将input image配准到参考图像的空间域中,并且输出到output_image的路径下,通常情况下采用默认的参数来进行配准就好了,如果自己没有referencnce image可以选择都配准至标准空间,即标准脑

如何选择合适的ref image

MNI152_TI_1mm_Brain_Mask.nii.gz T1就是指TIw,1mm是说间距1mm,Brain是 skull stripped去掉了脑壳的,Mask就是掩膜图片

output images就复制input images的名字加个_reg就行了

具体参数的选择如下:

search选项

已经配准了不需要寻找

没有配准,但是有相同的方向

方向也不相同

可能就是配准时的空间变换范围,如果两张图片方向相同:就是都是脑袋朝上就是方向相同?他的变换就不会超过多少多°,反正选默认的就行了

cost function(代价函数)
  • Correlation Ratio:用于MRI各个模态之间的配准,比如T1 MRI与T2

  • Mutual information(互信息),常用于不同影像模态,比如PET与MRI,CT与MRI

  • Least Squares(最小二乘法),相同模态

  • Normalised Correlation 用于相同模态,改变亮度,对比度

  • Normalised Mutual Information 不同模态

interpolation(插值)
  • **Nearest Neighbour:**最近邻,常用于离散化标签影像(掩膜文件这种的)

  • **Trilinear:**三线性插值,常用,快速,不太准确

  • **Spline:**样条法,较慢,可能会差生范围外的值

-omat xx.mat是输入变换矩阵。

使用fsl命令行进行配准

如果是在服务器上没有图形界面,可以使用xshell+xmanager将图像界面转发至自己的电脑,或者直接使用命令行进行配准

其实用图形化界面也是利用命令行进行配准,只是图形化界面不需要自己输入命令行

上例的命令行为

/usr/local/fsl/bin/flirt -in /data/yuzun/SE_0919/nii/medium/SE_0919_medium.nii.gz -ref /data/yuzun/SE_0919/nii/HR/SE_0919_HR.nii.gz -out /data/yuzun/SE_0919/nii/medium/SE_0919_medium_reg.nii.gz -omat /data/yuzun/SE_0919/nii/medium/SE_0919_medium_reg.mat -bins 256 -cost corratio -searchrx -90 90 -searchry -90 90 -searchrz -90 90 -dof 12  -interp trilinear

只需要修改输入输出的路径就可以对自己的MRI进行配准

fsl命令

fslinfo 查看nii文件的信息

fslhd 查看更加详细的信息

fslstats各种统计数据

fslroi 剪切nii文件

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

利用fsl进行配准 的相关文章

  • Blazo身份认证授权示例以及如何对接统一登录平台

    Blazo的身份认证授权示例以及如何对接统一登录平台 在阅读本文之前 xff0c 希望您已经对ASP NET Core或者Web应用的身份认证机制有所了解 本文主要讲述Blazor WebAssembly模式下的身份认证和授权方法 xff0
  • Blazor页面元素授权——AuthorizeView 组件的使用

    Blazor页面元素授权 AuthorizeView 组件的使用 上篇博客我们说到了blazor的身份认证的实现 xff0c 对于AuthorizeView 组件来说 xff0c 可以通过级联参数来获取包含了用户信息的Authenticat
  • 面试经历---广州YY(欢聚时代)

    上周去YY xff08 欢聚时代 xff09 面试JAVA工程师 xff0c 现在回忆一下当时的面试过程 xff0c 面试问的问题有 xff1a 1 常用的集合类 HashMap HashTable ArrayList LinkedList
  • Linux Kernel ccflags/Android 12 GKI

    ccflags Makefile笔记 外部模块头文件的检索 当编译的目标模块依赖多个头文件时 xff0c kbuild对头文件的搜索位置有这样的规定 xff1a 1 直接放置在 Makefile 同在的目录下 xff0c 在编译时当前目录会
  • Java之反射

    目录 1 什么是反射机制 2 反射机制有什么用 3 Class类对象的三种实例化模式 1 getClass 方法 xff1a 2 类 class 3 使用Class类提供的方法 4 通过反射实例化对象 5 反射主要使用的种类 5 1Clas
  • Win10服务器配置环境变量 | import _ssl # if we can‘t import it, let the error propagate ImportError: DLL load

    起因是我拿到了学校的算力平台的账号 xff0c 登录后发现桌面上只有软件和文件夹 xff0c C盘文件根本就看不见 xff0c cmd也无法打开 xff0c 但是我又需要搭建自己的环境 我还使用Anaconda安装了python3 7 xf
  • arch linux安装

    arch linux安装 IOS制作开始安装联网分区开始安装 系统初始化grub添加window10引导安装后的配置更改国内源 问题总结体眠后不能唤醒的问题 总结 IOS制作 开始安装 联网 可以先通过ip link命令查看网卡状态 spa
  • mysql无法启动10061的错误!!!

    昨天晚上打开java项目准备联系几个功能 linux里面启动成功 tomcat也运行了 正在享受这个过程的时候 结果mysql显示cant connect localhost 10061的错误 瞬间一盆冷水搞得心情无比低落 之前遇见过一次这
  • Ubuntu 下忘记用户名和登录密码的解决方法(已经实践过,踩过坑)

    1 首先重启 长按 shift 键 xff08 多次连击esc也可以 xff09 上下箭头选择Advanced options for Ubuntu xff0c enter键进入 2 选择后缀带 xff08 recovery mode xf
  • Unity+Android GET和POST方式的简单实现API请求(人像动漫化)

    Unity与Android的简单交互 xff0c Unity打开Android相册并调用 前端时间本想着去弄个小工具 xff0c 就是图文生成视频 xff0c 可是这个的API接口的调用的测试权限死活申请不下来 xff0c 只能放弃 xff
  • 手写生产者/消费者模式(三种方式)

    1 生产者 消费者模式介绍 这种模式满足三点要求 xff1a xff08 1 xff09 生产者生产数据到缓冲区中 xff0c 消费者从缓冲区中取数据 xff08 2 xff09 缓冲区满时 xff0c 生产者线程阻塞 xff0c 进入等待

随机推荐

  • jar包完全解读

    本文抄自 xff1a jar包的一些事儿 前言 xff1a 作为java程序员 xff0c 日常工作就是打jar包 xff0c 可是对jar包的了解有多少呢 xff1f 一 什么是jar包 jar包就是 Java Archive File
  • 面试经历---YY欢聚时代(2015年11月21日上午初试、25日下午复试)

    YY欢聚时代一年多前去面试过一次 xff0c 当时鄙视了 xff0c 在现在的公司呆了1年半了 xff0c 感觉做得很不爽 xff0c 而且薪资又不满意 xff0c 所以想找个新工作 xff0c 就想去YY面试 下面将两次YY面试的经历写出
  • jenkins下载安装及环境搭建

    文章目录 jenkins下载首次启动jenkins环境配置 jenkins下载 jenkins官网下载 xff0c 输入jenkins io xff0c 出现如下界面 xff1a 点击下载 xff0c 往下滑 xff1a 选择这个war包下
  • Testng学习笔记(一)

    目录 TestNg简介1 TestNG使用流程1 1TestNG安装及使用1 2创建maven项目 xff0c 进行POM配置1 3 创建Test类1 4添加测试方法 2 TestNG常用注解及生命周期2 1常用注解2 2TestNG注解的
  • (史上最详细的解释看过来)深入理解函数栈帧

    函数的调用过程 xff08 栈帧 xff09 话说 xff0c 什么是函数栈帧 xff1f 我之前也是一脸懵逼的 xff08 xff09 xff0c 举个栗子 xff0c 先看一段简单的代码 xff1a span class token m
  • main函数参数及可变参数列表解析

    main函数的参数解析 平时写main函数大多都是int main xff0c 然后误以为main函数是没有参数的 xff0c 但在有些书上又看到main括号里有三个不怎么看的懂的参数 xff0c 其实仔细研究就会发现 xff0c main
  • 给定一棵二叉树,判断它是否是镜像对称的

    给定一个二叉树 xff0c 检查它是否是镜像对称的 在这里先解释一下镜像对称的概念 xff0c 顾名思义 xff0c 就像人站在镜子前面面对自己一样 xff0c 看到的一切都是对称的 镜中的反射与现实中的人具有相同的头部 xff0c 但反射
  • 判断一棵二叉树是否是平衡二叉树

    我们先来整理一下什么是平衡二叉树 xff1f 满足以下两点的就是平衡二叉树 xff1a 1 左右子树的高度差不能超过1 2 左右子树也是平衡二叉树 需要注意的是空树也是平衡二叉树 例如下面这棵树就不是平衡二叉树 因为对于B来说左右子树高度超
  • Fiddler实现手机抓包入门配置

    emmm 在此之前我也只是听过抓包抓包 xff0c 但是没有真正的接触到 xff0c Fiddler是一款很强大的抓包工具了 xff0c 但是一开始很多人可能会想我一样走上歧途 xff0c 所以在此总结一下 xff0c 希望看到的朋友少走弯
  • Idea使用Maven连接MySQL数据库

    连接MySQL数据库的步骤 xff1a 1 添加数据库 2 填写连接信息如图 3 填写连接信息完之后 xff0c 需要记一下jar包的位置 xff0c 用于添加jar包 4 显示jar包信息 5 添加文件夹命名java xff0c 并将其设
  • mybatis generator 生成中文字段注释

    首先 xff0c 试了好几次 xff0c 重写 DefaultCommentGenerator xff0c 创建MyCommentGenerator类实现CommentGenerator接口 xff0c 都是按照网上的方案来的 xff0c
  • org/apache/velocity/context/Context

    mybatisplus generator AutoGenerator 生成文件时报错如下 xff1a 请输入表名 xff1a alarm 14 38 28 569 main DEBUG com baomidou mybatisplus g
  • NVIDIA开源NeMo,CUDA,pytorch安装使用过程踩坑总结

    说明 Nemo cpu版本直接看文章最后一部分 xff08 linux版本的 xff09 xff0c windows下安装的话要先安装CUDA来支持GPU xff0c 在安装pytorch 在安装nemo 但是还是出问题了 xff0c 不建
  • 网络url转文件

    首先是获取springboot resource下面的文件 String fileUrl 61 ResourceUtils getURL 34 classpath 34 getPath 43 34 test txt 34 File file
  • ByteBuffer和String互转

    Charset charset 61 StandardCharsets UTF 8 String str 61 34 kj你好呀 kjlkjlkjlk 34 ByteBuffer buffer 61 ByteBuffer allocate
  • @Test单元测试注入bean 3种方式

    1 64 ContextConfiguration 64 ContextConfiguration Spring整合JUnit4测试时 xff0c 使用注解引入多个配置文件 64 RunWith SpringJUnit4ClassRunne
  • java 导出word

    目前来看 xff0c java导出word大致有6种解决方案 xff1a 1 xff1a Jacob是Java COM Bridge的缩写 xff0c 使用Jacob自带的DLL动态链接库 xff0c 并通过JNI的方式实现了在Java平台
  • JAVA visualVM 查看堆栈分配

    由于在做nlp xff0c 用到standFord nlp xff0c 堆栈分配总是一处 xff0c 所以需要这个 xff0c 正好学习一下 我用的是jdk8 5 xff0c 位于 JDK 根目录的 bin 文件夹下 xff0c 无需安装
  • Android Studio Gradle失败 Could not reolve play-services-vision-17.0.2.aar 等类似问题解决办法

    Android Studio Gradle失败 Could not reolve play services vision 17 0 2 aar 等类似问题解决办法 网上一些常规解决办法 如果上述常规解决办法尝试后 xff0c 都无法解决你
  • 利用fsl进行配准

    利用fsl进行配准 配准概念 配准就是将两个不同空间 体素 xff0c 扫描的位置不一致的nii xff0c 配准到同一个空间上 xff0c 使得两者在大脑上的相应位置就可以一一对应上了 通常MRI数据处理的步骤 xff1a 先配准到tem