8路AHD摄像头同时输出演示,万象奥科RK3576 AHD硬件方案
8路AHD摄像头同时输出演示,万象奥科RK3576 AHD硬件方案

什么是AHD?
AHD(Analog High Definition)即模拟高清技术,是一种通过同轴线缆传输高清视频信号的视频技术。与传统模拟监控相比,AHD能够提供更加清晰的画面,同时保留模拟视频布线简单、传输稳定、延迟低和成本较低等优势。
AHD摄像头通常需要搭配视频解码芯片使用,将模拟视频信号转换成主控平台能够处理的数字图像,再进行画面显示、录像存储、网络传输或AI分析。AHD还可以在一定程度上利用原有同轴线缆,降低旧监控系统升级改造的难度。
凭借安装方便、实时性好和适应性强等特点,AHD广泛应用于车载监控、工程机械、农机矿卡、工业设备、园区安防及多路视频监控等场景。
应用场景
RK3576核心板采用八核CPU架构,集成6TOPS NPU,具备较强的图像处理、视频编解码和AI推理能力。核心板可扩展千兆网、USB、PCIe、CAN、UART及显示接口,能够满足多路视频接入、画面显示、录像存储、网络传输和智能识别等需求。
RK3576与AHD结合,可应用于公交车、校车和物流车的车载监控,以及挖掘机、矿卡、农机和环卫车辆的环视与盲区监控。该方案也适用于工厂、仓库、园区、机器人和无人车等场景,可进一步实现录像存储、远程监控、人员检测、车辆识别、障碍物识别和危险区域告警等功能。

AHD软硬件方案框架
硬件框架
万象奥科RK3576 AHD视频方案按照信号传输流程,可划分为图像采集、信号转换、视频处理和画面输出四个部分:
(1)图像采集部分配置8路1080P AHD摄像头,分别采集不同方向或不同区域的视频画面,为多角度监控提供图像来源。
(2)信号转换部分采用两块4路AHD转MIPI板。每块转接板接入4路摄像头,将AHD模拟视频解码为MIPI CSI数字视频数据。
(3)视频处理部分采用万象奥科RK3576核心板、开发板。两组视频分别通过MIPI CSI-1和MIPI CSI-2输入,由RK3576完成图像接收、缩放、分析及多画面合成。
(4)画面输出部分采用HDMI接口连接显示器,将8路摄像头画面进行2×4分屏实时显示,并可根据项目需求增加录像、AI识别和网络传输功能。

软件架构
RK3576八路AHD摄像头软件采用分层架构设计,主要分为硬件层、驱动层、框架层和应用层:
(1)硬件层包括AHD摄像头、AHD转MIPI转接板、RK3576平台和显示设备,负责视频采集、信号转换与画面输出。
(2)驱动层负责摄像头设备识别、MIPI视频接收和显示接口控制,为上层软件提供统一的视频设备访问能力。
(3)框架层负责多路视频的采集、格式转换、画面缩放、布局合成及显示输出,是整个软件系统的视频处理核心。
(4)应用层负责设备管理、显示区域选择和多画面控制,实现8路摄像头实时预览、九宫格显示及日期时间展示。

测试方法
- 安装运行依赖
sudo apt update
sudo apt install -y \
python3-gi python3-gi-cairo \
gir1.2-gtk-3.0 \
gir1.2-gstreamer-1.0 \
gir1.2-gst-plugins-base-1.0 \
gstreamer1.0-tools \
gstreamer1.0-plugins-base \
gstreamer1.0-plugins-good \
gstreamer1.0-x \
v4l-utils
- 检查8路视频设备,脚本默认使用以下设备节点:
ls -l \
/dev/video0 /dev/video1 /dev/video2 /dev/video3 \
/dev/video11 /dev/video12 /dev/video13 /dev/video14
- 查看某一路摄像头支持的视频格式:
v4l2-ctl -d /dev/video0 --list-formats-ext
- 确认设备能够正常采集:
v4l2-ctl -d /dev/video0 \
--set-fmt-video=width=1920,height=1080,pixelformat=UYVY \
--set-parm=25 \
--stream-mmap=4 \
--stream-count=100
- 检查HDMI显示状态
xrandr --query
确认HDMI接口处于 connected 状态,并记录实际输出名称,例如 HDMI-1 或 HDMI-A-1。
单路画面预览命令
测试 /dev/video0 是否能够正常显示:
gst-launch-1.0 -v \
v4l2src device=/dev/video0 io-mode=mmap do-timestamp=true \
! video/x-raw,format=UYVY,width=1920,height=1080,framerate=25/1 \
! queue max-size-buffers=1 leaky=downstream \
! videoconvert \
! videoscale \
! ximagesink sync=false
需要测试其他通道时,将 /dev/video0 替换为对应的视频设备节点。
8路画面预览命令
脚本使用默认设备节点并自动选择HDMI显示器:
python3 tp2817_wall.py
手动指定8路视频设备:
python3 tp2817_wall.py \
--devices \
/dev/video0 /dev/video1 /dev/video2 /dev/video3 \
/dev/video11 /dev/video12 /dev/video13 /dev/video14
指定HDMI输出接口:
python3 tp2817_wall.py --output HDMI-1
指定设备和HDMI输出:
python3 tp2817_wall.py \
--devices \
/dev/video0 /dev/video1 /dev/video2 /dev/video3 \
/dev/video11 /dev/video12 /dev/video13 /dev/video14 \
--output HDMI-1
窗口模式测试:
python3 tp2817_wall.py --windowed
查看脚本生成的完整GStreamer管道:
python3 tp2817_wall.py --print-pipeline
下期将为大家展示多路AHD摄像头的预览延迟数据,请持续关注万象奥科!
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐

所有评论(0)