



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、/由于cvut版本进行了更新,致使该工程不能在最新cvut版本下编译,请使用工程包含的cvut库进行编译#include "cv.h"#include "highgui.h"#include "cvut/cvut.h"#include <iostream>#include <fstream>#include <string>#include <vector>using namespace std;using namespace cvut;#pragma comment(lib,"
2、;cxcore")#pragma comment(lib,"cv")#pragma comment(lib,"highgui")/#define REAL_TIME_MATCHING_SHOWint main(int argc,char* argv)Image<uchar> temp("image/Luxor02StereoSm2.jpg");Image<uchar> left(temp.size().width/2,temp.size().height,8,3);Image<uchar>
3、 right(temp.size().width/2,temp.size().height,8,3);/分割图像int i,j,t,k;for (i=0;i<temp.height;+i) j=0;for (;j<temp.width/2;j+) for (t=0;t<temp.channels;+t) left(i,j,t) = temp(i,j,t);j+;for (k=j+1,j=0;k<temp.width;+k,+j) for (t=0;t<temp.channels;+t) right(i,j,t) = temp(i,k,t); left.show(&
4、quot;left"); right.show("right",400,0); cvWaitKey(); left.close(); right.close();/*特征匹配*/cout<<"特征匹配"int depth_count = 0;vector<vector<int> > depth(left.width*left.height,vector<int>(3);vector<int> depth_buf(3);/匹配窗口大小/int win_size = 9;Matrix<
5、;double> left_wins(left.width-win_size/2-win_size/2,win_size*win_size*3,1);Matrix<double> right_wins(left.width-win_size/2-win_size/2,win_size*win_size*3,1);/设定最大可能视差/int depth_max = 10;int depth_min = left.height;bool is_match = false;int l,m,n;for (i=win_size/2;i<left.height-win_size/2
6、;i+) cout<<i<<" "/* 建立第i行所有的源向量和目的向量 */for (int k=win_size/2;k<left.width-win_size/2;k+) int p=0,q=0;for (l=i-win_size/2;l<=i+win_size/2;l+) for (m=k-win_size/2;m<=k+win_size/2;m+) for (n=0;n<3;n+) left_wins(k-win_size/2,p+,0) = left(l,m,n);for (m=k-win_size/2;m<
7、=k+win_size/2;m+) for (n=0;n<3;n+) right_wins(k-win_size/2,q+,0) = right(l,m,n);/遍历极线进行匹配for (j=win_size/2;j<left.width-win_size/2;j+) depth_buf0 = i;depth_buf1 = j;/* 初始最大误差 */double cos_val = 0.9;int index=0;is_match = false;for (int k=j;k<min(left.width-win_size/2,j+depth_max);k+) /* 计算向
8、量误差 */double cos_temp = 0,val1 = 0,val2 = 0,val3 = 0;for (int u=0;u<left_wins.cols;+u) val1 += left_wins(j-win_size/2,u,0)*right_wins(k-win_size/2,u,0);val2 +=left_wins(j-win_size/2,u,0)*left_wins(k-win_size/2,u,0);val3 +=right_wins(k-win_size/2,u,0)*right_wins(k-win_size/2,u,0);cos_temp = val1/s
9、qrt(val2)/sqrt(val3);/* 判断是否匹配 */if (cos_temp > cos_val)depth_buf2 = k-depth_buf1;cos_val = cos_temp;index = k;is_match = true;if (is_match) depth_min = depth_buf2<depth_min?depth_buf2:depth_min;depthdepth_count = depth_buf;depth_count+;is_match = false;/* 实时匹配显示 */#ifdef REAL_TIME_MATCHING_SH
10、OWcvCircle(left.cvimage,cvPoint(j,i),1,CV_RGB(255,255,255);cvCircle(right.cvimage,cvPoint(index,i),1,CV_RGB(255,255,255); left.show("left",0,0);right.show("right",400,0);cvWaitKey();left.close();right.close();#endifcout<<"完成"<<endl;/*显示深度图像*/cout<<"最小视差:"<<depth_min<<endl<<"最大视差:"<<depth_max<<endl;Image<uchar> depth_image(left.size(),8,1);for (i=0;i<depth.size();i+) depth_image
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 区县医院面试题及答案
- 药库测试试题及答案
- 呼吸内科临床重点专科
- 白内障护理查房
- 2025年 仓储管理员中级考试练习试卷附答案
- 培训学校年终汇报
- 小蚂蚁手工课课件
- 车展新能源技术研讨会举办合同
- 生态公园场地租赁及环保教育合作合同
- 艺术比赛选手成绩PK合同
- 三一挖机合同协议书
- 越秀地产合作协议书
- 上海市普陀区2024-2025学年八年级上学期期末考试物理试题(解析版)
- 胶原蛋白医学科普
- 前厅主管考试试题及答案
- 2025-2030中国焦煤行业市场发展分析及前景趋势与投资研究报告
- 2025年三级电子商务师职业技能鉴定理论考试题库(含答案)
- 带电作业安全课件
- 2025年粮油仓储管理员职业技能竞赛参考试题库(含答案)
- 白蚁防治文保施工方案
- 2025年中国国际技术智力合作集团有限公司招聘笔试参考题库含答案解析
评论
0/150
提交评论