【技术实现步骤摘要】
一种基于局部和全局联合约束的三维生物图像形变方法
[0001]本专利技术涉及图像形变和图像配准
,尤其是一种基于局部和全局联合约束的三维生物图像形变方法
。
技术介绍
[0002]在图像形变与图像配准领域,典型的任务是将一个图像的形态位置变形为另一个图像的形态位置,或者将一个图像与一个参考图像进行形变配准
。
薄板样条插值形变
(TPS)
是一种常用的方法
。TPS
形变的基本原理是通过在图像上定义一组控制点,并通过对这些控制点进行变形来实现整体的图像形变
。TPS
形变时,需要计算每个像素点相对于控制点的变形位移,然后,根据这些变形位移,可以对图像进行插值,以生成最终的形变图像
。
[0003]在
TPS
形变的基础上可以通过增加约束方案使
TPS
形变效果更为平滑
(smooth)
,即
STPS。STPS
形变可以通过添加更多的控制点来增加形变的精度,但其使用整体的控制点来为
STPS
形变增加平滑约束的时候,会使得局部区域的控制点受到其他区域控制点的平滑约束的影响,导致计算出的位移场产生误差
。
而且较大尺寸的三维图像,需要更多的控制点集来进行位移场计算,会导致形变时长较长,下采样形变位移场是一个典型的方案,便又产生了下采样位移场的插值问题
。
为了提高
3D
图像变形性能与效率,屈等人设计 ...
【技术保护点】
【技术特征摘要】 【专利技术属性】
1.
一种基于局部和全局联合约束的三维生物图像形变方法,其特征在于:该方法包括下列顺序的步骤:
(1)
获取整体匹配点集:基于目标生物图像解剖图谱获取控制点集
tar_markers
,复制控制点集
tar_markers
并将其映射到待形变生物图像上,获取待形变图像点集
sub_markers
,控制点集
tar_markers
与待形变图像点集
sub_markers
形成整体匹配点集;
(2)
根据标签索引信息
ind
计算局部约束:提取出标签索引信息
ind
对应的局部的匹配点集,计算标签索引信息
ind
对应区域的
STPS
形变的仿射项参数矩阵
D
ind
以及非仿射项参数矩阵
C
ind
;
(3)
计算全局约束:使用整体匹配点集来计算
STPS
形变的仿射项参数矩阵
D
all
以及非仿射项参数矩阵
C
all
;
(4)
计算基于局部约束与全局约束的下采样位移场
DF
:根据目标生物图像解剖图谱,使用对应的局部约束来计算局部体素位置处的位移场;对于背景区域,使用全局约束计算背景体素位置处的位移场;
(5)
计算三次
B
样条基函数矩阵;
(6)
遍历下采样位移场
DF
,在进行位移场区块初步插值后,通过移动三次
B
样条基函数矩阵影响区域与初步插值之后的位移场块进行平滑计算,得到最终插值之后的目标图像尺寸的位移场即最终生成的位移场
DF_whole
;
(7)
根据最终生成的位移场
DF_whole
进行三维生物图像形变,得到形变后的三维生物图像
。2.
根据权利要求1所述的基于局部和全局联合约束的三维生物图像形变方法,其特征在于:所述步骤
(1)
具体包括以下步骤:
(1a)
在目标生物图像解剖图谱的每个局部区域边界处,利用
PCL
点云库生成一组点集,并添加对应局部区域的标签索引信息
ind
,将这组点集整体记为控制点集
tar_markers
;
(1b)
复制控制点集
tar_markers
并将其映射到待形变生物图像上,通过对映射后的点集进行调整,使待形变生物图像中映射后的点集与目标生物图像中的控制点集在对应位置处实现精准匹配,精准匹配后的点集记为待形变图像点集
sub_markers
;
(1c)
控制点集
tar_markers
与待形变图像点集
sub_markers
形成整体匹配点集;控制点集
tar_markers
与待形变图像点集
sub_markers
的尺寸均为
nCpt
×3,其中,行数
nCpt
为匹配点对的数量,3列分别存储每个点的
x、y、z
坐标
。3.
根据权利要求1所述的基于局部和全局联合约束的三维生物图像形变方法,其特征在于:所述步骤
(2)
具体包括以下步骤:
(2a)
按照标签索引信息
ind
进行索引,从控制点集
tar_markers
与待形变图像点集
sub_markers
中提取出对应标签索引信息
ind
区域的匹配点集分别存储进局部控制点集
cpt_target
ind
与局部待形变图像点集
cpt_subject
ind
,局部控制点集
cpt_target
ind
与局部待形变图像点集
cpt_subject
ind
的尺寸均为
nCpt
ind
×3,其中,行数
nCpt
ind
为标签索引信息
ind
对应区域匹配点对的数量,3列分别存储每个点的
x、y、z
坐标;
(2b)
定义用于存放局部控制点集
cpt_target
ind
每两点之间欧氏距离的矩阵为
xnxn_K
ind
,
xnxn_K
ind
的尺寸为
nCpt
ind
×
nCpt
ind
;计算局部控制点集
cpt_target
ind
每两点之间欧氏距离
d
local_ij
,并将欧氏距离结果取反后存储进矩阵
xnxn_K
ind
,计算方式如下:
d
local_ij_x
=
cpt_target
ind
[i][0]
‑
cpt_target
ind
[j][0]
;
d
local_ij_y
=
cpt_target
ind
[i][1]
‑
cpttarget
ind
[j][1]
;
d
local_ij_z
=
cpt_target
ind
[i][2]
‑
cpt_target
ind
[j][2]
;其中,
cpt_target
ind
[i][0]
为局部控制点集
cpt_target
ind
中第
i
个点的
x
坐标,
cpt_target
ind
[i][1]
为局部控制点集
cpt_target
ind
中第
i
个点的
y
坐标
,cpt_target
ind
[i][2]
为局部控制点集
cpt_target
ind
中第
i
个点的
z
坐标,
cpt_target
ind
[j][0]
为局部控制点集
cpt_target
ind
中第
j
个点的
x
坐标,
cpt_target
ind
[j][1]
为局部控制点集
cpt_target
ind
中第
j
个点的
y
坐标
,cpt_target
ind
[j][2]
为局部控制点集
cpt_target
ind
中第
j
个点的
z
坐标,
d
local_ij_x
为
cpt_target
ind
[i][0]
与
cpt_target
ind
[j][0]
之间的距离,
d
local_ij_y
为
cpt_target
ind
[i][1]
与
cpt_target
ind
[j][1]
之间的距离,
d
local_ij_z
为
cpt_target
ind
[i][2]
与
cpt_target
ind
[j][2]
之间的距离;
(2c)
分配两个尺寸为
nCpt
ind
×4的矩阵
X
ind
与
Y
ind
,分别用于存放局部控制点集
cpt_target
ind
与局部待形变图像点集
cpt_subject
ind
的位置信息,其中,行数
nCpt
ind
为标签索引信息
ind
对应区域匹配点对的数量,
X
ind
中的4列第一列设值为1,其余三列分别存储局部控制点集
cpt_target
ind
每个点的
x、y、z
坐标;
Y
ind
中的4列第一列设值为1,其余三列分别存储局部待形变图像点集
cpt_subject
ind
每个点的
x、y、z
坐标;
(2d)
分配一个尺寸为
nCpt
ind
×
nCpt
ind
的矩阵
Q
ind
,矩阵
Q
ind
前4列与矩阵
X
ind
赋值相同;使用
QR
分解将矩阵
Q
ind
进一步分解为一个正交矩阵和一个上三角矩阵
R
ind
,并将得到的正交矩阵重新赋值给矩阵
Q
ind
,使用
Gram
‑
Schmidt
正交化过程将求得的矩阵
Q
ind
扩展为具有正交列的矩阵
Q
ind
;
(2e)
分配矩阵
q1
ind
、q2
ind
、r
ind
,将所求得的
Q
ind
第1到第4列存入矩阵
q1
ind
,
将
Q
ind
第5到第
nCpt
ind
列存入矩阵
q2
ind
,将所求得的矩阵
R
ind
的第1到第4行和第1到第4列存入
r
ind
;
(2f)
定义标签索引信息
ind
对应区域的
STPS
形变非仿射项参数矩阵为
C
ind
,
定义标签索引信息
ind
对应区域的
STPS
形变仿射项参数矩阵为
D
ind
,
定义
C
ind
的尺寸为
nCpt
ind
×4,
D
ind
的尺寸为4×4,
C
ind
与
D
ind
计算过程如下:
A
local
=
q2
indT
·
xnxn_K
ind
q2
ind
+I
·
0.2C
ind
=
q2
ind
·
(A
local
‑1·
q2
indT
·
Y
ind
)D
ind
=
r
ind
‑1·
q1
indT
·
(Y
ind
‑
xnxn_K
ind
·
C
ind
)
其中,
I
是
(nCpt
ind
‑
4)
阶的单位矩阵;
A
local
为局部
TPS
形变的核矩阵;
(2g)
使用标签索引信息
ind
重复执行步骤
(2a)
至步骤
(2f)
,直到对所有分区的局部约束求解完成
。4.
根据权利要求1所述的基于局部和全局联合约束的三维生物图像形变方法,其特征在于:所述步骤
(3)
具体包括以下步骤:
(3a)
定义用于存放控制点集
tar_markers
每两点之间欧氏距离的矩阵为
xnxn_K
,
xnxn_K
的尺寸为
nCpt
×
nCpt
;计算控制点集
tar_markers
每两点之间欧氏距离
d
global_ij
,并将欧氏距离结果取反后存储进
xnxn_K
,计算方式如下:
d
global_ij_x
=
tar_markers[i][0]
‑
tar_markers[j][0]
;
d
global_ij_y
=
tar_markers[i][1]
‑
tar_markers[j][1]
;
d
global_ij_z
=
tar_markers[i][2]
‑
tar_markers[j][2]
;其中,
tar_markers[i][0]
为控制点集
tar_markers
中第
i
个点的
x
坐标,
tar_markers[i][1]
为控制点集
tar_markers
中第
i
个点的
y
坐标
,tar_markers[i][2]
为控制点集
tar_markers
中第
i
个点的
z
坐标,
tar_markers[j][0]
为控制点集
tar_markers
中第
j
个点的
x
坐标,
tar_markers[i][1]
为控制点集
tar_markers
中第
j
个点的
y
坐标
,tar_markers[j][2]
为控制点集
tar_markers
中第
j
个点的
z
坐标,
d
global_ij_x
为
tar_markers[j][0]
与
tar_markers[j][0]
之间的距离,
d
global_ij_y
为
tar_markers[i][1]
与
tar_markers[j][1]
之间的距离,
d
global_ij_z
为
tar_markers[i][2]
与
tar_markers[j][2]
之间的距离;
(3b)
定义两个尺寸为
nCpt
×4的矩阵
X
与
Y
,分别用于存放控制点集
tar_markers
与待形变图像点集
sub_markers
的位置信息,其中,行数
nCpt
为匹配点对的数量,
X
中的4列第一列设值为1,其余三列分别存储
tar_markers
每个点的
x、y、z
坐标;
Y
中的4列第一列设值为1,其余三列分别存储
sub_markers
每个点的
x、y、z
坐标;
(3c)
定义一个尺寸为
nCpt
×
nCpt
的矩阵
Q
,
Q
前4列与
X
赋值相同,使用
QR
分解将矩阵
技术研发人员:李园园,刘超,屈磊,吴军,田冲,黄海盟,黄志祥,杨利霞,
申请(专利权)人:安徽大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。