Ultralytics:解读SCDown模块
Ultralytics解读SCDown模块前言相关介绍Ultralytics 简介前提条件实验环境SCDown可分离卷积下采样模块代码实现功能初始化参数前向方法使用示例流程示意图代码解读注意事项优缺点优点缺点参考文献前言由于本人水平有限难免出现错漏敬请批评改正。更多精彩内容可点击进入Python日常小操作专栏、OpenCV-Python小应用专栏、YOLO系列专栏、自然语言处理专栏、人工智能混合编程实践专栏或我的个人主页查看YOLOs-CPP一个免费开源的YOLO全系列C推理库以YOLO26为例PaddleOCRWin10上安装使用PPOCRLabel标注工具目标检测使用自己的数据集微调DEIMv2进行物体检测图像分割PyTorch从零开始实现SegFormer语义分割图像超分使用自己的数据集微调Real-ESRGAN-x4plus进行超分重建图像生成PyTorch从零开始实现一个简单的扩散模型Stable Diffusion使用自己的数据集微调 Stable Diffusion 3.5 LoRA 文生图模型图像超分使用自己的数据集微调Real-ESRGAN-x2plus进行超分重建Anomalib使用Anomalib 2.1.0训练自己的数据集进行异常检测Anomalib在Linux服务器上安装使用Anomalib 2.1.0人工智能混合编程实践C调用封装好的DLL进行异常检测推理人工智能混合编程实践C调用封装好的DLL进行FP16图像超分重建v3.0隔离系统Python源码编译3.11.8到自定义目录含PGO性能优化在线机的Python环境迁移到离线机上Nuitka 将 Python 脚本封装为 .pyd 或 .so 文件Ultralytics使用 YOLO11 进行速度估计Ultralytics使用 YOLO11 进行物体追踪Ultralytics使用 YOLO11 进行物体计数Ultralytics使用 YOLO11 进行目标打码人工智能混合编程实践C调用Python ONNX进行YOLOv8推理人工智能混合编程实践C调用封装好的DLL进行YOLOv8实例分割人工智能混合编程实践C调用Python ONNX进行图像超分重建人工智能混合编程实践C调用Python AgentOCR进行文本识别通过计算实例简单地理解PatchCore异常检测Python将YOLO格式实例分割数据集转换为COCO格式实例分割数据集YOLOv8 Ultralytics使用Ultralytics框架训练RT-DETR实时目标检测模型基于DETR的人脸伪装检测YOLOv7训练自己的数据集口罩检测YOLOv8训练自己的数据集足球检测YOLOv5TensorRT加速YOLOv5模型推理YOLOv5IoU、GIoU、DIoU、CIoU、EIoU玩转Jetson Nano五TensorRT加速YOLOv5目标检测YOLOv5添加SE、CBAM、CoordAtt、ECA注意力机制YOLOv5yolov5s.yaml配置文件解读、增加小目标检测层Python将COCO格式实例分割数据集转换为YOLO格式实例分割数据集YOLOv5使用7.0版本训练自己的实例分割模型车辆、行人、路标、车道线等实例分割使用Kaggle GPU资源免费体验Stable Diffusion开源项目Stable Diffusion在服务器上部署使用Stable Diffusion WebUI进行AI绘图v2.0Stable Diffusion使用自己的数据集微调训练LoRA模型v2.0相关介绍Ultralytics 简介Ultralytics 基于多年的计算机视觉和人工智能基础研究创建了最先进的 (SOTA) YOLO 模型。我们的模型不断更新性能和灵活性快速、准确且易于使用。他们擅长对象检测、跟踪、实例分割、语义分割、图像分类和姿势估计任务。官方文档https://docs.ultralytics.com/官方代码https://github.com/ultralytics/ultralytics.git前提条件熟悉Python、Pytorch实验环境Package Version ------------------------ ------------ Python3.11.8 absl-py2.4.0 accelerate1.13.0 annotated-doc0.0.4 anyio4.13.0 calflops0.3.2 certifi2026.4.22 charset-normalizer3.4.7 click8.3.3 colorama0.4.6 contourpy1.3.3 cycler0.12.1 filelock3.29.0 flatbuffers25.12.19 fonttools4.62.1 fsspec2026.4.0 grpcio1.80.0 h110.16.0 hf-xet1.5.0 httpcore1.0.9 httpx0.28.1 huggingface_hub1.14.0 idna3.15Jinja23.1.6 kiwisolver1.5.0 Markdown3.10.2 markdown-it-py4.2.0 MarkupSafe3.0.3 matplotlib3.10.9 mdurl0.1.2 ml_dtypes0.5.0 mpmath1.3.0 networkx3.6.1 numpy1.26.4 nvidia-cublas-cu1212.8.3.14 nvidia-cuda-cupti-cu1212.8.57 nvidia-cuda-nvrtc-cu1212.8.61 nvidia-cuda-runtime-cu1212.8.57 nvidia-cudnn-cu129.7.1.26 nvidia-cufft-cu1211.3.3.41 nvidia-cufile-cu121.13.0.11 nvidia-curand-cu1210.3.9.55 nvidia-cusolver-cu1211.7.2.55 nvidia-cusparse-cu1212.5.7.53 nvidia-cusparselt-cu120.6.3 nvidia-nccl-cu122.26.2 nvidia-nvjitlink-cu1212.8.61 nvidia-nvtx-cu1212.8.55 onnx1.19.0 onnxruntime-gpu1.26.0 onnxslim0.1.94 opencv-python4.6.0.66 packaging26.2pillow12.2.0 pip24.0polars1.40.1 polars-runtime-321.40.1 protobuf7.34.1 psutil7.2.2 pycocotools2.0.11 Pygments2.20.0 pyparsing3.3.2 python-dateutil2.9.0.post0 PyYAML6.0.3 regex2026.5.9 requests2.34.1 rich15.0.0 safetensors0.7.0 scipy1.16.0 setuptools65.5.0 shellingham1.5.4 six1.17.0 sympy1.14.0 tabulate0.10.0 tensorboard2.20.0 tensorboard-data-server0.7.2 tokenizers0.22.2 torch2.7.1cu128 torchaudio2.7.1cu128 torchvision0.22.1cu128 tqdm4.67.3 transformers5.8.1 triton3.3.1 typer0.25.1 typing_extensions4.15.0 ultralytics8.4.58 ultralytics-thop2.0.19 urllib32.7.0 Werkzeug3.1.8SCDown可分离卷积下采样模块SCDown是一种轻量级的下采样模块它利用点卷积Pointwise Conv和深度卷积Depthwise Conv的组合在降低特征图空间分辨率的同时保持或调整通道数并减少计算量。该模块常用于移动端或轻量级网络中如 YOLOv8 的某些变体以替代传统的步长卷积实现更高效的降采样。代码实现importcv2importmathimporttorchimporttorch.nnasnnimporttorch.nn.functionalasFimportnumpyasnpimportmatplotlib.pyplotaspltdefautopad(k,pNone,d1):# kernel, padding, dilationPad to same shape outputs.ifd1:kd*(k-1)1ifisinstance(k,int)else[d*(x-1)1forxink]# actual kernel-sizeifpisNone:pk//2ifisinstance(k,int)else[x//2forxink]# auto-padreturnpclassConv(nn.Module):Standard convolution module with batch normalization and activation. Attributes: conv (nn.Conv2d): Convolutional layer. bn (nn.BatchNorm2d): Batch normalization layer. act (nn.Module): Activation function layer. default_act (nn.Module): Default activation function (SiLU). default_actnn.SiLU()# default activationdef__init__(self,c1,c2,k1,s1,pNone,g1,d1,actTrue):Initialize Conv layer with given parameters. Args: c1 (int): Number of input channels. c2 (int): Number of output channels. k (int): Kernel size. s (int): Stride. p (int, optional): Padding. g (int): Groups. d (int): Dilation. act (bool | nn.Module): Activation function. super().__init__()self.convnn.Conv2d(c1,c2,k,s,autopad(k,p,d),groupsg,dilationd,biasFalse)self.bnnn.BatchNorm2d(c2)self.actself.default_actifactisTrueelseactifisinstance(act,nn.Module)elsenn.Identity()defforward(self,x):Apply convolution, batch normalization and activation to input tensor. Args: x (torch.Tensor): Input tensor. Returns: (torch.Tensor): Output tensor. returnself.act(self.bn(self.conv(x)))defforward_fuse(self,x):Apply convolution and activation without batch normalization. Args: x (torch.Tensor): Input tensor. Returns: (torch.Tensor): Output tensor. returnself.act(self.conv(x))classSCDown(nn.Module):SCDown module for downsampling with separable convolutions. This module performs downsampling using a combination of pointwise and depthwise convolutions, which helps in efficiently reducing the spatial dimensions of the input tensor while maintaining the channel information. Attributes: cv1 (Conv): Pointwise convolution layer that reduces the number of channels. cv2 (Conv): Depthwise convolution layer that performs spatial downsampling. Methods: forward: Applies the SCDown module to the input tensor. Examples: import torch from ultralytics.nn.modules.block import SCDown model SCDown(c164, c2128, k3, s2) x torch.randn(1, 64, 128, 128) y model(x) print(y.shape) torch.Size([1, 128, 64, 64]) def__init__(self,c1:int,c2:int,k:int,s:int):Initialize SCDown module. Args: c1 (int): Input channels. c2 (int): Output channels. k (int): Kernel size. s (int): Stride. super().__init__()self.cv1Conv(c1,c2,1,1)self.cv2Conv(c2,c2,kk,ss,gc2,actFalse)defforward(self,x:torch.Tensor)-torch.Tensor:Apply convolution and downsampling to the input tensor. Args: x (torch.Tensor): Input tensor. Returns: (torch.Tensor): Downsampled output tensor. returnself.cv2(self.cv1(x))功能通道变换首先通过 1×1 卷积cv1将输入通道从c1映射到c2同时整合跨通道信息。空间下采样然后通过深度卷积cv2分组数等于通道数gc2进行空间下采样步长s提取空间特征并降低分辨率。无额外激活深度卷积cv2设置actFalse不添加激活函数保持输出线性可能减少非线性变换的影响。参数高效深度卷积的参数量远低于标准卷积k²·c2vsk²·c2²适合轻量级网络。初始化参数参数类型说明c1int输入通道数c2int输出通道数kint深度卷积的核大小sint深度卷积的步长通常 1 实现下采样cv11×1 标准卷积Conv包含 BN SiLU 激活将通道从c1变换到c2。cv2深度卷积Conv设置gc2核大小k步长s无激活actFalse只包含 BN。前向方法forward(x)输入x输出形状[B, c2, H_out, W_out]其中H_out floor((H 2*p - k)/s) 1深度卷积的 padding 由autopad自动计算保持 same 填充因此通常H_out ceil(H/s)或近似。计算流程y self.cv1(x)→[B, c2, H, W]z self.cv2(y)→[B, c2, H_out, W_out]使用示例if__name____main__:# 1. 随机输入B,c1,H,W2,32,64,64xtorch.randn(B,c1,H,W)# 2. 创建 SCDown输入32输出64核3步长2scdownSCDown(c132,c264,k3,s2)# 3. 前向传播withtorch.no_grad():outscdown(x)print(输入形状:,x.shape)# [2, 32, 64, 64]print(输出形状:,out.shape)# [2, 64, 32, 32]步长2空间减半# 4. 使用真实图像演示扩展为多通道img_pathcat_640x640.pngimg_bgrcv2.imread(img_path)ifimg_bgrisnotNone:img_graycv2.cvtColor(cv2.resize(img_bgr,(64,64)),cv2.COLOR_BGR2GRAY)img_tensortorch.from_numpy(img_gray).float().unsqueeze(0).unsqueeze(0)# [1,1,64,64]# 扩展通道至 c132x_imgimg_tensor.repeat(1,32,1,1)model_imgSCDown(c132,c232,k3,s2)withtorch.no_grad():out_imgmodel_img(x_img)inp_ch0x_img[0,0].cpu().numpy()out_ch0out_img[0,0].cpu().numpy()defnorm(arr):return(arr-arr.min())/(arr.max()-arr.min()1e-8)plt.figure(figsize(12,5),constrained_layoutTrue)plt.subplot(1,3,1)plt.imshow(img_gray,cmapgray)plt.title(Original)plt.axis(off)plt.subplot(1,3,2)plt.imshow(norm(inp_ch0),cmapgray)plt.title(Input Ch0)plt.axis(off)plt.subplot(1,3,3)plt.imshow(norm(out_ch0),cmapgray)plt.title(SCDown Output Ch0)plt.axis(off)plt.savefig(scdown_demo.png,dpi150)print(可视化已保存为 scdown_demo.png)输出示例输入形状: torch.Size([2, 32, 64, 64]) 输出形状: torch.Size([2, 64, 32, 32]) 可视化已保存为 scdown_demo.png流程示意图输入 x (B, c1, H, W)cv1: Conv 1x1, c1→c2, s1特征 (B, c2, H, W)cv2: Depthwise Conv, k×k, strides, groupsc2, actFalse输出 (B, c2, H/s, W/s)代码解读__init__self.cv11×1 标准卷积负责通道变换激活为默认 SiLU。self.cv2深度卷积分组数gc2核大小k步长s无激活actFalse仅含 BN。该卷积不改变通道数只进行空间采样。forward顺序执行两个卷积。注意事项步长与下采样s通常大于 1如 2以实现空间降维若s1则仅进行通道变换无下采样。深度卷积的填充Conv内部使用autopad自动计算填充保证stride1时尺寸不变当stride1时输出尺寸约为输入尺寸除以s向上取整。激活函数cv2无激活但cv1有激活因此整体模块仍包含非线性。计算效率深度卷积参数为k²·c2远小于标准卷积k²·c2²大幅减少 FLOPs。通道数要求c2必须为整数且深度卷积要求c2能被分组数整除gc2总是成立。优缺点优点轻量高效深度卷积大幅减少参数量和计算量适合移动端部署。通道可调通过 1×1 卷积灵活控制输出通道数。即插即用可替换标准步长卷积降低网络开销。保持空间信息深度卷积逐通道处理保留各通道的空间细节。缺点深度卷积可能限制表达能力逐通道卷积无法跨通道融合但前面的 1×1 卷积已做融合所以影响较小。无激活可能降低非线性cv2无激活可能略弱于标准卷积但通常可接受。不适合大幅通道变换若c1与c2差异悬殊1×1 卷积可能成为瓶颈。在轻量级网络中SCDown常用于骨干网络的前几层以降低分辨率并增加通道数同时保持计算成本可控。使用时可根据任务调整k通常 3和s并监控模型精度与速度的平衡。参考文献[1] https://docs.ultralytics.com/[2] https://github.com/ultralytics/ultralytics.git由于本人水平有限难免出现错漏敬请批评改正。更多精彩内容可点击进入Python日常小操作专栏、OpenCV-Python小应用专栏、YOLO系列专栏、自然语言处理专栏、人工智能混合编程实践专栏或我的个人主页查看YOLOs-CPP一个免费开源的YOLO全系列C推理库以YOLO26为例PaddleOCRWin10上安装使用PPOCRLabel标注工具目标检测使用自己的数据集微调DEIMv2进行物体检测图像分割PyTorch从零开始实现SegFormer语义分割图像超分使用自己的数据集微调Real-ESRGAN-x4plus进行超分重建图像生成PyTorch从零开始实现一个简单的扩散模型Stable Diffusion使用自己的数据集微调 Stable Diffusion 3.5 LoRA 文生图模型图像超分使用自己的数据集微调Real-ESRGAN-x2plus进行超分重建Anomalib使用Anomalib 2.1.0训练自己的数据集进行异常检测Anomalib在Linux服务器上安装使用Anomalib 2.1.0人工智能混合编程实践C调用封装好的DLL进行异常检测推理人工智能混合编程实践C调用封装好的DLL进行FP16图像超分重建v3.0隔离系统Python源码编译3.11.8到自定义目录含PGO性能优化在线机的Python环境迁移到离线机上Nuitka 将 Python 脚本封装为 .pyd 或 .so 文件Ultralytics使用 YOLO11 进行速度估计Ultralytics使用 YOLO11 进行物体追踪Ultralytics使用 YOLO11 进行物体计数Ultralytics使用 YOLO11 进行目标打码人工智能混合编程实践C调用Python ONNX进行YOLOv8推理人工智能混合编程实践C调用封装好的DLL进行YOLOv8实例分割人工智能混合编程实践C调用Python ONNX进行图像超分重建人工智能混合编程实践C调用Python AgentOCR进行文本识别通过计算实例简单地理解PatchCore异常检测Python将YOLO格式实例分割数据集转换为COCO格式实例分割数据集YOLOv8 Ultralytics使用Ultralytics框架训练RT-DETR实时目标检测模型基于DETR的人脸伪装检测YOLOv7训练自己的数据集口罩检测YOLOv8训练自己的数据集足球检测YOLOv5TensorRT加速YOLOv5模型推理YOLOv5IoU、GIoU、DIoU、CIoU、EIoU玩转Jetson Nano五TensorRT加速YOLOv5目标检测YOLOv5添加SE、CBAM、CoordAtt、ECA注意力机制YOLOv5yolov5s.yaml配置文件解读、增加小目标检测层Python将COCO格式实例分割数据集转换为YOLO格式实例分割数据集YOLOv5使用7.0版本训练自己的实例分割模型车辆、行人、路标、车道线等实例分割使用Kaggle GPU资源免费体验Stable Diffusion开源项目Stable Diffusion在服务器上部署使用Stable Diffusion WebUI进行AI绘图v2.0Stable Diffusion使用自己的数据集微调训练LoRA模型v2.0

