Chương 1. XỬ LÝ ẢNH CƠ BẢN VÀ NGÔN NGỮ LẬP TRÌNH PYTHON
Chương này giới thiệu những kiến thức cơ bản về xử lý hình và ngôn ngữ Python dùng để lập trình. Các vị dụ cụ thể trong chương này được dùng để giải thích các gói thư viện Python phổ biến dùng trong xử lý ảnh. Một số công cụ cơ bản để bắt đầu lập trình xử lý ảnh trên ngôn ngữ Python ví dụ như đọc hình ảnh, chuyển đổi và nhân rộng hình ảnh, tính toán đạo hàm, vẽ hoặc lưu kết quả sẽ được giới thiệu trong phần này.
1.1. PIL – THƯ VIỆN HÌNH ẢNH TRONG PYTHON
Thư viện hình ảnh Python (PIL) cung cấp chung cho việc xử lý hình ảnh và nhiều thao tác hình ảnh cơ bản hữu ích như thay đổi kích thước, cất xén, xoay, chuyển đổi màu sắc và các tác vụ khác.
Với thư viện PIL, có thể đọc và ghi các hình ảnh từ hầu hết các định dạng phổ biến nhất hiện nay. Một trong những module quan trọng nhất trong xử lý hình ảnh là Image module. Để đọc một hình ảnh có thể sử dụng đoạn chương trình sau:
1.1.1. Chuyển đổi hình ảnh sang định dạng khác
Sử dụng lệnh save(), PIL có thể lưu hình ảnh ở hầu hết các định dạng tập hình ảnh. Ở đây, một ví dụ có thể lấy tất cả các tệp hình ảnh trong một danh sách tên tệp (danh sách tệp) và chuyển đổi hình ảnh thành tệp JPEG.
Hàm PIL open() tạo một đối tượng hình ảnh PIL và lệnh save() lưu hình ảnh vào một tệp với tên tệp đã cho trước. Thay vào đó, tên tệp mới sẽ giống như tên gốc với đuôi tệp là “.jpg”. PII. đủ thông minh để xác định định dạng hình ảnh từ phần mở rộng tập tin. Có một kiểm tra đơn giản rằng tập chưa phải là tệp JPEG và thông báo sẽ được in ra màn hình nếu chuyển đổi không thành công.
Trong suốt cuốn sách này, chúng ta thông thường sẽ xử lý một tập nhiều hình ảnh. Dưới đây sẽ trình bày cách có thể tạo một danh sách tên tệp cho tất cả các hình ảnh trong một thư mục. Tạo một tệp imtools.py để lưu trữ một số đường dẫn và thêm hàm sau: