A method of predicting lane line types utilizing a heterogeneous convolutional neural network (HCNN), the method comprising: capturing an input image with one or more optical sensors disposed on a host member; passing the input image through the HCNN, the HCNN including a feature extraction layer and at least three distinct sub-networks, the three distinct sub-networks each performing a different task: predicting object locations in the input image with a first sub-network; detecting lane lines and predicting lane line locations for classes of lane lines in the input image to create the lane line location table with a second sub-network; and predicting lane line types for each predicted lane line in the input image with a third sub-network; wherein a learning operation is conducted in the FEL to learn to represent at least a first stage of data of the input image in a form including horizontal and vertical lines and simple blobs of colors, and the first stage of data is received within a first convolution and pooling portion of the FEL and a second stage of data including shapes such as circles, rectangles, and triangles is captured by the first CPL portion; and the first stage of data and the second stage of data is received within a second CPL portion of the FEL and a third stage of data defining complex geometries including combinations of the first and second stages of data and complex feature combinations that are used to form a representation including lane lines is captured within a second CPL portion of the FEL; and the third stage of data is forwarded from the second CPL portion to the second sub-network for performing lane line detection and localization for classes of lane lines in the input image to create the lane line location table. capturing an input image with one or more optical sensors disposed on a host member; passing the input image through the HCNN, the HCNN including a feature extraction layer and at least three distinct sub-networks, the three distinct sub-networks each performing a different task: predicting object locations in the input image with a first sub-network; detecting lane lines and predicting lane line locations for classes of lane lines in the input image to create the lane line location table with a second sub-network; and predicting lane line types for each predicted lane line in the input image with a third sub-network; wherein a learning operation is conducted in the FEL to learn to represent at least a first stage of data of the input image in a form including horizontal and vertical lines and simple blobs of colors, and the first stage of data is received within a first convolution and pooling portion of the FEL and a second stage of data including shapes such as circles, rectangles, and triangles is captured by the first CPL portion; and the first stage of data and the second stage of data is received within a second CPL portion of the FEL and a third stage of data defining complex geometries including combinations of the first and second stages of data and complex feature combinations that are used to form a representation including lane lines is captured within a second CPL portion of the FEL; and the third stage of data is forwarded from the second CPL portion to the second sub-network for performing lane line detection and localization for classes of lane lines in the input image to create the lane line location table. predicting object locations in the input image with a first sub-network; detecting lane lines and predicting lane line locations for classes of lane lines in the input image to create the lane line location table with a second sub-network; and predicting lane line types for each predicted lane line in the input image with a third sub-network; wherein a learning operation is conducted in the FEL to learn to represent at least a first stage of data of the input image in a form including horizontal and vertical lines and simple blobs of colors, and the first stage of data is received within a first convolution and pooling portion of the FEL and a second stage of data including shapes such as circles, rectangles, and triangles is captured by the first CPL portion; and the first stage of data and the second stage of data is received within a second CPL portion of the FEL and a third stage of data defining complex geometries including combinations of the first and second stages of data and complex feature combinations that are used to form a representation including lane lines is captured within a second CPL portion of the FEL; and the third stage of data is forwarded from the second CPL portion to the second sub-network for performing lane line detection and localization for classes of lane lines in the input image to create the lane line location table.