6.13-6.18

GMS与ORB匹配效果对比
本文对比了GMS和ORB+筛选在特征匹配上的效果,发现GMS能在相同时间内获得更多的匹配点,且误匹配数量较少。文中还介绍了GMS的基本原理,并提及使用OpenCV的triangulatePoints函数进行三维重建。
部署运行你感兴趣的模型镜像

6.13

  1. 昨天和今天都在改计图作业&期末展示
  2. 测试了一下GMS的效果和直接用ORB+筛选对比,如下
    GMS(1000个ORB点用时0.04s,10000个ORB点用时0.10s,下图是1000个的效果):
    这里写图片描述
    ORB+最小距离筛选(500个ORB用时0.05s)
    这里写图片描述
    其实本身ORB描述子匹配误匹配数目很多,如下
    这里写图片描述
    利用描述子的最小距离*2来筛选,即可得到上面那个效果较好的,看起来在相同时间内,GMS得到的匹配点多一些,应该效果会好,打算粗略阅读以下论文

6.14

  1. 做了两道LeetCode
  2. 看了GMS的论文,大概思路是现有的特征匹配算法无法区分哪些是正确的匹配哪些是错误的,RANSAC可以缓解这个问题,GMS同样也是为了解决这个问题.主要的思路是认为在正确的匹配点附近应该有较多的匹配点.而错误的匹配点则相反.结合图来理解
    这里写图片描述
    左图有一个黄色圈圈a,右图有一个黄色圈圈b,绿色的线表示一组特征匹配,在圈圈内还有两根蓝色的线表示有两组特征匹配,所以这是一个正确的匹配,而红色圈圈则相反,因为是误匹配,所以在红色圈圈内没有匹配的特征.大概就是这个意思
  3. OpenCV中有提供三角化的函数triangulatePoints,输入是两个相机的位姿SE3和特征点在归一化平面的位置(Point2d类型,二维,第三维为1省略),返回一个齐次的3维的世界坐标(即4维的点)

您可能感兴趣的与本文相关的镜像

Facefusion

Facefusion

AI应用

FaceFusion是全新一代AI换脸工具,无需安装,一键运行,可以完成去遮挡,高清化,卡通脸一键替换,并且Nvidia/AMD等显卡全平台支持

