禽蛋检测、图像处理方法,装置、电子设备及存储介质
技术领域
本申请涉及人工智能领域,尤其涉及一种禽蛋检测、图像处理方法,装置、电子设备及存储介质。
背景技术
对禽蛋电池孵化过程进行检测时,检测禽蛋孵化情况主要仍由人工完成,由于禽蛋孵化早期发育特征不太明显,人工检测受主观因素的影响,准确性较低,而且费工费时。现有的异常禽蛋胚胎检测方案不仅成本高,而且存在可靠率低,实时性差等问题。本发明基于计算机视觉技术,实现了一种异常鸡蛋胚胎检测算法,可快速准确地检测出异常禽蛋。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本申请提供了一种禽蛋检测、图像处理方法,装置、电子设备及存储介质。
第一方面,本申请实施例提供了一种禽蛋检测方法,该禽蛋检测方法包括:
获取待检测图像,所述待检测图像中包括至少一个被打光的禽蛋;
将所述待检测图像输入预先训练的禽蛋特征检测模型中,得到所述待检测图像中每一个禽蛋的检测信息;
根据所述检测信息确定所述禽蛋的检测结果,所述检测结果至少包括正常胚胎禽蛋和/或异常胚胎禽蛋。
在一个可能的实施方式中,所述检测信息包括:第一禽蛋类型以及类型置信度;
所述根据所述检测信息确定所述禽蛋的检测结果,包括:
当所述类型置信度满足预设条件,根据所述第一禽蛋类型确定所述检测结果。
在一个可能的实施方式中,所述检测信息包括:第一禽蛋类型以及类型置信度;
所述方法还包括:
将所述待检测图像输入所述禽蛋特征检测模型中,还得到所述禽蛋对应的目标区域;
确定所述目标区域对应的第二禽蛋类型;
所述根据所述检测信息确定所述禽蛋的检测结果,包括:
当所述类型置信度满足预设条件,且所述第一禽蛋类型和第二禽蛋类型一致时,根据所述第一禽蛋类型或第二禽蛋类型确定所述禽蛋的检测结果。
在一个可能的实施方式中,所述检测信息还包括:所述禽蛋的包围区域坐标;
根据所述包围区域坐标以及所述检测结果生成分拣指令,所述分拣指令用于控制分拣设备对所述包围区域坐标对应的禽蛋执行所述检测结果对应的分拣操作;
将所述分拣指令发送至所述分拣设备。
在一个可能的实施方式中,所述方法还包括:
获取禽蛋样本图像,所述禽蛋样本图像中包括至少一个被打光的禽蛋;
获取所述禽蛋样本图像中的标注信息,所述标注信息包括所述禽蛋样本图像中各个禽蛋对应的禽蛋标注信息,所述禽蛋标注信息包括:包围区域坐标,目标区域坐标和禽蛋类型;
基于预设实例分割模型对所述禽蛋样本图像以及所述禽蛋标注信息进行训练,通过所述包围区域坐标及目标区域坐标确定目标区域在禽蛋中的位置,基于所述位置区分所述禽蛋类型,得到禽蛋特征检测模型。
第二方面,本申请实施例提供一种图像处理方法,该图像处理方法包括:
获取禽蛋样本图像,所述禽蛋样本图像中包括至少一个被打光的禽蛋;
获取所述禽蛋样本图像中的标注信息,所述标注信息包括所述禽蛋样本图像中各个禽蛋对应的禽蛋标注信息,所述禽蛋标注信息包括:第一包围区域坐标,第一目标区域坐标和第一禽蛋类型;
基于预设实例分割模型对所述禽蛋样本图像以及所述禽蛋标注信息进行训练,通过所述第一包围区域坐标及第一目标区域坐标确定第一目标区域在禽蛋中的位置,基于所述位置区分所述第一禽蛋类型,得到禽蛋特征检测模型。
在一个可能的实施方式中,所述基于预设实例分割模型对所述禽蛋样本图像以及所述禽蛋标注信息进行训练,包括:
将所述禽蛋样本图像输入所述预设实例分割模型中的特征提取模型,得到待检测特征图像;
将所述待检测特征图像输入所述预设实例分割模型中的检测模型,得到检测信息,所述检测信息包括:第二包围区域坐标,第二禽蛋类型,类型置信度以及掩模系数;
通过所述第二包围区域坐标和所述第一包围区域坐标计算回归损失;
通过所述类型置信度计算分类损失;
基于所述回归损失和所述分类损失计算第一对抗损失;
根据所述第一对抗损失对所述检测模型进行优化,得到目标检测模型。
在一个可能的实施方式中,所述方法还包括:
将所述待检测特征图像输入所述预设实例分割模型中的分割模型,得到原型掩模;
根据所述原型掩模和所述掩模系数得到掩模图像;
基于所述掩模图像确定第二目标区域,并根据所述第二目标区域与所述第一目标区域计算第二对抗损失;
根据所述第二对抗损失对所述分割模型进行优化,得到目标分割模型。
在一个可能的实施方式中,所述方法还包括:
基于所述第一对抗损失和所述第二对抗损失计算最终损失;
根据所述最终损失对所述目标检测模型和目标分割模型进行优化,得到所述禽蛋特征检测模型。
第三方面,本申请实施例提供了一种禽蛋检测装置,该禽蛋检测装置包括:
获取模块,用于获取待检测图像,所述待检测图像中包括至少一个被打光的禽蛋;
输入模块,用于将所述待检测图像输入预先训练的禽蛋特征检测模型中,得到所述待检测图像中每一个禽蛋的检测信息以及所述禽蛋对应的目标区域;
确定模块,用于根据所述检测信息及目标区域确定所述禽蛋的检测结果,所述检测结果至少包括正常胚胎禽蛋和/或异常胚胎禽蛋。
第四方面,本申请实施例提供了一种图像处理装置,该图像处理装置包括:
第一获取模块,用于获取禽蛋样本图像,所述禽蛋样本图像中包括至少一个被打光的禽蛋;
第二获取模块,用于获取所述禽蛋样本图像中的标注信息,所述标注信息包括所述禽蛋样本图像中各个禽蛋对应的禽蛋标注信息,所述禽蛋标注信息包括:第一包围区域坐标,第一目标区域坐标和第一禽蛋类型;
训练模块,用于基于预设实例分割模型对所述禽蛋样本图像以及所述禽蛋标注信息进行训练,通过所述第一包围区域坐标及第一目标区域坐标确定第一目标区域在禽蛋中的位置,基于所述位置区分所述第一禽蛋类型,得到禽蛋特征检测模型。
第五方面,本申请实施例提供了一种禽蛋检测系统,该禽蛋检测系统包括:拍摄装置、检测装置和分拣装置;
所述拍摄装置,用于对被打光的禽蛋进行拍摄,得到禽蛋图像;
所述检测装置,用于根据所述禽蛋图像得到待检测图像,将所述待检测图像输入预先训练的禽蛋特征检测模型中,得到所述待检测图像中每一个禽蛋的检测信息以及所述禽蛋对应的目标区域,根据所述检测信息及目标区域确定所述禽蛋的检测结果,所述检测信息包括:包围区域坐标以及禽蛋类型;
根据所述包围区域坐标以及所述检测结果生成分拣指令,所述分拣指令用于控制分拣装置对所述包围区域坐标对应的禽蛋执行所述检测结果对应的分拣操作;将所述分拣指令发送至所述分拣装置;
所述分拣装置,用于根据分拣指令执行相应的分拣操作。
第六方面,本申请提供了一种电子设备,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行计算机程序时,实现上述方法步骤。
第七方面,本申请提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方法步骤。
本申请实施例提供的上述技术方案与现有技术相比具有如下优点:通过禽蛋特征检测模型对禽蛋胚胎进行检测,可以根据禽蛋的特征快速确定禽蛋类型,相比人工检测更有效的节省时间和降低了劳动力成本,同时相比人工检测具有更高的准确率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种禽蛋检测方法的流程图;
图2为本申请另一实施例提供的一种图像处理方法的流程图;
图3为本申请实施例提供的活胚胎禽蛋示意图;
图4为本申请实施例提供的死胚胎禽蛋示意图;
图5为本申请实施例提供的无精禽蛋示意图;
图6为本申请实施例提供的添加标注信息后的活胚胎禽蛋示意图;
图7为本申请实施例提供的添加标注信息后的死胚胎禽蛋示意图;
图8为本申请实施例提供的添加标注信息后的无精禽蛋示意图;
图9为本申请一实施例提供的一种禽蛋检测装置的框图;
图10为本申请一实施例提供的一种图像处理装置的框图;
图11为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供了一种禽蛋检测、图像处理方法,装置、电子设备及存储介质。下面首先对本发明实施例所提供的一种禽蛋检测方法进行介绍。本发明实施例所提供的方法可以应用于任意需要的电子设备,例如,可以为服务器、终端等电子设备,在此不做具体限定,为描述方便,后续简称为电子设备。
图1为本申请实施例提供的一种禽蛋检测方法的流程图。如图1所示,该方法包括以下步骤:
步骤S11,获取待检测图像,待检测图像中包括至少一个被打光的禽蛋;
步骤S12,将待检测图像输入预先训练的禽蛋特征检测模型中,得到待检测图像中每一个禽蛋的检测信息;
步骤S13,根据检测信息确定禽蛋的检测结果,检测结果至少包括正常胚胎禽蛋和/或异常胚胎禽蛋。
本实施例中,通过白光灯对禽蛋进行打光,对打光后的禽蛋进行拍摄得到禽蛋图像,之后对禽蛋图像进行格式处理获得待检测图像,之后将待检测图像输入训练好的禽蛋特征检测模型中,得到待检测图像中每一个禽蛋的检测信息,其中,检测信息包括:输出的禽蛋类型以及类型置信度,本实施例中禽蛋特征检测模型输出的禽蛋类型包括:活胚胎禽蛋,死胚胎禽蛋以及无精禽蛋。
因为类型置信度是通过禽蛋特征检测模型输出的禽蛋类型与真实的禽蛋类型计算得到,所以当类型置信度满足预设条件时,通过输出的禽蛋类型确定检测结果,检测结果为正常胚胎禽蛋和/或异常胚胎禽蛋,其中正常胚胎禽蛋为活胚胎禽蛋,异常胚胎禽蛋为死胚胎禽蛋或无精禽蛋。本实施例中,类型置信度满足预设条件可以是类型置信度大于或等于预设阈值,预设阈值可以是工作人员根据实际处理情况而设定的。
本实施例中,当输出的类型置信度满足预设条件时,根据第一禽蛋类型生成分拣指令,分拣指令用于控制分拣设备对包围区域坐标对应的禽蛋执行检测结果对应的分拣操作,将分拣指令发送至分拣设备。
比如:当禽蛋特征检测模型输出的类型置信度为0.95,预设阈值为0.95,类型置信度大于或等于预设阈值的时,则确定类型置信度满足预设条件,并根据禽蛋检测模型输出的第一禽蛋类型生成分拣指令。通过上述方式可以实现对禽蛋更加精确的分拣,对于类型置信度大于预设阈值的禽蛋,可以将其放置到对应的区域,执行相应操作。例如,对于类型置信度达到预设阈值的活胚胎蛋盘可直接放入孵化箱。对于类型置信度达到预设阈值的死胚胎禽蛋或者无精禽蛋将其分拣至对应的蛋盘中。
在另一个优选实施例中,将待检测图像输入训练好的禽蛋特征检测模型中,除得到待检测图像中每一个禽蛋的检测信息外,还得到每个禽蛋对应的目标区域,之后确定目标区域对应的第二禽蛋类型。
本实施例中为了提高对禽蛋检测的准确率,结合检测信息和目标区域共同进行判断,具体的,当类型置信度满足预设条件,且第一禽蛋类型和第二禽蛋类型一致时,根据第一禽蛋类型或第二禽蛋类型确定禽蛋的检测结果。
由于不同类型的禽蛋其目标区域分布不同,比如:活胚胎禽蛋的目标区域为下半部分暗沉区域,死胚胎禽蛋的目标区域为血纹部分,无精禽蛋的目标区域为整个禽蛋区域。所以本实施例通过检测信息和目标区域来确定禽蛋的检测结果,通过此方式可以提高禽蛋检测的精准度,防止出现误检。
比如:检测信息中的禽蛋类型为死胚胎禽蛋且类别置信度大于预设阈值,同时对得到的目标区域对应第二禽蛋类型进行判断,当目标区域对应的第二禽蛋类型为死胚胎禽蛋时,则最终确定检测结果为死胚胎禽蛋。
或者,检测信息中的禽蛋类型为无精禽蛋且类别置信度大于预设阈值,同时对得到的目标区域对应第二禽蛋类型进行判断,当目标区域对应的第二禽蛋类型为无精禽蛋时,则最终确定检测结果为死胚胎禽蛋无精禽蛋。
本实施例中检测信息还包括:禽蛋的包围区域坐标,包围区域坐标即为禽蛋的外接矩形框坐标,可以根据包围区域坐标确定禽蛋的位置,所以后续可以根据包围区域坐标以及检测结果生成分拣指令,分拣指令用于控制分拣设备对包围区域坐标对应的禽蛋执行检测结果对应的分拣操作,将分拣指令发送至分拣设备。
本实施例中还包括:当类型置信度满足预设条件,且第一禽蛋类型和第二禽蛋类型不一致时,可以根据包围区域坐标和检测结果生成分拣指令,将分拣指令发送至分拣设备,分拣设备将该禽蛋放置相应的位置重新打光后,对该禽蛋再次进行检测。
上述实施例中的禽蛋特征检测模型通过以下方式训练得到:
获取禽蛋样本图像,禽蛋样本图像中包括至少一个被打光的禽蛋,获取禽蛋样本图像中的标注信息,标注信息包括所述禽蛋样本图像中各个禽蛋对应的禽蛋标注信息,禽蛋标注信息包括:包围区域坐标,目标区域坐标和禽蛋类型。
基于预设实例分割模型对禽蛋样本图像以及禽蛋标注信息进行训练,因为不同的禽蛋类型对应的目标区域不同,所以通过包围区域坐标及目标区域坐标确定目标区域在禽蛋中的位置,通过位置区分禽蛋类型,从而得到禽蛋特征检测模型。
图2为本申请另一实施例提供的一种图像处理方法的流程图。如图2所示,该方法还包括以下步骤:
步骤S21,获取禽蛋样本图像,禽蛋样本图像中包括至少一个被打光的禽蛋;
步骤S22,获取禽蛋样本图像中的标注信息,标注信息包括所述禽蛋样本图像中各个禽蛋对应的禽蛋标注信息,禽蛋标注信息包括:第一包围区域坐标,第一目标区域坐标和第一禽蛋类型;
步骤S23,基于预设实例分割模型对禽蛋样本图像以及禽蛋标注信息进行训练,通过第一包围区域坐标及第一目标区域坐标确定第一目标区域在禽蛋中的位置,基于位置区分第一禽蛋类型,得到禽蛋特征检测模型。
本实施例中,首先采用白光灯对禽蛋打光,采集打光后的图像,并对打光后的图像进行格式处理,如图3-图5所示,分别展示了采集到的活胚胎禽蛋、死胚蛋禽蛋以及无精蛋禽蛋的图像。由于活胚胎禽蛋、死胚蛋禽蛋以及无精蛋禽蛋在灯光照射下蛋液呈现出不同的纹络特征,因此本实施例根据禽蛋胚胎状态对图像中禽蛋的不同区域添加标注信息。
标注规则如下:活胚胎禽蛋标注的目标区域为下半部分暗沉区域,死胚胎禽蛋标注的目标区域为血纹部分,无精禽蛋标注的目标区域为整个禽蛋区域。而在一般的实例分割任务当中,仅仅标注出各个目标区域的轮廓及其所属类别,其包围区域坐标可以通过获取对应轮廓的外接矩形来得到。但在本实施例中,由于不同类型的禽蛋其目标区域分布不同,如死胚胎禽蛋的目标区域被设置为血纹部分,故根据其目标区域无法还原出整个禽蛋的包围区域坐标,因此需要单独对图像中各个禽蛋的包围区域坐标进行标注。
可参考图6-图8,图6-图8为三种禽蛋类型添加标注信息后的图像,其中,图6为添加标注信息后的活胚胎禽蛋示意图,图7为添加标注信息后的死胚胎禽蛋示意图,图8为添加标注信息后的无精禽蛋示意图。
之后获取禽蛋样本图像中的标注信息,标注信息包括禽蛋样本图像中各个禽蛋对应的禽蛋标注信息,禽蛋标注信息包括:第一包围区域坐标,第一目标区域坐标和第一禽蛋类型,本实施例中,第一禽蛋类型包括:活胚胎禽蛋,死胚胎禽蛋和无精禽蛋。
本实施例中所采用的实例分割模型为YOLACT,YOLACT具有检测速度快、mask质量高、泛化性强等优点。除了特征提取模型,YOLACT还包括两个并行的分支:分割模型和检测模型。
本实施例中采用预设实例分割模型对禽蛋样本图像以及禽蛋标注信息进行训练,具体的训练方式为:将禽蛋样本图像输入所述预设实例分割模型中的特征提取模型,得到一系列的待检测特征图像,并为每一个待检测特征图像中的像素点分配锚点框,比例分别为1:1,1:2,2:1,之后选择锚点框大小为24,48,96,192,384的五个待检测特征图像进行后续检测。
将待检测特征图像输入预设实例分割模型中的检测模型,得到检测信息,检测信息包括:第二包围区域坐标,第二禽蛋类型,类型置信度以及掩模系数。之后根据检测信息和禽蛋标注信息对检测模型进行训练,具体的:通过第二包围区域坐标和第一包围区域坐标计算回归损失;计算方式如下:
式中:x表示第一包围区域坐标与第二包围区域坐标的偏差,Lbox为回归损失。
之后根据得到的类型置信度和真实类型的置信度计算分类损失,本实施例中具体通过softmax交叉熵对分类损失进行计算,计算方式如下。
式中,pu表示真实类别为u的置信度,qu表示是输出的类别为u的类型置信度,Lcls为分类损失。
通过回归损失和分类损失相加得到第一对抗损失,根据第一对抗损失对检测模型进行优化,具体优化方式可以根据通过梯度递减的方式调整检测模型中的参数,从而得到目标检测模型。
得到目标检测模型后,将待检测特征图像输入预设实例分割模型中的分割模型,得到原型掩模记为P,其尺寸为h*w*k,k为预设的原型掩模数量,本实施例中k设置为256,设C为检测模型输出的掩模系数,其尺寸为n*k,由于根据待检测特征图像得到的检测结果中包含了大量重叠目标,所以需要借助极大值抑制(NMS)算法进行过滤,去除掉冗余目标,此处n表示通过NMS极大值抑制和得分阈值化操作以后剩余的目标原型掩模数量,之后根据原型掩模和掩模系数得到掩模图像,具体的计算方式如下:
M=σ(PCT)
其中M为得到的掩模图像,σ为S型函数,P为原型掩模,C为掩模系数,T为常数,σ的计算公式如下:
式中,e为自然对数,a为自然变量。
在得到掩模图像后,根据掩模图像确定第二目标区域,并根据第二目标区域与第一目标区域计算第二对抗损失,第二对抗损失为分割模型的损失,本实施例中采用二分类交叉熵计算第二对抗损失,具体计算方式如下:
其中,Lmask为第二对抗损失,mi表示第二目标区域中第i个像素点的实际输出值,li表示第二目标区域中第i个像素点的期望输出值,n表示通过NMS极大值抑制和得分阈值化操作以后剩余的目标原型掩模数量。
根据第二对抗损失对分割模型进行优化,具体优化方式可以根据通过梯度递减的方式调整检测模型中的参数,得到目标分割模型。
本实施例中,还可以通过第一对抗损失和第二对抗损失计算最终损失,计算方式如下:
Ltotal=Lbox+Lcls+Lmask
其中,Ltotal为最终损失,Lbox为回归损失,Lcls为分类损失,Lmask为第二对抗损失。
之后根据最终损失对所述目标检测模型和目标分割模型再次进行优化,最终得到所述禽蛋特征检测模型。本实施例中的具体优化过程:使用SGD优化器进行训练,初始学习率设置为0.001,并且每迭代20万次除以10,权重衰减设为0.0005,动量大小设为0.9。
图9为本申请实施例提供的一种禽蛋检测装置的框图,该装置可以通过软件、硬件或者两者的结合实现成为电子设备的部分或者全部。如图9所示,该禽蛋检测装包括:
获取模块901,用于获取待检测图像,待检测图像中包括至少一个被打光的禽蛋;
输入模块902,用于将待检测图像输入预先训练的禽蛋特征检测模型中,得到待检测图像中每一个禽蛋的检测信息以及禽蛋对应的目标区域;
确定模块903,用于根据检测信息及目标区域确定禽蛋的检测结果,检测结果至少包括正常胚胎禽蛋和/或异常胚胎禽蛋。
图10为本申请另一实施例提供的一种图像处理装置的框图,如图10所示,该装置还包括:
第一获取模块1001,用于获取禽蛋样本图像,禽蛋样本图像中包括至少一个被打光的禽蛋。
第二获取模块1002,用于获取禽蛋样本图像中的标注信息,标注信息包括禽蛋样本图像中各个禽蛋对应的禽蛋标注信息,禽蛋标注信息包括:第一包围区域坐标,第一目标区域坐标和第一禽蛋类型。
训练模块1003,用于基于预设实例分割模型对禽蛋样本图像以及禽蛋标注信息进行训练,通过第一包围区域坐标及第一目标区域坐标确定第一目标区域在禽蛋中的位置,基于位置区分所述第一禽蛋类型,得到禽蛋特征检测模型。
本申请实施例还提供了一种禽蛋检测系统,该系统包括:拍摄装置、检测装置和分拣装置;
拍摄装置,用于对被打光的禽蛋进行拍摄,得到禽蛋图像;
检测装置,用于根据禽蛋图像得到待检测图像,将待检测图像输入预先训练的禽蛋特征检测模型中,得到待检测图像中每一个禽蛋的检测信息以及禽蛋对应的目标区域,根据检测信息及目标区域确定禽蛋的检测结果,检测信息包括:包围区域坐标以及禽蛋类型;
根据包围区域坐标以及检测结果生成分拣指令,分拣指令用于控制分拣装置对包围区域坐标对应的禽蛋执行检测结果对应的分拣操作;将分拣指令发送至所述分拣装置;
分拣装置,用于根据分拣指令执行相应的分拣操作。
本申请实施例还提供一种电子设备,如图11所示,电子设备可以包括:处理器1501、通信接口1502、存储器1503和通信总线1504,其中,处理器1501,通信接口1502,存储器1503通过通信总线1504完成相互间的通信。
存储器1503,用于存放计算机程序;
处理器1501,用于执行存储器1503上所存放的计算机程序时,实现以上实施例步骤。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DigitalSignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本申请还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以下步骤:
获取待检测图像,所述待检测图像中包括至少一个被打光的禽蛋;
将待检测图像输入预先训练的禽蛋特征检测模型中,得到待检测图像中每一个禽蛋的检测信息;
根据检测信息确定禽蛋的检测结果,检测结果至少包括正常胚胎禽蛋和/或异常胚胎禽蛋。
可选的,该计算机程序被处理器执行时还实现以下步骤:
检测信息包括:第一禽蛋类型以及类型置信度;
根据所述检测信息确定禽蛋的检测结果,包括:
当类型置信度满足预设条件,根据第一禽蛋类型确定检测结果。
可选的,该计算机程序被处理器执行时还实现以下步骤:
检测信息包括:第一禽蛋类型以及类型置信度;
该方法还包括:
将待检测图像输入禽蛋特征检测模型中,还得到禽蛋对应的目标区域;
确定目标区域对应的第二禽蛋类型;
所述根据检测信息确定禽蛋的检测结果,包括:
当类型置信度满足预设条件,且第一禽蛋类型和第二禽蛋类型一致时,根据第一禽蛋类型或第二禽蛋类型确定禽蛋的检测结果。
可选的,该计算机程序被处理器执行时还实现以下步骤:
检测信息还包括:禽蛋的包围区域坐标;
根据包围区域坐标以及检测结果生成分拣指令,分拣指令用于控制分拣设备对包围区域坐标对应的禽蛋执行所述检测结果对应的分拣操作;
将分拣指令发送至所述分拣设备。
可选的,该计算机程序被处理器执行时还实现以下步骤:
该方法还包括:
获取禽蛋样本图像,禽蛋样本图像中包括至少一个被打光的禽蛋;
获取禽蛋样本图像中的标注信息,标注信息包括所述禽蛋样本图像中各个禽蛋对应的禽蛋标注信息,禽蛋标注信息包括:包围区域坐标,目标区域坐标和禽蛋类型;
基于预设实例分割模型对禽蛋样本图像以及禽蛋标注信息进行训练,通过包围区域坐标及目标区域坐标确定目标区域在禽蛋中的位置,基于位置区分禽蛋类型,得到禽蛋特征检测模型。
该计算机程序被处理器执行时还可以实现以下步骤:
获取禽蛋样本图像,禽蛋样本图像中包括至少一个被打光的禽蛋;
获取禽蛋样本图像中的标注信息,标注信息包括禽蛋样本图像中各个禽蛋对应的禽蛋标注信息,禽蛋标注信息包括:第一包围区域坐标,第一目标区域坐标和第一禽蛋类型;
基于预设实例分割模型对禽蛋样本图像以及禽蛋标注信息进行训练,通过第一包围区域坐标及第一目标区域坐标确定第一目标区域在禽蛋中的位置,基于位置区分所述第一禽蛋类型,得到禽蛋特征检测模型。
可选的,该计算机程序被处理器执行时还实现以下步骤:
基于预设实例分割模型对禽蛋样本图像以及禽蛋标注信息进行训练,包括:
将禽蛋样本图像输入预设实例分割模型中的特征提取模型,得到待检测特征图像;
将待检测特征图像输入所述预设实例分割模型中的检测模型,得到检测信息,检测信息包括:第二包围区域坐标,第二禽蛋类型,类型置信度以及掩模系数;
通过第二包围区域坐标和所述第一包围区域坐标计算回归损失;
通过类型置信度计算分类损失;
基于回归损失和分类损失计算第一对抗损失;
根据第一对抗损失对检测模型进行优化,得到目标检测模型。
可选的,该计算机程序被处理器执行时还实现以下步骤:
将待检测特征图像输入预设实例分割模型中的分割模型,得到原型掩模;
根据原型掩模和掩模系数得到掩模图像;
基于掩模图像确定第二目标区域,并根据第二目标区域与所述第一目标区域计算第二对抗损失;
根据第二对抗损失对分割模型进行优化,得到目标分割模型。
可选的,该计算机程序被处理器执行时还实现以下步骤:
基于第一对抗损失和第二对抗损失计算最终损失;
根据最终损失对目标检测模型和目标分割模型进行优化,得到禽蛋特征检测模型。
需要说明的是,对于上述装置、电子设备及计算机可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
进一步需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。