您现在的位置是:主页 > news > 郑州网站优化怎样做/网站开发流程图
郑州网站优化怎样做/网站开发流程图
admin2025/6/23 1:48:45【news】
简介郑州网站优化怎样做,网站开发流程图,帝国做视频网站,简历下载免费模板Mat::type() 查看opencv文档对Depth的说明是单独一个通道的类型,通俗的说就是图像中单独一个元素的类型,它可以有以下的类型: #define CV_8U 0 #define CV_8S 1 #define CV_16U 2 #define CV_16S 3 #define CV_32S 4 #define CV_3…
郑州网站优化怎样做,网站开发流程图,帝国做视频网站,简历下载免费模板Mat::type()
查看opencv文档对Depth的说明是单独一个通道的类型,通俗的说就是图像中单独一个元素的类型,它可以有以下的类型:
#define CV_8U 0
#define CV_8S 1
#define CV_16U 2
#define CV_16S 3
#define CV_32S 4
#define CV_3…
Mat::type()
查看opencv文档对Depth的说明是单独一个通道的类型,通俗的说就是图像中单独一个元素的类型,它可以有以下的类型:
#define CV_8U 0
#define CV_8S 1
#define CV_16U 2
#define CV_16S 3
#define CV_32S 4
#define CV_32F 5
#define CV_64F 6
#define CV_USRTYPE1 7
说明:
- CV_ opencv前缀
- 8,16… 代表每个像素所占的位数
- S,U… 代表每个像素值得类型
Mat::type()
Type实际上是将Depth和通道个数混合在一起的一个类型,所以它的种类比较多,如下:
#define CV_8UC1 CV_MAKETYPE(CV_8U,1)
#define CV_8UC2 CV_MAKETYPE(CV_8U,2)
#define CV_8UC3 CV_MAKETYPE(CV_8U,3)
#define CV_8UC4 CV_MAKETYPE(CV_8U,4)
#define CV_8UC(n) CV_MAKETYPE(CV_8U,(n))#define CV_8SC1 CV_MAKETYPE(CV_8S,1)
#define CV_8SC2 CV_MAKETYPE(CV_8S,2)
#define CV_8SC3 CV_MAKETYPE(CV_8S,3)
#define CV_8SC4 CV_MAKETYPE(CV_8S,4)
#define CV_8SC(n) CV_MAKETYPE(CV_8S,(n))#define CV_16UC1 CV_MAKETYPE(CV_16U,1)
#define CV_16UC2 CV_MAKETYPE(CV_16U,2)
#define CV_16UC3 CV_MAKETYPE(CV_16U,3)
#define CV_16UC4 CV_MAKETYPE(CV_16U,4)
#define CV_16UC(n) CV_MAKETYPE(CV_16U,(n))#define CV_16SC1 CV_MAKETYPE(CV_16S,1)
#define CV_16SC2 CV_MAKETYPE(CV_16S,2)
#define CV_16SC3 CV_MAKETYPE(CV_16S,3)
#define CV_16SC4 CV_MAKETYPE(CV_16S,4)
#define CV_16SC(n) CV_MAKETYPE(CV_16S,(n))#define CV_32SC1 CV_MAKETYPE(CV_32S,1)
#define CV_32SC2 CV_MAKETYPE(CV_32S,2)
#define CV_32SC3 CV_MAKETYPE(CV_32S,3)
#define CV_32SC4 CV_MAKETYPE(CV_32S,4)
#define CV_32SC(n) CV_MAKETYPE(CV_32S,(n))#define CV_32FC1 CV_MAKETYPE(CV_32F,1)
#define CV_32FC2 CV_MAKETYPE(CV_32F,2)
#define CV_32FC3 CV_MAKETYPE(CV_32F,3)
#define CV_32FC4 CV_MAKETYPE(CV_32F,4)
#define CV_32FC(n) CV_MAKETYPE(CV_32F,(n))#define CV_64FC1 CV_MAKETYPE(CV_64F,1)
#define CV_64FC2 CV_MAKETYPE(CV_64F,2)
#define CV_64FC3 CV_MAKETYPE(CV_64F,3)
#define CV_64FC4 CV_MAKETYPE(CV_64F,4)
#define CV_64FC(n) CV_MAKETYPE(CV_64F,(n))
说明:
- CV_8U 对应depth
- C1 后面数字代表通道数
二者的关联
depth是单通道像素点的属性
type 是多通道像素点的属性
type是type组成的一个数组,如果是单通道时,二者的值相等
代码验证:
#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/highgui/highgui.hpp"
#include <stdlib.h>
#include <stdio.h>
#include <vector>
#include <iostream>int main()
{Mat src = imread("d:/images/1.jpg");Mat hsv;cvtColor(src, hsv, CV_BGR2HSV);namedWindow(src_win);imshow(src_win, src);cout <<"type:" <<hsv.type() << endl;cout <<"depth:"<< hsv.depth() << endl;cout <<"CV_8UC3 :"<<CV_8UC3 << endl;waitKey(0);return 0;
}
输出结果:
type:16
depth:0
CV_8UC3 :16
因为HSV是三通道的图像,所以type其实就是对应的CV_8UC3
我们把图像转化成灰度,查看结果:
#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/highgui/highgui.hpp"
#include <stdlib.h>
#include <stdio.h>
#include <vector>
#include <iostream>int main()
{Mat src = imread("d:/images/1.jpg");Mat hsv;cvtColor(src, hsv, CV_BGR2HSV);namedWindow(src_win);imshow(src_win, src);cout <<"type:" <<hsv.type() << endl;cout <<"depth:"<< hsv.depth() << endl;waitKey(0);return 0;
}
输出结果:
type:0
depth:0
两者的值相等
使用场景
只有在单通道时我们才可以在Mat::create中第二个参数传入depth