Risultati misurati: quanto reggono le correzioni
Ogni correzione che CECO PDF fa viene controllata pixel per pixel, e quel controllo non dice nulla su quanto sia facile trovare la correzione in seguito. Questa pagina sì. Pubblica ciò che i nostri rilevatori forensi e un revisore hanno trovato quando sono andati a cercare, su pagine inventate costruite allo scopo, lasciando anche le righe deboli. Ogni numero qui è generato dai risultati registrati del benchmark; nessuno è scritto a mano.
I numeri del benchmark sono stati registrati in data 25 ottobre 2026; quelli della revisione alla cieca in data 21 settembre 2026. Versione del motore 0.1.1.
Cosa viene misurato
Il benchmark costruisce 200 pagine inventate: lettere, dichiarazioni e moduli scritti allo scopo, senza nomi, indirizzi o cifre reali. Ognuna viene poi scansionata via software come lo sarebbe una pagina vera, in quattro condizioni:
- Fotocamera del telefono. Una pagina fotografata con un telefono: luce irregolare, una leggera inclinazione, il rumore del sensore e il JPEG che salva la fotocamera.
- Scanner da ufficio. Una scansione piana salvata come JPEG, il tipo di scansione più comune che ci sia.
- Fax. Una pagina solo in bianco e nero, senza alcun grigio, come la consegna un fax o uno scanner bitonale.
- Carta intestata a colori. Una scansione a colori di una pagina con un'intestazione e una fascia laterale colorate.
Su ogni pagina al motore viene chiesta una correzione, di quattro tipi:
- Una parola sostituita: una parola sulla pagina diventa un'altra.
- Una cifra cambiata: una cifra di una quantità diventa quella successiva.
- Una parola rimossa: una parola viene tolta e la riga viene richiusa.
- Una parola aggiunta: una parola viene composta su carta bianca misurata accanto al testo.
Una correzione che il motore non sa fare bene viene rifiutata, e un rifiuto viene contato, non valutato. Ogni correzione che fa viene verificata come il servizio verifica le tue: la pagina viene renderizzata prima e dopo a 300 punti per pollice e confrontata, e la correzione conta solo se ogni pixel cambiato si trova dentro l'area che ha dichiarato.
Poi la pagina corretta, e solo la pagina corretta, viene consegnata a dieci rilevatori forensi che abbiamo scritto contro noi stessi. Ognuno è una misura classica del tipo che fa il software di un perito documentale, e ognuno restituisce una mappa dei punti della pagina in cui ritiene sia stato fatto qualcosa:
- Residuo di ricompressione: quanto cambia ogni parte della pagina quando viene salvata di nuovo come JPEG a diverse qualità.
- Fantasmi JPEG: la traccia che una seconda compressione lascia nella curva del residuo.
- Storia della quantizzazione: se i coefficienti di compressione portano la storia della pagina stessa o un'altra.
- Griglia di compressione: se i confini dei blocchi del JPEG sono allineati ovunque.
- Rumore della carta: se la grana della carta bianca è la stessa ovunque.
- Tracce di ricampionamento: il residuo periodico che lascia il ridimensionamento o la rotazione dei pixel.
- Nitidezza dei bordi: quanto rapidamente l'inchiostro passa alla carta lungo i bordi netti.
- Blocchi copiati: blocchi di pixel che compaiono due volte sulla pagina.
- Illuminazione: se la luminosità della carta segue un unico campo di luce uniforme.
- Forme in bianco e nero: le dimensioni, le forme e le lunghezze dei tratti d'inchiostro su una pagina senza grigi.
Ogni mappa viene valutata rispetto alla verità, che nessun rilevatore vede: i pixel esatti che la correzione ha cambiato. Il punteggio è l'area sotto la curva, e la REPERIBILITÀ di una pagina è il punteggio più alto che un qualsiasi rilevatore abbia ottenuto su di essa. 0,5 significa che il rilevatore non ha fatto meglio di un lancio di moneta; 1,0 significa che ha tracciato una linea intorno alla correzione. La cifra di una riga è la media sulle correzioni che il motore ha accettato. Più basso è meglio per noi, e all'attaccante viene dato ogni vantaggio: può scegliere il suo rilevatore più forte dopo aver visto ogni pagina.
I numeri
Oggi il rilevatore più forte individua facilmente una correzione accettata. Su tutte le condizioni la cifra è 0,914, da 94 correzioni fatte e 106 rifiutate, su 200 richieste. Anche la condizione in cui le correzioni sono più difficili da trovare, la carta intestata a colori con 0,871, è lontana da un lancio di moneta. L'esecuzione completa richiede circa 24 minuti su due core del processore.
REPERIBILITÀ per condizione di scansione: più basso è meglio, 0,5 è un lancio di moneta
| Condizione | REPERIBILITÀ | Correzioni fatte | Rifiutate |
|---|---|---|---|
| Fotocamera del telefono | 0,981 | 10 | 42 |
| Scanner da ufficio | 0,883 | 26 | 26 |
| Fax | 0,989 | 22 | 26 |
| Carta intestata a colori | 0,871 | 36 | 12 |
| Tutte le condizioni | 0,914 | 94 | 106 |
Su ogni riga, il numero di pixel cambiati al di fuori dell'area dichiarata è 0: la verifica ha tenuto su ogni correzione fatta.
Ogni condizione e tipo di correzione
Ogni riga del benchmark
| Condizione | Correzione | REPERIBILITÀ | Fatte | Rifiutate | Cambiati fuori dall'area | Somiglianza nel riquadro modificato | Nitidezza della zona corretta rispetto alla corona | Come sono state fatte le correzioni |
|---|---|---|---|---|---|---|---|---|
| Fotocamera del telefono | una parola sostituita | 0,988 | 2 | 11 | 0 | 0,629 | 1,748 | adattata alle lettere intorno: 2 |
| Fotocamera del telefono | una cifra cambiata | 0,964 | 2 | 11 | 0 | 0,266 | 2,138 | adattata alle lettere intorno: 2 |
| Fotocamera del telefono | una parola rimossa | 0,965 | 2 | 11 | 0 | 0,302 | 1,816 | realizzata con i segni della pagina stessa: 2 |
| Fotocamera del telefono | una parola aggiunta | 0,995 | 4 | 9 | 0 | 0,025 | 2,178 | adattata alle lettere intorno: 4 |
| Scanner da ufficio | una parola sostituita | 0,923 | 5 | 8 | 0 | 0,274 | 1,922 | adattata alle lettere intorno: 5 |
| Scanner da ufficio | una cifra cambiata | 0,927 | 10 | 3 | 0 | 0,456 | 3,136 | adattata alle lettere intorno: 10 |
| Scanner da ufficio | una parola rimossa | 0,824 | 11 | 2 | 0 | 0,239 | 1,775 | realizzata con i segni della pagina stessa: 9, adattata alle lettere intorno: 2 |
| Scanner da ufficio | una parola aggiunta | n.d. | 0 | 13 | 0 | n.d. | n.d. | nessuna |
| Fax | una parola sostituita | 0,985 | 2 | 10 | 0 | 0,786 | 2,030 | adattata alle lettere intorno: 2 |
| Fax | una cifra cambiata | 0,999 | 1 | 11 | 0 | 0,245 | 1,979 | adattata alle lettere intorno: 1 |
| Fax | una parola rimossa | 0,982 | 11 | 1 | 0 | 0,271 | 2,515 | realizzata con i segni della pagina stessa: 11 |
| Fax | una parola aggiunta | 0,998 | 8 | 4 | 0 | 0,012 | 4,355 | adattata alle lettere intorno: 8 |
| Carta intestata a colori | una parola sostituita | 0,848 | 9 | 3 | 0 | 0,392 | 1,739 | adattata alle lettere intorno: 9 |
| Carta intestata a colori | una cifra cambiata | 0,904 | 8 | 4 | 0 | 0,575 | 2,134 | adattata alle lettere intorno: 8 |
| Carta intestata a colori | una parola rimossa | 0,808 | 9 | 3 | 0 | 0,199 | 1,617 | realizzata con i segni della pagina stessa: 8, adattata alle lettere intorno: 1 |
| Carta intestata a colori | una parola aggiunta | 0,924 | 10 | 2 | 0 | 0,009 | 2,269 | adattata alle lettere intorno: 10 |
“Cambiati fuori dall'area” conta i pixel che le correzioni di una riga hanno cambiato al di fuori di ciò che ciascuna ha dichiarato, sommati sulla riga. “Somiglianza nel riquadro modificato” è lo SSIM tra prima e dopo dentro il riquadro più piccolo che contiene ogni pixel cambiato, dove un riquadro cambiato completamente dà un valore basso. “Nitidezza della zona corretta rispetto alla corona” divide il rapporto nitidezza/rumore della zona corretta per quello della carta e del testo intorno, così una zona che si legge come ciò che la circonda sta vicino a uno. “Come sono state fatte le correzioni” conta le correzioni delle righe per esito, con le parole che usa l'app.
Dove va male
Una pagina con solo numeri buoni sembrerebbe marketing. Queste sono le condizioni in cui una correzione si trova più facilmente rispetto alla cifra complessiva del benchmark, perché, e cosa si sta facendo per ciascuna.
Fotocamera del telefono: 0,981
Una foto fatta con il telefono porta il rumore del sensore, l'ammorbidimento dell'obiettivo e una luce irregolare sulla pagina. Le lettere disegnate riproducono la sfocatura e la grana misurate intorno, ma non abbastanza da vicino: le misure della quantizzazione e dell'illuminazione separano ancora la zona corretta dalla pagina. Quasi metà delle correzioni richieste sulle pagine fotografate con il telefono è stata rifiutata, la maggior parte perché l'inclinazione della pagina rendeva il piano non sicuro.
Prossimo passo: un modello del rumore del sensore, e la riproduzione della storia di compressione della foto, così che una zona disegnata porti la stessa grana e lo stesso JPEG della pagina intorno.
Fax: 0,989
Una pagina di fax contiene solo bianco e nero. Le lettere che il motore disegna sono antialiasate, con del grigio lungo i bordi, quindi stanno su una pagina che non ha grigio da nessun'altra parte, e una misura delle forme dei bordi o del campo di rumore le trova subito. Saperlo non è la stessa cosa che risolverlo.
Prossimo passo: disegnare in bianco e nero su una pagina in bianco e nero, riproducendo gli spessori dei tratti e i gradini dei bordi della pagina stessa, invece che in grigio.
Rifiutata ogni volta
Scanner da ufficio, una parola aggiunta: richiesta 13 volte, fatta 0. Non c'è un numero per questa riga perché non è stata fatta nessuna correzione. Ogni tentativo è stato rifiutato dai controlli del motore stesso: su questo tipo di scansione la parola disegnata risulta più liscia o più nitida della trama JPEG intorno, oppure non entra nello spazio bianco misurato per essa. Il motore rinuncia piuttosto che comporre una parola che risalterebbe.
E all'occhio di una persona
I rilevatori sono una cosa. A un revisore sono state mostrate 20 coppie di pagine, una originale e una corretta, in ordine casuale e alla cieca, con la domanda di indicare quale fosse quella corretta. Ha indovinato 17 volte su 20; una moneta indovinerebbe metà delle volte.
La revisione alla cieca, per condizione di scansione
| Condizione | Individuate | Mostrate |
|---|---|---|
| Fotocamera del telefono | 5 | 5 |
| Scanner da ufficio | 3 | 5 |
| Fax | 5 | 5 |
| Carta intestata a colori | 4 | 5 |
| Tutte le condizioni | 17 | 20 |
Il revisore aveva costruito il sistema di prova e sapeva quali parole cambia il benchmark, quindi questo è un risultato per trovare difetti, non una misura di ciò che vedrebbe un estraneo. Viene pubblicato perché è ciò che è stato misurato.
Una correzione, passo per passo
Invece dell'esempio più favorevole, questa pagina ne mostra uno scelto con una regola: una parola sostituita, che è la correzione per cui lo strumento esiste, nella condizione di scansione la cui riga di sostituzione di parole è più vicina alla cifra complessiva del benchmark; e, in quella riga, la pagina che le prove del benchmark stesso esaminano, cioè la correzione accettata che un rilevatore ha trovato più facilmente. Il risultato è scanner da ufficio, una parola sostituita, seed 73132: una lettera inventata, scansionata in quella condizione (una scansione piana salvata come JPEG, il tipo di scansione più comune che ci sia), in cui la parola “amber” sulla prima riga del corpo diventa “umber”.

