当前位置: 首页 > news >正文

在线查询网站收录学设计用什么笔记本电脑好

在线查询网站收录,学设计用什么笔记本电脑好,北京地铁建设的官方网站,让Wordpress只支持手机访问目录 学习python的一些基础知识 argparser assert关键字 让你秒懂Python 类特殊方法__getitem__ lxml.etree.fromstring的使用 统计一下json文件内的种类 正脸红外光 正脸-混合红外光 正脸-交叉偏振光 正脸-平行偏振光 正脸-紫外光 正脸-棕色光 调用mydataset可视化…

目录

学习python的一些基础知识

argparser

assert关键字

让你秒懂Python 类特殊方法__getitem__

        lxml.etree.fromstring的使用

统计一下json文件内的种类

正脸红外光

正脸-混合红外光

正脸-交叉偏振光

正脸-平行偏振光

正脸-紫外光

正脸-棕色光

调用mydataset可视化 --- 修改目标

主文件 

调用split_data把数据集根据名字分成训练集和验证集

把train.txt作为VOCDataSet的参数txtname传入 

VOCDateSet构造函数里文件路径

xml_list 存的是每个xml的位置

调用getitem特殊方法得到每个文件的类别信息

调用parse_xml_to_dict将每个xml文件的object提取放入data内

将从data里提取出的object信息放入boxes和labels中

需要修改的文件内容

pascal_voc_classes.json文件的内容

修改split_data内容,分离出json_train和json_val文件

构造函数

getitem函数


学习python的一些基础知识

argparser

python之parser.add_argument()用法——命令行选项、参数和子命令解析器_夏普通的博客-CSDN博客_parser.add_argument

import osif __name__ == "__main__":import argparseparser = argparse.ArgumentParser(description=__doc__)# 训练设备类型parser.add_argument('--A', default='3', help='device')parser.add_argument('--B', default='4', help='device')args = parser.parse_args()print(args.A)print(args.A)print(type(args.A))print(type(args.B))print(int(args.A)+1)print(int(args.A)+1)

在Edit Configurations里输入参数 

 

从结果里可以看到其实输入的参数是str类型的,可以强制转换 

5
5
<class 'str'>
<class 'str'>
6
6

assert关键字

python中assert的用法(简洁明了)_花里梦雨的博客-CSDN博客_python assert用法

报错:

让你秒懂Python 类特殊方法__getitem__

凡是在类中定义了这个__getitem__ 方法,那么它的实例对象(假定为p),可以像这样

p[key] 取值,当实例对象做p[key] 运算时,会调用类中的方法__getitem__。

让你秒懂Python 类特殊方法__getitem__ - 知乎

lxml.etree.fromstring的使用

lxml.etree.fromstring的使用_夏夏今天学习了吗的博客-CSDN博客

该方法是将xml格式转化为Element 对象,Element 对象代表 XML 文档中的一个元素。

统计一下json文件内的种类

Python常用小技巧(五)——批量读取json文件_码农邦的博客-CSDN博客_python批量读取json文件

正脸红外光

 正脸-混合红外光

 正脸-交叉偏振光

正脸-平行偏振光

正脸-紫外光

正脸-棕色光

其实就是标注了四个种类:eyes eyebrow nose mouth 

调用mydataset可视化 --- 修改目标

注:这不是预测 只是把矩形四个点和label提出之后 再用这几个点在原图中画出位置

修改mydataset文件将json转数据集能达到这个效果就o

主文件 

调用split_data把数据集根据名字分成训练集和验证集

train.txt里面长这样

把train.txt作为VOCDataSet的参数txtname传入 

VOCDateSet构造函数里文件路径

有三个文件路径

root 根目录

annotation_root xml文件位置

img_root 图片位置

xml_list 存的是每个xml的位置

将xml_list存入类内

调用getitem特殊方法得到每个文件的类别信息

调用parse_xml_to_dict将每个xml文件的object提取放入data内

        data = self.parse_xml_to_dict(xml)["annotation"]print("--------------data-------------------")print(type(data))print(data)

调用函数后data:

