import gradio as gr import numpy as np import cv2 import os from PIL import Image import matplotlib.pyplot as plt def depthMap(imgL,imgR): imgL = cv2.cvtColor(imgL, cv2.COLOR_RGB2GRAY) imgR = cv2.cvtColor(imgR, cv2.COLOR_RGB2GRAY) stereoMatcher = cv2.StereoBM_create() stereoMatcher.setMinDisparity(4) stereoMatcher.setNumDisparities(128) stereoMatcher.setBlockSize(21) stereoMatcher.setSpeckleRange(16) stereoMatcher.setSpeckleWindowSize(45) disparity = stereoMatcher.compute(imgL,imgR) gray = plt.get_cmap('gray') disparity = disparity - np.min(disparity) disparity = disparity / np.max(disparity) disparity = gray(disparity)[:, :, :3] return disparity leftCam = gr.inputs.Image(type="numpy") RightCam = gr.inputs.Image(type="numpy") map = gr.Interface(fn=depthMap, inputs=[leftCam,RightCam], outputs="image").launch(debug=True),