Ejemplo n.º 1
0
import matplotlib.pyplot as plt
from utils import *
from PIL import Image
import imutils
from vispy_utilities import *
from CameraModels.Sphere import Sphere
import vispy

data_path_gt = "/home/kike/Documents/Dataset/ICCV_dataset/evaluation/Visualization/reasonable_image_MP3D"
data_path_est = "/home/kike/Documents/Dataset/ICCV_dataset/evaluation/Visualization/evaluation/ASW_MP3D/eval"

dir_disp_gt = os.path.join(data_path_gt, "disp_up_gt")
dir_disp_est = os.path.join(data_path_est, "disp_up_est")
dir_rgb_map = os.path.join(data_path_gt, "image_up")

list_disp_gt = list_directories(dir_disp_gt)
list_disp_est = list_directories(dir_disp_est)
list_rgb_maps = list_directories(dir_rgb_map)

i = 0
disp_gt = np.load(os.path.join(dir_disp_gt, list_disp_gt[i]))

mask_range = disp_gt > 67.5
disp_gt[mask_range] = 0

im = Image.open(os.path.join(dir_disp_est, list_disp_est[i]))
imarray = np.array(im) * (-1)
disp_est = imutils.rotate_bound(imarray, 90) * 180 / 512

mask = disp_gt > 0
disp_est[(mask * (-1) + 1).astype(np.bool)] = 0
Ejemplo n.º 2
0
        |--- image_up
        |--- imag_down
"""
report_name = "MP3D_StereoMatching_disp_range.csv"
data_path_gt = "/home/kike/Documents/Dataset/ICCV_dataset/MP3D/test"

# report_name = "SF3D_StereoMatching_disp_range.csv"
# data_path_gt = "/home/kike/Documents/Dataset/ICCV_dataset/SF3D/test"


dir_disp_gt = os.path.join(data_path_gt, "disp_up")
dir_depth_gt = os.path.join(data_path_gt, "depth_up")
dir_rgb_map_up = os.path.join(data_path_gt, "image_up")
dir_rgb_map_down = os.path.join(data_path_gt, "image_down")

list_disp_gt = list_directories(dir_disp_gt)
list_depth_gt = list_directories(dir_depth_gt)
list_rgb_map_up = list_directories(dir_rgb_map_up)
list_rgb_map_down = list_directories(dir_rgb_map_down)

global_disp_range_1 = 0
global_disp_range_2 = 0
global_disp_range_3 = 0

report = []
stereo = StereoMatching()

tbar = tqdm(total=len(list_disp_gt))
for i in range(len(list_disp_gt)):
    disp_gt = np.load(os.path.join(dir_disp_gt, list_disp_gt[i]))
Ejemplo n.º 3
0
        |--- asw_estimation : disparity estimation
        |--- disp_up: GT disparity
        |--- depth_up: GT depth map
        |--- image_up
        |--- imag_down
"""
report_name = "MP3D_StereoMatching.csv"
data_path_gt = "/home/kike/Documents/Dataset/ICCV_dataset/MP3D/test"
data_path_est = "/home/kike/Documents/Dataset/ICCV_dataset/evaluation/Whole_estimations/MP3D/ASW"

dir_disp_gt = os.path.join(data_path_gt, "disp_up")
dir_disp_est = os.path.join(data_path_est, "disp_up_est")
dir_depth_gt = os.path.join(data_path_gt, "depth_up")
dir_rgb_map = os.path.join(data_path_gt, "image_up")

list_disp_gt = list_directories(dir_disp_gt)
list_disp_est = list_directories(dir_disp_est, key="_pp")
list_depth_gt = list_directories(dir_depth_gt)
list_rgb_map = list_directories(dir_rgb_map)

global_rmse_disp = 0
global_mae_disp = 0
global_rmse_depth = 0
global_mae_depth = 0

tbar = tqdm(total=len(list_disp_est))
for i in range(len(list_disp_est)):
    disp_gt = np.load(os.path.join(dir_disp_gt, list_disp_gt[i]))

    mask = disp_gt > 67.5
    disp_gt[mask] = 0
Ejemplo n.º 4
0
        |--- depth_up: GT depth map
        |--- image_up
        |--- imag_down
