DeepLabCut提取帧时无图像生成问题求助(DLC2.2.2/Win11)
labeled-data无文件的排查方案 问题描述
在Win11系统下以管理员身份运行DeepLabCut 2.2.2,执行代码:
deeplabcut.extract_frames(config_path, mode='automatic', algo='kmeans', userfeedback=True, crop=False)
系统返回成功提示:
Frames were successfully extracted, for the videos listed in the config.yaml file.
You can now label the frames using the function 'label_frames' (Note, you should label frames extracted from diverse videos (and many videos; we do not recommend training on single videos!)).
但labeled-data文件夹内未生成任何提取的帧文件。
排查与解决步骤
检查
config.yaml的视频路径配置
打开config.yaml,确认video_sets下的视频路径为绝对路径,且路径中无中文、空格或特殊字符(如&、#);若路径含空格,需用引号包裹,或直接更换为无空格路径。同时验证视频文件确实存在于配置路径下,无拼写错误、移动或删除情况。确认帧的实际存储位置
DeepLabCut可能将帧存储在config.yaml中project_path指定的目录,而非当前脚本运行目录。检查该路径下是否有labeled-data文件夹,或是否生成了以视频名称命名的子文件夹(如video1-labeled)。也可在代码中手动指定存储路径:deeplabcut.extract_frames(config_path, mode='automatic', algo='kmeans', userfeedback=True, crop=False, destfolder='./labeled-data')验证文件夹权限
右键labeled-data文件夹→属性→安全,确认当前用户拥有“写入”权限;若文件夹未自动创建,手动创建后再执行提取命令。查看运行日志定位错误
在项目目录的dlc-models或logs文件夹中查看运行日志,里面可能包含视频解码失败、路径无法访问等细节。也可在执行代码前添加日志输出:import logging logging.basicConfig(level=logging.INFO)重新运行命令,通过控制台输出排查问题。
检查视频兼容性
确认视频为DeepLabCut支持的格式(如MP4、AVI),若为其他格式,转换为MP4后重试;同时用本地播放器验证视频可正常播放,无损坏。调整DeepLabCut版本
2.2.2版本可能存在Win11兼容性问题,尝试降级到2.2.1或升级至最新稳定版后重新执行提取命令。
内容的提问来源于stack exchange,提问作者Meng-Xuan Liu

