发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本申请提供了一种对象控制方法、装置、系统、电子设备及存储介质。
第一方面,本申请提供了一种对象控制方法,包括:
根据处于真实场景中的真实对象生成虚拟对象;
接收基于所述虚拟对象触发的控制操作;
根据所述控制操作生成控制指令,所述控制指令用于控制预设设备对所述真实对象执行与所述控制操作相关联的操作;
将所述控制指令发送至所述预设设备。
可选的,所述根据处于真实场景中的真实对象生成虚拟对象,包括:
获取所述真实场景的视频数据;
对所述视频数据进行分析得到处于所述真实场景中的真实对象;
获取所述真实对象的第一对象信息;
根据所述第一对象信息生成所述真实对象对应的虚拟对象。
可选的,所述对所述视频数据进行分析得到处于所述真实场景中的真实对象,包括:
从所述视频数据中获取待检测图像;
将所述待检测图像输入预先训练好的识别模型中,得到识别结果;
根据所述识别结果得到所述真实对象。
可选的,所述方法还包括:
周期性获取所述真实对象的第二对象信息;
根据所述第二对象信息更新所述虚拟对象。
可选的,在所述接收基于所述虚拟对象触发的控制操作之前,所述方法还包括:
确定所述第一对象信息对应的状态信息;
获取与所述状态信息相关联的提示信息,并将所述提示信息发送至第一客户端;
所述接收基于所述虚拟对象触发的控制操作,包括:
接收所述第一客户端基于所述提示信息触发的控制操作。
可选的,所述方法还包括:
当确定所述第一客户端进入传播模式时,获取所述第一客户端对应的传播路径;
确定所述传播路径对应的第二客户端;
当所述第二客户端的行为信息满足预设条件时,确认所述第二客户端有效。
第二方面,本申请提供了一种对象控制装置,包括:
获取模块,用于获取真实场景中存在的真实对象,并根据所述真实对象生成对应的虚拟对象;
接收模块,用于接收第一用户基于所述虚拟对象触发的控制操作;
生成模块,用于根据所述控制操作生成控制指令,所述控制指令用于控制预设设备对所述真实对象执行与所述控制操作相关联的操作;
发送模块,用于将所述控制指令发送至所述预设设备。
第三方面,本申请提供了一种对象管理系统,包括:
对象控制平台,用于根据处于真实场景中的真实对象生成虚拟对象,接收基于所述虚拟对象触发的控制操作,根据所述控制操作生成控制指令,所述控制指令用于控制预设设备对所述真实对象执行与所述控制操作相关联的操作,将所述控制指令发送至所述预设设备;
传播管理平台,用于记录第一客户端的传播路径,以及根据所述传播路径获取的第二客户端,根据所述第一客户端、所述第一客户端的传播路径以及所述第二客户端构建传播网络。
第四方面,本申请提供了一种电子设备,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行计算机程序时,实现上述方法步骤。
第五方面,本申请提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方法步骤。
本申请实施例提供的上述技术方案与现有技术相比具有如下优点:本申请实施例所采用的技术方案通过在线上与虚拟对象的互动的同时,对虚拟对象对应的真实对象进行相关联的操作,能够巩固用户的粘度,并且也有助于对智能化养殖的传播。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请提供了一种对象控制方法,装置,系统电子设备以及存储介质。本申请实施例所提供的方法可以应用于任意需要的电子设备,例如,可以为服务器、终端等电子设备,在此不做具体限定,为描述方便,后续简称为电子设备。下面首先对本发明实施例所提供的一种对象控制方法进行介绍。
图1为本申请实施例提供的一种对象管理系统的示意图,如图1所示,对象管理系统100包括:对象控制平台110和传播管理平台120。
对象控制平台110,用于根据处于真实场景中的真实对象生成虚拟对象,接收基于虚拟对象触发的控制操作,根据控制操作生成控制指令,控制指令用于控制预设设备对真实对象执行与控制操作相关联的操作,将控制指令发送至所述预设设备。
传播管理平台120,用于记录第一客户端传播路径,以及根据传播路径获取的第二客户端,根据第一客户端、第一客户端的传播路径以及第二客户端构建传播网络。
图2为本申请实施例提供的一种对象控制方法的流程图。如图2所示,该方法包括以下步骤:
步骤S11,根据处于真实场景中的真实对象生成虚拟对象;
步骤S12,接收基于所述虚拟对象触发的控制操作;
步骤S13,根据控制操作生成控制指令,控制指令用于控制预设设备对真实对象执行与控制操作相关联的操作;
步骤S14,将控制指令发送至预设设备。
本实施例公开的方法通过在线上与虚拟对象的互动的同时,对虚拟对象对应的真实对象进行相关联的操作,展现出了一种新颖的智能化养殖模式,不但能够巩固用户的粘度,并且也有助于对智能化养殖的传播。
本实施例公开的方法适用于智能农牧,其中所涉及的真实对象可以是:家畜,如:牛,羊,马,猪等,也可以是家禽,如:鸡,鸭,鹅等。本实施例具体以猪只为真实对象进行具体说明。
本实施例中,首先获取猪舍,即真实场景的视频数据,对视频数据进行分析得到处于所述真实场景中的真实对象。可选的通过以下方式实现:
从视频数据中获取待检测图像,将待检测图像输入预先训练好的识别模型中,得到识别结果,根据所述识别结果得到猪只。识别模型训练过程如下:获取样本图像,样本图像可以是猪舍图像,样本图像中至少包括一个猪只,之后获取样本图像中的标注信息,标注信息包括样本图像中猪只对应的猪只标注信息,猪只标注信息可以是:猪只的特征信息以及猪只的位置信息。最后根据预设卷积神经网络模型对样本图像以及猪只标注信息进行训练,得到识别模型。
本实施例还需要获取视频数据中每一个猪只对应的第一对象信息,第一对象信息包括以下至少一项:猪只的生产日期、生长情况、健康状态、疫苗接种信息等,根据第一对象以及第一对象信息生成真实猪只对应的虚拟猪只。
本实施例中的猪只的生产日期、生长情况、健康状态、疫苗接种信息可以通过人工输入,部分信息也可以通过图像检测获取。例如:猪只的健康状态可以通过以下检测方法获取。
获取对猪舍按照预设时间间隔拍摄得到的第一检测图像与第二检测图像,确定第一检测图像中猪只对应的第一关键点集合,以及确定第二检测图像中猪只对应的第二关键点集合,根据第一关键点集合与第二关键点集合确定猪只的健康状态。
可选的,将第一检测图像和第二检测图像输入预先训练的位置检测模型,得到第一检测图像中猪只对应的第一位置信息,以及第二检测图像中猪只对应的第二位置信息,根据第一位置信息生成与猪只对应的第一图像,根据所述第二位置信息生成与猪只对应的第二图像,将第一图像和第二图像输入预先训练的关键点检测模型,得到第一目标物图像中猪只对应的第一关键点集合,以及第二图像中猪只对应的第二关键点集合,其中,第一位置信息以及第二位置信息可以是猪只的包围框,第一关键点集合以及第二关键点集合中均包括五个关键点。
获取第一关键点集合中的第一目标关键点的第一坐标,获取第二关键点集合中的第二目标关键点的第二坐标,根据第一坐标以及第二坐标得到猪只的运动参数,通过运动参数确定猪只的健康状况。其中,运动参数可以是:时间,位移,速度等,健康状态可以是:生病状态,正常状态等,其中,第一目标关键点为第一关键点集合中的中心点,第二目标关键点为第二关键点集合中的中心点。
比如:当根据第一坐标与第二坐标确定某个猪只的位移为0时,则确定该猪当前处于静止状态,对该猪只进行持续监控,当该猪只处于静止状态(即位移为0)的持续时间大于预设持续时间时,则确定该猪只为不健康状态。
此第一对象信息中还包括猪只的姿势信息。可选的,检测猪只的姿势信息可以是:获取待检测图像,待检测图像中包括至少一个猪只,待检测通过猪只检测模型从待检测图像中识别猪体,根据猪体从待检测图像中裁切得到猪只图像,将猪只图像输入预先训练的姿势检测模型,得到姿势信息。
其中姿势检测模型可以基于MobileNet-YOLO、MobileNet-YOLOv1、MobileNet-YOLOv2、MobileNet-YOLOv3、Faster R-CNN、R-FCN等等卷积神经网络训练得到。通过摄像头采集栏位中的猪只样本图像;获得猪只样本图像的标签,该标签包括框选出猪体的标签框及姿势标记,依据猪只的不同姿势可标记为站、坐、正卧、左侧卧和右侧卧;将猪只样本图像及对应的标签输入卷积神经网络进行训练,得到该姿势检测模型。
在生成虚拟猪只后,获取第一客户端发送的的领养请求,根据领养请求为第一客户端分配与领养请求对应的虚拟猪只,接收第一客户端基于虚拟猪只触发的控制操作,根据控制操作生成控制指令,控制指令用于控制预设设备对真实猪只执行与控制操作相关联的操作,将控制指令发送至预设设备。
例如:接收基于虚拟猪只触发的点击操作,响应于点击操作生成控制选项,控制选项包括:投放饲料,接种疫苗,洗澡等,接收基于控制选项触发的选中操作,假设选中的控制选项为洗澡时,生成洗澡指令,将洗澡指令发送至预设设备,通过预设设备对真实猪只进行冲洗。
本实施例中,还可以获取第一客户端的好友客户端,当好友客户端访问第一客户端中的虚拟猪只时,可以与虚拟猪只进行互动,接收好友客户端基于虚拟猪只触发的控制操作,根据控制操作生成控制指令,控制指令用于控制预设设备对真实猪只执行与控制操作相关联的操作,将控制指令发送至预设设备。其中预设设备可以进行投放饲料、对真实猪只进行清洗或者提醒工作人员对猪只进行疫苗接种。
通过好友客户端与第一客户端领养的虚拟对象进行互动操作,丰富了社交形式,不同的客户端通过与虚拟对象互动,进一步提高了互动趣味性。其中互动操作可以是,播放音乐,投放饲料或者按摩等。
此外,本实施例中通过预设时间间隔获取真实猪只的第二对象信息,根据第二对象信息更新虚拟猪只。比如:每天更新猪只的生长情况,其中,生长情况可以是猪只体重,猪只体长等等。
图3为本申请另一实施例提供的一种对象控制方法的流程图,如图3所示,该方法还包括以下步骤:
步骤S21,确定第一对象信息对应的状态信息。
步骤S22,获取与状态信息相关联的提示信息,并将提示信息发送至第一客户端。
步骤S23,接收第一客户端基于提示信息触发的控制操作。
步骤S24,根据控制操作生成控制指令,并将控制指令发送至预设设备。
本实施例中,通过确定第一对象信息对应的状态信息可以掌握猪只当前动态,根据猪只当前动态向第一客户端发送相关联的提示信息,便于用户实时获取猪只当前动态,并进行相关操作,以此提升用户的使用粘性。
可选的,状态信息可以是猪只的生长情况,健康状态以及疫苗接种信息,例如:基于第一对象信息获取猪只的疫苗接种信息,当疫苗接种信息满足预设接种条件时,获取与疫苗接种相关的提示信息,并将提示信息发送至第一客户端,提示信息包括提示选项,提示选项可以为接种或不接种,接收第一客户端基于提示选项触发的控制操作,即根据控制操作确定进行疫苗接种时,为真实猪只分配相应的疫苗。
可选的,状态信息还包括猪只的饮食情况,例如:获取待检测图像,待检测图像中包括猪只的食槽区域,根据猪只的食槽区域从待检测图像中裁切得到食槽图像,将食槽图像输入预先训练的余食检测模型,得到余食信息。可选的,余食信息可以仅为是否有余食,或剩余饲料在食槽中所占的比例等等。
本实施例中,通过对食槽进行图像识别,确定食槽中的饲料的余量。这样,无需人工对食槽中的饲料进行监测,可实时、准确低获知食槽中饲料余量及母猪进食情况。当饲料余量属于预设余量范围时,生成投放饲料的提示信息,并将提示信息发送至第一客户端。并接收第一客户端基于提示信息触发的控制操作,根据控制操作确定为猪只投放饲料时,生成控制指令,并将控制指令发送至预设设备。
可选的,余食检测模型可以基于以下目标检测算法训练得到,如YOLOv1、YOLOv2、YOLOv3、R-CNN、Fast R-CNN、SPP-net、Faster R-CNN、R-FCN和SSD等等,或是以MobileNet等轻量级网络为骨干网络的目标检测算法,如MobileNet-YOLOv1、MobileNet-YOLOv2、MobileNet-YOLOv3等,用MobileNet替换YOLO中的Darknet骨干网络,在保证精确度的同时提升网络运算速度。
可选的,还可以基于第一对象信息获取真实猪只的当前生长情况,以及根据历史对象信息获取历史生长情况,将当前生长情况与历史生长情况进行比对,得到比对结果,当比对结果不满足预设生长条件时,确定状态信息为缺乏营养,获取与缺乏营养相关联的提示信息,并将提示信息发送至第一客户端,此时提示信息包括提示选项,提示选项可以为采用虚拟猪只参加虚拟活动、进行传播或者不进行任何操作等,接收第一客户端基于提示选项触发的控制操作,根据控制操作确定为采用虚拟猪只参加虚拟活动、进行传播时,为真实猪只分配相应的营养资源,如饲料等等。
本实施例中,当状态信息满足预设状态时,确认猪只的生长周期结束,其中预设状态包括以下至少一项:猪只的生长情况达到预设阶段,猪只健康状态为正常状态以及猪只的疫苗接种信息完整。当确认猪只的生长周期结束时,生成领取信息,并将领取信息发送至第一客户端。
通过上述方式,在实现用户在线上与虚拟猪只进行互动的同时,在线下同步执行线上的互动操作,提高了智能养殖的实用性,增加用户体验,也有助于使智能养殖得到更广泛的传播。
图4为本申请另一实施例提供的一种对象控制方法的流程图,如图4所示:
步骤S31,当确定第一客户端进入传播模式时,获取第一客户端对应的传播路径;
步骤S32,确定传播路径对应的第二客户端;
步骤S33,当第二客户端的行为信息满足预设条件时,确认第二客户端有效。
本实施例中,第一客户端可以通过点击预设虚拟按钮进入传播模式,当确定第一客户端进入传播模式时,获取第一客户端的传播路径,其中传播路径可以是邀请好友,分享链接,转发等等,然后基于传播路径获取第二客户端,并对第二客户端的行为信息进行分析获取分析结果,当分析结果满足预设条件时,确认第二客户端有效。
可选的,对行为信息进行分析,能够获取浏览虚拟猪只的次数,浏览时长或者是否参加猪只领养等信息,并将其作为分析结果,分析结果满足预设条件包括以下至少一项时,将第二客户端却认为有效用户:浏览虚拟猪只的次数大于预设次数,浏览时长大于预设时长,和/或参加猪只领养。
图5为本申请实施例提供的一种对象控制装置的框图,该装置可以通过软件、硬件或者两者的结合实现成为电子设备的部分或者全部。如图5所示,该装置包括:
获取模块501,用于根据处于真实场景中的真实对象生成虚拟对象。
接收模块502,用于接收基于虚拟对象触发的控制操作。
生成模块503,用于根据控制操作生成控制指令,控制指令用于控制预设设备对真实对象执行与控制操作相关联的操作。
发送模块504,用于将控制指令发送至预设设备。
本申请实施例还提供一种电子设备,如图6所示,电子设备可以包括:处理器1501、通信接口1502、存储器1503和通信总线1504,其中,处理器1501,通信接口1502,存储器1503通过通信总线1504完成相互间的通信。
存储器1503,用于存放计算机程序;
处理器1501,用于执行存储器1503上所存放的计算机程序时,实现上述实施例的步骤。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,P C I)总线或扩展工业标准结构(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)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本申请还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以上实施例的步骤。
需要说明的是,对于上述装置、电子设备及计算机可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
进一步需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。