PDF-dokumenttien esikäsittely Amazon Textractilla: Visuaalien tunnistus ja poisto

Lähdesolmu: 1204412

Amazonin teksti on täysin hallittu koneoppimispalvelu (ML), joka poimii skannatuista asiakirjoista automaattisesti tulostetun tekstin, käsinkirjoituksen ja muut tiedot, jotka ylittävät yksinkertaisen optisen merkintunnistuksen (OCR) tunnistamaan, ymmärtämään ja poimimaan tietoja lomakkeista ja taulukoista. Amazon Textract voi tunnistaa tekstiä useista asiakirjoista, mukaan lukien taloudelliset raportit, lääketieteelliset tiedot ja verolomakkeet.

Monissa käyttötapauksissa sinun on purettava ja analysoitava asiakirjoja erilaisilla visuaaleilla, kuten logoilla, valokuvilla ja kaavioilla. Nämä grafiikat sisältävät upotettua tekstiä, joka sekoittaa Amazon Textract -lähdön tai jota ei tarvita jatkokäsittelyyn. Esimerkiksi monet kiinteistöjen arviointilomakkeet tai asiakirjat sisältävät kuvia taloista tai historiallisten hintojen kehityksestä. Näitä tietoja ei tarvita loppupään prosesseissa, ja sinun on poistettava ne ennen kuin käytät Amazon Textractia asiakirjan analysointiin. Tässä viestissä kuvataan kahta tehokasta tapaa poistaa nämä visualisoinnit osana esikäsittelyäsi.

Ratkaisun yleiskatsaus

Tässä viestissä käytämme PDF-tiedostoa, joka sisältää logon ja kaavion esimerkkinä. Käytämme kahta erityyppistä prosessia näiden visualisointien muuntamiseen ja havaitsemiseen ja muokkaamiseen.

Ensimmäisessä menetelmässä käytämme OpenCV-kirjaston kanny-reunanilmaisinta visualisoinnin reunan havaitsemiseen. Toista menetelmää varten kirjoitamme mukautetun pikselikonsentraation analysaattorin näiden visuaalien sijainnin havaitsemiseksi.

Voit purkaa nämä grafiikat jatkokäsittelyä varten ja muokata koodia helposti käyttötapauksesi mukaan.

Haettavat PDF-tiedostot ovat alkuperäisiä PDF-tiedostoja, jotka yleensä luovat muut sovellukset, kuten tekstinkäsittelyohjelmat, virtuaaliset PDF-tulostimet ja natiivieditorit. Tämäntyyppiset PDF-tiedostot säilyttävät metatiedot, teksti- ja kuvatiedot asiakirjan sisällä. Voit helposti käyttää kirjastoja, kuten PyMuPDF / fitz navigoida PDF-rakenteessa ja tunnistaa kuvat ja teksti. Tässä viestissä keskitymme ei-hakukelpoisiin tai kuvaperusteisiin asiakirjoihin.

Vaihtoehto 1: Visuaalien havaitseminen OpenCV-reuna-ilmaisimella

Tässä lähestymistavassa muunnamme PDF-tiedoston PNG-muotoon ja sitten asiakirjan harmaasävyyn OpenCV-Python kirjasto ja tunnista visuaaliset sijainnit Canny Edge Detectorilla. Voit seurata yksityiskohtaisia ​​ohjeita seuraavassa muistikirja.

  1. Muunna asiakirja harmaasävyksi.

  1. Käytä Canny Edge -algoritmia tunnistaaksesi ääriviivat Canny-Edged-asiakirjassa.
  2. Tunnista suorakulmaiset muodot, joilla on merkitykselliset mitat.

Voit säätää ja optimoida muutamia parametreja havaintotarkkuuden lisäämiseksi käyttötapauksesta riippuen:

  • Pienin korkeus ja leveys - Nämä parametrit määrittävät visuaalisen tunnistuksen vähimmäiskorkeus- ja leveysrajat. Se ilmaistaan ​​prosentteina sivun koosta.
  • täyte - Kun suorakulmion muoto havaitaan, määritämme ylimääräisen pehmustealueen, jotta joustavuutta muutettavan sivun kokonaispinta-alaan voidaan lisätä. Tästä on hyötyä tapauksissa, joissa visuaaliset tekstit eivät ole selvästi rajattujen suorakaiteen muotoisten alueiden sisällä.

Hyödyt ja haitat

Tällä lähestymistavalla on seuraavat edut:

  • Se tyydyttää useimmat käyttötapaukset
  • Se on helppo toteuttaa ja nopea saada käyttöön
  • Sen optimaaliset parametrit tuottavat hyviä tuloksia

