handwriting_features.features.implementation.conventional package

Subpackages

Submodules

handwriting_features.features.implementation.conventional.composite module

handwriting_features.features.implementation.conventional.composite.number_of_changes_in_azimuth(sample_wrapper, fs, fc=None, n=None)[source]

Returns number of changes in azimuth.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • fs (float) – sampling frequency

  • fc (float, optional) – cutoff frequency for the low-pass filter, defaults to None

  • n (int, optional) – number of samples of a Gaussian filter, defaults to None

Returns:

number of changes in azimuth

Return type:

int

handwriting_features.features.implementation.conventional.composite.number_of_changes_in_pressure(sample_wrapper, fs, fc=None, n=None)[source]

Returns number of changes in pressure.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • fs (float) – sampling frequency

  • fc (float, optional) – cutoff frequency for the low-pass filter, defaults to None

  • n (int, optional) – number of samples of a Gaussian filter, defaults to None

Returns:

number of changes in pressure

Return type:

int

handwriting_features.features.implementation.conventional.composite.number_of_changes_in_tilt(sample_wrapper, fs, fc=None, n=None)[source]

Returns number of changes in tilt.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • fs (float) – sampling frequency

  • fc (float, optional) – cutoff frequency for the low-pass filter, defaults to None

  • n (int, optional) – number of samples of a Gaussian filter, defaults to None

Returns:

number of changes in tilt

Return type:

int

handwriting_features.features.implementation.conventional.composite.number_of_changes_in_velocity_profile(sample_wrapper, fs, fc=None, n=None)[source]

Returns number of changes in velocity profile.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • fs (float) – sampling frequency

  • fc (float, optional) – cutoff frequency for the low-pass filter, defaults to None

  • n (int, optional) – number of samples of a Gaussian filter, defaults to None

Returns:

number of changes in velocity profile

Return type:

int

handwriting_features.features.implementation.conventional.composite.number_of_changes_in_x_profile(sample_wrapper, fs, fc=None, n=None)[source]

Returns number of changes in x profile.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • fs (float) – sampling frequency

  • fc (float, optional) – cutoff frequency for the low-pass filter, defaults to None

  • n (int, optional) – number of samples of a Gaussian filter, defaults to None

Returns:

number of changes in x profile

Return type:

int

handwriting_features.features.implementation.conventional.composite.number_of_changes_in_y_profile(sample_wrapper, fs, fc=None, n=None)[source]

Returns number of changes in y profile.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • fs (float) – sampling frequency

  • fc (float, optional) – cutoff frequency for the low-pass filter, defaults to None

  • n (int, optional) – number of samples of a Gaussian filter, defaults to None

Returns:

number of changes in y profile

Return type:

int

handwriting_features.features.implementation.conventional.composite.relative_number_of_changes_in_azimuth(sample_wrapper, fs, fc=None, n=None)[source]

Returns relative number of changes in azimuth.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • fs (float) – sampling frequency

  • fc (float, optional) – cutoff frequency for the low-pass filter, defaults to None

  • n (int, optional) – number of samples of a Gaussian filter, defaults to None

Returns:

relative number of changes in azimuth

Return type:

int

handwriting_features.features.implementation.conventional.composite.relative_number_of_changes_in_pressure(sample_wrapper, fs, fc=None, n=None)[source]

Returns relative number of changes in pressure.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • fs (float) – sampling frequency

  • fc (float, optional) – cutoff frequency for the low-pass filter, defaults to None

  • n (int, optional) – number of samples of a Gaussian filter, defaults to None

Returns:

relative number of changes in pressure

Return type:

int

handwriting_features.features.implementation.conventional.composite.relative_number_of_changes_in_tilt(sample_wrapper, fs, fc=None, n=None)[source]

Returns relative number of changes in tilt.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • fs (float) – sampling frequency

  • fc (float, optional) – cutoff frequency for the low-pass filter, defaults to None

  • n (int, optional) – number of samples of a Gaussian filter, defaults to None

