1.本发明涉及图像闪烁检测(image flicker detection)技术,尤其涉及一种具有图像闪烁检测机制的图像获取装置(image retrieving apparatus)及其图像闪烁检测方法。
背景技术:2.在交流电的影响下,人工光源会出现闪烁。由于闪烁速度足够快,人眼无法观察到闪烁。但对于图像获取装置而言,其感光组件的曝光时间短,能够记录下这种闪烁。
3.以感光组件的类型为依据,图像获取装置可以分为整个阵列同时曝光以及依阵列排列顺序逐行曝光的形式。对于整个阵列同时曝光的形式,每行的曝光起始时间是固定的,人工光源不会对获取的图像造成影响。然而,对于依阵列排列顺序逐行曝光的形式,每行的曝光时间长度虽然相同,但是起始时间不同。在光源的影响下,容易造成每行的亮度不同,而使获取的图像产生以行为单位的闪烁,现象类似于动态的水波纹。因此,如果图像获取装置不具备图像闪烁检测的技术,将无法快速地进行相应的处理。
技术实现要素:4.鉴于先前技术的问题,本发明的目的在于提供一种具有图像闪烁检测机制的图像获取装置及其图像闪烁检测方法,以改善先前技术。
5.本发明包含一种具有图像闪烁检测机制的图像获取装置,包含:图像获取电路、存储电路以及处理电路。图像获取电路包含多行感光组件,该多行感光组件被配置为逐行进行图像获取。存储电路被配置为存储计算机可执行指令。处理电路被配置为执行计算机可执行指令,以执行图像闪烁检测方法。图像闪烁检测方法包含下列步骤。借助于图像获取电路获取当前图像。计算当前图像的多个第一行像素与先前图像中对应于前述多个第一行像素的多个第二行像素之间在预定低频范围的当前变化比例;在确定当前变化比例大于比例阈值,且先前图像对应的先前变化比例也大于比例阈值时,递增闪烁检测次数;当闪烁检测次数大于闪烁次数阈值时,确定闪烁状况存在;以及当该闪烁检测次数不大于该闪烁次数阈值时,设置当前图像为先前图像,设置当前变化比例为先前变化比例,并借助于图像获取电路获取下一图像设置为当前图像以重复上述步骤。
6.本发明还包含一种图像闪烁检测方法,应用于具有图像闪烁检测机制的图像获取装置中,包含:使包含多行感光组件的图像获取电路逐行进行图像获取,以获取当前图像;计算当前图像的多个第一行像素与先前图像中对应于前述多个第一行像素的多个第二行像素之间在预定低频范围的当前变化比例;在确定当前变化比例大于比例阈值,且先前图像对应的先前变化比例也大于比例阈值时,递增闪烁检测次数;当闪烁检测次数大于闪烁次数阈值时,确定闪烁状况存在;以及当闪烁检测次数不大于闪烁次数阈值时,设置当前图像为先前图像,设置当前变化比例为先前变化比例,并借助于图像获取电路获取下一图像
设置为当前图像以重复上述步骤。
7.有关本公开的特征、实现与功效,将配合附图并结合实施例详细说明如下。
附图说明
8.图1示出了根据本发明的实施例的一种具有图像闪烁检测机制的图像获取装置的框图;以及
9.图2示出了根据本发明的实施例的一种图像闪烁检测方法的流程图。
具体实施方式
10.本发明的目的在于提供一种具有图像闪烁检测机制的图像获取装置及其图像闪烁检测方法,借助于持续计算当前图像与先前图像的在默认低频范围的变化比例来确定闪烁检测次数,进而在闪烁检测次数大于闪烁次数阈值时确定闪烁状况的存在。
11.请参考图1。图1示出了根据本发明的实施例的一种具有图像闪烁检测机制的图像获取装置100的框图。图像获取装置100包含图像获取电路110、存储电路120以及处理电路130。
12.图像获取电路110包含排列为阵列形式的感光组件(未示出)。这些感光组件将以行(row)为单位,在每个图像获取周期中逐行进行曝光,以进行图像获取。每行感光组件进行图像获取的时间长度为曝光时间。
13.存储电路120可以为被配置为存储数据的任何存储装置,例如但不限于随机存取存储器(random access memory;ram)、只读存储器(read only memory;rom)或硬盘。需注意的是,存储电路120在不同实施例中,可以仅包含单个上述的存储装置,或是包含多个上述的存储装置,以存储不同类型的数据。在实施例中,存储电路120被配置为存储计算机可执行指令125。
14.处理电路130电性耦合到图像获取电路110以及存储电路120。在实施例中,处理电路130可以被配置为从存储电路120获取并执行计算机可执行指令125。计算机可执行指令125包含例如但不限于通信电路110以及存储电路120等硬件模块的固件/驱动程序(firmware/driver)与相关指令,以存取图像获取电路110以及存储电路120的信号或数据进行运算,执行图像获取装置100的功能。
15.以下将针对图像获取装置100的操作进行更详细的说明。
16.请同时参考图2。图2示出了根据本发明的实施例的一种图像闪烁检测方法200的流程图。在实施例中,处理电路130可以从存储电路120获取计算机可执行指令125,以执行图像闪烁检测方法200。图像闪烁检测方法200的实施例如图2所示,包含下列步骤。
17.在步骤s201:处理电路130借助于图像获取电路110获取当前图像ci。
18.在步骤s202:处理电路130确定图像获取电路110的感光组件的曝光时间是否为特定光源闪烁频率对应的半周期的整数倍。
19.在实施例中,图像获取电路110所在的环境中具有以特定光源闪烁频率闪烁的光源。其中,特定光源闪烁频率为例如但不限于50赫兹或60赫兹,其所对应的半周期将分别为10毫秒以及8.3毫秒(为近似数值,实际为8.333..)。
20.在处理电路130确定特定光源的曝光时间为半周期的整数倍(例如50毫秒的曝光
时间,同时为10毫秒的5倍以及8.3毫秒的6倍)时,这种光源将不会对图像获取电路110的图像获取造成影响。此时,流程将回到步骤s201,以获取下一图像作为当前图像ci,以执行图像闪烁检测方法。
21.在处理电路130确定特定光源的曝光时间不为半周期的整数倍时,这种光源容易使图像获取电路110所获取的图像中,不同行的亮度有所不同,形成以行为单位且类似动态水波纹的闪烁现象。因此,需要继续进行图像闪烁检测方法后续的步骤,进一步确认图像获取电路110获取的图像实际上是否有闪烁状况的发生。
22.在步骤s203:处理电路130计算当前图像ci的多个第一行像素与先前图像pi中对应于前述多个第一行像素的多个第二行像素之间在预定低频范围的当前变化比例,并递增图像闪烁检测方法的执行次数。其中,先前图像pi为例如但不限于图像获取电路110在前一个图像获取周期中所获取的图像,并存储于例如但不限于存储电路120中。
23.以下将针对当前变化比例的计算方式的示例进行说明。
24.在实施例中,处理电路130可以对当前图像ci每隔固定行数进行采样,以获得多行像素。举例而言,在图像获取电路110的感光组件共有h行以及w列时,所获取的当前图像ci的总像素行数为h,且每行将有w个像素。处理电路130可每隔h/n行进行采样,获得采样的n行像素。例如,若当前图像ci的总像素行数为100,处理电路130的采样想获得20行的行像素,处理电路130可以在当前图像ci上每隔5(100/20)行进行一次行采样,需要注意的是,上述的采样方式仅为示例,本发明不限于此。
25.根据上述,第i个采样行与原本当前图像ci的行数hi的对应关系可以例如以下式表示:
26.hi=i
×
(h/n)
ꢀꢀꢀ
(式1)
27.处理电路130进而计算对应于当前图像ci的多个当前像素平均值,各当前像素平均值对应于当前图像ci所采样的n行像素中的一行像素。其中,若将第i个采样行的每个像素值表示为cur_pixel(hi,j),第i个采样行的像素值总和cur_sum_i可以用下式表示:
[0028][0029]
在上述两式中,i的范围为1~n。进一步地,第i个采样行的当前像素平均值可以为行像素值总和除以列数(w),以下式表示:
[0030]
cur_mean_i=cur_sum_i/w
ꢀꢀꢀ
(式3)
[0031]
并且,处理电路130计算对应于先前图像pi的多个先前像素平均值,每个先前像素平均值对应于先前图像pi的多行像素中的一行像素。其中,与当前图像ci的当前像素平均值计算方式相同,处理电路130对应先前图像pi进行相同行数的采样(例如,当前图像ci的第15行为采样行,在先前图像pi的第15行也进行采样),进行每个采样行的像素值(例如,在当前图像ci中的采样行中的像素可以称为第一行像素,在先前图像pi中对应的采样行中的像素可以称为第二行像素)总和计算,并根据此来进行先前像素平均值的计算,在此不再赘述。其中,第i个采样行的先前像素平均值表示为prev_mean_i。其中,i的范围为1~n。
[0032]
处理电路130进而对应每个采样行计算当前像素平均值与先前像素平均值间的多个像素平均差值。其中,对应第i个采样行的像素平均差值sub_i可以用下式表示:
[0033]
sub_i=cur_mean_i-prev_mean_i
ꢀꢀꢀ
(式4)
[0034]
其中,i的范围为1~n。因此,此n个像素平均差值sub_i可以借助于序列array_sub以下式表示:
[0035]
array_sub[i]=sub_i
ꢀꢀꢀ
(式5)
[0036]
处理电路130对像素平均差值的序列进行快速傅立叶变换运算,以产生复数(complex number)序列,并可以用下式表示:
[0037]
array_fft=fft(array_sub)
ꢀꢀꢀ
(式6)
[0038]
处理电路130对此复数序列的前半部分的多个序列元素(例如i的范围为1~n/2,但不限于此)进行模数运算以产生频率序列array_freq,并可以用下式表示:
[0039]
array_freq[i]=mod(array_fft[i])
ꢀꢀꢀ
(式7)
[0040]
接着,处理电路130将对频率序列中的一个预定低频范围内(例如i的范围为th1~th2)除直流成分外(对应于i小于th1的部分)的低频频率序列元素计算总和,并对所有频率序列中除直流成分外(对应于i小于th1的部分)的其他频率序列元素计算总和,可以用下面两个等式表示:
[0041][0042][0043]
进一步地,处理电路130计算上述两个总和之间的比值,以作为当前变化比例ra,并可以用下式表示:
[0044]
ra=low_freq_sum/freq_sum
ꢀꢀꢀ
(式10)
[0045]
因此,处理电路130可以借助于上述的计算,得知当前图像ci与先前图像pi之间的像素差距是否在预定低频范围具有较大的变化。需要注意的是,上述的计算方式仅为示例。在其他实施例中,也可能根据其他的计算方式以及范围的设定,确定在当前图像ci与先前图像pi之间,像素在预定低频范围中的变化幅度。当执行完步骤s203,图像闪烁检测方法的执行次数的值增加1。
[0046]
在步骤s204:处理电路130确定执行次数是否大于预定的检测次数阈值。
[0047]
在步骤s205:在执行次数大于检测次数阈值时,处理电路130确定闪烁状况不存在。若执行次数大于检测次数阈值,表示多次检测均未发现光源引起的闪烁状况,此时可以停止图像闪烁检测方法200。
[0048]
在步骤s206:若执行次数不大于检测次数阈值时,处理电路130可以再次确定当前图像ci的当前变化比例是否大于预定的比例阈值(例如20%,但不限于此)。
[0049]
在步骤s207:在当前变化比例不大于预定的比例阈值时,处理电路130使已经检测到的闪烁检测次数(该闪烁检测次数在后面描述)归零。
[0050]
在步骤s208:处理电路130进一步设置当前图像为先前图像,以及设置当前变化比例为先前变化比例。接着,处理电路130将回到步骤s201,借助于图像获取电路110获取并设置下一图像为当前图像ci以重复执行后续步骤。也即,将当前图像作为先前图像来进行参考,等待下一图像输入来作为新的当前图像。
[0051]
在步骤s209:在当前变化比例大于比例阈值时,处理电路130将进一步确定当前图
像ci的场景稳定度是否大于稳定度阈值。
[0052]
在实施例中,处理电路130是根据感光组件在获取当前图像ci与先前图像pi时,曝光时间以及曝光增益的差距来决定场景稳定度。
[0053]
更详细地说,处理电路130在感光组件对应于当前图像ci的曝光时间以及对应于先前图像pi的先前曝光时间之间的曝光时间差距大于时间阈值,或在感光组件对应于当前图像ci的曝光增益与对应于先前图像pi的先前曝光增益间的曝光增益差距大于增益阈值时,处理电路130确定图像获取电路110所获取图像的场景发生较大的变化而使得当前图像ci相较于先前图像pi改变较多的曝光时间与曝光增益,并确定当前图像ci的场景稳定度不大于稳定度阈值。
[0054]
而处理电路130在曝光时间差距以及曝光增益差距皆不大于对应的阈值时,则确定图像获取电路110所获取图像的场景大致上是静止的,而不需要改变过多曝光时间与曝光增益,并确定当前图像ci的场景稳定度大于稳定度阈值。
[0055]
需要注意的是,在不同的实施例中,处理电路130可以仅根据当前图像ci以及前一个先前图像pi进行场景稳定度的确定,也可根据当前图像ci以及多个先前时间点的图像进行场景稳定度的确定。本发明不限于此。
[0056]
在步骤s210:在当前图像ci的场景稳定度不大于稳定度阈值时,处理电路130使图像闪烁检测方法的执行次数归零。也即,处理电路130确定场景可能已改变,重新执行图像闪烁检测方法且重计数。
[0057]
接着,流程将执行步骤s207以及s208,处理电路130使已经检测到的闪烁检测次数归零,并设置当前图像为先前图像,以及设置当前变化比例为先前变化比例。接着,处理电路130将回到步骤s201,借助于图像获取电路110获取并设置下一图像为当前图像ci以重复执行后续步骤。
[0058]
在步骤s211:在当前图像ci的场景稳定度大于稳定度阈值时,处理电路130进一步确定先前图像pi对应的先前变化比例是否大于比例阈值。
[0059]
在先前图像pi对应的先前变化比例不大于比例阈值时,流程将执行步骤s207以及s208,处理电路130使已经检测到的闪烁检测次数归零,并设置当前图像为先前图像,以及设置当前变化比例为先前变化比例。接着,处理电路130将回到步骤s201,借助于图像获取电路110获取并设置下一图像为当前图像ci以重复执行后续步骤。
[0060]
在步骤212:在先前图像pi对应的先前变化比例大于比例阈值时,表示连续两个图像(也即先前图像pi以及当前图像ci)的变化比例均大于比例阈值。因此,处理电路130确定先前图像pi以及当前图像ci间发生闪烁,将递增闪烁检测次数。
[0061]
在步骤213:处理电路130确定闪烁检测次数是否大于闪烁次数阈值。
[0062]
在闪烁检测次数不大于闪烁次数阈值时,流程将执行步骤s208,处理电路130设置当前图像为先前图像,以及设置当前变化比例为先前变化比例。接着,处理电路130将回到步骤s201,借助于图像获取电路110获取并设置下一图像为当前图像ci以重复执行后续步骤。
[0063]
在步骤214:在闪烁检测次数大于闪烁次数阈值时,处理电路130将确定闪烁状况存在。在实施例中,处理电路130可以在确定闪烁状况存在时,继续进行例如但不限于消除闪烁的过程。
[0064]
在一些实施例中,处理电路130可以在确定闪烁状况存在后,调整图像获取电路110的感光组件的曝光时间(例如,将曝光时间设置为前述特定光源频率的半周期的整数倍),以避免后续图像出现闪烁状况。
[0065]
在一些实施例中,处理电路130可以在确定闪烁状况存在时,根据闪烁状况确定前述特定光源的频率(例如,曝光时间设置为50赫兹的整数倍时存在图像闪烁状况,但曝光时间设置为60赫兹的整数倍(但非50与60的公倍数)时不存在图像闪烁状况,那么处理电路130可以确定特定光源的频率可能为60赫兹)。
[0066]
在一些实施例中,处理电路130可以在确定闪烁状况存在后,根据特定光源的频率来确定图像获取电路110所在的环境中是否存在导致图像闪烁的人工光源,进而确定图像获取电路110所在的环境是否为室内。但本发明可以执行的后续过程并不限于前述实施例。
[0067]
需要注意的是,上述的实施方式仅为示例。在其他实施例中,本领域技术人员应当可以在不违背本发明的精神下进行更改。举例而言,本实施方式中所提及的步骤中,部分步骤可在不影响图像闪烁的检测结果下选择性地执行或不执行。并且,本实施方式中所提及的步骤中,除特别阐述其顺序外,均可以依实际需要调整其前后顺序,甚至可以同时或部分同时执行。
[0068]
综上所述,本发明中具有图像闪烁检测机制的图像获取装置及其图像闪烁检测方法可以借助于持续计算当前图像与先前图像的在默认低频范围的变化比例来确定闪烁检测次数,进而在闪烁检测次数大于闪烁次数阈值时确定闪烁状况的存在。
[0069]
虽然本公开的实施例如上所述,然而这些实施例并非用来限定本公开,本领域技术人员可以依据本公开的明示或隐含的内容对本公开的技术特征进行变化,这些变化均可能属于本公开所寻求的专利保护范围,换言之,本公开的专利保护范围需要以本说明书的权利要求书为准。
[0070]
【符号说明】
[0071]
100:图像获取装置
[0072]
110:图像获取电路
[0073]
120:存储电路
[0074]
125:计算机可执行指令
[0075]
130:处理电路
[0076]
200:图像闪烁检测方法
[0077]
s201~s214:步骤
[0078]
ci:当前图像
[0079]
pi:先前图像