CN111131839B - 数据处理方法、装置、设备及存储介质 - Google Patents

数据处理方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN111131839B
CN111131839B CN201911420963.6A CN201911420963A CN111131839B CN 111131839 B CN111131839 B CN 111131839B CN 201911420963 A CN201911420963 A CN 201911420963A CN 111131839 B CN111131839 B CN 111131839B
Authority
CN
China
Prior art keywords
target
pulses
matrix
data
target type
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.)
Active
Application number
CN201911420963.6A
Other languages
English (en)
Other versions
CN111131839A (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.)
Guangzhou Cubesili Information Technology Co Ltd
Original Assignee
Guangzhou Cubesili 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 Cubesili Information Technology Co Ltd filed Critical Guangzhou Cubesili Information Technology Co Ltd
Priority to CN201911420963.6A priority Critical patent/CN111131839B/zh
Publication of CN111131839A publication Critical patent/CN111131839A/zh
Application granted granted Critical
Publication of CN111131839B publication Critical patent/CN111131839B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/20Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
    • H04N19/21Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding with binary alpha-plane coding for video objects, e.g. context-based arithmetic encoding [CAE]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Mathematical Physics (AREA)
  • Radar Systems Or Details Thereof (AREA)

Abstract

本申请公开了一种数据处理方法、装置、设备及存储介质,属于计算机技术领域。所述方法包括:获取业务数据中待编码的目标二进制脉冲序列的特征数据,其中,该特征数据包括该目标二进制脉冲序列中目标类型脉冲的个数,该目标类型脉冲为非零脉冲或者零脉冲;根据该特征数据获取与该目标二进制脉冲序列对应的目标序列号;对该目标序列号进行编码,得到编码数据,并将该编码数据和该目标类型脉冲的个数发送至接收端。本申请实施例提供的技术方案能够减少二进制脉冲序列编码后的数据量。

Description

