# Underwater Image Processing and Object Detection Based on Deep CNN Method

Authors: Fenglei Han; Jingzheng Yao; Haitao Zhu; Chunhui Wang
Journal: Journal of Sensors
 (2020)

---

## Abstract

Due to the importance of underwater exploration in the development and utilization of deep-sea resources, underwater autonomous operation is more and more important to avoid the dangerous high-pressure deep-sea environment. For underwater autonomous operation, the intelligent computer vision is the most important technology. In an underwater environment, weak illumination and low-quality image enhancement, as a preprocessing procedure, is necessary for underwater vision. In this paper, a combination of max-RGB method and shades of gray method is applied to achieve the enhancement of underwater vision, and then a CNN (Convolutional Neutral Network) method for solving the weakly illuminated problem for underwater images is proposed to train the mapping relationship to obtain the illumination map. After the image processing, a deep CNN method is proposed to perform the underwater detection and classification, according to the characteristics of underwater vision, two improved schemes are applied to modify the deep CNN structure. In the first scheme, a1∗1 convolution kernel is used on the 26∗26 feature map, and then a downsampling layer is added to resize the output to equal 13∗13. In the second scheme, a downsampling layer is added firstly, and then the convolution layer is inserted in the network, the result is combined with the last output to achieve the detection. Through comparison with the Fast RCNN, Faster RCNN, and the original YOLO V3, scheme 2 is verified to be better in detecting underwater objects. The detection speed is about 50 FPS (Frames per Second), and mAP (mean Average Precision) is about 90%. The program is applied in an underwater robot; the real-time detection results show that the detection and classification are accurate and fast enough to assist the robot to achieve underwater working operation.


---

## Body

## 1. Introduction

With the development of computer vision and image processing technology, the application of image processing methods to improve the underwater image quality to satisfy the requirements of the human vision system and machine recognition has gradually become a hot issue. At present, the methods of underwater image enhancement and restoration can be divided into nonphysical model image enhancement and physical model-based image restoration.For underwater image enhancement, traditional image processing methods include color correction algorithms and contrast enhancement algorithms, the white balance method [1], gray world hypothesis [2], and gray edge hypothesis [3] are the typical color correction methods, and the contrast enhancement algorithms include the histogram equalization [4] and restricted contrast histogram equalization [5], which are commonly used to enhance underwater images. Compared with the good results obtained by common image processing, the results obtained by these methods are unsatisfactory for underwater vision. The main reason is that the ocean environment is complex, and many unfavorable factors, such as the scattering and absorption of light by water, and the underwater suspended particles have serious interference on image quality.More complex and comprehensive underwater image enhancement methods are proposed for solving the degradation of color fading, contrast reduction, and detail blurring problems. For example, Ghani et al. [6] proposed a method to solve the low contrast problem of underwater images; the Rayleigh stretch limited contrast adaptive histogram was used to normalize the global contrast-enhanced image and the local contrast-enhanced image, so as to realize the enhancement for the low quality of underwater images. Li et al. [7] considered the multiple degradation factors of the underwater image, adopted image dehazing algorithm, color compensation histogram, equalization saturation, illumination intensity stretching, and bilateral filtering algorithm to solve the problems of blurring, color fading, low contrast, and noise problems. Braik et al. [8] used particle swarm optimization (PSO) to enhance underwater images by reducing the influence of light absorption and scattering. In addition, the Retinex theory is often applied in the underwater image enhancement process [9]; Fu et al. [10] proposed an underwater image enhancement method based on the Retinex model. This method applied different strategies to enhance the reflection and illumination components of the underwater image on the basis of color correction, and then the final enhancement results are synthesized. Perez et al. [11] proposed an underwater image enhancement method based on deep learning, which constructed a training data set consisting of groups of degraded underwater images and restored underwater images. The model between degraded underwater images and restored underwater images was obtained from a large number of training sets by deep learning method, which is used to enhance the underwater image quality.Underwater detection mainly depends on the digital cameras, and the image processing is commonly used to enhance the quality and reduce the noise; contour segmentation methods are commonly used to locate the objects. A lot of such methods are proposed to realize the target detection. For instance, Chen Chang et al. [12] proposed a new image-denoising filter based on a standard median filter, which is used to detect noise and change the original pixel value to a newer median. Prabhakar et al. [13] proposed a novel denoising method to remove additive noise present in the underwater images, homomorphic filtering for correcting nonuniform illumination is used, and anisotropic filtering is applied for smoothing. A new approach for denoising combining wavelet decomposition with high-pass filter is applied to enhance the underwater images (Sun et al., 2011); both the low-frequency components of the back-scattering noise and the uncorrelated high-frequency noise can be effectively depressed simultaneously. However, the unsharpness in the processed image is serious based on the wavelet method. Kocak et al. [14] used a median filter to remove the noise, the quality of the images are enhanced by RGB color level stretching, the atmospheric light is obtained through the dark channel prior, and this method is helpful in the case of images with minor noise. For noisy images, a bilateral filtering method is utilized by Zhang et al. [15], the results are good, but the time processing is very high. An exact unbiased inverse of the generalized Anscombe transformation is introduced by Markku et al. [16]; the comparison shows that the method plays an integral part in ensuring accurate denoising results.A Laser Underwater Camera Image Enhancer system is designed and built by Forand et al. [17] to enhance the laser underwater image quality, and it is testified that the system has a range of 3 to 5 times than that of a conventional camera with floodlights. Yang et al. [18] proposed a method of detecting underwater laser weak target based on Gabor transform, which is processed on laser underwater complicated nonstationary signal to turn it to become an approximate stationary signal, and then the triple correlation is computed with Gabor transform coefficient and it can eliminate random interference and extrude target signal’s correlation. Ouyang et al. [19] investigated the application of light field rendering (LFR) to images taken from a distributed bistatic nonsynchronous laser line scan imager using both line-of-sight and non-line-of-sight imaging geometries to create a multiperspective rendering of an unknown underwater scene.Chang et al. [20] introduced a significant amount of polarization into light at scattering angles near 90 degrees: This light can then be distinguished from light scattered by an object that remains almost completely unpolarized. Results were obtained from a Monte Carlo simulation and from a small-scale experiment, in which an object was immersed in a cell filled with polystyrene latex spheres suspended in water. Gruev et al. [21] described two approaches for creating focal plane polarization imaging sensors. The first approach combines polymer polarization filters with a CMOS active pixel sensor and computes polarization information at the focal plane. The second approach outlines the initial work on polarization filters using aluminum nanowires. Measurements from the first polarization image sensor prototype are discussed in detail, and applications for material detection using polarization techniques are described. Underwater Polarization Imaging Technology is introduced in detail by Li et al. [22].The above methods are based on wavelet decomposition, statistical methods or by means of laser technology, or color polarization theories, the results show that the methods are reasonable and effective, but the common weakness is that the processing is very time consumable, and it is difficult to achieve real-time detection.The Convolution Neural Network (CNN) is recognized as the fastest detection method by many ways in different research fields; Krizhevsky et al. [23] applied CNN method to deal with classification problem winning the champion of ILSVRC (ImageNet Large Scale Visual Recognition Challenge), which reduce the top 5 error rate to 15.3%, from then on deep CNN has been widely applied. Girshick [24] proposed Region Convolutional Neural Network (RCNN) through combining the RPN (Region Proposal Network) and CNN methods, which are testified on Pascal VOC 2007, mAP reaches 66%. Based on RCNN, SPP-Net (Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition) is presented by He K. et al. [25] to improve the detection efficiency. RESNET is proposed by [26]; the success of RESNET is to solve the problem of network migration with the help of the introduction of residual module, so as to improve the depth of the network, which can obtain the features with stronger expression ability and higher accuracy. Multilayer Perceptron (MLP) is applied to replace SVM (Support Vector Machine); the training and classification are optimized significantly, which is named Fast RCNN [6]. In Fast RCNN, Ren S, He K, and Girshick [27] added RPN to select and modify the region proposals instead of selective search, which is aimed at solving the end-to-end detection problem; this is the Faster RCNN method. Liu Wei proposed a SSD (Single Shot MultiBox) method in ECCV2016 (European Conference on Computer Vision). Compared with Faster RCNN, it has a distinct speed advantage, which is able to directly predict the coordinates and categories of bounding box without processing of generating a proposal.In 2016CVPR(IEEE Conference on Computer Vision and Pattern Recognition), Redmon proposed YOLO (You Only Look Once) [28] Regression object detection algorithm; by this method, the detection speed is improved significantly, and the real-time detection is possible to be realized. When the YOLO algorithm was put forward, the accuracy and speed of computation were not as good as that of the SSD algorithm. Then, Redmon proposed YOLO V2 [29] version to optimize the original YOLO multitarget detection framework through a series of methods, and the accuracy is greatly improved under the advantage of maintaining the original speed. Earlier of 2018, Redmon put forward the YOLO v3 [30], which is generally recognized as the fastest detection method, and the accuracy and the detection speed are greatly improved compared with the other methods.In this paper, we applied a combination of max-RGB method and shades of gray method to enhance the underwater images, and a CNN method is used for weakly illuminated image. For the underwater object detection, a new CNN method is proposed to solve the underwater object detection problem; considering the particularity of underwater vision, two improved schemes are proposed to improve the detection accuracy, and the results are compared with Fast RCNN[6], Faster RCNN [27], and original YOLO V3[30]. It is testified through comparison that the modification is effective, and the program is installed on an underwater robot to test the real-time detection.


