Optical Mark Recognition

Hello everyone,

is it possible for the DevonThink included ABBY OCR to recognise specific marks on documents or only characters like numbers and letters?

I was hoping to create a stamp where I could mark and inserts different things and words. When I scan this document, I was hoping to get the software to find those markings and create automatic tags, based on my individual marks in this stamp.

Many thanks.

This should be easy to test by creating a text record with everything you’d like to use in your stamp and converting it to PDF+Text.

I wouldn’t create a text record, but make some annotation on a PDF with symbols required comparable in size to your stamp. print that PDF including the annotation and scan + OCR it.

If the ‘stamp’ like annotation is recognized, it might also with an actual stamp although the quality, ink color over background and hand movement obviously can detriment the chance of correct recognition. OCR, as always, isn’t 100% reliable though.

You might also consider adding tags based on the content of the OCR’ed document, but thus probably depends on the variation of your documents.

For example…?

Hey everyone,

sorry for the late respond.

I was actually thinking of marking one checkbox on a specific stamp that needs to be recognized. So if I mark the first checkbox, this means to add the tag X, if I mark the second checkbox on this stamp, this means to add tag Y.

I thought that this is being able with Optical Mark Recognition, which is also available with some Abbyy products, but I believe not with the one delivered with DT.

I think recognition of a checkbox will be difficult, unless perhaps the software recognizes a cross as an X.What you could try is the following.

Create a document in whatever software you use to create documents, and add this content

[ ] - %AAA

[ ] - &ZZZ

And then print that document twice.

With a black pen mark one of the pages in the upper checkbox with a clear but not to large X that will fit between the brackets like so:

[X] - %AAA

The idea is, the OCR engine might recognize this as the letter X that is enclosed between two square brackets.

Do the same on the other page, but mark the lower checkbox.

Scan the pages and examine how the OCR engine processes your X.

If the X is recognized correctly, setup two smart rules to find content that matches either [X] - %AAA or [X] - &ZZZ and have the smart rule add a tag AAA (or whatever you want) for the first rule, and a tag ZZZ for the second.

As mentioned though, OCR software can make mistakes, but you could give it a try perhaps.

It might even work better the other way around: use O instead of [ ] and then use a script which checks to see if the line contains an O - which it won’t if you’ve put an X through it with pen (so design your line to be easily found using the offset command or regex, eg
„CheckZ O black“
„CheckZ O white“
„CheckZ O green“)

I guess :crazy_face:

Reverse thinking! This might indeed be a better solution.

I’m somewhat intrigued by the idea of @killerspots that I’ll have a go at our ideas myself. I’ve always been fascinated by automatic analog/digital conversions somehow, such as OCR.

Although I’ve managed tagging incoming scans by importing them to designated folders, which is probably more dependable, but also less ‘analog’.

I’ll use a quill and ink to fill the letter O to compensate for that :slight_smile:

@Blanc @killerspots

Results are in (based on a gigantic sample size of n=3 runs with both methods).

X - method

  • 1 recognized as an X
  • 1 recognized as a V
  • 1 not recognized at all

0 - method

  • 1 recognized as 1 an O
  • 1 recognized as a trademark sign
  • 1 recognized as a filled O (didn’t expect that one!)

I didn’t have a quill at hand, so you’ll have to excuse me on that one :slight_smile:

Based on these results, it might work, but recognizing these pseudo-checkboxes (or the reverse) seems to be unpredictable in my hands. And I assume using a stamp adds to the unpredictability as the ink transfer usually isn’t of the same quality as a printer.

1 Like

Are you referring to a rubber stamp and manually stamping pages before you OCR them?

At first, I was thinking of creating an ordinary stamp with some checkboxes on it, which will then be interpreted by the OCR software, yes.
I thought that this might be possible by an OMR Software.

When I first came up with my question and idea, I thought that an OCM software might work with a pre-defined stamp-pattern. I thought that the software might be able to learn where and what the stamp is and what areas there might be. So if there is a marking at the specific area or checkbox within this stamp-pattern, the software sees and interpreters that the way it should.

So my main question was if the build-in OCR software is able to use OMR, but I believe that it is not.

So my main question was if the build-in OCR software is able to use OMR, but I believe that it is not.

Correct. It does not.

Well, it did sort of. It recognized my filled in O’s (or at least one).

@killerspots you might just experiment as I did, by printing various combinations on a piece of paper and try. You don’t need a physical stamp to obtain a proof of principle. Whether it works with a stamp I cannot tell, but I personally like the idea. To be honest, when I use a physical stamp on a document and OCR it, I’ve noticed slight movements of the stamp and the ink transfer can influence the result quite heavily as I mentioned above.

To be clear, I’ve just tried two methods (the X and the ‘reverse’ O), that weren’t very reliable in my hands. But who knows if you succeed.

Perhaps a simple character like a V before a dash and some string is recognized in a way that the OCR engine understands. You’d get something like this:


- @AAA


V - @AAA

You could also perhaps use a rotating stamp with different unique strings. or print a bunch of small labels with a certain unique string and stick those on your documents.

Or skip the physical part and use various designated folders to scan your documents to and have DT add the correct tags based on the folder the scan ends up in.