本发明涉及计算机视觉领域,具体地,涉及用于飞拍过程中图像筛选的方法和系统。
背景技术:
在传统的工业质检过程中,图像采集的过程较为简单,一般都是固定相机,然后对样本的各个面分别拍照。在这个过程中,每次只能拍摄一个面,然后需要人工介入去调整样本的角度,这一过程会很影响样本图像采集的速度。而飞拍技术则是固定样本,采用运动相机,一次性对样本的所有面进行拍摄。这样的技术可以大大的提高工业质检中样本拍摄的效率。飞拍的原理是,对承载相机的机器臂调整好运动轨迹,在轨迹中设置好拍摄位点,当相机运动到拍摄位点后会进行拍摄。
在工业表面缺陷质量检测中,效率是一个关键的因素。利用人工智能技术代替人工,最大的优势在于速度。利用飞拍技术虽然可以大大提高工业质检的速度,但是飞拍的运动轨迹和正确的拍摄位点通常很难调节,这一过程以往需要人工介入,进行大量的调参优化。
专利文献cn111586289a揭示一种高速飞拍控制方法,其包括步骤:预设飞拍位置于拍摄控制单元;运动控制单元控制运动单元带动工件经过预设飞拍位置;运动单元触发拍摄控制单元;拍摄控制单元先后启动拍摄单元的拍摄件及光源件;拍摄件拍取工件图像。本发明还提供一种高速飞拍控制系统。本发明的高速飞拍控制方法通过拍摄控制单元对拍摄件及光源件进行控制,使得光源件迟于拍摄件启动,同时根据预设的飞拍位置对运动状态的工件进行拍摄,实现不停机拍摄。但是如何得到拍摄的预设的飞拍位置,需要进一步优化。
技术实现要素:
针对现有技术中的缺陷,本发明的目的是提供一种用于飞拍过程中图像筛选的方法和系统。
根据本发明提供的一种用于飞拍过程中图像筛选的方法,包括:
步骤甲:获取单适应性矩阵hab;
步骤乙:根据单适应性矩阵hab筛选图片。
优选地,所述步骤甲,包括:
步骤甲s1:对拍摄位点正确的图像进行随机剪裁,获得剪裁的图像块a;
步骤甲s2:对图像块a的四个角进行随机扰动,获得四对偏移量δxi,δyi,i=1,2,3,4;其中,δxi表示平面直角坐标系下x轴的偏移量,δyi表示平面直角坐标系下y轴的偏移量;并根据对偏移量计算得到单适应性矩阵hab;将图像块a通过hab的逆矩阵
步骤甲s3:将图像块a和图像块b作为输入,单适应性矩阵hab作为监督label,送入homographynet进行训练;让homographynet网络去学习样本对之间的变换,图像块a、b是作为一对样本对,作为模型输入,预测出单适应性矩阵
优选地,在步骤甲s1中,按照矩形进行随机剪裁得到图像块a,矩形是固定大小的;
在步骤甲s2中,剪裁图像块a的四个角的坐标
其中i=1,2,3,4;在求hab时添加约束h33=1,求得唯一解;
h11,h12,h13;h21,h22,h23;h31,h32,h33为参数;
优选地,所述步骤乙包括:
步骤乙s1:对样本的拍摄设定运动轨迹,并在运动轨迹上设置拍摄位点;将拍摄的所有图像以灰度形式存进飞拍图像库;
步骤乙s2:第一次筛选:利用拉普拉斯算子对飞拍图像库中图片进行模糊筛选;
步骤乙s3:第二次筛选:将第一次筛选后的飞拍图像库的清晰图片与正确图像库里对应的图像作为输入,送入步骤甲训练得到的homographynet,进行推理,获得两张图片的单适应性矩阵hab,并由hab计算飞拍图像和正确图像之间的变换差距,并从飞拍图像库中筛除大于设定阙值t的飞拍图像;
步骤乙s4:记录出经过两次筛选后,存留下来飞拍照片的拍摄位点和运动轨迹;其中,存留下来飞拍照片的拍摄位点作为更新后的拍摄位点,存留下来飞拍照片的运动轨迹作为更新后的运动轨迹;提高变换差距的阙值t;返回触发步骤乙s1继续执行;
步骤乙s4返回步骤乙s1为迭代优化运动轨迹和拍摄位点,缩小拍摄位点随机生成的范围和数量,逐步提高变换差距的阙值t,直到剩下6个最合适的拍摄位点,6个最合适的拍摄位点具体为上下左右前后六个角度的正投影视图。
优选地,在所述步骤乙s2中,拉普拉斯算子是图像的二阶导,检测图像灰度值的快速变化;对于清晰图像,其边界信息较多,经拉普拉斯计算后方差较大;而对于模糊图像,其边界信息较少,经拉普拉斯计算后方差较小;对图片进行拉普拉斯计算后,得到图片方差,对此设定方差阈值,筛选出模糊图像;
在所述步骤乙s3中,hab是一个3*3的矩阵,拆成:
其中a2*2是仿射变换参数,t2*1平移变换参数;
vt表示变换后边缘交点关系,而s=1;
分别计算出a2*2,t2*1和vt的行列式,分别记作为a,t,v;
飞拍图像和正确图像之间的变换差距用a,t,v的平均值来表示。
根据本发明提供的一种用于飞拍过程中图像筛选的系统,包括:
模块甲:获取单适应性矩阵hab;
模块乙:根据单适应性矩阵hab筛选图片。
优选地,所述模块甲,包括:
模块甲m1:对拍摄位点正确的图像进行随机剪裁,获得剪裁的图像块a;
模块甲m2:对图像块a的四个角进行随机扰动,获得四对偏移量δxi,δyi,i=1,2,3,4;其中,δxi表示平面直角坐标系下x轴的偏移量,δyi表示平面直角坐标系下y轴的偏移量;并根据对偏移量计算得到单适应性矩阵hab;将图像块a通过hab的逆矩阵
模块甲m3:将图像块a和图像块b作为输入,单适应性矩阵hab作为监督label,送入homographynet进行训练;让homographynet网络去学习样本对之间的变换,图像块a、b是作为一对样本对,作为模型输入,预测出单适应性矩阵
优选地,在模块甲m1中,按照矩形进行随机剪裁得到图像块a,矩形是固定大小的;
在模块甲m2中,剪裁图像块a的四个角的坐标
其中i=1,2,3,4;在求hab时添加约束h33=1,求得唯一解;
h11,h12,h13;h21,h22,h23;h31,h32,h33为参数;
优选地,所述模块乙包括:
模块乙m1:对样本的拍摄设定运动轨迹,并在运动轨迹上设置拍摄位点;将拍摄的所有图像以灰度形式存进飞拍图像库;
模块乙m2:第一次筛选:利用拉普拉斯算子对飞拍图像库中图片进行模糊筛选;
模块乙m3:第二次筛选:将第一次筛选后的飞拍图像库的清晰图片与正确图像库里对应的图像作为输入,送入模块甲训练得到的homographynet,进行推理,获得两张图片的单适应性矩阵hab,并由hab计算飞拍图像和正确图像之间的变换差距,并从飞拍图像库中筛除大于设定阙值t的飞拍图像;
模块乙m4:记录出经过两次筛选后,存留下来飞拍照片的拍摄位点和运动轨迹;其中,存留下来飞拍照片的拍摄位点作为更新后的拍摄位点,存留下来飞拍照片的运动轨迹作为更新后的运动轨迹;提高变换差距的阙值t;返回触发模块乙m1继续执行;
模块乙m4返回模块乙m1为迭代优化运动轨迹和拍摄位点,缩小拍摄位点随机生成的范围和数量,逐步提高变换差距的阙值t,直到剩下6个最合适的拍摄位点,6个最合适的拍摄位点具体为上下左右前后六个角度的正投影视图。
优选地,在所述模块乙m2中,拉普拉斯算子是图像的二阶导,检测图像灰度值的快速变化;对于清晰图像,其边界信息较多,经拉普拉斯计算后方差较大;而对于模糊图像,其边界信息较少,经拉普拉斯计算后方差较小;对图片进行拉普拉斯计算后,得到图片方差,对此设定方差阈值,筛选出模糊图像;
在所述模块乙m3中,hab是一个3*3的矩阵,拆成:
其中a2*2是仿射变换参数,t2*1平移变换参数;
vt表示变换后边缘交点关系,而s=1;
分别计算出a2*2,t2*1和vt的行列式,分别记作为a,t,v;
飞拍图像和正确图像之间的变换差距用a,t,v的平均值来表示。
与现有技术相比,本发明具有如下的有益效果:
本发明采用拉普拉斯算子对模糊图像进行筛选,并利用单应性矩阵网络homographynet计算得到变换矩阵,对拍摄图像进行筛选,从而自动化的定位正确的拍摄位点范围和确定正确的运动轨迹范围,大大缩短了飞拍拍摄定位的参数搜索过程。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为homographynet的主要框架。
图2为飞拍图片筛选的流程图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
在工业质检领域,样本照片的成像角度和清晰度会很大程度上影响后续的检测模型。传统的样本图像获取过程,一般是用固定好的相机去拍摄固定的样本,这样速度虽然慢,但是静态拍摄的成像效果却很好。飞拍技术采用机器臂加相机,虽然大大提高了样本图像获取的速度,但是在运动拍摄过程中,如果运动轨迹和拍摄位点没有寻找正确,会很大程度影响照片的质量。
对单应性矩阵homographymatrix的模型结构进行说明。
如图1所示,是单应性矩阵网络homographynet的主要框架。
用固定相机拍摄样本的各个面,获得每个面的图像构成正确图像。正确图像定义:清晰,无损,角度正确,可以用于后续图像检测模型的训练。
将多个正确图像构建为正确图像库;
在正确图像库中,遍历依次获取正确图像,并对每一张正确图像执行步骤甲s。
所述步骤甲包括:
步骤甲s1:对正确图像进行随机剪裁,获得剪裁的图像块a;具体地,按照矩形进行随机剪裁,矩形需要固定大小,比如在2000*2000的大图里,剪裁300*500(固定大小)的小图片。
步骤甲s2:对图像块a的四个角进行随机扰动,获得四对偏移量δxi,δyi,i=1,2,3,4;其中,δxi表示平面直角坐标系下x轴的偏移量,δyi表示平面直角坐标系下y轴的偏移量;并根据对偏移量计算得到单适应性矩阵hab。将图像块a通过hab的逆矩阵
具体地,剪裁图像块a的四个角的坐标
其中i=1,2,3,4。所以单适应性矩阵hab有9个未知数,但只有8个方程组。所以在求hab时一般添加约束h33=1,最后共剩8个未知数。由此可以求得唯一解。
h11,h12,h13;h21,h22,h23;h31,h32,h33为参数。
步骤甲s3:将图像块a和图像块b作为输入,单适应性矩阵hab作为监督label,送入homographynet进行训练。为了让homographynet网络去学习样本对之间的变换。图1中的图像块a、b是作为一对样本对,作为模型输入,预测出单适应性矩阵
注:对步骤甲s可进行多次操作,可获得单张图片的多次随机采样。
如图2所示,是飞拍图片筛选的流程图。
初始化随机设置第一数量的拍摄位点,例如10000个拍摄位点,即拍摄10000次。初始化拍摄路径的运动轨迹。
步骤乙s包括:
步骤乙s1:对样本的拍摄设定运动轨迹,并在运动轨迹上设置拍摄位点。将拍摄的所有图像以灰度形式存进飞拍图像库;
步骤乙s2:第一次筛选:利用拉普拉斯算子对飞拍图像库中图片进行模糊筛选。因为模糊图像一定是来自不佳的拍摄位点,所以最先筛除。拉普拉斯算子是图像的二阶导,可以检测图像灰度值的快速变化。对于正常图像,其边界清晰,经拉普拉斯计算后方差较大;而对于模糊图像,其边界信息少,经拉普拉斯计算后方差小。对图片进行拉普拉斯计算后,得到图片方差,对此设定一定阈值,即可筛选出模糊图像。
步骤乙s3:第二次筛选:将第一次筛选后的飞拍图像库的图片与正确图像库里对应的图像作为输入,送入模块甲m训练得到的homographynet,进行推理,获得两张图片的单适应性矩阵hab,并由hab计算飞拍图像和正确图像之间的变换差距,并从飞拍图像库中筛除大于设定阙值t的飞拍图像。
具体地,hab是一个3*3的矩阵,而它可以拆成
其中a2*2是仿射变换参数,t2*1平移变换参数,vt
表示变换后边缘交点关系,而s=1。分别计算出a2*2,t2*1和vt的行列式,分别记作为a,t,v。
飞拍图像和正确图像之间的变换差距可以用a,t,v的平均值来表示。
步骤乙s4:记录出两次筛选后,存留下来飞拍照片的拍摄位点和运动轨迹。其中,存留下来飞拍照片的拍摄位点作为更新后的拍摄位点,存留下来飞拍照片的运动轨迹作为更新后的运动轨迹;返回触发步骤乙s1继续执行;
步骤乙s4返回步骤乙s1为迭代优化运动轨迹和拍摄位点,缩小拍摄位点随机生成的范围和数量,逐步提高变换差距的阙值t,直到剩下6个最合适的拍摄位点,具体为上下左右前后六个角度的正投影视图。
根据本发明提供的一种用于飞拍过程中图像筛选的系统,包括:
模块甲:获取单适应性矩阵hab;
模块乙:根据单适应性矩阵hab筛选图片。
优选地,所述模块甲,包括:
模块甲m1:对拍摄位点正确的图像进行随机剪裁,获得剪裁的图像块a;
模块甲m2:对图像块a的四个角进行随机扰动,获得四对偏移量δxi,δyi,i=1,2,3,4;其中,δxi表示平面直角坐标系下x轴的偏移量,δyi表示平面直角坐标系下y轴的偏移量;并根据对偏移量计算得到单适应性矩阵hab;将图像块a通过hab的逆矩阵
模块甲m3:将图像块a和图像块b作为输入,单适应性矩阵hab作为监督label,送入homographynet进行训练;让homographynet网络去学习样本对之间的变换,图像块a、b是作为一对样本对,作为模型输入,预测出单适应性矩阵
优选地,在模块甲m1中,按照矩形进行随机剪裁得到图像块a,矩形是固定大小的;
在模块甲m2中,剪裁图像块a的四个角的坐标
其中i=1,2,3,4;在求hab时添加约束h33=1,求得唯一解;
h11,h12,h13;h21,h22,h23;h31,h32,h33为参数;
优选地,所述模块乙包括:
模块乙m1:对样本的拍摄设定运动轨迹,并在运动轨迹上设置拍摄位点;将拍摄的所有图像以灰度形式存进飞拍图像库;
模块乙m2:第一次筛选:利用拉普拉斯算子对飞拍图像库中图片进行模糊筛选;
模块乙m3:第二次筛选:将第一次筛选后的飞拍图像库的清晰图片与正确图像库里对应的图像作为输入,送入模块甲训练得到的homographynet,进行推理,获得两张图片的单适应性矩阵hab,并由hab计算飞拍图像和正确图像之间的变换差距,并从飞拍图像库中筛除大于设定阙值t的飞拍图像;
模块乙m4:记录出经过两次筛选后,存留下来飞拍照片的拍摄位点和运动轨迹;其中,存留下来飞拍照片的拍摄位点作为更新后的拍摄位点,存留下来飞拍照片的运动轨迹作为更新后的运动轨迹;提高变换差距的阙值t;返回触发模块乙m1继续执行;
模块乙m4返回模块乙m1为迭代优化运动轨迹和拍摄位点,缩小拍摄位点随机生成的范围和数量,逐步提高变换差距的阙值t,直到剩下6个最合适的拍摄位点,6个最合适的拍摄位点具体为上下左右前后六个角度的正投影视图。
优选地,在所述模块乙m2中,拉普拉斯算子是图像的二阶导,检测图像灰度值的快速变化;对于清晰图像,其边界信息较多,经拉普拉斯计算后方差较大;而对于模糊图像,其边界信息较少,经拉普拉斯计算后方差较小;对图片进行拉普拉斯计算后,得到图片方差,对此设定方差阈值,筛选出模糊图像;
在所述模块乙m3中,hab是一个3*3的矩阵,拆成:
其中a2*2是仿射变换参数,t2*1平移变换参数;
vt表示变换后边缘交点关系,而s=1;
分别计算出a2*2,t2*1和vt的行列式,分别记作为a,t,v;
飞拍图像和正确图像之间的变换差距用a,t,v的平均值来表示。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统、装置及其各个模块以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统、装置及其各个模块以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同程序。所以,本发明提供的系统、装置及其各个模块可以被认为是一种硬件部件,而对其内包括的用于实现各种程序的模块也可以视为硬件部件内的结构;也可以将用于实现各种功能的模块视为既可以是实现方法的软件程序又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。