Returns:

relative number of changes in tilt

Return type:

int

handwriting_features.features.implementation.conventional.composite.relative_number_of_changes_in_velocity_profile(sample_wrapper, fs, fc=None, n=None)[source]

Returns relative number of changes in velocity profile.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • fs (float) – sampling frequency

  • fc (float, optional) – cutoff frequency for the low-pass filter, defaults to None

  • n (int, optional) – number of samples of a Gaussian filter, defaults to None

Returns:

relative number of changes in velocity profile

Return type:

int

handwriting_features.features.implementation.conventional.composite.relative_number_of_changes_in_x_profile(sample_wrapper, fs, fc=None, n=None)[source]

Returns relative number of changes in x profile.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • fs (float) – sampling frequency

  • fc (float, optional) – cutoff frequency for the low-pass filter, defaults to None

  • n (int, optional) – number of samples of a Gaussian filter, defaults to None

Returns:

relative number of changes in x profile

Return type:

int

handwriting_features.features.implementation.conventional.composite.relative_number_of_changes_in_y_profile(sample_wrapper, fs, fc=None, n=None)[source]

Returns relative number of changes in y profile.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • fs (float) – sampling frequency

  • fc (float, optional) – cutoff frequency for the low-pass filter, defaults to None

  • n (int, optional) – number of samples of a Gaussian filter, defaults to None

Returns:

relative number of changes in y profile

Return type:

int

handwriting_features.features.implementation.conventional.composite.writing_stops(sample_wrapper)[source]

Returns writing stops.

Parameters:

sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

Returns:

writing stops

Return type:

numpy.ndarray or np.NaN

handwriting_features.features.implementation.conventional.composite.writing_tempo(sample_wrapper, in_air)[source]

Returns writing tempo.

Parameters:
Returns:

writing tempo

Return type:

float

handwriting_features.features.implementation.conventional.dynamic module

handwriting_features.features.implementation.conventional.dynamic.azimuth(sample_wrapper, in_air)[source]

Returns azimuth.

Parameters:
Returns:

azimuth

Return type:

numpy.ndarray or np.NaN

handwriting_features.features.implementation.conventional.dynamic.pressure(sample_wrapper)[source]

Returns pressure.

Parameters:

sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

Returns:

pressure

Return type:

numpy.ndarray or np.NaN

handwriting_features.features.implementation.conventional.dynamic.tilt(sample_wrapper, in_air)[source]

Returns tilt.

Parameters:
Returns:

tilt

Return type:

numpy.ndarray or np.NaN

handwriting_features.features.implementation.conventional.kinematic module

handwriting_features.features.implementation.conventional.kinematic.acceleration(sample_wrapper, axis, in_air)[source]

Returns acceleration.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • axis (str) – axis to compute the acceleration from

  • in_air (bool) – in-air flag

Returns:

acceleration

Return type:

numpy.ndarray or np.NaN

handwriting_features.features.implementation.conventional.kinematic.jerk(sample_wrapper, axis, in_air)[source]

Returns jerk.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • axis (str) – axis to compute the jerk from

  • in_air (bool) – in-air flag

Returns:

jerk

Return type:

numpy.ndarray or np.NaN

handwriting_features.features.implementation.conventional.kinematic.velocity(sample_wrapper, axis, in_air)[source]

Returns velocity.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • axis (str) – axis to compute the velocity from

  • in_air (bool) – in-air flag

Returns:

velocity

Return type:

numpy.ndarray or np.NaN

handwriting_features.features.implementation.conventional.spatial module

handwriting_features.features.implementation.conventional.spatial.number_of_inter_stroke_intersections(sample_wrapper)[source]

Returns number of inter-stroke intersections.

Parameters:

sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

Returns:

number of inter-stroke intersections

Return type:

int

