color key在倒车显示功能上的至关重要性

随着经济的高速发展,汽车越来越多了,在城市里停车位越来越难找,停车位也越来越小,这时候倒车技术就显得非常重要了,左边是宝马,右边是奥迪,车位后面还可能有行人走的场景那就太可怕了,哪个都惹不起啊,这种情况下是不是有一个倒车影像是不是更好呢,答案当然是肯定的,可以看得更清楚,辅助倒车更安全,现在这个功能在小汽车上至少在半数以上都装了吧!

倒车影像是个好东西,那怎么实现,怎么弄出一个相当棒的倒车图像显示效果呢?倒车一般分两种,一种就是系统还没起来的情况下,一种就是系统已经完全起来,这两种情况在处理上是完全不一样的。

笔者在之前写过一篇boot关机倒车的,可以参看一下: http://blog.csdn.net/edsam49/article/details/17305853

有倒车图像的同时,在图像上还能比较准确的物体距离,也就是倒车图像上某个物体离车尾摄像头的距离,这个距离也只是一个参考的,受限于装车摄像头离地面的高度,以及摄像头在车尾上向下俯视的角度,但是有一个接近的距离警示性的线来标识一下是更好的。首先我们来看两张带警示线的图片A和B:

A图如下:

B图如下:

比较A图跟B图,我们仔细看看A和B是在同一个位置的,是笔者两种方案的结果,是不是会觉得B图比A图要更清晰一点。由于笔者是用手机对着机器拍的,效果还有一定衰减,实地效果对比差距更明显一点。首先A图的线有部分是不清晰的,图像有一部分颜色淡了很多,因为A图是采用两个物理图层通过alpha混合来实现的,透明度越大的话,警示线就越淡,图像更清晰,透明度越小当然是线清晰了图像看不清了,总之这种方法是有损的,从原理上分析就是有损的。

/*****************************************************************************************************/
声明:本博内容均由http://blog.csdn.net/edsam49原创,转载请注明出处,谢谢!
/*****************************************************************************************************/

B机器也是使用两个物理图像,但是使用了alpha跟color key技术。是不是线也清晰,图像也清晰。也就是说强强联手,各取优点,何乐而不为呢!哈哈!

Colorkey技术是作用在两个图像叠加混合的时候,对特殊色做特殊过滤,符合条件的区域叫match区,在match区就全部使用另外一个图层的颜色值,不符合条件的区域就是非match区,非match区就是走普通的alpha混合,当然为了线看起来很清楚,我们可以把这个alpha值设置得大一些。Alpha值越大就是越不透明。

在此我们讨论的都是基于关机倒车的,就是系统还没起来的情况下。系统起来了倒车处理起来是更方便的,至少在surface view之间的图层叠加都是软算法,处理起来是更方便的,在此不做讨论。

我们下面来看看三星6410跟全志A10上的几张原理性的图就一目了然了。

怎么使用color key呢?各个平台大同小异,原理都差不多。参看代码:

       _disp_colorkey_t  ckt;__disp_color_t   ck_max;__disp_color_t   ck_min;ck_min.alpha =0xf0;
ck_min.red = 0x00;ck_min.green = 0x00; //纯黑色ck_min.blue = 0x00;ck_max.alpha =0xf0;ck_max.red = 0x00;ck_max.green = 0x00;ck_max.blue = 0x00;ckt.ck_min= ck_min;ckt.ck_max= ck_max;ckt.red_match_rule = 2;//0/1:always match; 2:match if min<=color<=max; 3:match if color>max or color<minckt.green_match_rule = 2;ckt.blue_match_rule = 2;

做的图是黑色的底,32bit的,黑色部分的RGB都是0,所以我们就过滤掉它,存在0的部分就直接使用了倒车视频的图像的RGB值,所以这样效果是很不错的。

一点点的进步都不容易,为了让用户得到一个更好的效果,程序员绞尽脑汁,加班加点,在所不惜

努力【让每一位车主出入平安】,加油!

