The 2D and 3D prediction models may be executed at blocks 808 and 818, respectively, by the ensemble model using, for example, the ensemble model's “predict” function, where the ensemble model can select the types of underlying 2D or 3D models to execute or train (e.g., CNN or Random Forest) and then provide the standardized 2D and 3D images to the selected models to make the respective 2D and 3D predict actions for training or execution purposes. In some embodiments, the ensemble model “predict” function can also pass a weights file to apply to either the underlying 2D or 3D models, where the weights file configures the weights used by the 2D or 3D model to make predictions, e.g., the weights of each neuron for a neural network based predictive model. In other embodiments, the ensemble model “predict” function can also pass identifiers that identify certain subset of data or images that the 2D or 3D model processes. For example, the identifiers may identify certain drivers (e.g., drivers with IDs 24 to 29) such that only 2D and 3D images identified for driver IDs 24 to 29 can be analyzed by the underlying predictive model. Accordingly, other images in the obtained 2D and 3D images may be ignored by the underlying models (e.g., images associated with drivers having IDs 1 to 23 may be ignored).