基于4000张杂草数据集的YOLO训练与田间部署实战
简介这份资源面向从事农业智能识别、计算机视觉方向的学生与算法工程师提供一套可直接投入训练的YOLO杂草检测数据集用于解决田间杂草与作物区分、目标检测模型训练等实际问题。压缩包共约2000个文件以xml格式的VOC标注文件为主同时配套txt格式标签兼容YOLOv5、YOLOv7、YOLOv8、YOLOv9等主流框架整体大小约128MB。数据集已按train、val、test完成划分并附带data.yaml配置文件目录结构清晰省去自行整理与转换标注的繁琐步骤。目前已有449人学习下载适合作为课程设计、科研实验或算法对比的基准数据。读者可直接基于该数据集开展模型训练与验证快速复现检测流程并借助配套的标注文件灵活切换VOC与YOLO两种格式降低数据预处理成本。1. 杂草检测数据集与 YOLO 训练4000 张图能撑起什么如果你手头正好有一份 4000 多张的杂草检测数据集第一反应大概率是「够不够训一个能用的 YOLO 模型」。我去年在做一个农田除草机器人的视觉模块时拿到的第一版数据就是 4200 张拍的是玉米苗期的田块杂草主要是马唐、稗草、苋菜三类。当时我也纠结过这个量级到底能不能落地后来跑完一轮完整训练加田间测试结论是4000 张做单类或三到五类的杂草检测只要标注质量和场景覆盖到位mAP0.5 做到 0.85 以上是现实的但前提是你得把数据划分、增强策略和类别定义这几件事做对。杂草检测和常规的 COCO 类目标检测有个本质区别杂草和作物在幼苗期的视觉差异极小同一块田里不同光照、不同土壤湿度下同一株草的形态差异可能比草和苗之间的差异还大。所以这个数据集的价值不在于「4000 张」这个数字而在于它覆盖了多少种杂草、多少种光照条件、多少种拍摄高度。YOLO 系列从 v5 到 v8 再到 v11在杂草检测这个场景上的差异其实没有想象中大真正决定效果的是你的数据分布和标注一致性。这篇文章面向的是手里已经有或准备采集杂草数据集的从业者包括农业机器人开发者、植保无人机视觉团队、以及做智慧农业项目的工程师。我会从数据集的检查与划分讲起一路写到 YOLO 训练参数、增强策略、以及田间部署时那些只有踩过才知道的坑。如果你正在评估这个方向值不值得投入看完应该能有个明确的判断。2. 拿到 4000 张杂草数据集先做什么清洗、划分与标注检查2.1 数据集结构检查与类别分布统计拿到数据集的第一件事不是急着写训练脚本而是把目录结构和标注格式摸清楚。常见的杂草数据集有两种组织方式一种是 YOLO 格式每张图对应一个 .txt每行是class_id x_center y_center width height坐标归一化到 0-1另一种是 VOC 格式XML 文件。先确认你手里是哪种因为后面的脚本完全不一样。我一般会先跑一个统计脚本把类别分布、每类实例数、图片尺寸分布一次性看清楚。这一步能暴露很多问题比如某个类别只有几十个实例或者大量图片尺寸不一致。import os from collections import Counter from pathlib import Path import cv2 # 数据集根目录假设结构为 images/ 和 labels/ root Path(weed_dataset) img_dir root / images lbl_dir root / labels class_counter Counter() size_counter Counter() empty_labels 0 total_boxes 0 for img_path in img_dir.glob(*.jpg): # 统计图片尺寸 img cv2.imread(str(img_path)) h, w img.shape[:2] size_counter[(w, h)] 1 # 对应的标注文件 lbl_path lbl_dir / (img_path.stem .txt) if not lbl_path.exists(): continue lines lbl_path.read_text().strip().splitlines() if not lines: empty_labels 1 continue for line in lines: parts line.split() cls_id int(parts[0]) class_counter[cls_id] 1 total_boxes 1 print(类别分布:, dict(class_counter)) print(图片尺寸分布:, dict(size_counter)) print(空标注图片数:, empty_labels) print(总标注框数:, total_boxes)这段脚本的逻辑很直接遍历所有图片读尺寸、读对应标注、累计类别。参数上唯一需要注意的是img_dir.glob(*.jpg)里的扩展名如果你的数据集是 .png 或 .jpeg要相应改掉。跑完之后重点看三个数类别分布是否均衡、图片尺寸是否统一、空标注图片有多少。空标注图片如果超过 5%要么是负样本可以保留但要单独处理要么是标注遗漏需要人工复查。2.2 训练集/验证集/测试集划分的坑划分比例常见做法是 7:2:1 或 8:1:1。但杂草数据集有个特殊问题如果你的图片是从视频里抽帧来的相邻帧之间高度相似随机划分会导致验证集里出现和训练集几乎一样的图片验证指标虚高。我踩过这个坑第一版模型验证集 mAP 0.91结果田间实测一塌糊涂。正确的做法是按「采集批次」或「田块」划分而不是按图片随机划分。比如你有 5 个田块的数据那就用 3 个田块做训练、1 个做验证、1 个做测试。如果数据集没有提供采集批次信息退而求其次的做法是先对图片做感知哈希去重把相似图片分到同一组再划分。import hashlib from pathlib import Path import random def phash(img_path, hash_size8): 简单感知哈希用于检测相似图片 img cv2.imread(str(img_path), cv2.IMREAD_GRAYSCALE) img cv2.resize(img, (hash_size, hash_size)) avg img.mean() bits (img avg).flatten() return .join([1 if b else 0 for b in bits]) # 按哈希分组相似图片分到同一组 groups {} for p in Path(weed_dataset/images).glob(*.jpg): h phash(p) groups.setdefault(h, []).append(p) # 按组划分避免相似图片跨集 group_list list(groups.values()) random.shuffle(group_list) n len(group_list) train_groups group_list[:int(n*0.8)] val_groups group_list[int(n*0.8):int(n*0.9)] test_groups group_list[int(n*0.9):]哈希分组的关键参数是hash_size8 表示把图片压到 8x8 再比较对光照变化有一定鲁棒性。如果你的图片差异很大比如不同作物、不同季节可以适当调大。划分完之后训练集和验证集的图片数量可能不是精确的 8:1:1但换来的是验证指标的真实性这个 trade-off 是值得的。2.3 标注质量抽查三个必须看的指标标注质量直接决定模型上限。我一般会抽查三样东西框是否贴合目标边缘、类别是否标错、有没有漏标。抽查方法不是一张张看而是用脚本把标注框画到图上随机抽 50 张拼成网格图肉眼过一遍。import cv2 import numpy as np from pathlib import Path import random def draw_boxes(img_path, lbl_path, class_names): img cv2.imread(str(img_path)) h, w img.shape[:2] for line in lbl_path.read_text().strip().splitlines(): cls, x, y, bw, bh line.split() cls int(cls) x, y, bw, bh float(x)*w, float(y)*h, float(bw)*w, float(bh)*h x1, y1 int(x-bw/2), int(y-bh/2) x2, y2 int(xbw/2), int(ybh/2) cv2.rectangle(img, (x1, y1), (x2, y2), (0, 255, 0), 2) cv2.putText(img, class_names[cls], (x1, y1-5), cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 255, 0), 1) return img # 随机抽 50 张拼成 5x10 网格 samples random.sample(list(Path(weed_dataset/images).glob(*.jpg)), 50) grid np.zeros((5*640, 10*640, 3), dtypenp.uint8) for i, p in enumerate(samples): lbl Path(weed_dataset/labels) / (p.stem .txt) img draw_boxes(p, lbl, [corn, weed1, weed2, weed3]) img cv2.resize(img, (640, 640)) r, c i // 10, i % 10 grid[r*640:(r1)*640, c*640:(c1)*640] img cv2.imwrite(check_grid.jpg, grid)跑完打开check_grid.jpg重点看三类问题框明显偏大或偏小标注员偷懒、同一株草被标成两个不同类别类别定义不清、密集区域漏标标注员疲劳。如果抽查 50 张里有超过 5 张有明显问题建议先返工标注不要急着训练。标注返工的成本远低于训完发现效果不行再回头查。3. YOLO 训练杂草检测模型参数配置与增强策略3.1 从 YOLOv5 到 YOLOv8 的选型对比杂草检测这个任务模型选型主要看三个维度推理速度、小目标召回、部署便利性。我把常见的几个版本在 4000 张杂草数据集上的表现做了个对比硬件是 RTX 3060 12G输入 640x640。模型参数量mAP0.5单帧推理(ms)训练显存适用场景YOLOv5s7.2M0.866.24.1G边缘设备部署YOLOv5m21.2M0.8911.56.8G服务器推理YOLOv8n3.2M0.844.83.5G嵌入式/JetsonYOLOv8s11.2M0.887.15.2G平衡选择YOLOv8m25.9M0.9113.48.3G精度优先从表里能看出来YOLOv8s 在精度和速度之间平衡得最好也是我目前杂草检测项目的默认选择。如果你的部署平台是 Jetson Nano 或树莓派这类算力受限的设备YOLOv8n 更合适但要注意小目标召回会下降 3-5 个百分点。杂草幼苗在 640 分辨率下往往只有 20-40 像素这个损失在田间是能感知到的。选型还有一个容易被忽略的点YOLOv8 的 anchor-free 设计对密集小目标更友好而 YOLOv5 的 anchor-based 在标注框尺寸分布集中时收敛更快。如果你的数据集里杂草尺寸差异很大既有刚出苗的也有长到十几厘米的YOLOv8 系列更稳。3.2 数据增强参数怎么设杂草场景的特殊考虑YOLO 默认的增强策略包括 mosaic、mixup、HSV 调整、随机翻转等。杂草检测场景下有几个参数需要特别调整。mosaic 增强默认概率是 1.0它把四张图拼成一张。这在常规检测里很有效但杂草场景下有个问题拼图会引入不自然的边界而且不同田块的土壤颜色差异被强行拼在一起模型可能学到「土壤颜色突变处有目标」这种伪特征。我一般把 mosaic 概率降到 0.5-0.7并在最后 10 个 epoch 关闭 mosaic让模型在真实分布上微调。HSV 增强里hsv_h色调默认 0.015杂草场景建议调到 0.02-0.03因为田间光照色温变化大hsv_s饱和度默认 0.7 可以保持hsv_v亮度默认 0.4如果数据集里阴天和晴天图片都有可以调到 0.5。# data.yaml path: ./weed_dataset train: images/train val: images/val test: images/test names: 0: corn 1: weed_grass 2: weed_broadleaf 3: weed_sedge# 训练命令以 YOLOv8s 为例 yolo detect train \ datadata.yaml \ modelyolov8s.pt \ epochs200 \ imgsz640 \ batch16 \ lr00.01 \ lrf0.01 \ mosaic0.6 \ mixup0.1 \ hsv_h0.025 \ hsv_s0.7 \ hsv_v0.5 \ degrees10 \ translate0.1 \ scale0.5 \ fliplr0.5 \ flipud0.0 \ patience30 \ device0参数说明lr0是初始学习率杂草数据集 4000 张属于中小规模0.01 比较稳lrf是最终学习率系数配合余弦退火degrees10允许小角度旋转模拟拍摄角度变化flipud0.0关闭上下翻转因为田间拍摄几乎不会倒着拍开了反而引入不真实样本patience30表示 30 个 epoch 验证指标不提升就早停。3.3 训练过程监控与早停判断训练启动后重点盯三个曲线train/box_loss、val/box_loss、metrics/mAP50。健康的训练曲线是 train loss 稳定下降val loss 先降后平mAP 持续上升直到平台期。如果 val loss 开始上升而 train loss 还在降说明过拟合了。4000 张数据量下过拟合通常在 80-120 epoch 出现。这时候有几个选择加大增强、加 dropout、或者直接早停取最佳权重。我一般会保存 best.pt 和 last.pt 两个权重部署时用 best.pt。还有一个容易被忽略的指标是metrics/precision和metrics/recall的平衡。杂草检测里recall 比 precision 更重要因为漏检一株杂草可能导致它继续生长并扩散而误检一株作物只是多喷一点药。如果 recall 明显低于 precision可以调低置信度阈值或者在训练时给正样本更高的权重。4. 杂草检测模型部署避坑从验证集到田间的落差4.1 验证集 mAP 高但田间效果差的四个原因这是杂草检测项目里最经典的翻车场景。验证集 mAP 0.90拉到田里一测漏检率超过 30%。原因通常有四个。第一是域偏移。验证集图片和训练集来自同一批采集光照、土壤、相机参数都一致但田间实际环境可能换了相机、换了时间段、换了田块。解决办法是在训练集里尽量覆盖多种采集条件或者在部署前用目标田块的数据做少量微调。第二是分辨率不匹配。训练用 640x640部署时如果相机输出 1920x1080 直接缩放小目标会进一步缩小。正确做法是保持训练和推理的输入分辨率一致或者用切片推理把大图切成 640x640 的小块分别推理再合并。第三是置信度阈值设错。验证时用的 conf0.25田间如果还用这个值大量低置信度真目标被过滤。杂草检测建议 conf 设 0.15-0.20配合 NMS IoU 0.5-0.6。第四是类别定义漂移。训练时把某种草标为 weed_grass田间出现了同科但形态不同的草模型不认识。这个只能靠持续采集新数据迭代。4.2 推理速度优化TensorRT 与 ONNX 导出如果部署平台是 NVIDIA 设备TensorRT 能带来 2-3 倍加速。导出流程是 PyTorch → ONNX → TensorRT。# 导出 ONNX yolo export modelbest.pt formatonnx imgsz640 opset12 simplifyTrue # 用 trtexec 转 TensorRT需要安装 TensorRT trtexec --onnxbest.onnx \ --saveEnginebest.engine \ --fp16 \ --workspace4096 \ --minShapesimages:1x3x640x640 \ --optShapesimages:8x3x640x640 \ --maxShapesimages:16x3x640x640--fp16开启半精度精度损失通常在 0.5% 以内速度提升 1.5-2 倍。--workspace4096是显存工作空间单位 MB根据你的 GPU 调整。minShapes/optShapes/maxShapes定义了动态 batch 范围optShapes 是你最常用的 batch sizeTensorRT 会针对它做最优优化。导出后一定要做精度对齐验证用同一批测试图片分别跑 PyTorch 和 TensorRT对比检测框数量和类别差异超过 2% 就要查原因。常见问题是 ONNX opset 版本和 TensorRT 版本不兼容或者 simplify 过程中某些算子被错误优化。4.3 田间部署的硬件选型与功耗权衡杂草检测的部署场景通常分两类车载除草机器人和机载植保无人机。车载对算力要求高可以用 Jetson Orin NX 或 Xavier NX机载对功耗和重量敏感Jetson Nano 或 Orin Nano 更合适。以 Jetson Orin NX 16G 为例跑 YOLOv8s TensorRT FP16640x640 输入单帧推理约 8ms加上预处理和后处理端到端约 15ms理论上能到 60 FPS。但实际田间要考虑相机采集、图像传输、决策控制的耗时最终有效帧率可能在 20-30 FPS。对于除草机器人这个帧率足够因为机器人行进速度通常不超过 1m/s。功耗方面Orin NX 满负载约 25WXavier NX 约 20WNano 约 10W。如果是电池供电的移动平台续航时间要按整机功耗算不能只看 GPU。我一般会留 30% 的功耗余量避免高温降频导致帧率波动。5. 杂草检测数据集常见问题排查5.1 训练 loss 不下降或震荡现象训练启动后 box_loss 在 2.0 附近震荡50 epoch 后仍不下降。原因最常见的是学习率过大或标注格式错误。如果标注文件里的坐标没有归一化还是像素值YOLO 读取时会得到超出 0-1 范围的值loss 直接爆炸。另一个原因是类别标签从 1 开始编号而 YOLO 要求从 0 开始。解决先用第 2 章的统计脚本检查标注坐标范围确认所有值在 0-1 之间。然后检查类别 ID 是否从 0 开始。如果都没问题把 lr0 降到 0.001 再试。还有一个隐蔽原因是数据集中混入了损坏图片用cv2.imread返回 None 的图片要提前剔除。5.2 验证集 mAP 波动大现象每个 epoch 的 mAP 在 0.75-0.88 之间跳没有稳定上升趋势。原因验证集太小或分布不均。4000 张按 8:1:1 划分验证集只有 400 张如果里面某个类别只有十几张指标波动就会很大。另一个原因是 batch size 太小BN 层统计量不稳定。解决增大验证集比例到 15%或者用交叉验证。batch size 建议至少 16如果显存不够用梯度累积模拟大 batch。YOLOv8 支持nbs参数名义 batch size设成 64 配合小 batch 也能稳定训练。5.3 模型只检测大目标小杂草漏检严重现象验证集里大株杂草能检出刚出苗的小草几乎全漏。原因小目标在 640 分辨率下特征太少加上 YOLO 的 P3 特征图下采样 8 倍20 像素的目标在 P3 上只剩 2-3 个像素。另外如果数据集中小目标标注框占比低模型会偏向大目标。解决三个方向。一是提高输入分辨率到 1280但推理速度会降 3-4 倍二是用切片推理把大图切小块分别检测三是在训练时对小目标做过采样或者用 copy-paste 增强把小目标复制到更多位置。我一般先用切片推理成本最低。5.4 不同光照条件下效果差异大现象晴天图片检测正常阴天或傍晚图片漏检率翻倍。原因训练集里光照分布不均模型对暗光场景欠拟合。HSV 增强的 v 参数如果设得太小模型见不到足够多的暗光样本。解决把 hsv_v 调到 0.5-0.6并在数据集中补充阴天和傍晚的采集数据。如果没法补数据可以在推理前做自适应直方图均衡化CLAHE把暗光图片的对比度拉回来。CLAHE 的 clipLimit 设 2.0-3.0tileGridSize 设 8x8对杂草检测场景比较合适。5.5 模型在边缘设备上帧率不达标现象PC 上跑 60 FPS部署到 Jetson 上只有 8 FPS。原因边缘设备的 GPU 算力和显存带宽远低于 PC加上没有用 TensorRT 优化PyTorch 直接推理效率很低。另外如果预处理resize、归一化用 CPU 做也会成为瓶颈。解决导出 TensorRT 引擎开启 FP16。预处理用 CUDA 加速或者用 DALI 库做 GPU 预处理。如果还是不够换更小的模型YOLOv8n或降低输入分辨率到 416。实测 Jetson Orin NX 上 YOLOv8n TensorRT FP16 416 输入能到 45 FPS对大多数除草场景够用。6. 用 4000 张杂草数据做持续迭代主动学习与难例挖掘模型训完部署只是开始真正让杂草检测效果持续提升的是迭代闭环。我的习惯是每次田间运行后把模型置信度在 0.1-0.3 之间的检测结果单独存下来这些是「模型拿不准」的样本也是最有标注价值的难例。具体做法是在推理脚本里加一个过滤逻辑置信度低于 0.3 但高于 0.1 的检测框连同原图一起保存到hard_examples/目录。每周人工过一遍这些图把漏检的补标、误检的修正然后加入训练集重新训练。这样一轮下来通常能带来 2-4 个百分点的 mAP 提升而且标注成本只有全量标注的十分之一。# 推理时保存难例 results model(img, conf0.1, iou0.5) for r in results: boxes r.boxes if boxes is None: continue confs boxes.conf.cpu().numpy() # 筛选置信度在 0.1-0.3 之间的检测 hard_mask (confs 0.1) (confs 0.3) if hard_mask.sum() 0: save_path fhard_examples/{img_name} cv2.imwrite(save_path, img) # 同时保存检测结果供参考 r.save(filenamefhard_examples/{img_name}_pred.jpg)这个逻辑的关键参数是置信度区间。下限 0.1 是 YOLO 输出的有效范围低于 0.1 的基本是噪声上限 0.3 是「模型不确定」的边界高于 0.3 的通常已经比较可信。如果你的模型整体置信度偏高可以把上限调到 0.4。还有一个技巧是「类别平衡采样」。如果难例里某个类别特别多比如某种难分的草在加入训练集时控制它的比例避免新一轮训练后模型偏向这个类别。我一般让每个类别的难例数量不超过该类原始数据的 20%。最后说个血泪教训不要每次迭代都从头训。用上一轮的 best.pt 做预训练权重学习率调小到 0.001训 50-80 epoch 就够。从头训不仅慢还可能把上一轮学到的特征丢掉。我早期不懂这个每次加几百张图就从头训 200 epoch浪费了大量时间。希望帮到你。本文还有配套的精品资源点击获取

