opencv常用函数集合

论坛 期权论坛 编程之家     
选择匿名的用户   2021-5-21 13:59   24   0


1.颜色空间转换cvtColor()

C++: void cvtColor(InputArray src, OutputArray dst, int code, int dstCn=0 );
参数解释:
. InputArray src: 输入图像即要进行颜色空间变换的原图像,可以是Mat类
. OutputArray dst: 输出图像即进行颜色空间变换后存储图像,也可以Mat类
. int code: 转换的代码或标识,即在此确定将什么制式的图片转换成什么制式的图片,后面会详细将
. int dstCn = 0: 目标图像通道数,如果取值为0,则由src和code决定




2.图像读取

opencv使用imread读取图片,imshow显示图片,但是对于我而言,常使用jupyter作为展示的工具,imshow在浏览器环境中就失去了它的作用,因此我会使用matplotlib来展示

#读取一张图片
cv2.imread(img,flag)
#img这一参数中填入图片的完全路径或者相对路径

这里我们需要稍微了解下flag这个参数,这决定了opencv是如何读入我们的图像的
我们知道通常图像每个像素点的颜色我们以RGB的格式来描述(或者RGBA),可以通过三基色(red,green,blue)来描述所有颜色,对于透明图片我们会增加一个a(alpha)来描述其颜色的透明度.

    cv2.IMREAD_COLOR : 读入图片,任何与透明度相关通道的会被忽视,默认以这种方式读入.
    cv2.IMREAD_GRAYSCALE : 以灰度图的形式读入图片.
    cv2.IMREAD_UNCHANGED : 保留读取图片原有的颜色通道.

可以简单的用-1,0,1来分别表示这3个flag

opencv默认的imread是以BGR的方式进行存储的,而matplotlib的imshow默认则是以RGB格式展示









分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP