A method of determining a presence of an object around a vehicle, the vehicle having: a first sensor configured to capture an image of a surrounding area; a second sensor configured to capture a 3-D point cloud data of the surrounding area, wherein the first sensor and the second sensor are calibrated such that a given region of the image captured by the first sensor corresponds to a given region of the 3-D point cloud data captured by the second sensor; a processor coupled to the first sensor and the second sensor, the processor having access to computer-executable instructions for implementing the method, the method comprising: receiving, from the first sensor the image captured by the first sensor; pre-processing the image by extracting a portion of the image corresponding to an area in the direction of movement of the vehicle; processing the extracted portion of the image to generate an image tensor representative of information contained in the image, wherein the processing the extracted portion of the image to generate the image tensor representative of information contained in the image comprises processing the extracted portion of the image using a Convolutional Neural Network; receiving, from the second sensor, the 3-D point cloud data captured by the second sensor; processing the 3-D point cloud data to generate a 3-D point cloud data tensor representative of information contained in the 3-D point cloud data about at least one object candidate; analyzing the image tensor to identify a relevant data portion of the image containing data representing the at least one object candidate; amalgamating the 3-D point cloud data tensor with the identified relevant data portion of the image to generate an amalgamated tensor associated with the surrounding area; storing the amalgamated tensor; using the amalgamated tensor by a machine learning algorithm to determine the presence of the object in the surrounding area; characterized in that the object is an obstacle including at least one of a human and another vehicle. a first sensor configured to capture an image of a surrounding area; a second sensor configured to capture a 3-D point cloud data of the surrounding area, wherein the first sensor and the second sensor are calibrated such that a given region of the image captured by the first sensor corresponds to a given region of the 3-D point cloud data captured by the second sensor; a processor coupled to the first sensor and the second sensor, the processor having access to computer-executable instructions for implementing the method, the method comprising: receiving, from the first sensor the image captured by the first sensor; pre-processing the image by extracting a portion of the image corresponding to an area in the direction of movement of the vehicle; processing the extracted portion of the image to generate an image tensor representative of information contained in the image, wherein the processing the extracted portion of the image to generate the image tensor representative of information contained in the image comprises processing the extracted portion of the image using a Convolutional Neural Network; receiving, from the second sensor, the 3-D point cloud data captured by the second sensor; processing the 3-D point cloud data to generate a 3-D point cloud data tensor representative of information contained in the 3-D point cloud data about at least one object candidate; analyzing the image tensor to identify a relevant data portion of the image containing data representing the at least one object candidate; amalgamating the 3-D point cloud data tensor with the identified relevant data portion of the image to generate an amalgamated tensor associated with the surrounding area; storing the amalgamated tensor; using the amalgamated tensor by a machine learning algorithm to determine the presence of the object in the surrounding area; characterized in that the object is an obstacle including at least one of a human and another vehicle.