X射线底片焊缝缺陷检测:2647张6类标注数据集,可直接喂给YOLO
简介面向工业X射线底片焊缝缺陷检测的目标检测数据集涵盖裂纹、未熔合、未渗透等6类焊缝缺陷共2647张底片图像、4766个真实标注框适合用于YOLO、Faster R-CNN等目标检测模型的训练与评测。数据采用VOC与YOLO双格式存储图片、xml标注、txt标签一一对应并附有训练、验证、测试划分列表可直接接入常见检测框架同时清晰标注每类缺陷的框数其中空隙缺陷框数最多、未融化最少便于分析样本分布。压缩包共2000个文件含1995个xml标注文件和5个txt列表文件大小约39.56MB结构规范。已有358人学习浏览对焊接质检、无损探伤等场景下的缺陷识别模型开发具有实用价值。1. X射线底片焊缝缺陷检测一份能直接喂给YOLO的6类标注数据集做工业质检的人都有体会X射线底片上的焊缝缺陷和自然图像里的目标完全不是一回事。裂纹细得像头发丝未熔合和未渗透在灰度上几乎长一个样夹渣和孔隙又都是黑点团肉眼区分都费劲更别说让模型在训练初期就分得清。这份“目标检测6类X射线底片焊缝缺陷检测数据集2647张.zip”解决的就是这个刚需2647张真实X射线底片6类缺陷共4766个矩形框图片和xml、txt同步给全VOC格式和YOLO格式双轨输出不用再折腾格式转换解压就能开始训练。适合正在做压力容器焊缝探伤、管道检测、钢结构质检的算法工程师也适合拿它当工业缺陷检测练手数据的研究生。这份资源的价值不在于“量大”而在于它是手工标注的真实底片——类别分布天然不均衡、背景噪声大、缺陷细长这些恰恰是工业场景里最真实的坑。2. 数据集结构与标签体系2647张图、6类缺陷、4766个框的分布逻辑2.1 压缩包目录JPEGImages、Annotations、labels三件套解压后是标准的VOCYOLO混合布局核心是三个文件夹加五个txt├── Annotations/ # 2647个xmlPascal VOC标注格式 ├── JPEGImages/ # 2647张jpg底片原图 ├── labels/ # 2647个txtYOLO归一化标注格式 ├── trainval.txt # 训练验证全集 ├── train.txt # 训练集划分 ├── val.txt # 验证集划分 ├── test.txt # 测试集划分 └── 说明.txt # 数据集说明文档严格说这个目录结构沿用了Pascal VOC的划分惯例。trainval.txt是train.txt和val.txt的并集给这套文件的人通常默认你会在训练时用train.txt喂模型、val.txt做验证test.txt留给最后评估。需要注意一点VOC时代trainval是按大约1:1的比例对半切train和val的但这里train.txt和val.txt各自多少张你拿到之后第一件事应该是用wc -l统计一下确认是随机划分还是按底片序号顺序切分。如果是顺序切分同一批次底片的光照条件和工艺参数会全部集中到某一侧模型验证结果会虚高。Annotations里的xml是Pascal VOC经典结构每个xml对应一张底片object节点下包含name和bndbox也就是类别名和矩形框坐标。labels里的txt则是YOLO格式每行是“类别索引 归一化中心x 归一化中心y 归一化宽 归一化高”五个数字全为浮点。两个格式共存的好处是你用yolov5、yolov8、mmdetection都直接读txt需要跑mmrotate或自己写预处理时又能读xml做二次处理不用两头找工具。2.2 六类缺陷分布4766个框背后的类别不均衡信号标注的6个类别及框数如下标签名中文含义框数cCrack 裂纹1176lofLack Of Fusion 未熔合629lopLack Of Penetration 未渗透562pPorosity 孔隙1519sSlag Inclusion 夹渣704uunfused 未融化176总计4766个框平均每张图约1.8个目标。注意p类孔隙框数最多、u类未融化只有176个最少的类与最多的类相差约8.6倍。这个不均衡程度对目标检测来说属于中等偏上——不至于完全训不出来但如果你用默认的超参数直接训练u类的AP大概率会明显掉队。还有个细节容易被忽略焊缝缺陷检测里同一道焊缝上相邻缺陷经常共用一张底片所以图片之间并不独立同一条焊缝的多个缺陷在特征上有强相关性划分数据集时如果按图片文件名字母序切分很容易把同一条焊缝的底片全分到训练集或验证集评估结果会失真。数据集的图像质量为“清晰、未增强”这意味着你拿到的就是原始底片没有做过对比度拉伸和伪彩色映射。对X射线底片来说这是一个偏保守但诚实的选择增强留给训练阶段做而不是在数据发布阶段做避免不同标注者的灰度标准不一致。每个框都是矩形框不是多边形分割所以这份数据只适用于目标检测任务做不了缺陷分割。如果你的需求是对裂纹轮廓做精细测量需要自己补分割标注。3. VOC转YOLOtxt标注的解析脚本与坐标归一化边界3.1 从xml到txt一个通用的转换脚本虽然压缩包里已经给好了labels目录但实战中你一定会遇到需要自己从xml重新生成txt的情况——比如想换标签名、想过滤掉某些类、想检查别人转好的txt是否有误。我一般会在项目里放一个这样的转换脚本解压后先跑一遍用于校验# xml_to_yolo.py import os import xml.etree.ElementTree as ET from pathlib import Path def convert_annotation(xml_path, out_dir, class_map): tree ET.parse(xml_path) root tree.getroot() img_w int(root.find(size/width).text) img_h int(root.find(size/height).text) txt_lines [] for obj in root.findall(object): name obj.find(name).text if name not in class_map: continue cls_id class_map[name] bbox obj.find(bndbox) xmin float(bbox.find(xmin).text) ymin float(bbox.find(ymin).text) xmax float(bbox.find(xmax).text) ymax float(bbox.find(ymax).text) # 转YOLO归一化坐标中心点宽高全部除以原图宽高 x_center (xmin xmax) / 2.0 / img_w y_center (ymin ymax) / 2.0 / img_h w (xmax - xmin) / img_w h (ymax - ymin) / img_h # 越界保护底片边缘目标裁剪后可能略超[0,1] x_center min(max(x_center, 0), 1) y_center min(max(y_center, 0), 1) w min(max(w, 0), 1) h min(max(h, 0), 1) txt_lines.append(f{cls_id} {x_center:.6f} {y_center:.6f} {w:.6f} {h:.6f}) xml_name Path(xml_path).stem with open(Path(out_dir) / f{xml_name}.txt, w) as f: f.write(\n.join(txt_lines)) if __name__ __main__: class_map {c: 0, lof: 1, lop: 2, p: 3, s: 4, u: 5} xml_dir Annotations out_dir labels os.makedirs(out_dir, exist_okTrue) for xml_file in Path(xml_dir).glob(*.xml): convert_annotation(str(xml_file), out_dir, class_map)这段代码的逻辑并不复杂但有两个地方值得展开。第一个是归一化分母x系列坐标一律除以图像宽度img_wy系列坐标一律除以图像高度img_h这是YOLO格式的红线——一旦分子分母用混比如用img_h去除xmin训练出来的所有预测框都会在水平方向上整体偏移而且这种错误在loss曲线上一时半会看不出来。第二个是越界保护X射线底片的缺陷经常紧贴图像边缘标注框被裁掉一部分后xmax可能略大于img_w不夹逼到[0,1]范围部分框架会报错或产生NaN梯度。class_map的顺序决定了txt里第一列的数字这个顺序必须和训练时的data.yaml里的names列表完全一致否则c类会被当成lof训练整个模型全部错位。3.2 读txt校验标注一行样本值分解转换完或拿到现成的labels后我建议随机抽几个txt文件打开看原始内容心里对数据有个底。比如某个labels/c_23.txt内容可能是3 0.512345 0.478210 0.031234 0.024156 0 0.701232 0.562189 0.012345 0.018752第一行第一个数字是3对应class_map里的p孔隙后面的0.512345是中心点的归一化x0.478210是归一化y0.031234和0.024156分别是归一化宽高。把它还原成像素坐标中心点x乘原图宽框宽乘原图宽就能得到像素级bbox反向画回原图确认标注位置是否准确。这一步我称之为“人眼验收”——机器指标可以骗人但框画在原图上合不合理一眼就能看出来。校验脚本可以参考下面的逻辑遍历labels目录里所有txt统计每个class_id出现的总次数和缺失的类别并检查坐标是否都在[0,1]区间内。跑完这个脚本如果某个类完全没有出现通常是class_map顺序配错了如果大量坐标等于0或1说明原始xml里存在边缘框需要留意增强阶段的边界裁剪策略。# 校验labels的基本完整性bashgrep组合 for i in 0 1 2 3 4 5; do echo class_id$i count$(grep -rh ^$i labels/ | wc -l) done这个命令可以快速核对类别统计是否与数据集的官方框数一致。如果grep出来的数量和简介里给的c1176、lof629等对不上说明你拿到的txt经过了二次处理或class_map顺序被改过先停下来对齐再训练。数据集的框数统计是一份真实标注的“出厂检验报告”用它来验证文件完整性比看文件大小可靠得多。4. 用YOLOv5/v8训练data.yaml配置、训练命令与参数设置4.1 data.yaml路径、类别数目与列表顺序必须对上无论你选YOLOv5还是YOLOv8第一步都是写数据集配置文件。这个文件长这样# data.yaml train: ./train.txt val: ./val.txt test: ./test.txt nc: 6 names: 0: c 1: lof 2: lop 3: p 4: s 5: utrain、val、test直接指向压缩包里的txt文件每一行是图片的绝对路径或相对路径。这里有一个容易踩的坑train.txt里的路径分隔符是Linux风格还是Windows风格yaml不会帮你做兼容如果你在Windows下训练而txt里是/home/xxx/JPEGImages/c_23.jpg会直接报路径不存在。我常用的处理方式是在脚本里对路径做一次replace把反斜杠统一为正斜杠再检查第一行路径是否实际存在。nc6必须和labels里的最大class_id1相等names列表的顺序必须和class_map一致——这份数据集是c0、lof1、lop2、p3、s4、u5顺序不能凭感觉自己改。4.2 训练命令与核心参数选择用YOLOv8训练的基本命令yolo detect train \ modelyolov8n.pt \ datadata.yaml \ epochs100 \ imgsz640 \ batch16 \ device0 \ patience20几个参数的选择逻辑值得说清楚。首先是模型架构X射线底片上的裂纹和未融合是典型的细长小目标用yolov8n这种轻量级模型起步是合理的——工业缺陷检测的场景里部署端的算力普遍有限n模型训练速度快先跑通基线再决定是否换s或m。imgsz不要盲目调到1280虽然更大的输入能保留裂纹细节但显存占用会翻倍而且原始底片本身分辨率有限放大到1280并不会增加真实信息量我一般先用640跑一轮看c类的召回率如果细长裂纹漏检严重再提到960。patience设为20表示验证集指标连续20轮不提升就早停这是避免无效训练时间的常用手段。batch大小取决于显存batch16在12G显存上跑yolov8n比较稳妥。yolov5的命令类似只是框架前缀不同python train.py \ --data data.yaml \ --weights yolov5s.pt \ --img 640 \ --batch 16 \ --epochs 100 \ --device 0看到这里你可能会问这两个框架选哪个更合适我的习惯是先用YOLOv8因为它的验证流程和指标输出更现代confusion_matrix.png和results.csv的直接可读性更好。如果你已有的推理管线是YOLOv5写的老代码用v5也没问题这份数据集的labels格式两者完全通用。4.3 训练输出别只盯总的mAP50按类看结果训练完成后YOLO系列会在runs/detect/train目录下输出results.csv、confusion_matrix.png、val_batch0_pred.jpg等文件。我强烈建议养成一个习惯先打开confusion_matrix.png数一遍对角线再按类别看每个类的AP。总的mAP50在这个数据上可能会比较“好看”因为p类孔隙框数多、特征明显会把均值拉高而u类只有176个框单独一类的AP很可能掉到0.5以下甚至接近0。不看分类的AP你就很难知道自己辛苦训练的模型其实漏掉了整个类别。5. 避坑X射线底片检测的五个常见翻车点5.1 背景占比过大loss下降但预测结果几乎全是空白现象训练时box_loss正常下降但跑验证集时模型几乎一个框都预测不出来或者预测框置信度全在0.1以下。原因X射线底片里焊缝区域只占图像的一小部分正样本框总面积和整图面积的比例可能只有百分之几。模型在前几十个epoch把几乎全部像素都当成了背景置信度校准严重偏向负样本。解决训练启动阶段先关闭mosaic增强或者把mosaic概率从1.0降到0.5让模型先看到完整的目标形状另一个有效手段是给分类损失增加正样本权重比如把loss中针对前景的权重调高到1.5~2.0。如果你用的是YOLOv8可以在训练后用yolo detect val单独看每一类的PR曲线确认c类和u类的召回起始点是否过低。5.2 u类AP接近0框少的类别被模型直接放弃现象总mAP50有0.7以上但查分类报告发现u类的AP只有0.05。原因u类未融化只有176个框按train/val约8:2划分后训练集中只剩约140个样本而且未融化在灰度特征上与未熔合和未渗透非常接近模型倾向于把它们映射到样本更多的类别上。解决先别急着换模型把val_batch0_pred.jpg里u类的预测结果找出来看看——如果全部被预测成了lof或lop说明类别间特征边界本来就模糊。此时可以选择两类做法一是把u与语义接近的类合并后重新训练前提是你接受业务上合并后的定义二是做类别的复制粘贴增强把u类目标随机复制到无缺陷区域的底片上变相增加样本多样性。5.3 预测框整体偏移几个像素到几十像素现象模型loss和mAP都正常但预测框画在原图上时整体向右或向下偏了一段距离小目标偏移比例尤其明显。原因VOC转YOLO时分子分母用混最典型的是用图片高度去除以x轴的坐标导致归一化x值整体偏大。另一个可能原因是标注坐标是基于原始大图的而训练预处理时做了resize但没有同步更新归一化坐标——虽然这种情况极少见。解决把labels里任意一个txt的前三行还原成像素坐标用OpenCV画框回看原图和Annotations里的xml坐标对比偏差超过2个像素就要重新生成txt。我的习惯是转换完先抽样画10张图人工过一遍这个步骤花不了几分钟能省掉训练一整天后才发现数据有问题的痛苦。5.4 训练集上mAP 0.99验证集上只有0.5现象训练集指标近乎完美验证集指标断崖式下跌且差距随训练轮数增大。原因这个数据集的图像“未增强”底片上的划痕、水渍、胶片噪声在模型眼里都是容易被记住的特征。加上X射线底片数量有限模型在高容量下会把训练集的噪声细节直接记忆下来也就是过拟合。解决训练时至少打开一定程度的数据增强——hsv_h、hsv_s、flipud、fliplr这些基础增强对底片任务影响不大可以放心开但degrees旋转不要开太大焊缝在底片上有相对固定的朝向旋转超过30度会产生实际场景中不存在的样本分布。如果过拟合仍然严重优先考虑减小模型容量从yolov8m退回yolov8s而不是继续加大数据增强。增强手段里最常见的翻车场景是翻转后标签没有同步翻转YOLO框架会自动处理但如果你用自己写的预处理流程一定要检查增强后的txt坐标是否同步。5.5 验证集评估虚高兄弟图片分到了不同集合里现象验证集mAP比业务现场实测效果高出一大截。原因划分txt文件的人按文件名字母序或按目录顺序切分同一道焊缝的多张连续底片被切进train和val两侧相当于模型已经在训练时见过“同一条焊缝的其他角度”验证时自然表现好。解决清理思路是把数据划分改成按底片组切分但这份数据集的jpg文件名无法直接体现底片组关系操作上可以退一步——用文件名hash做划分比顺序切分抗风险能力强。如果你要严格评估建议用K折交叉验证把2647张图随机分成5份每次用4份训练1份验证五轮结果取均值。这个数据集规模不大5折训练在yolov8n下是几个小时能跑完的成本换来的评估可信度是值得的。6. 进阶用法类别不均衡的针对性调优与模型验收技巧6.1 按类别做样本重加权与硬样本挖掘先跑一个不做过任何处理的baseline记录六个类各自的AP。通常结果会是p类最高、u类最低。此时再决定要不要做重加权YOLOv8没有直接的class weight参数但可以通过修改损失函数的cls_pw、obj_pw系数调节YOLOv5的数据配置里支持给每个类别单独设置权重。对这份数据来说我的建议是不要一上来就重加权先看confusion_matrix里u类和lof、lop之间的混淆程度——如果混淆严重说明类别间边界本身太模糊单纯加权重只会提高u类的召回但引入大量误检。更实用的做法是在训练结束后把验证集里u类的假阴性样本全部导出人眼过一遍确认哪些是标注遗漏、哪些是特征确实接近。这份数据集的标注是矩形框矩形框会把缺陷周围的正常组织也包进框内所以同一类缺陷在不同底片上的特征方差比自然图像目标更大这也是X射线检测任务的固有难度。6.2 验收模型画框回看比看指标更诚实训练结束后我习惯做一个和官方验证不一样的验收动作从test.txt里随机抽50张训练时绝对没见过的图跑推理然后把模型的预测框画回原图单独看每个类别的预测效果。重点是两类图一类是只有单个小目标的底片检验是否有漏检另一类是多个缺陷密集排列的底片检验是否有重复框和误合并。表格对比每个类的precision和recallrecall低于0.6的类别要重点排查。这里有个容易忽略的细节同一张底片上的多个孔隙如果它们距离很近模型可能输出一个把多个孔隙包在一起的大框这不算完全错误但业务上往往需要拆开计数。遇到这种情况可以通过调低conf_thres看是否分裂成多个框或者对输出做NMS阈值调整。我从那以后每次拿到标注数据都会强制走一遍“先看标签分布、再做画框回验、最后才开训练”的流程这个习惯让我少走了很多弯路。希望帮到你。本文还有配套的精品资源点击获取

