具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的技术方案的主要原理可包括:通过收集用户在制作文字表情图片过程中所采用的字符,将字符与该图片的图像要素关联保存在图像关联数据库中。在有另一个用户制作文字表情图片的情况下,将与之相似的图片所采用的文字推荐给该另一个用户。
本申请的方案可适用于为用户提供文字表情图片制作服务的设备上,该设备包括但不限于手机、笔记本电脑、个人电脑、多个计算机设备组成的计算机系统等。
在本申请中,可通过收集大量的用户在制作文字表情图片时所采用的文字并保存该文字与图像要素的关联关系以建立能够提供配图字符的图像关联数据库。
首先介绍建立图像关联数据库的方法,参见图1,图1是本申请实施例提供的一种建立图像关联数据库的方法,该方法可应用于上述提到的用于为用户提供文字表情图片制作服务的设备上,如图所示,所述方法包括:
步骤S101,根据第二用户制作的第二图像确定所述第二用户在所述第二图像添加的第二配图字符。
这里,配图字符指用户在制作文字表情图片的过程中在图片中添加的符合图片中的图像所表达或传递的含义的文字/字符。例如,如图2所示,图2为一张文字表情图片,图2中的图像皱着眉头,一幅不开心的样子,图中添加的文字为“我不开心了”,“我不开心了”即为该图片的配图字符。
具体的,可以在第二用户制作第二图像的过程中获取第二用户的输入以确定第二用户在第二图像中添加的第二配图字符,例如,第二用户制作的第二图像为图2所示的图片,第二用户在文字输入框中输入“我不开心了”并将文字输入框拖到图片中的图像下方并保存,输入框中的文字为用户输入的,获取输入框中的文字则可以确定第二用户在第二图像中添加的第二配图字符为“我不开心了”。
步骤S102,对所述第二图像进行特征提取确定所述第二图像对应的图像要素。
这里,可以通过深度学习的方式对第二图像进行特征提取确定第二图像对应的图像要素。深度学习是指多层神经网络上运动各种机器学习算法解决图像、文本等各种问题的算法集合,通过分层网络获取分层次的特征信息。
本申请实施例中,图像要素是指用于评判在两张图片在一个或几个维度上是否相同/相似的一些要素,维度可以指颜色、纹理、大小、位置等,图像要素可以为图像类别、图像对象、图像位置、图像背景或图像姿态中的一个或多个。
本申请实施例中,图像类别是指图片的整体类别,图像类别是对图片的整体图像的划分,例如,第二图像按照图像类别可划分为风景类图片、人物类图片、动物类图片、服饰类图片、电子产品类图片、机械制造类图片、日用品类图片,等等,不限于这里的示例。
本申请实施例中,图像对象是对图片中的主体图像的划分,其中,主体图像是指能表现图片的主要意义或含义的图像,图片中主体图像之外的其他图像用于衬托该主体图像。图像对象为对某一图像类别下的图片的详细分类,可以看作是图片的子分类,即图片中的主体图像具体是什么。例如,已知图片的图像类别为动物类图片,则按照图像对象可划分为猫、狗、狮子、老虎、大象,等等。
具体实现中,可通过深度学习算法建立图像类别区分模型和多个不同的图像对象区分模型,其中,一个图像类别对应一个图像对象区分模型。首先,可根据图像类别区分模型确定第二图像的图像类别,在确定第二图像的图像类别后,选择该图像类别对应的图像对象区分模型用于确定第二图像对应的图像对象。
例如,图像类别共有10类,分别为风景、人物、动物、蔬菜、服饰、电子产品、日用品、水果以及其他,则图像对象区分模型有10个,分别与10个图像类别对应,假设通过图像类别区分模型确定图片的图像类别为水果,则通过水果对应的图像对象区分模型确定第二图像中的水果具体为哪一种水果。
本申请实施例中,图像位置是指图像对象在图片中的位置,在一种实施方式中,可以用图像对象在图片中占据的区域表示图像对象在图片中的位置,例如,如图3所示,图片被划分为九个区域,分别为a区域,b区域,c区域,d区域,e区域,f区域,g区域,h区域以及i区域,图像对象在图片的中间且同时占据e区域、f区域以及d区域,则图像对象的位置表示为e区域、f区域以及d区域,根据这三个区域,可确定图像对象在图片中的大致位置;在可选实施方式中,还可以用图像对象在图片中的坐标范围、图像对象相对于图片中的参考点的位置等来表示图像对象在图片中的位置,本申请不做限制。
本申请实施例中,图像背景是指图片中的除主体图像以外的用于衬托主体图像的其他图像。
本申请实施例中,图像姿态是指动作、手指、表情等主体图像所呈现出来的姿态,例如,图像姿态可以为微笑、奔跑、握拳等姿态。
下面结合图4所示的图片来对图像类别、图像对象、图像位置、图像背景以及图像姿态进行说明。
如图4所示,图4是一张小狗在草地上奔跑的图片,图片的主体图像为狗,则图4所述的图片的图像类别为动物,图像对象为狗,图像位置为图片居中的位置(可用坐标或在图片中占据的区域来表示),图片背景为草地和灌木,图像姿态为奔跑。
应理解的是,上述对图像要素的介绍仅作为本申请实施例提供的一个示例,在可选实施方式中,图像要素还可以是其他用于评判两张图片是否相同/相似的一些要素,例如,图像要素还可以为图像尺寸、图像颜色,等等;图像类别、图像对象、图像背景、图像姿态、图像位置还可以有更多的情况,例如,图像类别还可以有书籍、植物等类别,本申请不做限制。
本申请实施例中,针对于不同的图像要素,可采用不同的深度学习算法对第二图像进行特征提取以确定不同的图像要素的内容。
这里,深度学习算法包括但不限于K邻近(K-Nearest Neighbor,KNN)算法、卷积神经网络(Convolution Neural Networks,CNN)算法、误差反向(Back Propagation,BP)神经网络算法。
本申请实施例中,在执行步骤S101~S102之前,可通过对大量的样本图像进行训练得到能实现对图像进行特征提取确定图像对应的图像要素的特征提取模型,其中,该特征提取模型可以为卷积神经网络模型、BP神经网络模型、KNN模型,等等。
具体的,以该特征提取模型为卷积神经网络模型为例,对大量的样本图像进行训练得到卷积神经网络模型的方法如下:
获取样本图像以及所述样本图像携带的图像要素;
将所述样本图像以及所述样本图像携带的图像要素作为训练样本,对初始卷积神经网络模型进行训练得到所述卷积神经网络模型。
这里,初始卷积神经网络模型是具备分类能力的初始模型,通过将样本图像以及样本图像携带的图像要素作为训练样本送入该初始卷积神经网络模型中,该初始卷积神经网络能进行深度学习,根据训练样本对初始模型中的参数进行修改,以得到最逼近该训练样本的卷积神经网络模型。
步骤S103,将所述第二图像对应的图像要素以及所述第二配图字符关联保存在图像关联数据库中。
具体的,例如第二图像为图4所示的图片,第二用户在第二图像中添加的第二配图字符为“随风奔跑”,对第二图像进行特征提取确定的图像要素分别为动物、狗、居中、草地、奔跑,则将动物、狗、居中、草地、奔跑以及第二配图字符“随风奔跑”关联保存在图像关联数据库中,具体可以如表1所示:
数据编号 |
图像类别 |
图像对象 |
图像位置 |
图像背景 |
图像姿态 |
配图字符 |
1 |
动物 |
狗 |
居中 |
草地 |
奔跑 |
随风奔跑 |
表1
本申请实施例中,通过收集用户在制作图片的过程中使用的配图字符以及该图片的图像要素,将配图字符与图像要素关联保存在图像关联数据库中,在图像关联数据库建立完成后,在有其他的用户制作图片时,可将与该图片的图像要素相同或部分相同的图片的配图字符推荐给用户,解决用户制作图片时想不到合适字符的尴尬,提高图片制作效率。
基于上述建立的能够向用户提供配图字符的图像关联数据库,为用户提供文字表情图片制作服务的设备可向用户推荐配图字符。
参见图5,图5是本申请实施例提供的一种图像处理的方法的流程示意图,该方法可应用于上述提到的用于为用户提供文字表情图片制作服务的设备上,所述方法至少包括:
步骤S201,确定第一用户当前正在制作的第一图像。
这里,可通过获取用户在网页或应用客户端的视图界面上的输入确定第一用户当前正在制作的第一图像,例如,为用户提供文字表情图片制作服务的设备为网络服务器,则网络服务器向第一用户显示制作文字表情的网页,通过网页获取用户上传的图片,将其确定为第一图像;又如,为用户提供文字表情图片制作服务的设备为移动终端或个人电脑,则移动终端或个人电脑可确定第一用户在文字表情图片制作应用上打开/选择的图片,将其确定为第一图像;不限于这里的描述,在可选实施方式中,还可以通过其他方式确定第一用户当前正在制作的图片。
步骤S202,对所述第一图像进行特征提取确定所述第一图像对应的图像要素,所述图像要素为用于判定至少两个图像之间的相似程度的要素。
这里,可以以深度学习的方式对第一图像进行特征提取确定第一图像对应的图像要素。
其中,以深度学习的方式确定第一图像的图像要素的方式与确定第二图像的图像要素的方式相同,以深度学习的方式对第一图像进行特征提取确定第一图像对应的图像要素的具体实现方式可参考上述图1对应的实施例中步骤S102中的描述,此处不再赘述。
在可选实施方式中,在图像要素包括图像类别的情况下,还可以采用如下方式确定第一图像对应的图像类别:
预置图像类别并在用户选择要制作的图片时向用户显示预置的图像类别,根据用户的选择操作确定第一图像中的图像类别。例如,在用户选择要制作的图片时,向用户显示图像类别的分类列表,根据用户在分类列表中的选择确定第一图像的图像分类。
举例来说,如图6所示,图6中为用户选择要制作的图片时的视图界面,假设用户要制作的图片为人物类的图片,用户将要制作的图片拖动到该视图界面中,并在该视图界面中的分类列表中选择“人物”分类并点击“确定”,则可以确定用户当前正在制作的图片的图像分类为“人物”。
步骤S203,根据所述图像要素在图像关联数据库中查找适用于所述第一图像的第一配图字符。
具体的,可根据图像要素在图像关联数据库中查找包含至少一个该图像要素的第一数据记录,对第一数据记录中的各个图像要素进行加权计算得到第一数据记录对应的权重值,根据该权重值将第二数据记录中的配图字符确定为适用于第一图像的第一配图字符,其中,第二数据记录为符合第一权重条件的第一数据记录。
这里,包含至少一个该图像要素的第一数据记录是指图像要素与该第一图像的图像要素部分相同的数据记录。例如,关联数据库中的数据记录如表2所示:
图像类别 |
图像对象 |
图像位置 |
图像背景 |
图像姿态 |
人物 |
老人 |
图片正中 |
建筑 |
握拳 |
风景 |
河流 |
图片下半区域 |
山峰 |
流淌 |
动物 |
狗 |
图片左半区域 |
沙发 |
奔跑 |
人物 |
小孩 |
图片正中 |
沙滩 |
奔跑 |
表2
若第一图像的图像要素为“人物”、“中年”、“图片左下区域”、“公路”、“奔跑”,则第一数据记录为上述表2中的第一条数据记录、第三条数据记录和第四条数据记录,因为,第一条数据记录中有一个图像要素与第一图像的图像要素相同,第一条数据记录的图像类别与第一图像的图像类别相同,第三条数据记录中有一个图像要素与第一图像的图像要素相同,第三条数据记录的图像姿态与第一图像的图像姿态相同,第四条数据记录中有两个图像要素与第一图像的图像要素相同,第四条数据记录的图像类别、图像姿态与第一图像的图像类别、图像姿态相同。
本申请实施例中,可分别对不同的图像要素设置不同的权重,然后对查找得到的第一数据记录中的各个要素进行加权计算得到第一数据记录。这里,可将第一数据记录中与第一图像的图像要素相同的图像要素赋值为1,将第一数据记录中与第一图像的图像要素不同的图像要素赋值为0,然后根据不同的图像要素对应的权重进行加权计算。例如,如上所述,表2中的第一条数据记录、第三条数据记录和第四条数据记录均为第一数据记录,假设图像类别的权重为8,图像对象的权重为5,图像位置的权重为2,图像背景的权重为1,图像姿态的权重为4,则第一条数据记录对应的权重值为1*8+0*5+0*2+0*1+0*4=8,第三条数据记录的权重值为0*8+0*5+0*2+0*1+1*4=4,第四条记录的权重值为1*8+0*5+0*2+0*1+1*4=12。
在可选实施方式中,第一权重条件可以为以下几种条件:
1)权重值按从大到小排列处于前N位,N为大于或等于1的正整数,即第二数据记录为第一数据记录中的权重值按从大到小排列处于前N位的第一数据记录。
例如,N等于3,查找到的第一数据记录有10条,其对应的权重值分别为15,17,19,20,14,17,19,14,15,13,按从大到小排列处于前3位的权重值分别为20,19,19,则将第一数据记录中的权重值为20、19、19的第一数据记录确定为第二数据记录。
2)权重值大于第一权重值,即第二数据记录为第一数据记录中的权重值大于第一权重值的第一数据记录。
例如,第一权重值为16,查找到的第一数据记录有10条,其对应的权重值分别为15,17,19,20,14,17,19,14,15,13,大于第一权重值的权重值分别为20,19,19,17,17,则将第一数据记录中权重值为20,19,19,17,17的第一数据记录确定为第二数据记录。
3)权重值按从大到小排列处于前M位且大于第二权重值,M为大于或等于1的正整数,即第二数据记录为第一数据记录中的按从大到小排列处于前M位且大于第二权重值的第一数据记录。
这里,第二权重值可以与第一权重值相等,也可以与第一权重值不等;M可以与N相等,也可以与N不等。
在可选实施方式中,还可以有其他的第一权重条件,本申请不做限制。
步骤S204,将所述第一配图字符推荐给所述第一用户。
本申请实施例中,通过对用户当前正在制作的第一图像进行特征提取确定第一图像对应的图像要素,根据该图像要素在关联数据库中查找到适用于该第一图像的第一配图字符,由于图像要素是用于标识两张图片的图像是否相同或相似的一些要素,根据图像要素找到的第一配图字符为与第一图像相类似的一些图片所采用的配图字符,第一配图字符符合第一图像中的图像所表达或传递的含义,将第一配图字符推荐给用户可以解决用户制作图片时想不到合适字符的问题,提高图片制作效率。
在一些可能的实施例中,在第一配图字符有多个的情况下,可确定多个第一配图字符的推荐顺序,按照第一配图字符的推荐顺序将第一配图字符推荐给第一用户。
在一种可能的实现方式中,可根据第二数据记录对应的权重值确定第一配图字符的推荐顺序,其中,第一配图字符的推荐顺序与第二数据记录对应的权重值负相关,即第二数据记录对应的权重值越大,该第二数据记录中的第一配图字符的推荐顺序越小。由前述图5对应的实施例的描述可知,第二数据记录为权重值符合第一权重条件的第一数据记录,第一数据记录为图像要素与第一图像的图像要素部分相同的数据记录。第一数据记录对应的图片与第一图像相似,权重值越大,第一数据记录对应的图片与第一图像的相似度越高。
例如,第一配图字符、第二数据记录、权重值的对应关系如表3所示:
第二数据记录编号 |
第一配图字符 |
权重值 |
第二数据记录1 |
今天真开心 |
15 |
第二数据记录2 |
走,吃饭去 |
20 |
第二数据记录3 |
你在干什么 |
18 |
表3
由表3可知,第二数据记录2对应的权重值大于第二数据记录3对应的权重值,第二数据记录3对应的权重值大于第二数据记录1对应的权重值,则将第二数据记录2中的第一配图字符“走,吃饭去”的推荐顺序确定为1,将第二数据记录3中的第一配图字符“你在干什么”的推荐顺序确定为2,将第三数据记录1的第一配图字符“今天真开心”的推荐顺序确定为3。
在另一种可能的实现方式中,可根据第一配图字符被保存在图像关联数据库的时间确定第一配图字符的推荐顺序,其中,第一配图字符的推荐顺序与时间负相关,即第一配图字符被保存在图像关联数据库中的时间越早,第一配图字符的推荐顺序越大。
例如,第一配图字符、第一配图字符被保存在图像关联数据库的时间的对应关系如表4所示:
第一配图字符 |
保存时间 |
今天真开心 |
2017.11.11 |
走,吃饭去 |
2017.11.12 |
你在干什么 |
2017.11.13 |
表4
由表4可知,第一配图字符“今天真开心”被保存在图像关联数据库中的时间早于第一配图字符“走,吃饭去”,第一配图字符“走,吃饭去”被保存在图像关联数据库中的时间早于第一配图字符“你在干什么”,则将第一配图字符“今天真开心”的推荐顺序确定为3,将第一配图字符“走,吃饭去”的推荐顺序确定为2,将第一配图字符“你在干什么”的推荐顺序确定为1。
在又一种可能的实现方式中,还可结合第二数据记录对应的权重值以及第一配图字符被保存在图像关联数据库的时间确定第一配图字符的推荐顺序,其中,第一配图字符的推荐顺序与第二数据记录对应的权重值负相关,第一配图字符的推荐顺序与第一配图字符被保存在图像关联数据库的时间负相关。
例如,在两个第二数据记录的权重值相同的情况下,可确定两个第二数据记录的创建时间,将创建时间较早的第二数据记录的第一配图字符放在较后的推荐顺序。
在本实施例中,在第一配图字符有多个的情况下,通过给多个第一配图字符确定推荐顺序并按照推荐顺序向用户推荐配图字符,可以将更适合与第一图像的配图字符优先推荐给用户。
在一些可能的实施例,在向用户推荐配图字符后,可确定用户制作图片所采用的配图字符并保存该配图字符与图像要素的关联关系,以不断丰富图像关联数据库的内容。
参见图7,图7是本申请实施例提供的另一种图像处理的方法的流程示意图,如图所示,所述方法包括:
步骤S301,确定第一用户当前正在制作的第一图像。
步骤S302,对所述第一图像进行特征提取确定所述第一图像对应的图像要素,所述图像要素为用于判定至少两个图像之间的相似程度的要素。
步骤S303,根据所述图像要素在图像关联数据库中查找适用于所述第一图像的第一配图字符。
步骤S304,将所述第一配图字符推荐给所述第一用户。
在本申请实施例中,步骤S301~S304的具体实现方式可参考步骤S201~S204的描述,此处不再赘述。
步骤S305,确定所述第一用户为所述第一图像添加的第三配图字符。
步骤S306,将所述图像要素和所述第三配图字符关联保存在所述图像关联数据库中。
在本申请实施例中,通过将用户为第一图像添加的第三配图字符与第一图像对应的图像要素关联保存在图像关联数据库,可丰富图像关联数据库,在有其他用户进行文字表情图片制作时,可以推荐更多、更准确的配图字符给用户。
上述详细阐述了本申请实施例的方法,下面提供了本申请实施例的装置。
参见图8,图8是本申请实施例提供的一种图像处理的装置的结构示意图,该装置可用于执行上述图1至图7对应的实施例中的方法,该装置包括但不限于:手机、笔记本电脑、个人电脑、多个计算机设备组成的计算机系统,如图所示,所述装置40包括:
图像确定单元410,用于确定第一用户当前正在制作的第一图像;
图像要素确定单元420,用于对所述第一图像进行特征提取确定所述第一图像对应的图像要素,所述图像要素为用于判定至少两个图像之间的相似程度的要素;
配图字符查找单元430,用于根据所述图像要素在图像关联数据库中查找适用于所述第一图像的第一配图字符;
推荐单元440,用于将所述第一配图字符推荐给所述第一用户。
本申请实施例中,图像确定单元410可通过获取用户在网页或应用客户端的视图界面上的输入确定第一用户当前正在制作的第一图像,例如,图像确定单元410向第一用户显示制作文字表情的网页,通过网页获取用户上传的图片,将其确定为第一图像;又如,图像确定单元410在文字表情图片制作应用上打开/选择的图片,将其确定为第一图像;不限于这里的描述,在可选实施方式中,图像确定单元410还可以通过其他方式确定第一用户当前正在制作的图片。
本申请实施例中,图像要素确定单元420可以以深度学习的方式对图片进行特征提取确定图片对应的图像要素,深度学习是指多层神经网络上运动各种机器学习算法解决图像、文本等各种问题的算法集合,通过分层网络获取分层次的特征信息。
本申请实施例中,图像要素是指用于评判在两张图片在一个或几个维度上是否相同/相似的一些要素,维度可以指颜色、纹理、大小、位置等,图像要素可以为图像类别、图像对象、图像位置、图像背景或图像姿态中的一个或多个。
本申请实施例中,图像类别是指图片的整体类别,图像类别是对图片的整体的划分,例如,图像要素确定单元420按照图像类别将图片划分为风景类图片、人物类图片、动物类图片、服饰类图片、电子产品类图片、机械制造类图片、日用品类图片,等等,不限于这里的示例。
本申请实施例中,图像对象是对图片中的主体图像的划分,其中,主体图像是指能表现图片的主要意义的图像,图片中主体图像之外的其他图像用于衬托该主体图像。图像对象为对某一图像类别下的图片的详细分类,可以看作是图片的子分类,即图片中的主体图像具体是什么。例如,已知图片的图像类别为动物类图片,则图像要素确定单元420按照图像对象将图片划分为猫、狗、狮子、老虎、大象,等等。
具体实现中,图像要素确定单元420可根据图像类别区分模型和多个不同的图像对象区分模型,其中,一个图像类别对应一个图像对象区分模型。首先,图像要素确定单元420根据图像类别区分模型确定第二图像的图像类别,在确定第二图像的图像类别后,图像要素确定单元420根据该图像类别对应的图像对象区分模型确定第二图像对应的图像对象。
本申请实施例中,图像位置是指图像对象在图片中的位置,在一种实施方式中,图像要素确定单元420可以用图像对象在图片中占据的区域表示图像对象在图片中的位置,例如,如图3所示,图片被划分为九个区域,分别为a区域,b区域,c区域,d区域,e区域,f区域,g区域,h区域以及i区域,图像对象在图片的中间且同时占据e区域、f区域以及d区域,则图像对象的位置表示为e区域、f区域以及d区域,根据这三个区域,可确定图像对象在图片中的大致位置;在可选实施方式中,图像要素确定单元420还可以用图像对象在图片中的坐标范围、图像对象相对于图片中的参考点的位置等来表示图像对象在图片中的位置,本申请不做限制。
本申请实施例中,图像背景是指图片中的除主体图像以外的用于衬托主体图像的其他图像。
本申请实施例中,图像姿态是指动作、手指、表情等主体图像所呈现出来的姿态,例如,图像姿态可以为微笑、奔跑、握拳等姿态。
本申请实施例中,针对于不同的图像要素,图像要素确定单元420可采用不同的深度学习算法对第二图像进行特征提取以确定不同的图像要素的内容。
这里,深度学习算法包括但不限于KNN算法、CNN算法、BP神经网络算法。
可选的,图像要素确定单元420可用于通过对大量的样本图像进行训练得到能实现对图像进行特征提取确定图像对应的图像要素的特征提取模型,其中,该特征提取模型可以为卷积神经网络模型、BP神经网络模型、KNN模型。
具体的,以该特征提取模型为卷积神经网络模型为例,图像要素确定单元420对大量的样本图像进行训练得到卷积神经网络模型为:
图像要素确定单元420获取样本图像以及所述样本图像携带的图像要素;
图像要素确定单元420将所述样本图像以及所述样本图像携带的图像要素作为训练样本,对初始卷积神经网络模型进行训练得到所述卷积神经网络模型。
相应的,图像要素确定单元420具体用于:通过卷积神经网络模型对所述第一图像进行特征提取确定所述第一图像对应的图像要素。
具体的,配图字符查找单元430根据图像要素在图像关联数据库中查找包含至少一个该图像要素的第一数据记录,对第一数据记录中的各个图像要素进行加权计算得到第一数据记录对应的权重值,根据该权重值将符第二数据记录中的配图字符确定为适用于第一图像的第一配图字符,其中,第二数据记录为符合第一权重条件的第一数据记录。
在一些可能的实施例中,在第一配图字符有多个的情况下,推荐单元440可确定多个第一配图字符的推荐顺序,按照第一配图字符的推荐顺序将第一配图字符推荐给第一用户。
在一种可能的实现方式中,推荐单元440可根据第二数据记录对应的权重值确定第一配图字符的推荐顺序,其中,第一配图字符的推荐顺序与第二数据记录对应的权重值负相关,即第二数据记录对应的权重值越大,该第二数据记录中的第一配图字符的推荐顺序越小。
在另一种可能的实现方式中,推荐单元440可根据第一配图字符被保存在图像关联数据库的时间确定第一配图字符的推荐顺序,其中,第一配图字符的推荐顺序与时间负相关,即第一配图字符被保存在图像关联数据库中的时间越早,第一配图字符的推荐顺序越大。
在又一种可能的实现方式中,推荐单元440还可结合第二数据记录对应的权重值以及第一配图字符被保存在图像关联数据库的时间确定第一配图字符的推荐顺序,其中,第一配图字符的推荐顺序与第二数据记录对应的权重值负相关,第一配图字符的推荐顺序与第一配图字符被保存在图像关联数据库的时间负相关。
可选的,所述装置40还可以包括:
配图字符确定单元450,用于根据第二用户制作的第二图像确定所述第二用户在所述第二图像添加的第二配图字符;
所述图像要素确定单元420还用于对所述第二图像进行特征提取确定所述第二图像对应的图像要素;
字符要素保存单元460,用于将所述第二图像对应的图像要素以及所述第二配图字符关联保存在所述图像关联数据库中。
具体的,配图字符确定单元450可以在第二用户制作第二图像的过程中获取第二用户的输入确定第二用户在第二图像中添加的第二配图字符,例如,第二用户制作的第二图像为图2所示的图片,第二用户在文字输入框中输入“我不开心了”并将文字输入框拖到图片中的图像下方并保存,则获取输入框中的文字则可以确定第二用户在第二图像中添加的第二配图字符为“我不开心了”。
需要说明的是,图8对应的实施例中未提及的内容可参见方法实施例的描述,这里不再赘述。
在本申请实施例中,字符要素保存单元将大量的图片对应的图像要素和配图字符关联保存在图像关联数据库中,图像确定单元确定第一用户当前正在制作第一图像的情况下,图像要素确定单元确定第一图像的图像要素,配图字符查找单元在图像关联数据库中查找与该第一图像相似的图片的第一配图字符,推荐单元将第一配图字符推荐给用户,由于第一配图字符是与第一图像相似的图片的配图字符,可以解决用户制作图片时想不到合适字符的问题,提高图片制作效率。
参见图9,图9是本申请实施例提供的一种电子设备的组成结构示意图,该设备可以用于为用户提供文字表情图片制作服务的设备,如图所示,该设备50包括处理器501、存储器502以及输入输出接口503。处理器501连接到存储器502和输入输出接口503,例如处理器501可以通过总线连接到存储器502和输入输出接口503。
处理器501被配置为支持所述电子设备执行图1-图7所述的图像处理的方法中相应的功能。该处理器501可以是中央处理器(Central Processing Unit,CPU),网络处理器(Network Processor,NP),硬件芯片或者其任意组合。上述硬件芯片可以是专用集成电路(Application-Specific Integrated Circuit,ASIC),可编程逻辑器件(ProgrammableLogic Device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(ComplexProgrammable Logic Device,CPLD),现场可编程逻辑门阵列(Field-Programmable GateArray,FPGA),通用阵列逻辑(Generic Array Logic,GAL)或其任意组合。
存储器402用于存储程序代码等。存储器502包括内部存储器,内部存储器可以包括以下至少一项:易失性存储器(例如动态随机存取存储器(DRAM)、静态RAM(SRAM)、同步动态RAM(SDRAM)等)和非易失性存储器(例如一次性可编程只读存储器(OTPROM)、可编程ROM(PROM)、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)。存储器502还可以包括外部存储器,外部存储器可以包括以下至少一项:硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD)、闪驱,例如高密度闪存(CF)、安全数字(SD)、微型SD、迷你型SD、极限数字(xD)、存储棒等。
所述输入输出接口503用于输入或输出数据。
处理器501可以调用所述程序代码以执行以下操作:
通过输入输出接口503确定第一用户当前正在制作的第一图像;
对所述第一图像进行特征提取确定所述第一图像对应的图像要素,所述图像要素包括图像类别、图像对象、图像位置、图像背景或图像姿态;
根据所述图像要素在图像关联数据库中查找适用于所述第一图像的第一配图字符;
通过所述输入输出接口503将所述第一配图字符推荐给所述第一用户。
需要说明的是,各个操作的实现还可以对应参照图1-图7所示的方法实施例的相应描述;所述处理器501和输入输出接口503还可以配合执行上述方法实施例中的其他操作。
本申请实施例中,电子设备通过对用户当前正在制作的第一图像进行特征提取确定第一图像对应的图像要素,根据该图像要素在关联数据库中查找到适用于该第一图像的第一配图字符,由于图像要素是用于标识两张图片的图像是否相同或相似的一些要素,根据图像要素找到的第一配图字符为与第一图像相类似的一些图片所采用的配图字符,第一配图字符符合第一图像中的图像所表达或传递的含义,将第一配图字符推荐给用户解决用户制作图片时想不到合适字符的问题,提高图片制作效率。
本申请实施例还提供一种计算机存储介质(非临时性计算机可读存储介质),所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被计算机执行时使所述计算机执行如前述实施例所述的方法,所述计算机可以为上述提到的图像处理的装置或电子设备的一部分。
上述非临时性计算机可读存储介质可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(Read Only Memory;以下简称:ROM)、可擦式可编程只读存储器(ErasableProgrammable Read Only Memory;以下简称:EPROM)或闪存、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LocalArea Network;以下简称:LAN)或广域网(Wide Area Network;以下简称:WAN)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
本申请实施例还提供一种计算机程序产品,当上述计算机程序产品中的指令由处理器执行时,可以实现本申请图1-图7所示实施例提供的图像处理的方法。
在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请实施例中可能采用术语“第一”、“第二”、“第三”等来描述各种图片和用户等,但这些图片和用户等不应限于这些术语。这些术语仅用来将图片和用户等彼此区分开。例如,在不脱离本申请实施例范围的情况下,第一图像也可以被称为第二图像,类似地,第二图像也可以被称为第一图像。
取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能单元的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元完成,即将装置的内部结构划分成不同的功能单元,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory;以下简称:ROM)、随机存取存储器(Random Access Memory;以下简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。