Top Banner
IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. XX, NO. X, SEPTEMBER 2020 1 RRCNet: Rivet Region Classification Network for Rivet flush Measurement Based on 3D Point Cloud Qian Xie, Dening Lu, Anyi Huang, Jianping Yang, Dawei Li, Yuan Zhang, Jun Wang Abstract—In aircraft manufacturing industry, rivet inspection is a vital task for the aircraft structure stability and aerodynamic performance. In this paper, we propose a novel framework for fully automated rivet flush measurement, which is the key step in rivet inspection task. To efficiently perform rivet flush measurement, we first develop a mobile 3D scanning system to automatically capture the 3D point cloud of the aircraft skin surface. Subsequently, rivet regions are extracted through point cloud processing techniques. Instead of relying on handcrafted features, we propose a novel data-driven approach for rivet point extraction via a deep learning based technique. Our algorithm takes a scanned point cloud of the aircraft skin surface as input, and produces a dense point cloud label result for each point, distinguishing as rivet point or not. To achieve this, we propose a Rivet Region Classification Network (RRCNet) that can input 2D representations of a point and output a binary label indicating the point is rivet or non-rivet point. Moreover, we design a Field Attention Unit (FAU) to assign adaptive weights to different forms of 2D representations via the attention mechanism in convolutional neural networks. The extracted rivet regions can then be used to perform rivet flush measurement. The above components result in a fully automatic contactless measurement framework of aircraft skin rivet flush. Several experiments are performed to demonstrate the priority of the proposed RRCNet and the effectiveness of the presented rivet flush measurement framework. Index Terms—3D deep learning, point cloud processing, rivet flush measurement, attention mechanism. I. I NTRODUCTION R IVET has been widely used in aircraft manufacturing field, owning to its excellent characteristics as a per- manent mechanical fastener. The riveting quality has a vital impact on the flight performance, especially for those high- speed aircrafts, as illustrated in Figure 1(d). Moreover, bad rivets may weaken the stealthy performance of stealth aircraft by increasing the Radar Cross Section (RCS). Thus, it is quite essential to inspect the quality of rivets on the aircraft skin surface. Manuscript received August 14, 2020; revised September 11, 2020; ac- cepted September 24, 2020. This work was supported in part by National Natural Science Foundation of China under Grant 61772267, the Fundamental Research Funds for the Central Universities under Grant NE2014402 and Grant NE2016004, and the NUAA Fundamental Research Funds under Grant NS2015053. (Corresponding author: Jun Wang.) Qian Xie, Dening Lu, Jianping Yang, Dawei Li, Yuan Zhang and Jun Wang are with the College of Mechanical and Electrical En- gineering, Nanjing University of Aeronautics and Astronautics, Chi- na([email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]). Anyi Huang is with the College of Computer Science and Tech- nology, Nanjing University of Aeronautics and Astronautics, Chi- na([email protected]). (a) Aircraft skin surface (b) Rivet scanned point cloud (c) Single rivet in side view 10cm 6mm 0.3mm (d) Effect on aerodynamic performance of rivet quality wind flow Aircraft skin rivet rivet Fig. 1. (a) Rivets on the aircraft skin surface. (b) Scanned 3D point cloud on aircraft skin surface with rivets. (c) Zoom-in view of one single rivet from the side view. As seen, the feature of rivet structure is so much tiny that it is challenging to detect rivets using geometric information. (d) Illustration on the effect of rivet quality on aerodynamic performance of aircrafts. Rivet flush is the most important inspection index, which reflects the joint degree between the rivet and the aircraft skin surface. However, there exist two challenges to be solved in rivet flush measurement. First, there are too many rivets, over thousands, on one aircraft skin surface. It is a huge project to inspect all the rivets one by one, which, however, is essential since each rivet counts. Second, the quantitative measurement of rivet flush still remains an opening problem. In recent years, the 3D scanning technique is adopted to obtain the 3D shape information, e.g. point cloud, of the skin surface with rivets, as shown in Figure 1. Based on the captured 3D point cloud, rivet flush measurement can then be performed quantitatively [1]. Nevertheless, how to efficiently and accurately perform rivet flush measurement based on the captured 3D data is still a challenging problem. To address the above two issues, we propose a fully automatic aircraft skin rivet inspection framework, which is composed of a data acquisition part and a data analysis part. To obtain the 3D point cloud on the surface with high efficiency, we develop a mobile scanning system with a 3D scanner, which can replace manual scanning procedure. The proposed scanning system is capable of capturing 3D points on the surface while moving following a pre-set path. After we obtain the scanned 3D point cloud, we need to extract the rivet region points before performing the following rivet flush measurement. Several methods have been proposed to perform rivet extraction, such as [1]. However, these method rely on merely one aspect of rivet structure, like density
13

RRCNet: Rivet Region Classification Network for Rivet flush ...

Jan 23, 2023

Download

Documents

Khang Minh
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: RRCNet: Rivet Region Classification Network for Rivet flush ...

IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. XX, NO. X, SEPTEMBER 2020 1

RRCNet: Rivet Region Classification Network forRivet flush Measurement Based on 3D Point Cloud

Qian Xie, Dening Lu, Anyi Huang, Jianping Yang, Dawei Li, Yuan Zhang, Jun Wang

Abstract—In aircraft manufacturing industry, rivet inspectionis a vital task for the aircraft structure stability and aerodynamicperformance. In this paper, we propose a novel frameworkfor fully automated rivet flush measurement, which is the keystep in rivet inspection task. To efficiently perform rivet flushmeasurement, we first develop a mobile 3D scanning system toautomatically capture the 3D point cloud of the aircraft skinsurface. Subsequently, rivet regions are extracted through pointcloud processing techniques. Instead of relying on handcraftedfeatures, we propose a novel data-driven approach for rivet pointextraction via a deep learning based technique. Our algorithmtakes a scanned point cloud of the aircraft skin surface as input,and produces a dense point cloud label result for each point,distinguishing as rivet point or not. To achieve this, we proposea Rivet Region Classification Network (RRCNet) that can input2D representations of a point and output a binary label indicatingthe point is rivet or non-rivet point. Moreover, we design a FieldAttention Unit (FAU) to assign adaptive weights to differentforms of 2D representations via the attention mechanism inconvolutional neural networks. The extracted rivet regions canthen be used to perform rivet flush measurement. The abovecomponents result in a fully automatic contactless measurementframework of aircraft skin rivet flush. Several experiments areperformed to demonstrate the priority of the proposed RRCNetand the effectiveness of the presented rivet flush measurementframework.

Index Terms—3D deep learning, point cloud processing, rivetflush measurement, attention mechanism.

I. INTRODUCTION

R IVET has been widely used in aircraft manufacturingfield, owning to its excellent characteristics as a per-

manent mechanical fastener. The riveting quality has a vitalimpact on the flight performance, especially for those high-speed aircrafts, as illustrated in Figure 1(d). Moreover, badrivets may weaken the stealthy performance of stealth aircraftby increasing the Radar Cross Section (RCS). Thus, it is quiteessential to inspect the quality of rivets on the aircraft skinsurface.

Manuscript received August 14, 2020; revised September 11, 2020; ac-cepted September 24, 2020. This work was supported in part by NationalNatural Science Foundation of China under Grant 61772267, the FundamentalResearch Funds for the Central Universities under Grant NE2014402 andGrant NE2016004, and the NUAA Fundamental Research Funds under GrantNS2015053. (Corresponding author: Jun Wang.)

Qian Xie, Dening Lu, Jianping Yang, Dawei Li, Yuan Zhang andJun Wang are with the College of Mechanical and Electrical En-gineering, Nanjing University of Aeronautics and Astronautics, Chi-na([email protected]; [email protected]; [email protected];[email protected]; [email protected]; [email protected]).

Anyi Huang is with the College of Computer Science and Tech-nology, Nanjing University of Aeronautics and Astronautics, Chi-na([email protected]).