## 2. Image Preprocessing

For underwater computer vision, the image preprocessing is the most important procedure for object detection. Because of the effects of light scattering and absorption in the water, the images obtained by the underwater vision system show the characteristics of uneven illumination, low contrast, and serious noise. By analyzing the current image processing algorithms, enhancement algorithms for underwater images are proposed in this paper.


### 2.1. The Underwater Vision Detection Architecture

The typical underwater visual system is composed of light illumination, camera or sensor, image acquisition card, and application software. The software process of the underwater visual recognition system generally includes several parts, such as image acquisition, image preprocessing, convolution neural network, and target recognition, as shown in Figure1.Figure 1
The image processing and object detection structure.Image preprocessing is at the low level, the fundamental purpose is to improve image contrast, to weaken or suppress the influence of various kinds of noise as far as possible, and it is important to retain useful details in the image enhancement and image filtering process. Convolutional Neutral Network is used to divide images into multiple nonoverlapping regions; the basis of object detection and classification is based on feature extraction, which is aimed at extracting the most effective essential features that reflect the target. Every aspect is closely related, so every effort should be made to achieve satisfactory results. The research of this paper mainly focuses on image preprocessing and recognition of typical targets from the underwater vision.


### 2.2. Combination of Max-RGB Method and Shades of Gray Method

The absorption of water to light leads to the decline of the color of underwater images. As the red and orange light are completely absorbed at 10 meters deep in the water, the underwater images generally get blue-green color. In order to eliminate the color deviation of underwater images, color correction of underwater images must be carried out.The color correction of the normal image has been very mature. Many white balance methods, such as Gray Word method, max-RGB method, Shades of Gray method, and Gray Edge method, are used to correct the color deviation of the image according to the color temperature. Generally, the application scenarios of these methods are general partial color conditions, and the treatments for severe underwater vision are not satisfied. In this paper, the original max-RGB method and shades of gray method are combined to identify the illuminant color.(1)Ix=∫weλsλ,xcλdλ,where Ix is the input underwater image, eλ is the radiance given by the light source, λ is the wavelength, sλ,x represents the surface reflectance, cλ denotes the sensitivity of the sensors, and w is the visible spectrum.The illuminante is defined as
(2)e=∫weλcλdλ.The average reflectance of the scene is gray according to the Grey-World assumption [31]
(3)k=∫sλ,xdx∫dx.Assumek is a constant value, the physical meaning of equation (1) can be simply described as that the observed image Ix can be decomposed into the product of the reflectance of image Sx and the illumination map eλ. Thus, weak illumination image enhancement means removing weak illumination from the input image; equation (3) is substituted in equation (1)
(4)∫sλ,xdx∫dx=1∫dx∬weλsλ,xcλdλdx.The illumination by explaining that the average color of the entire image raised to a powern(5)ke=∫Indx∫dx1/nAccording to the max-RGB method, the above equation can be modified as(6)ke=maxIx∗∫Indx∫dx1/n,where n can take any number between 1 and ∞, the default value of n=6, which is defined in shades of gray method proposed by Finlayson [31].


### 2.3. CNN Method for Weakly Illuminated Image Enhancement

Retinex model can be used to enhance the image based on the estimated illumination map; for underwater vision, the images are always weakly illuminated, so a trainable CNN method is applied to predict the mapping relations between weakly illuminated image and the corresponding illumination map. A four-layer convolutional network is used, the first and the third layers focus on the high light regions, and the second layer focuses on low-light regions while the last layer is to reconstruct the illumination map. The Convolutional Neural Network directly learns from an end-to-end mapping between dark and bright images. Low-light image enhancement in this paper is regarded as a machine learning problem. A weakly illuminated image is input, and a32∗6∗6 convolution layer is applied to change the image into 32 channels; the 3-D view figure means multilayers feature map, and then c18∗6∗6 and 8∗1∗1 convolution layers are added in the network; the output is a one channel feature map. In this model, most of the parameters are optimized by back-propagation, while the parameters of traditional models depend on the neutral network. The four-layer convolutional network structure is shown in Figure 2.Figure 2
The mapping relationship prediction between the input image and illumination map CNN structure.The input image is the weakly illuminated image, and the output is the corresponding illumination map. Similar with Chongyi Li et al. [32] and Dong et al. [33], the network contains four convolutional layers with specific tasks. Observing the feature maps in Figure 2, different convolutional layers have different effects on the final illumination map. For example, the first two layers focus on the high-light regions and the third layer focuses on low-light regions, while the last layer is to reconstruct the illumination map. The specific operation form of the four convolutional layers is described as shown in Figure 2.The enhancement effects are shown in Figure3, the underwater background color is improved significantly, and the weakly illuminated images are enhanced using the trainable CNN method.Figure 3
The enhancement effect by different methods: (a) original image; (b) the method proposed by D.J. [34]; (c) the method proposed by [35]; (d) max-RGB and shape of gray method; (e) weakly illuminated image enhancement.
(a)(b)(c)(d)(e)


## 2.1. The Underwater Vision Detection Architecture

