# 西瓜照片挑选指南

**适用范围：** 未切整颗西瓜，主要用于同一货架、同品种、同批次候选之间的照片相对排序。  
**不适用：** 根据照片保证甜度、预测具体 Brix、诊断空心/白心/白筋，或判断不同品种谁一定更甜。

本文不使用声音，也不让用户描述“清脆、浑厚、沉闷”。照片负责地斑、光泽、纹理、果形和风险；用户只补充照片无法可靠知道的光源、标签/品种和是否同批。

光源、证据质量 `Q`、置信度、合并提问与输出增强的通用协议见 [../common.md](../common.md)；本文只列西瓜特有的档位映射与差异规则。

## 0. 输入策略与最低照片

完成相邻候选相对排序的最低照片：

1. 候选同框整图：每颗编号，能看到完整轮廓，确认来自同一堆或同一货架。（示意：[../anchors/howto-watermelon-lineup.jpg](../anchors/howto-watermelon-lineup.jpg)）
2. 每颗地斑正面图：镜头尽量垂直地斑，地斑完整、不被手遮挡。（示意：[../anchors/howto-watermelon-groundspot-shot.jpg](../anchors/howto-watermelon-groundspot-shot.jpg)）

用于增强排序、但不作为最低门槛的照片：

3. 每颗地斑相反侧瓜皮近照：相同距离、角度和缩放，用于纹理比较。
4. 每颗非地斑侧 `30-45°` 斜角图：让反光带可见，用于弱光泽辅助。（示意：[../anchors/howto-watermelon-gloss-angle.jpg](../anchors/howto-watermelon-gloss-angle.jpg)）
5. 标签、凹陷、裂伤或异常斑的局部近照。

最低判断门槛：

- **单颗局部判断：** 地斑 `S` 或果形 `F` 至少一项清楚，只能报成熟倾向或外观疑点。
- **多颗购买优先指数：** 比较基础 `B=A/B`，并且每颗都有可用的地斑 `S` 和果形 `F`。`L/X/C` 只增强排序，不是计算门槛。
- `B=C/D`、关键照片角度不同或光线不同，不计算多颗指数。

输入分工：

- `【Agent 读取】`：标签和整果类型 `T`、地斑 `S`、光泽 `L`、算法纹理 `X`、品种专属外观 `C`、果形 `F`、风险 `R`。
- `【问用户】`：准备使用地斑颜色或光泽时，按 [../common.md](../common.md) 光源协议取得 `G`，并加问一句「几颗瓜是否在同一位置连续拍摄？」。
- `【条件补问】`：照片无法确认是否同品种同批次时，补问比较基础 `B`；标签不清而用户可能知道时，再问具体品种。

## 1. 比较基础、品种与光源

### 1.1 `【条件补问】` 比较基础 `B`

问：“这些瓜是同一个品种/商品名、同一堆里挑的吗？”

| `B` | 定义 | 用法 |
|---|---|---|
| A | 标签或用户确认同品种、同一批次/同一堆 | 可比较地斑、光泽、纹理和果形 |
| B | 同一堆、外观类型一致，但没有明确品种标签 | 可做低置信相对排序；不使用品种专属规则 |
| C | 只判断一颗 | 不做多颗相对排序 |
| D | 不同品种、不同摊位、不同拍摄条件或无法确认 | 不比较纹理、光泽或正常果形；只报各自地斑、风险和 `F=C` 的明确异常 |

### 1.2 类型/品种 `T`

标签或用户明确品种优先。只有照片时只能分宽泛外观组，不能把宽泛组当品种鉴定。

| `T` | 类型 |
|---|---|
| A | 早佳 8424 / 麒麟类或其他圆椭圆条纹瓜 |
| B | 黑美人类深色长椭圆瓜 |
| C | 标签或用户明确确认的无籽瓜，包括小型无籽瓜 |
| D | 标签/用户确认 `Crimson Sweet` |
| E | 标签/用户确认 `Charleston Gray` |
| F | 其他或不确定 |

`T=A/B` 只用于类型路由，不提供专属正向加分。

### 1.3 光源 `G` 的西瓜附加条件

光源 `G` 按 [../common.md](../common.md) 协议取得（`usable / weak / disabled / unknown`），`S/L/X` 的 `Q` 由 `G` 决定（`usable→1`、`weak→0.5`、`disabled/unknown→0` 且不填）。西瓜附加条件：候选必须在同一位置、同一光线下连续拍摄，否则即使光源本身可用也按 `disabled` 处理。

本文不使用固定 RGB/HSV、Hex 或手机色值阈值。光源可用也只做颜色状态分档和同批比较。

