Esempio n. 1
0
def newOpt(f, ramType):
  opt = Option()
  opt.modelCached = lambda x: (f(x),)
  opt.ramCoef = ramCoef[config.getRunType() * 2 + ramType]
  opt.align = 32
  opt.padding = 45
  opt.squeeze = identity
  opt.unsqueeze = identity
  return opt
Esempio n. 2
0
def newOpt(func, ramCoef, align=32, padding=45, scale=1, **_):
  opt = Option()
  opt.modelCached = func
  opt.ramCoef = ramCoef
  opt.align = align
  opt.padding = padding
  opt.scale = scale
  opt.squeeze = identity
  opt.unsqueeze = identity
  return opt
Esempio n. 3
0
from moire_obj import Net
modelName = 'moire_obj'
test = False
inputFolder = '../test-pics'
refFile = 0  #'test/1566005911.7879605_ci.png'


def context():
    pass


opt = Option(
    ('test/{}.pth' if test else 'model/demoire/{}.pth').format(modelName))
opt.padding = 31
opt.ramCoef = 1 / 8000.
opt.align = 128
opt.modelCached = initModel(opt, weights=opt.model, f=lambda _: Net())
toTorch = lambda x: torch.from_numpy(np.array(x)).permute(2, 0, 1).to(
    dtype=config.dtype(), device=config.device()) / 256
time = 0.0
for pic in os.listdir(inputFolder):
    original = toTorch(readFile(context=context)(inputFolder + '/' + pic))
    ref = toTorch(readFile(context=context)(refFile + '/' +
                                            pic)) if refFile else original
    start = perf_counter()
    y = ensemble(opt)(original)
    time += perf_counter() - start
    print(pic, float(y.mean(dtype=torch.float)),
          float((y - ref).abs().mean(dtype=torch.float)))
    out = toOutput(8)(toFloat(y))
    writeFile(