Wand affine distort() function in Python

Affine distortion method performs shear operation to the image. Arguments are similar to perspective distortion method, but only need a pair of 3 points and 12 Real numbers in the manner shown below:
src1x, src1y, dst1x, dst1y, src2x, src2y, dst2x, dst2y, src3x, src3y, dst3x, dst3y
Syntax: wand.image.distort(‘affine’, arguments)
Input Image:
Example #1:
Python3
# Import Color from wand.color modulefrom wand.color import Color# Import Image from wand.image modulefrom wand.image import Imagewith Image(filename ='gog.png') as img: img.resize(140, 92) img.background_color = Color('skyblue') img.virtual_pixel = 'background' args = ( 10, 10, 15, 15, # Point 1: (10, 10) => (15, 15) 139, 0, 100, 20, # Point 2: (139, 0) => (100, 20) 0, 92, 50, 80 # Point 3: (0, 92) => (50, 80) ) # affine distortion using distort function img.distort('affine', args) img.save(filename ="affinegfg.png") |
Output:
Example #2:
changing argument values.
Python3
# Import Color from wand.color modulefrom wand.color import Color# Import Image from wand.image modulefrom wand.image import Imagewith Image(filename ='gog.png') as img: img.resize(140, 92) img.background_color = Color('skyblue') img.virtual_pixel = 'background' args = ( 20, 21, 12, 11, # Point 1: (10, 10) => (15, 15) 38, 1, 17, 0, # Point 2: (139, 0) => (100, 20) 7, 92, 50, 80 # Point 3: (0, 92) => (50, 80) ) # affine distortion using distort function img.distort('affine', args) img.save(filename ="affinegfg2.png") |
Output:




