Konvertieren von Dateien in das digitale Bild, andernfalls mit "Kachel nicht erweitern, außerhalb der Bild"
Ich versuche einige der arbeiten aus dem blog-posting http://sarvamblog.blogspot.com/2013/04/clustering-malware-corpus.html
import itertools
import glob
import numpy,scipy, os, array
from scipy.misc import imsave
for filename in list(glob.glob('file/*.file')):
f = open(filename,'rb');
#just want to make sure I get the right file'
print filename
ln = os.path.getsize(filename); # length of file in bytes
width = 256;
rem = ln%width;
a = array.array("B"); # uint8 array
a.fromfile(f,ln-rem);
f.close();
g = numpy.reshape(a,(len(a)/width,width));
g = numpy.uint8(g);
fpng = filename + ".png"
# make sure the png process and everything else is going'
print fpng
scipy.misc.imsave(fpng,g);`
Und obwohl dieser läuft Super auf 1 oder 2 Dateien, die ich laufen in Probleme auf einmal, die ich erweitern, um Dutzende
Traceback (most recent call last):
File "<stdin>", line 14, in <module>
File "/usr/lib/python2.7/dist-packages/scipy/misc/pilutil.py", line 120, in imsave
im = toimage(arr)
File "/usr/lib/python2.7/dist-packages/scipy/misc/pilutil.py", line 183, in toimage
image = Image.fromstring('L',shape,bytedata.tostring())
File "/usr/lib/python2.7/dist-packages/PIL/Image.py", line 1797, in fromstring
im.fromstring(data, decoder_name, args)
File "/usr/lib/python2.7/dist-packages/PIL/Image.py", line 590, in fromstring
d.setimage(self.im)
ValueError: tile cannot extend outside image
Ich gehe davon aus, dass mein Problem mit der nicht entweder Ein: das schließen des scipy.misc.imsave oder B: nicht zurücksetzen arrarys. Jegliche Hilfe würde sehr geschätzt werden
- Es kann auch verursacht werden, indem das Bild selbst beschädigt? Drucken Sie jede Datei vor der Verarbeitung, um zu sehen, wenn es wiederholt nicht auf eine Besondere. Dann versuchen Sie, nur, dass man auf seine eigenen
- Sie haben versucht, die Verwendung von bitmap-Bildern?
- Meinst du den Ausgabe-oder den Eingabe - > Die Dateien an sich sind eigentlich binäre ausführbare Dateien. Das Ziel ist, erstellen Sie eine image-Datei ist ein visual Vertreter der ausführbaren Datei.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwaltet, um es herauszufinden mit einem try/except-Schleife. Einmal habe ich, dass ich in der Lage zu bestimmen, dass nur bestimmte Dateien wurden mit dem Abbrechen. Diese Dateien sind extrem klein (125 bytes). Meine Vermutung ist, dass Sie zu klein waren, um alle die info benötigt, für scipy
im.crop(box) ⇒ Bild
Die box ist ein 4-Tupel der Definition der linken, oberen, rechten und unteren pixel-Koordinate.
beim unteren ist kleiner als die Obere in meinem code dieser Fehler passiert ist.