news 2026/6/23 21:36:52

原始数据—>张量转换后会丢失原始数据吗

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
原始数据—>张量转换后会丢失原始数据吗

学习李沐香蕉目标检测时疑问

原始数据 → 张量的转换链路(全程可回溯):

1. 图像原始数据的转换链路
硬盘上的.png文件(原始数据) ↓ 由torchvision.io.read_image读取 单个图像张量(uint8,[C,H,W])→ 存入images列表 ↓ 在BananasDataset的__getitem__中 转为float32张量(模型可训练)

张量和原始图片是一一对应的数值映射

比如原始图片中 (100,200) 像素的 RGB 值是 (255,0,0),张量中img[0,100,200]=255(R 通道)、img[1,100,200]=0(G 通道)、img[2,100,200]=0(B 通道)。

若要还原为 “可视化的原始图片”,只需将张量转格式即可:

# 从images列表中取第一个图像张量(还原原始图片) img_tensor = train_dataset.features[0] # uint8张量,[3,H,W] # 步骤1:转置为[H,W,C](Matplotlib可视化格式) img_np = img_tensor.permute(1,2,0).numpy() # 步骤2:显示原始图片(和硬盘上的.png文件完全一致) d2l.plt.imshow(img_np)
2. 标签原始数据的转换链路
CSV文本文件(原始标注:img_name,label,xmin,ymin,xmax,ymax) ↓ 由pd.read_csv读取为DataFrame(文本→数字) ↓ 转为list(target)([0,100,80,200,180]) ↓ torch.tensor(targets).unsqueeze(1) 标签张量(float32,[N,1,5])

张量中的数值就是 CSV 里的原始数字(只是维度适配),比如张量labels[0] = [[0,100,80,200,180]],对应 CSV 中00001.png的标注:label=0, xmin=100, ymin=80, xmax=200, ymax=180

若要还原为 “原始 CSV 格式”,只需将张量转回 DataFrame:

# 从标签张量还原原始标注 labels_np = train_dataset.labels.squeeze(1).numpy() # [N,5] csv_raw = pd.DataFrame( labels_np, columns=['label','xmin','ymin','xmax','ymax'] ) # 添加img_name列(从CSV中读取的原始图像名) csv_raw['img_name'] = csv_data.index print(csv_raw) # 和原始CSV文件内容完全一致

为什么代码不返回 “原始数据”(文件 / 文本)?

PyTorch 模型训练的核心是数值计算,原始的.png 文件(二进制)、CSV 文本(字符串)无法直接输入模型 —— 必须转为张量(数值矩阵):

  1. 图像张量:是原始图片像素的数值化表示,可参与梯度计算、卷积等操作;
  2. 标签张量:是原始标注的数值化表示,可用于计算损失(如边界框回归损失)。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/23 19:30:48

好好看一下2025年网络安全有多卷!

最近在后台回复粉丝的问题,已经遇到不少211/985高校信息安全专业、做安全攻防/渗透方向,却没找到暑期实习的粉丝了。 背景都很不错,有的CTF竞赛拿过奖,有的跟着导师做过项目,他们的提问甚至让我有点吃惊。 坦白来说&…

作者头像 李华
网站建设 2026/6/23 19:34:05

Java+iTextPDF,实时生成与预览PDF文件的最佳实践!

👉 这是一个或许对你有用的社群🐱 一对一交流/面试小册/简历优化/求职解惑,欢迎加入「芋道快速开发平台」知识星球。下面是星球提供的部分资料: 《项目实战(视频)》:从书中学,往事上…

作者头像 李华
网站建设 2026/6/23 13:41:42

小团队 CI/CD 实践:无需运维,Java Web应用的自动化部署

👉 这是一个或许对你有用的社群🐱 一对一交流/面试小册/简历优化/求职解惑,欢迎加入「芋道快速开发平台」知识星球。下面是星球提供的部分资料: 《项目实战(视频)》:从书中学,往事上…

作者头像 李华
网站建设 2026/6/23 21:00:35

C++ CRTP 替代虚函数

基本原理:CRTP(Curiously Recurring Template Pattern)是一种 C 编程设计模式,类似于 RAII、SFINAE、这些东西。核心思想只有一个东西:即派生类继承以自身为模板参数的基类模板,这样子呢,在 C 编…

作者头像 李华
网站建设 2026/6/23 21:31:08

中电金信:智能辅助审单方案让跨境金融审核又快又准

在跨境金融业务中,审单工作一直是一项重要但繁琐的任务。让银行工作人员为堆积如山的国际信用证、商业发票、海运提单等单据而头疼?传统人工审单不仅耗时耗力,还容易因规则复杂、经验依赖性强而出现疏漏,影响业务效率与风险控制。…

作者头像 李华
网站建设 2026/6/23 0:48:53

虚拟专用网络门户的恶意扫描激增40倍

最近,一场针对某虚拟专用网络V/P/N的全球性扫描狂潮悄然来袭。从2025年11月14日起,针对该V/P/N门户的恶意扫描在24小时内狂飙40倍。按照“大规模扫描先行,攻击随后而至”的网络安全铁律,再结合近两年Ivanti、Fortinet、Cisco等多家…

作者头像 李华