如今,智能家居和商业场所对视频监控的需求日益增加,而传统监控系统无法满足现代用户对实时告警、智能分析的需求。今天我们为大家推荐一款开源AI 监控系统项目——思通数科「AI 视频卫士」。它不仅支持对接 ONVIF 协议的摄像头和 RTSP 网络摄像头,还集成了多种 AI 模型,可以直接在 NAS 本地实现视频流的智能分析。以下将介绍该项目的强大功能、安装流程以及如何实现智能告警。

项目简介

AI 视频卫士是一个多功能的 AI 视频监控系统,支持多种设备的接入,如无人机、行车记录仪、监控摄像头、电脑摄像头等。其强大之处在于能够通过内置的 AI 模型,对视频流进行实时分析,并提供告警通知。项目内置了 20 种免费模型,覆盖从人员安全识别到特殊行为检测的多种场景,如安全帽识别、口罩检测、睡觉监控等。此外,商用版还支持低代码算法平台,用户可以通过模型训练快速适配自定义的监控需求。

项目特色

  1. 实时监控功能:系统可以实时显示当前摄像头的画面,支持分组、切换视角,以及动态的预警数据展示。
  2. 监测任务管理:支持创建和管理多个监测任务,每个任务可以设定优先级和监控参数,用户可自定义任务状态并管理任务详情。
  3. 事件告警功能:系统会记录并展示最新的报警信息,支持事件分类与详情查看。
  4. 算法管理:可以在算法商城中下载算法模型,系统支持本地和在线导入,也可随时更新、停用算法。
  5. 视频检索:自动标记视频帧中的物体和内容,可按关键词、摄像头或时间快速检索视频。
  6. 模型训练(商用版):提供低代码模型训练平台,可基于自定义样本进行标注、迭代训练,并应用于生产系统。
  7. 多设备接入:支持多协议摄像头接入,提供分组管理功能,方便设备的统一管理。

安装步骤

项目部署相对简单。我们需要准备 6 个容器镜像redisrabbitmqmysqlminioelasticsearch 以及 ai_video 镜像。镜像总大小接近 10GB。作者贴心地提供了多个镜像的本地包,方便下载。

下载所需镜像

  1. 五个镜像文件:通过百度网盘下载,提取码:kglr
  2. AI 视频镜像:通过以下命令下载,并起别名为 ai_video

    docker pull crpi-q4f4vwdmprv5egrk.cn-hangzhou.personal.cr.aliyuncs.com/yssanyue/ai_video:v1.4
    docker tag crpi-q4f4vwdmprv5egrk.cn-hangzhou.personal.cr.aliyuncs.com/yssanyue/ai_video:v1.4 ai_video:v1.4

部署文件准备

下载并解压所需的配置文件 Gitee 并提取以下文件:

  • nginx.conf
  • application.yml
  • config.yaml

将这些文件放入 NAS 中的 /volume1/docker/aivideo/config/ 目录下。

Docker Compose 配置

创建以下 docker-compose.yml 文件,并将路径和端口根据 NAS 配置进行调整:

services:
  mysql:
    container_name: mysql
    image: mysql:8.0.38
    ports:
      - "3307:3306"
    environment:
      MYSQL_ROOT_PASSWORD: config5566
      MYSQL_DATABASE: yys_aivideo
      MYSQL_USER: user
      MYSQL_PASSWORD: config5566
    volumes:
      - /volume1/docker/aivideo/mysql-data:/var/lib/mysql
    networks:
      - videonetworks

  redis:
    container_name: redis
    image: redis:7.2
    ports:
      - "6381:6379"
    volumes:
      - /volume1/docker/aivideo/redis-data:/data
    networks:
      - videonetworks

  es:
    container_name: es
    image: elasticsearch:8.14.3
    environment:
      - cluster.name=docker-cluster
      - discovery.type=single-node
    ports:
      - "9222:9200"
      - "9333:9300"
    networks:
      - videonetworks

  minio:
    container_name: minio
    image: minio/minio:latest
    ports:
      - "9005:9000"
    environment:
      MINIO_ACCESS_KEY: admin
      MINIO_SECRET_KEY: admin123
    volumes:
      - /volume1/docker/aivideo/minio-data:/data
    networks:
      - videonetworks

  rabbitmq:
    container_name: rabbitmq
    image: rabbitmq:4.0
    ports:
      - "15673:15672"
      - "5673:5672"
    environment:
      RABBITMQ_DEFAULT_USER: admin
      RABBITMQ_DEFAULT_PASS: admin123
    networks:
      - videonetworks

  app:
    container_name: app
    image: ai_video:v1.4
    ports:
      - "35310:35300"
    volumes:
      - /volume1/docker/aivideo/config/nginx.conf:/etc/nginx/nginx.conf
      - /volume1/docker/aivideo/config/application.yml:/opt/aivideo/java-service/application.yml
      - /volume1/docker/aivideo/config/config.yaml:/opt/aivideo/python-service/config/config.yaml
    networks:
      - videonetworks
    depends_on:
      - mysql
      - redis
      - es
      - minio
      - rabbitmq

networks:
  videonetworks:
    driver: bridge

启动项目

如果 NAS 支持 Docker Compose 堆栈,可直接加载该 yml 文件启动。否则可通过 SSH 登录 NAS 后执行以下命令启动:

docker-compose up -d

使用体验

项目启动后,可以通过 http://NASip:35310/vis/ 访问 AI 视频卫士的主界面。系统初始账号为 admin,密码为 Stonedt,123

  1. 视频接入:支持 onvif 协议和 RTSP 流的摄像头接入。输入摄像头地址进行测试并提交,即可完成接入。
  2. 检测任务设置:可以自定义监控任务,指定优先级、监控点位和监控模型(最多可选择三个),并支持设置实时监控。
  3. AI 负载:每个监控模型都会增加 NAS 的计算负荷,建议根据 NAS 性能合理配置模型数量。

结语

AI 视频卫士为智能监控和告警提供了一种新的可能。开源版本的丰富模型基本能够满足日常监控需求,而更高阶的定制功能则适合商业场景。无论是家用还是商用,这款工具都能为视频监控增添更多智能化体验。

END
cc
最后修改:2024 年 11 月 06 日
如果觉得我的文章对你有用,请随意赞赏