android部署yolov3模型预测时崩溃
收藏
package com.example.paddletest6;
import androidx.appcompat.app.AppCompatActivity;
import com.baidu.paddle.lite.MobileConfig;
import com.baidu.paddle.lite.PaddlePredictor;
import com.baidu.paddle.lite.Tensor;
import com.baidu.paddle.lite.PowerMode;
import android.os.Bundle;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 1. 写入配置:设置MobileConfig
MobileConfig config = new MobileConfig();
config.setModelFromFile("/sdcard/Pictures/work.nb"); // 设置Paddle-Lite模型路径
config.setPowerMode(PowerMode.LITE_POWER_NO_BIND); // 设置CPU运行模式
config.setThreads(4); // 设置工作线程数
// 2. 创建 PaddlePredictor
PaddlePredictor predictor = PaddlePredictor.createPaddlePredictor(config);
System.out.println("加载模型完成");
// 3. 设置输入数据
long[] dims = new long[]{1, 3, 608, 608};
float[] inputBuffer = new float[3*608*608];
for (int i = 0; i < 3*608*608; ++i) {
inputBuffer[i] = 0;
}
Tensor input = predictor.getInput(0);
input.resize(dims);
input.setData(inputBuffer);
// 4. 执行预测
predictor.run();
System.out.println("预测完成");
// 5. 获取输出数据
Tensor result = predictor.getOutput(0);
float[] output = result.getFloatData();
for (int i = 0; i < output.length; ++i) {
System.out.println(output[i]);
}
}
}
在执行到predictor.run()的时候 程序就会直接崩溃
报错信息 A/libc: Fatal signal 11 (SIGSEGV), code 1, fault addr 0x0 in tid 5460 (ple.paddletest6)
0
收藏
请登录后评论
上github搞issue问吧,
这个signal 11的错误好像是指针为NULL时候的错误。
这个signal 11的错误好像是指针为NULL时候的错误。