RecAPI
OMR Recognition Engine Module

OMR optical mark recognition module. More...

Enumerations

enum  OMR_FRAME {
  FRAME_AUTO,
  FRAME_NO,
  FRAME_YES
}
 Frame detection methods for OMR. More...
enum  OMR_SENSE {
  SENSE_NORMAL,
  SENSE_LOW,
  SENSE_LOWER,
  SENSE_LOWEST
}
 Mark sensitivity of OMR. More...

Functions

RECERR RECAPIKRN kRecSetOmrParams (int sid, INTBOOL bFill, OMR_FRAME frame, OMR_SENSE sensitivity)
 Setting OMR parameters.
RECERR RECAPIKRN kRecGetOmrParams (int sid, INTBOOL *pbFill, OMR_FRAME *pFrame, OMR_SENSE *pSensitivity)
 Getting OMR parameters.

Detailed Description

OMR optical mark recognition module.

See the general description and the settings of this module.


Enumeration Type Documentation

enum OMR_FRAME

Frame detection methods for OMR.

This setting specifies the frame detection method to be applied during the running of the RM_OMR optical mark recognition module. This setting may influence the recognition accuracy.

Note:
The checkmarks can be of two types: with or without a frame visible in the image. The frame can be a rectangle, a hexagon, a circle, an ellipse, etc., it can be shaded.
Scanning with a dropout color may mean that a frame visible on the input document becomes invisible in the image.
The recognition accuracy is better if FRAME_AUTO has been avoided.
Enumerator:
FRAME_AUTO 

Automatic frame detection. This is the default mode. It should be used when it is not known whether or not there are frames for indicating checkmark zones of the image.

FRAME_NO 

The checkmark zones of the image are not indicated by visible frames.

FRAME_YES 

The checkmark zones of the image are indicated by visible frames.

enum OMR_SENSE

Mark sensitivity of OMR.

This setting defines the possible mark sensitivity values to be applied during the running of the RM_OMR checkmark recognition module. This setting may influence the accuracy of the recognition.

Note:
The higher the mark sensitivity setting, the more sensitive the recognition is, i.e. even a small mark (just a few continuous black pixels) will cause the zone to be classified as "checked by respondent". The default sensitivity is suitable for well-printed questionnaires. Poor-quality forms should be avoided if possible, however lower sensitivity allows speckled or poorly printed documents to be processed successfully.
Enumerator:
SENSE_NORMAL 

Highest mark sensitivity. This is the default sensitivity.

SENSE_LOW 

Less mark sensitivity.

SENSE_LOWER 

Lower mark sensitivity.

SENSE_LOWEST 

Lowest mark sensitivity.


Function Documentation

RECERR RECAPIKRN kRecGetOmrParams ( int  sid,
INTBOOL *  pbFill,
OMR_FRAME pFrame,
OMR_SENSE pSensitivity 
)

Getting OMR parameters.

The kRecGetOmrParams function inquires the current settings of the RM_OMR optical mark recognition module. (See kRecSetOmrParams.)

Parameters:
[in]sidSettings Collection ID.
[out]pbFillPointer of a Boolean variable to get the current two/three-value output setting.
[out]pFramePointer of a variable to get the current frame detection method setting.
[out]pSensitivityPointer of a variable to get the current mark sensitivity level setting.
Return values:
RECERR
Note:
This function gets the value of the settings Kernel.Ocr.OMR.Fill, ...Frame and ...Sense. These settings can be changed by kRecSetOmrParams.
The specification of this function in C# is:
 RECERR kRecGetOmrParams(int sid, out bool bFill, out OMR_FRAME frame, out OMR_SENSE sensitivity); 
RECERR RECAPIKRN kRecSetOmrParams ( int  sid,
INTBOOL  bFill,
OMR_FRAME  frame,
OMR_SENSE  sensitivity 
)

Setting OMR parameters.

The kRecSetOmrParams function is used to specify the settings of the RM_OMR optical mark recognition module. These are: the filled-in-error feature, the frame detection method and the mark sensitivity level.

Parameters:
[in]sidSettings Collection ID.
[in]bFillThis parameter determines whether the recognition output can take two or three values.
[in]frameFrame detection method to be set. This specifies whether the image contains visible frames indicating OMR zone borders or not.
[in]sensitivityMark sensitivity level to be set.
Return values:
RECERR
Note:
If this function is not called, the default values are:
  • two-value output from recognition,
  • FRAME_AUTO detection mode, and
  • SENSE_NORMAL sensitivity setting.
Use bFill to enable or disable a facility that allows a respondent to correct boxes wrongly checked. If it is FALSE, only one of two values can be generated for each RM_OMR zone:
  • 0 = unfilled,
  • 1 = filled.
If it is TRUE, three values are possible:
  • 0 = unfilled,
  • 1 = filled,
  • 2 = filled in error.
In order to generate the value 2, a respondent must completely blacken or shade the whole zone area.
This function sets the value of the settings Kernel.Ocr.OMR.Fill, ...Frame and ...Sense. These settings can be retrieved by kRecGetOmrParams.
The specification of this function in C# is:
 RECERR kRecSetOmrParams(int sid, bool bFill, OMR_FRAME frame, OMR_SENSE sensitivity);