OpenCV中图像的以下两行有什么区别
what is the difference in between the following two lines in opencv for images
vector<Mat> images;
vector<int> labels;
我假设Mat
是图像的结构,int
是数据类型。但什么是vector
?它是一个二维数组吗?请提前澄清我的疑问。
在C++中,std::vector
是一个封装动态大小数组的序列容器。它是一个1
维数组,其元素是连续存储的。
-
对于
vector<Mat> images;
,images
被声明为一个1
维数组,其元素是cv::Mat
s。要定义此类元素的
2
维数组,可以使用vector<vector<Mat>> images_2d;
。 -
对于
vector<int> labels;
,labels
被声明为一个1
维数组,其元素是int
s。要定义此类元素的
2
维数组,可以使用vector<vector<int>> labels_2d;
。
vector<int> labels
表示标签向量。因此,每当您想在此向量中插入元素时,都可以通过label.push_back(elementToBeInserted);
.
每当您想要访问此向量中存在的元素时,都可以执行以下操作:
for(int i=0; i<labels.size(); i++)
{
int element = labels[i];
cout<<Element: <<element;
}
类似的描述适用于vector<Mat> images;
.还有一件事是Mat
表示Matrix
,图像存储为矩阵。
PS:vector< vector<int> >labels;
将代表一个 2D 矢量
相关文章:
- C++ 从文本文件中读取每两行,并且在矢量中是安全的
- 这两行代码有什么区别
- 矩阵中的内积两行C++与特征
- 使用 c++ 中的 getline 函数连续读取两行
- 一条线和两行声明之间的差异
- 为什么c中的一些函数名称用两行写
- 代码行在两行后不起作用
- 使用 Qt 获取 csv 文件中两行之间所有行
- OpenCV中图像的以下两行有什么区别
- Fstream 在两行后不会从文本文件中读取
- C++:如何在两行中为一个字符串和一个整数分配相同的输入
- SDL:程序运行正常;仅绘制两行像素
- c++如何将文本文件中的一行拆分为两行,然后将每行存储到两个不同的数组中
- 以下两行代码的另一个等效C++
- 在两行上打印类似"FirstnSecond"的字符串
- 这两行有什么区别?在不同位置使用整数
- C++更有效的方法将这两行代码写成一行短行
- 一次从.txt文件中读取两行 - C++ getline/流
- 运行程序时,它让我在名称后输入两行?请帮忙
- 这两行代码有什么区别和好处