相关新闻

WIDER FACE B大目标子集:VOC/YOLO转换与YOLOv8训练实战

WIDER FACE B大目标子集:VOC/YOLO转换与YOLOv8训练实战

简介:面向近距离大目标人脸检测的WIDER Face数据集B子集,共8188张jpg图片,对应8188个VOC格式xml与8188个YOLO格式txt标注,类别仅face,所有标注框像素面积大于3500,总计14649个框,能有效降低远距…

2026/10/11 17:13:08 阅读更多 →
如何从零构建 AI File Sorter:跨平台源码编译完整指南(含 llama.cpp 多后端运行时)

如何从零构建 AI File Sorter:跨平台源码编译完整指南(含 llama.cpp 多后端运行时)

AI 应用大模型本地部署桌面应用 【免费下载链接】ai-file-sorter Cross-platform desktop application for content-aware file organization and renaming. Supports local and remote LLMs, preview-based workflows, and fully user-controlled changes. 项目地址&#xff1…

2026/10/11 17:12:08 阅读更多 →
三层交换机VLAN配置实战:从SVI到跨VLAN通信排障全解析

三层交换机VLAN配置实战:从SVI到跨VLAN通信排障全解析

做网络实验这么多年,三层交换机的配置永远是绕不开的坎。最近整理之前的实验笔记,翻到这份“实验八 三层交换机的VLAN配置”,当时折腾了不少时间,也踩了好几个坑,现在把整个实验的配置思路、操作过程和排障经验完整梳理…

