pyramid
功能介绍
实现图像金字塔缩放功能,暂时只支持NV12格式。
支持平台
平台 | 运行方式 | 示例功能 |
---|---|---|
旭日X3派 | Ubuntu 20.04 | 读取图片,进行金字塔缩放 |
准备工作
旭日X3派
旭日X3派已烧录好地平线提供的Ubuntu 20.04系统镜像。
旭日X3派已成功安装TogetheROS.Bot。
使用介绍
旭日X3派
# 配置tros.b环境
source /opt/tros/setup.bash
# 从tros.b的安装路径中拷贝出运行示例需要的模型和配置文件。
cp -r /opt/tros/lib/hobot_cv/config/ .
# 启动launch文件
ros2 launch hobot_cv hobot_cv_pyramid.launch.py
结果分析
[INFO] [launch]: Default logging verbosity is set to INFO
[INFO] [pyramid_example-1]: process started with pid [3071]
[pyramid_example-1] [INFO] [1655951639.110992960] [example]: pyramid image , time cost: 299 ms
[pyramid_example-1]
[pyramid_example-1] [INFO] [1655951639.432398919] [example]: pyramid image , time cost: 19 ms
[pyramid_example-1]
[INFO] [pyramid_example-1]: process has finished cleanly [pid 3071]
根据log显示,测试程序完成了对本地1920x1080分辨率图片金字塔缩小的处理。接口调用两次,两次耗时分别如下。
图片处理 | 第一次运行耗时 | 第二次运行耗时 |
---|---|---|
1920x1080金字塔六层基础层输出 | 299ms | 19ms |
因为第一次运行,需要对vps硬件进行配置所以耗时较多,如果不再更改硬件配置属性,硬件直接进行处理,耗时就会显著降低。
本地原图1920x1080、pyramid缩放后图片如下:
输出基础层六层,每一层size是上一层的1/2
性能对比
输入图片1920x1080,向上获取5层输出获取到960x540、480x270、240x134、120x66、60x32分辨率的图片。分别对比opencv和hobotcv效率,结果如下:
cpu占用为单核百分比,耗时统计单位为ms
VPS接口耗时 | vps接口cpu占比 | opencv耗时 | opencv接口cpu占比 |
---|---|---|---|
19ms | 42.5 | 56 | 100 |