相关新闻

AI辅助软件测试实战:从脚本生成到日志分析的全流程经验

AI辅助软件测试实战:从脚本生成到日志分析的全流程经验

软件测试这行的工具形态,这几年变化比我入行前十年加起来都大。以前同行碰头聊提效,无非是自动化框架怎么搭、脚本怎么写更稳、CI怎么接;现在问得最多的变成了"你平时用哪个AI工具""Prompt怎么写的""AI生成的脚本你…

2026/10/10 21:47:36 阅读更多 →
开源AI测试工具落地指南:从接口自动化到自愈定位器的实践选型

开源AI测试工具落地指南:从接口自动化到自愈定位器的实践选型

软件测试这个岗位,这两年的变化比过去十年加起来都大。我记得年初帮一个测试组做评审,同事把一份AI生成的接口用例贴出来,从覆盖路径到断言写法看着都像模像样,但一跑就发现大量断言是“凭空捏造”的——它把响应里根本不存在的字…

2026/10/10 21:47:36 阅读更多 →
Inno Setup自定义安装界面:ILSpy反编译+WinForms回调实践

Inno Setup自定义安装界面:ILSpy反编译+WinForms回调实践

简介:一套面向.NET应用开发者的Inno Setup自定义安装界面资源,用于解决安装包界面模板固化、动态配置繁琐的问题。资源基于Inno Setup增强版封装,内置对.NET Framework 4的依赖支持,并将界面逻辑集中在Code.iss脚本中,…

