Paddlelite Android 运行错误Check failed: op_->CheckShape()

1、Paddlelite Android 运行错误Check failed: op_->CheckShape(),提示in_dims().size() == 4 || in_dims.size() == 5 test error

替换模型以后模型的输入和 Paddle Lite 接收的输入不匹配导致

修改如下:

1、打开GitHub - lutzroeder/netron: Visualizer for neural network, deep learning, and machine learning models

网络可视化工具查看模型的输入

修改代码:对应模型的三个输入

// Set the data of input image
auto inputTensor = predictor_->GetInput(1);
std::vector<int64_t> inputShape = {1, 3, inputHeight_, inputWidth_};
inputTensor->Resize(inputShape);
auto inputData = inputTensor->mutable_data<float>();
cv::Mat resizedRGBAImage;
cv::resize(rgbaImage, resizedRGBAImage,
           cv::Size(inputShape[3], inputShape[2]));
cv::Mat resizedRGBImage;
cv::cvtColor(resizedRGBAImage, resizedRGBImage, cv::COLOR_BGRA2RGB);
resizedRGBImage.convertTo(resizedRGBImage, CV_32FC3, 1.0 / 255.0f);
NHWC3ToNC3HW(reinterpret_cast<const float *>(resizedRGBImage.data), inputData,
             inputMean_.data(), inputStd_.data(), inputShape[3],
             inputShape[2]);
// Set the size of input image
auto sizeTensor = predictor_->GetInput(0);
sizeTensor->Resize({1, 2});
auto sizeData = sizeTensor->mutable_data<float>();
sizeData[0] = inputShape[3];
sizeData[1] = inputShape[2];
auto scaleTensor = predictor_->GetInput(2);
scaleTensor->Resize({1, 2});
auto scaleData = scaleTensor->mutable_data<float>();
scaleData[0] = 1.f;
scaleData[1] = 1.f;

 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
这个错误消息 "check failed: last_dispatched_time_ <= next_data->gettime() (63)" 是在编程中可能会遇到的一种错误。这个错误的意思是,某个数据的“最后分派时间”应该小于等于下一个数据的时间,但是实际情况下不满足这个条件,出现了错误。 在程序中,可能存在一个时间的顺序问题。程序在处理数据时,需要按照时间的顺序来进行处理,保证每个数据的时间都是递增的。但是这个错误意味着当前处理的数据的时间大于下一个要处理的数据的时间。 要解决这个问题,可以检查程序中涉及到时间处理的部分代码,找到导致这种不一致的原因。可能是在某个地方没有正确的更新时间或者没有正确的排序数据。可以查看涉及到这个错误的代码片段,并且进行调试,观察变量的值是否符合预期。 在某些情况下,这个错误可能是由于并行处理引起的。多线程或多进程的程序在同时对数据进行处理时,可能会出现时间顺序的混乱。在这种情况下,可以采用同步机制来确保数据处理的顺序性,或者考虑重新设计算法或数据结构,以避免这种问题的发生。 总之,解决这个错误需要仔细检查程序中涉及到时间的代码,并且查找原因导致顺序问题的具体位置。通过调试和分析代码,可以找到并修复这个错误,确保程序能够正确处理时间顺序的数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值