## 1 Introduction  
Due to the influence of many factors, such as the production process, equipment, and other restrictions in the industrial production process, there will be some defects on the surface of some metallic products. As we know, metallic surface defects have a greatly adverse effect on the quality of industrial products. Thus, it is crucial to ensure the quality of industrial production with the use of surface defect detection technologies. At present, the methods of surface defect detection of metallic products are mainly still in the stage of artificial eye detection in the industrial production process. However, the artificial visual inspection is unreliable and time-consuming. Therefore, in order to meet growing demand, the desired way to guarantee the quality of products is to automatically detect surface defects by compute vision technologies. The surface defect detection system mainly includes the image acquisition module, image processing module, image analysis module, data management, and the man-machine interface module. This paper only focuses on the surface defect detection algorithm. The founder of computer vision can be defined as the process discovering what presents in an image and where they are [1]. Similarly, surface defect detection can be categorized into image-level defect classification, region-level defect inspection, and pixel-level defect segmentation [2]. The different among image-level defect classification, region-level defect inspection, and pixel-level defect segmentation is shown in Figure 1. Image-level surface defect classification [3,4] is to recognize and label the surface defects, but not know where the defects are. Region-level defect inspection [5], similar to generic object detection [6] in computer vision, is able to determine simultaneously the classification and localization. And this localization information is crucial for the follow-up quality assessment system. Pixel-level defect segmentation [5,7] can not only recognize and locate the surface defects, but also describe the shapes of defects. However, the shortcoming of pixel-level defect segmentation is that pixel-wise annotation is very time-consuming, so it is not feasible in the industrial field. Under this background, we focus on region-level surface defect inspection. In this paper, surface defect detection is regard as a region-level defect inspection task. From the perspective of computer vision, the defect detection task is essentially object detection for defecting images. The current surface defect detection methods can be mainly divided into two categories, i.e., traditional methods and based on deep learning methods. Most early surface defect detection methods use hand-crafted features to achieve good performance [8,9]. However, these methods heavily depend on expertise, and they are very sensitive to illumination, background, and other restrictions [10]. In recent years, with the rapid development of the convolutional neural network (CNN) [11], the surface detection methods based on deep learning have become the mainstream methods [12,13]. Although many remarkable breakthroughs have been made, there are still many challenges in current surface defect detectors. Under this background, we discuss three important problems, i.e., how to better extract and integrate the multi-scale features, how to better enhance CNNs' capability of extracting features, and how to better generate more suitable anchors. Feature fusion is a critical part of modern surface defect detectors, which could fuse the features from different layers, scales, or branches. Many recent works demonstrate that the performance of detectors can be effectively improved by using a feature fusion module [14, 15, 16]. However, these features are usually fused via simple operations, such as addition or concatenation. It is not the best choice, because not all features from different branches contribute equally to its response.