专利名称:微细通道内两相流的三维可视化系统及方法
技术领域:
本发明涉及的是一种图像处理技术领域的可视化系统及方法,具体是一种微 细通道内两相流的三维可视化系统及方法。
背景技术:
微细通道内的相变换热在航天,电子芯片冷却,化工,医疗等领域有着广泛 的应用,人们对其的水力特性和换热特性进行了大量的实验研究。为了揭示两相 流的机理,人们采用可视化系统从微观层面上,从两相流流型角度进行研究。从 而使其获得更广泛的应用和更大的价值。现有的微细通道内两相流的可视化系统 布光方式主要有两种背光和同轴光。两者适用于不同型式的微细通道,前者适 用于单根微细玻璃管,玻璃管实验段放置于光源和相机之间;后者主要适用于在 硅片,金属等基材上蚀刻的微细通道组,光源与相机置于实验段的同一侧,通过微 细通道组上表面的一层玻璃片对通道内的两相流进行可视化。然而这两种方法都 只能得到流道内一个平面的信息,而空间上许多信息都缺失了,这在一定程度上 限制了人们对两相流的研究。人们尝试采用三维重建技术来最终实现微通道两相 流的三维可视化。三维重建技术是通过获取多个平面信息,采用一定的算法来重 构出三维图像。在医疗影像技术如CT, MRI, PET等有着广泛的应用。
经过对现有相关文献进行检索发现,中国专利号200810026899.9,名称为 三维可视化的方法、装置。该发明提出一种三维可视化方法,对计算机X射线断 层扫描图像进行预处理,突出感兴趣的区域的人体组织图像,进行三维重建,获 取三维图像,这种三维重建技术实际上是一种静态三维可视化技术,因为要在同 一时刻获取足够多的不同平面的信息存在着很大的技术难题,限制其在动态两相 流研究中的应用。
文献检索还发现,Reinecke N.等在《Chem. Eng. Technol.》(化学工程技 术)1998年第21期p. 7-18上发表的"Tomographic Measurement Techniques — Visualization of Multiphase Flows"(层析测量技术—多相流的可l见4t),该文提出釆用x射线层析成像等技术用于多相流的可视化研究,但是由于该方法在空间 和时间上分辨率不够,只能用于定常流动的研究。
文献检索还发现,0kawa T.等在《Nuclear Engineering and Design》(核工 程与设计)2005年第235期p. 1149-1161发表"Bubble rise characteristics after the departure from a nucleation site in vertical upflow boiling of subcooled water",该文提出采用同步运行的两台高速相机来研究内径为20mm的竖直上升圆 管内的气泡动力学特征,他们同时得到了两相流正面和侧面的信息,可是文中并 未提到两相流的三维重建,且此种结构较为复杂。
发明内容
本发明的目的在于针对现有技术的不足,提出了一种微细通道内两相流的三 维可视化系统,从正面和侧面两个视角同时获取两个面的信息,并利用所获取的 信息实现三维重建,且结构较为简单。
本发明是通过以下技术方案实现的
本发明所涉及的一种微细通道内两相流的三维可视化系统包括 一个相机, 一个光源, 一只微细通道透明玻璃管,相机、光源和微细通道透明玻璃管处在一 条直线上,且微细通道透明玻璃管位于相机和光源之间,增加了一个等腰直角棱 镜和一个平面镜,等腰直角棱镜的直角边紧靠微细通道透明玻璃管的侧面,另一 侧面放置平面镜,与等腰直角棱镜成45度夹角,等腰直角棱镜与微细通道透明玻 璃管相对位置的设置使物点和像点在同一水平线上。 所述微细通道玻璃管的横截面是圆形或矩形。 所述微细通道玻璃管的水力直径在100微米到2毫米之间。 所述微细通道内两相流的三维可视化系统的可视化对象为气液两相流。 本发明所涉及的一种微细通道内两相流的三维可视化方法包括以下步骤 第一步,图像分割和二值化清空内存,读入图像;修正图像的角度偏转; 去除图像中的多余部分;二值化和图像滤波;边界提取;对断裂边缘进行膨胀操 作;填充气泡内部空隙;移除与边界连通的目标;平滑图形边缘;储存处理过的 图像;
第二步,切片图形绘制清空内存,读入分割后的图像;纵向逐层扫描;逐 层绘制切片图像;逐层读入切片图像;数据储存;
第三步,图形叠加清空内存,读入数据文件;对表示气泡的多维矩阵D进行预处理;绘制片体;调整视角和灯光。
在本发明的系统中调整好玻璃管与棱镜的位置,打开光源,调节好相机的焦 距,就能在相机的焦平面上同时得到玻璃管的正面像和侧面像。利用正面像和侧 面像,运用Matlab实现两相流的三维重建。
具体步骤如下
1、图像分割与二值化
图像分割与二值化的具体步骤如下
(1) 清空内存,读入图像。
(2) 修正图像的角度偏转 一般采集到的原始图片可能会有些倾斜,尽管角度很小,但是对三维重建工
作会有较大的影响,所以在进行图像分割之前,有必要对其进行修正。
(3) 去除图像中的多余部分
图像中有些区域如管壁,液体以及两个视图中间空白的部分是多余的,去除 以提高处理速度。
(4) 二值化和图像滤波 正面像和侧面像在图像色泽的深度上比较大的偏差,所以总体上分成两个部
分,左半图和右半图,左半视图表示侧面像,右半视图表示正面像,分别用不同 的阀值进行二值化分割。
图像背景中有很多噪音,包括管壁上的气泡,划痕等等,都会对图像处理产 生较大的影响,利用阀值法进行滤波,同时也综合利用Wiener滤波和中值滤波以 获得更好的图像。Matlab图像处理工具箱中的函数可以实现对图像噪声的自适应 滤除。
(5) 边界提取
经过前面几步的操作,这时,目标图像与背景有较大的区别,可以利用灰度 的梯度信息实现图像的分割。
(6) 对断裂边缘进行膨胀操作 虽然edge函数提取了图像的大概轮廓,但是边缘线会存在断裂的情况,为了
完整而精确地绘制出气泡的轮廓,可以对边缘进行膨胀操作。
(7) 填充气泡内部空隙 膨胀后的图像精确显示了气泡的外围轮廓,但是在气泡内部还有一些空隙,对这些内部空隙进行填充。
(8) 移除与边界连通的目标
至此,对图像中的区域己经进行成功的分割,但是气泡边界会有一些不规则, 需要对图像进行进一步处理。
(9) 平滑图形边缘
对于分割的结果,边缘不是很光滑,需对图形进行平滑处理。
(10) 储存处理过的图像
将经过第一部分的处理,图像的分离工作已经完成,将处理过的图像储存起 来以便后续处理。
2、切片图形绘制 切片图形绘制的具体步骤如下
(1) 清空内存,读入二值化的图像
(2) 纵向逐层扫描
a,扫描开始,变量清零。变量a表示正视图中的气泡的宽度;变量b表示侧视 图中的气泡的宽度。此时这些变量清空,而且这些变量嵌套在循环中,保证以后 逐层扫描时初始都是0。
b, 左半图像处理。a为气泡在这个视图中的宽度,当图像矩阵中数值为l时, 即为白色的时候,宽度变量a增加l,从左到右将左半视图按像素依次扫描完。
c, 右半图像处理。b为气泡在这个视图中的宽度,当图像矩阵中数值为l时, 即为白色的时候,宽度变量b增加l,从左到右将右半视图按像素依次扫描完。
(3) 逐层绘制切片图像
(jc = X + " cos 0 ° ,.。中的0,将t从o变化到 y =+ 6 sin 6*
2tt,每次变化;r/20,这样便扫过了整个椭圆,为了保证每一张切片图像的大小 一致,坐标轴需要进行控制,包括坐标范围,坐标轴可见与否等,同时因为fill 函数返回的图像不是矩阵而是句柄,所以将每一片切片储存起来以便后续处理。
(4) 逐层读入切片图像
将刚刚画完的图像读入图像矩阵,考虑到图像过大于是按比例对图像实施縮 小并更改编码形式从位图文件变为索引文件,并以此读入总数据矩阵D中,这时要 考虑到一个图像顺序的问题,为了使重建的图像和原图像顺序一致,所以将多维矩阵D反向写入。
(5)数据储存
这一步主要是为了避免系统在较大的数据量下出现内存溢出的情况,在一些 情况下,由于其他的变量的占用,如果直接连接上图形叠加部分,系统容易变得 脆弱产生崩溃,于是将多维矩阵D独立存放,而且矩阵D是图像叠加中唯一需要的 数据。鉴于此种情况,其他的变量都可以被删除,从而可以腾出较大的内存空间 用来运行后续的程序。
3、图形叠加
(1) 清空内存,读入数据文件
将内存中不必要的变量,常量等全部清除,留出足够的空间给系统进行最后 的运算。
(2) 对表示气泡的多维矩阵D进行预处理 为了获得比较光滑的气泡外缘,需要对表示气泡的多维矩阵D进行预处理。
(3) 绘制片体
利用Matlab自身带有的函数便可以轻松的绘制三维图像,免去了烦琐的算法 处理同时节省内存空间和运算时间,片体绘制函数中的颜色可以自定。
(4) 调整视角和灯光 利用caralight函数调整灯光和视角,使图像产生阴影显得更加真实。 至此完成了三维重建过程。
与现有技术相比,本发明具有以下有益效果这种微细通道内两相流的三维 可视化系统,结构简单,只需要增加一个棱镜和一个反射平面镜,就能同时取两 相流正面和侧面的信息;并利用上述的微细通道内两相流的三维可视化系统得到 的正面像和侧面像,应用Matlab实现两相流的三维重建。
图1为微细通道内两相流的三维可视化系统立体图; 图2为图1所示可视化系统的光路图3为图2所示三维可视化系统中棱镜与微细通道玻璃管的相对位置; 图4为实例中可视化系统采集到的典型的气液两相流图像; 图5为图4图像的二值化处理结果; 图6为从图5中获取的典型切片。图7为从图5中获取的所有切片叠加而成的三维重建图片。
具体实施例方式
下面结合附图对本发明的实施例作详细说明本实施例在以本发明技术方案 为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护 范围不限于下述的实施例。
如图1所示,本实施例包括 一个相机l, 一个光源2, 一只微细通道透明玻 璃管3,相机l、光源2和微细通道透明玻璃管3处在一条直线上,且微细通道透
明玻璃管3位于相机1和光源2之间,增加了一个等腰直角棱镜4和一个平面镜5, 等腰直角棱镜4的直角边紧靠微细通道透明玻璃管3的侧面,另一侧面放置平面 镜5,与等腰直角棱镜4成45度夹角,等腰直角棱镜4与微细通道微细通道透明 玻璃管3相对位置的设置使物点和像点在同一水平线上。 所述微细通道透明玻璃管3的横截面是圆形或矩形。 所述微细通道透明玻璃管3的水力直径在100微米到2毫米之间。 所述微细通道内两相流的三维可视化系统的可视化对象为气液两相流。 本实施例的三维可视化系统的光路图如图2所示,从0点发出的两条光线OB, OC进入棱镜,发生折射,并经过棱镜的斜边发射,从棱镜的另一条直角边上的F,
G点离开棱镜。O,和O点是能同时被相机记录的像点和物点。
对于光线OC,入射角和折射角分别为/和。遵守折射定律
sin/ —
sin/, (1)
其中w为折射角。
点B和C的距离为/z,满足如下的关系
tan/ = A/^,tan/'=/z/i/ (^)
点O和O'到棱镜直角边的距离为£和丄'
丄,—tan /丄_丄waA — w sin2 / (3) tan cos /
对于近轴光线(/*0),有(^/ 1, sin2/*0,所以方程(3)简化为入射光线通过棱镜斜边的反射,遵守反射定律<formula>formula see original document page 10</formula>其中y是点A到B的距离,得到:<formula>formula see original document page 10</formula>点G和O,的距离为:
<formula>formula see original document page 10</formula>。表示棱镜的直角边长,点G与像点O,的距离:
<formula>formula see original document page 10</formula>
只有当物点O和像点Oi处于同一水平线上时,相机才能同时获得两点的清晰
像,即满足如下关系
<formula>formula see original document page 10</formula>图3所示是三维可视化系统中棱镜与微细通道的相对位置,左边的直角三角 形是棱镜的俯视图,右边的圆周是微细通道的俯视图,当微细通道玻璃管置于不 同的位置时,棱镜中对应的测面像也会不同,只有满足方程(12)的约束关系时, 两者才能同时清晰的成像,此时微细通道的轴线置于0'6T上,正面像对应的侧面
像位于棱镜的斜边上q'o广。
本实施例中实验段为一段长100 mm,内径1.33 mm,外径3.00 mm的石英 玻璃圆管; 一面等腰直角棱镜的直角边长12. 0 mm,高80 mm; —面平面镜长100 mm, 宽为30 mm;相机选取高速相机(REDLAKE MotionPro X3),光源为高亮度LED频闪灯。气液两相流的工质为液氮.按照图1的系统配置。棱镜与玻璃管符合图3所 述的关系。打开光源,调整焦距,获得图4的实验图像,图4中左侧的像为棱镜 中的侧面像,右图为实验段正面像。
具体的三维重建过程主要分为三步,在Matlab编程环境下完成
第一步,图像分割和二值化,主要包括以下几个过程
(1) 清空内存,读入图像
(2) 修正图像的角度偏转
原始图片有些许角度的偏转,尽管角度很小,但是对随后的三维重建工作会 有较大的影响,所以在进行图像分割之前,有必要对其进行修正。我们使用Radon 变换检测直线,得到以角度theta和x'为X和Y轴的Radon变换系数图,颜色值 越亮的表示系数越大。检测Radon变换矩阵中的峰值,得到R的最大值出现在 0 = 0.48。根据这条直线偏转的角度,回到主程序,用imrotate函数将图像整体 旋转。
(3) 去除图像中的多余部分
图像中有些区域如管壁,液体以及两个视图中间空白的部分是多余的,去除 以提高处理速度:将图片中的管壁和空白部分去除,全部填充成白色;将图片中的 顶部和底部的干扰去除,比如管壁上的杂质等等,同样全部填充成白色;经过两 步的剪切,整幅图中只包含对三维重建有用的部分,如图4所示。
(4) 二值化和图像滤波
从图像上可以发现,背景中有很多噪音,包括管壁上的污渍,划痕等等,都 会对图像处理产生较大的影响,所以利用阀值法进行滤波,同时也综合利用Wiener 滤波和中值滤波以获得更好的图像。Matlab图像处理工具箱中的wiener2函数可 以实现对图像噪声的自适应滤除。
总体上分成两个部分,左半图和右半图,分别用不同的阀值进行二值化分割。 同时在左半图中,两个气泡连接的部分的透光率比较高,造成的结果就是在这个 位置上色泽比较浅,和气泡外部的流体颜色比较接近,在随后的阀值提取上会有 比较大的麻烦,所以在这个部分需要特别处理,阀值取得比其他位置要小一些。
以下代码为对原始图像的右半边进行滤波
a、 右侧上半部分
b、 右侧中间包含气泡连接的部分C、右侧下半部分 d、左侧部分
在二值法分割后对图像进行中值滤波。中值滤波是一种典型的低通滤波器, 主要目的是保护图像边缘,同时也能去除噪声。中值滤波是将领域内的像素按灰 度级排序,取其中间值为输出像素,在能较好的保持边界的同时可能会失去图像 中的细线和小块目标区域
(5) 边界提取
经过前面几步的操作,这时,目标图像与背景有较大的区别,可以利用灰度
的梯度信息实现图像的分割。为此采用log算子来实现边缘的提取。
(6) 对断裂边缘进行膨胀操作
边缘检测的效果可以从图,中看到,虽然edge函数提取了图像的大概轮廓, 但是边缘线存在着断裂的情况,可以通过strel函数利用线性结果函数对边缘进 行膨胀操作
用imdilate函数对图像进行进一步操作
(7) 填充气泡内部空隙 膨胀后的图像精确显示了气泡的外围轮廓,但是在气泡内部还有一些空隙。
用imfill函数对这些孔进行填充。
(8) 移除与边界连通的目标
至此,对图像中的区域已经进行成功的分割,但是气泡边界会有一些不规则, 需要对图像进行进一步处理,通过imclearborder来清除与边界连通的物体
(9) 平滑图形边缘
对于分割的结果,边缘不是很光滑,需要采用imerode函数用盘形结构元素 对图形进行平滑处理。
(10) 储存
将经过第一部分的处理,图像的区域分割和二值化处理已经完成,将处理过 的图像储存起来以便后续处理。
第一部分的最终图片如图5所示。 2、切片图形绘制
表面张力是影响气泡形状的主要因素,在表面张力的作用下,气液界面的表面积倾向于最小,气泡呈椭圆形或圆形。根据椭圆的参数方程^ = &+ 。3:,有
关椭圆形长轴a,短轴b和中心(jc。,少。)的信息都可以从图像中获得。侧面像中气
泡的宽度可以作为椭圆一个轴而正面像气泡的宽度同样可以作为椭圆的另一个 轴,这样,确定椭圆形状的长短轴就已经确定了。根据简单的空间几何关系,可 以确定椭圆中心位置。切片图形绘制的具体步骤如下
(1) 清空内存,读入分割后的图像
(2) 纵向逐层扫描 扫描开始,变量清零。
变量a表示正视图中的气泡的宽度;变量b表示侧视图中的气泡的宽度。Front 为椭圆中心在正视图中的位置;left为椭圆中心在侧视图中的位置,此时这些变 量清空,而且这些变量嵌套在循环中,保证以后逐层扫描时初始都是O。
左半图像处理
左半视图表示侧面像,a为气泡在这个视图中的宽度,当图像矩阵中数值为l 时,即为白色的时候,宽度变量a增加l,从左到右将左半视图依次扫描完。 右半图像处理
右半视图表示正面像,b为气泡在这个视图中的宽度,当图像矩阵中数值为l 时,即为白色的时候,宽度变量b增加l,从左到右将右半视图依次扫描完。
(3) 逐层绘制切片图像
变量t代表椭圆参数方程中的角度即^-^+:e°sS中的P,将t从0变化到
2冗,每次变化;r/20,这样便扫过了整个椭圆,为了保证每一张切片图像的大小 一致,坐标轴需要进行控制,包括坐标范围,坐标轴可见与否等,同时因为fill 函数返回的图像不是矩阵而是句柄,所以利用saveas函数将每一片切片储存起来 以便后续处理。
(4) 逐层读入切片图像
将刚刚用fill函数画完的图像读入图像矩阵CTcut,考虑到图像过大于是按 比例对图像实施縮小并更改编码形式从位图文件bmp变为索引文件png,并以此读 入总数据矩阵D中,这时要考虑到一个图像顺序的问题,为了使重建的图像和原图像顺序一致,所以将多维矩阵D方向写入。 (5)数据储存
这一步主要是为了避免系统在较大的数据量下出现内存溢出的情况,由于前 面从图像的内在信息中了解到图像在纵向有716像素,为了保证图像的真实性采 取的是逐层扫描,这样多维矩阵D就成为了150x200x716的大型数据矩阵,在一 些情况下,由于其他的变量的占用,如果直接连接上图形叠加部分,系统容易变 得脆弱产生崩溃,于是将多位矩阵D独立存放,而且矩阵D是图像叠加中唯一需 要的数据。鉴于此种情况,其他的变量都可以被删除,从而可以腾出较大的内存 空间用来运行后续的程序。
切片的空间形式如图6所示。
3.图形叠加
(1) 清空内存,读入数据文件
将内存中不必要的变量,常量等全部清除,留出足够的空间给系统进行最后 的运算。
(2) 对表示气泡的多维矩阵D进行预处理 为了获得比较光滑的气泡外缘,需要对表示气泡的多维矩阵D进行预处理,
即光滑
(3) 绘制片体
利用Matlab自身带有的函数patch便可以轻松的绘制三维图像,免去了烦琐 的算法处理同时节省内存空间和运算时间,片体绘制函数patch中的颜色可以自 定,本次处理中使用黄色。
(4) 调整视角和灯光
利用camlight函数调整灯光和视角,使图像产生阴影这样显得更加真实 最终的三维重建图像结果如图7所示。
权利要求
1、一种微细通道内两相流的三维可视化系统,包括一个相机,一个光源,一只微细通道透明玻璃管,相机、光源和微细通道透明玻璃管处在一条直线上,且微细通道透明玻璃管位于相机和光源之间,其特征在于设置了一个等腰直角棱镜和一个平面镜,等腰直角棱镜的直角边紧靠微细通道透明玻璃管的侧面,另一侧面放置平面镜,与等腰直角棱镜成45度夹角,等腰直角棱镜与微细通道透明玻璃管相对位置的设置使物点和像点在同一水平线上。
2、 根据权利要求1所述的微细通道内两相流的三维可视化系统,其特征是, 微细通道透明玻璃管的横截面是圆形或矩形。
3、 根据权利要求1所述的微细通道内两相流的三维可视化系统,其特征是, 微细通道透明玻璃管的水力直径在100微米到2毫米之间。
4、 根据权利要求1所述的微细通道内两相流的三维可视化系统,其特征是, 系统的可视化对象为气液两相流。
5、 一种微细通道内两相流的三维可视化方法,其特征在于,包括以下步骤第一步,图像分割和二值化清空内存,读入图像;修正图像的角度偏转;去除图像中的多余部分;二值 化和图像滤波;边界提取;对断裂边缘进行膨胀操作;填充气泡内部空隙;移除 与边界连通的目标;平滑图形边缘;储存处理过的图像;第二步,切片图形绘制清空内存,读入分割后的图像;纵向逐层扫描;利用椭圆参数方程逐层绘制 切片图像;逐层读入切片图像;数据储存; 第三步,图形叠加-清空内存,读入数据文件;对表示气泡的多维矩阵D进行预处理;绘制片体; 调整视角和灯光。
6、 根据权利要求5所述的微细通道内两相流的三维可视化方法,其特征是, 第一步中所述的修正图像的角度偏转,是指采集到的原始图片有角度倾斜,在 进行图像分割之前,要对其进行修正。
7、 根据权利要求5所述的微细通道内两相流的三维可视化方法,其特征是,第一步中所述的二值化和图像滤波,是指左半视图表示侧面像,右半视图表示正面像,分别以阀值进行二值化分割,利用阀值法进行滤波,综合利用Wiener 滤波和中值滤波以获得图像。
8、 根据权利要求5所述的微细通道内两相流的三维可视化方法,其特征是, 第二步中所述的纵向逐层扫描,包括a, 扫描开始,变量清零;b, 左半图像处理,当图像矩阵中数值为l时,即为白色的时候,宽度变量增 加l,从左到右将左半视图按像素依次扫描完;c, 右半图像处理,当图像矩阵中数值为l时,即为白色的时候,宽度变量增 加l,从左到右将右半视图按像素依次扫描完。
9、 根据权利要求5所述的微细通道内两相流的三维可视化方法,其特征是, 第二步中所述的逐层绘制切片图像,是指变量t代表椭圆参数方程中的角度, 即px: = x。十acos^ 1>" =+ 6 sin 6其中^,将t从0变化到2;r,每次变化;r/20,这样便扫过了整个椭圆,保 证每一张切片图像的大小一致。
10、 根据权利要求5所述的微细通道内两相流的三维可视化方法,其特征是, 第二步中所述的逐层读入切片图像,是指将刚刚画完的图像读入图像矩阵,按 比例对图像实施縮小,并更改编码形式从位图文件变为索引文件,并以此读入总 数据矩阵D中,将多维矩阵D反向写入,使重建的图像和原图像顺序一致。
全文摘要
一种微细通道内两相流的三维可视化系统,包括一个相机,一个光源,一只微细通道透明玻璃管,相机、光源和微细通道透明玻璃管处在一条直线上,且微细通道透明玻璃管位于相机和光源之间,增加了一个等腰直角棱镜和一个平面镜,等腰直角棱镜的直角边紧靠微细通道透明玻璃管的侧面,另一侧面放置平面镜,与等腰直角棱镜成45度夹角,等腰直角棱镜与微细通道透明玻璃管相对位置的设置使物点和像点在同一水平线上。相机能同时记录清晰正面像和棱镜中的侧面像。通过正面像和侧面像实现两相流的三维重建,获取三维图像。
文档编号G06T15/00GK101556687SQ20091004988
公开日2009年10月14日 申请日期2009年4月23日 优先权日2009年4月23日
发明者鑫 付, 鹏 张, 王如竹, 黄超进 申请人:上海交通大学