I am trying to use the TextRecognize function to extract data from certain screenshots. This is already a cropped version.
Using TextRecognize
on this yields 12 Catherine FicktEuSC|'\A|V|K
. Not very satisfactory. Isolating the last word, however:
This yields FicktEuschAMK
. Why is this different? I tried converting the image to black and white first (both using ColorConvert
and Binarize
), but that didn't improve anything. Is there any way to get the desired result without having to crop the former image even more? This is problematic because I can't tell where the first word ends and the second one begins, without manual inspection.
TextRecognize
employs meta-level analyses to determine if the text in question is likely to appear in a dictionary or not. Once it determines that "Catherine" appears in the dictionary, it "assumes" that the final character string will as well, leading to the erroneous transcription. However, when applied to the last character string alone, it determines that the word does not appear in the dictionary and recognizes it character-by-character (correctly). You should be able to test this with other word/non-word pairs. $\endgroup$TextRecognize[img, Language -> "German"]
gives an almost correct text recognition. $\endgroup$