We would like to use the mobile camera to take a shot on OMR card, then use Aspose OMR sdk to process the photo to recognize the answers. But I have some questions.
- Should the resolution (dpi) and size (width and length) need to be the same or identical between the mobile photo and OMR template?
- Is Aspose able to have this kind of image processing (https://goo.gl/images/M3CQme)?
@jason.hsu,
This is to update you that APIs perform well with images having resolution of at least 300 DPI and the accuracy rate tends to decrease by decreasing the resolution.
Yes, the size (height and width) of the scanned OMR sheet image should be same/identical with the one used while developing the OMR template. Furthermore please provide us sample OMR scanned sheet image we will look into it and update you about our findings.
I used your “Aspose.OCR-for-.NET” example as my testing example.
The answer sheet picture is this one which I’ve done some image processing to ler the height and width be identical and increase the color contrast after taking the OMR sheet photo (not use the scanner). answers.jpg (765.0 KB)
Then, I use your OMR example code, but the recognition failed. Could you help check the reasons?
@jason.hsu,
The image you have shared have very low DPI and have too much noise in it. We have attached the preprocessed image’s screenshot for your reference. We have also attached a sample OMR template for your reference. Please try it at your end. In case of any issue, forward us the details. We will look into it and update you about our findings.
It is also recommended to set the threshold level. Please visit the link Setting Mark Threshold for details.
preprocessed_answerSheet.jpg (207.2 KB)
Hi @ikram.haq ,
Thanks for your help. I’m not sure the mechanism to determine the DPI value and have too much noise. I’m not sure my understanding is correct, but I think DPI can be seen as one kind of resolution (the DPI value depends on the paper size). If considering the paper size, I think the resolution of the picture is enough?
This is the original answer sheet in Aspose example, and the resolution of my photo is as same as this.
What I use it to use the mobile to take a photo on the OMR card.
Then, I use automatically perspective correction, crop and resize the picture.
Finally, I increase the color contrast, then feed it to the OMR engine.
The code I use is this one https://docs.aspose.com/display/ocrnet/Extracting+and+Managing+OMR#ExtractingandManagingOMR-ExtractingOMR:SampleCode
with your suggestion adding the threshold level. Is there any better tool for the image preprocessing? I don’t see there is any image preprocessing in the sample code.
I’m not sure which step is incorrect since the OMR Engine can’t still correctly recognize my answer sheet.
@jason.hsu,
Thank you for sharing details. You may use OMR template editor tool developed by Aspose to facilitate the users for creating OMR templates and performing OMR operation along with many functionalities. OMR template editor tool can be found under your installation path as “\Bin\net3.5\Aspose.Omr.TemplateEditor.exe”. It is highly recommended that you must go through the following links for details:
Extracting and Managing OMR
Formatting and Manipulating OMR
Furthermore we have created an OMR template and used the scanned OMR sheet that you have shared (answers.jpg (425.9 KB)). We are able to extract the information. The sample OMR template is attached for your reference.