CN111192347A - 血管矢量图模型中添加双点定位图例的方法及装置 - Google Patents

血管矢量图模型中添加双点定位图例的方法及装置 Download PDF

Info

Publication number
CN111192347A
CN111192347A CN201911404550.9A CN201911404550A CN111192347A CN 111192347 A CN111192347 A CN 111192347A CN 201911404550 A CN201911404550 A CN 201911404550A CN 111192347 A CN111192347 A CN 111192347A
Authority
CN
China
Prior art keywords
points
point
blood vessel
diameter
seg
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201911404550.9A
Other languages
English (en)
Inventor
李庆坤
陈向军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Oriental ET Medical Equipment Co ltd
Original Assignee
Beijing Oriental ET Medical Equipment Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Oriental ET Medical Equipment Co ltd filed Critical Beijing Oriental ET Medical Equipment Co ltd
Priority to CN201911404550.9A priority Critical patent/CN111192347A/zh
Publication of CN111192347A publication Critical patent/CN111192347A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Apparatus For Radiation Diagnosis (AREA)

Abstract

本发明实施例提供一种血管矢量图模型中添加双点定位图例的方法及装置,其中,方法包括:利用血管分段算法,将血管矢量图模型中的目标血管进行分段,并给分段后的血管段命名;根据检测到的鼠标点击的点坐标,利用预设双点定位图例添加方法,将待添加的双点定位图例添加到分段后的目标血管中。本发明实施例能够在计算机中生成的血管矢量图模型上添加双点定位图例,实现在计算机中生成的血管矢量图模型上描绘和标记异常所见。

Description

