Skip to content (Press Enter)
Javier Ladino

Javier Ladino

{Data/Design/Engineer}

  • Home.
  • About
  • Portfolio
  • ES 🇨🇴
  • FR 🇫🇷
CreativeCodeDataViz

From art to technology: How to visualize a statue of Nantes in a point cloud

Explore the “Éloge du pas à côte” statue in the Place de Bouffay in Nantes through the generation and visualization of a point cloud using Python and Open3D.

The “Éloge du pas à côte” statue in the Place de Bouffay in Nantes is a fascinating and unique piece of art which is part of “Le Voyage a Nantes”. Its innovative and thought-provoking design encourages reflection on the importance of taking different paths in life. What if we explore this sculpture from an even more intriguing perspective by using point cloud generation and visualization?

In this article, we will discover how to use Python and the Open3D library to transform the “Éloge du pas à côte” statue into a three-dimensional point cloud and visualize it interactively.

The first step is to obtain a digital representation of the statue in the form of a 3D file. This can be achieved through techniques such as photogrammetry, laser scanning, or by finding an available 3D model online. Once we have the 3D file of the statue, we can begin the process of generating the point cloud.

Python offers a wide range of libraries for working with 3D data, and Open3D is an excellent choice for our purpose. Let’s start by installing Open3D in our Python environment. We can use pip to do this:

pip install open3d

Once Open3D is installed, we can load the statue’s 3D file and convert it into a point cloud. Here’s an example of the code:

import open3d as o3d

# Load the statue's 3D file
mesh = o3d.io.read_triangle_mesh("statue.ply")

# Convert it into a point cloud
point_cloud = mesh.sample_points_poisson_disk(5000)

# Save the point cloud as a PLY file
o3d.io.write_point_cloud("statue.ply", point_cloud)

In this example, we load the statue’s 3D file using o3d.io.read_triangle_mesh(). Then, we use the sample_points_poisson_disk() method to uniformly sample points on the model’s surface and convert it into a point cloud. Finally, we save the resulting point cloud as a PLY file using o3d.io.write_point_cloud().

Once we have generated the point cloud, we can once again utilize Open3D to visualize it interactively. Here’s a basic example:

import open3d as o3d

# Load the point cloud
point_cloud = o3d.io.read_point_cloud("statue.ply")

# Visualize the point cloud
o3d.visualization.draw_geometries([point_cloud])

In this code, we load the point cloud from the PLY file using o3d.io.read_point_cloud(). Then, we use o3d.visualization.draw_geometries() to visualize the point cloud in an interactive window.

Now, we can explore the “Éloge du pas à côte” statue from a whole new perspective through the generation and visualization of a point cloud.

See the complete notebook at the following link:

https://github.com/javiladino/pointcloud_bouffay_nantes

Related Projects

Discover the urban networks in Nantes with OSMnx and Python 🚶🚗🚲

June 13, 2023

Cyberattacks in Latin America and the Caribbean: What the data says

June 8, 2025

The functional art of generative urban posters: Fighting sexual harassment.

May 16, 2022
© Copyright 2025 Javier Ladino. Perfect Portfolio | Developed By Rara Theme. Powered by WordPress.