(a) Aircraft skin surface

(b) Rivet scanned point cloud

(c) Single rivet in side view

10cm

6mm 0.3mm

(d) Effect on aerodynamic performance of rivet quality

wind flowAircraft skin

rivet rivet

Fig. 1. (a) Rivets on the aircraft skin surface. (b) Scanned 3D point cloudon aircraft skin surface with rivets. (c) Zoom-in view of one single rivet fromthe side view. As seen, the feature of rivet structure is so much tiny that itis challenging to detect rivets using geometric information. (d) Illustration onthe effect of rivet quality on aerodynamic performance of aircrafts.

Rivet flush is the most important inspection index, whichreflects the joint degree between the rivet and the aircraft skinsurface. However, there exist two challenges to be solved inrivet flush measurement. First, there are too many rivets, overthousands, on one aircraft skin surface. It is a huge project toinspect all the rivets one by one, which, however, is essentialsince each rivet counts. Second, the quantitative measurementof rivet flush still remains an opening problem. In recent years,the 3D scanning technique is adopted to obtain the 3D shapeinformation, e.g. point cloud, of the skin surface with rivets, asshown in Figure 1. Based on the captured 3D point cloud, rivetflush measurement can then be performed quantitatively [1].Nevertheless, how to efficiently and accurately perform rivetflush measurement based on the captured 3D data is still achallenging problem.

To address the above two issues, we propose a fullyautomatic aircraft skin rivet inspection framework, which iscomposed of a data acquisition part and a data analysispart. To obtain the 3D point cloud on the surface with highefficiency, we develop a mobile scanning system with a 3Dscanner, which can replace manual scanning procedure. Theproposed scanning system is capable of capturing 3D pointson the surface while moving following a pre-set path. Afterwe obtain the scanned 3D point cloud, we need to extractthe rivet region points before performing the following rivetflush measurement. Several methods have been proposed toperform rivet extraction, such as [1]. However, these methodrely on merely one aspect of rivet structure, like density

Page 2: RRCNet: Rivet Region Classification Network for Rivet flush ...

IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. XX, NO. X, SEPTEMBER 2020 2

difference in [1]. Also, these previous methods are based onclassical point cloud processing techniques which heavily relyon experimental parameters, thus lack of generalization. As faras we know, we are the first one to employ the deep learningtechnique in rivet structure detection from 3D point cloud.

In this paper, we present a deep learning based rivetextraction algorithm, which performs rivet point extractionby classifying each point as rivet or non-rivet point. Findinga good and suitable feature representation is quite importantfor the classification model [2]. Specifically, we first transferthe 3D point data into 2D representation via projecting 3Dpoints into grid cells in 2D planes, resulting 2D maps encoding3D geometric information. We then propose a Rivet RegionClassification Network (RRCNet) to take the 2D maps as inputand output the predictions in possibility of being rivet or not.In this way, the designed network can automatically learn thecharacteristics of rivet points with the given labelled data.Moreover, instead of using a single field (i.e, the height field)in most previous methods, we propose to use more kinds offields to encode more geometric features and details in 2Dmaps. They are height, density, gaussian curvature and meancurvature fields. As far as we know, our method is the first oneto extract rivets from point cloud using deep learning basedtechnique.

In addition, we design a Field Attention Unit (FAU) inthe proposed network to learn the most useful informationin each field. We argue that some fields should contributemore to the final prediction. Nevertheless, the most importantfield map may differ from cases, making it difficult to selecta fixed importance ranking for these fields for all cases.Hence, the proposed FAU leverages the attention mechanismto assign different weights to fields according to the encodedfield information. The weighted information is then combinedtogether to perform the final classification. In such way, ournetwork can efficiently learn more useful information, whichleads to improvements for the classification accuracy.

In rivet flush calculation stage, we need to first extract therivet head points to measure the distance between the rivethead and the aircraft skin surface. However, the rivet contourpoints could be incorrectly segmented as rivet head points,which could bring incorrect flush values. To address this issue,we propose a hierarchical fitting method to extract the rivethead points. Rough rivet head regions are first extracted andthen a further plane fitting step is performed to eliminate mostoutliers in the rivet contour.

Overall, the main contributions in this paper can be sum-marised as follows:

• We propose a fully automated rivet flush measurementframework which is capable of performing rivet flushmeasurement with high accuracy and efficiency.

• To automatically obtain the 3D shape information in theaircraft skin surface, we develop a flexible 3D auto-scanning system which can collect 3D point cloud bymoving along a pre-set scan path without any userintervention.

• To extract rivet regions from the scanned 3D point cloud,we design a rivet region classification network (RRCNet),

in which 2D maps of different fields are adaptivelycombined by a field attention unit (FAU).

• To get a more accurate rivet flush value, we introduce ahierarchical fitting strategy to exactly segment the rivethead points from the extracted rivet head region.

II. RELATED WORK

In this part, we divide our discussion on the related workinto two parts, focusing on rivet flush measurement and 3Ddeep learning on point cloud.

A. Rivet Flush Measurement.

The quality of riveting is of great importance for the wholeperformance of the aircraft, making it quite necessary toperform rivet inspection in aviation industry [3], [4], [5]. Rivetinspection methods can be classified as two groups: 2D image-based and 3D point-based. 2D image-based methods take theimage data of the aircraft skin as input. For instance, [6], [7],[8] proposed to perform rivet inspection and defect recognitionbased on the images captured by the magneto-optic imager(MOI). 2D images can also be applied to perform rivetdetection, i.e., identification and location [9], [10]. Comparedto 2D image based methods, 3D point data contains moregeometric information, making it more suitable for geometry-related inspection tasks, such as rivet flush measurement.Paul et al. [11] proposed a perform rivet detection withthe assistance of point cloud data captured with a RGB-Dsensor, which makes their method be able to detect rivetsin poorly illuminated environments. More recently, Xia etal. [12] used the fringe projection technique to obtain 3Dpoint cloud data of aircraft surface. Based on the captured 3Ddata, they then performed rivet and seam structural defectsdetection. However, the rivet detection is still performed in2D images in their method. Xie et al. [1] directly detectedaircraft skin rivet on 3D point cloud via fitting rivet structureusing multiple structures fitting technique. Thus, we employ3D scanning technique to collect the shape information ofthe aircraft skin, and perform rivet inspection directly basedon the captured 3D point cloud. However, instead of relyingon handcrafted features as the above methods, we proposea data-driven approach to automatically learn the features ofrivet pattern, inspired by the success of data-driven methodsin various applications [13].

B. 3D deep learning on point cloud.

With the advances in 2D deep learning techniques, especial-ly the convolutional neural networks (CNNs) [14], [15], [16],3D deep learning based analysis on point cloud has becomean important task in the field of computer vision and computergraphics [17], [18]. Current deep learning based methods onpoint cloud data can be grouped into 3 categories: Voxel-basedmethods [19], [20], [21], View-based methods and Point-basedmethods [22].

Voxel-based Methods. The biggest obstacle in 3D deeplearning is the irregular characteristic of 3D point data. Toaddress this issue, voxel-based methods transform the scattered

Page 3: RRCNet: Rivet Region Classification Network for Rivet flush ...

IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. XX, NO. X, SEPTEMBER 2020 3

Data processing

Rivet region extraction

Rivet flush measurement

Data acquisition

RRCNet

𝑑𝑚𝑖𝑛 =0.2mm 𝑑𝑚𝑎𝑥 =0.3mm

Rivet auto-scanning system

3D scanner

robot

mobile platform

Fig. 2. Overview of the proposed rivet flush measurement framework. It consists of two main stages: data acquisition and data processing. The data acquisitionis accomplished by the proposed rivet auto-scanning system. The data processing stage contains the rivet region extraction step and the rivet flush measurementstep.

