def __init__(self, filepath, qually, mode='444'): ''' ''' imOrig = cv2.imread(filepath,1) self.filepath = filepath self.mode = mode #Taxa de compressão e Redundancia self.CRate = 0; self.Redunc = 0 self.avgBits = 0 #Qualidade self.qually = qually #Dimensões da imagem original self.Mo, self.No, self.Do = imOrig.shape self.r, self.c = [8, 8] #DIMENSAO DOS BLOCOS #TRATA AS DIMENSOES DA IMAGEM (self.M, self.N, self.D), self.img = h.adjImg(imOrig) #NUMERO DE BLOCOS NA VERTICAL E HORIZONTAL self.nBlkRows = int(np.floor(self.M/self.r)) self.nBlkCols = int(np.floor(self.N/self.c)) #Gera Tabela de Qunatizaçao self.Z = h.genQntb(self.qually) #TRANSFORMA DE RGB PARA YCbCr self.Ymg = cv2.cvtColor(self.img, cv2.COLOR_BGR2YCR_CB) self.NumBits = 0 if self.Do == 2: self.NCHNL = 1 elif self.Do == 3: self.NCHNL = 3 # self.OUTCOMES = self._run_() self._run_()
def __init__(self, filename): ''' ''' self.fl = open(filename,'r') header = self.fl.readline().split(',') #Lê cabeçalho self.Mo, self.No, self.Do, self.qually, self.mode = int(header[0]), int(header[1]), int(header[2]), int(header[3]), header[4][:-1] self.SHAPE = (self.Mo, self.No, self.Do) (self.M, self.N, self.D), self.imRaw = h.adjImg( np.zeros(self.SHAPE) ) #NUMERO DE BLOCOS NA VERTICAL E HORIZONTAL self.R, self.C = [8,8] #NUMERO DE BLOCOS NA VERTICAL E HORIZONTAL self.nBlkRows = int(np.floor(self.M/self.R)) self.nBlkCols = int(np.floor(self.N/self.C)) #Gera Tabela de Qunatizaçao self.Z = h.genQntb(self.qually) if self.Do == 2: self.NCHNL = 1 elif self.Do == 3: self.NCHNL = 3