CN113780269A - 图像识别方法、装置、计算机系统及可读存储介质 - Google Patents
图像识别方法、装置、计算机系统及可读存储介质 Download PDFInfo
- Publication number
- CN113780269A CN113780269A CN202110059501.7A CN202110059501A CN113780269A CN 113780269 A CN113780269 A CN 113780269A CN 202110059501 A CN202110059501 A CN 202110059501A CN 113780269 A CN113780269 A CN 113780269A
- Authority
- CN
- China
- Prior art keywords
- image
- identified
- information
- target object
- recognized
- 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
Images
Landscapes
- Image Analysis (AREA)
Abstract
本公开提供了一种图像识别方法,包括:获取待识别图像和待识别图像的点云信息;利用待识别图像的点云信息生成图像掩模;利用图像掩模和待识别图像,获取待识别图像的目标区域中的待识别对象的特征信息;以及将待识别对象的特征信息与模板特征信息进行匹配,得到识别结果,其中,模板特征信息为预先获取的目标对象的特征信息。本公开还提供了图像识别装置、计算机系统、可读存储介质以及计算机程序产品。
Description
技术领域
本公开涉及计算机技术领域,更具体地,涉及一种图像识别方法、装置、计算机系统、可读存储介质及计算机程序产品。
背景技术
自动化技术是指在没有人或较少人的直接参与下,按照人的要求,经过自动检测、信息处理、分析判断、操纵控制,实现预期的目标的过程。自动化技术极大地提高了劳动生产率,是工业、农业、国防和科学技术现代化的重要条件和显著标志。而自动识别技术是自动化技术中的一门关键技术,可自动识别目标对象并获取相关数据,无须人工干预。
在实现本公开构思的过程中,发明人发现相关技术中至少存在如下问题:采用自动识别技术进行目标对象识别时,容易受背景环境的影响,识别精度低。
发明内容
有鉴于此,本公开提供了一种图像识别方法、装置、计算机系统、可读存储介质及计算机程序产品。
本公开的一个方面提供了一种图像识别方法,包括:
获取待识别图像和待识别图像的点云信息;
利用待识别图像的点云信息生成图像掩模;
利用图像掩模和待识别图像,获取待识别图像的目标区域中的待识别对象的特征信息;以及
将待识别对象的特征信息与模板特征信息进行匹配,得到识别结果,其中,模板特征信息为预先获取的目标对象的特征信息。
根据本公开的实施例,其中,将待识别对象的特征信息与模板特征信息进行匹配,得到识别结果包括:
确定待识别对象与目标对象的匹配值;以及
在匹配值大于或等于预设匹配阈值的情况下,确定待识别对象为目标对象。
根据本公开的实施例,其中,待识别图像的目标区域中包括多个待识别对象;
将待识别对象的特征信息与模板特征信息进行匹配,得到识别结果包括:
确定多个待识别对象中的每个待识别对象与目标对象的匹配值;
将匹配值大于或等于预设匹配阈值的待识别对象确定为候选对象;以及
利用非极大值抑制方法对多个候选对象进行筛选,从多个候选对象中确定与目标对象最匹配的对象。
根据本公开的实施例,其中,模板特征信息通过如下操作生成:
获取目标对象的特征信息,其中,特征信息包括边界特征信息和边界区域内的纹理特征信息;
按照预设比例裁剪目标对象,获取边界区域内目标对象的纹理特征信息;
基于纹理特征信息,确定纹理特征信息中的特征点数目;以及
在特征点数目大于或等于预设特征阈值的情况下,将目标对象的边界特征信息和纹理特征信息确定为模板特征信息。
根据本公开的实施例,其中,在获取待识别图像的点云信息之前,上述图像识别方法还包括:
接收用于识别待识别图像的任务,其中,任务中包括目标对象的预识别数量。
根据本公开的实施例,上述图像识别方法还包括:
基于识别结果,确定待识别图像中包括的目标对象的识别数量;
比较识别数量与预识别数量的大小;
在识别数量大于或等于预识别数量的情况下,结束执行任务;以及
在识别数量小于预识别数量的情况下,重复执行任务,直至识别数量大于或等于预识别数量。
根据本公开的实施例,其中,利用待识别图像的点云信息生成图像掩模包括:
利用待识别图像的点云信息生成初始图像掩模;以及
对初始图像掩模进行形态学膨胀处理,生成图像掩模。
根据本公开的实施例,上述图像识别方法还包括:
基于识别结果,获取目标对象的位置信息;以及
根据目标对象的位置信息,确定目标对象的抓取路径。
根据本公开的实施例,在获取待识别图像和待识别图像的点云信息之前,上述图像识别方法还包括:
调节光源照射待识别对象的方向,或者降低光源照射待识别对象的光强度;以及
对待识别对象进行图像采集。
本公开的再一方面提供一种图像识别装置,包括:
第一获取模块,用于获取待识别图像和待识别图像的点云信息;
提取模块,用于利用待识别图像的点云信息生成图像掩模;
第二获取模块,用于利用图像掩模和待识别图像,获取待识别图像的目标区域中的待识别对象的特征信息;以及
匹配模块,用于将待识别对象的特征信息与模板特征信息进行匹配,得到识别结果,其中,模板特征信息为预先获取的目标对象的特征信息。
本公开的再一方面提供一种计算机系统,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
其中,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器实现上述的图像识别方法。
本公开的再一方面提供一种计算机可读存储介质,其上存储有可执行指令,指令被处理器执行时使处理器实现上述的图像识别方法。
本公开的再一方面提供一种计算机程序产品,包括计算机程序,计算机程序包括计算机可执行指令,指令在被执行时用于实现上述的图像识别方法。
根据本公开的实施例,因为采用了获取待识别图像和待识别图像的点云信息;利用待识别图像的点云信息生成图像掩模;利用图像掩模和待识别图像,获取待识别图像的目标区域中的待识别对象的特征信息;以及将待识别对象的特征信息与模板特征信息进行匹配,得到识别结果,其中,模板特征信息为预先获取的目标对象的特征信息的技术手段,利用图像掩模将背景信息过滤掉,排除背景环境的干扰,提高目标对象的识别精度;所以至少部分地克服了现有技术中自动识别技术在进行目标对象识别时,容易受背景环境的影响,识别精度低的技术问题,进而达到了高精度、快速、智能的目标对象的自动识别的技术效果。
附图说明
通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:
图1示意性示出了可以应用本公开的图像识别方法和装置的示例性系统架构;
图2示意性示出了根据本公开实施例的图像识别方法的流程图;
图3示意性示出了根据本公开另一实施例的图像识别方法的应用场景图;
图4示意性示出了根据本公开实施例的待识别图像;
图5示意性示出了根据本公开另一实施例的中转箱内物品拣选的流程图;
图6示意性示出了根据本公开对比例的没有结合图像掩模的图像识别结果图;
图7示意性示出了根据本公开实施例的结合图像掩模的图像识别结果图;
图8示意性示出了根据本公开实施例的待识别图像对应的RGB图像;
图9为图8的点云信息示意图;
图10为图9经过形态学膨胀处理后生成的点云信息示意图;
图11示意性示出了根据本公开实施例的所有面均作为模板来进行匹配的图像识别结果图;
图12示意性示出了根据本公开另一实施例的保留面内纹理特征信息多的面作为模板进行匹配的图像识别结果图;
图13示意性示出了根据本公开另一实施例的目标对象的RGB图像;
图14为图13的目标对象的对应的特征分布图;
图15为图14的带有裁剪边框的特征分布图;
图16示意性示出了根据本公开实施例的图像识别装置的框图;以及
图17示意性示出了根据本公开实施例的适于实现图像识别方法的计算机系统的框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。
本公开的实施例提供了一种图像识别方法。该方法包括获取待识别图像和待识别图像的点云信息;利用待识别图像的点云信息生成图像掩模;利用图像掩模和待识别图像,获取待识别图像的目标区域中的待识别对象的特征信息;以及将待识别对象的特征信息与模板特征信息进行匹配,得到识别结果,其中,模板特征信息为预先获取的目标对象的特征信息。
图1示意性示出了根据本公开实施例的可以应用图像识别方法和装置的示例性系统架构100。需要注意的是,图1所示仅为可以应用本公开实施例的系统架构的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。
如图1所示,根据该实施例的系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线和/或无线通信链路等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如图像采集应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端和/或社交平台软件等(仅为示例)。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对用户利用终端设备101、102、103所浏览的网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的用户请求等数据进行分析等处理,并将处理结果(例如根据用户请求获取或生成的网页、信息、或数据等)反馈给终端设备。
需要说明的是,本公开实施例所提供的图像识别方法一般可以由服务器105执行。相应地,本公开实施例所提供的图像识别装置一般可以设置于服务器105中。本公开实施例所提供的图像识别方法也可以由不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群执行。相应地,本公开实施例所提供的图像识别装置也可以设置于不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群中。
例如,待识别图像可以原本存储在终端设备101、102、或103中的任意一个(例如,终端设备101,但不限于此)之中,或者存储在外部存储设备上并可以导入到终端设备101中。然后,终端设备101可以将待识别图像发送到其他终端设备、服务器、或服务器集群,并由接收该待识别图像的其他服务器、或服务器集群来执行本公开实施例所提供的图像识别方法。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
图2示意性示出了根据本公开实施例的图像识别方法的流程图。
如图2所示,该方法包括操作S210~S240。
在操作S210,获取待识别图像和待识别图像的点云信息。
根据本公开的实施例,待识别图像包括待识别对象,该待识别对象可以是带有外包装盒的手机或者带有外包装盒的其他物品。
根据本公开的实施例,待识别对象可以放置在用于输送的中转箱内;因此,该待识别图像还包括中转箱以及中转箱内的例如垫板等其他非待识别对象。
根据本公开的实施例,可以通过三维激光扫描仪进行数据采集获取点云信息。在本公开中,待识别图像的点云信息为三维点云信息,包括三维坐标X、Y、Z。
在操作S220,利用待识别图像的点云信息生成图像掩模。
根据本公开的实施例,图像掩模可以理解为过滤掉背景信息例如中转箱以及中转箱内的例如垫板等其他非待识别对象信息的掩模。
根据本公开的实施例,可以定义待识别图像中的待识别对象所处的区域为目标区域,在图像掩模中目标区域处的灰度值设置为255。可以定义非待识别对象为背景,在图像掩模中为非目标区域,灰度值设置为0。
在操作S230,利用图像掩模和待识别图像,获取待识别图像的目标区域中的待识别对象的特征信息。
根据本公开的实施例,利用图像掩模作用于待识别图像,过滤待识别图像的背景信息,提高待识别图像中的待识别对象的特征信息的提取精度,避免提取不利或者无效信息。
在操作S240,将待识别对象的特征信息与模板特征信息进行匹配,得到识别结果,其中,模板特征信息为预先获取的目标对象的特征信息。
根据本公开的实施例,利用注册制方式来实现对待识别图像中的待识别对象的识别。更为具体地,预先获得目标对象的特征信息,然后利用目标对象的特征信息作为模板特征信息,通过匹配的方式,与一个或多个待识别对象进行比较,得到每个待识别对象的识别结果,例如,得到该待识别对象是否为目标对象的识别结果。
根据本公开的实施例,利用图像掩模将待识别图像中的背景信息过滤掉,提高待识别对象的特征信息的提取精度,避免环境背景区域的干扰;最终实现提高识别精度的效果。
下面参考图3~图15,并结合具体实施例对图2所示的方法做进一步说明。
图3示意性示出了根据本公开另一实施例的图像识别方法的应用场景图。图4示意性示出了根据本公开实施例的待识别图像。
根据本公开的实施例,有很多任务涉及到图像识别方法的应用,例如机械臂拆码垛、机械臂的箱内拣选、机械臂流水线装配作业、基于视觉的导航和定位等等。如图3所示,为机械臂的中转箱内物品拣选应用场景图。中转箱内部放置预出库物品,中转箱由传输设备输送到拣选台,即机械臂相对应的位置,通过图像采集装置,例如相机拍照,获取中转箱以及中转箱内部区域的预出库物品的图像,作为待识别图像。如图4所示,为一装有多个手机包装盒的中转箱的图像。
图5示意性示出了根据本公开另一实施例的中转箱内物品拣选的流程图。
如图5所示,在利用本公开实施例的图像识别方法处理待识别图像后,得到识别结果。可以基于识别结果,获取目标对象的位置信息;以及机械臂根据目标对象的位置信息,确定目标对象的拣选点以及拣选姿态,从而最终确定目标对象的抓取路径。
根据本公开的可选实施例,在规划好抓取路径后,机械臂进行目标对象的抓取,并确定抓取到的目标对象的数量。
根据本公开的可选实施例,其中目标对象最终的抓取数量,可以基于任务中包括目标对象的预识别数量,其中,该任务可以是接收的用于识别待识别图像的任务。
根据本公开的可选实施例,可以通过抓取到的目标对象的数量,与任务中的预识别数量进行比较,判断是否还有待识别任务,是否需要继续拍照以及进行图像识别方法的处理。
但是并不局限于此,根据本公开的其他实施例,还可以基于识别结果,确定待识别图像中包括的目标对象的识别数量;比较识别数量与预识别数量的大小;在识别数量大于或等于预识别数量的情况下,机械臂能够抓取到任务中的预识别数量,即可结束执行图像识别方法的任务。
根据本公开的其他实施例,在识别数量小于预识别数量的情况下,待机械臂抓取识别数量的目标对象后,重复执行任务,即拍照、进行图像识别方法的处理,以及基于识别结果进行目标对象的抓取;直至识别数量大于或等于预识别数量。
根据本公开的实施例,将本公开的图像识别方法应用于例如中转箱内物品拣选的场景中,自动化、智能化程度高,解放人力,提高效率。
图6示意性示出了根据本公开对比例的没有结合图像掩模的图像识别结果图。图7示意性示出了根据本公开实施例的结合图像掩模的图像识别结果图。图8示意性示出了根据本公开另一实施例的待识别图像对应的RGB图像。图9为图8的点云信息示意图。图10为图9经过形态学膨胀处理后生成的点云信息示意图。
根据本公开的可选实施例,在进行中转箱内物品拣选的场景中,直接将待识别图像中的特征信息与模板特征信息进行匹配,容易被背景环境的特征信息影响,造成错误的识别结果。如图6所示,为没有结合图像掩模,直接将待识别图像中的特征信息与模板特征信息匹配得到的识别结果,可以看到中转箱内壁以及垫板产生的边缘,会导致背景信息误识为目标对象。
根据本公开的实施例,如图7所示,本公开提出利用待识别图像的点云信息直接生成图像掩模。可以将背景信息掩模处理,过滤掉非待识别特征信息,提高识别精度。
根据本公开的实施例,其中图像掩模基于点云信息得到,其点云信息为三维数据。在本公开中,可以预先设置ROI(region of intrest,感兴趣区域),出现在ROI中的对象定义为目标对象,而未出现在ROI中的对象,定义为背景对象。例如,初始化的一张未有目标对象的ROI的图像掩模,初始值均为0。
根据本公开的实施例,ROI可以基于实际情况设定。例如,将中转箱的边界预设为ROI的长和宽;基于中转箱内部的垫板或者其他背景物体预设高度,例如垫板的高度为Min_height,则ROI的高度h,Min_height<h<中转箱边缘高度,min_height可以设定为某个固定值,比如比中转箱底部高出10mm。当待识别对象在预设的ROI的长、宽和内部的h高度内时,认为此点有效。如图8和图9所示,当ROI出现点云信息后,确定此点有效,有效的点的灰度值设定为255,则对应得到图像掩膜。
但是并不局限于此,根据本公开的可选实施例,如图10所示,还可以利用上述方法生成的点云信息图像作为初始图像掩模;以及对初始图像掩模进行形态学膨胀处理,生成图像掩模。
根据本公开的可选实施例,对初始图像掩模做一次形态学膨胀处理后,可以将初始图像掩模中存在的孔洞填补,避免漏掉有效特征信息。
根据本公开的实施例,如图7所示,利用图像掩模将背景信息掩模处理,其识别结果中已经将例如箱子内壁和垫板等背景信息导致的虚假目标剔除掉,避免了背景信息的干扰,提高了最终的识别精度。
根据本公开的实施例,本公开的图像识别方法不仅考虑了背景信息的干扰问题,在进行待识别对象的识别过程以及模板特征信息的生成等方面,也分别进行了相应的考虑。
根据本公开的实施例,本公开的图像识别方法可以基于注册制方法进行计算处理;例如SIFT(Scale-invariant feature transform,尺度不变特征变换)、LINEMOD(一种模板匹配算法);但是并不局限于此,还可以采用Shape-Based matching(形状模板匹配)。
根据本公开的可选实施例,利用Shape-Based matching算法,事先计算目标对象的每个面的特征信息,特征信息使用的是量化后的梯度方向,获取到目标对象的梯度方向图后,作为模板特征信息纳入模板库。对待识别图像,同样计算转换成梯度方向图,用模板库中的目标对象模板特征信息(即梯度方向图)在待识别的梯度方向图上进行类似于模板匹配技术的窗口滑动,返回超过预设匹配阈值的候选结果。
根据本公开的可选实施例,将待识别对象的特征信息与模板特征信息进行匹配,得到识别结果可以包括确定待识别对象与目标对象的匹配值;在匹配值大于或等于预设匹配阈值的情况下,确定待识别对象为目标对象。
根据本公开的实施例,采用注册制例如Shape-Based matching进行图像识别方法的计算,速度快、识别率高且鲁棒性高。
根据本公开的可选实施例,将待识别对象的特征信息与模板特征信息进行匹配,得到识别结果还可以包括如下操作。
确定多个待识别对象中的每个待识别对象与目标对象的匹配值;
将匹配值大于或等于预设匹配阈值的待识别对象确定为候选对象;以及
利用非极大值抑制方法对多个候选对象进行筛选,从多个候选对象中确定与目标对象最匹配的对象。
根据本公开的可选实施例,待识别图像的目标区域中包括多个待识别对象;在箱内拣选的场景中,经常出现待识别对象互相堆叠的情形,这种最外边缘较容易引入假阳性识别结果。并且,模板特征信息中存在多个面的特征信息均作为模板特征信息进行匹配比较的情形,而每个面的特征点数目是不均衡的。在本公开中,利用NMS(non-maximumsuppressing,非极大值抑制),即一种简单的贪心算法,对所有的候选结果依据匹配值从高到低排序,剔除那些重合比例大于一定重合阈值的且匹配值低的结果,这样得到最终的匹配集合。
根据本公开的实施例,利用非极大值抑制计算方法有效的提升Shape-Basedmatching在模板特征信息的特征数目不均衡情况下的识别准确率。但是并不局限于此,还可以通过控制模板特征信息的特征点丰富程度,剔除掉少纹理或者无纹理的模板特征信息,以此来把控模板特征信息中每个面的特征数目不均衡的问题。
根据本公开的可选实施例,目标对象可以为装有电子产品例如手机的包装盒等立方体物体,其中,包装盒具有六个面,每个面上具有一些类似于产品介绍的文字信息或者图形信息等。
根据本公开的实施例,在进行模板特征信息选取时,可以六个面的特征信息全部获取,作为模板特征信息。但是并不局限于此,还可以对获取到的多个面的纹理特征信息进行比较,剔除掉无纹理特征信息或者少纹理特征信息的面,仅保留面内纹理特征信息多的面作为模板特征信息。
根据本公开的其他实施例,图11为未进行过滤,对所有面均作为模板特征信息来进行匹配,得到待识别对象的匹配结果。
根据本公开的实施例,图12为过滤无纹理特征信息或者少纹理特征信息的面后,保留面内纹理特征信息多的面作为模板进行匹配,得到的待识别对象的匹配结果。
如图11和图12所示,通过过滤掉少纹理或者无纹理的面之后,仅保留面内纹理特征信息多的面作为模板特征信息,降低了假阳性结果的引入,提升了识别准确率。
根据本公开的实施例,模板特征信息可以结合对少纹理或者无纹理的特征信息过滤等操作生成。
图13示出了根据本公开实施例的目标对象的RGB图。图14为图13中目标对象的对应的特征分布图。图15为图14的带有裁剪边框的特征分布图。
根据本公开的实施例,如图13所示,目标对象的特征信息,可以通过采集目标对象的RGB图像,然后转换成对应的灰度图,以便提取图像中的目标对象的特征信息。灰度图中的目标对象的特征信息可以通过灰度的梯度比较大的特征点来体现,但是并不局限于此,还可以为灰度变化比较剧烈的特征点来体现。在本公开中,该特征点只要是仿射变换下的不变量即可。
根据本公开的实施例,如图14所示,特征信息包括边界特征信息和边界区域内的纹理特征信息。
根据本公开的可选实施例,目标对象的边界区域内的纹理特征信息越多,越有利于提高最终的识别精度。根据本公开的实施例,如图15所示,图中的边界内的框线,为基于边界按照比例缩小后的新边界。按照该新边界裁剪目标对象,实现将边界特征信息与边界区域内的纹理特征信息的分离,进而获取边界区域内目标对象的纹理特征信息。
根据本公开的实施例,基于纹理特征信息,确定纹理特征信息中的特征点数目;在特征点数目大于或等于预设特征阈值的情况下,将目标对象的边界特征信息和纹理特征信息确定为模板特征信息。
根据本公开的实施例,预设特征阈值可以根据实际情况进行适当调整,在此不作具体限定。只要能够实现,边界区域内的特征点数目大于预设特征阈值时,即认为该面是有纹理特征信息的,能够作为模板特征信息,纳入模板库;反之,则不纳入模板库。
根据本公开的实施例,模板特征信息中剔除掉无纹理或者少纹理的面的特征信息,利于降低无纹理或者少纹理的面引入的假阳性结果,提高识别准确度。
此外,本公开除了在进行图像处理以及匹配算法等方面进行改进外,还提出了图像采集过程中需要改善的反光问题。在本公开中,图像识别方法中获取到的待识别图像,若在图像采集过程中,出现反光,则会在待识别图像上显示有反光区域,该反光区域经常被误认为是匹配上的特征区域。本公开为解决该反光问题,在获取待识别图像和待识别图像的点云信息之前,通过设计光源方向、光源强度或者在图像采集设备的入射镜头上安装偏振片的方式,以此来降低反光对图像识别的影响。
根据本公开的可选实施例,设计光源方向可以为调节光源照射待识别对象的方向,例如将光源投射到一物体表面,再经物体表面漫反射至待识别对象表面。
根据本公开的可选实施例,降低光源照射到待识别对象的光强度,可以为在光源的来光方向用遮光布遮挡。
根据本公开的可选实施例,可以在调节光源照射待识别对象的方向或者降低光源强度的基础上,再在入射镜头上安装偏振片,实现双重的降低反光的效果。
综上所述,本公开提出了利用Shape-Based matching识别刚性多面体的图像识别方法,利用3D点云信息生成有效区域的图像掩模,以及模板特征信息中过滤掉少纹理的面,只识别内部纹理特征信息较丰富的面等策略,有效的提升了识别准确率,降低了误识率。
同时本公开还提出在对待识别对象进行图像采集之前,改变光源方向以及安装偏振片等方法,解决了反光问题,进一步辅助提升了识别精度。
图16示意性示出了根据本公开实施例的图像识别装置的框图。
如图16所示,图像识别装置1600包括第一获取模块1610、提取模块1620、第二获取模块1630和匹配模块1640。
第一获取模块1610,用于获取待识别图像和待识别图像的点云信息;
提取模块1620,用于利用待识别图像的点云信息生成图像掩模;
第二获取模块1630,用于利用图像掩模和待识别图像,获取待识别图像的目标区域中的待识别对象的特征信息;以及
匹配模块1640,用于将待识别对象的特征信息与模板特征信息进行匹配,得到识别结果,其中,模板特征信息为预先获取的目标对象的特征信息。
根据本公开的实施例,其中,匹配模块1640包括第一确定单元和第二确定单元。
第一确定单元,用于确定待识别对象与目标对象的匹配值;以及
第二确定单元,用于在匹配值大于或等于预设匹配阈值的情况下,确定待识别对象为目标对象。
根据本公开的实施例,其中,待识别图像的目标区域中包括多个待识别对象。
根据本公开的实施例,匹配模块1640包括第三确定单元、第四确定单元和筛选单元。
第三确定单元,用于确定多个待识别对象中的每个待识别对象与目标对象的匹配值;
第四确定单元,用于将匹配值大于或等于预设匹配阈值的待识别对象确定为候选对象;以及
筛选单元,用于利用非极大值抑制方法对多个候选对象进行筛选,从多个候选对象中确定与目标对象最匹配的对象。
根据本公开的实施例,其中,模板特征信息通过如下操作生成。
获取目标对象的特征信息,其中,特征信息包括边界特征信息和边界区域内的纹理特征信息;
按照预设比例裁剪目标对象,获取边界区域内目标对象的纹理特征信息;
基于纹理特征信息,确定纹理特征信息中的特征点数目;以及
在特征点数目大于或等于预设特征阈值的情况下,将目标对象的边界特征信息和纹理特征信息确定为模板特征信息。
根据本公开的实施例,其中,在获取待识别图像的点云信息之前,图像识别装置1600还包括接收模块。
接收模块,用于接收用于识别待识别图像的任务,其中,任务中包括目标对象的预识别数量。
根据本公开的实施例,图像识别装置1600还包括数量确定模块、比较模块、结束任务模块和重复执行模块。
数量确定模块,用于基于识别结果,确定待识别图像中包括的目标对象的识别数量;
比较模块,用于比较识别数量与预识别数量的大小;
结束任务模块,用于在识别数量大于或等于预识别数量的情况下,结束执行任务;以及
重复执行模块,用于在识别数量小于预识别数量的情况下,重复执行任务,直至识别数量大于或等于预识别数量。
根据本公开的实施例,其中,提取模块包括初提取单元和终提取单元。
初提取单元,用于利用待识别图像的点云信息生成初始图像掩模;以及
终提取单元,用于对初始图像掩模进行形态学膨胀处理,生成图像掩模。
根据本公开的实施例,图像识别装置1600还包括第三获取模块和路径确定模块。
第三获取模块,用于基于识别结果,获取目标对象的位置信息;以及
路径确定模块,用于根据目标对象的位置信息,确定目标对象的抓取路径。
根据本公开的实施例,在获取待识别图像和待识别图像的点云信息之前,图像识别装置1600还包括光源调节模块和图像采集模块。
光源调节模块,用于调节光源照射待识别对象的方向,或者降低光源照射待识别对象的光强度;以及
图像采集模块,用于对待识别对象进行图像采集。
根据本公开的实施例的模块、子模块、单元、子单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、子模块、单元、子单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
例如,第一获取模块1610、提取模块1620、第二获取模块1630和匹配模块1640中的任意多个可以合并在一个模块/单元/子单元中实现,或者其中的任意一个模块/单元/子单元可以被拆分成多个模块/单元/子单元。或者,这些模块/单元/子单元中的一个或多个模块/单元/子单元的至少部分功能可以与其他模块/单元/子单元的至少部分功能相结合,并在一个模块/单元/子单元中实现。根据本公开的实施例,第一获取模块1610、提取模块1620、第二获取模块1630和匹配模块1640中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,第一获取模块1610、提取模块1620、第二获取模块1630和匹配模块1640中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
需要说明的是,本公开的实施例中图像识别装置部分与本公开的实施例图像识别方法部分是相对应的,图像识别装置部分的描述具体参考图像识别方法部分,在此不再赘述。
图17示意性示出了根据本公开实施例的适于实现上文描述的方法的计算机系统的框图。图17示出的计算机系统仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图17所示,根据本公开实施例的计算机系统1700包括处理器1701,其可以根据存储在只读存储器(ROM)1702中的程序或者从存储部分1708加载到随机访问存储器(RAM)1703中的程序而执行各种适当的动作和处理。处理器1701例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC)),等等。处理器1701还可以包括用于缓存用途的板载存储器。处理器1701可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
在RAM 1703中,存储有系统1700操作所需的各种程序和数据。处理器1701、ROM1702以及RAM 1703通过总线1704彼此相连。处理器1701通过执行ROM 1702和/或RAM 1703中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除ROM 1702和RAM 1703以外的一个或多个存储器中。处理器1701也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
根据本公开的实施例,系统1700还可以包括输入/输出(I/O)接口1705,输入/输出(I/O)接口1705也连接至总线1704。系统1700还可以包括连接至I/O接口1705的以下部件中的一项或多项:包括键盘、鼠标等的输入部分1706;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1707;包括硬盘等的存储部分1708;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1709。通信部分1709经由诸如因特网的网络执行通信处理。驱动器1710也根据需要连接至I/O接口1705。可拆卸介质1711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1710上,以便于从其上读出的计算机程序根据需要被安装入存储部分1708。
根据本公开的实施例,根据本公开实施例的方法流程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读存储介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1709从网络上被下载和安装,和/或从可拆卸介质1711被安装。在该计算机程序被处理器1701执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质。例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的ROM 1702和/或RAM 1703和/或ROM 1702和RAM 1703以外的一个或多个存储器。
本公开的实施例还包括一种计算机程序产品,其包括计算机程序,该计算机程序包含用于执行本公开实施例所提供的方法的程序代码,当计算机程序产品在电子设备上运行时,该程序代码用于使电子设备实现本公开实施例所提供的图像识别方法。
在该计算机程序被处理器1701执行时,执行本公开实施例的系统/装置中限定的上述功能。根据本公开的实施例,上文描述的系统、装置、模块、单元等可以通过计算机程序模块来实现。
在一种实施例中,该计算机程序可以依托于光存储器件、磁存储器件等有形存储介质。在另一种实施例中,该计算机程序也可以在网络介质上以信号的形式进行传输、分发,并通过通信部分1709被下载和安装,和/或从可拆卸介质1711被安装。该计算机程序包含的程序代码可以用任何适当的网络介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
根据本公开的实施例,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例提供的计算机程序的程序代码,具体地,可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。程序设计语言包括但不限于诸如Java,C++,python,“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。
Claims (13)
1.一种图像识别方法,包括:
获取待识别图像和所述待识别图像的点云信息;
利用所述待识别图像的点云信息生成图像掩模;
利用所述图像掩模和所述待识别图像,获取所述待识别图像的目标区域中的待识别对象的特征信息;以及
将所述待识别对象的特征信息与模板特征信息进行匹配,得到识别结果,其中,所述模板特征信息为预先获取的目标对象的特征信息。
2.根据权利要求1所述的方法,其中,所述将所述待识别对象的特征信息与模板特征信息进行匹配,得到识别结果包括:
确定所述待识别对象与所述目标对象的匹配值;以及
在所述匹配值大于或等于所述预设匹配阈值的情况下,确定所述待识别对象为所述目标对象。
3.根据权利要求1所述的方法,其中,所述待识别图像的目标区域中包括多个待识别对象;
所述将所述待识别对象的特征信息与模板特征信息进行匹配,得到识别结果包括:
确定所述多个待识别对象中的每个待识别对象与所述目标对象的匹配值;
将所述匹配值大于或等于所述预设匹配阈值的待识别对象确定为候选对象;以及
利用非极大值抑制方法对多个所述候选对象进行筛选,从多个所述候选对象中确定与所述目标对象最匹配的对象。
4.根据权利要求1所述的方法,其中,所述模板特征信息通过如下操作生成:
获取所述目标对象的特征信息,其中,所述特征信息包括边界特征信息和边界区域内的纹理特征信息;
按照预设比例裁剪所述目标对象,获取所述边界区域内所述目标对象的所述纹理特征信息;
基于所述纹理特征信息,确定所述纹理特征信息中的特征点数目;以及
在所述特征点数目大于或等于预设特征阈值的情况下,将所述目标对象的边界特征信息和所述纹理特征信息确定为所述模板特征信息。
5.根据权利要求1所述的方法,其中,在所述获取待识别图像的点云信息之前,所述方法还包括:
接收用于识别所述待识别图像的任务,其中,所述任务中包括所述目标对象的预识别数量。
6.根据权利要求5所述的方法,还包括:
基于所述识别结果,确定所述待识别图像中包括的所述目标对象的识别数量;
比较所述识别数量与所述预识别数量的大小;
在所述识别数量大于或等于所述预识别数量的情况下,结束执行所述任务;以及
在所述识别数量小于所述预识别数量的情况下,重复执行所述任务,直至所述识别数量大于或等于所述预识别数量。
7.根据权利要求1所述的方法,其中,所述利用所述待识别图像的点云信息生成图像掩模包括:
利用所述待识别图像的点云信息生成初始图像掩模;以及
对所述初始图像掩模进行形态学膨胀处理,生成图像掩模。
8.根据权利要求1所述的方法,还包括:
基于所述识别结果,获取所述目标对象的位置信息;以及
根据所述目标对象的位置信息,确定所述目标对象的抓取路径。
9.根据权利要求1所述的方法,在所述获取待识别图像和所述待识别图像的点云信息之前,还包括:
调节光源照射所述待识别对象的方向,或者降低所述光源照射所述待识别对象的光强度;以及
对所述待识别对象进行图像采集。
10.一种图像识别装置,包括:
第一获取模块,用于获取待识别图像和所述待识别图像的点云信息;
提取模块,用于利用所述待识别图像的点云信息生成图像掩模;
第二获取模块,用于利用所述图像掩模和所述待识别图像,获取所述待识别图像的目标区域中的待识别对象的特征信息;以及
匹配模块,用于将所述待识别对象的特征信息与模板特征信息进行匹配,得到识别结果,其中,所述模板特征信息为预先获取的目标对象的特征信息。
11.一种计算机系统,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现权利要求1至9中任一项所述的方法。
12.一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器实现权利要求1至9中任一项所述的方法。
13.一种计算机程序产品,包括计算机程序,所述计算机程序包括计算机可执行指令,所述指令在被执行时用于实现权利要求1至9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110059501.7A CN113780269A (zh) | 2021-01-15 | 2021-01-15 | 图像识别方法、装置、计算机系统及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110059501.7A CN113780269A (zh) | 2021-01-15 | 2021-01-15 | 图像识别方法、装置、计算机系统及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113780269A true CN113780269A (zh) | 2021-12-10 |
Family
ID=78835472
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110059501.7A Pending CN113780269A (zh) | 2021-01-15 | 2021-01-15 | 图像识别方法、装置、计算机系统及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113780269A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115564829A (zh) * | 2022-09-20 | 2023-01-03 | 深圳市拓普智造科技有限公司 | 对象识别定位方法、装置、电子设备及存储介质 |
-
2021
- 2021-01-15 CN CN202110059501.7A patent/CN113780269A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115564829A (zh) * | 2022-09-20 | 2023-01-03 | 深圳市拓普智造科技有限公司 | 对象识别定位方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11798253B2 (en) | Determining a position of an object in a rotation corrected image | |
US20200089985A1 (en) | Character image processing method and apparatus, device, and storage medium | |
CN108229324B (zh) | 手势追踪方法和装置、电子设备、计算机存储介质 | |
US8965117B1 (en) | Image pre-processing for reducing consumption of resources | |
CN109583299B (zh) | 电子装置、证件识别方法及存储介质 | |
Dubská et al. | Real-time precise detection of regular grids and matrix codes | |
WO2021012382A1 (zh) | 配置聊天机器人的方法、装置、计算机设备和存储介质 | |
US10303969B2 (en) | Pose detection using depth camera | |
CN108121982B (zh) | 面单图像的获取方法及装置 | |
CN109118456B (zh) | 图像处理方法和装置 | |
CN110009615B (zh) | 图像角点的检测方法及检测装置 | |
US9224061B1 (en) | Text orientation estimation in camera captured OCR | |
CN110390295B (zh) | 一种图像信息识别方法、装置及存储介质 | |
CN116152166A (zh) | 基于特征相关性的缺陷检测方法及相关装置 | |
CN106384071A (zh) | 一种二维码扫描识别处理方法及装置 | |
WO2022227879A1 (zh) | 基于二维码的物流管理方法、系统、服务器和存储介质 | |
CN111783777A (zh) | 图像处理方法、装置、电子设备和计算机可读介质 | |
CN114494751A (zh) | 证照信息识别方法、装置、设备及介质 | |
CN113780269A (zh) | 图像识别方法、装置、计算机系统及可读存储介质 | |
CN108304840B (zh) | 一种图像数据处理方法以及装置 | |
CN115115857A (zh) | 一种图像匹配方法、装置及计算机设备 | |
CN111767751B (zh) | 二维码图像识别方法和装置 | |
US9361540B2 (en) | Fast image processing for recognition objectives system | |
CN112000218A (zh) | 一种对象显示方法及装置 | |
CN113450291B (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 |