相关新闻

SAP学习笔记 - MM模块07 - 盘点流程,MI01-创建盘点凭证,MI21-打印凭证,MI04-输入实际盘点数量,MI07/MI20-差异过账

SAP学习笔记 - MM模块07 - 盘点流程,MI01-创建盘点凭证,MI21-打印凭证,MI04-输入实际盘点数量,MI07/MI20-差异过账

上一章学些了MM的内容,本章继续学习SAP的内容。 SAP学习笔记 - MM模块06 - 库存物料,消耗物料,物料类型NLAG,如何确定会计科目,无物料信息记录(通过物料组),排序字符串,消耗物料的收货-CSDN博客…

2026/7/27 8:37:27阅读更多 →
手机AI技术解析:五大进化方向与用户体验升级

手机AI技术解析:五大进化方向与用户体验升级

1. 手机AI的五大进化方向:从实验室到口袋的革命 作为一名长期跟踪智能终端发展的从业者,我深刻感受到2026年将成为移动AI的转折点。当我们在MWC展会和各大品牌发布会上看到这些创新时,最令人震撼的不是技术本身,而是AI如何悄无声息…

2026/7/27 8:37:27阅读更多 →
全平台视频元数据解析API调用限制与用量边界全解析

全平台视频元数据解析API调用限制与用量边界全解析

