ClassesClassesClassesClasses | | | | Operators

merge_regions_line_scanmerge_regions_line_scanMergeRegionsLineScanmerge_regions_line_scanMergeRegionsLineScanMergeRegionsLineScan (Operator)

Name

merge_regions_line_scanmerge_regions_line_scanMergeRegionsLineScanmerge_regions_line_scanMergeRegionsLineScanMergeRegionsLineScan — Merge regions from line scan images.

Signature

merge_regions_line_scan(CurrRegions, PrevRegions : CurrMergedRegions, PrevMergedRegions : ImageHeight, MergeBorder, MaxImagesRegion : )

Herror merge_regions_line_scan(const Hobject CurrRegions, const Hobject PrevRegions, Hobject* CurrMergedRegions, Hobject* PrevMergedRegions, const Hlong ImageHeight, const char* MergeBorder, const Hlong MaxImagesRegion)

Herror T_merge_regions_line_scan(const Hobject CurrRegions, const Hobject PrevRegions, Hobject* CurrMergedRegions, Hobject* PrevMergedRegions, const Htuple ImageHeight, const Htuple MergeBorder, const Htuple MaxImagesRegion)

Herror merge_regions_line_scan(Hobject CurrRegions, Hobject PrevRegions, Hobject* CurrMergedRegions, Hobject* PrevMergedRegions, const HTuple& ImageHeight, const HTuple& MergeBorder, const HTuple& MaxImagesRegion)

HRegion HRegion::MergeRegionsLineScan(const HRegion& PrevRegions, HRegion* PrevMergedRegions, const HTuple& ImageHeight, const HTuple& MergeBorder, const HTuple& MaxImagesRegion) const

HRegionArray HRegionArray::MergeRegionsLineScan(const HRegionArray& PrevRegions, HRegionArray* PrevMergedRegions, const HTuple& ImageHeight, const HTuple& MergeBorder, const HTuple& MaxImagesRegion) const

void MergeRegionsLineScan(const HObject& CurrRegions, const HObject& PrevRegions, HObject* CurrMergedRegions, HObject* PrevMergedRegions, const HTuple& ImageHeight, const HTuple& MergeBorder, const HTuple& MaxImagesRegion)

HRegion HRegion::MergeRegionsLineScan(const HRegion& PrevRegions, HRegion* PrevMergedRegions, Hlong ImageHeight, const HString& MergeBorder, Hlong MaxImagesRegion) const

HRegion HRegion::MergeRegionsLineScan(const HRegion& PrevRegions, HRegion* PrevMergedRegions, Hlong ImageHeight, const char* MergeBorder, Hlong MaxImagesRegion) const

void HOperatorSetX.MergeRegionsLineScan(
[in] IHUntypedObjectX* CurrRegions, [in] IHUntypedObjectX* PrevRegions, [out] IHUntypedObjectX*CurrMergedRegions, [out] IHUntypedObjectX*PrevMergedRegions, [in] VARIANT ImageHeight, [in] VARIANT MergeBorder, [in] VARIANT MaxImagesRegion)

IHRegionX* HRegionX.MergeRegionsLineScan(
[in] IHRegionX* PrevRegions, [out] IHRegionX*PrevMergedRegions, [in] Hlong ImageHeight, [in] BSTR MergeBorder, [in] Hlong MaxImagesRegion)

static void HOperatorSet.MergeRegionsLineScan(HObject currRegions, HObject prevRegions, out HObject currMergedRegions, out HObject prevMergedRegions, HTuple imageHeight, HTuple mergeBorder, HTuple maxImagesRegion)

HRegion HRegion.MergeRegionsLineScan(HRegion prevRegions, out HRegion prevMergedRegions, int imageHeight, string mergeBorder, int maxImagesRegion)

Description

The operator merge_regions_line_scanmerge_regions_line_scanMergeRegionsLineScanmerge_regions_line_scanMergeRegionsLineScanMergeRegionsLineScan connects adjacent regions, which were segmentated from adjacent images with the height ImageHeightImageHeightImageHeightImageHeightImageHeightimageHeight. This operator was especially designed to process regions that were extracted from images grabbed by a line scan camera. CurrRegionsCurrRegionsCurrRegionsCurrRegionsCurrRegionscurrRegions contains the regions from the current image and PrevRegionsPrevRegionsPrevRegionsPrevRegionsPrevRegionsprevRegions the regions from the previous one.

