有什么方法可以序列化和反序列化对象(例如 pydrake.trajectories.PiecewisePolynomial,Expression ...)使用泡菜 或其他方式?
当我序列化它时,它不会抱怨,但是在尝试从文件中加载时,它不会抱怨 它抱怨:
TypeError: pybind11_object.__new__(pydrake.trajectories.PiecewisePolynomial) is not safe, use object.__new__()
答案 0 :(得分:0)
是否有您要序列化/泡菜的类列表?
我可以为您创建一个问题,或者如果您已经有了清单,也可以创建一个问题。
更多背景:
pybind11
的酸洗(pydrake
使用的酸洗)必须手动定义:
https://pybind11.readthedocs.io/en/stable/advanced/classes.html#pickling-support
当前,我们在Drake中没有用于序列化所有内容的路线图,因此,这是每个类的基础。
例如,腌制RigidTransform
:issue link和PR link
CameraInfo
的更简单的酸洗示例:PR link
(FTR,如果一个对象很容易从其构造参数中恢复,则定义酸洗应该很简单。