概述 在全平台视频元数据解析服务的日常使用中,调用限制与用量边界是开发者最先接触到的“隐形墙”。理解并妥善处理这些边界,能有效避免因请求报错或频控导致的业务中断。本文从接口设计出发,逐层解析频率限制、参数约束、响应模式选择、错…

2026/7/27 8:37:27阅读更多 →
终极Windows 11文件资源管理器标签管理指南:告别杂乱窗口,拥抱高效工作流

终极Windows 11文件资源管理器标签管理指南:告别杂乱窗口,拥抱高效工作流

终极Windows 11文件资源管理器标签管理指南:告别杂乱窗口,拥抱高效工作流 【免费下载链接】ExplorerTabUtility 🚀 Supercharge Windows 11s File Explorer: Auto-convert windows to tabs, duplicate tabs, reopen closed ones, and more! …

2026/7/27 10:10:26阅读更多 →
零代码AI数据大屏生成工具盘点靠谱免费商用可视化方案

零代码AI数据大屏生成工具盘点靠谱免费商用可视化方案

如果你跟我一样,是个看到代码就头大的业务人员,又想在公司年会上搞个炫酷的数据大屏惊艳全场,那这篇文章就是给你写的。我会把自己从一个零代码小白,到成功做出公司第一个AI数据大屏的全过程复盘一遍,重点讲哪些工具真…

