视觉检测方法、装置、计算机设备及计算机可读存储介质转让专利

申请号 : CN202311744890.2

文献号 : CN117420152B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 孙娜彭智浩郑军

申请人 : 聚时科技(深圳)有限公司

摘要 :

本发明提供的视觉检测方法、装置、计算机设备及计算机可读存储介质,包括:采集石墨舟图像;在石墨舟图像中确定出多个电池片分布网格,并在每个电池片分布网格内识别电池片;提取每个电池片分布网格对应的边框以及边框内的电池片检测区域;在电池片检测区域内确定电池片基准像素点,并计算电池片基准像素点与边框之间的最大距离;根据最大距离与预设距离阈值的比较结果确定电池片分布网格是否存在翘片缺陷。该视觉检测方法可以检测电池片是否存在翘片缺陷,能够提升翘片检测效率和精度。

权利要求 :

1.一种视觉检测方法,其特征在于,所述方法包括:

采集石墨舟图像;

在所述石墨舟图像中确定出多个电池片分布网格,并在每个所述电池片分布网格内识别电池片;

提取每个所述电池片分布网格对应的边框以及所述边框内的电池片检测区域;

在所述电池片检测区域内确定电池片基准像素点,并计算所述电池片基准像素点与所述边框之间的最大距离;其中,所述电池片基准像素点代表整片电池片在电池片检测区域内的位置方位;

根据所述最大距离与预设距离阈值的比较结果确定所述电池片分布网格是否存在翘片缺陷;

在所述电池片检测区域内确定电池片基准像素点,包括:对所述电池片检测区域进行骨架提取,得到所述电池片的骨架线;获取位于所述骨架线上的每个电池片像素点的列坐标;基于所述列坐标将所述电池片检测区域划分为上检测区域和下检测区域;确定所述电池片与所述上检测区域和所述下检测区域的相对位置关系,并基于所述相对位置关系确定所述电池片基准像素点;

并基于所述相对位置关系确定所述电池片基准像素点,包括:获取位于所述骨架线上的所述每个电池片像素点的行坐标;当所述电池片位于所述上检测区域,则将最大行坐标对应的所述电池片像素点确定为所述电池片基准像素点;若所述电池片位于所述下检测区域,则将最小行坐标对应的所述电池片像素点确定为所述电池片基准像素点。

2.根据权利要求1所述的视觉检测方法,其特征在于,并计算所述电池片基准像素点与所述边框之间的最大距离,包括:根据预设的宽度和高度,以所述电池片基准像素点为左角点或右角点生成一个矩形测量区域;

在所述矩形测量区域中根据预设区域分割阈值进行阈值分割,得到目标边框区域;

将所述目标边框区域靠近所述电池片一侧的边框线作为基准边框线,计算所述基准边框线与所述电池片基准像素点之间的距离,为所述最大距离。

3.根据权利要求2所述的视觉检测方法,其特征在于,所述基准边框线是通过如下方式确定的:获取所述目标边框区域的最小外接矩形;

若所述电池片位于所述上检测区域,则将所述最小外接矩形的右下角点所在的水平矩形边确定为所述基准边框线;

若所述电池片位于所述下检测区域,则将所述最小外接矩形的左上角点所在的水平矩形边确定为所述基准边框线。

4.根据权利要求2所述的视觉检测方法,其特征在于,以所述电池片基准像素点为左角点或右角点生成一个矩形测量区域,包括:若所述电池片位于所述上检测区域,则将所述电池片基准像素点作为左下角点或右下角点,生成所述矩形测量区域;若所述电池片位于所述下检测区域,则将所述电池片基准像素点作为左上角点或右上角点,生成所述矩形测量区域。

5.根据权利要求1所述的视觉检测方法,其特征在于,在所述石墨舟图像中确定出多个电池片分布网格,包括:在所述石墨舟图像中提取石墨舟叶的边界直线;

根据所述边界直线的相交点及石墨舟体的行列数,对所述石墨舟图像进行划分得到多个所述电池片分布网格。

6.根据权利要求5所述的视觉检测方法,其特征在于,在所述石墨舟图像中提取石墨舟叶的边界直线,包括:对所述石墨舟图像进行二值化形态学处理,得到所述石墨舟叶的边界区域二值图;

根据所述边界区域二值图进行直线拟合,得到所述边界直线。

7.根据权利要求1所述的视觉检测方法,其特征在于,在每个所述电池片分布网格内识别电池片,包括:根据预设尺寸信息对所述电池片检测区域进行腐蚀操作,并根据预设电池片分割阈值对腐蚀操作后的电池片检测区域进行阈值分割;

