opencv或者matlab调用opencv中的极线校正算法有人能为我讲讲吗

calibration 极线校正历程,learning opencv标准算法
238万源代码下载-
&文件名称: calibration
& & & & &&]
&&所属分类:
&&开发工具: Visual C++
&&文件大小: 4 KB
&&上传时间:
&&下载次数: 35
&&提 供 者:
&详细说明:极线校正历程,learning opencv标准算法-calibration
learning opencv
文件列表(点击判断是否您需要的文件,如果是垃圾请在下面评价投诉):
&&calibration.cpp
&近期下载过的用户:
&输入关键字,在本站238万海量源码库中尽情搜索:
&[] - 用于对图像极线校正的matlab代码 基于Tutorial on Rectification of Stereo Images
&[] - 三位重建中图像校正程序,环境是VC6.0,程序运行说明见README文件
&[] - 用于立体图像矫正:Harries角点、NCC匹配、RANSAC计算基本矩阵完成立体图像对的极线校正,自己书写的opencv函数
&[] - 立体匹配,包括计算基本矩阵,极线校正,和SSD计算匹配点
&[] - OpenCV支持的三种双目立体视觉算法BM,SGBM,GC综合比较,输出视差效果
&[] - 本文件为国外立体匹配算法解释的PPT文档,主要是立体匹配中的动态规划算法。里面有两个文件。matlab&中的&im2double&在opencv中的实现
最近在做一个工程,需要读入一幅灰度图像img,然后对这幅图像与其他矩阵M做各种运算。
而问题就在于,读入的灰度图像的深度为1(即8U),而其他矩阵M的的深度却是8(即64F),这会引起img与M运算时报错。
如果是matlab,大家都知道有个很好用的函数----有请im2double闪亮登场。但是如果是在opencv中(我用的是opencv2.3.1),却没有对应api。肿么办?
在网上苦苦寻解好久,终于在网上各位大侠的各种知识和自己亲身实验情况下,搞了出来,不敢私藏,与大家分享。
闲话少说,直接上我的实验源码:
&& path="D:\\a.jpg";
&& Mat img = imread(path ,
CV_LOAD_IMAGE_GRAYSCALE);&&
//读入图像到img,其深度是1
& IplImage InPut = Input , *
& change =
cvCreateImage(cvGetSize(&InPut),IPL_DEPTH_64F,1);
& cvConvert(&InPut , change);
&//change的数据部分在数值上与读入的图片值一致,而其深度转换成了64F。
result(change);&&&&
//再将IpIImage转换为Mat类型,以便进行运算。
方法虽然简单,但是找到这个解决也是费了不少周折,希望对大家有所帮助,要是有更好的方法或者更好的建议,非常欢迎分享。
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。求ORB算法MATLAB实现代码,或者opencv 2.3.1以上的安装包,官网点不开,不要链接。_百度知道
求ORB算法MATLAB实现代码,或者opencv 2.3.1以上的安装包,官网点不开,不要链接。
我的企鹅号
提问者采纳
7。,上传这么大的附件不容易啊其它个版本都有.4?shareid=&uk=" name="OpenCV-2。<file fsid="" link="/share/link。
提问者评价
其他类似问题
为您推荐:
opencv的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁epipolar-rectification 用OpenCV编的对图像进行极线校正的程序,先 匹配,然后求出基础矩阵,最后对 Special Effects 图形 处理 238万源代码下载-
&文件名称: epipolar-rectification
& & & & &&]
&&所属分类:
&&开发工具: Visual C++
&&文件大小: 25782 KB
&&上传时间:
&&下载次数: 88
&&提 供 者:
&详细说明:用OpenCV编的对图像进行极线校正的程序,先对图像进行匹配,然后求出基础矩阵,最后对图像进行极线校正-matching, fundametal matric and epipolar recitification
文件列表(点击判断是否您需要的文件,如果是垃圾请在下面评价投诉):
&&匹配+基础矩阵+极线校正&&......................\Debug&&......................\.....\matching.exe&&......................\.....\matching.ilk&&......................\.....\matching.pdb&&......................\.....\opencv_calib3d244.dll&&......................\.....\opencv_calib3d244.lib&&......................\.....\opencv_calib3d244d.dll&&......................\.....\opencv_calib3d244d.lib&&......................\.....\opencv_contrib244.dll&&......................\.....\opencv_contrib244.lib&&......................\.....\opencv_contrib244d.dll&&......................\.....\opencv_contrib244d.lib&&......................\.....\opencv_core244.dll&&......................\.....\opencv_core244.lib&&......................\.....\opencv_core244d.dll&&......................\.....\opencv_core244d.lib&&......................\.....\opencv_createsamples.exe&&......................\.....\opencv_createsamplesd.exe&&......................\.....\opencv_features2d244.dll&&......................\.....\opencv_features2d244.lib&&......................\.....\opencv_features2d244d.dll&&......................\.....\opencv_features2d244d.lib&&......................\.....\opencv_ffmpeg244.dll&&......................\.....\opencv_flann244.dll&&......................\.....\opencv_flann244.lib&&......................\.....\opencv_flann244d.dll&&......................\.....\opencv_flann244d.lib&&......................\.....\opencv_gpu244.dll&&......................\.....\opencv_gpu244.lib&&......................\.....\opencv_gpu244d.dll&&......................\.....\opencv_gpu244d.lib&&......................\.....\opencv_haartraining.exe&&......................\.....\opencv_haartrainingd.exe&&......................\.....\opencv_highgui244.dll&&......................\.....\opencv_highgui244.lib&&......................\.....\opencv_highgui244d.dll&&......................\.....\opencv_highgui244d.lib&&......................\.....\opencv_imgproc244.dll&&......................\.....\opencv_imgproc244.lib&&......................\.....\opencv_imgproc244d.dll&&......................\.....\opencv_imgproc244d.lib&&......................\.....\opencv_legacy244.dll&&......................\.....\opencv_legacy244.lib&&......................\.....\opencv_legacy244d.dll&&......................\.....\opencv_legacy244d.lib&&......................\.....\opencv_ml244.dll&&......................\.....\opencv_ml244.lib&&......................\.....\opencv_ml244d.dll&&......................\.....\opencv_ml244d.lib&&......................\.....\opencv_nonfree244.dll&&......................\.....\opencv_nonfree244.lib&&......................\.....\opencv_nonfree244d.dll&&......................\.....\opencv_nonfree244d.lib&&......................\.....\opencv_objdetect244.dll&&......................\.....\opencv_objdetect244.lib&&......................\.....\opencv_objdetect244d.dll&&......................\.....\opencv_objdetect244d.lib&&......................\.....\opencv_performance.exe&&......................\.....\opencv_performanced.exe&&......................\.....\opencv_photo244.dll&&......................\.....\opencv_photo244.lib&&......................\.....\opencv_photo244d.dll&&......................\.....\opencv_photo244d.lib&&......................\.....\opencv_stitching244.dll&&......................\.....\opencv_stitching244.lib&&......................\.....\opencv_stitching244d.dll&&......................\.....\opencv_stitching244d.lib&&......................\.....\opencv_traincascade.exe&&......................\.....\opencv_traincascaded.exe&&......................\.....\opencv_ts244.dll&&......................\.....\opencv_ts244.lib&&......................\.....\opencv_ts244d.dll&&......................\.....\opencv_ts244d.lib&&......................\.....\opencv_video244.dll&&......................\.....\opencv_video244.lib&&......................\.....\opencv_video244d.dll&&......................\.....\opencv_video244d.lib&&......................\.....\opencv_videostab244.dll&&......................\.....\opencv_videostab244.lib&&......................\.....\opencv_videostab244d.dll&&......................\.....\opencv_videostab244d.lib&&......................\ipch&&......................\....\matching-10d76176&&......................\....\.................\matching-6f9c83b7.ipch&&......................\matching&&......................\matching.sdf&&......................\matching.sln&&......................\matching.suo&&......................\........\Debug&&......................\........\.....\CL.read.1.tlog&&......................\........\.....\CL.write.1.tlog&&......................\........\.....\link-cvtres.read.1.tlog&&......................\........\.....\link-cvtres.write.1.tlog&&......................\........\.....\link.4528-cvtres.read.1.tlog&&......................\........\.....\link.4528-cvtres.write.1.tlog&&......................\........\.....\link.4528.read.1.tlog&&......................\........\.....\link.4528.write.1.tlog&&......................\........\.....\link.5604-cvtres.read.1.tlog&&......................\........\.....\link.5604-cvtres.write.1.tlog
&[]:和说明完全不符
&近期下载过的用户:
&&&&&&&&&&&&&&&&&[]
&相关搜索:
&输入关键字,在本站238万海量源码库中尽情搜索:
&[] - OPENV基于双目视觉的立体恢复,包括角点计算,标定,图片校正,立体恢复
&[] - 求两幅对应图像的匹配点,对极线,基本矩阵以及投影矩阵
&[] - 关于极线校正和怎么计算三维点的程序,还可以,大家可以下载过来看看
&[] - 极线校正历程,learning opencv标准算法
&[] - 用opencv编写的三维重建源代码,功能强大,代码简洁,实用性好。
&[] - 自己整理的关于opencv中如何基础矩阵求解的代码,提供大家参考
&[] - 用于对图像极线校正的matlab代码 基于Tutorial on Rectification of Stereo Images
&[] - 图像畸变校正技术的matlab源代码,涉及到图像的空间变换和灰度插值等技术。
&[] - 此OpenCV程序包含双目摄像机标定,棋盘图像矫正,立体像对校正,立体匹配,三维重建模块。然后用OpenGL显示重建效果,并可以通过键盘方向键旋转。
&[] - 运用球面透视投影模型校正鱼眼图像畸变,实现对输入畸变图片的自动校正3916人阅读
最近做实验需要使用matlab调用opencv的函数,然后就找了下如何使用matlab调用c&#43;&#43;程序并设置依赖库。其实使用matlab调用opencv的程序就是在matlab调用c&#43;&#43;程序时设置依赖库,因此,该方法同样适用于matlab调用其他的c&#43;&#43;库。我的程序是在windows上运行的,因此该方法仅适用于windows平台。
好,下面开始叙述详细步骤,首先确定你的matlab是用的是vc&#43;&#43;编译器,其他编译器没有尝试,设置过程如下:
1.在matlab命令行下输入mex -setup
2.提示Would you like mex to locate installed compilers [y]/n? 输入y
3.提示Select a compiler:&
[1] Lcc-win32 C 2.4.1 in D:\PROGRA~1\MATLAB\R2011a\sys\lcc&
[2] Microsoft Visual C&#43;&#43; 2010 in D:\Program Files\Microsoft Visual Studio 10.0&
[3] Microsoft Visual C&#43;&#43; 6.0 in D:\Program Files\Microsoft Visual Studio&
Compiler: 如果要使用vc2010输入2
4.询问你是否确认选择Are these correct [y]/n? &输入y,完成
之后,设置opencv的依赖库的目录,设置过程如下:
1.在matlab命令行输入 mex -v
2.输出提示信息:-& Default options filename found in C:\Users\Igloo\AppData\Roaming\MathWorks\MATLAB\R2011a&
----------------------------------------------------------------&
-& & &Options file & & & & & = C:\Users\Igloo\AppData\Roaming\MathWorks\MATLAB\R2011a\mexopts.bat&
& & & &MATLAB & & & & & & & & = D:\Program Files\MATLAB\R2011a ...
3.选中C:\Users\Igloo\AppData\Roaming\MathWorks\MATLAB\R2011a\mexopts.bat右键打开这个文件
4.在这个文件里做如下修改
1.在set PATH=%VCINSTALLDIR%\%VCINSTALLDIR%\VCP%VSINSTALLDIR%\Common7\IDE;%VSINSTALLDIR%\Common7\T%LINKERDIR%\%MATLAB_BIN%;d:\sdk\opencv\build\install\x86\vc10\bin;%PATH%设置opencv的dll所在的位置
2.在set&INCLUDE=%VCINSTALLDIR%\INCLUDE;%VCINSTALLDIR%\ATLMFC\INCLUDE;%LINKERDIR%\d:\sdk\opencv\bulid\install
\include;%INCLUDE%设置opencv的include文件夹的位置
3.set LIB=%VCINSTALLDIR%\LIB;%VCINSTALLDIR%\ATLMFC\LIB;%LINKERDIR%\%MATLAB%\extern\lib\win32;d:\sdk\opencv\build\install\%LIB%设置lib库所在的位置
4.set LINKFLAGS=/dll /export:%ENTRYPOINT% /LIBPATH:&%LIBLOC%& libmx.lib libmex.lib libmat.lib /MACHINE:X86后面添加cxcore233d.lib
cv233d.lib&highgui233d.lib根据自己使用的opencv版本号添加。
& &&5.保存该文件。
至此,所有的设置完成。
————————————分割线————————————————————————————
下面开始讲述如何在matlab中写c&#43;&#43;程序。
matlab写c&#43;&#43;程序,头文件必须先包含&mex.h&
函数名称必须为void mexFunction (int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])其中nlhs为输出参数个数,*plhs[]为输出参数数组,nrhs为输入参数个数,*prhs[]为输入参数数组。
下面为测试以上配置是否正确的简单测试代码:
#include&mex.h&
#include &opencv/cv.h&
#include &opencv2/highgui/highgui.hpp&
void mexFunction (int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])
char name[256];
int buflens =mxGetNumberOfElements(prhs[0]);
mxGetString(prhs[0], name, buflens+1);
if(!mxIsChar(prhs[0]))
mexErrMsgTxt(&First parameter must be string/n&);
mexPrintf(name);
IplImage * img = cvLoadImage(name);
if(img-&imageData == NULL)
mexErrMsgTxt(&Error in image/n&);
cvNamedWindow(&test&);
cvShowImage(&test&,img);
cvWaitKey(0);
}之后保存为opencvtest.cpp运行命令 mex opencvtest.cpp
之后运行opencvtest('test.jpg');就能显示图像。
如果出现找不到opencvtest.mexw32错误的话很可能是opencv的动态链接库的目录位置设置不正确,如果不想设置的话,直接将需要用到的dll文件拷贝到matlab\r2010a\win32文件夹下即可。
版权声明:本文为博主原创文章,未经博主允许不得转载。
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:63990次
积分:1002
积分:1002
排名:千里之外
原创:28篇
评论:161条
(2)(1)(5)(7)(5)(1)(2)(1)(6)(2)(3)

我要回帖

更多关于 matlab调用opencv 的文章

 

随机推荐