2026/7/27 10:10:26阅读更多 →
XState状态图在前端状态管理中的应用与实践

XState状态图在前端状态管理中的应用与实践

1. XState状态图核心概念解析XState作为现代前端状态管理的重要工具,其核心价值在于通过状态图(Statecharts)对复杂应用逻辑进行可视化建模。与传统有限状态机(FSM)相比,状态图引入了层次化、并行状态等高级…

2026/7/27 10:10:26阅读更多 →
Ventoy:如何用一款工具管理所有启动盘,彻底告别重复格式化

Ventoy:如何用一款工具管理所有启动盘,彻底告别重复格式化

Ventoy:如何用一款工具管理所有启动盘,彻底告别重复格式化 【免费下载链接】Ventoy A new bootable USB solution. 项目地址: https://gitcode.com/GitHub_Trending/ve/Ventoy 在系统维护、系统安装和故障排除的日常工作中,你是否曾为…

2026/7/27 10:10:26阅读更多 →
猫抓浏览器资源嗅探扩展:专业级网络资源捕获与流媒体解析终极方案

猫抓浏览器资源嗅探扩展:专业级网络资源捕获与流媒体解析终极方案

猫抓浏览器资源嗅探扩展:专业级网络资源捕获与流媒体解析终极方案 【免费下载链接】cat-catch 猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension 项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch 在当今多媒体内容无处…

