[SciPy-User] Numpy pickle format
David Baddeley
david_baddeley at yahoo.com.au
Wed Nov 24 17:00:56 EST 2010
I was wondering if anyone could point me to any documentation for the (binary)
format of pickled numpy arrays.
To put my request into context, I'm using Pyro to communicate between python and
jython, and would like push numpy arrays into the python end and pull something
I can work with in jython out the other end (I was thinking of a minimal class
wrapping the std libraries array.array, and having some form of shape property
(I can pretty much guarantee that the data going in is c-contiguous, so there
shouldn't be any strides nastiness).
The proper way to do this would be to convert my numpy arrays to this minimal
wrapper before pushing them onto the wire, but I've already got a fair bit of
python code which pushes arrays round using Pyro, which I'd prefer not to have
to rewrite. The pickle representation of array.array is also slightly different
(broken) between cPython and Jython, and although you can pickle and unpickle,
you end up swapping the endedness, so to recover the data [in the Jython ->
Python direction] you've got to create a numpy array and then a view of that
with reversed endedness.
What I was hoping to do instead was to construct a dummy numpy.ndarray class in
jython which knew how to pickle/unpickle numpy arrays.
The ultimate goal is to create a Python -> ImageJ bridge so I can push images
from some python image processing code I've got across into ImageJ without
having to manually save and open the files.
Would appreciate any suggestions,
thanks,
David
More information about the SciPy-User
mailing list