Come è stata fatta: Adattata alle lettere intorno. La pagina non conteneva l'inchiostro che serve alla nuova parola, quindi le lettere sono state disegnate per somigliare ai caratteri accanto, con la sfocatura, la grana e il colore dell'inchiostro presi da ciò che circonda la selezione.
I ritagli qui sotto sono i pixel della pagina stessa a 300 punti per pollice, mostrati a otto volte la loro dimensione (quattro su uno schermo piccolo), con ogni pixel come un quadrato e senza smussatura; scorri di lato per vedere l'intera riga. Ogni pixel che la correzione ha cambiato è dentro l'area contornata nella terza immagine.



Il controllo
4780 pixel cambiati, tutti dentro l'area dichiarata, che va da (336, 904) a (488, 944) sulla griglia a 300 punti per pollice; 0 cambiati al di fuori. Verificata.
Cosa hanno trovato i rilevatori
Il punteggio di ogni rilevatore su questa pagina
| Rilevatore | Cosa misura | Punteggio |
|---|---|---|
| Residuo di ricompressione | quanto cambia ogni parte della pagina quando viene salvata di nuovo come JPEG a diverse qualità | 0,944 |
| Fantasmi JPEG | la traccia che una seconda compressione lascia nella curva del residuo | 0,784 |
| Storia della quantizzazione | se i coefficienti di compressione portano la storia della pagina stessa o un'altra | 0,975 |
| Griglia di compressione | se i confini dei blocchi del JPEG sono allineati ovunque | 0,836 |
| Rumore della carta | se la grana della carta bianca è la stessa ovunque | 0,734 |
| Tracce di ricampionamento | il residuo periodico che lascia il ridimensionamento o la rotazione dei pixel | 0,241 |
| Nitidezza dei bordi | quanto rapidamente l'inchiostro passa alla carta lungo i bordi netti | 0,818 |
| Blocchi copiati | blocchi di pixel che compaiono due volte sulla pagina | 0,498 |
| Illuminazione | se la luminosità della carta segue un unico campo di luce uniforme | 0,721 |
| Forme in bianco e nero | le dimensioni, le forme e le lunghezze dei tratti d'inchiostro su una pagina senza grigi | non applicabile |
Il più forte è stato la storia della quantizzazione, con 0,975, e quella è la REPERIBILITÀ di questa pagina. Detto semplicemente: il nostro rilevatore ha tracciato una linea intorno a questa correzione. La somiglianza dentro il riquadro modificato è stata 0,287, e la nitidezza della zona corretta rispetto alla corona 1,935, quindi le lettere disegnate risultano un po' più pulite della scansione intorno. I ritagli sono qui sopra, perché tu possa giudicare.
Il registro, e un certificato
Il file corretto porta con sé il proprio registro, un allegato chiamato
provenance.json. Per questa correzione dice: pagina
1, l'area da (336, 904) a (488, 944) a
300 punti per pollice, “amber” prima e
“umber” dopo, con l'esito “Adattata alle lettere intorno”, verificata, con 4780 pixel
cambiati e 0 al di fuori dell'area
dichiarata, dalla versione del motore 0.1.1. Il registro indica il file come
copia corretta. È una dichiarazione che il file fa su se stesso; la prova è il registro del
servizio, come spiega Come funziona.
Un certificato di verifica è una dichiarazione firmata delle stesse misure, emessa con il piano Business per un documento corretto, che chiunque può controllare tramite il controllo del certificato senza account. Cosa dimostra una verifica, campo per campo, è nel modello di verifica.
Per questa correzione non è stato emesso nessun certificato: i certificati vengono emessi per le correzioni fatte sul servizio in funzione, e questa è stata fatta nel benchmark. Ciò che un certificato conterrebbe è la misura qui sopra, firmata.
Le lettere sono state disegnate con i caratteri con cui funziona il servizio, e nessun altro, così che questo esempio sia quello che farebbe il servizio; CECO PDF mantiene questa pagina fedele a questa regola rigenerando l'esempio, con l'insieme di caratteri del servizio stesso, ogni volta che il motore cambia.
Come controllare questi numeri
Tutto ciò che è su questa pagina è generato dai risultati registrati del benchmark, e gli stessi dati sono serviti come JSON, così un programma può leggere i numeri e confrontarli con la pagina. Il benchmark, i rilevatori e il generatore del corpus fanno parte del codice del motore stesso e dei suoi test. Il corpus è inventato e generato da un seed: nessun documento reale, e nessun documento di un cliente, ne fa parte o ne farà mai parte.
La pagina non viene aggiornata a mano. Quando il benchmark viene eseguito di nuovo e il suo punteggio pubblicato, questa pagina viene rigenerata da esso, e un test fallisce se i due non coincidono.
Puoi riutilizzare questi numeri, da questa pagina o dal JSON, con la licenza Creative Commons Attribuzione 4.0 Internazionale: indica che sono di CECO PDF e metti un link a questa pagina. La licenza copre le misure, non il motore, il servizio o il resto di questo sito.
Cosa non dicono questi numeri
Sono misurati su pagine inventate, non su documenti dei clienti, che non lasciano mai il servizio e non vengono mai usati come dati di prova. Quattro condizioni di scansione e quattro tipi di correzione sono un insieme di regressione, non il mondo, e un numero qui è una proprietà di quell'insieme nel giorno in cui è stato misurato.
Sono i numeri dei nostri rilevatori. Un perito documentale con altri strumenti, più tempo o una stampa della pagina può trovare ciò che questi non trovano, e un numero basso qui non sarebbe una promessa che una correzione non si possa trovare. Oggi i numeri non sono bassi.
Una correzione non viene mai fatta per essere nascosta. Ognuna porta la dichiarazione della persona che l'ha richiesta e un registro dentro il file, e i termini dicono chi può modificare un documento: solo chi ha il diritto di modificarlo. Queste misure sono pubblicate perché l'affermazione che nient'altro sulla pagina è cambiato si possa controllare, e perché ciò che fa lo strumento sia noto, non immaginato.
Ultimo aggiornamento