Bạn có thể làm theo các bước dưới đây để chuyển đổi hình ảnh tỷ lệ màu xám thành hình ảnh nhị phân:
I- đọc hình ảnh thang độ xám bằng cách nhập CV2
import cv2
im_gray = cv2.imread['path_of_grayscale_image.png', cv2.CV_LOAD_IMAGE_GRAYSCALE]
ii- Chuyển đổi hình ảnh thang độ xám thành nhị phân
[thresh, im_bw] = cv2.threshold[im_gray, 128, 255, cv2.THRESH_BINARY | cv2.THRESH_OTSU]
trong đó xác định ngưỡng tự động từ hình ảnh bằng phương thức của OTSU hoặc nếu bạn đã biết ngưỡng bạn có thể sử dụng:
thresh = 127
im_bw = cv2.threshold[im_gray, thresh, 255, cv2.THRESH_BINARY][1]
iii- Lưu
cv2.imwrite['binary_image.png', im_bw]
Xem thảo luận
Cải thiện bài viết
Lưu bài viết
Xem thảo luận
Cải thiện bài viết
Lưu bài viết
Đọc
Thư viện quan trọng nhất cần thiết để xử lý hình ảnh trong Python là OpenCV. Hãy chắc chắn rằng bạn đã cài đặt thư viện vào Python của bạn. Đối với các bước để cài đặt OpenCV đề cập đến bài viết này: Thiết lập OpenCV với môi trường AnacondaOpenCV. Make sure you have installed the library into your Python. For steps for installing OpenCV refers to this article: Set up Opencv with anaconda environment
Approach:
- Đọc hình ảnh từ vị trí.
- Là một hình ảnh màu có các lớp RGB trong đó và phức tạp hơn, hãy chuyển đổi nó sang dạng thang độ xám của nó trước tiên.
- Thiết lập một dấu ngưỡng, các pixel phía trên dấu đã cho sẽ chuyển màu trắng và bên dưới điểm sẽ chuyển sang màu đen.
Dưới đây là việc thực hiện:
Python3
import
cv2
‘
[thresh, im_bw] = cv2.threshold[im_gray, 128, 255, cv2.THRESH_BINARY | cv2.THRESH_OTSU]
5=
[thresh, im_bw] = cv2.threshold[im_gray, 128, 255, cv2.THRESH_BINARY | cv2.THRESH_OTSU]
7[thresh, im_bw] = cv2.threshold[im_gray, 128, 255, cv2.THRESH_BINARY | cv2.THRESH_OTSU]
8[thresh, im_bw] = cv2.threshold[im_gray, 128, 255, cv2.THRESH_BINARY | cv2.THRESH_OTSU]
2thresh = 127
im_bw = cv2.threshold[im_gray, thresh, 255, cv2.THRESH_BINARY][1]
0thresh = 127
im_bw = cv2.threshold[im_gray, thresh, 255, cv2.THRESH_BINARY][1]
1thresh = 127
im_bw = cv2.threshold[im_gray, thresh, 255, cv2.THRESH_BINARY][1]
2=
[thresh, im_bw] = cv2.threshold[im_gray, 128, 255, cv2.THRESH_BINARY | cv2.THRESH_OTSU]
7[thresh, im_bw] = cv2.threshold[im_gray, 128, 255, cv2.THRESH_BINARY | cv2.THRESH_OTSU]
8[thresh, im_bw] = cv2.threshold[im_gray, 128, 255, cv2.THRESH_BINARY | cv2.THRESH_OTSU]
2thresh = 127
im_bw = cv2.threshold[im_gray, thresh, 255, cv2.THRESH_BINARY][1]
0thresh = 127
im_bw = cv2.threshold[im_gray, thresh, 255, cv2.THRESH_BINARY][1]
1thresh = 127
im_bw = cv2.threshold[im_gray, thresh, 255, cv2.THRESH_BINARY][1]
9cv2.imwrite['binary_image.png', im_bw]
0cv2.imwrite['binary_image.png', im_bw]
1cv2.imwrite['binary_image.png', im_bw]
2cv2.imwrite['binary_image.png', im_bw]
3[thresh, im_bw] = cv2.threshold[im_gray, 128, 255, cv2.THRESH_BINARY | cv2.THRESH_OTSU]
4cv2.imwrite['binary_image.png', im_bw]
5Output:
Ảnh gốc
Mẫu nhị phân
Nội dung
- Giới thiệu
- Các bước để chuyển đổi hình ảnh màu thành hình ảnh nhị phân
- Ví dụ 1: Chuyển đổi hình ảnh màu sang đen và trắng
- Ví dụ 2: Chuyển đổi hình ảnh tỷ lệ xám thành đen và trắng
- Bản tóm tắt
OpenCV - Chuyển đổi hình ảnh màu thành hình ảnh nhị phân
Đôi khi, bạn có thể cần chuyển đổi một hình ảnh thành hình ảnh nhị phân. Nói cách khác, bạn cần chuyển đổi hình ảnh màu hoặc hình ảnh màu xám thành hình ảnh đen trắng.
Trong hướng dẫn này, chúng ta sẽ học cách chuyển đổi hình ảnh từ màu sắc sang màu đen và trắng.
Các bước để chuyển đổi hình ảnh màu thành hình ảnh nhị phân
Ví dụ 1: Chuyển đổi hình ảnh màu sang đen và trắng
- Ví dụ 2: Chuyển đổi hình ảnh tỷ lệ xám thành đen và trắng
- Bản tóm tắt
OpenCV - Chuyển đổi hình ảnh màu thành hình ảnh nhị phân
Ví dụ 1: Chuyển đổi hình ảnh màu sang đen và trắng
Ví dụ 2: Chuyển đổi hình ảnh tỷ lệ xám thành đen và trắng
Bản tóm tắt
OpenCV - Chuyển đổi hình ảnh màu thành hình ảnh nhị phân
import cv2
#read image
img_grey = cv2.imread['D:/original.png', cv2.IMREAD_GRAYSCALE]
# define a threshold, 128 is the middle of black and white in grey scale
thresh = 128
# threshold the image
img_binary = cv2.threshold[img_grey, thresh, 255, cv2.THRESH_BINARY][1]
#save image
cv2.imwrite['D:/black-and-white.png',img_binary]
Đôi khi, bạn có thể cần chuyển đổi một hình ảnh thành hình ảnh nhị phân. Nói cách khác, bạn cần chuyển đổi hình ảnh màu hoặc hình ảnh màu xám thành hình ảnh đen trắng.
Trong hướng dẫn này, chúng ta sẽ học cách chuyển đổi hình ảnh từ màu sắc sang màu đen và trắng.
Ví dụ 2: Chuyển đổi hình ảnh tỷ lệ xám thành đen và trắng
Bản tóm tắt
OpenCV - Chuyển đổi hình ảnh màu thành hình ảnh nhị phân
import cv2
#read image as grey scale
img_grey = cv2.imread['D:/greyscale.png', cv2.IMREAD_GRAYSCALE]
# define a threshold, 128 is the middle of black and white in grey scale
thresh = 128
# threshold the image
img_binary = cv2.threshold[img_grey, thresh, 255, cv2.THRESH_BINARY][1]
#save image
cv2.imwrite['D:/black-and-white.png',img_binary]
Bản tóm tắt
OpenCV - Chuyển đổi hình ảnh màu thành hình ảnh nhị phân
Đôi khi, bạn có thể cần chuyển đổi một hình ảnh thành hình ảnh nhị phân. Nói cách khác, bạn cần chuyển đổi hình ảnh màu hoặc hình ảnh màu xám thành hình ảnh đen trắng.
- Trong hướng dẫn này, chúng ta sẽ học cách chuyển đổi hình ảnh từ màu sắc sang màu đen và trắng.
- Chuyển đổi một hình ảnh thành màu đen và trắng bao gồm hai bước.
- Đọc hình ảnh nguồn dưới dạng hình ảnh tỷ lệ màu xám.
- Chuyển đổi hình ảnh tỷ lệ màu xám thành nhị phân với ngưỡng bạn chọn.
- Nếu hình ảnh nguồn của bạn là hình ảnh tỷ lệ màu xám, thì bạn có thể đọc hình ảnh trong bước#1 dưới dạng hình ảnh gốc và tiếp tục với bước#2. Ví dụ sau minh họa hoạt động của ngưỡng khi chuyển đổi từ thang màu xám sang nhị phân hoặc đen và trắng.
- Trong ví dụ sau, chúng tôi sẽ đọc hình ảnh màu sau bằng cv2.imread [] làm hình ảnh tỷ lệ màu xám và sau đó áp dụng hàm cv2.threshold [] trên mảng hình ảnh.
- Hình ảnh đầu vào
- Chương trình Python