2016-04-27 14 views
0

Ich möchte mehrere Teile eines Bildes mit Wand extrahieren.Bild mit Wand schneiden

Ich habe gerade eine Funktion zum Zuschneiden (in-place) des Bildes img.crop(left, top, right, bottom) gefunden, aber beachten Sie die Slicing one wie sie sagen in the doc.

Hinweis

Wenn Sie das Bild zuschneiden möchten, aber nicht an Ort und Stelle, Schneiden Verwendung Betreiber.

Antwort

1

Sehen Sie sich die test_slice_crop-Methode im Testverzeichnis für Beispiele an.

with Image(filename='source.jpg') as img: 
    with img[100:200, 100:200] as cropped: 
     # The `cropped' is an instance if wand.image.Image, 
     # and can be manipulated independently of `img' instance. 
     pass 

bearbeiten

Zur Komplettierung, slice ist eine integrierte Funktion in Python eine Reihe von Iterationen (d.h. a[start:stop:step]) darzustellen. Kurz Hand Matrix zu ermöglichen Iterationen

wand_instance[x:width, y:height] 

Hier ist ein Beispiel der Erzeugung von 10px Spalten in wird diese verwendet ...

from wand.image import Image 

with Image(filename="rose:") as rose: 
    x = 0 
    chunk_size = 10 
    while True: 
     try: 
      with rose[x:x+chunk_size, 0:rose.height] as chunk: 
       chunk.save(filename='rose_{0}.png'.format(x)) 
       x += chunk_size 
     except IndexError: 
      break 

sliced image

Verwandte Themen