CN111064870A - 视觉机器人的镜头清洁方法、控制装置及存储介质 - Google Patents

视觉机器人的镜头清洁方法、控制装置及存储介质 Download PDF

Info

Publication number
CN111064870A
CN111064870A CN201911284249.9A CN201911284249A CN111064870A CN 111064870 A CN111064870 A CN 111064870A CN 201911284249 A CN201911284249 A CN 201911284249A CN 111064870 A CN111064870 A CN 111064870A
Authority
CN
China
Prior art keywords
lens
robot
lens cleaning
image information
preset
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
Application number
CN201911284249.9A
Other languages
English (en)
Inventor
不公告发明人
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Topband Co Ltd
Original Assignee
Shenzhen Topband Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Topband Co Ltd filed Critical Shenzhen Topband Co Ltd
Priority to CN201911284249.9A priority Critical patent/CN111064870A/zh
Publication of CN111064870A publication Critical patent/CN111064870A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/50Constructional details
    • H04N23/55Optical parts specially adapted for electronic image sensors; Mounting thereof
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B08CLEANING
    • B08BCLEANING IN GENERAL; PREVENTION OF FOULING IN GENERAL
    • B08B1/00Cleaning by methods involving the use of tools
    • B08B1/10Cleaning by methods involving the use of tools characterised by the type of cleaning tool
    • B08B1/16Rigid blades, e.g. scrapers; Flexible blades, e.g. wipers
    • B08B1/165Scrapers
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B08CLEANING
    • B08BCLEANING IN GENERAL; PREVENTION OF FOULING IN GENERAL
    • B08B1/00Cleaning by methods involving the use of tools
    • B08B1/30Cleaning by methods involving the use of tools by movement of cleaning members over a surface
    • B08B1/32Cleaning by methods involving the use of tools by movement of cleaning members over a surface using rotary cleaning members
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B08CLEANING
    • B08BCLEANING IN GENERAL; PREVENTION OF FOULING IN GENERAL
    • B08B11/00Cleaning flexible or delicate articles by methods or apparatus specially adapted thereto
    • B08B11/04Cleaning flexible or delicate articles by methods or apparatus specially adapted thereto specially adapted for plate glass, e.g. prior to manufacture of windshields
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B08CLEANING
    • B08BCLEANING IN GENERAL; PREVENTION OF FOULING IN GENERAL
    • B08B13/00Accessories or details of general applicability for machines or apparatus for cleaning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B08CLEANING
    • B08BCLEANING IN GENERAL; PREVENTION OF FOULING IN GENERAL
    • B08B3/00Cleaning by methods involving the use or presence of liquid or steam
    • B08B3/02Cleaning by the force of jets or sprays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/50Constructional details
    • H04N23/52Elements optimising image sensor operation, e.g. for electromagnetic interference [EMI] protection or temperature control by heat transfer or cooling elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/64Computer-aided capture of images, e.g. transfer from script file into camera, check of taken image quality, advice or proposal for image composition or decision on when to take image

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Electromagnetism (AREA)
  • Studio Devices (AREA)

Abstract

本发明适用于机器人处理领域,提供了一种视觉机器人的镜头清洁方法、控制装置及存储介质,视觉机器人的镜头清洁方法包括步骤:在运动过程中,获取视觉机器人预设时间间隔内采集的第一视频信息;获取第一视频信息中各个帧的图像信息;判断各个帧的图像信息中是否存在相同的像素区域,其中,相同的像素区域为组成像素区域内的各个像素点对应相同;若存在,控制镜头清洗装置清洗镜头。本发明的视觉机器人能够获取的第一视频信息的各个帧的图像信息进行识别,在各个帧的图像信息存在有相同的像素区域时,控制镜头清洗装置清洗镜头,也即是说,镜头清洗装置会对镜头进行清洁,以将附着在镜头的污渍去除掉,从而保证了镜头的正常工作。

Description

