订单更正方法、装置和设备与流程

文档序号:24405968发布日期:2021-03-26 17:07阅读:135来源:国知局
订单更正方法、装置和设备与流程

1.本申请涉及订单更正技术领域,特别涉及一种订单更正方法、装置和设备。


背景技术:

2.快餐店,例如大食堂、便利店、智选饭堂等,以其菜品种类繁多、取餐速度较快等优点,深受人们的欢迎。在实际购餐中,消费者在众多种类的菜品中选择所需的菜品,然后取餐到收银台支付相应的价钱,完成交易。因此,在购餐过程中,对菜品的识别,是影响结算的主要因素之一。
3.现有的快餐店中,通常采用人工识别菜品,由收银人员依靠眼睛识别消费者所选菜品,然后计算总价格并结算,这样不仅消耗人力,结算速度缓慢,而且还存在人为误差,易导致价格结算出错,特别在工作繁忙或工作时间较久情况下,收银人员由于劳累或个人原因而导致价格结算的出错率明显增加。


技术实现要素:

4.本申请提供了一种订单更正方法、装置和设备,能够利用图像识别模型,对订单进行更正,降低出错率,适用性更广。
5.第一方面,本申请提供了一种订单更正方法,包括:
6.获取订单,所述订单包括一个或多个目标对象的标注,所述标注由预设图像识别模型对所述目标对象识别后获得;
7.检测到用户修改所述订单的第一操作;
8.响应于检测到的所述第一操作,确定一个或多个第一目标对象;
9.获得与每个所述第一目标对象对应的一个或多个第二目标对象的标注,其中,所述第二目标对象的标注由所述图像识别模型对所述第一目标对象识别后获得,每个所述第二目标对象与所述第一目标对象不相同;
10.检测到用户选取所述第二目标对象的第二操作;
11.响应于检测到的所述第二操作,基于被选取的所述第二目标对象的标注,更正所述订单。
12.第二方面,本申请提供了一种订单更正装置,包括:
13.订单获取模块,用于获取订单,所述订单包括一个或多个目标对象的标注,所述标注由预设图像识别模型对所述目标对象识别后获得;
14.第一操作检测模块,用于检测到用户修改所述订单的第一操作;
15.目标对象确定模块,用于响应于检测到的所述第一操作,确定一个或多个第一目标对象;
16.标注获得模块,用于获得与每个所述第一目标对象对应的一个或多个第二目标对象的标注,其中,所述第二目标对象的标注由所述图像识别模型对所述第一目标对象识别后获得,每个所述第二目标对象与所述第一目标对象不相同;
17.第二操作检测模块,用于检测到用户选取所述第二目标对象的第二操作;
18.订单更正模块,用于响应于检测到的所述第二操作,基于被选取的所述第二目标对象的标注,更正所述订单。
19.第三方面,本申请提供了一种订单更正设备,包括:
20.显示屏;一个或多个处理器;存储器;以及一个或多个计算机程序,其中所述一个或多个计算机程序被存储在所述存储器中,所述一个或多个计算机程序包括指令,当所述指令被所述设备执行时,使得所述设备执行以下步骤:
21.获取订单,所述订单包括一个或多个目标对象的标注,所述标注由预设图像识别模型对所述目标对象识别后获得;
22.检测到用户修改所述订单的第一操作;
23.响应于检测到的所述第一操作,确定一个或多个第一目标对象;
24.获得与每个所述第一目标对象对应的一个或多个第二目标对象的标注,其中,所述第二目标对象的标注由所述图像识别模型对所述第一目标对象识别后获得,每个所述第二目标对象与所述第一目标对象不相同;
25.检测到用户选取所述第二目标对象的第二操作;
26.响应于检测到的所述第二操作,基于被选取的所述第二目标对象的标注,更正所述订单。
27.第四方面,本申请提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行如第一方面所述的方法。
28.第五方面,本申请提供一种计算机程序,当所述计算机程序被计算机执行时,用于执行第一方面所述的方法。
29.在一种可能的设计中,第五方面中的程序可以全部或者部分存储在与处理器封装在一起的存储介质上,也可以部分或者全部存储在不与处理器封装在一起的存储器上。
附图说明
30.图1为本申请图像识别方法一个实施例的方法示意图;
31.图2为本申请图像识别方法一个实施例的流程示意图;
32.图3a为本申请图像识别方法一个实施例中对图像进行纹理检测的方法示意图;
33.图3b为本申请图像识别方法一个实施例中对图像灰度处理后得到的图像;
34.图3c为本申请图像识别方法一个实施例中对图像边缘检测处理后得到的图像;
35.图3d为本申请图像识别方法一个实施例中对图像闭运算处理后得到的图像;
36.图3e为本申请图像识别方法一个实施例中对图像腐蚀处理后得到的图像;
37.图3f为本申请图像识别方法一个实施例中对图像轮廓提取处理并填充后得到的图像;
38.图3g为本申请图像识别方法一个实施例中对图像二进制处理后得到的图像;
39.图3h为本申请图像识别方法一个实施例中目标对象的第二区域范围的图像示意图;
40.图4(a)和4(b)为本申请模型获得方法一个实施例的方法示意图;
41.图5为本申请模型获得方法一个实施例的流程示意图;
42.图6为本申请订单更正方法一个实施例的方法示意图;
43.图7a为本申请订单更正方法一个实施例的流程示意图;
44.图7b为本申请订单更正方法一个实施例的交互界面的订单显示示意图;
45.图7c为本申请订单更正方法一个实施例的交互界面的菜品纠错显示示意图;
46.图7d为本申请订单更正方法一个实施例的交互界面的菜品改价显示示意图;
47.图8为本申请图像识别装置一个实施例的结构示意图;
48.图9为本申请图像识别装置一个实施例中识别模块的结构示意图;
49.图10为本申请图像识别装置一个实施例中范围确定模块的结构示意图;
50.图11为本申请图像识别装置一个实施例中差异值检测模块的结构示意图;
51.图12为本申请模型获得装置一个实施例的结构示意图;
52.图13为本申请模型获得装置一个实施例中目标检测模块的结构示意图;
53.图14为本申请订单更正装置一个实施例的结构示意图;
54.图15为本申请订单更正装置一个实施例中标注获得模块的结构示意图;
55.图16为本申请订单更正装置一个实施例中订单获取模块的结构示意图;
56.图17为本申请电子设备一个实施例的结构示意图。
57.图18为本申请模型获得设备一个实施例的结构示意图。
58.图19为本申请订单更正设备一个实施例的结构示意图。
具体实施方式
59.本申请的实施方式部分使用的术语仅用于对本申请的具体实施例进行解释,而非旨在限定本申请。
60.现有的快餐店中,通常采用人工识别菜品,由收银人员依靠眼睛识别消费者所选菜品,然后计算总价格并结算,这样不仅消耗人力,结算速度缓慢,而且还存在人为误差,易导致价格结算出错,特别在工作繁忙或工作时间较久情况下,收银人员由于劳累或个人原因而导致价格结算的出错率明显增加。
61.为此,本申请提出一种订单更正方法、装置和设备,能够利用图像识别模型,对订单进行更正,降低出错率,适用性更广。
62.图1为本申请图像识别方法一个实施例的方法示意图。如图1和图2所示,上述图像识别方法可以包括:
63.s101、采集第一图像,所述第一图像包括一个或多个目标对象。
64.优选地,所述第一图像可以包括由相机或摄像头采集得到的图像,如rgb图像等。所述目标对象可以包括所述第一图像中的预设形状目标,如圆形、椭圆形等规则形状目标,或所述第一图像中的非预设形状目标,如不规则形状目标等。
65.举例地,在快餐店购餐过程中,用户可以将多个盛装菜品的餐具放置于餐盘中,将该餐盘放置于相机镜头(相机参数可以包括亮度、对比度、曝光率、分辨率等)下进行图像采集,得到所述第一图像。可以理解的是,所述餐具可以包括预设形状餐具(如圆形、椭圆形等规则形状)和非规则形状餐具(如不规则形状),所述第一图像中的所述预设形状目标可以对应于所述预设形状餐具,所述非预设形状目标可以对应于所述非预设形状餐具,在实际应用中,所述第一图像中可以包含所述预设形状目标或所述非预设形状目标,或者同时包
含所述预设形状目标和所述非预设形状目标,所述预设形状目标和所述非预设形状目标的数量和一般不大于6个。
66.s102、基于预设第一模式对所述第一图像进行目标检测,获得一个或多个所述目标对象的第一区域范围。
67.具体地,所述第一模式可以包括以预设形状对所述第一图像进行目标检测,所述预设形状可以包括圆形、椭圆形等规则形状,所述预设形状目标的形状与该预设形状基本一致。所述第一区域范围可以包括与所述目标对象(预设形状目标)对应的第一坐标和第一尺寸,所述第一坐标可以包括与所述预设形状目标对应的外接矩形的顶点坐标(如左上角坐标等),所述第一尺寸可以包括与所述预设形状目标对应的外接矩形的尺寸(如长或宽等)。也就是说,所述第一区域范围可以是由第一坐标和第一尺寸确定的矩形范围。需要指出的是,当所述第一图像中不包含预设形状目标(如预设形状目标)时,步骤s102中,得到该第一区域范围为空集。
68.在本实施例中,在步骤s102中,可以适用于检测所述第一图像中的预设形状目标,如圆形或椭圆形目标等。在执行所述步骤s102之前,需利用相机或摄像头对预设形状目标(如圆形或椭圆形餐具)进行拍摄采集餐具图像,测量获得该餐具图像中餐具的预设半径r,单位为像素。在步骤s102中,该预设形状基于该预设半径r确定。
69.举例地,步骤s102,包括:
70.s201、对所述第一图像(img_rgb)进行灰度处理,获得灰度图像img_gray1。
71.s202、以预设半径作为目标区间(如0.9r

1.1r等,即该预设形状为0.9r

1.1r的圆),对该灰度图像img_gray1进行霍夫圆检测,获得集合uc1,其中,所述集合uc1中每个元素包含圆心坐标(x,y)和半径r。
72.s203、对所述集合uc1进行清洗处理,获得集合uc2,其中,所述集合uc2可以包括被删除阴影后的集合uc1。
73.也就是说,所述集合uc1中通常包含由于对同一目标对象进行重复检测或该检测目标因为光照等因素产生的阴影,该阴影通常暗于被检测目标(即阴影对应的灰度值较小)。因此,步骤s203中,通过对所述集合uc1进行清洗处理,删除所述集合uc1中的阴影,以获得所述集合uc2,从而提高精确度。
74.举例地,步骤s203可以包括:遍历所述集合uc1中的元素,计算获得每个圆内像素灰度的平均值,确定所述集合uc1中圆心距小于预设半径(如0.5r等)的圆,并删除其中灰度值低于预设阈值的圆,得到所述集合uc2。
75.s204、基于所述集合uc2中圆的外接矩形,获得所述第一区域范围(如该外接矩形的集合uc3),其中,所述第一区域范围的第一坐标基于该外接矩形的顶点坐标(如左上角顶点坐标)确定,所述第一区域范围的第一尺寸基于该外接矩形的尺寸(如长和宽等)确定。
76.s103、基于预设第二模式对所述第一图像进行目标检测,获得一个或多个所述目标对象的第二区域范围。
77.具体地,所述第二模式可以包括对所述第一图像进行纹理检测。所述第二区域范围可以包括与所述第一图像中非预设形状目标对应的第二坐标和第二尺寸。
78.具体地,步骤s103中,所述第二坐标可以包括与所述非预设形状目标对应的外接矩形的顶点坐标(如左上角坐标等),所述第二尺寸可以包括与所述非预设形状目标对应的
外接矩形的尺寸(如长或宽等)。也就是说,所述第二区域范围可以是由第二坐标和第二尺寸确定的矩形范围。
79.举例地,如图3a所示,步骤s103可以包括:
80.s301、对所述第一图像进行灰度处理,获得灰度图像img_gray2,可选地,该灰度图像img_gray2可以经过高斯模糊降噪处理,以去除该灰度图像img_gray2中的噪声。图3b为本申请图像识别方法一个实施例中对图像灰度处理后得到的图像。
81.s302、基于边缘检测算子(如canny算子)对该灰度图像img_gray2进行边缘检测处理,获得经边缘检测后的图像img_canny,以获取图像纹理。图3c为本申请图像识别方法一个实施例中对图像边缘检测处理后得到的图像。
82.s303、对经边缘检测后的该图像img_canny进行形态学闭运算(先膨胀后腐蚀)处理,得到闭运算后的图像img_1。图3d为本申请图像识别方法一个实施例中对图像闭运算处理后得到的图像。
83.s304、对经闭运算后的图像img_1进行图像腐蚀处理,获得图像腐蚀处理后的图像img_2,可选地,该图像img_2中最外侧的轮廓可以进行涂黑处理,以去除该图像img_2中最外侧轮廓,以防止其对后续步骤产生影响。图3e为本申请图像识别方法一个实施例中对图像腐蚀处理后得到的图像。
84.s305、对经图像腐蚀处理后的图像img_2进行轮廓提取处理,筛选出长度大于预设长度t1的轮廓,并对其进行填充,获得图像img_3,该预设长度t1可以根据餐具的形状预设。图3f为本申请图像识别方法一个实施例中对图像轮廓提取处理并填充后得到的图像。
85.s305、对步骤s301中的灰度图像img_gray2进行二值处理,得到二值图像img_thresh。
86.s306、将该二值图像img_thresh和该图像img_3进行二进制处理,得到图像img_4,例如按位取与运算等。图3g为本申请图像识别方法一个实施例中对图像二进制处理后得到的图像。
87.s307、对该图像img_4进行轮廓提取,筛选出长度大于预设长度t1的轮廓,得到轮廓集合u1;
88.s308、计算该轮廓集合u1中所有轮廓的外接矩形的长和宽(或长宽比),筛选出长宽比低于预设比例的轮廓,得到轮廓集合u2。
89.s309、基于该轮廓集合u2,得到所述第二区域范围,其中,所述第二区域范围中的第二坐标可以包括该轮廓集合u2中轮廓的外接矩形的顶点坐标(如左上角坐标),所述第二尺寸可以包括该轮廓集合u2中轮廓的外接矩形的尺寸(如长和宽等)。也就是说,该轮廓集合u2中的轮廓对应于所述第一图像中目标的轮廓。图3h为本申请图像识别方法一个实施例中目标对象的第二区域范围的图像示意图,其中,p1和p2分别表示目标对象的第二区域范围。
90.值得一提的是,所述轮廓集合u2可以包括第一轮廓和第二轮廓,所述第一轮廓对应于所述第一图像中预设形状目标的轮廓,所述第二轮廓对应于所述第一图像中非预设形状目标的轮廓。相应地,所述第二区域范围还可以包括与所述预设形状目标对应的第三坐标和第三尺寸,所述预设形状目标可以包括所述第一图像中的预设形状目标(如圆形、椭圆形等规则形状目标)。所述第三坐标可以包括与所述预设形状目标对应的外接矩形的顶点
坐标(如左上角坐标等),所述第三尺寸可以包括与所述预设形状目标对应的外接矩形的尺寸(如长或宽等)。也就是说,所述第二区域范围中的第二坐标和第二尺寸基于所述轮廓集合u2中的第二轮廓的外接矩形的顶点和尺寸确定,所述第二区域范围中的第三坐标和第三尺寸基于所述轮廓集合u2中的第一轮廓的外接矩形的顶点和尺寸确定。
91.需要指出的是,当所述第一图像中不包含所述预设形状目标(如预设形状目标)和所述非预设形状目标(如非预设形状目标)时,步骤s103中,得到该第二区域范围为空集,同时,步骤s102中,得到该第一区域范围也为空集。
92.s104、基于所述第一区域范围及所述第二区域范围,确定第三区域范围。
93.可选地,所述第三区域范围可以由所述第一区域范围和所述第二区域范围进行合并得到。也就是说,所述第三区域范围可以包含全部的所述第一区域范围,和全部或部分的所述第二区域范围。
94.s105、对所述第三区域范围中的目标对象进行识别,得到所述目标对象的标注。
95.所述标注用于标注所述目标对象的信息,如图片、分类类别、名称、价格等。
96.在本实施例中,步骤s105中,可以包括:
97.s401、基于所述第三区域范围对所述第一图像进行裁剪,获得第二图像;
98.s402、将所述第二图像输入预设图像识别模型中,获得所述标注,所述图像识别模型包括第二图像与标注之间的映射关系。
99.所述第二图像可以包括第一目标图像和第二目标图像,所述第一目标图像基于所述第一区域范围对所述第一图像进行裁剪得到,所述第二目标图像基于所述第二区域范围对所述第一图像进行裁剪得到。
100.在本实施例中,基于所述第一区域范围的第一坐标和第一尺寸以矩形的形式对所述第一图像中预设形状目标进行裁剪(或剪切),得到所述第一目标图像,也就是说,所述第一目标图像可以包括所述第一图像中预设形状目标的外接矩形图像。相应地,基于所述第二区域范围的第二坐标和第二尺寸以矩形形式对所述第一图像中非预设形状目标进行裁剪(或剪切),得到所述第二目标图像,所述第二目标图像可以包括所述第二图像中非预设形状目标的外接矩形图像。
101.需要指出的是,该外接矩形图像可以通过裁剪(或剪切)去除预设形状目标或非预设形状目标以外的背景,以减少噪音。举例地,该预设形状目标或非预设形状目标对应于一定形状的餐具,该外接矩形图像对应于该餐具界定的外接矩形,该外接矩形图像中包含除该餐具以外的背景(如背景像素),通过裁剪将该外接矩形图像中的背景去除,得到去除背景后的第一目标图像或第二目标图像,其中,去除背景后的第一目标图像或第二目标图像包含该餐具(如预设形状目标或非预设形状目标)边缘界定的图像。
102.在本实施例中,所述图像识别模型可以包括所述第二图像与所述标注之间的映射关系,所述图像识别模块可以是通过训练得到的神经网络模型。进一步地,当所述第二图像输入至该图像识别模型中时,该图像识别模型可以输出置信度最高的标注。所述标注可以用于确定目标对象的分类(或类别)、名称或价格等信息。举例地,所述标注可以包括第一标注和第二标注,所述第一标注可以用于确定所述预设形状目标的类别或价格,所述第二标注可以用于确定所述非预设形状目标的类别或价格。
103.进一步地,所述目标标注可以用于生成订单,所述订单可以包括对应于该第一图
像中目标对象的名称、价格或总价格等信息,该订单可以直接展示于显示屏幕上,或者进行语音播报等,以供收银人员或用户确认是否无误,或支付相关费用等。
104.综上所述方法中的步骤s101至s105,能够检测该第一图像中预设形状目标(预设形状目标)或非预设形状目标(非预设形状目标),输出相对应的标注,以确定该预设形状目标或该非预设形状目标的信息(如类别、价格或名称等),从而实现了识别拍摄图像(如餐盘)中预设形状目标(如餐盘中的规则餐具)或非预设形状目标(如餐盘中的不规则餐具),适用范围更广,无需人工识别。
105.换句话说,在以预设形状(通常为规则形状)作为样本训练得到神经网络模型的方案中,在进行菜品识别时,通过摄像头采集盛放菜品的预设餐具图像,该预设餐具需要具备该预设形状或边缘等特征(通常为规则形状的餐具,如圆形餐具),通过识别该餐具的形状或边缘等特征,定位该菜品对应的图像,然后利用神经网络模型输出与该菜品对应的类别,完成结算。这种方案中神经网络模型仅适用于预设形状(如规则形状),要求菜品必须盛放于该预设餐具中,该预设餐具需要具备该预设形状或边缘等特征,才能够实现对菜品的识别,而对于不断更新的餐具形状或不规则形状的餐具,该方案无法适用,使用范围受限。而相对于该方案,在本申请实施例提供的方案中,不仅能够识别预设形状餐具,而且还能够识别非预设形状餐具,适应性更高。
106.其中一种可能的实现方式中,步骤s103、包括:
107.基于预设第二模式,在所述第一图像中对除所述第一区域范围外的区域进行目标检测,获得所述一个或多个所述目标对象的第二区域范围。
108.在步骤s103中,基于所述第一区域范围确定所述第一图像中预设形状目标对应的外接矩形,然后将该预设形状目标对应的该外接矩形进行擦除,以得到去除该外接矩形(即去除该预设形状目标)的第一图像,因此,去除预设形状目标(即该预设形状目标)后的第一图像中包含非预设形状目标(即该非预设形状目标)。
109.由于去除该预设形状目标后的所述第一图像中不存在该预设形状目标,因此,基于该第二模式对该第一图像进行目标检测,得到的该第二区域范围中不包含该预设形状目标对应的数据,即该第二区域范围中包含该非预设形状目标对应的数据(如与该非预设形状目标对应的第二坐标和第二尺寸等数据)。也就是说,步骤s103中,基于预设第二模式,在所述第一图像中对除所述第一区域范围外的区域进行目标检测,防止了因该预设形状目标的存在而导致步骤s103中对该第一图像中非预设形状目标的检测产生干扰,提高了数据检测的准确度,而且避免了重复检测的情况,提高了处理效率。
110.换句话说,步骤s102中能检测该第一图像中的预设形状目标(即预设形状目标),步骤s103中,可以同时检测该第一图像中的预设形状目标和非预设形状目标,因此,为防止该预设形状目标对步骤s103中检测非预设形状目标产生干扰,基于预设第二模式,在所述第一图像中对除所述第一区域范围外的区域进行目标检测,得到该第二区域范围,因此,该第二区域范围中包含了与该非预设形状目标对应的信息(如第二坐标和第二尺寸),并不包含与该预设形状目标对应的信息。
111.一般情况下,步骤s102中得到的第一区域范围的精度较高于步骤s103中得到第二区域范围的精度,因此,用于确定第一目标图像的第一区域范围由步骤s102获得,而不是由步骤s103获得,从而确保了该第一目标图像的准确度,同时,步骤s103中在去除了第一图像
中的预设形状目标对检测非预设形状目标的干扰的情况下,获得了该第二区域范围,提高了该第二区域范围的精度,从而提高了获得该第二目标图像的准确度。
112.其中一种可能的实现方式中,步骤s104,包括:
113.s501、检测所述第一区域范围与所述第二区域范围之间的重叠度;
114.s502、确定所述重叠度低于预设比例的第二区域范围;
115.s503、将所述第一区域范围和所述重叠度低于预设比例的第二区域范围进行合并,获得第三区域范围。
116.需要指出的是,步骤s103中,可以对该第一图像的全部区域进行目标检测,获得第二区域范围,因此,所述第一区域范围与所述第二区域范围之间可能存在完全重叠或部分重叠。
117.具体地,步骤s501中,遍历所有的所述第一区域范围,分别对比其与所述第二区域范围之间的重叠度,步骤s502中,若所述重叠度大于预设比例,则删除相应的所述第二区域范围,确定所述重叠度低于预设比例的第二区域范围。例如,其中一个第二区域范围与任意一个第一区域范围之间的重叠度大于预设比例,则确定该第二区域范围与第一区域范围的重叠度大于预设比例。优选地,所述预设比例为40%。步骤s503中,所述第一区域范围和所述重叠度低于预设比例的第二区域范围的集合为所述第三区域范围,且其中重叠度大于预设占比的数据以所述第一区域范围为准。
118.值得一提的是当所述第一图像中存在预设形状目标而不存在非预设形状目标(即存在预设形状目标而不存在非预设形状目标)时,全部的所述第二区域范围可能与所述第一区域范之间的重叠度均大于预设占比,即所述第一区域范围和所述重叠度低于预设比例的第二区域范围的并集为所述第一区域范围,即所述第三区域范围等于所述第一区域范围。
119.其中一种可能的实现方式中,所述第一图像包括第一帧图像和第二帧图像,在所述采集第一图像之后,在步骤s101之后,所述方法还包括:
120.s601、检测所述第一帧图像与所述第二帧图像之间的差异值;
121.s602、判断所述差异值是否大于预设阈值,若大于,则重新采集第一图像,若小于,则将所述第二帧图像作为所述第一图像。
122.具体地,相机可以采集多帧图像,所述第一帧图像与所述第二帧图像可以先后采集获得,所述第二帧图像是当前采集到的帧图像,所述第一帧图像可以是在所述第二帧图像之前采集到的前一帧图像。需要指出的是,所述第一帧图像可以是与所述第二帧图像同尺寸空白图像。
123.若相机采集所述第一图像时,被采集物体(如餐具或餐盘)处于运动状态(相对相机运动),则采集得到的第一帧图像与第二帧图像之间存在一定的差异,因此,通过检测第一帧图像与第二帧图像之间的差异值(如像素差等)是否大于预设阈值,来判断图像是否处于运动状态,若大于,则处于运动状态,则重新执行步骤s101,即重新采集第一图像,若小于,不处于运动状态,则可以将所述第二帧图像作为所述第一图像执行步骤s102以及后续步骤,从而降低动态模糊带来的影响,有利于降低gpu功耗。
124.其中一种可能的实现方式中,所述步骤601,包括:
125.s701、对所述第一帧图像进行灰度处理,获得第一灰度图像,所述第一灰度图像包
括第一像素值;
126.s702、对所述第二帧图像进行灰度处理,获得第二灰度图像,所述第二灰度图像包括第二像素值;
127.s703、基于所述第一灰度图像和所述第二灰度图像,获得差异图像,所述差异图像包括第三像素值,所述第三像素值基于所述第一像素值与所述第二像素值确定;
128.具体地,对所述第一灰度图像与所述第二灰度图像进行矩阵相减,并对结果矩阵内的各项数据进行绝对值处理,得到所述差异图像,其中,所述差异图像的第三像素值为所述第一像素值与所述第二像素值之间的差值绝对值。可以理解的是,所述差异图像可以反映所述第一图像与所述前一帧图像之间的差异情况。
129.s704、对所述差异图像进行二值处理,获得二值图像;
130.优选地,在二值处理过程中预设参数可以为20,即过滤了图像中像素(灰度)变化低于20的噪音,降低了噪音干扰。
131.s705、基于所述二值图像中的像素值,确定所述差异值。
132.具体地,步骤s705中,统计所述二值图像中像素值为255的像素数量(即为m1),计算该像素数量的占比(即为p),即所述差异值,其中,p=m1/w/h,w和h分别为所述二值图像的宽度和长度,单位为像素。
133.优选地,步骤s603中,所述预设阈值取15%,当所述差异值大于15%,则确定图像处于运动状态,认为被采集物体发生了运动,不执行后续的步骤(如步骤s102至s105),当所述差异值不大于15%,则确定图像不处于运动状态,认为该被采集物体没有发生运动,可以执行后续的步骤(如步骤s102至s105)。
134.可以理解的是,上述实施例中的部分或全部步骤骤或操作仅是示例,本申请实施例还可以执行其它操作或者各种操作的变形。此外,各个步骤可以按照上述实施例呈现的不同的顺序来执行,并且有可能并非要执行上述实施例中的全部操作。
135.图4(a)为本申请模型获得方法一个实施例的方法示意图。如图4(a)和图4(b)所示,上述模型获得方法可以包括:
136.a101、获取第一图像。
137.在步骤a101中,该第一图像可以包括由相机或摄像头(固定分辨率、不设自动曝光)采集获得的图像如rgb图像等,或者通过网络通信在外接电子设备或云端上获取的图片,或者通过读取获得被存储于可读存储介质中的图片等。
138.a102、对所述第一图像进行目标检测,获得所述第一图像中一个或多个目标对象的目标区域范围。
139.可以理解的是,所述目标区域范围可以包括与所述第一图像中目标对象对应的坐标和尺寸,所述第一图像中可以不包含目标对象,或者包含至少一个目标对象等,该目标对象可以是预设形状目标(如圆形、椭圆形等规则形状)或非预设形状目标(如不规则形状等)。所述第一区域范围中的坐标可以包括对应于该目标对象的外接矩形的顶点坐标(如左上角坐标),尺寸可以包括对应于该目标对象的外接矩形的长和宽等。
140.a103、检测所述目标区域范围是否为空集。
141.当所述第一图像中不包含目标时,该目标区域范围为空集,当所述第一图像中包含至少一个目标对象时,该目标区域范围不为空集。
142.a104、若所述目标区域范围不为空集,基于所述目标区域范围和所述第一图像,获得第二图像。
143.在步骤a104中,基于所述目标区域范围,对该第一图像中的目标对象进行裁剪(或剪切),得到所述第二图像。例如,以外接矩形的形式对所述第一图像中的目标对象进行裁剪,得到所述第二图像,其中,所述第二图像的坐标和尺寸对应于该目标对象的外接矩形的坐标和尺寸。
144.当所述目标区域范围为空集时,则确定所述第一图像中不包含目标对象,因此,操作人员可以选取另一张图像,重新执行步骤a101至步骤a103。
145.可以理解的是,所述方法可以重复执行步骤a101至a104,获得多个所述第二图像,以满足所需的样本数量。
146.进一步地,该方法可以对该第二图像进行背景剔除处理,具体步骤可以参考上述图像识别方法中的部分步骤,其功能或原理基本一致,在此不再赘述。
147.a105、将多个所述第二图像作为样本输入预设模型中进行训练,获得图像识别模型,所述图像识别模型包括所述第二图像与目标对象的标注之间的映射关系。
148.在步骤a105中,该预设模型可以包括神经网络模型等,该样本可以上传至云端服务器进行模型训练。每个第二图像在上传时均需要进行标注,该标注可以包括对该目标对象进行分类的类别、名称或价格等信息。为保证模型训练的稳定性,该样本的数量应当足够多,例如,同一分类(或类别)下的第二图像的数量至少为30张,新增的图像需按照对应的标注上传至该云端服务器,以便于更新模型。
149.举例地,该样本可以按照一定比例被分配至训练集和验证集,例如训练集占80%等,然后作为输入进行模型训练,得到该图像识别模型,该图像识别模型可以包括神经网络模型。当训练结束后,该图像识别模型可以被发送至应用图1所示方法的电子设备中,由该电子设备基于该图像识别模型进行图像识别。
150.进一步地,所述模型获得方法还可以包括,通过模型评价机制判断每一次数据更新是否对图像识别性能有增益,以保证数据更新的正确性。
151.具体地,数据更新是指在不增加样本种类的情况下,对该图像识别模型中的样本数据进行补充。比如,当该图像识别模型中存在n种目标类别(如菜品类别),通过数据更新后,第m种类别的样本数量(即图像数量)增加了k个,此时,可以采用模型评价机制对该图像识别模型进行模型评价。当然,该图像识别模型中的目标类别也可以进行更新(如增加类别或减少类别等),但此时,无需对该图像识别模型进行模型评价。
152.该模型评价机制可以包括:将原训练集即为t1,原模型即为m1,当有新数据(如预测错误的数据)作为样本被输入模型中时,其中80%被分配至该原训练集t1中,得到新训练集t2,同时其中20%被分配至验证集,得到新验证集v,对新训练集t2进行模型训练后,得到新模型m2,对比原模型m1和新模型m2在新验证集v上的准确率,若准确率高于预设值,则确定此次更新对图像识别性能有增益,否则,没有增益。
153.其中一种可能的实现方式中,所述目标区域范围包括第一区域范围和第二区域范围,步骤a102,包括:
154.a201、基于预设第一模式对所述第一图像进行目标检测,获得第一区域范围;
155.a202、基于预设第二模式对所述第一图像进行目标检测,获得第二区域范围。
156.可以理解的是,本实施例中步骤a201与上述图像识别方法中步骤s102的功能或原理基本一致,步骤a202与上述图像识别方法中步骤s103的功能或原理基本一致,在此不再赘述。
157.其中一种可能的实现方式中,步骤a202,包括:基于预设第二模式,在所述第一图像中除所述第一区域范围外的区域进行目标检测,获得所述第二区域范围。
158.其中一种可能的实现方式中,所述目标区域范围包括第一区域范围和第二区域范围,步骤a104,包括:
159.a401、检测所述第一区域范围与所述第二区域范围之间的重叠度;
160.a402、确定所述重叠度低于预设比例的第二区域范围;
161.a403、将所述第一区域范围和所述重叠度低于预设比例的第二区域范围进行合并,获得第三区域范围;
162.a404、基于所述第三区域范围对所述第一图像进行剪切,获得第二图像。
163.其中一种可能的实现方式中,在步骤a104之后,所述方法还包括:
164.a106、基于预设算子对所述第二图像进行纹理增强处理,获得纹理增强后的第二图像。
165.优选地,该算子可以包括二阶微分算子,如3x3的拉普拉斯纹理增强算子等。
166.具体地,该二阶微分算子可以由公式表示为:
[0167][0168]
在图像处理过程中,定义图像的中心点为f(x,y),即有3x3算子:
[0169]
0f(x,y

1)0f(x

1,y)f(x,y)f(x+1,y)0f(x,y+1)0
[0170]
因此,可以计算得到坐标f(x,y)像素的拉普拉斯变换值为:
[0171][0172]
由此可以得到3x3拉普拉斯算子op1:
[0173]
0101

