编码信息的生成方法和识别方法与流程

文档序号:16250998发布日期:2018-12-12 00:02阅读:419来源:国知局
编码信息的生成方法和识别方法与流程

本申请实施例涉及计算机技术领域,具体涉及编码信息的生成方法和识别方法。

背景技术

随着移动互联网的快速发展,通过移动终端扫描信息的方法来读取内容已经越来越普遍。目前比较流行方法是构建二维码。即移动端设备通过扫描所构建的二维码,从而可以识别出里面的用户id(身份标识)、网址等信息。现有二维码的形式比较单一,通常是固定的正方形,且需要有至少三个定位点。



技术实现要素:

本申请实施例提出了编码信息的生成方法和识别方法。

第一方面,本申请实施例提出了一种编码信息的生成方法,包括:在包含编码信息的目标图像中,在预设位置处添加第一预设数目个定位图像,生成第一编码图像;以第一编码图像的中心区域为中心,将第一编码图像旋转第二预设数目个角度,分别得到第二预设数目个不同旋转角度下的第二编码图像;根据得到的第二编码图像,生成编码图像集合,并输出编码图像集合。

在一些实施例中,第一预设数目不大于二,以及在预设位置处添加第一预设数目个定位图像,包括:在目标图像的边缘位置添加一个定位图像;或者在目标图像的边缘位置对称或非对称添加两个定位图像;或者在目标图像的中心区域和边缘位置分别添加一个定位图像。

在一些实施例中,根据得到的第二编码图像,生成编码图像集合,包括:以第一编码图像为基准,按照旋转角度由小到大或由大到小的顺序,对第一编码图像和得到的第二编码图像进行存储,生成编码图像集合;或者以第一编码图像为基准,按照旋转角度由小到大或由大到小的顺序,对得到的第二编码图像进行存储,生成编码图像集合。

在一些实施例中,输出编码图像集合,包括:按照预设帧率逐个显示编码图像集合中的编码图像。

在一些实施例中,按照预设帧率逐个显示编码图像集合中的编码图像,包括:按照旋转角度由小到大或由大到小的顺序,以预设帧率依次显示编码图像集合中的编码图像。

第二方面,本申请实施例提出了一种编码信息的生成装置,包括:第一生成单元,被配置成在包含编码信息的目标图像中,在预设位置处添加第一预设数目个定位图像,生成第一编码图像;第二生成单元,被配置成以第一编码图像的中心区域为中心,将第一编码图像旋转第二预设数目个角度,分别得到第二预设数目个不同旋转角度下的第二编码图像;第三生成单元,被配置成根据得到的第二编码图像,生成编码图像集合,并输出编码图像集合。

在一些实施例中,第一预设数目不大于二,以及第一生成单元进一步被配置成:在目标图像的边缘位置添加一个定位图像;或者在目标图像的边缘位置对称或非对称添加两个定位图像;或者在目标图像的中心区域和边缘位置分别添加一个定位图像。

在一些实施例中,第三生成单元包括:第一生成子单元,被配置成以第一编码图像为基准,按照旋转角度由小到大或由大到小的顺序,对第一编码图像和得到的第二编码图像进行存储,生成编码图像集合;或者第二生成子单元,被配置成以第一编码图像为基准,按照旋转角度由小到大或由大到小的顺序,对得到的第二编码图像进行存储,生成编码图像集合。

在一些实施例中,第三生成单元还包括:显示子单元,被配置成按照预设帧率逐个显示编码图像集合中的编码图像。

在一些实施例中,显示子单元进一步被配置成:按照旋转角度由小到大或由大到小的顺序,以预设帧率依次显示编码图像集合中的编码图像。

第三方面,本申请实施例提出了一种编码信息的识别方法,用于识别如上述第一方面中任一实施例所描述的方法生成的编码图像集合中的编码图像,包括:采集各帧显示的编码图像,识别编码图像中的第一预设数目个定位图像,并确定定位图像的位置信息,其中,编码图像集合中的编码图像按照预设帧率逐个显示;根据各帧确定的定位图像的位置信息,得到位置信息序列;根据位置信息序列,定位并识别编码图像集合中的编码图像中的编码信息。

