0% found this document useful (0 votes)
8 views

Program9 & 10 Updated

Gg program 9 and 10

Uploaded by

Raghu Nayak
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views

Program9 & 10 Updated

Gg program 9 and 10

Uploaded by

Raghu Nayak
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

9.

Read an image and extract and display low-level features such as edges, textures using filtering
techniques.

import cv2

import numpy as np

import matplotlib.pyplot as plt

#read an imput image

input_img= cv2.imread("prog7_flower.jpg")

original = cv2.cvtColor(input_img, cv2.COLOR_BGR2RGB)

img=cv2.cvtColor(original, cv2.COLOR_RGB2GRAY)

#prewitt Kernel

kernelX= np.array([[-1,-1,-1], [0,0,0], [1,1,1]])

kernelY= np.array([[-1,0,1], [-1,0,1], [-1,0,1]])

prewittX= cv2.filter2D(img, -1, kernelX)

prewittY= cv2.filter2D(img, -1, kernelY)

#USING SOBEL OPERATOR

SobelX=cv2.Sobel(img, cv2.CV_64F, 1, 0)

SobelY=cv2.Sobel(img, cv2.CV_64F, 0, 1)

#USING CANNY EDGE

canny_edge = cv2.Canny(img, 100, 200)

#texture Extraction

kernel=np.ones((5,5), np.float32)/25

texture=cv2.filter2D(img, -1, kernel)

fig = plt.figure(figsize=(10, 7))


rows= 3

columns = 4

fig.add_subplot(rows, columns, 1)

# Display the original and processed images

plt.title('Original Image')

plt.imshow(original)

fig.add_subplot(rows, columns, 2)

plt.title('X gradient- Prewit')

plt.imshow(prewittX)

fig.add_subplot(rows, columns, 3)

plt.title('X gradient- Prewit')

plt.imshow(prewittY)

fig.add_subplot(rows, columns, 4)

plt.title('Output of Prewitt filter')

plt.imshow(prewittX + prewittY)

fig.add_subplot(rows, columns, 5)

plt.title('X gradient- SobelX')

plt.imshow(SobelX)

fig.add_subplot(rows, columns, 6)

plt.title('X gradient- SobelY')

plt.imshow(SobelY)

fig.add_subplot(rows, columns, 7)

plt.title('Output of Sobel filter')

plt.imshow(SobelX + SobelY)
fig.add_subplot(rows, columns, 8)

plt.title('Canny Edge Detector')

plt.imshow(canny_edge)

fig.add_subplot(rows, columns, 9)

plt.title('Texture')

plt.imshow(texture)

10. Write a program to blur and smoothing an image

import cv2

import matplotlib.pyplot as plt

# Load the image

Bgr_image = cv2.imread("D:/DSATM/CG/CG&DIP/Lab_Images/Prog7_flower.jpg")

image = cv2.cvtColor(Bgr_image, cv2.COLOR_BGR2RGB)

#Image-Gaussian-noise

Bgr_guass_image = cv2.imread("D:/DSATM/CG/CG&DIP/Lab_Images/Image-Gaussian-noise.png")

GuassNoise_image= cv2.cvtColor(Bgr_guass_image, cv2.COLOR_BGR2RGB)


# Gaussian Blur

gaussian_blur = cv2.GaussianBlur(image, (5, 5), 0)

Guass_Noise = cv2.GaussianBlur(GuassNoise_image, (5, 5), 0)

# Median Blur

median_blur = cv2.medianBlur(image, 5)

Guass_median_blur = cv2.medianBlur(GuassNoise_image, 5)

# Bilateral Filter Smoothing

bilateral_filter = cv2.bilateralFilter(image, 9, 75, 75)

fig = plt.figure(figsize=(10, 7))

rows= 3

columns = 3

fig.add_subplot(rows, columns, 1)

# Display the original and processed images

plt.title('Original Image')

plt.imshow(image)

#plt.show()

fig.add_subplot(rows, columns, 2)

plt.title('Gaussian Blur')

plt.imshow(gaussian_blur)

fig.add_subplot(rows, columns, 3)

plt.title('Median Blur')

plt.imshow(median_blur)
fig.add_subplot(rows, columns, 4)

#cv2.imshow('Original Image', image)

plt.title('Original Noise Image')

plt.imshow(GuassNoise_image)

fig.add_subplot(rows, columns, 5)

plt.title('Gaussian Noise Removal')

plt.imshow(Guass_Noise)

fig.add_subplot(rows, columns, 6)

plt.title(' Median Blur for Guassian Noise')

plt.imshow(Guass_median_blur)

fig.add_subplot(rows, columns, 7)

plt.title('Bilateral Filter')

plt.imshow(bilateral_filter)

You might also like