İyi günler,Bir yuva üzerinde çok boyutlu bir numpy dizisi gönder
Bunun için aradık ama herhangi bir yanıt almadık. Bir soket üzerinde çok boyutlu bir numpy dizisi göndermek istiyorum. Dolayısıyla, bir dizeye dönüştürmek için karar:
>>> import numpy as np
>>> x = np.array([[0, 1], [2, 3]])
>>> xstring = x.tostring()
>>> print xstring
>>> print x
[[0 1]
[2 3]]
>>> print xstring
>>> nparr = np.fromstring(xstring, dtype=np.uint8)
>>> print nparr
[0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0]
Ben nedense dizeye dönüşüm elde bunun boyutu kaydedebilirsiniz yine de var mı: Ancak
, bu dizinin temsilini yok eder ?
Turşu son derece yavaş ve benim 2d dizi masif yaptı. Ayrıca bazen programımı – ovfstack
@ovfstack istisnaları ile çöktü: Haklısınız. Python 3'te, büyük diziler için ek yük önemsizdir ve '.tostring()' olarak iki kat daha yavaş çalışır. Python 2 için, eğer 'protocol = 2' belirtirseniz büyük bir gelişme görmelisiniz, yine de bu durumda .tostring() 'den 4 kez daha yavaş görünüyor. –
Sadece opencv'nin sağladığı imencode işlevini kullandım. Ayrıca dizimi "sıkıştırmak" mümkün ve imdecode iyi doğruluk ile onu kurtarmak mümkün oldu – ovfstack