一种多媒体数据搜索方法及装置技术领域
本发明涉及互联网技术领域,尤其涉及一种多媒体数据搜索方法及
装置。
背景技术
随着互联网技术的快速发展,在线查阅多媒体数据(例如,视频、
音频,文本等)已经成为人们生活中的一种休闲娱乐方式。而随着互联
网网站规模的不断扩大,各种多媒体数据资源越来越多,用户经常需要
通过搜索的方法得到自己所需要的多媒体数据。
以视频为例,目前大部分情况下用户往往不愿意将完整的视频名称
全部输入视频库中,通常会将视频名称开头几个汉字、拼音或汉字首字
母输入到视频库中进行搜索,从而快速搜索到相关视频。具体的,现有
技术主要通过将用户输入的关键字或首字母与视频资源库中的视频名
称一一进行比对来获得用户所需视频。
但是,随着视频库随着互联网技术的不断的发展,其存储的视频资
源也越来越多,如果仍然将用户输入的关键字或首字母与视频资源库中
的所有视频名称进行一一比对来进行搜索用户所需视频,将会导致搜索
视频所花费的时间越来越多,进而使得搜索速度过慢。
因此,在当下信息爆炸的时代,如何缩短搜索多媒体数据资源的搜
索时长,是目前亟待解决的问题。
发明内容
本发明的实施例提供一种多媒体数据搜索方法及装置,旨在缩短搜
索多媒体数据资源的搜索时长。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,提供一种多媒体数据搜索方法,包括:
接收包含搜索关键字的多媒体数据搜索请求;
从多媒体数据簇标识列表中,获取与所述关键字相匹配的多媒体数
据簇标识;所述多媒体数据簇标识列表中的多媒体数据簇组成多媒体数
据库;
在与所述关键字相匹配的多媒体数据簇标识对应的所述多媒体数
据簇中,搜索所述关键字对应的多媒体数据。
第二方面,提供一种多媒体数据搜索装置,包括:
第一获取模块,用于接收包含搜索关键字的多媒体数据搜索请求;
第二获取模块,用于从多媒体数据簇标识列表中,获取与所述关键
字相匹配的多媒体数据簇标识;所述多媒体数据簇标识列表中的多媒体
数据簇组成多媒体数据库;
搜索模块,用于在与所述关键字相匹配的多媒体数据簇标识对应的
所述多媒体数据簇中,搜索所述关键字对应的多媒体数据。
本发明实施例提供的多媒体数据搜索方法及装置,通过接收包含搜
索关键字的多媒体数据搜索请求,其次,从多媒体数据簇标识列表中,
获取与关键字相匹配的多媒体数据簇标识;最后,在与关键字相匹配的
多媒体数据簇标识对应的多媒体数据簇中,搜索关键字对应的多媒体数
据。相比于现有技术中随着多媒体数据资源库中多媒体数据的增加,仍
然将用户输入的关键字与多媒体数据资源库中的所有多媒体数据进行
一一比对来搜索用户所需的多媒体数据,本方案通过对多媒体数据资源
库中的多媒体数据进行分簇,在与用户输入的关键字相匹配的多媒体数
据簇中进行搜索用户所需视频,缩小了多媒体数据的搜索范围,从而节
省了搜索多媒体数据所花费的时间,进而提高了多媒体数据的搜索速
度。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现
有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述
中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,
在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种多媒体数据搜索方法的方法流程
图;
图2为本发明实施例提供的一种多媒体数据搜索装置的结构示意
图;
图3为本发明实施例提供的另一种多媒体数据搜索装置的结构示意
图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案
进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实
施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术
人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本
发明保护的范围。
本发明实施例提供的多媒体数据搜索方法的执行主体可以为多媒
体数据搜索装置,或者用于执行上述多媒体数据搜索方法的终端。具体
的,该终端可以为智能手机、智能电视、高清机顶盒、平板电脑、笔记
本电脑、超级移动个人计算机(英文:Ultra-mobile Personal Computer,
简称:UMPC)、上网本、个人数字助理(英文:Personal Digital Assistant,
简称:PDA)等终端。
本发明实施例中的多媒体数据搜索,是指根据用户的搜索请求,在
数量众多的多媒体数据资源中筛选出与用户的搜索请求相关的多媒体
数据,是用户查找自己所需多媒体数据的常用方式。多媒体数据相关网
站或搜索网站都可以提供相应的多媒体数据搜索服务。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可
以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在
A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后
关联对象是一种“或”的关系。
本实施例中提及的“第一”“第二”等叙述词,除非根据上下文其确实
表达顺序之意,应当理解为仅仅是起区分之用。
本发明的实施例提供一种多媒体数据搜索方法,如图1所示,该方
法包括如下步骤:
101、接收包含搜索关键字的多媒体数据搜索请求。
本发明实施例中的多媒体数据包括视频、音频、文本文档等多媒体
文件数据中的一种或多种。
本发明实施例中的多媒体数据搜索请求中包含搜素关键字,该搜索
关键字可以是用户通过输入设备(例如,键盘、话筒、手写板等)输入
的,也可以是用户从电子文档中截取的需要搜索的多媒体数据关键字。
示例性的,上述的关键字为多媒体数据名称中的关键字,该关键字包括
汉字、英文字母或数字。若上述的多媒体数据以视频为例,具体的,当
视频名称为“大闹天宫”时,其关键字可以为“大闹”或“danao”等;
当视频名称为“007-皇家赌场”时,其关键字可以为“007-皇家”或
“007-huangjia”等,在这里关键字以用户输入的为准,具体的不进行限
制,这里仅仅是举例说明。
示例性的,本实施例中的多媒体数据搜索请求可以是该终端根据用
户指令的指示生成的,该用户指令可以是用户控制该终端对应的输入设
备(例如,遥控器、鼠标,键盘等)向终端发送的,也可以是用户直接
控制终端的按键板上的按键生成的。
102、从多媒体数据簇标识列表中,获取与关键字相匹配的多媒体
数据簇标识。
本实施例中的多媒体数据簇标识列表中的多媒体数据簇组成多媒
体数据库。示例性的,上述的多媒体数据簇标识列表是终端或服务器已
经将多媒体数据库中的多媒体数据按照预先的规则分成不同的多媒体
数据簇,每个多媒体数据簇对应一个多媒体数据簇标识,所有多媒体数
据簇标识形成多媒体数据簇标识列表。
示例性的,终端根据关键字在多媒体数据簇标识列表中搜索与关键
字相匹配的目标多媒体数据簇标识,其中,该目标多媒体数据簇标识是
根据获取的用户输入关键字在多媒体数据簇标识列表中搜索与关键字
相匹配的多媒体数据簇所得到的。
示例性的,为了根据用户输入可以快速定位到特定簇中,步骤102
之前还包括对媒体数据进行分簇,其具体的分簇过程包括如下内容:
A1、终端或服务器按照多媒体数据名称的首字符将多媒体数据库中
的多媒体数据分到不同的多媒体数据簇中,生成多媒体数据簇标识列
表,每个多媒体数据簇对应一个英文字母或数字。
示例性的,上述的多媒体数据簇是按照英文字母及数字进行划分
的,具体的,终端或服务器按照英文字母a-z、数字0-9将多媒体数据库
中的多媒体数据分为36个簇。
进一步的,基于上述步骤A1描述的分簇内容,本发明实施例还可
以对多媒体数据资源库中的多媒体数据进行二次分簇,例如,若多媒体
数据以视频为例,具体的,当视频名称为“冰河世纪”时,该视频名称对
应的簇为簇“b”,进一步的,为了使得用户的搜索速度更快,可以将
该视频名称分到簇“bh”中。需要说明的是,对于多媒体数据资源库中
的多媒体数据簇等级具体的可以根据用户的需求来进行等级划分,在这
里并不进行限制,仅仅是举例进行说明。
示例性的,在上述分簇过程A1之后,还包括:加载多媒体数据名
称与多媒体数据名称的拼音以及首字母之间的对应关系。具体的,加载
过程是基于一个汉字与拼音对应关系的库,在该库中存储所有汉字与拼
音的对应关系,例如“我-wo”。
进一步的,为了不影响搜索过程,在加载上述的多媒体数据名称与
多媒体数据名称的拼音以及首字母之间的对应关系之前还包括:对多媒
体数据名称进行预处理,该预处理主要是去掉多媒体数据名称中的标点
以及一些其他符号。例如,多媒体数据名称为“007-皇家赌场”,我们
会保留“007皇家赌场”,加载后的对应关系为“007皇家赌场
-007huangjiaduchang-007hjdc”,具体的,在后续形成多媒体数据列表时,
会展示最初的多媒体数据名称,但是在加载对应关系的过程中保留的是
经过预处理后的多媒体数据名称。
进一步的,为了提高搜索的精确程度,上述对应关系中的多媒体数
据名称来自于厂商可以提供的多媒体数据资源库,这样保证了在后续步
骤中提供给用户的多媒体数据列表一定是多媒体数据资源库中的多媒
体数据。
示例性的,当上述的关键字为字符串时,步骤102具体包括以下内
容:
102a、将关键字的首字符与多媒体数据簇标识列表中的多媒体数据
簇标识进行匹配,获取与关键字的首字符相匹配的多媒体数据簇标识。
示例性的,当上述的关键字为汉字时,步骤102具体包括以下内容:
102b1、将上述关键字转化为拼音。
102b2、将上述关键字对应拼音的首字符与多媒体数据簇标识列表
中的多媒体数据簇标识进行匹配,获取与关键字对应拼音的首字符相匹
配的多媒体数据簇标识。
示例性的,若上述多媒体数据以视频为例,具体的,当用户输入的
关键字以汉字开头,终端会将该用户输入的关键字转换成拼音,然后将
其加入到第一个汉字的拼音对应的视频簇中,例如视频名称为“大闹天
宫”,终端会将该视频名转换为拼音“danaotiangong”,然后将该视频
加入到拼音的首字母“d”对应的簇中(即簇“d”)。
进一步的,为了符合用户的搜索习惯,当用户输入的关键字以英文
或数字开头,终端会同时将该用户输入的关键字分到英文字母或数字的
第一个字母或数字以及汉字对应的簇中,例如多媒体数据名称为“007:
皇家赌场”,终端先将该汉字转换成拼音“huangjiaduchang”,然后同
时将该视频分到簇“0”和簇“h”中,便于往后用户输入关键字“007”、
“皇家”或者“huangjia”都可以得到“007皇家赌场”的搜索提示。
103、在与关键字相匹配的多媒体数据簇标识对应的多媒体数据簇
中,搜索关键字对应的多媒体数据。
示例性的,若上述的关键字为“大闹”,根据关键字得到与关键字
相匹配的多媒体数据簇标识为“d”(即簇“d”),因此,终端根据用
户输入的关键字在簇“d”中查找用户所需观看的视频。
本发明实施例提供的一种多媒体数据搜索方法,通过接收包含搜索
关键字的多媒体数据搜索请求,其次,从多媒体数据簇标识列表中,获
取与关键字相匹配的多媒体数据簇标识;最后,在与关键字相匹配的多
媒体数据簇标识对应的多媒体数据簇中,搜索关键字对应的多媒体数
据。相比于现有技术中随着多媒体数据资源库中多媒体数据的增加,仍
然将用户输入的关键字与多媒体数据资源库中的所有多媒体数据进行
一一比对来搜索用户所需的多媒体数据,本方案通过对多媒体数据资源
库中的多媒体数据进行分簇,在与用户输入的关键字相匹配的多媒体数
据簇中进行搜索用户所需视频,缩小了多媒体数据的搜索范围,从而节
省了搜索多媒体数据所花费的时间,进而提高了多媒体数据的搜索速
度。
示例性的,在步骤103之后,还包括:
103a、获取关键字对应的多媒体数据对应的评分信息。
103b、根据多媒体数据对应的评分信息,对关键字对应的多媒体数
据进行排序,生成多媒体数据搜索结果显示列表。
本发明实施例中关键字对应的多媒体数据对应的评分信息越高,则
该多媒体数据在生成的多媒体数据搜索结果显示列表中的位置越靠前。
示例性的,上述的评分信息包括但不限于:用户输入关键字与多媒
体数据匹配信息、用户输入的关键字对应的多媒体数据在本地的历史记
录信息、用户输入的关键字对应的多媒体数据在网络上的排名信息以及
用户输入的关键字对应的多媒体数据类型信息。
示例性的,若上述的多媒体数据以视频为例,则计算上述评分信息
的公式为:
Score=[A*Wa+B*Wb+C*Wc+D*Wd+......]*100 (公式1)
其中,A表示用户输入关键字与视频匹配程度的分数,B表示用户
输入的关键字对应的视频在本地的播放历史记录的分数,C表示用户输
入的关键字对应的视频在网络上排名的分数,D表示用户输入的关键字
对应的视频类型的分数,其中,若视频类型为用户常看的视频,该分数
将越高。Wa、Wb、Wc、以及Wd表示权重值,且和为1,Wa、Wb、Wc以及
Wd的值根据实际需求进行赋值。
需要说明的是,这里的评分信息所包含的四部分分数(A、B、C、
以及D)仅仅是一种示例,在具体的应用场景中可以根据视频本身以及
用户的需求进行增加或减少,这里不进行限制,仅仅举例说明。
示例性的,上述四部分的分数范围均为[0,1],而最终评分信息Score
的范围为[0,100],具体的,四部分分数计算公式如下:
其中,上述公式2中,若用户输入关键字为汉字,则x为汉字长度
占视频名长度的比值;若用户输入关键字为英文,则若匹配到的视频名
长度大于10,则x为固定值0,若小于10,则x为固定值0.3,这样给
x取固定值是对视频列表中的视频名称长度大于10的视频做一个惩罚,
因为在视频列表中的视频名称长度大于10的视频往往是新闻或者影片
花絮,通常不是用户所需观看的视频搜索结果。具体的,公式2中的x
值越大,A(x)分数越高。
其中,上述公式3中的x为该匹配视频在本地播放的历史记录次数,
x值越大,则B(x)分数越高。这里对于x的取值采用的是反向LFU(英
文:Most Frequently Used)理论,即选取最近一个时间段内视频的播放次
数作为x值,以提高实时性。
其中,上述公式4中的P为视频库列表中的视频总数,x为该匹配
视频在视频列表中的排名,若匹配视频不在列表中,x值为P值。x值
越小,则B(x)分数越高。
其中,上述公式5中的u为当前用户,x为视频类型,Type_count(x,u)
表示用户u看视频类型为x的总次数,Type_all(x,u)表示用户u观看所有
类型视频的总次数。
示例性的,上述公式2至公式5中的α,β,γ,μ参数为固定阈值,其具
体数值需要根据特定视频数据库进行相应的设置。根据上述公式2至公
式5的四个公式分别计算出A、B、C以及D四个部分的得分,然后将
这四个部分的得分带入到公式1中计算出与关键字对应的所有多媒体数
据的评分信息,最后根据该评分信息的高低对关键字对应的多媒体数据
进行排序,生成多媒体数据搜索结果显示列表展示给用户。
下面将基于上述的一种多媒体数据搜索方法的相关描述对本发明
实施例提供的一种多媒体数据搜索装置进行介绍。以下实施例中与上述
实施例中相关的技术术语、概念等的说明可以参照上述的实施例,这里
不再赘述。
本发明实施例提供一种多媒体数据搜索装置,如图2所示,该多媒
体数据搜索装置2包括:第一获取模块21、第二获取模块22以及搜索
模块23,其中:
第一获取模块21,用于接收包含搜索关键字的多媒体数据搜索请
求。
第二获取模块22,用于从多媒体数据簇标识列表中,获取与关键字
相匹配的多媒体数据簇标识;多媒体数据簇标识列表中的多媒体数据簇
组成多媒体数据库。
搜索模块23,用于在与关键字相匹配的多媒体数据簇标识对应的多
媒体数据簇中,搜索关键字对应的多媒体数据。
示例性的,当上述关键字为字符串时,第二获取模块22,具体用于:
将关键字的首字符与多媒体数据簇标识列表中的多媒体数据簇标
识进行匹配,获取与关键字的首字符相匹配的多媒体数据簇标识。
示例性的,当上述关键字为汉字时,第二获取模块22,具体用于:
将上述关键字转化为拼音;
将上述关键字对应拼音的首字符与多媒体数据簇标识列表中的多
媒体数据簇标识进行匹配,获取与关键字对应拼音的首字符相匹配的多
媒体数据簇标识。
可选的,如图3所示,多媒体数据搜索装置2还包括:第一生成模
块24,其中:
第一生成模块24,用于按照多媒体数据名称的首字符将多媒体数据
库中的多媒体数据分到不同的多媒体数据簇中,生成多媒体数据簇标识
列表,每个多媒体数据簇对应一个英文字母或数字。
可选的,如图3所示,多媒体数据搜索装置2还包括:第三获取模
块25以及第二生成模块26,其中:
第三获取模块25,用于获取关键字对应的多媒体数据对应的评分信
息。
第二生成模块26,用于根据多媒体数据对应的评分信息,对关键字
对应的多媒体数据进行排序,生成多媒体数据搜索结果显示列表。
本发明实施例提供的一种多媒体数据搜索装置,通过接收包含搜索
关键字的多媒体数据搜索请求,其次,从多媒体数据簇标识列表中,获
取与关键字相匹配的多媒体数据簇标识;最后,在与关键字相匹配的多
媒体数据簇标识对应的多媒体数据簇中,搜索关键字对应的多媒体数
据。相比于现有技术中随着多媒体数据资源库中多媒体数据的增加,仍
然将用户输入的关键字与多媒体数据资源库中的所有多媒体数据进行
一一比对来搜索用户所需的多媒体数据,本方案通过对多媒体数据资源
库中的多媒体数据进行分簇,在与用户输入的关键字相匹配的多媒体数
据簇中进行搜索用户所需视频,缩小了多媒体数据的搜索范围,从而节
省了搜索多媒体数据所花费的时间,进而提高了多媒体数据的搜索速
度。
在本申请所提供的几个实施例中,应该理解到,所揭露的多媒体数
据搜索装置和方法,可以通过其它的方式实现。例如,以上所描述的装
置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功
能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以
结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另
一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通
过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或
其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开
的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于
一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选
择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理模
块中,也可以是各个模块单独物理包括,也可以两个或两个以上模块集
成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以
采用硬件加软件功能单元的形式实现。
上述以软件功能模块的形式实现的集成的单元,可以存储在一个计
算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包
括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或
者网络设备等)执行本发明各个实施例所述方法的部分步骤。而前述的
存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简
称ROM)、随机存取存储器(Random Access Memory,简称RAM)、
磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非
对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的
普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案
进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替
换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和
范围。