为猪脸识别而进行自己数据集的构建、训练「建议收藏」

为猪脸识别而进行自己数据集的构建、训练「建议收藏」在实际过程中走了弯路,特地进行说明记录,以备今后参考。思路是先构建VOC2007格式的猪脸数据集,在转换成tf格式,然后利用tf的objectdetectionapi进行训练。原因是把2种构建方式都熟悉一遍,并把所有流程过一遍。1、构架VOC2007格式的猪脸数据集前提:在某个目录下建立如下关系的子目录。                               

大家好,又见面了,我是你们的朋友全栈君。



在实际过程中走了弯路,特地进行说明记录,以备今后参考。

思路是先构建VOC2007格式的猪脸数据集,在转换成tf格式,然后利用tf的objectdetectionapi进行训练。原因是把2种构建方式都熟悉一遍,并把所有流程过一遍。

1、构架VOC2007格式的猪脸数据集

前提:在某个目录下建立如下关系的子目录。

                                    —— Annotations

                            —— ImageSets

                                              —— Main

                                   —— JPEGImages

 

第一步:准备自己需要的图片,最好是jpg格式。如若不是则需要转换成jpg格式。

因为很多图片都是从网上找的,格式、大小都不一样,为了后续训练需要最好统一下大小,并把格式统一转换成jpg格式。 

图片的数量,一般来说最好一千张以上。为了后续训练出好的效果,最好一万张以上。

 


第二步:图片的重命名,因为VOC2007格式必须为JPG格式,并且图片是统一的六位数字,从000001开始。那我们也需要将所有训练图片重命名为此。


         重命名后所有图片就可以拷贝到JPEGImages目录下。

 

第三步:进行目标物体的标注。推荐用labelImg,因为它可直接生成符合VOC2007格式的xml文件。

                   主要是体力活。

                   生成的所有xml文件就可以拷贝到Annotations目录下。

 

第四步:数据集的分割。

                   在实际训练过程中,需要四个文件,分别为test.txt是测试集,train.txt是训练集,val.txt是验证集,trainval.txt是训练和验证集。每个文件为对于图片的名字。在VOC2007中,trainval大概是整个数据集的50%test也大概是整个数据集的50%train大概是trainval50%val大概是trainval50%

                   参照python源码:split-datasets.py

                   生成的四个txt文件就可以拷贝到Main目录下。

 

第五步:如果上述各步骤中没有做拷贝的动作则在本步骤把相应的文件拷贝到对应的目录下。以符合VOC2007格式的要求。


                                   —— Annotations xml文件全部放到该文件夹里

                            —— ImageSets

                                            —— Main 其有四个txt文件,test.txt是测试集,train.txt是训练集,val.txt是验证集,trainval.txt是训练和验证集。Txt里的内容是即图片名字(无后缀)。

                                     —— JPEGImages 所有的训练图片放到该文件夹里


 

第六步:把上述目录及其文件都拷贝到pigfaces/VOC2007/下。


第七步:转换成tf的record格式的数据集文件

      运行如下命令:cd 到xxx\object_detection目录下。python create_pascal_tf_record.py –data_dir=xxxx\object_detection\pigfaces –year=VOC2007 –set=train –output_path=data\pig_train.record

第八步:进行训练。

       运行如下命令:cd 到xxx\objectdetection\object_detection目录下。python train.py –train_dir=data –pipeline_config_path=models\faster_rcnn_resnet101_voc07.config


上述的6,7,8可参考我的github代码,网址是https://github.com/renwoxing2016/Objectdetectionapi/



版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/151884.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 了解几种常用的哈希校验码是什么_代码有哪些校验方式

    了解几种常用的哈希校验码是什么_代码有哪些校验方式最近下载msdn版vista时,发现微软同时提供了SHA1校验码,我们就可以通过这些校验工具来比较下载的文件是否原汁原味。那么SHA1是什么呢?SHA1(SecureHashAlgorithm)是由NISTNSA设计为同DSA一起使用的,它对长度小于264的输入,产生长度为160bit的散列值,因此抗穷举(brute-force)性更好。SHA-1设计时基于和MD4(Messag…

    2025年11月8日
    3
  • java图书馆新地址_推荐20个5月最热门的Java开源项目

    java图书馆新地址_推荐20个5月最热门的Java开源项目以下涉及到的数据统计与2019年6月1日18点,数据来源:https://github.com/trending/java?since=monthly[1]。下面推荐的内容从Java学习文档到最热门的框架再到热门的工具应有尽有,建议收藏+在看!1.LeetCodeAnimation•Github地址:https://github.com/MisterBooo/L…

    2022年7月7日
    24
  • Centos7下载和安装教程

    Centos7下载和安装教程1.CentOS下载CentOS是免费版,推荐在官网上直接下载,网址:https://www.centos.org/download/DVDISO:普通光盘完整安装版镜像,可离线安装到计算机硬盘上,包含大量的常用软件,一般选择这种镜像类型即可。EverythingISO:包含了完整安装版的内容,并对其进行补充,集成了所有软件。MinimalISO:这个版本为精简版的镜像,可以安…

    2022年6月13日
    35
  • 几款主流好用的富文本编辑器(所见即所得常用编辑器)介绍

    几款主流好用的富文本编辑器(所见即所得常用编辑器)介绍富文本编辑器 富文本编辑器(RichTextEditor,RTE)是一种可内嵌于浏览器,所见即所得的文本编辑器。它提供类似于OfficeWord的编辑功能,方便那些不太懂HTML用户使用,富文本编辑器的应用非常广泛,它的历史与图文网页诞生的历史几乎一样长。 作为一个技术人员,手上备上两款富文本编辑器还是很有用的,指不定那个项目就要集成一个进去。到时候现找现用那可就费功夫了,毕竟从开…

    2022年6月10日
    365
  • sublime3激活码【在线注册码/序列号/破解码】

    sublime3激活码【在线注册码/序列号/破解码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月19日
    38
  • 贴片器件的识别[通俗易懂]

    贴片器件的识别[通俗易懂]前言实际板子上,贴片原件一般就较小,如果想知道贴片原件值,而且贴片件上有些标识.如果能辨别标识的含义,就不用将器件查下来量了。如果眼神不好(或者原件实在太小了),可以用工业显微镜拍下来,再识别原件上印刷的器件标识。在显微镜下,光滑好看的焊点,也变的那么粗糙:)慢慢记录,见到能用标识识别的器件,就记录一下。笔记0贴片电阻看到0R电阻电阻上画了一个小方框…

    2022年8月21日
    9

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号