新闻详情

新闻详情

首页 / 资讯中心 / 详情

4500张杯子数据集:从VOC/YOLO标注到YOLOv8训练与部署全流程

发布时间:2026/9/4 15:29:47来源:尧图网络
4500张杯子数据集:从VOC/YOLO标注到YOLOv8训练与部署全流程
简介本资源是一套专为计算机视觉目标检测任务构建的杯子cup专用数据集面向深度学习初学者、算法工程师及模型训练实践者解决小类别目标检测中高质量标注数据匮乏的问题。数据集共4500张真实场景JPG图像配套4500份Pascal VOC格式XML标注文件与4500份YOLO格式TXT标注文件全部由labelImg工具人工矩形框标注仅含单一类别“cup”总计10031个精确边界框。压缩包为7z格式含2000个文件其中1999个XML1个说明TXT总大小676.74MB结构简洁无冗余路径或分割文件开箱即用于VOC/YOLO双框架训练。目前已有474人学习下载提供完整标注一致性验证基础可直接用于模型微调、数据增强实验、mAP基准测试及检测 pipeline 全流程开发。1. 项目概述一份4500张的“杯子”数据集最近在整理硬盘翻出来一个压箱底的宝贝——一个我自己标注的、包含4500张图片的“杯子”数据集格式是经典的VOC和YOLO双格式。这玩意儿是我几年前为了验证一个轻量级目标检测模型而做的当时市面上要么是通用的大数据集像COCO、PASCAL VOC要么就是特定领域的工业数据集想找一个品类单一、标注精准、数量适中的“杯子”数据集来练手还真不容易。于是我一咬牙自己动手丰衣足食。这个数据集的核心价值就在于它的“纯粹”和“实用”。它不追求大而全而是聚焦于“杯子”这一个日常物体涵盖了马克杯、玻璃杯、保温杯、纸杯、咖啡杯等多种常见类型拍摄场景包括办公室、家庭厨房、咖啡馆、户外等光照、角度、遮挡情况都比较丰富。对于刚入门计算机视觉特别是目标检测领域的朋友来说这是一个绝佳的练手材料。你不用面对COCO里80个类别的复杂场景可以专心致志地研究“如何让模型更好地识别一个杯子”把数据预处理、模型训练、调参、评估这一整套流程跑通、吃透。无论是学习YOLOv5/v8/v9还是熟悉MMDetection、Detectron2等框架这个数据集都能提供一个清晰、低噪的学习路径。2. 数据集深度解析从采集到标注的全链路思考2.1 数据采集策略与场景构建当初做这个数据集第一个难题就是拍什么怎么拍如果只是对着家里的几个杯子一通乱拍得到的图片分布会非常集中模型极易过拟合换个环境就“不认识”杯子了。因此我制定了一个简单的采集策略核心是“控制变量下的多样性”。首先我定义了“杯子”的范畴主要用于盛放液体的、带握柄或无握柄的容器。这排除了碗、碟、瓶子等。然后我准备了约20个形态各异的杯子作为“主角”。采集场景分为四类纯净背景在纯色背景布白、灰上单独摆放杯子用于获取高质量、无干扰的样本这类数据约占15%。它们的作用是让模型在最开始就能清晰地学习到“杯子”的基本轮廓和纹理特征。简单场景在办公桌、书架、厨房台面等日常环境中摆放杯子可能伴有键盘、书本、水果等简单物品约占35%。这是模型需要学会处理的最常见情况——目标物体处于一个结构化的背景中。复杂场景在咖啡馆、餐厅、会议室等真实环境中拍摄杯子的周围可能有其他餐具、食物、多人手部、复杂光影等约占40%。这部分数据是提升模型鲁棒性的关键迫使模型学会在杂乱中定位目标。挑战性场景包括遮挡杯子被书挡住一半、截断图片边缘只拍到杯子的一部分、反光玻璃杯、变形软质纸杯被捏瘪等约占10%。特意加入这些“困难样本”能有效防止模型学到一些脆弱的、表面的规律。拍摄设备就是手机注意关闭AI美化功能以保证图像的原生性。分辨率统一为1920x1080格式为JPG。这里有个细节不要用广角镜头怼很近拍会产生严重的透视畸变增加模型的学习难度。保持一个日常的观察距离进行拍摄。2.2 标注规范与质量控制数据质量一半在采集一半在标注。我使用的是LabelImg这款经典工具因为它同时支持PASCAL VOC和YOLO格式的导出非常方便。标注的核心原则是紧贴目标类别唯一。边界框Bounding Box框体必须紧密贴合杯子的最外缘。对于带握柄的马克杯框体要包含整个杯身和握柄。对于玻璃杯要沿着玻璃的轮廓而不是里面液体的轮廓。这是一个需要耐心和一致性的工作标注者的主观判断会直接影响数据质量。我个人的经验是在标注了大约200张后手感和标准就基本稳定了这时可以回头抽检最初标注的图片往往会发现一些框得不够紧的问题需要修正。类别标签这个数据集只有一个类别cup。虽然杯子种类繁多但在这个数据集的定位里我们不进行细粒度分类如mug,glass所有杯子都统一为cup。这简化了任务让学习者更专注于检测本身。如果后续想做细分类可以在cup这个父类下增加子类但那是另一个项目了。质量控制流程一轮标注由我本人完成所有图片的初标。交叉验证邀请另一位有计算机视觉背景的朋友随机抽取10%的图片450张进行复查。复查重点在于边界框的贴合度和类别是否正确。不一致处理对于复查中发现的不一致标注我们两人会一起讨论确定一个双方认可的标准然后我不仅修正这450张还会根据这个标准回顾所有类似情况的图片进行批量修正。这个过程大概修正了3%左右的标注框。格式统一与检查最后使用一个自写的Python脚本批量检查所有XMLVOC格式和TXTYOLO格式文件。检查内容包括文件是否能正常解析、坐标值是否在[0,1]区间内YOLO格式、是否有漏标或重复标、图片文件是否存在等。这个脚本帮我发现了几个因为误操作导致的空标签文件。注意标注是一项极其耗时的工作。4500张图片平均每张标注耗时约1分钟包含打开、定位、画框、保存这就是75个小时。加上质量控制的时间总投入接近100人时。所以当你拿到一个高质量的数据集时请务必珍惜背后的劳动。2.3 双格式详解VOC vs. YOLO数据集提供了两种格式这是为了适配不同的训练框架和 pipeline。2.3.1 PASCAL VOC格式这是一种基于XML的、信息非常丰富的格式。每个图片对应一个.xml文件存储在Annotations文件夹下。annotation folderimages/folder filename000001.jpg/filename size width1920/width height1080/height depth3/depth /size object namecup/name bndbox xmin522/xmin ymin308/ymin xmax702/xmax ymax650/ymax /bndbox /object /annotation优点信息完整包含图片尺寸、目标类别、以及绝对坐标的边界框。人类可读性强也方便进行各种复杂的数据分析和处理。缺点文件体积相对较大4500个XML文件解析速度比纯文本慢。在训练前通常需要将其转换为模型框架直接需要的格式如COCO JSON或YOLO TXT。2.3.2 YOLO格式这是YOLO系列模型原生的格式极其简洁。每个图片对应一个同名的.txt文件存储在labels文件夹下。0 0.636979 0.444444 0.093750 0.316667每一行代表一个物体格式为class_id x_center y_center width heightclass_id: 类别索引这里只有0代表cup。x_center, y_center: 边界框中心点的归一化坐标除以图片宽高。width, height: 边界框的归一化宽高。计算示例对于上面XML中的框(522, 308, 702, 650)图片尺寸1920x1080。框中心 x (522 702) / 2 612框中心 y (308 650) / 2 479框宽度 w 702 - 522 180框高度 h 650 - 308 342归一化x_center 612 / 1920 ≈ 0.31875,y_center 479 / 1080 ≈ 0.44352,width 180 / 1920 0.09375,height 342 / 1080 ≈ 0.31667。可以看到与示例数据有细微出入这是因为示例数据是另一张图的此处仅演示计算过程。优点文件小巧解析极快直接供YOLO模型读取无需转换。缺点丢失了图片的绝对尺寸信息且对于不熟悉的人来说可读性差。为什么同时提供两种兼容性VOC格式是许多传统框架和评估工具如官方的PASCAL VOC评测工具的“通用语”。如果你想用MMDetection等非YOLO系框架通常需要VOC或COCO格式。便捷性直接用YOLO格式训练YOLO模型是最方便的省去了转换步骤。学习价值通过对比两种格式你可以深刻理解目标检测中数据表示方式的差异以及归一化坐标的意义。我还提供了一个转换脚本教你如何将VOC XML批量转为YOLO TXT这是一个非常实用的数据处理技能。3. 基于此数据集的YOLOv8模型训练全流程实操有了数据下一步就是让它“跑”起来。这里我以当前最流行的Ultralytics YOLOv8为例展示从零开始训练一个“杯子检测器”的完整过程。3.1 环境配置与数据准备首先建立一个清晰的项目目录结构这是好习惯的开始cup_detection_project/ ├── datasets/ │ └── cups4500/ │ ├── images/ │ │ ├── train/ # 存放3600张训练图片 │ │ └── val/ # 存放900张验证图片 │ └── labels/ │ ├── train/ # 存放对应的3600个YOLO格式标签文件 │ └── val/ # 存放对应的900个YOLO格式标签文件 ├── yolov8n_cup.yaml # 数据集配置文件 ├── train.py # 训练脚本 └── predict.py # 推理脚本关键步骤1划分训练集和验证集我按照8:2的比例随机将4500张图片划分为3600张训练集和900张验证集。必须确保图片和标签文件同步移动。我使用Python脚本完成核心是sklearn.model_selection的train_test_split函数并设置了随机种子如random_state42以保证结果可复现。关键步骤2创建数据集配置文件在yolov8n_cup.yaml中定义数据路径和类别# cups4500 dataset configuration path: ./datasets/cups4500 # 数据集根目录 train: images/train # 训练集图片相对路径 val: images/val # 验证集图片相对路径 # 类别数量和信息 nc: 1 # 类别数我们只有‘cup’ names: [cup] # 类别名称列表这个文件是YOLOv8读取数据的指南路径一定要写对。3.2 模型训练与关键参数解析YOLOv8提供了CLI和Python API两种方式这里用Python API更灵活。from ultralytics import YOLO # 加载一个预训练模型推荐从官方模型开始如YOLOv8n model YOLO(yolov8n.pt) # 这会自动下载模型 # 开始训练 results model.train( datayolov8n_cup.yaml, # 数据集配置文件 epochs100, # 训练轮数 imgsz640, # 输入图片尺寸 batch16, # 批次大小根据你的GPU内存调整 workers4, # 数据加载线程数 device0, # 使用GPU 0如果是CPU则设为cpu projectcup_train, # 项目保存目录 nameexp1, # 实验名称 pretrainedTrue, # 使用预训练权重强烈建议 optimizerAdamW, # 优化器 lr00.01, # 初始学习率 weight_decay0.0005, # 权重衰减 save_period10, # 每10个epoch保存一次检查点 ampTrue # 使用自动混合精度训练加快速度并节省显存 )核心参数经验谈epochs对于4500张图100个epoch通常足够。可以通过观察验证集损失曲线来判断是否早停连续多个epoch损失不降反升。imgsz640是YOLOv8的默认尺寸在精度和速度间取得了良好平衡。如果你的杯子在图中普遍较小可以尝试增大到832但会显著增加训练时间和显存消耗。batch这是最需要根据硬件调整的参数。在显存允许的情况下越大越好如16, 32。如果出现“CUDA out of memory”错误就调小batch同时可以适当调高lr0学习率作为补偿。pretrainedTrue务必使用。这是在COCO等大型数据集上预训练的权重包含了丰富的通用特征提取能力边缘、纹理、形状等能让你的模型在“杯子”数据上更快、更好地收敛。从零训练pretrainedFalse效果会差很多且需要更多数据和时间。ampTrue自动混合精度训练能大幅减少显存占用并加快训练速度对最终精度影响微乎其微现代GPU上强烈建议开启。训练开始后终端会输出日志同时会在cup_train/exp1目录下生成一系列文件其中最重要的是weights/best.pt最佳模型和results.csv训练指标日志。3.3 训练过程监控与评估解读训练不是一挂了之你需要学会看“仪表盘”。YOLOv8会在训练过程中实时绘制曲线图主要关注以下几个损失曲线train/loss和val/loss这是最重要的指标。理想情况下训练损失和验证损失都应稳步下降并最终趋于平缓。如果训练损失持续下降而验证损失在后期开始上升这是典型的过拟合信号。此时应果断停止训练早停或者采取增加数据增强、加入Dropout层、减小模型容量等措施。精度指标metrics/mAP50-95这是目标检测的核心评估指标。mAP50IoU阈值为0.5时的平均精度和mAP50-95IoU阈值从0.5到0.95步长0.05的平均值是最常用的。对于“杯子”这种形状相对规整的物体训练良好的模型mAP50达到0.95以上mAP50-95达到0.7以上是合理预期。学习率曲线lr/lr0YOLOv8默认使用余弦退火等动态调整学习率的策略。你会看到学习率随着训练进行从一个初始值先经过热身warmup缓慢上升再平滑下降。如果曲线异常如剧烈震荡可能需要调整优化器参数。在我的实际训练中使用YOLOv8n纳米级模型在RTX 3060 GPU上训练100个epoch大约耗时1.5小时。最终模型在验证集上的mAP50-95达到了0.72mAP50达到了0.96。对于一个小型专用数据集来说这个效果已经非常不错了。4. 模型优化与部署实战训练出一个基础模型只是第一步要让它在实际应用中表现稳定还需要进行优化、测试并最终部署。4.1 模型优化技巧与策略1. 数据增强的针对性调整YOLOv8默认开启了Mosaic、MixUp等强力的数据增强。但对于“杯子”检测有些增强需要谨慎旋转Rotate杯子通常是直立放置的大角度的随机旋转如±45度可能会生成不自然的、倒置的杯子图像这可能会干扰模型。可以适当减小旋转角度范围如±15度。透视变换Perspective轻微的透视变换有助于模型学习不同视角但强度不宜过大。 你可以在model.train()参数中调整增强参数例如model.train( ... degrees10.0, # 旋转角度范围从默认的0.0调整为±10度 perspective0.0005, # 透视变换强度默认是0.001可以调小 flipud0.0, # 上下翻转概率设为0杯子很少倒过来 )2. 模型结构微调以YOLOv8为例对于小数据集大的模型如YOLOv8x反而容易过拟合。YOLOv8n或YOLOv8s通常是更好的起点。如果你发现模型在验证集上表现不佳可以尝试减少模型深度/宽度虽然YOLOv8官方没有直接提供参数但你可以寻找社区实现的、可调节宽度和深度的版本或者选择更小的预训练模型。添加/调整正则化在model.yaml配置文件中需要自定义模型结构可以在卷积层后增加Dropout层或者增大现有正则化的强度。3. 利用验证集进行超参数调优不要只跑一次训练。可以用验证集进行小范围的网格搜索Grid Search或随机搜索Random Search调整关键超参数学习率lr0尝试[0.01, 0.005, 0.001]权重衰减weight_decay尝试[0.0005, 0.0001]优化器对比SGD和AdamW每次只调整1-2个参数并记录最终的mAP50-95找到最适合你数据集的组合。4.2 模型测试与性能分析训练完成后用model.val()在验证集上评估并用model.predict()在一个全新的、未参与训练和验证的测试图片集上进行测试。这个测试集我准备了约100张图片场景与训练集略有不同例如加入了更多夜间、强背光的图片。分析预测结果假阳性False Positive模型把什么误认成了杯子常见的有圆柱形灯罩、花瓶、特定形状的垃圾桶。这些“硬负样本”可以收集起来加入到训练集中进行困难负样本挖掘Hard Negative Mining重新训练模型能有效降低误报。假阴性False Negative哪些杯子没被检测出来通常是那些严重遮挡、极端光照、或者训练集中很少见的奇特造型杯子。同样这些图片也是宝贵的数据可以补充进数据集。边界框精度观察预测框和真实框的重合度IoU。对于IoU较低如0.5的样本检查是定位不准还是框的大小不合适。通过分析这些错误案例你就能明确模型当前的弱点以及下一步数据采集和标注应该重点关注的方向。4.3 轻量化部署方案选型模型最终要跑起来。根据应用场景有不同的部署选择方案一本地服务器部署Python ONNX这是最灵活的方式。首先将PyTorch模型导出为ONNX格式from ultralytics import YOLO model YOLO(path/to/best.pt) model.export(formatonnx, imgsz640, simplifyTrue)然后你可以使用onnxruntime库在任何支持的环境中运行它。相比于PyTorchONNX Runtime通常有更快的推理速度和更小的内存占用。import onnxruntime as ort import cv2 import numpy as np # 加载ONNX模型 session ort.InferenceSession(best.onnx) # 预处理图片... # 运行推理 inputs {session.get_inputs()[0].name: processed_image} outputs session.run(None, inputs) # 后处理输出...这种方案适合在PC、工作站或云端服务器上部署进行批量图片或视频流处理。方案二边缘设备部署TensorRT for NVIDIA Jetson如果你需要在嵌入式设备如NVIDIA Jetson Nano, TX2, Xavier NX上实时检测TensorRT是必选项。它会对ONNX模型进行图优化、层融合、精度校准FP16/INT8极大提升推理速度。将ONNX模型用TensorRT的trtexec工具或Python API转换为TensorRT引擎.engine文件。在Jetson设备上使用TensorRT C或Python API加载引擎进行推理。 这个过程有一定门槛但能将YOLOv8n在Jetson Nano上的推理速度从每秒几帧提升到20帧以上满足实时性要求。方案三移动端部署TFLite for Android/iOS如果想在手机App里集成需要导出为TFLite格式。YOLOv8官方支持TFLite导出但可能需要一些后处理代码的适配。model.export(formattflite, imgsz320) # 移动端通常使用更小的输入尺寸在Android上可以使用TFLite Android Support Library在iOS上可以使用Core ML通过coremltools将PyTorch模型转Core ML格式。移动端部署的核心挑战是平衡精度和速度通常需要选择更小的模型如YOLOv8n和更低的输入分辨率如256x256。部署心得不要盲目追求最高的mAP。在部署时尤其是边缘设备推理速度FPS和内存/显存占用往往是更关键的约束。你可能需要为了速度接受精度上微小的损失例如使用INT8量化后的模型。在导出模型前务必在目标硬件平台上进行全面的速度和精度测试。5. 常见问题、避坑指南与项目扩展5.1 训练过程中的典型问题与解决Q1: 训练一开始损失loss就变成NaN了。原因A最常见的原因是学习率lr0设置得太高。对于小数据集从预训练权重开始训练学习率不宜过大。解决将lr0从0.01降低到0.001或0.0005重新开始训练。同时检查数据中是否有损坏的图片或标签文件如坐标值超出范围。原因B数据增强过于激进产生了无法计算的图像数据。解决调低数据增强的强度参数如mosaic0.5降低Mosaic增强的概率。Q2: 验证集损失val_loss不降反升但训练集损失train_loss一直下降。原因这是典型的过拟合。模型过度记忆了训练数据的细节包括噪声而无法泛化到新数据。解决增加数据最有效的方法。可以收集更多样化的杯子图片或者对现有图片进行更多样化的数据增强但注意强度。增强正则化在训练命令中增加dropout0.2参数如果模型支持或增大weight_decay如从0.0005调到0.001。早停Early Stopping监控val_loss当其在连续10-20个epoch内不再下降时手动停止训练并回滚到val_loss最低的那个epoch的模型权重。使用更小的模型从YOLOv8s换到YOLOv8n。Q3: mAP很低模型好像没学到东西。原因A数据标注有严重问题。例如类别标签错误或者边界框标注得非常不准确。解决随机抽取几十张训练图片用训练中的模型进行预测并可视化预测框和真实框。对比查看如果真实框本身就有很大问题需要重新检查并修正标注。原因B训练集和验证集的数据分布差异太大。例如训练集全是白底杯子验证集全是复杂背景。解决确保数据划分是随机、均匀的。重新划分数据集。原因C预训练权重加载失败或未使用。pretrainedTrue参数没生效或者下载的权重文件损坏。解决检查训练日志开头确认是否打印了“Loading pretrained weights...”。可以尝试手动下载权重文件并指定路径model YOLO(‘./yolov8n.pt’)。5.2 数据层面的陷阱与应对陷阱1类别不平衡的“隐形炸弹”虽然我们这个数据集只有“杯子”一个类不存在类别间不平衡。但存在场景不平衡。如果3600张训练图中有3000张都是办公室场景只有600张是厨房场景那么模型在办公室场景上的表现会非常好而在厨房场景上就会差很多。这本质上也是一种数据分布的不平衡。应对在划分训练/验证集时使用分层抽样。确保不同场景如办公室、厨房、咖啡馆的图片在训练集和验证集中所占的比例大致相同。可以在划分前给每张图片打上场景标签然后按场景分层抽样。陷阱2标注一致性的“魔鬼细节”多人标注或单人标注周期过长都可能导致标准漂移。比如前几天标注时杯子的把手严格包含在框内后来累了可能框得就松一些。应对制定详细的《标注规范文档》并配以大量正例和反例图片。在标注过程中和结束后进行多轮抽查和一致性检验。使用像CVAT、Label Studio这类支持审核工作流的标注平台会更有帮助。5.3 项目扩展方向这个4500张的杯子数据集是一个很好的起点你可以基于它做很多有趣的扩展细粒度分类将cup大类细分为mug马克杯、glass玻璃杯、thermos保温杯、paper_cup纸杯等。这需要重新标注数据但能打造一个更有商业价值的“杯具识别”系统。实例分割将边界框标注升级为像素级的掩膜Mask标注。这能让你不仅知道杯子在哪还能知道它的精确轮廓。可以用于更精细的应用如AR场景中虚拟物体与杯子的交互。姿态估计标注杯子的握柄方向或杯口朝向。这在机器人抓取应用中非常有用机器人需要知道握柄的位置才能成功抓起杯子。合成数据Synthetic Data扩充使用3D建模软件如Blender生成大量不同材质、颜色、光照条件下的虚拟杯子图片和完美标注。将合成数据与真实数据混合训练可以低成本、快速地提升模型在极端情况下的鲁棒性。跨域适应用这个数据集训练一个基础模型然后收集少量其他风格如卡通画、素描、红外图像的杯子图片进行微调让模型能适应不同域Domain的图片。最后我想说的是构建和用好一个数据集其价值远大于简单地跑通一个模型。这个过程迫使你深入思考任务的本质、数据的偏见、模型的局限。这个4500张的杯子数据集就像一块磨刀石希望能帮助你在目标检测乃至更广阔的计算机视觉领域把自己的“刀”磨得更快、更亮。本文还有配套的精品资源点击获取
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

