资源简介
贪心算法,opencv,主动轮廓模型
代码片段和文件信息
#include // for standard I/O
#include // for strings
#include // for controlling float print precision
#include // string to number conversion
#include
#include // Gaussian Blur
#include // Basic OpenCV structures (cv::Mat Scalar)
#include // OpenCV window I/O
#include “cv.h“
#include “cxcore.h“
#include “highgui.h“
#include “cvaux.h“
using namespace std;
int Thresholdness = 141;
int ialpha = 20;
int ibeta=20;
int igamma=20;
void onchange(int pos)
{
// if(image2) cvReleaseImage(&image2);
// if(image) cvReleaseImage(&image);
// image= cvLoadImage(“E:\\学习\\视觉疲劳\\新建文件夹\\新建文件夹\\眼镜图片\\line_image.jpg“0);
// image2= cvLoadImage(“E:\\学习\\视觉疲劳\\新建文件夹\\新建文件夹\\眼镜图片\\line_image.jpg“1);
IplImage* image2 = cvLoadImage(“E:\\学习\\主动轮廓模型\\贪心算法\\opencv\\snake\\333.jpg“1); //显示图片
IplImage* image= cvLoadImage(“E:\\学习\\主动轮廓模型\\贪心算法\\opencv\\snake\\333.jpg“0);
cvThreshold(imageimageThresholdness255CV_THRESH_BINARY); //分割域值
CvMemStorage *storage = 0;
storage = cvCreateMemStorage(0);
CvSeq* contours = 0;
// cvFindContours( image storage &contours sizeof(CvContour) CV_RETR_EXTERNAL CV_CHAIN_APPROX_SIMPLE cvPoint(00));
cvFindContours( image storage &contours sizeof(CvContour) CV_RETR_TREE CV_CHAIN_APPROX_SIMPLE cvPoint(00) );
if(!contours) return ;
int length = contours->total;
// if(length<10) return ;
CvPoint* point = new CvPoint[length]; //分配轮廓点
CvSeqReader reader;
CvPoint pt= cvPoint(00);
CvSeq *contour2=contours;
cvStartReadSeq(contour2 &reader);
for (int i = 0; i < length; i++)
{
CV_READ_SEQ_ELEM(pt reader);
point[i]=pt;
}
cvReleaseMemStorage(&storage);
//显示轮廓曲线
for(int i=0;i {
int j = (i+1)%length;
cvLine( image2 point[i]point[j]CV_RGB( 0 0 255 )180 );
}
float alpha=ialpha/100.0f;
float beta=ibeta/100.0f;
float gamma=igamma/100.0f;
CvSize size;
size.width=3;
size.height=3;
CvTermCriteria criteria;
criteria.type=CV_TERMCRIT_ITER;
criteria.max_iter=1000;
criteria.epsilon=0.1;
cvSnakeImage( image pointlength&alpha&beta&gammaCV_VALUEsizecriteria0 );
//显示曲线
for(int i=0;i {
int j = (i+1)%length;
cvLine( image2 point[i]point[j]CV_RGB( 255 0 0 )580 );
// cvCircle(image2 point[i]1CV_RGB( 0 2550)1 );
// cvLine( image2 point[i]point[i]CV_RGB( 0 255 0 )380 );
}
delete []point;
for(;;)
{
if(cvWaitKey(40)==27) break;
cvShowImage(“win1“image2);
}
}
int main()
{
// IplImage* img= cvLoadImage(“D:\\Matlabstudy\\eye\\left_1.jpg“); //随便放一张jpg图片在D盘或另行设置目录
cvName
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 32768 2013-06-04 21:12 71477217snake_c\snake_c\Debug\snake_opencv.exe
文件 543672 2013-06-04 21:12 71477217snake_c\snake_c\Debug\snake_opencv.ilk
文件 1690624 2013-06-04 21:12 71477217snake_c\snake_c\Debug\snake_opencv.pdb
文件 65929216 2013-06-09 18:43 71477217snake_c\snake_c\ipch\snake_opencv-d88e7878\snake_opencv-53631cc8.ipch
文件 702 2013-06-04 21:12 71477217snake_c\snake_c\snake_opencv\Debug\cl.command.1.tlog
文件 20806 2013-06-04 21:12 71477217snake_c\snake_c\snake_opencv\Debug\CL.read.1.tlog
文件 306 2013-06-04 21:12 71477217snake_c\snake_c\snake_opencv\Debug\CL.write.1.tlog
文件 2 2013-06-04 21:12 71477217snake_c\snake_c\snake_opencv\Debug\li
文件 2 2013-06-04 21:12 71477217snake_c\snake_c\snake_opencv\Debug\li
文件 2 2013-06-04 21:12 71477217snake_c\snake_c\snake_opencv\Debug\li
文件 2 2013-06-04 21:12 71477217snake_c\snake_c\snake_opencv\Debug\li
文件 2 2013-06-04 21:12 71477217snake_c\snake_c\snake_opencv\Debug\li
文件 2 2013-06-04 21:12 71477217snake_c\snake_c\snake_opencv\Debug\li
文件 2054 2013-06-04 21:12 71477217snake_c\snake_c\snake_opencv\Debug\li
文件 4086 2013-06-04 21:12 71477217snake_c\snake_c\snake_opencv\Debug\li
文件 710 2013-06-04 21:12 71477217snake_c\snake_c\snake_opencv\Debug\li
文件 116902 2013-06-04 21:12 71477217snake_c\snake_c\snake_opencv\Debug\main.obj
文件 404 2013-06-04 21:12 71477217snake_c\snake_c\snake_opencv\Debug\mt.command.1.tlog
文件 318 2013-06-04 21:12 71477217snake_c\snake_c\snake_opencv\Debug\mt.read.1.tlog
文件 318 2013-06-04 21:12 71477217snake_c\snake_c\snake_opencv\Debug\mt.write.1.tlog
文件 558 2013-05-30 16:44 71477217snake_c\snake_c\snake_opencv\Debug\rc.command.1.tlog
文件 290 2013-05-30 16:44 71477217snake_c\snake_c\snake_opencv\Debug\rc.read.1.tlog
文件 298 2013-05-30 16:44 71477217snake_c\snake_c\snake_opencv\Debug\rc.write.1.tlog
文件 1736 2013-05-30 16:44 71477217snake_c\snake_c\snake_opencv\Debug\snake_opencv.Build.CppClean.log
文件 406 2013-05-30 16:44 71477217snake_c\snake_c\snake_opencv\Debug\snake_opencv.exe.em
文件 472 2013-05-30 16:44 71477217snake_c\snake_c\snake_opencv\Debug\snake_opencv.exe.em
文件 381 2013-06-04 21:12 71477217snake_c\snake_c\snake_opencv\Debug\snake_opencv.exe.intermediate.manifest
文件 50 2013-06-04 21:12 71477217snake_c\snake_c\snake_opencv\Debug\snake_opencv.lastbuildstate
文件 3576 2013-06-04 21:12 71477217snake_c\snake_c\snake_opencv\Debug\snake_opencv.log
文件 214 2013-05-30 16:44 71477217snake_c\snake_c\snake_opencv\Debug\snake_opencv_manifest.rc
............此处省略20个文件信息
- 上一篇:Simplorer与Maxwell的场路耦合联合仿真
- 下一篇:ipcam的vs工程
评论
共有 条评论