Name
background_segbackground_segBackgroundSegbackground_segBackgroundSegBackgroundSeg — Ermitteln zusammenhängender Regionen des Hintergrundes.
background_segbackground_segBackgroundSegbackground_segBackgroundSegBackgroundSeg liefert zusammenhängende
Hintergrundregionen. Die Prozedur wird typischerweise nach der
Kantensuche (inkl. Verdünnung) angewandt, um die von den Kanten
begrenzten Bild-Segmente zu ermitteln. Die Berechnung der
Zusammenhangskomponenten erfolgt mit der 4-er Nachbarschaft.
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Wird ohne Parallelisierung verarbeitet.
Die zusammenhängenden Hintergrundkomponenten
in Foreground.
* Simulation of background_seg:
background_seg(Foreground,BackgroundRegions)
complement(Foreground,Background)
get_system('neighborhood',Save)
set_system('neighborhood',4)
connection(Background,BackgroundRegions)
clear_obj(Background)
set_system('neighborhood',Save)
* Segmentation with edge filter:
read_image(Image,'fabrik')
sobel_dir(Image,Sobel,Dir,'sum_sqrt',3)
threshold(Sobel,Edges,20,255)
skeleton(Edges,Margins)
background_seg(Margins,Regions)
/* Segmentation with edge filter: */
read_image(&Image,"fabrik") ;
sobel_dir(Image,&Sobel,&Dir,"sum_sqrt",3) ;
threshold(Sobel,&Edges,20,255) ;
skeleton(Edges,&Margins) ;
background_seg(Margins,&Regions) ;
* Simulation of background_seg:
background_seg(Foreground,BackgroundRegions)
complement(Foreground,Background)
get_system('neighborhood',Save)
set_system('neighborhood',4)
connection(Background,BackgroundRegions)
clear_obj(Background)
set_system('neighborhood',Save)
* Segmentation with edge filter:
read_image(Image,'fabrik')
sobel_dir(Image,Sobel,Dir,'sum_sqrt',3)
threshold(Sobel,Edges,20,255)
skeleton(Edges,Margins)
background_seg(Margins,Regions)
* Simulation of background_seg:
background_seg(Foreground,BackgroundRegions)
complement(Foreground,Background)
get_system('neighborhood',Save)
set_system('neighborhood',4)
connection(Background,BackgroundRegions)
clear_obj(Background)
set_system('neighborhood',Save)
* Segmentation with edge filter:
read_image(Image,'fabrik')
sobel_dir(Image,Sobel,Dir,'sum_sqrt',3)
threshold(Sobel,Edges,20,255)
skeleton(Edges,Margins)
background_seg(Margins,Regions)
* Simulation of background_seg:
background_seg(Foreground,BackgroundRegions)
complement(Foreground,Background)
get_system('neighborhood',Save)
set_system('neighborhood',4)
connection(Background,BackgroundRegions)
clear_obj(Background)
set_system('neighborhood',Save)
* Segmentation with edge filter:
read_image(Image,'fabrik')
sobel_dir(Image,Sobel,Dir,'sum_sqrt',3)
threshold(Sobel,Edges,20,255)
skeleton(Edges,Margins)
background_seg(Margins,Regions)
* Simulation of background_seg:
background_seg(Foreground,BackgroundRegions)
complement(Foreground,Background)
get_system('neighborhood',Save)
set_system('neighborhood',4)
connection(Background,BackgroundRegions)
clear_obj(Background)
set_system('neighborhood',Save)
* Segmentation with edge filter:
read_image(Image,'fabrik')
sobel_dir(Image,Sobel,Dir,'sum_sqrt',3)
threshold(Sobel,Edges,20,255)
skeleton(Edges,Margins)
background_seg(Margins,Regions)
Sei F die Fläche des Hintergrundes, H die Bildhöhe und N die
Anzahl der Ergebnisregionen, dann ist die Laufzeitkomplexität:
O(H + sqrt(F) * sqrt(N)).
background_segbackground_segBackgroundSegbackground_segBackgroundSegBackgroundSeg liefert normalerweise den Wert 2 (H_MSG_TRUE). Das
Verhalten bei leerer Eingabe (keine Eingaberegionen vorhanden)
lässt sich mittels
set_system('no_object_result',<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>), das bei
leerer Region mit
set_system('empty_region_result',<Result>)set_system("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>)set_system("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>) festlegen.
Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
thresholdthresholdThresholdthresholdThresholdThreshold,
connectionconnectionConnectionconnectionConnectionConnection,
regiongrowingregiongrowingRegiongrowingregiongrowingRegiongrowingRegiongrowing,
pouringpouringPouringpouringPouringPouring,
class_ndim_normclass_ndim_normClassNdimNormclass_ndim_normClassNdimNormClassNdimNorm
select_shapeselect_shapeSelectShapeselect_shapeSelectShapeSelectShape
complementcomplementComplementcomplementComplementComplement,
connectionconnectionConnectionconnectionConnectionConnection
thresholdthresholdThresholdthresholdThresholdThreshold,
hysteresis_thresholdhysteresis_thresholdHysteresisThresholdhysteresis_thresholdHysteresisThresholdHysteresisThreshold,
skeletonskeletonSkeletonskeletonSkeletonSkeleton,
expand_regionexpand_regionExpandRegionexpand_regionExpandRegionExpandRegion,
set_systemset_systemSetSystemset_systemSetSystemSetSystem,
sobel_ampsobel_ampSobelAmpsobel_ampSobelAmpSobelAmp,
edges_imageedges_imageEdgesImageedges_imageEdgesImageEdgesImage,
robertsrobertsRobertsrobertsRobertsRoberts,
bandpass_imagebandpass_imageBandpassImagebandpass_imageBandpassImageBandpassImage
Foundation