point cloud into regular structures, i.e, 3D volumetric grids,which can be processed conveniently by the 3D Convolutionoperation defined on regular 3D grids [23], [24]. Voxel-based methods have been successfully applied in various ofapplications, such as 3D object detection [25], object classifi-cation [26] and object segmentation [27], [28]. However, theperformance of these methods heavily relies on the resolutionof voxels, which makes them computationally demanding withlarge number of voxels. Another drawback is the inevitablegeometric information loss during the quantization step of thevoxelization procedure. Thus, these methods are unsuitable fortasks related to detailed feature perceptron.

View-based Methods. Considering the huge success of2D CNNs on images, view-based methods [29], [30], [31]focus on projecting 3D point date onto 2D planes in multipleviews, and then directly use 2D CNNs to conduct variousanalyses. View-based methods have achieved promising resultsat shape classification task. Nevertheless, these methods cannotbe easily extended to tasks where local details are needed, suchas point cloud consolidation [32].

Point-based Methods. Instead of transferring 3D pointsinto other intermediate formats which could cause informationloss, point-based approaches attempt to directly take the coor-dinates of 3D points as input. PointNet [33] and its extensionPointNet++ [34] are the pioneering networks showing thecapability of feature encoding using point-based methods. Thebasic idea behind the above two networks is to transfer eachpoint as a vector by mapping 3D coordinates into higher di-mensional space using multi-layer perceptrons (MLPs). Sincethe geometric characteristics of single points are determinedby their neighboring points, Point-based approaches could dis-tinguish more details than voxel-based approaches by relievingthe quantization error problem caused by the voxelizationoperation. However, the adopted max-pooling operation forinformation aggregation in this kind of approaches makes themlack of the ability to distinguish the point-level details.

As can be seen, existing 3D deep learning methods on pointcloud processing so far are focusing on coarse semantic un-

derstanding of object class label, such as object classification,object segmentation and object detection [35], [36]. Thus, it ishard to distinguish the tiny features and details in 3D shapesfor the existing 3D deep learning techniques, which hinderstheir application in rivet point extraction.

We tackle this by combining the advantages of point-basedand view-based approaches. Specifically, for each point, we getits neighborhood and encode the information of the neighbor-hood points by generating 2D projection maps. Moreover, weexploit the rivet structure in different fields. That is, we try toenlarge the difference between rivet and non-rivet regions bycomparing them in several scalar value fields, such as heightand curvature fields. We achieve this by first computing severalscalar value fields on the scanned point cloud, and then encodethese geometric information into 2D space by projecting 3Dpoints in 2D planes. In such way, our method can efficientlylearn the characteristics of rivet structure in multiple fields,and thus effectively classify points into rivet or non-rivet.

III. OVERVIEW

Figure 2 gives the overview of the proposed framework,which consists of two main phases, i.e., data acquisition anddata processing. In the data acquisition phase, a mobile auto-scanning system is developed to capture the point cloud ofthe aircraft skin surface. In the data processing phase, a CNN-based rivet region extraction approach is presented to detectthe rivet points in the scanned point cloud, followed by arivet flush measurement method to perform the rivet qualityassessment.

Mobile scanning system. We first develop a 3D scanninghardware system which contains a mobile platform, a robotand a 3D scanner. The mobile platform and robot can moveflexibly following the scanning path order. Note that the 3Dscanner can be switched according to different scanning tasks.3D point cloud can be efficiently acquired with the 3D scannermoving over the aircraft skin surface.

CNN-based rivet region extraction. Taking as input thescanned point cloud, we extract the rivet region points via

Page 4: RRCNet: Rivet Region Classification Network for Rivet flush ...

IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. XX, NO. X, SEPTEMBER 2020 4

a deep learning based classifier. Specifically, we propose arivet region classification network (RRCNet) to classify pointsinto rivet or non-rivet region. To improve the accuracy of therivet extraction, we design a field attention unit (FAU) in thenetwork to efficiently integrate different field information withthe attention mechanism. In this way, we can obtain the groupof individual rivet region point sets.

Rivet flush measurement. Each rivet region point setis finally fed into this stage to accomplish the rivet flushmeasurement. Rivet head points and non-rivet points are firstdivided by a RANSAC based plane fitting method. The fittedplane of the non-rivet points is then regarded as the referenceplane to calculate the final flush values.

IV. MOBILE SCANNING SYSTEM

In this section, we focus on the design of the 3D scanning e-quipment to capture the point cloud of the aircraft skin surface.With the designed system, the operation of scanning can befully automatic as the robot moves following a predeterminedscanning path.

3D Scanner. With the development of 3D scanning tech-nologies, various types of 3D scanners have been designedto collect 3D points on the object surface. The collected 3Dpoints could be in huge number and of high precision, makingit very suitable for quality inspection and shape measurement.After analyzing the requirement of the rivet flush measurementand the data quality of various types of 3D scanners, wechoose Creaform MetraScan as our scanner. The precision ofCreaform MetraScan can reach 0.025mm, and it can movearound the object while scanning. A tracker is needed track theMetraScan to register scans into one united coordinate system.Note that various 3D scanners such as Creaform Handyscan700 or ATOS 3D scanner can also be easily integrated intothe proposed system according to different measurement tasks.However, 3D scanners with low precision, such as Kinect orRealSense, is improper for our system, since they cannot getthe detailed shape of riveting structures.

Robot. 3D scanner needs to move on the surface of objectsto collect more data. Nevertheless, the manual hand movementis neither stable nor efficient. Hence, we adopt the collabora-tive robot to replace the function of the human arm. Here,we use the UR5 collaborative robot from Universal Robots.The weight and size of the UR5 robot is suitable for the auto-scanning system.

Mobile platform. In a fixed position, the space where therobot can reach is limited. When the object to be measured istoo huge to scan in one position, we need to move the robotto another position to increase the reachable area. Thus, weplace the robot in a mobile platform which can perform themovement automatically. The mobile platform also increasethe flexibility of our auto-scanning system.

With the designed auto-scanning system, the 3D point clouddata collection can be totally automatic by following the pathset in advance.

V. CNN-BASED RIVET REGION EXTRACTION

After the point cloud with rivets are captured, we thenextract rivet points by classifying every point into rivet or

Height map

Density map

Gaussian Curvature map

Mean Curvature map

(a) Project operation (b) 2D maps

Fig. 3. (a) Illustration of the 2D maps projection operation. (b) Examples offour generated 2D maps of one point.

non-rivet categories. To this end, we first get the neighborhoodpoint set and generate 2D maps for each point. These mapsare regarded as the shape representation of point and then fedinto RRCNet to perform classification.

A. Training data generation.

2D maps generation. Since the geometric information isencoded by the neighboring points, we use the neighborhoodpoint set within a sphere centered at every point as therepresentation of the single point. The neighborhood pointset here can be regarded as the local point patch (LPP). ALPP of the current point is first established r-radius searchingin 3D space, we then use this patch to compute the rivetregion probability. The r-radius of the neighborhood searchingis set to be the 1.5x of the rivet radius. Inspired by [37],we transfer the 3D point data into 2D representation byprojection operations. In this way, the 2D maps are capableof encoding the characteristics of rivet regions. Specifically,we first normalize every LPP by centering it and scaling it tounit size. Subsequently, a projecting plane (p, v) is determinedbased on the vectors calculated by PCA analysis. Like [37],we divide the 2D planes into 56×56 grids and then project allthe r-radius neighboring points into these regular grids. Thepixel values of these grids are determined by the scalar fieldvalues of the points.

Instead of merely generating one single 2D map, usuallythe height map, in most previous methods, we propose to usemultiple fields to encode more geometric information. The fourfields used in this paper are height, point density, Gaussiancurvature and Mean curvature respectively.