2026/7/27 10:10:26阅读更多 →
Open Code Review:阿里内部AI代码审查工具开源

Open Code Review:阿里内部AI代码审查工具开源

如果你平时用Claude Code或Cursor对PR做代码审查,你大概率会遇到过这种事:改了一堆文件的PR丢进去,Agent只审了前三个文件就说"看起来没问题",报告的问题行号也对不上。你追着它说"再仔细看看第47行"&#xf…

2026/7/27 10:08:25阅读更多 →
覆盖国产 + 海外 + 开源模型,OpenClaw 2.7.9 Windows/Mac 双端部署详解

覆盖国产 + 海外 + 开源模型,OpenClaw 2.7.9 Windows/Mac 双端部署详解

🔹 工具基础介绍 OpenClaw 是开源生态中一款实用性较强的本地智能工具,凭借本地离线运行、可视化图形操作和任务自动化三大核心特性,赢得了众多用户的青睐。与普通在线对话AI工具不同,它属于能够直接操控本机软硬件的智能数字员工…

2026/7/27 1:14:34阅读更多 →
伺服阀焊完微漏毁整机?精密激光焊接三关锁住高压

伺服阀焊完微漏毁整机?精密激光焊接三关锁住高压

所谓液压伺服阀体的精密激光焊接,是用激光束对阀座壳体(通常为不锈钢或铝合金)进行密封焊接,使阀体在21-35MPa的高压液压油或压缩气体中长期运行而不发生介质泄漏。液压伺服阀是高端液压系统的"大脑"。从航空航天飞行控…

