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

Cách dùng scikit-learn lấy độ phân giải hình ảnh trong Python

Tiền xử lý dữ liệu là tác vụ thu thập dữ liệu vào định dạng chung. Dữ liệu thực tế không lý tưởng: ô trống, lỗi, ngoại lai, chênh lệch. Hình ảnh có thể không căn chỉnh, không rõ, kích thước lớn. Mục tiêu tiền xử lý là loại bỏ lỗi.

Để lấy độ phân giải ảnh, hàm built-in shape được dùng. Sau khi đọc ảnh, giá trị pixel lưu dạng mảng (NumPy array). Gọi shape trên mảng này để hiểu độ phân giải.

Ví dụ tải ảnh và lấy độ phân giải:

Ví dụ

from skimage import io

path = "path/to/puppy.PNG"
img = io.imread(path)
print("Đang đọc hình ảnh")
io.imshow(img)
print("Hình ảnh in trên console")
print("Độ phân giải hình ảnh:")
print(img.shape)

Đầu ra

Đang đọc hình ảnh
Hình ảnh in trên console
Độ phân giải hình ảnh: (397, 558, 4)

Cách dùng scikit-learn lấy độ phân giải hình ảnh trong Python

Giải thích

  • Nhập thư viện cần thiết.
  • Định nghĩa đường dẫn ảnh.
  • Dùng imread đọc ảnh.
  • Dùng imshow hiển thị ảnh.
  • Dùng shape lấy độ phân giải.
  • Giá trị thứ 3 của đầu ra là 4, nghĩa là 4 kênh: R, G, B và alpha.
  • Dữ liệu hiển thị trên console.

Giải thích: img.shape trả về tuple (height, width, channels). Ví dụ (397, 558, 4): cao 397px, rộng 558px, 4 kênh (RGBA). Ảnh RGB thường có shape (H, W, 3). Dùng img.shape[:2] để lấy (height, width).

Lưu ý: Lại dùng skimage.io (scikit-image), không phải scikit-learn.