opencv: 基本知识(二);

1、Mat与IplImage之间的相互转换;

//IplImage—>Mat  
//EXAMPLE:  
//浅拷贝:  
IplImage* pBinary=cvLoadImage("c://temp.jpg",0);  
Mat Img;  
Img=cvarrToMat(pBinary);  
//深拷贝只需要再在Mat里创建一个新的Mat对象,然后进行数据的复制,再用上述的函数进行数据头的复制(浅拷贝):  
IplImage* pBinary=cvLoadImage("c://temp.jpg", 0);  
Mat ImgTemp;  
Img=cvarrToMat(pBinary);  
Mat Img = ImgTemp.clone();  
  
  
//Mat—>IplImage  
//EXAMPLE:  
//浅拷贝:  
Mat Img=imread("1.jpg");  
IplImage* pBinary = &IplImage(Img);  
//深拷贝只要再加一次复制数据:  
IplImage *input = cvCloneImage(pBinary);  

2、随机数;

标准库提供了随机函数std::srand,std::rand来生成随机数;

std::srand(unsigned(time(NULL));

std::rand();    //生成随机数;

  

猜你喜欢

转载自www.cnblogs.com/yinwei-space/p/9101267.html