原文:http://www.echojb.com/image/2017/06/06/417204.html

一 全卷积神经网络

深度学习图像分割(FCN)训练自己的模型大致可以以下三步:

1.为自己的数据制作label;

2.将自己的数据分为train,val和test集;

3.仿照voc_lyaers.py编写自己的输入数据层。

其中主要是如何制作自己的数据label困扰着大家。

二 图像标签制作

第一步:使用github开源软件进行标注

地址:https://github.com/wkentaro/labelme

第二步:为标注出来的label.png进行着色

首先需要对照VOC分割的颜色进行着色,一定要保证颜色的准确性。Matlab代码:

function cmap = labelcolormap(N) if nargin==0     N=256 end cmap = zeros(N,3); for i=1:N     id = i-1; r=0;g=0;b=0;     for j=0:7         r = bitor(r, bitshift(bitget(id,1),7 - j));         g = bitor(g, bitshift(bitget(id,2),7 - j));         b = bitor(b, bitshift(bitget(id,3),7 - j));         id = bitshift(id,-3);     end     cmap(i,1)=r; cmap(i,2)=g; cmap(i,3)=b; end cmap = cmap / 255;

对应的颜色类别:

类别名称 R G B  background 0 0 0 背景  aeroplane 128 0 0 飞机  bicycle 0 128 0  bird 128 128 0  boat 0 0 128  bottle 128 0 128 瓶子  bus 0 128 128 大巴  car 128 128 128  cat 64 0 0 猫  chair 192 0 0  cow 64 128 0  diningtable 192 128 0 餐桌  dog 64 0 128  horse 192 0 128  motorbike 64 128 128  person 192 128 128  pottedplant 0 64 0 盆栽  sheep 128 64 0  sofa 0 192 0  train 128 192 0  tvmonitor 0 64 128 显示器

然后使用python 的skimage库进行颜色填充,具体函数是skimage.color.label2rgb(),这部分代码以及颜色调整我已经完成了,由于代码太长就不贴出来了,有需要的可以私信我。

第三步:最关键的一步

需要注意的是,label文件要是gray格式,不然会出错:scores层输出与label的数据尺寸不一致,通道问题导致的,看下面的输出是否与VOC输出一致。

In [23]: img = PIL.Image.open('F:/DL/000001_json/test/dstfcn.png') In [24]: np.unique(img) Out[24]: array([0, 1, 2], dtype=uint8)

其中涉及到如何把24位png图转换为8位png图,直接上代码:

dirs=dir('F:/xxx/*.png'); for n=1:numel(dirs)      strname=strcat('F:/xxx/',dirs(n).name);      img=imread(strname);      [x,map]=rgb2ind(img,256);      newname=strcat('F:/xxx/',dirs(n).name);      imwrite(x,map,newname,'png'); end

三 FCN模型训练

待续…

全卷积 FCN 数据标签制作相关推荐

  1. 旋转标注框数据标签制作-roLabelImg

    一.roLabelImg简介 roLabelImg是基于labelImg改进的,也是用来标注为VOC格式的数据,但是在labelImg的基础上增加了能够使标注的框进行旋转的功能. 网址:https:/ ...

  2. 全卷积神经网络(FCN)论文笔记

    全卷积神经网络(FCN)论文笔记 Fully Convolutional Networks for Semantic Segmentation Abstract 卷积网络是一种功能强大的视觉模型,可以 ...

  3. FCN全卷积网络模型——高分辨率遥感影像地物识别

    FCN全卷积网络模型--高分辨率遥感影像地物识别 这是一篇操作日记 win10与ubuntu的caffe安装过程独立,只是两次不同系统下的演习,真正实验在ubuntu下完成. 操作空间 win10 1 ...

  4. 【CV语义分割】全卷积神经网络FCN(更新ing)

    学习总结 (1)paper<Fully Convolutional Networks for Semantic Segmentation> (2)论文翻译可以参考:https://www. ...

  5. 全卷积网络(FCN)实战:使用FCN实现语义分割

    全卷积网络(FCN)实战:使用FCN实现语义分割 FCN对图像进行像素级的分类,从而解决了语义级别的图像分割(semantic segmentation)问题.与经典的CNN在卷积层之后使用全连接层得 ...

  6. 全卷积网络FCN详细讲解(超级详细哦)

    原文链接:https://blog.csdn.net/qq_41760767/article/details/97521397?depth_1-utm_source=distribute.pc_rel ...

  7. 全卷积神经网络( FCN ):语义分割深度模型先驱

    语义分割 简单地说,分割就是抠图.语义分割,就是按图像中物体表达的含义进行抠图. 现在ps已经集成很多自动分割的功能,相比旧版本软件,新软件提高了美工人员的抠图和美图的效率. 如果我们能在更复杂的环境 ...

  8. 全卷积网络FCN详解

    转载自:  点击打开链接 背景 CNN能够对图片进行分类,可是怎么样才能识别图片中特定部分的物体,在2015年之前还是一个世界难题.神经网络大神Jonathan Long发表了<Fully Co ...

  9. 全卷积网络FCN与卷积神经网络CNN的区别

    背景 CNN能够对图片进行分类,可是怎么样才能识别图片中特定部分的物体,在2015年之前还是一个世界难题.神经网络大神Jonathan Long发表了<Fully Convolutional N ...

  10. 卷积神经网络( CNN)与全卷积神经网络(FCN)

    目录 卷积神经网络(CNN) 卷积层 卷积层尺寸的计算原理 标准卷积计算举例 1 x 1 卷积计算举例 全连接层计算举例 附:TensorFlow 中卷积层的简单实现 激励层 池化层 池化层的作用 输 ...

最新文章

  1. ASP.NET页面进行GZIP压缩优化的几款压缩模块的使用简介及应用测试!(附源码)
  2. redis 学习(18)-- AOF
  3. 百米路由器2登陆地址_腾达无线路由器怎么安装,真的不错
  4. lia人是什么意思_69年属鸡人终身灾难是什么意思
  5. Git添加为远程仓库
  6. [转载] python循环中break、continue 、exit() 、pass的区别
  7. Kali Linux工具文档翻译计划
  8. 2499元起!红米K20 Pro发布 吊打855友商旗舰?
  9. Prim算法的C语言程序
  10. Harmony OS — Switch开关状态
  11. Flex与Servlet之间数据的交互
  12. 谷歌翻译插件对大陆停止服务及其解决方案
  13. 从键盘上键入1~7的数字,输出对应星期以及英文缩写
  14. 【Java】我的世界Java版外挂制作 [3] - Killaura FastBow
  15. API是什么意思,具体是什么?
  16. C++11特性及其它常用特性
  17. 零基础开发--歌曲管理系统
  18. SAP那些事-职业篇-10-顾问最重要的思维方式
  19. php mysql数据库常用sql语句命令集合
  20. WP-春秋云镜-Unauthorized靶场完全通关指南

热门文章

  1. json rpgmv 加密_【RPG Maker MV插件编程】【实例教程6】存档的加密解密与保护
  2. k8s——Kubernetes配置yaml文件详解
  3. PRINCE2认证10大常见问题集锦,拿走不谢
  4. PRINCE2的含金量如何?
  5. 基于Java的进销存管理系统 附:源码课件
  6. 数据库常用增删改查语句
  7. 黑苹果10.13.6安装WebDriver驱动nvidia独立显卡,以及修改机型
  8. 服务器IO测试(Iozone使用)
  9. linux netperf,Netperf 的使用与介绍
  10. QListView拖动排序