• Height map: Height map is the most commonly used 2Drepresentation for local point patch in previous methods.Given a point p0, we first get its r-radius neighboringpoint set P = {p1, p2, . . . , pn}. The vector v of the planefitted by PCA analysis is the eigenvector correspondingto the smallest eigenvalue. The height hi of the pointpi ∈ P to the plane can be then determined by:

hi =|v · (pi − p0)|

|v|(1)

Note that the original generated 2D height map containsseveral issues, such as grid containing no points. We thus

Page 5: RRCNet: Rivet Region Classification Network for Rivet flush ...

IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. XX, NO. X, SEPTEMBER 2020 5

Rivet region

Non-Rivet region

CNN

2

Feature extraction Field pooling ClassificationField map

generation

Field B

CNN

1

Field C

CNN

1

Field D

CNN

1

Field A

FAUCNN

1

Fig. 4. Architecture of the proposed network, RRCNet, which consists of three main components: feature extraction part, field pooling part and classificationpart. RRCNet takes four field maps of a point as input and outputs the probability of being the rivet point.

adopt the same post-processing schemes (e.g. Gaussian-weight interpolation) in [37] to deal with these problems.Please refer to [37] for more details. An example of thegenerated height maps can be found in Figure 3.

• Density map: Owning to the scanning mechanism andthe geometric characteristic of the rivet structure, morepoints will be collected on the rivet contour region duringscanning procedure. This results in the local point densitydifference between rivet and non-rivet regions, as shownin Figure 3. Therefore, the density field can be used asone of the maps to encode the geometric information ofthe rivet structure. For each point p, its local point densityDp can be calculated as:

Dp =Np

43 · π · r

3d

(2)

where 43 · π · r

3d is the 3D volume of the sphere with the

given radius rd, and Np is the number of points withinthe sphere. We set the radius to be 0.5x to the rivet headradius. Note that the neighborhood points searching ofradius rd here is different from the radius r for localpoint patch generation. rd is used for local point densitycomputation, and it is only 1

3 to r.• Gaussian & Mean curvature map: Curvature is regard-

ed as an important geometric property of surfaces in com-puter graphics. Although rivet head and non-rivet regionscan be seen as planar, the curvature of rivet contour isdifferent from the above two regions. Hence, curvaturefield is also included into our scalar field set. To encodeas much geometric information as possible, we use twokinds of curvature, i.e., Gaussian curvature (K = k1 ·k2)and Mean curvature (H = 0.5 · (k1 + k2)) [38], wherek1 and k2 are the principal curvatures. Examples of thecurvature fields can be seen in Figure 3.

Note that our input is not limited to these four field maps.The designed network can take more field maps as input to

boost the classification performance further, as long as theadded field maps can give more useful geometric information.

B. Network architecture.

Rivet Region Classification Network (RRCNet). Thearchitecture of the proposed RRCNet is shown in Figure 4. Itis comprised of three main components. The first componentCNN1 is the backbone network for feature extraction, in whichall the CNN blocks share the same weights. CNN1 consistsof four convolutional layers, i.e., Conv1 1, Conv1 2, Conv2 1and Conv2 2. Each two convolutional layers are followed bya max pooling layer to reduce the dimension of the inputdata. For each point in the given input (i.e., scanned 3Dpoint cloud), we denote the set of projection 2D maps invarious fields as V = {v1, v2, v3, v4}. These 2D maps arethen fed into CNN blocks to generate their correspondingfeature maps F = {f1, f2, f3, f4}. This is followed by thesecond component, a field pooling operation implemented bythe proposed Field Attention Units (FAUs) with the sharedparameters. The features are scaled by the weights generatedby FAU, and then aggregated by the feature map concatenationoperation. The resulting feature is finally processed by thethird component, classification part, which contains CNN2 anda fully connected layer whose output represents the possibilityof being rivet region or not. Details of the network architectureare given in Table I. Notably, batch normalization and a ReLUlayer are followed with each convolution operation.

Field Attention Unit (FAU). In view-based learning meth-ods, feature maps from different views are usually enhancedby assigning their corresponding relative importance beforecombined to perform the final classification. Inspired by thisidea, we introduce a field attention unit (FAU) to predict therelative weight of each field based on the learned features,which is implemented by the attention mechanism [39], [40].FAU intrinsically introduces dynamics conditioned on the fieldmaps, which can be regarded as a self-attention function on

Page 6: RRCNet: Rivet Region Classification Network for Rivet flush ...

IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. XX, NO. X, SEPTEMBER 2020 6

TABLE ISUMMARY OF THE ARCHITECTURE OF OUR RRCNET. THE RELU ACTIVATION FUNCTION AND BATCH NORMALIZATION ARE NOT SHOWN FOR BREVITY.

Modules Layer Name Input Size Parameters Output Size

CNN1

Conv1 1 56× 56 3× 3, 16, stride 1 56× 56× 16

Conv1 2 56× 56× 16 3× 3, 32, stride 2 28× 28× 32

Pool1 28× 28× 32 2× 2, stride 2 14× 14× 32

Conv2 1 28× 28× 32 3× 3, 64, stride 1 14× 14× 64

Conv2 2 14× 14× 64 3× 3, 128, stride 1 14× 14× 128

Pool2 14× 14× 128 2× 2, stride 2 7× 7× 128

FAUConv3 1 7× 7× 128 3× 3, 64, stride 1 7× 7× 64

Conv3 2 7× 7× 64 3× 3, 32, stride 1 7× 7× 32

Conv3 3 7× 7× 32 3× 3, 2, stride 1 7× 7× 2

CNN2 Conv4 1 7× 7× 512 3× 3, 128, stride 1 7× 7× 128

FAU: Field attention unit

𝑓𝑎 𝑤𝑎 ∙ 𝑓𝑎

FAU

Conv Conv softmax

scale

𝑤𝑎

𝑓𝑎 𝑤𝑎 ∙ 𝑓𝑎

FAU

Conv Conv softmax

scale

𝑤𝑎

𝑓𝑖 𝑤𝑖 ∙ 𝑓𝑖

FAU

Conv3 softmax

scale

𝑤𝑖

Fig. 5. Architecture of the proposed Field Attention Unit (FAU). Conv3contains three convolutional layers, each of which is followed by a batchnormalization and a ReLU activation function. The parameters of FAU aregiven in Table I.

feature selection in the channel aspect. One can refer to [41]for more theoretical analysis on this kind of channel-wiseattention mechanism.

Specifically, the architecture details of the proposed FAU aregiven in Figure 5 and Table I. As shown, FAU is constructedby three convolutional layers (i.e., Conv3 1, Conv3 2 andConv3 3) followed by a softmax layer. Symbolically, for eachlocal point patch, let W = {w1, w2, w3, w4} be the set oflearned weights for the four 2D field maps. The FAU can besimply summarised by the following equation:

f′

i = wi · fi = FAU(fi) · fi (3)

The final aggregated feature is then computed as:

F ∗ = Conv(concat[w1 · f1;w2 · f2;w3 · f3;w4 · f4]) (4)

FAU assigns different importance to each field 2D maps,allowing the network to pay attention to the salient featuremaps in every field. In this way, our FAU can accordinglygenerate better representations of the shape descriptors whichcan result in improved classification performance in variouscomplex cases.

Using RRCNet with FAU, each point will be assigned witha probability value (0 ∼ 1) which indicates it is belongingto rivet or not. We then take all the points whose probabilityvalues are higher than 0.5 as the rivet points. An Euclideanclustering algorithm is then performed to produce a set of clus-ters, where each cluster is a set of points that are consideredto contain one rivet. We finally finish this step by eliminatingthose clusters that contains much less points.

C. Network training.

We use the manually labeled rivet and non-rivet pointsfrom the dataset we collected as supervisory signal. Sinceour architecture is a binary classification network, binarycross-entropy is adopted as our loss function. Nevertheless,compared to the number of non-rivet points, the number ofrivet ones is much small. Thus, a weighted cross entropy losswhich emphasizes the loss on rivet points more is employed:

