【纹影定量化】纹影法还能计算出速度 !— 光流算法Optical Flow

作者:梅笑寒 上海交通大学博士研究生
很荣幸邀请到上海交通大学从事燃烧学研究的王倩老师课题组为我们展示纹影图像的先进应用——通过光流算法(Optical Flow)计算流场的速度。
对于纹影,很多人往往认为是一种定性的流动显示方法(也许之前是)。但是,随着高速相机的发展和图像处理算法的进步,以及广大科研工作者的不懈努力,近年来,我们能够将‘定性‘的方法‘定量化’。Optical Flow是一种图像处理算法,但是与纹影相结合,便碰撞出了火花,让我们可以计算出流场的速度!
最近,王倩老师团队发展了基于纹影特性方程的改进光流算法,显著提升了纹影测速的精确度和鲁棒性。光流算法,顾名思义,是通过追踪两帧图像像素点亮度的流动,来获取空间点的二维运动速度场。这个原理就是亮度守恒约束,建立了像素点亮度与速度场的关系,结合运动速度场的特性,再实现速度平滑约束,两个约束方程就可以求解二维速度场的两个分量。一般的求解方法是利用两个约束方程构建能量泛函,推导拉格朗日方程,迭代求解得到速度场。光流算法的主要优势是求解精度和空间分辨率高,然而光流算法的约束方程主要针对刚体运动提出,并不适用于计算流体运动。
对于简单的二维流场,纹影图像的亮度方程将像素亮度与密度场建立联系,而流体的约束方程则将密度场和速度场联系起来,将这两个方程联立推导,消去密度场这个中间量,就得到了像素亮度与速度场的关系,也就是新的守恒约束。根据流体运动的性质,再引入含有散度旋度项的平滑约束替换原有的刚体平滑约束。这些约束条件的改进,使得算法具有物理意义,更适用于从流场纹影图像中提取速度场。
此外,由于运动重建本身是非凸问题,非凸求解容易陷入局部最优,而凸求解容易实现全局最优,但使用凸求解容易使得结果出现局部错误,例如边界上过度平滑和局部收敛差的问题。课题组引入了渐进非凸优化,将分别使用凸函数和非凸函数作为惩罚函数的两个能量泛函线性组合,从完全凸求解开始,逐渐在能量泛函中增加非凸部分的比例至完全非凸,成功地增加了算法的鲁棒性,并且使得算法参数设置更加灵活。
以下展示了一组甲烷/氢气混合火焰平板碰撞实验以及速度场测量结果,混合气由喷嘴直径8mm的燃烧炉流出,甲烷和氢气的流量均为5 L/min,燃气出口平均速度为3.32m/s,点火位置在平板附近。纹影镜面的直径为300 mm,焦距为3m,高速相机拍摄频率为 1000帧/s,曝光时间1us。



可以看到,由于可燃气在上端平板附近已经全部转捩为湍流并与空气充分混合,点火后预混火焰前端传播非常迅速,速度最高处超过了3m/s。这种结合了成像光路特性和流体物理性质的算法,可以得到高精度和高空间分辨率(pixel resolution)的速度场结果,与高速成像手段结合起来,可以用于高速流场、高温燃烧、以及不方便添加示踪粒子的边界层等场景的速度诊断中。
参考文献
[1] Wang Q, Wu Y, Cheng H T, et al. A schlieren motionestimation method for seedless velocimetry measurement. Experimental Thermal and Fluid Science, 109.
[2] Wang Q, Mei X H, Wu Y, et al. An Optimization andParametric Study of a Schlieren Motion Estimation Method. Applied Scientific Research, 2021(3).
鹭威纹影其他燃烧相关纹影视频