CN116170686A - 视频流抖动处理方法及其装置 - Google Patents
视频流抖动处理方法及其装置 Download PDFInfo
- Publication number
- CN116170686A CN116170686A CN202111382331.2A CN202111382331A CN116170686A CN 116170686 A CN116170686 A CN 116170686A CN 202111382331 A CN202111382331 A CN 202111382331A CN 116170686 A CN116170686 A CN 116170686A
- Authority
- CN
- China
- Prior art keywords
- carry
- frame
- dithering
- look
- lookup table
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title abstract description 16
- 238000012545 processing Methods 0.000 claims abstract description 63
- 238000000034 method Methods 0.000 claims abstract description 46
- 238000013506 data mapping Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 14
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000013500 data storage Methods 0.000 description 5
- 238000007726 management method Methods 0.000 description 3
- 238000013139 quantization Methods 0.000 description 3
- 241001270131 Agaricus moelleri Species 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 238000009792 diffusion process Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 229920001621 AMOLED Polymers 0.000 description 1
- 229910002056 binary alloy Inorganic materials 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Landscapes
- Image Processing (AREA)
Abstract
本发明提供一种视频流抖动处理方法及其装置。所述方法包括:获取针对视频流抖动处理的图像数据;根据上述获取的图像数据确定查找表;根据查找表的进位标志判断该视频流的色彩通道数据是否需要进位;根据进位标志完成抖动处理,并输出经抖动处理的色彩通道数据;其中,该视频流以帧刷新间隔为周期对每一帧图像的色彩通道数据进行抖动处理。本发明所提出的基于视频流的抖动处理方法及其装置,能有效解决图像数据映射后的失真现象,使得图像数据映射更随机。
Description
技术领域
本发明涉及图像处理技术领域,特别是涉及用于平面显示器的视频流抖动处理(Dithering)方法及其装置。
背景技术
在LED屏显示领域,要想获得更细腻的颜色信息,就需要采用高比特(bit)的图像数据。举例来说,常见的三基色(红RED、绿GREEN、蓝BLUE)通道各为8bits(0-255灰阶),为了能够获得更丰富的颜色信息,就需采用高比特14bits(0-4095灰阶)的图像数据用以显示更鲜艳的颜色层次。但是,由于硬件资源的限制,LED显示屏能显示的颜色灰阶(0-255灰阶)远小于高比特表示的颜色灰阶(0-4095灰阶)。在LED屏显示时,将高比特位数据映射(亦称之为“转换”或“量化”)到低比特位时会造成颜色数据丢失而出现色带现象,影响图像质量。
为了改善色带现象,现有技术中常用的方法有随机数抖动方法及误差扩散抖动方法。但是,随机数抖动方法会造成图像噪点;而误差扩散抖动方法因其邻域像素误差互相传递,打破了原有LED屏各子像素的独立性且矩阵查找算法固定,没有进入随机的噪声分布误差。有鉴于此,本发明提出一种基于视频流的抖动处理方法及其装置,有效解决图像数据映射后的失真现象,使得图像数据映射更随机。
发明内容
本发明提供一种基于视频流的抖动处理方法及其装置,其较佳的解决了颜色量化后的失真现象,使得颜色量化压缩更随机、动态。
根据本发明的实施例,本发明提供一种视频流抖动处理方法。所述方法包括:获取针对视频流抖动处理的图像数据;根据获取的图像数据确定查找表;根据查找表的进位标志判断该视频流的色彩通道数据是否需要进位;根据进位标志完成抖动处理,并输出经抖动处理的色彩通道数据;其中,该视频流以帧刷新间隔为周期对每帧图像的色彩通道数据进行抖动处理。
在一些实施例中,查找表是基于色彩通道数据需移位的二进制数据,确定查找表的数量;其中,色彩通道数据需移位的二进制数据经转换为十进制取值后用于确定查找表的数量;基于十进制取值范围内的多个取值确定各查找表上进位标志的数量;根据查找表的数量和进位标志的数量,对应生成多个查找表。
在一些实施例中,查找表的数量为十进制取值的最大值乘以帧刷新间隔。
在一些实施例中,进位标志的数量为十进制取值所决定的比值并根据该比值确定各查找表上进位标志的数量。
在一些实施例中,比值等于十进制的取值除以图像分块的大小。
在一些实施例中,查找表中的进位标志数量满足:在图像分块大小范围内查找表行子像素进位标志的数量,与查找表行子像素对应的列子像素的进位标志的数量一致。
在一些实施例中,查找表中的进位标志数量满足:在图像分块大小范围内再划分复数个区格,在该区格中依据比值确定进位标志数量。
在一些实施例中,确定查找表为基于图像数据的帧号,将帧号对帧刷新间隔取余,得到余数;基于余数与多个查找表,确定帧号对应的查找表。
在一些实施例中,确定进位标志为根据待处理帧对应的查找表,基于比值确定进位标志。
在一些实施例中,进位为色彩通道数据的二进制数据移位后再基于查找表判断是否需要进位。
在一些实施例中,查找表为一分挡位的进位标志查找表。
在一些实施例中,查找表为一进位数据量查找表。
根据本发明的实施例,本发明提供一种视频流抖动处理装置,其特征在于,所述装置包括:图像处理接口单元模块,用于获取针对视频流抖动处理的图像数据;查找表单元模块,用于根据获取的图像数据确定查找表;抖动处理模块,用于根据查找表的进位标志判断该视频流的色彩通道数据是否需要进位;基于进位标志完成抖动处理,并输出经抖动处理的色彩通道数据;其中,该视频流以帧刷新间隔为周期对每帧图像的色彩通道数据进行抖动处理。
附图说明
图1为本发明一实施例中的抖动处理方法的示意图;
图2为本发明一实施例中视频流抖动处理方法的流程示意图;
图3A为本发明另一实施例中视频流抖动处理方法的流程示意图;
图3B为本发明另一实施例中视频流抖动处理方法的流程示意图;
图4A为本发明一实施例中的一图像块BLOCK前半部分的示意图;
图4B为本发明一实施例中的一图像块BLOCK后半部分的示意图;
图5A为本发明一实施例中的一图像块BLOCK对应的查找表前半部分的示意图;
图5B为本发明一实施例中的一图像块BLOCK对应的查找表后半部分的示意图;
图6为本发明另一实施例中根据已生成的查找表进行视频流抖动处理方法的流程示意图;
图7A为本发明一实施例中视频流抖动处理装置的硬件模块示意图;
图7B为本发明另一实施例中视频流抖动处理装置的硬件模块示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在通篇说明书及权力要求书当中所提及的“包括与包含”一词为开放式的用语,故应解释成“包括或包含但不仅限定于”。
在通篇说明书及权利要求书当中使用了某些词汇来指称特定的组件或模块。本领域技术人员应可理解,硬件制造商可能会用不同的名词来称呼同一个组件或模块。本说明书及权利要求书并不以名称的差异来作为区分组件或模块的方式,而是以组件或模块在功能上的差异来作为区分的准则。
图1为本发明实施例中的抖动处理方法的示意图。如图1所示,在步骤S102中,输入14bits的图像数据。此处应说明的是,在通篇的说明书及权利要求书当中,用14bits的图像数据进行说明,但本领域技术人员应可理解,输入的高比特图像数据会随着显示技术的发展,比特位数据大小会不断增大,本发明并不限制于此。在通篇的说明书及权利要求书中,描述的6bits、8bits、10bits及14bits表示为三基色(红、绿、蓝)各色彩通道皆为6bits、8bits、10bits或14bits。举例来说,输入14bits的图像数据,即表示输入的是红色通道为14bits、绿色通道为14bits及蓝色通道也为14bits,共42bits的图像数据。还有,此处输入的14bits图像数据可由智能电子设备的图像处理接口单元接收图像数据。例如:智能手机、电脑、VR设备或其他电子设备的图像处理接口单元接收图像数据,本发明并不限制于此。
接着,在步骤S104中,输入的14bits图像数据经过抖动处理方法之后,输出为10bits的图像数据。此处应该说明的是,将14bits图像数据映射(亦称之为“转换”或“量化”)为10bits的图像数据最直接的方式即是将每一颜色通道的最低四个有效位直接删去。但是,直接删去最低四个有效位意味着牺牲部分的分辨率,必将造成人眼可察觉的失真现象,降低显示器的显示品质。为了弥补图像的失真问题,可以使用抖动的处理方法来提升图像的视觉品质。关于本发明中具体的抖动处理方法部分描述,请参考图2至图6部分描述,在此不累述。
最后,在步骤S106中,诸如智能手机、笔记本电脑等电子装置可接收的影像数据格式通常是8bits(即,以8bits的数据各代表红、绿、蓝三通道)。但是,经过抖动处理之后输出的图像数据为10bits。关于如何将经过抖动处理的10bits的图像数据执行相应的转换处理后在8bits的LED显示屏上显示,属于本领域技术人员所熟知的技术范畴,且并不属于本发明讨论的技术范围,在此不累述。但是,需要重点说明的是,在不脱离本发明所描述之视频流抖动处理方法的技术思想的范围内,本领域技术人员应可理解,输入的高比特位图像数据经过抖动处理之后亦可直接用于智能电子设备显示屏显示。例如:如果输入14bits的图像数据,经过抖动处理之后为10bits、8bits或6bits,则可直接经由10bits、8bits或6bits的显示屏显示。如果输入10bits的图像数据,经过抖动处理之后为8bits或6bits,则可直接经由8bits或6bits的显示屏显示。如果输入8bits的图像数据,经过抖动处理之后为6bits,则可直接经由6bits的显示屏显示。换句话说,高比特位的图像数据经过抖动处理之后,只需要符合相应的电子显示屏的数据格式/标准要求,则可直接显示而不必经过其他的转换处理。
图2为本发明一实施例中视频流抖动处理方法的流程示意图。如图2所示,在步骤S202中,获取针对视频流抖动处理的图像数据。其中,该图像数据包含视频流的当前帧号FRAME_CUR、色彩通道数据(或称之为:色彩通道像素值)及像素位置数据(即子像素行号CUR_ROW及列号CUR_COL坐标或其他可定义像素位置的坐标数据)等用于图像处理的数据。
接着,在步骤S204中,根据上述获取的图像数据确定查找表。
接着,在步骤S206中,根据查找表的进位标志判断该视频流的色彩通道数据是否需要进位。
接着,在步骤S208中,根据进位标志完成抖动处理,并输出经抖动处理的色彩通道数据;其中,该视频流以帧刷新间隔为周期对每帧图像的色彩通道数据进行抖动处理。
关于步骤S204、S206及S208更细节的内容将于图3至图6部分描述,请参考以下描述。
图3A为本发明另一实施例中的视频流抖动处理方法的流程示意图。如图3A所示,在步骤S302A中,输入高比特的R/G/B通道数据。举例来说,在本实施例中,高比特的R/G/B通道数据为二进制数据(即,14bits的二进制数据)。
接着,在步骤S304中,获取上述通道数据的当前帧号FRAME_CUR、预设的帧刷新间隔FRAME_N、子像素行号CUR_ROW及列号CUR_COL。在本发明的一实施例中,获取上述通道数据的当前帧号FRAME_CUR应是相对于帧刷新间隔FRAME_N取余之后所获得的帧号FRAME_CUR。举例来说,假设以帧刷新间隔FRAME_N等于16帧为例,当获取上述通道数据的当前帧号FRAME_CUR为第34帧时,此时应将当前帧号FRAME_CUR第34帧对帧刷新间隔FRAME_N等于16帧取余之后所获得的帧号FRAME_CUR为第2帧;即表示当前帧号FRAME_CUR第34帧实际是在以帧刷新间隔FRAME_N等于16帧为抖动处理周期,在一个新的抖动处理周期中当前帧号FRAME_CUR为第2帧。换句话说,在该实施例中当前帧号FRAME_CUR采用的是以帧刷新间隔FRAME_N为周期对视频流中每一帧图像数据进行不同抖动处理,在基于视频流的每一帧图像数据中,在以帧刷新间隔FRAME_N为抖动处理周期中,每一帧图像数据的抖动处理方式不同;在以帧刷新间隔FRAME_N为抖动处理周期中,每一帧图像数据的抖动处理方式随机。
但是应注意到的是,本领域技术人员在不脱离本发明技术思想的范围内,可能会采用其他的方式对视频流中每一帧图像数据进行不同抖动处理。例如:针对奇、偶帧图像数据采用不同的抖动处理方式;或针对帧数序号尾号为某一特定数/非特定数采用不同的抖动处理方式(例如:帧数序号尾号为3、5、7、9采用一种抖动处理方式,非3、5、7、9采用另一种抖动处理方式);或在视频流编码时针对视频流中每一帧加入特殊标志,根据特殊标志分别采用不同的抖动处理方式等等。本领域技术人员应可理解,除上述所列举的三种针对视频流中每一帧图像数据进行不同抖动处理的方式以外,采用其他不同方式针对视频流中每一帧采用随机的抖动处理方式也应属于本发明的技术思想范畴内。
在步骤S304中获取上述通道数据的子像素行号CUR_ROW、列号CUR_COL是为了在步骤S306和S308中获取该子像素在查找表中的位置及其进位标志。
接着,在步骤S306中,获取该R/G/B通道数据在查找表中的位置。接下来将详细描述如何生成查找表以及获取子像素在查找表中的位置及其进位标志。
假设现有视频流中一帧图像的宽和高大小为FRAME_W*FRAME_H,将每一帧图像划分复数个16*16像素大小的多个分块BLOCK。一个16*16像素大小的BLOCK,其中包含16*48个子像素(16*16个像素,每个像素由3个子像素(R、G、B)组成,即16*16*3个子像素),即16行*48列,如图4A和4B组合之后所示。
每个BLOCK中再划分成多个M*M的小区格,如图4A中Line0-Line3*Pixel1-Pixel4部分,用点划框线所示。
图4A为本发明一实施例中的一图像块BLOCK前半部分的示意图。
图4B为本发明一实施例中的一图像块BLOCK后半部分的示意图。
在此需要针对图4A及4B图示部分做三点说明。首先,在图4A及4B的顶部用Pixel1-Pixel16表示的是该BLOCK按照列计数则为16*3=48列;而在图4A的最左侧用Line0-Line15表示的是该BLOCK按照行计数为16行,故该BLOCK为16行*48列。其次,在图4A中的第二列(或Pixel1的第一列,在图4A中用点划框线所示)统一用R1表示Pixel1的子像素R。本领域技术人员应可理解,统一用R1表示Pixel1的子像素R并不是表示该BLOCK中Pixel1的第一列的所有子像素R相同,而是为了绘示方便,采用统一符号表示。换句话说,如果知道Pixel1的第一列的R1,只需要知道相应的行号,则可以知道是相应于该BLOCK中像素的子像素的R1。亦或者认为,在该16行*48列的BLOCK中,只需要知道子像素行号、列号就可以定位一个子像素的值。最后,在图4A、4B、5A及5B图示中有个别子像素做添加底色标示,关于添加底色标示部分将于后续查找表进位标志时再做详细介绍,在此不累述。
接下来将着重介绍16*16像素大小的BLOCK的查找表的生成。
在本发明实施例中,是将14bits位数据增加抖动后移位4位,获取10bits的图像数据。例如,若视频流中图像为14bits数据,当将该数据映射到10bits数据时,需要舍弃4位二进制数据,但是被舍弃的4位二进制数据并不是简单的直接删除并舍弃,而是需要满足本发明提供的抖动处理方法。
例如,被舍弃的4位二进制数据可能的范围为0000~1111,对应的十进制取值的取值范围为{X|0≤X≤15,X∈N}。
当被舍弃的4位二进制数据对应的十进制取值为1时,取值“点亮数”为1/16,即表示在图4A及4B中一行的中R子像素“点亮”的比例占一行R子像素总数的1/16,G子像素“点亮”的比例占一行G子像素总数的1/16,B子像素“点亮”的比例占B子像素一行总数的1/16(如图4A及4B组合之后的第一行点划框线内,R1子像素添加底色标示的个数为1,G1子像素添加底色标示的个数为1,B1子像素添加底色标示的个数为1)。同理,如图4A及4B列部分情况也是相同的,即一列中R子像素“点亮”的比例占一列R子像素总数的1/16,G子像素“点亮”的比例占G子像素一列总数的1/16,B子像素“点亮”的比例占B子像素一列总数的1/16(如图4A的第一列点划框线内,R1子像素添加底色标示的个数为1)。同时,在每个BLOCK中划分的M*M的小区格中R子像素“点亮”的比例占M*M的小格中R子像素总数的1/16,G子像素“点亮”的比例占M*M的小格中G子像素总数的1/16,B子像素“点亮”的比例占M*M的小格中B子像素总数的1/16(如图4A的Line0-Line3*Pixel1-Pixel4点划框线内,R1子像素添加底色标示的个数为1,G1子像素添加底色标示的个数为1,B1子像素添加底色标示的个数为1)。
当被舍弃的4位二进制数据对应的十进制取值为2时,取值“点亮数”为2/16,即表示在图4A及4B中一行的中R子像素“点亮”的比例占一行R子像素总数的2/16,G子像素“点亮”的比例占一行G子像素总数的2/16,B子像素“点亮”的比例占B子像素一行总数的2/16(未绘示)。同理,如图4A及4B列部分情况也是相同的,即一列中R子像素“点亮”的比例占一列R子像素总数的2/16,G子像素“点亮”的比例占G子像素一列总数的2/16,B子像素“点亮”的比例占B子像素一列总数的2/16(未绘示)。同时,在每个BLOCK中划分的M*M的小区格中R子像素“点亮”的比例占M*M的小格中R子像素总数的2/16,G子像素“点亮”的比例占M*M的小格中G子像素总数的2/16,B子像素“点亮”的比例占M*M的小格中B子像素总数的2/16(未绘示)。
以此类推,可以得出当被舍弃的4位二进制数据对应的十进制取值为3、4、5、6、7、8、9、10、11、12、13、14、15时,共有2+13=15种“点亮”子像素的处理。
综上所述,在该实施例中,“点亮数”=被舍弃的4位二进制数据对应的十进制取值除以BLOCK。
图5A为本发明一实施例中的一图像块BLOCK对应的查找表前半部分的示意图。
图5B为本发明一实施例中的一图像块BLOCK对应的查找表后半部分的示意图。
根据上述的“点亮”子像素的方法,当被舍弃的4位二进制数据对应的十进制取值为1时,生成的该BLOCK中需要“点亮”的子像素查找表如图5A及5B组合之后所示,即图5A及5B组合为当被舍弃的4位二进制数据对应的十进制取值为1时生成的该BLOCK的查找表。在查找表中,用二进制的数据0和1表示“不点亮”和“点亮”;但子像素“点亮”标志与进位标志也可以使用A或B字母、或其他的标识符等字符表示。在本实施例中,用数字1表示该查找表上的各像素“点亮”(或称之为:“进位”)标志,数字0表示该查找表上的各像素“不点亮”(或称之为:“不进位”)。
在本发明的一些实施例中,每个查找表可以以TXT文本、EXCEL表格等其他形式存储。
基于上述的“点亮”子像素的处理,完成对该帧图像中其他BLOCK的“点亮”处理,则对视频流中的一帧图像来说,有15种“点亮”子像素的处理。也就是说,根据上述的“点亮”子像素的方法,一帧视频流图像数据将会生成15种查找表(即,当被舍弃的4位二进制数据对应的十进制取值为1、2、3、4、5、6、7、8、9、10、11、12、13、14、15时,即,“点亮数”的比值为1/16、2/16……15/16,共有15种)。而在一个帧刷新间隔FRAME_N中,将会有15*帧刷新间隔FRAME_N种查找表(举例来说,以帧刷新间隔FRAME_N是16帧为例,则有15*16=240种查找表)。
此处说明一下,该实施例中采用“点亮”一词用以解释,是为了结合图4A、4B、5A及5B所示进行描述,即在图4A、4B、5A及5B部分针对当被舍弃的4位二进制数据对应的十进制取值为1时,该BLOCK中需要“点亮”的子像素做添加底色标示(如图4A及5A第一行第一列R1子像素添加底色标示),即采用了“点亮”一词用以描述。
还需要说明一下,在图4A、4B、5A及5B,当被舍弃的4位二进制数据对应的十进制取值为1时,选择将第一行第一列R1子像素“点亮”只是用于图示说明,并不是表示当被舍弃的4位二进制数据对应的十进制取值为1时一定需要选择将第一行第一列R1子像素“点亮”。当被舍弃的4位二进制数据对应的十进制取值为1,只需要满足一行的中R子像素“点亮”的比例占一行R子像素总数的1/16即可。举例来说,当被舍弃的4位二进制数据对应的十进制取值为1时,第二行“点亮”的R子像素为R9(如图4B中第二行的R9处添加底色处理标示)。也就是说,该实施例中的“点亮”处理方式是随机产生的,并不需要任何的人为设定。
再需要说明一下,当被舍弃的4位二进制数据对应的十进制取值的取值范围为0时,本发明不做上述的处理,即当被舍弃的4位二进制数据对应的十进制取值的取值范围为0时,可直接舍弃后4位二进制数据或在舍弃后4位二进制数据后选择将舍弃后4位二进制进1。例如,如果某一子像素舍弃后四位后为0110001001,而舍弃的后4位二进制数据的十进制值为0时,按照进位处理,即加1;变为0110001010。如果某一子像素舍弃后四位后为0110001001,而舍弃的后4位二进制数据的十进制值为0时,按照不进位处理,不需要进位,则不变。
在该实施例中以一个BLOCK,当被舍弃的4位二进制数据对应的十进制取值为1时为例进行说明,关于视频流中每一帧按BLOCK划分的图像的处理方式与该BLOCK的技术思想相同,在此就不再累述。在该实施例中,当被舍弃的4位二进制数据对应的十进制取值为1时,该BLOCK生成的查找表,如图5A和5B组合后所示。
接下来,在步骤S308中,根据上述生成的查找表,并按照获取该R/G/B子像素的当前帧号FRAME_CUR,子像素行号CUR_ROW、列号CUR_COL,帧刷新间隔FRAME_N可以确定该子像素在查找表中的位置,并根据查找表中的进位标志,判断在舍弃4位二进制数据时是否需要做进位处理。
接着,在步骤S310中,根据上述的查找表执行抖动处理方法,完成抖动处理。
关于在步骤S306、S308及S310中,获取该R/G/B通道数据在查找表中的位置及其进位标志完成抖动处理将会在图6部分再做进一步的说明,请参考图6部分描述。
图3B为本发明另一实施例中的视频流抖动处理方法的流程示意图。如图3B所示,在步骤S302B中,输入Degamma的高比特的R/G/B通道数据。在本发明的一实施例中,输入高比特的R/G/B通道数据可能直接是线性的R/G/B通道数据,则不需要经过Degamma处理。而在该一实施例中,如果上述输入的高比特的R/G/B通道数据是经过Gamma处理的通道数据,则就需要经过Degamma处理,目的是为了获得线性的R/G/B通道数据以有利于执行抖动处理方法。关于如何进行Gamma及Degamma处理,属于本领域技术人员的公知常识,在此不累述。图3B所示其他步骤与图3A相同,且于图3A部分已着重描述,在此不重述。
图6为本发明另一实施例中根据已生成的查找表进行视频流抖动处理方法的流程示意图。在步骤S602中,获取针对视频流抖动处理的R/G/B通道数据、该R/G/B通道数据的当前帧号FRAME_CUR、帧刷新间隔FRAME_N、子像素行号CUR_ROW、列号CUR_COL。
接着,在步骤S604中,根据上述获取的R/G/B通道数据及其当前帧号FRAME_CUR、帧刷新间隔FRAME_N、子像素行号CUR_ROW、列号CUR_COL确定查找表。
举例来说,在图4A、4B、5A及5B部分所述,已经生成了15*16=240种查找表;其中,每帧视频流对应15种查找表。
当获取针对视频流抖动处理的当前帧号FRAME_CUR及帧刷新间隔FRAME_N后。假设获取的当前帧号FRAME_CUR为第34帧,以帧刷新间隔FRAME_N等于16帧为例,此时应将当前帧号FRAME_CUR第34帧对帧刷新间隔FRAME_N等于16帧取余之后所获得的帧号FRAME_CUR为第2帧,则查找到属于第2帧的15种查找表。
根据子像素行号CUR_ROW、列号CUR_COL获取该子像素在每帧图像中的位置。在该实施例中仅描述根据子像素行号CUR_ROW、列号CUR_COL则获取该子像素在每帧图像中的位置。但是,本领域技术人员应可理解,一帧图像被划分为多个BLOCK之后,可以根据多种坐标定义子像素的位置,关于如何能够在一帧图像中根据子像素的坐标定义并查找该子像素应属于本领域技术人员的公知常识,在此不做过多解释。
根据该子像素被舍弃的后4位二进制数据对应的十进制取值查找到属于第2帧的15种查找表中的其中一个查找表。假设被舍弃的后4位二进制数据对应的十进制取值的比值为5/16,则继续查找属于第2帧的15种查找表中的“点亮数”为5/16的该查找表。
接着,在步骤S606中,根据查找表判断该子像素是否需要进位。即,根据子像素行号CUR_ROW、列号CUR_COL判断上述的属于第2帧的15种查找表中的“点亮数”为5/16的该查找表中相同位置的进位标志,获取该子像素的进位标志。举例来说,当获取的子像素行号CUR_ROW、列号CUR_COL为第3行第5列,则相对应的查找上述的属于第2帧的15种查找表中的“点亮数”为5/16的该查找表中第3行第5列的进位标志,获取该子像素的进位标志。
接着,在步骤S608中,当查找到该子像素在查找表中的进位标志为“1”时(即,判断为是),执行进位操作。例如,如果某一子像素舍弃后四位后为0110001001,而舍弃的后4位二进制数据的十进制值为5时,查找属于第2帧的15种查找表中的“点亮数”为5/16的该查找表中该子像素的进位标志为“1”。按照进位处理,即加1;变为0110001010(0110001001+1)。
反之,在步骤S610中,当查找到该子像素在查找表中的进位标志为“0”时(即,判断为否),不执行进位操作。例如,如果某一子像素舍弃后四位后为0110001001,而舍弃的后4位二进制数据的十进制值为5时,查找属于第2帧的15种查找表中的“点亮数”为5/16的该查找表中该子像素的进位标志为“0”.按照不进位处理,不需要进位,则不变。
最后,在步骤S612中,完成抖动处理,输出10bits的图像数据。
需要说明的是,本发明提供的基于视频流抖动处理方法,在一个帧刷新间隔周期内,对每一帧视频流图像数据按照该帧对应的查找表执行抖动处理;同时,在该帧视频流图像数据内,每个位置不同的子像素其抖动处理方式也是随着被舍弃的后4位十进制取值不同而不同,即使在多个帧刷新间隔周期内,当视频流的当前帧号FRAME_CUR对帧刷新间隔取余之后为同一帧,也会因为一帧内又含有15种不同的“点亮”方式而使得视频流图像数据像素抖动处理更加随机、动态。
举例来说,假设现有视频流当前帧号FRAME_CUR为第2帧和第18帧两针。虽然第2帧和第18帧在以帧刷新间隔为16帧的情况下,都会选择对应于第2帧的15种查找表。但是,第2帧和第18帧中会因为相同位置的子像素舍弃的后4位的十进制取值不同,而进一步选择15种查找表中不同的查找表(比如:第2帧第一行第一列的子像素R值舍弃后4位的十进制取值为2,而第18帧第一行第一列的子像素R值舍弃后4位十进制取值为8,进而分别选择“点亮数”为2/16和8/16的两张不同的查找表)。
在图2至图6所述的实施例中,完成抖动处理的方式采用的是舍弃后4位判断是否需要进1的操作。举例来说,被舍弃的后4位二进制数据对应的十进制取值为1、2、3、4、5、6、7、8、9、10、11、12、13、14、15时,共有15种。根据15*16=240种查找表,判断每帧图像中的子像素数据在舍弃后4位后,保留的高bit的10位二进制是否需要进1的操作。
在本发明的另一实施例中,上述的判断是否需要进位操作可以是根据被舍弃的后4位的值采用分档位的进位操作。举例来说,被舍弃的后4位二进制数据对应的十进制取值为1、2、3、4、5、6、7、8、9、10、11、12、13、14、15时,共有15种。可以根据“点亮数”1/16、2/16及3/16按照进1操作;而4/16、5/16及6/16按照进2操作。依此类推,可以得出13/16、14/15及15/16则按照进5操作。更具体的说,假设现有被舍弃后4位后的子像素的二进制值为100111001101。当被舍弃的后4位后的子像素二进制数据对应的十进制值为6/16。假设该子像素在查找表中进位标志为“1”,则根据图2至图5所述的实施例,进位后该子像素为100111001110(即,100111001101+1)。而按照分挡位的进位操作,同样假设该子像素在查找表中为进位标志,则进位后该子像素为100111001111(即,100111001101+10)。
在本发明的另一实施例中,上述查找表可直接为一进位数据量查找表。举例来说,被舍弃的后4位二进制数据对应的十进制取值为1、2、3、4、5、6、7、8、9、10、11、12、13、14、15时,共有15种。每16帧为一个抖动周期,在一个抖动周期种有16*16=240种查找表。本实施例中得查找表并不是进位标志的查找表,而是进位数据量查找表。具体的说,假设现有被舍弃后4位后的子像素的二进制值为100111001101。当被舍弃的后4位后的子像素二进制数据对应的十进制值为6/16。假设该子像素在查找表中进位数据量为“3”时,则根据该实施例,进位后该子像素为100111010000(即,100111001101+11)。
上述通过当前帧号FRAME_CUR先确定该帧对应的查找表及根据被舍弃的后4位子像素二进制数据对应的十进制值确定该帧中15种查找表对应的“点亮数”的查找表,根据上述的方法就可以确定每一子像素的查找表并根据查找表判断进位标志。但是,在本发明的另一实施例中,上述15*16=240种查找表为了数据存储的简便,可能会做相应的数据存储处理。因为数据存储管理的不同,上述确定查找表的方式/方法也将会有所不同。所以,针对查找表进行数据存储管理并相应的更改确定查找表的方法,应属于本领域技术人员的公知常识,在不脱离本发明技术思想的范围内,任何针对查找表的数据存储管理并更改确定查找表的方法都应属于本发明的保护范围内,本发明不做任何限制。
上述的进位标志查找表、分挡位的进位标志查找表以及进位数据量查找表可事先或执行抖动运行处理时来生成、存储。
图7A为本发明一实施例中视频流抖动处理装置的硬件模块示意图。如图7A所示,该抖动处理装置包含一图像处理接口单元模块700、一抖动处理模块702、一查找表单元模块704、及一显示模块708。
上述图像处理接口单元模块700耦接至抖动处理模块702,该图像处理接口单元模块700获取针对视频流抖动处理的图像数据。其中,该图像数据包含视频流的当前帧号FRAME_CUR、色彩通道数据(或称之为:色彩通道像素值)及像素位置数据(即子像素行号CUR_ROW及列号CUR_COL坐标或其他可定义像素位置的坐标数据)等用于图像处理的数据。
上述查找表单元模块704可事先或执行抖动运行处理时来生成、存储基于图像数据随机生成视频流对应的查找表。
上述查找表单元模块704获取待处理帧中的R/G/B各通道数据对应的二进制数据。例如,若视频流中图像为14bits数据,当将该数据映射到10bits数据,需要舍弃后4位二进制数据,则查找表模块704基于被舍弃的后4位二进制数据随机生成视频流对应的查找表。具体的,当该待处理帧的14bits数据01100010011010时,则查找表生成模块704获取的帧数据中末尾4位二进制数据,即:1010。
查找表单元模块704基于所述色彩通道数据需移位的二进制数据,确定查找表的数量;其中,所述色彩通道数据需移位的二进制数据经转换为十进制取值后用于确定查找表的数量;基于所述十进制取值范围内的多个取值确定各查找表上进位标志的数量;根据所述查找表的数量和所述进位标志的数量,对应生成多个查找表。
上述抖动处理模块702根据查找表的进位标志判断该视频流的色彩通道数据是否需要进位;根据进位标志完成抖动处理,并输出经抖动处理的色彩通道数据;其中,该视频流以帧刷新间隔为周期对每帧图像的色彩通道数据进行抖动处理。
关于查找表单元模块704如何生成查找表及抖动处理模块702如何根据查找表获取相应的子像素进位标志并执行相应的抖动处理部分的内容,请参考图2至图6方法部分所述,在此不重述。
在一些实施例中,该抖动处理模块702更包含一位分离模块7022及一进位模块7024。位分离模块7022用于将R/G/B各通道数据高bit位与需移位的低bit进行分离。进位模块7024用于对R/G/B各通道数据进行进位操作。具体的,该进位模块7024可以为一加法器。
上述显示模块708用于显示经抖动处理的图像数据。该显示模块708可以为LCD、LED、AMOLED等电子显示器。
图7B为本发明另一实施例中视频流抖动处理装置的硬件模块示意图。相比于图7A,图7B增加一转换处理模块706。转换处理模块706用于将经抖动处理完成的图像数据转换为适合显示模块708显示的图像数据,且其他模块均与图7A相同,不再累述。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明的保护范围应以所附权利要求为准。
Claims (24)
1.一种视频流抖动处理方法,其特征在于,所述方法包括:
获取针对视频流抖动处理的图像数据;
根据上述获取的图像数据确定查找表;
根据查找表的进位标志判断该视频流的色彩通道数据是否需要进位;
根据进位标志完成抖动处理,并输出经抖动处理的色彩通道数据;
其中,该视频流以帧刷新间隔为周期对每帧图像的色彩通道数据进行抖动处理。
2.根据权利要求1所述的方法,其特征在于,所述查找表是基于所述色彩通道数据需移位的二进制数据,确定查找表的数量;其中,所述色彩通道数据需移位的二进制数据经转换为十进制取值后用于确定查找表的数量;
基于所述十进制取值范围内的多个取值确定各查找表上进位标志的数量;
根据所述查找表的数量和所述进位标志的数量,对应生成多个查找表。
3.根据权利要求2所述的方法,其特征在于,所述查找表的数量为上述十进制取值的最大值乘以帧刷新间隔。
4.根据权利要求2所述的方法,其特征在于,所述进位标志的数量为上述十进制取值所决定的比值并根据该比值确定各查找表上进位标志的数量。
5.根据权利要求4所述的方法,其特征在于,所述比值等于上述十进制的取值除以图像分块的大小。
6.根据权利要求5所述的方法,其特征在于,所述查找表中的进位标志数量满足:在图像分块大小范围内所述查找表行子像素进位标志的数量,与所述查找表行子像素对应的列子像素的进位标志的数量一致。
7.根据权利要求6所述的方法,其特征在于,所述查找表中的进位标志数量满足:在图像分块大小范围内再划分复数个区格,在该区格中依据上述比值确定进位标志数量。
8.根据权利要求1所述的方法,其特征在于,所述确定查找表为基于所述图像数据的帧号,将所述帧号对帧刷新间隔取余,得到余数;
基于所述余数与多个所述查找表,确定所述帧号对应的查找表。
9.根据权利要求5所述的方法,其特征在于,所述确定进位标志为根据待处理帧对应的查找表,基于上述比值确定进位标志。
10.根据权利要求1所述的方法,其特征在于,所述进位为上述色彩通道数据的二进制数据移位后再基于查找表判断是否需要进位。
11.根据权利要求1所述的方法,其特征在于,所述查找表为一分挡位的进位标志查找表。
12.根据权利要求1所述的方法,其特征在于,所述查找表为一进位数据量查找表。
13.一种视频流抖动处理装置,其特征在于,所述装置包括:
图像处理接口单元模块,用于获取针对视频流抖动处理的图像数据;
查找表单元模块,用于根据上述获取的图像数据确定查找表;
抖动处理模块,用于根据查找表的进位标志判断该视频流的色彩通道数据是否需要进位;基于进位标志完成抖动处理,并输出经抖动处理的色彩通道数据;
其中,该视频流以帧刷新间隔为周期对每帧图像的色彩通道数据进行抖动处理。
14.根据权利要求13所述的装置,其特征在于,所述查找表单元模块是基于所述色彩通道数据需移位的二进制数据,确定查找表的数量;其中,所述色彩通道数据需移位的二进制数据经转换为十进制取值后用于确定查找表的数量;
基于所述十进制取值范围内的多个取值确定各查找表上进位标志的数量;
根据所述查找表的数量和所述进位标志的数量,对应生成多个查找表。
15.根据权利要求14所述的装置,其特征在于,所述查找表的数量为上述十进制取值的最大值乘以帧刷新间隔。
16.根据权利要求14所述的装置,其特征在于,所述进位标志的数量为上述十进制取值所决定的比值并根据该比值确定各查找表上进位标志的数量。
17.根据权利要求16所述的装置,其特征在于,所述比值等于上述十进制的取值除以图像分块的大小。
18.根据权利要求17所述的装置,其特征在于,所述查找表中的进位标志数量满足:在图像分块大小范围内所述查找表行子像素进位标志的数量,与所述查找表行子像素对应的列子像素的进位标志的数量一致。
19.根据权利要求18所述的装置,其特征在于,所述查找表中的进位标志数量满足:在图像分块大小范围内再划分复数个区格,在该区格中依据上述比值确定进位标志数量。
20.根据权利要求13所述的装置,其特征在于,所述确定查找表为基于所述图像数据的帧号,将所述帧号对帧刷新间隔取余,得到余数;
基于所述余数与多个所述查找表,确定所述帧号对应的查找表。
21.根据权利要求17所述的装置,其特征在于,所述确定进位标志为根据待处理帧对应的查找表,基于上述比值确定进位标志。
22.根据权利要求13所述的装置,其特征在于,所述进位为上述色彩通道数据的二进制数据移位后再基于查找表判断是否需要进位。
23.根据权利要求13所述的装置,其特征在于,所述查找表为一分挡位的进位标志查找表。
24.根据权利要求13所述的装置,其特征在于,所述查找表为一进位数据量查找表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111382331.2A CN116170686A (zh) | 2021-11-22 | 2021-11-22 | 视频流抖动处理方法及其装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111382331.2A CN116170686A (zh) | 2021-11-22 | 2021-11-22 | 视频流抖动处理方法及其装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116170686A true CN116170686A (zh) | 2023-05-26 |
Family
ID=86409983
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111382331.2A Pending CN116170686A (zh) | 2021-11-22 | 2021-11-22 | 视频流抖动处理方法及其装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116170686A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1734739A1 (en) * | 2005-06-13 | 2006-12-20 | THOMSON Licensing | Apparatus and method for image processing of digital image pixels |
US20070024636A1 (en) * | 2005-08-01 | 2007-02-01 | Jui-Lin Lo | Apparatus and method for color dithering |
CN104240672A (zh) * | 2014-09-12 | 2014-12-24 | 京东方科技集团股份有限公司 | 一种视频处理装置及方法 |
CN112614457A (zh) * | 2020-04-27 | 2021-04-06 | 西安诺瓦星云科技股份有限公司 | 显示控制方法、装置和*** |
CN113590853A (zh) * | 2021-07-13 | 2021-11-02 | 深圳市洲明科技股份有限公司 | 一种灰阶自适应扩展方法、fpga***、设备及介质 |
-
2021
- 2021-11-22 CN CN202111382331.2A patent/CN116170686A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1734739A1 (en) * | 2005-06-13 | 2006-12-20 | THOMSON Licensing | Apparatus and method for image processing of digital image pixels |
US20070024636A1 (en) * | 2005-08-01 | 2007-02-01 | Jui-Lin Lo | Apparatus and method for color dithering |
CN104240672A (zh) * | 2014-09-12 | 2014-12-24 | 京东方科技集团股份有限公司 | 一种视频处理装置及方法 |
CN112614457A (zh) * | 2020-04-27 | 2021-04-06 | 西安诺瓦星云科技股份有限公司 | 显示控制方法、装置和*** |
CN113590853A (zh) * | 2021-07-13 | 2021-11-02 | 深圳市洲明科技股份有限公司 | 一种灰阶自适应扩展方法、fpga***、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4845825B2 (ja) | 多色表示装置 | |
JP4613702B2 (ja) | ガンマ補正、画像処理方法及びプログラム、並びにガンマ補正回路、画像処理装置、表示装置 | |
US7184053B2 (en) | Method for processing video data for a display device | |
US9024964B2 (en) | System and method for dithering video data | |
US7796144B2 (en) | Gamma correction device of display apparatus and method thereof | |
US20090322713A1 (en) | Image processing circuit, and display panel driver and display device mounting the circuit | |
KR100554580B1 (ko) | 화상 처리 장치, 화상 처리 방법, 화상 표시 장치, 및이동 전자 기기 | |
KR102103730B1 (ko) | 디스플레이 구동장치 및 이를 포함하는 디스플레이 장치 | |
CN101388950B (zh) | 用于数字图像的内容适应式对比增进方法及装置 | |
CN1389840A (zh) | 处理显示在显示装置上的视频图像数据的方法和设备 | |
KR20040086600A (ko) | 작은 크기의 감마 보정 메모리를 구비한 비디오 프로세서 | |
KR20130002960A (ko) | 표시 장치 및 표시 장치 제어 회로 | |
JP4473971B2 (ja) | プラズマパネルをスキャンする方法及び装置 | |
GB2403089A (en) | More uniform luminance correction | |
WO2022032919A1 (zh) | 一种自适应灰度的校正数据控制方法、装置及led显示屏 | |
CN111128065B (zh) | 显示面板的抖动方法、显示装置及存储介质 | |
CN113658564A (zh) | 一种图像色深转换的方法、电子设备 | |
CN111415629B (zh) | 一种显示设备驱动方法、显示设备 | |
CN109979386B (zh) | 显示面板的驱动方法及装置 | |
CN116170686A (zh) | 视频流抖动处理方法及其装置 | |
CN112634822A (zh) | 一种基于普通恒流源驱动芯片的led灰度显示控制方法 | |
CN115914519A (zh) | 基于定向调制和抖动的帧速率转换装置及方法 | |
US6819335B2 (en) | Number-of-gradation-levels decreasing method, image displaying method, and image display | |
TWI328793B (en) | High quality picture in low performance display | |
CN116469336B (zh) | 一种彩色微显示芯片的数字驱动方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Country or region after: China Address after: 200135, 11th Floor, Building 3, No. 889 Bibo Road, China (Shanghai) Pilot Free Trade Zone, Pudong New Area, Shanghai Applicant after: Granfei Intelligent Technology Co.,Ltd. Address before: 200135 Room 201, No. 2557, Jinke Road, China (Shanghai) pilot Free Trade Zone, Pudong New Area, Shanghai Applicant before: Gryfield Intelligent Technology Co.,Ltd. Country or region before: China |