-1

我正在使用arrayfire crate 打开带有af::load_image. 这给了我一个f32数组,我可以对其进行一些处理。完成后,我想u8使用以下方法将其保存为图像af::save_image

extern crate arrayfire as af;

fn main() {
    let im = af::load_image("image".into(), false);
    //let im2: af::Array = im.cast(); // Error: cannot infer type for T
    //let im2: af::Array<DType::U8> = im.cast(); // Error: expected no type arguments
}

我不知道如何将数组转换为u8类型。我研究了该from方法,但我不知道如何使用它。

4

1 回答 1

1

的签名castcast<T: HasAfEnum>(&self) -> Array

Arraytype 没有类型参数。它是cast一种方法。您需要cast使用 turbofish 语法为方法提供类型参数::<_>

let im2 = im.cast::<u8>();

于 2017-11-13T15:43:46.913 回答