Improved DeepLabCut for fish trajectory extraction
A modified DeepLabCut method is proposed to address the problem of existing fish trajectory extraction methods that cannot simultaneously balance efficiency and accuracy.Firstly,the lightweight convolutional neural network model EfficientNet-B0 is chosen as the backbone model of DeepLabCut for extracting key points on the back of fish.To enhance the representation capability of EfficientNet-B0,an improved Convolutional Block Attention Module(CBAM)is introduced into the network model.The spatial and channel attention modules in CBAM are connected in parallel instead of the original sequential connection to solve the mutual interference problem caused by the sequential connection between the two attention modules.Secondly,a segmented loss function H_MSE based on Mean Squared Error(MSE)is proposed for model training.The segmented loss function H_MSE exhibits strong robustness compared to traditional loss functions,showing lower sensitivity when handling outliers in the data.Finally,a semi-supervised learning approach is adopted to automatically label the key points,reducing errors caused by manual labeling.The results show that compared to the original DeepLabCut algorithm,the average root mean squared error(RMSE)of recognition is reduced by 4.5 pixels.Compared to object detection algorithms such as Faster RCNN,SK-YOLOv5,ESB-YOLO,and YOLOv8-Head-ECAM,the average RMSE recognition error is reduced by 11.5 pixels.The detection performance is superior to other object detection networks and the original network,with an average detection time of 0.062 s per image.It can quickly and accurately extract the swimming trajectories of fish in the fish passage,providing an important basis for optimizing the hydraulic design indicators of the fish passage.
fish recognitiontrajectory recognitionkeypoint recognitionDeepLabCutsemi-supervised learningloss functionattention mechanism