一些小修复

This commit is contained in:
2026-05-29 16:20:27 +08:00
parent 31da324c52
commit 8d4e40dc0c
4 changed files with 155 additions and 18 deletions
+53
View File
@@ -0,0 +1,53 @@
#!/bin/bash
### 香橙派 NPU 推理 + 图传 自启脚本(支持 Ctrl+C 停止)
### 使用方法:chmod +x start_uav.sh
# ==================== 【核心注入 1:引入华为昇腾环境变量】 ====================
# 香橙派 AI Pro 默认的华为昇腾工具链环境变量脚本路径如下,必须优先加载它
if [ -f "/usr/local/Ascend/ascend-toolkit/set_env.sh" ]; then
source /usr/local/Ascend/ascend-toolkit/set_env.sh
fi
# ==================== 【核心注入 2:引入 Conda 环境】 ====================
if [ -f "/usr/local/miniconda3/etc/profile.d/conda.sh" ]; then
source "/usr/local/miniconda3/etc/profile.d/conda.sh"
elif [ -f "/home/HwHiAiUser/miniconda3/etc/profile.d/conda.sh" ]; then
source "/home/HwHiAiUser/miniconda3/etc/profile.d/conda.sh"
fi
# 激活你的 (base) 虚拟环境
conda activate base
# ====================================================================
WORK_DIR="/home/HwHiAiUser/opi-yolo"
PYTHON_SCRIPT="infer_camera_direct.py"
LOG_FILE="/tmp/npu_infer.log"
PYTHON_BIN="python3"
STOP=0
# 捕获 Ctrl+C 等终止信号
trap 'STOP=1; echo "收到终止信号,正在停止..." >> "$LOG_FILE"' INT TERM
cd "$WORK_DIR" || exit 1
echo "$(date): 启动 NPU 推理程序 (按 Ctrl+C 停止)" >> "$LOG_FILE"
while [ $STOP -eq 0 ]; do
# 启动子进程,并保存 PID
$PYTHON_BIN "$PYTHON_SCRIPT" >> "$LOG_FILE" 2>&1 &
PYTHON_PID=$!
# 等待子进程结束或收到信号
wait $PYTHON_PID
EXIT_CODE=$?
if [ $STOP -eq 0 ]; then
# 非人为终止时(崩溃),自动重启
echo "$(date): 程序异常退出 (代码 $EXIT_CODE),5 秒后重启..." >> "$LOG_FILE"
sleep 5
else
echo "$(date): 用户主动终止,不再重启" >> "$LOG_FILE"
break
fi
done