3.16. Sunrise camera 用户使用说明

3.16.1. 功能说明

Sunrise camera 是官方开发应用程序,方便用户对 Camera、 VIO、 Codec、 BPU 等模块快速评测。用户通过 PC 上的 Web 浏览器,可以方便程序进行参数配置,并实时预览视频流、算法渲染结果信息。程序主要功能如下:

  • 支持智能摄像头功能模式

    • 最大支持接入 4 路 Camera Sensor

    • 支持浏览器中,通过图形界面方式控制 ISP 的参数

  • 支持智能多路解码分析功能模式

    • 编解码能力:最大支持 8 路 1080p@30 视频码流编码解码

    • 盒子模式解码视频文件编码传输的,所以盒子模式最大支持 4 路 1080p@30

  • 支持通过 PC 浏览器程序进行参数配置,例如 Camera sensor、编码码率、算法模型、视频参数

  • 支持通过 PC 浏览器、 VLC 拉流、 HDMI 输出多种方式预览图像效果

  • 算法多种模型切换,例如 mobilenet_v2 、 yolov5s、 fcos 等

3.16.2. 硬件环境准备

  • 运行 Sunrise camera 前,需要准备如下配件:

    • 开发板配套摄像头,如 SC230AI、 SC132GS、 F37 等

    • 网线一条,保证 PC 和开发板能够 ping 通

    • Micro USB 线一条 ( 无网口时 ),开发板通过 USB 虚拟网口跟 PC 通讯

整体连接方式下图:

image-20220328223942514

开发板连接 Camera sensor方法查阅 摄像头 (MIPI CSI) 接口 章节。

3.16.2.1. 网络连接要求

保证 4K 编码推流时稳定性,建议开发板与 PC 机使用千兆网口直连。

3.16.3. 部署 Sunrise camera

Sunrise camera 软件部署命名为 sunrise_camera_vxxx.tar.gz(生成部署方式见:编译方法),预编译部署存放在 sample 目录下。建议解压/app 目录下:

tar -xvf sunrise_camera_v3.1.0.tar.gz  -C /app/

解压生成文件包括: sunrise_camera 主程序目录、 WebServer 目录( httpd 服务程序网页目录)、 start_app.sh 启动脚本,详细目录结构说明如下:

.
├── start_app.sh 		    # 启动脚本,按顺序启动 web 服务、主程序
├── sunrise_camera
│   ├── bin				    # 主程序   ├── include			    # 通用头文件(备用)   ├── lib				    # 编译生成的静态库(备用)   ├── model_zoom			# 应用中用到的算法模型   └── test_data			# 应用默认配置文件和测试文件
└── WebServer
    ├── fcgi				# fcgi 程序(备用)
    ├── sc_lighttpd			# httpd 和 web 页面
    ├── pcre				# lighttpd 依赖
    ├── README.txt			# fcgi、 lighttpd、 pcre 编译部署说明
└── start_lighttpd.sh		# web 服务启动脚本

3.16.3.1. 程序启动方式

手动启动:

部署 Sunrise camera 后(以部署在 /app 目录下为例),登录开发板后,进入 /app 目录,执行 sh ./start_app.sh 启动。

上电自启动:

部署 Sunrise camera 后(以部署在 /app 目录下为例),登录开发板后,进入 /app 目录,修改 start_app.shstartup.sh, 即完成自动启动配置,可以重启设备检查结果。

cd /app
cp start_app.sh startup.sh
sync
reboot

3.16.4. Web 客户端使用说明

3.16.4.1. 界面

Sunrise camera 正常启动后,通过 chrome 浏览器地址栏输入 IP 地址(开发板默认 IP 为 192.168.1.10 )可以登录用户控制界面, 例如: http://192.168.1.10

image-20220307220148037

登录成功界面显示如下:

image-20220307220153876

界面菜单详细说明如下:

功能编号 说明
1 配置应用方案,点击打开应用方案选择参数配置页面
2 显示当前运行场景信息
3 显示当前应用方案主要信息,例如使用的 sensor 型号,编解码参数,算法模型
4 应用方案框图,了解当前应用方案数据流,点击放大查看大图
5 视频显示画面,根据应用方案运行视频通路自动调整显示画面数量
6 预览视频实时
7 算法运算实时