Lähestymistavalla on kuitenkin seuraavat haittapuolet:

  • Visuaalien, joissa ei ole rajoittavaa laatikkoa tai ympäröiviä reunoja, suorituskyky voi vaihdella grafiikan tyypin mukaan
  • Jos tekstilohko on suurten rajoittavien ruutujen sisällä, koko tekstilohko voidaan katsoa visuaaliseksi ja poistaa tällä logiikalla

Vaihtoehto 2: Pikselikonsentraation analyysi

Teemme toisen lähestymistavan analysoimalla kuvapikseleitä. Normaalit tekstikappaleet säilyttävät pitoisuuden allekirjoituksen riveissään. Voimme mitata ja analysoida pikselitiheyksiä alueiden tunnistamiseksi pikselitiheyksillä, jotka eivät ole samanlaisia ​​kuin muu asiakirja. Voit seurata yksityiskohtaisia ​​ohjeita seuraavassa muistikirja.

  1. Muunna asiakirja harmaasävyksi.
  2. Muunna harmaat alueet valkoisiksi.
  3. Kutista pikselit vaakasuunnassa laskeaksesi mustien pikselien pitoisuuden.
  4. Jaa asiakirja vaakasuoriksi raidoiksi tai segmenteiksi tunnistaaksesi ne, jotka eivät ole kokoteksti (ulottuu koko sivulle).

  1. Määritä kaikki vaakasegmentit, jotka eivät ole kokoteksti, alueet, jotka ovat tekstiä, verrattuna alueisiin, jotka ovat kuvia. Tämä tehdään suodattamalla leikkeet pois käyttämällä mustan pikselin vähimmäis- ja enimmäispitoisuuskynnyksiä.
  2. Poista alueet, jotka on tunnistettu ei-kokotekstiksi.

Voit virittää seuraavat parametrit optimoidaksesi muiden kuin tekstialueiden tunnistamisen tarkkuuden:

  • Ei-tekstiset vaakasegmentin kynnysarvot - Määritä mustan pikselin vähimmäis- ja enimmäispitoisuusrajat, joita käytetään vaakasuorien segmenttien tunnistamiseen sivulta.
  • Pystysegmentin kynnysarvot muulla kuin tekstillä - Määritä mustan pikselin vähimmäis- ja enimmäispitoisuusrajat, joita käytetään pystysuuntaisten segmenttien tunnistamiseen sivulta.
  • Ikkunan koko - Määrittää, miten sivu jaetaan vaaka- ja pystysegmentteihin analyysia varten (X_WINDOW, Y_WINDOW). Se määritetään pikselien määränä.
  • Pienin visuaalinen alue - Määrittää pienimmän alueen, jota voidaan pitää poistettavana visuaalina. Se määritellään pikseleinä.
  • Harmaa alue - Harmaiden sävyjen kynnysarvo poistetaan.

Hyödyt ja haitat

Tämä lähestymistapa on erittäin muokattavissa. Sillä on kuitenkin seuraavat haittapuolet:

  • Optimaaliset parametrit vievät kauemmin, ja ratkaisun ymmärtäminen on syvempää
  • Jos asiakirjaa ei ole oikaistu täydellisesti (kameran ottama kuva on kulma), tämä menetelmä voi epäonnistua.

Yhteenveto

Tässä viestissä osoitimme, kuinka voit toteuttaa kaksi lähestymistapaa visuaalisten kuvien muokkaamiseen eri asiakirjoista. Molemmat lähestymistavat on helppo toteuttaa. Voit saada korkealaatuisia tuloksia ja mukauttaa kumpaakin menetelmää käyttötapauksesi mukaan.

Jos haluat oppia lisää Amazon Textractin eri tekniikoista, käy yleisöllä AWS näytteet GitHub-repo.


Tietoja Tekijät

 Yuan Jiang on Sr-ratkaisuarkkitehti, joka keskittyy koneoppimiseen. Hän on Amazon Computer Vision Hero -ohjelman ja Amazon Machine Learning Technical Field Communityn jäsen.

Victor Red on Sr-kumppaniratkaisuarkkitehti, jolla on keskustelunaiheinen AI. Hän on myös Amazon Computer Vision Hero -ohjelman jäsen.

Luis Pineda on Sr Partner Management Solution Architect. Hän on myös Amazon Computer Vision Hero -ohjelman jäsen.

Miguel Romero Calvo on AWS-koneoppimisen ratkaisulaboratorion datatieteilijä.

Lähde: https://aws.amazon.com/blogs/machine-learning/process-text-and-images-in-pdf-documents-with-amazon-textract/

Aikaleima:

Lisää aiheesta AWS-koneoppimisblogi