本发明涉及数据处理技术领域,尤其涉及基于图像信息的信息推送方法。
背景技术:
推送服务是指服务器向将信息实时送达终端的服务。它一般需要终端长时间联网,但可以保证信息达到的实时性。而随着互联网技术和相关软件产品的不断发展,使用推送服务查看和获取信息已经成为人们学习、工作和生活的一部分。
目前,以智能电视作为载体的终端所采用的推送信息方法是完全基于用户的使用记录来选择内容推荐的,也就是说,终端在采用这种方法进行内容推送时,推送内容对于使用同一台只能电视的不同用户是完全一致的。而根据实际情况是,不同的家庭成员所期望收到的推送内容是完全有可能不一致的。例如不同年龄段的用户和不同性别的用户所感兴趣的推送内容不同。
技术实现要素:
本发明的目的是针对现有技术的缺陷,提供一种基于图像信息的信息推送方法,使得用户终端通过摄像装置进行拍照得到图像数据,根据神经网络模型对图像数据进行性别和年纪的识别,针对不同的性别和年龄确定针对当前用户的推送信息,从而实现更加精准的信息推送,进而使得使用户终端更加的智能化。
为实现上述目的,本发明提供了基于图像信息的信息推送方法,所述基于图像信息的信息推送方法包括:
用户终端根据用户输入的获取指令通过摄像装置获取原始图像数据;
所述用户终端对所述原始图像数据进行降噪处理,得到待识别图像数据并发送至服务器;所述待识别图像数据携带有用户终端id;
所述服务器根据第一神经网络模型对所述待识别图像数据进行第一识别处理,得到多个图像信息,并确定所述多个图像信息中是否包括用户图像信息;
当所述多个图像信息中包括所述用户图像信息时,根据所述用户图像信息确定所述原始图像数据中可识别目标用户的数量;
当所述数量大于1时,确定所述多个图像信息中是否包括遥控装置的图像信息;
当所述多个图像信息中包括所述遥控装置的图像信息时,根据第二神经网络模型确定所述遥控装置和各可识别目标用户之间的多个距离数据;
确定所述多个距离数据中的最小距离数据所对应的目标用户的用户图像信息,并根据所述第一神经网络模型对所述目标用户的用户图像信息进行第二识别处理,得到所述目标用户的性别信息和年龄信息;
根据所述目标用户的性别信息和年龄信息获取推送信息,并根据所述用户终端id将所述推送信息发送至所述用户终端,用以所述用户终端显示所述推送信息。
优选的,所述用户终端根据用户输入的获取指令通过摄像装置获取原始图像数据具体为:
所述用户终端根据用户输入的获取指令根据预设的曝光频率参数通过摄像装置获取预设数量个原始图像数据。
进一步优选的,所述用户终端对所述原始图像数据进行降噪处理,得到待识别图像数据并发送至服务器具体为:
所述用户终端对所述预设数量个原始图像数据进行降噪处理,得到预设数量个待识别图像数据,并对所述预设数量个待识别图像数据进行压缩处理发送至所述服务器。
优选的,当所述多个图像信息中不包括所述用户图像信息时,所述方法还包括:
所述服务器根据预设的性别信息和预设的年龄信息获取推送信息,并根据所述用户终端id将所述推送信息发送至所述用户终端,用以所述用户终端显示所述推送信息。
优选的,当所述数量等于1时,所述方法还包括:
所述服务器所述第一神经网络模型对所述用户图像信息进行第二识别处理,得到所述目标用户的性别信息和年龄信息。
优选的,当所述多个图像信息中不包括所述遥控装置图像信息时,所述方法还包括:
根据所述第一神经网络模型对多个所述用户图像信息进行第二识别处理,得到多个所述性别信息和多个所述年龄信息;
对多个所述性别信息和多个所述年龄信息进行统计处理,得到所述目标用户的性别信息和年龄信息。
优选的,所述推送信息包括图片推送信息和视音频推送信息。
本发明实施例提供的基于图像信息的信息推送方法,使得用户终端通过摄像装置进行拍照得到图像数据,根据神经网络模型对图像数据进行性别和年纪的识别,针对不同的性别和年龄确定针对当前用户的推送信息,从而实现更加精准的信息推送,进而使得使用户终端更加的智能化。
附图说明
图1为本发明实施例提供的基于图像信息的信息推送方法的流程图。
具体实施方式
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
本发明实施例提供的一种基于图像信息的信息推送方法,用于具有安卓操作系统的智能电视或其他可以连接到网络的设备向用户推送消息的相关操作。其方法流程图如图1所示,包括如下步骤:
步骤100,用户终端通过摄像装置获取原始图像数据;
具体的,用户终端可以理解为具有视音频播放功能的智能电视机、电脑或智能手机等设备。以下以智能电视为例对用户终端进行举例说明。
摄像装置可以是智能电视中的一部分,也可以是单独加装在智能电视上的一个单独的装置。
智能电视首次开机后开始加载摄像装置的驱动,当摄像装置的驱动加载完毕后用户开始使用智能电视。在使用智能电视的过程中,用户在返回到首页时,会通过遥控装置向智能电视发送获取指令。智能电视根据获取指令根据预设的曝光频率参数通过摄像头对智能电视屏幕对面的影像进行连续拍摄,获取预设数量个原始图像数据,拍摄出的照片即为原始图像数据。
步骤110,用户终端对原始图像数据进行降噪处理,得到待识别图像数据并发送至服务器;
具体的,由于现在的摄像设备获取到的图像多为高分辨率的彩色图像,而高分辨率的彩色图像的数据存储量比较大,不利于后续对图像的处理。因此智能电视在获取到预设数量个原始图像数据后,首先对每个原始图像数据进行降噪处理。优选的,降噪处理包括调整图像大小和灰度处理。智能电视将每个原始图像数据缩放为预设的大小,且通道为单通道灰度图像,处理后的图像数据为待识别图像数据。
然后,智能电视将预设数量个待识别图像数据进行压缩处理,并打包发送至服务器,以便服务器对待识别图像数据进行后续处理。并且,待识别图像数据携带有智能电视的用户终端id,用以服务器区分待识别图像数据是由哪个智能电视发送的。
步骤120,服务器根据第一神经网络模型对待识别图像数据进行第一识别处理,得到多个图像信息;
具体的,神经网络模型(neuralnetwork,nn)是一种模拟人类实际神经网络的数据模型,它是由大量的、简单的处理单元广泛地互相连接而形成的复杂网络系统,也可以理解为一个高度复杂的非线性动力学习系统。nn模型具有自学习功能的优越性。例如,实现图像识别时,只在先把许多不同的图片和对应的识别的特征(识别结果)输入nn模型中,nn模型就会通过自学习功能,得出的一系列用于预测输出变量的新特征。
优选的,本发明实施例中采用卷积神经网络模型(convolutionalneuralnetwork,cnn)遍历预设数量个待识别图像数据。服务器先将接收到的待识别图像数据压缩包进行解压,释放出预设数量个待识别图像数据,在根据cnn模型识别待识别图像数据上的所有图像信息,得到待识别图像数据的多个图像信息。其中,得到图像信息的为第一识别处理过程。
在一个具体的例子中,摄像装置在对智能电视屏幕前的影像进行拍摄时,所拍摄到的照片中包括一家三口人、一个沙发和一个遥控器。则服务器根据cnn模型遍历预设数量个待识别图像数据后,识别到待识别图像数据中的图像信息包括照片中的三个目标用户的用户图像信息、一个沙发的图像信息和一个遥控器的图像信息。
步骤130,确定多个图像信息中是否包括用户图像信息;
具体的,在得到多个图像信息后,服务器根据nn模型识别多个图像信息中是否包括目标用户的用户图像信息,也就是说,摄像装置在对智能电视屏幕前的影像进行拍摄时,所拍摄到的照片中有没有“人”。当多个图像信息中包括用户图像信息时,也就是拍摄到的照片中有“人”时,执行下述步骤140-190。当多个图像信息中不包括用户图像信息时,也就是拍摄到的照片中没有“人”时,执行下述步骤141后,直接执行步骤190。
步骤140,确定可识别目标用户的数量是否大于1;
具体的,由于本发明实施例最终的目的是根据智能电视屏幕前的用户进行有针对行的内容推送,那么智能电视在对目标用户进行内容推送前就需要确定一个目标用户,才能根据这个目标用户的特征进行有针对性的内容推送。也就是说,当多个图像信息中包括用户图像信息时,即拍摄到的照片中有“人”时,服务器需要确定可识别目标用户的数量是否大于1,也就是拍摄到的照片中的“人”是否大于1个人。由于图像信息不可能为负数,且上述步骤140已判断出包括目标用户的用户图像信息,则原始图像数据中可识别目标用户的数量只可能为1或者大于1。
当可识别目标用户的数量大于1时,执行下述步骤150-190。当可识别目标用户的数量等于1时,跳过下述步骤150-160,直接执行下述步骤170-190。
步骤150,确定多个图像信息中是否包括遥控装置的图像信息;
具体的,有上述说明可知,智能电视需要确定一个目标用户,才能根据这个目标用户的特征进行有针对性的内容推送。那么当可识别目标用户的数量大于1,也就是在智能电视屏幕前有很多用户时,就需要对这些用户进行挑选,选出一个用户作为目标用户。而第一筛选条件就是判断待识别图像数据中的遥控装置和各可识别目标用户之间,也就是遥控器及遥控器距离各个用户之间的距离。但是待识别图像数据中可有可能不包括有遥控装置的图像信息,也就是照片中没有遥控器或者没识别出遥控器,则需要根据第二筛选条件选择目标用户。其中,第二筛选条件选择在下文中会有详细说明。
在这里需要指出的是,由于第一筛选条件要优先于第二筛选条件,因此服务器需要先确定多个图像信息中是否包括遥控装置的图像信息。当多个图像信息中包括遥控装置的图像信息时,执行下述步骤160-190。当多个图像信息中不包括遥控装置的图像信息时,执行下述步骤161后,直接执行步骤190。
步骤160,根据第二神经网络模型确定所述遥控装置和各可识别目标用户之间的多个距离数据;
具体的,第二神经网络模型可以理解为关系神经网络模型(regionswithconvolutionalneuralnetwork,r-cnn)。r-cnn模型是cnn模型中的一种。由于r-cnn模型的计算是建立在区域(regions)上的,因此可以更好的应用到确定待识别图像数据中的每个图像信息之间的关系。
当多个图像信息中包括遥控装置的图像信息时,服务器根据第二神经网络模型确定所述遥控装置和各可识别目标用户之间的多个距离数据,确定多个距离数据中的最小距离数据所对应的目标用户的用户图像信息,也就是根据第一筛选条件挑选目标用户。
在一个具体的例子中,摄像装置拍摄到的照片内容包括:一家三口坐在沙发前,其中用户a手里拿着遥控器坐在沙发正中心,而用户b和用户c分别坐在沙发两边。则服务器根据cnn模型识别出了用户a、用户b、用户c和遥控器的图像信息,并根据r-cnn模型确定了遥控器距离用户a最近,则用户a的用户图像信息即为挑选出的目标用户的用户图像信息。
步骤170,根据第一神经网络模型对用户图像信息进行第二识别处理,得到目标用户的性别信息和年龄信息;
具体的,当服务器根据r-cnn模型确定了一个目标用户的用户图像信息,或者当可识别目标用户的数量等于1(基于上述步骤140的判断),即不用在多个用户图像信息中确定一个目标用户的用户图像信息时,服务器就可以再次根据nn模型对已确定的目标用户的用户图像信息进行第二识别处理。
服务器根据nn模型进行的第二识别处理与第一识别处理不同,第一识别处理主要是分割待识别图像数据,得到多个图像信息,而第二识别处理是针对一个具体的用户图像信息进行性别识别和年龄段识别,得到目标用户的性别信息和年龄信息。
优选的,本发明实施例在进行第二识别处理时,同样采用cnn模型进行识别处理。而在进行年龄段识别时,将年龄段分为三段,分别为:幼年、中年和老年。
在一个具体的例子中,摄像装置所拍摄到的距离遥控器最近的用户a,则服务器根据cnn模型识别用户a的用户图像信息,得到了用户a的性别信息为“男性”,年龄信息为“中年”。
步骤180,根据目标用户的性别信息和年龄信息获取推送信息;
具体的,由于不同年龄段、不同性别的用户所感兴趣的推送内容也不同,因此服务器需要根据年龄段和性别信息选取需要向用户推送的推送信息。服务器中包括推送信息数据库。推送信息数据库中包括性别信息和年龄信息以及推送信息的对应关系。服务器根据目标用户的性别信息和年龄信息,在推送信息数据库查询与目标用户的性别信息和年龄信息相对应的推送信息,并根据用户终端id将推送信息发送至智能电视。
在一个具体的例子中,服务器根据cnn模型识别用户a的用户图像信息,得到了用户a的性别信息为“男性”,年龄信息为“中年”,并根据性别信息为“男性”,年龄信息为“中年”在推送信息数据库查询到了性别信息为“男性”,年龄信息为“中年”相对应的推送信息为“xxx电视剧热映中,点击查看”,并将“xxx电视剧热映中,点击查看”和相关连接发送至智能电视中。
优选的,推送信息包括图片推送信息和视音频推送信息。也就是推送信息可以是以图片或问题的方式进行推送的,也可以是以视音频的方式进行推送的。
步骤190,用户终端显示推送信息;
具体的,智能电视接收到服务器根据目标用户的性别信息和年龄信息所得到的推送信息,并将推送信息显示给用户。
上述步骤140-190为当多个图像信息中包括用户图像信息时的方法步骤,而当当多个图像信息中不包括用户图像信息,时则执行下述步骤141后,直接执行上述步骤190,完成整个方法流程。
步骤141,根据预设的性别信息和预设的年龄信息获取推送信息;
具体的,根据上述步骤130的判断,当多个图像信息中不包括用户图像信息,也就是所拍摄到的照片中有没有“人”,服务器根据预设的性别信息和预设的年龄信息从推送信息数据库中获取推送信息。获取步骤同步骤180一样。
优选的,预设的性别信息为“女性”,预设的年龄段信息为“中年”。
上述步骤160-190为当多个图像信息中包括遥控装置的图像信息时的方法步骤,而当多个图像信息中包括遥控装置的图像信息时的方法步骤时,则执行下述步骤161后,直接执行上述步骤190,完成整个方法流程。
步骤161,对多个用户性别信息和多个用户年龄信息进行统计处理,得到所述目标用户的性别信息和年龄信息;
具体的,根据上述步骤150的判断,当多个图像信息中包括多个用户图像信息,但不包括遥控装置的图像信息时,服务器将启用第二筛选条件,选择目标用户。
进一步具体的,服务器首先需要根据nn模型对多个用户图像信息进行第二识别处理,得到多个用户性别信息和多个用户年龄信息。其中第二识别处理过程同上述步骤170一样。然后,服务器对多个用户性别信息和多个用户年龄信息进行统计处理,得到目标用户的性别信息和年龄信息。
优选的,第二筛选条件为:用户性别信息为“女”优先于用户性别信息为“男”,用户年龄信息为“老年”优先于用户年龄信息为“幼年”,且用户年龄信息为“幼年”优先于用户年龄信息为“中年”。
这里需要再次说明的是,不论执行完上述步骤180,或上述步骤141,或上述步骤161,最终都会执行步骤190。也就是说,不论通过什么方式确定完目标用户的年龄信息和性别信息,服务器都会根据目标用户的年龄信息和性别信息获取相应的推送信息并发送至智能电视,用户也都会通过用户智能电视收看到服务器推送的推送信息。
本发明实施例提供的基于图像信息的信息推送方法,使得用户终端通过摄像装置进行拍照得到图像数据,根据神经网络模型对图像数据进行性别和年纪的识别,针对不同的性别和年龄确定针对当前用户的推送信息,从而实现更加精准的信息推送,进而使得使用户终端更加的智能化。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、用户终端执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。