CN110503012A - 鸟类喂食的方法、装置及系统 - Google Patents
鸟类喂食的方法、装置及系统 Download PDFInfo
- Publication number
- CN110503012A CN110503012A CN201910725897.7A CN201910725897A CN110503012A CN 110503012 A CN110503012 A CN 110503012A CN 201910725897 A CN201910725897 A CN 201910725897A CN 110503012 A CN110503012 A CN 110503012A
- Authority
- CN
- China
- Prior art keywords
- birds
- coordinate
- feeding
- picture pick
- image
- 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
Links
Classifications
-
- A—HUMAN NECESSITIES
- A01—AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
- A01K—ANIMAL HUSBANDRY; CARE OF BIRDS, FISHES, INSECTS; FISHING; REARING OR BREEDING ANIMALS, NOT OTHERWISE PROVIDED FOR; NEW BREEDS OF ANIMALS
- A01K39/00—Feeding or drinking appliances for poultry or other birds
- A01K39/01—Feeding devices, e.g. chainfeeders
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/30—Determination of transform parameters for the alignment of images, i.e. image registration
- G06T7/33—Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
Abstract
本发明涉及一种鸟类喂食的方法、装置及系统,通过获取摄像设备拍摄的彩色图像和深度图像,并将彩色图像输入到模型中,当鸟类出现乞食行为时,获取模型输出的鸟类嘴部中心的二维坐标,再进一步根据深度图像将二维坐标转换成三维空间坐标,最后根据三维空间坐标控制机械手移动至鸟类的嘴部中心并给鸟类喂食,达到自动化喂食的效果,从而降低鸟类的喂食成本。由于在喂食的过程中,无需对鸟类进行抓起、放下操作,因此,可直接对鸟类喂食,从而提高鸟类的喂食效率。
Description
技术领域
本发明涉及自动化技术领域,尤其涉及一种鸟类喂食的方法、装置及系统。
背景技术
在现有技术中,由于雏鸟不能主动进食,因此需要工人手动喂食。随着雏鸟的增多,相应的,雇佣的工人也会增多,导致人工成本高。在喂食的过程中,由于需要对雏鸟进行抓起、喂食、放下等操作,导致喂食效率低。
发明内容
基于此,有必要针对现有技术中的人工喂食成本高、效率低的问题,提供了一种鸟类喂食的方法、装置及系统。
第一方面,本申请提供一种鸟类喂食的方法,所述方法包括:获取摄像设备拍摄的彩色图像和深度图像,其中,所述彩色图像和所述深度图像是对同一鸟类拍摄的图像;将所述彩色图像输入到模型中,其中,所述模型是通过多组训练数据训练获得的,所述多组训练数据中的每一组训练数据均包括:鸟类的图像以及标识该鸟类出现乞食行为的标识信息;当鸟类出现乞食行为时,获取所述模型输出的特征信息,其中,所述特征信息包括鸟类嘴部中心的二维坐标;根据所述深度图像将所述二维坐标转换为三维空间坐标;根据所述三维空间坐标控制所述机械手移动至鸟类的嘴部中心并给鸟类喂食。
第一方面,本申请提供一种鸟类喂食的装置,所述装置包括:第一获取模块:用于获取摄像设备拍摄的彩色图像和深度图像,其中,所述彩色图像和所述深度图像是对同一鸟类拍摄的图像;输入模块:用于将所述彩色图像输入到模型中,其中,所述模型是通过多组训练数据训练获得的,所述多组训练数据中的每一组训练数据均包括:鸟类的图像以及标识该鸟类出现乞食行为的标识信息;第二获取模块:用于当鸟类出现乞食行为时,获取所述模型输出的特征信息,其中,所述特征信息包括鸟类嘴部中心的二维坐标;转换模块:用于根据所述深度图像将所述二维坐标转换为三维空间坐标;喂食模块:用于根据所述三维空间坐标控制所述机械手移动至鸟类的嘴部中心并给鸟类喂食。
第三方面,本申请提供一种鸟类喂食的系统,所述系统包括摄像设备、喂食器、机械手以及计算设备,所述喂食器安装在所述机械手上,所述计算设备分别与所述摄像设备和所述机械手信号连接;所述摄像设备用于对鸟类进行拍摄,获取鸟类的彩色图像和深度图像;所述喂食器用于存储食物;所述机械手用于移动喂食器;所述计算设备用于识别所述彩色图像中鸟类的乞食行为及嘴部中心的二维坐标,根据所述深度图像将所述二维坐标转换成三维空间坐标,根据所述三维空间坐标控制所述机械手移动至鸟类的嘴部中心,并控制所述机械手按压所述喂食器给鸟类喂食。
第四方面,本申请提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机指令,当计算设备的处理器执行该计算机指令时,该计算设备执行上述第一方面或者第一方面的各种可能设计提供的鸟类喂食的方法的步骤。
第五方面,本申请提供本申请提供一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算设备的处理器可以从计算机可读存储介质读取该计算机指令;该处理器执行该计算机指令,使得该计算设备执行上述第一方面或者第一方面的各种可能设计提供的鸟类喂食的方法中的步骤。
上述鸟类喂食的方法、装置及系统,通过获取摄像设备拍摄的彩色图像和深度图像,并将彩色图像输入到模型中,当鸟类出现乞食行为时,获取模型输出的鸟类嘴部中心的二维坐标,再进一步根据深度图像将二维坐标转换成三维空间坐标,最后根据三维空间坐标控制机械手移动至鸟类的嘴部中心并给鸟类喂食,达到自动化喂食的效果,从而降低鸟类的喂食成本。由于在喂食的过程中,无需对鸟类进行抓起、放下等操作,因此,可直接对鸟类喂食,从而提高鸟类的喂食效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明的一个实施例的鸟类喂食的系统的示意图。
图2是根据本发明的一个实施例的鸟类喂食的方法的流程示意图。
图3是根据本发明的一个实施例的鸟类喂食的装置的结构框图。
图4是根据本发明的一个实施例的计算设备的结构框图。
10、鸟类喂食的系统;1、摄像设备;2、喂食器;3、机械手;4、计算设备;41、处理器;42、存储器;43、通信接口;44、总线;5、鸟类。
具体实施方式
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是根据本发明的一个实施例的鸟类喂食的系统10的示意图。参照图1,该鸟类喂食的系统10可以具有摄像设备1、喂食器2、机械手3以及计算设备4,喂食器2安装在机械手3上。
摄像设备1用于对鸟类5进行拍摄,获取鸟类5的彩色图像和深度图像。摄像设备1可以是单目摄像设备,也可以是双目摄像设备。在实际应用中,摄像设备1可以为以下中的任一项:摄像头、摄像装置、相机或者其他具有摄像功能的设备。在本实施例中,摄像设备1为深度相机。
喂食器2用于存储食物。
机械手3用于移动喂食器2。在实际应用中,机械手3可以为以下中的任一项:球坐标式机械手、球坐标式机械手、球坐标式机械手或者球坐标式机械手。
计算设备4用于识别彩色图像中鸟类5的乞食行为及嘴部中心的二维坐标,根据深度图像将二维坐标转换成三维空间坐标,根据三维空间坐标控制机械手3移动至鸟类5的嘴部中心,并控制机械手3按压喂食器2给鸟类5喂食。该计算设备4包括但不限于以下中的任一项:手机、电脑、平板电脑(table personal computer)、个人数字助理(personaldigital assistant,PDA)、移动上网装置(mobile internetdevice,MID)、可穿戴式设备(wearable device)以及其他支持和网络通信的设备等。
在本实施例中,鸟类喂食的系统10还包括报警设备(图未示出),报警设备用于在喂食器2中的食物小于预设的高度阈值时发出报警信号。
具体地,该喂食器2中储存有流体的食物,在喂食器2中设有液位传感器,该液位传感器在预设的时间间隔下进行液位高度采样,预设的时间间隔t的取值范围为1 10s,计算设备4接收液位传感器每隔时间间隔t发送的液位高度数据,当液位高度数据小于预设的高度阈值时,计算设备4控制报警设备发出声光报警,从而提醒工作人员及时补充食物,防止喂食器2因“空喂”而导致雏鸟发生饿死的现象。
在本实施例中,计算设备4分别与摄像设备1、机械手3以及报警设备信号连接,其中,信号连接可采用有线通信技术或者无线通信技术实现设备间的网络通信。该有线通信技术可以是指两个设备之间通过网线或光纤等方式通信。该无线通信技术包括但不限于全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(generalpacket radio service,GPRS),码分多址接入(code division multipleaccess,CDMA),宽带码分多址(wideband code division multiple access,WCDMA),时分码分多址(timedivision codedivisionmultipleaccess,TD-SCDMA),长期演进(longtermevolution,LTE)、无线局域网(wireless local area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络)、蓝牙(bluetooth,BT)、全球导航卫星系统(globalnavigation satellite system,GNSS)、调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC)以及红外技术(infrared,IR)等等。
在本实施例中,鸟类为雏鸟。
在一个实施例中,如图2所示,提供了一种鸟类喂食的方法。参照图2,该鸟类喂食的方法具体包括如下步骤:
S102,获取摄像设备拍摄的彩色图像和深度图像,其中,彩色图像和深度图像是对同一鸟类拍摄的图像。
具体地,通过深度相机对雏鸟进行实时拍摄,可同时获得雏鸟的彩色图像和深度图像,并将彩色图像和深度图像分别发送给计算设备,计算设备获取深度相机发送的彩色图像和深度图像。
S104,将彩色图像输入到模型中,其中,模型是通过多组训练数据训练获得的,多组训练数据中的每一组训练数据均包括:鸟类的图像以及标识该鸟类出现乞食行为的标识信息。
具体的,计算设备将获取的彩色图像输入到模型中,模型对彩色图像进行识别,并给出一个置信度得分,该置信度得分代表模型认为当前图片中的雏鸟出现乞食行为的概率(注:如果彩色图像中没有雏鸟,相应的,该彩色图像的置信度得分会比较低),当该置信度得分大于预设得分阈值时,表示当前彩色图像中的雏鸟出现乞食行为。
在这里,需要预先训练模型,通过深度相机拍摄5000张RGB彩色图像,并且在拍摄过程中不断变换雏鸟的位置、大小以及环境光照等条件。然后使用labelImg工具对所有图片进行标注,对彩色图像中出现乞食行为的雏鸟用矩形框标注其嘴部,并且加上“hungry-beak”的标注信息,其中,彩色图像和标注信息是分开的,每一张原始的彩色图像对应一份标注文件。标注结束后,将彩色图像和标注文件分为训练集和测试集,其中,训练集和测试集的比例为8:2。最后将准备好的数据训练模型,并得到训练后的模型。
在实际应用中,模型包括但不限于以下中的任一项:R-CNN、Fast R-CNN、FasterR-CNN、FPN、YOLO、SSD或者RetinaNet模型。在本实施例中,模型采用Faster R-CNN模型,以下对Faster R-CNN模型进行详细介绍:
一、Faster R-CNN模型的框架
Faster R-CNN模型主要包括4个关键模块,特征提取网络、生成ROI、ROI分类、ROI回归。
1.特征提取网络:从输入图片中提取特征,通常由卷积层(conv)+激励层(relu)+池化层(pool)层构成,常用一些预训练模型(如VGG、Inception、Resnet、ZFnet等),输出结果叫做特征图(feature map)。
2.生成ROI(RPN):在获得的特征图的每一个像素点上做多个候选ROI(这里是9),然后利用分类器将这些ROI区分为前景(带有目标)和背景(不带目标),同时利用回归器对这些ROI的位置进行初步的调整。
3.ROI分类:在RPN阶段,用来区分前景和背景;在Fast-rcnn阶段,用于区分不同种类的目标(如猫、狗等,在本实施例中,种类的目标为:hungry-beak)。
4.ROI回归:在RPN阶段,进行初步调整;在Fast-rcnn阶段进行精确调整。
总之,其整体流程如下所示:
首先获取输入图片并进行裁剪,将裁剪后的图片输入预训练的卷积神经网络模型(即前述“特征提取网络”)中获取输入图片对应的特征图;
然后在特征图上的每个锚点上取9个候选ROI(3个不同尺度乘以3个不同长宽比),并根据相应的比例将其映射到原始图像中(在本实施例中,特征图上的每个锚点对应原始输入图像中的一块16*16大小的区域)。
下一步再将这些候选ROI输入RPN网络,RPN网络对这些ROI进行初步分类(确定这些ROI是前景还是背景)同时对其进行初步回归(初步计算这些前景ROI与包含真实目标的边框的位置的偏差值,包括Δx、Δy、Δw、Δh,即中心点坐标的偏差值和边框宽高的偏差值),然后做NMS(非极大值抑制,即根据分类的得分对这些ROI进行排序,然后选择其中的前N个ROI)。
接着对这些不同大小的ROI进行ROI Pooling操作(即将其映射为特定大小的特征图,本实施例中是7*7),输出固定大小的特征图。
最后将其输入简单的检测网络中,然后利用1*1的卷积进行分类(区分不同的类别的目标,共N+1类,其中多余的一类是背景,用于删除不准确的ROI;本实施例中只有一类目标即“hungry-beak”,N=1),同时进行边框回归(精确调整预测ROI与GT边框(即目标实际的边框)之间的位置偏差值),从而输出一个边框集合。
二、细节详解
卷积神经网络包含了卷积层、池化层及激励层。在本实施例中,卷积神经网络共有13个卷积层,13个激励层,4个池化层。其中,所有的卷积层都是:kernel_size=3,pad=1。所有的池化层都是:kernel_size=2,stride=2。同时对所有的卷积都做了扩边处理(pad=1,即在图片的外围填充一圈0值),导致原图变为(M+2)*(N+2)大小,再做3*3卷积后输出M*N。正是这种设置,导致卷积神经网络中的卷积层不改变输入和输出矩阵大小。
因为卷积神经网络中的池化层kernel_size=2,stride=2,所以每个经过池化层的M*N图片,都会变为(M/2)*(N/2)大小。因此,在整个卷积神经网络中,卷积层和激励层层不改变输入输出大小,而池化层使输出特征图的长宽变为输入的1/2。则M*N大小的图片经过该卷积神经网络后,固定变为(M/16)x(N/16)大小。因此,该卷积神经网络最终输出的特征图中的一个像素对应着原图中16*16大小的一块区域。
1.锚点
即特征图上的最小单位像素点,如原始输入图像大小为256*256,在本例中,经过特征提取网络的处理,最终获得的特征图的大小为(256/16)*(256/16),该特征图中的最小单位即是锚点,该特征图和原始输入图像间存在映射关系,特征图上的每个点映射回原始输入图像,对应一块16*16大小的区域。
2.候选的ROI
针对每一个锚点,然后根据不同的尺度(128、256、512pixel)和不同的长宽比(1:1、0.5:1、1:0.5)产生9个边框,对于16*16的特征图,最终产生16*16*9个候选的ROI。
3.RPN网络
RPN网络的作用是用来对特征图上面产生的多个ROI进行区分和初步定位。RPN本质上是一种全卷积网络,该网络可进行端到端训练,其目的是为了产生候选区域,用于进一步的分类和定位。
在本例中,首先对特征图使用3*3*512的卷积核进行卷积,然后分别使用两个1x1卷积核(并行),一个用于分类,一个用于回归。
对于分类层,每个锚点对应输出两个预测值,分别代表它属于前景或是背景的概率得分。
对于回归层,每个锚点对应输出输出四个预测值Δx、Δy、Δw、Δh。
4.ROI Pooling
ROI Pooling的作用是通过最大池化操作将特征图上面的ROI固定为特定大小的特征图,在本实施例中为7*7,以便进行后续的分类和边框回归操作。
5.ROI Pooling后的检测网络
将ROI Pooling输出的7*7*512的特征图平铺展开为一维向量,然后经过两个全连接层对其进行分类和回归。此处分类和回归层与RPN网络末端的分类和回归层作用相同。分类层利用已经获得的特征图(proposal feature maps),通过全连接层与softmax计算每个候选区域具体属于哪个类别(如hungry-beak等),输出每个候选区域属于哪个类别的概率向量;同时再次利用边框回归获得每个候选区域的位置偏移量,用于回归更加精确的目标检测框。
6、损失函数计算
这里采用多任务损失作为优化目标函数,其公式为:
其中,i表示小批样本中的锚点序号;pi表示第i个锚点为目标的softmax概率预测;当第i个锚点与目标窗口之间的IoU(定位精度)>0.7,认为是该锚点是前景,作为正样本,当IoU<0.3,认为是该锚点是背景,作为负样本,IoU在0.3到0.7之间的锚点则不参与训练;ti表示预测的边框的4个参数化坐标向量;表示正样本锚点对应真实边框的坐标向量。Lcls为分类损失,由softmax损失计算,用于锚点的正负样本分类。Lreg为回归损失,由soomth L1损失计算,用于预测框边界回归,乘以pi是因为回归损失项只与正样本锚点有关。在实际训练的过程中,Ncls和Nreg差距往往很大,所以引入参数λ来平衡二者,从而使神经网络的损失计算过程不会过于偏向分类或回归损失。
7、Faster-rcnn模型训练策略
(1)在预训练模型(这里使用ZFNet)的基础上,训练RPN网络。
(2)利用步骤1中训练好的RPN网络,收集候选区域。
(3)第一次训练Fast R-CNN网络。
(4)第二训练RPN网络。
(5)再次利用步骤3中训练好的RPN网络,收集候选区域。
(6)第二次训练Fast R-CNN网络。
S106,当鸟类出现乞食行为时,获取模型输出的特征信息,其中,特征信息包括鸟类嘴部中心的二维坐标。
具体的,模型精确识别出雏鸟的嘴部,并通过矩形框标记该嘴部,然后计算该矩形框的中心点的坐标,最终将该坐标作为特征信息输出。
S108,根据深度图像将二维坐标转换为三维空间坐标。
因为模型最终输出的是雏鸟嘴部中心的二维坐标,缺少深度信息,所以计算设备无法通过该二维坐标控制机械手移动至雏鸟的嘴部中心。由于深度相机相对于机械手是固定不动的,因此,可将机械手所在的坐标系设定为基准坐标系,从而利用二维坐标系、相机坐标系(深度图像)及机械手坐标系之间的关系,完成二维坐标到三维坐标之间的转换。
S110,根据三维空间坐标控制机械手移动至鸟类的嘴部中心并给鸟类喂食。
具体地,计算设备根据三维空间坐标控制机械手移动至雏鸟的嘴部中心,并控制机械手挤压喂食器,从而给雏鸟喂食。
在本实施例中,通过获取摄像设备拍摄的彩色图像和深度图像,并将彩色图像输入到模型中,当鸟类出现乞食行为时,获取模型输出的鸟类嘴部中心的二维坐标,再进一步根据深度图像将二维坐标转换成三维空间坐标,最后根据三维空间坐标控制机械手移动至鸟类的嘴部中心并给鸟类喂食,达到自动化喂食的效果,从而降低鸟类的喂食成本。由于在喂食的过程中,无需对鸟类进行抓起、放下操作,因此,可直接对鸟类喂食,从而提高鸟类的喂食效率。
在一个实施例中,S106具体包括以下内容:
S202,模型输出的特性信息为特征数据集,特征数据集包括标记鸟类嘴部的多个矩形框及对应的置信度得分,其中,置信度得分表示鸟类为乞食行为的概率。
通过上述Faster R-CNN模型可知,该Faster R-CNN模型通过两个全连接层最终会输出一个边框集合及对应的置信度得分。
S204,获取特征数据集中置信度得分最高的矩形框。
由于置信度得分越高,表示该矩形框标记雏鸟嘴部的精度越高。计算设备通过比较特征数据集中所有的置信度得分,并从中选择分值最高的置信度得分,然后选择该置信度得分所对应的矩形框。通过选择置信度得分最高的矩形框,可提高雏鸟喂食的精度,从而保证雏鸟的存活率。
S206,获得矩形框中心的二维坐标。
由于矩形框标记的是雏鸟的嘴部,因此,矩形框的中心就代表雏鸟嘴部的中心。
在一个实施例中,S108具体包括以下内容:
S302,通过深度图像将二维坐标转换为摄像设备坐标系下的坐标。
二维坐标通过以下公式转换为摄像设备坐标系下的坐标:
其中,(u、v)表示二维坐标;(xc、yc、zc)表示摄像设备坐标系下的坐标;zc表示(u、v)对应的深度值,该深度值通过深度图像获得;A表示摄像设备的内参矩阵;fu、fv表示摄像设备的焦距和像素纵横比的融合;u0、v0表示摄像设备的光心坐标。
S304,将摄像设备坐标系下的坐标转换为机械手坐标系下的三维空间坐标。
二维坐标通过以下公式转换为摄像设备坐标系下的坐标:
其中,(u、v)表示二维坐标;(xc、yc、zc)表示摄像设备坐标系下的坐标;zc表示(u、v)对应的深度值,该深度值通过深度图像获得;A表示摄像设备的内参矩阵;fu、fv表示摄像设备的焦距和像素纵横比的融合;u0、v0表示摄像设备的光心坐标。
在一个实施例中,S108还包括以下内容:
S306,对彩色图像和深度图像进行配准处理。
在实际应用中,一部分深度相机获得的彩色图像和深度图像是配准的,因而像素点之间具有一一对应的关系。但是,一部分深度相机获得的彩色图像和深度图像是不配准的,比如Kinect相机获得的彩色图像和深度图像之间的像素点并非一一对应。当彩色图像和深度图像之间的对应关系存在误差时,在二维坐标转换为三维空间坐标的过程中,由于彩色图像上的二维坐标不能对应深度图上的深度坐标,导致计算设备无法准确控制机械手移动到雏鸟的嘴部中心,从而发生雏鸟饿死的现象。因此,需要对未配准的彩色图像和深度图像进行配准处理,得到深度图像和彩色图像的映射关系,从而保证雏鸟喂食的精度和存活率。Kinect相机自带的SDK中提供了MapColorCoordinatesToDepth()函数,可直接调用该函数进行图像配准。
在一个实施例中,鸟类喂食的方法还包括初始化处理的步骤,该步骤具体包括以下内容:
S402,训练鸟类乞食行为的模型。
使用深度学习框架caffe实现此处所需的Faster R-CNN模型,具体代码直接使用Faster R-CNN论文作者提供的源代码(https://github.com/rbgirshick/py-faster-rcnn)。训练时需要设置如下参数:
1、基础学习率base_lr为0.001;
2、学习率的衰减策略lr_policy为“step”,步长stepsize为40000;
3、学习率的变化比率gamma为0.1;
4、屏幕显示间隔display为10;
5、最大迭代次数max_iter为70000;
6、动量momentum为0.99;
7、权重衰减项weight_decay为0.0005。
通过S104中的方法对Faster R-CNN模型进行训练,从而获得训练后的Faster R-CNN模型。
S404,获得摄像设备的内参矩阵A和外参矩阵Tm。
具体的,通过OpenCV视觉库中的cv::calibrateCamera函数求解深度相机的内参矩阵A和外参矩阵Tm,该函数的实现原理基于张正友法。实现原理如下,选用8×7棋盘格作为标定板,棋盘上的每个格子边长为5cm。对标定板进行多次不同角度的拍摄,使用OpenCV视觉库中的角点检测算法画出每幅棋盘格的角点(也即标定所需的特征点),计算后得到其在深度相机中的图像坐标,再使用OpenCV视觉库中的cv::calibrateCamera函数求解出Kinect相机的内参矩阵A和外参矩阵Tm,并将求解后的内参矩阵A和外参矩阵Tm存储在计算设备中,便于S302和S304调用。
S406,设置鸟类的喂食参数。
具体地,管理人员根据雏鸟的生长情况设置相应的喂食参数。
应该理解的是,各流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,各流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
如图3所示,在一个实施例中,提供一种鸟类喂食的装置01,该装置具体包括以下内容:第一获取模块11、输入模块12、第二获取模块13、转换模块14、喂食模块15。
第一获取模块11:用于获取摄像设备拍摄的彩色图像和深度图像,其中,彩色图像和深度图像是对同一鸟类拍摄的图像。
输入模块12:用于将彩色图像输入到模型中,其中,模型是通过多组训练数据训练获得的,多组训练数据中的每一组训练数据均包括:鸟类的图像以及标识该鸟类出现乞食行为的标识信息;
第二获取模块13:用于当鸟类出现乞食行为时,获取模型输出的特征信息,其中,特征信息包括鸟类嘴部中心的二维坐标。该模块具体用于执行上述示例中S202、S204、S206中所提到的方法以及可以等同替换的方法;该模块可以由处理器调用存储器中相应的程序指令来实现。
转换模块14:用于根据深度图像将二维坐标转换为三维空间坐标。该模块具体用于执行上述示例中S302、S304、S306中所提到的方法以及可以等同替换的方法;该模块可以由处理器调用存储器中相应的程序指令来实现。
喂食模块15:用于根据三维空间坐标控制机械手移动至鸟类的嘴部中心并给鸟类喂食。
此外,该装置还可以包括初始化模块,用于初始化鸟类喂食的系统。该模块具体用于执行上述示例中S402、S404、S406中所提到的方法以及可以等同替换的方法;该模块可以由处理器调用存储器中相应的程序指令来实现。
其中,上述具体的方法示例以及实施例中技术特征的解释、表述、以及多种实现形式的扩展也适用于装置中的方法执行,装置实施例中不予以赘述。
下面示例性地提供该计算设备4的一种可能的基本硬件架构,如图4所示。
参见图4,计算设备4包括处理器41、存储器42、通信接口43和总线44。
计算设备4中,处理器41的数量可以是一个或多个,图4仅示意了其中一个处理器41。可选地,处理器41可以是中央处理器(central processing unit,CPU)或者ARM处理器。如果计算设备4具有多个处理器41,多个处理器41的类型可以不同,或者可以相同。可选地,计算设备4的多个处理器41还可以集成为多核处理器。
存储器42存储计算机指令;例如,该计算机指令包括链代码;例如,该计算机指令用于实现本申请提供的鸟类喂食的方法中的各个步骤;例如,该计算机指令用于实现本申请提供的鸟类喂食的装置包括的各功能单元,或者用于实现本申请提供的鸟类喂食的方法中的各个步骤。
存储器42可以是以下存储介质的任一种或任一种组合:非易失性存储器(nonvolatilememory,NVM)(例如只读存储器(read only memory,ROM)、固态硬盘(SolidState Drives,SSD)、机械硬盘、磁盘、磁盘整列),易失性存储器(volatilememory)。
通信接口43可以是以下器件的任一种或任一种组合:网络接口(例如以太网接口)、无线网卡等具有网络接入功能的器件。
通信接口43用于计算设备4与其他设备(例如计算设备)进行数据通信。
图4用一条粗线表示总线44。处理器41、存储器42和通信接口43通过总线44连接。这样,处理器41可以通过总线44访问存储器42,以及通过总线44利用通信接口43与其他设备(例如计算设备)进行数据交互。
可选地,计算设备4执行存储器42中的计算机指令,在计算设备4上实现本申请提供的鸟类喂食的方法,或者在计算设备4上实现本申请提供的鸟类喂食的装置。
本领域技术人员可以理解,图4中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算设备的限定,具体的计算设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机指令,当计算设备4的处理器41执行该计算机指令时,该计算设备4执行本申请提供的鸟类喂食的方法中的步骤。
在一个实施例中,提供了一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算设备的处理器可以从计算机可读存储介质读取并执行该计算机指令,使得该计算设备执行本申请提供的鸟类喂食的方法的步骤。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上为对本发明所提供的一种鸟类喂食的方法、装置及系统的描述,对于本领域的技术人员,依据本发明实施例的思想,在具体实施例及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种鸟类喂食的方法,其特征在于,所述方法包括:
获取摄像设备拍摄的彩色图像和深度图像,其中,所述彩色图像和所述深度图像是对同一鸟类拍摄的图像;
将所述彩色图像输入到模型中,其中,所述模型是通过多组训练数据训练获得的,所述多组训练数据中的每一组训练数据均包括:鸟类的图像以及标识该鸟类出现乞食行为的标识信息;
当鸟类出现乞食行为时,获取所述模型输出的特征信息,其中,所述特征信息包括鸟类嘴部中心的二维坐标;
根据所述深度图像将所述二维坐标转换为三维空间坐标;
根据所述三维空间坐标控制所述机械手移动至鸟类的嘴部中心并给鸟类喂食。
2.根据权利要求1所述的鸟类喂食的方法,其特征在于,所述当鸟类出现乞食行为时,获取所述模型输出的特征信息包括:
所述模型输出的特性信息为特征数据集,所述特征数据集包括标记鸟类嘴部的多个矩形框及对应的置信度得分,其中,所述置信度得分表示输入图像中鸟类出现乞食行为的概率;
获取所述特征数据集中置信度得分最高的矩形框;
获得所述矩形框中心的二维坐标。
3.根据权利要求1所述的鸟类喂食的方法,其特征在于,所述根据所述深度图像将所述二维坐标转换为三维空间坐标包括:
通过所述深度图像将所述二维坐标转换为所述摄像设备坐标系下的坐标;
将所述摄像设备坐标系下的坐标转换为所述机械手坐标系下的三维空间坐标。
4.根据权利要求1所述的鸟类喂食的方法,其特征在于,所述通过所述深度图像将所述二维坐标转换为所述摄像设备坐标系下的坐标包括:
所述二维坐标通过以下公式转换为所述摄像设备坐标系下的坐标:
其中,(u、v)表示所述二维坐标;(xc、yc、zc)表示所述摄像设备坐标系下的坐标;zc表示(u、v)对应的深度值,该深度值通过所述深度图像获得;A表示摄像设备的内参矩阵;fu、fv表示摄像设备的焦距和像素纵横比的融合;u0、v0表示摄像设备的光心坐标。
5.根据权利要求1所述的鸟类喂食的方法,其特征在于,所述将所述摄像设备坐标系下的坐标转换为所述机械手坐标系下的三维空间坐标包括:
所述摄像设备坐标系下的坐标通过以下公式转换为所述机械手坐标系下的三维空间坐标:
其中,(x、y、z)表示所述机械手坐标系下的三维空间坐标,(xc、yc、ac)表示所述摄像设备坐标系下的坐标,Tm表示摄像设备和机械手之间的外参矩阵,R表示旋转矩阵,T表示平移矩阵。
6.根据权利要求1所述的鸟类喂食的方法,其特征在于,所述根据所述深度图像将所述二维坐标转换为三维空间坐标还包括:
对所述彩色图像和所述深度图像进行配准处理。
7.根据权利要求1所述的鸟类喂食的方法,其特征在于,所述方法还包括初始化处理,所述初始化处理包括:
训练鸟类乞食行为的模型;
获得摄像设备的内参矩阵A和外参矩阵Tm;
设置鸟类的喂食参数。
8.一种鸟类喂食的装置,其特征在于,所述装置包括:
第一获取模块:用于获取摄像设备拍摄的彩色图像和深度图像,其中,所述彩色图像和所述深度图像是对同一鸟类拍摄的图像;
输入模块:用于将所述彩色图像输入到模型中,其中,所述模型是通过多组训练数据训练获得的,所述多组训练数据中的每一组训练数据均包括:鸟类的图像以及标识该鸟类出现乞食行为的标识信息;
第二获取模块:用于当鸟类出现乞食行为时,获取所述模型输出的特征信息,其中,所述特征信息包括鸟类嘴部中心的二维坐标;
转换模块:用于根据所述深度图像将所述二维坐标转换为三维空间坐标;
喂食模块:用于根据所述三维空间坐标控制所述机械手移动至鸟类的嘴部中心并给鸟类喂食。
9.一种鸟类喂食的系统,其特征在于,所述系统包括摄像设备、喂食器、机械手以及计算设备,所述喂食器安装在所述机械手上,所述计算设备分别与所述摄像设备和所述机械手信号连接;
所述摄像设备用于对鸟类进行拍摄,获取鸟类的彩色图像和深度图像;
所述喂食器用于存储食物;
所述机械手用于移动喂食器;
所述计算设备用于识别所述彩色图像中鸟类的乞食行为及嘴部中心的二维坐标,根据所述深度图像将所述二维坐标转换成三维空间坐标,根据所述三维空间坐标控制所述机械手移动至鸟类的嘴部中心,并控制所述机械手按压所述喂食器给鸟类喂食。
10.根据权利要求1所述的鸟类喂食的系统,其特征在于,所述鸟类喂食的系统还包括报警设备,所述报警设备用于在喂食器中的食物小于预设容量阈值时发出报警信号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910725897.7A CN110503012A (zh) | 2019-08-07 | 2019-08-07 | 鸟类喂食的方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910725897.7A CN110503012A (zh) | 2019-08-07 | 2019-08-07 | 鸟类喂食的方法、装置及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110503012A true CN110503012A (zh) | 2019-11-26 |
Family
ID=68587092
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910725897.7A Pending CN110503012A (zh) | 2019-08-07 | 2019-08-07 | 鸟类喂食的方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110503012A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111919777A (zh) * | 2020-08-10 | 2020-11-13 | 宁夏牧乐机械有限公司 | 应用于单栏舍的基于5g网络环境的agv犊牛饲喂机器人 |
CN113343828A (zh) * | 2021-06-01 | 2021-09-03 | 深圳市天和荣科技有限公司 | 鸟类调查方法、装置、电子设备及计算机可读存储介质 |
CN113349105A (zh) * | 2021-06-01 | 2021-09-07 | 深圳市天和荣科技有限公司 | 智能喂鸟方法、电子设备、喂鸟器和存储介质 |
CN114998453A (zh) * | 2022-08-08 | 2022-09-02 | 国网浙江省电力有限公司宁波供电公司 | 一种基于高尺度单元的立体匹配模型及其应用方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103170973A (zh) * | 2013-03-28 | 2013-06-26 | 上海理工大学 | 基于Kinect摄像机的人机协作装置及方法 |
CN107621802A (zh) * | 2017-09-15 | 2018-01-23 | 智易行科技(武汉)有限公司 | 一种智能喂食婴儿车 |
CN109618961A (zh) * | 2018-12-12 | 2019-04-16 | 北京京东金融科技控股有限公司 | 一种家畜的智能投喂系统和方法 |
CN109740513A (zh) * | 2018-12-29 | 2019-05-10 | 青岛小鸟看看科技有限公司 | 一种动作行为分析方法和装置 |
-
2019
- 2019-08-07 CN CN201910725897.7A patent/CN110503012A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103170973A (zh) * | 2013-03-28 | 2013-06-26 | 上海理工大学 | 基于Kinect摄像机的人机协作装置及方法 |
CN107621802A (zh) * | 2017-09-15 | 2018-01-23 | 智易行科技(武汉)有限公司 | 一种智能喂食婴儿车 |
CN109618961A (zh) * | 2018-12-12 | 2019-04-16 | 北京京东金融科技控股有限公司 | 一种家畜的智能投喂系统和方法 |
CN109740513A (zh) * | 2018-12-29 | 2019-05-10 | 青岛小鸟看看科技有限公司 | 一种动作行为分析方法和装置 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111919777A (zh) * | 2020-08-10 | 2020-11-13 | 宁夏牧乐机械有限公司 | 应用于单栏舍的基于5g网络环境的agv犊牛饲喂机器人 |
CN113343828A (zh) * | 2021-06-01 | 2021-09-03 | 深圳市天和荣科技有限公司 | 鸟类调查方法、装置、电子设备及计算机可读存储介质 |
CN113349105A (zh) * | 2021-06-01 | 2021-09-07 | 深圳市天和荣科技有限公司 | 智能喂鸟方法、电子设备、喂鸟器和存储介质 |
CN113349105B (zh) * | 2021-06-01 | 2022-06-21 | 深圳市天和荣科技有限公司 | 智能喂鸟方法、电子设备、喂鸟器和存储介质 |
CN114998453A (zh) * | 2022-08-08 | 2022-09-02 | 国网浙江省电力有限公司宁波供电公司 | 一种基于高尺度单元的立体匹配模型及其应用方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110503012A (zh) | 鸟类喂食的方法、装置及系统 | |
CN108053449A (zh) | 双目视觉系统的三维重建方法、装置及双目视觉系统 | |
CN109816725A (zh) | 一种基于深度学习的单目相机物体位姿估计方法及装置 | |
CN110163640A (zh) | 一种在视频中植入广告的方法及计算机设备 | |
CN110991435A (zh) | 一种基于深度学习的快递运单关键信息定位方法和装置 | |
CN109716160A (zh) | 用于检测车辆环境信息的方法和系统 | |
CN108665496A (zh) | 一种基于深度学习的端到端的语义即时定位与建图方法 | |
CN110335314A (zh) | 基于目标物体的二维图像预测目标物体实时位姿的方法 | |
CN109857144A (zh) | 无人机、无人机控制系统及控制方法 | |
CN109754427A (zh) | 一种用于标定的方法和装置 | |
WO2020103108A1 (zh) | 一种语义生成方法、设备、飞行器及存储介质 | |
CN110929795B (zh) | 高速焊线机焊点快速识别与定位方法 | |
CN109255302A (zh) | 目标物识别方法及终端、移动装置控制方法及终端 | |
CN113420643B (zh) | 基于深度可分离空洞卷积的轻量级水下目标检测方法 | |
EP3921801B1 (en) | Creating training data variability in machine learning for object labelling from images | |
CN109076173A (zh) | 输出影像生成方法、设备及无人机 | |
KR20220160066A (ko) | 이미지 처리 방법 및 장치 | |
CN110176042A (zh) | 相机自运动参数估计模型的训练方法、装置及存储介质 | |
CN110163864A (zh) | 图像分割方法、装置、计算机设备和存储介质 | |
CN113392584A (zh) | 基于深度强化学习和方向估计的视觉导航方法 | |
CN116597332A (zh) | 一种基于无人机的茶树嫩芽检测方法及装置 | |
CN107948586A (zh) | 基于视频拼接的跨区域运动目标检测方法和装置 | |
CN114689038A (zh) | 基于机器视觉的果实检测定位与果园地图构建方法 | |
CN107562886A (zh) | 一种生成相片地图的方法及装置 | |
CN108010061A (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: 20191126 |
|
RJ01 | Rejection of invention patent application after publication |