41010
[0174]
引入算子op2(保留原图信息,基本不产生变换):
[0175]
000010000
[0176]
将算子op1和算子op2加权相减,并且保持算子内部参数和为1(图片总体灰度不
变),得到算子op3:
[0177]0‑
a0

ab

a0

a0
[0178]
其中,在算子op3中,a大于0,b大于0,b

4a=1。在本实施例中,在一定范围内以特定步长对a,b进行取值,分别计算其对该图像识别模型的影响,从而选取最优算子作为步骤a106中的该预设算子。如图5所示为a的取值与模型验证正确率的曲线图,横坐标为a,纵坐标为acc%(正确率)。
[0179]
举例地,假定图像(如所述第二图像)中目标区域的像素值如下表分布:
[0180]
x1x2x3x4x5x6x7x8x9
[0181]
该像素值与算子op3进行卷积计算,得到新的中心像素可以表示为:
[0182]
fcenter=b*x5

a*(x2+x4+x6+x8)
[0183]
以此方法依次处理该图像的全部像素点,即可得到卷积计算后的图像。随着a或b的取值的改变,该图像的纹理细节也随着改变,例如,随着a取值的不断增加,该图像的纹理细节也不断增强,从人眼视觉视角来看,表现为更加清晰,以实现对该图像的纹理增强。也就是说,通过对a和b的取值的调整,确定图像纹理增强最佳时的a和b的取值,从而确定该预设算子,基于该预设算子对该第二图像进行纹理增强后,有利于提高计算机对该第二图像进行分类识别的准确度,从人眼视觉角度来看,表现为更加清晰。而传统神经网络模型在对目标多次卷积之后,会使其纹理特征淡化,导致模型泛化能力不足,识别率低,需要人为介入校准,降低系统效率。
[0184]
图6为本申请订单更正方法一个实施例的方法示意图。如图6和图7a所示,上述订单更正方法可以包括:
[0185]
b101、获取订单,所述订单包括一个或多个目标对象的标注,所述标注由预设图像识别模型对所述目标对象识别后获得。
[0186]
本实施例中,所述目标对象可以包括对摄像头或相机采集的图像中的目标(预设形状目标或非预设形状目标),或者通过网络通信在外接电子设备或云端上获取的图片中的目标,或者通过读取获得被存储于可读存储介质中的图片中的目标等。例如所述目标对象可以是一个菜品,所述图像可以是该菜品图像。所述订单可以包括所述目标对象对应的图片、名称、价格或总价格等。
[0187]
该订单中可以在电子屏幕上显示与该标注对应的目标图像、名称、单价或总价等,如显示每个菜品的图像、价格以及总价等,以供用于收银人员或消费者进行账单确认或结账等,例如二维码扫描结账等。
[0188]
其中一种可选的实施方式中,在本实施例中,步骤b101,包括:
[0189]
b201、采集第一图像,所述第一图像包括一个或多个所述目标对象;
[0190]
b202、基于预设第一模式对所述第一图像进行目标检测,获得一个或多个所述目标对象的第一区域范围;
[0191]
b203、基于预设第二模式对所述第一图像进行目标检测,获得一个或多个所述目
标对象的第二区域范围;
[0192]
b204、基于所述第一区域范围及所述第二区域范围,确定第三区域范围;
[0193]
b205、基于所述第三区域范围对所述第一图像进行裁剪,获得第二图像;
[0194]
b206、将所述第二图像输入所述图像识别模型中,获得所述标注,基于所述标注生成订单。
[0195]
可以理解的是,根据该标注在预设价目表中进行查询,获得该订单。
[0196]
可以理解的是,步骤b201至步骤b206可以参照上述图像识别方法和/或上述模型获得方法实施例中的部分步骤或功能,在此不再赘述。
[0197]
b102、检测到用户修改所述订单的第一操作。
[0198]
b103、响应于检测到的所述第一操作,确定一个或多个第一目标对象。
[0199]
举例地,由收银人员或用户进行订单核对,以发现订单中是否存在错误信息。所述错误信息可以包括与所述目标图像不对应的错误图像、错误价格等,例如,当用户(如收银人员或消费者)发现该订单中的某个菜品的价格显示错误,或与菜品的实际价格不一致时,用户可以点击选中错误的菜品(即第一操作),即所述第一目标对象对应于该错误信息。可见,该第一目标对象是用户针对订单中所包含的一个或多个目标对象进行选择操作(可包含但不限于点击操作、手势选择操作等)后确定出的目标对象。
[0200]
b104、获得与每个所述第一目标对象对应的一个或多个第二目标对象的标注,其中,所述第二目标对象的标注由所述图像识别模型对所述第一目标对象识别后获得,每个所述第二目标对象与所述第一目标对象不相同。
[0201]
其中一种可能的实现方式中,所述第一目标对象的标注和一个或多个所述第二目标对象的标注由所述图像识别模型对所述第一目标对象识别后按置信度排名输出获得。可选地,所述第二目标对象的标注的置信度排名在前五范围内。也就是说,该图像识别模型可以输出置信度排名前五的标注。
[0202]
图7b为本申请订单更正方法一个实施例的交互界面的订单显示示意图,其中,交互界面j1可以包含支付画面q1以及菜品t1、菜品t2、菜品t3等。支付画面q1可以包括订单总价(待支付价格)、用户信息(如姓名、账号或余额等)以及菜品信息(如蛋白质含量、脂肪含量等)。菜品t1可以包括菜品t1图像、名称以及价格t01等,菜品t2可以包括菜品t2图像、名称以及价格t02等,菜品t3可以包括菜品t3图像、名称以及价格t03等。
[0203]
图7c为本申请订单更正方法一个实施例的交互界面的菜品纠错显示示意图,其中,交互界面j2中可以包含价格修改画面q2以及按置信度排名输出的多个标注(如菜品n1、菜品n2、菜品n3、菜品n4以及菜品n5)。也就是说,交互界面j1中菜品t1、菜品t2以及菜品t3可以包含菜品纠错链接,该链接可以触发显示交互界面j2,例如,当用户发现菜品t1错误时,用户可以点击交互界面j1中的菜品t1,进入交互界面j2,此时,交互界面j2中显示根据菜品t1按置信度排名输出的5个菜品(即菜品n1、菜品n2、菜品n3、菜品n4以及菜品n5)及其相应的价格,而且,用户还可以在交互界面j2中的价格修改画面q2中输入相应菜品的修改价格等,以实现菜品纠错,并更正订单。
[0204]
b105、检测到用户选取所述第二目标对象的第二操作。
[0205]
b106、响应于检测到的所述第二操作,基于被选取的所述第二目标对象的标注,更正所述订单。
[0206]
也就是说,所述第二目标对象的标注可以显示于屏幕上,当用户发现其中存在正确信息时,用户可以点击该正确信息(即第二操作),以确定被选取的所述第二目标对象的标注,更正所述订单。
[0207]
当所述订单中不存在错误信息时,可以由该订单进行结账,如二维码扫描支付等,以完成交易。
[0208]
也就是说,收银人员或用户可以核对所述第二目标对象的标注中是否存在正确信息(即被选取的第二目标对象的标注),当存在正确信息时,可以基于该正确信息更正上述订单,然后进行结账,完成交易。例如,该正确价格于该目标的实际价格一致,收银人员或用户可以点击选中该正确价格,对该订单进行更正,以得到正确的订单,有利于降低结账错误的风险度。
[0209]
进一步地,当多个该可选价格中不存在正确价格时,收银人员或用户可以在设备交互屏幕上直接输入正确信息(如该菜品的正确价格),以更正该订单,然后进行结账,完成交易。图7d为本申请订单更正方法一个实施例的交互界面的菜品改价显示示意图,其中,交互界面j3中可以包含修改菜品r1以及修改价格r2。也就是说,当交互界面j2中不存在正确菜品或价格时,交互界面j2中可以提供一个菜品改价链接,当用户点击该菜品改价链接时,进入交互界面j3,然后用户可以在交互界面j3中修改菜品r1中输入正确菜品名称,在修改价格r2中输入正确菜品价格,以实现菜品改价,更正订单。
[0210]
值得一提的是,该错误信息对应的图像可以作为样本输入上述模型获得方法中进行数据更新,具体方法可以参考上述模型获得方法中的部分步骤,在此不再赘述。
[0211]
其中一种可能的实现方式中,步骤b104,包括:
[0212]
b301、对所述第一目标对象进行识别;
[0213]
b302、输出按置信度排名的一个或多个第二目标对象的标注。
[0214]
也就是说,响应所述第一操作,所述图像识别模型重新对所述第一目标对象进行识别,然后输出按置信度排名的一个或多个第二目标对象的标注。
[0215]
其中一种可能的实现方式中,所述图像识别模型由多个所述第二图像作为样本输入预设模型中进行训练获得。具体方式可以参考上述模型获得方法中的步骤或功能,在此不再赘述。
[0216]
图8所示为本申请图像识别装置100一个实施例的结构示意图。如图8所示,上述图像识别装置100可以包括:
[0217]
图像采集模块110,用于采集第一图像,所述第一图像包括一个或多个目标对象;
[0218]
第一检测模块120,用于基于预设第一模式对所述第一图像进行目标检测,获得一个或多个所述目标对象的第一区域范围;
[0219]
第二检测模块130,用于基于预设第二模式对所述第一图像进行目标检测,获得一个或多个所述目标对象的第二区域范围;
[0220]
范围确定模块140,用于基于所述第一区域范围及所述第二区域范围,确定第三区域范围;
[0221]
识别模块150,用于对所述第三区域范围中的目标对象进行识别,得到所述目标对象的标注。
[0222]
其中一种可能的实现方式中,如图9所示,所述识别模块150,包括:
[0223]
图像处理模块151,用于基于所述第三区域范围对所述第一图像进行裁剪,获得第二图像;
[0224]
输出模块152,用于将所述第二图像输入预设图像识别模型中,获得所述标注,所述图像识别模型包括第二图像与标注之间的映射关系。
[0225]
其中一种可能的实现方式中,所述第二检测模块130包括:
[0226]
基于预设第二模式,在所述第一图像中对除所述第一区域范围外的区域进行目标检测,获得所述一个或多个所述目标对象的第二区域范围。
[0227]
其中一种可能的实现方式中,如图10所示,所述范围确定模块140包括:
[0228]
重叠度检测模块141,用于检测所述第一区域范围与所述第二区域范围之间的重叠度;
[0229]
重叠度判断模块142,用于确定所述重叠度低于预设比例的第二区域范围;
[0230]
合并模块143,用于将所述第一区域范围和所述重叠度低于预设比例的第二区域范围进行合并,获得第三区域范围。
[0231]
其中一种可能的实现方式中,如图11所示,所述第一图像包括第一帧图像和第二帧图像,所述装置还包括:
[0232]
差异值检测模块160,用于检测所述第一帧图像与所述第二帧图像之间的差异值;
[0233]
差异值判断模块170,用于判断所述差异值是否大于预设阈值,若所述差异值大于所述预设阈值,则重新采集所述第一图像。
[0234]
其中一种可能的实现方式中,所述差异值检测模块160包括:
[0235]
第一灰度处理模块161,用于对所述第一帧图像进行灰度处理,获得第一灰度图像,所述第一灰度图像包括第一像素值;
[0236]
第二灰度处理模块162,用于对所述第二帧图像进行灰度处理,获得第二灰度图像,所述第二灰度图像包括第二像素值;
[0237]
差异图像获得模块163,用于基于所述第一灰度图像和所述第二灰度图像,获得差异图像,所述差异图像包括第三像素值,所述第三像素值基于所述第一像素值与所述第二像素值确定;
[0238]
二值处理模块164,用于对所述差异图像进行二值处理,获得二值图像;
[0239]
差异值计算模块165,用于基于所述二值图像中的像素值,确定所述差异值。
[0240]
可以理解的是,图8所示实施例提供的图像识别装置可用于执行本申请图1所示方法实施例的技术方案,其实现原理和技术效果可以进一步参考方法实施例中的相关描述。
[0241]
图12为本申请模型获得装置200一个实施例的结构示意图。如图12所示,上述模型获得装置200可以包括:
[0242]
图像获取模块210,用于获取第一图像;
[0243]
目标检测模块220,用于对所述第一图像进行目标检测,获得所述第一图像中一个或多个目标对象的目标区域范围;
[0244]
空集检测模块230,用于检测所述目标区域范围是否为空集;
[0245]
图像处理模块240,用于若所述目标区域范围不为空集,基于所述目标区域范围和所述第一图像,获得第二图像;
[0246]
模型获得模块250,用于将多个所述第二图像作为样本输入预设模型中进行训练,
获得图像识别模型,所述图像识别模型包括所述第二图像与目标对象的标注之间的映射关系。
[0247]
其中一种可能的实现方式中,如图13所示,所述目标检测模块220包括:
[0248]
第一检测模块221,用于基于预设第一模式对所述第一图像进行目标检测,获得一个或多个目标对象的第一区域范围;
[0249]
第二检测模块222,用于基于预设第二模式对所述第一图像进行目标检测,获得一个或多个目标对象的第二区域范围;
[0250]
范围确定模块223,用于基于所述第一区域范围和所述第二区域范围,确定所述目标区域范围。
[0251]
其中一种可能的实现方式中,所述第二检测模块222包括:
[0252]
基于预设第二模式,在所述第一图像中除所述第一区域范围外的区域进行目标检测,获得所述第二区域范围。
[0253]
其中一种可能的实现方式中,所述图像处理模块240包括:
[0254]
基于所述目标区域范围对所述第一图像进行裁剪,获得所述二图像。
[0255]
其中一种可能的实现方式中,所述装置200还包括:
[0256]
纹理增强模块260,用于基于预设算子对所述第二图像进行纹理增强处理,获得纹理增强后的第二图像。
[0257]
图12所示实施例提供的模型获得装置200可用于执行本申请图4所示方法实施例的技术方案,其实现原理和技术效果可以进一步参考方法实施例中的相关描述。
[0258]
图14所示为本申请订单更正装置300一个实施例的结构示意图。如图14所示,上述订单更正装置300可以包括:
[0259]
订单获取模块310,用于获取订单,所述订单包括一个或多个目标对象的标注,所述标注由预设图像识别模型对所述目标对象识别后获得;
[0260]
第一操作检测模块320,用于检测到用户修改所述订单的第一操作;
[0261]
目标对象确定模块330,用于响应于检测到的所述第一操作,确定一个或多个第一目标对象;
[0262]
标注获得模块340,用于获得与每个所述第一目标对象对应的一个或多个第二目标对象的标注,其中,所述第二目标对象的标注由所述图像识别模型对所述第一目标对象识别后获得,每个所述第二目标对象与所述第一目标对象不相同;
[0263]
第二操作检测模块350,用于检测到用户选取所述第二目标对象的第二操作;
[0264]
订单更正模块360,用于响应于检测到的所述第二操作,基于被选取的所述第二目标对象的标注,更正所述订单。
[0265]
其中一种可能的实现方式中,所述第一目标对象的标注和一个或多个所述第二目标对象的标注由所述图像识别模型对所述第一目标对象识别后按置信度排名输出获得。
[0266]
其中一种可能的实现方式中,所述标注获得模块340包括:
[0267]
目标对象识别模块341,用于对所述第一目标对象进行识别;
[0268]
标注输出模块342,用于输出按置信度排名的一个或多个第二目标对象的标注。
[0269]
其中一种可能的实现方式中,所述订单获取模块310包括:
[0270]
图像采集模块311,用于采集第一图像,所述第一图像包括一个或多个所述目标对
象;
[0271]
第一检测模块312,用于基于预设第一模式对所述第一图像进行目标检测,获得一个或多个所述目标对象的第一区域范围;
[0272]
第二检测模块313,用于基于预设第二模式对所述第一图像进行目标检测,获得一个或多个所述目标对象的第二区域范围;
[0273]
范围确定模块314,用于基于所述第一区域范围及所述第二区域范围,确定第三区域范围;
[0274]
图像处理模块315,用于基于所述第三区域范围对所述第一图像进行裁剪,获得第二图像;
[0275]
订单生成模块316,用于将所述第二图像输入所述图像识别模型中,获得所述标注,基于所述标注生成订单。
[0276]
其中一种可能的实现方式中,所述图像识别模型由多个所述第二图像作为样本输入预设模型中进行训练获得。
[0277]
图14所示实施例提供的订单更正装置300可用于执行本申请图6所示方法实施例的技术方案,其实现原理和技术效果可以进一步参考方法实施例中的相关描述。
[0278]
应理解以上图8~图16所示的图像识别装置、模型获得装置以及订单更正装置的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块以软件通过处理元件调用的形式实现,部分模块通过硬件的形式实现。例如,检测模块可以为单独设立的处理元件,也可以集成在电子设备的某一个芯片中实现。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
[0279]
例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(application specific integrated circuit;以下简称:asic),或,一个或多个微处理器(digital singnal processor;以下简称:dsp),或,一个或者多个现场可编程门阵列(field programmable gate array;以下简称:fpga)等。再如,这些模块可以集成在一起,以片上系统(system

on

a

chip;以下简称:soc)的形式实现。
[0280]
图17为本申请电子设备一个实施例的结构示意图,如图17所示,上述电子设备可以包括:显示屏;一个或多个处理器;存储器;以及一个或多个计算机程序。
[0281]
其中,上述显示屏可以包括计算机(移动数据中心mobile data center)的显示屏;上述电子设备可以为移动终端(手机),收银设备,计算机,智慧屏,无人机,智能网联车(intelligent connected vehicle;以下简称:icv),智能(汽)车(smart/intelligent car)或车载设备等设备。
[0282]
其中上述一个或多个计算机程序被存储在上述存储器中,上述一个或多个计算机程序包括指令,当上述指令被上述设备执行时,使得上述设备执行以下步骤:
[0283]
采集第一图像,所述第一图像包括一个或多个目标对象;
[0284]
基于预设第一模式对所述第一图像进行目标检测,获得一个或多个所述目标对象的第一区域范围;
[0285]
基于预设第二模式对所述第一图像进行目标检测,获得一个或多个所述目标对象的第二区域范围;
[0286]
基于所述第一区域范围及所述第二区域范围,确定第三区域范围;
[0287]
对所述第三区域范围中的目标对象进行识别,得到所述目标对象的标注。
[0288]
其中一种可能的实现方式中,当所述指令被所述设备执行时,使得所述设备执行所述对所述第三区域范围中的目标对象进行识别,得到所述目标对象的标注的步骤,包括:
[0289]
基于所述第三区域范围对所述第一图像进行裁剪,获得第二图像;
[0290]
将所述第二图像输入预设图像识别模型中,获得所述标注,所述图像识别模型包括第二图像与标注之间的映射关系。
[0291]
其中一种可能的实现方式中,当所述指令被所述设备执行时,使得所述设备执行所述基于预设第二模式对所述第一图像进行目标检测,获得一个或多个所述目标对象的第二区域范围的步骤,包括:
[0292]
基于预设第二模式,在所述第一图像中对除所述第一区域范围外的区域进行目标检测,获得所述一个或多个所述目标对象的第二区域范围。
[0293]
其中一种可能的实现方式中,当所述指令被所述设备执行时,使得所述设备执行所述基于所述第一区域范围及所述第二区域范围,确定第三区域范围的步骤,包括:
[0294]
检测所述第一区域范围与所述第二区域范围之间的重叠度;
[0295]
确定所述重叠度低于预设比例的第二区域范围;
[0296]
将所述第一区域范围和所述重叠度低于预设比例的第二区域范围进行合并,获得第三区域范围。
[0297]
其中一种可能的实现方式中,所述第一图像包括第一帧图像和第二帧图像,当所述指令被所述设备执行时,使得所述设备执行所述采集第一图像的步骤之后,所述设备还执行步骤:
[0298]
检测所述第一帧图像与所述第二帧图像之间的差异值;
[0299]
判断所述差异值是否大于预设阈值,若所述差异值大于所述预设阈值,则重新采集第一图像。
[0300]
其中一种可能的实现方式中,当所述指令被所述设备执行时,使得所述设备执行所述检测所述第一帧图像与所述第二帧图像之间的差异值的步骤,包括:
[0301]
对所述第一帧图像进行灰度处理,获得第一灰度图像,所述第一灰度图像包括第一像素值;
[0302]
对所述第二帧图像进行灰度处理,获得第二灰度图像,所述第二灰度图像包括第二像素值;
[0303]
基于所述第一灰度图像和所述第二灰度图像,获得差异图像,所述差异图像包括第三像素值,所述第三像素值基于所述第一像素值与所述第二像素值确定;
[0304]
以预设参数对所述差异图像进行二值处理,获得二值图像;
[0305]
基于所述二值图像中的像素值,确定所述差异值。
[0306]
图17所示的电子设备可以是收银设备也可以是内置于上述收银设备的电路设备。该设备可以用于执行本申请图1所示实施例提供的图像识别方法中的功能/步骤。
[0307]
如图17所示,电子设备900包括处理器910和显示单元920。可选地,该电子设备900
还可以包括存储器930。其中,处理器910、显示单元920和存储器930之间可以通过内部连接通路互相通信,传递控制和/或数据信号,该存储器930用于存储计算机程序,该处理器910用于从该存储器930中调用并运行该计算机程序。
[0308]
上述存储器930可以是只读存储器(read

only memory,rom)、可存储静态信息和指令的其它类型的静态存储设备、随机存取存储器(random access memory,ram)或可存储信息和指令的其它类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read