The typical underwater visual system is composed of light illumination, camera or sensor, image acquisition card, and application software. The software process of the underwater visual recognition system generally includes several parts, such as image acquisition, image preprocessing, convolution neural network, and target recognition, as shown in Figure1.Figure 1
The image processing and object detection structure.Image preprocessing is at the low level, the fundamental purpose is to improve image contrast, to weaken or suppress the influence of various kinds of noise as far as possible, and it is important to retain useful details in the image enhancement and image filtering process. Convolutional Neutral Network is used to divide images into multiple nonoverlapping regions; the basis of object detection and classification is based on feature extraction, which is aimed at extracting the most effective essential features that reflect the target. Every aspect is closely related, so every effort should be made to achieve satisfactory results. The research of this paper mainly focuses on image preprocessing and recognition of typical targets from the underwater vision.


## 2.2. Combination of Max-RGB Method and Shades of Gray Method

The absorption of water to light leads to the decline of the color of underwater images. As the red and orange light are completely absorbed at 10 meters deep in the water, the underwater images generally get blue-green color. In order to eliminate the color deviation of underwater images, color correction of underwater images must be carried out.The color correction of the normal image has been very mature. Many white balance methods, such as Gray Word method, max-RGB method, Shades of Gray method, and Gray Edge method, are used to correct the color deviation of the image according to the color temperature. Generally, the application scenarios of these methods are general partial color conditions, and the treatments for severe underwater vision are not satisfied. In this paper, the original max-RGB method and shades of gray method are combined to identify the illuminant color.(1)Ix=∫weλsλ,xcλdλ,where Ix is the input underwater image, eλ is the radiance given by the light source, λ is the wavelength, sλ,x represents the surface reflectance, cλ denotes the sensitivity of the sensors, and w is the visible spectrum.The illuminante is defined as
(2)e=∫weλcλdλ.The average reflectance of the scene is gray according to the Grey-World assumption [31]
(3)k=∫sλ,xdx∫dx.Assumek is a constant value, the physical meaning of equation (1) can be simply described as that the observed image Ix can be decomposed into the product of the reflectance of image Sx and the illumination map eλ. Thus, weak illumination image enhancement means removing weak illumination from the input image; equation (3) is substituted in equation (1)
(4)∫sλ,xdx∫dx=1∫dx∬weλsλ,xcλdλdx.The illumination by explaining that the average color of the entire image raised to a powern(5)ke=∫Indx∫dx1/nAccording to the max-RGB method, the above equation can be modified as(6)ke=maxIx∗∫Indx∫dx1/n,where n can take any number between 1 and ∞, the default value of n=6, which is defined in shades of gray method proposed by Finlayson [31].


## 2.3. CNN Method for Weakly Illuminated Image Enhancement

Retinex model can be used to enhance the image based on the estimated illumination map; for underwater vision, the images are always weakly illuminated, so a trainable CNN method is applied to predict the mapping relations between weakly illuminated image and the corresponding illumination map. A four-layer convolutional network is used, the first and the third layers focus on the high light regions, and the second layer focuses on low-light regions while the last layer is to reconstruct the illumination map. The Convolutional Neural Network directly learns from an end-to-end mapping between dark and bright images. Low-light image enhancement in this paper is regarded as a machine learning problem. A weakly illuminated image is input, and a32∗6∗6 convolution layer is applied to change the image into 32 channels; the 3-D view figure means multilayers feature map, and then c18∗6∗6 and 8∗1∗1 convolution layers are added in the network; the output is a one channel feature map. In this model, most of the parameters are optimized by back-propagation, while the parameters of traditional models depend on the neutral network. The four-layer convolutional network structure is shown in Figure 2.Figure 2
The mapping relationship prediction between the input image and illumination map CNN structure.The input image is the weakly illuminated image, and the output is the corresponding illumination map. Similar with Chongyi Li et al. [32] and Dong et al. [33], the network contains four convolutional layers with specific tasks. Observing the feature maps in Figure 2, different convolutional layers have different effects on the final illumination map. For example, the first two layers focus on the high-light regions and the third layer focuses on low-light regions, while the last layer is to reconstruct the illumination map. The specific operation form of the four convolutional layers is described as shown in Figure 2.The enhancement effects are shown in Figure3, the underwater background color is improved significantly, and the weakly illuminated images are enhanced using the trainable CNN method.Figure 3
The enhancement effect by different methods: (a) original image; (b) the method proposed by D.J. [34]; (c) the method proposed by [35]; (d) max-RGB and shape of gray method; (e) weakly illuminated image enhancement.
(a)(b)(c)(d)(e)


## 3. The Object Detection Theories

The images are resized into448∗448, the input images are resized, the image will stretch, and the label will be recalculated too. In this case, in fact, a scale factor is calculated to record the scale of width and height, respectively, and xmin, xmax, ymin, and ymax are calculated, respectively, but the output images are resized to be same as the original images. A CNN method is used to predict the bounding boxes and classification probabilities. For the underwater detection, the targets are difficult to be identified from the background. In order to improve the detection accuracy, the whole image information is used to predict the bounding boxes of the targets and classify the objects at the same time; through this proposal, the end-to-end real time targets detection can be realized.


### 3.1. Convolutional Neutral Network

The image is divided into4∗4 grid cells, which is used to locate the center of the detection object. For each grid cell, the bounding boxes (bbox) are predicted, which includes 5 parameters, (x, y) is the center location of the bounding box, (w, h) is the width and height of the box, confidence is the Intersection of Union (IoU), which equals the intersection divided by the union between the bbox and the ground truth, the process is shown in Figure 4.Figure 4
Detection process.The bounding box is predicted through a fully-connected layer; if the width and height are only related to the scales and ratios of the input images, the location of the different objects in different shapes cannot be very accurate. Therefore, Region Proposal Network is applied to predict the bounding box and confidence [27], in which the predicted boxes with different scales and ratios are used, and the offsets of the boxes are calculated in RPN, as shown in Figure 5. The fully connected layer is removed, and the convolution layer with anchor boxes is added to predict the bounding box. In order to keep the high quality of the original image, a pooling layer is removed, and the input image is 448∗448, the scale of the final feature map is14∗14 with only one center.Figure 5
The convolutional feature map.Through a series of convolutions, a common feature map is obtained, then, RPN is applied. Firstly through a convolution, a new feature map is given, which can also be seen as high dimensional feature vectors, then through two1∗1 convolutions, a 18∗16∗16 feature map and a 36∗16∗16 characteristic map are obtained. That is 16∗16∗9 results, each result contains 2 scores and 4 coordinates, and then combined with the predefined anchors; after preprocessing, the bounding box is calculated.In deep learning process, grid cell data is input in the deep learning results, the center of some pixels is within the certain range of a specific grid cell, and then, all the pixels satisfied the feature of the object are clustered in a certain range. After many times of trial training with penalty, it can find the exact range through sliding window. However, the center position cannot exceed the range of the grid cell. This greatly limits the model’s computation when it is sliding around in the picture. In this way, position detection and category recognition are combined into a CNN network to predict, you only need to scan the picture once to infer the position information and category of all objects in the picture.


### 3.2. Cluster Analysis

