示例#1
0
def test3():
    """ Edge with margins clipped """
    dir_pth = "/home/quanquan/oneshot-landmark/dataset/Cephalometric/RawImage/TrainingData/"
    save_pth = "/home/quanquan/oneshot-landmark/dataset/Cephalometric/RawImage/edge/"
    filenames = [x.name for x in os.scandir(dir_pth) if x.name.endswith('.bmp')]
    filenames.sort()
    for filename in filenames:
        file_pth = tfilename(dir_pth, filename)
        img = Image.open(file_pth).convert('RGB')
        img = img.resize((384,384))
        # print(type(img))
        img_np = np.array(img)
        # print(img_np.shape)
        # import ipdb;ipdb.set_trace()
        # print(img_np.shape)
        mask = canny(img_np)
        assert len(mask.shape) == 2
        margin = int(mask.shape[0] * 0.05)
        m, n = mask.shape
        mask[m-margin:, :] = 0
        mask[:margin, :]   = 0
        mask[:, :margin]   = 0
        mask[:, m-margin:] = 0
        mask = Image.fromarray(mask)
        mask.save(tfilename(save_pth, f"{filename[:-4]}_bg2.png"))
        print("Save over: ", tfilename(save_pth, f"{filename[:-4]}_bg2.png"))
示例#2
0
def print_normal(normal, is_gt, epoch=0, fname=None): # [0,1]
    subtitle = "gt" if is_gt else "pred"
    epoch_text = "epoch{}".format(epoch)
    normal = normal * 255
    normal = normal.astype(np.uint8)
    fname = tfilename(fname) if fname is not None else tfilename("imgshow",epoch_text,"normal_"+subtitle+"/nor_"+generate_name()+".jpg")
    cv2.imwrite(fname, normal)
示例#3
0
def print_depth(depth, is_gt, epoch=0, fname=None): # [0,1]
    subtitle = "gt" if is_gt else "pred"
    epoch_text = "epoch{}".format(epoch)
    depth = depth * 255
    depth = depth.astype(np.uint8)
    fname = tfilename(fname) if fname is not None else tfilename("imgshow",epoch_text,"depth_"+subtitle+"/depth_"+generate_name()+".jpg")
    cv2.imwrite(fname, depth)
示例#4
0
def print_back(background, is_gt, epoch=0, fname=None): # [0,1]
    subtitle = "gt" if is_gt else "pred"
    epoch_text = "epoch{}".format(epoch)
    background = background * 255
    background = background.astype(np.uint8)
    fname = tfilename(fname) if fname is not None else tfilename("imgshow",epoch_text,"bg_"+subtitle+"/bg_"+generate_name()+".jpg")
    cv2.imwrite(fname, background)
示例#5
0
def print_exr(cmap, is_gt, epoch=0, fname=None):  # [0,1]
    subtitle = "gt" if is_gt else "pred"
    epoch_text = "epoch{}".format(epoch)
    cmap = cmap * 255
    cmap = cmap.astype(np.uint8)
    fname = tfilename(fname) if fname is not None else tfilename("imgshow",epoch_text,"exr_"+subtitle+"/cmap_"+generate_name()+".jpg")
    cv2.imwrite(fname, cmap)
示例#6
0
def print_uv(uv, is_gt, epoch=0, fname=None): # [0,1]
    subtitle = "gt" if is_gt else "pred"
    epoch_text = "epoch{}".format(epoch)
    w,h,c = uv.shape
    uv = uv*255
    uv = uv.astype(np.uint8)
    bb = np.zeros((w,h,1))
    uv = np.concatenate([uv, bb], axis=2)
    fname = tfilename(fname) if fname is not None else tfilename("imgshow",epoch_text,"uv_"+subtitle+"/uv_"+generate_name()+".jpg")
    #d("print_uv func: ")
    #print(np.sum(uv[:,:,2]))
    cv2.imwrite(fname, uv)
示例#7
0
def print_bw(bw, is_gt, epoch=0, fname=None): 
    subtitle = "gt" if is_gt else "pred"
    epoch_text = "epoch{}".format(epoch)
    assert np.max(bw) > 1, "Value Error??? all vallues <= 1"
    assert np.ndim(bw) == 3, "np.ndim Error"
    # print("print_bw: bw.shape", bw.shape)
    w,h,c = bw.shape
    bw = bw.astype(np.uint8)
    bb = np.zeros((w,h,1))
    bw = np.concatenate([bw, bb], axis=2)
    fname = tfilename(fname) if fname is not None else tfilename("imgshow",epoch_text,"bw_"+subtitle+"/bw_"+generate_name()+".jpg")
    cv2.imwrite(fname, bw)
示例#8
0
def print_deform(df, is_gt, epoch=0, fname=None):
    subtitle = "gt" if is_gt else "pred"
    epoch_text = "epoch{}".format(epoch)
    df = df / 2.0 + 255. / 2.
    df = df.astype(np.uint8)
    w,h,c = df.shape    
    bb = np.zeros((w,h,1))
    df = np.concatenate([df, bb], axis=2)
    fname = tfilename(fname) if fname is not None else tfilename("imgshow",epoch_text,"df_"+subtitle+"/df_"+generate_name()+".jpg")
    cv2.imwrite(fname, df)
    ###  For test
    cv2.imwrite(tfilename("df_test/c1.jpg"), df[:,:,0])
    cv2.imwrite(tfilename("df_test/c2.jpg"), df[:,:,1])