在一些实施例中,根据位置信息序列,定位并识别编码图像集合中的编码图像中的编码信息,包括:从采集的编码图像中选取两张编码图像,将选取的两张编码图像中的一张编码图像作为变换前图像,将选取的两张编码图像中的另一张编码图像作为变换后图像,进行仿射变换矩阵的求解;利用求解出的仿射变换矩阵,对变换后图像进行逆变换,得到归一化图像;根据位置信息序列中的位置信息,确定归一化图像的中心点的位置;根据位置信息序列和中心点的位置,识别归一化图像中的编码信息。

在一些实施例中,根据位置信息序列和中心点的位置,识别归一化图像中的编码信息,包括:以中心点为极点,对位置信息序列中的位置信息进行极坐标变换;根据位置信息序列中的极坐标,识别归一化图像中的编码信息。

在一些实施例中,根据位置信息序列,定位并识别编码图像集合中的编码图像中的编码信息,包括:从采集的编码图像中选取编码图像,在选取的编码图像中,标记位置信息序列中的位置信息所指示的位置,并形成定位区域;识别选取的编码图像中位于定位区域内的信息。

在一些实施例中,根据各帧确定的定位图像的位置信息,得到位置信息序列,包括:确定是否存在采集丢帧情况;在确定存在丢帧情况时,根据定位图像的位置变化规律,补充丢帧的编码图像中的定位图像的位置信息,得到位置信息序列。

在一些实施例中,根据各帧确定的定位图像的位置信息,得到位置信息序列之前,该方法还包括:在已确定的定位图像的位置信息中,确定是否存在与当前帧确定的定位图像的位置信息相同的位置信息;响应于确定存在,停止采集编码图像。

在一些实施例中,根据各帧确定的定位图像的位置信息,得到位置信息序列之前,该方法还包括:确定当前采集时长是否达到预设时长;响应于确定达到,停止采集编码图像。

第四方面,本申请实施例提出了一种编码信息的识别装置,用于识别如上述第一方面中任一实施例所描述的方法生成的编码图像集合中的编码图像,包括:采集单元,被配置成采集各帧显示的编码图像,识别编码图像中的第一预设数目个定位图像,并确定定位图像的位置信息,其中,编码图像集合中的编码图像按照预设帧率逐个显示;序列生成单元,被配置成根据各帧确定的定位图像的位置信息,得到位置信息序列;识别单元,被配置成根据位置信息序列,定位并识别编码图像集合中的编码图像中的编码信息。

在一些实施例中,识别单元包括:求解子单元,被配置成从采集的编码图像中选取两张编码图像,将选取的两张编码图像中的一张编码图像作为变换前图像,将选取的两张编码图像中的另一张编码图像作为变换后图像,进行仿射变换矩阵的求解;变换子单元,被配置成利用求解出的仿射变换矩阵,对变换后图像进行逆变换,得到归一化图像;中心确定子单元,被配置成根据位置信息序列中的位置信息,确定归一化图像的中心点的位置;第一识别子单元,被配置成根据位置信息序列和中心点的位置,识别归一化图像中的编码信息。

在一些实施例中,第一识别子单元进一步被配置成:以中心点为极点,对位置信息序列中的位置信息进行极坐标变换;根据位置信息序列中的极坐标,识别归一化图像中的编码信息。

在一些实施例中,识别单元还包括:标记子单元,被配置成从采集的编码图像中选取编码图像,在选取的编码图像中,标记位置信息序列中的位置信息所指示的位置,并形成定位区域;第二识别子单元,被配置成识别选取的编码图像中位于定位区域内的信息。

在一些实施例中,序列生成单元包括:确定子单元,被配置成确定是否存在采集丢帧情况;补充子单元,被配置成在确定存在丢帧情况时,根据定位图像的位置变化规律,补充丢帧的编码图像中的定位图像的位置信息,得到位置信息序列。

在一些实施例中,该方法还包括:第一确定单元,被配置成在已确定的定位图像的位置信息中,确定是否存在与当前帧确定的定位图像的位置信息相同的位置信息;响应于确定存在,停止采集编码图像。

在一些实施例中,该方法还包括:第二确定单元,被配置成确定当前采集时长是否达到预设时长;响应于确定达到,停止采集编码图像。

第五方面,本申请实施例提出了一种电子设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序;当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上述第一方面或第三方面中任一实施例所描述的方法。

第六方面,本申请实施例提出了一种计算机可读介质,其上存储有计算机程序,其中,该计算机程序被处理器执行时实现如上述第一方面或第三方面中任一实施例所描述的方法。

