error_ Microsoft Visual C++ 14.0 or greater is required. Get it with “Microsoft C++ Build Tools“_ h

Detailed errors

Encountered when installing MMCV.

 copying mmcv\ops\csrc\pytorch\mlu\roi_pool_mlu.cpp -> build\lib.win-amd64-3.11\mmcv\ops\csrc\pytorch\mlu
      copying mmcv\ops\csrc\pytorch\mlu\roiaware_pool3d_mlu.cpp -> build\lib.win-amd64-3.11\mmcv\ops\csrc\pytorch\mlu
      copying mmcv\ops\csrc\pytorch\mlu\roipoint_pool3d_mlu.cpp -> build\lib.win-amd64-3.11\mmcv\ops\csrc\pytorch\mlu
      copying mmcv\ops\csrc\pytorch\mlu\three_nn_mlu.cpp -> build\lib.win-amd64-3.11\mmcv\ops\csrc\pytorch\mlu
      copying mmcv\ops\csrc\pytorch\mlu\tin_shift_mlu.cpp -> build\lib.win-amd64-3.11\mmcv\ops\csrc\pytorch\mlu
      creating build\lib.win-amd64-3.11\mmcv\ops\csrc\pytorch\mps
      copying mmcv\ops\csrc\pytorch\mps\bbox_overlaps_mps.mm -> build\lib.win-amd64-3.11\mmcv\ops\csrc\pytorch\mps
      running build_ext
      D:\ProgramData\anaconda3\Lib\site-packages\torch\utils\cpp_extension.py:359: UserWarning: Error checking compiler version for cl: [WinError 2] The system cannot find the instruction
specified documents.
        warnings.warn(f'Error checking compiler version for {compiler}: {error}')
      error: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools
/
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for mmcv
  Running setup.py clean for mmcv
Failed to build mmcv
ERROR: Could not build wheels for mmcv, which is required to install pyproject.toml-based projects

Solution

Click the link: https://visualstudio.microsoft.com/zh-hans/visual-cpp-build-tools/

Download the build tool. After the download is completed, run it directly. When you see the following screen, select C++ Desktop Development and select Default on the right.


Then, click Install! Restart after installation is complete!

Compile MMCV again, OK!

Article directory

  • detailed error
  • Solution
  • Summary
  • YoloV8 improvement strategy: FasterViT based on hierarchical attention allows YoloV8 to achieve a performance leap
  • YoloV8 improvement strategy: InceptionNext trunk replaces the trunk of YoloV8 and YoloV5
  • YoloV8 improvement strategy: lightweight CloFormer helps Yolov8 achieve both speed and accuracy improvements
  • YoloV8 improvement strategy: The perfect combination of InceptionNeXt and YoloV8 makes YoloV8 shine
  • YoloV8 improvement strategy: The newly released EMA attention mechanism helps YoloV8 become more powerful
  • YoloV8 improvement strategy: VanillaNet minimalist network, greatly reducing the parameters of YoloV8
  • YoloV8 improvement strategy: RFAConv module is plug-and-play to achieve smooth score improvement in YoloV8
  • YoloV8 improvement strategy: Let SeaFormer enter Yolov8’s vision, the lightweight and efficient attention module shows unparalleled charm
  • YoloV8 improvement strategy: Apply DCN v1 and v2 to YoloV8 and transform into a top scorer
  • YoloV8 improvement strategy: Visual Transformer based on dual-layer routing attention improves YoloV8’s detection capabilities
  • YoloV8 improvement strategy: Lion, the latest optimizer from Google, has been improved in both speed and accuracy. Adam said that young people do not respect martial ethics
  • YoloV8 improvement strategy: Deep integration of Conv2Former and YoloV8, minimalist network, extremely high performance
  • YoloV8 improvement strategy: What kind of sparks can emerge from the passionate collision of ConvNextV2 and YoloV8?
  • YoloV8 improvement strategy: replace CIoU with Wise-IoU, which will increase happiness and is worth having. It also supports seamless replacement of EIoU, GIoU, DIoU, and SIoU.
  • YoloV8 improvement strategy: increase branches and reduce missed detections
  • YoloV8 improvement strategy: Deeply integrate FasterNet and YoloV8 to create a faster and stronger detection network
  • Detailed explanation and actual combat of Yolov8 network (with data set)

Abstract

This column explains how to improve Yolov8. The improved method adopts the method mentioned in the latest paper. Improvement methods include: adding attention mechanism, replacing convolution, replacing block, replacing backbone, replacing head, replacing optimizer, etc.; each article provides one to N improvement methods.

The data set used for evaluation is a data set marked by myself, which contains 32 types of aircraft. I have evaluated each improvement method and compared it with the official model.

