opencv中Mat_<uchar>的作用

大佬们,
Mat img1= imread(file_name,IMREAD_COLOR);
Mat_ img2(img1);
的作用是啥

c++

1个回答

第一行,声明一个Mat型变量(属于opencv) img1,并以彩色方式读取一幅图像, file name可以是相对地址或者绝对地址.
第二行,声明一个Mat型变量img2,并用img1来初始化img2,所以img1和img2都存贮着读取到的图片

zjh526204825
zjh526204825 回复tangxiaoren: 好的,明白了!谢谢大佬
5 个月之前 回复
tangxiaoren
tangxiaoren 回复zjh526204825: Mat_<uchar>是说明声明的图像是单通道的; 然后后面就是用img1来初始化img2;这就相当于 img1.copyTo(img2); 但是如果你运行这句话是有错误的,原因是两张图的通道数不一样.个人认为你的写法是不合理的,在用img1给img2 赋值之前先保证两个图片的类型相同.
5 个月之前 回复
tangxiaoren
tangxiaoren 回复zjh526204825: Mat_<uchar>是说明声明的图像是单通道的;
5 个月之前 回复
zjh526204825
zjh526204825 谢谢,我第2行写的是“Mat_<uchar>img2(img1);”,但是显示出来的是问题那样的,发出来之后没注意他把我的问题改动了,可以再解释一下第2行嘛!谢谢
5 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问