merge_regions_line_scanmerge_regions_line_scanMergeRegionsLineScanMergeRegionsLineScan (Operator)

Name

merge_regions_line_scanmerge_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)

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

HRegion HRegion::MergeRegionsLineScan(const HRegion& PrevRegions, HRegion* PrevMergedRegions, Hlong ImageHeight, const wchar_t* MergeBorder, Hlong MaxImagesRegion) const   (Windows only)

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_scanMergeRegionsLineScanMergeRegionsLineScanMergeRegionsLineScan connects adjacent regions, which were segmentated from adjacent images with the height ImageHeightImageHeightImageHeightImageHeightimageHeight. This operator was especially designed to process regions that were extracted from images grabbed by a line scan camera. CurrRegionsCurrRegionsCurrRegionsCurrRegionscurrRegions contains the regions from the current image and PrevRegionsPrevRegionsPrevRegionsPrevRegionsprevRegions the regions from the previous one.

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

If the operator merge_regions_line_scanmerge_regions_line_scanMergeRegionsLineScanMergeRegionsLineScanMergeRegionsLineScan is used recursivly, the parameter MaxImagesRegionMaxImagesRegionMaxImagesRegionMaxImagesRegionmaxImagesRegion 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_scanMergeRegionsLineScanMergeRegionsLineScanMergeRegionsLineScan returns two region arrays. PrevMergedRegionsPrevMergedRegionsPrevMergedRegionsPrevMergedRegionsprevMergedRegions contains all those regions from the previous input regions PrevRegionsPrevRegionsPrevRegionsPrevRegionsprevRegions, which could not be merged with a current region. CurrMergedRegionsCurrMergedRegionsCurrMergedRegionsCurrMergedRegionscurrMergedRegions 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 (MergeBorderMergeBorderMergeBorderMergeBordermergeBorder='top'"top""top""top""top") or downward (MergeBorderMergeBorderMergeBorderMergeBordermergeBorder='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" (see also set_systemset_systemSetSystemSetSystemSetSystem) will internaly be set to 'false'"false""false""false""false".

Execution Information

Parameters

CurrRegionsCurrRegionsCurrRegionsCurrRegionscurrRegions (input_object)  region(-array) objectHRegionHRegionHobject

Current input regions.

PrevRegionsPrevRegionsPrevRegionsPrevRegionsprevRegions (input_object)  region(-array) objectHRegionHRegionHobject

Merged regions from the previous iteration.

CurrMergedRegionsCurrMergedRegionsCurrMergedRegionsCurrMergedRegionscurrMergedRegions (output_object)  region(-array) objectHRegionHRegionHobject *

Current regions, merged with old ones where applicable.

PrevMergedRegionsPrevMergedRegionsPrevMergedRegionsPrevMergedRegionsprevMergedRegions (output_object)  region(-array) objectHRegionHRegionHobject *

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

ImageHeightImageHeightImageHeightImageHeightimageHeight (input_control)  integer HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Height of the line scan images.

Default value: 512

Suggested values: 240, 480, 512, 1024

MergeBorderMergeBorderMergeBorderMergeBordermergeBorder (input_control)  string HTupleHTupleHtuple (string) (string) (HString) (char*)

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

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

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

MaxImagesRegionMaxImagesRegionMaxImagesRegionMaxImagesRegionmaxImagesRegion (input_control)  integer HTupleHTupleHtuple (integer) (int / long) (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_scanMergeRegionsLineScanMergeRegionsLineScanMergeRegionsLineScan returns the value 2 (H_MSG_TRUE) if the given parameters are correct. Otherwise, an exception will be raised.

Module

Foundation