血管矢量图模型中添加双点定位图例的方法及装置
技术领域
本发明涉及信息技术的图像处理技术领域,尤其涉及一种血管矢量图模型中添加双点定位图例的方法及装置。
背景技术
在现有技术中,需要描述目标对象的血管的状态,除文字描述外,采用示意图的形式的描述更为直观。
目前,传统的示意图方法有两种,包括在印制的纸质上的血管图进行描绘和标记,或者在计算机上的采用血管图表达血管位置结合文字进行描述,但是,现有的在计算机上的血管图仅起到标记位置的作用,没有实现在血管图上进行绘制的功能。
鉴于此,如何在计算机中生成的血管矢量图模型上描绘和标记异常所见成为目前需要解决的技术问题。
发明内容
针对现有技术存在的问题,本发明实施例提供一种血管矢量图模型中添加双点定位图例的方法及装置。
本发明实施例提供一种血管矢量图模型中添加双点定位图例的方法,包括:
利用血管分段算法,将血管矢量图模型中的目标血管进行分段,并给分段后的血管段命名;
根据检测到的鼠标点击的点坐标,利用预设双点定位图例添加方法,将待添加的双点定位图例添加到分段后的目标血管中。
本发明实施例提供一种血管矢量图模型中添加双点定位图例的装置,包括:
血管分段模块,用于利用血管分段算法,将血管矢量图模型中的目标血管进行分段,并给分段后的血管段命名;
添加模块,用于根据检测到的鼠标点击的点坐标,利用预设双点定位图例添加方法,将待添加的双点定位图例添加到分段后的目标血管中。
本发明实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述方法的步骤。
本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述方法的步骤。
本发明实施例提供的血管矢量图模型中添加双点定位图例的方法及装置,通过利用血管分段算法,将血管矢量图模型中的目标血管进行分段,并给分段后的血管段命名;根据检测到的鼠标点击的点坐标,利用预设双点定位图例添加方法,将待添加的双点定位图例添加到分段后的目标血管中,由此,能够在计算机中生成的血管矢量图模型上添加双点定位图例,实现在计算机中生成的血管矢量图模型上描绘和标记异常所见。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例提供的一种血管矢量图模型中添加双点定位图例的方法的流程示意图;
图2为本发明一实施例提供的一种血管矢量图模型中添加双点定位图例的装置的结构示意图;
图3为本发明一实施例提供的电子设备的实体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1示出了本发明一实施例提供的一种血管矢量图模型中添加双点定位图例的方法的流程示意图,如图1所示,本实施例的血管矢量图模型中添加双点定位图例的方法,包括:
S1、利用血管分段算法,将血管矢量图模型中的目标血管进行分段,并给分段后的血管段命名。
需要说明的是,本实施例所述血管矢量图模型中添加双点定位图例的方法的执行主体为处理器。
可以理解的是,本实施例实际使用过程中需要将一支血管分为数段,并给分段后的每个血管段命名,所述血管段命名包含了血管段的位置信息。在图形处理上,本实施例利用血管分段算法给目标血管分段,并将相应血管段形成封闭区域,通过给血管段命名,可以方便后续在添加单点定位图例时通过血管段命名获知正确的血管段的位置信息。
S2、根据检测到的鼠标点击的点坐标,利用预设双点定位图例添加方法,将待添加的双点定位图例添加到分段后的目标血管中。
在具体应用中,本实施例所述根据检测到的鼠标点击的点坐标,利用预设双点定位图例添加方法,将待添加的双点定位图例添加到分段后的目标血管中,包括:
根据检测到的鼠标点击的点坐标,确定目标血管;
根据待添加的双点定位图例的类型,基于检测到的鼠标点击的第一点、第二点的坐标和目标血管的数据集,确定待添加的双点定位图例在目标血管的填充区域;
将待添加的双点定位图例添加在分段后的目标血管所确定的填充区域。
可以理解的是,本实施例中所述待添加的双点定位图例可用于描述造影结果的异常所见,本实施例并不对其进行限制。在具体应用中,所述待添加的双点定位图例的类型,可以包括:简单图例(例如支架影等图例)、同心型病变图例、偏心型病变图例和同心型瘤样扩张图例。
可以理解的是,本实施例在利用血管分段算法,将血管矢量图模型中的目标血管进行分段,并给分段后的血管段命名之后,需要根据检测到的鼠标点击的点坐标,利用预设双点定位图例添加方法,将待添加的双点定位图例添加到分段后的目标血管中,能够实现在计算机中生成的血管矢量图模型上添加双点定位图例,以实现在计算机中生成的血管矢量图模型上描绘和标记异常所见。
本实施例提供的血管矢量图模型中添加双点定位图例的方法,通过利用血管分段算法,将血管矢量图模型中的目标血管进行分段,并给分段后的血管段命名;根据检测到的鼠标点击的点坐标,利用预设双点定位图例添加方法,将待添加的双点定位图例添加到分段后的目标血管中,由此,能够在计算机中生成的血管矢量图模型上添加双点定位图例,实现在计算机中生成的血管矢量图模型上描绘和标记异常所见。
基于上述实施例的内容,在本实施例中,所述血管分段算法,可以包括:
定义目标血管的数据集,包括:血管模型type,血管开口直径Do和末端直径De,直径指数α;目标血管的中心线为CenterLine,CenterLine的点集合为CL_Points,CL_Points中的点数量为N,N≥2;血管壁为VesselWall,点集合VW1_Points代表目标血管的中心线起点至终点左侧血管壁,点集合VW2_Points代表目标血管的中心线起点至终点右侧血管壁,VW1_Points和VW2_Points中点数量均为N,N≥2;定义分段的数量:M,1≤M<100,M∈{自然数}且及每段累计占比为Xm,0<Xm<1,m∈[1,M];定义中心线CenterLine上对应分段的边界点集合Seg_Points,Seg_Points的点数量为M+1,其中Seg_Points1=CL_Points1,Seg_PointsM+1=CL_PointsN,Seg_Points1为Seg_Points中的第1个边界点,CL_Points1为CL_Points中的第1个点,Seg_PointsM+1为Seg_Points中的第M+1个边界点,CL_PointsN为CL_Points中的第N个点;
获取CL_Points中第1点到第2点的向量至第N-1点到第N点的向量
Figure BDA0002348289130000051
的集合
Figure BDA0002348289130000052
Figure BDA0002348289130000053
Figure BDA0002348289130000054
Figure BDA0002348289130000055
获取
Figure BDA0002348289130000056
的总长度L:
Figure BDA0002348289130000057
获取CL_Points中第n个点CL_Pointsn到第1个点CL_Points1的长度Ln
L1=0
Figure BDA0002348289130000058
获取Ln
Figure BDA0002348289130000059
的总长度L中的占比Rn=Ln÷L;
计算Seg_Points中的第m个边界点Seg_Pointsm、Seg_Points中的第m+1个边界点Seg_Pointsm+1及相应的与血管壁的交点,m∈[2,M-1]),包括:
寻找Rn≤Xm-1<Rn+1,定义N1=n,Xm-1对应点Seg_Pointsm所在中心线段的起点为CL_PointsN-1、末端为CL_PointsN;定义Xm-1对应点Seg_Pointsm为Pt1(x1,y1),所对应中心线段起点为Pt0(x0,y0),末端为Pt2(x2,y2);其中:
Figure BDA00023482891300000510
Figure BDA00023482891300000511
通过函数计算出中心线Pt1(x1,y1)点处血管直径D1=Do-(Do-De)×Xm-1 α;以Pt1(x1,y1)点为圆心,半径为
Figure BDA00023482891300000512
的圆与以CL_PointsN-1为起点和向量
Figure BDA00023482891300000513
构成的射线的交点定义为Pta(xa,ya);Pta(xa,ya)绕Pt1(x1,y1)逆时针旋转θ角得到Ptb(xb,yb);
Figure BDA00023482891300000514
时,将计算所得Ptb(xb,yb)作为与VW1_Points的交点,定义为Seg_VW1_Pointsm;取
Figure BDA0002348289130000061
将计算所得Ptb(xb,yb)作为与VW2_Points的交点,定义为Seg_VW2_Pointsm;进而计算得到Seg_Pointsm+1及相应的与血管壁的交点Seg_VW1_Pointsm+1,Seg_VW2_Pointsm+1,m∈[2,M-1]);
进行血管分段,包括:将计算所得的Seg_VW1_Pointsm和Seg_VW1_Pointsm+1插入VW1_Points中,并以Seg_VW1_Pointsm为起点,Seg_VW1_Pointsm+1为终点,包含VW1_Points中的相应点,构建新的数据集Seg_VW1m;将计算所得的Seg_VW2_Pointsm和Seg_VW2_Pointsm+1插入VW2_Points中,并以Seg_VW2_Pointsm+1为起点,Seg_VW2_Pointsm为终点,包含VW2_Points中的相应点,构建新的数据集Seg_VW2m;将Seg_VW1m和Seg_VW2m合并构建一个新的数据集Seg_VWm,将Seg_VWm所构建的封闭区域作为相应的血管段。
这样,本实施例能够实现利用血管分段算法,将血管矢量图模型中的目标血管进行分段。
基于上述实施例的内容,在本实施例中,所述根据检测到的鼠标点击的点坐标,确定目标血管,包括:
定义目标血管的数据集,包括:血管模型type,血管开口直径Do和末端直径De,直径指数α;目标血管的中心线为CenterLine,CenterLine的点集合为CL_Points,CL_Points中的点数量为N,N≥2,CL_Pointsn(xn,yn)为CL_Points中的第n个点对应坐标;血管壁为VesselWall,点集合VW1_Points代表目标血管的中心线起点至终点左侧血管壁,点集合VW2_Points代表目标血管的中心线起点至终点右侧血管壁,VW1_Points和VW2_Points中点数量均为N,N≥2;
获取CL_Points中第1点到第2点的向量至第N-1点到第N点的向量
Figure BDA0002348289130000062
的集合
Figure BDA0002348289130000063
Figure BDA0002348289130000064
Figure BDA0002348289130000065
Figure BDA0002348289130000071
Figure BDA0002348289130000072
获取
Figure BDA0002348289130000073
的总长度L:
Figure BDA0002348289130000074
获取CL_Points中第n个点CL_Pointsn到第1个点CL_Points1的长度Ln
L1=0
Figure BDA0002348289130000075
获取Ln
Figure BDA0002348289130000076
的总长度L中的占比Rn=Ln÷L。
基于上述实施例的内容,在本实施例中,所述根据待添加的双点定位图例的类型,基于检测到的鼠标点击的第一点、第二点的坐标和目标血管的数据集,确定待添加的双点定位图例在目标血管的填充区域,包括:
定义检测到的鼠标点击的第一点的坐标为Pt0(x0,y0),寻找目标血管中与Pt0(x0,y0)距离最近的中心线CenterLine上的点定义为Pt1(x1,y1),Pt1(x1,y1)所在线段定义为
Figure BDA0002348289130000077
的起点为CL_PointsN1(xN1,yN1),
Figure BDA0002348289130000078
的末端为CL_PointsN1+1(xN1+1,yN1+1);
计算Pt1(x1,y1)与CL_PointsN1(xN1,yN1)的距离L1’:
Figure BDA0002348289130000079
计算
Figure BDA00023482891300000710
的模L2’:
Figure BDA00023482891300000711
计算Pt1(x1,y1)处的长度占总长度比例R1:
Figure BDA00023482891300000712
定义检测到的鼠标点击的第二点的坐标为Pt2(x2,y2),寻找目标血管中与Pt2(x2,y2)距离最近的中心线CenterLine上的点定义为Pt3(x3,y3),Pt3(x3,y3)所在线段定义为
Figure BDA00023482891300000713
的起点为CL_PointsN2(xN2,yN2),
Figure BDA00023482891300000714
的末端为CL_PointsN2+1(xN2+1,yN2+1),N1<N2;
计算Pt3(x3,y3)与CL_PointsN2(xN2,yN2)的距离L3’:
Figure BDA00023482891300000715
计算
Figure BDA00023482891300000716
的模L4’:
Figure BDA0002348289130000081
计算Pt3(x3,y3)处的长度占总长度比例R2:
Figure BDA0002348289130000082
判断Pt0(x0,y0)是位于CenterLine的左侧还是右侧,包括:将向量
Figure BDA0002348289130000083
命名为a向量,将点CL_PointsN1(xN1,yN1)至点Pt0(x0,y0)构成的向量命名为b向量,令T=|a×b|=(xN1+1-xN1)×(y0-yN1)-(yn1+1-yN1)×(x0-xN1);如果T>0,则确定Pt0(x0,y0)位于
Figure BDA0002348289130000084
左侧;如果T=0,则确定Pt0(x0,y0)位于
Figure BDA0002348289130000085
线上;如果T<0,则确定Pt0(x0,y0)位于
Figure BDA0002348289130000086
右侧;
计算Pt1(x1,y1)所在位置的血管直径D1=Do-(Do-De)×R1α,以及计算Pt3(x3,y3)所在位置的血管直径D2=Do-(Do-De)×R2α
计算Pt1(x1,y1)至Pt3(x3,y3)沿
Figure BDA0002348289130000087
的总长度L5’,若
Figure BDA0002348289130000088
则判定第二次鼠标点击无效,将再次检测到的鼠标点击作为检测到的鼠标点击的第二点直到
Figure BDA0002348289130000089
计算Pt1(x1,y1)所在位置对应血管壁的交点,包括:
以Pt1(x1,y1)点为圆心,半径为
Figure BDA00023482891300000810
的圆与
Figure BDA00023482891300000811
向量形成的射线的交点定义为Pta(xa,ya);Pta(xa,ya)绕Pt1(x1,y1)逆时针旋转θ角得到Ptb(xb,yb);其中,xb,yb的计算过程为:
Figure BDA00023482891300000812
Figure BDA00023482891300000813
xb=(xa-x1)×cosθ-(ya-y1)×sinθ+x1
yb=(xa-x1)×sinθ+(ya-y1)×cosθ+y1
Figure BDA00023482891300000814
将计算所得的Ptb(xb,yb)作为与VW1_Points的交点,定义为Pt4(x4,y4);取
Figure BDA0002348289130000091
将计算所得的Ptb(xb,yb)作为与VW2_Points的交点,定义为Pt5(x5,y5);
计算Pt3(x3,y3)所在位置对应血管壁的交点,包括:
以Pt3(x3,y3)点为圆心,半径为
Figure BDA0002348289130000092
的圆与
Figure BDA0002348289130000093
向量形成的射线的交点定义为Ptc(xc,yc);Ptc(xc,yc)绕Pt3(x3,y3)逆时针旋转θ角得到Ptd(xd,yd);其中,xd,yd的计算过程为:
Figure BDA0002348289130000094
Figure BDA0002348289130000095
xd=(xc-x3)×cosθ-(yc-y3)×sinθ+x3
yd=(xc-x3)×sinθ+(yc-y3)×cosθ+y3
Figure BDA0002348289130000096
将计算所得的Ptd(xd,yd)作为与VW1_Points的交点,定义为Pt6(x6,y6);取
Figure BDA0002348289130000097
将计算所得的Ptd(xd,yd)作为与VW2_Points的交点,定义为Pt7(x7,y7);
根据待添加的双点定位图例的类型,确定待添加的双点定位图例在目标血管的填充区域。
基于上述实施例的内容,在本实施例中,若待添加的双点定位图例的类型是简单图例,则根据待添加的双点定位图例的类型,确定待添加的双点定位图例在目标血管的填充区域,具体包括:
将Pt4(x4,y4)和Pt6(x6,y6)插入VW1_Points中,并以Pt4(x4,y4)为起点,Pt6(x6,y6)为终点,包含VW1_Points中的相应点,构建新的数据集Lesion_VW1;将Pt5(x5,y5)和Pt7(x7,y7)插入VW2_Points中,并以Pt7(x7,y7)为起点,Pt5(x5,y5)为终点,包含VW2_Points中的相应点,构建新的数据集Lesion_VW2;将Lesion_VW1和逆序Lesion_VW2合并构建一个新的数据集Lesion_VW,将Lesion_VW所构建的封闭区域,作为相应的填充区域;
若待添加的双点定位图例的类型是同心型病变图例,则根据待添加的双点定位图例的类型,确定待添加的双点定位图例在目标血管的填充区域,具体包括:
以Pt1(x1,y1),CL_PointsN1+1,CL_PointsN1+2…CL_PointsN2,Pt3(x3,y3)构建新的中心线LL_Points,定义LL_Pointsm为LL_Points中第m个点,LL_Points中各点对应的向量均为
Figure BDA0002348289130000101
m∈[1,N2-N1+2];
Figure BDA0002348289130000102
向量的起点为LL_Pointsm,终点为LL_Pointsm+1,m∈[1,N2-N1+1];
Figure BDA0002348289130000103
向量的起点为LL_PointsN2-N1+,终点为LL_PointsN2-N1+1
计算LL_Points中各点对应的血管直径,包括:Pt1(x1,y1)处的血管直径为D1=Do-(Do-De)×R1α;Pt3(x3,y3)处的血管直径为D2=Do-(Do-De)×R2α;CL_PointsN1+1,CL_PointsN1+2…CL_PointsN2处的血管直径为Dn=Do-(Do-De)×Rn α,n∈[N1+1,N2];由D1,Dn,D2构建血管直径集合LODm,m∈[1,N2-N1+2];
基于预先设置的狭窄率ρ,ρ∈[0,1],计算LL_Points中各点对应的病变内部的直径,包括:Pt1(x1,y1)处病变内部的直径为D3=D1×ρ;Pt3(x3,y3)处病变内部的直径为D4=D2×ρ;CL_PointsN1+1,CL_PointsN1+2…CL_PointsN2处的病变内部的直径为DIn=Dn×ρ,n∈[N1+1,N2];由D1,DIn,D2构建病变内部的直径集合LIDm,m∈[1,N2-N1+2];
构建两侧填充区域,包括:将两侧填充区域定义为4个点集合,包括左外侧点集合LC1_Points、左内侧点集合LC2_Points、右外侧点集合LC3_Points和右内侧点LC4_Points;融合LC1_Points和LC2_Points构建左侧填充区域点集合LCLeft_Points;融合LC3_Points和LC4_Points构建右侧填充区域点集合LCRight_Points;定义LC1_Pointsm为LC1_Points集合中的第m个点,LC2_Pointsm为LC2_Points集合中的第m个点,LC3_Pointsm为LC3_Points集合中的第m个点,LC4_Pointsm为LC4_Points集合中的第m个点;LC1_Pointsm,LC2_Pointsm,LC3_Pointsm,LC4_Pointsm对应的向量均为
Figure BDA0002348289130000104
m∈[1,N2-N1+2];
计算点LC1_Pointsm,点LC2_Pointsm,点LC3_Pointsm,点LC4_Pointsm,包括:定义
Figure BDA0002348289130000111
向量的起点Pt1(x1,y1),终点定义为Pt2(x2,y2);将Pt1(x1,y1)为圆心,半径为
Figure BDA0002348289130000112
的圆与
Figure BDA0002348289130000113
向量形成的射线的交点定义为Pte(xe,ye);Pte(xe,ye)绕Pt1(x1,y1)逆时针旋转θ角得到Ptf(xf,yf);其中,xf,yf的计算过程为:
Figure BDA0002348289130000114
Figure BDA0002348289130000115
xf=(xe-x1)×cosθ-(ye-y1)×sinθ+x1
yf=(xe-x1)×sinθ+(ye-y1)×cosθ+y1
Figure BDA0002348289130000116
Dim=LODm时,将计算所得的Ptf(xf,yf)作为LC1_Pointsm;取
Figure BDA0002348289130000117
Dim=LIDm,时,计算所得的Ptf(xf,yf)作为LC2_Pointsm;取
Figure BDA0002348289130000118
Dim=LODm时,计算所得的Ptf(xf,yf)作为LC3_Pointsm;取
Figure BDA0002348289130000119
Dim=LIDm时,计算所得的Ptf(xf,yf)作为LC4_Pointsm;由LC1_Points和反向的LC2_Points构建LCLeft_Points作为左侧填充区域;由LC3_Pointsm和反向的LC4_Pointsm构建LCRight_Points作为右侧填充区域。
若待添加的双点定位图例的类型是偏心型病变图例,则根据待添加的双点定位图例的类型,确定待添加的双点定位图例在目标血管的填充区域,具体包括:
以Pt1(x1,y1),CL_PointsN1+1,CL_PointsN1+2…CL_PointsN2,Pt3(x3,y3)构建新的中心线LL_Points,定义LL_Pointsm为LL_Points中第m个点,LL_Points中各点对应的向量均为
Figure BDA00023482891300001110
m∈[1,N2-N1+2];
Figure BDA00023482891300001111
向量的起点为LL_Pointsm,终点为LL_Pointsm+1,m∈[1,N2-N1+1];
Figure BDA0002348289130000121
向量的起点为LL_PointsN2-N1+2,终点为LL_PointsN2-N1+1
计算LL_Points中各点对应的血管直径,包括:Pt1(x1,y1)处的血管直径为D1=Do-(Do-De)×R1α;Pt3(x3,y3)处的血管直径为D2=Do-(Do-De)×R2α;CL_PointsN1+1,CL_PointsN1+2…CL_PointsN2处的血管直径为Dn=Do-(Do-De)×Rn α,n∈[N1+1,N2];由D1,Dn,D2构建血管直径集合LODm,m∈[1,N2-N1+2];
基于预先设置的狭窄率ρ,ρ∈[0,1],计算病变内部的直径,包括:
Figure BDA0002348289130000122
时:Pt1(x1,y1)处病变内部的直径为D3=D1×(1-2ρ),Pt3(x3,y3)处病变内部的直径为D4=D2×(1-2ρ);CL_PointsN1+1,CL_PointsN1+2…CL_PointsN2处的病变内部的直径为DIn=Dn×(1-2ρ),n∈[N1+1,N2];
Figure BDA0002348289130000127
时:Pt1(x1,y1)处病变内部的直径为D3=D1×(2ρ-1),Pt3(x3,y3)处病变内部的直径为D4=D2×(2ρ-1);CL_PointsN1+1,CL_PointsN1+2…CL_PointsN2处的病变内部的直径为DIn=Dn×(2ρ-1),n∈[N1+1,N2];由D1,DIn,D2构建病变内部的直径集合LIDm,m∈[1,N2-N1+2];
构建填充区域,包括:定义外侧点集合LC1_Points’内侧点集合LC2_Points’;融合LC1_Points’和LC2_Points’构建填充区域点集合LC_Points;定义LC1_Pointsm’为LC1_Points’集合中的第m个点,定义LC2_Pointsm’为LC2_Points’集合中的第m个点;LC1_Pointsm’,LC2_Pointsm’对应的向量均为
Figure BDA0002348289130000123
m∈[1,N2-N1+2];
计算点LC1_Pointsm’和点LC2_Pointsm’,包括:定义
Figure BDA0002348289130000124
向量的起点Pt1(x1,y1),终点定义为Pt2(x2,y2);将Pt1(x1,y1)为圆心,半径为
Figure BDA0002348289130000125
的圆与
Figure BDA0002348289130000126
向量形成的射线的交点定义为Ptg(xg,yg);Ptg(xg,yg)绕Pt1(x1,y1)逆时针旋转θ角得到Pth(xh,yh);其中,xh,yh的计算过程为:
Figure BDA0002348289130000131
Figure BDA0002348289130000132
xh=(xg-x1)×cosθ-(yg-y1)×sinθ+x1
yh=(xg-x1)×sinθ+(yg-y1)×cosθ+y1
当Pt0(x0,y0)位于中心线左侧,
Figure BDA0002348289130000133
时:取
Figure BDA0002348289130000134
Dim=LODm,将计算所得的Pth(xh,yh)作为LC1_Pointsm’;取
Figure BDA0002348289130000135
Dim=LIDm,将计算所得的Pth(xh,yh)作为LC2_Pointsm’;
当Pt0(x0,y0)位于中心线左侧,
Figure BDA0002348289130000136
时:取
Figure BDA0002348289130000137
Dim=LODm,将计算所得的Pth(xh,yh)作为LC1_Pointsm’;取
Figure BDA0002348289130000138
Dim=LIDm,将计算所得的Pth(xh,yh)作为LC2_Pointsm’;
当Pt0(x0,y0)位于中心线右侧,
Figure BDA0002348289130000139
时:取
Figure BDA00023482891300001310
Dim=LODm,将计算所得的Pth(xh,yh)作为LC1_Pointsm’;取
Figure BDA00023482891300001311
Dim=LIDm,将计算所得的Pth(xh,yh)作为LC2_Pointsm’;
当Pt0(x0,y0)位于中心线右侧,
Figure BDA00023482891300001312
时:取
Figure BDA00023482891300001313
Dim=LODm,将计算所得的Pth(xh,yh)作为LC1_Pointsm’;取
Figure BDA00023482891300001314
Dim=LIDm,将计算所得的Pth(xh,yh)作为LC2_Pointsm’;
由LC1_Points’和反向的LC2_Points’构建LC_Points作为填充区域;
若待添加的双点定位图例的类型是同心型瘤样扩张图例,则根据待添加的双点定位图例的类型,确定待添加的双点定位图例在目标血管的填充区域,具体包括:
以Pt1(x1,y1),CL_PointsN1+,CL_PointsN1+2…CL_PointsN2,Pt3(x3,y3)构建新的中心线LL_Points,定义LL_Pointsm为LL_Points中第m个点,LL_Points中各点对应的向量均为
Figure BDA0002348289130000141
m∈[1,N2-N1+2];
Figure BDA0002348289130000142
向量的起点为LL_Pointsm,终点为LL_Pointsm+1,m∈[1,N2-N1+1];
Figure BDA0002348289130000143
向量的起点为LL_PointsN2-N1+2,终点为LL_PointsN2-N1+1
计算Pt1(x1,y1)和Pt3(x3,y3)对应的血管直径,包括:Pt1(x1,y1)处的血管直径为D1=Do-(Do-De)×R1α;Pt3(x3,y3)处的血管直径为D2=Do-(Do-De)×R2α
基于预先设置的扩张率ρ’,ρ’∈[1,2],计算LL_Points中各点对应的瘤样扩张直径,包括:
Pt1(x1,y1)对应瘤样扩张直径D3=D1;
Pt3(x3,y3)对应瘤样扩张直径D4=D2;
当m为偶数时:
Figure BDA0002348289130000144
处的血管直径为
Figure BDA0002348289130000145
Figure BDA0002348289130000146
处对应的病变直径
Figure BDA0002348289130000147
从1至
Figure BDA0002348289130000148
的病变直径采用指数递增计算:RI为从LL_Pointsm起点至1至
Figure BDA0002348289130000149
点的长度与LL_Pointsm的1至
Figure BDA00023482891300001410
点的长度之比构建的数列,对应各点的病变直径DOn=D3-(D3-DI)×RIn α;从
Figure BDA00023482891300001411
至m的病变直径采用指数递减计算:RI为从LL_Pointsm中从
Figure BDA00023482891300001412
点开始至m点的长度与LL_Pointsm的从
Figure BDA00023482891300001413
至m的长度之比构建的数列,对应各点的病变直径DOn=DI-(DI-D4)×(1-RIn)α
当m为奇数时:
Figure BDA00023482891300001414
处的血管直径为
Figure BDA00023482891300001415
Figure BDA00023482891300001416
处对应的病变直径
Figure BDA00023482891300001417
从1至
Figure BDA00023482891300001418
的病变直径采用指数递增计算:RI为从LL_Pointsm起点至1至
Figure BDA00023482891300001419
点的长度与LL_Pointsm的1至
Figure BDA00023482891300001420
点的长度之比构建的数列,对应各点的病变直径DOn=D3-(D3-DI)×RIn α;从
Figure BDA00023482891300001421
至m的病变直径采用指数递减计算:RI为从LL_Pointsm中从
Figure BDA00023482891300001422
点开始至m点的长度与LL_Pointsm的从
Figure BDA0002348289130000151
至m的长度之比构建的数列,对应各点的病变直径DOn=DI-(DI-D4)×(1-RIn)α
构建两侧填充区域,包括:以LL_Points为基础,以计算的瘤样扩张各点病变直径计算瘤样扩张的外沿各点,将外沿各点和相应血管壁构建左右两侧两个填充区域。
这样,本实施例能够实现根据检测到的鼠标点击的点坐标,利用预设双点定位图例添加方法,将待添加的双点定位图例添加到分段后的目标血管中。
本实施例提供的血管矢量图模型中添加双点定位图例的方法,能够在计算机中生成的血管矢量图模型上添加双点定位图例,实现在计算机中生成的血管矢量图模型上描绘和标记异常所见。
基于相同的发明构思,本发明另一实施例提供了一种血管矢量图模型中添加双点定位图例的装置,参见图2,本实施例提供的血管矢量图模型中添加双点定位图例的装置,包括:血管分段模块21和添加模块22;其中:
所述血管分段模块21,用于利用血管分段算法,将血管矢量图模型中的目标血管进行分段,并给分段后的血管段命名;
所述添加模块22,用于根据检测到的鼠标点击的点坐标,利用预设双点定位图例添加方法,将待添加的双点定位图例添加到分段后的目标血管中。
需要说明的是,本实施例所述血管矢量图模型中添加双点定位图例的装置应用于处理器。
基于上述实施例的内容,在本实施例中,所述血管分段算法,可以包括:
定义目标血管的数据集,包括:血管模型type,血管开口直径Do和末端直径De,直径指数α;目标血管的中心线为CenterLine,CenterLine的点集合为CL_Points,CL_Points中的点数量为N,N≥2;血管壁为VesselWall,点集合VW1_Points代表目标血管的中心线起点至终点左侧血管壁,点集合VW2_Points代表目标血管的中心线起点至终点右侧血管壁,VW1_Points和VW2_Points中点数量均为N,N≥2;定义分段的数量:M,1≤M<100,M∈{自然数}且及每段累计占比为Xm,0<Xm<1,m∈[1,M];定义中心线CenterLine上对应分段的边界点集合Seg_Points,Seg_Points的点数量为M+1,其中Seg_Points1=CL_Points1,Seg_PointsM+1=CL_PointsN,Seg_Points1为Seg_Points中的第1个边界点,CL_Points1为CL_Points中的第1个点,Seg_PointsM+1为Seg_Points中的第M+1个边界点,CL_PointsN为CL_Points中的第N个点;
获取CL_Points中第1点到第2点的向量至第N-1点到第N点的向量vs[n]的集合
Figure BDA0002348289130000161
Figure BDA0002348289130000162
Figure BDA0002348289130000163
Figure BDA0002348289130000164
获取
Figure BDA0002348289130000165
的总长度L:
Figure BDA0002348289130000166
获取CL_Points中第n个点CL_Pointsn到第1个点CL_Points1的长度Ln
L1=0
Figure BDA0002348289130000167
获取Ln
Figure BDA0002348289130000168
的总长度L中的占比Rn=Ln÷L;
计算Seg_Points中的第m个边界点Seg_Pointsm、Seg_Points中的第m+1个边界点Seg_Pointsm+1及相应的与血管壁的交点,m∈[2,M-1]),包括:
寻找Rn≤Xm-1<Rn+1,定义N1=n,Xm-1对应点Seg_Pointsm所在中心线段的起点为CL_PointsN-1、末端为CL_PointsN;定义Xm-1对应点Seg_Pointsm为Pt1(x1,y1),所对应中心线段起点为Pt0(x0,y0),末端为Pt2(x2,y2);其中:
Figure BDA0002348289130000169
Figure BDA00023482891300001610
通过函数计算出中心线Pt1(x1,y1)点处血管直径D1=Do-(Do-De)×Xm-1 α;以Pt1(x1,y1)点为圆心,半径为
Figure BDA0002348289130000171
的圆与以CL_PointsN-1为起点和向量
Figure BDA0002348289130000172
构成的射线的交点定义为Pta(xa,ya);Pta(xa,ya)绕Pt1(x1,y1)逆时针旋转θ角得到Ptb(xb,yb);
Figure BDA0002348289130000173
时,将计算所得Ptb(xb,yb)作为与VW1_Points的交点,定义为Seg_VW1_Pointsm;取
Figure BDA0002348289130000174
将计算所得Ptb(xb,yb)作为与VW2_Points的交点,定义为Seg_VW2_Pointsm;进而计算得到Seg_Pointsm+1及相应的与血管壁的交点Seg_VW1_Pointsm+1,Seg_VW2_Pointsm+1,m∈[2,M-1]);
进行血管分段,包括:将计算所得的Seg_VW1_Pointsm和Seg_VW1_Pointsm+1插入VW1_Points中,并以Seg_VW1_Pointsm为起点,Seg_VW1_Pointsm+1为终点,包含VW1_Points中的相应点,构建新的数据集Seg_VW1m;将计算所得的Seg_VW2_Pointsm和Seg_VW2_Pointsm+1插入VW2_Points中,并以Seg_VW2_Pointsm+1为起点,Seg_VW2_Pointsm为终点,包含VW2_Points中的相应点,构建新的数据集Seg_VW2m;将Seg_VW1m和Seg_VW2m合并构建一个新的数据集Seg_VWm,将Seg_VWm所构建的封闭区域作为相应的血管段。
基于上述实施例的内容,在本实施例中,所述添加模块22,可具体用于根据检测到的鼠标点击的点坐标,确定目标血管;
根据待添加的双点定位图例的类型,基于检测到的鼠标点击的第一点、第二点的坐标和目标血管的数据集,确定待添加的双点定位图例在目标血管的填充区域;
将待添加的双点定位图例添加在分段后的目标血管所确定的填充区域。
基于上述实施例的内容,在本实施例中,所述根据检测到的鼠标点击的点坐标,确定目标血管,可以包括:
定义目标血管的数据集,包括:血管模型type,血管开口直径Do和末端直径De,直径指数α;目标血管的中心线为CenterLine,CenterLine的点集合为CL_Points,CL_Points中的点数量为N,N≥2,CL_Pointsn(xn,yn)为CL_Points中的第n个点对应坐标;血管壁为VesselWall,点集合VW1_Points代表目标血管的中心线起点至终点左侧血管壁,点集合VW2_Points代表目标血管的中心线起点至终点右侧血管壁,VW1_Points和VW2_Points中点数量均为N,N≥2;
获取CL_Points中第1点到第2点的向量至第N-1点到第N点的向量
Figure BDA0002348289130000181
的集合
Figure BDA0002348289130000182
Figure BDA0002348289130000183
Figure BDA0002348289130000184
Figure BDA0002348289130000185
获取
Figure BDA0002348289130000186
的总长度L:
Figure BDA0002348289130000187
获取CL_Points中第n个点CL_Pointsn到第1个点CL_Points1的长度Ln
L1=0
Figure BDA0002348289130000188
获取Ln
Figure BDA0002348289130000189
的总长度L中的占比Rn=Ln÷L。
基于上述实施例的内容,在本实施例中,所述根据待添加的双点定位图例的类型,基于检测到的鼠标点击的第一点、第二点的坐标和目标血管的数据集,确定待添加的双点定位图例在目标血管的填充区域,可以包括:
定义检测到的鼠标点击的第一点的坐标为Pt0(x0,y0),寻找目标血管中与Pt0(x0,y0)距离最近的中心线CenterLine上的点定义为Pt1(x1,y1),Pt1(x1,y1)所在线段定义为
Figure BDA00023482891300001810
的起点为CL_PointsN1(xN1,yN1),
Figure BDA00023482891300001811
的末端为CL_PointsN1+1(xN1+1,yN1+1);
计算Pt1(x1,y1)与CL_PointsN1(xN1,yN1)的距离L1’:
Figure BDA00023482891300001812
计算
Figure BDA00023482891300001813
的模L2’:
Figure BDA0002348289130000191
计算Pt1(x1,y1)处的长度占总长度比例R1:
Figure BDA0002348289130000192
定义检测到的鼠标点击的第二点的坐标为Pt2(x2,y2),寻找目标血管中与Pt2(x2,y2)距离最近的中心线CenterLine上的点定义为Pt3(x3,y3),Pt3(x3,y3)所在线段定义为
Figure BDA0002348289130000193
的起点为CL_PointsN2(xN2,yN2),
Figure BDA0002348289130000194
的末端为CL_PointsN2+1(xN2+1,yN2+1),N1<N2;
计算Pt3(x3,y3)与CL_PointsN2(xN2,yN2)的距离L3’:
Figure BDA0002348289130000195
计算
Figure BDA0002348289130000196
的模L4’:
Figure BDA0002348289130000197
计算Pt3(x3,y3)处的长度占总长度比例R2:
Figure BDA0002348289130000198
判断Pt0(x0,y0)是位于CenterLine的左侧还是右侧,包括:将向量
Figure BDA0002348289130000199
命名为a向量,将点CL_PointsN1(xN1,yN1)至点Pt0(x0,y0)构成的向量命名为b向量,令T=|a×b|=(xN1+1-xN1)×(y0-yN1)-(yn1+1-yN1)×(x0-xN1);如果T>0,则确定Pt0(x0,y0)位于
Figure BDA00023482891300001910
左侧;如果T=0,则确定Pt0(x0,y0)位于
Figure BDA00023482891300001911
线上;如果T<0,则确定Pt0(x0,y0)位于
Figure BDA00023482891300001912
右侧;
计算Pt1(x1,y1)所在位置的血管直径D1=Do-(Do-De)×R1α,以及计算Pt3(x3,y3)所在位置的血管直径D2=Do-(Do-De)×R2α
计算Pt1(x1,y1)至Pt3(x3,y3)沿
Figure BDA00023482891300001913
的总长度L5’,若
Figure BDA00023482891300001914
则判定第二次鼠标点击无效,将再次检测到的鼠标点击作为检测到的鼠标点击的第二点直到
Figure BDA00023482891300001915
计算Pt1(x1,y1)所在位置对应血管壁的交点,包括:
以Pt1(x1,y1)点为圆心,半径为
Figure BDA00023482891300001916
的圆与
Figure BDA00023482891300001917
向量形成的射线的交点定义为Pta(xa,ya);Pta(xa,ya)绕Pt1(x1,y1)逆时针旋转θ角得到Ptb(xb,yb);其中,xb,yb的计算过程为:
Figure BDA0002348289130000201
Figure BDA0002348289130000202
xb=(xa-x1)×cosθ-(ya-y1)×sinθ+x1
yb=(xa-x1)×sinθ+(ya-y1)×cosθ+y1
Figure BDA0002348289130000203
将计算所得的Ptb(xb,yb)作为与VW1_Points的交点,定义为Pt4(x4,y4);取
Figure BDA0002348289130000204
将计算所得的Ptb(xb,yb)作为与VW2_Points的交点,定义为Pt5(x5,y5);
计算Pt3(x3,y3)所在位置对应血管壁的交点,包括:
以Pt3(x3,y3)点为圆心,半径为
Figure BDA0002348289130000205
的圆与
Figure BDA0002348289130000206
向量形成的射线的交点定义为Ptc(xc,yc);Ptc(xc,yc)绕Pt3(x3,y3)逆时针旋转θ角得到Ptd(xd,yd);其中,xd,yd的计算过程为:
Figure BDA0002348289130000207
Figure BDA0002348289130000208
xd=(xc-x3)×cosθ-(yc-y3)×sinθ+x3
yd=(xc-x3)×sinθ+(yc-y3)×cosθ+y3
Figure BDA0002348289130000209
将计算所得的Ptd(xd,yd)作为与VW1_Points的交点,定义为Pt6(x6,y6);取
Figure BDA00023482891300002010
将计算所得的Ptd(xd,yd)作为与VW2_Points的交点,定义为Pt7(x7,y7);
根据待添加的双点定位图例的类型,确定待添加的双点定位图例在目标血管的填充区域。
在具体应用中,所述待添加的双点定位图例的类型,可以包括:简单图例、同心型病变图例、偏心型病变图例和同心型瘤样扩张图例。
基于上述实施例的内容,在本实施例中,若待添加的双点定位图例的类型是简单图例,则根据待添加的双点定位图例的类型,确定待添加的双点定位图例在目标血管的填充区域,可具体包括:
将Pt4(x4,y4)和Pt6(x6,y6)插入VW1_Points中,并以Pt4(x4,y4)为起点,Pt6(x6,y6)为终点,包含VW1_Points中的相应点,构建新的数据集Lesion_VW1;将Pt5(x5,y5)和Pt7(x7,y7)插入VW2_Points中,并以Pt7(x7,y7)为起点,Pt5(x5,y5)为终点,包含VW2_Points中的相应点,构建新的数据集Lesion_VW2;将Lesion_VW1和逆序Lesion_VW2合并构建一个新的数据集Lesion_VW,将Lesion_VW所构建的封闭区域,作为相应的填充区域;
若待添加的双点定位图例的类型是同心型病变图例,则根据待添加的双点定位图例的类型,确定待添加的双点定位图例在目标血管的填充区域,可具体包括:
以Pt1(x1,y1),CL_PointsN1+1,CL_PointsN1+2…CL_PointsN2,Pt3(x3,y3)构建新的中心线LL_Points,定义LL_Pointsm为LL_Points中第m个点,LL_Points中各点对应的向量均为
Figure BDA0002348289130000211
m∈[1,N2-N1+2];
Figure BDA0002348289130000212
向量的起点为LL_Pointsm,终点为LL_Pointsm+1,m∈[1,N2-N1+1];
Figure BDA0002348289130000213
向量的起点为LL_PointsN2-N1,终点为LL_PointsN2-N1+1
计算LL_Points中各点对应的血管直径,包括:Pt1(x1,y1)处的血管直径为D1=Do-(Do-De)×R1α;Pt3(x3,y3)处的血管直径为D2=Do-(Do-De)×R2α;CL_PointsN1+1,CL_PointsN1+2…CL_PointsN2处的血管直径为Dn=Do-(Do-De)×Rn α,n∈[N1+1,N2];由D1,Dn,D2构建血管直径集合LODm,m∈[1,N2-N1+2];
基于预先设置的狭窄率ρ,ρ∈[0,1],计算LL_Points中各点对应的病变内部的直径,包括:Pt1(x1,y1)处病变内部的直径为D3=D1×ρ;Pt3(x3,y3)处病变内部的直径为D4=D2×ρ;CL_PointsN1+1,CL_PointsN1+2…CL_PointsN2处的病变内部的直径为DIn=Dn×ρ,n∈[N1+1,N2];由D1,DIn,D2构建病变内部的直径集合LIDm,m∈[1,N2-N1+2];
构建两侧填充区域,包括:将两侧填充区域定义为4个点集合,包括左外侧点集合LC1_Points、左内侧点集合LC2_Points、右外侧点集合LC3_Points和右内侧点LC4_Points;融合LC1_Points和LC2_Points构建左侧填充区域点集合LCLeft_Points;融合LC3_Points和LC4_Points构建右侧填充区域点集合LCRight_Points;定义LC1_Pointsm为LC1_Points集合中的第m个点,LC2_Pointsm为LC2_Points集合中的第m个点,LC3_Pointsm为LC3_Points集合中的第m个点,LC4_Pointsm为LC4_Points集合中的第m个点;LC1_Pointsm,LC2_Pointsm,LC3_Pointsm,LC4_Pointsm对应的向量均为
Figure BDA0002348289130000221
m∈[1,N2-N1+2];
计算点LC1_Pointsm,点LC2_Pointsm,点LC3_Pointsm,点LC4_Pointsm,包括:定义
Figure BDA0002348289130000222
向量的起点Pt1(x1,y1),终点定义为Pt2(x2,y2);将Pt1(x1,y1)为圆心,半径为
Figure BDA0002348289130000223
的圆与
Figure BDA0002348289130000224
向量形成的射线的交点定义为Pte(xe,ye);Pte(xe,ye)绕Pt1(x1,y1)逆时针旋转θ角得到Ptf(xf,yf);其中,xf,yf的计算过程为:
Figure BDA0002348289130000225
Figure BDA0002348289130000226
xf=(xe-x1)×cosθ-(ye-y1)×sinθ+x1
yf=(xe-x1)×sinθ+(ye-y1)×cosθ+y1
Figure BDA0002348289130000227
Dim=LODm时,将计算所得的Ptf(xf,yf)作为LC1_Pointsm;取
Figure BDA0002348289130000231
Dim=LIDm,时,计算所得的Ptf(xf,yf)作为LC2_Pointsm;取
Figure BDA0002348289130000232
Dim=LODm时,计算所得的Ptf(xf,yf)作为LC3_Pointsm;取
Figure BDA0002348289130000233
Dim=LIDm时,计算所得的Ptf(xf,yf)作为LC4_Pointsm;由LC1_Points和反向的LC2_Points构建LCLeft_Points作为左侧填充区域;由LC3_Pointsm和反向的LC4_Pointsm构建LCRight_Points作为右侧填充区域。
若待添加的双点定位图例的类型是偏心型病变图例,则根据待添加的双点定位图例的类型,确定待添加的双点定位图例在目标血管的填充区域,可具体包括:
以Pt1(x1,y1),CL_PointsN1+1,CL_PointsN1+2…CL_PointsN2,Pt3(x3,y3)构建新的中心线LL_Points,定义LL_Pointsm为LL_Points中第m个点,LL_Points中各点对应的向量均为
Figure BDA0002348289130000234
m∈[1,N2-N1+2];
Figure BDA0002348289130000235
向量的起点为LL_Pointsm,终点为LL_Pointsm+1,m∈[1,N2-N1+1];
Figure BDA0002348289130000236
向量的起点为LL_PointsN2-N1,终点为LL_PointsN2-N1+1
计算LL_Points中各点对应的血管直径,包括:Pt1(x1,y1)处的血管直径为D1=Do-(Do-De)×R1α;Pt3(x3,y3)处的血管直径为D2=Do-(Do-De)×R2α;CL_PointsN1+1,CL_PointsN1+2…CL_PointsN2处的血管直径为Dn=Do-(Do-De)×Rn α,n∈[N1+1,N2];由D1,Dn,D2构建血管直径集合LODm,m∈[1,N2-N1+2];
基于预先设置的狭窄率ρ,ρ∈[0,1],计算病变内部的直径,包括:
Figure BDA0002348289130000237
时:Pt1(x1,y1)处病变内部的直径为D3=D1×(1-2ρ),Pt3(x3,y3)处病变内部的直径为D4=D2×(1-2ρ);CL_PointsN1+1,CL_PointsN1+2…CL_PointsN2处的病变内部的直径为DIn=Dn×(1-2ρ),n∈[N1+1,N2];
Figure BDA0002348289130000238
时:Pt1(x1,y1)处病变内部的直径为D3=D1×(2ρ-1),Pt3(x3,y3)处病变内部的直径为D4=D2×(2ρ-1);CL_PointsN1+1,CL_PointsN1+2…CL_PointsN2处的病变内部的直径为DIn=Dn×(2ρ-1),n∈[N1+1,N2];由D1,DIn,D2构建病变内部的直径集合LIDm,m∈[1,N2-N1+2];
构建填充区域,包括:定义外侧点集合LC1_Points’内侧点集合LC2_Points’;融合LC1_Points’和LC2_Points’构建填充区域点集合LC_Points;定义LC1_Pointsm’为LC1_Points’集合中的第m个点,定义LC2_Pointsm’为LC2_Points’集合中的第m个点;LC1_Pointsm’,LC2_Pointsm’对应的向量均为
Figure BDA0002348289130000241
m∈[1,N2-N1+2];
计算点LC1_Pointsm’和点LC2_Pointsm’,包括:定义
Figure BDA0002348289130000242
向量的起点Pt1(x1,y1),终点定义为Pt2(x2,y2);将Pt1(x1,y1)为圆心,半径为
Figure BDA0002348289130000243
的圆与
Figure BDA0002348289130000244
向量形成的射线的交点定义为Ptg(xg,yg);Ptg(xg,yg)绕Pt1(x1,y1)逆时针旋转θ角得到Pth(xh,yh);其中,xh,yh的计算过程为:
Figure BDA0002348289130000245
Figure BDA0002348289130000246
xh=(xg-x1)×cosθ-(yg-y1)×sinθ+x1
yh=(xg-x1)×sinθ+(yg-y1)×cosθ+y1
当Pt0(x0,y0)位于中心线左侧,
Figure BDA0002348289130000247
时:取
Figure BDA0002348289130000248
Dim=LODm,将计算所得的Pth(xh,yh)作为LC1_Pointsm’;取
Figure BDA0002348289130000249
Dim=LIDm,将计算所得的Pth(xh,yh)作为LC2_Pointsm’;
当Pt0(x0,y0)位于中心线左侧,
Figure BDA00023482891300002410
时:取
Figure BDA00023482891300002411
Dim=LODm,将计算所得的Pth(xh,yh)作为LC1_Pointsm’;取
Figure BDA00023482891300002412
Dim=LIDm,将计算所得的Pth(xh,yh)作为LC2_Pointsm’;
当Pt0(x0,y0)位于中心线右侧,
Figure BDA0002348289130000251
时:取
Figure BDA0002348289130000252
Dim=LODm,将计算所得的Pth(xh,yh)作为LC1_Pointsm’;取
Figure BDA0002348289130000253
Dim=LIDm,将计算所得的Pth(xh,yh)作为LC2_Pointsm’;
当Pt0(x0,y0)位于中心线右侧,
Figure BDA0002348289130000254
时:取
Figure BDA0002348289130000255
Dim=LODm,将计算所得的Pth(xh,yh)作为LC1_Pointsm’;取
Figure BDA0002348289130000256
Dim=LIDm,将计算所得的Pth(xh,yh)作为LC2_Pointsm’;
由LC1_Points’和反向的LC2_Points’构建LC_Points作为填充区域;
若待添加的双点定位图例的类型是同心型瘤样扩张图例,则根据待添加的双点定位图例的类型,确定待添加的双点定位图例在目标血管的填充区域,可具体包括:
以Pt1(x1,y1),CL_PointsN1+1,CL_PointsN1+2…CL_PointsN2,Pt3(x3,y3)构建新的中心线LL_Points,定义LL_Pointsm为LL_Points中第m个点,LL_Points中各点对应的向量均为
Figure BDA0002348289130000257
m∈[1,N2-N1+2];
Figure BDA0002348289130000258
向量的起点为LL_Pointsm,终点为LL_Pointsm+1,m∈[1,N2-N1+1];
Figure BDA0002348289130000259
向量的起点为LL_PointsN2-N1+2,终点为LL_PointsN2-N1
计算Pt1(x1,y1)和Pt3(x3,y3)对应的血管直径,包括:Pt1(x1,y1)处的血管直径为D1=Do-(Do-De)×R1α;Pt3(x3,y3)处的血管直径为D2=Do-(Do-De)×R2α
基于预先设置的扩张率ρ’,ρ’∈[1,2],计算LL_Points中各点对应的瘤样扩张直径,包括:
Pt1(x1,y1)对应瘤样扩张直径D3=D1;
Pt3(x3,y3)对应瘤样扩张直径D4=D2;
当m为偶数时:
Figure BDA00023482891300002510
处的血管直径为
Figure BDA00023482891300002511
Figure BDA00023482891300002512
处对应的病变直径
Figure BDA00023482891300002513
从1至
Figure BDA00023482891300002514
的病变直径采用指数递增计算:RI为从LL_Pointsm起点至1至
Figure BDA00023482891300002515
点的长度与LL_Pointsm的1至
Figure BDA00023482891300002516
点的长度之比构建的数列,对应各点的病变直径DOn=D3-(D3-DI)×RIn α;从
Figure BDA0002348289130000261
至m的病变直径采用指数递减计算:RI为从LL_Pointsm中从
Figure BDA0002348289130000262
点开始至m点的长度与LL_Pointsm的从
Figure BDA0002348289130000263
至m的长度之比构建的数列,对应各点的病变直径DOn=DI-(DI-D4)×(1-RIn)α
当m为奇数时:
Figure BDA0002348289130000264
处的血管直径为
Figure BDA0002348289130000265
Figure BDA0002348289130000266
处对应的病变直径
Figure BDA0002348289130000267
从1至
Figure BDA0002348289130000268
的病变直径采用指数递增计算:RI为从LL_Pointsm起点至1至
Figure BDA0002348289130000269
点的长度与LL_Pointsm的1至
Figure BDA00023482891300002610
点的长度之比构建的数列,对应各点的病变直径DOn=D3-(D3-DI)×RIn α;从
Figure BDA00023482891300002611
至m的病变直径采用指数递减计算:RI为从LL_Pointsm中从
Figure BDA00023482891300002612
点开始至m点的长度与LL_Pointsm的从
Figure BDA00023482891300002613
至m的长度之比构建的数列,对应各点的病变直径DOn=DI-(DI-D4)×(1-RIn)α
构建两侧填充区域,包括:以LL_Points为基础,以计算的瘤样扩张各点病变直径计算瘤样扩张的外沿各点,将外沿各点和相应血管壁构建左右两侧两个填充区域。
由于本实施例提供的血管矢量图模型中添加双点定位图例的装置可以用于执行上述实施例所述的血管矢量图模型中添加双点定位图例的方法,其工作原理和有益效果类似,故此处不再详述,具体内容可参见上述实施例的介绍。
基于相同的发明构思,本发明又一实施例提供了一种电子设备,参见图3,所述电子设备可以包括存储器302、处理器301、总线303及存储在存储器302上并可在处理器301上运行的计算机程序,其中,处理器301,存储器302通过总线303完成相互间的通信。所述处理器301执行所述计算机程序时实现上述方法的步骤,例如包括:利用血管分段算法,将血管矢量图模型中的目标血管进行分段,并给分段后的血管段命名;根据检测到的鼠标点击的点坐标,利用预设双点定位图例添加方法,将待添加的双点定位图例添加到分段后的目标血管中。
基于相同的发明构思,本发明又一实施例提供了一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方法的步骤,例如包括:利用血管分段算法,将血管矢量图模型中的目标血管进行分段,并给分段后的血管段命名;根据检测到的鼠标点击的点坐标,利用预设双点定位图例添加方法,将待添加的双点定位图例添加到分段后的目标血管中。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种血管矢量图模型中添加双点定位图例的方法,其特征在于,包括:
利用血管分段算法,将血管矢量图模型中的目标血管进行分段,并给分段后的血管段命名;
根据检测到的鼠标点击的点坐标,利用预设双点定位图例添加方法,将待添加的双点定位图例添加到分段后的目标血管中。
2.根据权利要求1所述的血管矢量图模型中添加双点定位图例的方法,其特征在于,所述血管分段算法,包括:
定义目标血管的数据集,包括:血管模型type,血管开口直径Do和末端直径De,直径指数α;目标血管的中心线为CenterLine,CenterLine的点集合为CL_Points,CL_Points中的点数量为N,N≥2;血管壁为VesselWall,点集合VW1_Points代表目标血管的中心线起点至终点左侧血管壁,点集合VW2_Points代表目标血管的中心线起点至终点右侧血管壁,VW1_Points和VW2_Points中点数量均为N,N≥2;定义分段的数量:M,1≤M<100,M∈{自然数}且及每段累计占比为Xm,0<Xm<1,m∈[1,M];定义中心线CenterLine上对应分段的边界点集合Seg_Points,Seg_Points的点数量为M+1,其中Seg_Points1=CL_Points1,Seg_PointsM+1=CL_PointsN,Seg_Points1为Seg_Points中的第1个边界点,CL_Points1为CL_Points中的第1个点,Seg_PointsM+1为Seg_Points中的第M+1个边界点,CL_PointsN为CL_Points中的第N个点;
获取CL_Points中第1点到第2点的向量至第N-1点到第N点的向量
Figure FDA0002348289120000011
Figure FDA0002348289120000012
Figure FDA0002348289120000013
Figure FDA0002348289120000021
获取
Figure FDA0002348289120000022
的总长度L:
Figure FDA0002348289120000023
获取CL_Points中第n个点CL_Pointsn到第1个点CL_Points1的长度Ln
L1=0
Figure FDA0002348289120000024
获取Ln
Figure FDA0002348289120000025
的总长度L中的占比Rn=Ln÷L;
计算Seg_Points中的第m个边界点Seg_Pointsm、Seg_Points中的第m+1个边界点Seg_Pointsm+1及相应的与血管壁的交点,m∈[2,M-1]),包括:
寻找Rn≤Xm-1<Rn+1,定义N1=n,Xm-1对应点Seg_Pointsm所在中心线段的起点为CL_PointsN-1、末端为CL_PointsN;定义Xm-1对应点Seg_Pointsm为Pt1(x1,y1),所对应中心线段起点为Pt0(x0,y0),末端为Pt2(x2,y2);其中:
Figure FDA0002348289120000026
Figure FDA0002348289120000027
通过函数计算出中心线Pt1(x1,y1)点处血管直径D1=Do-(Do-De)×Xm-1 α;以Pt1(x1,y1)点为圆心,半径为
Figure FDA0002348289120000028
的圆与以CL_PointsN-1为起点和向量
Figure FDA0002348289120000029
构成的射线的交点定义为Pta(xa,ya);Pta(xa,ya)绕Pt1(x1,y1)逆时针旋转θ角得到Ptb(xb,yb);
Figure FDA00023482891200000210
时,将计算所得Ptb(xb,yb)作为与VW1_Points的交点,定义为Seg_VW1_Pointsm;取
Figure FDA00023482891200000211
将计算所得Ptb(xb,yb)作为与VW2_Points的交点,定义为Seg_VW2_Pointsm;进而计算得到Seg_Pointsm+1及相应的与血管壁的交点Seg_VW1_Pointsm+1,Seg_VW2_Pointsm+1,m∈[2,M-1]);
进行血管分段,包括:将计算所得的Seg_VW1_Pointsm和Seg_VW1_Pointsm+1插入VW1_Points中,并以Seg_VW1_Pointsm为起点,Seg_VW1_Pointsm+1为终点,包含VW1_Points中的相应点,构建新的数据集Seg_VW1m;将计算所得的Seg_VW2_Pointsm和Seg_VW2_Pointsm+1插入VW2_Points中,并以Seg_VW2_Pointsm+1为起点,Seg_VW2_Pointsm为终点,包含VW2_Points中的相应点,构建新的数据集Seg_VW2m;将Seg_VW1m和Seg_VW2m合并构建一个新的数据集Seg_VWm,将Seg_VWm所构建的封闭区域作为相应的血管段。
3.根据权利要求1所述的血管矢量图模型中添加双点定位图例的方法,其特征在于,所述根据检测到的鼠标点击的点坐标,利用预设双点定位图例添加方法,将待添加的双点定位图例添加到分段后的目标血管中,包括:
根据检测到的鼠标点击的点坐标,确定目标血管;
根据待添加的双点定位图例的类型,基于检测到的鼠标点击的第一点、第二点的坐标和目标血管的数据集,确定待添加的双点定位图例在目标血管的填充区域;
将待添加的双点定位图例添加在分段后的目标血管所确定的填充区域。
4.根据权利要求3所述的血管矢量图模型中添加双点定位图例的方法,其特征在于,所述根据检测到的鼠标点击的点坐标,确定目标血管,包括:
定义目标血管的数据集,包括:血管模型type,血管开口直径Do和末端直径De,直径指数α;目标血管的中心线为CenterLine,CenterLine的点集合为CL_Points,CL_Points中的点数量为N,N≥2,CL_Pointsn(xn,yn)为CL_Points中的第n个点对应坐标;血管壁为VesselWall,点集合VW1_Points代表目标血管的中心线起点至终点左侧血管壁,点集合VW2_Points代表目标血管的中心线起点至终点右侧血管壁,VW1_Points和VW2_Points中点数量均为N,N≥2;
获取CL_Points中第1点到第2点的向量至第N-1点到第N点的向量
Figure FDA0002348289120000031
Figure FDA0002348289120000032
Figure FDA0002348289120000033
Figure FDA0002348289120000041
获取
Figure FDA0002348289120000042
的总长度L:
Figure FDA0002348289120000043
获取CL_Points中第n个点CL_Pointsn到第1个点CL_Points1的长度Ln
L1=0
Figure FDA0002348289120000044
获取Ln
Figure FDA0002348289120000045
的总长度L中的占比Rn=Ln÷L。
5.根据权利要求4所述的血管矢量图模型中添加双点定位图例的方法,其特征在于,所述根据待添加的双点定位图例的类型,基于检测到的鼠标点击的第一点、第二点的坐标和目标血管的数据集,确定待添加的双点定位图例在目标血管的填充区域,包括:
定义检测到的鼠标点击的第一点的坐标为Pt0(x0,y0),寻找目标血管中与Pt0(x0,y0)距离最近的中心线CenterLine上的点定义为Pt1(x1,y1),Pt1(x1,y1)所在线段定义为
Figure FDA0002348289120000046
的起点为CL_PointsN1(xN1,yN1),
Figure FDA0002348289120000047
的末端为CL_PointsN1+1(xN1+1,yN1+1);
计算Pt1(x1,y1)与CL_PointsN1(xN1,yN1)的距离L1’:
Figure FDA0002348289120000048
计算
Figure FDA0002348289120000049
的模L2’:
Figure FDA00023482891200000410
计算Pt1(x1,y1)处的长度占总长度比例R1:
Figure FDA00023482891200000411
定义检测到的鼠标点击的第二点的坐标为Pt2(x2,y2),寻找目标血管中与Pt2(x2,y2)距离最近的中心线CenterLine上的点定义为Pt3(x3,y3),Pt3(x3,y3)所在线段定义为
Figure FDA00023482891200000412
的起点为CL_PointsN2(xN2,yN2),
Figure FDA00023482891200000413
的末端为CL_PointsN2+1(xN2+1,yN2+1),N1<N2;
计算Pt3(x3,y3)与CL_PointsN2(xN2,yN2)的距离L3’:
Figure FDA00023482891200000414
计算
Figure FDA00023482891200000415
的模L4’:
Figure FDA0002348289120000051
计算Pt3(x3,y3)处的长度占总长度比例R2:
Figure FDA0002348289120000052
判断Pt0(x0,y0)是位于CenterLine的左侧还是右侧,包括:将向量
Figure FDA0002348289120000053
命名为a向量,将点CL_PointsN1(xN1,yN1)至点Pt0(x0,y0)构成的向量命名为b向量,令T=|a×b|=(xN1+1-xN1)×(y0-yN1)-(yn1+1-yN1)×(x0-xN1);如果T>0,则确定Pt0(x0,y0)位于
Figure FDA0002348289120000054
左侧;如果T=0,则确定Pt0(x0,y0)位于
Figure FDA0002348289120000055
线上;如果T<0,则确定Pt0(x0,y0)位于
Figure FDA0002348289120000056
右侧;
计算Pt1(x1,y1)所在位置的血管直径D1=Do-(Do-De)×R1α,以及计算Pt3(x3,y3)所在位置的血管直径D2=Do-(Do-De)×R2α
计算Pt1(x1,y1)至Pt3(x3,y3)沿
Figure FDA0002348289120000057
的总长度L5’,若
Figure FDA0002348289120000058
则判定第二次鼠标点击无效,将再次检测到的鼠标点击作为检测到的鼠标点击的第二点直到
Figure FDA0002348289120000059
计算Pt1(x1,y1)所在位置对应血管壁的交点,包括:
以Pt1(x1,y1)点为圆心,半径为
Figure FDA00023482891200000510
的圆与
Figure FDA00023482891200000511
向量形成的射线的交点定义为Pta(xa,ya);Pta(xa,ya)绕Pt1(x1,y1)逆时针旋转θ角得到Ptb(xb,yb);其中,xb,yb的计算过程为:
Figure FDA00023482891200000512
Figure FDA00023482891200000513
xb=(xa-x1)×cosθ-(ya-y1)×sinθ+x1
yb=(xa-x1)×sinθ+(ya-y1)×cosθ+y1
Figure FDA00023482891200000514
将计算所得的Ptb(xb,yb)作为与VW1_Points的交点,定义为Pt4(x4,y4);取
Figure FDA0002348289120000061
将计算所得的Ptb(xb,yb)作为与VW2_Points的交点,定义为Pt5(x5,y5);
计算Pt3(x3,y3)所在位置对应血管壁的交点,包括:
以Pt3(x3,y3)点为圆心,半径为
Figure FDA0002348289120000062
的圆与
Figure FDA0002348289120000063
向量形成的射线的交点定义为Ptc(xc,yc);Ptc(xc,yc)绕Pt3(x3,y3)逆时针旋转θ角得到Ptd(xd,yd);其中,xd,yd的计算过程为:
Figure FDA0002348289120000064
Figure FDA0002348289120000065
xd=(xc-x3)×cosθ-(yc-y3)×sinθ+x3
yd=(xc-x3)×sinθ+(yc-y3)×cosθ+y3
Figure FDA0002348289120000066
将计算所得的Ptd(xd,yd)作为与VW1_Points的交点,定义为Pt6(x6,y6);取
Figure FDA0002348289120000067
将计算所得的Ptd(xd,yd)作为与VW2_Points的交点,定义为Pt7(x7,y7);
根据待添加的双点定位图例的类型,确定待添加的双点定位图例在目标血管的填充区域。
6.根据权利要求5所述的血管矢量图模型中添加双点定位图例的方法,其特征在于,所述待添加的双点定位图例的类型,包括:简单图例、同心型病变图例、偏心型病变图例和同心型瘤样扩张图例。
7.根据权利要求6所述的血管矢量图模型中添加双点定位图例的方法,其特征在于,若待添加的双点定位图例的类型是简单图例,则根据待添加的双点定位图例的类型,确定待添加的双点定位图例在目标血管的填充区域,具体包括:
将Pt4(x4,y4)和Pt6(x6,y6)插入VW1_Points中,并以Pt4(x4,y4)为起点,Pt6(x6,y6)为终点,包含VW1_Points中的相应点,构建新的数据集Lesion_VW1;将Pt5(x5,y5)和Pt7(x7,y7)插入VW2_Points中,并以Pt7(x7,y7)为起点,Pt5(x5,y5)为终点,包含VW2_Points中的相应点,构建新的数据集Lesion_VW2;将Lesion_VW1和逆序Lesion_VW2合并构建一个新的数据集Lesion_VW,将Lesion_VW所构建的封闭区域,作为相应的填充区域;
若待添加的双点定位图例的类型是同心型病变图例,则根据待添加的双点定位图例的类型,确定待添加的双点定位图例在目标血管的填充区域,具体包括:
以Pt1(x1,y1),CL_PointsN1+1,CL_PointsN1+2…CL_PointsN2,Pt3(x3,y3)构建新的中心线LL_Points,定义LL_Pointsm为LL_Points中第m个点,LL_Points中各点对应的向量均为
Figure FDA0002348289120000071
m∈[1,N2-N1+2];
Figure FDA0002348289120000072
向量的起点为LL_Pointsm,终点为LL_Pointsm+1,m∈[1,N2-N1+1];
Figure FDA0002348289120000073
向量的起点为LL_PointsN2-N1+2,终点为LL_PointsN2-N1+1
计算LL_Points中各点对应的血管直径,包括:Pt1(x1,y1)处的血管直径为D1=Do-(Do-De)×R1α;Pt3(x3,y3)处的血管直径为D2=Do-(Do-De)×R2α;CL_PointsN1+1,CL_PointsN1+2…CL_PointsN2处的血管直径为Dn=Do-(Do-De)×Rn α,n∈[N1+1,N2];由D1,Dn,D2构建血管直径集合LODn,m∈[1,N2-N1+2];
基于预先设置的狭窄率ρ,ρ∈[0,1],计算LL_Points中各点对应的病变内部的直径,包括:Pt1(x1,y1)处病变内部的直径为D3=D1×ρ;Pt3(x3,y3)处病变内部的直径为D4=D2×ρ;CL_PointsN1+1,CL_PointsN1+2…CL_PointsN2处的病变内部的直径为DIn=Dn×ρ,n∈[N1+1,N2];由D1,DIn,D2构建病变内部的直径集合LIDm,m∈[1,N2-N1+2];
构建两侧填充区域,包括:将两侧填充区域定义为4个点集合,包括左外侧点集合LC1_Points、左内侧点集合LC2_Points、右外侧点集合LC3_Points和右内侧点LC4_Points;融合LC1_Points和LC2_Points构建左侧填充区域点集合LCLeft_Points;融合LC3_Points和LC4_Points构建右侧填充区域点集合LCRight_Points;定义LC1_Pointsm为LC1_Points集合中的第m个点,LC2_Pointsm为LC2_Points集合中的第m个点,LC3_Pointsm为LC3_Points集合中的第m个点,LC4_Pointsm为LC4_Points集合中的第m个点;LC1_Pointsm,LC2_Pointsm,LC3_Pointsm,LC4_Pointsm对应的向量均为
Figure FDA00023482891200000810
m∈[1,N2-N1+2];
计算点LC1_Pointsm,点LC2_Pointsm,点LC3_Pointsm,点LC4_Pointsm,包括:定义
Figure FDA0002348289120000081
向量的起点Pt1(x1,y1),终点定义为Pt2(x2,y2);将Pt1(x1,y1)为圆心,半径为
Figure FDA0002348289120000082
的圆与
Figure FDA0002348289120000083
向量形成的射线的交点定义为Pte(xe,ye);Pte(xe,ye)绕Pt1(x1,y1)逆时针旋转θ角得到Ptf(xf,yf);其中,xf,yf的计算过程为:
Figure FDA0002348289120000084
Figure FDA0002348289120000085
xf=(xe-x1)×cosθ-(ye-y1)×sinθ+x1
yf=(xe-x1)×sinθ+(ye-y1)×cosθ+y1
Figure FDA0002348289120000086
Dim=LODm时,将计算所得的Ptf(xf,yf)作为LC1_Pointsm;取
Figure FDA0002348289120000087
Dim=LIDm,时,计算所得的Ptf(xf,yf)作为LC2_Pointsm;取
Figure FDA0002348289120000088
Dim=LODm时,计算所得的Ptf(xf,yf)作为LC3_Pointsm;取
Figure FDA0002348289120000089
Dim=LIDm时,计算所得的Ptf(xf,yf)作为LC4_Pointsm;由LC1_Points和反向的LC2_Points构建LCLeft_Points作为左侧填充区域;由LC3_Pointsm和反向的LC4_Pointsm构建LCRight_Points作为右侧填充区域。
若待添加的双点定位图例的类型是偏心型病变图例,则根据待添加的双点定位图例的类型,确定待添加的双点定位图例在目标血管的填充区域,具体包括:
以Pt1(x1,y1),CL_PointsN1+1,CL_PointsN1+2…CL_PointsN2,Pt3(x3,y3)构建新的中心线LL_Points,定义LL_Pointsm为LL_Points中第m个点,LL_Points中各点对应的向量均为
Figure FDA0002348289120000091
m∈[1,N2-N1+2];
Figure FDA0002348289120000092
向量的起点为LL_Pointsm,终点为LL_Pointsm+1,m∈[1,N2-N1+1];
Figure FDA0002348289120000093
向量的起点为LL_PointsN2-N1+2,终点为LL_PointsN2-N1+1
计算LL_Points中各点对应的血管直径,包括:Pt1(x1,y1)处的血管直径为D1=Do-(Do-De)×R1α;Pt3(x3,y3)处的血管直径为D2=Do-(Do-De)×R2α;CL_PointsN1+1,CL_PointsN1+2…CL_PointsN2处的血管直径为Dn=Do-(Do-De)×Rn α,n∈[N1+1,N2];由D1,Dn,D2构建血管直径集合LODm,m∈[1,N2-N1+2];
基于预先设置的狭窄率ρ,ρ∈[0,1],计算病变内部的直径,包括:
Figure FDA0002348289120000094
时:Pt1(x1,y1)处病变内部的直径为D3=D1×(1-2ρ),Pt3(x3,y3)处病变内部的直径为D4=D2×(1-2ρ);CL_PointsN1+1,CL_PointsN1+2…CL_PointsN2处的病变内部的直径为DIn=Dn×(1-2ρ),n∈[N1+1,N2];
Figure FDA0002348289120000095
时:Pt1(x1,y1)处病变内部的直径为D3=D1×(2ρ-1),Pt3(x3,y3)处病变内部的直径为D4=D2×(2ρ-1);CL_PointsN1+1,CL_PointsN1+2…CL_PointsN2处的病变内部的直径为DIn=Dn×(2ρ-1),n∈[N1+1,N2];由D1,DIn,D2构建病变内部的直径集合LIDm,m∈[1,N2-N1+2];
构建填充区域,包括:定义外侧点集合LC1_Points’内侧点集合LC2_Points’;融合LC1_Points’和LC2_Points’构建填充区域点集合LC_Points;定义LC1_Pointsm’为LC1_Points’集合中的第m个点,定义LC2_Pointsm’为LC2_Points’集合中的第m个点;LC1_Pointsm’,LC2_Pointsm’对应的向量均为
Figure FDA0002348289120000096
m∈[1,N2-N1+2];
计算点LC1_Pointsm’和点LC2_Pointsm’,包括:定义
Figure FDA0002348289120000101
向量的起点Pt1(x1,y1),终点定义为Pt2(x2,y2);将Pt1(x1,y1)为圆心,半径为
Figure FDA0002348289120000102
的圆与
Figure FDA0002348289120000103
向量形成的射线的交点定义为Ptg(xg,yg);Ptg(xg,yg)绕Pt1(x1,y1)逆时针旋转θ角得到Pth(xh,yh);其中,xh,yh的计算过程为:
Figure FDA0002348289120000104
Figure FDA0002348289120000105
xh=(xg-x1)×cosθ-(yg-y1)×sinθ+x1
yh=(xg-x1)×sinθ+(yg-y1)×cosθ+y1
当Pt0(x0,y0)位于中心线左侧,
Figure FDA0002348289120000106
时:取
Figure FDA0002348289120000107
Dim=LODm,将计算所得的Pth(xh,yh)作为LC1_Pointsm’;取
Figure FDA0002348289120000108
Dim=LIDm,将计算所得的Pth(xh,yh)作为LC2_Pointsm’;
当Pt0(x0,y0)位于中心线左侧,
Figure FDA0002348289120000109
时:取
Figure FDA00023482891200001010
Dim=LODm,将计算所得的Pth(xh,yh)作为LC1_Pointsm’;取
Figure FDA00023482891200001011
Dim=LIDm,将计算所得的Pth(xh,yh)作为LC2_Pointsm’;
当Pt0(x0,y0)位于中心线右侧,
Figure FDA00023482891200001012
时:取
Figure FDA00023482891200001013
Dim=LODm,将计算所得的Pth(xh,yh)作为LC1_Pointsm’;取
Figure FDA00023482891200001014
Dim=LIDm,将计算所得的Pth(xh,yh)作为LC2_Pointsm’;
当Pt0(x0,y0)位于中心线右侧,
Figure FDA00023482891200001015
时:取
Figure FDA00023482891200001016
Dim=LODm,将计算所得的Pth(xh,yh)作为LC1_Pointsm’;取
Figure FDA00023482891200001017
Dim=LIDm,将计算所得的Pth(xh,yh)作为LC2_Pointsm’;
由LC1_Points’和反向的LC2_Points’构建LC_Points作为填充区域;
若待添加的双点定位图例的类型是同心型瘤样扩张图例,则根据待添加的双点定位图例的类型,确定待添加的双点定位图例在目标血管的填充区域,具体包括:
以Pt1(x1,y1),CL_PointsN1+1,CL_PointsN1+2…CL_PointsN2,Pt3(x3,y3)构建新的中心线LL_Points,定义LL_Pointsm为LL_Points中第m个点,LL_Points中各点对应的向量均为
Figure FDA0002348289120000111
m∈[1,N2-N1+2];
Figure FDA0002348289120000112
向量的起点为LL_Pointsm,终点为LL_Pointsm+1,m∈[1,N2-N1+1];
Figure FDA0002348289120000113
向量的起点为LL_PointsN2-N1+2,终点为LL_PointsN2-N1
计算Pt1(x1,y1)和Pt3(x3,y3)对应的血管直径,包括:Pt1(x1,y1)处的血管直径为D1=Do-(Do-De)×R1α;Pt3(x3,y3)处的血管直径为D2=Do-(Do-De)×R2α
基于预先设置的扩张率ρ’,ρ’∈[1,2],计算LL_Points中各点对应的瘤样扩张直径,包括:
Pt1(x1,y1)对应瘤样扩张直径D3=D1;
Pt3(x3,y3)对应瘤样扩张直径D4=D2;
当m为偶数时:
Figure FDA0002348289120000114
处的血管直径为
Figure FDA0002348289120000115
Figure FDA0002348289120000116
处对应的病变直径
Figure FDA0002348289120000117
从1至
Figure FDA0002348289120000118
的病变直径采用指数递增计算:RI为从LL_Pointsm起点至1至
Figure FDA0002348289120000119
点的长度与LL_Pointsm的1至
Figure FDA00023482891200001110
点的长度之比构建的数列,对应各点的病变直径DOn=D3-(D3-DI)×RIn α;从
Figure FDA00023482891200001111
至m的病变直径采用指数递减计算:RI为从LL_Pointsm中从
Figure FDA00023482891200001112
点开始至m点的长度与LL_Pointsn的从
Figure FDA00023482891200001113
至m的长度之比构建的数列,对应各点的病变直径DOn=DI-(DI-D4)×(1-RIn)α
当m为奇数时:
Figure FDA00023482891200001114
处的血管直径为
Figure FDA00023482891200001115
Figure FDA00023482891200001116
处对应的病变直径
Figure FDA00023482891200001117
从1至
Figure FDA00023482891200001118
的病变直径采用指数递增计算:RI为从LL_Pointsm起点至1至
Figure FDA0002348289120000121
点的长度与LL_Pointsm的1至
Figure FDA0002348289120000122
点的长度之比构建的数列,对应各点的病变直径DOn=D3-(D3-DI)×RIn α;从
Figure FDA0002348289120000123
至m的病变直径采用指数递减计算:RI为从LL_Pointsm中从
Figure FDA0002348289120000124
点开始至m点的长度与LL_Pointsm的从
Figure FDA0002348289120000125
至m的长度之比构建的数列,对应各点的病变直径DOn=DI-(DI-D4)×(1-RIn)α
构建两侧填充区域,包括:以LL_Points为基础,以计算的瘤样扩张各点病变直径计算瘤样扩张的外沿各点,将外沿各点和相应血管壁构建左右两侧两个填充区域。
8.一种血管矢量图模型中添加双点定位图例的装置,其特征在于,包括:
血管分段模块,用于利用血管分段算法,将血管矢量图模型中的目标血管进行分段,并给分段后的血管段命名;
添加模块,用于根据检测到的鼠标点击的点坐标,利用预设双点定位图例添加方法,将待添加的双点定位图例添加到分段后的目标血管中。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述方法的步骤。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至7任一项所述方法的步骤。
CN201911404550.9A 2019-12-30 2019-12-30 血管矢量图模型中添加双点定位图例的方法及装置 Pending CN111192347A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911404550.9A CN111192347A (zh) 2019-12-30 2019-12-30 血管矢量图模型中添加双点定位图例的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911404550.9A CN111192347A (zh) 2019-12-30 2019-12-30 血管矢量图模型中添加双点定位图例的方法及装置

