77 lines
4.0 KiB
Markdown
77 lines
4.0 KiB
Markdown
# OCR Pro 机具编码识别 APP (v2.0)
|
||
|
||
这是一款专为电力机具管理升级打造的 **AI 驱动** Android 应用程序。v2.0 版本引入了全自动化的扫描与变焦功能,不仅能“看懂”设备编码,还能“自动对焦”和“自动抓拍”,大幅提升一线作业效率。
|
||
|
||
## ✨ v2.0 核心亮点 (New Features)
|
||
|
||
### 1. 🤖 AI 全自动扫描 (Auto-Scan)
|
||
- **智能变焦**: 告别手动捏合!只需将手机大致对准,App会自动识别编码区域,平滑拉近镜头至最佳比例。
|
||
- **自动抓拍**: 当画面稳定且清晰时,系统会自动“按下快门”,无需手动点击。
|
||
- **竖向文本优化**: 针对竖排编码,系统采用**智能聚合 (Smart Union)** 算法,稳稳锁住整行文字,变焦也更克制(仅占屏幕高度 55%),防止画面溢出。
|
||
|
||
### 2. 🎮 双模式切换 (Dual Mode)
|
||
为了适应各种复杂工况,我们提供了两种操作模式,位于界面右上角一键切换:
|
||
- **[✨ AI 扫描] (默认)**: 全自动模式。动态绿色检测框跟随目标,镜头自动推拉,适合绝大多数标准场景。
|
||
- **[[-] 手动模式]**: 复古经典模式。屏幕中央显示**固定白色取景框**,镜头不再自动移动。由您手动变焦、手动对准、手动点击拍照,确保在极端环境下依然可控。
|
||
|
||
### 3. 🌊 视觉平滑 (Visual Smoothing)
|
||
- 引入了**高帧率平滑算法 (LERP)**,动态绿色检测框不再像传统 OCR 那样剧烈跳动,而是像果冻一样丝滑地“流”向目标,视觉体验极佳。
|
||
|
||
---
|
||
|
||
## 🛠 功能清单
|
||
|
||
* **相机与识别**:
|
||
* **AI Auto-Zoom**: 自动将编码放大到屏幕 50%-60% 占比。
|
||
* **Auto-Focus**: 变焦后自动触发对焦与测光。
|
||
* **Smart Crop**: 上传前自动根据检测框进行精准裁剪(+20% Padding),减少流量消耗,提升后端识别率。
|
||
* **防抖拍摄**: 拍摄按钮增加防抖逻辑,防止重复误触。
|
||
* **数据管理**:
|
||
* **本地历史记录**: 使用 Room 数据库本地存储所有扫描记录。
|
||
* **搜索与筛选**: 支持按类别或日期快速检索历史数据。
|
||
* **数据统计看板**: 可视化展示识别准确率和各类别的分布情况。
|
||
* **个性化定制**:
|
||
* **自定义类别**: 支持用户添加、编辑、删除自定义机具类别(如“卡线器扫码”等)。
|
||
|
||
---
|
||
|
||
## 🚀 快速开始
|
||
|
||
### 环境要求
|
||
* Android Studio Ladybug 或更新版本。
|
||
* JDK 17 或更高版本。
|
||
* Android 真机(需支持相机功能,Min SDK 24+)。
|
||
|
||
### 构建与运行
|
||
1. **克隆仓库**: `git clone <repository-url>`
|
||
2. **打开项目**: 使用 Android Studio 打开项目根目录。
|
||
3. **同步依赖**: 等待 Gradle Sync 完成所有依赖下载 (包含 ML Kit 与 CameraX)。
|
||
4. **真机调试**: 连接 Android 手机,点击工具栏上的 **Run** 按钮。
|
||
|
||
---
|
||
|
||
## 📖 使用指南 (v2.0)
|
||
|
||
1. **选择模式**:
|
||
* 默认进入 **AI 扫描** 模式。
|
||
* 如需精确控制,点击右上角切换至 **手动模式**。
|
||
2. **扫描识别**:
|
||
* **AI 模式**: 手机对准编码即可。绿框出现 -> 自动拉近 -> 自动拍照。一气呵成。
|
||
* **手动模式**: 将编码对准屏幕中央的**白色方框**,手动调整距离或变焦,点击底部 **拍照按钮**。
|
||
3. **结果确认**:
|
||
* 查看识别结果,如有误点击“手动修正”。
|
||
* 确认无误后提交保存。
|
||
4. **类别管理**:
|
||
* 点击底部类别栏,选择“添加自定义类别”或管理现有类别。
|
||
|
||
---
|
||
|
||
## 📂 项目结构
|
||
* `ui/`: 界面层,CameraScreen (包含 Auto-Zoom 逻辑), ResultScreen, HistoryScreen。
|
||
* `data/`: 数据层,API, Room Database, Repository。
|
||
* `util/`: 工具类,ImageProcessor (裁剪与压缩)。
|
||
* `camera/`: **[New]** `TextRecognitionAnalyzer.kt` (封装 ML Kit 识别与智能聚合逻辑)。
|
||
|
||
---
|
||
**注意**: 本项目依赖后端 OCR 服务接口。请在 `OcrAppModule.kt` 或 `Retrofit` 配置中检查 API 地址配置。
|