ZEMAX是广为使用的一款光学仿真软件,是进行光路设计和分析的利器;而相机标定,则是进行机器视觉任务时,拿到一款相机,对其实际参数进行确定的过程。
因此看起来,二者其实主要是针对不同的侧重点。前者主要面向相机开发,后者面向相机使用。
但是最近遇到了一个问题,不得不使用ZEMAX进行一些相机标定算法方面的验证。这期间遇到了一些问题,这里记录下来希望可以与大家分享,如有不对之处进请指正。
事情的经过是这样的:现在手头有一台特殊光路的相机,由于相机是课题组自己设计搭建,因此也有相应的ZEMAX工程文件。在理想情况下该相机与普通相机的成像模型完全一致,因此理论上可以使用张正义相机标定法进行标定。
然而,相机光路中包含一些特殊结构的光学元件,这些元件的安装与制造误差势必会为成像系统引入畸变,因此有必要为这些畸变和误差建立对应的数学模型,就类似于普通相机中的径向畸变与切向畸变模型,从而对其进行矫正。所以问题来了,怎么验证模型的可靠性呢?
仿真!
我的想法是这样的。在ZEMAX中对一些光学元件的角度进行一些微调,以此来模拟实际情况中的安装误差;接着在ZEMAX中模仿张正义标定法,在物方视场中设置类似棋盘格的视场: