android硬解码
https://www.cnblogs.com/haar/articles/1392227.html
一种效果很好的自动白平衡技术(WhiteBalance)
白平衡是图像处理的一个极重要概念。所谓白平衡(英文名称为White Balance),就是对白色物体的还原。当我们用肉眼观看这大千世界时,在不同的光线下,对相同的颜色的感觉基本是相同的,比如在早晨旭日初升时,我们看一个白色的物体,感到它是白的;而我们在夜晚昏暗的灯光下,看到的白色物体,感到它仍然是白的。这是由于人类从出生以后的成长过程中,人的大脑已经对不同光线下的物体的彩色还原有了适应性。但是,作为拍摄设备,如数码相机,可没有人眼的适应性,在不同的光线下,由于CCD输出的不平衡性,造成数码相机彩色还原失真。一般情况下,我们习惯性地认为太阳光是白色的,已知直射日光的色温是5200K左右,白炽灯的色温是3000K左右。用传统相机的日光片拍摄时,白炽灯光由于色温太低,所以偏黄偏红。所以通常现场光线的色温低于相机设定的色温时,往往偏黄偏红,现场光线的色温高于相机设定时,就会偏蓝。
为了解决不同色温下,引起的白色漂移现象。由于白色对色温变化的响应最大,通常用白色来作为调整的基色。通常的白平衡技术有:自动白平衡、钨光白平衡、荧光白平衡、室内白平衡、手动调节。本文仅介绍其中的一种自动白平衡。
白平衡算法通常分为两步:白色点的检测,白色点的调整。本方法采用一个动态的阀值来检测白色点。详细算法过程为:
1. 把图像w*h从RGB空间转换到YCrCb空间。
2. 选择参考白色点:
a. 把图像分成3*4个块(块数可选)。
b. 对每个块,分别计算Cr,Cb的平均值Mr,Mb。
c. 对每个块,根据Mr,Mb,分别计算Cr,Cb的方差Dr,Db。
d. 判定每个块的近白区域(near-white region)。
判别表达式为:Cb(i, j) − (Mb + Db × sign(Mb )) < 1.5× Db && Cr(i, j) − (1.5×Mr + Dr × sign(Mr )) < 1.5× Dr
设一个“参考白色点”的亮度矩阵RL,大小为w*h。
若符合判别式,则作为“参考白色点”,并把该点(i,j)的亮度(Y分量)值赋给RL(i,j);
若不符合,则该点的RL(i,j)值为0。
3. 选取参考“参考白色点”中最大的10%的亮度(Y分量)值,并选取其中的最小值Lu_min.
4. 调整RL,若RL(i,j)<Lu_min, RL(i,j)=0; 否则,RL(i,j)=1;
5. 分别把R,G,B与RL相乘,得到R2,G2,B2。 分别计算R2,G2,B2的平均值,Rav,Gav,Bav;
6. 得到调整增益: Ymax=double(max(max(Y)))/15;
Rgain=Ymax/Rav;
Ggain=Ymax/Gav;
Bgain=Ymax/Bav;
7. 调整原图像:Ro= R*Rgain; Go= G*Ggain; Bo= B*Bgain;
android硬解码相关推荐
- android jni 硬解码,Android 硬解码 MediaCodec 遇到的(部分手机绿屏)API21
MediaCodec 是android用来做音视频编解码 下面是遇到其它的问题(解码几分钟后一直dequeueInputBuffer-1) http://blog.csdn.net/qq3773663 ...
- 全志 android 硬解码,Adroid新增硬件编解码
背景 瑞芯微和全志的平台 硬解的视频codec为H264 修改方法 1. 硬件编码 修改文件MediaCodecVideoEncoder.java (1)文件新增全志和瑞芯微的硬件编解码 //全志 p ...
- android硬解码x265,Android 设置硬解码 h265 失败
在demo中开启硬件解码,同时设置h265开关 ijkMediaPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_PLAYER, "mediacode ...
- android 硬解码 绿屏,iOS硬解播放,一半绿屏
@stevechyuan background knowledge: 一个mp4 file生成,是在enc 吐出bitstream之后.然后a/v interleave mux到mp4 file. h ...
- MediaCodec在Android视频硬解码组件的应用
https://yq.aliyun.com/articles/632892 云栖社区> 博客列表> 正文 MediaCodec在Android视频硬解码组件的应用 cheenc 2018- ...
- 【AVD】FFmpeg + MediaCodec 实现 Android 硬件解码,中间有个大坑
最近在做移动端音视频编解码,首先要实现的是移动端视频的解码功能.纯的 FFmpeg 方法在移动端也能实现,但是效率上的确要慢一些,1080p 的视频还好,但是上到 2k.4k,那个解码速度(以肉眼可见 ...
- android硬编码封装mp4,【Android 音视频开发打怪升级:音视频硬解码篇】四、音视频解封和封装:生成一个MP4...
[声 明] 首先,这一系列文章均基于自己的理解和实践,可能有不对的地方,欢迎大家指正. 其次,这是一个入门系列,涉及的知识也仅限于够用,深入的知识网上也有许许多多的博文供大家学习了. 最后,写文章过程 ...
- android udp rtp播放器,IjkPlayer For Android(3)-RTP直播硬解码支持
IjkPlayer播放器其实是支持RTP直播的,但是只能用ffmpeg软解码不能使用硬解码. 这里将会从以下几个方面配置使用 1.UDP RTP/RTMP区别 2.FFMpeg推流 3.IjkPlay ...
- android aac硬解码,android AAC的音频硬解码
android AAC的音频硬解码 上一篇写了AAC音频的硬编码,今天补充硬解码,其实就是硬编码反过来,非常简单 初始化AAC硬解码资源: public int Start() { int iRet ...
最新文章
- 网关限流了,躲在后面的服务就能高枕无忧啦?
- 腾讯员工上半年人均月薪 7.8 万,网友:别人拿月薪我拿年薪。。。
- Lesson 6.1 身份证识别: 提取字段
- 转载 一个渣硕iOS春招总结 | 掘金技术征文
- AAAI 2019 滴滴被收录论文全解读
- 一个一直没想通的问题:为什么印度的软件外包能比中国强那么多?这应该是中国人的强项啊...
- 计算机应用领域变化,计算机应用领域与发展阶段.ppt
- 仅展示近三天的动态设置_抱歉,朋友仅展示最近三天的朋友圈
- sleep与wait的区别? 以及wait(long timeout)中timeout的含义
- maven-dependency-plugin插件的使用
- Geodetector软件下载、地理探测器的应用实践与结果解读
- 利用梦网云通讯实现 短信 验证码 发送 附带教程~~~
- python学习方法总结(内附python全套学习资料)
- C语言系列(5) --- C语言文件的操作
- 手撸JDK之ReentrantLock锁那点事
- 哇塞!集齐7张卡片,真的可以召唤神龙耶!
- 教孩子学编程python豆瓣_教孩子学编程 Python
- AtCoder Beginner Contest 190 E.Magical Ornament
- bt5使用教程----渗透方面
- COMP 3023代写、代写COMP 3023、代做 C++ - Assignment、 代编码C++ - Assignment