mwArray和cv::Mat转化函数 20170812
2024-09-02 17:44:55
不是新东西了,但是有必要专门把这两个函数拿出来记录一下。
需要注意的是,Mat2mwArry函数的输入Mat类型是 CV_8UC1,灰度图。
如果要传递多通道图像的话,需要先cv::split()成多个灰度图像分别传给matlab。
mwArray2Mat的返回Mat的类型是CV_64FC1,可以通过cv::Mat::convert()转化成所需要的类型。
mwArray Mat2mwArray(cv::Mat src)
{
CV_Assert(src.type() == CV_8UC1); mwArray dst(src.rows, src.cols, mxUINT8_CLASS); /// 初始化,可以理解成矩阵
cv::Mat src_t = src.t();
dst.SetData(src_t.data, src.rows*src.cols); /// 赋值 return dst;
} cv::Mat mwArry2Mat(mwArray src, int rows, int cols)
{
if(src.IsEmpty()) /// 是否为空
return cv::Mat(); cv::Mat dst = cv::Mat::zeros(rows, cols, CV_64FC1);
for(int j(0); j<rows; ++j)
{
double* pdata = dst.ptr<double>(j);
for(int i(0); i<cols; ++i)
{
pdata[i] = src(j+1,i+1); /// 元素访问(行号,列号)
}
} return dst;
}
最新文章
- php获取用户 地区 、ip地址
- 关于Hibernate5.x的那点事
- log4net资料收集
- 解决Eclipse Pydev中import时报错:Unresolved import
- PHP 对象和数组互相转换
- ubuntu 安装eclipse
- VueJs一些资料网站链接
- java中io对文件操作的简单介绍
- SDAU课程练习--problemC
- [刷题]算法竞赛入门经典(第2版) 5-8/UVa230 - Borrowers
- scala学习笔记4(apply方法)
- PHP(PHP-FPM)手动编译安装
- charles抓取https请求包
- vivo7.0以上系统如何无需Root激活Xposed框架的方法
- git之reset图解
- 9ci
- 牛客练习赛 43 B-Tachibana Kanade Loves Probability
- Confluence 6 缓存性能示例
- 用django统计代码行数+注释行数
- Windows Server 2016正式版教程:安装、激活、设置
热门文章
- Python process (进程)
- Python进阶-XVIV 类的内置方法:__str__ 、__repr__、析构函数(__del__)、双下的call,eq,new,hash 以及item相关的三个方法
- 提高python运行效率-numba
- 【2019.8.7 慈溪模拟赛 T2】环上随机点(ran)(自然算法)
- 【ECNU3542】神奇的魔术(二分交互题)
- poi实现excel数据的导入和导出
- Jupyter Notebook使用
- pycharm报错:ImportError: libcusolver.so.8.0: cannot open shared object file: No such file or directory
- hdu-5573 Binary Tree
- 使用NumPy、Numba的简单使用(二)