Wa0005
Wa0005
*/
import numpy as np
check[::2, 1::2] = 1
check[1::2, ::2] = 1
plt.matshow(check, cmap='gray')
plt.show()
Output:-
/*2. Write a program to read and display the image.*/
camera = data.camera()
plt.figure(figsize=(4, 4))
plt.axis('off')
plt.tight_layout()
plt.show()
Output:-
/*3. Write a program for Otsu threshold.*/
camera = data.camera()
plt.imshow(camera)
val = filters.threshold_otsu(camera)
plt.imshow(mask)
Output:-
/*4. Write a program to filter the image using a Sobel filter.*/
text = data.text()
hsobel_text = filters.sobel_h(text)
plt.figure(figsize=(12, 3))
plt.subplot(121)
plt.axis('off')
plt.subplot(122)
plt.axis('off')
Output:-
/*5. Write a program to extract the Hue and Value channels from Color
image..*/
rgb_img = data.astronaut()
hsv_img = rgb2hsv(rgb_img)
hue_img = hsv_img[:, :, 0]
value_img = hsv_img[:, :, 2]
ax0.imshow(rgb_img)
ax0.set_title("RGB image")
ax0.axis('off')
ax1.imshow(hue_img, cmap='hsv')
ax1.set_title("Hue channel")
ax1.axis('off')
ax2.imshow(value_img)
ax2.set_title("Value channel")
ax2.axis('off')
fig.tight_layout()
hue_threshold = 0.06
ax0.set_xbound(0, 0.12)
ax1.imshow(binary_img)
ax1.set_title("Hue-thresholded image")
ax1.axis('off')
fig.tight_layout()
Output:-
/*6. Write a program to perform the log transformation on the image.*/
import imageio
import numpy as np
pic = imageio.imread('E:\codes\parrot.png')
gray = gray(pic)
'''
log transform
-> s = c*log(1+r)
-> c = (L-1)/log(1+|I_max|)
'''
max_ = np.max(gray)
def log_transform():
plt.figure(figsize = (5,5))
plt.axis('off');
Output:-
/*7. Write a program to perform an intensity transformation on the im-
age.*/
import imageio
import warnings
import matplotlib.cbook
warnings.filterwarnings("ignore",category=matplotlib.cbook.mplDeprecation)
pic = imageio.imread('E:\codes\parrot.png')
plt.figure(figsize = (6,6))
plt.imshow(pic);
plt.axis('off');
plt.figure(figsize = (6,6))
plt.imshow(negative)
plt.axis('off');
Output:-
/*8. Write a program to perform the gamma correction on the image.*/
import imageio
# Gamma encoding
pic = imageio.imread('E:\codes\parrot.png')
plt.imshow(pic)
plt.figure(figsize = (5,5))
plt.imshow(gamma_correction)
plt.axis('off');
Output:-
/*9. Write a program to detect the highest pixel values from the input im-
age.*/
pic=imageio.imread('E:\codes\purple.png')
plt.imshow(pic)
plt.axis('off');
red_mask=pic[:,:,0]<180
pic[red_mask]=0
plt.figure(figsize=(15,15))
plt.imshow(pic)
plt.axis('off');
pic=imageio.imread('E:\codes\purple.png')
green_mask=pic[:,:,1]<180
pic[green_mask]=0
plt.figure(figsize=(15,15))
plt.imshow(pic)
plt.axis('off');
pic=imageio.imread('E:\codes\purple.png')
blue_mask=pic[:,:,2]<180
pic[blue_mask]=0
plt.figure(figsize=(15,15))
plt.imshow(pic)
plt.axis('off');
pic=imageio.imread('E:\codes\purple.png')
final_mask=np.logical_and(red_mask,green_mask,blue_mask)
pic[final_mask]=40
plt.figure(figsize=(15,15))
plt.imshow(pic)
plt.axis('off');
Output:-
/*10. Write a program to perform the Gaussian, median filter and total
variation denoising from the input.*/
import numpy as np
coins = data.coins()
plt.figure(figsize=(16, 4))
plt.subplot(141)
plt.axis('off')
plt.title('Image')
plt.subplot(142)
interpolation='nearest')
plt.axis('off')
plt.title('Gaussian filter')
plt.subplot(143)
plt.axis('off')
plt.title('Median filter')
plt.subplot(144)
interpolation='nearest')
plt.axis('off')
plt.title('TV filter')
plt.show()
Output:-
/*11. Write a program for image convolution.*/
import numpy as np
import imageio
conv_bucket = []
for d in range(image.ndim):
mode="same", boundary="symm")
conv_bucket.append(conv_channel)
kernel_sizes = [9,15,30,60]
pic = imageio.imread('F:\python_stuff\codes\parrot.png')
kernel = np.ones((k,k))
kernel /= np.sum(kernel)
ax.imshow(Convolution(pic, kernel));
ax.set_axis_off();
Output:-
/*12. Write a program to detect the edge of an image using edge kernel
method.*/
import numpy as np
import imageio
pic = imageio.imread('E:\codes\crazycat.png')
img = color.rgb2gray(pic)
sharpen_kernel = np.array([[0,-1,0],
[-1,5,-1],
[0,-1,0]])
edge_kernel = np.array([[-1,-1,-1],
[-1,8,-1],
[-1,-1,-1]])
# apply normalize box blur filter to the edge detection filtered image
blur_kernel = np.array([[1,1,1],
[1,1,1],
[1,1,1]])/9.0;
denoised_equalized =
exposure.equalize_adapthist(denoised/np.max(np.abs(denoised)),
clip_limit=0.03)
plt.figure(figsize = (5,5))
plt.imshow(denoised_equalized, cmap='gray')
plt.axis('off')
plt.show()
Output:-