gpt4 book ai didi

带有 ROI 向量的 OpenCV Stitcher

转载 作者:太空宇宙 更新时间:2023-11-03 21:53:46 27 4
gpt4 key购买 nike

我正在尝试使用以下代码拼接 5 张带有 ROI 的图像。尽管 vImg 向量和 rois 大小相同,但我一直收到未处理的内存异常 length_error。另外,为什么 rois 应该是 Rect 的向量的向量?内部向量的大小为 1。

int main()
{

std::ostringstream filepath;
vector<Mat> vImg;
vImg.resize(5);

vector <Rect> tmpRect;
vector<vector<Rect>> rois;
rois.resize(5);
vector<Mat> channels;

for (int idx = 0; idx < 5; idx++)
{
filepath << "C:\\stch3" << idx+1 << ".jpg";
Mat tmpImg = imread(filepath.str());
vImg[idx] = tmpImg;
Rect rect(0, 50, vImg[idx].cols , vImg[idx].rows-70);
tmpRect.push_back(rect);
rois[idx] = (tmpRect);
tmpRect.clear();
filepath.str("");
}

Stitcher stitcher = Stitcher::createDefault(true);
Mat rImg;
Stitcher::Status status = stitcher.stitch(vImg, rois, rImg);
if (status != Stitcher::OK)
{
cout << "Can't stitch images, error code = " << int(status) << "Estimate Transform :" << int(status) << endl;
}
imshow("Stitching Result", rImg);

waitKey(0);

return 0;
}

最佳答案

why rois should be vector of vector of Rect

因为您可以将每个图像的更多 ROI 作为向量传递。

因此,维度 1 是您的图像数量,维度 2 是每幅图像的 ROI 数量。

关于带有 ROI 向量的 OpenCV Stitcher,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25990298/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com