这一篇比较简单,讲的是利用matlab提供的一个工具来生成带标签区域的图片,作为对象检测器模型的训练数据。其实机器学习领域,数据的重要性是大于算法的,但是没有多少人会安安静静成下心来研究怎么收集和处理数据,大家都在高谈阔论算法,这一点上真的要佩服李飞飞同学,不知道飞飞是何许人也的可以百度一下。好了,闲话不多说,直接开翻。

描述
训练图标签机(Training Image Labeler)是一个制作标签图像的便利工具,你可以通过它:
-交互式的为多种类对象制作矩形感兴趣区域(ROIs)
-为训练和评估对象检测器导出这些ROIs
-通过 trainCascadeObjectDetector函数训练对象检测器

打开训练图像标签机
-打开App菜单栏,在图像处理和机器视觉下单击红框标签、

-在命令行输入trainingImageLabeler

工具控制
你可以通过数据浏览器增加无限量的图片。可以选择,去除和创建ROIs,以及保存你的会话。完成后,可以导出ROI信息到XML文件里。

通过这个按钮增加图片,注意导入的图片不是拷贝副本,选中图片编辑完后,源图片就被覆盖了。会显示文件名称和被创建的ROIs个数。

 

 

创建ROIs
添加完图片后,可以增加标签和框定感兴趣区域。步骤如下
1.单击下面按钮先增加标签种类,规定一个名字,可以选择一种对应的颜色

 

2.选择第一步创建的标签
3.用鼠标框定图片中的对象,可以拖动框图修改,如果想选取整幅图,可以右键选择Add full image ROI,右键菜单还提供了一些缩放,旋转操作
4.工具栏的show ROI labels可以隐藏和显示标签内容

可以按session为单位保存当前为止的操作,或者理解成保存成一个mat文件也行,该文件会保存所有原图片路径信息,框定的ROI区域和一些其他相关信息。

导出ROIs

ROIs可以导出到matlab工作空间,格式如下,可以看到,其实所谓的ROIs就是图片上框定矩形区域的信息[左上角点x坐标,左上角y坐标,矩形宽度,矩形高度],以像素为单位。注意一幅图可以有多个ROIs,标签名作为列名被表示出来。

 

posted on 2017-12-28 23:16  voidgod  阅读(1186)  评论(0编辑  收藏  举报