CN110738629A - 一种镜头脏污的检测方法、终端及计算机可读存储介质 - Google Patents
一种镜头脏污的检测方法、终端及计算机可读存储介质 Download PDFInfo
- Publication number
- CN110738629A CN110738629A CN201810710488.5A CN201810710488A CN110738629A CN 110738629 A CN110738629 A CN 110738629A CN 201810710488 A CN201810710488 A CN 201810710488A CN 110738629 A CN110738629 A CN 110738629A
- Authority
- CN
- China
- Prior art keywords
- value
- determining
- image
- contamination
- lens
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/80—Camera processing pipelines; Components thereof
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Studio Devices (AREA)
Abstract
本发明实施例公开了一种镜头脏污的检测方法、终端及计算机可读存储介质,其中,所述方法包括:获取待检测图像,其中,所述待检测图像为所述摄像头采集到的预览图像;获取所述待检测图像的第一沾污程度参数和检测结果集合中的图像的第二沾污程度参数;如果根据所述第一沾污程度参数和所述第二沾污程度参数,确定所述摄像头的镜头存在脏污,输出清洁镜头的提示信息。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种镜头脏污的检测方法、终端及计算机可读存储介质。
背景技术
随着移动通信技术的发展,特别是移动网络和智能终端的推广应用,移动互联网领域发展迅猛。目前来说,智能终端的功能早已不是单纯用来满足人们的相互联系,而成为人们日常生活中十分重要的移动个人娱乐终端。
如今拍照功能已成为智能终端必不可少的功能,人们可以随时随地的记录精彩瞬间。目前智能终端上的镜头通常都是裸露的,而不是向专业的摄影设备有镜头盖保护镜头,因此在日常使用中难免会粘上指纹、油污或者进入灰尘。由于镜头的物理焦距一般非常小,这意味着镜头保护玻璃沾的脏东西处于成像距离范围里,会导致图片不清晰,对比度差等问题,从而影响成像的效果。而用户可能无法及时知晓成像效果差的原因,而不是及时清理,导致用户拍照体验差。
发明内容
为解决现有存在的技术问题,本发明实施例提供一种镜头脏污的检测方法、终端及计算机可读存储介质,解决了现有技术中用户无法及时获知镜头是否脏污而导致用户拍照体验差的问题,能够自动识别镜头是否脏污,并提示用户清理,如此能够避免因镜头脏污造成的图像不清晰、对比度差等问题,从而提高成像质量。
本发明实施例的技术方案是这样实现的:
第一方面,本发明实施例提供一种镜头脏污的检测方法,应用于终端,所述终端至少包括摄像头,所述方法包括:
获取待检测图像,其中,所述待检测图像为所述摄像头采集到的预览图像;
获取所述待检测图像的第一沾污程度参数和检测结果集合中的图像的第二沾污程度参数;
如果根据所述第一沾污程度参数和所述第二沾污程度参数,确定所述摄像头的镜头存在脏污,输出清洁镜头的提示信息。
第二方面,本发明实施例提供一种终端,所述终端至少包括摄像头、存储器、通信总线和处理器,其中:
所述摄像头,配置为采集图像;
所述存储器,配置为存储镜头脏污的检测程序;
所述通信总线,配置为实现处理器和存储器之间的连接通信;
所述处理器,配置为执行存储器中存储的镜头脏污的检测程序,以实现本发明其他实施例提供的镜头脏污的检测方法中的步骤。
第三方面,本发明实施例提供一种计算机可读存储介质,所述计算机存储介质中存储有计算机可执行指令,该计算机可执行指令配置为执行本发明其他实施例提供的镜头脏污的检测方法中的步骤。
本发明实施例提供一种镜头脏污的检测方法、终端及计算机可读存储介质,其中,首先获取待检测图像,其中,所述待检测图像为所述摄像头采集到的预览图像;然后获取所述待检测图像的第一沾污程度参数和检测结果集合中的图像的第二沾污程度参数;如果根据所述第一沾污程度参数和所述第二沾污程度参数,确定所述摄像头的镜头存在脏污,输出清洁镜头的提示信息;如此能够实时、自动识别镜头是否脏污,并提示用户清理,进而能够避免因镜头脏污造成的图像不清晰、对比度差等问题,从而提高成像质量。
附图说明
在附图(其不一定是按比例绘制的)中,相似的附图标记可在不同的视图中描述相似的部件。具有不同字母后缀的相似附图标记可表示相似部件的不同示例。附图以示例而非限制的方式大体示出了本文中所讨论的各个实施例。
图1为本发明实施例镜头脏污的检测方法的实现流程示意图;
图2为本发明实施例镜头脏污的检测方法的实现流程示意图;
图3为本发明实施例镜头脏污的检测方法的实现流程示意图;
图4为本发明实施例对单张预览图片进行检测的实现流程示意图;
图5为本发明实施例确定contrast_radio的实现流程示意图;
图6为本发明实施例终端的组成结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对发明的具体技术方案做进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
实施例一
本发明实施例提供一种镜头脏污的检测方法,图1为本发明实施例镜头脏污的检测方法的实现流程示意图,如图1所示,所述方法包括以下步骤:
步骤S101,获取待检测图像。
这里,所述步骤S101可以是由终端来实现的,进一步地,可以是移动终端,例如可以是移动电话(手机)、iPad、笔记本、穿戴式智能手表等具有无线通信能力的移动终端,所述移动终端至少包括摄像头和显示屏幕,所述摄像头可以与终端的显示屏幕所在平面的同一面,也可以位于与所述终端显示屏幕所在平面的相对面,所述摄像头的镜头较小且一般是裸露在外面的。
所述待检测图像为所述摄像头采集到的预览图像,那么就能够在用户拍照时实时对镜头的脏污情况进行检测,避免因为镜头脏污造成图像成像质量低下的问题。
在其他实施例中,还可以获取所述待检测图像的特征信息,其中所述待检测图像的特征信息可以是所述图像的灰度信息、亮度信息等等。根据所述特征信息可以确定所述待检测图像与其他图像是否为相似的图像。
步骤S102,获取所述待检测图像的第一沾污程度参数和检测结果集合中的图像的第二沾污程度参数。
这里,所述步骤S102可以是由终端实现的。
获取所述待检测图像的第一沾污程度参数在实现过程中可以是对所述待检测图像进行沾污检测,以获取第一沾污程度参数和第一检测结果,以确定所述待检测图像是否为沾污图像。在实现过程中,可以首先对预览图像对应的像素矩阵进行奇异值分解,并计算奇异值的总和,求出大于奇异值总和的一定阈值的奇异值的个数,如果奇异值的个数较大,则认为预览图像中所包含的信息较多,反之则是信息较少的图像。然后对预览图像的直方图进行分析,确定直方图较暗部分的直方图平均值与较亮部分直方图平均值,并计算两者的比值,其中,两者的比值即为第一沾污程度参数。
在其他实施例中,所述终端会根据第一沾污程度参数和奇异值个数来确定第一检测结果,并将所述第一沾污程度参数和第一检测结果加入检测结果集合中。
步骤S103,如果根据所述第一沾污程度参数和所述第二沾污程度参数,确定所述摄像头的镜头存在脏污,输出清洁镜头的提示信息。
这里,所述步骤103可以是由终端实现的。
所述步骤S103在实现的过程中,根据所述第一沾污程度参数和所述第二沾污程度参数,确定所述摄像头的镜头存在脏污至少可以通过以下两种方式实现:
第一种方式:根据所述检测结果集合中的图像的第二沾污程度参数确定所述检测结果集合中的沾污图像的个数,如果所述第一检测结果表明所述待检测图像为沾污图像且检测结果集合中的沾污图像的个数大于第一阈值,确定所述摄像头的镜头存在脏污。
第二种方式:首先为待检测图像确定一个第一权值,再从检测结果集合中选取P个历史图像,并获取这P个历史图像的第二沾污程度参数,再根据第一权值和这P个历史图像的存储时间分别确定这P个历史图像的第二权值,将待检测图像和P个历史图像的沾污程度参数和权值进行加权平均,得到第五数值,如果第五数值大于预设的第四阈值,则确定所述摄像头的镜头存在脏污。
当确定所述摄像头的镜头存在脏污时,可以输出清洁镜头的提示信息,当然,输出提示信息的方式可以有多种,例如可以在终端的显示界面输出类似于“摄像头镜头疑似脏污,请及时清理”的提示信息,还可以输出语音提示信息,或者输出图示的提示信息等等。
在本发明实施例提供一种镜头脏污的检测方法中,首先获取待检测图像,其中,所述待检测图像为所述摄像头采集到的预览图像;然后获取所述待检测图像的第一沾污程度参数和检测结果集合中的图像的第二沾污程度参数;如果根据所述第一沾污程度参数和所述第二沾污程度参数,确定所述摄像头的镜头存在脏污,输出清洁镜头的提示信息;如此能够自动识别镜头是否脏污,并提示用户清理,进而能够避免因镜头脏污造成的图像不清晰、对比度差等问题,从而提高成像质量。
在其他实施例中,所述根据所述第一沾污程度参数和所述第二沾污程度参数,确定所述摄像头的镜头存在脏污,利用第二种方式实现时,可以通过以下步骤实现:
步骤41,获取所述第一沾污程度参数对应的第一权值。
这里,所述第一权值可以是预先设置好的。
步骤42,根据所述检测结果集合中的图像的存储时间和第一权值确定P个历史图像的P个第二沾污程度参数和所述P个第二沾污程度参数对应的第二权值。
这里,P为大于2的整数,例如P可以为5。所述步骤42在实现过程中,可以是根据所述检测结果集合中的图像的存储时间,对所述检测结果集合中的图像进行排序,例如可以是按照当前时刻与存储时间之间的间隔时长由小到大的顺序进行排序,然后取前P个图像的第二沾污程度参数,并根据这P个图像的存储时间和第一权值确定P个第二沾污程度参数对应的第二权值,在实现时,距离当前时刻越近的历史图像的第二沾污程度参数对应的第二权值越大,但第二权值是小于第一权值的。
在其他实施例中,所述第一权值和第二权值都可以是预先设置好的,假设P为5,第一权值预设为10,P个第二权值预设为9、8、7、6、5。所述检测结果集合可以是利用队列实现的,所述P个历史图像可以从队尾获取P个历史图像的第二沾污程度参数,当P为5时,队尾第一个历史图像的第二沾污程度参数对应的第二权值为9,队尾第二个历史图像的第二污程度参数对应的第二权值为8,队尾第三个历史图像的第二污程度参数对应的第二权值为7,队尾第四个历史图像的第二污程度参数对应的第二权值为6,队尾第五个历史图像的第二污程度参数对应的第二权值为5。
步骤43,根据所述第一沾污程度参数、第一权值、P个第二沾污程度参数和所述P个第二沾污程度参数对应的第二权值确定第五数值。
步骤44,如果所述第五数值大于预设的第四阈值,确定所述摄像头的镜头存在脏污。
在实际应用中,所述步骤43可以通过以下步骤实现:
步骤431,将所述第一沾污程度参数和第一权值、所述P个第二沾污程度参数和所述P个第二沾污程度参数对应的第二权值进行加权求和,得到第六数值;
步骤432,将所述第一权值和所述P个第二沾污程度参数对应的第二权值求和,得到第七数值;
步骤433,将所述第六数值和所述第七数值的比值确定为所述第五数值。
实施例二
基于前述的实施例,本发明实施例再提供一种镜头脏污的检测方法,图2为本发明实施例镜头脏污的检测方法的实现流程示意图,如图2所示,所述方法包括以下步骤:
步骤S201,获取用户启动相机应用的操作指令。
这里,所述步骤S201可以是由终端实现的。在本实施例中,用户可通过多种方式启动相机应用,例如:可以通过点击所述终端的相机应用图标启动相机应用,也可以通过按压终端侧边的触摸操作区域实现,即终端获取用户启动相机应用的操作指令包括:获取终端侧边的预设触摸操作区域接收到的触摸操作,并确定触摸操作对应的控制指令;在控制指令为启动相机应用时,启动相机应用。另外还可通过语音以及手势等启动相机应用。以上所列举出的启动相机应用的触发方式仅仅为示例性的,本领域技术人员利用本发明的技术思想,根据其具体需求所提出的其它启动相机应用的触发方式均在本发明的保护范围内,在此不进行一一穷举。
步骤S202,基于所述操作指令启动摄像头,获取预览图像。
这里,所述摄像头可以是前置摄像头也可以是后置摄像头。比如,每次相机应用启动时,可以是默认启动后置摄像头。也可以是启动相机应用上一次关闭时使用的摄像头。
终端启动所述摄像头之后,进入终端的拍摄预览界面,获取预览图像。需要说明的是,本发明实施例中的预览图像即为其他实施例中的待检测图像。
在所述终端中,摄像头可以是标准摄像头、广角摄像头、长焦摄像头以及黑白摄像头等。
在本发明其他实施例中,当终端包括多个摄像头时,比如前置摄像头有两个,后置摄像头有两个,两个前置摄像头的类型可以是相同的,也可以是不同的。比如两个前置摄像头都是标准摄像头,或者一个前置摄像头是标准摄像头,另一个前置摄像头是黑白摄像头。同样地,两个后置摄像头的类型可以是相同的,也可以是不同的。比如,两个后置摄像头都是标准摄像头,或者,一个后置摄像头是广角摄像头,另一个后置摄像头是长焦摄像头。
步骤S203,对所述预览图像的像素矩阵进行下采样,得到第一矩阵。
这里,所述步骤S203可以是由终端实现的。
假设对像素矩阵的大小为M*N,进行s倍下采样,即得到(M/s)*(N/s)大小第一矩阵,当然s应该是M和N的公约数才行。对像素矩阵进行s倍的下采样就是把所述像素矩阵s*s窗口内的图像变成一个像素,这个像素点的值就是窗口内所有像素的均值。
步骤S204,对所述第一矩阵进行奇异值分解,获取满足第一预设条件的奇异值的第一个数。
这里,所述步骤S204可以是由终端实现的。所述满足第一预设条件可以是大于所有奇异值的和的预设百分比。
步骤S205,获取所述待检测图像的暗通道图像和所述暗通道图像的直方图。
这里,所述步骤S205可以是由终端实现的。在实际应用中,所述步骤S205可以通过以下步骤实现:
步骤S2051,获取所述待检测图像中每一像素的红绿蓝RGB分量中的最小值;
步骤S2052,根据所述每一像素对应的最小值生成所述暗通道图像,其中,所述暗通道图像为与所述待检测图像大小相同的灰度图;
步骤S2053,基于所述暗通道图像,获取所述暗通道图像的直方图。
这里,可以通过调用预设的直方图生成函数,生成所述暗通道图像的直方图。所述直方图的横坐标为像素值0到像素值255,所述直方图的纵坐标为每一像素值对应的个数。
步骤S206,根据所述直方图确定第一数值与第二数值的比值。
这里,所述步骤S206可以是由终端实现的。
所述第一数值是根据所述直方图中每一像素值、所述每一像素值对应的个数和预设的暗区百分比确定的;所述第二数值是根据所述直方图中每一像素值、所述每一像素值对应的个数和预设的亮区百分比确定的。
步骤S207,将所述比值确定为第一沾污程度参数。
步骤S208,根据所述第一个数和所述第一沾污程度参数确定所述预览图像的第一检测结果。
这里,所述步骤S208可以是由终端实现的。
如果所述第一个数大于第二阈值,且所述第一沾污程度参数大于第三阈值,得到所述预览图像为沾污图像的第一检测结果;如果所述第一个数不大于所述第二阈值,或者所述第一沾污程度参数不大于所述第三阈值,得到所述预览图像为非沾污图像的第一检测结果。
步骤S209,判断所述第一检测结果是否表明所述预览图像为沾污图像。
这里,所述步骤S209可以是由终端实现的。如果所述第一检测结果表明所述预览图像为沾污图像,进入步骤S210;如果所述第一检测结果表明所述预览图像为非沾污图像,进入步骤S213。
步骤S210,确定所述检测结果集合中的沾污图像的个数。
步骤S211,判断检测结果集合中的沾污图像的个数是否大于第一阈值。
这里,所述步骤S211可以是由终端实现的。这里,如果所述预览图像为沾污图像,且所述检测结果集合中的沾污图像的个数大于第一阈值,则表明所述摄像头的镜头存在脏污,此时进入步骤S212,如果所述检测结果集合中的沾污图像的个数不大于第一阈值,进入步骤S213。
步骤S212,确定所述摄像头的镜头存在脏污,输出清洁镜头的提示信息。
这里,所述步骤S212可以是由终端实现的。
步骤S213,确定所述摄像头的镜头不存在脏污,结束流程。
这里,所述步骤S213可以是由终端实现的。
需要说明的是,本实施例中与其它实施例中相同步骤或概念的解释可以参考其它实施例中的描述。
在本发明实施例提供的镜头脏污的检测方法中,首先获取用户启动相机应用的操作指令,并基于所述操作指令,启动相机应用并获取预览图像;然后对所述待检测图像的像素矩阵进行下采样,得到第一矩阵;再对所述第一矩阵进行奇异值分解,获取满足第一预设条件的奇异值的第一个数;继而获取所述待检测图像的暗通道图像和所述暗通道图像的直方图,并根据所述直方图确定第一数值与第二数值的比值;然后根据所述第一个数和所述比值确定所述待检测图像的第一检测结果;如果所述第一检测结果表明所述待检测图像为沾污图像且检测结果集合中的沾污图像的个数大于第一阈值,确定所述摄像头的镜头存在脏污,输出清洁镜头的提示信息,否则确定所述摄像头的镜头不存在脏污;如此能够自动识别镜头是否存在脏污,从而及时通知用户进行清理,避免了因镜头脏污造成的图像不清晰、对比度差等成像问题,进而提高成像质量。
在其他实施例中,在所述步骤S208之后,所述方法还包括:
步骤31,获取所述预览图像的特征信息。
这里,所述特征信息可以是根据预览图像生成的一个指纹字符串,然后可以通过比较不同图像的指纹字符串,指纹字符串的差别越小,说明图像越相似。
步骤32,判断所述特征信息是否存在于所述检测结果集合中。
这里,如果特征信息为图像的指纹字符串,判断所述特征信息是否存在与所述检测结果集合中,可以是将所述指纹字符串与检测结果集合中的指纹字符串进行比对,如果所述检测结果集合中的指纹字符串中没有与所述预览图像的指纹字符串不同位数低于第五阈值的指纹字符串,说明所述检测结果集合中没有与所述预览图像的指纹字符串相同的指纹字符串,即表明所述特征信息不存在于所述检测结果集合中,此时进入步骤33;如果所述检测结果集合中的指纹字符串中有与所述预览图像的指纹字符串不同位数低于第五阈值的指纹字符串,说明所述检测结果集合中有与所述预览图像的指纹字符串相同的指纹字符串,即表明所述特征信息存在于所述检测结果集合中,此时进入步骤34。
步骤33,将所述特征信息、所述第一检测结果和所述第一沾污程度参数加入所述检测结果集合。
步骤34,判断所述检测结果集合中所述特征信息对应的第二检测结果是否与第一检测结果相同。
这里,如果所述第二检测结果与所述第一检测结果相同,此时,不执行操作,进入步骤S209;如果所述第二检测结果与所述第一检测结果不同,此时进入步骤35。
步骤35,将所述第二检测结果更新为第一检测结果。
在其他实施例中,所述步骤31可以通过以下步骤实现:
步骤311,对所述预览图像的像素矩阵进行下采样,得到第二矩阵。
这里,在步骤S312中进行下采样的原理与步骤S203中进行下采样的原理是相同的,但在步骤311中的下采样倍数会比步骤S203中的下采样倍数大。在本步骤中,可以是将预览图像缩小到8*8的尺寸,即第二矩阵的大小为8*8,总共64个像素。这一步的作用是去除图片的细节,只保留结构、明暗等基本信息,从而摒弃不同尺寸、比例带来的差异。
步骤S312,将所述第二矩阵中的像素转为64级灰度。
也就是说,所有像素点总共只有64种颜色,这样能够简化色彩。
步骤313,计算所有64个像素的灰度平均值。
步骤314,将每个像素的灰度,与灰度平均值进行比较,大于或等于平均值,记为1;小于平均值,记为0。
步骤315,计算哈希值,得到预览图像的特征信息。
这里,将步骤314得到的比较结果,组合在一起,就构成了一个64位的整数,这就是预览图像的指纹字符串,即特征信息。组合的次序并不重要,只要保证所有图片都采用同样次序就行了。
得到指纹字符串以后,就可以对比不同的图像,看看64位中有多少位是不一样的。在理论上,这等同于计算"汉明距离"(Hamming distance)。如果不相同的数据位不超过5,就说明两张图片很相似;如果大于10,就说明这是两张不同的图片。
在其他实施例中,所述步骤S204可以通过以下步骤实现:
步骤S2041,对所述第一矩阵进行奇异值分解,得到所述第一矩阵的奇异值。
步骤S2042,对所述奇异值进行求和,得到第三数值。
这里,所述第三数值为所有奇异值的总和。
步骤S2043,根据所述第三数值和预设的百分比,确定第四数值。
这里,所述第四数值为所述第三数值与所述百分比的乘积。假设第三数值为100,所述百分比为15%,那么第四数值为15。
步骤S2044,将所述奇异值中大于所述第四数值的个数确定为第一个数。
在其他实施例中,所述步骤S206可以通过以下步骤实现:
步骤S2061,根据所述直方图获取所述暗通道图像的像素点总数。
步骤S2062,根据所述像素点总数和所述暗区百分比确定第二个数,根据所述像素点总数和所述亮区百分比确定第三个数。
这里,第二个数为所述像素点总数与所述暗区百分比的乘积,所述第三个数为所述像素点总数与所述亮区百分比的乘积。
步骤S2063,根据所述第二个数、所述直方图中每一像素值和所述每一像素值对应的个数确定第一数值。
步骤S2064,根据所述第三个数、所述直方图中每一像素值和所述每一像素值对应的个数确定第二数值。
步骤S2065,确定所述第一数值与所述第二数值的比值。
在实际应用过程中,所述步骤S2063可以通过以下步骤实现:
步骤11,根据所述第二个数和所述直方图确定像素值N。
这里,(d0+d1+…+dN)小于或者等于第二个数,且(d0+d1+…+dN+1)大于第二个数,N为大于或者等于0,且小于256的整数,di为像素值i对应的个数,i=0,1,…,N。
假设像素点总数为1024,暗区百分比为15%,那么第二个数为153.6,像素值0对应的个数为0,像素值1对应的个数为0,像素值2对应的个数为0,像素值3对应的个数为10,像素值4对应的个数为53,像素值5对应的个数为30,像素值6对应的个数为15,像素值7对应的个数为10,像素值8对应的个数为15,像素值9对应的个数为12,像素值10对应的个数为5,像素值11对应的个数为30,此时根据所述第二个数和所述直方图确定像素值N为10。
步骤12,将0*d0+1*d1+…_+N*dN确定为第一加权值。
这里,第一加权值为3*10+4*53+5*30+6*15+7*10+8*15+9*12+10*5=883。
步骤13,如果第四个数等于第二个数,将所述第一加权值确定为第一数值。
这里,第四个数为(d0+d1+…+dN),承接上面的举例,第四个数为150,由于所述第四个数小于第二个数,因此需要按照步骤14和步骤15计算第一数值。
步骤14,如果第四个数小于第二个数,将第二个数和第四个数的差值与像素值(N+1)的乘积确定为第二加权值。
这里,第四个数为150,第二个数为153.6,因此第二加权值为(153.6-150)*11=39.6。
步骤15,将所述第一加权值与所述第二加权值的和确定为第一数值。
这里,所述第一数值为883+39.6=922.6。
在实际应用过程中,所述步骤S2064可以通过以下步骤实现:
步骤21,根据所述第三个数和所述直方图确定像素值M。
这里,(d255+d254+…_+dM)小于或者等于第三个数,且(d255+d254+…+dM-1)大于第三个数,M为大于或者等于0,且小于256的整数,dj为像素值j对应的个数,j=M,M+1,…,255。
假设亮区百分比为5%,那么第三个数为51.2,像素值255对应的个数为0,像素值254对应的个数为0,像素值253对应的个数为0,像素值252对应的个数为5,像素值251对应的个数为10,像素值250对应的个数为20,像素值249对应的个数为5,像素值248对应的个数为20,因此,根据所述第三个数和所述直方图确定像素值M为249。
步骤22,将255*d255+254*d254+…_+M*dM确定为第三加权值。
这里,第三加权值为252*5+251*10+250*20+249*5=10015。
步骤23,如果第五个数等于第三个数,将所述第三加权值确定为第二数值。
这里,第五个数为(d255+d254+…_+dM)=40,由于第五个数小于第三个数,因此需要根据步骤24和步骤25确定第二数值。
步骤24,如果第五个数小于第三个数,将第三个数和第五个数的差值与像素值(M-1)的乘积确定为第四加权值;
这里,第四加权值为(51.2-40)*248=2777.6。
步骤25,将所述第三加权值与所述第四加权值的和确定为第二数值。
这里,第二数值为10015+2777.6=12792.6。
需要说明的是,所述步骤S203至步骤S211还可以是由服务器实现的,此时,在所述步骤S203之前,所述方法还包括:所述终端将所述预览图像发送给服务器;在所述步骤S211之后,所述方法还包括:所述服务器向所述终端发送镜头存在脏污的第一通知消息。
实施例三
用户在手指误触到手机镜头或者镜头使用时间较长出现磨损,考虑到手机镜头的物理焦距非常小,这意味着镜头保护玻璃上的沾污已经处于成像距离范围里了,会影响成像的效果,造成图像不清晰,对比度差等问题,降低用户的拍照体验。
而对于图像不清晰,对比度差等问题,在相关技术中可以利用图像去雾解决,图像去雾一直是图像处理技术中一个重要领域,暗通道去雾算法能够解决有雾图像对比度低的问题。另外还有直方图均衡,CLAHE等提高图像对比度的算法。此类算法都没有解决一个问题,即如何较好的识别低对比度图像以避免对正常图像的过度处理,利用本发明实施例提供的镜头脏污的检测方法可以有效解决该问题。
图3为本发明实施例镜头脏污的检测方法的实现流程示意图,如图3所示,所述方法包括以下步骤:
步骤S301,输入预览图片。
步骤S302,提取所述预览图片的指纹字符串,并作为该场景的标记。
这里,只有当两个场景的指纹差异大于预设阈值Th时,才作为两个不同场景。
步骤S303,对所述预览图片进行检测,得到沾污判断结果。
步骤S304,将当前图像指纹和沾污判断结果输入队列Q。
这里,假设将队列长度设置为M。
在其他实施例中,在所述步骤S305之前,所述方法还包括:获取沾污图片阈值N的数值。所述N的数值可以是由开发人员预先设置的,在设置N的数值时可以根据队列Q的长度进行设置,比如N的数值可以是M的数值的二分之一,假设M为30,N为15。
步骤S305,判断队列Q中沾污图片的数量是否大于N并且当前预览图片为沾污图片。
步骤S306,当队列Q中沾污图片的数量大于N并且当前预览图片为沾污图片时,确定检测结果为镜头沾污,否则进入S301。
在本实施例中,步骤S303可以根据图4所示的步骤实现,如图4所示,对所述预览图片进行检测的实现流程包括:
步骤S401,获取手机拍照的预览照片。
步骤S402,将预览照片进行下采样,得到下采样照片。
步骤S403,对所述下采样照片所表示的矩阵进行奇异值分解,计算矩阵所有的奇异值之和。
步骤S404,计算大于奇异值总和的预设阈值Th_N的奇异值的个数k。
在本实例中,设定阈值Th_N为70%,计算占奇异值总和Th_N的奇异值的个数k。
步骤S405,计算照片直方图亮区的亮度平均值m与照片直方图暗区的亮度平均值n,计算m/n的值contrast_radio。
步骤S406,根据k与contrast_radio判断预览照片是否是模糊的。
这里,根据k与contrast_radio判断预览照片是否是模糊的在实现过程中,可以是判断k是否大于一个预设阈值Th_k,且contrast_radio是否大于另一预设阈值Th_c。
步骤S407,如果k大于预设阈值Th_k,且contrast_radio大于另一预设阈值Th_c,则认为预览照片是模糊的。
在本实例中,假设Th_k为10,Th_c为0.1,如果k>10且contrast_radio>0.1,则认为预览照片是模糊的。
需要说明的是,在本实施例中,Th_k和Th_c都是可以根据实际情况进行调节的。
步骤S408,如果k不大于预设阈值Th_k,或者contrast_radio不大于另一预设阈值Th_c,不做处理。
步骤S409,将预览照片的处理结果上传。
这里,将预览照片的处理结果上传可以是将预览照片的处理结果加入队列Q。
图5为本发明实施例确定contrast_radio的实现流程示意图,如图5所示,可以通过以下步骤确定contrast_radio:
步骤S4051,输入图像;
步骤S4052,取图像RGB中最小值,作为图像暗通道;
步骤S4053,计算暗通道直方图。
步骤S4054,计算暗通道直方图的dark_mean和bright_mean。
步骤S4055,计算contrast_radio=dark_mean/bright_mean。
在本发明实施例提供的镜头脏污的检测方法中,首先对用户预览界面的预览图对应的矩阵进行奇异值分解,并计算奇异值的总和,求出占奇异值总和达到指定阈值的奇异值的个数,如果此时奇异值的个数较大,则认为照片所包含的信息较多,反之则是信息较少的图片。然后是对预览界面照片的直方图进行分析。当照片直方图较暗部分的直方图平均值与较亮部分直方图平均值,并计算两者的比值。综合以上两个信息,如果照片所包含的信息较多,且照片直方图的暗区部分与亮区的比值较大,则认为照片是模糊,即判定镜头是脏污的。当检测到镜头是脏污的,可以提醒用户在合理的时候擦试镜头,提高用户的拍照体验。
在其他实施例中检测到模糊的照片之后,还可以继续利用检测的信息,对模糊的照片做拉伸对比度的处理,能提高照片的成像质量,提高用户体验。
实施例四
本实施例提供一种终端,图6为本发明实施例终端的组成结构示意图,如图6所示,所述终端600至少包括摄像头601、存储器602、通信总线603和处理器604,其中:
所述摄像头601,配置为采集图像;
所述存储器602,配置为存储镜头脏污的检测程序;
所述通信总线603,配置为实现处理器和存储器之间的连接通信;
所述处理器604,配置为执行存储器中存储的镜头脏污的检测程序,以实现以下步骤:
获取待检测图像,其中,所述待检测图像为所述摄像头采集到的预览图像;
获取所述待检测图像的第一沾污程度参数和检测结果集合中的图像的第二沾污程度参数;
如果根据所述第一沾污程度参数和所述第二沾污程度参数,确定所述摄像头的镜头存在脏污,输出清洁镜头的提示信息。
需要说明的是,以上终端实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果,因此不做赘述。对于本发明终端实施例中未披露的技术细节,请参照本发明方法实施例的描述而理解。
对应地,本发明实施例提供一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,该计算机可执行指令配置为执行本发明其他实施例提供的镜头脏污的检测方法。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (14)
1.一种镜头脏污的检测方法,应用于终端,所述终端至少包括摄像头,其特征在于,所述方法包括:
获取待检测图像,其中,所述待检测图像为所述摄像头采集到的预览图像;
获取所述待检测图像的第一沾污程度参数和检测结果集合中的图像的第二沾污程度参数;
如果根据所述第一沾污程度参数和所述第二沾污程度参数,确定所述摄像头的镜头存在脏污,输出清洁镜头的提示信息。
2.根据权利要求1中所述的方法,其特征在于,如果根据所述第一沾污程度参数和所述第二沾污程度参数,确定所述摄像头的镜头存在脏污,包括:
根据所述第一沾污程度参数确定所述待检测图像的第一检测结果;
确定所述检测结果集合中的沾污图像的个数;
如果所述第一检测结果表明所述待检测图像为沾污图像且检测结果集合中的沾污图像的个数大于第一阈值,确定所述摄像头的镜头存在脏污。
3.根据权利要求1中所述的方法,其特征在于,如果根据所述第一沾污程度参数和所述第二沾污程度参数,确定所述摄像头的镜头存在脏污,还包括:
获取所述第一沾污程度参数对应的第一权值;
根据所述检测结果集合中的图像的存储时间和第一权值确定P个历史图像对应的P个第二沾污程度参数和所述P个第二沾污程度参数对应的第二权值,其中,P为大于2的整数;
根据所述第一沾污程度参数、第一权值、P个第二沾污程度参数和所述P个第二沾污程度参数对应的第二权值确定第五数值;
如果所述第五数值大于预设的第四阈值,确定所述摄像头的镜头存在脏污。
4.根据权利要求3中所述的方法,其特征在于,所述根据所述第一沾污程度参数、第一权值、P个第二沾污程度参数和所述P个第二沾污程度参数对应的第二权值确定第五数值,包括:
将所述第一沾污程度参数和第一权值、所述P个第二沾污程度参数和所述P个第二沾污程度参数对应的第二权值进行加权求和,得到第六数值;
将所述第一权值和所述P个第二沾污程度参数对应的第二权值求和,得到第七数值;
将所述第六数值和所述第七数值的比值确定为所述第五数值。
5.根据权利要求1中所述的方法,其特征在于,获取所述待检测图像的第一沾污程度参数,包括:
获取所述待检测图像的暗通道图像和所述暗通道图像的直方图;
根据所述直方图确定第一数值与第二数值的比值,其中,所述第一数值是根据所述直方图中每一像素值、所述每一像素值对应的个数和预设的暗区百分比确定的;所述第二数值是根据所述直方图中每一像素值、所述每一像素值对应的个数和预设的亮区百分比确定的;
将所述比值确定为所述第一沾污程度参数。
6.根据权利要求2中所述的方法,其特征在于,所述根据所述第一沾污程度参数确定所述待检测图像的第一检测结果,包括:
对所述待检测图像的像素矩阵进行下采样,得到第一矩阵;
对所述第一矩阵进行奇异值分解,获取满足第一预设条件的奇异值的第一个数;
根据所述第一沾污程度参数和所述第一个数确定第一检测结果,其中,如果所述第一个数大于第二阈值,且所述第一沾污程度参数大于第三阈值,确定所述待检测图像为沾污图像。
7.根据权利要求6中所述的方法,其特征在于,所述对所述第一矩阵进行奇异值分解,获取满足第一预设条件的奇异值的第一个数,包括:
对所述第一矩阵进行奇异值分解,得到所述第一矩阵的奇异值;
对所述奇异值进行求和,得到第三数值;
根据所述第三数值和预设的百分比,确定第四数值;
将所述奇异值中大于所述第四数值的个数确定为第一个数。
8.根据权利要求5中所述的方法,其特征在于,所述获取所述待检测图像的暗通道图像和所述暗通道图像的直方图,包括:
获取所述待检测图像中每一像素的红绿蓝RGB分量中的最小值;
根据所述每一像素对应的最小值生成所述暗通道图像,其中,所述暗通道图像为与所述待检测图像大小相同的灰度图;
基于所述暗通道图像,获取所述暗通道图像的直方图。
9.根据权利要求8中所述的方法,其特征在于,所述根据所述直方图确定第一数值与第二数值的比值,包括:
根据所述直方图获取所述暗通道图像的像素点总数;
根据所述像素点总数和所述暗区百分比确定第二个数,根据所述像素点总数和所述亮区百分比确定第三个数;
根据所述第二个数、所述直方图中每一像素值和所述每一像素值对应的个数确定第一数值;
根据所述第三个数、所述直方图中每一像素值和所述每一像素值对应的个数确定第二数值;
确定所述第一数值与所述第二数值的比值。
10.根据权利要求9中所述的方法,其特征在于,所述根据所述第二个数、所述直方图中每一像素值和所述每一像素值对应的个数确定第一数值,包括:
根据所述第二个数和所述直方图确定像素值N,其中,(d0+d1+…_+dN)小于或者等于第二个数,且(d0+d1+…_+dN+1)大于第二个数,N为大于或者等于0,且小于256的整数,di为像素值i对应的个数,i=0,1,…,N;
将0*d0+1*d1+…_+N*dN确定为第一加权值;
如果第四个数等于第二个数,将所述第一加权值确定为第一数值,其中第四个数为(d0+d1+…_+dN);
如果第四个数小于第二个数,将第二个数和第四个数的差值与像素值(N+1)的乘积确定为第二加权值;
将所述第一加权值与所述第二加权值的和确定为第一数值。
11.根据权利要求9中所述的方法,其特征在于,所述根据所述第三个数、所述直方图中每一像素值和所述每一像素值对应的个数确定第二数值,包括:
根据所述第三个数和所述直方图确定像素值M,其中,(d255+d254+…+dM)小于或者等于第三个数,且(d255+d254+…_+dM-1)大于第三个数,M为大于或者等于0,且小于256的整数,dj为像素值j对应的个数,j=M,M+1,…,255;
将255*d255+254*d254+…+M*dM确定为第三加权值;
如果第五个数等于第三个数,将所述第三加权值确定为第二数值,其中第五个数为(d255+d254+…+dM);
如果第五个数小于第三个数,将第三个数和第五个数的差值与像素值(M-1)的乘积确定为第四加权值;
将所述第三加权值与所述第四加权值的和确定为第二数值。
12.根据权利要求1中所述的方法,其特征在于,所述方法还包括:
获取所述待检测图像的特征信息;
如果所述特征信息不存在所述检测结果集合中,将所述特征信息和所述第一检测结果加入所述检测结果集合;
如果所述特征信息存储所述检测结果集合中,且所述检测结果集合中所述特征信息对应的第二检测结果与第一检测结果不同,将所述第二检测结果更新为第一检测结果。
13.一种终端,其特征在于,所述终端至少包括摄像头、存储器、通信总线和处理器,其中:
所述摄像头,配置为采集图像;
所述存储器,配置为存储镜头脏污的检测程序;
所述通信总线,配置为实现处理器和存储器之间的连接通信;
所述处理器,配置为执行存储器中存储的镜头脏污的检测程序,以实现以下权利要求1至12中镜头脏污的检测方法中的步骤。
14.一种计算机可读存储介质,所述计算机存储介质中存储有计算机可执行指令,该计算机可执行指令配置为执行上述权利要求1至12中任一项提供的镜头脏污的检测方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810710488.5A CN110738629A (zh) | 2018-07-02 | 2018-07-02 | 一种镜头脏污的检测方法、终端及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810710488.5A CN110738629A (zh) | 2018-07-02 | 2018-07-02 | 一种镜头脏污的检测方法、终端及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110738629A true CN110738629A (zh) | 2020-01-31 |
Family
ID=69233400
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810710488.5A Pending CN110738629A (zh) | 2018-07-02 | 2018-07-02 | 一种镜头脏污的检测方法、终端及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110738629A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111405177A (zh) * | 2020-03-09 | 2020-07-10 | Oppo广东移动通信有限公司 | 图像处理方法、终端及计算机可读存储介质 |
CN112351168A (zh) * | 2020-10-21 | 2021-02-09 | 惠州市德赛西威智能交通技术研究院有限公司 | 一种摄像头激光自清洁装置及系统 |
CN113554637A (zh) * | 2021-07-30 | 2021-10-26 | 上海集成电路制造创新中心有限公司 | 相机盖板的脏污检测方法及检测装置 |
CN113570582A (zh) * | 2021-07-30 | 2021-10-29 | 上海集成电路制造创新中心有限公司 | 相机盖板清洁度检测方法及检测装置 |
-
2018
- 2018-07-02 CN CN201810710488.5A patent/CN110738629A/zh active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111405177A (zh) * | 2020-03-09 | 2020-07-10 | Oppo广东移动通信有限公司 | 图像处理方法、终端及计算机可读存储介质 |
CN111405177B (zh) * | 2020-03-09 | 2021-09-24 | Oppo广东移动通信有限公司 | 图像处理方法、终端及计算机可读存储介质 |
CN112351168A (zh) * | 2020-10-21 | 2021-02-09 | 惠州市德赛西威智能交通技术研究院有限公司 | 一种摄像头激光自清洁装置及系统 |
CN113554637A (zh) * | 2021-07-30 | 2021-10-26 | 上海集成电路制造创新中心有限公司 | 相机盖板的脏污检测方法及检测装置 |
CN113570582A (zh) * | 2021-07-30 | 2021-10-29 | 上海集成电路制造创新中心有限公司 | 相机盖板清洁度检测方法及检测装置 |
CN113554637B (zh) * | 2021-07-30 | 2022-06-07 | 上海集成电路制造创新中心有限公司 | 相机盖板的脏污检测方法及检测装置 |
CN113570582B (zh) * | 2021-07-30 | 2022-07-29 | 上海集成电路制造创新中心有限公司 | 相机盖板清洁度检测方法及检测装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110738629A (zh) | 一种镜头脏污的检测方法、终端及计算机可读存储介质 | |
CN112767392B (zh) | 图像清晰度确定方法、装置、设备及存储介质 | |
CN101867724A (zh) | 成像装置以及成像方法 | |
CN104539939A (zh) | 一种基于移动终端的镜头清洁检测方法及检测系统 | |
CN110443766B (zh) | 图像处理方法、装置、电子设备及可读存储介质 | |
CN108416337A (zh) | 提醒用户清洁镜头的方法及装置 | |
CN106131441A (zh) | 拍照方法及装置、电子设备 | |
CN108961209B (zh) | 行人图像质量评价方法、电子设备及计算机可读介质 | |
CN108574803B (zh) | 图像的选取方法、装置、存储介质及电子设备 | |
CN111183630B (zh) | 一种智能终端的照片处理方法及处理装置 | |
CN111080595A (zh) | 图像处理方法、装置、电子设备及计算机可读介质 | |
CN107977437B (zh) | 图像处理方法、装置、存储介质和电子设备 | |
KR100867049B1 (ko) | 화상 보정 장치 및 화상 보정 방법 | |
WO2015196681A1 (zh) | 一种图片处理方法及电子设备 | |
JP2018084861A (ja) | 情報処理装置、情報処理方法、及び情報処理プログラム | |
CN108769543B (zh) | 曝光时间的确定方法及装置 | |
CN107464225B (zh) | 图像处理方法、装置、计算机可读存储介质和移动终端 | |
CN108513068A (zh) | 图像的选取方法、装置、存储介质及电子设备 | |
CN112508820A (zh) | 图像处理方法、装置及电子设备 | |
JP4460368B2 (ja) | 画像補正装置および方法,ならびに画像補正プログラム | |
CN107481199B (zh) | 图像去雾处理方法、装置、存储介质和移动终端 | |
WO2023001110A1 (zh) | 神经网络训练方法、装置及电子设备 | |
CN108174125B (zh) | 控制hdr功能的方法、装置、电子设备及存储介质 | |
JP6696800B2 (ja) | 画像評価方法、画像評価プログラム、及び画像評価装置 | |
WO2021078276A1 (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 |