gpt4 book ai didi

c++ - 在 opencv 中手动构造一个 vector

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:26:00 25 4
gpt4 key购买 nike

我有一组积分<Point2f> Left和另一个 <Point2f> Right , 可能有相同或不同的 size() .我知道 Left 中的第一个点对应于 Right 中的第一个点等。有没有办法构造一个 vector <Dmatch> matches为了继续,例如使用 drawMatches 绘制它们?我正在使用 C++。

最佳答案

你知道对应关系吗?

如果它们的尺寸不同,您需要知道对应关系。在任何情况下,假设它们的大小相同并且对应,这就是你如何做的(没有编译它所以它可能有错误)

DMatch 是一个简单的簿记包装器,用于跟踪指标

vector<DMatch> matches(left.size());
for(size_t i = 0; i <left.size(); ++i)
matches[i] = Dmatch(i, i, 0);

// make keypoints
vector<KeyPoint> kp_left(left.size());
for(size_t i = 0; i < left.size(); ++i)
kp_left[i] = Keypoint(left[i], 1);
// do the same for the right image

// draw the stuff
drawMatches(left_image, keypts_left, right_image, keypts_right, matches, out_image);
imshow("matches", out_image);
waitKey(0);

关于c++ - 在 opencv 中手动构造一个 vector <Dmatch>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19270877/

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