| China is a big maritime country with a long coastline.In recent years,some countries in and outside the South China Sea have continued to create troubles in the waters adjacent to China,seriously violating our sovereignty and destroying the hard-won peace and stability in the region.At the same time,the long coastline poses a great challenge to combating illegal activities at sea and conducting maritime security search.Therefore,the development of marine ship detection technology is of great significance for safeguarding the territorial integrity of our country,combating maritime criminal activities,and safeguarding the lives and property of the people.Compared with the traditional object detection method,the object detection method based on convolutional neural network has the characteristics of easy feature extraction,strong versatility and high detection accuracy.In this paper,the ship detection method based on convolutional neural network is studied.The main research work is as follows:(1)Because the neural network has a high dependence on the dataset,in order to solve the problem of fewer ship targets in open source datasets,this paper collects and labels 13,267 ship images of 6 categories,which provide important support for the follow-up study of this paper.This paper trains the YOLOv3 network based on these datasets.During the training process,we explore the effects of strategies such as data augmentation,batch normalization and the preset anchors generated by k-means clustering algorithm on the model accuracy.The experimental results show that these strategies improve the detection accuracy of the model in varying degrees.Aiming at the problem that the small ship is difficult to detect in object detection algorithm,a YOLOv3-Dense network is used by replacing the residual block with the dense block in the YOLOv3 network.This paper compares the changes of YOLOv3-Dense network and YOLOv3 network in detection accuracy,especially small target detection effect.The experimental results prove that YOLOv3-Dense network is better than YOLOv3 network.(2)For the problem of slow forward inference of convolutional neural network on the CPU,the acceleration of convolutional neural network based on GPU and FPGA is studied respectively.On the GPU platform,the network is implemented by three ways: the optimized matrix multiplication based on shared memory,the cu BLAS library and the cu DNN library.The comparison results show that the three GPU implementations are faster than CPU implementation.On the FPGA platform,a partial convolutional neural network is proposed for the characteristics of 3×3 convolution,and the SDSo C development tool is used to simplify the design of CNN Accelerator IP.The experimental results show that the speed of the convolution layer implemented by FPGA is about five times faster than that implemented by the ARM CPU.(3)Under sea fog weather conditions,the effect of object detection will be greatly affected.Therefore,this paper studies the dehaze algorithm based on dark channel prior.Aiming at the problem that the algorithm is prone to color distortion in bright areas such sky,an improved algorithm based on tolerance is adopted to dehaze foggy ship images.The experimental results show that the detection effect of ship after haze removal is better than that before haze removal.At the same time,for the problem that the dehaze algorithm has a large amount of computation and the CPU is slow,this paper studies the GPU acceleration based on the shared memory and reduce algorithm.The experimental results show that the speed of dehaze algorithm in GPU is 13 times faster than in CPU,and the real-time processing can be achieved. |