-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathvisualize.py
More file actions
27 lines (22 loc) · 1.12 KB
/
visualize.py
File metadata and controls
27 lines (22 loc) · 1.12 KB
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
import cv2
import numpy as np
import matplotlib.pylab as plt
img = cv2.imread('/media/quiil/data1/data/sesame/powdery_mildew/img/IMG_0182.jpg',
cv2.IMREAD_GRAYSCALE) # 이미지를 그레이 스케일로 읽기
img_origin = cv2.imread('/media/quiil/data1/data/sesame/powdery_mildew/img/IMG_0182.jpg',
cv2.IMREAD_COLOR) # 이미지를 그레이 스케일로 읽기
# --- ① NumPy API로 바이너리 이미지 만들기
threshold = 195
thresh_np = np.zeros_like(img) # 원본과 동일한 크기의 0으로 채워진 이미지
thresh_np[img > threshold] = 255 # 127 보다 큰 값만 255로 변경
# ---② OpenCV API로 바이너리 이미지 만들기
ret, thresh_cv = cv2.threshold(img, threshold, 255, cv2.THRESH_BINARY)
print(ret) # 127.0, 바이너리 이미지에 사용된 문턱 값 반환
# ---③ 원본과 결과물을 matplotlib으로 출력
imgs = {'Original': img_origin, 'NumPy API': thresh_np, 'cv2.threshold': thresh_cv}
for i, (key, value) in enumerate(imgs.items()):
plt.subplot(1, 3, i + 1)
plt.imshow(value, cmap='gray')
plt.xticks([])
plt.yticks([])
plt.show()