视觉机器人的镜头清洁方法、控制装置及存储介质
技术领域
本发明属于机器人技术领域,尤其涉及一种视觉机器人的镜头清洁方法、装置及存储介质。
背景技术
机器人(Robot)是自动执行工作的机器装置。它既可以接受人类指挥,又可以运行预先编排的程序,也可以根据以人工智能技术制定的原则纲领行动。它的任务是协助或代替人类的工作,减轻工作人员的工作量,提高工作效率。
视觉机器人是通过摄像头来摄取周围环境的图像,然后根据摄取的图像进行计算和分析,以计算出最佳路径并使视觉机器人根据最佳路径进行运动,然而,视觉机器人的摄像头一般是露出于视觉机器人的表面,如此,摄像头容易沾染外界的水汽或者灰层,进而导致摄像头不能正常工作,从而会影响到视觉机器人的正常工作。
发明内容
本发明实施例提供一种视觉机器人的镜头清洁方法,旨在解决现有的视觉机器人的摄像头,存在容易被外界环境影响导致视觉机器人不能正常工作的问题。
本发明实施例是这样实现的,一种视觉机器人的镜头清洁方法,所述视觉机器人包括镜头清洗装置,所述视觉机器人的镜头清洁方法包括:
在运动过程中,获取所述视觉机器人预设时间间隔内采集的第一视频信息;
获取所述第一视频信息中各个帧的图像信息;
判断所述各个帧的图像信息中是否存在相同的像素区域,其中,所述相同的像素区域为组成所述像素区域内的各个像素点对应相同;
若存在,控制所述镜头清洗装置清洗所述镜头。
更进一步地,所述判断所述各个帧的图像信息中是否存在相同的像素区域的步骤之后,所述视觉机器人的镜头清洁方法还包括:
若不存在,计算所述图像信息的清晰度;
当所述清晰度小于预设阈值时,执行所述控制所述镜头清洗装置清洗所述镜头的步骤。
更进一步地,所述计算所述图像信息的清晰度的步骤包括:
将图像分为多个预设区域,获取各个所述预设区域内图像的清晰度;
将所述多个预设区域内图像中清晰度最低的清晰度作为所述图像信息的清晰度。
更进一步地,所述判断所述各个帧的图像信息中是否存在相同的像素区域的步骤之后,还包括:
若存在,控制所述视觉机器人按照第一预设动作移动;
在所述视觉机器人按照所述第一预设动作移动过程中,获取所述视觉机器人采集的第二视频信息;
当所述第二视频信息的各个帧的图像信息中存在相同的像素区域时,执行所述控制所述镜头清洗装置清洗所述镜头的步骤。
更进一步地,所述控制所述镜头清洗装置清洗所述镜头的步骤之后,还包括:
控制所述视觉机器人按照第二预设动作移动;
在所述视觉机器人按照所述第二预设动作移动过程中,获取所述视觉机器人采集的第三视频信息;
当所述第三视频信息的各个帧的图像信息中存在相同的像素区域时,返回执行所述控制所述镜头清洗装置清洗所述镜头的步骤。
更进一步地,返回执行所述控制所述镜头清洗装置清洗所述镜头的步骤之前,还包括:
获取清洗次数;
当清洗次数大于预设次数时,发送清洗提示信息。
本发明实施例还提供一种视觉机器人的镜头清洁控制装置,所述视觉机器人的镜头清洁控制装置包括:
第一视频信息获取单元,用于在运动过程中,获取所述视觉机器人预设时间间隔内采集的第一视频信息;
图像信息获取单元,用于获取所述第一视频信息中各个帧的图像信息;
判断单元,用于判断所述各个帧的图像信息中是否存在相同的像素区域,其中,所述相同的像素区域为组成所述像素区域内的各个像素点对应相同;
第一控制单元,用于若所述各个帧的图像信息中存在相同的像素区域,控制所述镜头清洗装置清洗所述镜头。
更进一步地,所述视觉机器人的镜头清洁控制装置还包括:
计算单元,用于若所述各个帧的图像信息中不存在相同的像素区域,计算所述图像信息的清晰度;
所述第一控制单元,还用于当所述清晰度小于预设阈值时,控制所述镜头清洗装置清洗所述镜头的。
更进一步地,所述计算单元包括:
清晰度计算模块,用于将图像分为多个预设区域,计算各个所述预设区域内图像的清晰度;
清晰度获取模块,用于将所述多个预设区域内图像中清晰度最低的清晰度作为所述图像信息的清晰度。
更进一步地,所述视觉机器人的镜头清洁控制装置还包括:
第二控制单元,用于若所述各个帧的图像信息中存在相同的像素区域,控制所述视觉机器人按照第一预设动作移动;
第二视频信息获取单元,用于在所述视觉机器人按照所述第一预设动作移动过程中,获取所述视觉机器人采集的第二视频信息;
所述第一控制单元,还用于当所述第二视频信息的各个帧的图像信息中存在相同的像素区域时,控制所述镜头清洗装置清洗所述镜头。
更进一步地,所述视觉机器人的镜头清洁控制装置还包括:
第三控制单元,用于控制所述视觉机器人按照第二预设动作移动;
第三视频信息获取单元,用于在所述视觉机器人按照所述第二预设动作移动过程中,获取所述视觉机器人采集的第三视频信息;
返回执行单元,用于当所述第三视频信息的各个帧的图像信息中存在相同的像素区域时,返回执行所述控制所述镜头清洗装置清洗所述镜头的步骤。
更进一步地,所述视觉机器人的镜头清洁控制装置还包括:
清洗次数获取单元,用于获取清洗次数;
发送单元,用于当清洗次数大于预设次数时,发送清洗提示信息。
本发明实施例还提供一种计算机存储介质,所述存储介质上存储有视觉机器人的镜头清洁程序,所述视觉机器人的镜头清洁程序被处理器执行时实现上述任一项所述的视觉机器人的镜头清洁方法的步骤。
本发明实施例的有益效果是,视觉机器人能够在运动的过程中在预设时间内采集第一视频信息,之后获取第一视频信息的各个帧的图像信息,然后对各个帧的图像信息进行识别,在各个帧的图像信息存在有相同的像素区域时,控制镜头清洗装置清洗镜头,也即是说,在污渍附着在镜头时,会遮挡镜头的某个位置,此时,视觉机器人在运动过程中,由于污渍附着在镜头上,在视觉机器人拍摄的第一视频信息中的不同帧的图像信息中均会存在有相同的像素区域(污渍附着的区域),在这样的情况下,镜头清洗装置会对镜头进行清洗,以将附着在镜头的污渍清洗掉,从而保证了镜头能够正常工作,进而有利于视觉机器人的正常工作。
附图说明
图1是本发明实施例的视觉机器人的镜头清洁方法的流程示意图;
图2是本发明实施例的视觉机器人的镜头和镜头清洁控制装置的配合的立体示意图;
图3是本发明实施例的视觉机器人的镜头清洁控制装置的平面示意图;
图4是本发明实施例的视觉机器人的镜头和镜头清洁控制装置的配合的又一立体示意图;
图5是本发明实施例的视觉机器人拍摄的图像信息的平面示意图;
图6是本发明实施例的视觉机器人拍摄的又一图像信息的平面示意图;
图7是本发明实施例的视觉机器人拍摄的再一图像信息的平面示意图;
图8是本发明实施例的视觉机器人拍摄的另一图像信息的平面示意图;
图9是本发明实施例的视觉机器人的镜头清洁方法的又一流程示意图;
图10是本发明实施例的视觉机器人的镜头清洁方法的再一流程示意图;
图11是本发明实施例的视觉机器人的镜头清洁方法的又一流程示意图;
图12是本发明实施例的视觉机器人的镜头清洁方法的另一流程示意图;
图13是本发明实施例的视觉机器人的镜头清洁方法的又一流程示意图;
图14是本发明实施例的视觉机器人的镜头清洁控制装置的结构示意图;
图15是本发明实施例的视觉机器人的镜头清洁控制装置又一结构示意图;
图16是本发明实施例的视觉机器人的镜头清洁控制装置再一结构示意图;
图17是本发明实施例的视觉机器人的镜头清洁控制装置另一结构示意图;
图18是本发明实施例的视觉机器人的镜头清洁控制装置又一结构示意图;
图19是本发明实施例的视觉机器人的镜头清洁控制装置再一结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
视觉机器人的摄像头一般是露出于视觉机器人的表面,如此,摄像头容易沾染外界的水汽或者灰层,进而导致摄像头不能正常工作,从而会影响到视觉机器人的正常工作。
本发明的视觉机器人能够在运动的过程中在预设时间内采集第一视频信息,之后获取第一视频信息的各个帧的图像信息,然后对各个帧的图像信息进行识别,在各个帧的图像信息存在有相同的像素区域时,控制镜头清洗装置清洗镜头,也即是说,在污渍附着在镜头时,会遮挡镜头的某个位置,此时,视觉机器人在运动过程中,由于污渍附着在镜头上,在视觉机器人拍摄的第一视频信息中的不同帧的图像信息中均会存在有相同的像素区域(污渍附着的区域),在这样的情况下,镜头清洗装置会对镜头进行清洗,以将附着在镜头的污渍清洗掉,从而保证了镜头能够正常工作,进而有利于视觉机器人的正常工作。
实施例一
请参阅图1,本发明实施例的视觉机器人的镜头清洁方法,视觉机器人包括镜头清洗装置,视觉机器人的镜头清洁方法包括步骤:
S01:在运动过程中,获取视觉机器人预设时间间隔内采集的第一视频信息;
S02:获取第一视频信息中各个帧的图像信息;
S03:判断各个帧的图像信息中是否存在相同的像素区域,其中,相同的像素区域为组成像素区域内的各个像素点对应相同;
若存在,进入步骤S04:控制镜头清洗装置清洗镜头。
在本实施例中,视觉机器人在运动的过程中,会通过镜头获取在预设时间内采集第一视频信息,然后将第一视频信息拆分为不同帧的图像信息,然后将不同帧的图像信息进行识别和判断,在判断不同帧的图像信息内均存在有相同区域时,控制镜头清洗装置清洗镜头。也即是说,在污渍附着在镜头的情况下,通过镜头拍摄的第一视频信息中的不同帧的图像信息中均存在有相同的像素区域,该相同的像素区域即为污渍遮挡的区域,其中,该像素区域可以是黑色画面。在不同帧的图像信息中均存在有相同的像素区域,即判定镜头上附着有污渍,此时控制镜头清洗装置清洗镜头以将污渍清楚,从而防止因为污渍的存在而影响镜头正常工作的情况,有利于镜头的正常工作。
请参阅图3,图中示出了一个镜头清洗装置20和镜头10配合的示例,在图中的示例中,镜头10包括有壳体11、玻璃盖板14、挡板13和摄像头12,摄像头12密封于壳体11内,玻璃盖板14覆盖壳体11,整个镜头10倾斜设置,如此,使得污渍不容易附着在镜头10的表面(玻璃盖板14的表面),另外,挡板13的设置能够用于阻挡灰层或者是雨水,从而进一步地防止镜头10被污染的情况,玻璃盖板14具有透光性,如此使得摄像头12能够通过玻璃盖板14获取外部的图像信息。
镜头清洗装置20包括有雨刮23、转动杆21和电机22,雨刮23与转动杆21连接,电机22与转动杆21连接。电机22用于驱动转动杆21转动以带动雨刮23转动。从图中可知,雨刮23贴近玻璃盖板14设置,在玻璃盖板14存在污渍的情况下,电机22工作带动转动杆21转动进而带动雨刮23转动,雨刮23在转动的过程中会对玻璃盖板14进行清洗,进而将玻璃盖板14上的污渍清除掉。
请参阅图3,雨刮23的转动方向如图所示。从图中可知,雨刮23可以是顺时针转动也可以是逆时针转动,雨刮23来回转动能够进一步对玻璃盖板14进行清洗,从而将玻璃盖板14上的污渍清除掉。
需要指出的是,在镜头10不存在有污渍的情况下,雨刮23不会贴设在玻璃盖板14的表面,如此能够防止出现因为雨刮23贴设在玻璃盖板14的表面而影响镜头10工作的情况。
可以理解的是,上述仅仅是示出了镜头清洗装置20的其中一种类型。在其他实施例中,镜头清洗装置20还可以是其他类型。例如,请参阅图4,在另一个实施例中,镜头清洗装置20包括有水管24和喷头25,水管24可以与外部供水设备连接,水管24中的水能够通过喷头25喷向玻璃盖板14。在其他实施例中,镜头清洗装置20还可以为风机。在此不对镜头清洗装置20的具体类型做限定。只需要镜头清洗装置20能够对镜头10进行清洗即可。
请参阅图5至图8,假定图5至图8为第一视频信息的四个帧的图像信息,从图5至图8中可知,图5中的像素A、图6中的像素B、图7中的像素C、图8中的像素D均不同,即,图5中的像素A、图6中的像素B、图7中的像素C、图8中的像素D均发生了变化,而图5至图8中的像素E一直保持不变,即,像素E中的各个像素点对应相同,且像素E大小相同和位置均相同,也即是说,镜头10位于像素E的部分存在有污渍,此时,视觉机器人会控制镜头清洗装置20工作以清洗镜头10,从而将镜头10位于像素E的部分的污渍清除掉。
在本实施例中,镜头可能会被一些细小的灰尘/或者水滴覆盖,此时,第一视频信息中各个帧的图像信息只会表现的不清楚,可能不会在不同帧出现相同的像素区域,在这样的情况下,可在视觉机器人设置图像模糊检测装置,图像模糊检测装置能够通过图像模糊检测方法来对图像信息进行检测,在判断图像信息较为模糊的情况下,控制镜头清洗装置清洗镜头。如此,进一步保证了镜头的干净度,有利于镜头的正常工作。
其中,上述图像模糊检测方法指的是:
图像模糊检测装置可以通过Brenner(图像清晰度检测)梯度函数来计算和判断镜头是否需要清洗。Brenner梯度函数能够计算相邻两个像素的灰度差的平方。
具体地,Brenner梯度函数的公式为:D(f)=ΣyΣx|f(x+2,y)-f(x,y)|2,其中,式中f(x,y)为像素点(x,y)的灰度值,D(f)为清晰度的计算结果。
具体使用方式如下:若拍摄的图像为彩色图像,则先转换成灰度图像,然后采用上式计算图像的清晰度值D(f),若D(f)值小于预设值,则认为图像存在模糊,此时,视觉机器人会控制镜头清洗装置清洗镜头,预设值的大小通过实际测试设定,当图像清晰度高于阈值时,图像质量不会对于后续图像处理算法带来不利影响,此时,视觉机器人不会控制镜头清洗装置清洗镜头。
其中,对于图像清晰度的计算,可以对整张图像进行计算,也可以将图像区域分为不同的区域,例如分为3行3列等分的九个区域,对每个区域的清晰度进行计算,当整张图像或者某个区域的图像清晰度低于设定阈值,即认为图像存在模糊。
其中,上述预设值可以是在镜头不存在有污渍的情况下拍摄图像信息的清晰度值D(f)。
可以理解的是,在其他实施例中,图像模糊检测装置还可以采用Tenengrad(图像清晰度评价)函数来来计算和判断镜头是否需要清洗。Tenengrad函数采用Sobel(像素图像边缘检测中最重要的算子之一)算子分别提取水平方向与垂直方向的梯度,其计算表达式为:D(f)=ΣyΣx|G(x,y)|,其中
Figure BDA0002317572480000061
Gx、Gy分别表示经横向及纵向边缘检测的图像
Figure BDA0002317572480000062
通过上述公式计算出图像的清晰度值D(f)后可以采用类似Brenner来判断图像是否模糊(即与预设值比较判断,可以对整张图像做分析判断或者对局部图像判断)。在此不做限定。
在其他实施例中,图像模糊检测装置还可以通过其他函数来计算和判断镜头是否需要清洗。例如,在其他实施例中,图像模糊检测装置还可以通过拉普拉斯梯度函数来计算和判断镜头是否需要清洗。在此不做限定,只需要图像模糊检测装置能够通过图像信息来计算和判断镜头是否需要清洗即可。
实施例二
请参阅图9,更进一步地,步骤S03之后,视觉机器人的镜头清洁方法还包括步骤:
若不存在,进入步骤S031:计算图像信息的清晰度;
S032:当清晰度小于预设阈值时,执行上述实施例一中的步骤S04。
在这样的实施例中,在判断各个帧的图像信息中不存在相同的像素区域的情况下,会根据图像信息计算图像的清晰度,并在清晰度小于预设阈值时,执行上述实施例一中的步骤S04。
如此,通过二次检测的方式,以保证镜头上不会存在有污渍,进而提升镜头的拍摄的图像的精确度,从而有利于视觉机器人的工作。
其中,上述计算图像清晰度的方法可以通过上述实施例一中的图像模糊检测装置来实现。在本实施例关于图像模糊检测装置的未提及之处,可参考上述实施例一中的图像模糊检测装置的相应内容。在此不一一赘述。
实施例三
请参阅图10,更进一步地,S031包括步骤:
S0311:将图像分为多个预设区域,获取各个预设区域内图像的清晰度;
S0312:将多个预设区域内图像中清晰度最低的清晰度作为图像信息的清晰度。
在本实施例中,视觉机器人会将图像分为多个预设区域,然后对多个预设区域进行分析和识别,分别计算出各个预设区域内图像的清晰度,获取计算出的多个清晰度中的最小值,将最小值作为整个图像信息的清晰度。如此,不会存在漏检或者是错检的情况,从而能够准确的获取图像信息的清晰度。例如,把整个图像分为九个区域,首先分别计算出这九个区域中图像对应的清晰度,再比较出这九个清晰度中的最小值,最后将最小值作为整个图像的清晰度。
其中,多个预设区域可以是将图像划分为3*3的区域、或者是可以将图像划分为4*4的区域、又或者可以将图像划分为5*5的区域、再或者是可以将图像划分为4*5的区域。具体如何划分,可以根据不同情况来进行选择。在此不做限定。
其中,上述步骤S0211和步骤S0212可以通过上述实施例一中的图像模糊检测装置来实现。在本实施例关于图像模糊检测装置的未提及之处,可参考上述实施例一中的图像模糊检测装置的相应内容。在此不一一赘述。
实施例四
请参阅图11,更进一步地,步骤S03之后还包括步骤:
若存在,进入步骤S033:控制视觉机器人按照第一预设动作移动;
S034:在视觉机器人按照第一预设动作移动过程中,获取视觉机器人采集的第二视频信息;
S035:当第二视频信息的各个帧的图像信息中存在相同的像素区域时,执行上述实施例一中的步骤S04。
有的时候镜头并没有污渍,但是环境内相同的物体可能会进入到图像中的同一像素位置,使得机器人误以为镜头上有污渍,此时,可以通过控制视觉机器人朝着第一预设方向动作运动,以确定存在相同像素区域的是污渍还是实际环境中的物体。
例如,在一个例子中,镜头没有被污渍遮挡。此时,在机器人行进方向的地上有一条白色线条,视觉机器人朝着白色线条的方向运动,在视觉机器人朝着白色线条的方向运动时,地上的白色线条会持续进入视频图像中相同的像素位置,此时,控制视觉机器人朝着第一预设动作(垂直于白色线条)的方向运动,在视觉机器人朝着垂直于白色线条的方向运动时,地上的白色线条不会再持续进入图像中同一像素位置。也即是说,在这样的情况下,视觉机器人在朝着第一预设动作的方向运动的过程中所拍摄的第二视频信息中的各个帧的图像信息不会存在有相同的像素区域,如此不需要控制镜头清洗装置清洗镜头。
又例如,在一个例子中,镜头真实存在污渍在镜头上。此时,在机器人行进方向的地上有一条白色线条,视觉机器人朝着白色线条的方向运动,在视觉机器人朝着白色线条的方向运动时,地上的白色线条会持续进入视频图像中相同的像素位置,并且污渍也会一直贴设镜头上,也即是说,此时,镜头上会出现两处相同的像素位置,一处是白色线条产生的,另一处是污渍产生的,此时,控制视觉机器人朝着第一预设动作(垂直于白色线条)的方向运动,在视觉机器人朝着垂直于白色线条的方向运动时,地上的白色线条不会进入图像中相同像素位置,然而,由于污渍会一直贴设在镜头上,此时,镜头依旧会出现一处相同的像素位置,即是污渍产生的。也即是说,在这样的情况下,视觉机器人在朝着第一预设动作的方向运动的过程中所拍摄的第二视频信息中的各个帧的图像信息依旧存在有相同的像素区域,此时,视觉机器人执行上述实施例一中的步骤S04,即,控制镜头清洗装置清洗镜头。
其中,第一预设动作与视觉机器人原本的动作是不相同的,如此,能够避免环境中相同的物体进入图像中相同的像素位置导致视觉机器人出现错误的判断的情况。
例如,视觉机器人原本的动作可以是沿着一条直线前行,第一预设动作可以是视觉机器人朝着垂直于该直线的方向前行。
在本实施例中,第一预设动作用于检测镜头是否被污渍遮挡,并在镜头存在污渍时控制镜头清洗装置清洗镜头。
实施例五
请参阅图12,更进一步地,步骤S04之后还包括:
S041:控制视觉机器人按照第二预设动作移动;
S042:在视觉机器人按照第二预设动作移动过程中,获取视觉机器人采集的第三视频信息;
S043:当第三视频信息的各个帧的图像信息中存在相同的像素区域时,返回执行上述实施例一中的步骤S04。
在本实施例中,在控制镜头清洗装置清洗镜头之后,再次控制视觉机器人按照第二预设动作移动。并在视觉机器人按照第二预设动作移动的过程中,获取第三视频信息,之后对第三视频信息的各个帧的图像信息进行判断,在判断第三视频信息中的各个帧的图像信息依旧存在有相同的像素区域,此时,视觉机器人再次执行上述实施例一中的步骤S04,即,控制镜头清洗装置清洗镜头。
也即是说,污渍在第一次清洗的时候未能清洗干净时,此时会进行二次清洗,以使得镜头上的污渍能够被清洗干净,如此来保证镜头的干净度。在一些实施例中,视觉机器人还能够会清洗第三次、第四次甚至是第五次,直到在第N个视频信息中的各个帧的图像信息不存在有相同的像素区域为止。在此不对清洁次数的具体次数做限定。
其中,上述第二预设动作可以是与上述第一预设动作不同的方向,也可以是不同的种类。例如,第一预设动作可以是直线运动,第二预设动作可以是曲线运动。又例如,第一预设动作可以是前进,第二预设动作可以是原地转圈。具体可以根据不同情况来设置。在此不做限定。
当然,在其他实施例中,第二预设动作也可以与上述第一预设动作相同。具体可以根据实际情况来设置。在此不做限定。
在本实施例中,第二预设动作用于检测镜头的污渍是否被清洗干净,并在识别到未清洗干净时控制镜头清洗装置再次清洗镜头。
实施例六
请参阅图13,更进一步地,步骤S043之前还包括步骤:
S0431:获取清洗次数;
S0432:当清洗次数大于预设次数时,发送清洗提示信息。
由于有些污渍,例如口香糖、或者是胶带等,附着在镜头上难以通过镜头清洗装置清洗掉,此时,在清洗次数大于预设次数时,会发送清洗提示信息给用户,用户在接收到该提示信息时,能够通过人工将上述污渍清楚掉。
其中,预设次数可以是三次、四次、五次等。在此不对预设次数的具体次数做限定。
需要指出的是,在预设次数为多次时,视觉机器人会按照不同的预设动作运动,并在运动过程中获取相应的视频信息,然后对该视频信息中各个帧的图像信息进行识别以判断是否存在相同像素区域,在存在有相同的像素区域时,再次返回执行上述实施例一中的步骤S04。
例如,当预设次数为三次时,视觉机器人会按照第三预设动作运动。并在视觉机器人按照第三预设动作运动的过程中,获取视觉机器人采集的第四视频信息,并对第四视频信息中各个帧的图像信息进行识别以判断第四视频信息中各个帧的图像信息是否存在相同的像素区域。在存在有相同的像素区域时,再次返回执行上述实施例一中的步骤S04。
其中,为了降低视觉机器人出现错误的判断的概率。此时,控制第三预设动作与上述第二预设动作不相同。例如,第二预设动作可以是正向运动,第二预设动作可以是反向运动。又例如,第一预设动作可以是前进,第二预设动作可以是原地转圈。具体可以根据不同情况来设置。
进一步地,发送清洗提示信息的方式有多种,以下通过举例进行说明:
例如,在一个例子中,视觉机器人上设置有报警灯。当清洗次数大于预设次数时,报警灯显示红灯,以告知用户镜头上附着有镜头清洗装置难以清洗的物质。
又例如,在另一个实施例中,视觉机器人上设置有语音播放器。当清洗次数大于预设次数时,语音播放器会发出警报,以告知用户镜头上附着有镜头清洗装置难以清洗的物质。
再例如,在一个实施例中,视觉机器人上设置有语音播放器和报警灯,当清洗次数大于预设次数时,报警灯显示红灯的同时语音播放器会发出警报,以告知用户镜头上附着有镜头清洗装置难以清洗的物质。
还例如,视觉机器人上设置有信号发射器,该信号发射器能够跟外部电子装置电性连接。当清洗次数大于预设次数时,信号发射器会将清洗提示信息发送至与该信号发射器电性连接的电子装置中以告知用户镜头上附着有镜头清洗装置难以清洗的物质。
其中,电子装置可以为手机、平板、电子手表等。
进一步地,在其他实施例中,视觉机器人还可以设置有其他装置以实现报警功能。在此做限定。
实施例七
请参阅图14,本发明实施例的视觉机器人的镜头清洁控制装置1000,视觉机器人的镜头清洁控制装置1000包括:
第一视频信息获取单元10,用于在运动过程中,获取视觉机器人预设时间间隔内采集的第一视频信息;
图像信息获取单元20,用于获取第一视频信息中各个帧的图像信息;
判断单元30,用于判断各个帧的图像信息中是否存在相同的像素区域,其中,相同的像素区域为组成像素区域内的各个像素点对应相同;
第一控制单元40,用于若各个帧的图像信息中存在相同的像素区域,控制镜头清洗装置清洗镜头。
本发明实施例七所提供的视觉机器人的镜头清洁控制装置1000,其实现原理及产生的技术效果和前述视觉机器人的镜头清洁方法的实施例一相同,为简要描述,视觉机器人的镜头清洁控制装置1000的实施例七未提及之处,可参考前述镜头清洁方法实施例一中相应内容。
实施例八
请参阅图15,更进一步地,视觉机器人的镜头清洁控制装置1000还包括:
计算单元50,用于若各个帧的图像信息中不存在相同的像素区域,计算图像信息的清晰度;
上述实施例七的第一控制单元40,第一控制单元40还用于当清晰度小于预设阈值时,控制镜头清洗装置清洗镜头的。
本发明实施例八所提供的视觉机器人的镜头清洁控制装置1000,其实现原理及产生的技术效果和前述视觉机器人的镜头清洁方法的实施例二相同,为简要描述,视觉机器人的镜头清洁控制装置1000的实施例八未提及之处,可参考前述镜头清洁方法实施例二中相应内容。
实施例九
请参阅图16,更进一步地,计算单元50包括:
清晰度计算模块501,用于将图像分为多个预设区域,计算各个预设区域内图像的清晰度;
清晰度获取模块502,用于将多个预设区域内图像中清晰度最低的清晰度作为图像信息的清晰度。
本发明实施例九所提供的视觉机器人的镜头清洁控制装置1000,其实现原理及产生的技术效果和前述视觉机器人的镜头清洁方法的实施例三相同,为简要描述,视觉机器人的镜头清洁控制装置1000的实施例九未提及之处,可参考前述镜头清洁方法实施例三中相应内容。
实施例十
请参阅图17,更进一步地,视觉机器人的镜头清洁控制装置1000还包括:
第二控制单元70,用于若各个帧的图像信息中存在相同的像素区域,控制视觉机器人按照第一预设动作移动;
第二视频信息获取单元80,用于在视觉机器人按照第一预设动作移动过程中,获取视觉机器人采集的第二视频信息;
上述实施例七的第一控制单元40,第一控制单元40还用于当第二视频信息的各个帧的图像信息中存在相同的像素区域时,控制镜头清洗装置清洗镜头。
本发明实施例十所提供的视觉机器人的镜头清洁控制装置1000,其实现原理及产生的技术效果和前述视觉机器人的镜头清洁方法的实施例四相同,为简要描述,视觉机器人的镜头清洁控制装置1000的实施例十未提及之处,可参考前述镜头清洁方法实施例四中相应内容。
实施例十一
请参阅图18,更进一步地,视觉机器人的镜头清洁控制装置1000还包括:
第三控制单元100,用于控制视觉机器人按照第二预设动作移动;
第三视频信息获取单元110,用于在视觉机器人按照第二预设动作移动过程中,获取视觉机器人采集的第三视频信息;
返回执行单元120,用于当第三视频信息的各个帧的图像信息中存在相同的像素区域时,返回执行控制镜头清洗装置清洗镜头的步骤。
本发明实施例十一所提供的视觉机器人的镜头清洁控制装置1000,其实现原理及产生的技术效果和前述视觉机器人的镜头清洁方法的实施例五相同,为简要描述,视觉机器人的镜头清洁控制装置1000的实施例十一未提及之处,可参考前述镜头清洁方法实施例五中相应内容。
实施例十二
请参阅图19,更进一步地,视觉机器人的镜头清洁控制装置1000还包括:
清洗次数获取单元130,用于获取清洗次数;
发送单元140,用于当清洗次数大于预设次数时,发送清洗提示信息。
本发明实施例十二所提供的视觉机器人的镜头清洁控制装置1000,其实现原理及产生的技术效果和前述视觉机器人的镜头清洁方法的实施例六相同,为简要描述,视觉机器人的镜头清洁控制装置1000的实施例十二未提及之处,可参考前述镜头清洁方法实施例六中相应内容。
实施例十三
本发明实施例的计算机存储介质中,存储介质上存储有视觉机器人的镜头清洁程序,视觉机器人的镜头清洁程序被处理器执行时实现上述任一项的视觉机器人的镜头清洁方法的步骤。
就本说明书而言,“存储介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。存储介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,存储介质甚至可以是可在其上打印程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得程序,然后将其存储在存储介质中。
以上仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (13)

