一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种HUD显示系统的色彩矫正方法与流程

2022-03-08 22:53:50 来源:中国专利 TAG:

一种hud显示系统的色彩矫正方法
技术领域
1.本发明涉及hud技术领域,更具体地,涉及一种hud显示系统的色彩矫正方法。


背景技术:

2.hud成像原理是通过背光源led灯板将lcd屏幕上的显示内容,经过hud内部的大小反射镜系统投射到汽车的前挡风玻璃上。那么背光源输出的白光色温不同,最终呈现出的图像将有不同的呈现,特别当背光系统输出的白光偏蓝或偏黄时,将降低用户体验。
3.为了解决hud显示色彩问题,目前的行业内普遍做法是,从led灯珠源头进行管控,要求led供应商保证led色温灯珠。采用这种做法,使得适用于hud产品的led灯珠供应商受制于行业内少数几家供应商,备用方案少,并导致led单价过高的问题。
4.由于hud背光系统中led灯板上灯珠个体或批次的差异,导致hud个体在输出到前挡风上的图像上存在明显的色彩差异;由于灯珠点亮为白色光,当使用白色图像作为输出图像时,那么由于灯珠差异,最终导致hud显示画面存在这几种情况:
5.1.正常白,
6.2.人眼可识别的白色偏蓝,
7.3.人眼可识别的白色偏黄,
8.当出现情况2或3时,将会降低终端用户体验。
9.为此,我们提出一种hud显示系统的色彩矫正方法。


技术实现要素:

