# Vision Mark **Repository Path**: archknight/Vision-Mark ## Basic Information - **Project Name**: Vision Mark - **Description**: 用于准备卷积神经网络视觉识别训练用图片的综合工具。 - **Primary Language**: Python - **License**: BSD-3-Clause - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2019-06-21 - **Last Updated**: 2022-06-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Vision Mark 基于wxPython编写的用于神经网络训练的样本标记工具。主要设计提供以下功能。 * 以项目为基础单元,组织样本信息。 * 支持对样本进行初步切割编辑及特征标记。 * 对训练项目进行综合统计,提示需要优化的内容。 * 对训练样本进行自动分组和特征值计算并输出。 * 按照训练项目信息对卷积层参数进行计算和推荐。 ## 项目依赖安装与运行 Vision Mark运行在Python 3.6以上的版本中,运行时建议先建立虚拟环境,之后再安装项目依赖。 ```bash $ python3 -m venv venv $ source venv/bin/actviate (venv)$ pip install -r requirements.txt ``` 项目依赖安装结束后,可以使用`main.py`文件来启动项目。 ```bash (venv)$ python main.py ``` ## 可执行文档打包 Vision Mark采用py2app和py2exe来完成在macOS和Windows系统中的可执行文档打包工作。 对于可执行文档的配置需要调整`setup.py`文件。在macOS系统中的打包命令为`python setup.py py2app`,在Windows系统中的打包命令为`python setup.py py2exe`。 ## 操作说明 ### 名词定义 针对Vision Mark代码与界面中出现的名词,定义如下: * **项目目录**,用于保存项目信息、样本信息、导出样本的目录。 * **项目文件**,特指`project.yaml`文件,用于保存导出文件名、样本分组、尺寸等信息。 * **样本源**,用于切割产生样本图像的源图像。 * **样本**,可直接用于卷积网络训练的图像文件。 * **特征**,也称为**类别**,用于对样本进行定义,供卷积网络学习使用。 * **样本分组**,将全部样本随机分组,形成不同的训练组数。 * **训练样本比例**,从样本分组中提取出固定比例形成训练集。 * **验证样本比例**,从样本分组中提取出固定比例形成验证集。 * **样本描述文件**,用于对导出的用于训练样本图像进行索引和记录特征值的文件。 * **验证描述文件**,用于对导出的用于验证的样本图像进行索引和记录特征值的文件。 * **特征描述文件**,用于记录导出的特征及其顺序的文件。 ### 操作顺序 #### 定义项目参数 #### 拣选样本源图片 #### 建立样本 #### 核对样本 #### 导出样本 ## 已实现功能 * 项目新建、加载以及保存。 * 样本源管理。 * 样本切割区域定义及特征选择。 * 样本预览。 * 项目统计。 * ~~项目优化内容提示。~~ * 训练样本自动分组。 * 特征值计算。 * 训练样本导出。 * ~~卷积层参数计算与推荐。~~