Open lcc157 opened 1 year ago
I think this filament module is not installed successfully
_I noticed that “The Filament-based GUI implementation is not compatible with headless rendering, please set -DBUILD_GUI=OFF.” So, the remote workstation is unavailable OffscreenRenderer?
import open3d.visualization.rendering as rendering Open3D was not compiled with BUILDGUI, but script is importing open3d.visualization.rendering render = rendering.OffscreenRenderer(640, 480, headless=True) Traceback (most recent call last): File "
", line 1, in AttributeError: module 'open3d.visualization.rendering' has no attribute 'OffscreenRenderer'
I got into the same problem, but finally I realized OffscreenRenderer does not need headless build. Just use OffscreenRenderer(..., headless=True)
after installing Open3D by pip. If using docker container on a server, do not set DISPLAY environment variable and use cudagl
to fix eglinitialization issue. Finally, I could render image on a server with segmentaion fault error msg, but I could get an expected rendered image!
@kzky so you completely omitted setting the DISPLAY variable? As far as I understand http://www.open3d.org/docs/latest/docker.html - they claim the opposite.
@kzky Can you tell me in detail how to use cuda gl to solve the eglinitialization issue, like "LD_PRELOAD=/usr/local/nvidia/lib/libEGL.so python3 render_to_image.py"
I got into the same problem, but finally I realized OffscreenRenderer does not need headless build. Just use
OffscreenRenderer(..., headless=True)
after installing Open3D by pip. If using docker container on a server, do not set DISPLAY environment variable and usecudagl
to fix eglinitialization issue. Finally, I could render image on a server with segmentaion fault error msg, but I could get an expected rendered image!
hello~ i use pip install open3d0.16.0 in windows11, but when i run: o3d.visualization.rendering.OffscreenRenderer(width=img_w, height=img_h, headless=True),ERROR occur: TypeError: init(): incompatible constructor arguments. The following argument types are supported:
Invoked with: kwargs: width=1440, height=1080, headless=True
Checklist
master
branch).Steps to reproduce the issue
I want to render and save images from a terminal without any display device
the cmake command is the following: cmake -DENABLE_HEADLESS_RENDERING=ON \ -DBUILD_GUI=OFF \ -DBUILD_WEBRTC=OFF \ -DUSE_SYSTEM_GLEW=OFF \ -DUSE_SYSTEM_GLFW=OFF \ .. The result of cmake is as follows:![image](https://user-images.githubusercontent.com/69669353/188559106-9138d6ad-9e0e-44f9-872d-017c0367df34.png)
Then, I make install-pip-package:![image](https://user-images.githubusercontent.com/69669353/188563865-4830a51c-7b04-4a01-9485-e4dba3050444.png)
Finally, successfully tested the provided Python script for saving depth and surface normal sequences: cd ~/Open3D/examples/python/visualization python headless_rendering.py This should print the following: Capture image 00000 Capture image 00001 Capture image 00002
It all looks normal!
But, when i want to test own program : render = o3d.visualization.rendering.OffscreenRenderer(width, height, headless=True) AttributeError: module 'open3d.visualization' has no attribute 'rendering'
Error message
Open3D, Python and System information
Additional information
No response