MIN-MAX归一化
最近在做安全帽的识别,训练集标注好后需要进行归一化,简单写了个算法凑合用 import xml.etree.ElementTree as ET import os import numpy as npVOC_CLASSES = ( # always index 0'blue', 'red', 'yellow', 'white','no')#读取xml并进行归一化 def parse_rec(filename):""" Parse a PASCAL VOC xml file """tree = ET.parse(filename)objects = []jects = []for obj in tree.findall('object'):objc = {}difficult = int(obj.find('difficult').text)if difficult == 1:# print(filename)continueobjc['name'] = obj.find('name').textbbox = obj.find('bndbox')objc['bbox'] = [int(float(bbox.find('xmin').text)),int(float(bbox.find('ymin').text)),int(float(bbox.find('xmax').text)),int(float(bbox.find('ymax').text))]jects.append(objc)# 做归一化,分别对一张图片中的x、y做归一化vv = []nn = []for w in jects:ll = w['bbox']mm = w['name']vv.append(ll)nn.append(mm)vv = np.array(vv)min_x = min(vv[:, 0])min_y = min(vv[:, 1])max_x = max(vv[:, 2])max_y = max(vv[:, 3])j = 0for i in vv:obj_struct = {}obj_struct['name'] = nn [j]j += 1obj_struct['bbox'] = [float((i[0] - min_x) / (max_x - min_x)),float((i[1] - min_y) / (max_y - min_y)),float((i[2] - min_x) / (max_x - min_x)),float((i[3] - min_y) / (max_y - min_y))]objects.append(obj_struct)return objects #定义文件目录 Annotations = 'd:/image/label/' xml_files = os.listdir(Annotations)count = 0 for xml_file in xml_files:count += 1image_path = xml_file.split('.')[0] + '.jpg' #定义保存路径txt_file = open('d:/image/result/' + xml_file.split('.')[0] + '.txt', 'w') #读取标注文件并进行归一化results = parse_rec(Annotations + xml_file)if len(results) == 0:print(xml_file)continuefor result in results:class_name = result ['name']bbox = result ['bbox']class_name = VOC_CLASSES.index(class_name)txt_file.write(str(class_name) + ' ' + str(bbox [0]) + ' ' + str(bbox [1]) + ' ' + str(bbox [2]) + ' ' + str(bbox [3]) + ' ' + '\n')txt_file.write('\n') txt_file.close()
#xml文件如下
<annotation>
<folder>picture</folder>
<filename>00000.jpg</filename>
<path>D:\image\picture\00000.jpg</path>
<source>
<database>Unknown</database>
</source>
<size>
<width>1280</width>
<height>720</height>
<depth>3</depth>
</size>
<segmented>0</segmented>
<object>
<name>blue</name>
<pose>Unspecified</pose>
<truncated>0</truncated>
<difficult>0</difficult>
<bndbox>
<xmin>867</xmin>
<ymin>349</ymin>
<xmax>889</xmax>
<ymax>383</ymax>
</bndbox>
</object>
<object>
<name>blue</name>
<pose>Unspecified</pose>
<truncated>0</truncated>
<difficult>0</difficult>
<bndbox>
<xmin>1101</xmin>
<ymin>376</ymin>
<xmax>1127</xmax>
<ymax>406</ymax>
</bndbox>
</object>
<object>
<name>blue</name>
<pose>Unspecified</pose>
<truncated>0</truncated>
<difficult>0</difficult>
<bndbox>
<xmin>833</xmin>
<ymin>253</ymin>
<xmax>846</xmax>
<ymax>269</ymax>
</bndbox>
</object>
<object>
<name>blue</name>
<pose>Unspecified</pose>
<truncated>0</truncated>
<difficult>0</difficult>
<bndbox>
<xmin>772</xmin>
<ymin>283</ymin>
<xmax>784</xmax>
<ymax>298</ymax>
</bndbox>
</object>
<object>
<name>blue</name>
<pose>Unspecified</pose>
<truncated>0</truncated>
<difficult>0</difficult>
<bndbox>
<xmin>478</xmin>
<ymin>160</ymin>
<xmax>486</xmax>
<ymax>170</ymax>
</bndbox>
</object>
</annotation>
MIN-MAX归一化相关推荐
- c 语言min max 归一化,数据预处理之归一化和标准化
对于数据的预处理分在思想上称之为归一化以及标准化(normalization). 首先将归一化/ 标准化,就是将数据缩放(映射)到一个范围内,比如[0,1],[-1,1],还有在图形处理中将颜色处理为 ...
- 13,12_基本运算,add/minus/multiply/divide,矩阵相乘mm,matmul,pow/sqrt/rsqrt,exp/log近似值,统计属性,mean,sum,min,max
1.12.基本运算 1.12.1.add/minus/multiply/divide 1.12.2.矩阵相乘mm,matmul 1.12.3.pow/sqrt/rsqrt 1.12.4.exp/log ...
- LINQ to SQL语句之 Count/Sum/Min/Max/Avg
Count/Sum/Min/Max/Avg操作符 适用场景:统计数据吧,比如统计一些数据的个数,求和,最小值,最大值,平均数. Count 说明:返回集合中的元素个数,返回INT类型:不延迟.生成SQ ...
- 10.matlab中sort , min/max以及ceil 函数
1.sort 排序 2.min/max 求最大最小值 3.ceil----向上取整(不进行四舍五入)
- P3175 [HAOI2015]按位或(Min - Max容斥,FMT,概率期望,全网最清晰的题解!)
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Weblink https://www.luogu.com.cn/problem/P3175 Prob ...
- splunk的统计分析功能——特定字段的统计功能包括取值分布(+topK,min/max/平均值)...
特定字段的统计功能--取值分布,topK,min/max/平均值 例如: date_second 60 值, 100% 的事件 时段平均值 时段最大值 时段最小值 上限值 时段上限值 罕见值 具有此字 ...
- [云炬python学习笔记]Numpy中内置函数min(),max(),sum()与Python中内置函数min(),max(),sum()性能对比分析
众所周知,Python有许多内置函数(例如min(),max(),sum()),Numpy也有自己的内置函数(np.min(),np.max(),np.sum()).由于Numpy的函数是在编译码中执 ...
- LINQ to SQL语句之Select/Distinct和Count/Sum/Min/Max/Avg - YJingLee's Blog - 博客园(转)
Select/Distinct操作符 适用场景:o(∩_∩)o- 查询呗. 说明:和SQL命令中的select作用相似但位置不同,查询表达式中的select及所接子句是放在表达式最后并把子句中的变量也 ...
- Hive分析窗口函数(一) SUM,AVG,MIN,MAX
Hive分析窗口函数(一) SUM,AVG,MIN,MAX Hive分析窗口函数(一) SUM,AVG,MIN,MAX Hive中提供了越来越多的分析函数,用于完成负责的统计分析.抽时间将所有的分析窗 ...
- Oracle分析函数三——SUM,AVG,MIN,MAX,COUNT
Oracle 分析函数--SUM,AVG,MIN,MAX,COUNT SUM 功能描述:该函数计算组中表达式的累积和. SAMPLE :下例计算同一经理下员工的薪水累积值 MIN 功能描述:在一个组中 ...
最新文章
- 人工智能名人堂第54期 | 深度学习鼻祖:Geoffrey Hinton
- Symfony2Book16:Symfony2内部02-内核
- 无忧考吧python编译环境不存在_python:flake8找不到不存在的方法
- 评论:互联网的冬天还有多远?
- C语言 strlcpy函数实现
- php和c语言那个竞争大,【后端开发】php和c语言哪个难
- JVM虚拟机-Class文件之常量池
- 滴滴否认柳青计划卸任:目前正积极全面配合网络安全审查
- python逐行读取txt文件-在python 3.4上逐行读取文本文件
- 转)Ubuntu安装teamviewer
- 词形变换和词干提取工具(英文)
- Html垂直居中不起作用,html – 垂直居中不起作用,因为行不会达到100%的高度
- 【代码优化】返回0长度数组或者集合
- 常用正则表达式匹配Antconc英文句式搭配
- 【Proteus仿真】L297驱动步进电机
- 项目经理价值的最终体现
- 某一年某一年_链接一年
- 一款商城APP开发需要多少钱?
- 利用8421码进行进制之间的转换
- html 开关窗效果,逼真的HTML5+CSS3窗帘拉开收起动画特效