Thek-means cluster method is used to train the bounding boxes, the target is to obtain a better IoU between the bbox and the grounding truth, so the distance from the center of bbox to the cluster center is calculated as a parameter:
(7)dbox,centroid=1−IoUbox,centroid.The Euclidean distance is applied in the traditionalk-means cluster method, which means that the bigger boxes with more errors compared with the smaller boxes, the result may be deviated from the true value. So the IoU score is proposed to substitute the traditional method.The convolutional kernel is3∗3, the max-pooling size is 2∗2, and the dimension of the feature map is reduced 2 times. The global average pooling is applied to complete the prediction; the 1∗1 convolution is used to compress the channels of the feature maps, so as to reduce the parameters and the amount of calculation. A batch normalization layer is added to accelerate the convergence speed and avoid the overfitting.Data preprocessing (unified format, equalization, noise reduction, etc.) can greatly improve the speed of training and enhance the training effect. Batch Normalization (BN) is proposed by Google, which is commonly used in the CNN network. After the convolution or pooling and before the activation function, all of the input data is normalized as follows:(8)x^k=xk−ExkVarxk,y^k=rkx^k+βkwhere E is Batch mean value and Var is variance; γ and β are the scale and shift coefficients, which are obtained from training.


### 3.3. Location Prediction

In order to solve the unstable problem for using the anchor boxes, especially in the process of early iteration, the following procedures are applied to predict the location of boxes:(9)x=tx∗ωa−xa,y=ty∗ha−ya,where (x, y) is the predicted value, (xa, ya) is the coordinates of anchor, (x∗, y∗) is the real coordinates value, (tx, ty) is the offset value, and (wa, ha) is the width and height of the box.Whentx=1, the box is offset a distance equaled the width of the box to the right; if tx=−1 the offset is to the left, so every predicted box can be located at any position on the image, which is the reason why the model is unstable, and the prediction is very time consumable. The prediction box is limited in the grid cell, and sigmoid function is used to calculate the offset value, which is defined between 0-1; the tx, ty, tw, and th can be computed from the following equations:
(10)bx=σtx+cx,by=σty+cybw=pwetwbh=phethIn the above equations, (cx, cy) is the upper left corner coordinates of the grid cell, as shown in Figure 6; when the scale of the grid cell is 1, the center is limited in the internal of the cell by the sigmoid function. The pw and ph are the priori width and height.Figure 6
Bounding box prediction.


### 3.4. Loss Function

In the process of training, the loss function form is a key technique; for the method proposed in this paper, a sum squared error loss is used to balance the errors. For the boxes in different size prediction, the width and height of the bounding box are substituted by the square root value; thus, the smaller box has a relatively large value offset to make the prediction more effective. The loss function can be divided into 2 parts:(11)L1=∑i=0s2∑j=0Blijobjxi−x^i2+yi−y^i2+wi−w^i2+hi−h^i2.L1 is aimed at determining the j-th box in i-th grid cell is in charge for the object or not, which is a coordinate prediction for the loss.
(12)L2=∑i=0s2∑j=0Blijobjci−c^i2+∑i=0s2liobj∑classespic−p^ic2.L2 is the confidence prediction loss of the box with the object. The total loss is the sum of the L1 and L2, which can give a better balance between the coordinates, confidence, and classification.


## 3.1. Convolutional Neutral Network

The image is divided into4∗4 grid cells, which is used to locate the center of the detection object. For each grid cell, the bounding boxes (bbox) are predicted, which includes 5 parameters, (x, y) is the center location of the bounding box, (w, h) is the width and height of the box, confidence is the Intersection of Union (IoU), which equals the intersection divided by the union between the bbox and the ground truth, the process is shown in Figure 4.Figure 4
Detection process.The bounding box is predicted through a fully-connected layer; if the width and height are only related to the scales and ratios of the input images, the location of the different objects in different shapes cannot be very accurate. Therefore, Region Proposal Network is applied to predict the bounding box and confidence [27], in which the predicted boxes with different scales and ratios are used, and the offsets of the boxes are calculated in RPN, as shown in Figure 5. The fully connected layer is removed, and the convolution layer with anchor boxes is added to predict the bounding box. In order to keep the high quality of the original image, a pooling layer is removed, and the input image is 448∗448, the scale of the final feature map is14∗14 with only one center.Figure 5
The convolutional feature map.Through a series of convolutions, a common feature map is obtained, then, RPN is applied. Firstly through a convolution, a new feature map is given, which can also be seen as high dimensional feature vectors, then through two1∗1 convolutions, a 18∗16∗16 feature map and a 36∗16∗16 characteristic map are obtained. That is 16∗16∗9 results, each result contains 2 scores and 4 coordinates, and then combined with the predefined anchors; after preprocessing, the bounding box is calculated.In deep learning process, grid cell data is input in the deep learning results, the center of some pixels is within the certain range of a specific grid cell, and then, all the pixels satisfied the feature of the object are clustered in a certain range. After many times of trial training with penalty, it can find the exact range through sliding window. However, the center position cannot exceed the range of the grid cell. This greatly limits the model’s computation when it is sliding around in the picture. In this way, position detection and category recognition are combined into a CNN network to predict, you only need to scan the picture once to infer the position information and category of all objects in the picture.


## 3.2. Cluster Analysis

Thek-means cluster method is used to train the bounding boxes, the target is to obtain a better IoU between the bbox and the grounding truth, so the distance from the center of bbox to the cluster center is calculated as a parameter:
(7)dbox,centroid=1−IoUbox,centroid.The Euclidean distance is applied in the traditionalk-means cluster method, which means that the bigger boxes with more errors compared with the smaller boxes, the result may be deviated from the true value. So the IoU score is proposed to substitute the traditional method.The convolutional kernel is3∗3, the max-pooling size is 2∗2, and the dimension of the feature map is reduced 2 times. The global average pooling is applied to complete the prediction; the 1∗1 convolution is used to compress the channels of the feature maps, so as to reduce the parameters and the amount of calculation. A batch normalization layer is added to accelerate the convergence speed and avoid the overfitting.Data preprocessing (unified format, equalization, noise reduction, etc.) can greatly improve the speed of training and enhance the training effect. Batch Normalization (BN) is proposed by Google, which is commonly used in the CNN network. After the convolution or pooling and before the activation function, all of the input data is normalized as follows:(8)x^k=xk−ExkVarxk,y^k=rkx^k+βkwhere E is Batch mean value and Var is variance; γ and β are the scale and shift coefficients, which are obtained from training.


## 3.3. Location Prediction

In order to solve the unstable problem for using the anchor boxes, especially in the process of early iteration, the following procedures are applied to predict the location of boxes:(9)x=tx∗ωa−xa,y=ty∗ha−ya,where (x, y) is the predicted value, (xa, ya) is the coordinates of anchor, (x∗, y∗) is the real coordinates value, (tx, ty) is the offset value, and (wa, ha) is the width and height of the box.Whentx=1, the box is offset a distance equaled the width of the box to the right; if tx=−1 the offset is to the left, so every predicted box can be located at any position on the image, which is the reason why the model is unstable, and the prediction is very time consumable. The prediction box is limited in the grid cell, and sigmoid function is used to calculate the offset value, which is defined between 0-1; the tx, ty, tw, and th can be computed from the following equations:
(10)bx=σtx+cx,by=σty+cybw=pwetwbh=phethIn the above equations, (cx, cy) is the upper left corner coordinates of the grid cell, as shown in Figure 6; when the scale of the grid cell is 1, the center is limited in the internal of the cell by the sigmoid function. The pw and ph are the priori width and height.Figure 6
Bounding box prediction.


## 3.4. Loss Function

