导读:本期聚焦于小伙伴创作的《如何用宝塔面板快速搭建UAV与AR人工智能应用服务器?》,敬请观看详情。把无人机与地面站之间的低延迟视频流和增强现实渲染放到同一台服务器上,常会碰到环境依赖乱、端口冲突和GPU驱动难装的问题。宝塔面板用可视化的软件商店和计划任务,能帮我们把Python推理环境、Node服务以及反向代理一次配齐。本文以Ubuntu系统为例,说明怎样在宝塔中安装CUDA驱动、部署YOLO目标识别接口,并用WebSocket把UAV图传推给前端的AR叠加层。照着做,原本两天的联调工作可以压缩到半天内完成,且后续升级只需在面板点几下。

在无人机与增强现实融合的项目里,后端既要处理UAV传回的实时视频,又要跑目标检测模型,还要给前端AR页面提供叠加数据。借助宝塔面板,我们可以用图形界面完成大部分运维操作,不必死记Linux命令。

如何用宝塔面板快速搭建UAV与AR人工智能应用服务器?

一、系统准备与面板安装

先准备一台带独立显卡的Ubuntu 20.04服务器,确保能连通外网。UAV和AR应用对延迟敏感,建议选用本地机房机器而非跨地域云主机。登录SSH后,用官方脚本安装宝塔面板,过程基本是自动化的。

安装完成后,面板会给出后台地址、用户名和密码。进入面板 first time 时,会提示安装LNMP或LAMP套件。对于人工智能应用,我们其实不需要完整Web套件,但可以顺手装Nginx做反向代理,MySQL按需安装。Python环境我们后面用软件商店里的版本管理器单独处理。

# 安装宝塔面板
wget -O install.sh http://download.bt.cn/install/install_6.0.sh
sudo bash install.sh
# 安装后记得放行8888端口
sudo ufw allow 8888

二、配置GPU与Python推理环境

UAV视频流的目标识别通常依赖深度学习框架,比如PyTorch或TensorFlow,这些库需要CUDA支持。在宝塔的软件商店中搜索“Python”,安装多版本管理器,再新建一个Python 3.9环境。不要直接用系统自带Python,避免包冲突。

接着通过SSH手动安装NVIDIA驱动与CUDA工具包,因为面板暂时不提供一键GPU驱动。装好后,在Python环境里用pip安装torch、opencv-python。下面是一段调用YOLO做UAV画面检测的简化代码,注意图像数据来自无人机推流地址。

import cv2
import torch

# 加载本地训练好的无人机目标模型
model = torch.hub.load('ultralytics/yolov5', 'custom', path='uav_model.pt')
cap = cv2.VideoCapture('udp://127.0.0.1:5000')

while True:
    ret, frame = cap.read()
    if not ret:
        break
    results = model(frame)
    # 将检测结果发给AR前端
    print(results.pandas().xyxy[0])
    cv2.imshow('uav', results.render()[0])
    if cv2.waitKey(1) == 27:
        break

这种方式的优势是环境隔离清晰,宝塔的进程管理器能直接看Python占用。缺点是CUDA装错版本会黑屏,所以驱动和运行时版本要严格对照官网表。

三、部署AR前端与WebSocket服务

AR部分一般用Web前端展示,通过WebSocket接收UAV检测框坐标,再把虚拟物体叠到视频上。我们在宝塔里新建一个Node项目,用pm2守护进程。Nginx反向代理到Node端口,对外只暴露443。

下面代码演示Node如何用WebSocket把后端识别结果广播给AR页面。前端拿到数据后,用three.js贴三维模型。这样UAV飞到哪里,AR眼镜里就能看到标注和指引。

const WebSocket = require('ws');
const wss = new WebSocket.Server({ port: 8081 });

wss.on('connection', function connection(ws) {
  // 假设Python端通过TCP把结果发到本机6000,这里做中转
  const client = require('net').connect(6000, '127.0.0.1');
  client.on('data', function (data) {
    ws.send(data.toString());
  });
});

用宝塔的防火墙功能,只开80、443和SSH,其余端口全关。比起手工改iptables,面板操作更不容易误删规则。若AR用户增多,可在面板里一键装Redis做结果缓存,降低Python重复计算。

四、常见坑与维护建议

第一个坑是UAV图传协议用UDP,但宝塔默认不显示UDP连接,排查时要用命令行netstat。第二个坑是Python环境升级后,pm2启动的Node服务若写死旧路径会报错,建议在面板里把启动命令写成绝对路径。

日常维护时,利用宝塔的计划任务每天备份模型文件和Nginx配置。遇到显存爆满,面板资源监控能快速定位是哪个进程。总体来说,宝塔降低了人工智能服务器入门门槛,让我们把精力放在UAV与AR的算法联调上。

组件宝塔内处理方式注意事项
Python环境软件商店多版本管理勿用系统Python
Nginx套件或单独安装反代WebSocket需加配置
GPU驱动SSH手动装版本匹配CUDA

按照上述步骤,一台支撑UAV视频识别和AR叠加的服务器就配置完毕了。后续扩展更多无人机接入,只需复制Python环境并改端口,面板里点几下即可完成。

宝塔面板UAVAR修改时间:2026-08-06 16:00:38

免责声明:​ 已尽一切努力确保本网站所含信息的准确性。网站内容多为原创整理与精心编撰,观点力求客观中立。本站旨在免费分享,内容仅供个人学习、研究或参考使用。若引用了第三方作品,版权归原作者所有。如内容涉及您的权益,请联系我们处理。
内容垂直聚焦
专注技术核心技术栏目,确保每篇文章深度聚焦于实用技能。从代码技巧到架构设计,为用户提供无干扰的纯技术知识沉淀,精准满足专业提升需求。
知识结构清晰
覆盖从开发到部署的全链路。AI、前端、编程、数据库、服务器、建站、系统层层递进,构建清晰学习路径,帮助用户系统化掌握开发与运维所需的核心技术。
深度技术解析
拒绝泛泛而谈,深入技术细节与实践难点。无论是数据库优化还是服务器配置,均结合真实场景与代码示例进行剖析,致力于提供可直接应用于工作的解决方案。
专业领域覆盖
精准对应开发生命周期。从前端界面到后端编程,从数据库操作到服务器运维,形成完整闭环,一站式满足全栈工程师和运维人员的技术需求。
即学即用高效
内容强调实操性,步骤清晰、代码完整。用户可根据教程直接复现和应用于自身项目,显著缩短从学习到实践的距离,快速解决开发中的具体问题。
持续更新保障
专注既定技术方向进行长期、稳定的内容输出。确保各栏目技术文章持续更新迭代,紧跟主流技术发展趋势,为用户提供经久不衰的学习价值。