© 2019 IEEE. In this paper, an automatic rebar counting system based on image processing and machine learning techniques is proposed. The system makes use of several image processing techniques including Canny edge detection, Circle Hough Transform (CHT) calculation and a machine learning system to accurately identify the number of individual rebar in a given bundle under various lighting conditions. This work includes a study of a number of different machine learning algorithms including decision tree, K-Nearest Neighbor (KNN), Support Vector Machine (SVM), traditional neural network and Convolutional Neural Network (CNN). The proposed system is able to transfer the original object detection problem into a more easily solvable image classification problem and is hence achieve an overall accuracy of 95.99% in the presence of reasonable lighting conditions.