MNN C++输入图片多通道
前言
mnn正常的输入为 (1,3,h,w),由于我的网络输入需要把多帧叠加到一起,例如叠加6帧到channel上,则输入应为(1,3*6,h,w)。mnn提供的数据预处理无法处理这种数据。
解决方法
话不多说,直接上代码
std::queue<cv::Mat> cloneimgs(imgs); // 6帧数据auto t_start_pre1 = std::chrono::high_resolution_clock::now();MNN::Tensor givenTensor(inTensor_, MNN::Tensor::CAFFE); // 设定我们自己的输入张量auto inputData = givenTensor.host<float>(); // 指针for (int i=0;i<input_frame_;i++){cv::Mat preImage = cloneimgs.front();cloneimgs.pop();cv::resize(preImage,preImage,cv::Size(input_w_,input_h_));preImage.convertTo(preImage, CV_32FC3, 1 / 255.0); // 数据预处理 img = img*scale + shiftstd::vector<cv::Mat> bgrChannels(3);cv::split(preImage, bgrChannels); // 分通道for (int j = 0; j < bgrChannels.size(); j++){ //HWC->CHW,注意opencv读取图片顺序为bgr,我网络输入也是bgr,所以通道顺序没变// 如果需要rgb,改变j,从2到0即可std::vector<float> data = std::vector<float>(bgrChannels[j].reshape(1, preImage.cols * preImage.rows));memcpy(inputData + i*input_w_*input_h_*3+j*input_w_*input_h_,&data[0],sizeof(float)*data.size()); }}inTensor_->copyFromHostTensor(&givenTensor); // 把数据给到inTensor_auto t_end_pre1 = std::chrono::high_resolution_clock::now();float total_pre1 = std::chrono::duration<float, std::milli>(t_end_pre1 - t_start_pre1).count();std::cout << "process data: " << total_pre1 << " ms." << std::endl;
MNN C++输入图片多通道相关推荐
- ML之SSIM:基于输入图片RGB的三维向量利用SSIM(结构相似性度量)算法进行判别
ML之SSIM:基于输入图片RGB的三维向量利用SSIM(结构相似性度量)算法进行判别 目录 输出结果 代码实现 相关文章 ML之相似度计算:图像数据.字符串数据等计算相似度常用的十种方法简介.代码实 ...
- ML之Cosin:基于输入图片RGB均值化转为单向vector利用Cosin(余弦相似度)算法进行判别
ML之Cosin:基于输入图片RGB均值化转为单向vector利用Cosin(余弦相似度)算法进行判别 目录 输出结果 代码实现 相关文章 ML之相似度计算:图像数据.字符串数据等计算相似度常用的十种 ...
- ML之Hash_HamMingDistance:基于输入图片哈希化(均值哈希+差值哈希)即8*8个元素的单向vector利用汉明距离算法进行判别
ML之Hash_HamMingDistance:基于输入图片哈希化(均值哈希+差值哈希)即8*8个元素的单向vector利用汉明距离算法进行判别 目录 输出结果 代码实现 相关文章 ML之相似度计算: ...
- ML之Hash_EditDistance:基于输入图片哈希化(均值哈希+差值哈希)即8*8个元素的单向vector利用编辑距离算法进行判别
ML之Hash_EditDistance:基于输入图片哈希化(均值哈希+差值哈希)即8*8个元素的单向vector利用编辑距离算法进行判别 目录 输出结果 代码实现 相关文章 ML之相似度计算:图像数 ...
- cifar10数据集测试有多少张图_pytorch VGG11识别cifar10数据集(训练+预测单张输入图片操作)...
首先这是VGG的结构图,VGG11则是红色框里的结构,共分五个block,如红框中的VGG11第一个block就是一个conv3-64卷积层: 一,写VGG代码时,首先定义一个 vgg_block(n ...
- 神经网络图用什么软件做,神经网络输入图片大小
1.当输入输出均为图片时用什么样的神经网络比较合适 输入输出全为图片一般采用全卷积神经网络,不要包含全连接层. 谷歌人工智能写作项目:小发猫 2.卷积神经网络为什么适合图像处理? 神经网络的本质就在于 ...
- 为什么有全连接层的卷积网络输入图片尺寸需要固定的
一句话: 全连接层的一个神经元对应一个输入. 换句话说, 全连接层要求固定的输入维度. 数学推导: 大家都知道, z=wx+b,全连接神经网络结构一旦固定,需要学习的参数w是固定的,例如 输入图像是 ...
- YOLOv3 代码详解(2) —— 数据处理 dataset.py解析:输入图片增强、制作模型的每层输出的标签
前言: yolo系列的论文阅读 论文阅读 || 深度学习之目标检测 重磅出击YOLOv3 论文阅读 || 深度学习之目标检测yolov2 论文阅读 || 深度学习之目标检测yolov1 该篇讲解的 ...
- faster rcn固定输入图片尺寸(一)
一.问题的产生 随着对于faster rcnn研究的深入,我们或许想要改变网络的整体结构,如将全连接层变为全卷积层来实验更好的分类方式,又或者会想要将多层的特征图进行融合或反卷积操作.但是如果只是修改 ...
最新文章
- 2022-2028年中国氢化丁晴橡胶行业市场研究及前瞻分析报告
- SpringBoot最最最常用的注解梳理
- 牛顿法求解非线性方程的根
- Win10如何远程连接Windows Server 2008,以及提示“您的凭证不工作”问题解决
- Python操作Zip文件
- Ubuntu19.04安装mysql8.0版本(亲测OK)
- skywalking告警相关配置
- boost.asio学习
- 可解释性:对神经网络中层特征复杂度的解释与拆分
- 想做视频号,先纠正一点
- 本地IDEA连接服务器的Redis报错处理
- Combo用户板中XG-PON资源利用率的提升方案
- 三菱fx5u modbus tcp fb块用法_FX5U强势来袭
- 图像识别流程学习总结
- centos7.9-kvm-ESXi相关操作
- PHP 递归函数的三种实现方式
- MBA-day19 如果p则q矛盾关系p 且非q
- 软件企业测试人员的角色与职责
- Demo_塔防(自动生成怪物,导航,炮塔攻击,怪物掉血死忙)
- 结合继承的思想,定义项目经理类Manager及程序员类Coder【行为:工作work】