Extracting the centerline of a tunnel point cloud

You can get a centerline curve from a model or segmentation using VMTK extension’s Extract centerline module.

By “point cloud” do you mean you have a labelmap volume where certain points are labeled as tunnel points; or you have a list of points in a vtkPolyData in completely random positions? If it is the former then you don’t need any processing using pyvista but you can load the volume directly into Slicer.