10.本发明要解决的技术问题是提供一种hud显示系统的色彩矫正方法。
11.为了解决上述技术问题,本发明的技术方案为:
12.一种hud显示系统的色彩矫正方法,包括如下步骤:
13.1.色彩矫正数据预处理
14.(1).读取flash中的色彩矫正数据
15.cpu通过flash驱动在外部flash预定义的存储地址读取色彩矫正数据到cpu的ram中,色彩矫正数据由红色(r)、绿色(g)、蓝色(b)每个单色色彩曲线上32个控制点上out值组成,如单色色彩曲线上的控制点p(ci,co),对于输入轴in上的ci其out值为co,其中ci范围为[7,255]且ci满足ci=7 (n-1)*8(n∈[1,32]),,且对曲线上每个点的co其最大值为255,所以色彩矫正数据共占96个字节,为了做完整性校验,使用crc32算法进行数据保护,crc32共4个字节,因此色彩矫正数据加上校验数据共100个字节。
[0016]
针对于单色色彩曲线上的p(ci,co),若32个控制点都满足co=ci,即输出色彩值等于输入色彩值,也就是没有对该单色做色彩矫正。
[0017]
色彩矫正数据是hud产品下线时,生产下线测试设备根据拍摄到的hud显示的白图,计算出的r、g、b颜色分量与标准白色差异得到,并发送各颜色分量矫正数据给hud,hud保存矫正数据到外部flash中。
[0018]
(2).色彩矫正数据完整性校验
[0019]
对读取到的矫正数据进行校验,校验分为两个步骤,第一步为数据完整性校验,使用crc32算法,比较读出矫正数据计算出的crc32与从flash中读取crc32,如果不一致说明数据被破坏,不可用,并设置色彩矫正数据处理完成标志proc_flag=0;
[0020]
(3).当数据完整性校验通过后,对每个单色色彩矫正数据进行[0,255]范围内插值,插值方法使用分段线性插值,因为每条颜色矫正曲线上有32个控制点再加上(0,0)控制点,所以需要进行32段插值。对于任意一段线性插值有co=(ci-ci1)*(co2-co1)/(ci2-ci1) co1;其中ci1《ci《ci2,co1为单色矫正数据中第n个数据且ci1=7 (n-1)*8,co2为单色矫正数据中第n 1个数据且ci2=7 n*8,其中n∈[1,31];对于第1段即控制点(0,0)到控制点(7,co2)这段曲线的插值方法,由于ci1=0,co1=0,ci2=7,co2为单色矫正数据中的第一个数据,则co=ci*co2/7,0《ci《7。
[0021]
将插值后的co数据按照ci从0到255顺序保存在对应的长度为256的数组中,那么形成了针对于r、g、b三色的三个色彩查找表rclut、gclut、bclut,则对于任意输入的一个色彩分量值,其输出值为以色彩分量值为数组下标的数组值;同时设置色彩矫正数据处理完成标志proc_flag=1.
[0022]
2.色彩实时矫正
[0023]
(1).若proc_flag=0,则直接旁路图像生成模块或图像捕获模块的图像缓存inputframebuffer到lcd驱动,不进行图像色彩的矫正。
[0024]
(2).若proc_flag=1,按如下步骤对输入图像进行色彩矫正
[0025]
1).在图像生成模块或图像捕获模块的图像缓存inputframebuffer中提取第j(0≤j≤w*h,w为图像的宽,h为图像的高)个位置像素值pij,并提取r、g、b颜色分量值rij、gij、bij;
[0026]
2).对于rij,则根据其色彩查找表rclut可以获得其输出roj=rclut[rij],即rclut中的第rij个数组元素;使用同样方法可以获取gij、bij的输出goj、boj;
[0027]
3).根据roj、goj、boj三个色彩分量合成像素点值poj,并将poj写到图像输出缓存outputframebuffer的第j个位置。
[0028]
4).处理完w*h个像素后,即可得到完整的经过色彩矫正后输出图像,输出图像保存在outputframebuffer中,为了防止图像撕裂这种情况发生,outputframebuffer使用双framebuffer机制,当色彩矫正完成后输出当前使用的outputframebuffer到lcd驱动,并将另一个outputframebuffer设置为空闲,供下次色彩矫正使用。
[0029]
(3)lcd驱动读取输入的outputframebuffer中经过色彩矫正的图像数据,将最终输出到lcd屏上;lcd屏上图像经过背光系统和反射机构后,将最终输出到前档风玻璃上,此时用户看到的图像将是人眼不可察觉的无色差的图像,图像色彩不会跟随led光源的色温发生变化。
[0030]
本发明通过对cpu输出到lcd屏幕颜色曲线的矫正,达到矫正hud显示系统色彩的目的;不对led灯珠色温进行管控,同一led灯板上可以安装不同色温的灯珠;保证hud显示系统色彩一致性,进而使得led灯珠供应商可选择范围增大,降低产品成本。
附图说明
[0031]
附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。
[0032]
图1为本发明hud显示系统的色彩矫正方法所采用的色彩矫正系统框图;
[0033]
图2为本发明hud显示系统的色彩矫正方法中色彩矫正数据预处理的流程图;
[0034]
图3为本发明hud显示系统的色彩矫正方法中色彩实时矫正的流程图;
[0035]
图4为本发明hud显示系统的色彩矫正方法中单色色彩曲线图。
具体实施方式
[0036]
为更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的核酸样本采集管理方法及其系统其具体实施方式、结构、特征及其功效,详细说明如后。显然,所描述的实施例为本发明的一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
[0037]
如图2和图3所示,本发明一种hud显示系统的色彩矫正方法,包括如下步骤:
[0038]
1.色彩矫正数据预处理
[0039]
(1).读取flash中的色彩矫正数据
[0040]
cpu通过flash驱动在外部flash预定义的存储地址读取色彩矫正数据到cpu的ram中,色彩矫正数据由红色(r)、绿色(g)、蓝色(b)每个单色色彩曲线上32个控制点上out值组成,如单色色彩曲线上的控制点p(ci,co),对于输入轴in上的ci其out值为co,其中ci范围为[7,255]且ci满足ci=7 (n-1)*8(n∈[1,32]),,且对曲线上每个点的co其最大值为255,所以色彩矫正数据共占96个字节,为了做完整性校验,使用crc32算法进行数据保护,crc32共4个字节,因此色彩矫正数据加上校验数据共100个字节。
[0041]
针对于单色色彩曲线上的p(ci,co),若32个控制点都满足co=ci,即输出色彩值等于输入色彩值,也就是没有对该单色做色彩矫正。
[0042]
色彩矫正数据是hud产品下线时,生产下线测试设备根据拍摄到的hud显示的白图,计算出的r、g、b颜色分量与标准白色差异得到,并发送各颜色分量矫正数据给hud,hud保存矫正数据到外部flash中。
[0043]
(2).色彩矫正数据完整性校验
[0044]
对读取到的矫正数据进行校验,校验分为两个步骤,第一步为数据完整性校验,使用crc32算法,比较读出矫正数据计算出的crc32与从flash中读取crc32,如果不一致说明数据被破坏,不可用,并设置色彩矫正数据处理完成标志proc_flag=0;
[0045]
(3).当数据完整性校验通过后,对每个单色色彩矫正数据进行[0,255]范围内插值,插值方法使用分段线性插值,因为每条颜色矫正曲线上有32个控制点再加上(0,0)控制点,所以需要进行32段插值。对于任意一段线性插值有co=(ci-ci1)*(co2-co1)/(ci2-ci1) co1;其中ci1《ci《ci2,co1为单色矫正数据中第n个数据且ci1=7 (n-1)*8,co2为单色矫正数据中第n 1个数据且ci2=7 n*8,其中n∈[1,31];对于第1段即控制点(0,0)到控制点(7,co2)这段曲线的插值方法,由于ci1=0,co1=0,ci2=7,co2为单色矫正数据中的第一个数据,则co=ci*co2/7,0《ci《7。
[0046]
将插值后的co数据按照ci从0到255顺序保存在对应的长度为256的数组中,那么形成了针对于r、g、b三色的三个色彩查找表rclut、gclut、bclut,则对于任意输入的一个色彩分量值,其输出值为以色彩分量值为数组下标的数组值;同时设置色彩矫正数据处理完成标志proc_flag=1.
[0047]
2.色彩实时矫正
[0048]
(1).若proc_flag=0,则直接旁路图像生成模块或图像捕获模块的图像缓存inputframebuffer到lcd驱动,不进行图像色彩的矫正。
[0049]
(2).若proc_flag=1,按如下步骤对输入图像进行色彩矫正
[0050]
1).在图像生成模块或图像捕获模块的图像缓存inputframebuffer中提取第j(0≤j≤w*h,w为图像的宽,h为图像的高)个位置像素值pij,并提取r、g、b颜色分量值rij、gij、bij;
[0051]
2).对于rij,则根据其色彩查找表rclut可以获得其输出roj=rclut[rij],即rclut中的第rij个数组元素;使用同样方法可以获取gij、bij的输出goj、boj;
[0052]
3).根据roj、goj、boj三个色彩分量合成像素点值poj,并将poj写到图像输出缓存outputframebuffer的第j个位置。
[0053]
4).处理完w*h个像素后,即可得到完整的经过色彩矫正后输出图像,输出图像保存在outputframebuffer中,为了防止图像撕裂这种情况发生,outputframebuffer使用双framebuffer机制,当色彩矫正完成后输出当前使用的outputframebuffer到lcd驱动,并将另一个outputframebuffer设置为空闲,供下次色彩矫正使用。
[0054]
(3)lcd驱动读取输入的outputframebuffer中经过色彩矫正的图像数据,将最终输出到lcd屏上;lcd屏上图像经过背光系统和反射机构后,将最终输出到前档风玻璃上,此时用户看到的图像将是人眼不可察觉的无色差的图像,图像色彩不会跟随led光源的色温发生变化。
[0055]
如图1所示,本发明hud显示系统的色彩矫正方法所采用的色彩矫正系统,包括can收发器模块、cpu、flash模块和lcd模块,can收发器模块的作用是将can总线的差分信号转换为ttl电平,从而和微控制器中的can模块输入电平匹配,使得mcu中的can模块可以正确的从can总线上接收数据,以及发送数据到can总线上。
[0056]
cpu模块接收来自can总线的车速、导航等车辆状态信息以及生产下线时测试设备发送的色彩标定相关信息;数据处理模块将车辆状态信息处理后,送入图像生成模块生成相关图像;同时数据处理模块将色彩标定相关数据处理为红色(r)、绿色(g)、蓝色(b)三条颜色矫正曲线上的控制点数据(每条颜色矫正曲线有32个控制点);色彩矫正数据处理模块根据每条曲线上的控制点数据,将每条颜色矫正曲线按控制点数据分段线性插值为整个颜色范围(0~255)的颜色转换控制点,并形成三个查找表针对r、g、b三条颜色曲线;色彩矫正模块使用图像生成模块的图像或图像捕获模块捕获到的外部输入图像,根据r、g、b三个颜色查找表,对每个像素点的r、g、b颜色进行矫正,最终生成用于hud显示的图像。
[0057]
flash驱动用于对外部flash模块读写操作,以存储或读取色彩标定相关数据和图像切图数据。
[0058]
lcd驱动用于将图像显示信息转换为具有特定时序的,能被lcd模块处理的电平信号。
[0059]
flash模块存储色彩矫正数据及图像切图数据。
[0060]
lcd模块为图像显示单元,显示cpu模块经过lcd驱动输出的图像信息。
[0061]
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容作出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献