2026/10/10 21:47:36 阅读更多 →

最新新闻

教务系统Android端对接实战:反爬、协议逆向与离线缓存

教务系统Android端对接实战:反爬、协议逆向与离线缓存

简介:本资源是一份面向高校计算机与软件工程专业本科生及Android开发初学者的毕业设计类技术文档,聚焦移动教务系统开发实践,解决传统Web端教务平台在移动端访问不便、离线不可用、交互体验弱等痛点。文档详细阐述了基于Android客户端的教务信…

2026/10/10 22:37:21 阅读更多 →
Egg.js生产环境部署指南:从进程守护到Nginx反代与日志管理

Egg.js生产环境部署指南:从进程守护到Nginx反代与日志管理

1. 第14天的状态:从“能跑”到“能上线”15天学完eggjs的计划走到第14天,意味着你该从写业务代码的状态切换出来了。前13天我们折腾了路由、控制器、中间件、service层、定时任务、数据库ORM,本地一把梭跑得飞起,但真要把它丢到一…

2026/10/10 22:37:21 阅读更多 →
基于Unet的心脏分割实战:从源码解析到右心室优化与避坑指南

基于Unet的心脏分割实战:从源码解析到右心室优化与避坑指南

简介:这份资源面向计算机相关专业正在做课程设计、期末大作业或需要项目实战练习的学习者,提供一套基于U-Net实现心脏分割任务的完整Python方案,可直接作为医学图像分割方向的入门与进阶参考。压缩包共620个文件,约53.53MB&#x…

