使用Python序列化Drake对象

时间:2019-11-21 19:27:06

标签: drake

有什么方法可以序列化和反序列化对象(例如 pydrake.trajectories.PiecewisePolynomial,Expression ...)使用泡菜 或其他方式?

当我序列化它时,它不会抱怨,但是在尝试从文件中加载时,它不会抱怨 它抱怨:

TypeError: pybind11_object.__new__(pydrake.trajectories.PiecewisePolynomial) is not safe, use object.__new__()

1 个答案:

答案 0 :(得分:0)

是否有您要序列化/泡菜的类列表?

我可以为您创建一个问题,或者如果您已经有了清单,也可以创建一个问题。


更多背景:

pybind11的酸洗(pydrake使用的酸洗)必须手动定义: https://pybind11.readthedocs.io/en/stable/advanced/classes.html#pickling-support

当前,我们在Drake中没有用于序列化所有内容的路线图,因此,这是每个类的基础。

例如,腌制RigidTransformissue linkPR link

CameraInfo的更简单的酸洗示例:PR link

(FTR,如果一个对象很容易从其构造参数中恢复,则定义酸洗应该很简单。