I tried the optimization method (on windows), and it works, however, the result is not as expected. In the image below, you can see the output of the default example
pcd = load_ply("./real_plant_analyzed/PointCloud_1_0_1_0_10_0_7ee836e5a9/PointCloud.ply")
skel = load_json("./real_plant_analyzed/CurveSkeleton__TriangleMesh_0393cb5708/CurveSkeleton.json", "points")
with in blue = skel, and in green refined_skel.

To my opinion in this example the green points still show a clear zig-zag pattern sometimes even more than the original skeleton. What am I doing wrong?
I tried the optimization method (on windows), and it works, however, the result is not as expected. In the image below, you can see the output of the default example
with in blue = skel, and in green refined_skel.

To my opinion in this example the green points still show a clear zig-zag pattern sometimes even more than the original skeleton. What am I doing wrong?