我的类包含cv :: Mat图像的矢量。
class reconstructed_object
{
private:
std::vector<cv::Mat> raw_images;
public:
reconstructed_object();
show_images();
}
在它的构造函数中,使用cv :: imread(&#34; path&#34;)读取来自我的硬盘的3个图像并将其推入矢量。
reconstructed_object::reconstructed_object()
{
raw_images.push_back(cv::imread("path_1").clone());
raw_images.push_back(cv::imread("path_2").clone());
raw_images.push_back(cv::imread("path_3").clone());
}
void reconstructed_object::show_images()
{
for (int i=0; i < raw_images.size(); i++)
{
cv::imshow("raw_image", raw_images[i]);
cv::waitKey(1000);
}
}
在阅读了有关深拷贝的所有建议后,我使用了&#34; clone&#34; -method。然而,向量填充了来自&#34; path_3&#34;的图像的三倍。如何在矢量中保存不同的图片?