本申请实施例提出的编码信息的生成方法和识别方法,通过在包含编码信息的目标图像中,在预设位置处添加第一预设数目个定位图像,可以生成第一编码图像。接着,通过以第一编码图像的中心区域为中心,将第一编码图像旋转第二预设数目个角度,可以分别得到第二预设数目个不同旋转角度下的第二编码图像。之后,根据得到的第二编码图像,可以生成编码图像集合。并可以输出编码图像集合。这种实施方式丰富了编码信息的生成方式。从而可以有助于满足用户的不同设计需求,有利于丰富编码信息的呈现形式。

附图说明

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:

图1是本申请的一个实施例可以应用于其中的示例性系统架构图;

图2是根据本申请的编码信息的生成方法的一个实施例的流程图;

图3a-图3d分别是本申请中的第一编码图像的四个实施例的结构示意图;

图4是根据本申请的编码信息的识别方法的一个实施例的流程图;

图5是根据本申请的编码信息的识别方法的又一个实施例的流程图;

图6是适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。

具体实施方式

下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。

图1示出了可以应用本申请实施例的编码信息的生成方法和识别方法的示例性系统架构100。

系统架构100可以包括终端101、102、103,网络104、105和服务端106。网络104可以用以在终端101、102、103之间提供通信链路的介质。网络105可以用以在终端101、102、103与服务端106之间提供通信链路的介质。网络104、105可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。

用户之间可以使用终端101、102、103通过网络104进行交互,以接收或发送消息等。同时,用户还可以使用终端101、102、103通过网络105与服务端106进行交互,以获取信息等。终端101、102、103上可以安装有各种客户端应用,例如编码信息生成和识别类应用、网页浏览器、购物类应用和即时通讯工具等。

用户也可以使用终端101、102、103上安装的编码信息生成类应用,来对包含编码信息的目标图像进行处理。从而可以生成编码图像集合。此外,用户还可以使用终端101、102、103来采集编码图像集合中的编码图像。这样,终端101、102、103可以对各编码图像进行分析处理。并且可以将处理结果(如识别出的编码信息)呈现给用户。

这里的终端101、102、103可以是硬件,也可以是软件。当终端101、102、103为硬件时,可以是具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、可穿戴设备、电子书阅读器、mp3播放器(movingpictureexpertsgroupaudiolayeriii,动态影像专家压缩标准音频层面3)、膝上型便携计算机和台式计算机等等。当终端101、102、103为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。

服务端106可以是提供各种服务的服务端,例如可以是对终端101、102、103上安装的各种应用提供支持的后台服务器。后台服务器可以对用户在应用上的操作行为进行分析处理,并根据处理结果向用户发送对应的反馈信息。作为示例,后台服务器在接收到终端发送的编码信息生成指令后,可以对包含编码信息的目标图像进行分析处理。并可以将处理结果(如编码图像集合)反馈给终端。

这里的服务端106同样可以是硬件,也可以是软件。当服务端106为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务端106为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。

需要说明的是,本申请实施例所提供的编码信息的生成方法一般由终端101、102、103或服务端106执行。而编码信息的识别方法一般由终端101、102、103执行。

应该理解,图1中的终端、网络和服务端的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端、网络和服务端。

继续参见图2,其示出了根据本申请的编码信息的生成方法的一个实施例的流程200。该编码信息的生成方法可以包括以下步骤:

步骤201,在包含编码信息的目标图像中,在预设位置处添加第一预设数目个定位图像,生成第一编码图像。

在本实施例中,编码信息的生成方法的执行主体(例如图1所示的终端101、102、103或服务端106)可以在包含编码信息的目标图像的预设位置处,添加第一预设数目个定位图像,从而生成第一编码图像。即可以将添加了第一预设数目个定位图像后的目标图像作为第一编码图像。

在这里,编码信息可以是采用各种编码方式(如二进制编码)对字符串进行编码而生成的信息。其中,字符串可以(但不限于)是包括字母、数字、符号、汉字等至少一种字符的文本信息。字符串的内容可以包括但不限于网址、地址、名片信息、商品信息、交易信息、wi-fi(wireless-fidelity,无线宽带)密码等等。而目标图像可以是包含编码信息的任意图像。这里的目标图像可以是预先存储在执行主体本地的;也可以是执行主体从网上资源或其他电子设备中获取的;还可以是用户输入至执行主体中的。

