Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Porovnávací vyhledávání shodných PDF souborů

Hezký den,
řeším porovnávací vyhledávání shodných PDF souborů a prosím o rady, hlavně zkušené praktiky.
Výchozí stav - řádově desítky tisíc PDF souborů v tisících složkách
Cíl - automatizovaně vyhledat a ručně odstranit duplicitní soubory podle pravidel:
1) soubory shodných názvů + shodných velikostí,
2) soubory shodných názvů + různých velikostí,
3) soubory různých názvů + různých velikostí - ALE SHODNÉHO TEXTOVÉHO OBSAHU,
4) soubory různých názvů + různých velikostí - ALE SHODNÉHO GRAFICKÉHO OBSAHU.
Po jakých programech sahnout? Vzhledem k objemu dat je nutné zpracování pokud možno co nejvíce zautomatizovatelné.
Body add 3 + 4 jsou dost tvrdým oříškem.

Snad tuto výzvu někdo přijme ... Díky předem za případnou spolupráci a pomoc! :beer:

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
Ano máš pravdu, body 3 a 4 jsou oříšek, na který budeš muset pořídit nějaké sofistikované řešení, kt…
Jan Fiala 16.04.2017 10:25
Jan Fiala
Děkuji za velmi přínosný analytický pohled programátora. Placené SW řešení není problém, nikoli však…
PDF Comparison 16.04.2017 11:34
PDF Comparison
PDF může vznikat různými cestami. Může mít přímo vložené fonty, může mít odkaz na externí fonty a mů…
Jan Fiala 16.04.2017 18:59
Jan Fiala
Moc děkuji za věnovaný čas a vysvětlení. Prakticky jsem ověřil, že PDF soubory obsahující naprosto…
PDF Comparison 16.04.2017 19:33
PDF Comparison
Pokud jsou tam stejné obrázky, pak by bylo ideální, kdyby nějaký soft byl schopný extrahovat obrázky… poslední
Jan Fiala 16.04.2017 21:32
Jan Fiala

Ano máš pravdu, body 3 a 4 jsou oříšek, na který budeš muset pořídit nějaké sofistikované řešení, které zřejmě zdarma nebude.
Textova PDF:
1. budeš muset z PDF dostat text a ten někam uložit - zde se nabízí databáze, kde uložíš cestu a jméno souboru (+ další atributy) a textový obsah
2. budeš muset použít nějaký nástroj na porovnávání textu a zjistit duplicity, případně doladit, jak velký rozdíl už znamená rozdílné soubory. Vzhledem k různému způsobu zpracování a ukládání obsahu PDF to bude problém. Jednou to může být text, podruhé je diakritika dokreslována graficky atd. Takže výsledkem budou skupiny souborů, které bude muset někdo projít a určit, zda se jedná o shodné nebo ne a vybrat nejlepší verzi.
Bude to znamenat spoustu ruční práce

Grafická PDF:
Nějakým nástrojem budeš muset provést hromadně OCR.
Vzhledem k tomu, že různá grafická kvalita bude produkovat různé OCR výsledky, ve výsledku to bude ještě víc ruční práce než v předchozím bodě.
Tohle už je práce pro profesionální software, např. ABBYY Fine Reader server, kterým to proženeš a který do PDF přidá textovou vrstvu. Pak můžeš postupovat jako v předchozím bodě u textových PDF.

Děkuji za velmi přínosný analytický pohled programátora.
Placené SW řešení není problém, nikoli však programované na zakázku, to by se finančně nevyplatilo, protože se jedná o jednorázovou akci.
ABBYY SW vedu v patrnosti.

Prosím o vysvětlení, cituji: "diakritika dokreslována graficky". Není mi to jasné.

Dovolím si trochu diskusně oponovat a ještě prosím o reakce a případné dovysvětlení v kontexttu toho co níže doplňuji.

Add grafické PDF - Pochopeno správně, jedná se opravdu o skeny papírových dokumentů, takže ve výsledku se jedná o obrázek uvnitř PDF.
OCR řešení je nyní nežádoucí, vím o co jde, různé OCR SW znám, jsem praktik. Za nutné vidím analyzovat zdrojová PDF tak, jak jsou nyní a nemodifikovat je. Jakákoli modifikace zkomplikuje nebo zabrání porování s jinými výchozímy daty, tím spíš, že přibudou další kvanta dat a to už lidský mozek po pár takových procesech může vzdát. Proto je nejprve nutné porovnávat a odstranit duplicity v souladu s body 1 a 2.

