seyvlei 原文地址

1、IplImage转Cvmat

   IplImage* src = cvLoadImage("rice.bmp",);
CvMat* mat=cvCreateMat(src->height,src->width,CV_32SC1);
cvConvert(src,mat);

或者:

Cvmat matObj;
* mat=cvGetmat(src,&matObj);

2、Cvmat转IplImage

IplImage* pImg = cvCreateImage(cvGetSize(mat),,);
cvGetImage(matI,pImg);
cvSaveImage("rice1.bmp",pImg);

from:http://apps.hi.baidu.com/share/detail/19289229

使用函数cvGetMat和cvGetImage,首先要创建矩阵头,和图像头,数据共享。

例:

IplImage,CvMat圖形矩陣空間

#include <cv.h>
#include <highgui.h>
#include <stdio.h> int main()
{
IplImage *Image1;
IplImage *Image2;
CvMat *Matrix1; CvSize Size1;
Image1=cvLoadImage("footpath.jpg",); Size1=cvGetSize(Image1); Image2=cvCreateImageHeader(Size1,IPL_DEPTH_8U,);
Matrix1=cvCreateMatHeader(Size1.height,Size1.width,CV_8UC3); cvGetMat(Image1,Matrix1); cvFlip(Matrix1,Matrix1,); cvGetImage(Matrix1,Image2); cvNamedWindow("footpath (Flip)",);
cvShowImage("footpath (Flip)",Image2);
cvWaitKey(); cvReleaseImage(&Image1);
cvReleaseImageHeader(&Image2);
cvReleaseMatHeader(&Matrix1);
cvDestroyWindow("footpath (Flip)");
}

【转】Cvmat与IplImage的相互转换的更多相关文章

  1. OpenCV(三) 之 基本数据结构 CvMat和 IplImage

    OpenCV(三) 之 基本数据结构 CvMat和 IplImage CvMat IplImage OpenCv中基本的数据类型 类型 参数 表示 CvPoint int x,y 像素点 CvPoin ...

  2. Opencv中将CvMat转为IplImage

    Opencv中将CvMat转为IplImage,并在内存获得起头指针,而不用cvSaveImage(),贴上代码 IplImage * imgg = NULL; imgg = cvCreateImag ...

  3. OpenCV数据结构:CvMat,IplImage,CvArr的应用

    最近看HS算法时,发现在新的OpenCV3.0已经移除了该算法,于是不得不看老版的.这其中涉及到了CvMat,CvArr,IplImage的使用.关于这三个结构与Mat的转换关系,总结如下: (1)派 ...

  4. OpenCV——Mat、CvMat、IplImage类型浅析【转】

    OpenCV中常见的与图像操作有关的数据容器有Mat,cvMat和IplImage. 一.Mat类型:矩阵类型,Matrix. 在openCV中,Mat是一个多维的密集数据数组.可以用来处理向量和矩阵 ...

  5. CvArr、Mat、CvMat、IplImage、BYTE转换

    一.Mat类型:矩阵类型,Matrix.     在openCV中.Mat是一个多维的密集数据数组. 能够用来处理向量和矩阵.图像.直方图等等常见的多维数据.     Mat有3个重要的方法:     ...

  6. 图像处理之opencv---mat、cvmat、IplImage之间的转换

    一.Mat类型:矩阵类型,Matrix.  在openCV中,Mat是一个多维的密集数据数组.可以用来处理向量和矩阵.图像.直方图等等常见的多维数据. Mat有3个重要的方法: 1.Mat mat = ...

  7. openc下cv::Mat和IplImage的相互转换

    opencv2.0的类CV::Mat和opencv1.0的IplImage之间烦人转换: cv::Mat matimg = cv::imread ("girl.jpg"); Ipl ...

  8. opencv中Mat与IplImage,CVMat类型之间转换

    opencv中对图像的处理是最基本的操作,一般的图像类型为IplImage类型,但是当我们对图像进行处理的时候,多数都是对像素矩阵进行处理,所以这三个类型之间的转换会对我们的工作带来便利. Mat类型 ...

  9. IplImage, CvMat, Mat 的关系和相互转换(转)

    (看到的一篇非常好的文章,讲opencv内部类之间的关系的.) opencv中常见的与图像操作有关的数据容器有Mat,cvMat和IplImage,这三种类型都可以代表和显示图像,但是,Mat类型侧重 ...

随机推荐

  1. fragment中的WebView返回上一页

    public final class Text1Fm extends Fragment { static WebView mWeb; private View mContentView; privat ...

  2. HDU 1171 Big Event in HDU 母函数

    欢迎参加——BestCoder周年纪念赛(高质量题目+多重奖励) Big Event in HDU Time Limit: 10000/5000 MS (Java/Others)    Memory ...

  3. P1270 “访问”美术馆

    题目描述 经过数月的精心准备,Peer Brelstet,一个出了名的盗画者,准备开始他的下一个行动.艺术馆的结构,每条走廊要么分叉为两条走廊,要么通向一个展览室.Peer知道每个展室里藏画的数量,并 ...

  4. Codeforces Round #386 (Div. 2) 746F(set的运用)

    题目大意 给出一个歌单(有n首歌),每个歌都有愉悦值和时间,你可以选择从第x首歌开始听(也就是选择连续的一段),并且你可以选择w首歌让它的时间减半,限制时间为k,求最大的愉悦值 首先我们需要贪心一下, ...

  5. BZOJ1086 [SCOI2005]王室联邦 【dfs + 贪心】

    题目 "余"人国的国王想重新编制他的国家.他想把他的国家划分成若干个省,每个省都由他们王室联邦的一个成 员来管理.他的国家有n个城市,编号为1..n.一些城市之间有道路相连,任意两 ...

  6. ACM-渊子赛马

    题目: 赛马是一古老的游戏,早在公元前四世纪的中国,处在诸侯割据的状态,历史上称为“战国时期”.在魏国作官的孙膑,因为受到同僚庞涓的迫害,被齐国使臣救出后,到达齐国国都. 赛马是当时最受齐国贵族欢迎的 ...

  7. poj 1390 区间dp

    Blocks Time Limit: 5000MS   Memory Limit: 65536K Total Submissions: 5035   Accepted: 2065 Descriptio ...

  8. Java面试题之hashmap中用什么hash算法解决碰撞的?

    查了一下源码(jdk8),记录一下吧,能记住就记一下吧! static final int hash(Object key) { int h; return (key == null) ? 0 : ( ...

  9. hihocoder 后缀自动机五·重复旋律8 求循环同构串出现的次数

    描述 小Hi平时的一大兴趣爱好就是演奏钢琴.我们知道一段音乐旋律可以被表示为一段数构成的数列. 小Hi发现旋律可以循环,每次把一段旋律里面最前面一个音换到最后面就成为了原旋律的“循环相似旋律”,还可以 ...

  10. js判断对象是否为数组

    1.ECMAScript5中有一个现成的方法:Array.isArray(). var obj = {1:[1],2:[2]}, arr = [1], str = "1"; Arr ...