MCPcopy Create free account
hub / github.com/drinkingcoder/FlowFormer-Official / PCAAug

Class PCAAug

core/utils/flow_transforms.py:250–398  ·  view source on GitHub ↗

Chromatic Eigen Augmentation: https://github.com/lmb-freiburg/flownet2/blob/master/src/caffe/layers/data_augmentation_layer.cu

Source from the content-addressed store, hash-verified

248
249
250class PCAAug(object):
251 """
252 Chromatic Eigen Augmentation: https://github.com/lmb-freiburg/flownet2/blob/master/src/caffe/layers/data_augmentation_layer.cu
253 """
254 def __init__(self, lmult_pow =[0.4, 0,-0.2],
255 lmult_mult =[0.4, 0,0, ],
256 lmult_add =[0.03,0,0, ],
257 sat_pow =[0.4, 0,0, ],
258 sat_mult =[0.5, 0,-0.3],
259 sat_add =[0.03,0,0, ],
260 col_pow =[0.4, 0,0, ],
261 col_mult =[0.2, 0,0, ],
262 col_add =[0.02,0,0, ],
263 ladd_pow =[0.4, 0,0, ],
264 ladd_mult =[0.4, 0,0, ],
265 ladd_add =[0.04,0,0, ],
266 col_rotate =[1., 0,0, ],
267 schedule_coeff=1):
268 # no mean
269 self.pow_nomean = [1,1,1]
270 self.add_nomean = [0,0,0]
271 self.mult_nomean = [1,1,1]
272 self.pow_withmean = [1,1,1]
273 self.add_withmean = [0,0,0]
274 self.mult_withmean = [1,1,1]
275 self.lmult_pow = 1
276 self.lmult_mult = 1
277 self.lmult_add = 0
278 self.col_angle = 0
279 if not ladd_pow is None:
280 self.pow_nomean[0] =np.exp(np.random.normal(ladd_pow[2], ladd_pow[0]))
281 if not col_pow is None:
282 self.pow_nomean[1] =np.exp(np.random.normal(col_pow[2], col_pow[0]))
283 self.pow_nomean[2] =np.exp(np.random.normal(col_pow[2], col_pow[0]))
284
285 if not ladd_add is None:
286 self.add_nomean[0] =np.random.normal(ladd_add[2], ladd_add[0])
287 if not col_add is None:
288 self.add_nomean[1] =np.random.normal(col_add[2], col_add[0])
289 self.add_nomean[2] =np.random.normal(col_add[2], col_add[0])
290
291 if not ladd_mult is None:
292 self.mult_nomean[0] =np.exp(np.random.normal(ladd_mult[2], ladd_mult[0]))
293 if not col_mult is None:
294 self.mult_nomean[1] =np.exp(np.random.normal(col_mult[2], col_mult[0]))
295 self.mult_nomean[2] =np.exp(np.random.normal(col_mult[2], col_mult[0]))
296
297 # with mean
298 if not sat_pow is None:
299 self.pow_withmean[1] =np.exp(np.random.uniform(sat_pow[2]-sat_pow[0], sat_pow[2]+sat_pow[0]))
300 self.pow_withmean[2] =self.pow_withmean[1]
301 if not sat_add is None:
302 self.add_withmean[1] =np.random.uniform(sat_add[2]-sat_add[0], sat_add[2]+sat_add[0])
303 self.add_withmean[2] =self.add_withmean[1]
304 if not sat_mult is None:
305 self.mult_withmean[1] = np.exp(np.random.uniform(sat_mult[2]-sat_mult[0], sat_mult[2]+sat_mult[0]))
306 self.mult_withmean[2] = self.mult_withmean[1]
307

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected