MacBook M1+VSCode环境下YOLOv8视频检测报zsh: killed错误求助
针对M1 Mac上YOLOv8视频检测出现「zsh: killed」的解决方案
排查内存占用问题
M1系列芯片的内存管理机制对大负载敏感,视频检测持续加载帧并处理,极易触发系统内存不足(OOM)导致进程被杀死。- 打开「活动监视器」,实时监控视频检测时的内存占用,若YOLOv8进程内存占比接近系统总内存,直接确认是内存不足问题。
- 临时缓解:关闭VSCode外的所有后台应用(如浏览器、大型办公软件),释放内存后重试检测。
- 长期解决:若频繁处理视频,可升级Mac内存;或切换更小的YOLOv8模型(比如用
yolov8n.pt替代yolov8x.pt),模型体积越小,内存占用越低。
调整YOLOv8视频检测参数
默认参数可能不适配M1 Mac性能,手动修改参数降低负载:- 减少批量处理帧数量:检测命令中添加
--batch 1,示例:yolo detect source=your_video.mp4 model=yolov8n.pt batch=1,单帧处理能大幅降低内存消耗。 - 降低输入分辨率:添加
--imgsz 640(或更小的416),示例:yolo detect source=your_video.mp4 model=yolov8n.pt imgsz=640,缩小帧尺寸可减少计算量。 - 关闭冗余后处理:添加
--verbose False,减少日志输出带来的额外负载。
- 减少批量处理帧数量:检测命令中添加
优化Python环境配置
确保Python环境适配M1芯片架构:- 检查Python架构:终端输入
python3 --version,若显示arm64则为适配版本;若为x86_64,建议用Homebrew重装Python(brew install python),或用Conda创建ARM架构环境。 - 重装YOLOv8依赖:卸载现有包后重新安装适配版本,命令:
pip uninstall ultralytics -y && pip install ultralytics --no-cache-dir。
- 检查Python架构:终端输入
系统层面调整
若以上方法无效,尝试排除系统配置干扰:- 重置zsh配置:先备份现有配置,再重置,命令:
cp ~/.zshrc ~/.zshrc_backup && echo "" > ~/.zshrc,重启终端后重试检测,排除错误配置的影响。 - 改用系统终端运行:VSCode集成终端可能有额外内存开销,直接在系统自带「终端」App中执行YOLOv8检测命令,观察是否仍出现进程被杀死的情况。
- 重置zsh配置:先备份现有配置,再重置,命令:
内容的提问来源于stack exchange,提问作者SejunBak
相关产品推荐
相关产品推荐