2026/10/11 17:12:08 阅读更多 →

最新新闻

CMake构建实战:核心逻辑、依赖管理与排错指南

CMake构建实战:核心逻辑、依赖管理与排错指南

你有没有过这种经历:一个项目从单个 main.cpp 变成十几个目录,编译命令从一行 g 变成一长串带路径的参数,最后谁也不愿意去碰构建脚本。我在这场混乱里挣扎了很久,最后老老实实把整个工程的构建交了给 CMake 这一层“元构建工具”…

2026/10/11 19:47:43 阅读更多 →
多模态情感分析实战:基于Python的文本语音图像视频融合指南

多模态情感分析实战:基于Python的文本语音图像视频融合指南

简介:一套基于Python实现的多模态融合情感分析项目资源,面向毕业设计、课程作业等学生开发者,解决文本、语音、图像与视频四类输入下的情感识别与融合分析问题。资源共包含21个文件,整体56.86MB,其中Python脚本承担数据…

2026/10/11 19:47:43 阅读更多 →
JWT Payload与Claims详解:从三段结构到七个标准字段的工程实践

JWT Payload与Claims详解:从三段结构到七个标准字段的工程实践

几乎所有写过后端接口的开发者,都经历过这样一个场景:登录接口返回了一长串token,你把它粘贴到jwt.io上,中间那段Base64字符串里清清楚楚写着用户ID、角色、过期时间,有时候甚至能看到手机号和邮箱。那段字符串就是JWT…