Add textové PDF - Nemyslím si, že by bylo nutné u textových PDF text exportovat externě (zníměna databáze) a dále s ním pracovat. Jistou naději dává principielní funkčnost programu DiffPDF. Je to pro mě nový SW a neznám ho. Pravděpodobně nedává šanci na zautoatizované zpracování více souborů a pracuje pouze se dvěmi PDF. Přesto je světlem na konci tunelu ...
Viz
diffpdf.html
diffpdf-foss.html
http://1.bp.blogspot.com/_YBnmJTR73Is/TN2R0ndLaMI/ AAAAAAAAAIA/knMcDdgb6BE/s1600/Schermata-DiffPDF-2. png

PDF může vznikat různými cestami. Může mít přímo vložené fonty, může mít odkaz na externí fonty a může obsahovat pouze základní fonty a diakritiku mít třeba dokreslenou graficky. Záleží to na programu, ve kterém dané PDF vznikne.

Ad grafická PDF - pokud jsou shodná, poznáš to přes srovnání velikosti, názvu, případně můžeš použít hashe, pokud chceš poznat bitově shodné dokumenty. Ale nepoznáš to už v případě, že soubor byl trochu modifikován, vytvořen 2x ze stejných obrázků různými programy apod. Obrázky jspoou do PDF vloženy jako objekty a na stránce je odkaz, kam se objekt vykreslí. Při vytváření PDF dojde k "optimalizaci" obrázků - převodu do jiného formátu, kompresi JPG atd. A na nastavení záleží jak obrázek dopadne. Pokud chceš srovnávat obsah obrázků, talk na to potřebuješ nějakou umělou inteligenci - viz google a hledání podobných obrázků. Proto se mi zdá hromadné OCR jako rozumnější přístup a bude to do budoucna využitelné i při zaindexování a fulltext hledání dokumentu

Ad textová PDF - budeš potřebovat srovnat texty a najít texty s určitou shodou obsahu. Jak velkou toleranci si pak nastavíš, bude na tobě. Na tohle programy typu DIFF PDF nepomohou. Mohl bys třeba spočítat četnost slov v dokumentech a pak jen srovnat četnosti - tím by ses poměrně jednoduše a rychle dostal ke shodnému obsahu s tím, že se velmi jednoduše dají měnit hranice. Tohle může být případ třeba různých verzí dokumentů, které projdou několika korekcemi a přitom se budou lišit na několika místech.

Moc děkuji za věnovaný čas a vysvětlení.

Prakticky jsem ověřil, že PDF soubory obsahující naprosto stejný obrázek, vygenerované stejným programem, mají rozdílnou velikost a časové razítko jen kvůli tomu, že jsem změnil editovatelné informace ve vlastnostech jednoho PDF (např. zdrojová aplikace, producent PDF - může být třeba multifunkční Canon zařízení, tedy nejenom producentem nějaký program, datum vytvoření PDF, datum editační změny PDF).
Z toho logicky dovozuji, že nejlepší bude z těch grafických PDF (skeny A4, A3) vyexportovat bezztrátový TIFF. Získané TIFF soubory pak v nějakém schopném SW porovnat a vyřadit grafické duplicity. Následně ze zůstatkových TIFF vygenerovat nová PDF.
Přijde mi to paradoxně jednodušší řešení pro grafická PDF než pro textová PDF. Uvažuji správně? Tohle je při nejhorším řešitelné nákupem SW licencí v řádu desítek USD.
Dalším cílem je otestovat programy které umí vyhledat duplicitní grafické soubory.
Prosba na ostatní - máte nějaké osvědčené tipy na "porovnávače obrázků?"

Dávkové porovnání textových PDF s cílem vyhledání duplicit, zohledňující datumovky, to je oříšek...

Pokud jsou tam stejné obrázky, pak by bylo ideální, kdyby nějaký soft byl schopný extrahovat obrázky z PDF a ty by se pak následně porovnaly. Zde jsou nějaké odkazy (ten freeware tam uvedený by to měl umět i dávkově):
http://www.makeuseof.com/tag/extract-images-pdf-fi les-save-windows/

Třeba by bylo cestou odstranit nejprve všechny poznámky z PDF a až pak porovnávat. Zde jsem našel nějaké náznaky na dávkové ostranění poznámek:
https://superuser.com/questions/221711/batch-remov e-comments-from-pdf-files

Zpět do poradny Odpovědět na původní otázku Nahoru