Many of the advanced driver assistance systems have the goal of perceiving the surroundings of a vehicle. One of them, adaptive cruise control, takes charge of searching for other vehicles in order to detect and track them with the aim of maintaining a safe distance and to avoid dangerous maneuvers. In the research described in this article, this task is accomplished using an on board camera. Depending on when the vehicles are detected the system analyzes movement or uses a vehicle geometrical model to perceive them. After, the detected vehicle is tracked and its behavior established. Optical flow is used for movement while the geometric model is associated with a likelihood function that includes information of the shape and symmetry of the vehicle and the shadow it casts. A genetic algorithm finds the optimum parameter values of this function for every image. As the algorithm receives information from a road detection module some geometric restrictions are applied. Additionally, a multiresolution approach is used to speed up the algorithm. Examples of real image sequences under different weather conditions are shown to validate the algorithm.