• 大小: 121KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-14
  • 语言: 其他
  • 标签: LPT变换  OpenCV  

资源简介

对数极坐标变换,具有尺度不变性和旋转不变性,采用OpenCV函数实现,VS2012+OpenCV2.4.8编译通过。

资源截图

代码片段和文件信息

// LPT.cpp : 定义控制台应用程序的入口点。
//

#include “stdafx.h“
#include 
#include “opencv2/opencv.hpp“
using namespace cv;
using namespace std;

int cvtest()
{
IplImage* src;
double M;
src=cvLoadImage(“2.jpg“1);
//if(argc==3 && ((src=cvLoadImage(argv[1]1))!=0))
{
M=2;
IplImage* dst=cvCreateImage(cvGetSize(src)83);
IplImage* src2=cvCreateImage(cvGetSize(src)83);
cvLogPolar( src dst cvPoint2D32f(src->width/2src->height/2) 40 CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS ); //以图像中心位原点,缩放比例40,双线性插值,
//空白部分填充黑色。
cvLogPolar( dst src2 cvPoint2D32f(src->width/2src->height/2) 40 CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS+CV_WARP_INVERSE_MAP );

//cvLogPolar(srcdstcvPoint2D32f(src->width /4src->height /2)MCV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS);
//cvLogPolar(dstsrc2cvPoint2D32f(src->width /4src->height /2)MCV_INTER_LINEAR+CV_WARP_INVERSE_MAP);
cvNamedWindow(“source“1);
cvShowImage(“source“src);
cvNamedWindow(“log-polar“1);
cvShowImage(“log-polar“dst);
cvNamedWindow(“inverse log-polar“1);
cvShowImage(“inverse log-polar“src2);
//cvWaitKey();
}
return 0;
}

int cvtest1()
{
IplImage* src;
double M;
src=cvLoadImage(“1.jpg“1);
//if(argc==3 && ((src=cvLoadImage(argv[1]1))!=0))
{
M=2;
IplImage* dst=cvCreateImage(cvGetSize(src)83);
IplImage* src2=cvCreateImage(cvGetSize(src)83);


cvLogPolar( src dst cvPoint2D32f(src->width/2src->height/2) 40 CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS ); //以图像中心位原点,缩放比例40,双线性插值,
//空白部分填充黑色。
cvLogPolar( dst src2 cvPoint2D32f(src->width/2src->height/2) 40 CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS+CV_WARP_INVERSE_MAP );


//cvLogPolar(srcdstcvPoint2D32f(src->width /4src->height /2)MCV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS);
//cvLogPolar(dstsrc2cvPoint2D32f(src->width /4src->height /2)MCV_INTER_LINEAR+CV_WARP_INVERSE_MAP);
cvNamedWindow(“source1“1);
cvShowImage(“source1“src);
cvNamedWindow(“log-polar1“1);
cvShowImage(“log-polar1“dst);
cvNamedWindow(“inverse log-polar1“1);
cvShowImage(“inverse log-polar1“src2);
//cvWaitKey();
}
return 0;
}

int _tmain(int argc _TCHAR* argv[])
{

/*
IplImage* src;
double M;
src=cvLoadImage(“1.jpg“1);
//if(argc==3 && ((src=cvLoadImage(argv[1]1))!=0))
{
M=2;
IplImage* dst=cvCreateImage(cvGetSize(src)83);
IplImage* src2=cvCreateImage(cvGetSize(src)83);
cvLogPolar(srcdstcvPoint2D32f(src->width /4src->height /2)MCV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS);
cvLogPolar(dstsrc2cvPoint2D32f(src->width /4src->height /2)MCV_INTER_LINEAR+CV_WARP_INVERSE_MAP);
cvNamedWindow(“source“1);
cvShowImage(“source“src);
cvNamedWindow(“log-polar“1);
cvShowImage(“log-polar“dst);
cvNamedWindow(“inverse log-polar“1);
cvShowImage(“inverse log-polar“src2);
cvWaitKey();
}

*/
    cvtest();
cvtest1();
cvWaitKey();
return 0;
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      92550  2014-06-10 09:42  LPT\LPT\1.jpg

     文件      24158  2014-06-10 13:05  LPT\LPT\2.jpg

     文件       3018  2014-06-10 13:12  LPT\LPT\LPT.cpp

     文件       4997  2014-06-10 12:59  LPT\LPT\LPT.vcxproj

     文件       1307  2014-06-10 12:56  LPT\LPT\LPT.vcxproj.filters

     文件       1482  2014-06-10 12:56  LPT\LPT\ReadMe.txt

     文件        208  2014-06-10 12:56  LPT\LPT\stdafx.cpp

     文件        233  2014-06-10 12:56  LPT\LPT\stdafx.h

     文件        236  2014-06-10 12:56  LPT\LPT\targetver.h

     文件        876  2014-06-10 12:56  LPT\LPT.sln

    ..A..H.     19968  2014-06-10 18:53  LPT\LPT.v11.suo

     目录          0  2014-06-10 20:08  LPT\LPT

     目录          0  2014-06-10 20:08  LPT

----------- ---------  ---------- -----  ----

               149033                    13


评论

共有 条评论