孪生网络Dataset
参考文章:https://cloud.tencent.com/developer/article/1761815
以natureDB为例
natureDB是一个自然图像数据集,一共有十个类别一个类别有100张照片。
利用脚本将图像的类别和和路径存入txt文件(这个很容易根据情况写就行了。。).
class nature_dataset():def __init__(self, transform = None, train = True):""":param transform: 选择transform:transform_train/test_train:param train: 是否为训练集:True/False"""f = Noneif train == True:f = open("./train.txt", "r")elif train == False:f = open("./test.txt", "r")imgs = []labels = []for line in f:line = line.strip("\n")#line = line.rstrip()word = line.split(" ")imgs.append((word[1], int(word[0]))) self.imgs = imgsself.transform = transformdef __getitem__(self, index):fn, label = self.imgs[index]img = Image.open("./images/" + fn)#此时就根据index得到了一张图片和其对应的标签if np.random.rand() < 0.5:index_1 = np.random.choice(np.arrange(len(self.imgs))[self.labels == label], 1)else:index_1 = np.random.choice(np.arrange(len(self.imgs))[self.labels != label], 1)fn_1, label_1 = self.labels[index_1]img_1 = Image.open("./images/" + fn_1)if label == label_1:label = 0else:label = 1return img, img_1, labeldef __len__(self):return len(self.imgs)
第一次看到这种语法…(仔细想想好像是这样y[True, False, …True])
import numpy as np
y = np.array([1, 1, 2, 2, 3, 3, 4, 4])
y1 = 1
idx2 = np.random.choice(np.arange(len(y))[y == y1],1)
print(idx2)
idx3 = np.random.choice(np.arange(len(y))[ y!= y1],1)
print(np.arange(len(y)))
print(np.arange(len(y))[y == y1])
print(np.arange(len(y))[y != y1])
[1]
[0 1 2 3 4 5 6 7]
[0 1]
[2 3 4 5 6 7]
孪生网络Dataset相关推荐
- 基于孪生网络的跟踪算法汇总
目录 1 SINT--[论文链接](https://arxiv.org/pdf/1605.05863.pdf)--[项目链接](https://taotaoorange.github.io/proje ...
- 【CV】SiamFC:用于目标跟踪的全卷积孪生网络
论文名称:Fully-Convolutional Siamese Networks for Object Tracking 论文下载:https://arxiv.org/abs/1605.07648 ...
- 孪生网络(Siamese Network)实现手写数字聚类
Siamese Network通常用于小样本的学习,是meta learning的方法. Siamese Network,其使用CNN网络作为特征提取器,不同类别的样本,共用一个CNN网络,在CNN网 ...
- pytorch搭建孪生网络比较人脸相似性
参考文献: 神经网络学习小记录52--Pytorch搭建孪生神经网络(Siamese network)比较图片相似性_Bubbliiiing的博客-CSDN博客_神经网络图片相似性 Python - ...
- 孪生网络图像相似度_生成对抗网络的进步多大,请看此文
全文共4175字,预计学习时长8分钟 最近,多项研究采用了生成对抗网络(Generative Adversarial Networks, 简称GANs)这一技术来生成分辨率为1024x1024的高清图 ...
- 【深度学习】孪生网络(Siamese Network)的模式和训练过程
[深度学习]孪生网络(Siamese Network)的模式和训练过程 文章目录 1 概述 2 Siamese network 孪生神经网络 3 孪生神经网络和伪孪生神经网络分别适用于什么场景呢? 4 ...
- 单样本学习与孪生网络
@miracle 在 单样本学习(One shot learning)和孪生网络(Siamese Network) 中说: 孪生网络与伪孪生网络 Siamese network就是"连体的神 ...
- MatConvnet中集成的损失函数(孪生网络的思考)
参看网址:https://www.baidu.com/?tn=94855285_hao_pg 这篇博客主要记载了利用MatCovnet实现孪生网络的一些问题,最核心的就是两个分支如何并到一起?反向传播 ...
- Siamese Network (应用篇2) :孪生网络用于图像块匹配 CVPR2015
参考论文:Zagoruyko S, Komodakis N. Learning to compare image patches via convolutional neural networks[J ...
最新文章
- android studio 插件开发 FindByTag插件 局部情况下取代ButterKnife插件
- python语法手册chm-python3.5.2官方帮助文档 参考手册(CHM版)
- docker一键部署jenkins服务(一)
- Codeforces Round #421 B
- C++右值引用与转移语义
- mvc 一般注释_使用带有注释和JQuery的Spring MVC 3的Ajax
- linux 启动db2 服务器,Linux系统设置DB2等服务开机启动的过程
- JEECG 树列表操作总刷新列表,需要重新展开问题 【官方补丁,适用所有版本】
- 雷军微博正式“确认”:Redmi Note 9 5G高配版处理器就是它
- Java中将ResultSet结果集转换为List
- shell time 计算
- 睡眠麻痹 CSP HSP
- ue4 迁移模型_UE4模型导入基础操作(MAX为例)
- 教你使用Python实现新个税计算器!
- 冰羚-IceOryx FAQ翻译
- 【java】Java 包(package)
- 交换机-自动协商机制-auto-negotiation
- jquery遍历节点的方法
- 用border-image实现QQ气泡聊天窗效果
- 新站开了,最新最快BT下载
热门文章
- 【BZOJ2131】免费的馅饼,坐标转换与DP
- 【BZOJ1236】KPSUM,记数类问题(乱搞)
- 14.图像透视——介绍,坐标系统(Coordinate System),建模投影(Modelling Projection)_1
- 2017.5.18-24 基站选址 失败总结
- 【英语学习】【English L06】U06 Banking L2 A savings account sounds better for me
- 【英语学习】【WOTD】brummagem 释义/词源/示例
- olcd12864的u8g2库_U8G2 软件包单色1.3寸OLED屏驱动在 RT-Thread 移植问题
- 从helloworld回顾程序的编译过程之三——静态链接
- Forward Plus Rendering
- OpenGL ES Emulator横向比较