示例#9
0
def test2():
    """ Standard Edge """
    dir_pth = "/home/quanquan/oneshot-landmark/dataset/Cephalometric/RawImage/TrainingData/"
    save_pth = "/home/quanquan/oneshot-landmark/dataset/Cephalometric/RawImage/edge/"
    filenames = [x.name for x in os.scandir(dir_pth) if x.name.endswith('.bmp')]
    filenames.sort()
    for filename in filenames:
        file_pth = tfilename(dir_pth, filename)
        img = Image.open(file_pth).convert('RGB')
        img = img.resize((384,384))
        # print(type(img))
        img_np = np.array(img)
        # print(img_np.shape)
        mask = canny(img_np)
        mask = Image.fromarray(mask)
        mask.save(tfilename(save_pth, f"{filename[:-4]}_bg.png"))
        print("Save over: ", tfilename(save_pth, f"{filename[:-4]}_bg.png"))
示例#10
0
def print_deform_from_bw(bw, is_gt, epoch=0, fname=None):
    imsize = bw.shape[1]
    x = np.arange(imsize)
    y = np.arange(imsize)
    xi, yi = np.meshgrid(x, y)
    bw[:,:,0] = bw[:,:,0] - xi
    bw[:,:,1] = bw[:,:,1] - yi
    subtitle = "gt" if is_gt else "pred"
    epoch_text = "epoch{}".format(epoch)
    assert np.max(bw) > 1, "Value Error??? all vallues <= 1"
    assert np.ndim(bw) == 3, "np.ndim Error"
    # print("print_bw: bw.shape", bw.shape)
    bw = bw.astype(np.uint8)
    w,h,c = bw.shape
    bb = np.zeros((w,h,1))
    bw = np.concatenate([bw, bb], axis=2)
    fname = tfilename(fname) if fname is not None else tfilename("imgshow",epoch_text,"bw_"+subtitle+"/bw_"+generate_name()+".jpg")
    cv2.imwrite(fname, bw)
示例#11
0
 def test(self, logger, config, args):
     model = Learner(config, logger)
     epoch = args.epoch
     pth = tfilename(config['runs_dir'], f"model_epoch_{epoch}.pth")
     model.load(pth)
     model.cuda()
     tester_train = Tester(logger, config, mode="Train")
     tester_test = Tester(logger, config, mode="Test1+2")
     logger.info(f"Dataset Training")
     tester_train.test(model)
     logger.info(f"Dataset Test 1+2")
     tester_test.test(model)
示例#12
0
def init_dirs(config):
    for dirname in config['basic_dirs']:
        tdir(dirname)
        # Make __init__.py for each dir
        make_file(tfilename(dirname, '__init__.py'))
示例#13
0
def print_ab(ab, is_gt, epoch=0, fname=None):
    subtitle = "gt" if is_gt else "pred"
    epoch_text = "epoch{}".format(epoch)
    ab = ab.astype(np.uint8)
    fname = tfilename(fname) if fname is not None else tfilename("imgshow",epoch_text,"ab_"+subtitle+"/ab_"+generate_name()+".jpg")
    cv2.imwrite(fname, ab)
示例#14
0
def print_ori_dewarp(ori, is_gt, epoch=0, fname=None):
    subtitle = "gt" if is_gt else "pred"
    epoch_text = "epoch{}".format(epoch)
    fname = tfilename(fname) if fname is not None else tfilename("imgshow",epoch_text,"ori_dewarp"+subtitle+"/bw_uv_"+generate_name()+".jpg")
    print_ori(ori, is_gt, epoch=epoch, fname=fname)
示例#15
0
def print_ori(ori, is_gt, epoch=0, fname=None):
    subtitle = "gt" if is_gt else "pred"
    epoch_text = "epoch{}".format(epoch)
    ori = ori.astype(np.uint8)
    fname = tfilename(fname) if fname is not None else tfilename("imgshow",epoch_text,"ori_"+subtitle+"/ori_"+generate_name()+".jpg")
    cv2.imwrite(fname, ori)
示例#16
0
    img_rgb = np.round(img_rgb)
    s_x = s_x[mask]
    s_y = s_y[mask]
    index = np.argwhere(mask)
    t_y = index[:, 0]  # t_y and t_x is a map
    t_x = index[:, 1]
    # x = np.arange(expand_size)
    # y = np.arange(expand_size)
    # xi, yi = np.meshgrid(x, y)
    mesh = np.zeros((expand_size, expand_size))


def test_new_img(img_path, output_name):
    # cv2.imread()
    uv = cv2.imread(img_path, cv2.IMREAD_UNCHANGED)        #[0,1]
    uv = uv[:,:,1:]
    
    print_img_auto(uv, "uv", fname=output_name)
    

if __name__ == "__main__":
    import os
    from tutils import tfilename
    dirname = "/home1/quanquan/datasets/generate/mesh_film_small/uv"
    
    for x in os.scandir(dirname):
        if x.name.endswith("exr"):
            test_new_img(x.path, tfilename("test_img_old", x.name[:-4]+".jpg"))
            print(x.name)