H =1

N

N∑i=1

wr · li · log (p (li))+(1− li) · log (1− p (li)) (5)

where li, i = 1, 2, . . . , N is the label for point pi (1 forrivet points and 0 for non-rivet points) and p(li) denotesthe predicted probability of the point being rivet for all Npoints. wr weights the cross-entropy terms for rivet points.Specifically, the weight wr is determined by the ratio of thenumber of non-rivet points and the number of rivet points, thatis

wr =

∑i

[li = 0

]∑

i

[li = 1

] (6)

In such way, we force our network to focus on the featurelearning on rivet points by penalizing more on misclassifica-tions of them.

VI. RIVET FLUSH MEASUREMENT

Based on the extracted rivet regions, we introduce therivet flush measurement process as illustrated in Figure 6(a).According to the rivet flush measurement model in Figure 6(b), the rivet flush is defined as the distance between therivet head and the plane of the surrounding non-rivet points.Therefore, we need to first extract the points on the rivet head.Nevertheless, since the rivet head points are so close to theplane of non-rivet points, as shown in Figure 1, it is difficultto exactly fit the plane of rivet head by a one-step method. Toaddress this issue, we propose a hierarchical fitting method togradually get the exact rivet head points.

Specifically, for a given rivet region, the hierarchical fittingmethod consists of three steps, as shown in Figure 6(a). First,the rivet contour point set is extracted via a RANSAC basedcircle fitting method. Further, rivet head points are extracted

Page 7: RRCNet: Rivet Region Classification Network for Rivet flush ...

IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. XX, NO. X, SEPTEMBER 2020 7

Step1: RANSAC based

circle fitting

Step2: Rivet head

Extraction & finetune

Step3: Flush

computation

(a) Pipeline of measurement (b) Rivet flush model

Extracted rivet head

Surrounding surface

𝑑𝑚𝑖𝑛 𝑑𝑚𝑎𝑥

0.353565

0.181361

mm

Fig. 6. (a) Pipeline of the novel rivet flush measurement, which consists of three steps. The most important step is the rivet head extraction & finetuneachieved by the proposed hierarchical fitting method. (b) Rivet flush measurement model in our paper.

(c) With refinement

(b) Without refinement

outliers

(a) Input data

Fig. 7. Rivet head point extraction results without refinement (b) and withrefinement (c). As shown, our hierarchical fitting strategy can efficientlyeliminate most outliers and correctly extract the rivet head points.

based on the parameters of the fitted circle, and fine-tunedby another RANSAC based plane fitting method. Finally,distances between the rivet head points and the fitted planeon the remaining points are calculated according to the rivetflush computation model in Figure 6(b).

Step 1: Rivet contour extraction. For a given extractedpoint set containing one rivet, we first need to find the exactlocation of the rivet. In fact, the rivet contour can be regardedas the circle pattern in 3D space. As shown in Figure 6(a),the circle pattern is so obvious in the rivet region that wedecide to adopt a RANSAC-based circle fitting algorithm forrivet contour detection. Specifically, we first get the meancurvature field of the input point cloud. Further, every pointis checked for the curvature value. If the curvature is lessthan threshold value Ct, then the point is discarded as planepoint. Ct is set to be 0.1 in our experiments. In this way, theremaining points can be seen as the points of rivet contour withfew outliers. Finally, we adopt a RANSAC-based 3D circlefitting method to extract the parameters (x, y, z, r, nx, ny, nz)of the rivet contour circle. (x, y, z) are the coordinates of thecircle’s center. r is the circle’s radius and (nx, ny, nz) are thecoordinates of the normal’s direction.

0.00

0.20

0.40

0.60

0.80

1.00

2 4 6 8 10 12 14 16 18 200

Training Epoch

Acc

ura

cy a

nd

Lo

ss

Accuracy of Training data

Loss of Training data

Accuracy of Testing data

Loss of Testing data

Fig. 8. Accuracy and loss for training and test dataset.

Step 2: Rivet head extraction. According to the rivetflush calculation model in Figure 6(b), we need to extractthe rivet head points before the final calculation. With 3Dcircle parameters (x, y, z, r, nx, ny, nz) obtained in step 1, a3D cylinder can be accordingly determined. Rivet head pointscan then be easily obtained by checking each point if it isinside the cylinder. However, there may exist some outliers inrivet head points, as shown in Figure 7(a). If we use thesepoints to compute the distances to the skin plane, the mindistance dmin would be incorrect. Therefore, we propose toperform a further RANSAC-based plane fitting to obtain thereal rivet head points. Since the outliers are so close to thereal rivet head that we need to set a much small value for thewidth of error band. In our experiments, we set it to 0.01. Anexample of the improved method is given in Figure 7(b).

Step 3: Rivet flush measurement. Through the above twosteps, the rivet region is now divided into three parts: rivethead, rivet contour and non-rivet points. Since the aircraft skinsurface can be seen as the plane in the local rivet region, weperform the RANSAC-based plane fitting algorithm on thenon-rivet points to recover the real surface of the skin. Withthe fitted plane, we then compute distances between pointson the rivet head and the plane. The rivet flush values, i.e.,min and max distances (dmin, dmax), can be easily obtained.

Page 8: RRCNet: Rivet Region Classification Network for Rivet flush ...

IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. XX, NO. X, SEPTEMBER 2020 8

(a) Auto-scanning system (b) Rivet points dataset

Standard parts real aircraft skin

Train

set

Test

setMobile platform

Robot

3D scannerAircraft skin

Tracker

Fig. 9. (a) Data acquisition using the designed rivet auto-scanning system. (b) Rivet points dataset used for training and testing in our network. The trackeris used to track the 3D scanner in real time to register scans into one unite coordinate system.

Finally, the distance between the rivet head center and theplane (i.e., rivet flush) is computed as:

Flush =dmin + dmax

2(7)

This is a simple yet efficient way to compute the flush sincethe exact center of the rivet head is difficult to be determined.

VII. RESULTS AND DISCUSSIONS

A. Implementation

For the RRCNet part, we implement the network withPytorch and train them on a NVIDIA GTX 1080 GPU. Thenetwork is trained with the Adam optimizer [42] with an initiallearning rate of 0.001 decreased by 0.9 at every 5 epoches. Weset beta coefficients to (0.9, 0.999) and batch normalizationmomentum to 0.5 decreased by 0.5 every 5 epoches. Thebatch size is set to 32. The curves of accuracy and loss forboth training and testing are given in Figure 8. For the datageneration and rivet flush measurement, we implement thealgorithms with PCL [43] in C++.

B. Dataset

To train our network and evaluate our framework in rivetflush measurement, we use the designed auto-scanning systemto collect several point clouds as our dataset for training andtesting, as shown in Figure 9. As shown in Figure 9 (b), the lefttwo scanned point clouds in the first column are collected fromtwo standard parts that was specially designed and machinedfor evaluation of rivet flush measurement. The right two pointclouds are captured from the real aircraft skin surfaces. Wethen annotate these point clouds by manually segmenting therivet points.

C. Evaluation on Rivet Region Extraction

Evaluation Metrics. Loizou et al. [44] introduced severalmetrics to evaluate the performance on their boundary pointclassification from 3D point cloud. Inspired by their work, weadopt precision, recall and IoU to act as the evaluation metricsin this paper.

• Precision: It is defined as the percentage of the real pre-dicted rivet points (i.e., True Positives, TP ) in all the pre-dicted rivet points (TP +FP ), that is, TP/(TP +FP ).FP represents the non-rivet points that are misclassifiedas rivet points. A higher precision indicates a betterperformance of the model.

• Recall: It is defined as the percentage of the real predictedrivet points (TP ) in all the real rivet points (TP + FN )in the test data, which is TP/(TP + FN). FN is therivet points which are misclassified as non-rivet points.Recall measures the ability of a model to find all the rivetpoints within a test set.

