Open In App

Python – distort() method in Wand

Improve
Improve
Like Article
Like
Save
Share
Report

ImageMagick provides several ways to distort an image by applying various transformations against user-supplied arguments. In Wand, the method distort() is used, and follows a basic function.
 

Syntax : 
 

wand.image.distort(method, arguments, best_fit)

Parameters : 
 

Parameter Input Type Description
method basestring Black point, as a percentage of the system’s quantum range. Defaults to 0..
arguments collections.abc.Sequence Distortion method name from DISTORTION_METHODS.
best_fit bool Attempt to resize resulting image fit distortion. Defaults False. 
 

Following are the Distortion Methods : 
 

Distortion Method Description
‘undefined’ default Distortion Method
‘affine’ parallel type of distortion.
‘affine_projection’ kind of 3 parallelogram projection.
‘scale_rotate_translate’ transformation distortion
‘perspective’ 3 dimensional outwards projection distortion.
‘perspective_projection’ creates a away perspective.
‘bilinear_forward’ based on bilinear equation.
‘bilinear_reverse’ based on reverse bilinear equation.
‘polynomial’ based on polynomial.
‘arc’ creates a circular curve of image.
‘polar’ creates a polar distortion effect.
‘depolar’ creates a depolar distortion effect.
‘cylinder_2_plane’ creates a cylinder to plane distortion effect.
‘plane_2_cylinder’ creates a plane to cylinder distortion effect.
‘barrel’ creates outwards bump on 2d image.
‘barrel_inverse’ creates inwards bump on 2d image.
‘resize’ resize distortion image.
‘sentinel’ creates sentinel image distortion.

Source Image: 
 

Code Example 1: 
 

Python3




# Import Image from wand.image module
from wand.image import Image
 
# Read image using Image function
with Image(filename ="gog.png") as img:
    img.distort('arc', (45, ))
    img.save(filename ='gogdistort1.png')


Output Image: 
 

Code Example 2: 
Changing DISTORTION_METHOD to ‘perspective’. 
 

Python3




# Import Image from wand.image module
from wand.image import Image
 
# Read image using Image function
with Image(filename ="gog.png") as img:
    arguments = (0, 0, 20, 60,
                 90, 0, 70, 63,
                 0, 90, 5, 83,
                 90, 90, 85, 88)
    img.distort('perspective', arguments)
    img.save(filename ='gogdistort.png')


Output Image: 
 

 



Last Updated : 23 Dec, 2021
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads