728x90
import deeplabcut
import glob
import os
project_title = 'Title' # 프로젝트
experimenter = 'cklee' # 실험자
key_points = ['nose', 'forehead', 'mouth-corner', 'mouth-center', 'neck']
skeleton = [['nose', 'forehead'], ['nose', 'mouth-center'],
['mouth-center', 'mouth-corner'], ['forehead', 'neck']]
video_path = ['./videos/dog.mp4', './videos/cat.mp4'] # 에러발생하면 절대경로 사용
# 프로젝트 생성
deeplabcut.create_new_project(project_title, experimenter, video_path,
copy_videos=False, multianimal=False)
# config.yaml 파일 경로 설정(절대경로) 및 수정
config_path = os.getcwd() + ‘/config.yaml’
edits = {
'bodyparts': key_points,
'skeleton': skeleton
}
deeplabcut.auxiliaryfunctions.edit_config(config_path, edits_table)
# 영상 추가
#deeplabcut.add_new_videos(config_path, ['Full path of video 1', ...], copy_videos=True/False)
#필요에 따라 파일I/O를 통해 직접 수정
# 프레임과 라벨링 데이터가 있으면 생략 가능
# 동영상의 프레임 추출
#deeplabcut.extract_frames(config_path, mode='automatic/manual',
# algo='uniform/kmeans', userfeedback=False, crop=True/False)
# 동영상의 프레임 라벨링
#deeplabcut.label_frames(config_path)
# 라벨링 확인[Optional ]
#deeplabcut.check_labels(config_path, visualizeindividuals=True/False)
# csv -> h5 파일 변환
deeplabcut.convertcsv2h5(config_path, scorer=experimenter, userfeedback=False)
# 학습 데이터셋 생성
deeplabcut.create_training_dataset(config_path, augmenter_type='imgaug')
# 학습
deeplabcut.train_network(config_path)
# 평가
deeplabcut.evaluate_network(config_path)
# 영상 분석
video_list = glob.glob(os.getcwd() + '/videos/*.mp4') # 테스트해볼 영상의 경로 입력
deeplabcut.analyze_videos(config_path, video_list, dynamic=(True, .5, 10))
# 영상 생성
deeplabcut.create_labeled_video(config_path, video_list, filtered=True)
# 필터 예측[Optional]
deeplabcut.filterpredictions(config_path, video_list)
# Plot 결과
deeplabcut.plot_trajectories(config_path, video_list, filtered=True)
# 라벨 보정
deeplabcut.refine_labels(config_path)
# 데이터 병합
deeplabcut.merge_datasets(config_path)
* 참고
DeepLabCut2.x Quick Guide to Commands
728x90
'AI > PoseEstimation' 카테고리의 다른 글
[DeepLabCut] 테스트 ResNet50 1030000 (0) | 2021.11.22 |
---|---|
[DeepLabCut] CSV format 및 CSV 파일 변환 (0) | 2021.08.03 |
[DeepLabCut] 처리 과정(process flow) (0) | 2021.08.03 |
[DeepLabCut] 설치 및 실행 (4) | 2021.08.03 |
[DeepLabCut] 개요 (6) | 2021.08.03 |