若分割出来的待确认对象的特征与电池片的特征匹配,则将所述待确认对象确定为所述电池片。

8.根据权利要求1所述的视觉检测方法,其特征在于,在基于所述列坐标将所述电池片检测区域划分为上检测区域和下检测区域之后,所述方法还包括:对所述上检测区域和所述下检测区域进行边缘检测,确定是否存在所述电池片的边缘;

若不存在,则确定所述电池片分布网格存在缺片缺陷;否则,将所述电池片分布网格所在区域的图像输入与预训练的缺片分类模型中进行检测,以确定所述电池片分布网格是否存在所述缺片缺陷。

9.一种视觉检测装置,其特征在于,包括:采集模块、确定模块、提取模块和检测模块;

所述采集模块,用于采集石墨舟图像;

所述确定模块,用于在所述石墨舟图像中确定出多个电池片分布网格并在每个所述电池片分布网格内识别电池片;

所述提取模块,用于提取每个所述电池片分布网格对应的边框以及所述边框内的电池片检测区域;

所述检测模块,用于在所述电池片检测区域内确定电池片基准像素点,并计算所述电池片基准像素点与所述边框之间的最大距离;其中,所述电池片基准像素点代表整片电池片在所述电池片检测区域内的位置方位;根据所述最大距离与预设距离阈值的比较结果确定所述电池片分布网格是否存在翘片缺陷;

所述检测模块,具体用于:对所述电池片检测区域进行骨架提取,得到所述电池片的骨架线;获取位于所述骨架线上的每个电池片像素点的列坐标;基于所述列坐标将所述电池片检测区域划分为上检测区域和下检测区域;确定所述电池片与所述上检测区域和所述下检测区域的相对位置关系,并基于所述相对位置关系确定所述电池片基准像素点;

所述检测模块,还具体用于:获取位于所述骨架线上的所述每个电池片像素点的行坐标;当所述电池片位于所述上检测区域,则将最大行坐标对应的所述电池片像素点确定为所述电池片基准像素点;若所述电池片位于所述下检测区域,则将最小行坐标对应的所述电池片像素点确定为所述电池片基准像素。

10.一种计算机设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机程序,所述处理器可执行所述计算机程序以实现权利要求1至8任一项所述的视觉检测方法。

11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至8任一项所述的视觉检测方法。

说明书 :

视觉检测方法、装置、计算机设备及计算机可读存储介质

技术领域

[0001] 本发明涉及视觉检测领域,具体而言,涉及一种视觉检测方法、装置、计算机设备及计算机可读存储介质。

背景技术

[0002] 随着太阳能光伏行业的快速发展,光伏电池片作为利用太阳能发电的主要载体,生产量也在迅速增加。在整个电池片生产过程中,从原材料到成品的制作需要经过制绒、扩散、激光掺杂、刻蚀、退火、镀膜、丝网和分选等多种工序才能完成,其中镀膜工序是最重要的工序之一。在镀膜过程中,电池片会被放置于石墨舟中,然后通过石墨舟上的上下料设备将电池片一一插取并送入镀膜设备进行镀膜。
[0003] 但是,现有的石墨舟设备在插取电池片过程中,很容易由于石墨舟内电池片自身的问题,如翘片,而产生碎片或不良片等问题,从而影响产品质量。为了降低翘片率和提高产品质量,检测石墨舟内电池片是否存在翘片问题,就显得尤为重要。不过,现阶段主流的翘片检测方法准确度较低,因此,如何提供一种视觉检测方法能够提高翘片检测精度,是需要解决的技术问题。

发明内容

