add_samples_image_class_svmT_add_samples_image_class_svmAddSamplesImageClassSvmAddSamplesImageClassSvmadd_samples_image_class_svm (Operator)
Name
add_samples_image_class_svmT_add_samples_image_class_svmAddSamplesImageClassSvmAddSamplesImageClassSvmadd_samples_image_class_svm
— Add training samples from an image to the training data of a support
vector machine.
Signature
Description
add_samples_image_class_svmadd_samples_image_class_svmAddSamplesImageClassSvmAddSamplesImageClassSvmAddSamplesImageClassSvmadd_samples_image_class_svm
adds training samples from the
image ImageImageImageImageimageimage
to the support vector machine (SVM) given by
SVMHandleSVMHandleSVMHandleSVMHandleSVMHandlesvmhandle
. add_samples_image_class_svmadd_samples_image_class_svmAddSamplesImageClassSvmAddSamplesImageClassSvmAddSamplesImageClassSvmadd_samples_image_class_svm
is used to
store the training samples before training a classifier for the
pixel classification of multichannel images with
classify_image_class_svmclassify_image_class_svmClassifyImageClassSvmClassifyImageClassSvmClassifyImageClassSvmclassify_image_class_svm
.
add_samples_image_class_svmadd_samples_image_class_svmAddSamplesImageClassSvmAddSamplesImageClassSvmAddSamplesImageClassSvmadd_samples_image_class_svm
works analogously to
add_sample_class_svmadd_sample_class_svmAddSampleClassSvmAddSampleClassSvmAddSampleClassSvmadd_sample_class_svm
.
The image ImageImageImageImageimageimage
must have a number of channels equal to
NumFeaturesNumFeaturesNumFeaturesNumFeaturesnumFeaturesnum_features
, as specified with create_class_svmcreate_class_svmCreateClassSvmCreateClassSvmCreateClassSvmcreate_class_svm
. The
training regions for the NumClassesNumClassesNumClassesNumClassesnumClassesnum_classes
pixel classes are passed in
ClassRegionsClassRegionsClassRegionsClassRegionsclassRegionsclass_regions
. Hence, ClassRegionsClassRegionsClassRegionsClassRegionsclassRegionsclass_regions
must be a tuple
containing NumClassesNumClassesNumClassesNumClassesnumClassesnum_classes
regions. The order of the regions in
ClassRegionsClassRegionsClassRegionsClassRegionsclassRegionsclass_regions
determines the class of the pixels. If there
are no samples for a particular class in ImageImageImageImageimageimage
, an empty
region must be passed at the position of the class in
ClassRegionsClassRegionsClassRegionsClassRegionsclassRegionsclass_regions
. With this mechanism it is possible to use
multiple images to add training samples for all relevant classes to
the SVM by calling add_samples_image_class_svmadd_samples_image_class_svmAddSamplesImageClassSvmAddSamplesImageClassSvmAddSamplesImageClassSvmadd_samples_image_class_svm
multiple
times with the different images and suitably chosen regions.
The regions in ClassRegionsClassRegionsClassRegionsClassRegionsclassRegionsclass_regions
should contain representative
training samples for the respective classes. Hence, they need not
cover the entire image. The regions in ClassRegionsClassRegionsClassRegionsClassRegionsclassRegionsclass_regions
should
not overlap each other, because this would lead to the fact that in
the training data the samples from the overlapping areas would be
assigned to multiple classes, which may lead to slower convergence
of the training and a lower classification performance.
A further application of this operator is the automatic novelty detection,
where, e.g., anomalies in color or texture can be detected. For this
mode a training set that defines a sample region (e.g., skin
regions for skin detection or samples of the correct texture) is
passed to the SVMHandleSVMHandleSVMHandleSVMHandleSVMHandlesvmhandle
, which is created in the Mode
'novelty-detection'"novelty-detection""novelty-detection""novelty-detection""novelty-detection""novelty-detection". After training, regions that differ from the
trained sample regions are detected (e.g., the rejection class for skin
or errors in texture).
Execution Information
- Multithreading type: reentrant (runs in parallel with non-exclusive operators).
- Multithreading scope: global (may be called from any thread).
- Processed without parallelization.
This operator modifies the state of the following input parameter:
During execution of this operator, access to the value of this parameter must be synchronized if it is used across multiple threads.
Parameters
ImageImageImageImageimageimage
(input_object) (multichannel-)image →
objectHImageHObjectHImageHobject (byte / cyclic / direction / int1 / int2 / uint2 / int4 / real)
Training image.
ClassRegionsClassRegionsClassRegionsClassRegionsclassRegionsclass_regions
(input_object) region-array →
objectHRegionHObjectHRegionHobject
Regions of the classes to be trained.
SVMHandleSVMHandleSVMHandleSVMHandleSVMHandlesvmhandle
(input_control, state is modified) class_svm →
HClassSvm, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
SVM handle.
Result
If the parameters are valid add_samples_image_class_svmadd_samples_image_class_svmAddSamplesImageClassSvmAddSamplesImageClassSvmAddSamplesImageClassSvmadd_samples_image_class_svm
returns the value 2 (H_MSG_TRUE). If necessary, an exception is
raised.
Possible Predecessors
create_class_svmcreate_class_svmCreateClassSvmCreateClassSvmCreateClassSvmcreate_class_svm
Possible Successors
train_class_svmtrain_class_svmTrainClassSvmTrainClassSvmTrainClassSvmtrain_class_svm
,
write_samples_class_svmwrite_samples_class_svmWriteSamplesClassSvmWriteSamplesClassSvmWriteSamplesClassSvmwrite_samples_class_svm
Alternatives
read_samples_class_svmread_samples_class_svmReadSamplesClassSvmReadSamplesClassSvmReadSamplesClassSvmread_samples_class_svm
See also
classify_image_class_svmclassify_image_class_svmClassifyImageClassSvmClassifyImageClassSvmClassifyImageClassSvmclassify_image_class_svm
,
add_sample_class_svmadd_sample_class_svmAddSampleClassSvmAddSampleClassSvmAddSampleClassSvmadd_sample_class_svm
,
clear_samples_class_svmclear_samples_class_svmClearSamplesClassSvmClearSamplesClassSvmClearSamplesClassSvmclear_samples_class_svm
,
get_sample_num_class_svmget_sample_num_class_svmGetSampleNumClassSvmGetSampleNumClassSvmGetSampleNumClassSvmget_sample_num_class_svm
,
get_sample_class_svmget_sample_class_svmGetSampleClassSvmGetSampleClassSvmGetSampleClassSvmget_sample_class_svm
,
add_samples_image_class_mlpadd_samples_image_class_mlpAddSamplesImageClassMlpAddSamplesImageClassMlpAddSamplesImageClassMlpadd_samples_image_class_mlp
Module
Foundation