Skip to content

deeplabcut.modelzoo.generalized_data_converter.utils

Functions:

Name Description
create_dummy_config_file_from_h5

Assuming at least labeled-data folder is there.

create_dummy_config_file_from_pickle

Assuming at least labeled-data folder is there.

create_dummy_config_file_from_h5

create_dummy_config_file_from_h5(proj_root, reference_h5, taskname='dummytask', scorer='dummyscorer', date='March30')

Assuming at least labeled-data folder is there.

Source code in deeplabcut/modelzoo/generalized_data_converter/utils.py
def create_dummy_config_file_from_h5(
    proj_root, reference_h5, taskname="dummytask", scorer="dummyscorer", date="March30"
):
    """Assuming at least labeled-data folder is there."""

    cfg_template = SingleDLC_config()

    df = pd.read_hdf(reference_h5)

    print(df)

    pattern = glob.glob(os.path.join(proj_root, "labeled-data", "*"))

    labeled_folders = [f.split("/")[-1] for f in pattern]

    video_sets = {f"{folder}.mp4": {"crop": "0, 400, 0, 400"} for folder in labeled_folders}

    # bodyparts = df[scorer]['bodyparts']

    bodyparts = list(df.columns.get_level_values("bodyparts").unique())
    scorer = df.columns.get_level_values("scorer").unique()[0]

    modify_dict = dict(
        Task=taskname,
        project_path=proj_root,
        scorer=scorer,
        date=date,
        video_sets=video_sets,
        bodyparts=bodyparts,
        TrainingFraction=[0.95],
    )

    cfg_template.create_cfg(proj_root, modify_dict)

create_dummy_config_file_from_pickle

create_dummy_config_file_from_pickle(
    proj_root, reference_pickle, video_path, taskname="dummytask", scorer="dummyscorer", date="March30"
)

Assuming at least labeled-data folder is there.

Source code in deeplabcut/modelzoo/generalized_data_converter/utils.py
def create_dummy_config_file_from_pickle(
    proj_root,
    reference_pickle,
    video_path,
    taskname="dummytask",
    scorer="dummyscorer",
    date="March30",
):
    """Assuming at least labeled-data folder is there."""

    cfg_template = SingleDLC_config()

    with open(reference_pickle, "rb") as f:
        pickle.load(f)

    # bodyparts  = pickle_obj['keypoint_names']
    bodyparts = [
        "tail",
        "spine4",
        "spine3",
        "spine2",
        "spine1",
        "head",
        "nose",
        "right ear",
        "left ear",
    ]

    video_path.split("/")[-1]

    video_sets = {f"{video_path}": {"crop": "0, 400, 0, 400"}}

    modify_dict = dict(
        Task=taskname,
        project_path=proj_root,
        scorer=scorer,
        date=date,
        video_sets=video_sets,
        bodyparts=bodyparts,
        TrainingFraction=[0.95],
    )

    cfg_template.create_cfg(".", modify_dict)