def GetAnnotDetails(self, annotUrl, totalFrames): details = [] if annotUrl == '': return details # Get locally the physical file annotationName = annotUrl[annotUrl.rfind('/') + 1:] for dirpath, _, filenames in os.walk(self.directory): if annotationName in filenames: myAnnot = Annotation(os.path.join(dirpath, annotationName), totalFrames) classes = myAnnot.GetClassesObjects() nmbAnnotedFrames, minFrame, maxFrame, minObj, maxObj = myAnnot.GetNumberOfAnnotatedFrames( ) details.append(dirpath) details.append(annotationName) details.append( '%s (%.2f%%)' % (nmbAnnotedFrames, 100 * nmbAnnotedFrames / totalFrames)) #annotated frames and its percentage details.append(len(classes)) #number of classes strClasses = '' for a in classes: strClasses = '%s, %s' % (strClasses, a) strClasses = strClasses[2:] details.append(strClasses) #classes details.append('frame %s' % minFrame) #first annotation details.append('frame %s' % maxFrame) #last annotation # details.append('(x,y,r,b)=%s / Area: %s / Frame: %s'%(str(minObj[2]),minObj[0],minObj[1])) #min obj (area,frame,x,y,r,b) # details.append('(x,y,r,b)=%s / Area: %s / Frame: %s'%(str(maxObj[2]),maxObj[0],maxObj[1])) #max obj (area,frame,x,y,r,b) details.append( 'Area: %s / Frame: %s' % (minObj[0], minObj[1])) #min obj (area,frame,x,y,r,b) details.append( 'Area: %s / Frame: %s' % (maxObj[0], maxObj[1])) #max obj (area,frame,x,y,r,b) return details