[0004] 本发明的目的之一在于提供了一种视觉检测方法、装置、计算机设备及计算机可读存储介质,其能够提高翘片检测精度。本发明可以这样实现:
[0005] 第一方面,本发明提供一种视觉检测方法,所述方法包括:采集石墨舟图像;在所述石墨舟图像中确定出多个电池片分布网格,并在每个所述电池片分布网格内识别所述电池片;提取每个电池片分布网格对应的边框以及所述边框内的电池片检测区域;在所述电池片检测区域内确定电池片基准像素点,并计算所述电池片基准像素点与所述边框之间的最大距离;根据所述最大距离与预设距离阈值的比较结果确定所述电池片分布网格是否存在翘片缺陷。
[0006] 第二方面,本发明提供一种视觉检测装置,包括:采集模块、确定模块、提取模块和检测模块;所述采集模块,用于采集石墨舟图像;所述确定模块,用于在所述石墨舟图像中确定出多个电池片分布网格并在每个所述电池片分布网格内识别所述电池片;所述提取模块,用于提取每个电池片分布网格对应的边框以及所述边框内的电池片检测区域;所述检测模块,用于在所述电池片检测区域内确定电池片基准像素点,并计算所述电池片基准像素点与所述边框之间的最大距离;根据所述最大距离与预设距离阈值的比较结果确定所述电池片分布网格是否存在翘片缺陷。
[0007] 第三方面,本发明提供一种计算机设备,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机程序,所述处理器可执行所述计算机程序以实现如第一方面所述的视觉检测方法。
[0008] 第四方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的视觉检测方法。
[0009] 本发明提供的视觉检测方法、装置、计算机设备及计算机可读存储介质,方法包括:采集石墨舟图像,然后从整体图像中识别出每个分布有电池片的电池片分布网格,这为后续对单个电池片的定位与识别奠定基础。接下来,针对每个电池片分布网格内进行更精细的电池片识别,提取每个电池片分布网格对应的边框以及所述边框内的电池片检测区域,可以精确检测范围,提高检测精度,然后在电池片检测区域内确定电池片基准像素点,并计算电池片基准像素点与边框之间的最大距离;采用电池片基准像素点,可以反应出电池片整体翘曲程度的大小,根据所述最大距离与预设距离阈值的比较结果确定所述电池片分布网格是否存在翘片缺陷。该视觉检测方法是从图像数据角度对整个石墨舟内的电池进行实时无接触检测,既可以避免在检测过程中对电池造成机械破坏,也避免人工检测的低效率问题。

附图说明

[0010] 为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0011] 图1为本发明实施例提供的视觉检测方法的示意性流程图;
[0012] 图2为本发实施例提供的一种示例图;
[0013] 图3为本发明实施例提供的视觉检测装置的功能模块图;
[0014] 图4为本发明实施例提供的计算机设备的结构框图。

具体实施方式