2026/7/27 1:14:52阅读更多 →
D2DX:三步实现《暗黑破坏神2》高清宽屏体验的终极指南

D2DX:三步实现《暗黑破坏神2》高清宽屏体验的终极指南

D2DX:三步实现《暗黑破坏神2》高清宽屏体验的终极指南 【免费下载链接】d2dx D2DX is a complete solution to make Diablo II run well on modern PCs, with high fps and better resolutions. 项目地址: https://gitcode.com/gh_mirrors/d2/d2dx 你是否还在…

2026/7/27 1:14:56阅读更多 →
SPI实战指南:从时钟模式到寄存器配置,解决嵌入式通信难题

SPI实战指南:从时钟模式到寄存器配置,解决嵌入式通信难题

1. 项目概述:从寄存器手册到实战指南 如果你手头有一份类似德州仪器(TI)TMS320x240xA系列DSP的SPI模块技术手册,看着里面密密麻麻的寄存器位定义、时序图和公式,是不是感觉头大?这份资料虽然权威&#xff0…

2026/7/27 0:00:24阅读更多 →
【JAVA毕设源码分享】基于springboot的水果购物管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)

【JAVA毕设源码分享】基于springboot的水果购物管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/7/27 0:00:24阅读更多 →
2007-2023年各市区县生态文明建设示范区DID

2007-2023年各市区县生态文明建设示范区DID

数据简介 自改革开放以来,我国依赖高投入、高资源消耗和高污染等传统发展模式实现了经济短期内的快速增长, 然而这也导致了严重的生态环境危机。因此,国家有力于推动企业高质量经济发展,协同生态保护的方针,从而从201…

2026/7/27 0:00:24阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/25 23:03:25阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/26 19:05:21阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/26 19:05:21阅读更多 →