Publications (1)

Publication Number Publication Date
CN111192347A true CN111192347A (zh) 2020-05-22

Family

ID=70709719

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911404550.9A Pending CN111192347A (zh) 2019-12-30 2019-12-30 血管矢量图模型中添加双点定位图例的方法及装置

Country Status (1)

Country Link
CN (1) CN111192347A (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101203890A (zh) * 2005-06-24 2008-06-18 美国医软科技公司 交互式肝病诊断方法
CN101809628A (zh) * 2007-09-26 2010-08-18 皇家飞利浦电子股份有限公司 解剖数据的可视化
CN104504757A (zh) * 2014-12-15 2015-04-08 北京工业大学 一种基于限制点集方法的血管壁网格划分方法
CN108717695A (zh) * 2018-04-25 2018-10-30 数坤(北京)网络科技有限公司 心脏冠脉血管自动分段命名方法
US10140733B1 (en) * 2017-09-13 2018-11-27 Siemens Healthcare Gmbh 3-D vessel tree surface reconstruction

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101203890A (zh) * 2005-06-24 2008-06-18 美国医软科技公司 交互式肝病诊断方法
CN101809628A (zh) * 2007-09-26 2010-08-18 皇家飞利浦电子股份有限公司 解剖数据的可视化
CN104504757A (zh) * 2014-12-15 2015-04-08 北京工业大学 一种基于限制点集方法的血管壁网格划分方法
US10140733B1 (en) * 2017-09-13 2018-11-27 Siemens Healthcare Gmbh 3-D vessel tree surface reconstruction
CN108717695A (zh) * 2018-04-25 2018-10-30 数坤(北京)网络科技有限公司 心脏冠脉血管自动分段命名方法

Similar Documents

Publication Publication Date Title
EP2880632B1 (en) Temporal dependencies in dependency graphs
US20080316202A1 (en) Direct manipulation of subdivision surfaces using a graphics processing unit
US20150347371A1 (en) User interfaces for displaying relationships between cells in a grid
CN109544658B (zh) 地图的渲染方法和装置、存储介质、电子装置
SA03240155B1 (ar) نظام وطريقة لترقيم صور متعددة الابعاد multi-dimensionalبطريقة مهايئة
CN111145313A (zh) 血管矢量图模型中添加单点定位图例的方法及装置
CN113160189A (zh) 血管中心线提取方法、装置、设备及存储介质
Palomar et al. A novel method for planning liver resections using deformable Bézier surfaces and distance maps
CN111192347A (zh) 血管矢量图模型中添加双点定位图例的方法及装置
US10204431B1 (en) Polygon labeling by dominant shapes
CN110327114B (zh) 一种路线规划方法、终端及存储介质
Kanitsar et al. Diagnostic relevant visualization of vascular structures
CN110852138B (zh) 一种图像数据中物体的标注方法和装置
CN116109767A (zh) 三维场景的渲染方法、图像处理器、电子设备及存储介质
CN111444673B (zh) 文字弯曲变形方法、介质、设备及装置
US20220401152A1 (en) Method for visual support in navigation and system
JP2020112810A (ja) 更新地図配信装置、及びナビゲーション装置
JP7151147B2 (ja) コンピュータプログラム、情報処理方法及びコンピュータ
Haxthausen et al. Catheter pose-dependent virtual angioscopy images visualized on augmented reality glasses
CN111179416B (zh) 血管矢量图模型生成方法及装置
CN116204104B (zh) 几何图形的动态展示方法、装置、终端及存储介质
Vöth et al. 3D reconstruction of stents and guidewires in an anthropomorphic phantom from three x-ray projections
JP2004046800A (ja) ディスプレイコントローラ、画像表示装置、画像描画方法、及び画像充填方法
CN111381677B (zh) 一种目标选择方法、装置、设备及可读存储介质
CN116721208A (zh) 一种管状器官三维面数据重建方法、装置及电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20200522