## 2. 照片状态定义

### 2.1 地斑 `S`

**地斑是西瓜生长时贴着地面、长期没有被阳光照到而形成的浅色接触面。** 它通常只在瓜身一侧，形状不规则，颜色可能是白、青白、奶油色或黄色，表面仍和周围瓜皮一样硬实。

先确认是真地斑：

- 位于瓜身贴地的那一面。货架照片无法验证原始朝向时凭特征判断：连续大片、平整硬实、边缘自然过渡，与向阳面的均匀上色和光泽相反；特征不足以确认时填 `S=D`，不因「无法验证朝向」一刀切拒填。
- 是一整片连续浅色区域，不是零散黄点、擦痕、泥斑或网状疤痕。
- 表面平整硬实，没有凹陷、发软、水浸感、坏死或向外扩散。
- 该品种/栽培方式确实会形成地斑。吊蔓栽培（吊瓜等）不接触地面，不产生标准地斑，其上浅色区域含义不同或未知；此时填 `S=D`，**不要**当作 `S=C`——地爬瓜没有黄地斑是偏早采信号，吊瓜没有地斑只是正常，两者含义相反。

向阳面的黄灰粗糙斑、晒白坏死、凹陷或组织受损属于日灼/伤斑，不填 `S`，转入 `R`。无法确认浅色区域是不是着地面时填 `S=D`。

取地斑中心区域，忽略最外圈阴影、泥土和擦伤。只有某一颜色覆盖中心区域约三分之二时才定档；没有任何主色达到三分之二时填 `S=D`，不猜相邻档。

| `S` | 精确定义 | 状态值 |
|---|---|---:|
| A | 奶油黄到明确黄色：中心主色稳定带黄，不是白色被灯光照暖；表面完整 | `100` |
| B | 浅奶油/象牙色：能看出淡黄，但主体仍接近米白 | `75` |
| C | 白色、青白或带明显绿色：中心区域看不到稳定奶油黄 | `0` |
| D | 地斑不存在、被遮挡、不是接地面浅斑，或 `G=disabled/unknown` | 不填 |

地斑面积、圆度和边缘锐度不评分。黄色只支持采收成熟倾向，不保证甜。真地斑与日灼的对比：[../anchors/anchor-watermelon-spot-vs-sunscald.jpg](../anchors/anchor-watermelon-spot-vs-sunscald.jpg)；三档颜色对比板（仅 `G` 可用时对照）：[../anchors/anchor-watermelon-fieldspot-color.jpg](../anchors/anchor-watermelon-fieldspot-color.jpg)。

### 2.2 表皮光泽 `L`

光泽受灯具位置、入射角、表面水分、打蜡和手机曝光影响很大，只作很弱的辅助项。只有 `B=A/B`、候选在同一位置连续拍摄、相机角度一致且表面干燥时才使用；否则填 `L=D`。

用非地斑侧斜角照片和可见果长作尺度：

| `L` | 精确定义 | 状态值 |
|---|---|---:|
| A | 偏哑光：反光边缘模糊、分散；清晰亮带连续长度 `<` 可见果长的六分之一；反光区域内仍能看清瓜皮纹理 | `75` |
| B | 中间状态：有局部清晰亮带，连续长度 `>=` 可见果长的六分之一且 `<` 三分之一 | `50` |
| C | 明显油亮：存在边缘清楚的镜面亮带，连续长度 `>=` 可见果长的三分之一，亮带内纹理被反光遮住 | `25` |
| D | 角度不同、表面有水、打蜡、保鲜膜、强直射，或 `G=disabled/unknown` | 不填 |

`L` 不能单独改变购买档，也不能压过地斑或果形。执行定义：分别计算含 `L` 与不含 `L`（`L` 按 `Q=0` 回中性）的购买优先指数；若含 `L` 的购买档高于不含 `L` 的档，购买档按不含 `L` 的分数落档，指数照实输出并说明受光泽影响。哑光只提供轻微成熟支持，不解释为越哑越甜。

### 2.3 算法纹理 `X`

这里的纹理，指**地斑正对面的果身中段正常瓜皮**上，深浅条纹和细碎斑块形成的空间分布；不包括地斑、瓜脐、疤痕、泥土、反光或损伤纹路。

`X` 只有实际完成像素计算时才填写：从每颗上述区域裁取边长约为可见果长四分之一的同尺寸正方形，保持相同缩放，由本 skill 的 `scripts/watermelon_texture.py` 计算空隙度、条纹面积比和灰度纹理并只做组内排序（尺寸不一致自动拒算）。用户说“纹路宽、散、清楚”不能代替计算。

