Bước tới nội dung

Bitmap

Bách khoa toàn thư mở Wikipedia

Trong điện toán, một bitmap (còn gọi là ảnh raster hay ảnh mành) là một hình ảnh được tạo thành từ các hàng điểm ảnh có màu sắc khác nhau.[1] GIF là một ví dụ về tập tin ảnh đồ họa sử dụng bitmap.[2]

Với vai trò là một danh từ, thuật ngữ "bitmap" thường được dùng để chỉ một ứng dụng ánh xạ bit cụ thể là pixmap (bản đồ điểm ảnh) — một bản đồ của các điểm ảnh mà ở đó mỗi điểm ảnh có thể lưu nhiều hơn hai màu, do vậy dùng nhiều hơn một bit cho mỗi điểm ảnh. Trong trường hợp này, miền đang xét là mảng các điểm ảnh cấu thành một thiết bị xuất đồ họa số (màn hình). Ở một số ngữ cảnh, thuật ngữ bitmap hàm ý một bit cho mỗi điểm ảnh, còn pixmap được dùng cho ảnh có nhiều bit trên mỗi điểm ảnh.[3][4]

Bitmap là một kiểu tổ chức bộ nhớ hoặc định dạng tập tin ảnh dùng để lưu trữ ảnh kỹ thuật số. Thuật ngữ bitmap bắt nguồn từ thuật ngữ lập trình máy tính, nghĩa đơn giản là một bản đồ của các bit — một mảng bit được ánh xạ theo không gian. Ngày nay, cùng với pixmap, nó thường chỉ khái niệm tương tự về một mảng điểm ảnh được ánh xạ theo không gian. Nói chung, các ảnh raster có thể được gọi là bitmap hoặc pixmap, dù là ảnh tổng hợp hay ảnh chụp, ở dạng tập tin hay trong bộ nhớ.

Nhiều giao diện đồ họa người dùng sử dụng bitmap trong hệ thống đồ họa tích hợp của chúng.[5] Ví dụ, hệ thống con GDI của các nền tảng Microsoft WindowsOS/2 sử dụng định dạng tập tin bitmap của Windows và OS/2, thường có phần mở rộng tên tập tin .BMP (hoặc .DIB, nghĩa là device-independent bitmap — bitmap độc lập thiết bị). Ngoài BMP, các định dạng khác lưu bitmap thuần túy còn có InterLeaved Bitmap (ILBM), Portable Bitmap (PBM), X Bitmap (XBM) và Wireless Application Protocol Bitmap (WBMP). Tương tự, hầu hết các định dạng tập tin ảnh khác như JPEG, TIFF, PNG và GIF cũng lưu trữ ảnh bitmap (khác với đồ họa vector), nhưng thường không được gọi là bitmap vì bên trong dùng các định dạng nén.

Lưu trữ điểm ảnh

[sửa | sửa mã nguồn]

Trong các bitmap không nén thông thường, các điểm ảnh của ảnh thường được lưu với số bit trên mỗi điểm ảnh thay đổi nhằm xác định màu (độ sâu màu). Điểm ảnh có 8 bit trở xuống có thể biểu diễn thang độ xám hoặc màu chỉ mục. Một kênh alpha (dùng cho độ trong suốt) có thể được lưu trong một bitmap riêng — tương tự bitmap thang độ xám — hoặc trong một kênh thứ tư, ví dụ chuyển ảnh 24 bit thành 32 bit trên mỗi điểm ảnh.

Các bit biểu diễn điểm ảnh của bitmap có thể được đóng gói (packed) hoặc không đóng gói (giãn ra theo ranh giới byte hoặc từ máy), tùy yêu cầu của định dạng hoặc thiết bị. Tùy vào độ sâu màu, một điểm ảnh sẽ chiếm ít nhất n/8 byte, với n là độ sâu bit.

Đối với một bitmap không nén và được đóng gói theo hàng, chẳng hạn như lưu trong DIB/BMP của Microsoft hoặc trong TIFF không nén, cận dưới của kích thước lưu trữ cho một bitmap n bit trên mỗi điểm ảnh (2n màu), tính bằng byte, có thể tính như sau:

với chiều rộng và chiều cao tính bằng điểm ảnh.

