137 lines
4.2 KiB
Markdown
137 lines
4.2 KiB
Markdown
|
||
# 开发和部署所需的命令
|
||
|
||
ffmpeg -f dshow -i video="1080P USB Camera" -c:v libx264 -preset ultrafast -pix_fmt yuv420p -f rtsp rtsp://localhost:8554/cam
|
||
|
||
ffmpeg -f dshow -video_size 1280x720 -vcodec mjpeg -i video="1080P USB Camera" -c:v libx264 -preset ultrafast -pix_fmt yuv420p -f rtsp rtsp://localhost:8554/cam
|
||
|
||
cmake -S . -B build \
|
||
-DCMAKE_BUILD_TYPE=Release \
|
||
-DBUILD_TESTS=OFF \
|
||
-DBUILD_SAMPLES=ON \
|
||
-DRK3588_ENABLE_FFMPEG=ON \
|
||
-DRK3588_ENABLE_MPP=ON \
|
||
-DRK3588_ENABLE_RGA=ON \
|
||
-DRK3588_ENABLE_ZLMEDIAKIT=ON \
|
||
-DRK3588_ENABLE_RKNN=ON \
|
||
-DRK_ZLMK_API_LIB_PATH=$PWD/third_party/rknpu2/examples/3rdparty/zlmediakit/aarch64/libmk_api.so \
|
||
-DRK_ZLMEDIAKIT_INCLUDE_DIR=$PWD/third_party/rknpu2/examples/3rdparty/zlmediakit/include
|
||
|
||
cmake --build build -j$(nproc)
|
||
|
||
- 运行media-server
|
||
./build/media-server -c configs/sample_cam4_best.json
|
||
|
||
//退出
|
||
pidof media-server
|
||
|
||
kill -TERM <pid>
|
||
|
||
ss -lntp | grep ':9000'
|
||
|
||
<http://10.0.0.81:9000/hls/cam1/index.m3u8>
|
||
|
||
rtsp://10.0.0.81:8555/live/cam1
|
||
|
||
D:\minio\bin>minio.exe server D:\minio\data --address ":9000" --console-address ":9001"
|
||
|
||
//生成人脸模型
|
||
|
||
python build_gallery.py --dataset "D:\App\python\AddFaceTo3588\faces\dataset" --db_out "D:\App\python\AddFaceTo3588\faces\face_gallery.db" --det_model "D:\App\python\AddFaceTo3588\models\RetinaFace_mobile320.onnx" --recog_model "D:\App\python\AddFaceTo3588\models\mobilefacenet_arcface_prenorm.onnx" --det_outputs_config "D:\App\python\AddFaceTo3588\models\retinaface_mobile320_config.json" --det_score_thresh 0.6 --max_imgs_per_person 10 --pick_face largest --min_face_size 80 --expected_dim 512 --fail_on_empty true
|
||
|
||
编译
|
||
|
||
cd /d D:\App\C++\Rk3588Sys\agent
|
||
$env:GOOS="linux"
|
||
$env:GOARCH="arm64"
|
||
$env:CGO_ENABLED="0"
|
||
$VERSION="0.0.0-dev"
|
||
$GITSHA="dev"
|
||
go build -trimpath -buildvcs=false -ldflags "-s -w -X main.Version=$VERSION -X main.GitSHA=$GITSHA" -o ".\rk3588-agent" ".\cmd\rk3588-agent"
|
||
go version -m .\rk3588-agent
|
||
|
||
ls -l ./rk3588-agent_linux_arm64
|
||
chmod +x ./rk3588-agent_linux_arm64
|
||
./rk3588-agent_linux_arm64 --config agent_cam1.config.json
|
||
|
||
用 systemd(Ubuntu 22.04 / root)部署并后台常驻运行 agent
|
||
|
||
1) 放置文件
|
||
|
||
在板子上执行(按你实际文件名/路径调整):
|
||
|
||
sh
|
||
sudo mkdir -p /opt/rk3588-agent
|
||
sudo cp /path/to/rk3588-agent /opt/rk3588-agent/rk3588-agent
|
||
sudo cp /path/to/agent_cam1.config.json /opt/rk3588-agent/agent.config.json
|
||
sudo chmod +x /opt/rk3588-agent/rk3588-agent
|
||
|
||
关键点:运行命令需要 `--config`,这里统一放成 `/opt/rk3588-agent/agent.config.json`
|
||
|
||
2) 创建 systemd 服务文件
|
||
|
||
创建 /etc/systemd/system/rk3588-agent.service:
|
||
|
||
sh
|
||
sudo tee /etc/systemd/system/rk3588-agent.service >/dev/null <<'EOF'
|
||
[Unit]
|
||
Description=RK3588 Agent
|
||
After=network-online.target
|
||
Wants=network-online.target
|
||
|
||
[Service]
|
||
Type=simple
|
||
User=root
|
||
WorkingDirectory=/opt/rk3588-agent
|
||
ExecStart=/opt/rk3588-agent/rk3588-agent --config /opt/rk3588-agent/agent.config.json
|
||
Restart=always
|
||
RestartSec=2
|
||
LimitNOFILE=65535
|
||
|
||
[Install]
|
||
WantedBy=multi-user.target
|
||
EOF
|
||
|
||
3) 启动 + 开机自启
|
||
|
||
sh
|
||
sudo systemctl daemon-reload
|
||
sudo systemctl enable --now rk3588-agent
|
||
|
||
1) 查看状态与日志
|
||
|
||
sh
|
||
sudo systemctl status rk3588-agent --no-pager
|
||
sudo journalctl -u rk3588-agent -f
|
||
|
||
1) 停止/重启
|
||
|
||
sh
|
||
sudo systemctl stop rk3588-agent
|
||
sudo systemctl restart rk3588-agent
|
||
|
||
这样运行后,SSH 断开不会影响进程(由 systemd 托管)。如果你的 agent.config.json 里有相对路径(如 models 目录),记得写成绝对路径,或放到
|
||
/opt/rk3588-agent/ 并按配置调整。
|
||
|
||
## 后端启动命令
|
||
|
||
go run .\cmd\managerd\main.go .\managerd.json
|
||
|
||
##查看npu占用
|
||
sudo watch -n 1 cat /sys/kernel/debug/rknpu/load
|
||
|
||
|
||
|
||
|
||
.\minio.exe server E:\minio\data --address ":9000" --console-address ":9001"
|
||
|
||
|
||
### 转onnx
|
||
python scripts/pt2rknn_yolov8.py pt2onnx --pt yolov8n.pt --imgsz 640
|
||
|
||
|
||
### 转rknn
|
||
python scripts/pt2rknn_yolov8.py onnx2rknn --onnx yolov8n.onnx --out models/object_det_yolov8n_coco_640_rk3588.rknn --imgsz 640
|
||
|
||
|