Open In App

Wand statistic function – Python

Improve
Improve
Like Article
Like
Save
Share
Report

The statistic() function is an inbuilt function in the Python Wand ImageMagick library which is used to replace each pixel with the statistic results from neighboring pixel values. The width & height defines the size, or aperture, of the neighboring pixels.
 

Syntax: 
 

statistic(stat, width, height, channel)

Parameters: This function accepts four parameters as mentioned above and defined below: 
 

  • stat: This parameter stores the type of statistic to calculate. Some of the available statistics are ‘undefined’, ‘gradient’, ‘maximum’, ‘mean’, ‘median’, ‘minimum’, ‘mode’, ‘nonpeak’, ‘root_mean_square’, ‘standard_deviation’.
  • width: This parameter stores the size of neighboring pixels on the X-axis.
  • height: This parameter stores the size of neighboring pixels on the Y-axis.
  • channel: This parameter stores the available color channel.

Return Value: This function returns the Wand ImageMagick object.

Original Image: 
 

Example 1: 
 

Python3




# Import library from Image
from wand.image import Image
 
# Import the image
with Image(filename ='../geeksforgeeks.png') as image:
    # Clone the image in order to process
    with image.clone() as statistic:
        # Invoke statistic function with statistic as median, width as 20
        # height as 10, channel as 'yellow'
        statistic.statistic('median', 20, 10, 'yellow')
        # Save the image
        statistic.save(filename ='statistic1.jpg')


Output: 
 

Example 2: 
 

Python3




# Import libraries from the wand 
from wand.image import Image
from wand.drawing import Drawing
from wand.color import Color
 
with Drawing() as draw:
    # Set Stroke color the circle to black
    draw.stroke_color = Color('black')
    # Set Width of the circle to 2
    draw.stroke_width = 1
    # Set the fill color to 'White (# FFFFFF)'
    draw.fill_color = Color('white')
 
    # Invoke Circle function with center at 50, 50 and radius 25
    draw.circle((200, 200), # Center point
                (100, 100)) # Perimeter point
    # Set the font style
    draw.font = '../Helvetica.ttf'
    # Set the font size
    draw.font_size = 30
     
    with Image(width = 400, height = 400, background = Color('# 45ff33')) as pic:
        # Set the text and its location
        draw.text(int(pic.width / 3), int(pic.height / 2), 'GeeksForGeeks !')
        # Draw the picture
        draw(pic)
        # Invoke statistic function with statistic as root_mean_square, width as 20
        # height as 10, channel as 'green'
        pic.statistic('root_mean_square', 20, 10, 'green')
        # Save the image
        pic.save(filename ='statistic2.jpg')


Output: 
 

 



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