使用Open3D绘制几何图形时X DISPLAY异常的解决求助
修复Open3D GLFW X11显示错误的方案
核心问题分析
你遇到的错误根源是X11图形转发配置错误——之前手动将DISPLAY指向Linux集群IP的操作完全反向了,正确逻辑应该是让集群将图形输出转发到本地Windows的Xming服务。
分步修复步骤
1. 正确配置Xming
- 启动XLaunch(Xming的配置工具),按流程设置:
- 选择「Multiple windows」,点击「Next」;
- 选择「Start no client」,点击「Next」;
- 额外设置中勾选「Disable access control」,点击「Next」;
- 点击「Finish」启动Xming,确保系统托盘出现Xming图标。
2. 配置Putty的X11转发
- 打开Putty,左侧导航栏依次展开
Connection > SSH > X11; - 勾选「Enable X11 forwarding」;
- 「X display location」留空或填写
:0(Xming默认监听该地址); - 返回「Session」标签,输入集群IP并保存配置,再连接集群。
3. 验证并设置DISPLAY变量
- 连接集群后,执行
echo $DISPLAY,正常情况下Putty会自动设置为localhost:10.0或类似(Putty会自动映射X11端口); - 若输出为空或错误,手动执行:
export DISPLAY=localhost:0.0 - 先测试X11转发有效性:执行
xclock或xeyes,如果本地Xming弹出对应图形窗口,说明转发配置成功。
4. 额外排查项
- 若测试命令无反应,检查集群是否安装
xauth工具:# Debian/Ubuntu系统 sudo apt install xauth # CentOS/RHEL系统 sudo yum install xauth - 联系集群管理员确认防火墙是否允许X11端口(默认是6000+,如
:0对应6000端口); - 尝试更新Open3D到最新稳定版,规避旧版本的X11兼容问题:
pip install --upgrade open3d
验证Open3D显示
完成以上配置后,重新运行Open3D代码,DrawGeometries应该能正常弹出图形窗口。
内容的提问来源于stack exchange,提问作者Sai tarak
相关产品推荐
相关产品推荐

