欢迎光临散文网 会员登陆 & 注册

怎样做背景纹影(BOS)实验——零基础低成本教程

2021-03-18 19:20 作者:孙老师的分享  | 我要投稿

        背景纹影的英文翻译是Background Oriented Schlieren (BOS). BOS和传统纹影技术不太一样,它没有凹面反射镜.但是其原理也是利用密度的变化对流体介质(气体或者液体)折射率的影响。BOS其实在生活中并不鲜见,比如夏天炙热的马路上由于热量的聚集,我们会看到远处的物体有点“飘飘然”。BOS引起广大科研工作者的兴趣可能是源于NASA拍摄的全尺寸战斗机在超音速飞行时的激波(见图1)。自鹭威公司创办以来,陆陆续续有人咨询背景纹影技术,我想利用这个平台介绍一下怎么零基础和低成本进行BOS实验。为了这篇文章我自己也做了两个小实验,在这里给大家展示一下实验结果。

图1,NASA拍摄背景纹影图片,图中为全尺寸超音速飞行战斗机,激波清晰可见。

步骤一, 实验器材

1. 手机当然是需要具有拍照功能的手机。如果有更专业的相机是更好的。我在实验中也尝试使用了单反相机,但是发现拍照时反光镜的翻转震动会引起相机的轻微晃动,影响实验效果,尝试数次未见改善,遂未采用。无反相机可能是一个比较好的选择。

2. 三脚架三角架是用来固定手机或者相机的。拍照时需要严格避免相机的晃动,一个稳定的三脚架或者支撑平台是必须的。

3. 蓝牙快门采用蓝牙快门也是为了避免手指操作屏幕引起的晃动。

4. 背景图案。既然是背景纹影,一个合适的背景图案非常重要。英文文献通常把背景图案被称为斑点图案(Speckle Pattern)。我在实验中采用的是随机生成的粒子图案,是在这个网站上实现的http://www.imagico.de/map/jsdotpattern.php,在此对德国imagico站主表示感谢。大家可以自由探索一下,主要就是控制粒子大小和图片尺寸。我所用的图片打印出来效果如图所示。


图2.实验四件套
图3. 粒子图片生成示例

步骤二,实验设置——风枪热射流

        实验的布置如图中所示。由于热风枪内部有机械旋转部件,加之射流的反作用力,需要一个稳固的支架,我在这里用乐高积木搭了一个架子并配上重量较重的铁块防止晃动。为了避免触摸风枪的开关按键,开关设置成常开,风枪的运转则通过墙上插头的开关实现,这样做也是为了避免试验件位置的移动。

图4. 风枪热射流实验设置

        下图显示的是风枪开启前后的两张背景图片的对比。该全局视图看上去似乎并没有什么变化。

图5,风枪开启前后背景图片对比。

        但是,在局部放大的视图中,背景图片中的粒子移动就比较明显了。这就是背景纹影实验所需要获得的效果。由于风枪热气(用热电偶测得约300摄氏度)密度与周围环境不同,透过热气看到的背景图片中的粒子位置便会发生偏移。

图6,风枪出口局部放大,粒子移动清晰可见。

        既然得到了理想的实验效果,那么接下来就需要计算出这些粒子的偏移量,进而生成纹影图片。

步骤三,数据处理——粒子位移计算

        数据处理的目的是计算出这些粒子的位移量。从图像处理的角度看计算图中粒子的位移的算法有多种选择,在这里我使用的是互相关算法(cross-correlation),也算是把PIV和纹影做了一个综合。我推荐使用MATLAB里的PIVLab插件。首先PIVLab是免费的,而且有一个界面,操作起来比较直观。其他还有很多开源或者收费的软件也可使用,根据个人偏好和熟悉程度而定。

        当图片导入到PIVLab后,就需要设置cross-correlation的参数了。按照软件中的顺序,首先是PIV算法,建议选择’FFT window deformation’,原因以后有机会再详解。第二步是确定互相关窗口尺寸,PIVLab使用的是经典的多重窗口设置。在PIV中多重窗口的优点是增加速度分布分辨率的同时能算出比最小窗口大的速度。其实在实验中背景纹影图片中的粒子位移非常小(稍后大家会发现低于1像素),多重窗口在这里可用可不用。下图的设置我使用了2层网格,第一层是64x64像素50%重叠,第二层是32x32像素50%重叠。最小窗口尺寸非常关键,因为它决定了最终纹影图像的分辨率。最小窗口的选择标准通常需要满足窗口内有多个粒子。第三步就是‘Sub-pixel estimator’,可以采用图中默认的设置。因为是想要“速成”,这一部分写的比较简略,以后有机会详细讲解。

图7,PIVLab Cross-Correlation后处理参数设置示例。

        万事俱备,现在只需要点一下‘Analyze‘按钮了,然后把测试结果导出。结果可以在MATLAB里看,也可以在其他软件里看。

步骤四,BOS纹影图片生成

        互相关计算的结果会有两个位移分量,分别是x,y方向的位移。那么问题来了,我们应该用哪个方向的位移量最为数值纹影量呢?请记住下面的原则:

X方向位移量=垂直刀片

Y方向位移量=水平刀片

        实验中的射流是水平运动的,如果做传统纹影实验我们会选择把刀片水平放置,所以Y方向分量是合适的选择。请看结果如下:

图8,计算所得BOS纹影图片,云图灰度代表背景图片中粒子在垂直方向位移量。

        现在我们来分析一下背景纹影的结果。在热射流中,图片中粒子y方向上的位移其实非常小,绝大部分都低于1个像素。数据都是通过sub-pixel estimator推算出来的,这样对于最终的精度是有影响,因为现在的计算结果徘徊在不确定度的边缘。

        在做数值纹影的同时,我也用传统的纹影显示了这个热风枪的出口气流。对比背景纹影和数值纹影,可以发现传统纹影显示了更多的湍流细节。

图9,热风枪射流传统纹影显示。

        我仔细对两组数据做了分析,两组实验主要有如下差异:

1.     曝光时间Exposure Time:背景纹影实验的相机曝光时间是1/100秒,而传统纹影使用的是专业相机,曝光时间是1微秒。所以背景纹影有一定的流场平均效果。

2.     空间分辨率Spatial Resolution:背景纹影的分辨率由互相关窗口大小决定,后处理的时候窗口尺寸为32x32pixel;而传统纹影的精度为1pixel。所以背景纹影牺牲了空间分辨率。

        所以,如果继续改进实现条件,比如通过补光减小曝光时间,进一步改进背景图案等。这里我就算抛砖引玉,期待大家能获得更好的结果。用类似的方法,我也通过背景纹影测试了蜡烛的火焰,并与传统纹影结果做了对比。

图10,蜡烛火焰BOS与传统纹影之对比。

总结

        写到最后,同学们应该可以发现,背景纹影相比传统纹影技术也是各有利弊。优点是,背景纹影的测量区域可以不受凹面反射镜的限制,适合大测量区域;但是成像的灵敏度和分辨率略低于传统纹影技术。最后,希望这篇短文对同学们起到一点作用。在大家从事背景纹影技术的同时,也希望能对鹭威纹影仪继续关注。

通过微信与我们取得联系: luwei-schlieren


怎样做背景纹影(BOS)实验——零基础低成本教程的评论 (共 条)

分享到微博请遵守国家法律