DevStory #16: AI and Full text search on information extracted from 900 million land record pages
Documents are filed with the county courts registering transactions related to deeds, notes, settlements, and leases. These are public records. Historical information as far back as the 1920s until the present day is stored in the form of tiffs and is not easily accessible as only a few organizations have access to this information as they have collected this information over the years.
Attorneys, paralegals, title researchers, run sheet generating landmen at oil and gas land departments, banks and trusts, mortgage brokers, real estate brokers, and surveyors research these tiff images. These resources are used in real estate, oil and gas, title research, mortgage lending, and investment industries.
Records and information are from predominantly non-urban settings such as small metropolitan areas, micropolitan counties, and rural counties where natural resources are significant economic drivers.
This is an information goldmine, but not accessible in a user-friendly manner. To make searching this data easy and help stakeholders research and nail down relevant information, it was decided to extract the text in this information using OCR, then enhance and extract datasets from the text, index the text and build a search capability akin to Google Search so as to identify documents of interest easily, research the documents and then purchase the documents through the website increase revenue. All this on a shoestring budget.

To achieve this, documents were pulled from WASABI ( a low-cost S3 substitute ). The image quality was enhanced using Artificial Intelligence. OCR / ICR tools were used to extract the text. Some of the text was incomprehensible due to the quality of the document or some overlapping text printed on the source document. Lemmatization of the garbled text results in actual dictionary words. This lemmatized text corpus was then used to index the documents. The reverse index is used by a customized full-text engine to provide the end-user with a full-text search capability based on some tokens. This is very similar to early Google Search.
A significant number of open source technologies were used in this implementation with scale-out decoupled highly cohesive components centered an event-driven architecture ( EDA ). Some of the tools used are OpenCV, Tesseract, NLTK, Gensim, Spacy, Algolia, Elastic Search, Kafka, MongoDB, and React (UI)