| `X` | 定义 | 状态值 |
|---|---|---:|
| A | 同组中空隙度较低、大片空白纹理较少，多个纹理特征共同落在成熟方向 | `75` |
| B | 位于同组中间，或特征方向轻微冲突 | `50` |
| C | 同组中空隙度较高、大片空白纹理较多，多个特征共同落在偏早方向 | `25` |
| D | 没有实际像素计算、只有一颗、裁剪/光线/缩放不一致、品种混杂，或 `G=disabled/unknown` | 不填 |

不使用跨品种固定阈值，不把 `X` 单独解释为甜度。

### 2.4 品种专属外观 `C`

只有 `T=D/E` 才使用：

| `C` | 精确定义 | 状态值 |
|---|---|---:|
| A | `Crimson Sweet`：花端周围半径约四分之一果径的区域内，至少两条深色条纹被底色间断，不再连续到花端；或 `Charleston Gray`：可见至少三条分布均匀、从果身上三分之一延续到下三分之一的浅纵向凹沟 | `75` |
| B | 对应结构存在但只看清一处，或变化不明显 | `50` |
| C | 品种已确认，但对应成熟外观完全未出现，且照片角度足以观察 | `25` |
| D | 不是这两个品种、品种不确定或角度不足 | 不填 |

这些只作低权重成熟辅助，不判断糖度、皮厚或空心。

### 2.5 果形 `F`

果形只在同类型候选之间排异常，不用“圆瓜比长瓜甜”。

| `F` | 精确定义 |
|---|---|
| A | `B=A/B`，轮廓符合该组多数候选；中央三分之一处左右半宽差 `< 15%` 果宽；没有连续超过果长三分之一的局部扁平或收缩 |
| B | `B=A/B`，左右半宽差约 `15-25%`，或有一处扁平/偏头，但范围 `<` 果长三分之一 |
| C | 任一成立：左右半宽差 `> 25%`；局部扁平/收缩连续 `>=` 果长三分之一；或 `T=C` 且端面轮廓出现三个宽平面和三个明显转角，形成三角形/三面鼓起。明确异常时即使 `B=C/D` 也可填 |
| D | 照片透视明显、轮廓被遮挡；或 `B=C/D` 且未见 `F=C` 的明确异常 |

`F` 没有状态值、不进指数：它只按第 4 节的门控表调整最终购买档。

`F=C` 只表示发育异常、授粉不足或内部质量风险增加，不能诊断空心。果形三档对比：[../anchors/anchor-watermelon-shape-grades.jpg](../anchors/anchor-watermelon-shape-grades.jpg)。

### 2.6 可见风险 `R`

| `R` | 表现 | 处理 |
|---|---|---|
| `safe` | 表面硬实完整；少量干燥浅表擦痕，不凹、不湿、不扩散 | 可进入指数 |
| `caution` | 明显日灼、深凹碰伤、局部软斑、异常强纵棱或干裂较深，但无流液/霉 | 可计算指数，但最终购买档固定降低一档；优先换无异常候选 |
| `reject` | 湿软凹陷、扩散病斑、流液、霉、贯穿裂口、腐烂或污染 | 不建议买，不计算指数 |
| `unknown` | 异常处、底部或背面看不清 | 不计算指数；先补一张局部近照 |

干燥网状疤痕和所谓“糖斑”不加分；瓜脐大小不进入任何判断。

## 3. 执行顺序

1. 给候选编号，确认整图和各张特写属于哪一颗。
2. 先读取 `R`，购买资格和调整只按第 2.6 节执行。
3. 记录 `B/T`；不同品种或拍摄条件不一致时，停止纹理和光泽比较。
4. 使用颜色前取得 `G`，再读取地斑 `S` 和光泽 `L`。
5. 读取果形 `F`；只有真实像素分析完成后才填 `X`。
6. 只有确认 `Crimson Sweet` 或 `Charleston Gray` 时填 `C`。
7. 达到最低门槛后计算购买优先指数；否则只给局部判断并补一项最有价值的照片。

缺失的适用弱项以 `Q=0` 回到中性 `50`，不从分母删除；核心 `S/F` 缺失时不计算。相同异常只记一次：明显三角形或偏头记 `F`；只有纵棱本身且没有形状失衡时记 `R=caution`，不要同时重复扣分。

## 4. 购买优先指数

这个指数只比较同组候选，不是甜度模型，也不能拿不同摊位、品种或拍摄条件的分数横向比较。

证据质量 `Q` 三档定义见 [../common.md](../common.md)（输入质量同一套 `Q=1/0.5/0`）。颜色和光泽的 `Q` 由 `G` 决定；纹理只有真实像素计算且裁剪条件一致时才可取 `Q=1`。

