CubieBoard2解决摄像头反色

问题描述:

在安卓系统中,一般支持UVC架构的Camera,普通的USB摄像头只要支持UVC架构都可以直接通过USB接口正常运行。但是在CubieBoard2(即树莓派3)中,接入常规的USB摄像头,预览时的图像一切正常,但是拍摄出来的照片跟视频颜色均不正常,呈现出蓝色变红色,红色变蓝色的情况。

问题分析:

此类问题一般是UV反转造成,UV序列问题可引起颜色不正常。

具体步骤:

1) 查找硬件适配层CAMERA部分的代码。

在CubieBoard2开发板中,硬件适配层CAMERA部分的代码位置:

\android42\device\softwinner\common\hardware\camera

查看cameraHardware.cpp代码,有:

#ifdef __SUN7I__
			org_fmt = V4L2_PIX_FMT_NV12;		// SGX support NV12
#else
			org_fmt = V4L2_PIX_FMT_NV21;		// MALI support NV21
#endif

当前配置org_fmt为V4L2_PIX_FMT_NV21,由于颜色反转,所以应将其修改为V4L2_PIX_FMT_NV12。此处可通过定义__SUN7I__来修改帧格式。

2) 修改图像帧格式

为了在全局进行修改,在一个模块中公用的头文件中继续定义,确保修改成功。

在CAMERA源码目录中找到CameraDebug.h,在其中定义__SUN7I__,加入如下代码:

#define __SUN7I__ 1

3) 编译并加载固件,启动摄像头应用即可正常使用。




评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值