handwriting_features.features.configuration package
Submodules
handwriting_features.features.configuration.mapping module
handwriting_features.features.configuration.settings module
- class handwriting_features.features.configuration.settings.HandwritingFeaturesSettings[source]
Bases:
objectClass implementing the handwriting features settings
- axes = ('x', 'y', 'xy')
- classmethod get_feature_argument_default(feature_name, argument_name)[source]
Gets the feature argument’s default value(s).
- Parameters
feature_name (str) – feature name
argument_name (str) – argument name
- Returns
argument’s default value(s)
- Return type
Any
- classmethod get_feature_argument_options(feature_name, argument_name)[source]
Gets the feature argument’s option(s).
- Parameters
feature_name (str) – feature name
argument_name (str) – argument name
- Returns
argument’s option(s)
- Return type
iterable
- classmethod get_feature_argument_type(feature_name, argument_name)[source]
Gets the feature argument’s supported type(s).
- Parameters
feature_name (str) – feature name
argument_name (str) – argument name
- Returns
argument’s type(s)
- Return type
iterable
- settings = {'acceleration': {'arguments': {'axis': {'default': 'xy', 'mandatory': False, 'options': ('x', 'y', 'xy'), 'type': [<class 'str'>]}, 'in_air': {'default': False, 'mandatory': False, 'options': (True, False), 'type': [<class 'bool'>]}, 'statistics': {'mandatory': False, 'options': dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression']), 'type': [<class 'str'>, <class 'list'>, <class 'tuple'>]}}, 'properties': {'is_multi_valued': True}}, 'azimuth': {'arguments': {'in_air': {'default': False, 'mandatory': False, 'options': (True, False), 'type': [<class 'bool'>]}, 'statistics': {'mandatory': False, 'options': dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression']), 'type': [<class 'str'>, <class 'list'>, <class 'tuple'>]}}, 'properties': {'is_multi_valued': True}}, 'jerk': {'arguments': {'axis': {'default': 'xy', 'mandatory': False, 'options': ('x', 'y', 'xy'), 'type': [<class 'str'>]}, 'in_air': {'default': False, 'mandatory': False, 'options': (True, False), 'type': [<class 'bool'>]}, 'statistics': {'mandatory': False, 'options': dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression']), 'type': [<class 'str'>, <class 'list'>, <class 'tuple'>]}}, 'properties': {'is_multi_valued': True}}, 'number_of_changes_in_azimuth': {'arguments': {'fs': {'mandatory': True, 'type': [<class 'int'>, <class 'float'>]}}, 'properties': {'is_multi_valued': False}}, 'number_of_changes_in_pressure': {'arguments': {'fs': {'mandatory': True, 'type': [<class 'int'>, <class 'float'>]}}, 'properties': {'is_multi_valued': False}}, 'number_of_changes_in_tilt': {'arguments': {'fs': {'mandatory': True, 'type': [<class 'int'>, <class 'float'>]}}, 'properties': {'is_multi_valued': False}}, 'number_of_changes_in_velocity_profile': {'arguments': {'fs': {'mandatory': True, 'type': [<class 'int'>, <class 'float'>]}}, 'properties': {'is_multi_valued': False}}, 'number_of_changes_in_x_profile': {'arguments': {'fs': {'mandatory': True, 'type': [<class 'int'>, <class 'float'>]}}, 'properties': {'is_multi_valued': False}}, 'number_of_changes_in_y_profile': {'arguments': {'fs': {'mandatory': True, 'type': [<class 'int'>, <class 'float'>]}}, 'properties': {'is_multi_valued': False}}, 'number_of_inter_stroke_intersections': {'arguments': {}, 'properties': {'is_multi_valued': False}}, 'number_of_interruptions': {'arguments': {}, 'properties': {'is_multi_valued': False}}, 'number_of_interruptions_relative': {'arguments': {}, 'properties': {'is_multi_valued': False}}, 'number_of_intra_stroke_intersections': {'arguments': {'statistics': {'mandatory': False, 'options': dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression']), 'type': [<class 'str'>, <class 'list'>, <class 'tuple'>]}}, 'properties': {'is_multi_valued': True}}, 'pressure': {'arguments': {'statistics': {'mandatory': False, 'options': dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression']), 'type': [<class 'str'>, <class 'list'>, <class 'tuple'>]}}, 'properties': {'is_multi_valued': True}}, 'ratio_of_stroke_durations': {'arguments': {'statistics': {'mandatory': False, 'options': dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression']), 'type': [<class 'str'>, <class 'list'>, <class 'tuple'>]}}, 'properties': {'is_multi_valued': True}}, 'ratio_of_writing_durations': {'arguments': {}, 'properties': {'is_multi_valued': False}}, 'relative_number_of_changes_in_azimuth': {'arguments': {'fs': {'mandatory': True, 'type': [<class 'int'>, <class 'float'>]}}, 'properties': {'is_multi_valued': False}}, 'relative_number_of_changes_in_pressure': {'arguments': {'fs': {'mandatory': True, 'type': [<class 'int'>, <class 'float'>]}}, 'properties': {'is_multi_valued': False}}, 'relative_number_of_changes_in_tilt': {'arguments': {'fs': {'mandatory': True, 'type': [<class 'int'>, <class 'float'>]}}, 'properties': {'is_multi_valued': False}}, 'relative_number_of_changes_in_velocity_profile': {'arguments': {'fs': {'mandatory': True, 'type': [<class 'int'>, <class 'float'>]}}, 'properties': {'is_multi_valued': False}}, 'relative_number_of_changes_in_x_profile': {'arguments': {'fs': {'mandatory': True, 'type': [<class 'int'>, <class 'float'>]}}, 'properties': {'is_multi_valued': False}}, 'relative_number_of_changes_in_y_profile': {'arguments': {'fs': {'mandatory': True, 'type': [<class 'int'>, <class 'float'>]}}, 'properties': {'is_multi_valued': False}}, 'relative_number_of_inter_stroke_intersections': {'arguments': {}, 'properties': {'is_multi_valued': False}}, 'relative_number_of_intra_stroke_intersections': {'arguments': {'statistics': {'mandatory': False, 'options': dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression']), 'type': [<class 'str'>, <class 'list'>, <class 'tuple'>]}}, 'properties': {'is_multi_valued': True}}, 'relative_total_number_of_intra_stroke_intersections': {'arguments': {}, 'properties': {'is_multi_valued': False}}, 'stroke_duration': {'arguments': {'in_air': {'default': False, 'mandatory': False, 'options': (True, False), 'type': [<class 'bool'>]}, 'statistics': {'mandatory': False, 'options': dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression']), 'type': [<class 'str'>, <class 'list'>, <class 'tuple'>]}}, 'properties': {'is_multi_valued': True}}, 'stroke_height': {'arguments': {'in_air': {'default': False, 'mandatory': False, 'options': (True, False), 'type': [<class 'bool'>]}, 'statistics': {'mandatory': False, 'options': dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression']), 'type': [<class 'str'>, <class 'list'>, <class 'tuple'>]}}, 'properties': {'is_multi_valued': True}}, 'stroke_length': {'arguments': {'in_air': {'default': False, 'mandatory': False, 'options': (True, False), 'type': [<class 'bool'>]}, 'statistics': {'mandatory': False, 'options': dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression']), 'type': [<class 'str'>, <class 'list'>, <class 'tuple'>]}}, 'properties': {'is_multi_valued': True}}, 'stroke_width': {'arguments': {'in_air': {'default': False, 'mandatory': False, 'options': (True, False), 'type': [<class 'bool'>]}, 'statistics': {'mandatory': False, 'options': dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression']), 'type': [<class 'str'>, <class 'list'>, <class 'tuple'>]}}, 'properties': {'is_multi_valued': True}}, 'tilt': {'arguments': {'in_air': {'default': False, 'mandatory': False, 'options': (True, False), 'type': [<class 'bool'>]}, 'statistics': {'mandatory': False, 'options': dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression']), 'type': [<class 'str'>, <class 'list'>, <class 'tuple'>]}}, 'properties': {'is_multi_valued': True}}, 'total_number_of_intra_stroke_intersections': {'arguments': {}, 'properties': {'is_multi_valued': False}}, 'velocity': {'arguments': {'axis': {'default': 'xy', 'mandatory': False, 'options': ('x', 'y', 'xy'), 'type': [<class 'str'>]}, 'in_air': {'default': False, 'mandatory': False, 'options': (True, False), 'type': [<class 'bool'>]}, 'statistics': {'mandatory': False, 'options': dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression']), 'type': [<class 'str'>, <class 'list'>, <class 'tuple'>]}}, 'properties': {'is_multi_valued': True}}, 'vertical_peaks_distance': {'arguments': {'fs': {'mandatory': True, 'type': [<class 'int'>, <class 'float'>]}, 'statistics': {'mandatory': False, 'options': dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression']), 'type': [<class 'str'>, <class 'list'>, <class 'tuple'>]}}, 'properties': {'is_multi_valued': True}}, 'vertical_peaks_duration': {'arguments': {'fs': {'mandatory': True, 'type': [<class 'int'>, <class 'float'>]}, 'statistics': {'mandatory': False, 'options': dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression']), 'type': [<class 'str'>, <class 'list'>, <class 'tuple'>]}}, 'properties': {'is_multi_valued': True}}, 'vertical_peaks_indices': {'arguments': {'fs': {'mandatory': True, 'type': [<class 'int'>, <class 'float'>]}, 'statistics': {'mandatory': False, 'options': dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression']), 'type': [<class 'str'>, <class 'list'>, <class 'tuple'>]}}, 'properties': {'is_multi_valued': True}}, 'vertical_peaks_values': {'arguments': {'fs': {'mandatory': True, 'type': [<class 'int'>, <class 'float'>]}, 'statistics': {'mandatory': False, 'options': dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression']), 'type': [<class 'str'>, <class 'list'>, <class 'tuple'>]}}, 'properties': {'is_multi_valued': True}}, 'vertical_peaks_velocity': {'arguments': {'fs': {'mandatory': True, 'type': [<class 'int'>, <class 'float'>]}, 'statistics': {'mandatory': False, 'options': dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression']), 'type': [<class 'str'>, <class 'list'>, <class 'tuple'>]}}, 'properties': {'is_multi_valued': True}}, 'vertical_valleys_distance': {'arguments': {'fs': {'mandatory': True, 'type': [<class 'int'>, <class 'float'>]}, 'statistics': {'mandatory': False, 'options': dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression']), 'type': [<class 'str'>, <class 'list'>, <class 'tuple'>]}}, 'properties': {'is_multi_valued': True}}, 'vertical_valleys_duration': {'arguments': {'fs': {'mandatory': True, 'type': [<class 'int'>, <class 'float'>]}, 'statistics': {'mandatory': False, 'options': dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression']), 'type': [<class 'str'>, <class 'list'>, <class 'tuple'>]}}, 'properties': {'is_multi_valued': True}}, 'vertical_valleys_indices': {'arguments': {'fs': {'mandatory': True, 'type': [<class 'int'>, <class 'float'>]}, 'statistics': {'mandatory': False, 'options': dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression']), 'type': [<class 'str'>, <class 'list'>, <class 'tuple'>]}}, 'properties': {'is_multi_valued': True}}, 'vertical_valleys_values': {'arguments': {'fs': {'mandatory': True, 'type': [<class 'int'>, <class 'float'>]}, 'statistics': {'mandatory': False, 'options': dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression']), 'type': [<class 'str'>, <class 'list'>, <class 'tuple'>]}}, 'properties': {'is_multi_valued': True}}, 'vertical_valleys_velocity': {'arguments': {'fs': {'mandatory': True, 'type': [<class 'int'>, <class 'float'>]}, 'statistics': {'mandatory': False, 'options': dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression']), 'type': [<class 'str'>, <class 'list'>, <class 'tuple'>]}}, 'properties': {'is_multi_valued': True}}, 'writing_duration': {'arguments': {'in_air': {'default': False, 'mandatory': False, 'options': (True, False), 'type': [<class 'bool'>]}}, 'properties': {'is_multi_valued': False}}, 'writing_duration_overall': {'arguments': {}, 'properties': {'is_multi_valued': False}}, 'writing_height': {'arguments': {'in_air': {'default': False, 'mandatory': False, 'options': (True, False), 'type': [<class 'bool'>]}}, 'properties': {'is_multi_valued': False}}, 'writing_length': {'arguments': {'in_air': {'default': False, 'mandatory': False, 'options': (True, False), 'type': [<class 'bool'>]}}, 'properties': {'is_multi_valued': False}}, 'writing_stops': {'arguments': {'statistics': {'mandatory': False, 'options': dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression']), 'type': [<class 'str'>, <class 'list'>, <class 'tuple'>]}}, 'properties': {'is_multi_valued': True}}, 'writing_tempo': {'arguments': {'in_air': {'default': False, 'mandatory': False, 'options': (True, False), 'type': [<class 'bool'>]}}, 'properties': {'is_multi_valued': False}}, 'writing_width': {'arguments': {'in_air': {'default': False, 'mandatory': False, 'options': (True, False), 'type': [<class 'bool'>]}}, 'properties': {'is_multi_valued': False}}}
- statistics = dict_keys(['mean', 'std', 'cv_parametric', 'median', 'iqr', 'cv_nonparametric', 'quartile_1', 'quartile_3', 'percentile_5', 'percentile_95', 'slope_of_linear_regression'])