# ScanOpenCVDemo
**Repository Path**: writer/ScanOpenCVDemo
## Basic Information
- **Project Name**: ScanOpenCVDemo
- **Description**: 一个客户端项目,支持调用扫描仪,opencv处理图像,并识别二维码。
- **Primary Language**: C#
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 20
- **Forks**: 0
- **Created**: 2018-08-10
- **Last Updated**: 2025-01-04
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
一个影像扫描客户端项目,支持调用扫描仪扫描图像加载进软件内,也可以本地导入图像,opencv处理图像的同时并识别出图像中的二维码信息(值针对发票)。系统里面的逻辑有很大的限制,比如补单,扫描识别发票的条件,扫描仪的回调处理机制,需要一步一步调试理解。
**1、客户端功能点列表**
- 登录双击登录框,会显示最近登录的用户名
- 左侧树结点的操作,批量转移节点,批量删除节点,节点添加标识
- 双击单据节点可以显示本单据下的所有图像的缩略图,选择缩略图双击可以放大
- 鼠标滚轮可以放大缩小图像
- 可以旋转图像,并且保持旋转结果
- 可以获取扫描仪设备列表,并在设置中选择对应的扫描仪
- 扫描和上传图像会自动识别图像中的条形码,和二维码
- 可以设置ftp上传的主被动模式
- 上传图像进度可以查看,多线程上传,速度更快
- 可以对上传的图像进行合并为一张的操作,也可以撤销
- 退出后可以保存当前上传图像的数据,方便下次登录后重新操作
- 扫描的性能优化
- 多线程加载本地图像
**2、开发运行环境说明**
**支持运行在系统:**
1. xp sp3以上(.net 4.0以上版本)
2. windows 7
3. windows 8
4. windows 10
**开发环境**
最好是vs 2017以上
**对应的服务地址修改文件是MSSClient下的app.config文件**
```
```
**结构说明**
框架采用:
1. .net 4.0
2. OpenCvSharp
3. Zxing二维码识别
4. Zbar二维码识别
5. WPF
具体库名和版本号如下:
```
```
**样式文件**
样式文件主要以xml为主,是wpf框架的一个特性,在/Resources目录下。软件消息弹窗样式也在里面。
**FTP封装的类库**
封装了三个FTP的工具类,在Utils下的FTPClient.cs,FTPHelper.cs,FtpUtils.cs。注释已经标注了语法等。
**3、功界面功能部分动图**
**登录动图**

**合并图像操作动图[合并后还可以撤回]**

**4、功界面功能部分截图**
**登录界面**

**主界面**

**上传中界面**

**上传界面**

**合并图像**

**导入图像总览**

**标识为发票**
