DeduplicateSimilarImages

Quản lý ảnh, Tối ưu hóa

Mô tả

Tìm các indirect image XObject tương đồng về thị giác, chuyển reference của chúng trỏ về một ảnh canonical tất định, và tùy chọn xóa các object trùng

Các ứng viên phải có cùng từ điển ảnh ngữ nghĩa sau khi loại trừ các trường container đã mã hóa, rồi vượt ngưỡng difference-hash 64 bit và phép so sánh mẫu màu đã giải mã 64 × 64

Cú pháp

Function TPDFlib.DeduplicateSimilarImages(
  MaxHashDistance, MaxMeanError, MaxChannelError,
  Options: Integer): Integer; Overload;
Function TPDFlib.DeduplicateSimilarImages(
  MaxHashDistance, MaxMeanError, MaxChannelError,
  Options: Integer;
  Out Stats: TPDFlibImageSimilarityDedupStats): Integer; Overload;

Tham số

MaxHashDistanceKhoảng cách Hamming tối đa từ 0 đến 7 giữa hai hash khác biệt 64-bit
MaxMeanErrorChênh lệch trung bình tuyệt đối tối đa của kênh, từ 0 đến 255, tính trên các sample đã decode
MaxChannelErrorChênh lệch tuyệt đối tối đa từ 0 đến 255 cho bất kỳ kênh màu được lấy mẫu nào
OptionsPDF_RESOURCE_DEDUP_DRY_RUN, PDF_RESOURCE_DEDUP_GARBAGE_COLLECT, both flags, or 0
StatsNhận các bộ đếm giải mã, ứng viên, so sánh, lỗi được chấp nhận, tham chiếu, payload và thu thập đối tượng

Giá trị trả về

Positive valueThe number of similar image objects consolidated or reported by a dry runSố image object tương tự được hợp nhất hoặc báo cáo trong một dry run
0Không tìm thấy cặp chấp nhận được nào, không có tài liệu nào được nạp, hay một ngưỡng hay tùy chọn không hợp lệ

Ghi chú

Object số hiệu và generation thấp nhất trong mỗi nhóm được chấp nhận trở thành ảnh canonical

/Length, /Filter và /DecodeParms mô tả phần lưu đã encode và có thể khác nhau, trong khi kích thước, color space, độ sâu bit, mask, mảng decode, nội suy, optional content, metadata và các mục dictionary ngữ nghĩa khác phải khớp Ảnh không decode được bị bỏ qua và được đếm trong

DecodeFailures Hash được chia thành tám dải có chỉ mục, giúp chặn phạm vi tìm ứng viên cho khoảng cách được hỗ trợ trước khi so các sample đã decode

Hash được chia thành tám dải có chỉ số, giới hạn vùng tìm ứng viên cho khoảng khoảng cách được hỗ trợ trước khi so các mẫu đã decode

Đây là thao tác hiển thị cố ý xấp xỉ vì lấy mẫu trên lưới cố định 64 × 64, các khác biệt nhỏ hơn lưới lấy mẫu có thể bị bỏ sót kể cả khi mọi ngưỡng bằng không

Đây là thao tác trực quan cố ý xấp xỉ vì nó lấy mẫu trên lưới cố định 64 × 64, nên các khác biệt nhỏ hơn lưới lấy mẫu có thể bị bỏ sót ngay cả khi mọi ngưỡng đều bằng không Khi cần bằng chứng chính xác từng byte, hãy dùng DeduplicateResources, và trước khi chọn ngưỡng cho nội dung lạ, hãy chạy thử kèm GetSimilarImageDeduplicationReportJSON

Ví dụ

var
  Stats: TPDFlibImageSimilarityDedupStats;
  Merged: Integer;
begin
  Merged:= PDF.DeduplicateSimilarImages(2, 3, 12,
    PDF_RESOURCE_DEDUP_GARBAGE_COLLECT, Stats);
  PDF.SaveToFile('optimised.pdf');
end;

Xem thêm

GetSimilarImageDeduplicationReportJSON, TPDFlibImageSimilarityDedupStats, DeduplicateResources