HALCON Reference Manual 10.0.2
Name
get_1d_bar_code_scanlineT_get_1d_bar_code_scanlineget_1d_bar_code_scanlineGet1dBarCodeScanlineGet1dBarCodeScanline — Extract the widths of the elements inside a bar code region.
Warning
get_1d_bar_code_scanlineget_1d_bar_code_scanlineget_1d_bar_code_scanlineGet1dBarCodeScanlineGet1dBarCodeScanline is obsolete and is only provided for
reasons of backward compatibility. New applications for reading bar codes
should use the functionalities in the chapter Identification / Bar Code
instead.
Herror T_get_1d_bar_code_scanline(const Hobject BarCodeRegion, const Htuple BarCodeDescr, const Htuple GenericName, const Htuple GenericValue, const Htuple Orientation, const Htuple StopIfFound, Htuple* BarCodeElements, Htuple* ScanlineNumPoints, Htuple* ScanlineDecoded, Htuple* ScanlinePointsRow, Htuple* ScanlinePointsColumn)
Herror get_1d_bar_code_scanline(Hobject BarCodeRegion, const HTuple& BarCodeDescr, const HTuple& GenericName, const HTuple& GenericValue, const HTuple& Orientation, const HTuple& StopIfFound, HTuple* BarCodeElements, HTuple* ScanlineNumPoints, HTuple* ScanlineDecoded, HTuple* ScanlinePointsRow, HTuple* ScanlinePointsColumn)
HTuple HImage::Get1dBarCodeScanline(const HTuple& BarCodeDescr, const HTuple& GenericName, const HTuple& GenericValue, const HTuple& Orientation, const HTuple& StopIfFound, HTuple* ScanlineNumPoints, HTuple* ScanlineDecoded, HTuple* ScanlinePointsRow, HTuple* ScanlinePointsColumn) const
HTuple HBarCode1D::Get1dBarCodeScanline(const HImage& BarCodeRegion, const HTuple& GenericName, const HTuple& GenericValue, const HTuple& Orientation, const HTuple& StopIfFound, HTuple* ScanlineNumPoints, HTuple* ScanlineDecoded, HTuple* ScanlinePointsRow, HTuple* ScanlinePointsColumn) const
void HOperatorSetX.Get1dBarCodeScanline(
[in] IHUntypedObjectX* BarCodeRegion, [in] VARIANT BarCodeDescr, [in] VARIANT GenericName, [in] VARIANT GenericValue, [in] VARIANT Orientation, [in] VARIANT StopIfFound, [out] VARIANT* BarCodeElements, [out] VARIANT* ScanlineNumPoints, [out] VARIANT* ScanlineDecoded, [out] VARIANT* ScanlinePointsRow, [out] VARIANT* ScanlinePointsColumn)
VARIANT HBarCode1DX.Get1dBarCodeScanline(
[in] IHImageX* BarCodeRegion, [in] VARIANT BarCodeDescr, [in] VARIANT GenericName, [in] VARIANT GenericValue, [in] double Orientation, [in] BSTR StopIfFound, [out] VARIANT* ScanlineNumPoints, [out] VARIANT* ScanlineDecoded, [out] VARIANT* ScanlinePointsRow, [out] VARIANT* ScanlinePointsColumn)
VARIANT HImageX.Get1dBarCodeScanline(
[in] VARIANT BarCodeDescr, [in] VARIANT GenericName, [in] VARIANT GenericValue, [in] double Orientation, [in] BSTR StopIfFound, [out] VARIANT* ScanlineNumPoints, [out] VARIANT* ScanlineDecoded, [out] VARIANT* ScanlinePointsRow, [out] VARIANT* ScanlinePointsColumn)
static void HOperatorSet.Get1dBarCodeScanline(HObject barCodeRegion, HTuple barCodeDescr, HTuple genericName, HTuple genericValue, HTuple orientation, HTuple stopIfFound, out HTuple barCodeElements, out HTuple scanlineNumPoints, out HTuple scanlineDecoded, out HTuple scanlinePointsRow, out HTuple scanlinePointsColumn)
HTuple HImage.Get1dBarCodeScanline(HTuple barCodeDescr, HTuple genericName, HTuple genericValue, double orientation, string stopIfFound, out HTuple scanlineNumPoints, out HTuple scanlineDecoded, out HTuple scanlinePointsRow, out HTuple scanlinePointsColumn)
HTuple HImage.Get1dBarCodeScanline(HTuple barCodeDescr, string genericName, double genericValue, double orientation, string stopIfFound, out int scanlineNumPoints, out int scanlineDecoded, out double scanlinePointsRow, out double scanlinePointsColumn)
Like get_1d_bar_codeget_1d_bar_codeget_1d_bar_codeGet1dBarCodeGet1dBarCode, get_1d_bar_code_scanlineget_1d_bar_code_scanlineget_1d_bar_code_scanlineGet1dBarCodeScanlineGet1dBarCodeScanline
extracts the widths of the elements of a bar code inside the
specified region, but get_1d_bar_code_scanlineget_1d_bar_code_scanlineget_1d_bar_code_scanlineGet1dBarCodeScanlineGet1dBarCodeScanline also returns
information about the used scanlines.
For a description of the parameters see get_1d_bar_codeget_1d_bar_codeget_1d_bar_codeGet1dBarCodeGet1dBarCode and
find_1d_bar_code_scanlinefind_1d_bar_code_scanlinefind_1d_bar_code_scanlineFind1dBarCodeScanlineFind1dBarCodeScanline.
- Multithreading type: reentrant (runs in parallel with non-exclusive operators).
- Multithreading scope: global (may be called from any thread).
- Processed without parallelization.
Description of a bar code class.
Names of optional parameters.
Default value: []
List of values: 'sigma_project'"sigma_project""sigma_project""sigma_project""sigma_project", 'amplitude_project'"amplitude_project""amplitude_project""amplitude_project""amplitude_project", 'width_project'"width_project""width_project""width_project""width_project", 'add_length_project'"add_length_project""add_length_project""add_length_project""add_length_project", 'interpolation_project'"interpolation_project""interpolation_project""interpolation_project""interpolation_project", 'num_scanlines'"num_scanlines""num_scanlines""num_scanlines""num_scanlines", 'max_extra_elements'"max_extra_elements""max_extra_elements""max_extra_elements""max_extra_elements"
Values of optional parameters.
Default value: []
Leave operator as soon as the bar code has been
decoded?.
Default value:
'false'
"false"
"false"
"false"
"false"
List of values: 'true'"true""true""true""true", 'false'"false""false""false""false"
Number of points belonging to that scanline.
Information whether the bar code could be decoded with
that scanline.
List of values: 0, 1, 2
Row - coordinates of the points of the scanline.
Column - coordinates of the points of the scanline.
HTuple empty; // empty list of values
HTuple BarCodeDescr;
HTuple Orientations, Elements;
HTuple Characters,Reference,IsCorrect;
Hobject Image,CodeRegions,CodeRegion,GrayRegion;
long num;
HTuple ScanlineNumPoints, ScanlineDecoded, ScanlinePointsRow,
ScanlinePointsColumn;
HTuple NumScanlines, NumPoints;
HTuple j, k, indexPoint, nStart, nEnd;
HTuple WindowHandle;
gen_1d_bar_code_descr("code 39",4,15,&BarCodeDescr);
find_1d_bar_code_region(Image,&CodeRegion,BarCodeDescr,empty,empty,
&Orientations);
count_obj(CodeRegions,&num);
for (long i=0; i<num; i++)
{
select_obj(CodeRegions,&CodeRegion,i);
reduce_domain(Image,CodeRegion,GrayRegion)\:
get_1d_bar_code_scanlines(GrayRegion,BarCodeDescr,empty,empty,
Orientations[i],"false",&Elements,
&ScanlineNumPoints,&ScanlineDecoded,
&ScanlinePointsRow,&ScanlinePointsColumn);
decode_1d_bar_code(Elements,BarCodeDescr,
&Characters,&Reference,&IsCorrect);
// display scanlines
NumScanlines = ScanlineNum.Num();
indexPoint = HTuple(0);
for (j=0; j<=NumScanlines-1; j+=1)
{
if (HTuple(ScanlineDecoded[(long)(j)[0]])==1)
{
set_color(WindowHandle,HTuple("green"));
}
else
{
set_color(WindowHandle,HTuple("red"));
}
NumPoints = HTuple(ScanlineNumPoints[(long)(j)[0]]);
nStart = indexPoint;
nEnd = (indexPoint+NumPoints)-1;
for (k=nStart; k<=nEnd; k+=1)
{
disp_circle(WindowHandle,HTuple(ScanlinePointsRow[(long)(k)[0]]),
HTuple(ScanlinePointsColumn[(long)(k)[0]]),HTuple(1));
}
indexPoint = nEnd+1;
}
}
The operator get_1d_bar_codeget_1d_bar_codeget_1d_bar_codeGet1dBarCodeGet1dBarCode returns the value 2 (H_MSG_TRUE)
if the parameters are correct.
find_1d_bar_code_regionfind_1d_bar_code_regionfind_1d_bar_code_regionFind1dBarCodeRegionFind1dBarCodeRegion,
select_objselect_objselect_objSelectObjSelectObj,
reduce_domainreduce_domainreduce_domainReduceDomainReduceDomain
decode_1d_bar_codedecode_1d_bar_codedecode_1d_bar_codeDecode1dBarCodeDecode1dBarCode
find_1d_bar_codefind_1d_bar_codefind_1d_bar_codeFind1dBarCodeFind1dBarCode
Bar Code
| HALCON Reference Manual 10.0.2 |
Copyright © 1996-2011 MVTec Software GmbH |