diff --git a/contrib/Faster_R-CNN/README.md b/contrib/Faster_R-CNN/README.md index 4f2d2ff75632ccafefbb9d7f7e01bc151ecbd2bc..65e01151b6ab708a88a866a9b7de96c9b6c548c7 100644 --- a/contrib/Faster_R-CNN/README.md +++ b/contrib/Faster_R-CNN/README.md @@ -29,14 +29,14 @@ 技术实现流程图
- +
### 1.2 支持的产品 -本项目以昇腾Atlas310卡为主要的硬件平台。 +本项目以昇腾x86_64 Atlas 300I(型号3010)和arm Atlas 300I (型号3000)为主要的硬件平台。 ### 1.3 支持的版本 @@ -109,7 +109,7 @@ └── README.md ``` -注:验证时有COCO和VOC两种数据格式是因为原图片经过滑窗裁剪后的小图片是以coco的数据格式进行训练的,而本系统最终采用的验证方式是,将经过推理后得到的小图片的标注框信息还原到未经过滑窗裁剪的图片上,再进行VOC评估。 +注:验证时有COCO和VOC两种数据格式,是因为原图片经过滑窗裁剪后的小图片是以coco的数据格式进行训练的,而本系统最终采用的验证方式是,将经过推理后得到的小图片的标注框信息还原到未经过滑窗裁剪的图片上,再进行VOC评估。 @@ -128,9 +128,6 @@ #设置MindX SDK 环境变量,SDK-path为mxVision SDK 安装路径 . ${SDK-path}/set_env.sh -#查看环境变量 -env - ``` ## 3. 准备模型 @@ -138,15 +135,15 @@ env **步骤1** 将训练好的Faster—RCNN模型 [fasterrcnn_mindspore.air](https://mindx.sdk.obs.cn-north-4.myhuaweicloud.com/mindxsdk-referenceapps%20/contrib/Faster-RCNN/fasterrcnn_mindspore.air) 下载至 ``python/models/conversion-scripts``(文件夹需创建)文件夹下。 -**步骤2** 将该模型转换为om模型,具体操作为: ``python/models`` 文件夹下,执行指令进行模型转换: +**步骤2** 将该模型转换为om模型,具体操作为:在``python/models`` 文件夹下,执行指令进行模型转换: -### DVPP模型转换 +DVPP模型转换 ``` bash convert_om.sh conversion-scripts/fasterrcnn_mindspore.air aipp-configs/aipp.cfg conversion-scripts/fasterrcnn_mindspore_dvpp ``` -### OPENCV模型转换 +OPENCV模型转换 ``` bash convert_om.sh conversion-scripts/fasterrcnn_mindspore.air aipp-configs/aipp_rgb.cfg conversion-scripts/fasterrcnn_mindspore_rgb @@ -179,21 +176,21 @@ bash build.sh python3 main.py ``` -命令执行成功后在目录``python/data/test/draw_result``下生成检测结果文件 。 +命令执行成功后在目录``python/data/test/draw_result``下生成检测结果文件。 -**步骤4** 精度测试 +## 5. 精度验证 -1. 准备精度测试所需图片,将[验证集](https://mindx.sdk.obs.cn-north-4.myhuaweicloud.com/mindxsdk-referenceapps%20/contrib/Faster-RCNN/eval.zip)下载到`python/data/eval/`目录下并解压。 +**步骤1** 准备精度测试所需图片,将[验证集](https://mindx.sdk.obs.cn-north-4.myhuaweicloud.com/mindxsdk-referenceapps%20/contrib/Faster-RCNN/eval.zip)下载到`python/data/eval/`目录(需创建)下并解压。 -2. 打开`python/pipeline/fasterrcnn_ms_dvpp.pipeline`文件,将第45行(postProcessConfigPath)配置参数改为`../models/fasterrcnn_coco2017_acc_test.cfg`。 +**步骤2** 打开`python/pipeline/fasterrcnn_ms_dvpp.pipeline`文件,将第45行(postProcessConfigPath)配置参数改为`../models/fasterrcnn_coco2017_acc_test.cfg`。 -3. 使用dvpp模式对图片进行推理,切换到``python/Main``目录下,执行命令: +**步骤3** 使用dvpp模式对图片进行推理,切换到``python/Main``目录下,执行命令: ```python python3 main.py --img_path ../data/eval/cocodataset/val2017/ --pipeline_path ../pipeline/fasterrcnn_ms_dvpp.pipeline --model_type dvpp --infer_mode eval --ann_file ../data/eval/cocodataset/annotations/instances_val2017.json ``` -4. 因为涉及到去重处理,每种缺陷需要分开评估精度,切换到``python/Main``目录下,执行命令: +**步骤4** 精度验证。 在``python/Main``目录下,执行以下命令(因为涉及到去重处理,每种缺陷需要分开评估精度): ```python # 验证气孔精度 @@ -205,9 +202,9 @@ python3 main.py **注**:cat_id为缺陷标签,object_name为对应缺陷名称,在 ``python/models/coco2017.names``可查看缺陷类别。 -## 5. 常见问题 +## 6. 常见问题 -### 5.1 后处理插件权限问题 +### 6.1 后处理插件权限问题 运行检测 demo 和评测时都需要将生成的Faster_R-CNN后处理动态链接库的权限修改,否则将会报权限错误,如下图所示: @@ -221,7 +218,7 @@ python3 main.py 切换到``postprocess``目录下,修改`./build/libfasterrcnn_mindspore_post.so`文件权限为640。 -### 5.2 模型转换问题 +### 6.2 模型转换问题 运行模型转换命名后报错: diff --git a/contrib/Faster_R-CNN/postprocess/FasterRcnnMindsporePost.cpp b/contrib/Faster_R-CNN/postprocess/FasterRcnnMindsporePost.cpp index 393978bdb071ba64c6426ddba37526e11981f849..a55163cd21c8aa61ec34ad029eb816ae206bcf29 100644 --- a/contrib/Faster_R-CNN/postprocess/FasterRcnnMindsporePost.cpp +++ b/contrib/Faster_R-CNN/postprocess/FasterRcnnMindsporePost.cpp @@ -13,7 +13,6 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -#include #include #include diff --git a/contrib/STGCN/README.md b/contrib/STGCN/README.md index 242278e7e700ac3a83fce5028b0ef240dfbce92e..4c5c3fbd325b9828ef7be317aca858f9f975eff4 100644 --- a/contrib/STGCN/README.md +++ b/contrib/STGCN/README.md @@ -50,6 +50,10 @@ SZ-Taxi数据集包含深圳市的出租车动向,包括道路邻接矩阵和 | -------- | --------- | | scipy | 1.13.1 | | numpy | 1.24.0 | +| pandas | 2.2.3 | +| google | 3.0.0| +|protobuf | 3.20.2| +|scikit-learn|1.5.2| ### 1.5 代码目录结构与说明 @@ -104,37 +108,39 @@ stgcn10:生成的om模型文件名,转换脚本会在此基础上添加.om ``` ## 4 运行 -### 4.1 数据集准备 -SZ-Taxi数据集下载链接:https://github.com/lehaifeng/T-GCN/tree/master/data -将sz_speed.csv放置在工程目录/data下 -### 4.2 运行main.py -运行main.py可以在sz_speed.csv的测试集上获得推理精度,指令如下: +如果需要推理自定义的数据集(行数大于12行,列数为156列的csv文件),运行predict.py,指令如下: ``` -python main.py [image_path] [result_dir] [n_pred] +python predict.py [image_path] [result_dir] 参数说明: image_path:验证集文件,如“data/sz_speed.csv” result_dir:推理结果保存路径,如“results/” -n_pred:预测时段,如9 -例如: python main.py data/sz_speed.csv results/ 9 -注意:sz_speed.csv文件的第一行数据为异常数据,需要手动删除 +例如: python predict.py data/sz_speed.csv results/ ``` -最后sz_speed.csv测试集的推理预测的结果会保存在results/predictions.txt文件中,实际数据会保存在results/labels.txt文件中。 -推理精度会直接显示在界面上。 +这会在results文件夹下生成代表预测的交通速度数据prediction.txt文件 +这是通过已知数据集里过去时段的交通速度数据预测未来一定时间内的交通速度,无标准参考,所以只会输出代表预测的交通速度数据的prediction.txt文件,而没有MAE和RMSE等精度。 +另外和main.py的运行指令相比少一个n_pred参数,因为已在代码中定义了确定数值,无需额外输入。 -### 4.3 运行predict.py -如果需要推理自定义的数据集(行数大于12行,列数为156列的csv文件),运行predict.py,指令如下: +## 5 精度验证 + +### 5.1 数据集准备 +SZ-Taxi数据集下载链接:https://github.com/lehaifeng/T-GCN/tree/master/data +将sz_speed.csv放置在工程目录/data下 + +### 5.2 运行main.py +运行main.py可以在sz_speed.csv的测试集上获得推理精度,指令如下: ``` -python predict.py [image_path] [result_dir] +python main.py [image_path] [result_dir] [n_pred] 参数说明: image_path:验证集文件,如“data/sz_speed.csv” result_dir:推理结果保存路径,如“results/” +n_pred:预测时段,如9 -例如: python predict.py data/sz_speed.csv results/ +例如: python main.py data/sz_speed.csv results/ 9 +注意:sz_speed.csv文件的第一行数据为异常数据,需要手动删除 ``` -则会在results文件夹下生成代表预测的交通速度数据prediction.txt文件 -这是通过已知数据集里过去时段的交通速度数据预测未来一定时间内的交通速度,无标准参考,所以只会输出代表预测的交通速度数据的prediction.txt文件,而没有MAE和RMSE等精度。 -另外和main.py的运行指令相比少一个n_pred参数,因为已在代码中定义了确定数值,无需额外输入。 +最后sz_speed.csv测试集的推理预测的结果会保存在results/predictions.txt文件中,实际数据会保存在results/labels.txt文件中。 +推理精度会直接显示在界面上。 \ No newline at end of file