论文部分内容阅读
数字散斑相关方法(DSCM),是起源于20世纪80年代初的一种光学测量方法。研究该方法的重要意义在于,它具备目前其它传统光测方法所缺乏的应用于工程测量的诸多有利条件,如可以用白光光源,光路简单,无需隔振,测量范围大等等。但是目前的DSCM方法在位移、应变测量精度以及数据处理速度上还存在许多不足,在一些工程测量应用中受到限制,如受噪声影响,算法本身的局限性,位移测量精度不高,从而导致应变测量精度低等;另外,大部分的科研人员选择MATLAB或面向过程语言Fortran、C等编写相关计算程序,并且由于没有足够的软件开发经验,因此所开发出的程序可读性差、难以移植、难以维护和扩展,使得他们的成果不能很好的被重复利用。本文对DSCM中的一些关键技术做了研究,并以Visual C++.NET作为开发工具,用面向对象语言C++开发了相关计算程序的大量类库,以及用于管理运作这些类的程序框架。本文所做的主要工作以及取得的成果如下:(1)提出了将变尺度法-BFGS法与模拟退火算法相结合的方法,通过高精度赋初值和邻近点赋初值,既提高了相关计算的精度和速度,又避免了计算结果陷入局部收敛的误区;(2)用标准C++编写了数字相关计算的所有功能模块,各个模块之间独立性很强,使用了函数和运算符重载及类继承,在错误处理问题上使用了异常处理机制。如果科研人员要针对相关计算程序中的某个算法进行改进或替换,那他只需要专注于此算法的实现,而对其它模块只需知道其功能。在具体的编程过程中,由于运算符重载技术的使用,使得算法的程序代码在形式上与数学公式几乎没有区别,科研人员可以非常容易的阅读和编写算法代码。另外,使用微软公司提供的计算机类库MFC编写了图形用户界面,在界面菜单上,用户可以根据测量要求选择不同的相关算法。由于此程序的类库都为标准C++编写,可以移植到其他的开发环境下或其他的操作系统下,因此该程序可以作为数字散斑相关计算程序的标准,其他的科研人员可以很容易地在此框架下开发、改进部分或所有的算法;(3)分析了相关技术中影响计算结果精度的一些因素,如相关算法、图像质量对计算结果的影响等,提出了一些减小误差的措施;(4)将本文提出的DSCM方法应用于对纳米压缩装置加载曲线的标定测量,并获得了很好的效果。