Trong công thức trên, kích thước phần đầu (header) và kích thước bảng màu (nếu có) chưa được tính đến. Do phải chèn thêm (padding) để căn đầu mỗi hàng theo ranh giới đơn vị lưu trữ như một từ máy, có thể cần thêm một số byte.

Bitmap độc lập thiết bị và định dạng BMP

[sửa | sửa mã nguồn]

Microsoft đã định nghĩa một cách biểu diễn cụ thể cho các bitmap màu ở những độ sâu màu khác nhau, nhằm hỗ trợ trao đổi bitmap giữa các thiết bị và ứng dụng vốn có nhiều cách biểu diễn nội bộ khác nhau. Họ gọi các bitmap độc lập thiết bị này là "DIB", và định dạng tập tin cho chúng được gọi là định dạng DIB hoặc định dạng BMP.[6]

Bitmap độc lập thiết bị (DIB) là một định dạng dùng để định nghĩa các bitmap độc lập thiết bị ở nhiều độ phân giải màu khác nhau. Mục đích chính của DIB là cho phép di chuyển bitmap từ thiết bị này sang thiết bị khác (vì thế mới có phần "độc lập thiết bị" trong tên gọi).

Ở đây, "độc lập thiết bị" chỉ định dạng hoặc cách sắp xếp lưu trữ, và không nên nhầm với màu độc lập thiết bị.

Các định dạng tập tin bitmap khác

[sửa | sửa mã nguồn]

Hệ thống X Window sử dụng định dạng XBM tương tự cho ảnh đen trắng, và XPM (pixelmap) cho ảnh màu. Nhiều định dạng bitmap không nén khác cũng được dùng, dù phần lớn không phổ biến.[7] Với hầu hết mục đích, người ta dùng các tập tin bitmap nén chuẩn hóa như GIF, PNG, TIFFJPEG. Đặc biệt, nén không mất dữ liệu cung cấp cùng lượng thông tin như một bitmap nhưng kích thước tập tin nhỏ hơn.[8] TIFF và JPEG có nhiều tùy chọn. JPEG thường là nén mất dữ liệu. TIFF thường không nén hoặc nén không mất dữ liệu bằng Lempel–Ziv–Welch giống GIF. PNG dùng nén không mất dữ liệu deflate, một biến thể khác của Lempel-Ziv.

Ngoài ra còn có nhiều tập tin ảnh "thô" (raw) lưu bitmap thô mà không kèm thông tin nào khác. Các tập tin thô như vậy chỉ là bitmap nằm trong tập tin, thường không có phần đầu hay thông tin kích thước (chúng khác với định dạng ảnh RAW trong nhiếp ảnh — vốn lưu dữ liệu cảm biến thô chưa xử lý trong một vùng chứa có cấu trúc như TIFF cùng nhiều siêu dữ liệu ảnh).

Tham khảo

[sửa | sửa mã nguồn]
  1. "ARCHIVED: What are bitmap and vector graphics, and how are they different" (bằng tiếng Anh). University Information Technology Services. ngày 22 tháng 9 năm 2023. Truy cập ngày 21 tháng 4 năm 2024.
  2. Gregersen, Erik (ngày 26 tháng 1 năm 2022). "bitmap". Encyclopædia Britannica (bằng tiếng Anh). Truy cập ngày 21 tháng 4 năm 2024.
  3. James D. Foley (1995). Computer Graphics: Principles and Practice. Addison-Wesley Professional. tr. 13. ISBN 0-201-84840-6.
  4. V.K. Pachghare (2005). Comprehensive Computer Graphics: Including C++. Laxmi Publications. tr. 93. ISBN 81-7008-185-8.
  5. Julian Smart, Stefan Csomor, Kevin Hock (2006). Cross-Platform GUI Programming with wxWidgets. Prentice Hall. ISBN 0-13-147381-6.{{Chú thích sách}}: Quản lý CS1: nhiều tên: danh sách tác giả (liên kết)
  6. "DIBs and Their Uses". Microsoft Help and Support. ngày 11 tháng 2 năm 2005.
  7. "List of bitmap file types". File-Extensions.org. Bản gốc lưu trữ ngày 4 tháng 10 năm 2006. Truy cập ngày 22 tháng 9 năm 2007.
  8. J. Thomas, A. Jones (2006). Communicating Science Effectively: a practical handbook for integrating visual elements. IWA Publishing. ISBN 1-84339-125-2.