在本实施例中,定位图像可以是用于定位标记的图像。且定位图像通常与编码信息具有不同的表现形式,以便于区分。例如定位图像可以是特殊形状图像,如圆形、菱形六边形等。这样可以有别于如二维码或条形码等编码的图像形状,从而不会对编码信息的内容产生干扰。上述预设位置可以是目标图像中不会对编码信息产生影响的任意位置,如目标图像的边角位置。预设位置和第一预设数目可以根据实际情况进行设置。

此外,在目标图像中添加定位图像的方式在本申请中也不限制。例如,可以将定位图像作为图层,直接覆盖在目标图像的预设位置处的图像上。再例如,可以在目标图像的预设位置处绘制定位图像等。

在本实施例的一些可选地实现方式中,第一预设数目可以不大于二。即在目标图像中添加的定位图像的数目可以不大于二。也就是说,与传统的二维码相比,不需要过多的定位点。

例如,执行主体可以在目标图像的边缘位置添加一个定位图像,从而生成第一编码图像。如图3a所示,若编码信息位于方形框区域内,则可以在方形框的某个角(如左上角)上添加一个圆环图像(即定位图像)。这里的方形框可以是图3a中所示的正方形,也可以是长方形。在一些应用场景中,方形框可以替换为圆形框,如太极码。此时的定位图像可以(但不限于)是位于圆形框上的圆环图像;也可以是位于圆形框内、且连接圆心和边缘的曲线或直线等线段。

又例如,执行主体可以在目标图像的边缘位置对称或非对称添加两个定位图像,从而生成第一编码图像。若编码信息位于方形框区域内,则可以如图3b所示,在方形框的任意相邻的两个角(如左上角和右上角)上分别添加一个实心圆点图像。或者可以如图3c所示,在方形框的任意两个对角上分别添加一个定位图像。在图3c中,定位图像可以是圆环加实心圆点的图像。其中,圆环与实心圆点可以具有相同的圆心。

再例如,执行主体可以在目标图像的中心区域和边缘位置分别添加一个定位图像,从而生成第一编码图像。如图3d所示,若编码信息位于两个同心圆框之间,则可以在外侧圆框上添加一个圆环图像。同时,可以在内侧圆框上添加一个实心圆点图像。或者也可以在圆心处添加一个定位图像。其中,两个定位图像的中心点可以同轴,也可以不同轴。

需要说明的是,通常情况下,目标图像的主要作用是呈现编码信息。所以编码信息往往会占据目标图像的大部分区域。也就是说,目标图像的边缘位置基本上就是编码信息的边缘位置。

步骤202,以第一编码图像的中心区域为中心,将第一编码图像旋转第二预设数目个角度,分别得到第二预设数目个不同旋转角度下的第二编码图像。

在本实施例中,在生成第一编码图像后,执行主体可以以第一编码图像的中心区域为中心,将第一编码图像旋转第二预设数目个不同角度。从而可以分别得到第二预设数目个不同旋转角度下的第二编码图像。其中,旋转角度可以包括旋转方向和角度的大小。在这里,第二预设数目和旋转角度可以根据实际需求进行设置。

作为示例,执行主体可以先按照顺时针,将第一编码图像分别旋转60°、120°和180°。之后,执行主体可以按照逆时针,将第一编码图像再分别旋转60°和120°。这样可以得到等角度差的五个第二编码图像。又例如,执行主体可以按照角度差依次递增(或递减)的方式进行旋转。如按照顺时针(或逆时针),将第一编码图像分别旋转60°、130°、210°和300°。角度差依次为60、70、80和90。再例如,为了提高数据处理效率,简化处理过程,执行主体可以按照顺时针(或逆时针),以等角度差的方式旋转第一编码图像。

可以理解的是,上述旋转过程作可以是用户手动操作完成的,也可以是执行主体通过执行相应的程序而实现的。例如执行主体可以根据用户设置的参数,对第一编码图像进行仿射变换,从而得到第一个第二编码图像。接着,可以将第一个第二编码图像作为第一编码图像继续进行仿射变换。直至第二编码图像的数量达到第二预设数目。或者直至当前得到的第二编码图像与原始的第一编码图像相同,说明此时已旋转一周。这样可以减少人为操作,有助于提高数据处理效率。

