def __init__(self, fontPath, dictPath, scales, degrees, templatePath=""): self.fontList = [ osj(fontPath, font) for font in IOUtils.GetFilesList(fontPath) ] self.scales = scales self.degrees = degrees self.charDict = IOUtils.LoadDict(dictPath) self.parms = self.GenParms() self.hasTemplate = False if len(templatePath) != 0: self.hasTemplate = True self.templates = IOUtils.LoadTemplate(templatePath)
def ComputeMeanStds(self): meanStds = [] imagesList = IOUtils.GetFilesList(self.pathToTemplateImages) logging.info("Done. Load all template images: "+str(len(imagesList))) count = 0 for imageName in imagesList: count += 1; if count % 10 == 0: logging.info("Processing. Compute mean & std: "+str(count)) img = cv2.imread(osj(self.pathToTemplateImages,imageName)) meanPre, stdPre, meanBack, stdBack = self.ComputeMeanStd(img) if(np.abs(meanPre-meanBack)<30): logging.warning("Processing. The values of background and foreground are close: %f", np.abs(meanPre-meanBack)) tempmeanStd = [meanPre, stdPre, meanBack, stdBack] meanStds.append(tempmeanStd) return meanStds