After I verify that the code and PDF version of the article are correct, I will upload them to Baidu Cloud Disk for everyone to download and use.

In this column, we strive for quality rather than quantity, and strive to do our best to create a high-quality column! ! !

Thank you for your support! ! !

YoloV8 improvement strategy: FasterViT based on hierarchical attention allows YoloV8 to achieve a performance leap

YoloV8 improvement strategy: FasterViT based on hierarchical attention allows YoloV8 to achieve a performance leap
This article shows you how to use FasterViT to improve YoloV8. I tried several methods and selected three better methods to recommend to you.
FasterViT combines the advantages of CNN’s fast local representation learning and ViT’s global modeling characteristics. The newly proposed hierarchical attention (HAT) method decomposes global self-attention with quadratic complexity into multi-level attention with reduced computational cost. We benefit from efficient window-based self-focus. Each window has access to dedicated carrier tokens that participate in local and global representation learning. At a high level, global self-attention enables efficient cross-window communication at low cost. FasterViT reaches SOTA Pareto-front in terms of accuracy and image throughput.

YoloV8 improvement strategy: InceptionNext backbone replaces the backbone of YoloV8 and YoloV5

YoloV8 improvement strategy: InceptionNext trunk replaces the trunk of YoloV8 and YoloV5

This article mainly explains how to use the InceptionNext backbone network to replace the backbone of YoloV8 and YoloV5. Changed the InceptionNext network structure and the architecture of Yolov5 and YoloV8.

YoloV8 improvement strategy: lightweight CloFormer helps Yolov8 improve both speed and accuracy

YoloV8 improvement strategy: lightweight CloFormer helps Yolov8 achieve both speed and accuracy improvements

CloFormer is a lightweight backbone network published by Tsinghua University this year, which introduces AttnConv, an attention-style convolution operator. The proposed AttnConv uses shared weights to aggregate local information and configures carefully designed context-aware weights to enhance local features. The combination of AttnConv and ordinary attention uses pooling to reduce FLOPs in CloFormer, enabling the model to perceive high- and low-frequency information.

YoloV8 improvement strategy: The perfect combination of InceptionNeXt and YoloV8 makes YoloV8 shine

YoloV8 improvement strategy: The perfect combination of InceptionNeXt and YoloV8 makes YoloV8 shine

InceptionNeXt is a paper released by Yan Shuicheng’s team this year, which integrates the ideas of ConvNext and Inception, namely IncepitonNeXt. InceptionNeXt-T achieves 1.6x higher training throughput than convnext-t and achieves a 0.2% top-1 accuracy improvement on ImageNet-1K.

YoloV8 improvement strategy: The newly released EMA attention mechanism makes YoloV8 more powerful

YoloV8 improvement strategy: The newly released EMA attention mechanism helps YoloV8 become more powerful

The EMA attention mechanism is a new and efficient multi-scale attention module this year. With the goal of retaining information on each channel and reducing computational overhead, some channels are reshaped into batch dimensions, and the channel dimensions are grouped into multiple sub-features so that spatial semantic features are evenly distributed in each feature group. Specifically, in addition to encoding global information to recalibrate the channel weights in each parallel branch, the output features of the two parallel branches are further aggregated through cross-dimensional interactions to capture pixel-level pairwise relationships.

YoloV8 improvement strategy: VanillaNet minimalist network, greatly reducing the parameters of YoloV8

YoloV8 improvement strategy: VanillaNet minimalist network, greatly reducing the parameters of YoloV8

VanillaNet, a neural network architecture with elegant design. By avoiding high depth, shotcuts, and complex operations like autonomous power, VanillaNet is refreshingly simple, yet extremely powerful. Each layer is crafted to be compact and straightforward, and nonlinear activation functions are pruned after training to restore the original structure. VanillaNet overcomes the challenges of inherent complexity, making it ideal for resource-constrained environments. Its easy-to-understand and highly simplified architecture opens new possibilities for efficient deployment. Extensive experiments show that VanillaNet delivers performance comparable to well-known deep neural networks and visual transformers, demonstrating the power of minimalism in deep learning. This visionary journey of VanillaNet has great potential to redefine the landscape and challenge the status quo of underlying models, opening a new path for elegant and effective model design.

YoloV8 improvement strategy: RFAConv module is plug-and-play to achieve smooth score improvement in YoloV8

YoloV8 improvement strategy: RFAConv module is plug-and-play to achieve smooth score improvement in YoloV8
RFAConv is a new attention mechanism called receptive field attention (RFA). The convolutional block attention module (CBAM) and coordinated attention module (CA) only focus on spatial features and cannot completely solve the problem of convolution kernel parameter sharing. However, in RFA, the receptive field spatial features are not only concentrated, but also large-sized volumes. The accumulation kernel provides good attention weighting. The receptive field attention convolution operation (RFAConv) designed by RFA can be considered as a new method to replace standard convolution, and the computational cost and many parameters it brings are almost negligible. Since the author did not open source it, I reproduced a version myself and tried to add it to the YoloV8 network.