步骤203,根据得到的第二编码图像,生成编码图像集合,并输出编码图像集合。

在本实施例中,执行主体可以根据步骤202中得到的第二编码图像,生成编码图像集合。并可以输出该编码图像集合。这里的输出可以是存储输出。例如可以将编码图像集合存储在本地。或者可以将编码图像集合存储至其他电子设备或云端等。

作为示例,执行主体可以按照各第二编码图像的生成顺序,将各第二编码图像依次存储至生成的集合文件中。从而可以将该集合文件作为编码图像集合。

可选地,执行主体可以以第一编码图像为基准,按照旋转角度由小到大或由大到小的顺序,对第一编码图像和得到的第二编码图像进行存储,生成编码图像集合。也就是说,编码图像集合中可以包括第一编码图像和第二编码图像。或者执行主体可以以第一编码图像为基准,按照旋转角度由小到大或由大到小的顺序,对得到的第二编码图像进行存储,生成编码图像集合。也就是说,编码图像集合中可以包括第二编码图像。这里的旋转角度是指同方向下的旋转角度。

在一些实施例中,上述输出也可以是传输输出和/或显示输出。例如执行主体可以将编码图像集合发送给终端。或者执行主体可以对编码图像集合中的编码图像进行显示。例如,执行主体可以按照任意顺序或编码图像的存储顺序,将各编码图像全部显示在屏幕上。又例如,执行主体可以按照任意顺序或编码图像的存储顺序,以预设帧率逐个显示编码图像集合中的各编码图像。也就是说,以预设帧率对各编码图像进行一个一个的显示。

进一步地,为了便于后续对编码图像的识别,执行主体可以以第一编码图像为基准,按照旋转角度由小到大或由大到小的顺序,以预设帧率依次显示编码图像集合中的编码图像。这样有助于提高编码信息的识别效率,减少用户的等待时长。

需要说明的是,预设帧率(即每秒显示的帧数)在本申请中并不限制。例如可以根据编码图像的数目来设置。此外,执行主体对编码图像集合的显示,可以是仅显示一次;也可以是循环显示指定次数(如三次);还可以是显示至指定时长(如两秒)或持续循环显示。

本实施例提供的编码信息的生成方法,通过在包含编码信息的目标图像中,在预设位置处添加第一预设数目个定位图像,可以生成第一编码图像。接着,通过以第一编码图像的中心区域为中心,将第一编码图像旋转第二预设数目个角度,可以分别得到第二预设数目个不同旋转角度下的第二编码图像。之后,根据得到的第二编码图像,可以生成编码图像集合。并可以输出编码图像集合。这种实施方式丰富了编码信息的生成方式。从而可以有助于满足用户的不同设计需求,有利于丰富编码信息的呈现形式。

请参见图4,其示出了根据本申请的编码信息的识别方法的一个实施例的流程400。该编码信息的识别方法可以用于识别上述实施例所描述的方法生成的编码图像集合中的编码图像,包括以下步骤:

步骤401,采集各帧显示的编码图像,识别编码图像中的第一预设数目个定位图像,并确定定位图像的位置信息。

在本实施例中,编码信息的识别方法的执行主体(例如图1所示的终端101、102、103)可以采集各帧显示的编码图像。其中,编码图像集合中的编码图像可以按照预设帧率被逐个显示。例如,当其他电子设备按照预设帧率逐个显示编码图像集合中的编码图像时,用户可以使用执行主体上的摄像头采集各帧显示的编码图像。又例如,当用户触发(如点击或长按等)执行主体的屏幕上的某一指定区域时,执行主体可以在该指定区域,按照预设帧率逐个显示编码图像集合中的编码图像。同时,执行主体可以采用截图等方式采集屏幕上各帧显示的编码图像。

在本实施例中,执行主体可以识别所采集的编码图像中的第一预设数目个定位图像。并可以确定定位图像的位置信息。例如,执行主体可以对编码图像进行图像识别分析,确定其中是否存在第一预设数目个特殊形状图像(即与大部分图像形状不同的图像)。若确定存在,则可以将特殊形状图像确定为定位图像。

又例如,执行主体可以对编码图像进行图像识别分析,确定其中是否存在与预存图像匹配的图像。其中,预存图像的存储位置不限制。这里的匹配可以是指图像特征之间的相似度达到阈值(如90%或100%等)。若确定存在,则可以将匹配的图像确定为定位图像。

