Heim > Backend-Entwicklung > Python-Tutorial > Detaillierte Erklärung, wie Python binäre Mnist-Instanzen liest

Detaillierte Erklärung, wie Python binäre Mnist-Instanzen liest

黄舟
Freigeben: 2017-06-04 10:18:46
Original
2005 Leute haben es durchsucht

Dieser Artikel stellt hauptsächlich die relevanten Informationen zu Pythondetaillierte Erklärung zum Lesen binärer Mnist-Instanzen vor. Freunde in Not können sich auf

detaillierte Erklärung zum Lesen binärer Mnist-Instanzen in Python beziehen

Trainingsdaten-Datenstruktur:

<br>[offset] [type]     [value]     [description]
0000   32 bit integer 0x00000803(2051) magic number
0004   32 bit integer 60000      number of images
0008   32 bit integer 28        number of rows
0012   32 bit integer 28        number of columns
0016   unsigned byte  ??        pixel
0017   unsigned byte  ??        pixel
........
xxxx   unsigned byte  ??        pixel
Nach dem Login kopieren

Die gesamte Datei einlesen in:

filename = &#39;train-images.idx3-ubyte&#39;
binfile = open(filename , &#39;rb&#39;)
buf = binfile.read()
Nach dem Login kopieren

Lesen Sie die ersten vier 32-Bit-Zahlen:

index = 0
magic, numImages , numRows , numColumns = struct.unpack_from(&#39;>IIII&#39; , buf , index)
index += struct.calcsize(&#39;>IIII&#39;)
Nach dem Login kopieren

Lesen Sie ein Bild, 784=28*28:

im = struct.unpack_from(&#39;>784B&#39; ,buf, index)
index += struct.calcsize(&#39;>784B&#39;)
 
im = np.array(im)
im = im.reshape(28,28)
 
fig = plt.figure()
plotwindow = fig.add_subplot(111)
plt.imshow(im , cmap=&#39;gray&#39;)
plt.show()
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonDetaillierte Erklärung, wie Python binäre Mnist-Instanzen liest. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage