Nội dung
- Giới thiệu
- Ví dụ 1: Bộ lọc vượt qua OpenCV với tích chập 2D
- Ví dụ 2: Bộ lọc Pass High OpenCV với tích chập 2D
- Ví dụ 3 - Hạt nhân tùy chỉnh
- Bản tóm tắt
Python OpenCV - CV2.filter2d []
Lọc hình ảnh là một kỹ thuật để lọc một hình ảnh giống như tín hiệu âm thanh một chiều, nhưng trong 2D.
Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách lọc hình ảnh bằng cách sử dụng chức năng 2D với hàm cv2.filter2d []. Sự kết hợp xảy ra giữa hình ảnh nguồn và kernel.
Kernel là một mảng khác, thường nhỏ hơn hình ảnh nguồn và xác định hành động lọc. Hạt nhân có thể là một đường chuyền cao, đường chuyền thấp hoặc một phong tục có thể phát hiện các tính năng nhất định trong hình ảnh.
Một bộ lọc thông thấp giống như một quá trình trung bình. Nhưng với trọng lượng và nhịp trung bình tùy thuộc vào hình dạng và nội dung của hạt nhân.
Một bộ lọc vượt qua cao giống như một máy dò cạnh. Nó cho một mức cao khi có một sự thay đổi đáng kể trong các giá trị pixel liền kề.
Ngoài ra, bạn có thể sử dụng bộ lọc tùy chỉnh, để phát hiện các vòng tròn, hình vuông hoặc một số hình dạng tùy chỉnh bạn muốn phát hiện trong hình ảnh.
Ví dụ 1: Bộ lọc vượt qua OpenCV với tích chập 2D
Ví dụ 2: Bộ lọc Pass High OpenCV với tích chập 2D
- Ví dụ 3 - Hạt nhân tùy chỉnh
- Bản tóm tắt
- Python OpenCV - CV2.filter2d []
Lọc hình ảnh là một kỹ thuật để lọc một hình ảnh giống như tín hiệu âm thanh một chiều, nhưng trong 2D.
import numpy as np
import cv2
#read image
img_src = cv2.imread['sample.jpg']
#prepare the 5x5 shaped filter
kernel = np.array[[[1, 1, 1, 1, 1],
[1, 1, 1, 1, 1],
[1, 1, 1, 1, 1],
[1, 1, 1, 1, 1],
[1, 1, 1, 1, 1]]]
kernel = kernel/sum[kernel]
#filter the source image
img_rst = cv2.filter2D[img_src,-1,kernel]
#save result image
cv2.imwrite['result.jpg',img_rst]
Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách lọc hình ảnh bằng cách sử dụng chức năng 2D với hàm cv2.filter2d []. Sự kết hợp xảy ra giữa hình ảnh nguồn và kernel.
Kernel là một mảng khác, thường nhỏ hơn hình ảnh nguồn và xác định hành động lọc. Hạt nhân có thể là một đường chuyền cao, đường chuyền thấp hoặc một phong tục có thể phát hiện các tính năng nhất định trong hình ảnh.
Ví dụ 2: Bộ lọc Pass High OpenCV với tích chập 2D
Ví dụ 3 - Hạt nhân tùy chỉnh
- Ví dụ 3 - Hạt nhân tùy chỉnh
- Bản tóm tắt
- Python OpenCV - CV2.filter2d []
Lọc hình ảnh là một kỹ thuật để lọc một hình ảnh giống như tín hiệu âm thanh một chiều, nhưng trong 2D.
import numpy as np
import cv2
#read image
img_src = cv2.imread['sample.jpg']
#edge detection filter
kernel = np.array[[[0.0, -1.0, 0.0],
[-1.0, 4.0, -1.0],
[0.0, -1.0, 0.0]]]
kernel = kernel/[np.sum[kernel] if np.sum[kernel]!=0 else 1]
#filter the source image
img_rst = cv2.filter2D[img_src,-1,kernel]
#save result image
cv2.imwrite['result.jpg',img_rst]
Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách lọc hình ảnh bằng cách sử dụng chức năng 2D với hàm cv2.filter2d []. Sự kết hợp xảy ra giữa hình ảnh nguồn và kernel.
Kernel là một mảng khác, thường nhỏ hơn hình ảnh nguồn và xác định hành động lọc. Hạt nhân có thể là một đường chuyền cao, đường chuyền thấp hoặc một phong tục có thể phát hiện các tính năng nhất định trong hình ảnh.
Một bộ lọc thông thấp giống như một quá trình trung bình. Nhưng với trọng lượng và nhịp trung bình tùy thuộc vào hình dạng và nội dung của hạt nhân.
Một bộ lọc vượt qua cao giống như một máy dò cạnh. Nó cho một mức cao khi có một sự thay đổi đáng kể trong các giá trị pixel liền kề.Example 3 – Custom Kernel
Ngoài ra, bạn có thể sử dụng bộ lọc tùy chỉnh, để phát hiện các vòng tròn, hình vuông hoặc một số hình dạng tùy chỉnh bạn muốn phát hiện trong hình ảnh.
Lọc hình ảnh là một kỹ thuật để lọc một hình ảnh giống như tín hiệu âm thanh một chiều, nhưng trong 2D.
import numpy as np
import cv2
#read image
img_src = cv2.imread['sample.jpg']
#kernal sensitive to horizontal lines
kernel = np.array[[[-1.0, -1.0],
[2.0, 2.0],
[-1.0, -1.0]]]
kernel = kernel/[np.sum[kernel] if np.sum[kernel]!=0 else 1]
#filter the source image
img_rst = cv2.filter2D[img_src,-1,kernel]
#save result image
cv2.imwrite['result.jpg',img_rst]
Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách lọc hình ảnh bằng cách sử dụng chức năng 2D với hàm cv2.filter2d []. Sự kết hợp xảy ra giữa hình ảnh nguồn và kernel.
Kernel là một mảng khác, thường nhỏ hơn hình ảnh nguồn và xác định hành động lọc. Hạt nhân có thể là một đường chuyền cao, đường chuyền thấp hoặc một phong tục có thể phát hiện các tính năng nhất định trong hình ảnh.
Bản tóm tắt
Python OpenCV - CV2.filter2d []
Lọc hình ảnh là một kỹ thuật để lọc một hình ảnh giống như tín hiệu âm thanh một chiều, nhưng trong 2D.
- Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách lọc hình ảnh bằng cách sử dụng chức năng 2D với hàm cv2.filter2d []. Sự kết hợp xảy ra giữa hình ảnh nguồn và kernel.
- Kernel là một mảng khác, thường nhỏ hơn hình ảnh nguồn và xác định hành động lọc. Hạt nhân có thể là một đường chuyền cao, đường chuyền thấp hoặc một phong tục có thể phát hiện các tính năng nhất định trong hình ảnh.
- Một bộ lọc thông thấp giống như một quá trình trung bình. Nhưng với trọng lượng và nhịp trung bình tùy thuộc vào hình dạng và nội dung của hạt nhân.
- Một bộ lọc vượt qua cao giống như một máy dò cạnh. Nó cho một mức cao khi có một sự thay đổi đáng kể trong các giá trị pixel liền kề.
- Ngoài ra, bạn có thể sử dụng bộ lọc tùy chỉnh, để phát hiện các vòng tròn, hình vuông hoặc một số hình dạng tùy chỉnh bạn muốn phát hiện trong hình ảnh.
- Trong ví dụ này, chúng tôi sẽ thực hiện chuỗi các bước sau.
- Đọc một hình ảnh. Đây là nguồn của chúng tôi.
- Xác định bộ lọc thông thấp. Trong ví dụ này, bộ lọc thông thấp của chúng tôi là một mảng 5 × 5 với tất cả các bộ và tính trung bình.