[0015] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
[0016] 因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0017] 应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
[0018] 在本发明的描述中,需要说明的是,若出现术语“上”、“下”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
[0019] 此外,若出现术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
[0020] 需要说明的是,在不冲突的情况下,本发明的实施例中的特征可以相互结合。
[0021] 石墨舟是在电池片镀膜生产过程中,作为储存和输送电池片的一个设备。石墨舟采用舟形结构,可以容纳和储存大量需要镀膜的电池片。它可以实现电池片的自动化上下料,把电池片从石墨舟内取出送入镀膜设备,镀膜完成后再下料入舟。石墨舟内外容易保持减轻及无刷伤的环境,防止电池片在上下料过程中受损。它通常设置在镀膜设备与后续处理设备之间,采用自动化机构实现电池片无缝连接的生产流程传送。
[0022] 目前,由于现有石墨舟设备在取出电池片过程中由于电池片本身原因如片翘、碎片、缺片等可能产生的问题。为了降低碎片率和提高产品质量,本发明实施例提供了一种视觉检测方法,可以自动实时检测石墨舟内电池片质量问题,该视觉检测方法可稳定、准确的对石墨舟内的翘片、缺片、碎片进行非接触式检测,检测精度高,可减少对产品的二次损伤,并且可以有效降低上下料过程中的碎片率,使得镀膜设备的镀膜效率最大化,提高了生产效率。
[0023] 请参见图1,图1为本发明实施例提供的视觉检测方法的示意性流程图,该方法可以包括如下步骤:
[0024] S101:采集石墨舟图像;
[0025] S102:在石墨舟图像中确定出多个电池片分布网格,并在每个电池片分布网格内识别电池片;
[0026] S103:提取每个电池片分布网格对应的边框以及边框内的电池片检测区域;
[0027] S104:在电池片检测区域内确定电池片基准像素点,并计算电池片基准像素点与边框之间的最大距离;
[0028] S105:根据最大距离与预设距离阈值的比较结果确定电池片分布网格是否存在翘片缺陷。
[0029] 在本发明提供的视觉检测方法中,首先采集石墨舟图像,然后从整体图像中识别出每个分布有电池片的电池片分布网格,这为后续对单个电池片的定位与识别奠定基础。接下来,针对每个电池片分布网格内进行更精细的电池片识别,识别出各个电池片后, 提取每个电池片分布网格对应的边框以及边框内的电池片检测区域,可以精确检测范围,提高检测精度,然后在电池片检测区域内确定电池片基准像素点,并计算电池片基准像素点与边框之间的最大距离;采用电池片基准像素点,可以反应出电池片整体翘曲程度的大小,根据最大距离与预设距离阈值的比较结果确定电池片分布网格是否存在翘片缺陷。该视觉检测方法是从图像数据角度对整个石墨舟内的电池进行实时无接触检测,既可以避免在检测过程中对电池造成机械破坏,也避免人工检测的低效率问题。并且,通过计算机视觉技术可以快速精确定位每个电池并提取其特征数据,再根据这些数据判断电池是否存在缺陷等问题。整个过程不仅检测效率大幅提升,检测精度也可以得到很好的保证,对提高石墨舟电池生产线检测水平具有很好的应用前景。
[0030] 下面对上述各个步骤进行详细解释和说明。
[0031] 在步骤S101中、可以通过工业相机拍摄石墨舟图像。为了保证检测结果的准确性,还可以对石墨舟图像进行预处理,如去噪、增强对比度等,获得清晰明了的石墨舟图像。
[0032] 在步骤S102中、为了精准定位电池片,需要先在整个石墨舟图像中确定出设置有电池片的区域。在实际场景中,石墨舟中通常设置有规则排列的多个舟槽,每个舟槽用于放置电池片。因此,石墨舟体成像后的图像特征中,包括每个舟槽对应的图像特征,该图像特征以矩形形状的网格形式呈现在石墨舟图像中。
[0033] 在本发明实施例中,提供了一种确定电池片分布网格的实施方式,可以包括如下步骤:
[0034] 步骤a1:在石墨舟图像中提取石墨舟叶的边界直线;
[0035] 在本发明实施例中,可以先对石墨舟图像进行二值化形态学处理,分别提取石墨舟叶的边界区域。具体地,可以先设置石墨舟叶的灰度分割阈值,根据该灰度对石墨舟图像(记作IM)阈值分割,然后采用形态学处理去除水平垂直方向的干扰,获得石墨舟叶的横向和纵向边界区域二值图I1,再用骨架提取法提取二值图I1区域的骨架,分别得到横向(即图像宽延伸方向)边界区域的骨架线L1,L2和纵向(即图像高延伸方向)边界区域的骨架线L3,L4,然后再利用骨架法对边界区域拟合,得到边界直线。
[0036] 步骤a2:根据边界直线的相交点及石墨舟体的行列数,对石墨舟图像进行划分得到电池片分布网格。
[0037] 可以理解的是,边界线之间必然存在交点,以上述边界直线L1、L2、L3和L4为例,可以计算L1与L3,L1与L4,L2与L3,L2与L4之间的交点P1,P2,P3,P4,即为石墨图像中石墨舟体在图像中的左上角,左下角,右上角,右下角4个位置的交点,最后根据4个交点以及舟体的行列数平均划分成多个电池片分布网格。
[0038] 在可选的实施方式中,上述拟合边界直线的方法可采用但不限于骨架法。
[0039] 在确定出电池片分布网格之后,可以在每个电池片分布网格内识别电池片,具体可以按照如下方式识别电池片:
[0040] 步骤b1:根据预设尺寸信息对电池片分布网格进行腐蚀操作,并根据预设电池片分割阈值对腐蚀操作后的电池片分布网格进行阈值分割;
[0041] 在本发明实施例中,预设尺寸信息包括预设宽度W和预设高度H,用来规定腐蚀操作的区域范围,可以根据电池片分布网格的实际尺寸来定义,比如H、W的取值范围可以是50‑150。可以理解的是,预设尺寸信息要小于电池片分布网格的实际尺寸。
[0042] 电池片分割阈值可以根据实际需求进行定义,腐蚀的目的是为了进一步限制电池检测区域,因为电池片翘片一定导致电池片与边框的距离偏大,通过腐蚀可以缩小检测区域,去掉与边框较近的区域,加快检测速度。
[0043] 步骤b2:若分割出来的待确认对象的特征与电池片的特征匹配,则将待确认对象确定为电池片。
[0044] 可以理解的是,在电池片分布网格中,针对分割出来的待确认对象,可以从面积、形状等特征判断是否为电池片,如果待确认对象的特征和石墨舟内放置的电池片理论上的特征匹配,则可以认为待确认对象为电池片,否则非电池片。在步骤S103中,提取每个电池片分布网格对应的边框以及边框内的电池片检测区域。
[0045] 在本发明实施例中,石墨舟图像中各个电池片分布网格为矩形框,为了能够精准识别电池片,可以先在矩形框内确定一个合适的电池片检测范围,该电池片检测范围指的是用于进一步分析电池片是否存在翘片缺陷的具体区域, 用于对该电池片进行更细致的分析检测,来提高电池片检测效率和精度,避免检测范围过大导致检测效率低的问题。
[0046] 在具体实施过程中,可以但不限于通过blob分析技术确定边框和电池片检测区域,具体地,可以先设置边框分割阈值和电池片检测区域分割阈值,根据预先设置的边框分割阈值对电池片分布网格进行阈值分割,得到疑似边框,同理,根据电池片检测区域分割阈值得到疑似电池片检测区域,进一步,对疑似边框和疑似电池片检测区域进行面积特征选择,提取出准确电池片检测区域和边框,分别记作Region1和Region2。
[0047] 在步骤S104中、在电池片检测区域内确定电池片基准像素点,并计算电池片基准像素点与边框之间的最大距离。
[0048] 在本发明实施例中,采用电池片基准像素到边框的最大距离,可以避免电池片局部微小变形的影响,仅聚焦于严重影响电池片质量的大范围翘片,有利于判断标准的设置。
[0049] 为了方便描述步骤S104,在本发明实施例中,以石墨舟图像左上角为原点建立图像像素坐标系,u轴沿图像水平向右延伸,v轴沿图像垂直向下延伸。其中,行坐标表示图像中给定像素点的垂直位置,用v表示。行坐标从上到下编号,第一个像素点的行坐标为0,第二行为1,依此类推。列坐标表示图像中给定像素点的水平位置,用u表示,列坐标从左到右编号,第一个像素点的列坐标为0,第二列为1,依此类推。
[0050] 首先详细介绍确定电池片基准像素点的实施方式。如下:
[0051] 步骤c1:对电池片检测区域进行骨架提取,得到电池片的骨架线;
[0052] 骨架提取算法是一种图像预处理技术。它可以从原始图像中提取物体的主要结构或形状轮廓,去除非结构性细节,留下物体的骨骼形状。在本发明实施例中,对电池片检测区域进行骨架提取可以帮助准确提取出电池片的外沿形状。有效排除图像中的细小杂质和噪点,精简电池片检测区域中的信息量,基于提取出的电池片边缘骨架形状,可以进行后续的翘片检测分析。
[0053] 步骤c2:获取位于骨架线上的每个电池片像素点的列坐标;
[0054] 步骤c3:基于列坐标将电池片检测区域划分为上检测区域和下检测区域;在本发明实施例中,考虑到实际场景中电池片通常会放置在舟槽相对的两侧,在石墨舟图像中,该两侧即为电池片分布网格的靠近上下边框,这意味着,在电池片检测区域内,该远离上下边框之间的中间图像区域一定没有电池片,因此,可以在该中间图像区域内电池片检测区域进行划分。
[0055] 基于上述考虑,本发明实施例采取了通过像素点列坐标确定划分位置的方案,具体为:获取位于骨架线上的每个电池片像素点的列坐标,根据全部列坐标可以确定出电池片所在坐标范围,如上述内容所示,如果电池片靠近上下边框,那么必然确定出两个电池片所在区域,并且这两个电池片所在区域不相连,因此,可以在这电池片所在区域之间任意一个位置处,对电池片检测区域进行水平切分,得到上检测区域和下检测区域。
[0056] 需要说明的是,如果存在靠近边框左右两边框放置电池片的场景,也可以根据行坐标将电池片检测区域分割为左右两个子区域。
[0057] 步骤b4:确定电池片与上检测区域和下检测区域的相对位置关系,并基于相对位置关系确定电池片基准像素点。
[0058] 在本发明实施例中,可以先获取位于骨架线上的每个电池片像素点的行坐标v;当电池片位于上检测区域,则将最大行坐标vmax对应的电池片像素点确定为电池片基准像素点;若电池片位于下检测区域,则将最小行坐标vmin对应的电池片像素点确定为电池片基准像素点。
[0059] 可以理解的是,通过获取骨架线上的每个电池片像素点的行坐标,可以准确找到电池片在该区域内的最大或最小行坐标点。将最大或最小行坐标点作为电池片的基准像素点进行定位标识,这个基准点可以代表整片电池片在此区域内的位置方位。基准像素点可以作为后续电池属性检测如边缘翘起程度检测等的参考坐标点,利用最大或最小行坐标将电池片检测定位在上或下两个区域内,可以进一步缩小任务范围,提高检测效率。
[0060] 接下来详细介绍计算电池片基准像素点与边框之间的最大距离的实施方式,如下:
[0061] 步骤d1:根据预设的宽度和高度,以电池片基准像素点为左角点或右角点生成一个矩形测量区域;
[0062] 在本发明实施例中,宽度和高度可以根据实际情况自定义,比如,宽度可以在3像素至10像素之间取值,高度可以根据电池片检测区域的高度来设置,比如,分析石墨舟图像上下检测区域的高度,基于现有的成像特征,矩形测量区域高设置30,可以覆盖到边框区域。
[0063] 由于后续要从矩形测量区域中分割出目标边框区域来计算基准像素点与边框之间的最大距离,所以矩形测量区域宽高的设置要求需要使所得的矩形测量区域需要覆盖步骤S103中提取的边框,否则无法实现后续通过阈值分割确定基准边框线的目的。
[0064] 在可选的实施方式中,矩形测量区域可以部分覆盖或者全覆盖边框,实际实施过程中可以由电池片距离边框的距离来决定的,若距离很近,可以生成一个全覆盖边框的矩形测量区域,若距离较远,则可以生成一个部分覆盖边框的矩形测量区域。
[0065] 在本发明实施例中,生成矩形测量区域的方式可以是:
[0066] 若电池片位于上检测区域,则将电池片基准像素点作为左下角点或右下角点,生成矩形测量区域;若电池片位于下检测区域,则将电池片基准像素点作为左上角点或右上角点,生成矩形测量区域。
[0067] 也就是说,上检测区域可以将电池片基准像素点作为左下角或右下角,下检测区域可以将电池片基准像素点作为左上角或右上角,目的是为了以电池片基准像素点的行坐标为标准,在上检测区域中以电池片基准像素点的行坐标向上创建测量矩形区域,在下检测区域中以电池片基准像素点的行坐标向下创建测量矩形区域。
[0068] 步骤d2:在矩形测量区域中根据预设区域分割阈值进行阈值分割,得到目标边框区域;
[0069] 其中,预设区域分割区域可以根据实际需要进行定义,此处不作限定。
[0070] 步骤d3:将目标边框区域靠近电池片一侧的边框线作为基准边框线,计算基准边框线与电池片基准像素点之间的距离,为最大距离。
[0071] 针对基准边框线,本发明实施例是通过如下方式确定的:
[0072] 步骤e1:获取目标边框区域的最小外接矩形;
[0073] 步骤e2:若电池片位于上检测区域,则将最小外接矩形的右下角点所在的水平矩形边确定为基准边框线;
[0074] 步骤e3:若电池片位于下检测区域,则将最小外接矩形的左上角点所在的水平矩形边确定为基准边框线。
[0075] 可以理解的是,若电池片在上检测区域,则将最小外接矩形的右下角对应的水平边作为基准边框线,这条边代表电池片在图像中的下边界,若电池片在下检测区域,则将最小外接矩形的左上角对应的水平边作为基准边框线,代表电池片的上边界。基准边框线可以作为后续检测任务如边缘状态检测的参考,有利于定位检测区域。同时这个方法不受电池片形状影响,通过外接矩形可以通用于不同形状电池的定位。上下两个区域设置好基准边后,可以划分出电池片检测的具体区域范围,为后续检测任务提供了依据。
[0076] 通过上述步骤S104确定了计算电池片基准像素点与边框之间的最大距离之后,则可以判断电池片是否存在翘片缺陷,请参见步骤S105。
[0077] 在步骤S105中,根据最大距离与预设距离阈值的比较结果确定电池片分布网格是否存在翘片缺陷。假设最大距离为Dmax,预设距离阈值为D,如果Dmax>D,则这个电池片所在的电池片分布网格内有翘片,否则该电池片分布网格内无翘片。其中,D的取值范围根据实际生产线上翘片的距离标准来定。
[0078] 为了方便理解上述视觉检测方法,请参见图2,图2为本发明实施例提供的一种示例图。在上检测区域内,Pu(u1,v1)为电池片基准像素点的坐标,u1、v1为该点的列坐标和行坐标;Qu(u2,v2)是目标边框区域右下角的像素点,u2、v2为该点的列坐标和行坐标;Dmax为电池片基准像素点到边框区域(内边框线)的最大距离,即Pu(u1,v1)到Qu(u2,v2)的之间的垂直距离Dmax= Pu(v2)‑ Qu(v1)。在下检测区域内,Pd(u1,v1)为下检测区域电池片基准像素点的像素坐标,Qd(u2,y2)是目标边框区域左上角的像素点的坐标,则电池片到边框区域(内边框线)的最大距离Dmax= Pd(v2)‑ Qd(v1)。
[0079] 在可选的实施方式中,本发明实施例还可以对电池片进行缺陷缺片检测,在进行缺片检测的过程中,为了避免背景干扰带来的影响,使用传统图像与深度学习相结合的检测方法。
[0080] 因此,本发明实施例提供的缺片检测方式可以是:对上检测区域和所述下检测区域进行边缘检测,确定是否存在所述电池片的边缘;若不存在,则确定电池片分布网格存在缺片缺陷;若存在,则将电池片分布网格所在区域的图像输入与预训练的缺片分类模型中进行检测,以确定电池片分布网格是否存在缺片缺陷。
[0081] 在本发明实施例中,依然要先把电池片检测区域分为上检测区域和下检测区域,分别对这些上检测区域和下检测区域的图像做边缘检测,然后对边缘进行处理,提取电池片的边缘,若没有提取到电池片边缘,则缺片,若提取到电池片边缘,则继续用AI缺片模型进行复判,得到最终检测结果。
[0082] 在本发明实施例中,针对缺片分类模型,可以先对大量具有缺片和有片图像整理分类,制作训练集,然后将训练集输入到深度学习网络进行训练,得到缺片分类模型。最后在检测过程中,利用训练好的缺片分类模型进行推理,输出检测类别。
[0083] 在可选的实施方式中,缺片分类模型可采用但不限于resnet50模型,边缘检测方法可采用但不限于canny边缘检测。
[0084] 在可选的实施方式中,还可以对每个电池片分布网格进行碎片检测。具体地,可以先设置碎片面积阈值Area=100,内接圆半径阈值Radus=3,宽W=10,高H=10。针对每个电池片分布网格,对其检测区域进行大津法OTSU自适应阈值分割,得到疑似碎片区域RegionSups,再分别计算每个疑似区域的面积、内接圆半径、宽、高等特征参数,将这些特征参数与预先设置的标准条件进行比较,若不满足标准条件,则该疑似区域为碎片。
[0085] 在实际实施过程中,可以依次遍历完成始终石墨舟图像中所有电池片分布网格,针对有翘片、缺片、碎片缺陷的电池片分布网格进行标记,最终输出缺陷图像,以便相关人员进行查看和校验。
[0086] 基于相同的发明构思,本发明实施例还提供了一种视觉检测装置,请参见图3,图3为本发明实施例提供的视觉检测装置的功能模块图,该视觉检测装置200可以包括采集模块210、确定模块220、提取模块230和检测模块240;
[0087] 采集模块210,用于采集石墨舟图像;
[0088] 确定模块220,用于在石墨舟图像中确定出多个电池片分布网格,并在每个电池片分布网格内识别电池片;
[0089] 提取模块230,用于提取每个电池片分布网格对应的边框以及边框内的电池片检测区域;
[0090] 检测模块240,用于在电池片检测区域内确定电池片基准像素点,并计算电池片基准像素点与边框之间的最大距离;根据最大距离与预设距离阈值的比较结果确定电池片分布网格是否存在翘片缺陷。
[0091] 可以理解的是,采集模块210、确定模块220、提取模块230和检测模块240可以协同的执行图1中的各个步骤以实现相应的技术效果。
[0092] 在可选的实施方式中,确定模块220,具体用于:对电池片检测区域进行骨架提取,得到电池片的骨架线;获取位于骨架线上的每个电池片像素点的列坐标;基于列坐标将电池片检测区域划分为上检测区域和下检测区域;确定电池片与上检测区域和下检测区域的相对位置关系,并基于相对位置关系确定电池片基准像素点。
[0093] 在可选的实施方式中,确定模块220,还具体用于:获取位于骨架线上的每个电池片像素点的行坐标;当电池片位于上检测区域,则将最大行坐标对应的电池片像素点确定为电池片基准像素点;若电池片位于下检测区域,则将最小行坐标对应的电池片像素点确定为电池片基准像素点。
[0094] 在可选的实施方式中,检测模块240还具体用于根据预设的宽度和高度,以电池片基准像素点为左角点或右角点生成一个矩形测量区域;在矩形测量区域中根据预设区域分割阈值进行阈值分割,得到目标边框区域;将目标边框区域靠近电池片一侧的边框线作为基准边框线,计算基准边框线与电池片基准像素点之间的距离,为最大距离。
[0095] 在可选的实施方式中,检测模块240还具体用于获取目标边框区域的最小外接矩形;若电池片位于上检测区域,则将最小外接矩形的右下角点所在的水平矩形边确定为基准边框线;若电池片位于下检测区域,则将最小外接矩形的左上角点所在的水平矩形边确定为基准边框线。
[0096] 在可选的实施方式中,检测模块240还具体用于若电池片位于上检测区域,则将电池片基准像素点作为左下角点或右下角点,生成矩形测量区域;若电池片位于下检测区域,则将电池片基准像素点作为左上角点或右上角点,生成矩形测量区域。
[0097] 在可选的实施方式中,确定模块220,还具体用于在石墨舟图像中提取石墨舟叶的边界直线;根据边界直线的相交点及石墨舟体的行列数,对石墨舟图像进行划分得到多个电池片分布网格。
[0098] 在可选的实施方式中,确定模块220,还具体用于对石墨舟图像进行二值化形态学处理,得到石墨舟叶的边界区域二值图;根据边界区域二值图进行直线拟合,得到边界直线。
[0099] 在可选的实施方式中,确定模块220,还具体用于根据预设尺寸信息对电池片检测区域进行腐蚀操作,并根据预设电池片分割阈值对腐蚀操作后的电池片检测区域进行阈值分割;
[0100] 若分割出来的待确认对象的特征与电池片的特征匹配,则将待确认对象确定为电池片。
[0101] 在可选的实施方式中,检测模块240,还具体用于:对上检测区域和下检测区域进行边缘检测,确定是否存在电池片的边缘,确定是否存在电池片的边缘;若不存在,则确定电池片分布网格存在缺片缺陷;否则,将电池片分布网格所在区域的图像输入预训练的缺片分类模型中进行检测,以确定电池片分布网格是否存在缺片缺陷。
[0102] 需要说明的是,本申请以上实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0103] 集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read‑OnlyMemory,ROM)、随机存取存储器(RandomAccessMemory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
[0104] 基于上述实施例,本申请实施例还提供了一种计算机设备,请参见图4,图4为本发明实施例提供的计算机设备的结构框图,该计算机设备用于执行本发明实施例提供的视觉检测方法,该计算机设备300包括:存储器301、处理器302、通信接口303、和总线304,该存储器301、处理器302和通信接口303相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。
[0105] 可选的,总线304可以是外设部件互连标准(peripheralcomponentinterconnect,PCI)总线或扩展工业标准结构(extendedindustrystandardarchitecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0106] 在本申请实施例中,处理器302可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储器301中,处理器302读取存储器301中的程序指令,结合其硬件完成上述方法的步骤。
[0107] 在本申请实施例中,存储器301可以是非易失性存储器,比如硬盘(harddiskdrive,HDD)或固态硬盘(solid‑statedrive,SSD)等,还可以是易失性存储器(volatilememory),例如RAM。存储器还可以是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本申请实施例中的存储器还可以是电路或者其它任意能够实现存储功能的装置,用于存储指令和/或数据。
[0108] 存储器301可用于存储软件程序及模块,如本发明实施例提供的视觉检测装置200的指令/模块,可以软件或固件(firmware)的形式存储于存储器301中或固化在计算机设备300的操作系统(operatingsystem,OS)中,处理器302通过执行存储在存储器301内的软件程序及模块,从而执行各种功能应用以及数据处理。该通信接口303可用于与其他节点设备进行信令或数据的通信。
[0109] 所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0110] 可以理解,图4所示的结构仅为示意,该计算机设备300还可以包括比图4中所示更多或者更少的组件,或者具有与图4所示不同的配置。图4所示的各组件可以采用硬件、软件或其组合实现。
[0111] 该计算机设备300可以是任何一种可与用户进行人机交互的电子产品,例如,个人计算机、平板电脑、个人数字助理(PersonalDigitalAssistant,PDA)等。
[0112] 该计算机设备300还可以包括网络设备和/或用户设备。其中,网络设备包括,但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(CloudComputing)的由大量主机或网络服务器构成的云。
[0113] 该计算机设备300所处的网络包括但不限于互联网、广域网、城域网、局域网、虚拟专用网络(VirtualPrivateNetwork,VPN)等。
[0114] 基于以上实施例,本申请还提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序被计算机执行时,使得计算机执行以上实施例提供的视觉检测方法。
[0115] 基于以上实施例,本申请实施例还提供了一种计算机程序,当计算机程序在计算机上运行时,使得计算机执行以上实施例提供的视觉检测方法。
[0116] 基于以上实施例,本申请实施例还提供了一种芯片,芯片用于读取存储器中存储的计算机程序,用于执行以上实施例提供的视觉检测方法。
[0117] 本申请实施例中还提供一种计算机程序产品,包括指令,当其在计算机上运行时,使得计算机执行以上实施例提供的体视觉检测方法。
[0118] 本申请实施例是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0119] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0120] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0121] 以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。