File size: 2,081 Bytes
ecc16d3
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# Sample Images Creation Script

import cv2
import numpy as np
import os

def create_sample_images():
    """Create sample blurred and sharp images for testing"""
    
    # Create data directory if it doesn't exist
    os.makedirs('data/sample_images', exist_ok=True)
    
    # Generate a sharp test image
    height, width = 480, 640
    
    # Create a test pattern with various features
    sharp_image = np.zeros((height, width, 3), dtype=np.uint8)
    
    # Add geometric shapes
    cv2.rectangle(sharp_image, (50, 50), (200, 150), (255, 0, 0), -1)  # Blue rectangle
    cv2.circle(sharp_image, (400, 200), 80, (0, 255, 0), -1)  # Green circle
    cv2.line(sharp_image, (100, 300), (500, 350), (0, 0, 255), 5)  # Red line
    
    # Add text
    cv2.putText(sharp_image, 'SHARP IMAGE TEST', (150, 400), 
                cv2.FONT_HERSHEY_SIMPLEX, 1, (255, 255, 255), 2)
    
    # Save sharp image
    cv2.imwrite('data/sample_images/sharp_test.png', sharp_image)
    
    # Create motion blurred version
    motion_kernel = np.zeros((15, 15))
    motion_kernel[7, :] = 1/15  # Horizontal motion blur
    motion_blurred = cv2.filter2D(sharp_image, -1, motion_kernel)
    cv2.imwrite('data/sample_images/motion_blurred.png', motion_blurred)
    
    # Create Gaussian blurred version (defocus blur)
    gaussian_blurred = cv2.GaussianBlur(sharp_image, (15, 15), 5)
    cv2.imwrite('data/sample_images/defocus_blurred.png', gaussian_blurred)
    
    # Create noisy blurred version
    noise = np.random.normal(0, 25, sharp_image.shape).astype(np.uint8)
    noisy_blurred = cv2.add(gaussian_blurred, noise)
    cv2.imwrite('data/sample_images/noisy_blurred.png', noisy_blurred)
    
    print("Sample images created successfully!")
    print("Files created:")
    print("- data/sample_images/sharp_test.png")
    print("- data/sample_images/motion_blurred.png") 
    print("- data/sample_images/defocus_blurred.png")
    print("- data/sample_images/noisy_blurred.png")

if __name__ == "__main__":
    create_sample_images()