Image::deserialize no longer allocates an ImageBuf at each frame, but reuses the same if possible