Mercurial > hg > segmentation
changeset 5:237799544386
catch 0 detection (when features are empty)
author | mitian |
---|---|
date | Thu, 09 Apr 2015 17:54:49 +0100 |
parents | 56a2ca9359d0 |
children | 719b4ff8e9c9 |
files | SegEval.py annotation/qupujicheng_annotation_30/10hongniang01.csv annotation/qupujicheng_annotation_30/10hongniang02.csv annotation/qupujicheng_annotation_30/10hongniang04.csv annotation/qupujicheng_annotation_30/9tiannusanhua01.csv annotation/qupujicheng_annotation_30/9tiannusanhua02.csv |
diffstat | 6 files changed, 81 insertions(+), 157 deletions(-) [+] |
line wrap: on
line diff
--- a/SegEval.py Wed Apr 08 11:47:47 2015 +0100 +++ b/SegEval.py Thu Apr 09 17:54:49 2015 +0100 @@ -139,19 +139,26 @@ def pairwiseF(self, annotation, detection, tolerance=3.0, combine=1.0, idx2time=None): '''Pairwise F measure evaluation of detection rates.''' + res = EvalObj() + res.TP, res.FP, res.FN = 0, 0, 0 + res.P, res.R, res.F = 0.0, 0.0, 0.0 + res.AD, res.DA = 0.0, 0.0 + + if len(detection) == 0: + return res + + gt = len(annotation) # Total number of ground truth data points + dt = len(detection) # Total number of experimental data points + foundIdx = [] + D_AD = np.zeros(gt) + D_DA = np.zeros(dt) + if idx2time != None: # Map detected idxs to real time detection = [idx2time[int(np.rint(i))] for i in detection] + [annotation[-1]] # print 'detection', detection detection = np.append(detection, annotation[-1]) - res = EvalObj() - res.TP = 0 # Total number of matched ground truth and experimental data points - gt = len(annotation) # Total number of ground truth data points - dt = len(detection) # Total number of experimental data points - foundIdx = [] - D_AD = np.zeros(gt) - D_DA = np.zeros(dt) - + for dtIdx in xrange(dt): D_DA[dtIdx] = np.min(abs(detection[dtIdx] - annotation)) for gtIdx in xrange(gt): @@ -168,7 +175,6 @@ res.AD = np.mean(D_AD) res.DA = np.mean(D_DA) - res.P, res.R, res.F = 0.0, 0.0, 0.0 if res.TP == 0: return res @@ -293,12 +299,12 @@ for audio in audio_files: ao = AudioObj() ao.name = splitext(audio)[0] - # annotation_file = join(options.GT, ao.name+'.txt') # iso, salami - # ao.gt = np.genfromtxt(annotation_file, usecols=0) - # ao.label = np.genfromtxt(annotation_file, usecols=1, dtype=str) - annotation_file = join(options.GT, ao.name+'.csv') # qupujicheng - ao.gt = np.genfromtxt(annotation_file, usecols=0, delimiter=',') - ao.label = np.genfromtxt(annotation_file, usecols=1, delimiter=',', dtype=str) + annotation_file = join(options.GT, ao.name+'.txt') # iso, salami + ao.gt = np.genfromtxt(annotation_file, usecols=0) + ao.label = np.genfromtxt(annotation_file, usecols=1, dtype=str) + # annotation_file = join(options.GT, ao.name+'.csv') # qupujicheng + # ao.gt = np.genfromtxt(annotation_file, usecols=0, delimiter=',') + # ao.label = np.genfromtxt(annotation_file, usecols=1, delimiter=',', dtype=str) gammatone_featureset, timbre_featureset, tempo_featureset, harmonic_featureset = [], [], [], [] for feature in gammatone_feature_list: @@ -472,10 +478,10 @@ timbre_foote_05 = self.pairwiseF(ao.gt, timbre_foote_idxs, tolerance=0.5, combine=1.0, idx2time=ao.ssm_timestamps) timbre_foote_3 = self.pairwiseF(ao.gt, timbre_foote_idxs, tolerance=3, combine=1.0, idx2time=ao.ssm_timestamps) - self.writeIndividualRes(outfile1, ao.name, gt_novelty_05, gt_novelty_3, harmonic_novelty_05, harmonic_novelty_3, tempo_novelty_05, timbre_novelty_05, timbre_novelty_05, timbre_novelty_3) - self.writeIndividualRes(outfile2, ao.name, gt_cnmf_05, gt_cnmf_3, harmonic_cnmf_05, harmonic_cnmf_3, tempo_cnmf_05, timbre_cnmf_05, timbre_cnmf_05, timbre_cnmf_3) - self.writeIndividualRes(outfile3, ao.name, gt_sf_05, gt_sf_3, harmonic_sf_05, harmonic_sf_3, tempo_sf_05, timbre_sf_05, timbre_sf_05, timbre_sf_3) - self.writeIndividualRes(outfile4, ao.name, gt_foote_05, gt_foote_3, harmonic_foote_05, harmonic_foote_3, tempo_foote_05, timbre_foote_05, timbre_foote_05, timbre_foote_3) + self.writeIndividualRes(outfile1, ao.name, gt_novelty_05, gt_novelty_3, harmonic_novelty_05, harmonic_novelty_3, tempo_novelty_05, tempo_novelty_3, timbre_novelty_05, timbre_novelty_3) + self.writeIndividualRes(outfile2, ao.name, gt_cnmf_05, gt_cnmf_3, harmonic_cnmf_05, harmonic_cnmf_3, tempo_cnmf_05, tempo_cnmf_3, timbre_cnmf_05, timbre_cnmf_3) + self.writeIndividualRes(outfile3, ao.name, gt_sf_05, gt_sf_3, harmonic_sf_05, harmonic_sf_3, tempo_sf_05, tempo_sf_3, timbre_sf_05, timbre_sf_3) + self.writeIndividualRes(outfile4, ao.name, gt_foote_05, gt_foote_3, harmonic_foote_05, harmonic_foote_3, tempo_foote_05, tempo_foote_3, timbre_foote_05, timbre_foote_3) ############################################################################################################################################
--- a/annotation/qupujicheng_annotation_30/10hongniang01.csv Wed Apr 08 11:47:47 2015 +0100 +++ b/annotation/qupujicheng_annotation_30/10hongniang01.csv Thu Apr 09 17:54:49 2015 +0100 @@ -1,32 +1,34 @@ 0.000000000,sp 10.332879818,p 19.257142857,a -30.673560090,New Point -41.006439909,New Point -43.676734693,New Point -49.110204081,New Point -54.137324263,New Point +32.538775510,New Point +50.710204081,New Point 56.261224489,New Point -58.465306122,New Point -64.737233560,s 65.763265306,New Point 70.141678004,New Point 73.119637188,a -76.498140589,New Point 87.098049886,sp +93.697959183,New Point 95.851972789,New Point 100.850068027,New Point +104.024489795,New Point +107.836734693,New Point 110.155464852,sp 113.795192743,New Point 116.622222222,New Point +120.465306122,New Point 124.418321995,New Point +129.975510204,New Point 135.976054421,New Point 140.294965986,s 151.864308390,New Point 153.948299319,sp +158.097959183,New Point +171.363265306,New Point +176.669387755,New Point 179.844353741,New Point 189.741859410,New Point -196.301496598,p+sp +198.693877551,New Point 200.620408163,sp 205.879727891,New Point 214.250521541,New Point @@ -39,6 +41,5 @@ 262.987755102,New Point 267.279092970,New Point 272.764807256,New Point -277.716462585,New Point 282.702947845,New Point 287.091519274,end
--- a/annotation/qupujicheng_annotation_30/10hongniang02.csv Wed Apr 08 11:47:47 2015 +0100 +++ b/annotation/qupujicheng_annotation_30/10hongniang02.csv Thu Apr 09 17:54:49 2015 +0100 @@ -1,24 +1,16 @@ 0.000000000,s -2.066575963,New Point 11.540317460,a -17.414965986,New Point 19.493151927,New Point -24.288072562,New Point 25.356190476,New Point 35.758730158,s 38.995918367,New Point 46.393469387,a -49.763265306,New Point -54.808163265,New Point 56.783673469,New Point 63.181496598,s 68.220226757,a 71.873469387,New Point 74.889795918,New Point 79.995918367,New Point -82.257142857,New Point -85.054693877,s -87.492789115,New Point 91.445986394,New Point 94.923174603,a 100.391473922,New Point @@ -26,25 +18,18 @@ 110.161269841,New Point 117.730975056,New Point 123.495328798,New Point -127.738775510,New Point -133.474104308,New Point +129.822766439,New Point 135.116916099,New Point 140.312380952,New Point -141.316643990,s 144.486167800,New Point 155.480816326,a -166.022675736,New Point -170.138412698,New Point -175.008798185,New Point -180.390022675,New Point -183.913650793,New Point -189.498049886,New Point +168.437551020,New Point +175.473197278,New Point +184.598639455,New Point 191.750385487,New Point -196.167981859,New Point +197.110204081,New Point 199.993469387,New Point -203.772517006,New Point 206.228027210,New Point -211.098412698,New Point 211.858866213,sp 217.907664399,New Point 223.108934240,New Point @@ -59,7 +44,5 @@ 279.051609977,New Point 284.154195011,New Point 286.795464852,New Point -293.128707482,New Point -296.576870748,New Point 299.920544217,New Point 304.274285714,end
--- a/annotation/qupujicheng_annotation_30/10hongniang04.csv Wed Apr 08 11:47:47 2015 +0100 +++ b/annotation/qupujicheng_annotation_30/10hongniang04.csv Thu Apr 09 17:54:49 2015 +0100 @@ -1,21 +1,13 @@ 0.065306122,p 3.784852607,New Point -5.697959183,New Point -7.559183673,New Point 8.685714285,s 13.126530612,New Point -17.583673469,New Point -25.077551020,New Point 27.248979591,New Point -33.844897959,New Point -40.734693877,New Point 44.179591836,a 48.628571428,New Point -52.077551020,New Point -54.746938775,New Point 58.530612244,p 61.091700680,s -65.014331065,a +66.000000000,New Point 71.569705215,New Point 79.742857142,New Point 84.963356009,sp @@ -32,93 +24,76 @@ 159.232653061,New Point 168.375510204,New Point 174.285714285,New Point +193.469387755,New Point 202.895963718,New Point 206.065487528,New Point 211.417687074,New Point 214.436281179,New Point -222.180136054,New Point +219.232653061,New Point 224.653061224,New Point +235.575510204,New Point 241.230566893,a 243.575510204,New Point -246.294058956,New Point 250.763900226,New Point 255.983673469,New Point 261.352199546,New Point -264.492698412,New Point 268.056961451,New Point -270.547301587,New Point -276.700589569,New Point -279.962993197,New Point +277.648979591,New Point 287.120544217,New Point -291.853061224,New Point 293.110204081,New Point 299.119455782,p+s -301.510204081,New Point 302.521179138,New Point -313.887346938,New Point -325.450884353,sp +315.183673469,New Point 327.424580498,New Point 331.371972789,New Point 340.776054421,New Point -351.968072562,New Point -425.865578231,New Point -425.865578231,New Point +345.616326530,New Point +350.775510204,New Point +369.387755102,New Point +377.355102040,New Point +392.865306122,New Point +400.277551020,New Point +404.310204081,New Point +411.281632653,New Point +416.244897959,New Point +421.828571428,New Point +425.993287981,New Point 430.230929705,sp +443.686893424,New Point +461.844897959,New Point +464.783673469,New Point 482.510657596,New Point 486.922448979,New Point 494.445714285,New Point 499.972063492,New Point 502.712018140,s -506.089795918,New Point -509.631564625,New Point -516.760090702,New Point -522.054240362,New Point -525.873922902,New Point +509.608344671,New Point +516.800000000,New Point +522.042630385,New Point 527.510929705,a -533.281632653,New Point 539.077551020,New Point -545.771428571,New Point 548.220408163,New Point -554.938775510,New Point +551.439092970,New Point 563.629569160,New Point 573.300680272,New Point -577.712471655,a -584.005079365,New Point -586.814693877,New Point -590.216417233,New Point +579.895147392,New Point 592.991201814,New Point 600.793106575,New Point +609.442539682,New Point 613.645351473,New Point -616.187936507,New Point 627.612154195,New Point -631.362176870,New Point -636.017777777,New Point 638.653242630,New Point -640.661224489,New Point -643.215963718,New Point +643.332063492,New Point 647.189795918,s -652.228571428,New Point -653.635918367,New Point 656.242358276,a -657.327891156,New Point -661.338775510,New Point 664.848979591,New Point -671.363265306,New Point 679.330612244,New Point -682.253061224,New Point 688.400000000,New Point -692.488707482,New Point -696.470929705,New Point +695.066122448,New Point 699.895873015,New Point 703.901315192,New Point -706.008163265,New Point 711.934693877,New Point -714.965623582,New Point -718.669387755,New Point 726.604081632,New Point 733.089795918,New Point -737.047800453,New Point -742.736689342,New Point -747.477551020,New Point 754.602086167,New Point 758.944217687,end
--- a/annotation/qupujicheng_annotation_30/9tiannusanhua01.csv Wed Apr 08 11:47:47 2015 +0100 +++ b/annotation/qupujicheng_annotation_30/9tiannusanhua01.csv Thu Apr 09 17:54:49 2015 +0100 @@ -1,76 +1,44 @@ 0.000000000,p -2.554195011,New Point 4.063492063,New Point 10.634739229,s 15.336780045,New Point -19.887891156,New Point -22.767165532,New Point 28.563265306,New Point -33.608163265,New Point 36.114285714,a -48.636734693,New Point 50.653061224,New Point -54.440816326,New Point -56.840816326,New Point -58.840816326,New Point -61.204081632,New Point 62.693877551,s 64.179591836,New Point 67.941587301,a -73.455555555,a 75.789931972,New Point -81.246621315,New Point -86.540770975,New Point 89.350385487,New Point -95.779591836,New Point -103.046938775,p 104.698775510,New Point -107.369070294,New Point -108.936417233,New Point -110.863673469,New Point 126.595192743,New Point 131.506213151,New Point 135.836734693,s 157.338412698,New Point 165.372517006,a -170.945306122,New Point 176.471655328,New Point -181.998004535,New Point -187.292154195,New Point -193.747301587,New Point -202.640544217,New Point +194.400000000,New Point 205.740408163,New Point -211.167346938,s -216.386757369,New Point +211.412244897,New Point 221.518367346,a -229.633741496,New Point 231.688707482,New Point -239.420952380,New Point 242.288616780,New Point -249.951201814,New Point -254.537142857,New Point +260.179591836,New Point 268.963265306,s 272.370068027,New Point 279.405714285,New Point -296.193741496,New Point -308.941496598,New Point -311.869387755,a -317.300680272,New Point +312.767346938,New Point 322.803809523,New Point 330.628571428,s 335.804081632,a -344.618956916,New Point 346.255963718,New Point -348.531519274,New Point 360.555102040,s -370.636916099,New Point +387.330612244,New Point 399.011700680,New Point 409.779591836,a -414.011791383,New Point 419.445260770,New Point -433.446893424,New Point 435.493877551,a -449.844897959,s+p +451.837097505,New Point 455.428571428,New Point 463.738775510,New Point 469.861224489,end
--- a/annotation/qupujicheng_annotation_30/9tiannusanhua02.csv Wed Apr 08 11:47:47 2015 +0100 +++ b/annotation/qupujicheng_annotation_30/9tiannusanhua02.csv Thu Apr 09 17:54:49 2015 +0100 @@ -1,42 +1,33 @@ 0.000000000,p -2.774784580,New Point +4.527891156,New Point 25.567346938,s -29.930521541,New Point +29.907301587,New Point 35.131791383,a 41.888798185,New Point 47.925986394,New Point 53.847074829,New Point 60.093242630,New Point 65.921451247,New Point +71.853061224,New Point 77.767346938,s+p 80.201723356,New Point 82.012879818,a -90.720362811,New Point 93.112018140,New Point -99.427845804,New Point -104.097959183,New Point 110.971428571,New Point -117.353650793,p -120.016326530,New Point +118.987755102,New Point 127.689795918,New Point -138.742857142,New Point +140.522448979,New Point 145.108934240,s 154.737777777,a -160.293877551,New Point -165.175510204,New Point 168.066031746,a -171.624489795,New Point -174.481632653,New Point 179.469387755,s 183.934693877,a 192.522448979,New Point -195.200000000,a +195.314285714,New Point 202.873469387,New Point 206.171428571,New Point -212.073469387,a 213.959183673,New Point 216.636734693,New Point 227.265306122,p -233.289795918,New Point 241.240816326,New Point 248.293877551,end