def __calculate_ab_buff(self): param_a_v, param_b = [[], [], []], [] r = self.__filter_radius w, h = self.__img_size[0], self.__img_size[1] # a and b in padding positions are simply set to 0 for i in range(r): for j in range(3): param_a_v[j].append( [0.0 for k in range(self.__padding_img_size[0])]) param_b.append([0 for k in range(self.__padding_img_size[0])]) for i in range(r, r + h): tmp_a_row_v = [[0.0 for k in range(r)], [0.0 for k in range(r)], [0.0 for k in range(r)]] tmp_b_row = [0.0 for k in range(r)] # calculate a and b here for j in range(r, r + w): tmp_ab = self.__calculate_ab_at(i, j) for k in range(3): tmp_a_row_v[k].append(tmp_ab[0][k]) # get a tmp_b_row.append(tmp_ab[1]) # get b for j in range(3): tmp_a_row_v[j] += [0.0 for z in range(r)] param_a_v[j].append(tmp_a_row_v[j]) tmp_b_row += [0.0 for k in range(r)] param_b.append(tmp_b_row) for i in range(r + h, self.__padding_img_size[1]): for j in range(3): param_a_v[j].append( [0.0 for k in range(self.__padding_img_size[0])]) param_b.append([0 for k in range(self.__padding_img_size[0])]) for i in range(3): self.__a_v_buff[i] = util.calculate_box(param_a_v[i]) self.__b_buff = util.calculate_box(param_b)
def __calculate_box_buff(self): self.__p_buff = util.calculate_box(self.p) for i in range(3): self.__guide_v_buff[i] = util.calculate_box(self.guide_v[i]) self.__pg_v_buff[i] = util.calculate_box(util.array_multiply(self.p, self.guide_v[i])) self.__guide2_v_buff[i] = util.calculate_box(util.array_multiply(self.guide_v[i], self.guide_v[i])) self.__guide_mix_v_buff[0] = util.calculate_box(util.array_multiply(self.guide_v[0], self.guide_v[1])) self.__guide_mix_v_buff[1] = util.calculate_box(util.array_multiply(self.guide_v[0], self.guide_v[2])) self.__guide_mix_v_buff[2] = util.calculate_box(util.array_multiply(self.guide_v[1], self.guide_v[2])) self.__p2_buff = util.calculate_box(util.array_multiply(self.p, self.p)) self.__calculate_ab_buff()
def __calculate_ab_buff(self): param_a, param_b = [], [] r = self.__filter_radius w, h = self.__img_size[0], self.__img_size[1] # a and b in padding positions are simply set to 0 for i in range(r): param_a.append([0 for k in range(self.__padding_img_size[0])]) param_b.append([0 for k in range(self.__padding_img_size[0])]) for i in range(r, r + h): tmp_a_row, tmp_b_row = [0.0 for k in range(r)], [0.0 for k in range(r)] # calculate a and b here for j in range(r, r + w): tmp_ab = self.__calculate_ab_at(i, j) tmp_a_row.append(tmp_ab[0]) # get a tmp_b_row.append(tmp_ab[1]) # get b tmp_a_row += [0.0 for k in range(r)] tmp_b_row += [0.0 for k in range(r)] param_a.append(tmp_a_row) param_b.append(tmp_b_row) for i in range(r + h, self.__padding_img_size[1]): param_a.append([0 for k in range(self.__padding_img_size[0])]) param_b.append([0 for k in range(self.__padding_img_size[0])]) self.__a_buff = util.calculate_box(param_a) self.__b_buff = util.calculate_box(param_b)
def __calculate_box_buff(self): self.__p_buff = util.calculate_box(self.p) self.__guide_buff = util.calculate_box(self.guide) self.__pg_buff = util.calculate_box(util.array_multiply(self.p, self.guide)) self.__p2_buff = util.calculate_box(util.array_multiply(self.p, self.p)) self.__calculate_ab_buff()