• Rivet IoU (rIoU): It is the Intersection over Union (IoU)that measures the area of overlap between the predictedrivet points and the ground truth rivet points divided bythe area of union between the above two sets.

• F1-score: It is the harmonic mean of precision and recall,that is, 2 · ( precision·recall

precision+recall ).

Comparison. To verify the effectiveness of the proposedcomponents in RRCNet, we compare the performances of ournetwork under different combination of all the three modules(i.e., Multi-field input, Field Attention Unit and Weighted-loss)in Table II. The baseline model takes merely the height mapas input, and uses the normal loss function without the extraweight on rivet points. It does not contain field attention uniteither. Moreover, we experiment other five kinds of networkarchitecture denoted as RRCNet-A(-D), which contain one ortwo components, as shown in Table II. RRCNet is the proposednetwork with all three components embedded in. To make thecomparison fair, all comparing networks are trained keepingall hyper-parameters the same.

As shown in the table, we gain 8.9% and 8.3% improve-ments in terms of Precision from Multi-field input (RRCNet-A) and Weighted-loss (RRCNet-B), respectively. Note thatthere is not results on RRCNet with FAU individually, sinceit cannot inserted into the baseline model without multi-field input. By combining multi-field and field-attention u-nit (RRCNet-C), we can improve the Precision by 9.6%,achieving 92.8%. Weighted-loss brings a further improvement

Page 9: RRCNet: Rivet Region Classification Network for Rivet flush ...

IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. XX, NO. X, SEPTEMBER 2020 9

TABLE IIEFFECTS OF THE PROPOSED METHODS (I.E. MULTI-FIELD INPUT, FIELD-ATTENTION UNIT AND WEIGHTED-LOSS) ON THE TEST DATASET. THE HIGHER

THE BETTER. RIOU: RIVET IOU - %, P: PRECISION - %, R: RECALL - %, F: F1-SCORE - %.

Model Multi-field input Field-attention unit Weighted-lossMetrics

rIoU P R F

Baseline 80.8 83.2 78.7 80.9RRCNet-A X 91.0 92.1 90.5 91.3RRCNet-B X 85.6 91.5 86.1 88.7RRCNet-C X X 90.4 92.8 90.3 91.5RRCNet-D X X 91.2 92.4 91.3 91.8

RRCNet X X X 93.2 93.0 93.3 93.1

Input RRCNet-A GTRRCNet-B RRCNet-C RRCNet-D RRCNet

Fig. 10. Examples of the predicted results of the proposed networks with different combinations of components. As shown, RRCNet with all the componentsachieves the best performance in visual, which demonstrates the effect of these components.

TABLE IIISTATISTICAL RESULTS OF EXAMPLES IN FIGURE 10 IN TERMS OF

F1-SCORE - %.

RRCNet-A RRCNet-B RRCNet-C RRCNet-D RRCNetFirst row 93.2 93.4 93.4 93.3 93.8

Second row 63.9 71.2 61.7 80.4 89.3Third row 89.1 88.4 86.3 88.3 91.8

of 9.2% based on baseline model with multi-field input, asshown in RRCNet-D. RRCNet achieves the highest Precisionof 93.0% with complete configuration. The statistical resultsin terms of Recall and rIoU as well agree with the trend ofimprovements in terms of Precision, as shown in Table II.The above experiments demonstrate that all the three proposedcomponents contribute to the improvement in performance ofRRCNet.

Figure 10 gives several qualitative results on different net-works. As can be seen, RRCNet with all the three proposedcomponents outputs the most similar results to the ground truthin all cases, while RRCNet-A(-D) either miss several rivetpoints or incorrectly classify non-rivet points as rivet points.In the first row, the input point cloud is in good condition

where point density and height difference are obvious. Hence,all the methods successfully extract the rivet region. For thesecond row, RRCNet-A(-D) miss points near the rivet contour.The reason could be that there is no density difference betweenrivet and non-rivet region. That leads to the fact that densityfield map is useless. Thus, taking the density field map asinput could bring in noise information in this case. However,our RRCNet can adaptively assign weights to different inputfields according to the information of field map itself. In thiscase, our RRCNet can still perform well by reducing theimportance of density field map. Input point cloud in the lastrow contains heavy noise around the rivet region. RRCNet-A(-D) incorrectly classify several non-rivet points as rivet points,while our RRCNet is not affected by these noise and achievesthe best result with reference to the ground truth. We furthershow the quantitative comparison in the metric of F1-score forthe examples in Figure 10. As shown in Table V, RRCNet withthe complete configuration still outperforms the comparingRRCNet with different configurations, which is consistent withthe visual performance in Figure 10.

Page 10: RRCNet: Rivet Region Classification Network for Rivet flush ...

IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. XX, NO. X, SEPTEMBER 2020 10

TABLE IVSTATISTICAL RIVET FLUSH MEASUREMENT RESULTS OF STANDARD PARTS.

Rivet GT Measured value Mean error Standard deviation Maximum error

#1 0.110 0.112 0.002 0.007 0.015#2 0.131 0.132 0.001 0.003 0.006#3 0.149 0.148 -0.001 0.003 0.006#4 0.176 0.178 0.002 0.003 0.005#5 0.141 0.141 0.000 0.003 0.006#6 0.149 0.152 0.003 0.003 0.006#7 0.076 0.076 -0.001 0.002 0.003#8 0.136 0.136 0.000 0.003 0.004#9 0.108 0.109 0.000 0.003 0.006

Average - - 0.001 0.003 0.006

0.100

0.150

0.200

0.250

0.300

0.350

1 2 3 4 5 6 7 8 9 10

Rivet #1 Rivet #2 Rivet #3 Rivet #4 Rivet #5

0.050

0.100

0.150

0.200

0.250

0.300

0.350

1 2 3 4 5 6 7 8 9 10

Rivet #6 Rivet #7 Rivet #8 Rivet #9 Rivet #10

𝑑𝑚𝑎𝑥/mm

𝑑𝑚𝑎𝑥/mm

Fig. 12. Ten measurements of the max distance of each rivet in Figure 13.

TABLE VFLUSH MEASUREMENTS OF RIVETS IN REAL AIRCRAFT SKIN.

Rivetdmax dmin

Average value Standard deviation Maximum deviation Average value Standard deviation Maximum deviation

#1 0.313 0.004 0.006 0.173 0.004 0.006#2 0.260 0.005 0.007 0.073 0.004 0.008#3 0.148 0.003 0.004 0.044 0.004 0.007#4 0.119 0.004 0.005 0.006 0.003 0.005#5 0.219 0.004 0.007 0.059 0.004 0.006#6 0.085 0.004 0.006 0.033 0.004 0.005#7 0.076 0.004 0.006 0.008 0.004 0.008#8 0.130 0.004 0.007 0.021 0.003 0.004#9 0.160 0.003 0.006 0.058 0.004 0.006

#10 0.294 0.003 0.005 0.168 0.003 0.006

D. Evaluation on Rivet Flush Measurement

Accuracy Analysis. The goal of this paper is to performrivet flush measurement. In this section, we propose to evaluatethe accuracy of the proposed flush measurement method usingthe point cloud of the standard part in Figure 11. The flushground truth for these rivets are measured by a 3D coordinatemeasuring machine. There are nine rivets in the input pointcloud here. To reduce the influence caused by randomness, wecalculate the flush values ten times, and take the average overten measurements as the final flush values. Standard deviationsand maximum errors are also given to evaluate the robustnessof the algorithm.

The quantitative results of nine rivets are given in Table IV.As can be seen in Table IV, the statistical mean errors offlush measurement are between −0.001mm and 0.003mm,which demonstrates that our method has good accuracy. Forthe standard deviations, all the measurements are less than0.003, except for the #1 rivet, whose standard deviation is0.007.

