paddlepaddle图像分类,paddle图片分类

  paddlepaddle图像分类,paddle图片分类

  2019独角兽企业招聘Python工程师标准

  什么是图像语义分割?

  图像语义分割,顾名思义,就是根据不同的语义对图像像素进行分组/分割。图像语义是指对图像内容的理解,比如能够描绘出什么对象在哪里做了什么事情等。分割是指对图片中的每个像素进行标注,标注属于哪个类别。近年来,它被用于无人驾驶技术中,以分割街道场景来避开行人和车辆,并在医学图像分析中辅助诊断。

  今天,我们介绍如何在图像语义分割任务中基于图像级联网络(ICNet)执行语义分割。与其他分割算法相比,ICNet兼顾了准确性和速度。

  PaddlePaddle将ICNet应用于工业领域,将零件质检工人从高强度、低效率的密集劳动中解放出来,有效提高了企业的业务效率。

  图像语义分割模型ICNet的实现方法

  下面是ICNet的实现(转自PaddlePaddle Github):

  运行程序示例需要PaddlePaddle develop的最新版本。如果你安装的PaddlePaddle版本低于这个要求,请根据PaddlePaddle官方文档更新安装版本。

  PaddlePaddle官方文档:

  http://paddle paddle . org/documentation/docs/zh/1.2/初学者_指南/索引. html

  代码结构

   network.py #网络结构定义脚本 train.py #训练任务脚本 eval.py #评测脚本 infer.py #预测脚本 cityscape.py #数据预处理脚本icnet与其他压缩计算方法相比,不仅考虑了速度,还考虑了精度。IC的主要思想是将输入的图像变换成不同的分辨率,然后利用不同计算复杂度的子网络对不同分辨率的输入进行计算,再将结果进行合并。ICNet由三个子网络组成。计算复杂度高的网络处理低分辨率输入,计算复杂度低的网络处理高分辨率网络。这样可以平衡高分辨率图像的精度和低复杂度网络的效率。

  整个网络结构如下:

  为Cityscape数据集准备本文,请到Cityscape官网注册下载:

  https://www.cityscapes-dataset.com/

  下载数据后,按照此处的说明和工具处理数据:

  https://github . com/mcordts/city scape scripts/blob/master/city scape scripts/preparation/createtrainidlabelimgs . py # L3

  处理后的数据

  data/city scape/-gt fine -test -train `-val -left mg 8 bit -test -train `-val -train . list-val . list其中,train。例子如下:

  leftimg 8 bit/train/stuttgart/stuttgart _ 000021 _ 000019 _ leftimg 8 bit . png gt fine/train/stuttgart/stuttgart _ 000021 _ 000019 _ gt fine _ labeltrainids . pngleftimg 8 bit/train/stuttgart/stuttgart _ 00072 _ 000019 _ leftimg 8 bit . png gt fine/train/stuttgart _ 000072 _ 00019 _ leftimg 8 bit

  模型训练和预测训练执行以下命令进行训练,同时指定检查点保存路径:

  python train . py-batch _ size=16-use _ GPU=true-check point _ path=。/chkpnt/使用以下命令获取更多说明:

  Python train.py - help在训练过程中,会根据用户的设置输出训练集中每个网络分支的损耗。示例如下:

  ITER[0];列车损耗:2.338;sub 4 _ loss:3.367;sub 24 _ loss:4.120;Sub124_loss: 0.151 Test执行以下命令对Cityscape测试数据集进行测试:

  Python eval.py-model _ path=。/model/-use _ GPU=true您需要通过选项-model _ path指定模型文件。脚本输出的评价指标是mean IoU。

  执行以下命令来预测指定的数据:

  Python Infer.py \-model _ path=。/model“\-images _ path=”。/data/city scape/ \-images _ list=。/data/cityscape/infer.list 通过选项-images _ list指定列表文件。列表文件默认情况下,预测结果保存在当前路径下的输出文件夹中。

  结果图2显示了在CityScape训练集上训练的损失曲线:

  在训练集上训练和在验证数据集上验证的结果是:mean_IoU=67.0%(文中为67.7%)。

  图3是使用infer.py脚本预测的结果的示例,其中第一行输入的原始图片、第二行的手动注释和我们的模型计算的结果是第三行。

  有关高分辨率图像的实时语义分割,请参见IC net:

  https://arxiv.org/abs/1704.08545

  请访问Github了解更多信息:

  https://github . com/paddle paddle/models/tree/develop/fluid/paddle cv/icnet

  转载于:https://my.oschina.net/u/3968773/blog/3003773

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: