💊 药片精确计数 Skill v3
混合检测方案:霍夫圆检测(找圆形药片)+ 轮廓分析(找非圆形药片),有效识别叠加药片。
核心改进
| 版本 | 方法 | 检测数 | 叠加处理 |
|---|---|---|---|
| v1 | 轮廓 | 80 | ❌ 漏检 |
| v4 | 轮廓+分水岭 | 238 | ⚠️ 一般 |
| v6 | 霍夫圆+轮廓 | 333 | ✅ 有效 |
支持的形状(13种)
圆形(小/中/大)、椭圆形、胶囊形、三角形、四方形、菱形、五边形、六边形、八边形、多边形、其他
使用方法
# 基本用法
python3 scripts/pill_counter.py 图片.jpg
# 指定输出
python3 scripts/pill_counter.py 图片.jpg --save 结果.jpg --export-csv 统计.csv
# JSON 输出
python3 scripts/pill_counter.py 图片.jpg --output json
输出
- 📊 文本统计表(类型/数量/占比)
- 📄 CSV 表格(可用 Excel 打开)
- 🖼️ 标注图片(圆形用圆圈标注,其他用方框,右上角图例)
- 📋 JSON 结构化数据
依赖
- Python 3.6+
- opencv-python-headless
- numpy
注意事项
- 白色药片在深色背景上效果最佳
- 霍夫圆对圆形药片效果极好,叠加也能识别
- 非圆形药片(胶囊、三角形等)用轮廓检测
- 碎片可能被误识别为小药片