With the help of the parameter MergeBorderMergeBorderMergeBorderMergeBorderMergeBordermergeBorder two cases can be distinguished: If the top (first) line of the current image touches the bottom (last) line of the previous image, MergeBorderMergeBorderMergeBorderMergeBorderMergeBordermergeBorder must be set to 'top'"top""top""top""top""top", otherwise set MergeBorderMergeBorderMergeBorderMergeBorderMergeBordermergeBorder to 'bottom'"bottom""bottom""bottom""bottom""bottom".

If the operator merge_regions_line_scanmerge_regions_line_scanMergeRegionsLineScanmerge_regions_line_scanMergeRegionsLineScanMergeRegionsLineScan is used recursivly, the parameter MaxImagesRegionMaxImagesRegionMaxImagesRegionMaxImagesRegionMaxImagesRegionmaxImagesRegion determines the maximum number of images which are covered by a merged region. All older region parts are removed.

The operator merge_regions_line_scanmerge_regions_line_scanMergeRegionsLineScanmerge_regions_line_scanMergeRegionsLineScanMergeRegionsLineScan returns two region arrays. PrevMergedRegionsPrevMergedRegionsPrevMergedRegionsPrevMergedRegionsPrevMergedRegionsprevMergedRegions contains all those regions from the previous input regions PrevRegionsPrevRegionsPrevRegionsPrevRegionsPrevRegionsprevRegions, which could not be merged with a current region. CurrMergedRegionsCurrMergedRegionsCurrMergedRegionsCurrMergedRegionsCurrMergedRegionscurrMergedRegions collects all current regions together with the merged parts from the previous images. Merged regions will exceed the original image, because the previous regions are moved upward (MergeBorderMergeBorderMergeBorderMergeBorderMergeBordermergeBorder='top'"top""top""top""top""top") or downward (MergeBorderMergeBorderMergeBorderMergeBorderMergeBordermergeBorder='bottom'"bottom""bottom""bottom""bottom""bottom") according to the image height. For this the system parameter 'clip_region'"clip_region""clip_region""clip_region""clip_region""clip_region" (see also set_systemset_systemSetSystemset_systemSetSystemSetSystem) will internaly be set to 'false'"false""false""false""false""false".

Parallelization

Parameters

CurrRegionsCurrRegionsCurrRegionsCurrRegionsCurrRegionscurrRegions (input_object)  region(-array) objectHRegionHRegionHRegionHRegionXHobject

Current input regions.

PrevRegionsPrevRegionsPrevRegionsPrevRegionsPrevRegionsprevRegions (input_object)  region(-array) objectHRegionHRegionHRegionHRegionXHobject

Merged regions from the previous iteration.

CurrMergedRegionsCurrMergedRegionsCurrMergedRegionsCurrMergedRegionsCurrMergedRegionscurrMergedRegions (output_object)  region(-array) objectHRegionHRegionHRegionHRegionXHobject *

Current regions, merged with old ones where applicable.

PrevMergedRegionsPrevMergedRegionsPrevMergedRegionsPrevMergedRegionsPrevMergedRegionsprevMergedRegions (output_object)  region(-array) objectHRegionHRegionHRegionHRegionXHobject *

Regions from the previous iteration which could not be merged with the current ones.

ImageHeightImageHeightImageHeightImageHeightImageHeightimageHeight (input_control)  integer HTupleHTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong) (Hlong)

Height of the line scan images.

Default value: 512

Suggested values: 240, 480, 512, 1024

MergeBorderMergeBorderMergeBorderMergeBorderMergeBordermergeBorder (input_control)  string HTupleHTupleHTupleVARIANTHtuple (string) (string) (HString) (char*) (BSTR) (char*)

Image line of the current image, which touches the previous image.

Default value: 'top' "top" "top" "top" "top" "top"

List of values: 'bottom'"bottom""bottom""bottom""bottom""bottom", 'top'"top""top""top""top""top"

MaxImagesRegionMaxImagesRegionMaxImagesRegionMaxImagesRegionMaxImagesRegionmaxImagesRegion (input_control)  integer HTupleHTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong) (Hlong)

Maximum number of images for a single region.

Default value: 3

Suggested values: 1, 2, 3, 4, 5

Result

The operator merge_regions_line_scanmerge_regions_line_scanMergeRegionsLineScanmerge_regions_line_scanMergeRegionsLineScanMergeRegionsLineScan returns the value 2 (H_MSG_TRUE) if the given parameters are correct. Otherwise, an exception will be raised.

Module

Foundation


ClassesClassesClassesClasses | | | | Operators