DeduplicateSimilarImages
Bildehåndtering, Optimalisering
Beskrivelse
Finner perseptuelt like indirekte bilde-XObjects, omdirigerer referansene deres til et deterministisk kanonisk bilde, og fjerner eventuelt de dupliserte objektene
Kandidater må ha den samme semantiske bildeordboken etter at kodede containerfelt er holdt utenfor, og så bestå en 64-bit differansehash-terskel og en 64 × 64 dekodet fargeprøvesammenligning
Syntaks
Function TPDFlib.DeduplicateSimilarImages(
MaxHashDistance, MaxMeanError, MaxChannelError,
Options: Integer): Integer; Overload;
Function TPDFlib.DeduplicateSimilarImages(
MaxHashDistance, MaxMeanError, MaxChannelError,
Options: Integer;
Out Stats: TPDFlibImageSimilarityDedupStats): Integer; Overload;
Parametere
| MaxHashDistance | Maksimal Hamming-avstand fra 0 til 7 mellom de to 64-bit differanse-hashene |
|---|---|
| MaxMeanError | Maksimal gjennomsnittlig absolutt kanalforskjell fra 0 til 255 på tvers av de dekodete prøvene |
| MaxChannelError | Maksimal absolutt forskjell fra 0 til 255 for en hvilken som helst prøvetatt fargekanal |
| Options | PDF_RESOURCE_DEDUP_DRY_RUN, PDF_RESOURCE_DEDUP_GARBAGE_COLLECT, both flags, or 0 |
| Stats | Mottar tellere for dekoding, kandidater, sammenligning, akseptert feil, referanse, nyttelast og objektsamling |
Returverdier
| Positive value | Antallet lignende bildeobjekter konsolidert eller rapportert av en tørrkjøring |
|---|---|
| 0 | Intet akseptabelt par ble funnet, intet dokument er lastet, eller en terskel eller et alternativ er ugyldig |
Merknader
Det laveste objektnummeret og generasjonen i hver aksepterte gruppe blir det kanoniske bildet
/Length, /Filter og /DecodeParms beskriver kodet lagring og kan avvike, mens dimensjoner, fargerom, bitdybde, masker, dekodematriser, interpolering, valgfritt innhold, metadata og andre semantiske ordboksoppføringer må samsvare
Bilder som ikke kan dekodes hoppes over og telles i DecodeFailures
Hashen deles i åtte indekserte bånd, noe som begrenser kandidatesøket for det støttede avstandsområdet før dekodede prøver sammenlignes
Dette er en bevisst tilnærmet visuell operasjon fordi den sampler et fast 64 × 64-rutenett, så forskjeller mindre enn prøverutenettet kan overse selv når alle terskler er null
Bruk DeduplicateResources når byte-eksakt bevis kreves, og bruk en tørrkjøring pluss GetSimilarImageDeduplicationReportJSON før du velger terskler for ukjent innhold
Eksempel
var
Stats: TPDFlibImageSimilarityDedupStats;
Merged: Integer;
begin
Merged:= PDF.DeduplicateSimilarImages(2, 3, 12,
PDF_RESOURCE_DEDUP_GARBAGE_COLLECT, Stats);
PDF.SaveToFile('optimised.pdf');
end;
Se også
GetSimilarImageDeduplicationReportJSON, TPDFlibImageSimilarityDedupStats, DeduplicateResources