栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

NumCpp 使用示例二 与std::vector及cv::Mat之间的相互转换

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

NumCpp 使用示例二 与std::vector及cv::Mat之间的相互转换

以读取图片为例,实现NumCPP数组与std::vector、std::array、cv::Mat等数组之间的相互类型转换

一、std::array转NdArray
    std::array a_std = { 1, 2, 3 };
    //参数false表示拷贝地址(浅拷贝),而非拷贝值(深拷贝)
    auto a_np = nc::NdArray(a_std, false);
    //修改a_std的值
    a_std[0] = -0.4;
    // 输出数组
    std::cout << a_std[0] << " , " << a_std[1] << " , " << a_std[2] << std::endl;
    a_np.print();
2、cv::Mat转std::vector
    string fname = "C:/AI_Dataset/whdld/WHDLD/label/wh0034.png";
    cv::Mat image = cv::imread(fname, -1);//, cv::ImreadModes::IMREAD_COLOR
    //printf_s("%d,CV_8UC3:%dn",image.type(), CV_8UC3);
    //把三通道mat进行分割
    vector BGR;
    cv::split(image, BGR);
    //把内存不连续的数组进行拷贝,使其连续
    if (!image.isContinuous()) { image = image.clone(); }
    printf_s("BGR&#x
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/737973.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号