CN110400578A - 哈希码的生成及其匹配方法、装置、电子设备和存储介质 - Google Patents

哈希码的生成及其匹配方法、装置、电子设备和存储介质 Download PDF

Info

Publication number
CN110400578A
CN110400578A CN201910656276.8A CN201910656276A CN110400578A CN 110400578 A CN110400578 A CN 110400578A CN 201910656276 A CN201910656276 A CN 201910656276A CN 110400578 A CN110400578 A CN 110400578A
Authority
CN
China
Prior art keywords
hash codes
audio signal
signal
hash
multimedia file
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.)
Granted
Application number
CN201910656276.8A
Other languages
English (en)
Other versions
CN110400578B (zh
Inventor
刘运
叶子卿
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bigo Technology Pte Ltd
Original Assignee
Guangzhou Baiguoyuan Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangzhou Baiguoyuan Information Technology Co Ltd filed Critical Guangzhou Baiguoyuan Information Technology Co Ltd
Priority to CN201910656276.8A priority Critical patent/CN110400578B/zh
Publication of CN110400578A publication Critical patent/CN110400578A/zh
Application granted granted Critical
Publication of CN110400578B publication Critical patent/CN110400578B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/18Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being spectral information of each sub-band
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

本发明实施例公开了一种哈希码的生成及其匹配方法、装置、电子设备和存储介质,哈希码的生成方法包括:接收目标音频信号;从所述目标音频信号中采集样本音频信号;将所述样本音频信号转换为频谱信号,所述频谱信号中具有幅度;根据所述幅度之间的差异生成标识所述目标音频信号整体的哈希码。由于哈希码可以标识目标音频信号整体,后续可以直接使用距离对比哈希码,避免提取特征生成哈希码所带来的滑窗开销,操作简便,操作速度快,在大规模对比哈希码时,可保证操作的性能。

Description

哈希码的生成及其匹配方法、装置、电子设备和存储介质
技术领域
本发明实施例涉及音频处理技术,尤其涉及一种哈希码的生成及其匹配方法、装置、电子设备和存储介质。
背景技术
类似短视频等热度比较高的多媒体文件,上传量大,且传播迅速,某些受欢迎的音频会被大量用户使用或者模仿,导致用户上传的多媒体文件中存在大量的重复。
目前,针对不同的业务需求,尤其是大规模的多媒体文件,通常使用hash(哈希)算法对多媒体文件进行音频对比、聚类,hash算法可将音频映射到一个二进制的哈希码,通过哈希码的比对来确定两个音频的相似程度,运算速度较快。
但是,hash算法,如感知哈希算法(phash),需要在时域上找出音频中的特征,然后对该特征求哈希码,比对的时候再滑窗比对,操作较为复杂,在大规模对比哈希码时,操作存在性能瓶颈,难以适应一些场景应用的需要。
发明内容
本发明实施例提供一种哈希码的生成及其匹配方法、装置、电子设备和存储介质,以解决提取音频特征生成哈希码,在对比时滑窗比对,操作较为复杂的问题。
第一方面,本发明实施例提供了一种哈希码的生成方法,包括:
接收目标音频信号;
从所述目标音频信号中采集样本音频信号;
将所述样本音频信号转换为频谱信号,所述频谱信号中具有幅度;
根据所述幅度之间的差异生成标识所述目标音频信号整体的哈希码。
第二方面,本发明实施例还提供了一种多媒体文件的匹配方法于,包括:
确定目标多媒体文件,所述目标多媒体文件具有目标音频信号;
生成标识所述目标音频信号整体的哈希码;
确定参考多媒体文件,所述参考多媒体文件具有参考音频信号,所述参考多媒体文件关联标识所述参考音频信号整体的哈希码;
计算所述目标多媒体文件的哈希码与所述参考多媒体文件的哈希码之间的距离;
若所述距离小于预设的目标阈值,则确定所述目标多媒体文件与所述参考多媒体文件匹配。
第三方面,本发明实施例还提供了一种哈希码的生成装置,包括:
目标音频信号接收单元,用于接收目标音频信号;
样本音频信号采集单元,用于从所述目标音频信号中采集样本音频信号;
频谱信号转换单元,用于将所述样本音频信号转换为频谱信号,所述频谱信号中具有幅度;
差异生成单元,用于根据所述幅度之间的差异生成标识所述目标音频信号整体的哈希码。
第四方面,本发明实施例还提供了一种多媒体文件的匹配装置,包括:
目标多媒体文件确定模块,用于确定目标多媒体文件,所述目标多媒体文件具有目标音频信号;
哈希码生成模块,用于生成标识所述目标音频信号整体的哈希码;
参考多媒体文件确定模块,用于确定参考多媒体文件,所述参考多媒体文件具有参考音频信号,所述参考多媒体文件关联标识所述参考音频信号整体的哈希码;
文件距离计算模块,用于计算所述目标多媒体文件的哈希码与所述参考多媒体文件的哈希码之间的距离;
文件匹配确定模块,用于若所述距离小于预设的目标阈值,则确定所述目标多媒体文件与所述参考多媒体文件匹配。
第五方面,本发明实施例还提供了一种电子设备,所述电子设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的哈希码的生成方法或者如第二方面所述的多媒体文件的匹配方法。
第六方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如第一方面所述的哈希码的生成方法或者如第二方面所述的多媒体文件的匹配方法。
本发明实施例接收目标音频信号,从目标音频信号中采集样本音频信号,将样本音频信号转换为频谱信号,根据频谱信号中幅度之间的差异生成标识目标音频信号整体的哈希码,由于哈希码可以标识目标音频信号整体,后续可以直接使用距离对比哈希码,避免提取特征生成哈希码所带来的滑窗开销,操作简便,操作速度快,在大规模对比哈希码时,可保证操作的性能。
附图说明
图1为本发明实施例一提供的一种哈希码的生成方法的流程图;
图2为本发明实施例二提供的一种哈希码的生成方法的流程图;
图3为本发明实施例三提供的一种多媒体文件的匹配方法的流程图;
图4为本发明实施例四提供的一种多媒体文件的匹配方法的流程图;
图5为本发明实施例四提供的一种第一映射表、第二映射表的示例图;
图6为本发明实施例五提供的一种哈希码的生成装置的结构示意图;
图7为本发明实施例六提供的一种多媒体文件的匹配装置的结构示意图;
图8为本发明实施例七提供的一种电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。此外,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
实施例一
图1为本发明实施例一提供的一种哈希码的生成方法的流程图,本实施例可适用于将目标音频信号整体转换为哈希码的情况,该方法可以由哈希码的生成装置来执行,该哈希码的生成装置可以由软件和/或硬件实现,可配置在电子设备中,例如,服务器、工作站等,该方法具体包括如下步骤:
S101、接收目标音频信号。
在具体实现中,目标音频信号可以为用户输入的、独立的音频信号,也可以为某个多媒体文件(如短视频)中的音频信号,本实施例对此不加以限制。
针对不用的应用场景,如短视频、直播、电视剧等,目标音频信号中可能含有人声信号、静音信号、噪声信号、背景声信号等等。
该目标音频信号可以为AAC(Advanced Audio Coding,高级音频编码)、MP3(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)等格式,为便于后续处理,可解码为PCM(Pulse Code Modulation,脉冲编码调制)格式。
S102、从所述目标音频信号中采集样本音频信号。
在本实施例中,可从目标音频信号中采集部分音频信号,作为样本音频信号,用于生成哈希码。
需要说明的是,该样本音频信号一般均匀分布在目标音频信号中,可表示目标音频信号整体。
在具体实现中,可对目标音频信号进行采样处理,以采样具有目标参数的样本音频信号;
其中,目标参数包括如下的至少一种:
1、频率
样本音频信号的频率与哈希码的性能正相关、与运算速度负相关,即样本音频信号的频率越高、哈希码的性能越高、生成哈希码的速度越慢,本领域技术人员可以根据不同的应用场景,对样本音频信号的频率取不同的值,例如,针对短视频,该样本音频信号的频率为8000Hz。
2、单声道
对于两个或两个声道以上的目标音频信号,在采样时可将两个或两个声道合并为一个声道。
进一步地,可统计样本音频信号的数量,若该数量小于预设的数量阈值,则在样本音频信号之后增加指定的音频信号(如补零),作为新的样本音频信号,直至样本音频信号的数量到达数量阈值。
需要说明的是,样本音频信号的数量与哈希码的性能正相关、与运算速度负相关,即频率越高、哈希码的性能越高、生成哈希码的速度越慢,本领域技术人员可以根据不同的应用场景,对样本音频信号的数量取不同的值,例如,针对短视频,该样本音频信号的数量为65536。
此外,后续对样本音频信号转换为频谱信号,该频谱信号属于分析频谱,是实际频谱的近似。如果采样不合适,某一频率的信号能量会扩散到相邻频点上,出现频谱泄漏现象。
为了减少频谱泄漏,可对从目标音频信号采样的样本音频信号添加窗函数,例如,三角窗、汉宁窗(hanning)、汉明窗、高斯窗等。
S103、将所述样本音频信号转换为频谱信号。
在本实施例中,将在时域下表示的样本音频信号,转换为频域下表示的频谱信号。
频谱信号中具有幅度等参数。
在具体实现中,可FT(Fourier Transformation,傅里叶变换)、FFT(FastFourierTransformation,快速傅里叶变换)等方式,将样本音频信号变换为频谱信号。
其中,频谱信号中具有频点,频点具有频率与幅度。
此时,该频谱信号中的频率线性相关,即频谱信号大致符合频点呈线性增长。
由于人的耳朵对线性相关的频率不敏感,而对对数相关的频率较为敏感,因此,可对频谱信号乘特定的转换矩阵、梅尔频谱、asinh函数等,从而对频谱信号进行转换,以使频率对数相关,即频谱信号大致符合频点呈对数增长。
S104、根据所述幅度之间的差异生成标识所述目标音频信号整体的哈希码。
在本实施例中,可对频谱信号中,各相邻频点的幅度之间的差异,可体现出频谱信号的一定特性,可针对该差异生成哈希码,从而标识目标音频信号整体的特性。
本发明实施例接收目标音频信号,从目标音频信号中采集样本音频信号,将样本音频信号转换为频谱信号,根据频谱信号中幅度之间的差异生成标识目标音频信号整体的哈希码,由于哈希码可以标识目标音频信号整体,后续可以直接使用距离对比哈希码,避免提取特征生成哈希码所带来的滑窗开销,操作简便,操作速度快,在大规模对比哈希码时,可保证操作的性能。
实施例二
图2为本发明实施例二提供的一种哈希码的生成方法的流程图,本实施例以前述实施例为基础,进一步增加一次生成哈希码、哈希码有效性判断、二次生成哈希码的处理操作。该方法具体包括如下步骤:
S201、接收目标音频信号。
S202、从所述目标音频信号中采集样本音频信号。
S203、将所述样本音频信号转换为频谱信号。
其中,频谱信号中具有幅度。
S204、对所述幅度进行差分处理,获得第一信号差异值。
在本实施例中,差分处理可以指一阶差分,即计算相邻两个频点之间的差值,具体可以包括前向差分、后向差分、中间差分等等。
在一个示例中,第一信号差异值的长度比幅度的数量少一位。
在此示例中,可将当前位幅度与下一位幅度之间的差值,赋值给当前位第一信号差异值。
假设幅度的数量为t*n+1,第一信号差异值的长度为t*n,t为常量,如32,n为正整数,则第一信号差异值为:
Yi=Zi-Zi+1
其中,Y为第一信号差异值,Z为幅度,i∈t*n,i为正整数。
当然,上述差分处理只是作为示例,在实施本发明实施例时,可以根据实际情况设置其他差分处理,例如,Yi=Zi+1-Zi,Yi=Zi-Zi-1,等等,本发明实施例对此不加以限制。另外,除了上述差分处理外,本领域技术人员还可以根据实际需要采用其它差分处理,本发明实施例对此也不加以限制。
S205、对所述第一信号差异值进行二值化处理,获得哈希码。
在本实施例中,对第一信号差异值进行二值化处理,转换为二进制表示,可获得哈希码。
在具体实现中,若第一信号差异值大于0,则确定哈希码为1。
若第一信号差异值小于或等于0,则确定哈希码为0。
若第一信号差异值的长度为t*n,则哈希码可以视为长度为t的n段字符串。
S206、确定所述样本音频信号的属性。
S207、若所述属性为非静音信号且非噪声信号,则确定所述哈希码有效。
S208、若所述属性为静音信号或噪声信号,则确定所述哈希码无效。
在具体实现中,对幅度进行差分处理、二值化处理之后,静音信号的哈希码和噪声信号的哈希码相似度高,甚至相同,例如,静音信号的哈希码和噪声信号的哈希码全部为0。
因此,可在生成哈希码之后,对样本音频信号的属性进行判断,如果样本音频信号为非静音信号且非噪声信号,则确定哈希码有效,如果样本音频信号为静音信号或噪声信号,则确定哈希码无效。
在一种属性的确定方式中,可计算哈希码与0之间的距离,如汉明距离(HammingDistance)。
若距离大于或等于预设的距离阈值,则确定样本音频信号的属性为非静音信号且非噪声信号。
若距离小于预设的距离阈值,则确定所属样本音频信号的属性为静音信号或噪声信号。
本发明实施例通过样本音频信号的属性对哈希码进行有效性判定,可以避免静音信号与噪声信号的干扰,保证哈希码的准确性。
S209、对所述第一信号差异值进行差分处理,获得第二信号差异值。
在S208之后,对于无效的哈希码,可以对第一信号差异值二次进行差分处理,差分处理可以指一阶差分,即计算相邻两个第一信号差异之间的差值,具体可以包括前向差分、后向差分、中间差分等等。
在一个示例中,第一信号差异值的长度与第二信号差异值的长度相同,从而保证一次差分处理之后得到的哈希码与二次差分处理之后得到的哈希码长度相同。
在此示例中,若当前位第二信号差异值为非最后一位,则将当前位第一信号差异值与下一位第一信号差异值之间的差值,赋值给当前位第二信号差异值。
若当前位第二信号差异值为最后一位,则将当前位第一信号差异值赋值给当前位第二信号差异值。
假设第一信号差异值的长度为t*n,第二信号差异值的长度为t*n,t为常量,如32,i∈t*n,i、n为正整数。
若i<n,则第二信号差异值为:
Xi=Yi-Yi+1
若i=n,则第二信号差异值为:
Xi=Yi
其中,T为第一信号差异值,X为第二信号差异值。
当然,上述差分处理只是作为示例,在实施本发明实施例时,可以根据实际情况设置其他差分处理,例如,Xi=Yi+1-Yi(当i=t*n时,Xi=Yi),Xi=Yi-Yi-1(当i=1时,Xi=Yi),等等,本发明实施例对此不加以限制。另外,除了上述差分处理外,本领域技术人员还可以根据实际需要采用其它差分处理,本发明实施例对此也不加以限制。
S210、对所述第二信号差异值进行二值化处理,获得新的哈希码。
在本实施例中,对第二信号差异值进行二值化处理,转换为二进制表示,可获得新的哈希码。
在具体实现中,若第二信号差异值大于0,则确定新的哈希码为1;
若第二信号差异值小于或等于0,则确定新的哈希码为0。
在二次差分处理之后,静音信号的哈希码和噪声信号的哈希码,可产生较为明显的区别,例如,静音信号的哈希码全部为0,噪声信号的哈希码非全部为0。
若第二信号差异值的长度为t*n,则新的哈希码可以视为长度为t的n段字符串。
本发明实施例对于哈希码无效的情形,可再次进行差分处理、二值化处理,生成新的哈希码,从而区分静音信号与噪声信号,进一步提高了哈希码的准确性。
实施例三
图3为本发明实施例三提供的一种多媒体文件的匹配方法的流程图,本实施例可适用于基于标识音频信号整体的哈希码对多媒体文件进行匹配的情况,该方法可以由多媒体文件的匹配装置来执行,该哈希码的生成装置可以由软件和/或硬件实现,可配置在电子设备中,例如,服务器、工作站等,该方法具体包括如下步骤:
S301、确定目标多媒体文件。
在实际应用中,用户将多媒体文件上传至业务平台,如短视频、直播视频、演讲文稿(PPT)等,意图在该业务平台存储多媒体文件,或者,发布该多媒体文件,让公众传阅、浏览。
在业务平台中,可以通过对比多媒体文件中的音频信号,对多媒体文件进行聚类,满足不同的业务需求。
例如,对于业务平台的运营来说,通过聚类,可以从视频文件中找到新出现的、热门的音频信号,就可以利用这些音频信号来找到热门话题,或者发掘出优秀的素材创作用户。
又例如,对部分多媒体文件进行标注,用以进行机器学习模型的训练。如果送标的多媒体文件里含有大量重复的音频信号,会浪费大量的标注人力,且大量重复的多媒体文件会对机器学习模型的训练产生不良影响,因此,可通过对音频信号进行聚类,剔除音频信号重复的多媒体文件。
如果对于实时性要求较高,在业务平台中可设置流式实时系统,用户通过客户端实时将多媒体文件上传至该流式实时系统,该流式实时可将该多媒体文件传输至用于匹配的电子设备。
如果对于实时性要求较低,在业务平台中可设置数据库,如分布式数据库等,用户通过客户端将多媒体文件上传至该数据库,用于匹配的电子设备可从该数据库读取该多媒体文件。
在本实施例中,当前待匹配的多媒体文件视为目标音频信号,该多媒体文件中包含的音频信号视为目标音频信号。
针对不用的应用场景,如短视频、直播、电视剧等,目标音频信号中可能含有人声信号、静音信号、噪声信号、背景声信号等等。
目标多媒体文件具有目标音频信号,如AAC、MP3等格式,在匹配时,为便于后续处理,可解码为PCM格式。
S302、生成标识所述目标音频信号整体的哈希码。
在本实施例中,哈希码可用于标识目标音频信号整体,而并非目标音频信号中的部分特征。
在具体实现中,S302包括:
从所述目标音频信号中采集样本音频信号;
将所述样本音频信号转换为频谱信号,所述频谱信号中具有幅度;
根据所述幅度之间的差异生成标识所述目标音频信号整体的哈希码。
进一步地,所述从所述目标音频信号中采集样本音频信号,包括:
对所述目标音频信号进行采样处理,以采样具有目标参数的样本音频信号;
统计所述样本音频信号的数量;
若所述数量小于预设的数量阈值,则在所述样本音频信号之后增加指定的音频信号,作为新的样本音频信号;
对从所述目标音频信号采样的样本音频信号添加窗函数;
其中,所述目标参数包括如下的至少一种:
频率、单声道。
进一步地,所述将所述样本音频信号转换为频谱信号,包括:
将所述样本音频信号变换为频谱信号,所述频谱信号中具有频点,所述频点具有频率与幅度,所述频率线性相关;
对所述频谱信号进行转换,以使所述频率对数相关。
进一步地,所述根据所述幅度之间的差异生成标识所述目标音频信号整体的哈希码,包括:
对所述幅度进行差分处理,获得第一信号差异值;
对所述第一信号差异值进行二值化处理,获得哈希码。
进一步地,所述第一信号差异值的长度比所述幅度的数量少一位;
所述对所述幅度进行差分处理,获得第一信号差异值,包括:
将当前位幅度与下一位幅度之间的差值,赋值给当前位第一信号差异值。
进一步地,所述对所述第一信号差异值进行二值化处理,获得哈希码,包括:
若所述第一信号差异值大于0,则确定哈希码为1;
若所述第一信号差异值小于或等于0,则确定哈希码为0。
进一步地,所述根据所述幅度之间的差异生成标识所述目标音频信号整体的哈希码,还包括:
确定所述样本音频信号的属性;
若所述属性为非静音信号且非噪声信号,则确定所述哈希码有效;
若所述属性为静音信号或噪声信号,则确定所述哈希码无效。
进一步地,所述确定所述样本音频信号的属性,包括:
计算所述哈希码与0之间的距离;
若所述距离大于或等于预设的距离阈值,则确定所述样本音频信号的属性为非静音信号且非噪声信号;
若所述距离小于预设的距离阈值,则确定所述所属样本音频信号的属性为静音信号或噪声信号。
进一步地,在所述确定所述哈希码无效之后,所述根据所述幅度之间的差异生成标识所述目标音频信号整体的哈希码,还包括:
对所述第一信号差异值进行差分处理,获得第二信号差异值;
对所述第二信号差异值进行二值化处理,获得新的哈希码。
进一步地,所述第一信号差异值的长度与所述第二信号差异值的长度相同;
所述对所述第一信号差异值进行差分处理,获得第二信号差异值,包括:
若当前位第二信号差异值为非最后一位,则将当前位第一信号差异值与下一位第一信号差异值之间的差值,赋值给当前位第二信号差异值;
若当前位第二信号差异值为最后一位,则将当前位第一信号差异值赋值给当前位第二信号差异值。
进一步地,所述对所述第二信号差异值进行二值化处理,获得新的哈希码,包括:
若所述第二信号差异值大于0,则确定新的哈希码为1;
若所述第二信号差异值小于或等于0,则确定新的哈希码为0。
在本实施例中,由于生成哈希码的方式与实施例一、二的应用基本相似,所以描述的比较简单,相关之处参见实施例一、二的部分说明即可,本发明实施例在此不加以详述。
S303、确定参考多媒体文件。
其中,参考多媒体文件具有参考音频信号。
在本实施例中,当前已匹配的多媒体文件视为参考音频信号,该多媒体文件中包含的音频信号视为参考音频信号。
此外,参考多媒体文件关联标识参考音频信号整体的哈希码,即参考多媒体文件及其哈希码已建立关联关系。
需要说明的是,对参考多媒体文件生成哈希码的方式与对目标多媒体文件生成哈希码的方式一致。
S304、计算所述目标多媒体文件的哈希码与所述参考多媒体文件的哈希码之间的距离。
目标多媒体文件的哈希码与参考多媒体文件的哈希码之间的距离,可以表示目标媒体文件的目标音频信号与参考多媒体文件的参考音频信号之间的相似度,该距离与相似度负相关,即距离越近,相似度越高,反之,距离越远,相似度越低。
以汉明距离为例,汉明距离表示两个等长字符串在对应位置上不同字符的数目,对于二进制的字符串a和b来说,汉明距离等于aXORb中1的数目,其中,XOR为异或,又称其为汉明权重,也叫做population count或popcount。
例如,假设目标媒体文件的哈希码为1011101,参考多媒体文件的哈希码为1001001,则两者之间的距离2。
S305、若所述距离小于预设的目标阈值,则确定所述目标多媒体文件与所述参考多媒体文件匹配。
如果目标多媒体文件的哈希码与参考多媒体文件的哈希码之间的距离小于目标阈值,表示目标媒体文件的目标音频信号与参考多媒体文件的参考音频信号之间的相似度较高,认为目标多媒体文件与参考多媒体文件匹配,多媒体文件与参考多媒体文件使用了同一个相同的音频素材。
进一步而言,目标媒体文件与参考多媒体文件匹配,可以表示目标媒体文件与参考多媒体文件可能属于同一个分类,此后,可采用其他聚类算法对匹配成功的多媒体文件进行聚类,从而确定多媒体文件所属的分类。
本发明实施例确定目标多媒体文件,生成目标音频信号整体的哈希码,确定参考多媒体文件及其关联的标识参考音频信号整体的哈希码,计算目标多媒体文件的哈希码与参考多媒体文件的哈希码之间的距离,若距离小于预设的目标阈值,则确定目标多媒体文件与参考多媒体文件匹配,由于哈希码可以标识目标音频信号、参考音频信号整体,因此可以直接使用距离对比哈希码,避免提取特征生成哈希码所带来的滑窗开销,操作简便,操作速度快,在大规模对比哈希码时,可保证操作的性能。
实施例四
图4为本发明实施例四提供的一种多媒体文件的匹配方法的流程图,本实施例以前述实施例为基础,进一步增加快速比对哈希码的处理操作。该方法具体包括如下步骤:
S401、确定目标多媒体文件。
其中,目标多媒体文件具有目标音频信号。
S402、生成标识所述目标音频信号整体的哈希码。
S403、提取所述目标多媒体文件的部分哈希码,作为索引哈希码。
对于短视频等多媒体文件,用户上传量大,匹配的工作量大,在本实施例中,对目标多媒体文件提取部分哈希码,作为索引哈希码。
在本发明的一个实施例中,索引哈希码包括第一哈希码块、第二哈希码块。
将目标多媒体文件的哈希码切分为n段,作为第一哈希码块,其中,n为正整数。
进一步而言,将除第一哈希码块之外的哈希码切分为m段,作为第二哈希码块,其中,m为正整数,n与m可以相同,也可以不同。
若哈希码的长度为t*n,t为常量,如32,则可以将哈希码切分为n段长度为t的第一哈希码块,m段长度为t*(n-1)/m的第二哈希码块。
例如,设n、m均为8,一个目标多媒体文件的哈希码为ABCDEFGH,其中,A、B、C、D、E、D、F、H分别表示长度为t的字符串,对于该哈希码,可以切分为A、B、C、D、E、D、F、H共8段第一哈希码块。
此外,针对第一哈希码块E,则可以将ABCDFGH切分为8段第二哈希码块,按照顺序分别记为E_1、E_2、E_3、E_4、E_5、E_6、E_7、E_8。
S404、查找哈希码与所述索引哈希码相同的多媒体文件,作为参考多媒体文件。
在具体实现中,可以以多媒体文件的哈希码生成索引文件,以索引哈希码在该索引文件中进行索引,快速寻找哈希码与索引哈希码相同的多媒体文件作为参考多媒体文件。
其中,参考多媒体文件具有参考音频信号,参考多媒体文件关联标识参考音频信号整体的哈希码。
需要说明的是,所谓相同,除了表示哈希码/索引哈希码的字符串相同之外,该字符串在哈希码所处的位置也相同。
在本发明的一个实施例中,索引文件包括n个第一映射表、第二映射表。
第一映射表与第一哈希码块是一一对应的关系,可用于存储指定位置的第一哈希码块,在第一映射表中,第一哈希码块作为key(键),m个第二映射表作为value(值),两者具有映射关系。
第二映射表与第二哈希码块是一一对应的关系,可用于存储指定位置的第二哈希码块,在第二映射表中,第二哈希码块作为key(键),哈希码作为value(值),两者具有映射关系。
其中,该位置可以指第一哈希码块/第二哈希码块在切分时在所处的位置。
对于第二映射表中的哈希码,可以认为满足如下条件:
1、将这个哈希码拆成n段哈希码,它的第j段哈希码为其关联的第一映射表中的第一哈希码块;
2、将这个哈希码去掉第j段哈希码块后,再拆成m段哈希码块,第t段哈希码为其关联的第二映射表中的第二哈希码块。
例如,设n、m为8,如图5所示,第一映射表共8个,分别为第一映射表501、第一映射表502、第一映射表503、第一映射表504、第一映射表505、第一映射表506、第一映射表507、第一映射表508。
第一映射表501用于存储第一个第一哈希码块,如哈希码ABCDEFGH中的A。
第一映射表502用于存储第二个第一哈希码块,如哈希码ABCDEFGH中的B。
第一映射表503用于存储第三个第一哈希码块,如哈希码ABCDEFGH中的C。
第一映射表504用于存储第四个第一哈希码块,如哈希码ABCDEFGH中的D。
第一映射表505用于存储第五个第一哈希码块,如哈希码ABCDEFGH中的E。
第一映射表506用于存储第六个第一哈希码块,如哈希码ABCDEFGH中的F。
第一映射表507用于存储第七个第一哈希码块,如哈希码ABCDEFGH中的G。
第一映射表508用于存储第八个第一哈希码块,如哈希码ABCDEFGH中的H。
进一步地,第一映射表505中的E映射8个第二映射表,分别为第二映射表5051、第二映射表5052、第二映射表5053、第二映射表5054、第二映射表5055、第二映射表5056、第二映射表5057、第二映射表5058。
第二映射表5051用于存储第一个第二哈希码块,如E_1。
第二映射表5052用于存储第二个第二哈希码块,如E_2。
第二映射表5053用于存储第三个第二哈希码块,如E_3。
第二映射表5054用于存储第四个第二哈希码块,如E_4。
第二映射表5055用于存储第五个第二哈希码块,如E_5。
第二映射表5056用于存储第六个第二哈希码块,如E_6。
第二映射表5057用于存储第七个第二哈希码块,如E_7。
第二映射表5058用于存储第八个第二哈希码块,如E_8。
进一步地,第二映射表5054中的E_4映射哈希码集合50541,该哈希码集合50541中的哈希码,如ABCDEFGH,表示对其切分8段哈希码时,第五段哈希码(第一哈希码块)为E,去除E之后切分为8段哈希码时,第四段哈希码(第二哈希码块)为E_4。
在一种情况中,S404包括如下步骤:
S40411、确定与所述第一哈希码块适配的第一映射表。
确定当前第一哈希码块的位置,从预置的第一映射表中查找用于存储处于该位置的第一哈希码块的第一映射表,作为与当前第一哈希码块适配的第一映射表。
S40412、在所述第一映射表中查找所述第一哈希码块。
通过哈希碰撞,分别在与第一哈希码块适配的第一映射表中,查找该第一哈希码块。
S40413、若查找到所述第一哈希码块,则在所述第一映射表中确定所述第一哈希码块映射的第二映射表。
如果在与第一哈希码块适配的第一映射表中查找到该第一哈希码块,则可以查找该第一哈希码块映射的第二映射表。
S40414、在与所述第二哈希码块匹配的第二映射表中查找所述第二哈希码块。
确定当前第二哈希码块的位置,从第二映射表中查找用于存储处于该位置的第二哈希码块的第二映射表,作为与当前第二哈希码块适配的第二映射表。
通过哈希碰撞,分别在与第二哈希码块适配的第二映射表中,查找该第二哈希码块。
S40415、若查找到所述第二哈希码块,则在所述第一映射表中提取所述第二哈希码块映射的哈希码。
S40416、确定所述哈希码所属的多媒体文件为参考多媒体文件。
如果在与第二哈希码块匹配的第二映射表中查找到该第二哈希码块,则可以查找该第二哈希码块映射的哈希码集合,该哈希码集合中的哈希码,其部分字符串与索引哈希码(第一哈希码块、第二哈希码块)相同,其所属的多媒体文件可作为参考多媒体文件。
在另一种情况中,S404包括如下步骤:
S40421、确定与所述第一哈希码块适配的第一映射表。
S40422、在所述第一映射表中查找所述第一哈希码块。
S40423、若未查找到所述第一哈希码块,则将所述第一哈希码块写入所述第一映射表中。
如果在与第一哈希码块适配的第一映射表中未查找到该第一哈希码块,则可以将该第一哈希码块写入该第一映射表中。
S40424、生成第二映射表。
S40425、在所述第一映射表中建立所述第一哈希码块与所述第二映射表之间的映射关系。
生成m个第二映射表,并在第一映射表中,以该第一哈希码为key,该第二映射表为value,建立该第一哈希码块与第二映射表之间的映射关系。
S40426、将所述第二哈希码块写入与所述第二哈希码块匹配的第二映射表中。
确定各个第二映射表存储的第二哈希码块的位置,将当前位于该位置的第二哈希码块写入该第二映射表中。
S40427、在所述第二映射表中建立所述第二哈希码块与所述目标多媒体文件的哈希码之间的映射关系。
在第二映射表中,以该第二哈希码为key,该第二哈希码所属目标多媒体文件的哈希码为value,建立该第二哈希码块与该目标多媒体文件的哈希码之间的映射关系,多个哈希码可以组成哈希码集合。
在本发明实施例中,在未查找到第一哈希码块的情况下,将第一哈希码块写入适配的第一映射表中,以及生成第二映射表,将第二哈希码写入适配的第二映射表中,并录入目标哈希码,在查找参考多媒体文件的过程中,不断更新第一映射表、第二映射表,保证参考多媒体文件录入的全面性。
在又一种情况中,S404包括如下步骤:
S40431、确定与所述第一哈希码块适配的第一映射表。
S40432、在所述第一映射表中查找所述第一哈希码块。
S40433、若查找到所述第一哈希码块,则在所述第一映射表中确定所述第一哈希码块映射的第二映射表。
S40434、若未查找到所述第二哈希码块,则将所述第二哈希码块写入与所述第二哈希码块匹配的第二映射表中。
S40435、在所述第二映射表中建立所述第二哈希码块与所述目标多媒体文件的哈希码之间的映射关系。
如果在与第二哈希码块匹配的第二映射表中未查找到该第二哈希码块,则可以将该第二哈希码块写入该第二映射表中。
在第二映射表中,以该第二哈希码为key,该第二哈希码所属目标多媒体文件的哈希码为value,建立该第二哈希码块与该目标多媒体文件的哈希码之间的映射关系,多个哈希码可以组成哈希码集合。
在本发明实施例中,在未查找到第二哈希码块的情况下,将第二哈希码写入适配的第二映射表中,并录入目标哈希码,在查找参考多媒体文件的过程中,不断更新第二映射表,保证参考多媒体文件录入的全面性。
当然,上述索引哈希码及其查找参考多媒体文件的方式只是作为示例,在实施本发明实施例时,可以根据实际情况设置其他索引哈希码及其查找参考多媒体文件的方式,例如,在第二映射表中建立第二哈希码块与第三映射表之间的映射关系,去除其中一个第二哈希码块之后,将剩余的第二哈希码块切分成r(r为正整数)个第三哈希码块,在第三映射表中建立相应的第三哈希码块与哈希码之间的映射关系,等等,本发明实施例对此不加以限制。另外,除了上述索引哈希码及其查找参考多媒体文件的方式外,本领域技术人员还可以根据实际需要采用其它索引哈希码及其查找参考多媒体文件的方式,本发明实施例对此也不加以限制。
S405、计算所述目标多媒体文件的哈希码与所述参考多媒体文件的哈希码之间的距离。
S406、若所述距离小于预设的目标阈值,则确定所述目标多媒体文件与所述参考多媒体文件匹配。
对于使用第一哈希码块、第二哈希码块比对哈希码的情况,目标阈值小于第一哈希码块的数量。
进一步而言,假设哈希码的长度为t*n,以连续的t个bit作为一个第一哈希码块,则哈希码可以拆分为n个第一哈希码块,若两个哈希码之间的距离小于n,则两个哈希码存在一个位置相同、且距离为0的第一哈希码块。
当然,对于其他对比哈希码的情况,也可以设置其他目标阈值,本实施例对此不加以限制。
本发明实施例提取目标多媒体文件的部分哈希码,作为索引哈希码,查找哈希码与索引哈希码相同的多媒体文件,作为参考多媒体文件,通过冗余为代价,缩小哈希码的比对范围,大大减少了哈希码的对比数量,有效降低了比对的时间,适于大规模、超大规模的哈希比对。
进一步地,第一哈希码块的数量为n,第二哈希码块的数量为m,则以n*m倍的冗余作为代价,将平均比对范围缩小到了全量对比的1/n*m。
此外,若距离大于0,则可以在第二映射表中建立第二哈希码块与目标多媒体文件的哈希码之间的映射关系。
即在第二映射表中,以该第二哈希码为key,该第二哈希码所属目标多媒体文件的哈希码为value,建立该第二哈希码块与该目标多媒体文件的哈希码之间的映射关系。
若距离等于0,表示目标多媒体文件的哈希码与参考多媒体文件的哈希码相同,则可以忽略该目标多媒体文件的哈希码。
在本发明实施例中,在距离大于0的情况下,录入目标哈希码,在查找参考多媒体文件的过程中,不断更新第二映射表,保证参考多媒体文件录入的全面性。
实施例五
图6为本发明实施例五提供的一种哈希码的生成装置的结构示意图,该装置具体可以包括如下模块:
目标音频信号接收单元601,用于接收目标音频信号;
样本音频信号采集单元602,用于从目标音频信号中采集样本音频信号;
频谱信号转换单元603,用于将样本音频信号转换为频谱信号,所述频谱信号中具有幅度;
差异生成单元604,用于根据幅度之间的差异生成标识目标音频信号整体的哈希码。
在本发明的一个实施例中,样本音频信号采集单元602包括:
采样子单元,用于对目标音频信号进行采样处理,以采样具有目标参数的样本音频信号;
数量统计子单元,用于统计样本音频信号的数量;
音频信号增加子单元,用于若数量小于预设的数量阈值,则在样本音频信号之后增加指定的音频信号,作为新的样本音频信号;
窗函数添加子单元,用于对从目标音频信号采样的样本音频信号添加窗函数;
其中,目标参数包括如下的至少一种:
频率、单声道。
在本发明的一个实施例中,频谱信号转换单元603包括:
变换子单元,用于将样本音频信号变换为频谱信号,频谱信号中具有频点,频点具有频率与幅度,频率线性相关;
转换子单元,用于对频谱信号进行转换,以使频率对数相关。
在本发明的一个实施例中,差异生成单元604包括:
第一差分子单元,用于对幅度进行差分处理,获得第一信号差异值;
第一二值化单元,用于对第一信号差异值进行二值化处理,获得哈希码。
在本发明实施例的一个示例中,第一信号差异值的长度比所述幅度的数量少一位;
第一差分子单元还用于:
将当前位幅度与下一位幅度之间的差值,赋值给当前位第一信号差异值。
在本发明实施例的一个示例中,第一二值化单元还用于:
若第一信号差异值大于0,则确定哈希码为1;
若第一信号差异值小于或等于0,则确定哈希码为0。
在本发明的一个实施例中,差异生成单元604还包括:
属性确定子单元,用于确定样本音频信号的属性;
有效确定子单元,用于若属性为非静音信号且非噪声信号,则确定哈希码有效;
无效确定子单元,用于若属性为静音信号或噪声信号,则确定哈希码无效。
在本发明实施例的一个示例中,属性确定子单元还用于:
计算哈希码与0之间的距离;
若距离大于或等于预设的距离阈值,则确定样本音频信号的属性为非静音信号且非噪声信号;
若距离小于预设的距离阈值,则确定所属样本音频信号的属性为静音信号或噪声信号。
在本发明的一个实施例中,差异生成单元604还包括:
第二差分子单元,用于对第一信号差异值进行差分处理,获得第二信号差异值;
第二二值化单元,用于对第二信号差异值进行二值化处理,获得新的哈希码。
在本发明实施例的一个示例中,第一信号差异值的长度与第二信号差异值的长度相同;
第二差分子单元还用于:
若当前位第二信号差异值为非最后一位,则将当前位第一信号差异值与下一位第一信号差异值之间的差值,赋值给当前位第二信号差异值;
若当前位第二信号差异值为最后一位,则将当前位第一信号差异值赋值给当前位第二信号差异值。
在本发明实施例的一个示例中,第二二值化单元还用于:
若第二信号差异值大于0,则确定新的哈希码为1;
若第二信号差异值小于或等于0,则确定新的哈希码为0。
本发明实施例所提供的哈希码的生成装置可执行本发明任意实施例所提供的哈希码的生成方法,具备执行方法相应的功能模块和有益效果。
实施例六
图7为本发明实施例六提供的一种多媒体文件的匹配装置的结构示意图,该装置具体可以包括如下模块:
目标多媒体文件确定模块701,用于确定目标多媒体文件,目标多媒体文件具有目标音频信号;
哈希码生成模块702,用于生成标识目标音频信号整体的哈希码;
参考多媒体文件确定模块703,用于确定参考多媒体文件,参考多媒体文件具有参考音频信号,参考多媒体文件关联标识参考音频信号整体的哈希码;
文件距离计算模块704,用于计算目标多媒体文件的哈希码与参考多媒体文件的哈希码之间的距离;
文件匹配确定模块705,用于若距离小于预设的目标阈值,则确定目标多媒体文件与参考多媒体文件匹配。
在本发明的一个实施例中,哈希码生成模块702包括:
样本音频信号采集单元,用于从目标音频信号中采集样本音频信号;
频谱信号转换单元,用于将样本音频信号转换为频谱信号,频谱信号中具有幅度;
差异生成单元,用于根据幅度之间的差异生成标识目标音频信号整体的哈希码。
在本发明的一个实施例中,参考多媒体文件确定模块703包括:
索引哈希码提取单元,用于提取目标多媒体文件的部分哈希码,作为索引哈希码;
哈希码查找单元,用于查找哈希码与索引哈希码相同的多媒体文件,作为参考多媒体文件。
在本发明的一个实施例中,索引哈希码包括第一哈希码块、第二哈希码块,目标阈值小于第一哈希码块的数量;
索引哈希码提取单元包括:
第一切分子单元,用于将目标多媒体文件的哈希码切分为n段,作为第一哈希码块;
第二切分子单元,用于将除第一哈希码块之外的哈希码切分为m段,作为第二哈希码块。
在本发明的一个实施例中,哈希码查找单元包括:
第一映射表确定子单元,用于确定与第一哈希码块适配的第一映射表;
第一哈希码块查找子单元,用于在第一映射表中查找第一哈希码块;
第二映射表确定子单元,用于若查找到第一哈希码块,则在第一映射表中确定第一哈希码块映射的第二映射表;
第二哈希码块查找子单元,用于在与第二哈希码块匹配的第二映射表中查找第二哈希码块;
哈希码提取子单元,用于若查找到第二哈希码块,则在第一映射表中提取第二哈希码块映射的哈希码;
归属确定子单元,用于确定哈希码所属的多媒体文件为参考多媒体文件。
在本发明的一个实施例中,哈希码查找单元还包括:
第一块写入子单元,用于若未查找到所述第一哈希码块,则将第一哈希码块写入第一映射表中;
第一生成子单元,用于生成第二映射表;
第一映射关系建立子单元,用于在第一映射表中建立第一哈希码块与第二映射表之间的映射关系;
第二块写入子单元,用于将第二哈希码块写入与第二哈希码块匹配的第二映射表中;
第二映射管理建立子单元,用于在第二映射表中建立第二哈希码块与目标多媒体文件的哈希码之间的映射关系。
在本发明的一个实施例中,哈希码查找单元还包括:
第三块写入子单元,用于若未查找到第二哈希码块,则将第二哈希码块写入与第二哈希码块匹配的第二映射表中;
第三映射管理建立子单元,用于在第二映射表中建立第二哈希码块与目标多媒体文件的哈希码之间的映射关系。
在本发明的一个实施例中,还包括:
映射模块,用于若距离大于0,则在第二映射表中建立第二哈希码块与目标多媒体文件的哈希码之间的映射关系。
本发明实施例所提供的多媒体文件的匹配装置可执行本发明任意实施例所提供的多媒体文件的匹配方法,具备执行方法相应的功能模块和有益效果。
实施例七
图8为本发明实施例七提供的一种电子设备的结构示意图。如图8所示,该电子设备包括处理器800、存储器801、通信模块802、输入装置803和输出装置804;电子设备中处理器800的数量可以是一个或多个,图8中以一个处理器800为例;电子设备中的处理器800、存储器801、通信模块802、输入装置803和输出装置804可以通过总线或其他方式连接,图8中以通过总线连接为例。
存储器801作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本实施例中的哈希码的生成方法对应的模块(例如,如图6所示的哈希码的生成装置中的目标音频信号接收单元601、样本音频信号采集单元602、频谱信号转换单元603、差异生成单元604),或者,多媒体文件的匹配方法对应的模块(例如,如图7所示的多媒体文件的匹配装置中的目标多媒体文件确定模块701、哈希码生成模块702、参考多媒体文件确定模块703、文件距离计算模块704、文件匹配确定模块705)。处理器800通过运行存储在存储器801中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述的哈希码的生成方法或多媒体文件的匹配方法。
存储器801可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器801可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器801可进一步包括相对于处理器800远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
通信模块802,用于与显示屏建立连接,并实现与显示屏的数据交互。输入装置803可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。
本实施例提供的一种电子设备,可执行本发明任一实施例提供的哈希码的生成方法或多媒体文件的匹配方法,具体相应的功能和有益效果。
实施例八
本发明实施例八还提供一种计算机可读存储介质,其上存储有计算机程序。
在一种情况中,该程序被处理器执行时实现一种哈希码的生成方法,该方法包括:
接收目标音频信号;
从目标音频信号中采集样本音频信号;
将样本音频信号转换为频谱信号,频谱信号中具有幅度;
根据幅度之间的差异生成标识目标音频信号整体的哈希码。
在另一种情况中,该程序被处理器执行时实现一种多媒体文件的匹配方法,该方法包括:
确定目标多媒体文件,目标多媒体文件具有目标音频信号;
生成标识目标音频信号整体的哈希码;
确定参考多媒体文件,参考多媒体文件具有参考音频信号,参考多媒体文件关联标识参考音频信号整体的哈希码;
计算目标多媒体文件的哈希码与参考多媒体文件的哈希码之间的距离;
若距离小于预设的目标阈值,则确定目标多媒体文件与参考多媒体文件匹配。
当然,本发明实施例所提供的计算机可读存储介质,其计算机程序不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的哈希码的生成方法或者多媒体文件的匹配方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述哈希码的生成装置或者多媒体文件的匹配装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (23)

1.一种哈希码的生成方法,其特征在于,包括:
接收目标音频信号;
从所述目标音频信号中采集样本音频信号;
将所述样本音频信号转换为频谱信号,所述频谱信号中具有幅度;
根据所述幅度之间的差异生成标识所述目标音频信号整体的哈希码。
2.根据权利要求1所述的方法,其特征在于,所述从所述目标音频信号中采集样本音频信号,包括:
对所述目标音频信号进行采样处理,以采样具有目标参数的样本音频信号;
统计所述样本音频信号的数量;
若所述数量小于预设的数量阈值,则在所述样本音频信号之后增加指定的音频信号,作为新的样本音频信号;
对从所述目标音频信号采样的样本音频信号添加窗函数;
其中,所述目标参数包括如下的至少一种:
频率、单声道。
3.根据权利要求1所述的方法,其特征在于,所述将所述样本音频信号转换为频谱信号,包括:
将所述样本音频信号变换为频谱信号,所述频谱信号中具有频点,所述频点具有频率与幅度,所述频率线性相关;
对所述频谱信号进行转换,以使所述频率对数相关。
4.根据权利要求1或2或3所述的方法,其特征在于,所述根据所述幅度之间的差异生成标识所述目标音频信号整体的哈希码,包括:
对所述幅度进行差分处理,获得第一信号差异值;
对所述第一信号差异值进行二值化处理,获得哈希码。
5.根据权利要求4所述的方法,其特征在于,所述第一信号差异值的长度比所述幅度的数量少一位;
所述对所述幅度进行差分处理,获得第一信号差异值,包括:
将当前位幅度与下一位幅度之间的差值,赋值给当前位第一信号差异值。
6.根据权利要求4所述的方法,其特征在于,所述对所述第一信号差异值进行二值化处理,获得哈希码,包括:
若所述第一信号差异值大于0,则确定哈希码为1;
若所述第一信号差异值小于或等于0,则确定哈希码为0。
7.根据权利要求4所述的方法,其特征在于,其特征在于,所述根据所述幅度之间的差异生成标识所述目标音频信号整体的哈希码,还包括:
确定所述样本音频信号的属性;
若所述属性为非静音信号且非噪声信号,则确定所述哈希码有效;
若所述属性为静音信号或噪声信号,则确定所述哈希码无效。
8.根据权利要求7所述的方法,其特征在于,其特征在于,所述确定所述样本音频信号的属性,包括:
计算所述哈希码与0之间的距离;
若所述距离大于或等于预设的距离阈值,则确定所述样本音频信号的属性为非静音信号且非噪声信号;
若所述距离小于预设的距离阈值,则确定所述所属样本音频信号的属性为静音信号或噪声信号。
9.根据权利要求7或8所述的方法,其特征在于,其特征在于,在所述确定所述哈希码无效之后,所述根据所述幅度之间的差异生成标识所述目标音频信号整体的哈希码,还包括:
对所述第一信号差异值进行差分处理,获得第二信号差异值;
对所述第二信号差异值进行二值化处理,获得新的哈希码。
10.根据权利要求9所述的方法,其特征在于,其特征在于,所述第一信号差异值的长度与所述第二信号差异值的长度相同;
所述对所述第一信号差异值进行差分处理,获得第二信号差异值,包括:
若当前位第二信号差异值为非最后一位,则将当前位第一信号差异值与下一位第一信号差异值之间的差值,赋值给当前位第二信号差异值;
若当前位第二信号差异值为最后一位,则将当前位第一信号差异值赋值给当前位第二信号差异值。
11.根据权利要求9所述的方法,其特征在于,其特征在于,所述对所述第二信号差异值进行二值化处理,获得新的哈希码,包括:
若所述第二信号差异值大于0,则确定新的哈希码为1;
若所述第二信号差异值小于或等于0,则确定新的哈希码为0。
12.一种多媒体文件的匹配方法,其特征在于,包括:
确定目标多媒体文件,所述目标多媒体文件具有目标音频信号;
生成标识所述目标音频信号整体的哈希码;
确定参考多媒体文件,所述参考多媒体文件具有参考音频信号,所述参考多媒体文件关联标识所述参考音频信号整体的哈希码;
计算所述目标多媒体文件的哈希码与所述参考多媒体文件的哈希码之间的距离;
若所述距离小于预设的目标阈值,则确定所述目标多媒体文件与所述参考多媒体文件匹配。
13.根据权利要求12所述的方法,其特征在于,其特征在于,所述生成标识所述目标音频信号整体的哈希码,包括:
从所述目标音频信号中采集样本音频信号;
将所述样本音频信号转换为频谱信号,所述频谱信号中具有幅度;
根据所述幅度之间的差异生成标识所述目标音频信号整体的哈希码。
14.根据权利要求12所述的方法,其特征在于,其特征在于,所述确定参考多媒体文件,包括:
提取所述目标多媒体文件的部分哈希码,作为索引哈希码;
查找哈希码与所述索引哈希码相同的多媒体文件,作为参考多媒体文件。
15.根据权利要求14所述的方法,其特征在于,其特征在于,所述索引哈希码包括第一哈希码块、第二哈希码块,所述目标阈值小于所述第一哈希码块的数量;
所述提取所述目标多媒体文件的部分哈希码,作为索引哈希码,包括:
将所述目标多媒体文件的哈希码切分为n段,作为第一哈希码块;
将除所述第一哈希码块之外的哈希码切分为m段,作为第二哈希码块。
16.根据权利要求14所述的方法,其特征在于,其特征在于,所述索引哈希码包括第一哈希码块、第二哈希码块,所述查找哈希码与所述索引哈希码相同的多媒体文件,作为参考多媒体文件,包括:
确定与所述第一哈希码块适配的第一映射表;
在所述第一映射表中查找所述第一哈希码块;
若查找到所述第一哈希码块,则在所述第一映射表中确定所述第一哈希码块映射的第二映射表;
在与所述第二哈希码块匹配的第二映射表中查找所述第二哈希码块;
若查找到所述第二哈希码块,则在所述第一映射表中提取所述第二哈希码块映射的哈希码;
确定所述哈希码所属的多媒体文件为参考多媒体文件。
17.根据权利要求16所述的方法,其特征在于,其特征在于,所述查找哈希码与所述索引哈希码相同的多媒体文件,作为参考多媒体文件,还包括:
若未查找到所述第一哈希码块,则将所述第一哈希码块写入所述第一映射表中;
生成第二映射表;
在所述第一映射表中建立所述第一哈希码块与所述第二映射表之间的映射关系;
将所述第二哈希码块写入与所述第二哈希码块匹配的第二映射表中;
在所述第二映射表中建立所述第二哈希码块与所述目标多媒体文件的哈希码之间的映射关系。
18.根据权利要求16所述的方法,其特征在于,其特征在于,所述查找哈希码与所述索引哈希码相同的多媒体文件,作为参考多媒体文件,还包括:
若未查找到所述第二哈希码块,则将所述第二哈希码块写入与所述第二哈希码块匹配的第二映射表中;
在所述第二映射表中建立所述第二哈希码块与所述目标多媒体文件的哈希码之间的映射关系。
19.根据权利要求16所述的方法,其特征在于,其特征在于,在所述若所述距离小于预设的目标阈值,则确定所述目标多媒体文件与所述参考多媒体文件匹配之后,还包括:
若所述距离大于0,则在所述第二映射表中建立所述第二哈希码块与所述目标多媒体文件的哈希码之间的映射关系。
20.一种哈希码的生成装置,其特征在于,包括:
目标音频信号接收单元,用于接收目标音频信号;
样本音频信号采集单元,用于从所述目标音频信号中采集样本音频信号;
频谱信号转换单元,用于将所述样本音频信号转换为频谱信号,所述频谱信号中具有幅度;
差异生成单元,用于根据所述幅度之间的差异生成标识所述目标音频信号整体的哈希码。
21.一种多媒体文件的匹配装置,其特征在于,包括:
目标多媒体文件确定模块,用于确定目标多媒体文件,所述目标多媒体文件具有目标音频信号;
哈希码生成模块,用于生成标识所述目标音频信号整体的哈希码;
参考多媒体文件确定模块,用于确定参考多媒体文件,所述参考多媒体文件具有参考音频信号,所述参考多媒体文件关联标识所述参考音频信号整体的哈希码;
文件距离计算模块,用于计算所述目标多媒体文件的哈希码与所述参考多媒体文件的哈希码之间的距离;
文件匹配确定模块,用于若所述距离小于预设的目标阈值,则确定所述目标多媒体文件与所述参考多媒体文件匹配。
22.一种电子设备,其特征在于,所述电子设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-11中任一所述的哈希码的生成方法或者如权利要求12-19中任一所述的多媒体文件的匹配方法。
23.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-11中任一所述的哈希码的生成方法或者如权利要求12-19中任一所述的多媒体文件的匹配方法。
CN201910656276.8A 2019-07-19 2019-07-19 哈希码的生成及其匹配方法、装置、电子设备和存储介质 Active CN110400578B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910656276.8A CN110400578B (zh) 2019-07-19 2019-07-19 哈希码的生成及其匹配方法、装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910656276.8A CN110400578B (zh) 2019-07-19 2019-07-19 哈希码的生成及其匹配方法、装置、电子设备和存储介质

Publications (2)

Publication Number Publication Date
CN110400578A true CN110400578A (zh) 2019-11-01
CN110400578B CN110400578B (zh) 2022-05-17

Family

ID=68324629

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910656276.8A Active CN110400578B (zh) 2019-07-19 2019-07-19 哈希码的生成及其匹配方法、装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN110400578B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112802494A (zh) * 2021-04-12 2021-05-14 北京世纪好未来教育科技有限公司 语音评测方法、装置、计算机设备和介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140025386A1 (en) * 2012-07-20 2014-01-23 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for audio object clustering
CN103581023A (zh) * 2013-11-06 2014-02-12 盛科网络(苏州)有限公司 实现最长掩码匹配的方法及装置
CN106782575A (zh) * 2011-06-01 2017-05-31 三星电子株式会社 音频编码方法和设备、音频解码方法和设备
CN107578452A (zh) * 2017-07-31 2018-01-12 华南理工大学 一种具有兼容格式和不变尺寸的jpeg图像加密方法
CN108763492A (zh) * 2018-05-29 2018-11-06 四川远鉴科技有限公司 一种音频模板提取方法及装置
CN108962239A (zh) * 2018-06-08 2018-12-07 四川斐讯信息技术有限公司 一种基于语音掩蔽的快速配网方法及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106782575A (zh) * 2011-06-01 2017-05-31 三星电子株式会社 音频编码方法和设备、音频解码方法和设备
US20140025386A1 (en) * 2012-07-20 2014-01-23 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for audio object clustering
CN103581023A (zh) * 2013-11-06 2014-02-12 盛科网络(苏州)有限公司 实现最长掩码匹配的方法及装置
CN107578452A (zh) * 2017-07-31 2018-01-12 华南理工大学 一种具有兼容格式和不变尺寸的jpeg图像加密方法
CN108763492A (zh) * 2018-05-29 2018-11-06 四川远鉴科技有限公司 一种音频模板提取方法及装置
CN108962239A (zh) * 2018-06-08 2018-12-07 四川斐讯信息技术有限公司 一种基于语音掩蔽的快速配网方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李建松等: "《地理信息系统原理》", 31 January 2015, 武汉大学出版社 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112802494A (zh) * 2021-04-12 2021-05-14 北京世纪好未来教育科技有限公司 语音评测方法、装置、计算机设备和介质
CN112802494B (zh) * 2021-04-12 2021-07-16 北京世纪好未来教育科技有限公司 语音评测方法、装置、计算机设备和介质

Also Published As

Publication number Publication date
CN110400578B (zh) 2022-05-17

Similar Documents

Publication Publication Date Title
JP6820058B2 (ja) 音声認識方法、装置、デバイス、及び記憶媒体
CN112115706B (zh) 文本处理方法、装置、电子设备及介质
US10261965B2 (en) Audio generation method, server, and storage medium
Haitsma et al. A highly robust audio fingerprinting system with an efficient search strategy
Haitsma et al. A highly robust audio fingerprinting system.
US20180374491A1 (en) Systems and Methods for Recognizing Sound and Music Signals in High Noise and Distortion
CN107293307B (zh) 音频检测方法及装置
KR102614021B1 (ko) 오디오 컨텐츠 인식 방법 및 장치
WO2005101243A1 (en) Method and apparatus for identifying audio such as music
US20140219461A1 (en) Method and device for audio recognition
CN108304424B (zh) 文本关键词提取方法及文本关键词提取装置
CN106959976B (zh) 一种搜索处理方法以及装置
CN106713111B (zh) 一种添加好友的处理方法、终端及服务器
US20160005412A1 (en) Generation of a signature of a musical audio signal
CN108538294A (zh) 一种语音交互方法及装置
CN112100357A (zh) 引导语的生成方法及装置、电子设备、计算机存储介质
US20080091427A1 (en) Hierarchical word indexes used for efficient N-gram storage
CN113254620B (zh) 基于图神经网络的应答方法、装置、设备及存储介质
CN110400578A (zh) 哈希码的生成及其匹配方法、装置、电子设备和存储介质
CN1987852A (zh) 依据消息内容确定通信对象属性的方法及装置
WO2021103594A1 (zh) 一种默契度检测方法、设备、服务器及可读存储介质
CN106782612B (zh) 一种逆向爆音检测方法及其装置
CN103247316B (zh) 一种音频检索中构建索引的方法及系统
CN110517671B (zh) 一种音频信息的评估方法、装置及存储介质
CN107918606A (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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20221202

Address after: 31a, 15 / F, building 30, maple mall, bangrang Road, Brazil, Singapore

Patentee after: Baiguoyuan Technology (Singapore) Co.,Ltd.

Address before: 511400 floor 5-13, West Tower, building C, 274 Xingtai Road, Shiqiao street, Panyu District, Guangzhou City, Guangdong Province

Patentee before: GUANGZHOU BAIGUOYUAN INFORMATION TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right