CN113076965A - 一种基于云端的服务机器人场景分类系统及方法 - Google Patents
一种基于云端的服务机器人场景分类系统及方法 Download PDFInfo
- Publication number
- CN113076965A CN113076965A CN202010009994.9A CN202010009994A CN113076965A CN 113076965 A CN113076965 A CN 113076965A CN 202010009994 A CN202010009994 A CN 202010009994A CN 113076965 A CN113076965 A CN 113076965A
- Authority
- CN
- China
- Prior art keywords
- scene
- cloud
- service robot
- service
- server
- 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
- 238000000034 method Methods 0.000 title claims abstract description 60
- 238000003062 neural network model Methods 0.000 claims abstract description 42
- 238000012549 training Methods 0.000 claims abstract description 21
- 238000012795 verification Methods 0.000 claims abstract description 9
- 238000012360 testing method Methods 0.000 claims abstract description 4
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 claims description 50
- 230000004044 response Effects 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 9
- 230000004913 activation Effects 0.000 claims description 6
- 238000012544 monitoring process Methods 0.000 claims description 6
- 238000011176 pooling Methods 0.000 claims description 6
- 239000003814 drug Substances 0.000 claims description 3
- 229940079593 drug Drugs 0.000 claims description 3
- 238000013135 deep learning Methods 0.000 abstract description 6
- 238000013527 convolutional neural network Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000008034 disappearance Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000033772 system development Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Manipulator (AREA)
Abstract
本发明公开了一种基于云端的服务机器人场景分类系统及方法,该系统包括:场景,包括家庭或室内场景、公共场景;服务机器人,用于通过摄像头获取当前场景图片,利用移动网络把场景图片发送到云服务器进行场景分类;云服务器,用于根据已经部署训练好的神经网络模型进行场景分类;该方法包括:A、场景数据集的建立;B、神经网络模型本地训练和验证;C、神经网络模型云端部署和测试;D、基于云端的服务机器人场景分类。本发明采用场景分类的深度学习网络模型应用于服务机器人的场景分类中,它可以自动的从图像中学习到隐藏在其内部的特征数据,同时该网络模型部署在云端,利用云端强大的计算能力场景分类结果可快速的从云端返回给服务机器人。
Description
技术领域
本发明涉及场景分类技术领域,具体涉及一种基于云端的服务机器人场景分类系统及方法。
背景技术
发展服务机器人产业,可以有效缓解老龄残障人群的社会服务压力、提高人民的生活质量,推动民生科技快速发展、是实现先进科技成果惠及民生的战略举措,因此世界各国都极为重视,投入巨大。在服务机器人学研究领域,为了能够实时地估计服务机器人在所处环境中的位置及方向,通常需要为其建立一个能同时完成地图构建和定位的系统,而场景分类正是该系统开发中的关键环节。实践证明,仅依靠机器人自身能力的提高已无法同时满足上述要求,随着大数据、云技术的日益成熟,如何将场景分类与云计算技术相结合是未来服务机器人领域急需解决的问题。
目前相对主流的场景分类方法主要分三类,第一类是基于上下文的场景分类,该类方法的目的即为提高场景分类的鲁棒性。因为自然图片中很容易掺杂一些随机噪声,这类噪声会对局部处理造成灾难性的影响,而对于全局图像却可以通过平均数来降低这种影响。基于上下文的场景分类,通过识别全局对象,而非场景中的小对象集合或者准确的区域边界,因此不需要处理小的孤立区域的噪声和低级图片的变化,其解决了分割和目标识别分类方法遇到的问题。目前该类方法代表性算法有基于Gist特征与CNN的场景分类,该算法通过Gist特征提取场景图像的全局特征,用CNN进一步学习更深层次的特征,并在CNN全连接层进行场景分类。第二类是基于区域的场景分类,首先通过目标候选区域选择算法,生成一系列候选目标区域,然后通过深度神经网络提取候选目标区域特征,并用这些特征进行分类。目前该类方法的代表性算法有RCNN、Fast-R-CNN和Faster-R-CNN,其中RCNN算法是通过在图像中确定约1000到2000个候选框,然后对每个候选框内图像块缩放至相同大小,并输入到CNN内进行特征提取,最后对候选框中提取出的特征,使用分类器判别是否属于一个特定类。Fast-R-CNN算法开始也是通过在图像中确定约1000到2000个候选框,然后对整张图片输进CNN,得到feature map,找到每个候选框在feature map上的映射patch,将此patch作为每个候选框的卷积特征输入到SPP layer和之后的层,最后对候选框中提取出的特征,使用分类器判别是否属于一个特定类。Faster-R-CNN算法开始是对整张图片输进CNN,得到feature map,然后卷积特征输入到RPN,得到候选框的特征信息,最后对候选框中提取出的特征,使用分类器判别是否属于一个特定类。第三类是基于特征的场景分类,这种分类方法以物体特征为识别单位,根据场景中出现的物体特征来区分不同的场景。传统的基于特征的场景分类方法的好坏取决于场景分类技术中关键一步提取场景图像的特征,然而要提取出好的场景图像特征需要花费大量的时间和精力,同时这一过程需要启发式的经验。
发明内容
有鉴于此,为了解决现有技术中的上述问题,本发明提出一种基于云端的服务机器人场景分类系统及方法。
本发明通过以下技术手段解决上述问题:
一方面,本发明提供一种基于云端的服务机器人场景分类系统,包括:
场景,包括家庭或室内场景、公共场景;
服务机器人,用于通过摄像头获取当前场景图片,利用移动网络把场景图片发送到云服务器进行场景分类;
云服务器,用于根据已经部署训练好的神经网络模型进行场景分类。
进一步地,家庭或室内场景包含有客厅、卧室、厨房、卫生间、办公室、健身房;公共场景包含有海岸、森林、公路、山、野外、雪、街道、高楼、商店、工业区、加油站、药店、天空、篮球场。
进一步地,神经网络模型采用基于残差块的神经网络模型,其中输入的是一个256*256*3大小的场景图片;该神经网络模型首先是64个步长为2的7*7大小的卷积核,后面是一个最大池化层;然后是33个残差块,每个残差块有3个卷积层构成,包含1*1、3*3、1*1的卷积核大小,每个卷积层后面会有一个BN层,BN层后面是Relu激活函数;第一种残差块卷积核的个数分别为64、64、256,总共有3个这样的残差块;第二种残差块的卷积核个数分别为128、128、512,共有4个;第三种残差块的卷积核个数分别为256、256、1024,共有23个;第四种残差块的卷积核个数分别为512、512、2018,共有3个;最后面是一个输出为20个结点的全连接层。
进一步地,神经网络模型云端部署流程如下:
搭建场景分类的数据集和神经网络模型,根据输入场景数据集进行模型分布式训练;等模型训练完成、验证之后,模型会被发布到TensorFlow Serving系统服务器云端;服务器机器人通过gRPC协议和云端TensorFlow Serving系统服务器通讯,服务器机器人发送场景图片到云端,云端返回场景分类的预测结果。
进一步地,基于云端的服务机器人场景分类具体为:
首先在一个.proto文件内定义一个场景分类服务,指定其能够被远程调用的方法(包含参数和返回类型),如下所示:
service Class{
rpc ClassifyStream(PlaceRequest)returns(stream PlaceReply){}
}
这是一个请求流式RPC,服务机器人端写入一个场景图片消息序列并将其发送到云端服务器,通过在请求类型前指定stream关键字来指定一个服务机器人端的流方法;一旦服务机器人端完成写入消息,它等待云端服务器完成读取返回它的响应;接下来需要从.proto的服务定义中生成gRPC服务机器人端和服务器端的接口,通过protocol buffer的编译器protoc以及一个特殊的gRPC Python插件来完成;接口生成好后需要创建一个场景分类服务器,创建和运行场景分类服务可以分为两个部分:第一,实现我们服务定义的生成的服务接口:实现场景分类的函数;第二,运行一个gRPC服务器,监听来自服务机器人端的请求并传输服务的响应;最后服务器机器人通过一个存根调用云端服务的方法,这个方法可以实现场景的分类。
另一方面,本发明还提供一种基于云端的服务机器人场景分类方法,包括如下步骤:
A、场景数据集的建立;
B、神经网络模型本地训练和验证;
C、神经网络模型云端部署和测试;
D、基于云端的服务机器人场景分类。
进一步地,场景数据集的建立包含如下步骤:
A1、下载开源的场景数据集,挑选出相应的场景类别图片;
A2、利用服务机器人拍摄不同的场景图片;
A3、服务机器人拍摄出来的每个场景种类随机选择一部分图片作为验证数据集,剩下的拍摄场景图片和下载的场景图片合并作为训练数据集。
进一步地,神经网络模型采用基于残差块的神经网络模型,其中输入的是一个256*256*3大小的场景图片;该神经网络模型首先是64个步长为2的7*7大小的卷积核,后面是一个最大池化层;然后是33个残差块,每个残差块有3个卷积层构成,包含1*1、3*3、1*1的卷积核大小,每个卷积层后面会有一个BN层,BN层后面是Relu激活函数;第一种残差块卷积核的个数分别为64、64、256,总共有3个这样的残差块;第二种残差块的卷积核个数分别为128、128、512,共有4个;第三种残差块的卷积核个数分别为256、256、1024,共有23个;第四种残差块的卷积核个数分别为512、512、2018,共有3个;最后面是一个输出为20个结点的全连接层。
进一步地,神经网络模型云端部署流程如下:
搭建场景分类的数据集和神经网络模型,根据输入场景数据集进行模型分布式训练;等模型训练完成、验证之后,模型会被发布到TensorFlow Serving系统服务器云端;服务器机器人通过gRPC协议和云端TensorFlow Serving系统服务器通讯,服务器机器人发送场景图片到云端,云端返回场景分类的预测结果。
进一步地,基于云端的服务机器人场景分类具体为:
首先在一个.proto文件内定义一个场景分类服务,指定其能够被远程调用的方法(包含参数和返回类型),如下所示:
service Class{
rpc ClassifyStream(PlaceRequest)returns(stream PlaceReply){}
}
这是一个请求流式RPC,服务机器人端写入一个场景图片消息序列并将其发送到云端服务器,通过在请求类型前指定stream关键字来指定一个服务机器人端的流方法;一旦服务机器人端完成写入消息,它等待云端服务器完成读取返回它的响应;接下来需要从.proto的服务定义中生成gRPC服务机器人端和服务器端的接口,通过protocol buffer的编译器protoc以及一个特殊的gRPC Python插件来完成;接口生成好后需要创建一个场景分类服务器,创建和运行场景分类服务可以分为两个部分:第一,实现我们服务定义的生成的服务接口:实现场景分类的函数;第二,运行一个gRPC服务器,监听来自服务机器人端的请求并传输服务的响应;最后服务器机器人通过一个存根调用云端服务的方法,这个方法可以实现场景的分类。
与现有技术相比,本发明的有益效果至少包括:
本发明采用场景分类的深度学习网络模型应用于服务机器人的场景分类中,它可以自动的从图像中学习到隐藏在其内部的特征数据,同时该网络模型部署在云端,利用云端强大的计算能力场景分类结果可快速的从云端返回给服务机器人。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明基于云端的服务机器人场景分类系统的结构图;
图2是本发明基于云端的服务机器人场景分类方法的流程图;
图3是本发明残差块的结构示意图;
图4是本发明部分场景分类验证结果图;
图5是本发明模型云端部署的流程图;
图6是本发明云端场景分类结果图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面将结合附图和具体的实施例对本发明的技术方案进行详细说明。需要指出的是,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
如图1所示,本发明提供一种基于云端的服务机器人场景分类系统,该系统主要包括场景、服务机器人和云服务器三部分,其中场景是经常见到的一些场景,比如:家庭或室内场景有客厅、卧室、厨房、卫生间、办公室、健身房等;公共场景有海岸、森林、公路、山、野外、雪、街道、高楼、商店、工业区、加油站、药店、天空、篮球场等。服务器机器人通过摄像头获取当前场景图片,利用移动网络把场景图片发送到云服务器进行场景分类。云服务器已经部署了训练好的神经网络模型,可用于场景分类。
具体地,神经网络模型采用基于残差块的神经网络模型,其中输入的是一个256*256*3大小的场景图片;该神经网络模型首先是64个步长为2的7*7大小的卷积核,后面是一个最大池化层;然后是33个残差块,每个残差块有3个卷积层构成,包含1*1、3*3、1*1的卷积核大小,每个卷积层后面会有一个BN层,BN层后面是Relu激活函数;第一种残差块卷积核的个数分别为64、64、256,总共有3个这样的残差块;第二种残差块的卷积核个数分别为128、128、512,共有4个;第三种残差块的卷积核个数分别为256、256、1024,共有23个;第四种残差块的卷积核个数分别为512、512、2018,共有3个;最后面是一个输出为20个结点的全连接层。
具体地,神经网络模型云端部署流程如下:
搭建场景分类的数据集和神经网络模型,根据输入场景数据集进行模型分布式训练;等模型训练完成、验证之后,模型会被发布到TensorFlow Serving系统服务器云端;服务器机器人通过gRPC协议和云端TensorFlow Serving系统服务器通讯,服务器机器人发送场景图片到云端,云端返回场景分类的预测结果。
具体地,基于云端的服务机器人场景分类具体为:
首先在一个.proto文件内定义一个场景分类服务,指定其能够被远程调用的方法(包含参数和返回类型),如下所示:
service Class{
rpc ClassifyStream(PlaceRequest)returns(stream PlaceReply){}
}
这是一个请求流式RPC,服务机器人端写入一个场景图片消息序列并将其发送到云端服务器,通过在请求类型前指定stream关键字来指定一个服务机器人端的流方法;一旦服务机器人端完成写入消息,它等待云端服务器完成读取返回它的响应;接下来需要从.proto的服务定义中生成gRPC服务机器人端和服务器端的接口,通过protocol buffer的编译器protoc以及一个特殊的gRPC Python插件来完成;接口生成好后需要创建一个场景分类服务器,创建和运行场景分类服务可以分为两个部分:第一,实现我们服务定义的生成的服务接口:实现场景分类的函数;第二,运行一个gRPC服务器,监听来自服务机器人端的请求并传输服务的响应;最后服务器机器人通过一个存根调用云端服务的方法,这个方法可以实现场景的分类。
实施例2
如图2所示,本发明还提供一种基于云端的服务机器人场景分类方法,主要包括有以下步骤:
A、场景数据集的建立;
B、神经网络模型本地训练和验证;
C、神经网络模型云端部署和测试;
D、基于云端的服务机器人场景分类。
如何根据图像的视觉内容为图像赋予一个语义类别(例如,客厅、海岸、森林等)是图像场景分类的目标,也是图像检索、图像内容分析和目标识别等问题的基础。移动互联网时代的开启使得图片的获取与分享越来越容易,图片已经成为人们交互的重要媒介,网上有很多分享的图片已经被人们打上类别标签。另外随着现在计算机计算能力越来越强,有大量的场景分类的数据集公开出来,例如,Scene15共包含15类场景图片,每类图片有200至400张图片,共计4485张场景图片,平均每张图片的分辨率为300*250。AI Challenger场景数据集从400万张互联网图片中精选出8万张图片,分属于80个日常场景类别,例如航站楼、足球场等,每个场景类别包含600-1100张图片。Places2数据集总共包含一千多万张图片,有大概400多个场景的种类,每个种类分别包含5000到30000之间的图片。本发明场景数据集的建立主要包含三个步骤,第一,下载上述开源的场景数据集,挑选出相应的场景类别图片。第二,利用服务机器人拍摄不同的场景图片。第三,服务机器人拍摄出来的每个场景种类随机选择1000张图片作为验证数据集,剩下的拍摄场景图片和下载的场景图片合并作为训练数据集。
在神经网络的训练过程中会发现这样一些现象,就是随着神经网络深度的增加,模型的准确率会随着下降,通常这种下降是由于模型的过拟合造成的,但是在这里却不是由于模型的过拟合造成的,而是因为存在梯度消失和梯度爆炸的问题。为了避免这种情况,本发明采用了一种基于残差块的神经网络模型,如图3所示,假如要学习的特征是H(x),那么在第一个卷积层中可以学到的知识是F(x),那么如果令H(x)=F(x)+x的话,就可以添加一条捷径,使得网络在经过两个卷积层过后可以获得更好的结果,同时不丢失一些比较好的特征。
本发明使用的神经网络模型主要是由上面的残差块组成的,其中输入的是一个256*256*3大小的场景图片。该模型首先是64个步长为2的7*7大小的卷积核,后面是一个最大池化层。然后是33个残差块,每个残差块有3个卷积层构成,包含1*1、3*3、1*1的卷积核大小,每个卷积层后面会有一个BN层,BN层后面是Relu激活函数。第一种残差块卷积核的个数分别为64、64、256,总共有3个这样的残差块。第二种残差块的卷积核个数分别为128、128、512,共有4个。第三种残差块的卷积核个数分别为256、256、1024,共有23个。第四种残差块的卷积核个数分别为512、512、2018,共有3个。最后面是一个输出为20个结点的全连接层。基于残差块的神经网络模型搭建好后,通过已经建立好的场景训练数据集对这个神经网络模型进行训练。模型经过80个epoch训练完成后,利用场景验证数据集进行验证,图4所示是场景分类的验证结果。
TensorFlow Serving是Google开源的一个灵活的、高性能的机器学习模型服务系统,能够简化并加速从模型到生产应用的过程。它除了原生支持TensorFlow模型,还可以扩展支持其他类型的机器学习模型。如图5所示,本发明云端TensorFlow Serving模型服务系统的部署流程如下:搭建场景分类的数据集和神经网络模型,根据输入场景数据集进行模型分布式训练。等模型训练完成、验证之后,模型会被发布到TensorFlow Serving系统服务器云端。服务器机器人通过gRPC协议和云端TensorFlow Serving系统服务器通讯,服务器机器人发送场景图片到云端,云端返回场景分类的预测结果。
gRPC是一个高性能、开源和通用的RPC框架,面向移动和HTTP/2设计。基于HTTP/2标准设计给gRPC带来诸如双向流、流控、头部压缩、单TCP连接上的多复用请求等特性,这些特性使得gRPC在服务器机器人上表现更好,更省电和节省空间占用。另外服务机器人通过gRPC协议可以像调用本地对象一样直接调用云端服务器应用的方法,使得服务机器人能够更容易地利用云端服务器的计算资源,更快的预测出场景的分类。
首先在一个.proto文件内定义一个场景分类服务,指定其能够被远程调用的方法(包含参数和返回类型),如下所示:
service Class{
rpc ClassifyStream(PlaceRequest)returns(stream PlaceReply){}
}
这是一个请求流式RPC,服务机器人端写入一个场景图片消息序列并将其发送到云端服务器,通过在请求类型前指定stream关键字来指定一个服务机器人端的流方法。一旦服务机器人端完成写入消息,它等待云端服务器完成读取返回它的响应。接下来需要从.proto的服务定义中生成gRPC服务机器人端和服务器端的接口,可以通过protocolbuffer的编译器protoc以及一个特殊的gRPC Python插件来完成。接口生成好后需要创建一个场景分类服务器,创建和运行场景分类服务可以分为两个部分:第一,实现我们服务定义的生成的服务接口:实现场景分类的函数。第二,运行一个gRPC服务器,监听来自服务机器人端的请求并传输服务的响应。最后服务器机器人通过一个存根调用云端服务的方法,这个方法可以实现场景的分类,如图6所示,左边是服务机器人上传到云端的场景图片,右边是云端返回的场景分类结果,我们可以看到通过云端服务器返回的场景分类结果和本地的场景分类结果是一样的。
本发明采用场景分类的深度学习网络模型应用于服务机器人的场景分类中,它可以自动的从图像中学习到隐藏在其内部的特征数据,同时该网络模型部署在云端,利用云端强大的计算能力场景分类结果可快速的从云端返回给服务机器人。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种基于云端的服务机器人场景分类系统,其特征在于,包括:
场景,包括家庭或室内场景、公共场景;
服务机器人,用于通过摄像头获取当前场景图片,利用移动网络把场景图片发送到云服务器进行场景分类;
云服务器,用于根据已经部署训练好的神经网络模型进行场景分类。
2.根据权利要求1所述的基于云端的服务机器人场景分类系统,其特征在于,家庭或室内场景包含有客厅、卧室、厨房、卫生间、办公室、健身房;公共场景包含有海岸、森林、公路、山、野外、雪、街道、高楼、商店、工业区、加油站、药店、天空、篮球场。
3.根据权利要求1所述的基于云端的服务机器人场景分类系统,其特征在于,神经网络模型采用基于残差块的神经网络模型,其中输入的是一个256*256*3大小的场景图片;该神经网络模型首先是64个步长为2的7*7大小的卷积核,后面是一个最大池化层;然后是33个残差块,每个残差块有3个卷积层构成,包含1*1、3*3、1*1的卷积核大小,每个卷积层后面会有一个BN层,BN层后面是Relu激活函数;第一种残差块卷积核的个数分别为64、64、256,总共有3个这样的残差块;第二种残差块的卷积核个数分别为128、128、512,共有4个;第三种残差块的卷积核个数分别为256、256、1024,共有23个;第四种残差块的卷积核个数分别为512、512、2018,共有3个;最后面是一个输出为20个结点的全连接层。
4.根据权利要求1所述的基于云端的服务机器人场景分类系统,其特征在于,神经网络模型云端部署流程如下:
搭建场景分类的数据集和神经网络模型,根据输入场景数据集进行模型分布式训练;等模型训练完成、验证之后,模型会被发布到TensorFlow Serving系统服务器云端;服务器机器人通过gRPC协议和云端TensorFlow Serving系统服务器通讯,服务器机器人发送场景图片到云端,云端返回场景分类的预测结果。
5.根据权利要求1所述的基于云端的服务机器人场景分类系统,其特征在于,基于云端的服务机器人场景分类具体为:
首先在一个.proto文件内定义一个场景分类服务,指定其能够被远程调用的方法(包含参数和返回类型),如下所示:
service Class{
rpc ClassifyStream(PlaceRequest)returns(stream PlaceReply){}
}
这是一个请求流式RPC,服务机器人端写入一个场景图片消息序列并将其发送到云端服务器,通过在请求类型前指定stream关键字来指定一个服务机器人端的流方法;一旦服务机器人端完成写入消息,它等待云端服务器完成读取返回它的响应;接下来需要从.proto的服务定义中生成gRPC服务机器人端和服务器端的接口,通过protocol buffer的编译器protoc以及一个特殊的gRPC Python插件来完成;接口生成好后需要创建一个场景分类服务器,创建和运行场景分类服务可以分为两个部分:第一,实现我们服务定义的生成的服务接口:实现场景分类的函数;第二,运行一个gRPC服务器,监听来自服务机器人端的请求并传输服务的响应;最后服务器机器人通过一个存根调用云端服务的方法,这个方法可以实现场景的分类。
6.一种基于云端的服务机器人场景分类方法,其特征在于,包括如下步骤:
A、场景数据集的建立;
B、神经网络模型本地训练和验证;
C、神经网络模型云端部署和测试;
D、基于云端的服务机器人场景分类。
7.根据权利要求6所述的基于云端的服务机器人场景分类方法,其特征在于,场景数据集的建立包含如下步骤:
A1、下载开源的场景数据集,挑选出相应的场景类别图片;
A2、利用服务机器人拍摄不同的场景图片;
A3、服务机器人拍摄出来的每个场景种类随机选择一部分图片作为验证数据集,剩下的拍摄场景图片和下载的场景图片合并作为训练数据集。
8.根据权利要求6所述的基于云端的服务机器人场景分类方法,其特征在于,神经网络模型采用基于残差块的神经网络模型,其中输入的是一个256*256*3大小的场景图片;该神经网络模型首先是64个步长为2的7*7大小的卷积核,后面是一个最大池化层;然后是33个残差块,每个残差块有3个卷积层构成,包含1*1、3*3、1*1的卷积核大小,每个卷积层后面会有一个BN层,BN层后面是Relu激活函数;第一种残差块卷积核的个数分别为64、64、256,总共有3个这样的残差块;第二种残差块的卷积核个数分别为128、128、512,共有4个;第三种残差块的卷积核个数分别为256、256、1024,共有23个;第四种残差块的卷积核个数分别为512、512、2018,共有3个;最后面是一个输出为20个结点的全连接层。
9.根据权利要求6所述的基于云端的服务机器人场景分类方法,其特征在于,神经网络模型云端部署流程如下:
搭建场景分类的数据集和神经网络模型,根据输入场景数据集进行模型分布式训练;等模型训练完成、验证之后,模型会被发布到TensorFlow Serving系统服务器云端;服务器机器人通过gRPC协议和云端TensorFlow Serving系统服务器通讯,服务器机器人发送场景图片到云端,云端返回场景分类的预测结果。
10.根据权利要求6所述的基于云端的服务机器人场景分类方法,其特征在于,基于云端的服务机器人场景分类具体为:
首先在一个.proto文件内定义一个场景分类服务,指定其能够被远程调用的方法(包含参数和返回类型),如下所示:
service Class{
rpc ClassifyStream(PlaceRequest)returns(stream PlaceReply){}
}
这是一个请求流式RPC,服务机器人端写入一个场景图片消息序列并将其发送到云端服务器,通过在请求类型前指定stream关键字来指定一个服务机器人端的流方法;一旦服务机器人端完成写入消息,它等待云端服务器完成读取返回它的响应;接下来需要从.proto的服务定义中生成gRPC服务机器人端和服务器端的接口,通过protocol buffer的编译器protoc以及一个特殊的gRPC Python插件来完成;接口生成好后需要创建一个场景分类服务器,创建和运行场景分类服务可以分为两个部分:第一,实现我们服务定义的生成的服务接口:实现场景分类的函数;第二,运行一个gRPC服务器,监听来自服务机器人端的请求并传输服务的响应;最后服务器机器人通过一个存根调用云端服务的方法,这个方法可以实现场景的分类。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010009994.9A CN113076965A (zh) | 2020-01-06 | 2020-01-06 | 一种基于云端的服务机器人场景分类系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010009994.9A CN113076965A (zh) | 2020-01-06 | 2020-01-06 | 一种基于云端的服务机器人场景分类系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113076965A true CN113076965A (zh) | 2021-07-06 |
Family
ID=76608922
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010009994.9A Pending CN113076965A (zh) | 2020-01-06 | 2020-01-06 | 一种基于云端的服务机器人场景分类系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113076965A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113734649A (zh) * | 2021-09-17 | 2021-12-03 | 上海第二工业大学 | 一种垃圾分类装置及方法 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106027300A (zh) * | 2016-05-23 | 2016-10-12 | 深圳市飞仙智能科技有限公司 | 一种应用神经网络的智能机器人参数优化系统及方法 |
CN106446930A (zh) * | 2016-06-28 | 2017-02-22 | 沈阳工业大学 | 基于深层卷积神经网络的机器人工作场景识别方法 |
CN106680281A (zh) * | 2016-12-31 | 2017-05-17 | 中国科学技术大学 | 一种基于深度残差学习网络的柴油车尾气烟度检测方法 |
WO2017097190A1 (zh) * | 2015-12-08 | 2017-06-15 | 深圳前海达闼云端智能科技有限公司 | 一种云机器人系统、实现方法、机器人和机器人云平台 |
CN107092926A (zh) * | 2017-03-30 | 2017-08-25 | 哈尔滨工程大学 | 基于深度学习的服务机器人物体识别算法 |
CN107247957A (zh) * | 2016-12-16 | 2017-10-13 | 广州中国科学院先进技术研究所 | 一种基于深度学习和云计算的智能农产品分类方法及系统 |
CN108197633A (zh) * | 2017-11-24 | 2018-06-22 | 百年金海科技有限公司 | 基于TensorFlow的深度学习图像分类与应用部署方法 |
CN109658928A (zh) * | 2018-12-06 | 2019-04-19 | 山东大学 | 一种家庭服务机器人云端多模态对话方法、装置及系统 |
CN110046575A (zh) * | 2019-04-16 | 2019-07-23 | 浙江农林大学 | 基于改进残差网络的遥感图像场景分类方法 |
CN110210555A (zh) * | 2019-05-29 | 2019-09-06 | 西南交通大学 | 基于深度学习的钢轨鱼鳞伤损检测方法 |
CN110300078A (zh) * | 2019-07-01 | 2019-10-01 | 西安电子科技大学 | 基于课程学习的调制信号识别方法 |
-
2020
- 2020-01-06 CN CN202010009994.9A patent/CN113076965A/zh active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017097190A1 (zh) * | 2015-12-08 | 2017-06-15 | 深圳前海达闼云端智能科技有限公司 | 一种云机器人系统、实现方法、机器人和机器人云平台 |
CN106027300A (zh) * | 2016-05-23 | 2016-10-12 | 深圳市飞仙智能科技有限公司 | 一种应用神经网络的智能机器人参数优化系统及方法 |
CN106446930A (zh) * | 2016-06-28 | 2017-02-22 | 沈阳工业大学 | 基于深层卷积神经网络的机器人工作场景识别方法 |
CN107247957A (zh) * | 2016-12-16 | 2017-10-13 | 广州中国科学院先进技术研究所 | 一种基于深度学习和云计算的智能农产品分类方法及系统 |
CN106680281A (zh) * | 2016-12-31 | 2017-05-17 | 中国科学技术大学 | 一种基于深度残差学习网络的柴油车尾气烟度检测方法 |
CN107092926A (zh) * | 2017-03-30 | 2017-08-25 | 哈尔滨工程大学 | 基于深度学习的服务机器人物体识别算法 |
CN108197633A (zh) * | 2017-11-24 | 2018-06-22 | 百年金海科技有限公司 | 基于TensorFlow的深度学习图像分类与应用部署方法 |
CN109658928A (zh) * | 2018-12-06 | 2019-04-19 | 山东大学 | 一种家庭服务机器人云端多模态对话方法、装置及系统 |
CN110046575A (zh) * | 2019-04-16 | 2019-07-23 | 浙江农林大学 | 基于改进残差网络的遥感图像场景分类方法 |
CN110210555A (zh) * | 2019-05-29 | 2019-09-06 | 西南交通大学 | 基于深度学习的钢轨鱼鳞伤损检测方法 |
CN110300078A (zh) * | 2019-07-01 | 2019-10-01 | 西安电子科技大学 | 基于课程学习的调制信号识别方法 |
Non-Patent Citations (1)
Title |
---|
白云汉: "基于SLAM算法和深度神经网络的语义地图构建研究", 《计算机应用与软件》, vol. 35, no. 1, 31 January 2018 (2018-01-31), pages 183 - 189 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113734649A (zh) * | 2021-09-17 | 2021-12-03 | 上海第二工业大学 | 一种垃圾分类装置及方法 |
CN113734649B (zh) * | 2021-09-17 | 2022-07-19 | 上海第二工业大学 | 一种垃圾分类装置及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI773189B (zh) | 基於人工智慧的物體檢測方法、裝置、設備及儲存媒體 | |
CN109508678B (zh) | 人脸检测模型的训练方法、人脸关键点的检测方法和装置 | |
JP6116746B1 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
US20190311223A1 (en) | Image processing methods and apparatus, and electronic devices | |
JP2023003026A (ja) | 深層学習に基づく農村地域分けゴミ識別方法 | |
CN112651438A (zh) | 多类别图像的分类方法、装置、终端设备和存储介质 | |
Kadam et al. | Detection and localization of multiple image splicing using MobileNet V1 | |
CN110647817A (zh) | 基于MobileNet V3的实时人脸检测方法 | |
CN110796057A (zh) | 行人重识别方法、装置及计算机设备 | |
WO2021104125A1 (zh) | 禽蛋异常的识别方法、装置及系统、存储介质、电子装置 | |
WO2021129466A1 (zh) | 检测水印的方法、装置、终端及存储介质 | |
CN112581443A (zh) | 一种风力发电机叶片表面损伤轻量化识别方法 | |
WO2022247539A1 (zh) | 活体检测方法、估算网络处理方法、装置、计算机设备和计算机可读指令产品 | |
JP2022553252A (ja) | 画像処理方法、画像処理装置、サーバ、及びコンピュータプログラム | |
CN109299303B (zh) | 基于可变形卷积与深度网络的手绘草图检索方法 | |
CN110751072B (zh) | 基于知识嵌入图卷积网络的双人交互识别方法 | |
CN110942456B (zh) | 篡改图像检测方法、装置、设备及存储介质 | |
CN112084952B (zh) | 一种基于自监督训练的视频点位跟踪方法 | |
CN111178121A (zh) | 基于空间特征和深度特征强化技术的害虫图像定位识别方法 | |
CN115393635A (zh) | 一种基于超像素分割以及数据增强的红外小目标检测方法 | |
CN111507416A (zh) | 一种基于深度学习的吸烟行为实时检测方法 | |
CN113076965A (zh) | 一种基于云端的服务机器人场景分类系统及方法 | |
CN117315499A (zh) | 一种卫星遥感图像目标检测方法及系统 | |
CN113570615A (zh) | 一种基于深度学习的图像处理方法、电子设备及存储介质 | |
Yoon et al. | Shadow detection and removal from photo-realistic synthetic urban image using deep learning |
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 |