In the process of training, the loss function form is a key technique; for the method proposed in this paper, a sum squared error loss is used to balance the errors. For the boxes in different size prediction, the width and height of the bounding box are substituted by the square root value; thus, the smaller box has a relatively large value offset to make the prediction more effective. The loss function can be divided into 2 parts:(11)L1=∑i=0s2∑j=0Blijobjxi−x^i2+yi−y^i2+wi−w^i2+hi−h^i2.L1 is aimed at determining the j-th box in i-th grid cell is in charge for the object or not, which is a coordinate prediction for the loss.
(12)L2=∑i=0s2∑j=0Blijobjci−c^i2+∑i=0s2liobj∑classespic−p^ic2.L2 is the confidence prediction loss of the box with the object. The total loss is the sum of the L1 and L2, which can give a better balance between the coordinates, confidence, and classification.


## 4. Underwater Detection CNN Network

For underwater detection, the commonly used methods are not applicable because of the low-quality vision and the small objects for detection. Our original neutral network is shown in Figure7, the input image is resized into 448∗448∗3, the resized images should be batch normalized (BN), the convolution kernels is 3∗3 and 1∗1, the stride is 1, and the output feature map is 14∗14∗75. In order to solve the phenomenon of gradient dispersion or explosion of the network, the better proposal is to change the layer-by-layer training of deep neural network to step-by-step training. The deep neural network is divided into several subsegments, each subsegment contains shallow network layers, then, short cut is used to make each subsegment train residual, and each subsegment has a total learning error. At the same time, the proposed method can control the propagation of gradient well and avoid the situation of vanishing gradient or exploding gradient, which is not conducive to training.Figure 7
Original object detection network structure.Firstly,3∗3 convolution is used to reduce the number of channels and training parameters; then, convolution kernel of different sizes is used to perform convolution operation; finally, each feature image is combined according to the channel. In order to get more advanced features, the previous way is to increase the depth of the network, and we proposed this network to achieve this goal by increasing the width of the network. The concept module comprehensively considers the results of multiple convolution kernels, different information of the input image and better image representation are obtained. In order to prevent the middle part of the vanishing gradient process of the network structure, we introduced two auxiliary classifiers. Softmax operations are used on the output of two of the perception modules, and then, the auxiliary loss is calculated. Auxiliary loss is only used for training, not for the prediction process.


### 4.1. Network Structure Improvement

For underwater object detection, the vision sensors are installed on the underwater robot. For the real operation, the common method performs not well in small objects detection, because the regular dataset used in the experiment are normal images, which are high-quality and well-lighted images. For underwater detection, the objects are always overlapped by other things, such as rocks and corals, and the underwater vision is always vague, the clarity is low. Under these conditions, the network structure should retain more original features. In deep CNN, the more layers always extract features that are more abstract, and the deep semantic information can be extracted more clearly. On the other hand, the fewer layers can retain more representation information. The deep semantic information and the representation information can be combined to give a more accurate detection. In this paper, the structure is proposed by two schemes, the first one is that a1∗1 convolution kernel is used on the 28∗28 feature map, and then, a downsampling layer is added to resize the output to equal 14∗14, which is combined with the last output to complete the detection; the improvement is shown in Figure 8.Figure 8
The network structure modification scheme 1.Because of the original information loss in convolution operation, in the second scheme, the downsampling is added firstly, and then the convolution layer is inserted in the network, the result is combined with the last output to achieve the detection; the modification is shown in Figure9.Figure 9
The network structure modification scheme 2.There are three full convolution feature extractors, respectively, corresponding to the convolutional set, which is the internal convolution kernel structure of the feature extractor,1∗1 convolution kernel is used for dimensionality reduction, 3∗3 convolution kernel is used for feature extraction, and multiple convolution kernels are interleaved to achieve the purpose. Each full convolution feature layer is connected. The input of the current feature layer has a part of the output from the previous layer. Each feature layer has an output prediction results. Finally, the results are regressed according to the confidence level to get the final prediction results.


### 4.2. Dataset Augmentation

Underwater dataset is difficult to prepare, the underwater images and video are not easy to obtain on the internet, and for underwater images, the background is almost the same in the same area, so the images in the dataset are similar, because of these factors the training output model is always not effective to be used in other sea areas. Therefore, the dataset should be modified and augmented, so as to make the deep learning model more generally used. The dataset augmentation is mainly based on rotation, flipping, zoom, shift, etc.The dataset used in this paper is obtained from the video recorded by an underwater robot. The total number of images is about 18000, and the images are similar with each other, so the rotation and color transformation is applied to transform the original patterns.The three channels of images are dimensionality reduced; theR (Red), G (Green), and B (Blue) direction vectors are obtained, respectively.
(13)Ixy=Rxy,Gxy,BxyThe eigenvalues and eigenvectors ofR, G, and B are defined as
(14)Rxy=prλr,Gxy=pgλgBxy=pbλbα is a random variable with a mean value of 0 and a variance of 0.1, and it is added in the transformation function as follows:
(15)Ixy=pr,pg,pbαrλr,αgλg,αbλbT.The rotation transformation is presented as(16)x′=xicosθ1−yisinθ1,y′=xisinθ1+yicosθ1.where (x’, y’) is the transformed location coordinates, and θ1 is the rotation angle.The shift transformation is given as(17)x′=xi+yitanθ2,y′=xitanθ2+yi.where θ2 is the shift angle.The above three methods are selected randomly to transform the original image, and the total number is augmented to 30000.


## 4.1. Network Structure Improvement

For underwater object detection, the vision sensors are installed on the underwater robot. For the real operation, the common method performs not well in small objects detection, because the regular dataset used in the experiment are normal images, which are high-quality and well-lighted images. For underwater detection, the objects are always overlapped by other things, such as rocks and corals, and the underwater vision is always vague, the clarity is low. Under these conditions, the network structure should retain more original features. In deep CNN, the more layers always extract features that are more abstract, and the deep semantic information can be extracted more clearly. On the other hand, the fewer layers can retain more representation information. The deep semantic information and the representation information can be combined to give a more accurate detection. In this paper, the structure is proposed by two schemes, the first one is that a1∗1 convolution kernel is used on the 28∗28 feature map, and then, a downsampling layer is added to resize the output to equal 14∗14, which is combined with the last output to complete the detection; the improvement is shown in Figure 8.Figure 8
The network structure modification scheme 1.Because of the original information loss in convolution operation, in the second scheme, the downsampling is added firstly, and then the convolution layer is inserted in the network, the result is combined with the last output to achieve the detection; the modification is shown in Figure9.Figure 9
The network structure modification scheme 2.There are three full convolution feature extractors, respectively, corresponding to the convolutional set, which is the internal convolution kernel structure of the feature extractor,1∗1 convolution kernel is used for dimensionality reduction, 3∗3 convolution kernel is used for feature extraction, and multiple convolution kernels are interleaved to achieve the purpose. Each full convolution feature layer is connected. The input of the current feature layer has a part of the output from the previous layer. Each feature layer has an output prediction results. Finally, the results are regressed according to the confidence level to get the final prediction results.


## 4.2. Dataset Augmentation