handwriting_features.features.implementation.conventional.spatial.number_of_intra_stroke_intersections(sample_wrapper)[source]

Returns number of intra-stroke intersections.

Parameters:

sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

Returns:

number of intra-stroke intersections

Return type:

numpy.ndarray or np.NaN

handwriting_features.features.implementation.conventional.spatial.relative_number_of_inter_stroke_intersections(sample_wrapper)[source]

Returns relative number of inter-stroke intersections.

Parameters:

sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

Returns:

relative number of inter-stroke intersections

Return type:

float

handwriting_features.features.implementation.conventional.spatial.relative_number_of_intra_stroke_intersections(sample_wrapper)[source]

Returns relative number of intra-stroke intersections.

Parameters:

sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

Returns:

relative number of intra-stroke intersections

Return type:

numpy.ndarray or np.NaN

handwriting_features.features.implementation.conventional.spatial.relative_total_number_of_intra_stroke_intersections(sample_wrapper)[source]

Returns relative total number of intra-stroke intersections.

Parameters:

sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

Returns:

relative total number of intra-stroke intersections

Return type:

float

handwriting_features.features.implementation.conventional.spatial.stroke_height(sample_wrapper, in_air)[source]

Returns stroke height.

Parameters:
Returns:

stroke height

Return type:

numpy.ndarray or np.NaN

handwriting_features.features.implementation.conventional.spatial.stroke_length(sample_wrapper, in_air)[source]

Returns stroke length.

Parameters:
Returns:

stroke length

Return type:

numpy.ndarray or np.NaN

handwriting_features.features.implementation.conventional.spatial.stroke_width(sample_wrapper, in_air)[source]

Returns stroke width.

Parameters:
Returns:

stroke width

Return type:

numpy.ndarray or np.NaN

handwriting_features.features.implementation.conventional.spatial.total_number_of_intra_stroke_intersections(sample_wrapper)[source]

Returns total number of intra-stroke intersections.

Parameters:

sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

Returns:

total number of intra-stroke intersections

Return type:

int

handwriting_features.features.implementation.conventional.spatial.vertical_peaks_distance(sample_wrapper, fs, n=None)[source]

Returns vertical peaks distance.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • fs (float) – sampling frequency

  • n (int, optional) – number of samples of a Gaussian filter, defaults to None

Returns:

vertical peaks distance

Return type:

int

handwriting_features.features.implementation.conventional.spatial.vertical_peaks_duration(sample_wrapper, fs, n=None)[source]

Returns vertical peaks duration.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • fs (float) – sampling frequency

  • n (int, optional) – number of samples of a Gaussian filter, defaults to None

Returns:

vertical peaks duration

Return type:

handwriting_features.features.implementation.conventional.spatial.vertical_peaks_indices(sample_wrapper, fs, n=None)[source]

Returns vertical peaks indices.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • fs (float) – sampling frequency

  • n (int, optional) – number of samples of a Gaussian filter, defaults to None

Returns:

vertical peaks indices

Return type:

numpy.ndarray or np.NaN

handwriting_features.features.implementation.conventional.spatial.vertical_peaks_values(sample_wrapper, fs, n=None)[source]

Returns vertical peaks values.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • fs (float) – sampling frequency

  • n (int, optional) – number of samples of a Gaussian filter, defaults to None

Returns:

vertical peaks values

Return type:

numpy.ndarray or np.NaN

handwriting_features.features.implementation.conventional.spatial.vertical_peaks_velocity(sample_wrapper, fs, n=None)[source]

Returns vertical peaks velocity.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • fs (float) – sampling frequency

  • n (int, optional) – number of samples of a Gaussian filter, defaults to None

Returns:

vertical peaks velocity

Return type:

numpy.ndarray or np.NaN

handwriting_features.features.implementation.conventional.spatial.vertical_valleys_distance(sample_wrapper, fs, n=None)[source]