数据处理方法、装置、设备及存储介质
技术领域
本申请涉及音视频编解码领域,特别是涉及一种数据处理方法、装置、设备及存储介质。
背景技术
在许多情况下,设备之间需要进行二进制脉冲序列的传输,例如,在语音传输过程中,可以将语音信号转换为声道参数与激励,并对该声道参数和激励进行传输,其中,这里的激励就是一个二进制随机脉冲序列。在传输二进制脉冲序列的过程中,通常可以对二进制脉冲序列进行编码,并对编码后的数据进行传输。
其中,减少二进制脉冲序列编码后的数据量是对二进制脉冲序列编码的一个研究重点。
发明内容
基于此,本申请实施例提供了一种数据处理方法、装置、设备及存储介质,可以减少二进制脉冲序列编码后的数据量。
第一方面,提供了一种数据处理方法,所述方法包括:
获取业务数据中待编码的目标二进制脉冲序列的特征数据,其中,该特征数据包括该目标二进制脉冲序列中目标类型脉冲的个数,该目标类型脉冲为非零脉冲或者零脉冲;根据该特征数据获取与该目标二进制脉冲序列对应的目标序列号;对该目标序列号进行编码,得到编码数据,并将该编码数据和该目标类型脉冲的个数发送至接收端。
在其中一个实施例中,该特征数据还包括该目标二进制脉冲序列中脉冲的总个数以及该目标二进制脉冲序列中每个该目标类型脉冲的位置数据,根据该特征数据获取与该目标二进制脉冲序列对应的目标序列号,包括:
根据该目标二进制脉冲序列中脉冲的总个数以及该目标二进制脉冲序列中目标类型脉冲的个数,从多个参考矩阵中获取目标参考矩阵,其中,每个该参考矩阵与不同的脉冲总个数以及目标类型脉冲个数对应;根据目标类型脉冲的位置数据,从该目标参考矩阵中依次获取矩阵元素,并在每次获取到矩阵元素后根据获取到的矩阵元素计算候选序列号;将最后一次计算得到的该候选序列号作为该目标序列号。
在其中一个实施例中,该目标参考矩阵的矩阵元素包括:
a(i,0)=0;
Figure GDA0003333378670000021
其中,L为该总个数,n为该目标类型脉冲的个数,i为小于n的自然数,j为小于等于L-n+1的自然数,a(i,j)为该目标参考矩阵中第i行第j列的元素,C为组合数计算符号。
在其中一个实施例中,根据目标类型脉冲的位置数据,从该目标参考矩阵中依次获取矩阵元素,并在每次获取到矩阵元素后根据获取到的矩阵元素计算候选序列号,包括:
对于该目标二进制脉冲序列中的第k个该目标类型脉冲,从该目标参考矩阵中获取第一矩阵元素和第二矩阵元素,并根据第一公式计算第k个该候选序列号,其中,该第一矩阵元素为a(k,pos(k)),该第二矩阵元素为a(k,pos(k-1));该第一公式为:idxk=idxk-1+a(k,pos(k))-a(k,pos(k-1));其中,pos(k)为第k个该目标类型脉冲的位置数据,pos(k-1)为第k-1个该目标类型脉冲的位置数据,idxk为第k个该候选序列号,idxk-1为第k-1个该候选序列号,k为大于0小于n的整数,第0个候选序列号等于a(0,pos(0))。
在其中一个实施例中,对该目标序列号进行编码,包括:
对该目标序列号进行熵编码,其中,该熵编码使用的概率分布函数为均匀分布函数。
第二方面,提供了一种数据处理方法,该方法包括:
接收编码数据和业务数据中待解码的目标二进制脉冲序列中目标类型脉冲的个数,该目标类型脉冲为非零脉冲或者零脉冲;对该编码数据进行解码,得到与该目标二进制脉冲序列对应的目标序列号;根据该目标序列号以及该目标类型脉冲的个数,确定该目标二进制脉冲序列中每个该目标类型脉冲的位置数据;根据每个该目标类型脉冲的位置数据得到该目标二进制脉冲序列。
在其中一个实施例中,根据该目标序列号以及该目标类型脉冲的个数,确定该目标二进制脉冲序列中每个该目标类型脉冲的位置数据,包括:
根据该目标二进制脉冲序列中目标类型脉冲的个数以及预先设定的该目标二进制脉冲序列中脉冲的总个数,从多个参考矩阵中获取目标参考矩阵,其中,每个该参考矩阵与不同的脉冲总个数以及目标类型脉冲个数对应;对于每个该目标类型脉冲,根据该目标序列号从该目标参考矩阵中获取满足目标条件的目标矩阵元素,并根据该目标矩阵元素在该目标参考矩阵中的位置确定该目标类型脉冲的位置数据。
在其中一个实施例中,该目标参考矩阵的矩阵元素包括:
a(i,0)=0;
Figure GDA0003333378670000031
其中,L为该总个数,n为该目标类型脉冲的个数,i为小于n的自然数,j为小于等于L-n+1的自然数,a(i,j)为该目标参考矩阵中第i行第j列的元素,C为组合数计算符号。
在其中一个实施例中,对于每个该目标类型脉冲,根据该目标序列号从该目标参考矩阵中获取满足目标条件的目标矩阵元素,并根据该目标矩阵元素在该目标参考矩阵中的位置确定该目标类型脉冲的位置数据,包括:
对于该目标二进制脉冲序列中的第k个该目标类型脉冲,在该目标参考矩阵的第k行矩阵元素中依次搜索大于第k个候选序列号的矩阵元素,并将第一次搜索到的矩阵元素作为该目标矩阵元素,根据该目标矩阵元素的列数确定第k个该目标类型脉冲的位置数据;其中,该第k个候选序列号根据第二公式得到,该第二公式为:
Figure GDA0003333378670000032
其中,idxk为第k个候选序列号,idxk-1为第k-1个候选序列号,idx0为第0个候选序列号,idxm为目标序列号,jk-1为第k-1个目标类型脉冲对应的目标矩阵元素的列数,pos(k-1)为第k-1个目标类型脉冲的位置数据,k为小于n的自然数。
在其中一个实施例中,对该编码数据进行解码,包括:
对该编码数据进行熵解码,其中,该熵解码使用的概率分布函数为均匀分布函数。
第三方面,提供了一种数据处理装置,该装置包括:
第一获取模块,用于获取业务数据中待编码的目标二进制脉冲序列的特征数据,其中,该特征数据包括该目标二进制脉冲序列中目标类型脉冲的个数,该目标类型脉冲为非零脉冲或者零脉冲;
第二获取模块,用于根据该特征数据获取与该目标二进制脉冲序列对应的目标序列号;
编码模块,用于对该目标序列号进行编码,得到编码数据;
发送模块,用于将该编码数据和该目标类型脉冲的个数发送至接收端。
在其中一个实施例中,该特征数据还包括该目标二进制脉冲序列中脉冲的总个数以及该目标二进制脉冲序列中每个该目标类型脉冲的位置数据,该第二获取模块,具体用于:
根据该目标二进制脉冲序列中脉冲的总个数以及该目标二进制脉冲序列中目标类型脉冲的个数,从多个参考矩阵中获取目标参考矩阵,其中,每个该参考矩阵与不同的脉冲总个数以及目标类型脉冲个数对应;根据目标类型脉冲的位置数据,从该目标参考矩阵中依次获取矩阵元素,并在每次获取到矩阵元素后根据获取到的矩阵元素计算候选序列号;将最后一次计算得到的该候选序列号作为该目标序列号。
在其中一个实施例中,该目标参考矩阵的矩阵元素包括:
a(i,0)=0;
Figure GDA0003333378670000041
其中,L为该总个数,n为该目标类型脉冲的个数,i为小于n的自然数,j为小于等于L-n+1的自然数,a(i,j)为该目标参考矩阵中第i行第j列的元素,C为组合数计算符号。
在其中一个实施例中,该第二获取模块,具体用于:
对于该目标二进制脉冲序列中的第k个该目标类型脉冲,从该目标参考矩阵中获取第一矩阵元素和第二矩阵元素,并根据第一公式计算第k个该候选序列号,其中,该第一矩阵元素为a(k,pos(k)),该第二矩阵元素为a(k,pos(k-1));该第一公式为:idxk=idxk-1+a(k,pos(k))-a(k,pos(k-1));其中,pos(k)为第k个该目标类型脉冲的位置数据,pos(k-1)为第k-1个该目标类型脉冲的位置数据,idxk为第k个该候选序列号,idxk-1为第k-1个该候选序列号,k为大于0小于n的整数,第0个候选序列号等于a(0,pos(0))。
在其中一个实施例中,该编码模块,具体用于:
对该目标序列号进行熵编码,其中,该熵编码使用的概率分布函数为均匀分布函数。
第四方面,提供了一种数据处理装置,该装置包括:
接收模块,用于接收编码数据和业务数据中待解码的目标二进制脉冲序列中目标类型脉冲的个数,该目标类型脉冲为非零脉冲或者零脉冲;
解码模块,用于对该编码数据进行解码,得到与该目标二进制脉冲序列对应的目标序列号;
确定模块,用于根据该目标序列号以及该目标类型脉冲的个数,确定该目标二进制脉冲序列中每个该目标类型脉冲的位置数据;
获取模块,用于根据每个该目标类型脉冲的位置数据得到该目标二进制脉冲序列。
在其中一个实施例中,该确定模块,具体用于:
根据该目标二进制脉冲序列中目标类型脉冲的个数以及预先设定的该目标二进制脉冲序列中脉冲的总个数,从多个参考矩阵中获取目标参考矩阵,其中,每个该参考矩阵与不同的脉冲总个数以及目标类型脉冲个数对应;对于每个该目标类型脉冲,根据该目标序列号从该目标参考矩阵中获取满足目标条件的目标矩阵元素,并根据该目标矩阵元素在该目标参考矩阵中的位置确定该目标类型脉冲的位置数据。
在其中一个实施例中,该目标参考矩阵的矩阵元素包括:
a(i,0)=0;
Figure GDA0003333378670000051
其中,L为该总个数,n为该目标类型脉冲的个数,i为小于n的自然数,j为小于等于L-n+1的自然数,a(i,j)为该目标参考矩阵中第i行第j列的元素,C为组合数计算符号。
在其中一个实施例中,该确定模块,具体用于:
对于该目标二进制脉冲序列中的第k个该目标类型脉冲,在该目标参考矩阵的第k行矩阵元素中依次搜索大于第k个候选序列号的矩阵元素,并将第一次搜索到的矩阵元素作为该目标矩阵元素,根据该目标矩阵元素的列数确定第k个该目标类型脉冲的位置数据;其中,该第k个候选序列号根据第二公式得到,该第二公式为:
Figure GDA0003333378670000061
其中,idxk为第k个候选序列号,idxk-1为第k-1个候选序列号,idx0为第0个候选序列号,idxm为目标序列号,jk-1为第k-1个目标类型脉冲对应的目标矩阵元素的列数,pos(k-1)为第k-1个目标类型脉冲的位置数据,k为小于n的自然数。
在其中一个实施例中,该解码模块,具体用于:
对该编码数据进行熵解码,其中,该熵解码使用的概率分布函数为均匀分布函数。
第五方面,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该计算机程序被该处理器执行时实现如上述第一方面任一所述的数据处理方法,或者,该计算机程序被该处理器执行时实现如上述第二方面任一所述的数据处理方法。
第六方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述第一方面任一所述的数据处理方法,或者,该计算机程序被该处理器执行时实现如上述第二方面任一所述的数据处理方法。
本申请实施例提供的技术方案带来的有益效果至少包括:
发送端获取业务数据中待编码的目标二进制脉冲序列的特征数据,其中,该特征数据包括目标二进制脉冲序列中脉冲的总个数、目标二进制脉冲序列中目标类型脉冲的个数以及目标二进制脉冲序列中每个目标类型脉冲的位置数据,该目标类型脉冲为非零脉冲或者零脉冲,而后,发送端根据该特征数据获取与目标二进制脉冲序列对应的目标序列号,接着,发送端对该目标序列号进行编码,得到编码数据,并将该编码数据和目标二进制脉冲序列中目标类型脉冲的个数发送至接收端,相较于目标主流的SILK编码器而言,按照本申请实施例提供的数据处理方法对二进制脉冲序列进行编码后所得到的编码数据的数据量较小。
附图说明
图1为本申请实施例提供的一种实施环境的示意图;
图2为本申请实施例提供的一种数据处理方法的流程图;
图3为本申请实施例提供的另一种数据处理方法的流程图;
图4为本申请实施例提供的另一种数据处理方法的流程图;
图5为本申请实施例提供的另一种数据处理方法的流程图;
图6为本申请实施例提供的一种数据处理装置的框图;
图7为本申请实施例提供的一种数据处理装置的框图;
图8为本申请实施例提供的一种计算机设备的框图;
图9为本申请实施例提供的另一种计算机设备的框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在许多情况下,业务数据中可以包括二进制脉冲序列,其中,这里所谓的业务数据可以为视频数据、音频数据、控制数据以及通讯数据等等。
例如,通常可以根据人的发声模型,将语音信号转换为包括声道参数和激励的音频数据,这里的激励就是一个二进制随机脉冲序列。
在传输二进制脉冲序列的过程中,通常需要对二进制脉冲序列进行编码以及解码。其中,二进制脉冲序列编码后的数据量大小是技术人员关注的一个重点,这是因为,二进制脉冲序列编码后的数据量越小,对传输带宽的要求也就越低,也就越能节约通讯资源。
当前,SILK编码器是一种主流的对二进制脉冲序列(例如,激励)进行编码的编码器,其中,SILK编码器可以采用Shell encoder的编码方式对二进制脉冲序列进行编码。
本申请实施例提供了一种数据处理方法,在该数据处理方法中,发送端可以获取业务数据中待编码的目标二进制脉冲序列的特征数据,其中,该特征数据包括目标二进制脉冲序列中脉冲的总个数、目标二进制脉冲序列中目标类型脉冲的个数以及目标二进制脉冲序列中每个目标类型脉冲的位置数据,该目标类型脉冲为非零脉冲或者零脉冲,而后,发送端可以根据该特征数据获取与目标二进制脉冲序列对应的目标序列号,接着,发送端可以对该目标序列号进行编码,得到编码数据,并将该编码数据和目标二进制脉冲序列中目标类型脉冲的个数发送至接收端,相较于目标主流的SILK编码器而言,按照本申请实施例提供的数据处理方法对二进制脉冲序列进行编码后所得到的编码数据的数据量较小。
下面,将对本申请实施例提供的数据处理方法所涉及到的实施环境进行简要说明。
如图1所示,该实施环境可以包括发送端101和接收端102,其中,发送端101和接收端102之间可以通过有线或者无线网络进行数据传输。发送端101可以按照本申请实施例提供的数据处理方法对二进制脉冲序列进行编码,并将编码后的数据发送至接收端102,接收端102可以按照本申请实施例提供的数据处理方法对该编码后的数据进行解码,从而得到该二进制脉冲序列。
需要指出的是,发送端101和接收端102可以为终端或者服务器,例如,发送端101可以为智能手机、平板电脑、台式电脑以及可穿戴设备等,发送端101还可以为一台服务器或者由多台服务器组成的服务器集群,同理地,接收端102可以为智能手机、平板电脑、台式电脑以及可穿戴设备等,接收端102还可以为一台服务器或者多台服务器组成的服务器集群。
请参考图2,其示出了本申请实施例提供的一种数据处理方法的流程图,该数据处理方法可以应用于图1所示实施例的发送端101中。如图2所示,该数据处理方法可以包括以下步骤:
步骤201、发送端获取业务数据中待编码的目标二进制脉冲序列的特征数据。
其中,如上文所述,这里所谓的业务数据可以包括视频数据、音频数据、控制数据以及通讯数据等等。
目标二进制脉冲序列是由非零脉冲(也即是1)以及零脉冲(也即是0)这两类脉冲中的至少一种所组成的序列,例如,目标二进制脉冲序列可以为0100101000000000。
目标二进制脉冲序列的特征数据可以包括:目标二进制脉冲序列中目标类型脉冲的个数n(为了简化叙述,下文统一将其简称为第一个数n)。
可选的,在本申请的一个实施例中,该目标二进制脉冲序列的特征数据还可以包括:目标二进制脉冲序列中脉冲的总个数L(为了简化叙述,下文统一将其简称为第二个数L)、以及目标二进制脉冲序列中每个目标类型脉冲的位置数据pos[i](为了简化叙述,下文统一将其简称为位置数据pos[i]),其中,pos[i]为目标二进制脉冲序列中第i个目标类型脉冲的位置数据。这里的目标类型脉冲可以为非零脉冲或者零脉冲。
例如,目标二进制脉冲序列可以为0100101000000000,其包括16个比特位,则第二个数L为16;以目标类型脉冲为非零脉冲为例,目标二进制脉冲序列0100101000000000中包括3个非零脉冲,则第一个数n为3;目标二进制脉冲序列0100101000000000中第0个非零脉冲位于第1个比特位,第1个非零脉冲位于第4个比特位,第2个非零脉冲位于第6个比特位,则pos[0]=1,pos[1]=4,pos[2]=6。
实际应用中,在一个既定的系统中,发送端和接收端之间所能传输的二进制脉冲序列的长度是由协议规定好的,换句话说,发送端和接收端之间不能随意地传输任意长度的二进制脉冲序列。因此,在步骤201中,发送端可以根据协议的规定直接获取第二个数L。
步骤202、发送端根据特征数据获取与目标二进制脉冲序列对应的目标序列号。
可选的,该目标序列号可以与目标二进制脉冲序列唯一对应。
在一种可能的实现方式中,发送端可以根据特征数据进行查表操作,通过查表操作,发送端可以获取该目标序列号。
在另一种可能的实现方式,发送端可以对特征数据进行运算,并根据运算结果得到该目标序列号。
在又一种可能的实现方式中,发送端可以结合运算以及查表操作,得到该目标序列号。
步骤203、发送端对目标序列号进行编码,得到编码数据S,并将该编码数据S以及第一个数n发送至接收端。
可选的,发送端可以对目标序列号进行熵编码,其中,在本申请实施例中,可以假定目标类型脉冲在二进制脉冲序列中的位置服从均匀分布,则二进制脉冲序列对应的序列号的分布也服从均匀分布,故而,在对目标序列号进行熵编码时所使用的概率分布函数可以为均匀分布函数。
在当前主流的SILK编码器中,需要对二进制序列脉冲中的各个脉冲以二叉树结构相加,然后估计相加和值的概率分布函数,而SILK编码器估计的概率分布函数与实际有所偏差,这种偏差的存在会影响熵编码的性能。然而,在本申请实施例提供的数据处理方法中,熵编码过程中不需要对概率分布函数进行估计,而是直接使用均匀分布函数,因此,可以避免概率分布函数的估计偏差对熵编码性能的影响。
请参考图3,在上文所述实施例的基础上,本申请实施例提供了一种步骤202的可选实现方式,如图3所示,该可选实现方式可以包括以下步骤:
步骤301、发送端根据第二个数L以及第一个数n,获取目标参考矩阵。
在本申请实施例中,技术人员可以针对不同的脉冲总个数以及不同的目标类型脉冲个数预先构建多个参考矩阵,其中,每个参考矩阵与不同的脉冲总个数以及目标类型脉冲个数对应。
以脉冲总个数为16为例,技术人员可以针对目标类型脉冲个数分别为1、2、3、4、5、6、7和8的情况分别构建参考矩阵。之所以不对目标类型脉冲个数为0和16的情况构建参考矩阵,是因为在目标类型脉冲个数为0和16的情况下,二进制脉冲序列中的脉冲要么全为零脉冲要么全为非零脉冲,因此,没有构建参考矩阵的必要,之所以不对目标类型脉冲个数为9至15的情况构建参考矩阵,是因为,目标类型脉冲个数为9至15的情况与目标类型脉冲个数为1至8的情况正好分别对应,不需要重复构建参考矩阵。
在步骤301中,发送端可以根据第二个数L以及第一个数n,从预先构建的多个参考矩阵中查询得到目标参考矩阵。
其中,目标参考矩阵的矩阵元素包括:
a(i,0)=0;
Figure GDA0003333378670000101
其中,L为目标二进制脉冲序列中脉冲的总个数,也即是第一个数,n为目标二进制脉冲序列中目标类型脉冲的个数,也即是第二个数,i为小于n的自然数,i为取值可以为0,1,……,n-1,j为小于等于L-n+1的自然数,j的取值可以为0,1,……,L-n+1,a(i,j)为目标参考矩阵中第i行第j列的元素,C为组合数计算符号。
请参考表1,表1为L=16、n=3时目标参考矩阵的示例:
表1
0 105 196 274 340 395 440 476 504 525 540 550 556 559 560
0 14 27 39 50 60 69 77 84 90 95 99 102 104 105
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
步骤302、发送端根据目标类型脉冲的位置数据pos[i],从目标参考矩阵中依次获取矩阵元素,并在每次获取到矩阵元素后根据获取到的矩阵元素计算候选序列号。
在本申请实施例中,pos[i]永远不可能小于i,例如,在上文所述的举例中,pos[1]永远不可能等于0(目标二进制脉冲序列中第1个目标类型脉冲不可能位于目标二进制脉冲序列中的第0个比特位上),pos[2]永远不可能等于1或者0(目标二进制脉冲序列中第2个目标类型脉冲不可能位于目标二进制脉冲序列中的第0个或者第1比特位上)。由于pos[i]永远不可能小于i,因此,在本申请实施例中,可以按照下述公式对位置数据pos[i]进行对齐处理,该公式为:
pos[i]′=pos[i]-i。
其中,pos[i]′为对齐处理后位置数据,pos[i]为未经过对齐处理的位置数据。
例如,目标二进制脉冲序列0100101000000000中第0个非零脉冲位于第1个比特位,第1个非零脉冲位于第4个比特位,第2个非零脉冲位于第6个比特位,因此pos[0]=1,pos[1]=4,pos[2]=6,对pos[0]、pos[1]和pos[2]分别进行对齐处理后得到的pos[0]′=1,pos[1]′=3,pos[2]′=4。
可选的,在步骤302中,发送端可以根据对齐处理后的目标类型脉冲的位置数据pos[i]′,从目标参考矩阵中依次获取矩阵元素。
可选的,对于目标二进制脉冲序列中的第k个目标类型脉冲,发送端可以从该目标参考矩阵中获取第一矩阵元素和第二矩阵元素,其中,第一矩阵元素为a(k,pos(k)),第二矩阵元素为a(k,pos(k-1)),k为大于0且小于n的正整数。
需要指出的是,第一矩阵元素中的pos(k)指的可以是经过对齐处理后的位置数据,也可以是未经过对齐处理后的位置数据,同理地,第二矩阵元素中的pos(k-1)指的可以是经过对齐处理后的位置数据,也可以是未经过对齐处理后的位置数据。本申请实施例仅以pos(k)和pos(k-1)均为经过对齐处理后的位置数据为例进行说明。
例如,目标二进制脉冲序列0100101000000000中第1个非零脉冲位于第4个比特位,则对于该第1个非零脉冲,发送端可以从该目标参考矩阵中获取第一矩阵元素a(1,pos(1)),其中,pos(1)为经过对齐处理后的位置数据,根据上述举例,其取值为3,通过查询表1,可以得到a(1,3)为39,发送端可以从该目标参考矩阵中获取第二矩阵元素a(1,pos(0)),其中,pos(0)为经过对齐处理后的位置数据,根据上述举例,其取值为1,通过查询表1,可以得到a(1,1)为14。
目标二进制脉冲序列0100101000000000中第2个非零脉冲位于第6个比特位,则对于该第2个非零脉冲,发送端可以从该目标参考矩阵中获取第一矩阵元素a(2,pos(2)),其中,pos(2)为经过对齐处理后的位置数据,根据上述举例,其取值为4,通过查询表1,可以得到a(2,4)为4,发送端可以从该目标参考矩阵中获取第二矩阵元素a(2,pos(1)),其中,pos(1)为经过对齐处理后的位置数据,根据上述举例,其取值为3,通过查询表1,可以得到a(2,3)为3。
在获取到第一矩阵元素和第二矩阵元素之后,发送端可以根据第一公式计算第k个候选序列号,该第一公式为:
idxk=idxk-1+a(k,pos(k))-a(k,pos(k-1))。
其中,idxk为第k个候选序列号,idxk-1为第k-1个候选序列号,第0个候选序列号等于a(0,pos(0)),需要指出的是,这里的pos[0]可以是经过对齐处理后的位置数据,也可以是未经过对齐处理后的位置数据。
例如,目标二进制脉冲序列0100101000000000中第1个非零脉冲位于第4个比特位,对于该第1个非零脉冲,发送端获取得到的第一矩阵元素为39,第二矩阵元素为14,且,第0个候选序列号等于a(0,pos(0)),这里的pos[0]可以是经过对齐处理后的位置数据,根据上述举例,其取值为1,通过查询表1,可以得到a(0,1)为105,也即是,第0个候选序列号可以等于105,则,根据第一公式可得第1个候选序列号为105+39-14=130。
目标二进制脉冲序列0100101000000000中第2个非零脉冲位于第6个比特位,对于该第2个非零脉冲,发送端获取得到的第一矩阵元素为4,第二矩阵元素为3,根据上文所述,第1个候选序列号等于130,则根据第一公式可得第2个候选序列号为130+4-3=131。
步骤303、发送端将最后一次计算得到的候选序列号作为目标序列号。
如上述举例,发送端最后一次计算得到的候选序列号为第2个候选序列号,其值为131,则发送端可以将131作为目标序列号。
请参考图4,其示出了本申请实施例提供的一种数据处理方法的流程图,该数据处理方法可以应用于图1所示实施例的接收端102中。如图4所示,该数据处理方法可以包括以下步骤:
步骤401、接收端接收编码数据S和第一个数n。
在上文所述的步骤203中,发送端可以将编码数据S以及第一个数n发送至接收端,与步骤203相对应地,在步骤401中,接收端可以接收发送端所发送的该编码数据S以及第一个数n。
步骤402、接收端对编码数据S进行解码,得到与目标二进制脉冲序列对应的目标序列号。
如上文步骤203所述,编码数据S是发送端对目标序列号进行编码后得到的,则在步骤402中,接收端可以针对该编码数据S执行解码操作,从而解码出该目标序列号。
可选的,接收端可以对编码数据进行熵解码,如上文所述,在本申请实施例中,可以假定目标类型脉冲在二进制脉冲序列中的位置服从均匀分布,则二进制脉冲序列对应的序列号的分布也服从均匀分布,故而,在对目标序列号进行熵编码时所使用的概率分布函数可以为均匀分布函数,那么与之对应地,在对编码数据S进行熵解码时使用的概率分布函数也可以为均匀分布函数。
步骤403、接收端根据目标序列号以及目标类型脉冲的个数n,确定目标二进制脉冲序列中每个目标类型脉冲的位置数据pos[i]。
步骤404、接收端根据每个目标类型脉冲的位置数据pos[i]得到目标二进制脉冲序列。
如上文所述,在一个既定的系统中,发送端和接收端之间所能传输的二进制脉冲序列的长度是由协议规定好的,因此,接收端可以根据协议的规定直接获取第二个数L,此外,接收端在步骤401中接收到了发送端所发送的第一个数n,同时在步骤403中,接收端获取到了目标二进制脉冲序列中每个目标类型脉冲的位置数据pos[i],接收端可以根据第二个数L、第一个数n以及每个目标类型脉冲的位置数据pos[i]得到该目标二进制脉冲序列。
请参考图5,在上文所述实施例的基础上,本申请实施例提供了一种步骤403的可选实现方式,如图5所示,该可选实现方式可以包括以下步骤:
步骤501、接收端根据第一个数n以及第二个数L,获取目标参考矩阵。
步骤501的实现方式与步骤301的实现方式同理,本申请实施例在此不再赘述。也即是,接收端可以根据第一个数n以及第二个数L,从预先构建的多个参考矩阵中查询得到目标参考矩阵,其中,每个参考矩阵与不同的脉冲总个数以及目标类型脉冲个数对应。
步骤502、对于每个目标类型脉冲,接收端根据目标序列号从目标参考矩阵中获取满足目标条件的目标矩阵元素,并根据目标矩阵元素在目标参考矩阵中的位置确定该目标类型脉冲的位置数据。
可选的,对于目标二进制脉冲序列中的第k个目标类型脉冲,接收端可以在目标参考矩阵的第k行矩阵元素中依次搜索大于第k个候选序列号的矩阵元素,并将第一次搜索到的矩阵元素作为目标矩阵元素。而后,接收端可以根据目标矩阵元素的列数确定第k个目标类型脉冲的位置数据pos[k],可选的,接收端可以将目标矩阵元素的列数减1从而得到第k个目标类型脉冲的位置数据pos[k]。
其中,该第k个候选序列号根据第二公式得到,该第二公式为:
Figure GDA0003333378670000141
其中,idxk为第k个候选序列号,idxk-1为第k-1个候选序列号,idx0为第0个候选序列号,idxm为目标序列号,jk-1为第k-1个目标类型脉冲对应的目标矩阵元素的列数,pos(k-1)为第k-1个目标类型脉冲的位置数据,k为小于n的自然数。
例如,对于第0个非零脉冲,接收端可以在目标参考矩阵的第0行矩阵元素中依次搜索大于第0个候选序列号的矩阵元素,其中,根据第二公式可知,该第0个候选序列号为目标序列号,根据上述举例,该目标序列号为131,通过查询表1可知,接收端在目标参考矩阵的第0行矩阵元素中第一次搜索到的大于131的矩阵元素为196,则该矩阵元素196即为目标矩阵元素,而后,接收端可以将目标矩阵元素196的列数2减去1,从而得到第0个非零脉冲的位置数据pos[0]=1。
对于第1个非零脉冲,接收端可以在目标参考矩阵的第1行矩阵元素中依次搜索大于第1个候选序列号的矩阵元素,其中,根据第二公式可知,该第1个候选序列号为131-a(1-1,2-1)+a(1,pos[0])=131-a(0,1)+a(1,1),通过查询表1可知,a(0,1)为105,a(1,1)为14,则该第1个候选序列号为131-105+14=40,通过查询表1可知,接收端在目标参考矩阵的第1行矩阵元素中第一次搜索到的大于40的矩阵元素为50,则该矩阵元素50即为目标矩阵元素,而后,接收端可以将目标矩阵元素50的列数4减去1,从而得到第1个非零脉冲的位置数据pos[1]=3。
对于第2个非零脉冲,接收端可以在目标参考矩阵的第2行矩阵元素中依次搜索大于第2个候选序列号的矩阵元素,其中,根据第二公式可知,该第2个候选序列号为40-a(2-1,4-1)+a(2,pos[1])=40-a(1,3)+a(2,3),通过查询表1可知,a(1,3)为39,a(2,3)为3,则该第2个候选序列号为40-39+3=4,通过查询表1可知,接收端在目标参考矩阵的第2行矩阵元素中第一次搜索到的大于4的矩阵元素为5,则该矩阵元素5即为目标矩阵元素,而后,接收端可以将目标矩阵元素5的列数5减去1,从而得到第2个非零脉冲的位置数据pos[2]=4。
如上文所述,在对目标二进制脉冲序列编码时,发送端对位置数据进行了对齐处理,在与之对应地,在步骤502中,接收端需要对解码得到的位置数据进行逆向地对齐处理,从而得到最终的位置数据。
在上述举例中,pos[0]=1、pos[1]=3以及pos[2]=4为未经过逆向对齐处理的位置数据,经过逆向对齐处理之后得到的位置数据为:pos[0]=1+0=1、pos[1]=3+1=4以及pos[2]=4+2=6。
请参考表2,其为在不同的第一个数n之下,目标二进制脉冲序列经由SILK编码器进行编码得到的编码数据的平均比特数与目标二进制脉冲序列经由本申请实施例提供的数据处理方法进行编码得到的平均比特数的对比表。
表2
Figure GDA0003333378670000151
Figure GDA0003333378670000161
通过表2可知,对于同样的第一个数n,本申请实施例提供的数据处理方法得到编码数据的比特数小于SILK编码器得到的编码数据的比特数,而且,随着n越大,本申请实施例提供的数据处理方法的优势越明显。而且,本申请实施例提供的数据处理方法得到编码数据的比特数与理论比特数非常接近。
请参考图6,其示出了本申请实施例提供的一种数据处理装置600的框图,该数据处理装置600可以配置于上文所述的发送端101中。如图6所示,该数据处理装置600可以包括:第一获取模块601、第二获取模块602、编码模块603和发送模块604。
其中,该第一获取模块601,用于获取业务数据中待编码的目标二进制脉冲序列的特征数据,其中,该特征数据包括该目标二进制脉冲序列中目标类型脉冲的个数,该目标类型脉冲为非零脉冲或者零脉冲。
该第二获取模块602,用于根据该特征数据获取与该目标二进制脉冲序列对应的目标序列号。
该编码模块603,用于对该目标序列号进行编码,得到编码数据;
该发送模块604,用于将该编码数据和该目标类型脉冲的个数发送至接收端。
在本申请的一个实施例中,该特征数据还包括该目标二进制脉冲序列中脉冲的总个数以及该目标二进制脉冲序列中每个该目标类型脉冲的位置数据,该第二获取模块602,具体用于:根据该目标二进制脉冲序列中脉冲的总个数以及该目标二进制脉冲序列中目标类型脉冲的个数,从多个参考矩阵中获取目标参考矩阵,其中,每个该参考矩阵与不同的脉冲总个数以及目标类型脉冲个数对应;根据每个该目标类型脉冲的位置数据,从该目标参考矩阵中依次获取矩阵元素,并在每次获取到矩阵元素后根据获取到的矩阵元素计算候选序列号;将最后一次计算得到的该候选序列号作为该目标序列号。
在本申请的一个实施例中,该目标参考矩阵的矩阵元素包括:
a(i,0)=0;
Figure GDA0003333378670000171
其中,L为该总个数,n为该目标类型脉冲的个数,i为小于n的自然数,j为小于等于L-n+1的自然数,a(i,j)为该目标参考矩阵中第i行第j列的元素,C为组合数计算符号。
在本申请的一个实施例中,该第二获取模块602,具体用于:对于该目标二进制脉冲序列中的第k个该目标类型脉冲,从该目标参考矩阵中获取第一矩阵元素和第二矩阵元素,并根据第一公式计算第k个该候选序列号,其中,该第一矩阵元素为a(k,pos(k)),该第二矩阵元素为a(k,pos(k-1));该第一公式为:idxk=idxk-1+a(k,pos(k))-a(k,pos(k-1));其中,pos(k)为第k个该目标类型脉冲的位置数据,pos(k-1)为第k-1个该目标类型脉冲的位置数据,idxk为第k个该候选序列号,idxk-1为第k-1个该候选序列号,k为大于0小于n的整数,第0个候选序列号等于a(0,pos(0))。
在本申请的一个实施例中,该编码模块603,具体用于:对该目标序列号进行熵编码,其中,该熵编码使用的概率分布函数为均匀分布函数。
本申请实施例提供的数据处理装置,可以实现上述方法实施例,其实现原理和技术效果类似,在此不再赘述。
关于数据处理装置的具体限定可以参见上文中对于数据处理方法的限定,在此不再赘述。上述数据处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
请参考图7,其示出了本申请实施例提供的一种数据处理装置700的框图,该数据处理装置700可以配置于上文所述的接收端102中。如图7所示,该数据处理装置700可以包括:接收模块701、解码模块702、确定模块703以及获取模块704。
其中,该接收模块701,用于接收编码数据和业务数据中待解码的目标二进制脉冲序列中目标类型脉冲的个数,该目标类型脉冲为非零脉冲或者零脉冲。
该解码模块702,用于对该编码数据进行解码,得到与该目标二进制脉冲序列对应的目标序列号。
该确定模块703,用于根据该目标序列号以及该目标类型脉冲的个数,确定该目标二进制脉冲序列中每个该目标类型脉冲的位置数据。
该获取模块704,用于根据每个该目标类型脉冲的位置数据得到该目标二进制脉冲序列。
在本申请的一个实施例中,该确定模块703,具体用于:根据该目标二进制脉冲序列中目标类型脉冲的个数以及预先设定的该目标二进制脉冲序列中脉冲的总个数,从多个参考矩阵中获取目标参考矩阵,其中,每个该参考矩阵与不同的脉冲总个数以及目标类型脉冲个数对应;对于每个该目标类型脉冲,根据该目标序列号从该目标参考矩阵中获取满足目标条件的目标矩阵元素,并根据该目标矩阵元素在该目标参考矩阵中的位置确定该目标类型脉冲的位置数据。
在本申请的一个实施例中,该目标参考矩阵的矩阵元素包括:
a(i,0)=0;
Figure GDA0003333378670000181
其中,L为该总个数,n为该目标类型脉冲的个数,i为小于n的自然数,j为小于等于L-n+1的自然数,a(i,j)为该目标参考矩阵中第i行第j列的元素,C为组合数计算符号。
在本申请的一个实施例中,该确定模块703,具体用于:对于该目标二进制脉冲序列中的第k个该目标类型脉冲,在该目标参考矩阵的第k行矩阵元素中依次搜索大于第k个候选序列号的矩阵元素,并将第一次搜索到的矩阵元素作为该目标矩阵元素,根据该目标矩阵元素的列数确定第k个该目标类型脉冲的位置数据;其中,该第k个候选序列号根据第二公式得到,该第二公式为:
Figure GDA0003333378670000182
其中,idxk为第k个候选序列号,idxk-1为第k-1个候选序列号,idx0为第0个候选序列号,idxm为目标序列号,jk-1为第k-1个目标类型脉冲对应的目标矩阵元素的列数,pos(k-1)为第k-1个目标类型脉冲的位置数据,k为小于n的自然数。
在本申请的一个实施例中,该解码模块702,具体用于:对该编码数据进行熵解码,其中,该熵解码使用的概率分布函数为均匀分布函数。
本申请实施例提供的数据处理装置,可以实现上述方法实施例,其实现原理和技术效果类似,在此不再赘述。
关于数据处理装置的具体限定可以参见上文中对于数据处理方法的限定,在此不再赘述。上述数据处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的设备通过网络连接通信。该计算机程序被处理器执行时以实现本申请实施例提供的一种数据处理方法。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的设备进行有线或无线方式的通信,无线方式可通过WIFI、运营商网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现本申请实施例提供的一种数据处理方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图8和图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在本申请的一个实施例中,提供了一种计算机设备,该计算机设备包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取业务数据中待编码的目标二进制脉冲序列的特征数据,其中,该特征数据包括该目标二进制脉冲序列中目标类型脉冲的个数,该目标类型脉冲为非零脉冲或者零脉冲;根据该特征数据获取与该目标二进制脉冲序列对应的目标序列号;对该目标序列号进行编码,得到编码数据,并将该编码数据和该目标类型脉冲的个数发送至接收端。
在本申请的一个实施例中,该特征数据还包括该目标二进制脉冲序列中脉冲的总个数以及该目标二进制脉冲序列中每个该目标类型脉冲的位置数据,处理器执行计算机程序时还实现以下步骤:根据该目标二进制脉冲序列中脉冲的总个数以及该目标二进制脉冲序列中目标类型脉冲的个数,从多个参考矩阵中获取目标参考矩阵,其中,每个该参考矩阵与不同的脉冲总个数以及目标类型脉冲个数对应;根据每个该目标类型脉冲的位置数据,从该目标参考矩阵中依次获取矩阵元素,并在每次获取到矩阵元素后根据获取到的矩阵元素计算候选序列号;将最后一次计算得到的该候选序列号作为该目标序列号。
在本申请的一个实施例中,该目标参考矩阵的矩阵元素包括:
a(i,0)=0;
Figure GDA0003333378670000201
其中,L为该总个数,n为该目标类型脉冲的个数,i为小于n的自然数,j为小于等于L-n+1的自然数,a(i,j)为该目标参考矩阵中第i行第j列的元素,C为组合数计算符号。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:对于该目标二进制脉冲序列中的第k个该目标类型脉冲,从该目标参考矩阵中获取第一矩阵元素和第二矩阵元素,并根据第一公式计算第k个该候选序列号,其中,该第一矩阵元素为a(k,pos(k)),该第二矩阵元素为a(k,pos(k-1));该第一公式为:idxk=idxk-1+a(k,pos(k))-a(k,pos(k-1));其中,pos(k)为第k个该目标类型脉冲的位置数据,pos(k-1)为第k-1个该目标类型脉冲的位置数据,idxk为第k个该候选序列号,idxk-1为第k-1个该候选序列号,k为大于0小于n的整数,第0个候选序列号等于a(0,pos(0))。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:对该目标序列号进行熵编码,其中,该熵编码使用的概率分布函数为均匀分布函数。
本申请实施例提供的计算机设备,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
在本申请的一个实施例中,提供了一种计算机设备,该计算机设备包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
接收编码数据和业务数据中待解码的目标二进制脉冲序列中目标类型脉冲的个数,该目标类型脉冲为非零脉冲或者零脉冲;对该编码数据进行解码,得到与该目标二进制脉冲序列对应的目标序列号;根据该目标序列号以及该目标类型脉冲的个数,确定该目标二进制脉冲序列中每个该目标类型脉冲的位置数据;根据每个该目标类型脉冲的位置数据得到该目标二进制脉冲序列。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:根据该目标二进制脉冲序列中目标类型脉冲的个数以及预先设定的该目标二进制脉冲序列中脉冲的总个数,从多个参考矩阵中获取目标参考矩阵,其中,每个该参考矩阵与不同的脉冲总个数以及目标类型脉冲个数对应;对于每个该目标类型脉冲,根据该目标序列号从该目标参考矩阵中获取满足目标条件的目标矩阵元素,并根据该目标矩阵元素在该目标参考矩阵中的位置确定该目标类型脉冲的位置数据。
在本申请的一个实施例中,该目标参考矩阵的矩阵元素包括:
a(i,0)=0;
Figure GDA0003333378670000221
其中,L为该总个数,n为该目标类型脉冲的个数,i为小于n的自然数,j为小于等于L-n+1的自然数,a(i,j)为该目标参考矩阵中第i行第j列的元素,C为组合数计算符号。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:对于该目标二进制脉冲序列中的第k个该目标类型脉冲,在该目标参考矩阵的第k行矩阵元素中依次搜索大于第k个候选序列号的矩阵元素,并将第一次搜索到的矩阵元素作为该目标矩阵元素,根据该目标矩阵元素的列数确定第k个该目标类型脉冲的位置数据;其中,该第k个候选序列号根据第二公式得到,该第二公式为:
Figure GDA0003333378670000222
其中,idxk为第k个候选序列号,idxk-1为第k-1个候选序列号,idx0为第0个候选序列号,idxm为目标序列号,jk-1为第k-1个目标类型脉冲对应的目标矩阵元素的列数,pos(k-1)为第k-1个目标类型脉冲的位置数据,k为小于n的自然数。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:对该编码数据进行熵解码,其中,该熵解码使用的概率分布函数为均匀分布函数。
本申请实施例提供的计算机设备,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
在本申请的一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取业务数据中待编码的目标二进制脉冲序列的特征数据,其中,该特征数据包括该目标二进制脉冲序列中目标类型脉冲的个数,该目标类型脉冲为非零脉冲或者零脉冲;根据该特征数据获取与该目标二进制脉冲序列对应的目标序列号;对该目标序列号进行编码,得到编码数据,并将该编码数据和该目标类型脉冲的个数发送至接收端。
在本申请的一个实施例中,该特征数据还包括该目标二进制脉冲序列中脉冲的总个数以及该目标二进制脉冲序列中每个该目标类型脉冲的位置数据,计算机程序被处理器执行时还实现以下步骤:根据该目标二进制脉冲序列中脉冲的总个数以及该目标二进制脉冲序列中目标类型脉冲的个数,从多个参考矩阵中获取目标参考矩阵,其中,每个该参考矩阵与不同的脉冲总个数以及目标类型脉冲个数对应;根据每个该目标类型脉冲的位置数据,从该目标参考矩阵中依次获取矩阵元素,并在每次获取到矩阵元素后根据获取到的矩阵元素计算候选序列号;将最后一次计算得到的该候选序列号作为该目标序列号。
在本申请的一个实施例中,该目标参考矩阵的矩阵元素包括:
a(i,0)=0;
Figure GDA0003333378670000231
其中,L为该总个数,n为该目标类型脉冲的个数,i为小于n的自然数,j为小于等于L-n+1的自然数,a(i,j)为该目标参考矩阵中第i行第j列的元素,C为组合数计算符号。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:对于该目标二进制脉冲序列中的第k个该目标类型脉冲,从该目标参考矩阵中获取第一矩阵元素和第二矩阵元素,并根据第一公式计算第k个该候选序列号,其中,该第一矩阵元素为a(k,pos(k)),该第二矩阵元素为a(k,pos(k-1));该第一公式为:idxk=idxk-1+a(k,pos(k))-a(k,pos(k-1));其中,pos(k)为第k个该目标类型脉冲的位置数据,pos(k-1)为第k-1个该目标类型脉冲的位置数据,idxk为第k个该候选序列号,idxk-1为第k-1个该候选序列号,k为大于0小于n的整数,第0个候选序列号等于a(0,pos(0))。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:对该目标序列号进行熵编码,其中,该熵编码使用的概率分布函数为均匀分布函数。
本实施例提供的计算机可读存储介质,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
在本申请的一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
接收编码数据和业务数据中待解码的目标二进制脉冲序列中目标类型脉冲的个数,该目标类型脉冲为非零脉冲或者零脉冲;对该编码数据进行解码,得到与该目标二进制脉冲序列对应的目标序列号;根据该目标序列号以及该目标类型脉冲的个数,确定该目标二进制脉冲序列中每个该目标类型脉冲的位置数据;根据每个该目标类型脉冲的位置数据得到该目标二进制脉冲序列。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据该目标二进制脉冲序列中目标类型脉冲的个数以及预先设定的该目标二进制脉冲序列中脉冲的总个数,从多个参考矩阵中获取目标参考矩阵,其中,每个该参考矩阵与不同的脉冲总个数以及目标类型脉冲个数对应;对于每个该目标类型脉冲,根据该目标序列号从该目标参考矩阵中获取满足目标条件的目标矩阵元素,并根据该目标矩阵元素在该目标参考矩阵中的位置确定该目标类型脉冲的位置数据。
在本申请的一个实施例中,该目标参考矩阵的矩阵元素包括:
a(i,0)=0;
Figure GDA0003333378670000241
其中,L为该总个数,n为该目标类型脉冲的个数,i为小于n的自然数,j为小于等于L-n+1的自然数,a(i,j)为该目标参考矩阵中第i行第j列的元素,C为组合数计算符号。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:对于该目标二进制脉冲序列中的第k个该目标类型脉冲,在该目标参考矩阵的第k行矩阵元素中依次搜索大于第k个候选序列号的矩阵元素,并将第一次搜索到的矩阵元素作为该目标矩阵元素,根据该目标矩阵元素的列数确定第k个该目标类型脉冲的位置数据;其中,该第k个候选序列号根据第二公式得到,该第二公式为:
Figure GDA0003333378670000242
其中,idxk为第k个候选序列号,idxk-1为第k-1个候选序列号,idx0为第0个候选序列号,idxm为目标序列号,jk-1为第k-1个目标类型脉冲对应的目标矩阵元素的列数,pos(k-1)为第k-1个目标类型脉冲的位置数据,k为小于n的自然数。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:对该编码数据进行熵解码,其中,该熵解码使用的概率分布函数为均匀分布函数。
本实施例提供的计算机可读存储介质,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (11)

