使用OpenCV进行图像创建、保存和复制

来源:互联网 发布:node v0.12.2 x64.msi 编辑:程序博客网 时间:2024/06/05 20:36

来自于仕琪的讲稿《使用OpenCV进行图像处理》中的例程

/************************************************** * cvLoadImage, cvSaveImage, cvCreateImage, cvCopy以及图像显示的例子 **************************************************/ /*********************************************************************** * OpenCV example * By Shiqi Yu 2006 ***********************************************************************/ #include "cv.h"#include "highgui.h" int main( int argc, char** argv ){  IplImage* pImg; //声明IplImage指针   //载入图像,强制转化为Gray  if( argc == 3 &&       (pImg = cvLoadImage( argv[1], 0)) != 0 )    {       IplImage* pImg2 = cvCreateImage(cvGetSize(pImg),      pImg->depth,      pImg->nChannels);      cvCopy(pImg, pImg2, NULL);       cvSaveImage(argv[2], pImg2);//把图像写入文件       cvNamedWindow( "Image", 1 );//创建窗口      cvShowImage( "Image", pImg );//显示图像       cvWaitKey(0); //等待按键       cvDestroyWindow( "Image" );//销毁窗口      cvReleaseImage( &pImg ); //释放图像      cvReleaseImage( &pImg2 ); //释放图像      return 0;    }   return -1;}
[编辑]

Python 版本

# -*- coding:utf-8 -*-############################################################ OpenCV example## cvLoadImage, cvSaveImage, cvCreateImage, cvCopy# 以及图像显示的例子## By ChaiShushan 2008########################################################### import sys # 导入OpenCV模块 from opencv.cv import *from opencv.highgui import * if __name__ == '__main__'if len(sys.argv) == 3# 载入图像,强制转化为Gray         pImg = cvLoadImage(sys.argv[1], 0)        if not pImg: sys.exit(-1# 创建同样大小的图小         pImg2 = cvCreateImage(cvGetSize(pImg), pImg.depth, pImg.nChannels)         # 复制图像         cvCopy(pImg, pImg2, None# 把图像写入文件         cvSaveImage(sys.argv[2], pImg2)         # 创建窗口         cvNamedWindow ("mywin"# 显示图像         cvShowImage ("mywin", pImg)        cvWaitKey (0)

注: Python版本由chai2010改写.

[编辑]

Python2.7-OpenCV2.2 版本

# -*- coding:utf-8 -*-'''Created on 2011-8-17 @author: Sunny'''# 导入OpenCV模块import cvimport sys if __name__ == '__main__'# 载入图像,强制转化为Gray         pImg = cv.LoadImage("Lena.jpg"# 创建同样大小的图小         pImg2 = cv.CreateImage(cv.GetSize(pImg), pImg.depth, pImg.nChannels)         # 复制图像         cv.Copy(pImg, pImg2, None# 把图像写入文件         cv.SaveImage("Lena1.jpg", pImg2)         # 创建窗口         cv.NamedWindow ("mywin"# 显示图像         cv.ShowImage ("mywin", pImg)        cv.WaitKey (0)

注: Python2.7-OpenCV2.2版本由sunny2020改写.


from: http://wiki.opencv.org.cn/index.php/%E5%9B%BE%E5%83%8F%E5%88%9B%E5%BB%BA%E3%80%81%E4%BF%9D%E5%AD%98%E5%92%8C%E5%A4%8D%E5%88%B6

0 0
原创粉丝点击