tch-rs,如何将 tch.Tensor 转换为 Rust vec?

问题描述 投票:0回答:1

我有一个 tch::Tensor ,我想将其转换为 Rust vec,我该怎么做?

我尝试了以下解决方案,但不起作用

use tch::Tensor;
fn main(){

   let t: Tensor = Tensor::from_slice(&[1.1 ,2.2 ,3.3 ]); 

   let v  = Vec::<f32>::from(t);

}

有人可以给我解决方案代码吗?

按照上面的方法尝试过。

我搜索tch-rs文档,未能找到api。

rust tensor torch
1个回答
0
投票

看起来您需要使用

TryFrom
,因为
Tensor
丢失了静态类型信息:

let v = Vec::<f32>::try_from(t).expect("wrong type of tensor");

注意:我不确定这是否会成功或失败,因为您是从

f64
的切片创建它,但试图将其作为
Vec
f32
获得。我对这个库不熟悉,所以我不知道它是否会进行转换,我无法自己测试。

© www.soinside.com 2019 - 2024. All rights reserved.