当前位置: 代码迷 >> 综合 >> opencv2-main函数
  详细解决方案

opencv2-main函数

热度:129   发布时间:2023-09-18 14:37:11.0

虽然之前看过opencv相关的书,但是之前自己都是大概潦潦草草看了一通,现在又重新从头开始细致梳理一遍,让大家见笑了。

我的思路是按照程序来的,知道头文件都有哪些之后,下面可能要遇到命名空间,这一部分就不详细说了,大家可以去看C++prime

main函数有好多种方式,刚开始学习一般都是int main(){},参数为空,这样学习会比较轻松。

我们见到的Main函数中经常带有argc\argv,就是长下面这个样子:

int main(int argc,char** argv)

int main(int argc,char* argv[])

argc表示命令行输入参数的个数(以空白符分隔),argv中存储了所有的命令行参数。

这两个参数的作用,argc是指命令行输入参数的个数(以空白符分隔);argv存储了所有的命令行参数,argv[0]指向程序运行的全路径名, argv[1]指向在DOS命令行中执行程序名后的第一个字符串, argv[2]指向执行程序名后的第二个字符串, argv[3]指向执行程序名后的第三个字符串,argv[argc]为NULL。

如果我们使用以上这两种方式,对于argv[1],处理方式是【项目属性】-【配置属性】-【调试】-【命令参数】中的值。如果有多个字符串,则用空格隔开,例如“1.jpg” “2.jpg”或是直接进行替换或注释。

替换的形式一般是这样的:

Mat src=imread(“1.jpg”,1);//可以将图片放在项目编译文件下或是写出完整路径。

怎样获取图片的完整路径?图片右键-属性-安全-对象名称,这个复制就绝对是完整路径了。但是这个放在程序里,路径里要用双右斜线\\,自己只亲测了这一种。大家可以试一试双左斜线、单左斜线。

这样其实比较麻烦,还可以直接就把图片放在工程文件夹下和.cpp文件放一起,直接使用图片名称完成读取。

对于opencv里的imread()函数支持的图像类型有:

--位图 bmp

--JPEG,jpg,jpe,jp2

--png

--tiff,tif

--pbm,pgm,ppm




  相关解决方案