项目简介
本项目作为嵌入式系统课程的实践项目,专注于测试与优化不同实现方式的RGB到YCbCr颜色空间转换在基于Arm Cortex处理器的嵌入式系统上的性能。颜色空间转换在计算机视觉、图像处理、视频压缩等领域应用广泛,在高清视频处理和传输中,常把RGB图像转换为YCbCr格式以节省带宽和存储空间。
项目的主要特性和功能
- 支持多种颜色空间转换算法,包括浮点数运算、固定点运算、ARM NEON向量运算等。
- 拥有硬件映射功能,能在特定硬件平台上实现高效转换。
- 支持PNG图像文件的读写操作。
- 提供详细性能数据,便于根据实际需求选择合适的转换算法。
安装使用步骤
安装
假设用户已下载本项目的源码文件,使用支持C++和ARM Cortex处理器的嵌入式系统或仿真环境,利用提供的CMakeLists.txt文件进行项目编译。此项目专为Raspberry Pi 4编写。
使用
- 运行编译后的可执行文件:
./cc [option]
,该命令会对test.png
进行转换操作。 - 生成的YCbCr数据保存为
ycc-result.raw
文件。 - 若要将
ycc-result.raw
文件转换回RGB图像,可使用脚本im-test.sh
,转换后的图像为back-conv.png
。
有效选项说明
float
:浮点转换naive
:朴素顺序转换fixed
:优化的定点顺序转换vector
:ARM NEON向量化转换vector2
:ARM NEON向量化转换(组合算法)hardware
:内存映射硬件转换
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】