2026/10/10 22:37:21 阅读更多 →
LeetCode 70 爬楼梯全解:从递归到滚动数组的机考实战指南

LeetCode 70 爬楼梯全解:从递归到滚动数组的机考实战指南

机考刷题到第 70 题爬楼梯,很多人会觉得这题太简单了,一个 easy,递归几行就写完。但真到了机考或者面试手写代码的环节,这道题往往能筛掉一批人。LeetCode 70 爬楼梯是 LeetCode 热门 100 题里的钉子户,也是动态规划入…

2026/10/10 22:37:21 阅读更多 →
深入理解 ext4 文件系统:从 extent 到日志模式的底层原理

深入理解 ext4 文件系统:从 extent 到日志模式的底层原理

这是文件系统系列的第 6 篇。前面几篇我们把 VFS、挂载、块设备层这些外围机制大致过了一遍,今天终于要正面硬刚 Linux 上最常见、也最能打的文件系统:ext4。很多人每天都在mkfs.ext4、mount、df -h,但真被问到底层原理时,能讲清楚…

2026/10/10 22:37:21 阅读更多 →
Spring创建Bean失败排查:BeanCreationException根因分析与解决实践

Spring创建Bean失败排查:BeanCreationException根因分析与解决实践

"Error creating bean with name xxx..." 这一行红字,几乎是每个用Spring写后端的人都会在启动控制台里撞见的画面。我这些年帮同事排查、也自己在项目里踩,见过太多人一看到这句话就CtrlF搜Bean名字,然后从类头翻到类尾&#xff0…

