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ố
| MaxHashDistance | Khoảng cách Hamming tối đa từ 0 đến 7 giữa hai hash khác biệt 64-bit |
|---|---|
| MaxMeanError | Chê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 |
| MaxChannelError | Chê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 |
| Options | PDF_RESOURCE_DEDUP_DRY_RUN, PDF_RESOURCE_DEDUP_GARBAGE_COLLECT, both flags, or 0 |
| Stats | Nhậ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 run | Số image object tương tự được hợp nhất hoặc báo cáo trong một dry run |
|---|---|
| 0 | Khô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