-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTask4.py
More file actions
29 lines (23 loc) · 801 Bytes
/
Task4.py
File metadata and controls
29 lines (23 loc) · 801 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import cv2
import numpy as np
import matplotlib.pyplot as plt
import os
# Load image in grayscale
image = cv2.imread("E:\Academic 7th Sem\Image_Processing\Assignment_1\Image_Processing\Image.jpg", cv2.IMREAD_GRAYSCALE)
# Show image
plt.imshow(image, cmap='gray')
plt.title("Original Image")
plt.axis('off')
plt.show()
def block_average(image, block_size):
h, w = image.shape
output = image.copy()
for y in range(0, h, block_size):
for x in range(0, w, block_size):
block = image[y:y+block_size, x:x+block_size]
avg = int(np.mean(block))
output[y:y+block_size, x:x+block_size] = avg
return output
for size in [3, 5, 7]:
block_avg = block_average(image, size)
cv2.imwrite(f"Results/Task4/block_avg_{size}x{size}.png", block_avg)