MAttNet代码阅读

MAttNet代码阅读,第1张

MAttNet代码阅读

MAttNet代码阅读-1
  • refe.py代码阅读(对图片数据和文本数据的预处理)
    • 文本字典
    • 处理得到图片和标签的字典
    • 处理得到文本的字典(如上图)

refe.py代码阅读(对图片数据和文本数据的预处理)

图片部分与目标检测相同,生成字典(instances.json文件),文本部分(refcoco.p)生成文本的字典

文本字典

refer对于文本的处理得到的文本的字典 (对应refcoco(unc).p来理解)字典的可视化

处理得到图片和标签的字典
# fetch info from instances
		# 利用的是instances.json这个文件的信息 主要是处理的图片的相关信息
		Anns, Imgs, Cats, imgToAnns = {}, {}, {}, {}
		# annotations 是一个很大的列表 包括全部图片的标签的信息 每个框的信息都有对应的图片的id 具体的坐标 分割的像素点的信息 对应图片的id 类别信息等
		for ann in self.data['annotations']:
			Anns[ann['id']] = ann   # 建立anno的字典 可以通过anno的id来得到anno的信息(每一个框是一个信息
			# .get()返回字典中关键字对应的词 imgToAnns中有ann['image_id'] 则直接返回信息 ,不然返回[]
			imgToAnns[ann['image_id']] = imgToAnns.get(ann['image_id'], []) + [ann]    # 可以通过图片的id得到图片上所有标签的信息
		for img in self.data['images']:   # 建立图片的字典 可以通过图片的id得到图片的网络地址和图片的宽高信息
			Imgs[img['id']] = img
		for cat in self.data['categories']:
			Cats[cat['id']] = cat['name']    # 建立类别名称和类别id的字典
		
处理得到文本的字典(如上图)
		# fetch info from refs
		# 利用ref(unc)的信息
		Refs, imgToRefs, refToAnn, annToRef, catToRefs = {}, {}, {}, {}, {}
		Sents, sentToRef, sentToTokens = {}, {}, {}

		for ref in self.data['refs']:
			# ids
			ref_id = ref['ref_id']   # 定位目标的id
			ann_id = ref['ann_id']   # 定位目标的标签信息:像素点的分割 框的信息 类别
			category_id = ref['category_id']  # 定位目标的类别
			image_id = ref['image_id']  # 定位目标的图片ID

			# add mapping related to ref
			Refs[ref_id] = ref   # 得到这个目标的所有信息 以字典的形式保存
			imgToRefs[image_id] = imgToRefs.get(image_id, []) + [ref]   # image_ID到定位目标的一个映射
			catToRefs[category_id] = catToRefs.get(category_id, []) + [ref] # 类别ID到定位目标的映射  人这个标签-->所有定位目标是人的所有的信息
			refToAnn[ref_id] = Anns[ann_id]  # 定位目标到标签信息的映射
			annToRef[ann_id] = ref   # 标签ID到定位目标的映射

			# add mapping of sent
			for sent in ref['sentences']:
				Sents[sent['sent_id']] = sent   # 句子的字典
				sentToRef[sent['sent_id']] = ref  # 句子到定位目标信息的映射
				sentToTokens[sent['sent_id']] = sent['tokens']  # 句子到分词的映射

		

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/4827638.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-10
下一篇 2022-11-10

发表评论

登录后才能评论

评论列表(0条)

保存