【openCV】基础操作

来源:互联网 发布:淘宝网夏季中年女装 编辑:程序博客网 时间:2024/05/22 05:00
读取图片
Mat srcImage = imread("image1.jpg"); 
判断图片是否为空
srcImage.empty();
转为灰度图
Mat grayImage;cvtColor(srcImage,grayImage,CV_BGR2GRAY);
获取/修改灰度图于(i,j)像素值
grayImage.at<char>(i,j) = 0;

显示图片

imshow("Picture",grayImage);    waitKey(0); 
输出图片

imwrite("gray.jpg",grayImage);
释放图片
srcImage.release();

读取图片
IplImage *srcImage = cvLoadImage("potota.jpg", CV_LOAD_IMAGE_UNCHANGED);
创建图片
IplImage *grayImage =  cvCreateImage(cvGetSize(src), IPL_DEPTH_8U, 1);  
清空图片
cvZero(*grayImage);
转为灰度图
cvCvtColor(srcImage, grayImage, CV_BGR2GRAY);
转为二值图
IplImage *binImage = cvCreateImage(cvGetSize(grayImage), IPL_DEPTH_8U, 1);cvZero(*binImage); cvThreshold(grayImage,*binImage,128,1,CV_THRESH_BINARY_INV);

获取图片大小
CvSize size = cvGetSize(srcImage);int h = size.heightint w = size.width

获取/修改灰度图于(i,j)像素值
CV_IMAGE_ELEM(src,uchar,i,j) = 0;

复制图像
cp_src = cvCreateImage(cvGetSize(srcImage), IPL_DEPTH_8U, 1);cvCopy(src,cp_src,NULL);

获取(i,j)像素信息
CvScalar s = cvGet2D(srcImage,i,j);

修改(i,j)像素信息
s = CV_RGB(0,255,0);cvSet2D(srcImage,i,j,s);

显示图片
cvShowImage("Skeleton",srcImage);cvWaitKey(0);cvDestroyWindow("Skeleton");

释放图片
cvReleaseImage(&srcImage);

0 0
原创粉丝点击