# Algorithm of Smart Building Supervision for Detecting and Counting Column Ties Using Deep Learning
## 3 Literature Review
### Deep Learning-Based Object Detection  
CNN (Convolutional Neural Network) [9] is a network in which filter-extracted features are combined in the Fully Connected Layer and, finally, classed to output results.  
Object detection technology is a technology that utilizes CNN's technology to detect the location of objects in an input image and to classify classes in those locations using CNN. Starting with R-CNN [10], proposed by [PERSON]'s research team in 2014, object detection technology emerged. R-CNN uses the Selective Search algorithm for location detection separately from class classification in the input image, and has a process of proposing 2000 candidate regions and calculating them with CNN. Since the proposed 2000 areas are cropped/warped and then calculated with CNN, it takes a lot of time, memory, and lacks accuracy; therefore, SPP-net [11] tried to improve the detection accuracy and speed by calculating the input image itself as CNN without dividing the image. Using the SelectiveSearch algorithm to detect object candidate regions is the same, but the difference is applied to the convolution feature map, which is characterized by being output as three feature vectors in the spatial pyramid pooling layer after the max pooling process.  
Fast R-CNN [12] is similar to SPP-net, but instead of spatial pyramid pooling layer of SPP-net, RoI (Region of Interest) pooling is applied. If SPP-net uses three kernels, Fast R-CNN is different in that it adopts a single-scale kernel. The detection speed and accuracy of the object are improved compared to the existing methods. Faster R-CNN [13] is RPN (Region Proposal Net) plus RoI pooling of Fast R-CNN. Until Fast R-CNN, a selective search algorithm was used to estimate the object candidate region, but from Faster R-CNN, the technique for estimating the candidate region also used deep learning, known as RPN. If the previous models estimate the bounding box, and the class is classified after the bounding box is calculated on CNN again, YOLO [14] can find the bounding box and the bounding box class at the same time. The tensor, the core of the YOLO model, finds B bounding boxes for each cell and, at the same time, indicates the class classification probability of C. The performance itself is similar to Faster R-CNN, but it is very fast. The disadvantages are that it cannot detect close or small objects, and the accuracy of the bounding box is also poor.  
Next, YOLOv2 [15], used in this study, overcomes the problems of YOLO and improves performance. The speed was increased by using batch normalization, high resolution image use, and the offset of the anchor box. The default size of the anchor box was determined by referring to the bounding boxes in the actual training data. YOLOv2 can be implemented by using input images of various sizes. The lower the resolution image, the higher the speed, but the accuracy is lower. In class classification, hierarchies are used to improve performance by considering upper layers at the same time. The most recent YOLO-related object detection technology is YOLOv3, which was developed to be slightly larger, but faster and more accurate than the existing YOLO network.  
YOLO is an algorithm created by a new method outside the existing framework, such as CNN or RNN. CNNs were developed with the idea of visually navigating through images when a cat checks an object. It is composed of several layers of CNN, and it continues to expand by'maxpooling', and extracting specific image parts, and searches for images in this way.  
YOLOv2, used in this study, was developed in the process of continuous development by many developers to improve the performance of YOLO, and YOLOv5 is being developed in 2021. Among YOLOv5 models, the's' attached to YOLOv5s is the algorithm that shows the highest performance among various models of existing YOLOv5.