✨ feat(docs): 添加飞拍控制系统宣传文稿与飞拍轨迹规划逻辑图
This commit is contained in:
138
docs/figures/icsp-algorithm-ppt.svg
Normal file
138
docs/figures/icsp-algorithm-ppt.svg
Normal file
@@ -0,0 +1,138 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="1600" height="900" viewBox="0 0 1600 900" role="img" aria-labelledby="title desc">
|
||||
<title id="title">飞拍轨迹规划逻辑</title>
|
||||
<desc id="desc">用于 PPT 展示的飞拍轨迹规划逻辑图,展示输入、三次样条、约束检查、逐段缩放迭代、输出时间轴与采样层关系。</desc>
|
||||
<defs>
|
||||
<marker id="arrow-blue" markerWidth="14" markerHeight="14" refX="11" refY="7" orient="auto" markerUnits="strokeWidth">
|
||||
<path d="M2,2 L12,7 L2,12 Z" fill="#2563eb" />
|
||||
</marker>
|
||||
<marker id="arrow-green" markerWidth="14" markerHeight="14" refX="11" refY="7" orient="auto" markerUnits="strokeWidth">
|
||||
<path d="M2,2 L12,7 L2,12 Z" fill="#059669" />
|
||||
</marker>
|
||||
<marker id="arrow-amber" markerWidth="14" markerHeight="14" refX="11" refY="7" orient="auto" markerUnits="strokeWidth">
|
||||
<path d="M2,2 L12,7 L2,12 Z" fill="#d97706" />
|
||||
</marker>
|
||||
<linearGradient id="title-grad" x1="0" x2="1" y1="0" y2="0">
|
||||
<stop offset="0" stop-color="#1d4ed8" />
|
||||
<stop offset="0.55" stop-color="#0f766e" />
|
||||
<stop offset="1" stop-color="#7c3aed" />
|
||||
</linearGradient>
|
||||
<filter id="soft-shadow" x="-10%" y="-10%" width="120%" height="130%">
|
||||
<feDropShadow dx="0" dy="8" stdDeviation="8" flood-color="#0f172a" flood-opacity="0.12" />
|
||||
</filter>
|
||||
<style>
|
||||
.bg { fill: #f8fafc; }
|
||||
.title { font: 700 42px "Microsoft YaHei", "Segoe UI", Arial, sans-serif; fill: #0f172a; letter-spacing: 0; }
|
||||
.subtitle { font: 400 23px "Microsoft YaHei", "Segoe UI", Arial, sans-serif; fill: #475569; letter-spacing: 0; }
|
||||
.section-title { font: 700 25px "Microsoft YaHei", "Segoe UI", Arial, sans-serif; fill: #0f172a; letter-spacing: 0; }
|
||||
.label { font: 600 21px "Microsoft YaHei", "Segoe UI", Arial, sans-serif; fill: #0f172a; letter-spacing: 0; }
|
||||
.small { font: 400 18px "Microsoft YaHei", "Segoe UI", Arial, sans-serif; fill: #334155; letter-spacing: 0; }
|
||||
.tiny { font: 400 15px "Microsoft YaHei", "Segoe UI", Arial, sans-serif; fill: #475569; letter-spacing: 0; }
|
||||
.formula { font: 500 20px "Consolas", "Microsoft YaHei", monospace; fill: #0f172a; letter-spacing: 0; }
|
||||
.math { font: 500 25px "Cambria Math", "Times New Roman", "Microsoft YaHei", serif; fill: #0f172a; letter-spacing: 0; }
|
||||
.math-small { font: 500 21px "Cambria Math", "Times New Roman", "Microsoft YaHei", serif; fill: #0f172a; letter-spacing: 0; }
|
||||
.box { fill: #ffffff; stroke: #cbd5e1; stroke-width: 2; rx: 18; filter: url(#soft-shadow); }
|
||||
.box-blue { fill: #eff6ff; stroke: #93c5fd; stroke-width: 2; rx: 18; }
|
||||
.box-green { fill: #ecfdf5; stroke: #86efac; stroke-width: 2; rx: 18; }
|
||||
.box-amber { fill: #fffbeb; stroke: #fcd34d; stroke-width: 2; rx: 18; }
|
||||
.box-purple { fill: #f5f3ff; stroke: #c4b5fd; stroke-width: 2; rx: 18; }
|
||||
.pill { rx: 22; }
|
||||
.line { fill: none; stroke: #2563eb; stroke-width: 4; marker-end: url(#arrow-blue); }
|
||||
.line-green { fill: none; stroke: #059669; stroke-width: 4; marker-end: url(#arrow-green); }
|
||||
.line-amber { fill: none; stroke: #d97706; stroke-width: 4; marker-end: url(#arrow-amber); }
|
||||
.loop { fill: none; stroke: #d97706; stroke-width: 4; stroke-dasharray: 10 8; marker-end: url(#arrow-amber); }
|
||||
.axis { stroke: #64748b; stroke-width: 2; }
|
||||
.grid { stroke: #e2e8f0; stroke-width: 1; }
|
||||
.curve { fill: none; stroke: #2563eb; stroke-width: 5; stroke-linecap: round; }
|
||||
.curve2 { fill: none; stroke: #0f766e; stroke-width: 4; stroke-linecap: round; }
|
||||
.dot { fill: #1d4ed8; stroke: #ffffff; stroke-width: 4; }
|
||||
.dot-green { fill: #059669; stroke: #ffffff; stroke-width: 4; }
|
||||
.accent-bar { fill: url(#title-grad); rx: 4; }
|
||||
.divider { stroke: #cbd5e1; stroke-width: 2; stroke-dasharray: 8 8; }
|
||||
</style>
|
||||
</defs>
|
||||
|
||||
<rect class="bg" width="1600" height="900" />
|
||||
<rect class="accent-bar" x="80" y="58" width="540" height="8" />
|
||||
<text class="title" x="80" y="120">飞拍轨迹规划逻辑</text>
|
||||
<text class="subtitle" x="80" y="158">用三次样条连接示教点,通过反复拉长超限段,让整条轨迹满足关节约束。</text>
|
||||
|
||||
<!-- 主流程卡片 -->
|
||||
<rect class="box-blue" x="80" y="215" width="255" height="180" />
|
||||
<text class="section-title" x="112" y="258">输入</text>
|
||||
<text class="small" x="112" y="312">示教点</text>
|
||||
<text class="small" x="112" y="346">关节约束</text>
|
||||
|
||||
<path class="line" d="M335 305 H420" />
|
||||
|
||||
<rect class="box" x="420" y="215" width="285" height="180" />
|
||||
<text class="section-title" x="452" y="258">初始时间轴</text>
|
||||
<text class="small" x="452" y="318">按相邻点距离</text>
|
||||
<text class="small" x="452" y="352">估算每段时长</text>
|
||||
|
||||
<path class="line" d="M705 305 H790" />
|
||||
|
||||
<rect class="box-green" x="790" y="215" width="305" height="180" />
|
||||
<text class="section-title" x="822" y="258">三次样条</text>
|
||||
<text class="small" x="822" y="318">连接所有示教点</text>
|
||||
<text class="small" x="822" y="352">形成连续轨迹</text>
|
||||
|
||||
<path class="line" d="M1095 305 H1180" />
|
||||
|
||||
<rect class="box-amber" x="1180" y="215" width="340" height="180" />
|
||||
<text class="section-title" x="1212" y="258">约束检查</text>
|
||||
<text class="small" x="1212" y="312">速度 / 加速度 / jerk</text>
|
||||
<text class="small" x="1212" y="346">找出超限段</text>
|
||||
|
||||
<!-- 曲线示意 -->
|
||||
<rect class="box" x="105" y="455" width="585" height="285" />
|
||||
<text class="section-title" x="135" y="497">轨迹形状:经过原始示教点</text>
|
||||
<line class="grid" x1="150" y1="680" x2="650" y2="680" />
|
||||
<line class="grid" x1="150" y1="620" x2="650" y2="620" />
|
||||
<line class="grid" x1="150" y1="560" x2="650" y2="560" />
|
||||
<line class="axis" x1="150" y1="690" x2="650" y2="690" />
|
||||
<line class="axis" x1="150" y1="690" x2="150" y2="535" />
|
||||
<path class="curve" d="M165 665 C205 618, 240 565, 285 585 C340 610, 375 695, 425 645 C475 595, 500 515, 558 548 C595 570, 620 625, 640 600" />
|
||||
<circle class="dot" cx="165" cy="665" r="9" />
|
||||
<circle class="dot" cx="285" cy="585" r="9" />
|
||||
<circle class="dot" cx="425" cy="645" r="9" />
|
||||
<circle class="dot" cx="558" cy="548" r="9" />
|
||||
<circle class="dot" cx="640" cy="600" r="9" />
|
||||
<text class="tiny" x="160" y="720">q0</text>
|
||||
<text class="tiny" x="277" y="720">q1</text>
|
||||
<text class="tiny" x="417" y="720">q2</text>
|
||||
<text class="tiny" x="550" y="720">q3</text>
|
||||
<text class="tiny" x="630" y="720">qn</text>
|
||||
<text class="small" x="135" y="777">点位不变,主要调整每段用时。</text>
|
||||
|
||||
<!-- 核心公式卡片 -->
|
||||
<rect class="box-purple" x="735" y="455" width="785" height="285" />
|
||||
<text class="section-title" x="765" y="497">迭代逻辑</text>
|
||||
<text class="label" x="780" y="560">1. 计算每段是否超限</text>
|
||||
<text class="label" x="780" y="620">2. 超限段按比例拉长时间</text>
|
||||
<text class="label" x="780" y="680">3. 重新生成样条,再检查一次</text>
|
||||
<text class="math-small" x="1195" y="590">
|
||||
<tspan>scale</tspan><tspan baseline-shift="sub" font-size="14">i</tspan>
|
||||
<tspan> = max(s</tspan><tspan baseline-shift="sub" font-size="14">v</tspan><tspan>, s</tspan><tspan baseline-shift="sub" font-size="14">a</tspan><tspan>, s</tspan><tspan baseline-shift="sub" font-size="14">j</tspan><tspan>)</tspan>
|
||||
</text>
|
||||
<text class="math-small" x="1195" y="650">
|
||||
<tspan>T</tspan><tspan baseline-shift="sub" font-size="14">i</tspan>
|
||||
<tspan> ← T</tspan><tspan baseline-shift="sub" font-size="14">i</tspan>
|
||||
<tspan> * scale</tspan><tspan baseline-shift="sub" font-size="14">i</tspan>
|
||||
</text>
|
||||
|
||||
<!-- 迭代回路 -->
|
||||
<path class="loop" d="M1350 395 C1350 430, 1270 435, 1190 425 C1075 410, 988 410, 945 397" />
|
||||
<text class="small" x="1015" y="435" fill="#92400e">未收敛就继续拉长、重算</text>
|
||||
|
||||
<!-- 输出层 -->
|
||||
<rect class="box-green" x="80" y="805" width="330" height="58" />
|
||||
<text class="label" x="110" y="842">输出时间轴</text>
|
||||
<path class="line-green" d="M410 834 H515" />
|
||||
<rect class="box" x="515" y="790" width="430" height="88" />
|
||||
<text class="label" x="545" y="826">按周期采样</text>
|
||||
<text class="tiny" x="545" y="856">后续模块生成稠密轨迹点</text>
|
||||
<path class="line-green" d="M945 834 H1050" />
|
||||
<rect class="box-amber" x="1050" y="790" width="470" height="88" />
|
||||
<text class="label" x="1080" y="826">运行时下发</text>
|
||||
<text class="tiny" x="1080" y="856">进入飞拍执行链路</text>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 8.3 KiB |
257
docs/marketing/飞拍控制系统宣传文稿.md
Normal file
257
docs/marketing/飞拍控制系统宣传文稿.md
Normal file
@@ -0,0 +1,257 @@
|
||||
# 智能视觉质检系统宣传文稿
|
||||
|
||||
## 一句话定位
|
||||
|
||||
智能视觉质检系统是一套覆盖“边缘取图、AI 检测、人工复核、第三方对接、结果闭环”的工业视觉质量管理平台,帮助产线把图像采集、缺陷识别和复检工作流整合为一条连续、可追踪、可协同的质检链路。
|
||||
|
||||
## 宣传主文案
|
||||
|
||||
在工业视觉检测现场,真正影响效率的不只是模型能否识别缺陷,还包括图片如何稳定采集、AI 结果如何进入业务系统、人工如何快速复核、第三方系统如何查询结果,以及异常任务如何被追踪和处理。
|
||||
|
||||
智能视觉质检系统围绕这一完整链路设计:前端由边缘飞拍系统负责在机器人运动过程中完成连续取图;中间由 AI 检测服务对图片进行模型推理,输出 OK/NG、缺陷区域和结构化检测信息;上层由复检工作流平台承接图片、AI 结果和人工判断,完成任务管理、复核流转、结果查询和第三方接口对接。
|
||||
|
||||
这不是单个检测工具,而是一整套面向产线落地的视觉质检系统。它把“取图、识别、复核、上传、查询、归档”串成统一流程,让现场从分散的图片文件、模型结果和人工沟通,升级为可管理、可复核、可追溯的质量工作流。
|
||||
|
||||
## 系统组成
|
||||
|
||||
### 1. 边缘飞拍取图层
|
||||
|
||||
飞拍系统负责在机器人运动过程中完成边缘段取图。它根据检测路径和拍照节拍,在连续运动中触发相机采集图片,减少停顿拍照对产线节拍的影响。
|
||||
|
||||
核心作用:
|
||||
|
||||
- 支持机器人运动中连续取图。
|
||||
- 支持按路径、节拍或检测点触发拍照。
|
||||
- 适合边缘、焊缝、孔位、外观等路径型检测场景。
|
||||
- 为后续 AI 检测提供稳定、连续、带位置语义的图片输入。
|
||||
|
||||
### 2. AI 检测服务层
|
||||
|
||||
AI 检测服务负责接收图片并执行模型推理。系统支持通过接口提交图片,可按业务需要调用单模型或多模型检测,并返回结构化结果。
|
||||
|
||||
核心作用:
|
||||
|
||||
- 接收产线图片进行 AI 检测。
|
||||
- 输出 OK/NG、缺陷区域、模型结果和处理信息。
|
||||
- 支持多模型组合检测,适配不同检测面、不同缺陷类型。
|
||||
- 通过标准接口与上层复检平台、现场系统集成。
|
||||
|
||||
### 3. 人工复核与工作流层
|
||||
|
||||
复检工作流平台负责承接 AI 检测结果和图片数据,形成可操作的人工复核流程。它提供任务管理、图片浏览、AI 结果展示、人工判定、历史查询、第三方接口对接和结果归档能力。
|
||||
|
||||
核心作用:
|
||||
|
||||
- 管理待复核、已完成、历史任务。
|
||||
- 支持原图、AI 标注图和检测元数据统一展示。
|
||||
- 支持人工 OK/NG 判断与批量提交。
|
||||
- 支持第三方系统上传任务、查询最新复检结果。
|
||||
- 形成从图片到判定结果的完整追溯链。
|
||||
|
||||
## 端到端业务闭环
|
||||
|
||||
```text
|
||||
机器人/相机飞拍取图
|
||||
↓
|
||||
图片进入 AI 检测服务
|
||||
↓
|
||||
AI 输出 OK/NG 与缺陷信息
|
||||
↓
|
||||
复检平台生成审核任务
|
||||
↓
|
||||
人工查看原图与 AI 标注图
|
||||
↓
|
||||
人工确认最终结果
|
||||
↓
|
||||
第三方系统查询或接收复检结果
|
||||
↓
|
||||
质检数据归档与追溯
|
||||
```
|
||||
|
||||
这条链路把现场设备、AI 推理、人工经验和业务系统连接在一起,使视觉检测不再停留在单点识别,而是进入可运行的质量管理流程。
|
||||
|
||||
## 核心能力
|
||||
|
||||
### 1. 连续取图能力
|
||||
|
||||
系统支持机器人边运动边拍照,适合路径型工件和多点位检测。通过拍照节拍配置,可根据产线速度、相机曝光和检测需求调整采集频率。
|
||||
|
||||
### 2. AI 自动检测能力
|
||||
|
||||
系统支持图片接口化检测,能够将模型推理结果结构化输出。AI 检测结果可直接进入复检平台,作为人工判断的重要依据。
|
||||
|
||||
### 3. 人工复核能力
|
||||
|
||||
复检平台提供面向操作员的图片审核界面,可集中查看任务、图片、AI 标注图、缺陷信息和历史记录。人工可快速完成 OK/NG 判定,减少线下沟通和文件查找。
|
||||
|
||||
### 4. 第三方接口能力
|
||||
|
||||
系统可对接第三方业务系统,支持任务上传、结果查询和复检状态同步。产线系统、PLC 上位系统、MES 或其他业务平台可以通过接口获取复检结果。
|
||||
|
||||
### 5. 工作流闭环能力
|
||||
|
||||
系统将图片采集、AI 检测、人工复核和结果回传组织成统一流程。每个任务都有状态,每张图片都有来源和判定,每次操作都可追踪。
|
||||
|
||||
### 6. 多场景扩展能力
|
||||
|
||||
整体架构可适配不同检测产品、不同图片来源、不同 AI 模型和不同复核策略。既可以服务单工位,也可以扩展到多工位、多模型、多业务线。
|
||||
|
||||
## 展示重点
|
||||
|
||||
### 系统能力总览
|
||||
|
||||
| 层级 | 作用 | 对外表达 |
|
||||
| --- | --- | --- |
|
||||
| 边缘取图 | 机器人运动中连续采集图片 | 让检测图片稳定进入系统 |
|
||||
| AI 检测 | 对图片进行模型推理 | 自动识别缺陷并输出结构化结果 |
|
||||
| 人工复核 | 对 AI 结果进行确认 | 让关键判定有人工闭环 |
|
||||
| 第三方接口 | 任务上传与结果查询 | 与产线和业务系统打通 |
|
||||
| 工作流平台 | 任务、图片、结果统一管理 | 形成可追踪的质量流程 |
|
||||
|
||||
### 拍照节拍展示
|
||||
|
||||
对外展示时,可以用“每秒拍照数量”表达边缘取图能力,同时避免写成固定承诺。
|
||||
|
||||
| 模式 | 每秒拍照数量示意 | 适用场景 |
|
||||
| --- | ---: | --- |
|
||||
| 稳定检测模式 | 5-10 张/秒 | 常规外观、定位、尺寸检测 |
|
||||
| 高速检测模式 | 10-20 张/秒 | 连续路径、多点位检测 |
|
||||
| 高密度采集模式 | 20+ 张/秒 | 短路径密集取像、节拍优化展示 |
|
||||
|
||||
备注:实际拍照数量取决于机器人速度、相机曝光时间、光源响应、图像处理耗时和现场安全策略。
|
||||
|
||||
### 时序图展示
|
||||
|
||||
```text
|
||||
机器人运动轨迹 ────────────────────────────────>
|
||||
|
||||
边缘飞拍触发 ▲ ▲ ▲ ▲ ▲
|
||||
图1 图2 图3 图4 图5
|
||||
|
||||
AI 检测服务 检测 检测 检测 检测 检测
|
||||
|
||||
复检工作流 生成任务 → 图片审核 → 人工判定 → 结果回传
|
||||
```
|
||||
|
||||
配套说明文案:
|
||||
|
||||
系统将取图、检测和复核组织在同一条业务时间线上。边缘端负责稳定采集,AI 服务负责自动识别,复检平台负责人工确认和结果流转,最终形成完整的质检闭环。
|
||||
|
||||
## 建议 PPT 结构
|
||||
|
||||
### 1. 封面
|
||||
|
||||
标题:智能视觉质检系统
|
||||
|
||||
副标题:从边缘取图到 AI 检测,再到人工复核与结果闭环
|
||||
|
||||
### 2. 行业痛点
|
||||
|
||||
标题:视觉检测难点不只在 AI 模型
|
||||
|
||||
要点:
|
||||
|
||||
- 图片来源分散,取图节拍难统一。
|
||||
- AI 结果需要人工确认和业务留痕。
|
||||
- 产线系统需要查询最终复检结果。
|
||||
- 图片、模型结果、人工判断缺少统一工作流。
|
||||
|
||||
### 3. 系统总体架构
|
||||
|
||||
标题:三层协同,形成端到端质检链路
|
||||
|
||||
建议图形:
|
||||
|
||||
```text
|
||||
边缘飞拍取图层
|
||||
↓
|
||||
AI 检测服务层
|
||||
↓
|
||||
人工复核与工作流层
|
||||
↓
|
||||
第三方系统 / 产线系统
|
||||
```
|
||||
|
||||
### 4. 边缘取图能力
|
||||
|
||||
标题:机器人运动中连续采集检测图片
|
||||
|
||||
展示内容:
|
||||
|
||||
- 运动轨迹。
|
||||
- 拍照触发点。
|
||||
- 每秒拍照数量示意。
|
||||
- 取图与检测位置绑定。
|
||||
|
||||
### 5. AI 检测能力
|
||||
|
||||
标题:接口化 AI 检测,支持多模型结果输出
|
||||
|
||||
展示内容:
|
||||
|
||||
- 图片输入。
|
||||
- 模型推理。
|
||||
- OK/NG 结果。
|
||||
- 缺陷区域信息。
|
||||
- 处理后标注图。
|
||||
|
||||
### 6. 人工复核能力
|
||||
|
||||
标题:AI 结果进入复检工作台
|
||||
|
||||
展示内容:
|
||||
|
||||
- 当前待复核任务。
|
||||
- 原图与 AI 标注图对比。
|
||||
- 人工 OK/NG 判定。
|
||||
- 批量提交与历史查询。
|
||||
|
||||
### 7. 第三方接口与业务闭环
|
||||
|
||||
标题:与产线系统打通最终复检结果
|
||||
|
||||
展示内容:
|
||||
|
||||
- 第三方上传任务。
|
||||
- 查询最新复检结果。
|
||||
- 状态同步。
|
||||
- 结果归档。
|
||||
|
||||
### 8. 典型应用场景
|
||||
|
||||
标题:适用于多类工业视觉质检场景
|
||||
|
||||
要点:
|
||||
|
||||
- 焊缝与边缘检测。
|
||||
- PCB / 工件外观检测。
|
||||
- 孔位与装配位置检测。
|
||||
- 多点位连续取像。
|
||||
- AI 初判 + 人工终判场景。
|
||||
|
||||
### 9. 收尾页
|
||||
|
||||
标题:让视觉检测从单点识别走向完整工作流
|
||||
|
||||
推荐短句:
|
||||
|
||||
智能视觉质检系统把边缘取图、AI 检测、人工复核和第三方对接整合为统一流程,让质量判断更高效、更清晰、更可追踪。
|
||||
|
||||
## 展会讲解词
|
||||
|
||||
这套智能视觉质检系统不是单独展示一个 AI 模型,也不是只展示一个拍照工具,而是展示从现场取图到最终复检结果的完整链路。
|
||||
|
||||
在边缘端,机器人通过飞拍方式在运动过程中采集检测图片,适合边缘段、路径型、多点位的工业检测场景。图片采集完成后,进入 AI 检测服务,由模型自动判断 OK/NG,并输出缺陷区域、标注图和结构化结果。
|
||||
|
||||
随后,这些图片和 AI 结果会进入复检工作流平台。操作员可以在界面中查看原图、AI 标注图和检测信息,完成最终人工判断。对于产线或第三方业务系统,平台提供任务上传和结果查询能力,使复检结果能够回到业务流程中。
|
||||
|
||||
因此,客户看到的是一整套系统能力:前端能稳定取图,中间能自动检测,上层能人工复核,外部系统还能查询最终结果。它解决的是工业视觉检测从“拍到图、看出缺陷”到“形成可追踪质量结论”的完整问题。
|
||||
|
||||
## 对外短标题
|
||||
|
||||
- 智能视觉质检系统
|
||||
- 从边缘取图到复检闭环
|
||||
- AI 检测 + 人工复核一体化
|
||||
- 让视觉检测进入可追踪工作流
|
||||
- 机器人飞拍取图,AI 自动识别,人工确认结果
|
||||
- 面向工业产线的端到端视觉质量平台
|
||||
Reference in New Issue
Block a user