1.一种视觉机器人的镜头清洁方法,所述视觉机器人包括镜头清洗装置,其特征在于,所述视觉机器人的镜头清洁方法包括:
在运动过程中,获取所述视觉机器人预设时间间隔内采集的第一视频信息;
获取所述第一视频信息中各个帧的图像信息;
判断所述各个帧的图像信息中是否存在相同的像素区域,其中,所述相同的像素区域为组成所述像素区域内的各个像素点对应相同;
若存在,控制所述镜头清洗装置清洗所述镜头。
2.如权利要求1所述的视觉机器人的镜头清洁方法,其特征在于,所述判断所述各个帧的图像信息中是否存在相同的像素区域的步骤之后,所述视觉机器人的镜头清洁方法还包括:
若不存在,计算所述图像信息的清晰度;
当所述清晰度小于预设阈值时,执行所述控制所述镜头清洗装置清洗所述镜头的步骤。
3.如权利要求2所述的视觉机器人的镜头清洁方法,其特征在于,所述计算所述图像信息的清晰度的步骤包括:
将图像分为多个预设区域,获取各个所述预设区域内图像的清晰度;
将所述多个预设区域内图像中清晰度最低的清晰度作为所述图像信息的清晰度。
4.如权利要求1-3任一项所述的视觉机器人的镜头清洁方法,其特征在于,所述判断所述各个帧的图像信息中是否存在相同的像素区域的步骤之后,还包括:
若存在,控制所述视觉机器人按照第一预设动作移动;
在所述视觉机器人按照所述第一预设动作移动过程中,获取所述视觉机器人采集的第二视频信息;
当所述第二视频信息的各个帧的图像信息中存在相同的像素区域时,执行所述控制所述镜头清洗装置清洗所述镜头的步骤。
5.如权利要求4所述的视觉机器人的镜头清洁方法,其特征在于,所述控制所述镜头清洗装置清洗所述镜头的步骤之后,还包括:
控制所述视觉机器人按照第二预设动作移动;
在所述视觉机器人按照所述第二预设动作移动过程中,获取所述视觉机器人采集的第三视频信息;
当所述第三视频信息的各个帧的图像信息中存在相同的像素区域时,返回执行所述控制所述镜头清洗装置清洗所述镜头的步骤。
6.如权利要求5所述的视觉机器人的镜头清洁方法,其特征在于,返回执行所述控制所述镜头清洗装置清洗所述镜头的步骤之前,还包括:
获取清洗次数;
当清洗次数大于预设次数时,发送清洗提示信息。
7.一种视觉机器人的镜头清洁控制装置,其特征在于,所述视觉机器人的镜头清洁控制装置包括:
第一视频信息获取单元,用于在运动过程中,获取所述视觉机器人预设时间间隔内采集的第一视频信息;
图像信息获取单元,用于获取所述第一视频信息中各个帧的图像信息;
判断单元,用于判断所述各个帧的图像信息中是否存在相同的像素区域,其中,所述相同的像素区域为组成所述像素区域内的各个像素点对应相同;
第一控制单元,用于若所述各个帧的图像信息中存在相同的像素区域,控制所述镜头清洗装置清洗所述镜头。
8.如权利要求7所述的视觉机器人的镜头清洁控制装置,其特征在于,所述视觉机器人的镜头清洁控制装置还包括:
计算单元,用于若所述各个帧的图像信息中不存在相同的像素区域,计算所述图像信息的清晰度;
所述第一控制单元,还用于当所述清晰度小于预设阈值时,控制所述镜头清洗装置清洗所述镜头的。
9.如权利要求8所述的视觉机器人的镜头清洁控制装置,其特征在于,所述计算单元包括:
清晰度计算模块,用于将图像分为多个预设区域,计算各个所述预设区域内图像的清晰度;
清晰度获取模块,用于将所述多个预设区域内图像中清晰度最低的清晰度作为所述图像信息的清晰度。
10.如权利要求7-9任一项所述的视觉机器人的镜头清洁控制装置,其特征在于,所述视觉机器人的镜头清洁控制装置还包括:
第二控制单元,用于若所述各个帧的图像信息中存在相同的像素区域,控制所述视觉机器人按照第一预设动作移动;
第二视频信息获取单元,用于在所述视觉机器人按照所述第一预设动作移动过程中,获取所述视觉机器人采集的第二视频信息;
所述第一控制单元,还用于当所述第二视频信息的各个帧的图像信息中存在相同的像素区域时,控制所述镜头清洗装置清洗所述镜头。
11.如权利要求10所述的视觉机器人的镜头清洁控制装置,其特征在于,所述视觉机器人的镜头清洁控制装置还包括:
第三控制单元,用于控制所述视觉机器人按照第二预设动作移动;
第三视频信息获取单元,用于在所述视觉机器人按照所述第二预设动作移动过程中,获取所述视觉机器人采集的第三视频信息;
返回执行单元,用于当所述第三视频信息的各个帧的图像信息中存在相同的像素区域时,返回执行所述控制所述镜头清洗装置清洗所述镜头的步骤。
12.如权利要求11所述的视觉机器人的镜头清洁控制装置,其特征在于,所述视觉机器人的镜头清洁控制装置还包括:
清洗次数获取单元,用于获取清洗次数;
发送单元,用于当清洗次数大于预设次数时,发送清洗提示信息。
13.一种计算机存储介质,其特征在于,所述存储介质上存储有视觉机器人的镜头清洁程序,所述视觉机器人的镜头清洁程序被处理器执行时实现如权利要求1至6中任一项所述的视觉机器人的镜头清洁方法的步骤。
CN201911284249.9A 2019-12-13 2019-12-13 视觉机器人的镜头清洁方法、控制装置及存储介质 Pending CN111064870A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911284249.9A CN111064870A (zh) 2019-12-13 2019-12-13 视觉机器人的镜头清洁方法、控制装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911284249.9A CN111064870A (zh) 2019-12-13 2019-12-13 视觉机器人的镜头清洁方法、控制装置及存储介质

