EXIF (Exchangeable Image File Format) là một khối siêu dữ liệu chụp chứa các thông tin như phơi sáng, ống kính, dấu thời gian và thậm chí cả GPS, được máy ảnh và điện thoại nhúng vào tệp hình ảnh. Nó sử dụng một hệ thống thẻ kiểu TIFF được đóng gói bên trong các định dạng như JPEG và TIFF. Nó rất cần thiết cho khả năng tìm kiếm, sắp xếp và tự động hóa trong các thư viện ảnh, nhưng việc chia sẻ bất cẩn có thể dẫn đến rò rỉ dữ liệu không mong muốn (ExifTool và Exiv2 giúp dễ dàng kiểm tra điều này).
Ở cấp độ thấp, EXIF sử dụng lại cấu trúc Thư mục tệp hình ảnh (IFD) c ủa định dạng TIFF và, trong JPEG, nằm bên trong điểm đánh dấu APP1 (0xFFE1), lồng một tệp TIFF nhỏ một cách hiệu quả vào bên trong một vùng chứa JPEG (tổng quan về JFIF; cổng thông số kỹ thuật của CIPA). Đặc tả chính thức — CIPA DC-008 (EXIF), hiện ở phiên bản 3.x — ghi lại bố cục IFD, các loại thẻ và các ràng buộc (CIPA DC-008; tóm tắt đặc tả). EXIF xác định một IFD phụ GPS chuyên dụng (thẻ 0x8825) và một IFD có khả năng tương tác (0xA005) (bảng thẻ Exif).
Chi tiết triển khai rất quan trọng. Các tệp JPEG điển hình bắt đầu bằng một đoạn JFIF APP0, theo sau là EXIF trong APP1. Các trình đọc cũ hơn mong đợi JFIF trước, trong khi các thư viện hiện đại phân tích cả hai mà không gặp vấn đề gì (ghi chú đoạn APP). Trong thực tế, các trình phân tích cú pháp đôi khi giả định thứ tự APP hoặc giới hạn kích thước mà thông số kỹ thuật không yêu cầu, đó là lý do tại sao các nhà phát triển công cụ ghi lại các hành vi cụ thể và các trường hợp đặc biệt (hướng dẫn siêu dữ liệu Exiv2; tài liệu ExifTool).
EXIF không chỉ giới hạn ở JPEG/TIFF. Hệ sinh thái PNG đã tiêu chuẩn hóa đoạn eXIf để mang dữ liệu EXIF trong các tệp PNG (hỗ trợ ngày càng tăng, và thứ tự đoạn so với IDAT có thể quan trọng trong một số triển khai). WebP, một định dạng dựa trên RIFF, chứa EXIF, XMP và ICC trong các đoạn chuyên dụng (vùng chứa WebP RIFF; libwebp). Trên các nền tảng của Apple, Image I/O bảo toàn dữ liệu EXIF khi chuyển đổi sang HEIC/HEIF, cùng với dữ liệu XMP và thông tin nhà sản xuất (kCGImagePropertyExifDictionary).
Nếu bạn đã từng tự hỏi làm thế nào các ứng dụng suy ra cài đặt máy ảnh, bản đồ thẻ EXIF là câu trả lời: Make, Model,FNumber, ExposureTime, ISOSpeedRatings, FocalLength, MeteringMode, và nhiều hơn nữa nằm trong các IFD phụ chính và EXIF (thẻ Exif; thẻ Exiv2). Apple hiển thị chúng thông qua các hằng số Image I/O như ExifFNumber và GPSDictionary. Trên Android, AndroidX ExifInterface đọc và ghi dữ liệu EXIF trên JPEG, PNG, WebP và HEIF.
Định hướng hình ảnh đáng được đề cập đặc biệt. Hầu hết các thiết bị lưu trữ pixel “nguyên trạng” và ghi lại một thẻ cho người xem biết cách xoay khi hiển thị. Đó là thẻ 274 (Orientation) với các giá trị như 1 (bình thường), 6 (90° theo chiều kim đồng hồ), 3 (180°), 8 (270°). Việc không tuân thủ hoặc cập nhật không chính xác thẻ này sẽ dẫn đến ảnh bị xoay, hình thu nhỏ không khớp và lỗi học máy ở các giai đoạn xử lý tiếp theo (thẻ định hướng;hướng dẫn thực tế). Trong các quy trình xử lý, việc chuẩn hóa thường được áp dụng bằng cách xoay pixel vật lý và đặt Orientation=1(ExifTool).
Việc chấm công phức tạp hơn vẻ ngoài của nó. Các thẻ lịch sử như DateTimeOriginal thiếu múi giờ, điều này làm cho các cảnh quay xuyên biên giới trở nên mơ hồ. Các thẻ mới hơn thêm thông tin về múi giờ — ví dụ: OffsetTimeOriginal — để phần mềm có thể ghi lại DateTimeOriginal cộng với một độ lệch UTC (ví dụ: -07:00) để sắp xếp và tương quan địa lý chính xác (thẻ OffsetTime*;tổng quan về thẻ).
EXIF cùng tồn tại — và đôi khi chồng chéo — với Siêu dữ liệu ảnh IPTC (tiêu đề, người tạo, quyền, chủ đề) và XMP, khuôn khổ dựa trên RDF của Adobe được tiêu chuẩn hóa thành ISO 16684-1. Trong thực tế, phần mềm được triển khai đúng cách sẽ dung hòa dữ liệu EXIF do máy ảnh tạo ra với dữ liệu IPTC/XMP do người dùng nhập vào mà không loại bỏ một trong hai (hướng dẫn IPTC;LoC trên XMP;LoC trên EXIF).
Các vấn đề về quyền riêng tư khiến EXIF trở thành một chủ đề gây tranh cãi. Gắn thẻ địa lý và số sê-ri thiết bị đã tiết lộ các vị trí nhạy cảm nhiều hơn một lần; một ví dụ điển hình là bức ảnh Vice năm 2012 của John McAfee, trong đó tọa độ GPS EXIF được cho là đã tiết lộ tung tích của anh ta (Wired;The Guardian). Nhiều nền tảng xã hội xóa hầu hết dữ liệu EXIF khi tải lên, nhưng các triển khai khác nhau và thay đổi theo thời gian. Bạn nên xác minh điều này bằng cách tải xuống các bài đăng của riêng bạn và kiểm tra chúng bằng một công cụ thích hợp (trợ giúp về phương tiện truyền thông của Twitter;trợ giúp của Facebook;trợ giúp của Instagram).
Các nhà nghiên cứu bảo mật cũng theo dõi chặt chẽ các trình phân tích cú pháp EXIF. Các lỗ hổng trong các thư viện được sử dụng rộng rãi (ví dụ: libexif) đã bao gồm tràn bộ đệm và đọc ngoài giới hạn, được kích hoạt bởi các thẻ bị định dạng sai. Những thẻ này dễ dàng tạo ra vì EXIF là một tệp nhị phân có cấu trúc ở một nơi có thể dự đoán được (cảnh báo;tìm kiếm NVD). Điều quan trọng là phải cập nhật các thư viện siêu dữ liệu và xử lý hình ảnh trong một môi trường biệt lập (sandbox) nếu chúng đến từ các nguồn không đáng tin cậy.
Được sử dụng một cách chu đáo, EXIF là một yếu tố quan trọng cung cấp năng lượng cho các danh mục ảnh, quy trình công việc về quyền và các đường ống thị giác máy tính. Được sử dụng một cách ngây thơ, nó trở thành một dấu vết kỹ thuật số mà bạn có thể không muốn chia sẻ. Tin tốt: hệ sinh thái — thông số kỹ thuật, API hệ điều hành và công cụ — cung cấp cho bạn quyền kiểm soát bạn cần (CIPA EXIF;ExifTool;Exiv2;IPTC;XMP).
Dữ liệu EXIF (Exchangeable Image File Format) là một tập hợp siêu dữ liệu về một bức ảnh, chẳng hạn như cài đặt máy ảnh, ngày và giờ chụp, và nếu GPS được bật, cả vị trí.
Hầu hết các trình xem và chỉnh sửa hình ảnh (ví dụ: Adobe Photoshop, Windows Photo Viewer) đều cho phép xem dữ liệu EXIF. Thông thường, chỉ cần mở bảng thuộc tính hoặc thông tin của tệp.
Có, dữ liệu EXIF có thể được chỉnh sửa bằng phần mềm chuyên dụng như Adobe Photoshop, Lightroom hoặc các công cụ trực tuyến dễ sử dụng, cho phép bạn sửa đổi hoặc xóa các trường siêu dữ liệu cụ thể.
Có. Nếu GPS được bật, dữ liệu vị trí được lưu trữ trong siêu dữ liệu EXIF có thể tiết lộ thông tin địa lý nhạy cảm. Do đó, bạn nên xóa hoặc ẩn danh dữ liệu này trước khi chia sẻ ảnh.
Nhiều chương trình cho phép bạn loại bỏ dữ liệu EXIF. Quá trình này thường được gọi là 'loại bỏ' siêu dữ liệu. Cũng có các công cụ trực tuyến cung cấp chức năng này.
Hầu hết các nền tảng mạng xã hội như Facebook, Instagram và Twitter tự động xóa dữ liệu EXIF khỏi hình ảnh để bảo vệ quyền riêng tư của người dùng.
Dữ liệu EXIF có thể bao gồm, trong số những thứ khác, kiểu máy ảnh, ngày và giờ chụp, độ dài tiêu cự, thời gian phơi sáng, khẩu độ, cài đặt ISO, cân bằng trắng và vị trí GPS.
Đối với các nhiếp ảnh gia, dữ liệu EXIF là một hướng dẫn quý giá để hiểu các cài đặt chính xác được sử dụng cho một bức ảnh. Thông tin này giúp cải thiện kỹ thuật và tái tạo các điều kiện tương tự trong tương lai.
Không, chỉ những hình ảnh được chụp bằng các thiết bị hỗ trợ siêu dữ liệu EXIF, chẳng hạn như máy ảnh kỹ thuật số và điện thoại thông minh, mới chứa dữ liệu này.
Có, dữ liệu EXIF tuân theo tiêu chuẩn do Hiệp hội Phát triển Công nghiệp Điện tử Nhật Bản (JEIDA) thiết lập. Tuy nhiên, một số nhà sản xuất có thể bao gồm thông tin độc quyền bổ sung.
Định dạng hình ảnh PCT, còn được gọi là định dạng Macintosh PICT, là định dạng tệp đồ họa được sử dụng chủ yếu trên máy tính Macintosh. Ban đầu, nó được thiết kế như một định dạng tệp siêu dữ liệu vào những năm 1980, có nghĩa là nó có thể chứa cả dữ liệu bitmap và dữ liệu vector. Tính linh hoạt này khiến nó trở thành lựa chọn phổ biến để lưu trữ và truyền tải nhiều loại đồ họa, từ hình minh họa đơn giản đến hình ảnh phức tạp. Định dạng PCT được Apple Inc. phát triển để tạo điều kiện truyền đồ họa giữa các ứng dụng khác nhau và đóng vai trò là định dạng đổ đồ họa cho thư viện đồ họa QuickDraw, đây là cơ sở cho giao diện người dùng đồ họa của các hệ điều hành Macintosh đầu tiên.
Định dạng PCT có điểm độc đáo là có thể lưu trữ cả thông tin vector và bitmap. Đồ họa vector được tạo thành từ các đường dẫn được xác định bởi các phương trình toán học, giúp chúng có thể mở rộng mà không làm giảm chất lượng. Mặt khác, đồ họa bitmap được tạo thành từ các pixel, có thể dẫn đến mất chi tiết khi được mở rộng. Bằng cách kết hợp hai loại dữ liệu này, các tệp PCT có thể lưu trữ hiệu quả các hình ảnh phức tạp như hình minh họa có văn bản, nghệ thuật đường nét và các yếu tố nhiếp ảnh, đồng thời duy trì khả năng mở rộng một số phần nhất định của hình ảnh mà không bị suy giảm.
Các tệp PCT được cấu trúc theo cách bắt đầu bằng một tiêu đề 512 byte, thường được điền bằng các số không và không được định dạng PICT sử dụng. Tiếp theo là tiêu đề tệp PICT, bao gồm các thông tin quan trọng như số phiên bản và kích thước của hình ảnh. Tiêu đề được tiếp theo là dữ liệu hình ảnh, bao gồm các mã lệnh (mã thao tác) chỉ định cách hiển thị hình ảnh. Các mã lệnh này có thể xác định các đường, hình dạng, màu sắc và các yếu tố đồ họa khác, cũng như dữ liệu bitmap cho hình ảnh raster.
Có hai phiên bản chính của định dạng PCT: PICT1 và PICT2. PICT1 là phiên bản gốc hỗ trợ các lệnh vẽ cơ bản và số lượng màu hạn chế. PICT2, được giới thiệu cùng với Macintosh II, đã bổ sung hỗ trợ cho các khả năng hình ảnh tinh vi hơn, chẳng hạn như màu 24 bit, độ dốc và nén JPEG. PICT2 cũng giới thiệu khái niệm 'vùng', cho phép thực hiện các thao tác cắt phức tạp hơn, trong đó chỉ một số phần nhất định của hình ảnh sẽ được vẽ, dựa trên vùng được xác định.
Một trong những tính năng chính của định dạng PCT là khả năng nén dữ liệu hình ảnh. Các tệp PCT sử dụng RLE (Mã hóa độ dài chuỗi), một dạng nén dữ liệu đơn giản trong đó các chuỗi có cùng giá trị dữ liệu được lưu trữ dưới dạng một giá trị và số đếm duy nhất, thay vì là chuỗi gốc. Điều này đặc biệt hiệu quả đối với các hình ảnh có diện tích lớn có màu đồng nhất. PICT2 đã nâng cao khả năng này bằng cách hỗ trợ nén JPEG, hiệu quả hơn trong việc nén hình ảnh nhiếp ảnh.
Định dạng PCT cũng bao gồm một số tính năng khác tiên tiến vào thời điểm đó. Nó hỗ trợ nhiều độ phân giải, có nghĩa là hình ảnh có thể được hiển thị ở các mức độ chi tiết khác nhau tùy thuộc vào khả năng của thiết bị đầu ra. Điều này đặc biệt hữu ích khi cùng một hình ảnh được hiển thị trên cả màn hình và máy in, thường có các yêu cầu về độ phân giải rất khác nhau. Ngoài ra, các tệp PCT có thể chứa hình ảnh xem trước, là một biểu diễn bitmap nhỏ của dữ liệu vector. Điều này cho phép các ứng dụng hiển thị nhanh chóng hình thu nhỏ của hình ảnh mà không cần phải hiển thị toàn bộ đồ họa vector.
Mặc dù có nhiều khả năng, định dạng PCT vẫn có một số hạn chế. Một trong những hạn chế đáng kể nhất là không hỗ trợ tính trong suốt. Không giống như các định dạng như GIF và PNG, PCT không cho phép tạo hình ảnh có nền trong suốt hoặc các yếu tố bán trong suốt. Hạn chế này có thể gây ra vấn đề khi xếp lớp hình ảnh hoặc khi cần đặt hình ảnh lên nền có nhiều màu sắc hoặc hoa văn khác nhau.
Một h ạn chế khác của định dạng PCT là phụ thuộc vào nền tảng. PCT được thiết kế cho hệ điều hành Macintosh và QuickDraw, có nghĩa là nó không được hỗ trợ gốc trên các nền tảng khác. Mặc dù có các công cụ và thư viện của bên thứ ba có thể đọc và ghi các tệp PCT trên Windows và các hệ điều hành khác, nhưng định dạng này không bao giờ được áp dụng rộng rãi bên ngoài cộng đồng Macintosh. Điều này đã dẫn đến các vấn đề về khả năng tương thích, đặc biệt là khi việc sử dụng phần mềm dành riêng cho Macintosh đã giảm dần theo thời gian.
Định dạng PCT cũng có các mối quan ngại về bảo mật. Trong quá khứ, người ta đã phát hiện ra các lỗ hổng trong cách một số ứng dụng xử lý các tệp PCT, có khả năng cho phép thực thi mã độc. Đây là một vấn đề phổ biến với nhiều định dạng tệp, trong đó tính phức tạp và khả năng tương thích ngược có thể dẫn đến việc bỏ qua bảo mật. Do đó, một số ứng dụng hiện đại đã ngừng hỗ trợ định dạng PCT hoặc xử lý định dạng này trong môi trường an toàn hơn, được bảo vệ bằng hộp cát.
Về phần mở rộng tệp, các tệp PCT thường được lưu với phần mở rộng '.pct' hoặc '.pict'. Tuy nhiên, do hệ thống tệp Macintosh không phân biệt chữ hoa chữ thường, các phần mở rộng này có thể hoán đổi cho nhau. Khi truyền các tệp PCT sang các hệ thống có hệ thống tệp phân biệt chữ hoa chữ thường, chẳng hạn như Linux, cần phải cẩn thận duy trì phần mở rộng tệp chính xác cho mục đích tương thích.
Định dạng PCT phần lớn đã được thay thế bằng các định dạng hình ảnh hiện đại hơn như PNG, JPEG và SVG. Các định dạng này cung cấp khả năng nén tốt hơn, hỗ trợ nền tảng rộng hơn và các tính năng bổ sung như tính trong suốt và hoạt ảnh. Tuy nhiên, các tệp PCT vẫn được sử dụng trong một số hệ thống và ứng dụng cũ, đặc biệt là những hệ thống và ứng dụng được thiết kế cho các hệ điều hành Macintosh cũ hơn. Vì lý do này, việc hiểu định dạng PCT có thể rất quan trọng khi xử lý tài liệu đồ họa lưu trữ hoặc khi giao tiếp với phần mềm Macintosh cũ hơn.
Đối với các nhà phát triển và người dùng làm việc với các tệp PCT, có một số công cụ có sẵn để xem, chuyển đổi và chỉnh sửa các hình ảnh này. GraphicConverter là một ứng dụng Macintosh phổ biến có thể xử lý các tệp PCT cùng nhiều định dạng khác. Adobe Photoshop cũng có khả năng mở và chuyển đổi các tệp PCT, mặc dù các phiên bản mới hơn có thể đã ngừng hỗ trợ do định dạng này ngày càng ít được sử dụng. Ngoài ra còn có một số công cụ trực tuyến cho phép người dùng chuyển đổi các tệp PCT sang các định dạng phổ biến hơn như JPEG hoặc PNG.
Trong lĩnh vực lập trình, các thư viện như ImageMagick và Thư viện hình ảnh Python (PIL) có thể được sử dụng để thao tác các tệp PCT theo chương trình. Các thư viện này cung cấp các hàm để đọc, ghi và chuyển đổi các tệp PCT, cũng như thực hiện các tác vụ xử lý hình ảnh. Tuy nhiên, các nhà phát triển cần lưu ý rằng hỗ trợ cho các tệp PCT trong các thư viện này có thể bị hạn chế so với các định dạng hiện đại hơn và có thể cần thêm nỗ lực để xử lý các tệp PCT một cách chính xác.
Tóm lại, định dạng hình ảnh PCT đóng một vai trò quan trọng trong những ngày đầu của máy tính Macintosh, cung cấp một cách linh hoạt và mạnh mẽ để lưu trữ và thao tác đồ họa. Mặc dù phần lớn đã được thay thế bằng các định dạng mới hơn, nhưng di sản của nó vẫn tiếp tục dưới dạng nội dung và ứng dụng cũ vẫn dựa vào định dạng phổ biến một thời này. Việc hiểu các khía cạnh kỹ thuật của PCT, từ cấu trúc và khả năng của nó đến các hạn chế và mối quan ngại về bảo mật, là điều cần thiết đối với các chuyên gia có thể gặp định dạng này trong công việc lưu trữ hoặc khi tương tác với các hệ thống Macintosh cũ hơn.
Bộ chuyển đổi này chạy hoàn toàn trong trình duyệt của bạn. Khi bạn chọn một tệp, nó sẽ được đọc vào bộ nhớ và chuyển đổi sang định dạng đã chọn. Sau đó, bạn có thể tải xuống tệp đã chuyển đổi.
Việc chuyển đổi bắt đầu ngay lập tức và hầu hết các tệp được chuyển đổi trong vòng chưa đầy một giây. Các tệp lớn hơn có thể mất nhiều thời gian hơn.
Các tệp của bạn không bao giờ được tải lên máy chủ của chúng tôi. Chúng được chuyển đổi trong trình duyệt của bạn và sau đó tệp đã chuyển đổi sẽ được tải xuống. Chúng tôi không bao giờ thấy các tệp của bạn.
Chúng tôi hỗ trợ chuyển đổi giữa tất cả các định dạng hình ảnh, bao gồm JPEG, PNG, GIF, WebP, SVG, BMP, TIFF, v.v.
Bộ chuyển đổi này hoàn toàn miễn phí và sẽ luôn miễn phí. Bởi vì nó chạy trong trình duyệt của bạn, chúng tôi không phải trả tiền cho máy chủ, vì vậy chúng tôi không cần tính phí bạn.
Đúng! Bạn có thể chuyển đổi bao nhiêu tệp tùy thích cùng một lúc. Chỉ cần chọn nhiều tệp khi bạn thêm chúng.