imucal.ferraris_regions_from_interactive_plot#
- imucal.ferraris_regions_from_interactive_plot(data: DataFrame, acc_cols: Iterable[str] = ('acc_x', 'acc_y', 'acc_z'), gyr_cols: Iterable[str] = ('gyr_x', 'gyr_y', 'gyr_z'), title: str | None = None) Tuple[FerrarisSignalRegions, DataFrame] [source]#
Create a Calibration object by selecting the individual signal sections manually in an interactive GUI.
This will open a Tkinter Window that allows you to label the start and the end all required sections for a Ferraris Calibration. See the class docstring for more detailed explanations of these sections.
- Parameters:
- data
6 column dataframe (3 acc, 3 gyro)
- acc_cols
The name of the 3 acceleration columns in order x,y,z.
- gyr_cols
The name of the 3 acceleration columns in order x,y,z.
- title
Optional title of the plot window
- Returns:
- ferraris_cal_objFerrarisSignalRegions
- section_listpd.DataFrame
Section list representing the start and stop of each section. It is advised to save this to disk to avoid repeated manual labeling.
ferraris_regions_from_section_list
can be used to recreate the regions object
Examples
>>> sampling_rate = 100 #Hz >>> data = ... # my data as 6 col pandas dataframe >>> # This will open an interactive plot, where you can select the start and the stop sample of each region >>> regions, section_list = ferraris_regions_from_interactive_plot(data, sampling_rate=sampling_rate) >>> section_list.to_csv('./calibration_sections.csv') # This is optional, but recommended >>> regions FerrarisSignalRegions(x_a=array([...]), ..., z_rot=array([...]))