Publications (1)

Publication Number Publication Date
CN111064870A true CN111064870A (zh) 2020-04-24

Family

ID=70301551

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911284249.9A Pending CN111064870A (zh) 2019-12-13 2019-12-13 视觉机器人的镜头清洁方法、控制装置及存储介质

Country Status (1)

Country Link
CN (1) CN111064870A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112991292A (zh) * 2021-03-12 2021-06-18 天津工业大学 输送带纵向撕裂的检测方法和装置
CN113581080A (zh) * 2021-08-18 2021-11-02 苏州双福智能科技有限公司 一种新能源汽车用倒车盲区辅助显示装置
CN113612926A (zh) * 2021-09-01 2021-11-05 寒武纪行歌(南京)科技有限公司 摄像头清洗方法、装置、设备及可读存储介质
CN113709374A (zh) * 2021-09-01 2021-11-26 寒武纪行歌(南京)科技有限公司 摄像头清洗控制方法、装置、设备及系统
CN113814212A (zh) * 2021-09-06 2021-12-21 中南大学 一种基于镜片模糊检测的前置镜片在线智能自清洗装置及其方法
CN114200957A (zh) * 2021-11-04 2022-03-18 深圳市鑫疆基业科技有限责任公司 无人机自动电力杆塔巡检控制系统以及方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070233674A1 (en) * 2004-02-06 2007-10-04 Barbara De Lury Systems, methods and apparatus to determine relevance of search results in whole/part search
CN103997622A (zh) * 2014-03-27 2014-08-20 上海海事大学 无人值守监控摄像头的自动清洗方法
CN104539939A (zh) * 2014-12-17 2015-04-22 惠州Tcl移动通信有限公司 一种基于移动终端的镜头清洁检测方法及检测系统
CN107749918A (zh) * 2017-09-14 2018-03-02 深圳天珑无线科技有限公司 提示用户擦拭镜头的方法、移动终端及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070233674A1 (en) * 2004-02-06 2007-10-04 Barbara De Lury Systems, methods and apparatus to determine relevance of search results in whole/part search
CN103997622A (zh) * 2014-03-27 2014-08-20 上海海事大学 无人值守监控摄像头的自动清洗方法
CN104539939A (zh) * 2014-12-17 2015-04-22 惠州Tcl移动通信有限公司 一种基于移动终端的镜头清洁检测方法及检测系统
CN107749918A (zh) * 2017-09-14 2018-03-02 深圳天珑无线科技有限公司 提示用户擦拭镜头的方法、移动终端及存储介质

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112991292A (zh) * 2021-03-12 2021-06-18 天津工业大学 输送带纵向撕裂的检测方法和装置
CN113581080A (zh) * 2021-08-18 2021-11-02 苏州双福智能科技有限公司 一种新能源汽车用倒车盲区辅助显示装置
CN113581080B (zh) * 2021-08-18 2022-07-15 苏州双福智能科技有限公司 一种新能源汽车用倒车盲区辅助显示装置
CN113612926A (zh) * 2021-09-01 2021-11-05 寒武纪行歌(南京)科技有限公司 摄像头清洗方法、装置、设备及可读存储介质
CN113709374A (zh) * 2021-09-01 2021-11-26 寒武纪行歌(南京)科技有限公司 摄像头清洗控制方法、装置、设备及系统
CN113612926B (zh) * 2021-09-01 2022-10-28 寒武纪行歌(南京)科技有限公司 摄像头清洗方法、装置、设备及可读存储介质
CN113814212A (zh) * 2021-09-06 2021-12-21 中南大学 一种基于镜片模糊检测的前置镜片在线智能自清洗装置及其方法
CN113814212B (zh) * 2021-09-06 2022-09-02 中南大学 一种基于镜片模糊检测的前置镜片在线智能自清洗装置及其方法
CN114200957A (zh) * 2021-11-04 2022-03-18 深圳市鑫疆基业科技有限责任公司 无人机自动电力杆塔巡检控制系统以及方法