Underwater dataset is difficult to prepare, the underwater images and video are not easy to obtain on the internet, and for underwater images, the background is almost the same in the same area, so the images in the dataset are similar, because of these factors the training output model is always not effective to be used in other sea areas. Therefore, the dataset should be modified and augmented, so as to make the deep learning model more generally used. The dataset augmentation is mainly based on rotation, flipping, zoom, shift, etc.The dataset used in this paper is obtained from the video recorded by an underwater robot. The total number of images is about 18000, and the images are similar with each other, so the rotation and color transformation is applied to transform the original patterns.The three channels of images are dimensionality reduced; theR (Red), G (Green), and B (Blue) direction vectors are obtained, respectively.
(13)Ixy=Rxy,Gxy,BxyThe eigenvalues and eigenvectors ofR, G, and B are defined as
(14)Rxy=prλr,Gxy=pgλgBxy=pbλbα is a random variable with a mean value of 0 and a variance of 0.1, and it is added in the transformation function as follows:
(15)Ixy=pr,pg,pbαrλr,αgλg,αbλbT.The rotation transformation is presented as(16)x′=xicosθ1−yisinθ1,y′=xisinθ1+yicosθ1.where (x’, y’) is the transformed location coordinates, and θ1 is the rotation angle.The shift transformation is given as(17)x′=xi+yitanθ2,y′=xitanθ2+yi.where θ2 is the shift angle.The above three methods are selected randomly to transform the original image, and the total number is augmented to 30000.


## 5. Experiments Results

The method proposed in this paper is going to be used on an underwater remote operated vehicle (ROV) for fishing marine products. The robot is about 1 m long, 0.8 meters wide, and weighs 90 kg. The method of collecting marine products is adsorption type; the design and real robot are shown in Figure10. The robot is remote operated; our team is going to reconstruct the ROV to semiautonomous, so the key technology is how to detect and locate the objects.Figure 10
Underwater ROV for marine organisms fishing.


### 5.1. Detection Comparison

The GPU used in these computations is NVIDIA GTX 1080ti, and the total number of images is 30000, which are labeled one by one artificially. And in deep learning, 8520 images are used for training, 8530 for validation, and 12950 for test. In object detection, Precision, Recall, and Mean Average Value are commonly used to assess the accuracy; the definition is shown in Figure11.
(18)Precision=TPTP+FP,Recall=TPTP+FNFigure 11
The parameters definition.Mean Average Precision is the mean value of precision of all the detection classes, which is widely used to evaluate the detection system. In this paper, the dataset is prepared in Pascal VOC form, the results obtained from Fast RCNN [6] and Faster RCNN [27] are shown in Figure 12, and the concrete data is shown in (Table 1 and Table 2).Figure 12
mAP results obtained by different methods.
(a)(b)(c)(d)(e)(f)Table 1
mAP and precision of different iteration times by Fast RCNN, Faster RCNN, and YOLO V3. (IoU=0.7).
IterationFast RCNNFaster RCNNYOLO V3mAP (%)Precision (%)mAPPrecision (%)mAP (%)Precision (%)Sea cucumberSea urchinScallopSea cucumberSea urchinScallopSea cucumberSea urchinScallop200027.2630.1326.7924.8727.5330.1827.2925.1335.4337.1435.4233.74400037.5640.5138.2333.9338.7440.8039.3536.0645.9048.1245.5044.08600041.8344.4541.3639.6743.1545.3042.8041.3549.6151.8149.8747.16800045.3748.6745.8541.5946.5948.3547.3544.0852.4054.5653.1449.511000048.2251.3347.8445.5050.2852.0950.7648.0055.8958.1756.9952.501200050.9053.7551.3147.6552.5353.9653.4450.2058.3459.7759.4855.771400053.0955.6954.2049.3854.4356.1854.7852.3160.5863.3960.9157.441600055.0458.8554.9251.3557.3259.6656.9855.3462.0264.0962.5059.471800056.6660.4956.8152.6758.6260.3559.5555.9564.1866.7965.1560.582000058.6362.1258.4955.2760.9362.3061.8658.6366.0068.8766.2062.932200060.4263.9560.6356.6763.0764.3363.9360.9567.2270.3768.0263.262400061.3564.5762.1957.2964.3765.9464.6762.5168.8871.5070.5464.602600063.4066.6063.9459.6566.3868.0767.1763.9070.4472.8571.8366.642800065.0368.8165.3660.9268.1569.9868.6765.8272.0074.7973.1768.033000066.8470.0968.1962.2469.4270.4970.5367.2471.9974.8473.4467.703200067.6870.7368.5363.7870.6872.7871.4767.7972.2474.4773.7868.473400069.2672.6571.0364.1171.7273.9672.1769.0172.1574.6274.0167.813600070.9674.7572.2365.9073.7574.4475.0271.7971.8874.8772.8267.953800071.2574.8371.9866.9574.8076.8375.5372.0371.6974.0572.3768.634000072.8876.4674.0968.0875.7577.5376.1373.5872.7075.5573.7068.834200073.2376.3074.6868.7175.9977.4176.9673.5971.9675.3473.2167.334400073.1376.1974.4968.7074.8677.6573.2673.6771.5774.8372.5967.284600072.8276.0074.9367.5374.4676.1974.3372.8571.8774.5873.4167.614800073.0176.4674.0768.4974.6276.1674.4173.3071.5974.1973.3967.205000072.8476.3574.6967.4874.6476.4073.2674.2571.4474.3272.3267.69The detection results obtained by the methods proposed in this paper are shown in Table1.Table 2
mAP and precision of different iteration times by YOLO v3 and modified methods. (IoU=0.7).
IterationOriginal networkScheme 1Scheme 2mAP (%)Precision (%)mAPPrecision (%)mAPPrecision (%)Sea cucumberSea urchinScallopSea cucumberSea urchinScallopSea cucumberSea urchinScallop200024.9028.8826.4819.3540.2942.2540.2538.3740.7242.2541.2538.65400033.9538.9036.9026.0752.4754.1053.5549.7652.7154.2852.5451.31600040.8540.5737.4544.5457.9460.7658.2554.8157.7359.2458.5155.43800042.5145.5142.3439.6761.6363.4961.9359.4662.2264.6062.2659.791000044.7250.5844.2939.2965.2768.3966.1161.3164.9167.6065.3361.791200049.5348.7548.1151.7468.0471.6467.9564.5367.4969.0468.9864.451400048.3750.3550.5944.1670.5072.8670.7467.8970.4772.6470.3568.411600054.1253.4050.4858.4973.6176.1774.2370.4472.7275.1673.4569.541800052.9559.2955.0844.4875.3878.8474.9972.3174.3276.5175.4071.072000057.3358.0454.5459.4277.2080.8777.0573.6976.8278.9178.0473.512200058.0457.2159.2457.6779.5482.8079.7076.1378.4880.7279.7075.022400055.4462.4459.1444.7581.1885.6180.8077.1480.3782.2882.0376.802600057.8561.9862.5249.0583.0286.3182.7080.0683.3485.4684.4880.072800060.4262.8162.5655.8985.0188.5285.2581.2584.6987.3286.0480.703000059.7467.9161.4749.8585.6089.4485.7881.5886.5489.3387.9282.393200062.3265.7363.5257.7284.9088.0685.5681.0687.6590.1588.5584.253400063.6068.7265.4456.6484.9688.2885.7980.8287.9290.9689.5583.263600064.7072.7665.5555.8085.1388.1185.4281.8787.3489.3688.0884.573800063.7369.7165.5055.9885.6589.4085.3382.2187.9089.6289.2884.794000071.7770.2667.5277.5485.0288.4685.8380.7687.6989.8888.1785.044200067.6271.4669.7861.6385.1289.4784.8980.9987.5890.2787.9984.484400069.2571.8266.4569.4784.7987.9184.4781.9987.5790.5688.0884.084600066.4271.2671.0256.9985.0489.0184.4581.6687.1589.4888.6483.334800066.1970.4666.9661.1585.0588.3785.1081.6687.2189.2788.4283.955000070.3368.8670.3571.7884.5988.7384.7880.2787.4290.6987.6883.91In order to make clear about the convergence of different methods, the mAP values vs. iteration times are shown in Figure13.Figure 13
mAP results and comparison with other methods (%).From the above results and comparison, it can be seen that the detection accuracy of Faster RCNN is better than the other methods, but the difference is not very large. Compared with the original YOLO V3 method [30], the proposed method can give more accurate detection, and the scheme 2 is more effective. The convergence of the methods is different; the YOLO V3 methods convergent after the 28000 iteration times, which is earlier than Fast RCNN and Faster RCNN. After 40000 times iteration, all the methods cannot improve the detection accuracy, the reason is lack of the underwater samples of the dataset, and the images of the dataset are similar, especially the background of the images is the same. This is the main reason for underwater object detection, the underwater data in deep sea is too difficult to obtain.The original network proposed in this paper is not stable; the results fluctuated with the iteration times increasing. The modified schemes are proposed to improve the stability and accuracy, as shown in Figure13. Compared with the other typical methods, our proposed methods can give a more accurate result.The loss function curves are shown in Figure14, the loss values of all of the methods are convergent, and the loss values amplitude of the YOLO V3 methods are smaller compared with Fast RCNN [6] and Faster RCNN [27]; the convergent speed of the proposed methods are slower than the original YOLO V3 method [30].Figure 14
The loss curves of different methods. (a) Fast RCNN. (b) Faster RCNN. (c) YOLO v3. (d) Scheme 1. (e) Scheme 2.
(a)(b)(c)(d)(e)For object detection, the accuracy of all of the above methods are enough for application, the real-time detection is more important, and the detection speed is shown in Table3.Table 3
Detection speed of different methods (IoU=0.7, learningrate=0.001).
ApproachFast RCNNFaster RCNNYOLO V3Scheme 1Scheme 2Time cost (ms)9685202219It is clear that the YOLO V3 [30] methods have a very fast detection speed, almost four times faster than Faster RCNN[27]. Based on the accuracy and detection speed analysis, the scheme 2 is better than the other methods, which has the same accuracy with the Faster RCNN, and the detection speed of this method is around 50FPS, even on a NVIDIA TX2 card, the detection speed can reach 17FPS, it is enough for real application.