Measurement of Real Parts. We further verify the effec-tiveness of the proposed rivet flush measurement algorithmon the real aircraft skin surface in Figure 13. We show thevisual result and the quantitative results in and Table V. Asseen, the standard deviation of dmax and dmin are between

Page 11: RRCNet: Rivet Region Classification Network for Rivet flush ...

IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. XX, NO. X, SEPTEMBER 2020 11

#1 #2 #3

#4 #5 #6

#7 #8 #9

(a) Standard rivet part (c) 3D mesh(b) Scanned point cloud

Fig. 11. Rivets on the standard part used to evaluate the rivet flushmeasurement method. Note that the 3D mesh (c) is generated from the scannedpoint cloud (d) to show the stereo visual scene, in which the bumps of rivetscan be seen from the top view.

(a) Aircraft skin (b) Rivet region (c) 3D mesh

#1

#2

#3

#4

#5

#6

#7

#8

#9

#10

Fig. 13. Rivets on the real aircraft skin surface.

0.003 and 0.005 for the tested ten rivets on real aircraft skin.The maximum deviations are not exceeding 0.008. Figure 12gives the details of 10-times measurements results of dmax

over the ten rivets. As shown, fluctuations over 10-timesmeasurements are much small, which demonstrate our rivetflush measurement method is stable.

E. Limitation

The proposed framework is expected to behave well withdifferent rivet situations. However, there is still one limitationthat has to be discussed. That is, it may fail when the rivet fitperfectly with the skin surface, which means the rivet has noheight difference with the surrounding surface. In that case, therivet has no structure difference in 3D shape. Hence it cannotbe recognized by the classification network which takes 3Dpoint cloud as input.

VIII. CONCLUSIONS AND FUTURE WORK

In this paper, we present an automatical framework for thedetection and measurement of rivets in the aircraft skin. Anauto-scanning system is first designed to collect 3D pointclouds of rivet region on aircraft skin surfaces. We thenintroduce the Rivet Region Classification Network (RRCNet)to automatically extract rivet regions in the scanned pointclouds. Furthermore, a Field Attention Unit (FAU) is presentedto enhance the representation of shape descriptors in differentfields via assigning learned weights to the corresponding fields.The experimental results demonstrate the effectiveness of theproposed RRCNet under different types of rivet scanningdata. FAU is also proven to be efficient through the ablationstudy. Finally, a pipeline with a set of point cloud processingtechniques is given to generate the results of flush mea-surement. Experiments demonstrate that the presented rivetflush measurement framework is of high accuracy and works

completely automatically. For now, the scanning path is pre-determined. In the future, we plan to design algorithms toautomatically generate scanning path according to the shapeof the target object.

REFERENCES

[1] Q. Xie, D. Lu, K. Du, J. Xu, J. Dai, H. Chen, and J. Wang, “Aircraft skinrivet detection based on 3d point cloud via multiple structures fitting,”Computer-Aided Design, vol. 120, p. 102805, 2020.

[2] I. Rida, N. Al-Maadeed, S. Al-Maadeed, and S. Bakshi, “A compre-hensive overview of feature representation for biometric recognition,”Multimedia Tools and Applications, vol. 79, no. 7, pp. 4867–4890, 2020.

[3] A. Skorupa, M. Skorupa, T. Machniewicz, and A. Korbel, “Fatiguecrack location and fatigue life for riveted lap joints in aircraft fuselage,”International Journal of Fatigue, vol. 58, pp. 209–217, 2014.

[4] M. Skorupa, T. Machniewicz, A. Skorupa, and A. Korbel, “Fatiguestrength reduction factors at rivet holes for aircraft fuselage lap joints,”International Journal of Fatigue, vol. 80, pp. 417–425, 2015.

[5] H. Yu, B. Zheng, X. Xu, and X. Lai, “Residual stress and fatiguebehavior of riveted lap joints with various riveting sequences, rivetpatterns, and pitches,” Proceedings of the Institution of MechanicalEngineers, Part B: Journal of Engineering Manufacture, vol. 233, no. 12,pp. 2306–2319, 2019.

[6] U. Park, Y. Fan, L. Udpa, P. Ramuhalli, W. Shih, and G. C. Stockman,“Automated rivet inspection for aging aircraft with magneto-optic im-ager,” in 10th International Workshop on Electromagnetic Nondestruc-tive Evaluation [C], 2004.

[7] Y. Fan, Y. Deng, Z. Zeng, L. Udpa, W. Shih, and G. Fitzpatrick, “Agingaircraft rivet site inspection using magneto-optic imaging: Automationand real-time image processing,” in Proceedings of the 9th JointFAA/DoD/NASA Aging Aircraft Conference, 2006, p. 9.

[8] B. Li, X. Wang, H. Yang, and Z. Zhou, “Aircraft rivets defect recog-nition method based on magneto-optical images,” in 2010 InternationalConference on Machine Vision and Human-machine Interface. IEEE,2010, pp. 788–791.

[9] Z. Liu, D. S. Forsyth, A. Marincak, and P. Vesley, “Automated rivetdetection in the eol image for aircraft lap joints inspection,” NDT & eInternational, vol. 39, no. 6, pp. 441–448, 2006.

[10] T. Jiang, X. Cheng, H. Cui, C. Shi, and Y. Li, “Dual-camera-basedmethod for identification and location of scattered self-plugging rivetsfor robot grasping,” Measurement, vol. 134, pp. 688–697, 2019.

[11] G. Paul, L. Liu, and D. Liu, “A novel approach to steel rivet detectionin poorly illuminated steel structural environments,” in 2016 14thInternational Conference on Control, Automation, Robotics and Vision(ICARCV). IEEE, 2016, pp. 1–7.

[12] R. Xia, J. Zhao, T. Zhang, R. Su, Y. Chen, and S. Fu, “Detection methodof manufacturing defects on aircraft surface based on fringe projection,”Optik, p. 164332, 2020.

[13] I. Rida, R. Herault, G. L. Marcialis, and G. Gasso, “Palmprint recogni-tion with an efficient data driven ensemble classifier,” Pattern Recogni-tion Letters, vol. 126, pp. 21–30, 2019.

[14] A. Krizhevsky, I. Sutskever, and G. E. Hinton, “Imagenet classificationwith deep convolutional neural networks,” in Advances in neural infor-mation processing systems, 2012, pp. 1097–1105.

[15] Q. Xie, D. Li, Z. Yu, J. Zhou, and J. Wang, “Detecting trees in streetimages via deep learning with attention module,” IEEE Transactions onInstrumentation and Measurement, 2019.

[16] J. Wang, L. Luo, W. Ye, and S. Zhu, “A defect detection methodof split pins in the catenary fastening devices of high-speed railwaybased on deep learning,” IEEE Transactions on Instrumentation andMeasurement, 2020.

[17] F. Wang, Y. Zhuang, H. Gu, and H. Hu, “Automatic generation ofsynthetic lidar point clouds for 3-d data analysis,” IEEE Transactionson Instrumentation and Measurement, vol. 68, no. 7, pp. 2671–2673,2019.

[18] Y. Guo, H. Wang, Q. Hu, H. Liu, L. Liu, and M. Bennamoun, “Deeplearning for 3d point clouds: A survey,” IEEE Transactions on PatternAnalysis and Machine Intelligence, 2020.

[19] D. Maturana and S. Scherer, “Voxnet: A 3d convolutional neural net-work for real-time object recognition,” in 2015 IEEE/RSJ InternationalConference on Intelligent Robots and Systems (IROS). IEEE, 2015, pp.922–928.

Page 12: RRCNet: Rivet Region Classification Network for Rivet flush ...

IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. XX, NO. X, SEPTEMBER 2020 12

[20] Z. Wu, S. Song, A. Khosla, F. Yu, L. Zhang, X. Tang, and J. Xiao, “3dshapenets: A deep representation for volumetric shapes,” in Proceedingsof the IEEE conference on computer vision and pattern recognition,2015, pp. 1912–1920.

