Python – distort() method in Wand
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
from wand.image import Image
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
from wand.image import Image
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
Share your thoughts in the comments
Please Login to comment...