1.一种数据处理方法,其特征在于,所述方法包括:
获取业务数据中待编码的目标二进制脉冲序列的特征数据,其中,所述特征数据包括所述目标二进制脉冲序列中目标类型脉冲的个数、所述目标二进制脉冲序列中脉冲的总个数以及所述目标二进制脉冲序列中每个所述目标类型脉冲的位置数据,所述目标类型脉冲为非零脉冲或者零脉冲;
根据所述目标二进制脉冲序列中脉冲的总个数以及所述目标二进制脉冲序列中目标类型脉冲的个数,从多个参考矩阵中获取目标参考矩阵,其中,每个所述参考矩阵与不同的脉冲总个数以及目标类型脉冲个数对应;
根据所述目标类型脉冲的位置数据,从所述目标参考矩阵中依次获取矩阵元素,并在每次获取到矩阵元素后根据获取到的矩阵元素计算候选序列号;
将最后一次计算得到的所述候选序列号作为所述目标序列号;
对所述目标序列号进行编码,得到编码数据,并将所述编码数据和所述目标类型脉冲的个数发送至接收端。
2.根据权利要求1所述的方法,其特征在于,所述目标参考矩阵的矩阵元素包括:
a(i,0)=0;
Figure FDA0003333378660000011
其中,L为所述总个数,n为所述目标类型脉冲的个数,i为小于n的自然数,j为小于等于L-n+1的自然数,a(i,j)为所述目标参考矩阵中第i行第j列的元素,C为组合数计算符号。
3.根据权利要求2所述的方法,其特征在于,所述根据所述目标类型脉冲的位置数据,从所述目标参考矩阵中依次获取矩阵元素,并在每次获取到矩阵元素后根据获取到的矩阵元素计算候选序列号,包括:
对于所述目标二进制脉冲序列中的第k个所述目标类型脉冲,从所述目标参考矩阵中获取第一矩阵元素和第二矩阵元素,并根据第一公式计算第k个所述候选序列号,其中,所述第一矩阵元素为a(k,pos(k)),所述第二矩阵元素为a(k,pos(k-1));
所述第一公式为:idxk=idxk-1+a(k,pos(k))-a(k,pos(k-1));
其中,pos(k)为第k个所述目标类型脉冲的位置数据,pos(k-1)为第k-1个所述目标类型脉冲的位置数据,idxk为第k个所述候选序列号,idxk-1为第k-1个所述候选序列号,k为大于0小于n的整数,第0个所述候选序列号等于a(0,pos(0))。
4.根据权利要求1所述的方法,其特征在于,所述对所述目标序列号进行编码,包括:
对所述目标序列号进行熵编码,其中,所述熵编码使用的概率分布函数为均匀分布函数。
5.一种数据处理方法,其特征在于,所述方法包括:
接收编码数据和业务数据中待解码的目标二进制脉冲序列中目标类型脉冲的个数,所述目标类型脉冲为非零脉冲或者零脉冲;
对所述编码数据进行解码,得到与所述目标二进制脉冲序列对应的目标序列号;
根据所述目标二进制脉冲序列中目标类型脉冲的个数以及预先设定的所述目标二进制脉冲序列中脉冲的总个数,从多个参考矩阵中获取目标参考矩阵,其中,每个所述参考矩阵与不同的脉冲总个数以及目标类型脉冲个数对应;
对于每个所述目标类型脉冲,根据所述目标序列号从所述目标参考矩阵中获取满足目标条件的目标矩阵元素,并根据所述目标矩阵元素在所述目标参考矩阵中的位置确定所述目标类型脉冲的位置数据;
根据每个所述目标类型脉冲的位置数据得到所述目标二进制脉冲序列。
6.根据权利要求5所述的方法,其特征在于,所述目标参考矩阵的矩阵元素包括:
a(i,0)=0;
Figure FDA0003333378660000021
其中,L为所述总个数,n为所述目标类型脉冲的个数,i为小于n的自然数,j为小于等于L-n+1的自然数,a(i,j)为所述目标参考矩阵中第i行第j列的元素,C为组合数计算符号。
7.根据权利要求6所述的方法,其特征在于,所述对于每个所述目标类型脉冲,根据所述目标序列号从所述目标参考矩阵中获取满足目标条件的目标矩阵元素,并根据所述目标矩阵元素在所述目标参考矩阵中的位置确定所述目标类型脉冲的位置数据,包括:
对于所述目标二进制脉冲序列中的第k个所述目标类型脉冲,在所述目标参考矩阵的第k行矩阵元素中依次搜索大于第k个候选序列号的矩阵元素,并将第一次搜索到的矩阵元素作为所述目标矩阵元素,根据所述目标矩阵元素的列数确定第k个所述目标类型脉冲的位置数据;
其中,所述第k个候选序列号根据第二公式得到,所述第二公式为:
Figure FDA0003333378660000031
其中,idxk为所述第k个候选序列号,idxk-1为第k-1个候选序列号,idx0为第0个候选序列号,idxm为所述目标序列号,jk-1为第k-1个所述目标类型脉冲对应的所述目标矩阵元素的列数,pos(k-1)为第k-1个所述目标类型脉冲的位置数据,k为小于n的自然数。
8.一种数据处理装置,其特征在于,所述装置包括:
第一获取模块,用于获取业务数据中待编码的目标二进制脉冲序列的特征数据,其中,所述特征数据包括所述目标二进制脉冲序列中目标类型脉冲的个数、所述目标二进制脉冲序列中脉冲的总个数以及所述目标二进制脉冲序列中每个所述目标类型脉冲的位置数据,所述目标类型脉冲为非零脉冲或者零脉冲;
第二获取模块,用于根据所述目标二进制脉冲序列中脉冲的总个数以及所述目标二进制脉冲序列中目标类型脉冲的个数,从多个参考矩阵中获取目标参考矩阵,其中,每个所述参考矩阵与不同的脉冲总个数以及目标类型脉冲个数对应;
所述第二获取模块,还用于根据所述目标类型脉冲的位置数据,从所述目标参考矩阵中依次获取矩阵元素,并在每次获取到矩阵元素后根据获取到的矩阵元素计算候选序列号;
所述第二获取模块,还用于将最后一次计算得到的所述候选序列号作为所述目标序列号;
编码模块,用于对所述目标序列号进行编码,得到编码数据;
发送模块,用于将所述编码数据和所述目标类型脉冲的个数发送至接收端。
9.一种数据处理装置,其特征在于,所述装置包括:
接收模块,用于接收编码数据和业务数据中待解码的目标二进制脉冲序列中目标类型脉冲的个数,所述目标类型脉冲为非零脉冲或者零脉冲;
解码模块,用于对所述编码数据进行解码,得到与所述目标二进制脉冲序列对应的目标序列号;
确定模块,用于根据所述目标二进制脉冲序列中目标类型脉冲的个数以及预先设定的所述目标二进制脉冲序列中脉冲的总个数,从多个参考矩阵中获取目标参考矩阵,其中,每个所述参考矩阵与不同的脉冲总个数以及目标类型脉冲个数对应;
所述确定模块,还用于对于每个所述目标类型脉冲,根据所述目标序列号从所述目标参考矩阵中获取满足目标条件的目标矩阵元素,并根据所述目标矩阵元素在所述目标参考矩阵中的位置确定所述目标类型脉冲的位置数据;
获取模块,用于根据每个所述目标类型脉冲的位置数据得到所述目标二进制脉冲序列。
10.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至7任一所述的数据处理方法。
11.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一所述的数据处理方法。
CN201911420963.6A 2019-12-31 2019-12-31 数据处理方法、装置、设备及存储介质 Active CN111131839B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911420963.6A CN111131839B (zh) 2019-12-31 2019-12-31 数据处理方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911420963.6A CN111131839B (zh) 2019-12-31 2019-12-31 数据处理方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN111131839A CN111131839A (zh) 2020-05-08
CN111131839B true CN111131839B (zh) 2022-02-25

