Opencv图像处理学习(三)——imread、namedWindow、imwrite、imshow

opencv中实现类似MATLAB的读取显示图像函数是highgui模块中的imread、namedWindow、imshow和imwrite函数。

Mat imread(const string& filename,int flags );

ps:可以读取图像后判断一下

e.g:Mat Image = imread("X:\\……\x.jpg");

if(!Image.data)

{

  return -1;

}

参数filename表示读取文件的地址文件名,flags表示读取图像的颜色类型,其中flags=0(=CV_LOAD_IAMGE_COLOR)时函数返回灰度图像,flags=1(=CV_LOAD_IMAGE_GRAYSCALE)时返回RGB通道图像,flags=2(=CV_LOAD_IMAGE_ANYDEPTH)时,载入16,32位深度返回相同的图像,否则就返回8位深度

文件名的格式一般在Windows位图下有:bmp、dib、jpeg、jpg、jpe、jpz、png等;便携图:pbm、pgm、ppm;sun raster光栅:sr、ras;Tiff:tiff、tif

PS:对于16U格式图像,只能保存png、jepg2000、tiff格式

图像的数据量=分辨率x深度(多少个比特位)

imshow(const string& Winname,InputArray Mat);

Winname为显示窗口名,Mat为保存图像的矩阵

namedWindow(const string&Winname,int flags=Window.AutoSize)

Winname为窗口名,flags自动选择矩阵填充

bool imwrite(const string&filename,InputArray img,const vector<int>&params=vector<int>())

filename表示写入文件地址及扩展名,img表示待写入图像,params表示图像的一些细节信息,参数里面的数值跟文件格式有关,其中JPEG表示图像的质量,取值范围从0到100,一般取95;PNG表示压缩级别,取值范围是从0到9;PPM、PGM、PBM表示文件是以二进制还是纯文本存储,取值为0或1.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值