Similar Documents

Publication Publication Date Title
CN111064870A (zh) 视觉机器人的镜头清洁方法、控制装置及存储介质
US8848978B2 (en) Fast obstacle detection
US8797417B2 (en) Image restoration method in computer vision system, including method and apparatus for identifying raindrops on a windshield
JP6744336B2 (ja) 予想されるエッジ軌跡を用いたレンズ汚染の検出
CN112837302B (zh) 模具的状态监测方法、装置、工控机、存储介质及系统
JP5019375B2 (ja) 物体検出装置および物体検出方法
JP4245452B2 (ja) レンズの汚れ判定方法及び装置
KR101780989B1 (ko) 번호인식기의 오염감지기능 자동 와이퍼
CN112773272B (zh) 移动方向确定方法、装置、扫地机器人和存储介质
JP2021022369A (ja) 自動表面評価のためのシステム及び方法
CN111724383A (zh) 基于转盘的摄像头模组黑斑检测系统
CN113269762A (zh) 屏幕不良检测方法、系统及计算机存储介质
JP5207057B2 (ja) 撮影装置の汚れを検知する汚れ検知装置及び同検知方法
CN111932596A (zh) 摄像头遮挡区域的检测方法、装置、设备和存储介质
CN110880184A (zh) 一种基于光流场进行摄像头自动巡检的方法及装置
CN114782415A (zh) 一种基于机器视觉的灌装桶面异常状态实时监测方法
JP2020109542A (ja) 付着物検出装置および付着物検出方法
CN112748116A (zh) 一种医用纱布表面缺陷在线检测方法与装置
US20210209742A1 (en) Gaussian image quality analysis tool and method for operation
CN115661110B (zh) 一种透明工件识别与定位的方法
CN116167969A (zh) 镜头脏污检测方法、装置、车辆、存储介质及程序产品
JP2008160635A (ja) カメラ状態検出方法
CN114757888A (zh) 一种基于纹理特征的挡风玻璃脏污检测方法
CN114119738A (zh) 水池污渍检测方法及系统
CN111815705A (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200424

RJ01 Rejection of invention patent application after publication