Family

ID=70507572

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911420963.6A Active CN111131839B (zh) 2019-12-31 2019-12-31 数据处理方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN111131839B (zh)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103501201B (zh) * 2013-09-03 2016-01-06 华南理工大学 一种基于线性调频信号的跳频脉位编码水声通信方法
CN107682093A (zh) * 2017-10-25 2018-02-09 长春理工大学 一种差分多脉冲位置调制方法
US10810195B2 (en) * 2018-01-03 2020-10-20 Oracle International Corporation Distributed relational dictionaries
CN110175170B (zh) * 2019-04-19 2023-11-21 平安科技(深圳)有限公司 数据优化处理方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN111131839A (zh) 2020-05-08

Similar Documents

Publication Publication Date Title
US20190007165A1 (en) Polar code encoding method and device
WO2018028351A1 (zh) 用于极化编码的方法、装置和设备
WO2018019044A1 (zh) 编码方法和设备
CN108631942A (zh) 编码方法、译码方法、装置和设备
US10892848B2 (en) Devices and methods implementing polar codes
CN108540260B (zh) 用于确定Polar码编解码的方法、装置和可存储介质
CN108809486B (zh) Polar码编译码方法及装置
CN112449009A (zh) 一种基于svd的联邦学习推荐系统通信压缩方法及装置
FI3739780T3 (fi) Tiedonsiirron käsittelymenetelmä ja laite
WO2019024842A1 (zh) 一种Polar码编码方法及装置
KR102520788B1 (ko) 채널 상태 정보 인코딩 방법 및 장치, 저장 매체 및 프로세서
CN111131839B (zh) 数据处理方法、装置、设备及存储介质
CN113630125A (zh) 数据压缩、编码解压缩方法、装置、电子设备及存储介质
CN112995199A (zh) 数据编解码方法、装置、传输系统、终端设备及存储介质
CN107026707B (zh) 一种自适应采样率的信道编码、解码方法和装置
CN110808739A (zh) 一种信源符号概率分布未知的二元编码方法及装置
CN103746701A (zh) 一种用于Rice无损数据压缩的快速编码选项选择方法
CN115314121B (zh) 量子通信方法、装置及电子设备
US11870467B2 (en) Data compression method and apparatus, and computer readable storage medium
US20190097650A1 (en) Encoders, decoders, and methods
CN116863949A (zh) 通信接收方法及其装置
TW201806343A (zh) 資料傳輸方法與系統
CN108809498B (zh) 通信方法和通信装置
CN111105804B (zh) 语音信号处理方法、系统、装置、计算机设备和存储介质
CN108599912A (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
TA01 Transfer of patent application right

Effective date of registration: 20210114

Address after: 511400 3108, 79 Wanbo 2nd Road, Nancun Town, Panyu District, Guangzhou City, Guangdong Province

Applicant after: GUANGZHOU CUBESILI INFORMATION TECHNOLOGY Co.,Ltd.

Address before: 511400 24th floor, building B-1, North District, Wanda Commercial Plaza, Wanbo business district, No.79 Wanbo 2nd Road, Nancun Town, Panyu District, Guangzhou, Guangdong Province

Applicant before: GUANGZHOU HUADUO NETWORK TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20200508

Assignee: GUANGZHOU HUADUO NETWORK TECHNOLOGY Co.,Ltd.

Assignor: GUANGZHOU CUBESILI INFORMATION TECHNOLOGY Co.,Ltd.

Contract record no.: X2021440000054

Denomination of invention: Data processing method, device, equipment and storage medium

License type: Common License

Record date: 20210208

EE01 Entry into force of recordation of patent licensing contract
GR01 Patent grant
GR01 Patent grant