In this article, we will see how we can get the speeded up robust integral feature of image in mahotas. In computer vision, speeded up robust features (SURF) is a patented local feature detector and descriptor. It can be used for tasks such as object recognition, image registration, classification, or 3D reconstruction. It is partly inspired by the scale-invariant feature transform (SIFT) descriptor. For this we are going to use the fluorescent microscopy image from a nuclear segmentation benchmark. We can get the image with the help of command given below
mahotas.demos.nuclear_image()
Below is the nuclear_image
In order to do this we will use surf.integral method
Syntax : surf.integral(img)
Argument : It takes image object as argument
Return : It returns numpy.ndarray
Example 1 :
Python3
# importing various librariesimport mahotasimport mahotas.demosimport mahotas as mhimport numpy as npfrom pylab import imshow, showfrom mahotas.features import surf# loading nuclear imagenuclear = mahotas.demos.nuclear_image()# filtering imagenuclear = nuclear[:, :, 0]# adding gaussian filternuclear = mahotas.gaussian_filter(nuclear, 4)# showing imageprint("Image")imshow(nuclear)show()# getting Speeded-Up Robust integral featurei_img = surf.integral(nuclear)# showing imageprint("Integral Image")imshow(i_img)show() |
Output :
Example 2 :
Python3
# importing required librariesimport numpy as npimport mahotasfrom pylab import imshow, showfrom mahotas.features import surf # loading imageimg = mahotas.imread('dog_image.png') # filtering the imageimg = img[:, :, 0] # setting gaussian filtergaussian = mahotas.gaussian_filter(img, 5) # showing imageprint("Image")imshow(gaussian)show()# getting Speeded-Up Robust integral featurei_img = surf.integral(gaussian)# showing imageprint("Integral Image")imshow(i_img)show() |
Output :

