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(); //生成随机数;