将自己手动标注的数据集(PascalVOC格式)转化为.TFRecord格式

本文档介绍了如何将个人手动标注的PascalVOC格式数据集转换为Tensorflow的.TFRecord格式,以便于使用Tensorflow Object Detection API进行训练。文中提供了一个详细的步骤指南,并推荐了相关博文作为参考。
摘要由CSDN通过智能技术生成

 

“ 一个人如果不能学会遗忘,那将是很痛苦的事,别再自寻烦恼,快把痛苦的事给忘了吧!”

 

为了能够使用Object Detection API~

需要将数据集格式转化为.TFRecord再进行训练~

至于,

如何使用Tensorflow官方的Object Detection API

包括下载、依赖(protobuf等)安装、跑demo、训练自己的数据过程~

推荐一篇博文:  1.https://blog.csdn.net/rookie_wei/article/details/81143814

                             2.https://blog.csdn.net/rookie_wei/article/details/81210499

                             3.https://blog.csdn.net/rookie_wei/article/details/81275663

整个过程比较详细,可以参考~

本篇主要介绍如何将已标注好的数据集转化成Tensorflow通用的.TFRecord格式~

 

注意:本程序是我自己检测的6类object,根据情况修改!

#-*- coding=utf-8 -*-
# File Name: Create_TFRecord.py
# Author: HZ
# Created Time: 2018-06-06 
import os
import sys
import random
 
import numpy as np
import tensorflow as tf
 
import xml.etree.ElementTree as ET #操作xml文件
 
#我的标签定义有6类,根据自己的图片而定
VOC_LABELS = {
    'none': (0, 'Background'),
    'person': (1, 'Person'),
    'car': (2, 'Car'),
    'bus': (3, 'Bus'),
    'truck': (4, 'Truck'),
    'cyclist': (5, 'cyclist')
}
 
# 图片和标签存放的文件夹.
DIRECTORY_ANNOTATIONS = 'Annotations/'
DIRECTORY_IMAGES = 'JPEGImages/'
 
# 随机种子.
RANDOM_SEED = 4242  
 
#生成整数型,浮点型和字符串型的属性
def int64_feature(value):
    
    if not isinstance(value, list):
        value = [value]
    return tf.train.Feature(int64_list=tf.train.Int64List(value=value))
 
def float_feature(value):
    
    if n
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值