Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Thực hiện ngưỡng nhị phân ngược (inverse binary thresholding) trên ảnh bằng OpenCV


Trong chương trình này, chúng ta sẽ thực hiện ngưỡng nhị phân ngược (inverse binary thresholding) trên ảnh bằng openCV. Ngưỡng là quá trình thay đổi giá trị mỗi pixel liên quan đến giá trị ngưỡng. Pixel được gán giá trị nhất định nếu nó nhỏ hơn ngưỡng và giá trị khác nếu lớn hơn ngưỡng. Trong inverse binary thresholding, nếu giá trị pixel nhỏ hơn ngưỡng, nó sẽ được gán giá trị tối đa (trắng). Nếu lớn hơn ngưỡng, nó sẽ được gán 0 (đen).

Ảnh gốc

Thực hiện ngưỡng nhị phân ngược (inverse binary thresholding) trên ảnh bằng OpenCV

Thuật toán

Bước 1: Import cv2.
Bước 2: Định nghĩa ngưỡng và max_val.
Bước 3: Truyền tham số vào cv2.threshold và chỉ định loại ngưỡng.
Bước 4: Hiển thị kết quả.

Mã ví dụ

import cv2
image = cv2.imread('testimage.jpg')
threshold_value = 120
max_val = 255
ret, image = cv2.threshold(image, threshold_value, max_val, cv2.THRESH_BINARY_INV)
cv2.imshow('InverseBinaryThresholding', image)

Kết quả

Thực hiện ngưỡng nhị phân ngược (inverse binary thresholding) trên ảnh bằng OpenCV

Giải thích

Biến ret trong chương trình chỉ trả về giá trị ngưỡng. Đối với bất kỳ pixel nào có giá trị nhỏ hơn ngưỡng, chúng được thay thế bằng max_val, tức là 255.