opencv 1 图像载入、显示和输出
三個(gè)函數(shù)
imread()
namedWindow()
inshow()
1. imread
函數(shù)原型:
Mat imread(const string& filename, int flags = 1 );
參數(shù)解析:
- const string& finename
將要載入的圖片路徑名。
Windows操作系統(tǒng)下面支持如下類型的圖片:
Windows位圖 - *.bmp, *.dib
JPEG文件 - *.jpeg, *.jpg, *.jpe
JPEG 2000文件- *.jp2
PNG圖片 - *.png
便攜文件格式- *.pbm, *.pgm, *.ppm
Sun rasters光柵文件 - *.sr, *.ras
TIFF 文件 - *.tiff, *.tif
- int flags = 1
指定加載圖像的顏色類型。缺省值為 1 ,表示載入三通道的彩色圖像。
可在標(biāo)識(shí)圖像格式的枚舉體中取值。在 higui_c.h 中有該枚舉體的定義:
enum
{
/* 8bit, color or not */CV_LOAD_IMAGE_UNCHANGED =-1,
/* 8bit, gray */CV_LOAD_IMAGE_GRAYSCALE =0,
/* ?, color */CV_LOAD_IMAGE_COLOR =1,
/* any depth, ? */CV_LOAD_IMAGE_ANYDEPTH =2,
/* ?, any color */CV_LOAD_IMAGE_ANYCOLOR =4
};
對(duì)應(yīng)解釋:
CV_LOAD_IMAGE_UNCHANGED – 該標(biāo)識(shí)已經(jīng)棄用
CV_LOAD_IMAGE_ANYDEPTH – 若載入的圖像的深度為16位或者32位,返回對(duì)應(yīng)深度的圖像,否則,就轉(zhuǎn)換為8位圖像再返回。
CV_LOAD_IMAGE_COLOR – 轉(zhuǎn)換圖像到彩色一體
CV_LOAD_IMAGE_GRAYSCALE – 將圖像轉(zhuǎn)換成灰度1
如果輸入有沖突標(biāo)志,將取小值。比如 CV_LOAD_IMAGE_COLOR | CV_LOAD_IMAGE_ANYCOLOR 將載入3通道圖。
如果想要載入最真實(shí)的圖像,選擇 CV_LOAD_IMAGE_ANYDEPTH | CV_LOAD_IMAGE_ANYCOLOR 。
因?yàn)?flags 是 int 類型,還可以使用下面的方式:
flags > 0 – 返回3通道彩色圖像。
flags = 0 – 返回灰度圖像。
flags < 0 – 返回包含Alpha通道加載的圖像。
示例代碼:
Mat image0=imread("dota.jpg",CV_LOAD_IMAGE_ANYDEPTH | CV_LOAD_IMAGE_ANYCOLOR); //載入最真實(shí)的圖像Mat image1=imread("dota.jpg",0); //載入灰度圖Mat image2=imread("dota.jpg",199); //載入3通道的彩色圖像Mat logo=imread("dota_logo.jpg"); //載入3通道的彩色圖像
總結(jié)
以上是生活随笔為你收集整理的opencv 1 图像载入、显示和输出的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: redis学习 -- 简单动态字符串
- 下一篇: 嵌入式开发板设置无密码登录