admin管理员组文章数量:1566222
关于 bayer 格式
bayer 是相机内部的原始图片, 一般后缀名为 raw。一般需要转换为其他格式才方便查看与存储。但不同厂商的摄像头出来的 bayer 也有一些差别,主要表现在 RGB 颜色值的排列顺序上的不同。需要注意的是,我们常说的 RGB 图片是每一个像素点都由 R、G、B 三个颜色值组成。bayer 的每一个点只有一种颜色,特别是绿色会更多一些,因为人眼对绿色更敏感。
编译与运行
下面讲解在广州创龙的 TL570x-EVM 上的交叉编译运行。如果是在 Ubuntu PC,下载源码下来直接 make 就可以编译出 bayer 程序了,十分方便。
- 项目地址:https://github/jdthomas/bayer2rgb
- 下载源码:git clone https://github/jdthomas/bayer2rgb.git
编译
- 在已安装 SDK 的 PC 初始化编译环境:source ~/am5728/ti-processor-sdk-linux-am57xx-evm-03.01.00.06/linux-devkit/environment-setup
- 编辑 Makefile,把 CC 配置为 arm 交叉编译器:CC=arm-linux-gnueabihf-gcc
- 执行编译:make
- 即可看到生成的 bayer2rgb 可执行程序,使用 file 命令可以查看其相关信息:file bayer2rgb
运行
- 把可执行程序复制到 TL570x-EVM 板卡执行查看其参数选项:./bayer2rgb -h
- 把从摄像头采集的 RAW 图片转换为方便打开的 tiff 格式:./bayer2rgb -i ./video.raw -o ./video.tiff -w 1920 -v 1080 -b 16 -f RGGB -t # 注意这里 -f 格式需要与采集时指定的格式一致。转换出来的 tiff 图片使用 Windows 自带的图片查看工具即可打开。一般来说,摄像头采集出来的 RAW 图片,由于只有纯图片数据,缺乏文件头,图片查看软件无法获知其对应格式,直接打开会提示无效图片。所以这里转换时也专门加上了 -t 参数,给图片加上 tiff 文件头信息。
参数选项
usage: ./bayer2rgb
--input,-i input file
--output,-o output file
--width,-w image width (pixels)
--height,-v image height (pixels)
--bpp,-b bits per pixel
--first,-f first pixel color: RGGB, GBRG, GRBG, BGGR
--method,-m interpolation method: NEAREST, SIMPLE, BILINEAR, HQLINEAR, DOWNSAMPLE, EDGESENSE, VNG, AHD
--tiff,-t add a tiff header
--swap,-s if bpp == 16, swap byte order before conversion
--help,-h this helpful message
廖杰良 - 2019-02-23
版权声明:本文标题:RAW 图像格式转换工具 bayer2rgb 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dongtai/1726968380a1092476.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论