linux opencv imread失败

linux opencv imread失败,第1张

opencv中的imread函数用法为:

Mat imread(const string filename, intflags=1 )

其中第一个参数是载入图片名,第二个参数是int类型的flags,为载入标识,它指定一个加载图像的颜色类型。可以看到它自带缺省值1.在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

}

其中:

flags >0返回一个3通道的彩色图像。

flags =0返回灰度图像。

flags <0返回包含Alpha通道的加载的图像。

你用函数的时候没有设置第二个参数,就会默认值为1。尽管你读入的是灰度图,还是自动转化成三通道图像。可以将第二个参数置为0得到灰度图像

一种方式是直接运行Python py源文件,方法是先在终端中用cd命令切换到py源文件所在的目录,然后以./文件名的方式运行py源文件(文件名前面加的是一个英文点号和一个英文斜杠,表示在当前目录下运行文件)。但是前提是这个py源文件必须被赋予执行权限,Linux系统中只有有执行权限的文件才可以执行,即便是一个二进制文件没有可执行权限也是不能运行的,给文件添加可执行权限的命令是:

chmod a+x 文件路径

还有一种运行Python py源文件的方式不需要py源文件有可执行权限,方法是用Python命令加py文件名的形式来运行源文件,如果是Python 2.x的Python源文件,就用python命令执行:python 文件名;如果是Python 3的Python源文件,就用python3命令执行:python3 文件名。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/6239414.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-18
下一篇 2023-03-18

发表评论

登录后才能评论

评论列表(0条)

保存