color key在倒车显示功能上的至关重要性相关推荐

  1. alpha和color key

    一.alpha 1.透明度,一般取值0-255 2.Alpha 通道:     Alpha 通道是为保存选择区域而专门设计的通道.在生成一个图像文件时,并不必须产生 Alpha 通道.通常它是由人们在 ...

  2. 使用 Git 生成 SSH Key 并将项目上传到 GitHub

    官方下载git: https://git-scm.com/ 密钥部分: 2.打开Git Bash 并输入 $ ssh-keygen -t rsa -b 4096 -C "2653208961 ...

  3. 全志平台boot里TVD倒车显示功能开发

    倒车显示分两个部分,前端处理好视频输入信号,准备好内容,后端显示驱动再来把内容显示到LCD上.很明显,前端是TVD模块来处理的,后端是有DE模块来处理的,我们接下来先分析一下TVD模块怎么工作的. 首 ...

  4. 暴力破解键盘上所有组合的密码需要多久?

    暴力破解键盘上所有组合的密码需要多久? 暴力破解密码肯定是密码越长越复杂破解时间就越久,如果是大小写加数字加特殊字符肯定比单一的形式破解更为复杂困难,一般的口令密码都为6位或者8位,超过8位的比较少见 ...

  5. 安徽关节式焊接机器人_上下料机器人的重要性体现在哪里?它有哪些优势?

    上下料机器人是工业机器人家族中从事加工应用的重要成员之一,能满足"快速.大批量加工节拍"."节省人力成本"."提高生产效率"等要求,成为越来 ...

  6. 差钱吗?周杰伦线上演唱会没关打赏惹争议,看看同时直播的腾格尔

    随着世界杯的到来,全球都进入了世界杯时间,音乐领域的明星们,都以各种形式欢迎世界杯的到来. 在世界杯开幕的前一晚上,著名音乐人周杰伦,在某手平台开启了线上演唱会,吸引了众多人前来围观. 据不完全统计, ...

  7. java按顺序售票方法_java_Java代码实践12306售票算法(二),周五闲来无事,基于上一篇关 - phpStudy...

    Java代码实践12306售票算法(二) 周五闲来无事,基于上一篇关于浅析12306售票算法(java版)理论,进行了java编码实践供各位读者参考(以下为相关代码的简单描述) 1.订票工具类 1.1 ...

  8. DirectX5.0最新游戏编程指南 DirectDraw篇(转)

    DirectDraw是DirectX SDK的主要部分之一,它允许你直接对显示内存操作,支持硬件位块传输.硬件覆盖.表面翻转,并且保持同目前的基于Windows的应用程序和驱动程序兼容.     Di ...

  9. 在 github 上添加 SSH key 的步骤

    版权声明:个人学习笔记,不喜勿喷,文章转载请标明出处,谢谢! <a class="copy-right-url" href=" https://blog.csdn. ...

最新文章

  1. MYSQL千万级数据量的优化方法积累
  2. 成功解决 利用plt.plot绘图时,横坐标出现浮点小数而不是整数的情况(坐标轴刻度)
  3. wxWidgets:wxScrollBar类用法
  4. 问题 G: 区间权值
  5. Bailian4071 查找出现了k次的字符【字符串】
  6. HDOJ 1003:求一串数字中和最大的连续子串
  7. Go Web编程(Go语言性能好、语法简单、开发效率高!)
  8. QR码与DM码的对比
  9. 汇编学习软件推荐 - 汇编金手指
  10. 办公局域网网络速度变慢分析
  11. ESP8266的FATAL EXCEPTION 28 29问题原因
  12. 机器学习特征工程之特征缩放+无量纲化:非线性缩放(例如,sigmoid、tanh、arctan等)
  13. 西电计科数据库系统期末复习笔记
  14. 【sdx62】PBL阶段修改GPIO操作
  15. ModuleNotFoundError: No module named ‘lap‘
  16. ubuntu中mysql怎么卸载_ubuntu下安装mysql与彻底卸载mysql方法
  17. 12306订票候补是个坑_12306的候补购票功能是好还是坏?
  18. quartz报错:Couldn‘t retrieve trigger: No record found for selection of Trigger with key—————————————
  19. c语言bit作用,c语言中bit的用法
  20. 远山启:用数学照亮人性与自由

热门文章

  1. 计算机入门模拟试卷c卷,《计算机入门》模拟卷C答案-华东师范大学.doc
  2. 认识黑客常用的入侵方法
  3. 超级计算机app不能解方程,有了这款被 App Store 官方推荐的超级计算器,该把手头的计算器扔了...
  4. php extraxt,php中关于extract方法的使用和建议
  5. acm总结——多源BFS
  6. postman获取返回值及tests[]用法
  7. 某一点绕另一点逆时针旋转90后的坐标
  8. 读《中国通史》(1)
  9. 有哪些冷门却好用的东西可以网购?
  10. CSUSTOJ-藤原书记想要探病(简单矩阵快速幂)