"""
report_name = "MP3D_subpixels.csv"
data_path_gt = "/home/kike/Documents/Dataset/ICCV_dataset/MP3D/test"
data_path_est = "/home/kike/Documents/Dataset/ICCV_dataset/evaluation/Whole_estimations/MP3D/subpixel"

dir_disp_gt = os.path.join(data_path_gt, "disp_up")
dir_disp_est = os.path.join(data_path_est, "disp_up_est")

dir_depth_gt = os.path.join(data_path_gt, "depth_up")
dir_depth_est = os.path.join(data_path_est, "depth_up_est")
dir_rgb_map = os.path.join(data_path_gt, "image_up")

list_disp_gt = list_directories(dir_disp_gt)
list_disp_est = list_directories(dir_disp_est)
list_depth_gt = list_directories(dir_depth_gt)
list_depth_est = list_directories(dir_depth_est)
list_rgb_map = list_directories(dir_rgb_map)

global_rmse_disp = 0
global_mae_disp = 0
global_rmse_depth = 0
global_mae_depth = 0

report = []

tbar = tqdm(total=len(list_disp_est))
for i in range(len(list_disp_est)):
    try:
Ejemplo n.º 5
0
            # set depth output for this x,y location to the best match
            disp[y, x] = best_offset
        save_obj("disp_1", disp)

    tbar.close()
    return disp


if __name__ == '__main__':
    data_path = "/home/kike/Documents/Dataset/ICCV_dataset/MP3D/test"
    dir_depth_map = os.path.join(data_path, "depth_up")
    dir_rgb_map_up = os.path.join(data_path, "image_up")
    dir_rgb_map_down = os.path.join(data_path, "image_down")

    list_depth_maps = list_directories(dir_depth_map)
    list_rgb_maps_up = list_directories(dir_rgb_map_up)
    list_rgb_maps_down = list_directories(dir_rgb_map_down)

    i = 0
    depth_map = np.load(os.path.join(dir_depth_map, list_depth_maps[i]))[:, :,
                                                                         0]
    rgb_map_up = cv2.imread(os.path.join(dir_rgb_map_up, list_rgb_maps_up[i]))
    rgb_map_down = cv2.imread(
        os.path.join(dir_rgb_map_down, list_rgb_maps_down[i]))

    img_up = cv2.cvtColor(rgb_map_up, cv2.COLOR_BGR2GRAY)
    img_down = cv2.cvtColor(rgb_map_down, cv2.COLOR_BGR2GRAY)
    baseline = 0.2
    stereo_match(img_up, img_down, 6, 70)
Ejemplo n.º 6
0
            angle2[j, i] = baseline * math.cos(theta_T)

    mask = disp > 0

    depth = np.zeros_like(disp).astype(np.float)
    depth[mask] = (angle[mask] / np.tan(disp[mask] / 180 * math.pi)) + angle2[mask]
    return depth


data_path = "/home/kike/Documents/Dataset/ICCV_dataset/MP3D/test"
rgb_map_dir = os.path.join(data_path, "image_up")
disp_map_gt_dir = os.path.join(data_path, "disp_up")
disp_map_est_dir = os.path.join(data_path, "asw_estimation")


rgb_maps = list_directories(rgb_map_dir)
disp_maps_gt = list_directories(disp_map_gt_dir)
disp_maps_est = list_directories(disp_map_est_dir, key="_pp")

for i in range(len(disp_maps_est)):
    # i = 1
    rgb_map = cv2.imread(os.path.join(rgb_map_dir, rgb_maps[i]))
    disp_gt = np.load(os.path.join(disp_map_gt_dir, disp_maps_gt[i]))

    mask = disp_gt > 192
    disp_gt[mask] = 0

    im = Image.open(os.path.join(disp_map_est_dir, disp_maps_est[i]))
    imarray = np.array(im) * (-1)
    disp_asw = imutils.rotate_bound(imarray, 90) * 180 / 512
Ejemplo n.º 7
0
import os
import numpy as np
from file_utilities import list_directories
import cv2
import matplotlib.pyplot as plt
from vispy_utilities import *
from CameraModels.Sphere import Sphere
import vispy

data_path = "/home/kike/Documents/Dataset/ICCV_dataset/evaluation/SSD"
depth_map_dir = os.path.join(data_path, "depth_up")
rgb_map_dir = os.path.join(data_path, "image_up")
estimation_dir = os.path.join(data_path, "est")

depth_maps = list_directories(depth_map_dir)
rgb_maps = list_directories(rgb_map_dir)
estimation_maps = list_directories(estimation_dir)

i = 0
depth_map = np.load(os.path.join(depth_map_dir, depth_maps[i]))[:, :, 0]
rgb_map = cv2.imread(os.path.join(rgb_map_dir, rgb_maps[i]))
estimation_map = np.load(os.path.join(estimation_dir, estimation_maps[i]))

plt.figure(1)
plt.imshow(depth_map, cmap='RdYlBu')
plt.colorbar()
plt.figure(2)
plt.imshow(estimation_map, cmap='RdYlBu')
plt.colorbar()
plt.figure(3)
# mask = depth_map > 0
Ejemplo n.º 8
0
import os
import numpy as np
from file_utilities import list_directories
import cv2
import imutils
import matplotlib.pyplot as plt
from PIL import Image
from tqdm import tqdm

data_path = "/home/kike/Documents/Dataset/ICCV_dataset/MP3D/test"
dir_image_up = os.path.join(data_path, "image_up_rotated")
dir_image_down = os.path.join(data_path, "image_down_rotated")

list_image_up = list_directories(dir_image_up)
list_image_down = list_directories(dir_image_down)

assert len(list_image_down) == len(list_image_up)

tbar = tqdm(total=len(list_image_up))
for i in range(len(list_image_up)):
    image_up = cv2.imread(os.path.join(dir_image_up, list_image_up[i]))
    imarray = np.array(image_up)
    rotated = imutils.rotate_bound(imarray, -90)
    cv2.imwrite(os.path.join(dir_image_up, list_image_up[i]), rotated)
    image_down = cv2.imread(os.path.join(dir_image_down, list_image_down[i]))
    imarray = np.array(image_down)
    rotated = imutils.rotate_bound(imarray, -90)
    cv2.imwrite(os.path.join(dir_image_down, list_image_down[i]), rotated)
    tbar.update(1)
tbar.close()