### 5.2. Detection Results

The following typical images are used to testify the method (scheme 2) proposed in this paper, the images are provided by the “Underwater Robot Picking Contest”, and some images are filmed by the underwater ROV.The method scheme 2 is better in underwater detection because of retaining more representation information, the comparison is shown in Figure15, (a) and (b) are the same image, and the scheme 2 method can detect the sea cucumber and the sea urchin in the lower-left corner, but the original missed the objects. In (c) and (d), the left sea cucumber is missed by the original YOLO V3 [30] method too, so this method is more effective obviously. And from the image (a) detection, we can see that the sea cucumber covered by the sands in the lower-left corner can be detected too, which is difficult to detect by human vision.Figure 15
The detection comparison between YOLO V3 and the scheme 2 method. (a) Scheme 2. (b) YOLO V3. (c) Scheme 2. (d) YOLO V3.
(a)(b)(c)(d)In order to verify the method, 8 images are chosen in the experiment; the detection results are shown in Figure16.Figure 16
The detection results of scheme 2 method.The training model is applied in the ROV to test the detection effect, the weather is cloudy, and the sea water is very turbid; the real-time detection results are presented in Figure17.Figure 17
The detection applied in the ROV.As seen in Figure15, some of the objects are missed to be detected, the reason is that the dataset is not large enough, especially the images of the dataset are very similar; the light and the background are simple, so when the trained model is used to detect in the other sea area or under different environment conditions, the detection accuracy is going to reduce more or less, so our team is planning to film more underwater images in different sea area and under different conditions to make the dataset more plentiful, so as to achieve the perfect underwater detection.


## 5.1. Detection Comparison