再例如,执行主体可以将编码图像输入预先训练的识别模型中。这样,执行主体可以利用识别模型对定位图像进行识别。并且可以输出定位图像的位置信息。其中,识别模型可以是采用大量的正负样本对初始模型进行训练而得到的。正样本可以是有定位图像的样本编码图像以及定位图像的样本位置。而负样本可以是没有定位图像的样本编码图像。

在这里,上述位置信息可以(但不限于)是定位图像在编码图像中的位置信息。例如也可以是定位图像在上述指定区域(或截图)中的位置信息。而且位置信息可以(但不限于)是定位图像的中心点坐标。但需要说明的是,不同编码图像中的定位图像的位置信息可以具有相同的坐标原点。如可以将编码图像的任意角(如左上角)或任意边的中心点作为参考原点。这样有助于提高数据的处理效率。

可以理解的是,在显示编码图像集合中的各编码图像时,往往是编码图像中的编码信息的位置和定位图像的位置发生改变。而显示编码图像的屏幕或指定区域是固定不变。也就是说,不同编码图像的尺寸形状是不变的。

步骤402,根据各帧确定的定位图像的位置信息,得到位置信息序列。

在本实施例中,执行主体可以根据各帧确定的定位图像的位置信息,得到位置信息序列。作为示例,执行主体可以按照采集时间的先后顺序,对各帧确定的定位图像的位置信息进行存储,以得到位置信息序列。其中,同一编码图像中的各定位图像的位置信息可以形成数组。又例如,若编码图像中包括至少两种定位图像,则执行主体可以按照采集时间的先后顺序,对各帧确定的至少两种定位图像的位置信息分别进行存储。再例如,执行主体可以对各帧确定的定位图像的位置信息进行分析,从而确定相对位置关系。并可以按照顺时针(或逆时针)方向的顺序,对各帧确定的定位图像的位置信息进行存储。

步骤403,根据位置信息序列,定位并识别编码图像集合中的编码图像中的编码信息。

在本实施例中,执行主体可以根据步骤402中得到的位置信息序列,定位并识别编码图像集合中的编码图像中的编码信息。作为示例,执行主体可以在当前采集的编码图像中,标记位置信息序列中的位置信息所指示的位置。并可以根据标记的位置形成定位区域。例如可以采用直线或弧线将标记的各位置依次连接。并可以将位于连接线内的区域作为定位区域。或者可以根据标记的各位置来确定中心点。并以中心点为圆心,以中心点至任意标记的位置的距离为半径来确定定位区域。从而可以识别当前采集的编码图像中位于定位区域内的信息(即编码信息)。

可选地,执行主体可以先从采集的编码图像中选取编码图像。例如可以选取图像相对清晰的编码图像。或者可以选取采集的第一张编码图像(有可能为第一编码图像)。接着,可以在选取的编码图像中,标记位置信息序列中的位置信息所指示的位置,并形成定位区域。之后,可以识别选取的编码图像中位于定位区域内的信息。

需要说明的是,为了降低对用户使用的影响,上述定位和识别过程通常可以在后台运行。此外,为了提高识别效率,减少用户等待时长,编码图像的采集过程往往也不是一直进行的。在一些情况下,执行主体可以停止采集编码图像。

可选地,在采集过程中,执行主体可以在已确定的定位图像的位置信息中,确定是否存在与当前帧确定的定位图像的位置信息相同的位置信息。若确定存在相同的位置信息,则可以停止采集编码图像。可以理解的是,如果同一编码图像中包括至少两个定位图像,那么上述相同的位置信息主要是指与当前帧确定的至少两个定位图像的位置信息均相同的位置信息。

在一些实施例中,执行主体可以在开始采集时进行计时。并且在采集过程中,可以确定当前采集时长是否达到预设时长(如5秒)。若确定达到预设时长,则可以停止采集编码图像。

本实施例提供的编码信息的识别方法,通过采集各帧显示的编码图像,从而可以识别编码图像中的第一预设数目个定位图像,并可以确定定位图像的位置信息。其中,编码图像集合中的编码图像可以按照预设帧率逐个显示。之后,根据各帧确定的定位图像的位置信息,可以得到位置信息序列。最后,根据位置信息序列,可以定位并识别编码图像集合中的编码图像中的编码信息。这种实施方式可以实现对上述实施例所描述的方法生成的编码图像集合中的编码图像的识别。而且丰富了编码信息的识别方式。这样可以有助于满足不同用户的使用需求。