3.16.4.2. 参数配置方式

  1. Sunrise camera 支持两种应用方案:智能摄像机智能分析盒( 默认应用方案单路视频分析盒)

  2. Sunrise camera 支持通过 Web 端在线修改应用方案、选择 camera sensor 型号、设置解码、编码参数选择算法模型

智能摄像机配置方式

image-20220328224841611

具体修改步骤如下:

  1. 启动 sunrise_camera 程序,打开 chrome 浏览器输入设备的 IP 地址,例如: http://192.168.1.10

  2. 点击 配置应用方案 按钮,上1 标号

  3. 可以查看当前设备信息,包括芯片类型,软件版本, rtsp 码流链接(该链接支持在 vlc 软件上拉 rtsp 视频码流,可以支持录像、截图操作),上2 标号

  4. 选中应用方案,上3 标号,每种应用方案参数设置注意事项,请点击 问号 按钮了解。

  5. 点击 提交 按钮,立刻实现应用方案切换。(注:仅点击提交不会修改开发板配置文件,可以用来临时修改参数进行调试)

  6. 点击 保存当前配置 按钮设置配置写入开发板配置文件,下次重新启动 sunrise_camera 时会按照当前配置启动。

  7. 点击 恢复默认配置,会重新用户配置,还原单路视频分析盒配置。

注意:

  1. Camera 接口电路板的 CSI 接口一一对应,只有实际接入硬件电路并且适配的 Camera 时才使能 Camera 接口显示

  2. 如果点击保存当前配置 按钮,但是再次上电时更换摄像头,那么插入摄像头默认是非使能状态

智能分析配置方式

image-20220307220126767

具体修改步骤如下:

  1. 启动 sunrise_camera 程序,打开 chrome 浏览器输入设备的 IP 地址,例如: http://192.168.1.10

  2. 点击 配置应用方案 按钮,上1 标号

  3. 可以查看当前设备信息,包括芯片类型,软件版本, rtsp 码流链接(该链接支持在 vlc 软件上拉 rtsp 视频码流,可以支持录像、截图操作),上2 标号

  4. 选中应用方案,上3 标号,每种应用方案参数设置注意事项,请点击 问号 按钮了解。

  5. 点击 提交 按钮,立刻实现应用方案切换。(注:仅点击提交不会修改开发板配置文件,可以用来临时修改参数进行调试)

  6. 点击 保存当前配置 按钮设置配置写入开发板配置文件,下次重新启动 sunrise_camera 时会按照当前配置启动。

  7. 点击 恢复默认配置,会重新用户配置,还原单路视频分析盒配置。

3.16.5. 智能摄像机配置

智能摄像机方案实现了 Camera sensor 图像采集、处理、编码、 rtsp 推流智能计算功能,可以帮助用户快速体验多媒体图像算法效果,方案功能框图如下:

image-20220328224841610

智能摄像机方案提供以下功能:

  • 实时视频监控

  • 运行指定算法

  • 当有多颗 Camera Sensor 接入时,支持开启多路视频预览

  • 支持通过浏览器动态调节 ISP 参数

3.16.5.1. 参数说明

智能摄像机方案具有以下可调参数:

  • 使能 Camera 接口:显示已经实际接入摄像头的 CSI 接口列表,并且可以根据需要使能不同接口

  • Sensor 型号:程序探测接入设备可以使用的 Camera Sensor 型号,根据需要进行配置

  • 编码类型:控制视频编码格式,支持 H264\H265\Mjpeg, 根据硬件能力、软件支持情况有所不同

  • 编码码率:控制视频编码码率,以下不同分辨率视频参考码率

    • 标清视频 (480p): 256, 512, 768, 1024, 1536, 2048

    • 高清视频 (720p): 512, 1024, 2048, 3072, 4096, 6144

    • 全高清视频 (1080p): 1024, 2048, 4096, 6144, 8192, 12288

    • 2K 视频 : 2048, 4096, 8192, 12288, 16384, 24576

    • 4K 视频 : 4096, 8192, 16384, 24576, 32768, 49152

  • 算法模型:选择运行算法模型

3.16.5.2. ISP 参数动态调节

功能描述

ISP 参数动态调节功能,可以动态控制图像质量,支持两种模式

  • 自动模式

    • 自动模式下,ISP 内部自动调整图像质量,此时可以拖拽滑动控制 ISP 参数

    • 浏览器页面间隔 1 秒实时刷新各个参数当前

  • 手动模式

    • 手动模式,ISP 内部不再自动调整图像质量,此时可以拖拽滑动控制 ISP 参数