--------------data-------------------
<class 'dict'>
{
'filename': '2009_001291.jpg', 'folder': 'VOC2012', 
'object': [{'name': 'train', 'bndbox': {'xmax': '317', 'xmin': '96', 'ymax': '389', 'ymin': '100'}, 
'difficult': '0', 
'occluded': '0', 
'pose': 'Unspecified', 
'truncated': '0'}], 
'segmented': '0', 
'size': {'depth': '3', 'height': '500', 'width': '408'}, 
'source': {'annotation': 'PASCAL VOC2009', 'database': 'The VOC2009 Database', 'image': 'flickr'}
}

将从data里提取出的object信息放入boxes和labels中

        for obj in data["object"]:xmin = float(obj["bndbox"]["xmin"])xmax = float(obj["bndbox"]["xmax"])ymin = float(obj["bndbox"]["ymin"])ymax = float(obj["bndbox"]["ymax"])# 进一步检查数据,有的标注信息中可能有w或h为0的情况,这样的数据会导致计算回归loss为nanif xmax <= xmin or ymax <= ymin:print("Warning: in '{}' xml, there are some bbox w/h <=0".format(xml_path))continueboxes.append([xmin, ymin, xmax, ymax])labels.append(self.class_dict[obj["name"]])if "difficult" in obj:iscrowd.append(int(obj["difficult"]))else:iscrowd.append(0)

需要修改的文件内容

pascal_voc_classes.json文件的内容

本来这个文件存储的就是类别对应的序号,这里是在给自制的数据集可视化的部分。 

修改split_data内容,分离出json_train和json_val文件

构造函数

修改文件路径

 最后的目的就是在self.xml_list里存储json文件

getitem函数

        for obj in data["shapes"]:#用多边形标注时#print(obj)if obj['shape_type']=='polygon':#print(len(obj['points']))label = obj['label']xmin=ymin=100000xmax=ymax=0for point in obj['points']:if point[0]<xmin:xmin=float(point[0])elif point[0]>xmax:xmax=float(point[0])if point[1]<ymin:ymin=float(point[1])elif point[1]>ymax:ymax=float(point[1])else:label = obj['label']xmin = float(obj['points'][0][0])xmax = float(obj['points'][1][0])ymin = float(obj['points'][0][1])ymax = float(obj['points'][1][1])

索引到类别信息的位置

暂时有两种情况 1.多边形 2.矩形

在多边形的处理中,找出点x的最小最大值和y的最小最大值分别赋值给xmin xmax ymin ymax

矩形直接转换

http://www.yayakq.cn/news/175302/

相关文章:

  • 深圳做网站哪家专业wordpress采集后排版
  • 做一个什么样的网站wordpress常用插件汇总
  • 网站建设方案模版网站建设的问题
  • 姜堰网站建设青岛市建设工程管理信息网
  • 院校门户网站建设方案雪人主题WordPress
  • 卖房网站排名品牌营销目标
  • 商业网站服务网站搭建ai功能
  • 网站导航条做多高中国优秀网站
  • 比较不同类型网站栏目设置区别wordpress 访问插件
  • 网站源码使用方法近期热点新闻
  • 南通市港闸区城乡建设局网站网站设配色
  • 永春建设局网站阿里巴巴做网站找谁
  • 石家庄制作网站软件钢结构
  • 网站提交入口手机系统优化
  • 如何优化网站关键词排名制作灯笼的步骤及图片
  • 深圳企业网站建设电话知言 wordpress
  • 网站开发还找到工作吗房屋装修设计网
  • 网站地图案例电商平台推广怎么做
  • 做景观设施的网站wordpress不用邮件确认
  • 做网站的实训报告有没有网站建设的教程
  • 优化网站软文公司名称logo设计
  • 天津制作网站公司推荐微网站开发一般费用多少钱
  • 南宁建站免费模板网站制作成本多少钱
  • 凡科网站内容怎么做效果好提供信息门户网站制作
  • 昆明做网站优化哪家好网站建设费用主要包括那几项
  • 微信红包建设网站优化志愿网站
  • 做网站的公司经营范围乡村建设的网站
  • 网站开发报价单广元市城乡规划建设监察大队网站
  • 网站建设流程图解关于网站设计的会议
  • 怎样创建微网站微信官方网页版