juechafun/01-项目/2025-MaixCam竞赛版/模块-程序控制-文档说明.md

72 lines
3.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 程序控制文档
---
## 一、基本说明
- **版本号**`v3.5.1`
- **适用算法**OCR、色块、AprilTag
---
## 二、支持算法列表
| 算法ID | 名称 | 简介说明 |
| ---- | -------- | ----------------------------- |
| `0` | 空 | 开机默认状态,无算法运行 |
| `1` | 色块检测 | 默认 LAB 参数为 0需配合 `S` 指令设置颜色范围 |
| `2` | Apriltag | 检测 Apriltag 标签,返回 ID 与旋转角度 |
| `3` | OCR | 光学字符识别 |
| `4` | 交叉点 | 测试中功能,尚未稳定 |
---
## 三、控制指令
| 操作 | 指令字符 | 参数格式与说明 | 示例命令 |
| ------------ | ---- | ------------------------------------------------------------------------------------- | ------------------------------ |
| **开启指定算法** | `N` | `<算法ID>`<br>立即切换当前运行算法 | `N1`(启动色块检测) |
| **设置LAB参数** | `S` | `<参数ID>+LMin+LMax+AMin+AMax+BMin+BMax>`<br>用于色块检测的颜色范围LAB色彩空间0~255 | `S1+0+100+30+80+20+70` |
| **设置串口应答模式** | `A` | `<模式>`<br>`-n`:定时上报,间隔 n 毫秒<br>`0`:关闭上报<br>`n>0`仅上报第n个目标后自动切回 `A0` | `A-500`<br>`A0`<br>`A2` |
| **缩放画面比例** | `Z` | `<缩放倍数>`<br>以画面中心为基准缩放。`Z100`=原始尺寸,`Z150`=放大至150% | `Z100`<br>`Z150` |
| **设置分辨率** | `R` | `<分辨率>`<br>格式:`宽x高`,如 `552x368` | `R552x368` |
| **设置检测框显示项** | `D` | `+标识符+状态`<br>标识符: `i`, `x`, `y`, `w`, `h`, `v`, `r`, `cx`, `cy`<br>状态: `1`=显示, `0`=隐藏 | `D+i1+cx1+cy1`<br>`D+i1+x0+y0` |
---
## 四、算法结果返回格式规范
### 基础通用格式适用于色块、OCR等
```
#i{x}y{y}w{w}h{h}v{v}!
```
### 特殊格式 - Apriltag含旋转角度
```
#i{i}x{x}y{y}w{w}h{h}v{v}r{r}!
```
### 字段含义说明
| 字段 | 含义 | 说明 |
| --- | -------- | ----------------------------------------------------------- |
| `i` | 目标序号 | 第几个被检测到的目标(从 `1` 开始递增) |
| `x` | 中心点 X 坐标 | 目标在图像中的横向像素坐标 |
| `y` | 中心点 Y 坐标 | 目标在图像中的纵向像素坐标 |
| `w` | 宽度 | 目标包围框宽度(像素) |
| `h` | 高度 | 目标包围框高度(像素) |
| `v` | 结果值 | 根据算法不同:<br>• Apriltag → 标签 ID<br>• 色块 → LAB 参数组 ID如 S1/S2 |
| `r` | 旋转角度 | 仅Apriltag |
### 示例输出(色块检测)
若检测到三个色块:
```
#i1x100y120w50h50v1!
#i2x200y160w60h60v1!
#i3x300y200w55h55v1!
```
### 📌 对于多个结果,优先以 y 升序排序,其次以 x 升序排序
---