[21] C. Ma, Y. Guo, Y. Lei, and W. An, “Binary volumetric convolutionalneural networks for 3-d object recognition,” IEEE Transactions onInstrumentation and Measurement, vol. 68, no. 1, pp. 38–48, 2018.

[22] Y. Cui, Y. An, W. Sun, H. Hu, and X. Song, “Lightweight attentionmodule for deep learning on classification and segmentation of 3d pointclouds,” IEEE Transactions on Instrumentation and Measurement, 2020.

[23] G. Riegler, A. Osman Ulusoy, and A. Geiger, “Octnet: Learning deep3d representations at high resolutions,” in Proceedings of the IEEEConference on Computer Vision and Pattern Recognition, 2017, pp.3577–3586.

[24] X. Roynard, J.-E. Deschaud, and F. Goulette, “Classification of pointcloud scenes with multiscale voxel deep network,” arXiv preprintarXiv:1804.03583, 2018.

[25] Y. Zhou and O. Tuzel, “Voxelnet: End-to-end learning for point cloudbased 3d object detection,” in Proceedings of the IEEE Conference onComputer Vision and Pattern Recognition, 2018, pp. 4490–4499.

[26] C. R. Qi, H. Su, M. Nießner, A. Dai, M. Yan, and L. J. Guibas,“Volumetric and multi-view cnns for object classification on 3d data,”in Proceedings of the IEEE conference on computer vision and patternrecognition, 2016, pp. 5648–5656.

[27] H.-Y. Meng, L. Gao, Y.-K. Lai, and D. Manocha, “Vv-net: Voxel vae netwith group convolutions for point cloud segmentation,” in Proceedingsof the IEEE International Conference on Computer Vision, 2019, pp.8500–8508.

[28] Z. Wang and F. Lu, “Voxsegnet: Volumetric cnns for semantic partsegmentation of 3d shapes,” IEEE transactions on visualization andcomputer graphics, 2019.

[29] H. Su, S. Maji, E. Kalogerakis, and E. Learned-Miller, “Multi-viewconvolutional neural networks for 3d shape recognition,” in Proceedingsof the IEEE international conference on computer vision, 2015, pp. 945–953.

[30] X. Chen, H. Ma, J. Wan, B. Li, and T. Xia, “Multi-view 3d objectdetection network for autonomous driving,” in Proceedings of the IEEEConference on Computer Vision and Pattern Recognition, 2017, pp.1907–1915.

[31] M. Atzmon, H. Maron, and Y. Lipman, “Point convolutional neuralnetworks by extension operators,” arXiv preprint arXiv:1803.10091,2018.

[32] R. Roveri, A. C. Oztireli, I. Pandele, and M. Gross, “Pointpronets:Consolidation of point clouds with convolutional neural networks,” inComputer Graphics Forum, vol. 37, no. 2. Wiley Online Library, 2018,pp. 87–99.

[33] C. R. Qi, H. Su, K. Mo, and L. J. Guibas, “Pointnet: Deep learning onpoint sets for 3d classification and segmentation,” in Proceedings of theIEEE conference on computer vision and pattern recognition, 2017, pp.652–660.

[34] C. R. Qi, L. Yi, H. Su, and L. J. Guibas, “Pointnet++: Deep hierarchicalfeature learning on point sets in a metric space,” in Advances in neuralinformation processing systems, 2017, pp. 5099–5108.

[35] C. R. Qi, O. Litany, K. He, and L. J. Guibas, “Deep hough votingfor 3d object detection in point clouds,” in Proceedings of the IEEEInternational Conference on Computer Vision, 2019, pp. 9277–9286.

[36] Q. Xie, Y.-K. Lai, J. Wu, Z. Wang, Y. Zhang, K. Xu, and J. Wang,“Mlcvnet: Multi-level context votenet for 3d object detection,” in Pro-ceedings of the IEEE/CVF Conference on Computer Vision and PatternRecognition, 2020, pp. 10 447–10 456.

[37] D. Lu, X. Lu, Y. Sun, and J. Wang, “Deep feature-preserving normalestimation for point cloud filtering,” Computer-Aided Design, p. 102860,2020.

[38] N. Dyn, K. Hormann, S.-J. Kim, and D. Levin, “Optimizing 3d trian-gulations using discrete curvature analysis,” Mathematical methods forcurves and surfaces, vol. 1, pp. 135–146, 2001.

[39] A. Vaswani, N. Shazeer, N. Parmar, J. Uszkoreit, L. Jones, A. N. Gomez,Ł. Kaiser, and I. Polosukhin, “Attention is all you need,” in Advancesin neural information processing systems, 2017, pp. 5998–6008.

[40] F. Wang, M. Jiang, C. Qian, S. Yang, C. Li, H. Zhang, X. Wang,and X. Tang, “Residual attention network for image classification,” inProceedings of the IEEE conference on computer vision and patternrecognition, 2017, pp. 3156–3164.

[41] J. Hu, L. Shen, S. Albanie, G. Sun, and E. Wu, “Squeeze-and-excitationnetworks,” IEEE transactions on pattern analysis and machine intelli-gence, vol. 42, p. 2011ł2023, 2020.

[42] D. P. Kingma and J. Ba, “Adam: A method for stochastic optimization,”arXiv preprint arXiv:1412.6980, 2014.

[43] R. B. Rusu and S. Cousins, “3d is here: Point cloud library (pcl),” in2011 IEEE international conference on robotics and automation. IEEE,2011, pp. 1–4.

[44] M. Loizou, M. Averkiou, and E. Kalogerakis, “Learning part boundariesfrom 3d point clouds,” arXiv preprint arXiv:2007.07563, 2020.

Qian Xie is currently working towards the Ph.D.degree at Nanjing University of Aeronautics and As-tronautics (NUAA), China. He received his Bachelordegree in Computer-Aided Design from NUAA in2015. His research interests include computer vision,robotics and machine learning.

Dening Lu is currently working towards the masterdegree at Nanjing University of Aeronautics and As-tronautics (NUAA), China. He received his Bachelordegree in NUAA in 2018. His research interestsinclude point cloud processing and deep learning.

Anyi Huang is currently working towards the Ph.D.degree at Nanjing University of Aeronautics and As-tronautics (NUAA), China. He received his Masterdegree in Control Engineering from Nanjing TechUniversity in 2020. His research interests includedeep learning and data-driven 3d data analysis.

Jianping Yang is currently working towards thePh.D. degree at Nanjing University of Aeronauticsand Astronautics (NUAA), China. He received hisMaster degree in Ocean University of China in2017. His research interests include computer vision,robotics and machine learning.

Page 13: RRCNet: Rivet Region Classification Network for Rivet flush ...

IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. XX, NO. X, SEPTEMBER 2020 13

Dawei Li is currently working towards the Ph.D.degree at Nanjing University of Aeronautics and As-tronautics (NUAA), China. He received his Bachelordegree in Mechanical Design and Manufacturingand Automation from Anhui University of Technol-ogy(AHUT) in 2016. His research interests includeimage processing and machine learning.

Yuan Zhang is currently working towards the Ph.D.degree at Nanjing University of Aeronautics and As-tronautics (NUAA), China. He received his Masterdegree in Computer-Aided Design from NUAA in2017. His research interests include 3D measure-ment and Inspection.

Jun Wang is currently a professor at Nanjing U-niversity of Aeronautics and Astronautics (NUAA),China. He received his Bachelor and PhD degreesin Computer-Aided Design from NUAA in 2002 and2007 respectively. From 2008 to 2010, he conductedresearch as a postdoctoral scholar at the Universityof California and the University of Wisconsin. From2010 to 2013, he worked as a senior research engi-neer at Leica Geosystems, USA. In 2013, he paidan academic visit to the Department of Mathematicsat Harvard University. His research interests include

geometry processing and geometric modeling.