YoloV8 improvement strategy: Let SeaFormer come into Yolov8’s field of vision, and the lightweight and efficient attention module shows unparalleled charm

YoloV8 improvement strategy: Let SeaFormer enter Yolov8’s vision, the lightweight and efficient attention module shows unparalleled charm

SeaFormer designed a general attention block using compression axis and detail enhancement methods. It can further be used to create a range of backbone architectures with superior cost effectiveness. Coupled with a light segmentation head, we achieve the best trade-off between segmentation accuracy and latency on ADE20K and cityscape datasets on ARM-based mobile devices. Crucially, we beat mobile-friendly competitors and transformer-based opponents with better performance and lower latency, without the bells and whistles.

YoloV8 improvement strategy: Apply DCN v1 and v2 to YoloV8 and transform into a top scorer

YoloV8 improvement strategy: Apply DCN v1 and v2 to YoloV8 and transform into a top scorer

Try using DCNv1 and DCNv2 instead of ordinary convolution!

YoloV8 improvement strategy: Visual Transformer based on dual-layer routing attention improves YoloV8’s detection capabilities

YoloV8 improvement strategy: Visual Transformer based on dual-layer routing attention improves YoloV8’s detection capabilities
Dual-layer routing attention enables more flexible computation allocation with content awareness. Exploit sparsity to save computation and memory while only involving dense matrix multiplications suitable for GPUs. A new general-purpose visual transformer, called BiFormer, is built with the proposed dual-layer routing attention.

YoloV8 improvement strategy: Lion, the latest optimizer from Google, has been improved in both speed and accuracy. Adam said that young people do not respect martial ethics

YoloV8 improvement strategy: Lion, the latest optimizer from Google, has been improved in both speed and accuracy. Adam said that young people do not respect martial ethics

Lion improves ViT’s accuracy on ImageNet by 2% and saves up to 5x pre-training computation on JFT. In terms of visual-language contrastive learning, it achieved 88.3% zero-shot and 91.1% fine-tuning accuracy on ImageNet, exceeding the previous best results by 2% and 0.1% respectively. On the diffusion model, Lion surpasses Adam by obtaining better FID scores and reducing training computation by 2.3 times. Lion shows similar or better performance than Adam in terms of autoregression, masked language modeling and fine-tuning. Analysis of Lion shows that its performance gains grow with training batch size. Since the symbolic function produces a larger update norm, it also requires a smaller learning rate than Adam.

YoloV8 improvement strategy: Deep integration of Conv2Former and YoloV8, minimalist network, extremely high performance

YoloV8 improvement strategy: Deep integration of Conv2Former and YoloV8, minimalist network, extremely high performance
Conv2Former is further optimized based on ConvNeXt, and its performance has been improved.

YoloV8 improvement strategy: What kind of sparks can emerge from the passionate collision of ConvNextV2 and YoloV8?

YoloV8 improvement strategy: What kind of sparks can emerge from the passionate collision of ConvNextV2 and YoloV8?

ConvNextV2 incorporates a fully convolutional masked autoencoder framework and a new global response normalization (GRN) layer that can be added to the ConvNeXt architecture to enhance feature competition between channels. It significantly improves pure ConvNets in various Performance on recognition benchmarks including ImageNet classification, COCO detection, and ADE20K segmentation.

YoloV8 improvement strategy: replace CIoU with Wise-IoU, which is worth having. It also supports seamless replacement of EIoU, GIoU, DIoU, and SIoU.

YoloV8 improvement strategy: replace CIoU with Wise-IoU, which will increase happiness and is worth having. It also supports seamless replacement of EIoU, GIoU, DIoU, and SIoU.
This article describes how to use Wise-IoU to increase points in yolov8. First of all, I translated the paper to let everyone understand what Wise IoU is and the three versions of Wise IoU. Next, we will explain how to add Wise IoU in yolov8.

YoloV8 improvement strategy: increase branches and reduce missed detections

YoloV8 improvement strategy: increase branches and reduce missed detections

Improve the detection of small targets by adding a branch

YoloV8 improvement strategy: Deeply integrate FasterNet and YoloV8 to create a faster and stronger detection network

YoloV8 improvement strategy: Deeply integrate FasterNet and YoloV8 to create a faster and stronger detection network
fastternet, a new family of neural networks that achieves higher operating speeds than other networks on a variety of devices without affecting the accuracy of various visual tasks.

Detailed explanation and actual combat of Yolov8 network (with data set)

Detailed explanation and actual combat of Yolov8 network (with data set)