by Dr. Jesper Zedlitz, Computer Genealogy Association
In my last blog post I introduced Germany’s largest genealogical association “Verein für Computergenealogie” and itscrowd-sourcing platform DES. The DES has an easy-to-use browser-based interface that heavily contributed to the motivation of the volunteers. We used the DES to realize our biggestsingle-source project so far, the in-depth-indexing of theGerman WW1 casualty lists. This source comprises 31,000 newspaper-format pages displaying more than 8.5 million entries. With the help of approx. 700 volunteers we finished this enormous task within 32 months—on time for the WW1 centenary in August 2014. The completion sent positive waves throughout German media. Now, we also use the DES for several other sources, such as other casualty lists, historic city directories, civil registry records, church records, and many more.
Our newest project is the structured transcription of the Austrian-Hungarian WW1 casualty lists. We carry out this project in cooperation with several other associations from Austria, Hungary and Germany. The Austrian-Hungarian casualty lists include even more pages than the German lists. Although the total number of entries is much smaller (estimated 3.5 million), each entry is more detailed.
As you can see in the example scan, the casualty lists contain a lot of special characters—a result of the multitude of languages spoken in the Austria-Hungarian empire. This is both a problem for a human worker (who cannot simply type the letters on the keyboard) and an optical character recognition (OCR) program.
We estimate that the effortwill be on the scale of the German casualty lists. Therefore, we have revised our DES system. Instead of typing every single word by hand, we use OCR to create a preliminary text of the casualty lists. It is assumed that this text will contain a lot of errors. Nevertheless, it is possible to recognize structures within the text. If a piece of information is unclear, it will be omitted. In this way, the text becomes a list of fragmentary records. These fragmentary records are then presented to volunteers using an enhanced version of the DES. The missing information is highlighted, making it easy for volunteers to complete the records.
In the next section I will describe the ENRICHER. The changes and optimizations for the DES will be discussed later on. The algorithm used for the Austria-Hungarian casualty lists is an enhanced version of the ENRICHER presented in [Zedlitz2017]. This diagram shows an overview of what is going on inside the ENRICHER:
Input of the ENRICHER is an OCR text that includes positions of the recognized words on the scan and information on the certainty of the per-character recognition. For the OCR we currently use ABBYY FineReader XIX with a self-written file export to preserve the required information (position and certainty). To deal with the variety of characters, we perform the OCR with multiple languages. The best results have been achieved by a combination of Croatian, Czech, German, Hungarian, Polish, and Romanian.
As you can see, each entry is distributed over two or more lines. Sometimes an entry is short enough to fit into one line. During the “entry defragmentation” all lines that make up an entry are combined into a single one. An important indicator is the x-position of a line’s first character. Ideally, after the processing each line will contain exactly one entry. It may happen that either two entries are combined in one line or one entry is split into two lines. However, this will be detected later.
The next step, “structure recognition”, is the assignment of individual words from the OCR text lines to the fields of a record such as family name, given name, military unit, place of origin, etc. This works only because many dictionaries can be used. From manually entered records we have quite a good idea of which values we can expect in most fields. For example, our dictionary of military ranks contains 130 different abbreviations used in the casualty list. Some dictionaries are very small (countries with prisoners of war – only five entries) other contain several hundred terms (first names, military units). The dictionaries also include replacements for typical OCR errors such as “J&nos → János”.
Two pieces of information must be considered separately: the family name and the place of origin. There are endless variations for both. For place names the situation is slightly better because we can narrow down search area by using already recognized information about the crown land (“Kronland”) and the district (“Bezirkshauptmannschaft”). This knowledge and a list containing 20,000 places that have been mentioned at least twice in the casualty lists allow us a fuzzy search for place names. For family names we have to rely on OCR only. We only accept the first word in a line as family name if it does not contain a characters with a low recognition confidence. So far this is a good heuristic.
If a field cannot be unambiguously filled with words from the OCR text, it will be marked with a special “missing information” label. A few rules help us to remove many of the “missing information” labels. As a result we have a list of fragmentary records containing sometimes more sometimes less “missing information” labels.
These fragmentary records are then fed into the DES. This is possible because we kept track of the positions of the words on the scan during the whole workflow. As a result the user is presented a view like this:
The yellow bars indicate that the entry is incomplete or not proofread. You can see the “missing information” label which is displayed as “(?)”. The 4th entry has been completely recognized. It is still yellow because it has not been proofread. When a volunteer double-clicks on a yellow bar the well-known data entry mask opens:
As a visual reference the fields with “missing information” are highlighted red. The function of the tabulator key has been adjusted so that you can only navigate between red fields. This allows a quick completion of the entry. For an even smoother process, you can go straight to the next incomplete entry after saving – without having to take your hand off of the keyboard.
In order to allow users to enter special characters on a standard keyboard, we have defined some special codes. For example, if you type $”o into an input field, the DES will automatically convert it into the Hungarian ő (letter o with double acute). Again, an interaction with the mouse is not needed, allowing a smoother process.
So far volunteers have entered more than 500,000 entries. Though we still have quite a bit of work to do, you can already do some interesting analyzes. To give you an example, here is a map showing the number of losses per 10,000 inhabitants:
This map may already provide hints for further historical questions. However, it should be remembered that only about 20% of the total entries have been transcribed so far. And probably these first 20% of the pages are not representative. The results are getting better and better the more data of the casualty list are entered.
If you want to help us with the transcription of the casualty lists, we would be very happy!It is really easy. Information on how to participate, search in the already collected data can be found at http://verlustlisten.at.
[Zedlitz2017] ZEDLITZ, Jesper; LUTTENBERGER, Norbert.Enhancing Human-Transcribed Records by Using OCR, in: Proceedings of the Second International Conference on Digital Access to Textual Cultural Heritage, Göttingen 2017, p. 21-26.