Image Convert Tool
Image Convert Tool 是一款图片转换工具。他能够将多种常见格式的图片文件(如 PNG、JPG、BMP 等)转换为目标格式的 RGB 原始数据。此外,该工具还提供数据压缩功能,可以根据用户设置对转换后的原始数据进行压缩处理。这一过程实现了从多种图片格式到压缩 RGB 数据的灵活转换。
界面说明
图片转换工具界面如下:
图片转换工具界面
导入图片按键:点击该按键可导入所选文件夹及其子文件夹中所有 PNG、JPG 和 BMP 格式的图片。
转换按键:在导入文件并修改转换设置后,点击此按键开始图片转换过程。
图片列表面板:显示所有已导入的文件夹和图片。
所选图片预览:显示当前选中的图片。
转换设置面板:显示所选图片的转换参数。
设置 按键:点击以展开设置选项,包括:UI 主题切换、图片转换设置及工具信息显示。
UI 风格切换:在明亮风格和黑暗风格之间切换。有些图片在黑暗风格下可能显示更清晰的细节。
图片转换设置:点击进入图片转换参数配置页面。
图片转换步骤
图片转换步骤如下:
图片转换步骤
打开图片文件夹,会导入文件夹及子文件夹内部的 PNG、JPG、BMP 图片
-
点击 Setting 按键,进入图片转换设置页面
图片转换默认设置
Image Convert Tool 提供一份默认设置,对于未设置转换参数的图片,将按照 default 参数进行转换,default 参数不可删除。
可以按图片后缀对图片添加转换参数,Image Convert Tool 会按图片后缀对应的转换参数对图片进行转换。
以 PNG 图片为例,转换参数的添加步骤如图所示:
添加转换设置
选择转换图片类型,可以为 bmp、jpg、png。
点击 Add 按键,此时会添加 PNG 图片对应的转换参数。
如果想删除转换参数,可以点击 Delete 按键进行删除。
各转换参数的含义,参考下表:
参数名称
说明
Compress
是否进行压缩。
Adaptive
勾选后,会自动进行 RLE 或者 Fastlz 的压缩,并保留压缩率更高的结果。勾选后将不能手动配置压缩参数。
Compress Mode
RLE
RLE Level
1:RLE 1 阶压缩。
2:RLE 2 阶压缩。
RLE Run Length1
1 阶 RLE 压缩算法 Run Length。
RLE Run Length2
2 阶 RLE 压缩算法 Run Length,RLE Level 为 2 阶时生效。
FastLz
YUV_Sample_Blur
YUV_Sample_Blur+FastLz
Sample Mode
YUV 降采样算法,支持:YUV444、YUV422、YUV411。
Blur Mode
每个 Byte 丢弃的 bit 位数,从最低位开始,支持:0 bit、1 bit、2 bit、4 bit。
Resize
是否缩小图片,支持:按 50% 缩小、按 70% 缩小、按 80% 缩小。缩小后 SoC 会对图片进行恢复,勾选会降低图片质量。
Lower Width
大于 Lower Width 的图片会被 Resize。
Lower Height
大于 Lower Height 的图片会被 Resize。
Mix Alpha Channel
RGBA 转换为 RGB、RGB565 时,是否需要混合 A(透明度)通道。
勾选后,R = R * A /255,G = G * A /255,B = B * A /255;否则 A 通道的值会被丢弃。
Scan Mode
Horizontal
图片按行扫描。
Vertical
图片按列扫描。
Color Space
图片转换使用的颜色空间,包括:RGB565、RTKARGB、RTKRGAB、RGB、RGBA、BINARY、RTKARGB8565。
备注
RLE、FastLZ 压缩算法对具有大量连续重复像素值的图像具有很好的效果;对于由复杂纹理构成或者噪声很多的图像压缩效率相对较差,有些图片压缩后甚至会比原来的图像更大。
还有一些全局参数设置,如下图所示:
全局参数设置
-
IC 选择:
默认是 Default
还可以选 RTL8773E 或者 RTL8773G
Color Head:图片转换后是否需要添加头部信息,默认勾选,Realtek SoC 需要这些头部信息进行图片的解析与显示
-
Big Endian:导出的 RGB 原始数据在内存中的排布顺序
不勾选:内存由低字节 -> 高字节按照 B -> G -> R -> A 解析
勾选:按照 A -> R -> G -> B 解析
Bin Path:输出文件夹路径,为空时,转换后的文件会生成到导入文件夹下
Base Address:图片写入 Flash 中的基地址
Prefix of Image Macro:图片宏定义前缀
Suffix of Image Macro:图片宏定义后缀
-
是否对图片名称就行转换,可以点击 ? 对
.h文件进行预览,如下图所示:No Convert:不转换
ToUpperCase:转换为大写
ToLowerCase:转换为小写
.h 文件预览
进行图片转换,会按照转换参数执行转换操作,并在转换结束后打开结果文件夹。
输出文件
转换后,将生成以下文件:
输出文件
resource文件夹,存放转换后图片的 bin 文件detail.xlsx,保存转换信息,包括:图片名称、压缩算法、原始图片大小、转换后图片大小、压缩率等image.bin,所有转换后的 bin 文件按 64 Byte 对齐进行拼接wristband_pic_res.h,宏定义文件,描述所有 bin 在 flash 中存放的地址
Bin 文件结构
单个 bin 文件的结构如下图所示:
Bin 文件结构
Color Header 说明如下表所示:
参数名称 |
参数说明 |
|---|---|
Scan |
扫描方式,0:水平方向;1:竖直方向 |
Align |
是否对齐,0:不对齐;1:16像素对齐 |
Resize flag |
行、列缩放比例,0:不缩放;1:缩放到50%;2:缩放到70%;3:缩放到80% |
Compress |
是否压缩,0:不压缩;1:压缩 |
RSVD |
预留 |
Color Space |
图片转换时使用的颜色空间对应值,参考 颜色空间说明 |
Width |
原图片宽度 |
Height |
原图片高度 |
Version |
Color Header 版本 |
RSVD |
预留 |
Color Space 对应的值如下表所示:
颜色空间名称 |
值 |
说明 |
|---|---|---|
RGB565 |
0 |
16位RGB模式,位 4-0 代表蓝色Blue;位 10-5 代表绿色Green;位 15-11 代表红色Red |
ARGB8565 |
1 |
24位ARGB模式,位 4-0 代表蓝色Blue;位 9-5 代表绿色Green;位 14-10 代表红色Red;位 23-15 代表透明度Alpha |
RGB |
3 |
24位RGB模式,位 7-0 代表蓝色Blue;位 15-8 代表绿色Green;位 23-16 代表红色Red |
ARGB |
4 |
32位RGBA模式,位 7-0 代表蓝色Blue;位 15-8 代表绿色Green;位 23-16 代表红色Red;位 31-24 代表透明度Alpha |
BINARY |
5 |
灰度图,每个像素由 8 bit 表示 |
RTKARGB8565 |
15 |
RTK 自定义 24 位 ARGB 模式,A 占 1 Byte,RGB565 共同占 2Byte,先按序存储所有的 A,后按序存储所有的 RGB565 |
Compress Header 说明如下:
参数名称 |
参数说明 |
|---|---|
Algothrim |
压缩算法,0:RLE;1:FastLz;2:YUV_Sample + FastLz;3:YUV_Sample |
Feature1 |
1 阶 RLE 压缩算法 Run Length |
Feature2 |
2 阶 RLE 压缩算法 Run Length |
Pixel Bytes |
每个像素占用的字节数,0:2 字节;1:3 字节;2:4 字节;3:1 字节 |