Trang chủ Liên hệ

Tổng hợp các công cụ xử lý hình ảnh phổ biến

CÔNG TY TNHH THIẾT BỊ ĐO LƯỜNG VÀ ĐIỀU KHIỂN 05/02/2024

Xử lý hình ảnh là kỹ thuật cốt lõi của thị giác máy tính, giúp phát triển nhiều ứng dụng thực tế như robot, ô tô tự lái và camera thông minh, phát hiện đối tượng,…. Xử lý ảnh cho phép chuyển đổi và thao tác trên hàng nghìn ảnh cùng lúc, từ đó trích xuất những thông tin chi tiết và quan trọng. Bài viết này sẽ cùng bạn khám phá về xử lý hình ảnh bằng Python: từ thuật toán, công cụ đến phương pháp hữu dụng. Cùng lưu lại và tham khảo thêm nhé!

Các công cụ xử lý hình ảnh

1. OpenCV

OpenCV là viết tắt của Open Source Computer Vision Library. Thư viện này bao gồm khoảng hơn 2000 thuật toán được tối ưu hóa hữu ích cho thị giác máy tính và học máy. Có một số cách bạn có thể sử dụng OpenCV trong xử lý hình ảnh như sau:

2. Hình ảnh Scikit

Scikit là một thư viện mã nguồn mở được sử dụng để tiền xử lý hình ảnh. Nó sử dụng học máy với các chức năng tích hợp và có thể thực hiện các hoạt động phức tạp trên hình ảnh chỉ với một vài chức năng.

Scikit hoạt động với các mảng numpy và là một thư viện khá đơn giản ngay cả đối với những người mới làm quen với python. Một số thao tác có thể được thực hiện bằng hình ảnh scikit là:

3. PIL / PILLOW

PIL là viết tắt của Python Image Library. Đây là một trong những thư viện mạnh mẽ, hỗ trợ một loạt các định dạng hình ảnh như PPM, JPEG, TIFF, GIF, PNG và BMP.

Nó có thể giúp bạn thực hiện một số thao tác trên hình ảnh như xoay, thay đổi kích thước, cắt xén, chia tỷ lệ màu xám, v.v. Hãy xem qua một số thao tác đó

4. NumPy

Với thư viện này, bạn cũng có thể thực hiện các kỹ thuật hình ảnh đơn giản, chẳng hạn như lật hình ảnh, trích xuất các tính năng và phân tích chúng.

Hình ảnh có thể được biểu diễn bằng các mảng đa chiều và do đó kiểu của chúng là NdArrays. Hình ảnh màu là một mảng có 3 chiều. Bằng cách cắt mảng đa chiều, các kênh RGB có thể được tách ra.

Dưới đây là một số thao tác có thể được thực hiện bằng NumPy trên hình ảnh (hình ảnh được tải trong một biến có tên test_img bằng cách sử dụng imread).

Ví dụ: np.where (test_img> 150, 255, 0), tức là trong hình này nếu tìm thấy bất kỳ thứ gì bằng 150, thì hãy thay thế nó bằng 255, nếu không thì 0.

Bạn cũng có thể hiển thị các kênh RGB riêng biệt. Nó có thể được thực hiện bằng cách sử dụng đoạn mã này:

Để có được kênh màu đỏ, hãy thực hiện test_img [:,:, 0], để có được kênh màu xanh lá cây, hãy thực hiện test_img [:,:, 1] và để có được kênh màu xanh lam, hãy thực hiện test_img [:,:, 2].

5. Mahotas

Đây là một thư viện xử lý hình ảnh và thị giác máy tính và có hơn 100 chức năng. Nhiều thuật toán của nó được thực hiện bằng C ++. Bản thân Mahotas là một mô-đun độc lập, tức là nó có phụ thuộc tối thiểu.

Hiện tại, Mahotas chỉ phụ thuộc vào trình biên dịch C ++ để tính toán số, không cần mô-đun NumPy, trình biên dịch thực hiện tất cả công việc của nó.

Dưới đây là tên của một số thuật toán đáng chú ý có sẵn trong Mahotas:

Hãy xem xét một số thao tác có thể được thực hiện bằng Mahotas:

Tổng kết

Trên đây là những thông tin bạn đọc cần biết về các công cụ xử lý ảnh phổ biến, hi vọng rằng sẽ hỗ trợ bạn trong việc tìm hiểu và nâng cao kiến thức về xử lý ảnh. Đừng quên theo dõi những bài viết mới nhất của chúng tôi trong thời gian sắp tới nhé.

Bài viết liên quan