only memory,eeprom)、只读光盘(compact disc read

only memory,cd

rom)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备,或者还可以是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质等。
[0309]
上述处理器910可以和存储器930可以合成一个处理装置,更常见的是彼此独立的部件,处理器910用于执行存储器930中存储的程序代码来实现上述功能。具体实现时,该存储器930也可以集成在处理器910中,或者,独立于处理器910。
[0310]
除此之外,为了使得电子设备900的功能更加完善,该电子设备900还可以包括摄像头940、电源950、输入单元960等中的一个或多个。其中,显示单元920可以包括显示屏。
[0311]
可选地,电源950用于给终端设备中的各种器件或电路提供电源。
[0312]
应理解,图17所示的电子设备900能够实现本申请图1所示实施例提供的方法的各个过程。电子设备900中的各个模块的操作和/或功能,分别为了实现上述方法实施例中的相应流程。具体可参见本申请图1所示方法实施例中的描述,为避免重复,此处适当省略详细描述。
[0313]
应理解,图17所示的电子设备900中的处理器910可以是片上系统soc,该处理器910中可以包括中央处理器(central processing unit;以下简称:cpu),还可以进一步包括其他类型的处理器,例如:图像处理器(graphics processing unit;以下简称:gpu)等。
[0314]
总之,处理器910内部的各部分处理器或处理单元可以共同配合实现之前的方法流程,且各部分处理器或处理单元相应的软件程序可存储在存储器930中。
[0315]
图18所示为本申请模型获得设备900a的一个实施例的结构示意图。如图18所示,上述模型获得设备900a可以包括:
[0316]
一个或多个处理器910a;存储器920a;以及一个或多个计算机程序,其中所述一个或多个计算机程序被存储在所述存储器中,所述一个或多个计算机程序包括指令,当所述指令被所述设备执行时,使得所述设备900a执行以下步骤:
[0317]
获取第一图像;
[0318]
对所述第一图像进行目标检测,获得所述第一图像中一个或多个目标对象的目标区域范围;
[0319]
检测所述目标区域范围是否为空集;
[0320]
若所述目标区域范围不为空集,基于所述目标区域范围和所述第一图像,获得第二图像;
[0321]
将多个所述第二图像作为样本输入预设模型中进行训练,获得图像识别模型,所述图像识别模型包括所述第二图像与目标对象的标注之间的映射关系。
[0322]
其中一种可能的实现方式中,当所述指令被所述设备执行时,使得所述设备执行所述对所述第一图像进行目标检测,获得所述第一图像中一个或多个目标对象的目标区域范围的步骤,包括:
[0323]
基于预设第一模式对所述第一图像进行目标检测,获得一个或多个目标对象的第一区域范围;
[0324]
基于预设第二模式对所述第一图像进行目标检测,获得一个或多个目标对象的第二区域范围;
[0325]
基于所述第一区域范围和所述第二区域范围,确定所述目标区域范围。
[0326]
其中一种可能的实现方式中,当所述指令被所述设备执行时,使得所述设备执行所述基于预设第二模式对所述第一图像进行目标检测,获得一个或多个目标对象的第二区域范围的步骤,包括:
[0327]
基于预设第二模式,在所述第一图像中除所述第一区域范围外的区域进行目标检测,获得所述第二区域范围。
[0328]
其中一种可能的实现方式中,当所述指令被所述设备执行时,使得所述设备执行所述基于所述目标区域范围和所述第一图像,获得第二图像的步骤,包括:
[0329]
基于所述目标区域范围对所述第一图像进行裁剪,获得所述二图像。
[0330]
其中一种可能的实现方式中,当所述指令被所述设备执行时,使得所述设备执行所述基于所述目标区域范围和所述第一图像,获得第二图像之后,所述设备还执行步骤:
[0331]
基于预设算子对所述第二图像进行纹理增强处理,获得纹理增强后的第二图像。
[0332]
图18所示的模型获得设备可以是计算机,终端设备或云端服务器等。该设备可以用于执行本申请图4所示实施例提供的模型获得方法中的功能/步骤。
[0333]
图19所示为本申请一个实施例的订单更正设备900b的结构示意图。如图19所示,上述订单更正设备900可以包括:
[0334]
显示屏;一个或多个处理器;存储器;以及一个或多个计算机程序,其中所述一个或多个计算机程序被存储在所述存储器中,所述一个或多个计算机程序包括指令,当所述指令被所述设备执行时,使得所述设备执行以下步骤:
[0335]
获取订单,所述订单包括一个或多个目标对象的标注,所述标注由预设图像识别模型对所述目标对象识别后获得;
[0336]
检测到用户修改所述订单的第一操作;
[0337]
响应于检测到的所述第一操作,确定一个或多个第一目标对象;
[0338]
获得与每个所述第一目标对象对应的一个或多个第二目标对象的标注,其中,所述第二目标对象的标注由所述图像识别模型对所述第一目标对象识别后获得,每个所述第二目标对象与所述第一目标对象不相同;
[0339]
检测到用户选取所述第二目标对象的第二操作;
[0340]
响应于检测到的所述第二操作,基于被选取的所述第二目标对象的标注,更正所述订单。
[0341]
其中一种可能的实现方式中,所述第一目标对象的标注和一个或多个所述第二目标对象的标注由所述图像识别模型对所述第一目标对象识别后按置信度排名输出获得。
[0342]
其中一种可能的实现方式中,当所述指令被所述设备执行时,使得所述设备执行
所述获得与每个所述第一目标对象对应的一个或多个第二目标对象的标注的步骤,包括:
[0343]
对所述第一目标对象进行识别;
[0344]
输出按置信度排名的一个或多个第二目标对象的标注。
[0345]
其中一种可能的实现方式中,当所述指令被所述设备执行时,使得所述设备执行所述获取订单的步骤,包括:
[0346]
采集第一图像,所述第一图像包括一个或多个所述目标对象;
[0347]
基于预设第一模式对所述第一图像进行目标检测,获得一个或多个所述目标对象的第一区域范围;
[0348]
基于预设第二模式对所述第一图像进行目标检测,获得一个或多个所述目标对象的第二区域范围;
[0349]
基于所述第一区域范围及所述第二区域范围,确定第三区域范围;
[0350]
基于所述第三区域范围对所述第一图像进行裁剪,获得第二图像;
[0351]
将所述第二图像输入所述图像识别模型中,获得所述标注,基于所述标注生成订单。
[0352]
其中一种可能的实现方式中,所述图像识别模型由多个所述第二图像作为样本输入预设模型中进行训练获得。
[0353]
如图19所示,订单更正设备900b包括处理器910b和显示单元920b。可选地,该订单更正设备900b还可以包括存储器930b。其中,处理器910b、显示单元920b和存储器930b之间可以通过内部连接通路互相通信,传递控制和/或数据信号,该存储器930用于存储计算机程序,该处理器910b用于从该存储器930b中调用并运行该计算机程序。
[0354]
上述处理器910b可以和存储器930b可以合成一个处理装置,更常见的是彼此独立的部件,处理器910b用于执行存储器930b中存储的程序代码来实现上述功能。具体实现时,该存储器930b也可以集成在处理器910b中,或者,独立于处理器910b。
[0355]
除此之外,为了使得订单更正设备900b的功能更加完善,该订单更正设备900b还可以包括摄像头940b、电源950b、输入单元960b等中的一个或多个。其中,显示单元920b可以包括显示屏。
[0356]
可选地,电源950b用于给终端设备中的各种器件或电路提供电源。
[0357]
图19所示的订单更正设备可以是计算机,收银设备等。该设备可以用于执行本申请图6所示实施例提供的订单更正方法中的功能/步骤。
[0358]
本申请还提供一种电子设备,所述设备包括存储介质和中央处理器,所述存储介质可以是非易失性存储介质,所述存储介质中存储有计算机可执行程序,所述中央处理器与所述非易失性存储介质连接,并执行所述计算机可执行程序以实现本申请图1~图7所示实施例提供的方法。
[0359]
以上各实施例中,涉及的处理器可以例如包括cpu、dsp、微控制器或数字信号处理器,还可包括gpu、嵌入式神经网络处理器(neural

network process units;以下简称:npu)和图像信号处理器(image signal processing;以下简称:isp),该处理器还可包括必要的硬件加速器或逻辑处理硬件电路,如asic,或一个或多个用于控制本申请技术方案程序执行的集成电路等。此外,处理器可以具有操作一个或多个软件程序的功能,软件程序可以存储在存储介质中。
[0360]
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行本申请图1~图7所示实施例提供的方法。
[0361]
本申请实施例还提供一种计算机程序产品,该计算机程序产品包括计算机程序,当其在计算机上运行时,使得计算机执行本申请图1~图7所示实施例提供的方法。
[0362]
本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示单独存在a、同时存在a和b、单独存在b的情况。其中a,b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项”及其类似表达,是指的这些项中的任意组合,包括单项或复数项的任意组合。例如,a,b和c中的至少一项可以表示:a,b,c,a和b,a和c,b和c或a和b和c,其中a,b,c可以是单个,也可以是多个。
[0363]
本领域普通技术人员可以意识到,本文中公开的实施例中描述的各单元及算法步骤,能够以电子硬件、计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
[0364]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0365]
在本申请所提供的几个实施例中,任一功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read

only memory;以下简称:rom)、随机存取存储器(random access memory;以下简称:ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0366]
以上所述,仅为本申请的具体实施方式,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。本申请的保护范围应以所述权利要求的保护范围为准。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1