Skip to content

create_ocv_projCreateOcvProjCreateOcvProjcreate_ocv_projT_create_ocv_proj🔗

Short description🔗

create_ocv_projCreateOcvProjCreateOcvProjcreate_ocv_projT_create_ocv_proj — Create a new OCV tool based on gray value projections.

Signature🔗

create_ocv_proj( string PatternNames, out ocv OCVHandle )void CreateOcvProj( const HTuple& PatternNames, HTuple* OCVHandle )static void HOperatorSet.CreateOcvProj( HTuple patternNames, out HTuple OCVHandle )def create_ocv_proj( pattern_names: MaybeSequence[str] ) -> HHandle

Herror T_create_ocv_proj( const Htuple PatternNames, Htuple* OCVHandle )

void HOCV::HOCV( const HTuple& PatternNames )

public HOCV( HTuple patternNames )

void HOCV::CreateOcvProj( const HTuple& PatternNames )

void HOCV::CreateOcvProj( const HString& PatternNames )

void HOCV::CreateOcvProj( const char* PatternNames )

void HOCV::CreateOcvProj( const wchar_t* PatternNames ) (Windows only)

void HOCV.CreateOcvProj( HTuple patternNames )

void HOCV.CreateOcvProj( string patternNames )

Description🔗

create_ocv_projCreateOcvProj creates a new OCV tool. This tool will be used to train good-patterns for the optical character verification. The training is done using the operator traind_ocv_projTraindOcvProj. Thus traind_ocv_projTraindOcvProj is normally called after create_ocv_projCreateOcvProj.

The pattern comparison is based on the gray projections: For every training pattern the horizontal and vertical gray projections are calculated by summing up the gray values along the rows and columns inside the region of the pattern. This operation is applied to the training patterns and the test patterns. For the training patterns the result is stored inside the OCV tool to save runtime while comparing patterns. The OCV is done by comparing the corresponding projections. The Quality is the similarity of the projections.

Input for create_ocv_projCreateOcvProj are the names of the patterns (PatternNamespatternNamespattern_names) which have to be trained. The number and the names can be chosen arbitrary. In most case only one pattern will be trained, thus only one name has to be specified. The names will be used when doing the OCV (do_ocv_simpleDoOcvSimple). It is possible to specify more names than actually used. These might be trained later.

To close the OCV tool, i.e. to free the memory, the operator close_ocvCloseOcv is called.

Execution information🔗

Execution information
  • Multithreading type: reentrant (runs in parallel with non-exclusive operators).

  • Multithreading scope: global (may be called from any thread).

  • Processed without parallelization.

This operator returns a handle. Note that the state of an instance of this handle type may be changed by specific operators even though the handle is used as an input parameter by those operators.

Parameters🔗

PatternNamespatternNamespattern_names (input_control) string(-array) → (string)HTuple (HString)HTuple (string)MaybeSequence[str]Htuple (char*)

List of names for patterns to be trained.

Default: 'a'"a"

OCVHandleOCVHandleocvhandle (output_control) ocv → (handle)HTuple (HHandle)HOCV, HTuple (IntPtr)HHandleHtuple (handle)

Handle of the created OCV tool.

Example🔗

(C++)

create_ocv_proj("A",&ocv_handle)\;
draw_region(&ROI,window_handle)\;
reduce_domain(Image,ROI,&Sample)\;
traind_ocv_proj(Sample,ocv_handle,"A","single")\;

Result🔗

create_ocv_projCreateOcvProj returns 2 (H_MSG_TRUE), if the parameters are correct. Otherwise, an exception is raised.

Combinations with other operators🔗

Combinations

Possible successors

traind_ocv_projTraindOcvProj, write_ocvWriteOcv, close_ocvCloseOcv

Alternatives

read_ocvReadOcv

See also

create_ocr_class_boxCreateOcrClassBox

Module🔗

OCR/OCV