1 回答

TA貢獻1873條經驗 獲得超9個贊
如果您可以直接從套接字讀取數(shù)據(jù),則可以使用 將套接字轉換為文件對象,然后像使用常規(guī)文件一樣makefile()提供套接字。imread讀取時記得設置編解碼器:
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
# don't read from your socket, instead, call this where you would call read
fp = your_socket.makefile()
with fp:
img = mpimg.imread(fp, format='jpeg')
plt.imshow(img)
plt.show()
我已經搜索過,但找不到直接從 matplotlib 中的字節(jié)解碼圖像的方法。如果由于已經有了 bytes 數(shù)組而無法使用上述解決方案,則可以使用BytesIO創(chuàng)建臨時緩沖區(qū):
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
import io
fp = io.BytesIO(data)
with fp:
img = mpimg.imread(fp, format='jpeg')
plt.imshow(img)
plt.show()
添加回答
舉報