使用方法

  • 左侧:进入 ISP 参数动态调整页面

  • 右侧:ISP参数调节方法,图中标注解释如下:

    • 标注1:当前模式自动模式,可以切换手动模式

    • 标注2:当前模式手动模式,并且可以通过滑动配置参数

    • 标注3:当前参数值

    • 标注4:返回页面

image_quality_control

使用智能摄像机方案时,请注意以下事项:

  • 确保 Camera Sensor 与开发板连接稳定

  • 根据需要调整编码码率平衡视频质量网络带宽

3.16.6. 智能分析配置

智能盒子方案实现单路、四路 1080p 视频解码、拼接、编码、 rtsp 推流智能计算功能,用户通过 Web 端、 HDMI 或者拉流方式预览效果。方案功能框图如下:

image-20220328225226472

智能分析方案提供以下功能:

  • 解码码流运行算法重新编码推流

    • 支持读取开发板本地视频码流文件

    • 支持使用 RTSP 码流

    • 支持解码视频文件进行缩放编码

    • 支持控制码率

  • 运行指定算法

3.16.6.1. 参数说明

智能分析方案具有以下可调参数:

  • 视频通道数:选择启用多少视频分析通道

    • 启用通道能力解码编码合计不能超过 4K@60fps (硬件限制)

    • 设备默认分配编解码、算法的 ION 内存为 1408MB ,如果启用路数过多,有可能出现内存不足问题,请参考 ION 系统调试指南 调整 ION 内存大小

  • 视频数据流( stream ): 支持读取开发板本地视频码流文件和 RTSP 码流

  • 解码类型( decode_type ):控制视频解码格式,支持 H264\H265\Mjpeg

  • 解码宽度( decode_width ):控制视频解码宽度

  • 解码高度( decode_height ):控制视频解码高度

  • 解码率( decode_frame_rate ):控制视频解码

  • 编码类型( encode_type ):控制视频编码格式,支持 H264\H265\Mjpeg

  • 编码宽度( encode_width ):控制视频编码宽度

  • 编码高度( encode_height ):控制视频编码高度

  • 编码率( encode_frame_rate ):控制视频编码

  • 编码码率( encode_bitrate ):控制视频编码码率,以下不同分辨率视频参考码率

    • 标清视频( 480p ): 256, 512, 768, 1024, 1536, 2048

    • 高清视频( 720p ): 512, 1024, 2048, 3072, 4096, 6144

    • 全高清视频( 1080p ): 1024, 2048, 4096, 6144, 8192, 12288

    • 2K 视频 : 2048, 4096, 8192, 12288, 16384, 24576

    • 4K 视频 : 4096, 8192, 16384, 24576, 32768, 49152

  • 算法模型( model ):选择运行算法模型

3.16.6.2. 注意事项

使用智能分析方案时,请注意以下事项:

  • 确保网络连接稳定,网络带宽满足数据传输要求

  • 根据需要调整分析通道分析算法满足应用需求

  • 启用通道能力解码编码合计不能超过 4K@60fps (硬件限制)

  • 设备默认分配编解码、算法的 ION 内存为 1GB,如果启用路数过多,有可能出现内存不足问题,需要调大 ION

3.16.7. 使用 VLC 播放器播放 RTSP 码流

Sunrise camera 程序运行时会同步推送 rtsp 视频码流,用户可以通过 vlc 播放器播放 RTSP 码流,实现画面预览、录像、截图功能。

3.16.7.1. 播放方法

打开 vlc 播放器,选择 媒体 菜单,然后选择 打开网络串流 选项。

打开媒体 对话框填入 url 地址,点击 播放 按钮即可开始播放,如下图:

image-20220328225311750

rtsp 的码流网络 URL 链接,可以在 web 的设备信息查看,默认支持码流链接为: rtsp://192.168.1.10/stream_chn0.h264

3.16.7.2. 4K@30fps 拉流配置说明

1 、 4K@30fps 并且配置码率( 8192Kbps 以上)的情况下,为了保证视频播放流畅帧,建议使用千兆网络,否则容易出现视频马赛克花屏情况。

2 、 vlc buffer_size 设置, vlc 接收 buffer 修改:默认是 250000 ,建议到 1200000 。

image-20220328225330413

3 、使用 http 模式,可以有效解决播放导致花屏。

image-20220328225347010

4 、高级设置里面禁用时钟同步

image-20220328225402005