The GPU used in these computations is NVIDIA GTX 1080ti, and the total number of images is 30000, which are labeled one by one artificially. And in deep learning, 8520 images are used for training, 8530 for validation, and 12950 for test. In object detection, Precision, Recall, and Mean Average Value are commonly used to assess the accuracy; the definition is shown in Figure11.
(18)Precision=TPTP+FP,Recall=TPTP+FNFigure 11
The parameters definition.Mean Average Precision is the mean value of precision of all the detection classes, which is widely used to evaluate the detection system. In this paper, the dataset is prepared in Pascal VOC form, the results obtained from Fast RCNN [6] and Faster RCNN [27] are shown in Figure 12, and the concrete data is shown in (Table 1 and Table 2).Figure 12
mAP results obtained by different methods.
(a)(b)(c)(d)(e)(f)Table 1
mAP and precision of different iteration times by Fast RCNN, Faster RCNN, and YOLO V3. (IoU=0.7).
IterationFast RCNNFaster RCNNYOLO V3mAP (%)Precision (%)mAPPrecision (%)mAP (%)Precision (%)Sea cucumberSea urchinScallopSea cucumberSea urchinScallopSea cucumberSea urchinScallop200027.2630.1326.7924.8727.5330.1827.2925.1335.4337.1435.4233.74400037.5640.5138.2333.9338.7440.8039.3536.0645.9048.1245.5044.08600041.8344.4541.3639.6743.1545.3042.8041.3549.6151.8149.8747.16800045.3748.6745.8541.5946.5948.3547.3544.0852.4054.5653.1449.511000048.2251.3347.8445.5050.2852.0950.7648.0055.8958.1756.9952.501200050.9053.7551.3147.6552.5353.9653.4450.2058.3459.7759.4855.771400053.0955.6954.2049.3854.4356.1854.7852.3160.5863.3960.9157.441600055.0458.8554.9251.3557.3259.6656.9855.3462.0264.0962.5059.471800056.6660.4956.8152.6758.6260.3559.5555.9564.1866.7965.1560.582000058.6362.1258.4955.2760.9362.3061.8658.6366.0068.8766.2062.932200060.4263.9560.6356.6763.0764.3363.9360.9567.2270.3768.0263.262400061.3564.5762.1957.2964.3765.9464.6762.5168.8871.5070.5464.602600063.4066.6063.9459.6566.3868.0767.1763.9070.4472.8571.8366.642800065.0368.8165.3660.9268.1569.9868.6765.8272.0074.7973.1768.033000066.8470.0968.1962.2469.4270.4970.5367.2471.9974.8473.4467.703200067.6870.7368.5363.7870.6872.7871.4767.7972.2474.4773.7868.473400069.2672.6571.0364.1171.7273.9672.1769.0172.1574.6274.0167.813600070.9674.7572.2365.9073.7574.4475.0271.7971.8874.8772.8267.953800071.2574.8371.9866.9574.8076.8375.5372.0371.6974.0572.3768.634000072.8876.4674.0968.0875.7577.5376.1373.5872.7075.5573.7068.834200073.2376.3074.6868.7175.9977.4176.9673.5971.9675.3473.2167.334400073.1376.1974.4968.7074.8677.6573.2673.6771.5774.8372.5967.284600072.8276.0074.9367.5374.4676.1974.3372.8571.8774.5873.4167.614800073.0176.4674.0768.4974.6276.1674.4173.3071.5974.1973.3967.205000072.8476.3574.6967.4874.6476.4073.2674.2571.4474.3272.3267.69The detection results obtained by the methods proposed in this paper are shown in Table1.Table 2
mAP and precision of different iteration times by YOLO v3 and modified methods. (IoU=0.7).
IterationOriginal networkScheme 1Scheme 2mAP (%)Precision (%)mAPPrecision (%)mAPPrecision (%)Sea cucumberSea urchinScallopSea cucumberSea urchinScallopSea cucumberSea urchinScallop200024.9028.8826.4819.3540.2942.2540.2538.3740.7242.2541.2538.65400033.9538.9036.9026.0752.4754.1053.5549.7652.7154.2852.5451.31600040.8540.5737.4544.5457.9460.7658.2554.8157.7359.2458.5155.43800042.5145.5142.3439.6761.6363.4961.9359.4662.2264.6062.2659.791000044.7250.5844.2939.2965.2768.3966.1161.3164.9167.6065.3361.791200049.5348.7548.1151.7468.0471.6467.9564.5367.4969.0468.9864.451400048.3750.3550.5944.1670.5072.8670.7467.8970.4772.6470.3568.411600054.1253.4050.4858.4973.6176.1774.2370.4472.7275.1673.4569.541800052.9559.2955.0844.4875.3878.8474.9972.3174.3276.5175.4071.072000057.3358.0454.5459.4277.2080.8777.0573.6976.8278.9178.0473.512200058.0457.2159.2457.6779.5482.8079.7076.1378.4880.7279.7075.022400055.4462.4459.1444.7581.1885.6180.8077.1480.3782.2882.0376.802600057.8561.9862.5249.0583.0286.3182.7080.0683.3485.4684.4880.072800060.4262.8162.5655.8985.0188.5285.2581.2584.6987.3286.0480.703000059.7467.9161.4749.8585.6089.4485.7881.5886.5489.3387.9282.393200062.3265.7363.5257.7284.9088.0685.5681.0687.6590.1588.5584.253400063.6068.7265.4456.6484.9688.2885.7980.8287.9290.9689.5583.263600064.7072.7665.5555.8085.1388.1185.4281.8787.3489.3688.0884.573800063.7369.7165.5055.9885.6589.4085.3382.2187.9089.6289.2884.794000071.7770.2667.5277.5485.0288.4685.8380.7687.6989.8888.1785.044200067.6271.4669.7861.6385.1289.4784.8980.9987.5890.2787.9984.484400069.2571.8266.4569.4784.7987.9184.4781.9987.5790.5688.0884.084600066.4271.2671.0256.9985.0489.0184.4581.6687.1589.4888.6483.334800066.1970.4666.9661.1585.0588.3785.1081.6687.2189.2788.4283.955000070.3368.8670.3571.7884.5988.7384.7880.2787.4290.6987.6883.91In order to make clear about the convergence of different methods, the mAP values vs. iteration times are shown in Figure13.Figure 13
mAP results and comparison with other methods (%).From the above results and comparison, it can be seen that the detection accuracy of Faster RCNN is better than the other methods, but the difference is not very large. Compared with the original YOLO V3 method [30], the proposed method can give more accurate detection, and the scheme 2 is more effective. The convergence of the methods is different; the YOLO V3 methods convergent after the 28000 iteration times, which is earlier than Fast RCNN and Faster RCNN. After 40000 times iteration, all the methods cannot improve the detection accuracy, the reason is lack of the underwater samples of the dataset, and the images of the dataset are similar, especially the background of the images is the same. This is the main reason for underwater object detection, the underwater data in deep sea is too difficult to obtain.The original network proposed in this paper is not stable; the results fluctuated with the iteration times increasing. The modified schemes are proposed to improve the stability and accuracy, as shown in Figure13. Compared with the other typical methods, our proposed methods can give a more accurate result.The loss function curves are shown in Figure14, the loss values of all of the methods are convergent, and the loss values amplitude of the YOLO V3 methods are smaller compared with Fast RCNN [6] and Faster RCNN [27]; the convergent speed of the proposed methods are slower than the original YOLO V3 method [30].Figure 14
The loss curves of different methods. (a) Fast RCNN. (b) Faster RCNN. (c) YOLO v3. (d) Scheme 1. (e) Scheme 2.
(a)(b)(c)(d)(e)For object detection, the accuracy of all of the above methods are enough for application, the real-time detection is more important, and the detection speed is shown in Table3.Table 3
Detection speed of different methods (IoU=0.7, learningrate=0.001).
ApproachFast RCNNFaster RCNNYOLO V3Scheme 1Scheme 2Time cost (ms)9685202219It is clear that the YOLO V3 [30] methods have a very fast detection speed, almost four times faster than Faster RCNN[27]. Based on the accuracy and detection speed analysis, the scheme 2 is better than the other methods, which has the same accuracy with the Faster RCNN, and the detection speed of this method is around 50FPS, even on a NVIDIA TX2 card, the detection speed can reach 17FPS, it is enough for real application.


## 5.2. Detection Results

The following typical images are used to testify the method (scheme 2) proposed in this paper, the images are provided by the “Underwater Robot Picking Contest”, and some images are filmed by the underwater ROV.The method scheme 2 is better in underwater detection because of retaining more representation information, the comparison is shown in Figure15, (a) and (b) are the same image, and the scheme 2 method can detect the sea cucumber and the sea urchin in the lower-left corner, but the original missed the objects. In (c) and (d), the left sea cucumber is missed by the original YOLO V3 [30] method too, so this method is more effective obviously. And from the image (a) detection, we can see that the sea cucumber covered by the sands in the lower-left corner can be detected too, which is difficult to detect by human vision.Figure 15
The detection comparison between YOLO V3 and the scheme 2 method. (a) Scheme 2. (b) YOLO V3. (c) Scheme 2. (d) YOLO V3.
(a)(b)(c)(d)In order to verify the method, 8 images are chosen in the experiment; the detection results are shown in Figure16.Figure 16
The detection results of scheme 2 method.The training model is applied in the ROV to test the detection effect, the weather is cloudy, and the sea water is very turbid; the real-time detection results are presented in Figure17.Figure 17
The detection applied in the ROV.As seen in Figure15, some of the objects are missed to be detected, the reason is that the dataset is not large enough, especially the images of the dataset are very similar; the light and the background are simple, so when the trained model is used to detect in the other sea area or under different environment conditions, the detection accuracy is going to reduce more or less, so our team is planning to film more underwater images in different sea area and under different conditions to make the dataset more plentiful, so as to achieve the perfect underwater detection.


## 6. Conclusion

Considering the underwater vision characteristics, some new image processing procedures are proposed to deal with the low contrast and the weakly illuminated problems. A deep CNN method is proposed to achieve the detection and classification of marine organisms, which is commonly recognized as the fastest object detection method. The underwater vision is in low quality, and the objects are always overlapped and shaded, so the original YOLO V3 [30] method is not very effective for underwater detection; two methods are proposed to deal with these problems. Through detection results comparison with the other methods, the scheme 2 can give a better detection. The trained model is used to assist the ROV to detect underwater objects; although some of the objects are missed, the effectiveness and capability of the proposed method are obviously verified by the qualitative and quantitative evaluation results. The proposed method is suitable for our underwater robot to detect the objects, which is not better than the typical methods for the other dataset. And dropout layers and other technologies are not significant in this model; the reconstruction of the network by using a more complicated algorithm would be more effective.



---

*Source: 6707328-2020-05-22.xml*