Benefiting from the powerful feature representation ability of deep learning, Convolutional Neural Network (CNN) provides a better solution to estimate accurately the number of people in a crowded scene, but it still faces many problems that need to be solved urgently. It is one of the key and difficult points in the field to reduce the complexity of the network and to improve the real-time performance of the network, so as to improve the accuracy of crowd counting. Firstly, this paper introduces the research background and application of crowd counting. Secondly, it focuses on the commonly used counting model, loss function, and dataset and evaluation method. Then compare the performance structure, advantages and disadvantages of different algorithms horizontally on several published datasets. Finally, it summarizes the shortcomings of the existing crowd counting, put forward to the future research direction of crowd counting.