Esempio n. 1
0
 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)
Esempio n. 2
0
 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()
Esempio n. 3
0
 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)
Esempio n. 4
0
 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()