基于轻量级ShuffleNetv2+YOLOv5的DIC-C2DH-HeLa细胞检测识别分析系统

ShuffleNetv2可以说是目前轻量级网络模型中的翘楚,将ShuffleNetv2于yolov5整合开发可以使得模型更加轻量化,在提升模型速度的同时保证有效的精度。

本文的主要工作就是将ShuffleNetv2整合进yolov5中来开发构建细胞检测模型,首先看下效果图:

这里是基于yolov5s进行改进融合的,改进后的yaml文件如下所示:

# parameters
nc: 1
depth_multiple: 0.33
width_multiple: 0.50


#Anchors
anchors:
  - [10,13, 16,30, 33,23]  
  - [30,61, 62,45, 59,119]  
  - [116,90, 156,198, 373,326]  


#Backbone
backbone:
  # [from, number, module, args]
  [[-1, 1, conv_bn_relu_maxpool, [32]],    
   [-1, 1, ShuffleBlock, [116, 2]], 
   [-1, 3, ShuffleBlock, [116, 1]], 
   [-1, 1, ShuffleBlock, [232, 2]], 
   [-1, 7, ShuffleBlock, [232, 1]], 
   [-1, 1, ShuffleBlock, [464, 2]], 
   [-1, 1, ShuffleBlock, [464, 1]], 
  ]


#Head
head:
  [[-1, 1, Conv, [96, 1, 1]],
   [-1, 1, nn.Upsample, [None, 2, 'nearest']],
   [[ -1, 4 ], 1, Concat, [1]],  
   [-1, 1, DWConv, [96, 3, 1]],  
   [-1, 1, Conv, [96, 1, 1 ]],
   [-1, 1, nn.Upsample, [None, 2, 'nearest']],
   [[-1, 2], 1, Concat, [1]],  
   [-1, 1, DWConv, [96, 3, 1]], 
   [-1, 1, DWConv, [96, 3, 2]],
   [[-1, 11], 1, ADD, [1]], 
   [-1, 1, DWConv, [96, 3, 1]], 
   [-1, 1, DWConv, [ 96, 3, 2]],
   [[-1, 7], 1, ADD, [1]],  
   [-1, 1, DWConv, [96, 3, 1]],
   [[14, 17, 20], 1, Detect, [nc, anchors]], 
  ]

这里的改进主要体现在两部分结合ShuffleNet的网络思想来的,首先是BackBone部分,如下:

基于轻量级ShuffleNetv2+YOLOv5的DIC-C2DH-HeLa细胞检测识别分析系统_第1张图片

直接使用了ShuffleBlock来替换原有的C3和Conv模块了。

之后是head部分,如下所示:

基于轻量级ShuffleNetv2+YOLOv5的DIC-C2DH-HeLa细胞检测识别分析系统_第2张图片

这部分主要是深度可分离卷积的使用了,进一步降低参数量的高效tricks。

接下来看下数据集:

基于轻量级ShuffleNetv2+YOLOv5的DIC-C2DH-HeLa细胞检测识别分析系统_第3张图片

VOC格式标注数据如下所示:

基于轻量级ShuffleNetv2+YOLOv5的DIC-C2DH-HeLa细胞检测识别分析系统_第4张图片

实例标注内容如下:


    Hela
    images/0edad713-0236-48ce-ba10-f6a5cc8a5194.jpg
    
        The Hela Database
        Hela
        Hela
    
    
        YSHC
        
    
        512
        512
        3
    
    0
    
            
        cell
        Unspecified
        0
        0
        
            251
            0
            384
            76
        
    
    
            
        cell
        Unspecified
        0
        0
        
            313
            67
            482
            159
        
    
    
            
        cell
        Unspecified
        0
        0
        
            145
            98
            243
            242
        
    
    
            
        cell
        Unspecified
        0
        0
        
            251
            103
            400
            226
        
    
    
            
        cell
        Unspecified
        0
        0
        
            31
            157
            140
            281
        
    
    
            
        cell
        Unspecified
        0
        0
        
            221
            218
            351
            327
        
    
    
            
        cell
        Unspecified
        0
        0
        
            347
            254
            498
            360
        
    
    
            
        cell
        Unspecified
        0
        0
        
            117
            261
            221
            360
        
    
    
            
        cell
        Unspecified
        0
        0
        
            12
            282
            104
            390
        
    
    
            
        cell
        Unspecified
        0
        0
        
            62
            354
            182
            464
        
    
    
            
        cell
        Unspecified
        0
        0
        
            216
            357
            358
            444
        
    
    
            
        cell
        Unspecified
        0
        0
        
            80
            437
            221
            512
        
    
    

YOLO格式标注数据如下所示:

基于轻量级ShuffleNetv2+YOLOv5的DIC-C2DH-HeLa细胞检测识别分析系统_第5张图片

样例标注数据如下所示:

0 0.541016 0.077148 0.238281 0.154297
0 0.949219 0.131836 0.101562 0.189453
0 0.617188 0.227539 0.257812 0.162109
0 0.339844 0.390625 0.316406 0.21875
0 0.630859 0.397461 0.277344 0.193359
0 0.634766 0.599609 0.210938 0.269531
0 0.829102 0.571289 0.248047 0.208984
0 0.34668 0.592773 0.341797 0.228516
0 0.175781 0.71582 0.214844 0.349609
0 0.37793 0.802734 0.205078 0.1875

接下来就可以启动模型训练了,日志输出如下所示:

基于轻量级ShuffleNetv2+YOLOv5的DIC-C2DH-HeLa细胞检测识别分析系统_第6张图片
基于轻量级ShuffleNetv2+YOLOv5的DIC-C2DH-HeLa细胞检测识别分析系统_第7张图片

接下来看下结果详情。

LABEL数据可视化:

基于轻量级ShuffleNetv2+YOLOv5的DIC-C2DH-HeLa细胞检测识别分析系统_第8张图片

训练batch检测样例:

F1值曲线和PR曲线 :

基于轻量级ShuffleNetv2+YOLOv5的DIC-C2DH-HeLa细胞检测识别分析系统_第9张图片

最后基于专用的界面实现可视化推理应用。

基于轻量级ShuffleNetv2+YOLOv5的DIC-C2DH-HeLa细胞检测识别分析系统_第10张图片

上传图像:

基于轻量级ShuffleNetv2+YOLOv5的DIC-C2DH-HeLa细胞检测识别分析系统_第11张图片

检测推理计算:

基于轻量级ShuffleNetv2+YOLOv5的DIC-C2DH-HeLa细胞检测识别分析系统_第12张图片
基于轻量级ShuffleNetv2+YOLOv5的DIC-C2DH-HeLa细胞检测识别分析系统_第13张图片

你可能感兴趣的:(深度学习,机器学习,人工智能,深度学习)