2026/10/11 19:47:43 阅读更多 →
管道焊缝缺陷检测数据集:YOLOv5格式解析与训练实战

管道焊缝缺陷检测数据集:YOLOv5格式解析与训练实战

简介:这份资源面向从事工业质检、缺陷识别方向的目标检测学习者与工程人员,提供管道焊接缝缺陷检测数据集,按YOLOV5目录格式整理,可直接投入训练,省去格式转换与标注清洗的繁琐环节。数据为800800的RGB图像&#xff0c…

2026/10/11 19:47:43 阅读更多 →
C++过滤器模式实战:从原理到现代C++演进

C++过滤器模式实战:从原理到现代C++演进

过滤器模式这名字听起来像是个高大上的Golang中间件专属概念,但实际上它最早被总结成一种通用设计模式时,场景非常朴素:给你一堆对象,让你按照各种条件筛出一部分来。C里最典型的表现就是,业务代码里四处都是if判断、循…

2026/10/11 19:47:43 阅读更多 →
IEC 81346-2-2019类对象与代码:统一设备身份的工程指南

IEC 81346-2-2019类对象与代码:统一设备身份的工程指南

简介:IEC 81346-2-2019《第2部分:类对象和代码的分类》是国际电工委员会发布的工业自动化系统和集成系列标准的重要构成,面向自动化工程师、系统架构师、设备维护人员及标准合规人员,用于统一类对象的分类和代码标识,解…

2026/10/11 19:46:42 阅读更多 →

日新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/11 0:00:27 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/11 0:00:27 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 10:45:37 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:53 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:54 阅读更多 →