OpenCV 2.3.1图像文件的读入和显示
2012-11-20 00:00
886 查看
1.C++语言版本 based on OpenCV 2.3.1
#include "stdafx.h" #include <string> #include <opencv2\opencv.hpp> using namespace cv; using namespace std; int main() { string imagename = "lena.jpg"; //读入图像 Mat img = imread(imagename); //如果读入图像失败 if(img.empty()) { return -1; } //创建窗口 namedWindow("image",1); //显示图像 imshow("image", img); //等待按键,按键盘任意键返回 waitKey(); return 0; }
2.图像创建、保存和复制
#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; }
3.CvCreateImage函数说明
cvCreateImage是openCV中的一个函数。OpenCV是Intel公司支持的开源计算机视觉库。
cvCreateImage:
创建头并分配数据
IplImage* cvCreateImage( CvSize size, int depth, int channels );
参数说明:
size 图像宽、高.
depth 图像元素的位深度,可以是下面的其中之一:
IPL_DEPTH_8U - 无符号8位整型
IPL_DEPTH_8S - 有符号8位整型
IPL_DEPTH_16U - 无符号16位整型
IPL_DEPTH_16S - 有符号16位整型
IPL_DEPTH_32S - 有符号32位整型
IPL_DEPTH_32F - 单精度浮点数
IPL_DEPTH_64F - 双精度浮点数
channels:
每个元素(像素)通道号.可以是 1, 2, 3 或 4.通道是交叉存取的,例如通常的彩色图像数据排列是:b0 g0 r0 b1 g1 r1 ... 虽然通常 IPL 图象格式可以存贮非交叉存取的图像,并且一些OpenCV 也能处理他, 但是这个函数只能创建交叉存取图像.
函数 cvCreateImage 创建头并分配数据,这个函数是下列的缩写型式:
header = cvCreateImageHeader(size,depth,channels);
cvCreateData(header);
注:CvSize 矩形框大小,以像素为精度
typedef struct CvSize
{
int width;
int height;
}
CvSize;
inline CvSize cvSize( int width, int height );
CvRound函数:
openCv中的一个函数:
int cvRound (double value)
对一个double型的数进行四舍五入,并返回一个整型数!
附加:函数 cvRound, cvFloor, cvCeil 用一种舍入方法将输入浮点数转换成整数。 cvRound 返回和参数最接近的整数值。 cvFloor 返回不大于参数的最大整数值。cvCeil 返回不小于参数的最小整数值。在某些体系结构中该函数 工作起来比标准 C 操作起来还要快。
相关文章推荐
- OpenCV- 图像文件读入和显示
- Opencv学习手册(一)--- 图像文件读入和显示
- 利用opencv进行图像文件读入和显示
- <opencv学习 1>图像文件的读入与显示
- 初学openCV 之从文件中读入一幅图像,将之反色并显示
- Matlab中用一个For循环连续读入并显示几个图像文件 [转]
- OpenCV显示摄像头图像保存成bmp文件
- python opencv入门(读 / 写 显示以及转换图像 和 视频读入)
- 图像文件读入和显示
- opencv::将两幅图像合并后,在同一个窗口显示;并将合并的图像流保存成视频文件
- OpenCV读入的图像如何显示在窗体上
- OpenCV与Python之图像的读入与显示以及利用Numpy的图像转换
- VS2010+OpenCV2.3.1创建win32 console App 来显示一副图像
- 图像文件读入和显示
- 从视频文件中读入数据-->将数据转换为灰度图-->对图像做canny边缘检测-->将这三个结构显示在一个图像中
- OpenCV与Python之图像的读入与显示以及利用Numpy的图像转换
- 用Opencv读入图像,获取数据,操作后用另一个图像显示
- openCV 利用Mat 类读入并显示图像
- 图像文件的读入、显示、保存
- 读入图像文件并显示【C#图像处理学习笔记】