91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 15.77MB
    文件類型: .zip
    金幣: 1
    下載: 0 次
    發布日期: 2023-07-03
  • 語言: 其他
  • 標簽: RANSAC??

資源簡介

隨機生成五百個點作為初始數據,根據RANSAC算法,對初始數據進行擬合,尋找一條最能表示這五百個點的貝賽爾曲線。

資源截圖

代碼片段和文件信息

//?BezierFitting.cpp?:?定義控制臺應用程序的入口點。
//

#include?“stdafx.h“
#include?
#include?
#include?
#include?
#include?
#include?
#include?


using?namespace?std;
int?divs?=?50;?//?貝塞爾曲線粗細程度
IplImage?*image;
int?main(int?argc?char*?argv[])
{
CvSize?image_size?=?cvSize(10241024);
image?=?cvCreateImage(image_sizeIPL_DEPTH_8U3);
cvZero(image);
cvNamedWindow(“imageShow“0);

//隨機生成500個點,x值在[3060]y值在[01024]
vector?pointList;
srand((unsigned?int)?time(NULL));
for?(int?i?=?0;i? {

int?x?=?rand()?%30?+?30;?
int?y?=?rand()?%1024;
CvPoint?pt?=?cvPoint(xy);
pointList.push_back(pt);
}

uchar?*data?=?(uchar?*)image->imageData;
int?step?=?image->widthStep?/?sizeof(uchar);
vector::iterator?iter;
for(iter?=?pointList.begin();iter?!=?pointList.end();iter++)
{
int?x?=?(*iter).x;
int?y?=?(*iter).y;
data[y?*?step?+?x?*?image->nChannels?+?0]?=?0;
data[y?*?step?+?x?*?image->nChannels?+?1]?=?255;
data[y?*?step?+?x?*?image->nChannels?+?2]?=?0;
}


int?BestScore?=?0;
int?iterTimes?=?100;//迭代次數
CvPoint?controlPoints[4];//最終控制點
CvPoint?samplePoints[4];//迭代過程隨機驗證的控制點
int?countInliners?=?0;?//內聯點數

int?k?=?1;

srand((unsigned?int)?time(NULL));
int?x?=?0;
for?(int?i?=?0;i? {
//隨機選取四個點作為控制點
//srand(time(0));

srand(k);
samplePoints[0]?=?pointList[rand()?%20];
srand(k++);
samplePoints[1]?=?pointList[rand()?%230];
srand(k++);
samplePoints[2]?=?pointList[rand()?%230?+?250];
srand(k++);
samplePoints[3]?=?pointList[rand()?%20?+?480];

//判斷點到曲線距離,計算內聯點數
countInliners?=?0;
//vector::iterator?iter;
float?dis?=?0;//點到曲線距離



// x?=?samplePoints[0].x;
int?x0?=?samplePoints[0].x;
int?y0?=?samplePoints[0].y;
int?x1?=?samplePoints[1].x;
int?y1?=?samplePoints[1].y;
int?x2?=?samplePoints[2].x;
int?y2?=?samplePoints[2].y;
int?x3?=?samplePoints[3].x;
int?y3?=?samplePoints[3].y;

for?(iter?=?pointList.begin();iter?!=?pointList.end();iter++)
{
?float?d?=?(float)((*iter).y?-?(*iter).x);
?bool?Isinliner?=?false;
?for?(float?t?=?0;t? ?{
?float?dTemp?=?(y0?-?x0)?*?pow(t3)?+?(y1?-?x1)?*?3?*?pow(t2)?*?(1?-?t)?+?(y2?-?x2)?*?3?*?t?*?pow((1?-?t)2)?+?(y3?-?x3)?*?pow((1?-?t)3);
?if?(abs(d?-?dTemp)? ?{
?Isinliner?=?true;
?break;
?}
?}
?if?(Isinliner)
?{
?countInliners++;
?}
}

if?(countInliners?>?400)??//如果內聯點數超出預期值,則直接跳出,否則選擇最優的
{
*controlPoints?=?*samplePoints;
/*for?(int?k?=?0;k? {
controlPoints[k]?=?samplePoints[k];
}*/
break;
}

if?(countInliners?>?BestScore)
{
BestScore?=?countInliners;
*controlPoints?=?*samplePoints;
/*for?(int?k?=?0;k? {
controlPoints[k]?=?samplePoints[k];
}*/
}
}

cvShowImage(“imageShow“image);

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2014-06-09?16:42??BezierFitting\
?????目錄???????????0??2014-06-05?15:13??BezierFitting\BezierFitting\
?????文件????????3639??2014-06-09?11:30??BezierFitting\BezierFitting\BezierFitting.cpp
?????文件????????5095??2014-06-09?16:42??BezierFitting\BezierFitting\BezierFitting.vcxproj
?????文件????????1454??2014-06-09?16:42??BezierFitting\BezierFitting\BezierFitting.vcxproj.filters
?????文件?????????143??2014-06-05?10:49??BezierFitting\BezierFitting\BezierFitting.vcxproj.user
?????目錄???????????0??2014-06-09?11:06??BezierFitting\BezierFitting\Debug\
?????文件?????????406??2014-06-05?15:13??BezierFitting\BezierFitting\Debug\BezierFitting.exe.embed.manifest
?????文件?????????472??2014-06-05?15:13??BezierFitting\BezierFitting\Debug\BezierFitting.exe.embed.manifest.res
?????文件?????????381??2014-06-09?11:06??BezierFitting\BezierFitting\Debug\BezierFitting.exe.intermediate.manifest
?????文件??????????57??2014-06-09?11:06??BezierFitting\BezierFitting\Debug\BezierFitting.lastbuildstate
?????文件????????3089??2014-06-09?11:06??BezierFitting\BezierFitting\Debug\BezierFitting.log
?????文件??????235642??2014-06-09?11:06??BezierFitting\BezierFitting\Debug\BezierFitting.obj
?????文件?????1179648??2014-06-05?15:13??BezierFitting\BezierFitting\Debug\BezierFitting.pch
?????文件?????????713??2014-06-05?15:13??BezierFitting\BezierFitting\Debug\BezierFitting.vcxprojResolveAssemblyReference.cache
?????文件???????????0??2014-06-05?15:13??BezierFitting\BezierFitting\Debug\BezierFitting.write.1.tlog
?????文件?????????216??2014-06-05?15:13??BezierFitting\BezierFitting\Debug\BezierFitting_manifest.rc
?????文件???????21432??2014-06-09?11:06??BezierFitting\BezierFitting\Debug\CL.read.1.tlog
?????文件?????????832??2014-06-09?11:06??BezierFitting\BezierFitting\Debug\CL.write.1.tlog
?????文件????????1506??2014-06-09?11:06??BezierFitting\BezierFitting\Debug\cl.command.1.tlog
?????文件???????????2??2014-06-09?11:06??BezierFitting\BezierFitting\Debug\link-cvtres.read.1.tlog
?????文件???????????2??2014-06-09?11:06??BezierFitting\BezierFitting\Debug\link-cvtres.write.1.tlog
?????文件???????????2??2014-06-09?11:06??BezierFitting\BezierFitting\Debug\link.1792-cvtres.read.1.tlog
?????文件???????????2??2014-06-09?11:06??BezierFitting\BezierFitting\Debug\link.1792-cvtres.write.1.tlog
?????文件???????????2??2014-06-09?11:06??BezierFitting\BezierFitting\Debug\link.1792.read.1.tlog
?????文件???????????2??2014-06-09?11:06??BezierFitting\BezierFitting\Debug\link.1792.write.1.tlog
?????文件???????????2??2014-06-09?11:06??BezierFitting\BezierFitting\Debug\link.1996-cvtres.read.1.tlog
?????文件???????????2??2014-06-09?11:06??BezierFitting\BezierFitting\Debug\link.1996-cvtres.write.1.tlog
?????文件???????????2??2014-06-09?11:06??BezierFitting\BezierFitting\Debug\link.1996.read.1.tlog
?????文件???????????2??2014-06-09?11:06??BezierFitting\BezierFitting\Debug\link.1996.write.1.tlog
?????文件???????????2??2014-06-09?11:06??BezierFitting\BezierFitting\Debug\link.4008-cvtres.read.1.tlog
............此處省略37個文件信息

評論

共有 條評論