进一步参见图5,其示出了根据本申请的编码信息的识别方法的又一个实施例的流程500。该编码信息的识别方法可以包括以下步骤:

步骤501,采集各帧显示的编码图像,识别编码图像中的第一预设数目个定位图像,并确定定位图像的位置信息。

在本实施例中,编码信息的识别方法的执行主体(例如图1所示的终端101、102、103)可以采集各帧显示的编码图像。其中,编码图像集合中的编码图像可以按照预设帧率逐个显示。从而可以识别编码图像中的第一预设数目个定位图像,并可以确定定位图像的位置信息。参见图4实施例的步骤401中的相关描述,此处不再赘述。

步骤502,确定是否存在采集丢帧情况。

在本实施例中,执行主体可以根据相邻两个采集的编码图像之间的间隔时长,来确定是否存在采集丢帧情况。例如按照采集时间的先后顺序,第一张编码图像与第二张编码图像、第二张编码图像与第三张编码图像之间的采集间隔均为0.2秒。而第三张编码图像与第四张编码图像之间的采集间隔为0.4秒。此时,执行主体可以确定在第三张与第四张之间存在丢帧情况。

作为示例,执行主体可以根据各帧确定的定位图像的位置信息,来确定定位图像的位置变化规律。这样根据位置变化规律,执行主体可以确定是否存在采集丢帧情况。例如任意相邻的两个位置之间的距离均为l。此时,若某相邻两个位置之间的距离不为l,则可以说明在这两个位置之间缺少定位图像的位置信息。即存在采集丢帧情况。也就是说,没有采集到可以用于描述缺少的定位图像的位置信息的编码图像。

在本实施例中,若执行主体确定不存在丢帧情况,则可以根据各帧确定的定位图像的位置信息,得到位置信息序列。可以参见图4实施例的步骤402中的相关描述,此处不再赘述。若执行主体确定存在丢帧情况,则可以继续执行步骤503。

步骤503,在确定存在丢帧情况时,根据定位图像的位置变化规律,补充丢帧的编码图像中的定位图像的位置信息,得到位置信息序列。

在本实施例中,若确定存在采集丢帧情况,则执行主体可以根据定位图像的位置变化规律,补充丢帧的编码图像中的定位图像的位置信息。例如任意相邻的两个位置之间的距离均为l。此时,若某相邻两个位置之间的距离不为l,则可以在这两个位置之间确定这样的一个位置。该位置与这两个位置之间的距离均为l,且符合位置变化规律。即补充的定位图像的位置信息。这样,根据补充后的定位图像的各位置信息,可以得到位置信息序列。可以参见图4实施例的步骤402中的相关描述,此处不再赘述。

步骤504,从采集的编码图像中选取两张编码图像,将选取的两张编码图像中的一张编码图像作为变换前图像,将选取的两张编码图像中的另一张编码图像作为变换后图像,进行仿射变换矩阵的求解。

在本实施例中,执行主体可以从采集的编码图像中选取两张编码图像。之后,可以将选取的两张编码图像中的一张编码图像作为变换前图像。并可以将选取的两张编码图像中的另一张编码图像作为变换后图像。之后,可以进行仿射变换矩阵的求解。

在这里,选取方式在本申请中并不限制。例如,执行主体可以按照采集时间顺序,选取任意相邻的两张编码图像。或者执行主体可以选取采集的第一张编码图像(可能为第一编码图像),并选取后续采集的任一张编码图像。如选取一张采集图像清晰的编码图像。

其中,仿射变换是在几何上定义为两个向量空间之间的一个仿射变换或者仿射映射。通常由一个非奇异的线性变换(运用一次函数进行的变换)接上一个平移变换组成。也就是说,一个向量空间进行一次线性变换并接上一个平移,便可以变换为另一个向量空间。在有限维的情况,每个仿射变换可以由一个矩阵a和一个向量b给出,它可以写作a和一个附加的列b。

