Despite the large number of studies conducted during the last three decades concerning 3D building modelling starting from Light detection and ranging (Lidar) data, two persistent problems still exist. The first one is the absence of some roof details, which will not only disappear in the building roof model due to their small areas regarding the point density but are also considered as undesirable noise among the modelling procedures. The second problem consists in that the involved segmentation algorithms do not perform well in the presence of noise in the building point cloud data. These two problems generate undesirable deformation in the final 3D building model. This paper proposes a new automatic approach for detecting and modelling the missing roof details in addition to improving the building roof segments. In this context, the error map matrix, which presents the deviations of points to their fitting planes, is considered. Moreover, this matrix is analysed in order to deduce the mask of missing roof details. At this stage, a new numeric factor is defined for estimating the roof segmentation accuracy in addition to the validity of the roof segmentation result. Then, the building point cloud is enhanced in order to decrease the negative noise influence and, consequently, to improve the building roof segments. Finally, the functionality and the accuracy of the proposed approach are tested and discussed.