2026/10/10 22:36:21 阅读更多 →

日新闻

卫星轨道分类全解析:从LEO到GEO的选型逻辑与工程实践

卫星轨道分类全解析:从LEO到GEO的选型逻辑与工程实践

1. 从“卫星轨道分类”这个标题说起:为什么值得花时间搞懂第一次接触“卫星轨道分类”这个概念,很多人会觉得它离自己很远——不就是天上的星星怎么转吗?但如果你正在做航天任务规划、遥感数据接收、星座设计,甚至只是准备一场航天…

2026/10/10 0:00:39 阅读更多 →
Spring AOP 核心原理与实战:从概念到日志切面落地

Spring AOP 核心原理与实战:从概念到日志切面落地

1. 从一个真实痛点说起:为什么你的代码里到处都是重复逻辑刚入行那会儿,我写过一个用户管理模块,注册、登录、改密码、注销四个接口。每个接口里都塞了几乎一样的日志打印、参数校验、事务开启和提交。当时觉得没什么,能跑就行。直…

2026/10/10 0:00:40 阅读更多 →
Python招聘数据采集与分析可视化:从采集清洗到薪资技能城市可视化全链路

Python招聘数据采集与分析可视化:从采集清洗到薪资技能城市可视化全链路

简介:这是一套面向计算机相关专业学生与项目实战学习者的Python数据采集与分析可视化完整项目,以Boss直聘岗位数据为对象,适合用作毕业设计、课程设计或期末大作业。资源包共38个文件,约246KB,以13个py源码文件为核心&…

2026/10/10 0:00:40 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

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

2026/10/10 11:14:25 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

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

2026/10/10 1:36:08 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

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

2026/10/10 11:14:58 阅读更多 →

月新闻

我发现了一个新思路:用 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/10 5:23:50 阅读更多 →
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/9 21:32:20 阅读更多 →
黑夜航拍船只数据集训练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/10 10:38:42 阅读更多 →