class_ndim_boxT_class_ndim_boxClassNdimBoxClassNdimBox (Operator)
Name
class_ndim_boxT_class_ndim_boxClassNdimBoxClassNdimBox
— Klassifizieren von Bildpunkten durch Hyperquader.
Warnung
class_ndim_boxclass_ndim_boxClassNdimBoxClassNdimBoxClassNdimBox
ist veraltet und wird nur aus Gründen
der Rückwärtskompatibilität zur Verfügung gestellt.
Signatur
Beschreibung
class_ndim_boxclass_ndim_boxClassNdimBoxClassNdimBoxClassNdimBox
klassifiziert die Bildpunkte von
mehrkanaligen Bildern. Es wird hierzu der Klassifikator
ClassifHandleClassifHandleClassifHandleClassifHandleclassifHandle
verwendet, der mit create_class_boxcreate_class_boxCreateClassBoxCreateClassBoxCreateClassBox
erzeugt wurde.
Trainiert werden kann der Klassifikator mit
learn_ndim_boxlearn_ndim_boxLearnNdimBoxLearnNdimBoxLearnNdimBox
oder wie bei create_class_boxcreate_class_boxCreateClassBoxCreateClassBoxCreateClassBox
beschrieben. Siehe auch class_ndim_normclass_ndim_normClassNdimNormClassNdimNormClassNdimNorm
.
MultiChannelImageMultiChannelImageMultiChannelImageMultiChannelImagemultiChannelImage
ist ein mehrkanaliges Bild, dessen
Bildpunkte klassifiziert werden sollen. D.h. es werden die
Bildpunkte ausgewählt, die dem Klassifikationskriterium genügen.
Ausführungsinformationen
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Wird ohne Parallelisierung verarbeitet.
Parameter
MultiChannelImageMultiChannelImageMultiChannelImageMultiChannelImagemultiChannelImage
(input_object) (multichannel-)image(-array) →
objectHImageHImageHobject (byte / direction / cyclic / int1 / int2 / int4 / real)
Mehrkanaliges Eingabebild.
RegionsRegionsRegionsRegionsregions
(output_object) region-array →
objectHRegionHRegionHobject *
Ergebnis der Klassifikation.
ClassifHandleClassifHandleClassifHandleClassifHandleclassifHandle
(input_control) class_box →
HClassBox, HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
Handle des Klassifikators.
Beispiel (HDevelop)
read_image(Image,'montery')
dev_display(Image)
dev_set_color('green')
disp_message (WindowHandle, 'Draw learning region ',\
'window', 12, 12, 'black', 'true')
draw_region(Reg1,WindowHandle)
reduce_domain(Image,Reg1,Foreground)
dev_set_color('red')
disp_message (WindowHandle, 'Draw background region',\
'window', 12, 12, 'black', 'true')
draw_region(Reg2,WindowHandle)
reduce_domain(Image,Reg2,Background)
disp_message (WindowHandle, 'Training... ',\
'window', 12, 12, 'black', 'true')
create_class_box(ClassifHandle)
learn_ndim_box(Foreground,Background,Image,ClassifHandle)
disp_message (WindowHandle, 'Classification ',\
'window', 12, 12, 'black', 'true')
class_ndim_box(Image,Res,ClassifHandle)
dev_set_draw('fill')
dev_display (Res)
close_class_box(ClassifHandle)
Beispiel (C)
read_image(&Image,"montery");
disp_image(Image,WindowHandle);
set_color(WindowHandle,"green");
fwrite_string(FileHandle,"Draw the foreground");
fnew_line(FileHandle);
draw_region(&Reg1,WindowHandle);
reduce_domain(Image,Reg1,&Foreground);
set_color(WindowHandle,"red");
fwrite_string(FileHandle,"Draw background");
fnew_line(FileHandle);
draw_region(&Reg2,WindowHandle);
reduce_domain(Image,Reg2,&Background);
fwrite_string(FileHandle,"Start to learn");
fnew_line(FileHandle);
create_class_box(&ClassifHandle);
learn_ndim_box(Foreground,Background,Image,ClassifHandle);
fwrite_string(FileHandle,"Start classification");
fnew_line(FileHandle);
class_ndim_box(Image,&Res,ClassifHandle);
set_draw(WindowHandle,"fill");
disp_region(Res,WindowHandle);
close_class_box(ClassifHandle);
Beispiel (HDevelop)
read_image(Image,'montery')
dev_display(Image)
dev_set_color('green')
disp_message (WindowHandle, 'Draw learning region ',\
'window', 12, 12, 'black', 'true')
draw_region(Reg1,WindowHandle)
reduce_domain(Image,Reg1,Foreground)
dev_set_color('red')
disp_message (WindowHandle, 'Draw background region',\
'window', 12, 12, 'black', 'true')
draw_region(Reg2,WindowHandle)
reduce_domain(Image,Reg2,Background)
disp_message (WindowHandle, 'Training... ',\
'window', 12, 12, 'black', 'true')
create_class_box(ClassifHandle)
learn_ndim_box(Foreground,Background,Image,ClassifHandle)
disp_message (WindowHandle, 'Classification ',\
'window', 12, 12, 'black', 'true')
class_ndim_box(Image,Res,ClassifHandle)
dev_set_draw('fill')
dev_display (Res)
close_class_box(ClassifHandle)
Beispiel (HDevelop)
read_image(Image,'montery')
dev_display(Image)
dev_set_color('green')
disp_message (WindowHandle, 'Draw learning region ',\
'window', 12, 12, 'black', 'true')
draw_region(Reg1,WindowHandle)
reduce_domain(Image,Reg1,Foreground)
dev_set_color('red')
disp_message (WindowHandle, 'Draw background region',\
'window', 12, 12, 'black', 'true')
draw_region(Reg2,WindowHandle)
reduce_domain(Image,Reg2,Background)
disp_message (WindowHandle, 'Training... ',\
'window', 12, 12, 'black', 'true')
create_class_box(ClassifHandle)
learn_ndim_box(Foreground,Background,Image,ClassifHandle)
disp_message (WindowHandle, 'Classification ',\
'window', 12, 12, 'black', 'true')
class_ndim_box(Image,Res,ClassifHandle)
dev_set_draw('fill')
dev_display (Res)
close_class_box(ClassifHandle)
Beispiel (HDevelop)
read_image(Image,'montery')
dev_display(Image)
dev_set_color('green')
disp_message (WindowHandle, 'Draw learning region ',\
'window', 12, 12, 'black', 'true')
draw_region(Reg1,WindowHandle)
reduce_domain(Image,Reg1,Foreground)
dev_set_color('red')
disp_message (WindowHandle, 'Draw background region',\
'window', 12, 12, 'black', 'true')
draw_region(Reg2,WindowHandle)
reduce_domain(Image,Reg2,Background)
disp_message (WindowHandle, 'Training... ',\
'window', 12, 12, 'black', 'true')
create_class_box(ClassifHandle)
learn_ndim_box(Foreground,Background,Image,ClassifHandle)
disp_message (WindowHandle, 'Classification ',\
'window', 12, 12, 'black', 'true')
class_ndim_box(Image,Res,ClassifHandle)
dev_set_draw('fill')
dev_display (Res)
close_class_box(ClassifHandle)
Komplexität
Sei N die Anzahl der Hyperquader und A die Fläche der
Eingaberegion(en), dann ist die Laufzeitkomplexität O(N,A).
Ergebnis
class_ndim_boxclass_ndim_boxClassNdimBoxClassNdimBoxClassNdimBox
liefert den Wert 2 (H_MSG_TRUE), falls die Parameter
korrekt sind. Für das Verhalten bzgl. der Eingabebilder und
Ausgaberegionen sind die Flags 'no_object_result'"no_object_result""no_object_result""no_object_result""no_object_result",
'empty_region_result'"empty_region_result""empty_region_result""empty_region_result""empty_region_result" und 'store_empty_region'"store_empty_region""store_empty_region""store_empty_region""store_empty_region"
einstellbar (siehe set_systemset_systemSetSystemSetSystemSetSystem
). Gegebenenfalls wird
eine Fehlerbehandlung durchgeführt.
Vorgänger
create_class_boxcreate_class_boxCreateClassBoxCreateClassBoxCreateClassBox
,
learn_class_boxlearn_class_boxLearnClassBoxLearnClassBoxLearnClassBox
,
median_imagemedian_imageMedianImageMedianImageMedianImage
,
compose2compose2Compose2Compose2Compose2
,
compose3compose3Compose3Compose3Compose3
,
compose4compose4Compose4Compose4Compose4
,
compose5compose5Compose5Compose5Compose5
,
compose6compose6Compose6Compose6Compose6
,
compose7compose7Compose7Compose7Compose7
Alternativen
class_ndim_normclass_ndim_normClassNdimNormClassNdimNormClassNdimNorm
,
class_2dim_supclass_2dim_supClass2dimSupClass2dimSupClass2dimSup
,
class_2dim_unsupclass_2dim_unsupClass2dimUnsupClass2dimUnsupClass2dimUnsup
Siehe auch
descript_class_boxdescript_class_boxDescriptClassBoxDescriptClassBoxDescriptClassBox
Modul
Foundation