Hi Loic
I'm having some performance issues when determining the orientation of images.
I'm using the OCRTesseractGetOrientation method with the English dictionary, and I've tried various values for the accuracy parameter (including leaving it out), but I can't seem to achieve an acceptable level of performance.
I'm scanning using the following options:
DPI = 200
TwainSetPixelType = TwainPixelType.TWPT_RGB
TwainSetBitDepth = 8
TwainSetAutoFeed = true
TwainSetHideUI = true
during my testing with the above params I've found that setting the OCR accuracy to anything less than 4 regularly determines the orientation incorrectly, so I've been using 4 as the minimum.
Most image processing is fast enough (reading barcodes, deskewing and cropping borders). However, OCRTesseractGetOrientation takes 4 seconds (on average, though it occasionally deviates to as little as 3 and as much as 6 seconds) per image. Ideally we'd like this to be under a second, less than 0.5 seconds if possible.
At the moment I'm running the image processing on a background worker while the scanning happens on the main thread (inserting imageID's into a queue for the processing thread). This helps a little, but the main bottleneck is still the orientation process.
I've tried converting the image to 1Bpp and determining the orientation from that, which was slightly faster, (by about 1 second on average) but was less reliable, correctly analyzing only about 50% of images.
Are there any settings or techniques you would recommend to speed up the orientation process?
Thanks and regards
Steven