在这里,执行主体可以采用现有的各种方法来完成仿射变换矩阵的求解。作为示例,可以采用最小二乘法来估算变换矩阵。如可以取两张编码图像中几个相同像素点的位置信息,即为变换前和变换后的位置信息。然后,可以建立超线性方程组。从而通过最小二乘法可以求解出坐标转换系数(即为仿射变换矩阵的参数)。可以理解的是,为了提高数据的复用率,上述像素点可以包括定位图像。这样可以简化处理过程,提高处理效率。

再例如,执行主体也可以采用ransac算法求解仿射变换矩阵。其中,ransac(randomsampleconsensus)通常是根据一组包含异常数据的样本数据集,计算出数据的数学模型参数,得到有效样本数据的算法。该算法经常用于计算机视觉中。例如,在立体视觉领域中同时解决一对相机的匹配点问题及基本矩阵的计算。这里的仿射变换矩阵的求解方法是可市售的,在此不再赘述。

步骤505,利用求解出的仿射变换矩阵,对变换后图像进行逆变换,得到归一化图像。

在本实施例中,执行主体可以利用求解出的仿射变换矩阵,对变换后图像进行逆变换,从而可以得到归一化图像。即将选取的两张编码图像中,作为变换后图像的编码图像变换为作为变换前图像的编码图像。

步骤506,根据位置信息序列中的位置信息,确定归一化图像的中心点的位置。

在本实施例中,执行主体根据位置信息序列中的位置信息,可以确定这些位置的中心点。可以理解的是,由于第二编码图像是以第一编码图像的中心区域为中心旋转得到的。所以这里确定的中心点即为归一化图像的中心点。

步骤507,根据位置信息序列和中心点的位置,识别归一化图像中的编码信息。

在本实施例中,执行主体可以根据位置信息序列中的位置信息以及中心点的位置,来识别归一化图像中的编码信息。可以参见图4实施例的步骤403中的相关描述,此处不再赘述。

可选地,执行主体可以以步骤506中确定的中心点为极点,对位置信息序列中的位置信息进行极坐标变换。也就是说,将位置信息序列中的各位置信息的坐标原点变换为归一化图像的中心点。此时,执行主体可以根据位置信息序列中的各位置信息的极坐标,识别归一化图像中的编码信息。

本实施例提出的编码信息的识别方法,增加了丢帧情况的确定过程。同时,详细描述了根据位置信息序列来识别编码信息的过程。这样可以丰富和完善识别方法。有助于提高识别结果的准确度。

下面参见图6,其示出了适于用来实现本申请实施例的电子设备(例如图1所示的终端101、102、103或服务端106)的计算机系统600的结构示意图。图6示出的电子设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。

如图6所示,计算机系统600包括中央处理单元(cpu)601,其可以根据存储在只读存储器(rom)602中的程序或者从存储部分608加载到随机访问存储器(ram)603中的程序而执行各种适当的动作和处理。在ram603中,还存储有系统600操作所需的各种程序和数据。cpu601、rom602以及ram603通过总线604彼此相连。输入/输出(i/o)接口605也连接至总线604。

以下部件连接至i/o接口605:包括触摸屏、按键、鼠标、麦克风、摄像头等的输入部分606;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至i/o接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。

特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(cpu)601执行时,执行本申请的方法中限定的上述功能。需要说明的是,本申请的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。

附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括第一生成单元、第二生成单元和第三生成单元。再例如,还可以描述为:一种处理器包括采集单元、序列生成单元和识别单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一生成单元还可以被描述为“在包含编码信息的目标图像中,在预设位置处添加第一预设数目个定位图像,生成第一编码图像的单元”。

作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。例如,上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:在包含编码信息的目标图像中,在预设位置处添加第一预设数目个定位图像,生成第一编码图像;以第一编码图像的中心区域为中心,将第一编码图像旋转第二预设数目个角度,分别得到第二预设数目个不同旋转角度下的第二编码图像;根据得到的第二编码图像,生成编码图像集合,并输出编码图像集合。

再例如,当上述一个或者多个程序被该电子设备执行时,还可以使得该电子设备:采集各帧显示的编码图像,识别编码图像中的第一预设数目个定位图像,并确定定位图像的位置信息,其中,编码图像集合中的编码图像按照预设帧率逐个显示;根据各帧确定的定位图像的位置信息,得到位置信息序列;根据位置信息序列,定位并识别编码图像集合中的编码图像中的编码信息。

以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1