@@ -38,7 +38,9 @@ def query_cameras(n_cams):
3838
3939def make_grid (images , cell_size = (320 , 240 ), cols = 2 ):
4040 w0 , h0 = cell_size
41- grid = np .zeros ((h0 * max (1 , (len (images ) // cols )), w0 * min (len (images ), cols ), 3 ), dtype = np .uint8 )
41+ _rows = len (images ) // cols + int (len (images ) % cols )
42+ _cols = min (len (images ), cols )
43+ grid = np .zeros ((h0 * _rows , w0 * _cols , 3 ), dtype = np .uint8 )
4244 for i , (camid , img ) in enumerate (images .items ()):
4345 img = cv2 .resize (img , (w0 , h0 ))
4446 # add rect
@@ -58,7 +60,8 @@ def mouse_callback(event, x, y, flags, userdata):
5860 c = x // cell_size [0 ]
5961 r = y // cell_size [1 ]
6062 camid = r * grid_cols + c
61- g_selected_cam = camid
63+ if camid < len (cam_frames ):
64+ g_selected_cam = camid
6265
6366
6467def select_camera (cam_frames , window = "cameras" ):
@@ -81,7 +84,10 @@ def select_camera(cam_frames, window="cameras"):
8184
8285 cv2 .destroyAllWindows ()
8386
84- return list (cam_frames )[g_selected_cam ]
87+ if g_selected_cam is not None :
88+ return list (cam_frames )[g_selected_cam ]
89+ else :
90+ return list (cam_frames )[0 ]
8591
8692
8793if __name__ == '__main__' :
0 commit comments