Returns vertical valleys distance.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • fs (float) – sampling frequency

  • n (int, optional) – number of samples of a Gaussian filter, defaults to None

Returns:

vertical valleys distance

Return type:

int

handwriting_features.features.implementation.conventional.spatial.vertical_valleys_duration(sample_wrapper, fs, n=None)[source]

Returns vertical valleys duration.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • fs (float) – sampling frequency

  • n (int, optional) – number of samples of a Gaussian filter, defaults to None

Returns:

vertical valleys duration

Return type:

handwriting_features.features.implementation.conventional.spatial.vertical_valleys_indices(sample_wrapper, fs, n=None)[source]

Returns vertical valleys indices.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • fs (float) – sampling frequency

  • n (int, optional) – number of samples of a Gaussian filter, defaults to None

Returns:

vertical valleys indices

Return type:

numpy.ndarray or np.NaN

handwriting_features.features.implementation.conventional.spatial.vertical_valleys_values(sample_wrapper, fs, n=None)[source]

Returns vertical valleys values.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • fs (float) – sampling frequency

  • n (int, optional) – number of samples of a Gaussian filter, defaults to None

Returns:

vertical valleys values

Return type:

numpy.ndarray or np.NaN

handwriting_features.features.implementation.conventional.spatial.vertical_valleys_velocity(sample_wrapper, fs, n=None)[source]

Returns vertical valleys velocity.

Parameters:
  • sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

  • fs (float) – sampling frequency

  • n (int, optional) – number of samples of a Gaussian filter, defaults to None

Returns:

vertical valleys velocity

Return type:

numpy.ndarray or np.NaN

handwriting_features.features.implementation.conventional.spatial.writing_height(sample_wrapper, in_air)[source]

Returns writing height.

Parameters:
Returns:

writing height

Return type:

float

handwriting_features.features.implementation.conventional.spatial.writing_length(sample_wrapper, in_air)[source]

Returns writing length.

Parameters:
Returns:

writing length

Return type:

float

handwriting_features.features.implementation.conventional.spatial.writing_width(sample_wrapper, in_air)[source]

Returns writing width.

Parameters:
Returns:

writing width

Return type:

float

handwriting_features.features.implementation.conventional.temporal module

handwriting_features.features.implementation.conventional.temporal.number_of_interruptions(sample_wrapper)[source]

Returns the number of interruptions.

Parameters:

sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

Returns:

number of interruptions

Return type:

float

handwriting_features.features.implementation.conventional.temporal.number_of_interruptions_relative(sample_wrapper)[source]

Returns the number of interruptions relative to the duration.

Parameters:

sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

Returns:

number of interruptions relative to the duration

Return type:

float

handwriting_features.features.implementation.conventional.temporal.ratio_of_stroke_durations(sample_wrapper)[source]

Returns ratio of stroke durations: on-surface / in-air.

Parameters:

sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

Returns:

ratio of stroke durations

Return type:

numpy.ndarray or np.NaN

handwriting_features.features.implementation.conventional.temporal.ratio_of_writing_durations(sample_wrapper)[source]

Returns ratio of writing durations: on-surface / in-air.

Parameters:

sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

Returns:

ratio of writing durations

Return type:

float

handwriting_features.features.implementation.conventional.temporal.stroke_duration(sample_wrapper, in_air)[source]

Returns stroke duration.

Parameters:
Returns:

stroke duration

Return type:

numpy.ndarray or np.NaN

handwriting_features.features.implementation.conventional.temporal.writing_duration(sample_wrapper, in_air)[source]

Returns writing duration.

Parameters:
Returns:

writing duration

Return type:

float

handwriting_features.features.implementation.conventional.temporal.writing_duration_overall(sample_wrapper)[source]

Returns overall writing duration.

Parameters:

sample_wrapper (HandwritingSampleWrapper) – sample wrapper object

Returns:

overall writing duration

Return type:

float

Module contents