实验内容 本项实验通过队列的应用,实现电子秤采样数据分时段平均值计算的仿真模拟。 数据输入文件exp03.in中内容如下例: 10 1.62 1.22 1.89 0.63 0.01 1.86 0.92 1.8 1.13 2.06 1.06 1.91 1.09 2.24 0.3 1.87 0.47 1.74 0.26 1.62 0 1.24 1.75 0.23 2.3 0.6 2.42 0.89 2 0.72 2.25 1.11 2.16 0.01 0.59 2.3 0.92 1.34 0.33 2.21 0.32 2.41 0.65 1.31 1.08 1.74 0.09 2.13 0.39 1.39 1.26 2.19 1.16 1.32 0.17 2.06 0.33 1.57 0.81 2.24 0.86 0.01 1.45 0.52 2.03 0.98 1.79 0.51 1.66 1.25 1.48 0.97 0.02 2.43 1.09 1.32 0.25 1.4 1.22 1.32 0.43 1.35 1.05 1.47 0.93 1.35 0.58 1.59 1.05 2.05 0.96 1.42 0.28 2.06 0.92 1.5 0.4 0.01 2.47 0.73 2.93 4.15 3.25 4.98 3.63 5.06 3.09 4.73 3.52 4.95 3.52 3.98 3.82 4.7 2.91 4.96 10.99 3.21 4.36 3.44 4.58 3.08 4.01 2.94 4.85 3.02 4.63 3.27 4.57 11.02 3.79 4.3 3.73 4.3 3.92 4.35 3.12 4.55 3.14 4.35 3.6 4.06 3.07 4.55 3.46 4.96 3.82 4.99 3.71 4.5 3.37 4.42 3.85 5.01 3.33 4.68 3.01 4.22 3.35 10.7 4.99 3.76 4.25 3.15 4.55 3.62 4.75 3.43 4.91 3.86 3.99 2.99 5.05 3.11 4.24 3.82 4.7 3.21 4.62 3.43 4.81 3.54 4.07 3.25 4.84 3.42 4.02 3.48 4.91 3.46 4.62 3.7 4.29 3.91 4.29 3.58 4.68 10.09 3.36 4.47 5.74 4.91 5.78 5.57 6.05 4.8 5.92 5.08 6.6 5.02 5.96 5.57 6.33 5.41 5.81 5.6 6.32 5.46 6.03 5.03 5.86 4.71 5.81 5.65 5.87 5.46 6.28 5.55 6.44 5.2 6.12 5.49 6.37 4.75 6.36 4.89 5.96 5.35 6.16 5.12 6.06 4.82 5.92 5.4 5.78 5.02 6.44 5.56 6.27 5.02 6.46 5.63 6.33 4.84 6.43 4.95 5.91 5.37 5.7 5.46 6.19 5.34 6.26 4.94 6.42 4.94 5.9 4.8 5.86 5.12 5.86 5.5 6.49 4.78 6.51 5.56 5.76 5.36 6.27 5.08 6.24 5.09 5.78 5.62 6.31 5.11 6.35 5.18 6.51 5.24 6.59 5.29 6.46 4.89 5.67 5.62 6.37 4.95 5.73 4.77 5.64 6.53 5.95 6.55 5.88 6.24 5.73 6.7 5.44 5.98 5.8 6.1 5.64 6.35 5.52 6.8 5.39 6.7 5.26 6.02 5.86 6.58 5.9 6.52 5.4 6.48 5.25 6.84 5.53 6.7 5.37 6.2 5.29 6.42 5.36 6.57 5.84 6.78 5.64 11.9 6.55 5.81 6.68 5.56 6.04 5.53 6.39 5.34 5.99 5.96 6.12 5.68 6.17 5.21 6.17 5.67 6.6 5.3 6.75 5.9 6.5 5.82 6.85 5.17 5.98 5.78 6.04 5.26 6.77 5.81 6.37 5.73 6.11 5.56 6.58 5.82 6.86 5.37 6.61 5.92 6.68 5.67 6.13 5.25 6.5 5.75 6.23 5.52 6.7 5.84 6.64 0.01 5.8 6.36 5.12 6.75 5.09 6.65 5.11 6.43 6.53 6.44 6.95 6.29 6.66 5.78 6.56 6.3 7.17 5.88 6.74 5.78 7 6.44 6.86 6.1 6.55 6.13 6.61 6.31 6.95 6.39 6.97 6.43 6.87 5.96 7.19 6.34 6.9 5.96 7.28 6.19 6.53 6.49 7.2 5.91 7.1 6.27 6.62 5.9 6.86 5.77 6.86 6.13 7.07 5.81 7.07 6.49 6.8 5.97 7.05 6.16 6.65 5.77 6.73 5.96 6.82 6.32 7.1 5.91 6.56 5.85 7.29 5.81 7.22 5.71 6.88 5.73 6.72 6.04 6.6 5.91 6.61 6.34 7.22 6.1 7.13 5.79 7.22 5.73 7.14 6.22 6.79 6.49 7.01 5.83 0.02 7.26 6.17 6.71 5.71 6.82 5.86 6.73 6.32 6.95 5.85 6.59 6.1 7.18 7.07 5.87 6.73 5.96 6.44 10.09 6.3 6.64 6.26 6.53 6.12 7.1 6.28 6.85 6.24 6.71 5.92 6.91 6.03 6.8 6.23 6.87 6.23 7.11 6.32 6.69 6.14 6.96 5.86 0.01 6.42 6.11 6.49 6.35 6.64 5.95 7.04 5.81 6.8 5.96 6.8 6.1 6.82 6.23 6.55 6.4 11.3 6.51 6.17 6.85 5.76 6.61 6.36 7.06 5.99 6.58 6.1 6.45 5.91 6.63 5.75 6.82 5.9 6.44 6.32 6.92 5.89 6.92 5.96 6.75 5.86 6.68 5.76 6.89 6.13 6.52 5.83 6.85 5.99 6.48 6.13 6.7 6.23 7.11 6.18 0.02 6.48 6.34 6.73 6.18 6.89 5.81 6.8 6.17 6.76 5.98 6.56 6.29 6.58 6.33 6.27 6.48 0.01 5.74 6.52 6.02 6.49 5.96 6.44 5.86 6.83 6.14 6.69 5.88 6.75 5.85 6.84 6.22 6.58 10.09 6.03 6.55 6.17 6.86 6.05 6.66 5.78 6.4 6.29 6.5 0.01 5.78 6.32 5.72 6.69 0.01 5.8 6.73 5.79 6.47 5.78 6.65 5.73 6.35 6.3 6.35 6.25 6.69 5.98 6.67 5.72 6.7 5.92 10.08 6.73 6.01 6.84 10.01 6.15 6.67 5.92 6.52 5.94 6.68 5.76 6.37 5.97 6.53 6.13 6.51 6.04 0.02 6.49 6.2 6.52 5.88 6.67 6.21 10.7 6.85 5.97 6.72 5.9 6.68 6.29 6.38 6.25 6.45 6.25 6.89 6.15 6.67 6.2 6.79 6.07 6.81 5.89 10.9 6.37 5.92 5.95 6.78 5.98 6.62 6.11 6.49 6.02 6.49 6.01 6.63 6.24 6.67 5.91 6.46 6.27 6.46 5.97 6.62 5.87 6.58 6.07 6.42 6.36 6.52 6.14 6.49 6.33 6.73 6.31 6.39 6.14 6.41 6.2 6.8 6.36 6.54 5.92 6.83 6 6.54 6 6.44 6.3 6.48 6.29 6.55 6.27 6.71 6.21 6.62 5.89 6.82 6.1 6.39 5.9 6.44 6.12 6.76 6.26 6.44 5.91 11.3 6.72 6.15 6.79 6.01 6.53 6.27 6.36 6.08 6.55 6.07 6.64 6.29 6.8 6.2 6.66 6.31 6.6 6.23 6.75 6.07 6.78 6.06 6.39 0.01 6 6.68 6 6.62 6.16 6.55 6.36 6.39 5.95 6.81 6.25 6.58 6.22 6.61 6.56 6.19 6.5 6.18 6.56 6.28 6.62 6.22 6.52 6.15 6.66 6.15 6.48 6.23 6.63 6.03 6.41 6.04 6.45 6.16 6.51 6.09 10.01 6.36 6.17 6.43 6.06 10.1 6.35 6.28 6.68 6.21 6.47 6.1 6.52 6.28 6.54 6.12 6.52 6.05 6.67 6.22 6.51 6.15 6.69 6.06 6.69 6.26 6.6 6.02 6.51 6.29 6.6 6.19 6.5 6.17 6.45 6.03 6.64 6.18 6.65 6.16 6.6 6.18 6.72 5.98 6.38 6.04 6.41 6.3 6.55 6.17 6.58 6.25 6.58 0.01 5.97 6.41 6.27 6.74 5.98 6.44 6.09 6.54 0.01 6.03 6.54 6.01 6.59 6.15 6.59 5.96 6.49 6.32 6.7 6.12 6.73 6.12 6.72 6.14 6.31 6.59 6.22 6.39 6.21 6.48 6.25 6.48 6.08 6.49 6.35 6.51 6.07 6.47 6.07 6.49 6.09 6.47 6.22 6.55 6.26 6.62 6.32 6.62 6.33 6.41 6.36 6.43 6.29 6.44 6.33 6.64 6.07 6.44 6.24 6.54 6.16 6.5 6.16 6.55 6.21 6.47 6.17 6.36 6.31 6.47 6.07 6.37 6.28 6.45 6.17 6.41 6.24 6.46 6.2 6.55 6.31 6.59 6.17 6.4 6.27 6.42 6.18 6.43 6.23 6.65 6.14 6.5 6.15 6.53 6.28 6.39 6.23 6.53 6.32 6.44 6.18 6.45 6.09 6.47 6.19 6.52 6.07 6.37 6.17 6.42 6.1 6.46 6.09 6.43 6.16 6.48 6.26 6.47 6.36 6.58 6.27 6.45 6.21 6.5 其中,标记为蓝色的第一个数字表示采样的批次或时段数,本例为10批次,或称10个采样时段;第二行起是10个时段的采样数据,每个时段有100次采样,其中有效数据介于0.05和9.99之间,异常采样数据标记为暗红色。 计算出的各时段平均值输出到exp03.out文件,其内容如下: 1.285 3.987 5.665 6.013 6.485 6.412 6.302 6.357 6.348 6.346 打开客户端程序client所在文件夹中的源程序exp03.cpp。补充程序代码完成其中的:⑴ 入队函数;⑵ 出队函数;⑶ 主函数中采样数据出队和求平均部分程序段。 #include <iostream> #include <iomanip> #include <stdio.h> #include <stdlib.h> //#include <windows.h> //#include <winbase.h> #define queueSize 120 // 队列空间大小 using namespace std; float queue[queueSize]; // 循环队列 int front, rear; // 队首指针,队尾指针 void initiate() // 初始化队列 { front = rear = 0; } bool enqueue(float e) // 入队 {//************************************************ if ((rear + 1) % queueSize == front) return false; queue[rear] = e; rear = (rear + 1) % queueSize; return true; //================================================ } float dequeue() // 出队 {//************************************************ float e = queue[front]; front = (front + 1) % queueSize; return e; if (front == rear) return 0; //================================================ } /* void delay(int ms) // 延时 { int start = GetTickCount(); while(GetTickCount()-start < ms); } */ int main() { int i, j; int group, NumPerGroup; // 采样分组数,出队数据个数 float data, average; // 数据,某组平均值 freopen("exp03.in", "r", stdin); freopen("exp03.out", "w", stdout); initiate(); cin >> group; for(i=0; i<group; i++) { for(j=0; j<100; j++) // 一个时段采样数据入队 { cin >> data; if(data>=0.05 && data<=9.99) enqueue(data); } // delay(50); _sleep(50); // 延时,模拟时间分段 average = 0.0; //************* 采样数据出队,求平均 ************* //================================================ cout << setprecision(3) << setiosflags(ios::fixed | ios::showpoint) << average << ' '; } fclose(stdin); fclose(stdout); return 1; }
最新发布
11-30
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值