NayabShakeel commited on
Commit
dd7bca6
·
verified ·
1 Parent(s): fc8c35a

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +30 -12
app.py CHANGED
@@ -29,7 +29,7 @@ if uploaded_file is not None:
29
 
30
  # Display original image
31
  st.subheader("Original Image")
32
- st.image(image, caption="Uploaded Image", use_column_width=True)
33
 
34
  # Enhance Options
35
  st.subheader("Enhancement Options")
@@ -38,32 +38,53 @@ if uploaded_file is not None:
38
  "Contrast Enhancement",
39
  "Sharpening",
40
  "Denoising",
41
- "Edge Detection"
 
42
  ])
43
 
 
 
44
  if enhancement == "Brightness Adjustment":
45
  brightness = st.slider("Adjust Brightness", -100, 100, 0)
46
- enhanced_image = cv2.convertScaleAbs(image_np, beta=brightness)
47
  elif enhancement == "Contrast Enhancement":
48
  contrast = st.slider("Adjust Contrast", 1.0, 3.0, 1.0)
49
  alpha = contrast # Simple contrast control
50
  beta = 0 # Simple brightness control
51
- enhanced_image = cv2.convertScaleAbs(image_np, alpha=alpha, beta=beta)
52
  elif enhancement == "Sharpening":
53
  kernel = np.array([[0, -1, 0],
54
  [-1, 5, -1],
55
  [0, -1, 0]])
56
- enhanced_image = cv2.filter2D(image_np, -1, kernel)
57
  elif enhancement == "Denoising":
58
- enhanced_image = cv2.fastNlMeansDenoisingColored(image_np, None, 10, 10, 7, 21)
 
59
  elif enhancement == "Edge Detection":
60
- gray_image = cv2.cvtColor(image_np, cv2.COLOR_BGR2GRAY)
61
- edges = cv2.Canny(gray_image, 100, 200)
 
 
62
  enhanced_image = cv2.cvtColor(edges, cv2.COLOR_GRAY2BGR)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
63
 
64
  # Display Enhanced Image
65
  st.subheader("Enhanced Image")
66
- st.image(enhanced_image, caption="Enhanced Image", use_column_width=True)
67
 
68
  # Download Option
69
  st.subheader("Download Enhanced Image")
@@ -74,6 +95,3 @@ if uploaded_file is not None:
74
  file_name="enhanced_image.png",
75
  mime="image/png"
76
  )
77
-
78
- # Hugging Face Integration
79
- st.markdown("**Note:** Ensure this app is running on Hugging Face Spaces with the required dependencies listed in the `requirements.txt` file.")
 
29
 
30
  # Display original image
31
  st.subheader("Original Image")
32
+ st.image(image, caption="Uploaded Image", use_container_width=True)
33
 
34
  # Enhance Options
35
  st.subheader("Enhancement Options")
 
38
  "Contrast Enhancement",
39
  "Sharpening",
40
  "Denoising",
41
+ "Edge Detection",
42
+ "Apply All Enhancements"
43
  ])
44
 
45
+ enhanced_image = image_np
46
+
47
  if enhancement == "Brightness Adjustment":
48
  brightness = st.slider("Adjust Brightness", -100, 100, 0)
49
+ enhanced_image = cv2.convertScaleAbs(enhanced_image, beta=brightness)
50
  elif enhancement == "Contrast Enhancement":
51
  contrast = st.slider("Adjust Contrast", 1.0, 3.0, 1.0)
52
  alpha = contrast # Simple contrast control
53
  beta = 0 # Simple brightness control
54
+ enhanced_image = cv2.convertScaleAbs(enhanced_image, alpha=alpha, beta=beta)
55
  elif enhancement == "Sharpening":
56
  kernel = np.array([[0, -1, 0],
57
  [-1, 5, -1],
58
  [0, -1, 0]])
59
+ enhanced_image = cv2.filter2D(enhanced_image, -1, kernel)
60
  elif enhancement == "Denoising":
61
+ h = st.slider("Denoising Strength", 1, 20, 10)
62
+ enhanced_image = cv2.fastNlMeansDenoisingColored(enhanced_image, None, h, h, 7, 21)
63
  elif enhancement == "Edge Detection":
64
+ threshold1 = st.slider("Threshold 1", 50, 200, 100)
65
+ threshold2 = st.slider("Threshold 2", 50, 300, 200)
66
+ gray_image = cv2.cvtColor(enhanced_image, cv2.COLOR_BGR2GRAY)
67
+ edges = cv2.Canny(gray_image, threshold1, threshold2)
68
  enhanced_image = cv2.cvtColor(edges, cv2.COLOR_GRAY2BGR)
69
+ elif enhancement == "Apply All Enhancements":
70
+ # Apply all filters sequentially
71
+ brightness = 50
72
+ contrast = 1.5
73
+ h = 10
74
+ kernel = np.array([[0, -1, 0],
75
+ [-1, 5, -1],
76
+ [0, -1, 0]])
77
+ gray_image = cv2.cvtColor(enhanced_image, cv2.COLOR_BGR2GRAY)
78
+ edges = cv2.Canny(gray_image, 100, 200)
79
+ enhanced_image = cv2.convertScaleAbs(enhanced_image, beta=brightness)
80
+ enhanced_image = cv2.convertScaleAbs(enhanced_image, alpha=contrast, beta=0)
81
+ enhanced_image = cv2.filter2D(enhanced_image, -1, kernel)
82
+ enhanced_image = cv2.fastNlMeansDenoisingColored(enhanced_image, None, h, h, 7, 21)
83
+ edges = cv2.cvtColor(edges, cv2.COLOR_GRAY2BGR)
84
 
85
  # Display Enhanced Image
86
  st.subheader("Enhanced Image")
87
+ st.image(enhanced_image, caption="Enhanced Image", use_container_width=True)
88
 
89
  # Download Option
90
  st.subheader("Download Enhanced Image")
 
95
  file_name="enhanced_image.png",
96
  mime="image/png"
97
  )