Mahotas – Getting Infocusness of each pixel

In this article we will see how we can get the infocusness of each pixel in mahotas. In order to get the infocusness of each pixel we will use the sobel operator. The Sobel operator, sometimes called the Sobel–Feldman operator or Sobel filter, is used in image processing and computer vision, particularly within edge detection algorithms where it creates an image emphasizing edges.
In this tutorial we will use “lena” image, below is the command to load it.
mahotas.demos.load('lena')
Below is the lena image
In order to do this we will use mahotas.sobel method
Syntax : mahotas.sobel(2d_img)
Argument : It takes two dimensional image object as argument
Return : It returns image object
Below is the implementation
Python3
# importing required librariesimport mahotasimport mahotas.demosfrom pylab import gray, imshow, showimport numpy as np # loading imageimg = mahotas.demos.load('lena')# showing imageprint("Image")imshow(img)show()# getting infocusness of each pixelfocus = np.array([mahotas.sobel(t, just_filter = True) for t in img])# showing focus pixelprint("Focus Image")imshow(focus)show() |
Output :
Image
Focus Image
Another example
Python3
# importing required librariesimport mahotasimport numpy as npfrom pylab import gray, imshow, showimport os # loading imageimg = mahotas.imread('dog_image.png') # filtering imageimg = img[:, :, :3]# showing imageprint("Image")imshow(img)show()# getting infocusness of each pixelfocus = np.array([mahotas.sobel(t, just_filter = True) for t in img])# showing focus pixelprint("Focus Image")imshow(focus)show() |
Output :
Image
Focus Image




