在光学领域,可微分光线追迹方法正在从科研走向工程
这里我想要系统性的介绍一个开源项目:
Optiland
我们不讲太多概念,第一期直接从最实际的问题开始:
Optiland 怎么安装?不会写代码,能不能打开图形界面?
这篇文章就带大家从零跑一遍。
本文默认读者没有 Python 编程基础,只要会复制命令、打开终端、按照步骤操作即可。

1—开始使用前的准备工作
我们的目标很简单:从 GitHub 下载 Optiland 官方源码包,然后一步一步把 Optiland 的图形界面启动起来。
1. Python 3.11 或 Python 3.12
2. Optiland 官方 GitHub 源码包
虽然官方支持更高版本,但对普通用户来说,3.11 / 3.12 一般来说更稳定。如果后续需要新的python版本支持,再根据提示更新即可。
方便起见,操作的时候可以首先win+R,在弹出窗口里面输入:powershell。

之后就会进入这样一个页面,在这个页面里面,我们粘贴进:
winget install -e --id Python.Python.3.12


python --version或:py --version
打开 Optiland 官方 GitHub 页面:
https://github.com/optiland/optiland

点击页面右上方绿色的
Code按钮。

3.点击 Download ZIP。

4.下载完成后,把 zip 文件解压到一个简单路径,例如:D:\Optiland\optiland-master

尽量不要放在中文路径、移动硬盘路径或很深的文件夹里。路径越简单,出现问题的概率就越低。

python -m venv .venv.\.venv\Scripts\Activate.ps1这一步非常关键,核心目的是创建一个虚拟运行环境,让这个程序运行在虚拟环境里面,这样我们在编程的时候就不会误伤其他的文件。成功的状态如下图,注意,每一行的开头会有一个(.venv)
如果提示不允许运行脚本,可以输入下面的代码,每一行之后都回车:
Set-ExecutionPolicy -Scope CurrentUser RemoteSigned
Y.\.venv\Scripts\Activate.ps1进入虚拟环境没有问题的话,下一步,安装升级工具和图形依赖,输入:python -m pip install --upgrade pippython -m pip install -e ".[gui]"Optiland 本体 图形界面依赖 PySide6 内置脚本终端依赖 qtconsole 绘图、科学计算、3D 显示等依赖
第一次安装可能需要几分钟。如果网络较慢,等待即可。
安装过程中看到很多英文输出是正常现象。只要最后没有红色报错,一般就是安装成功。
然后我们就可以启动这个软件了,输入:
python -m optiland_gui.run_gui等待一会儿,就能启动起来界面。这个界面是optiland本身给出的ui,如果大家有别的想法,其实也很容易二次开发。

.\.venv\Scripts\Activate.ps1python -m optiland_gui.run_gui❖
2—开始探索
官方也给我们提供了一些参考案例




在右侧,我们可以看到分析界面,查看MTF等各项参数


这一期我们先不评价 Optiland 能不能替代商业软件。至少从本次实测看,它已经完成了一个基本闭环:可以通过 GUI 打开示例镜头,可以修改表面参数并运行常规分析,也可以通过 Python/PyTorch 做一个最小可微分光追优化案例。
它现在仍然是一个快速开发中的开源项目,GUI 和工程生态还不能和成熟商业软件相比。但它的方向很清楚:让光学设计从封闭软件里的表格,变成 Python 生态中可分析、可优化、可复现、可二次开发的对象。
下一期,我们从零开始搭一个单透镜系统
还请持续关注
END

更多内容请到之晓光学公众号主页
xiaoshuinan@hitoptics.com
夜雨聆风