Xóa nền tách một đối tượng khỏi môi trường xung quanh để bạn có thể đặt nó trên nền trong suốt, hoán đổi cảnh hoặc ghép nó vào một thiết kế mới. Về cơ bản, bạn đang ước tính một mặt n ạ alpha—độ mờ mỗi pixel từ 0 đến 1—và sau đó ghép alpha tiền cảnh lên một thứ khác. Đây là toán học từ Porter–Duff và là nguyên nhân của các cạm bẫy quen thuộc như “viền” và alpha thẳng và alpha nhân trước. Để có hướng dẫn thực tế về nhân trước và màu tuyến tính, hãy xem ghi chú Win2D của Microsoft, Søren Sandmann, và bài viết của Lomont về trộn tuyến tính.
Nếu bạn có thể kiểm soát việc chụp, hãy sơn phông nền bằng một màu đồng nhất (thường là màu xanh lá cây) và loại bỏ màu đó. Nó nhanh, đã được thử nghiệm trong phim và phát sóng, và lý tưởng cho video. Sự đánh đổi là ánh sáng và trang phục: ánh sáng màu tràn ra các cạnh (đặc biệt là tóc), vì vậy bạn sẽ sử dụng các công cụ khử tràn để trung hòa ô nhiễm. Các tài liệu tham khảo tốt bao gồm tài liệu của Nuke, Mixing Light, và một bản demo thực hành Fusion.
Đối với các hình ảnh đơn lẻ có nền lộn xộn, các thuật toán tương tác cần một vài gợi ý của người dùng—ví dụ: một hình chữ nhật lỏng lẻo hoặc các nét vẽ nguệch ngoạc—và hội tụ thành một mặt nạ sắc nét. Phương pháp kinh điển là GrabCut (chương sách), học các mô hình màu cho tiền cảnh/nền và sử dụng các đường cắt đồ thị lặp đi lặp lại để tách chúng. Bạn sẽ thấy những ý tưởng tương tự trong Lựa chọn tiền cảnh của GIMP dựa trên SIOX (plugin ImageJ).
Matting giải quyết độ trong suốt phân đoạn ở các ranh giới mỏng manh (tóc, lông, khói, kính). Matting dạng đóng cổ điển lấy một bản đồ ba vùng (chắc chắn-tiền cảnh/chắc chắn-nền/không xác định) và giải một hệ thống tuyến tính cho alpha với độ trung thực cạnh mạnh. Matting hình ảnh sâu hiện đại đào tạo các mạng nơ-ron trên bộ dữ liệu Adobe Composition-1K (tài liệu MMEditing), và được đánh giá bằng các số liệu như SAD, MSE, Gradient và Connectivity (giải thích điểm chuẩn).
Công việc phân đoạn liên quan cũng hữu ích: DeepLabv3+ tinh chỉnh các ranh giới bằng một bộ mã hóa-giải mã và các tích chập atrous (PDF); Mask R-CNN cung cấp các mặt nạ cho mỗi phiên bản (PDF); và SAM (Segment Anything) là một mô hình nền tảng có thể nhắc tạo ra các mặt nạ không cần học trên các hình ảnh không quen thuộc.
Công trình học thuật báo cáo các lỗi SAD, MSE, Gradient, và Connectivity trên Composition-1K. Nếu bạn đang chọn một mô hình, hãy tìm những số liệu đó (định nghĩa số liệu; phần số liệu của Background Matting). Đối với chân dung/video, MODNet và Background Matting V2 rất mạnh; đối với các hình ảnh “đối tượng nổi bật” chung, U2-Net là một đường cơ sở vững chắc; đối với độ trong suốt khó, FBA có thể sạch hơn.
Đị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.