ImportError when loading Open3D module into Blender python console I have installed the Open3D module using pip into the interpreter of Blender 2.79b, which uses Python 3.5.3. If I open the Python interpreter from the system console everything works fine without any error message after importing the module.

However, if I open the embedded console of Blender and import Open3D I get the following error:

&gt;&gt;&gt; import open3d
Traceback (most recent call last):
  File "&lt;blender_console&gt;", line 1, in &lt;module&gt;
  File "/opt/blender-2.79b-linux-glibc219-x86_64/2.79/python/lib/python3.5/site-packages/open3d/__init__.py", line 35, in &lt;module&gt;
    from .open3d import * # py2 py3 compatible
ImportError: std::bad_cast


Furthermore, if I include something different before Open3D (eg, numpy) the error changes into this:

&gt;&gt;&gt; import numpy
&gt;&gt;&gt; import open3d
Traceback (most recent call last):
  File "&lt;blender_console&gt;", line 1, in &lt;module&gt;
  File "/opt/blender-2.79b-linux-glibc219-x86_64/2.79/python/lib/python3.5/site-packages/open3d/__init__.py", line 35, in &lt;module&gt;
    from .open3d import * # py2 py3 compatible
ImportError: generic_type: cannot initialize type "VerbosityLevel": an object with that name is already defined


So far, I've tried Blender 2.79a, 2.79b and 2.80 with different versions of Open3D and numpy, but I'm not able to find a solution. Trying the newer Blender 2.80 (Python 3.7.0) the error changes again into:

&gt;&gt;&gt; import open3d
Traceback (most recent call last):
  File "&lt;blender_console&gt;", line 1, in &lt;module&gt;
  File "/opt/blender-2.80-linux-glibc217-x86_64/2.80/python/lib/python3.7/site-packages/open3d/__init__.py", line 28, in &lt;module&gt;
    from .open3d import * # py2 py3 compatible
ImportError: Invalid character class.


What could it be?
Thanks.

Environment

OS: Ubuntu 18.04, Python version: 3.5.3 / 3.7.0, Open3D version: 0.8.0.0

Blender 2.79b is installed in /opt/blender-2.79b-linux-glibc219-x86_64.
In order to install the package I ran the following commands:

cd /opt/blender-2.79b-linux-glibc219-x86_64
./2.79/python/bin/python3.5m 2.79/python/lib/python3.5/ensurepip
./2.79/python/bin/pip3.5 install open3d


Same commands for the 2.80 version.
After several attempts, I found a solution. In order to fix the ImportError, install Open3D v0.4.0.0:

pip3 install open3d-python==0.4.0.0


Note that the package name has changed: use open3d-python instead of open3d. Probably, the latest versions of Open3D have some bugs (see also this Open3D issue).