資源簡介
用C寫的,但是其坐標輸出有C和C++兩個,鼠標點擊輸出三維坐標,其相機標定用的是MATLAB結果導入,用的VS2010,實際運行成功的,不出我需要修改的是相機標定的xml文件,標定過程參考前面的博文,還有就是修改左右相機的參數cap_left = cvCreateCameraCapture(0); 以及cap_right = cvCreateCameraCapture(1); 我的是0和1,有可能是-1,0或者1和2
代碼片段和文件信息
#include?????
#include?????
#include?
#include?
#include?
#include?
#include“TCHAR.H“
#include“5555.h“
#include?
using?namespace?std;????
using?namespace?cv;?
Mat?disp1_Q;
CvStereoBMState?*m_BMstate?=?cvCreateStereoBMState();???
void?stereo_match(int)
{
//m_BMstate->SADWindowSize?=2*blockSize+5;
m_BMstate->SADWindowSize?=21;
m_BMstate->minDisparity?=?0;
//m_BMstate->uniquenessRatio?=?uniquenessRatio;
m_BMstate->uniquenessRatio?=?17;
m_BMstate->preFilterCap?=?31;
//m_BMstate->numberOfDisparities?=?numDisparities?*?16?+?16;
m_BMstate->numberOfDisparities?=?272;
m_BMstate->textureThreshold?=?10;
m_BMstate->speckleWindowSize?=?100;
m_BMstate->speckleRange?=?32;
m_BMstate->disp12MaxDiff?=?-1;
}
static?void?onMouse(int?event?int?x?int?y?int??void*?)
{
if?(event?==?CV_EVENT_LBUTTONDOWN)
{
pic_info[0]?=?x;
pic_info[1]?=?y;
cout?<“x:“?< left_mouse?=?true;
CvScalar?scal?=?cvGet2D(xyz1y?x);
cout?<“點(“?<
cout?<“in?world?coordinate:?“?<(pic_info[1]?pic_info[0])< cout?<“x:?“?<(pic_info[1]?pic_info[0])[0]?< cout?<“y:?“?<(pic_info[1]?pic_info[0])[1]?< cout?<“z:?“?<(pic_info[1]?pic_info[0])[2]?<
}
else?if?(event?==?CV_EVENT_LBUTTONUP)
{
left_mouse?=?false;
}
else?if?((event?==?CV_EVENT_MOUSEMOVE)?&&?(left_mouse?==?true))
{
}
}
//int?getPointClouds(cv::Mat&?disparity?cv::Mat&?pointClouds)
//{
// if?(disparity.empty())
// {
// return?0;
// }
//
// //計算生成三維點云
// reprojectImageTo3D(disparity?pointClouds?Q?true);
//
// pointClouds?*=?1.6;
// for?(int?y?=?0;?y?// {
// for?(int?x?=?0;?x?// {
// cv::Point3f?point?=?pointClouds.at(y?x);
// point.y?=?-point.y;
// pointClouds.at(y?x)?=?point;
// }
// }
// pointClouds.copyTo(xyz);?//獲取三維坐標方式2
//
// split(pointClouds?xyzSet);//獲取三維坐標方式1
// xyzSet[0].copyTo(depth0);
// xyzSet[1].copyTo(depth1);
// xyzSet[2].copyTo(depth2);
// return?1;
//}
int?main(int?argc?char*?argv[])???
{????
????//cout?<“測試兩個攝像頭同時讀取數據“?<??
????//讀取內部參數??
????CvMat?*Intrinsics_Camera_Left?=?(CvMat?*)cvLoad(“Intrinsics_Camera_Left.xml“);??
????CvMat?*Intrinsics_Camera_Right?=?(CvMat?*)cvLoad(“Intrinsics_Camera_Right.xml“);??
????CvMat?*Distortion_Camera_Left?=?(CvMat?*)cvLoad(“Distortion_Camera_Left.xml“);??
????CvMat?*Distortion_Camera_Right?=?(CvMat?*)cvLoad(“Distortion_Camera_Right.xml“);??
????CvMat?*Translation_matlab?=?(CvMat?*)cvLoad(“Translation.xml“);??
????CvMat?*RotRodrigues_matlab?=?(CvMat?*)cvLoad(“RotRodrigues.xml“
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????3982??2017-03-23?18:59??555(導入MATLB結果顯示視差并顯示坐標)\555\555.vcxproj
?????文件???????1059??2017-03-23?18:59??555(導入MATLB結果顯示視差并顯示坐標)\555\555.vcxproj.filters
?????文件????????143??2016-12-22?12:14??555(導入MATLB結果顯示視差并顯示坐標)\555\555.vcxproj.user
?????文件???????8808??2017-05-11?13:00??555(導入MATLB結果顯示視差并顯示坐標)\555\5555.cpp
?????文件????????421??2017-03-24?10:44??555(導入MATLB結果顯示視差并顯示坐標)\555\5555.h
?????文件????????406??2016-12-22?12:15??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\555.exe.em
?????文件????????472??2017-03-31?10:01??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\555.exe.em
?????文件????????381??2017-04-06?20:30??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\555.exe.intermediate.manifest
?????文件????????135??2017-04-21?16:22??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\555.lastbuildstate
?????文件????????990??2017-04-21?16:22??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\555.log
?????文件????????713??2016-12-22?12:42??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\555.vcxprojResolveAssemblyReference.cache
?????文件??????????0??2016-12-22?12:15??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\555.write.1.tlog
?????文件?????219424??2017-04-06?20:30??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\5555.obj
?????文件????????196??2016-12-22?12:15??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\555_manifest.rc
?????文件???????3326??2017-04-06?20:30??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\cl.command.1.tlog
?????文件??????93440??2017-04-06?20:30??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\CL.read.1.tlog
?????文件???????1798??2017-04-06?20:30??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\CL.write.1.tlog
?????文件??????????2??2017-04-06?20:30??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\li
?????文件??????????2??2017-04-06?20:30??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\li
?????文件??????????2??2017-04-06?20:30??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\li
?????文件??????????2??2017-04-06?20:30??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\li
?????文件??????????2??2017-04-06?20:30??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\li
?????文件??????????2??2017-04-06?20:30??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\li
?????文件??????????2??2017-04-06?20:30??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\li
?????文件??????????2??2017-04-06?20:30??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\li
?????文件??????????2??2017-04-06?20:30??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\li
?????文件??????????2??2017-04-06?20:30??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\li
?????文件??????????2??2017-04-06?20:30??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\li
?????文件??????????2??2017-04-06?20:30??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\li
?????文件??????????2??2017-04-06?20:30??555(導入MATLB結果顯示視差并顯示坐標)\555\Debug\li
............此處省略80個文件信息
- 上一篇:python課件pdf哈工大
- 下一篇:C語言在線考試系統
評論
共有 條評論