```text
有效状态值 = 50 + Q × (状态值 - 50)

通用类型成熟采收指数 =
78% × S有效值
+ 18% × X有效值
+ 4% × L有效值

Crimson Sweet / Charleston Gray 成熟采收指数 =
66% × S有效值
+ 15% × X有效值
+ 15% × C有效值
+ 4% × L有效值
```

两个路由的适用权重都固定为 `100`。`C` 只在 `T=D/E` 启用；其他类型把这部分预算分配给地斑和纹理，不留动态分母。

指数只由成熟信号构成：地斑、纹理、光泽和品种专属外观都回答“熟没熟”，可以互相补偿。**果形不进指数**——它回答的是“正不正常”（发育异常、授粉不足），不是成熟信号；西瓜采后不增糖，端正的外形换不回缺失的采收成熟度，两者不能按固定汇率相加。果形改按门控调整最终购买档：

| `F` | 对最终购买档的处理 |
|---|---|
| A 正常 | 不调整 |
| B 轻度偏头/局部扁平 | 购买档降一档 |
| C 明显异常或无籽三角形 | 直接归入“不优先”，指数再高也不抬升 |

`F` 仍是计算门槛：果形看不清（`F=D`）时不计算指数。`R=caution` 另外再降一档；果形与风险各记一次，不重复扣同一处异常。

| 指数 | 同组解释 |
|---:|---|
| `>= 75` | 同组优先候选 |
| `60-74` | 可以作为候选，但优势有限 |
| `45-59` | 没有明确优势，优先看同组其他瓜 |
| `< 45` | 偏早采或形态疑点较多，不优先 |

最终购买档 = 指数落档 → 果形门控 → 风险门控。多颗排序先比较指数；分差 `< 5` 时依次比较 `S`、`F`、`R`，仍无法拉开则并列。`R=reject/unknown` 不计算指数。

置信度最高为中。满足 `B=A + G=usable + S/F 清楚`，并且 `L/X` 至少一项可用或品种专属 `C` 清楚时为中；其他可计算情况为低。只有单颗、没有同批对照或没有地斑时，不输出指数。

## 5. 特殊情况

| 条件组合 | 判断 | 输出 |
|---|---|---|
| `B=A/B + S=A + L=A/B + F=A + R=safe` | 成熟采收信号较完整，外形无明显异常 | 这是正向组合，最终仍按指数落档；不提前写成“同组优先” |
| `S=C + L=C + F=A/B` | 白/青白地斑与明显油亮同向 | 偏早采风险较高；西瓜采后不会继续增糖，同组有替代时不优先 |
| `T=C + F=C`，且端面明确出现三个宽平面和三个转角 | 无籽瓜明显三角形或三面鼓起 | 按 `F=C` 归入“不优先”，不额外再降一档；只提示授粉不足或空心风险增加 |
| `F=C`，但不是上述无籽三角形 | 严重偏头、局部扁平或收缩 | 只提示发育异常风险，不套用授粉不足或空心措辞 |
| `T=D + C=A + S=A/B` | `Crimson Sweet` 专属外观与地斑同向 | 低权重支持达到采收成熟；仍按同组综合排序 |
| `T=E + C=A + S=A/B` | `Charleston Gray` 均匀浅纵沟与地斑同向 | 低权重支持达到采收成熟；不要把其他品种纵棱套进来 |
| `B=D` 或候选拍摄条件不同 | 纹理、光泽和正常果形不可比 | 分别报告地斑、风险和 `F=C` 的明确异常，不给多颗总排名 |
| 只有“纹路宽/散/清楚”或“瓜脐小/糖斑多” | 没有可用变量 | 不加分；要求地斑和标准化同批照片 |

## 6. 输出口径

必须先给购买排序，再解释最关键的两到三项差异，不罗列所有字段。

```text
结论：
- 同组排序：1 > 2 > 3；无法比较时直接说明原因
- 购买建议：同组优先 / 可作候选 / 不优先 / 不建议买
- 购买优先指数：满足门槛时输出数值（只在同组内可比）
- 关键依据：地斑 + 果形；像素纹理和品种专属外观只在可用时补充，光泽最多一句弱辅助
- 风险：只写真正改变购买结论的异常
- 置信度：中 / 低；说明限制来自品种、同批条件、照片角度或算法未执行
- 最少补充：只要求最可能改变当前排序的一张照片或一个回答
```

甜度、空心、皮厚这些照片看不出的事，别打包票；分寸见 output-guide 第 4 节。
