微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

谐波敲击分离的相似矩阵

如何解决谐波敲击分离的相似矩阵

我想为时间序列信号中的谐波和敲击元素制作一个相似度矩阵。该矩阵用于标识重复元素。我在我的信号上使用 STFT,然后通过获取 abs 值找到幅度谱 (V)。相似度矩阵由 V 的矩阵乘法和转置 V 构成。当我这样做时,维度不匹配。最终产品应该是一个类似国际象棋的相似矩阵,带有彩色阴影方块作为我的 STFT 中相应元素之间相似性的度量。如何制作具有与 STFT 匹配的维度的相似性矩阵? 谢谢。

信号是作为矢量的音频文件,因此您可以自己运行。

clear all; close all;

sig=[0.000172632912430720;0.617881789803505;0.0860126018524170;-0.105702796019614;0.0972765861079097;0.225698672235012;-0.136091217398644;0.0439671655185521;0.234609842300415;-0.182392808608711;-0.0109390905126929;0.196271929889917;-0.213016842491925;-0.000707965344190598;0.184395656920970;-0.257187498733401;-0.0540986955165863;0.163929571397603;-0.232828861102462;-0.0867920722812414;0.142415414098650;-0.402033044665586;-0.107446117923246;0.103385185298976;0.307485913042910;-0.119384602876380;0.0788380440499168;0.287243154802127;-0.168218351704127;0.0519803879615210;0.259576053127603;-0.202838315672125;0.0135790962376632;0.226095884281676;-0.196921937895240;-0.0154515893518692;0.195169935788726;-0.286725205281982;-0.0346261057002266;0.169265660864767;-0.233087153654196;-0.0748047502638656;0.138531572069041;-0.431823407241609;-0.112376269113156;0.283053733408451;0.427872389554977;0.0722545906901360;0.0812238138169050;0.357233799993992;-0.147939129732549;0.104219384491444;0.264004406519234;-0.210657524727139;-0.0104879532009363;0.274469055235386;-0.171520242467523;-0.0819984041154385;0.174371162429452;-0.275187874212861;-0.0458211144432426;0.166619600828199;-0.235156441107392;-0.0727996046189219;0.133460260462016;-0.451705735700671;-0.115607771091163;0.102171378064668;0.311365569999907;-0.126704567810521;0.0726536657972277;0.284498845343478;-0.157619561941829;0.0507471187156625;0.256081394472858;-0.214468625898007;0.0149150117067620;0.226538838003762;-0.204746735777007;-0.0216705046186689;0.192713218217250;-0.266551783250179;-0.0409628507768502;0.163964933773968;-0.271119693992659;-0.0692881366849178;0.137815916474210;-0.459041132795392;-0.116138024155589;-0.00202866643667221;0.743455499410629;-0.0381905362010002;0.0253902226686478;0.167868278920650;-0.112293735146523;0.106954902410507;0.280552111566067;-0.241262365132570;0.0200783386826515;0.207922812551260;-0.207970269955695;-0.0750641934573650;0.185407415498048;-0.269708804786205;-0.0435074057895690;0.168524604756385;-0.306809216737747;-0.0715196738019586;0.138542026048526;-0.452285379666137;-0.114697047989466;0.103998934791889;0.310505320434459;-0.141518962176633;0.0678907583351247;0.280934844711737;-0.150657214922830;0.0438195396272931;0.252274212427437;-0.212287013710011;0.0171017827087780;0.223899192991667;-0.227671486791223;-0.0234777604928240;0.191345335944789;-0.238613911918947;-0.0510586857562885;0.158889811325935;-0.320318245561793;-0.0682388162676944;0.134368810453452;-0.431048123224173;-0.112184981291648;0.231992714107037;0.214743971824646;0.0287589579820633;0.0353729799389839;0.0745287090539932;0.00783614814281464;0.0976103432476521;0.287389207631350;-0.257240083068609;0.0270334873348475;0.240629229694605;-0.239291273173876;-0.0198695870349184;0.220658177509904;-0.212501536123455;-0.0539374874206260;0.158310569415335;-0.341493974032346;-0.0694245725171641;0.138740736991167;-0.396154486690648;-0.108408711268567;0.103598154571955;0.310759548796341;-0.152737682044972;0.0679067238233984;0.278684707009234;-0.157150394865312;0.0365426212374587;0.247800817465759;-0.198118085289025;0.0154654063595474;0.220516459783539;-0.251520165642432;-0.0196707831346430;0.191145737266197;-0.221689411846455;-0.0587254653801210;0.156489157539909;-0.354910862297402;-0.0757652992033400;0.128416782143177;-0.349620315420907;-0.104971148713958;0.283346347510815;0.228282757103443;0.0916838496923447;0.131531290709972;0.219524674117565;-0.206832706928253;0.0924596637487412;0.302114866673946;-0.285081788897514;0.0548587990924716;0.135256849229336;-0.328231804072857;-0.0311689749360085;0.174057699739933;-0.230347363278270;-0.0511384429410100;0.155614587565651;-0.360499068367062;-0.0894592544063926;0.126596485497430;-0.292650966031943;-0.102839553204831;0.100902712321840;0.307589569623815;-0.154187525098678;0.0687738747510593;0.278339391457848;-0.173821503703948;0.0320246734190732;0.245022656337824;-0.185176437371410;0.00900809379527345;0.216600085463142;-0.261477998687042;-0.0166005493229022;0.189506555616390;-0.229202798363986;-0.0600065020262264;0.156214242699207;-0.355142824875657;-0.0867679978837259;0.123693930392619;-0.229148323123809;-0.102414153225254];


window=hann(100,'periodic');
overlap=floor(numel(window)/2);
nfft=2^nextpow2(numel(window)+1);
X=stft(sig,'Window',window,'OverlapLength',overlap,'FFTLength',nfft); 

V=abs(X); 

Vnorm=vecnorm(V);           % norm of each column
Vnormalize=V./Vnorm;

S=Vnormalize*Vnormalize'; 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?