想做出电影感却不懂相机参数?5 个场景带你上手 Open Generative AI Cinema Studio 2026/9/4 16:15:04

想做出电影感却不懂相机参数?5 个场景带你上手 Open Generative AI Cinema Studio

想做出电影感却不懂相机参数?5 个场景带你上手 Open Generative AI Cinema Studio 【免费下载链接】Open-Generative-AI Unrestricted Open-source alternative to AI video platforms — Free AI image & video generation studio with 600 models (Flux, Midj…

阅读更多 →
GaN氮化镓技术应用指南:从核心优势到项目部署全解析 2026/9/4 16:15:04

GaN氮化镓技术应用指南:从核心优势到项目部署全解析

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

阅读更多 →
Label Studio 安装与快速上手教程:五种方式跑通开源数据标注平台的完整指南 2026/9/4 16:15:04

Label Studio 安装与快速上手教程:五种方式跑通开源数据标注平台的完整指南

Label Studio 安装与快速上手教程:五种方式跑通开源数据标注平台的完整指南 【免费下载链接】label-studio Label Studio is a multi-type data labeling and annotation tool with standardized output format 项目地址: https://gitcode.com/GitHub_Trending/la…

阅读更多 →
论文研究过程说不清?过程留痕的4步清单 2026/9/4 16:15:04

论文研究过程说不清?过程留痕的4步清单

答辩现场让人发怵的问题,往往不是"你的结论对不对",而是"说说这个研究是怎么一步步做下来的"。很多同学论文写完了、盲审也过了,唯独这类追问卡壳——不是没做,是过程没留下可回溯的痕迹。本文给出一套过程留…

阅读更多 →
3步在本地跑起Element Plus文档站 2026/9/4 16:15:04

3步在本地跑起Element Plus文档站

3步在本地跑起Element Plus文档站 【免费下载链接】element-plus 🎉 A Vue.js 3 UI Library made by Element team 项目地址: https://gitcode.com/GitHub_Trending/el/element-plus 下面用大约4分钟讲清楚怎么把 Element Plus 文档站跑在你自己的机器上&…

阅读更多 →
AI辅助Minecraft插件开发:从零构建欢迎插件全流程实践 2026/9/4 16:12:02

AI辅助Minecraft插件开发:从零构建欢迎插件全流程实践

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

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