我正在使用arrayfire机箱打开一个带有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方法,但不知道如何使用它。

最佳答案

cast的签名是cast<T: HasAfEnum>(&self) -> Array
Array类型没有类型参数。只有一种方法是cast方法。您需要使用turbofish语法为cast方法提供类型参数
::<_>

关于casting - 转换`arrayfire::Array`,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47267613/

10-13 05:34