亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? vdtwrecoge.cpp

?? 介紹ar
?? CPP
字號:
/*vdtwrecoge.c****************************************************************/

#include "vdtwrecoge.h"
#include "math.h"
double vdistance[DTWMAXNUM][DTWMAXNUM]; /*保存距離*/
double vdtwpath[DTWMAXNUM][DTWMAXNUM]; /*保存路徑*/

/*****************************************************************************/
/* VectorAdd(mvector *A,mvector *B,mvector *C)
/* 向量加法,結(jié)果存放在C中
/*****************************************************************************/
void VectorAdd(mvector *A,mvector *B,mvector *C)
{
	if(A->num != B->num)
		return;
	int dim = A->num;
	for(int i = 0; i < dim; i++)
	{
		C->data[i] = A->data[i] + B->data[i];
	}
	C->num = dim;
}
/*****************************************************************************/
/*VectorInit(mvector *A,int dim) 向量初始化
/* dim 維數(shù)
/******************************************************************************/

void VectorInit(mvector *A,int dim)
{
	if((dim > MAX_DIM)||(A == NULL))
		return ;
	for(int i = 0; i < dim; i++)
	{
		A->data[i] = 0.0;
	}
	A->num = dim;

}

/*****************************************************************************/
/*VectorMul(mvector *A,double mul) 向量數(shù)乘
/* 
/*****************************************************************************/
void VectorMul(mvector *A,double mul)
{
	for(int i = 0; i<MAX_DIM; i++)
	{
		A->data[i] *= mul;

	}

}
#define SQUARE(x) x*x
/*****************************************************************************/
/* VectorDistance,用于求兩個向量之間的距離,歐氏距離
/* A和B是待求距離的兩個向量
/*****************************************************************************/
double VectorDistance(mvector *A,mvector *B)
{
	double total = 0.0;
	double *vec1 = A->data;
	double *vec2 = B->data;
	double temp;
	int dim = A->num;
	if(A->num != B->num)
		return -1.0;
	for(int i = 0; i < dim; i++)
	{	
		temp = vec1[i] - vec2[i];
		total += SQUARE(temp);
	}
	total /= dim;
	total = sqrt(total);
	return total;
}
#undef SQUARE


/*****************************************************************************/
/* DTWDistance,求兩個數(shù)組之間的匹配距離
/* A,B分別為第一第二個數(shù)組,I,J為其數(shù)組長度,r為匹配窗口的大小
/* r的大小一般取為數(shù)組長度的1/10到1/30
/* 返回兩個數(shù)組之間的匹配距離,如果返回-1.0,表明數(shù)組長度太大了
/*****************************************************************************/
double VDTWDistanceFun(mvector *A,int I,mvector *B,int J,int r)
{
	int i,j;
	double dist;
	int istart,imax;
	double g1,g2,g3;
	int pathsig=1;/*路徑的標志*/
	int r2=r+ABS(I-J);/*匹配距離*/
	int dim = A->num;    //向量的維數(shù)
	if(A->num != B->num){
		return -1.0;
	}
	if((r2>I-1)||(r2>J-1)){
		return -1.0;
	}

	/*檢查參數(shù)的有效性*/
	if(I>DTWMAXNUM||J>DTWMAXNUM){
		//printf("Too big number\n");
		return -1.0;
	}
	
	/*進行一些必要的初始化*/
	for(i=0;i<I;i++){
		for(j=0;j<J;j++){
			vdtwpath[i][j]=0;
			vdistance[i][j]=DTWVERYBIG;
		}
	}
	
	/*動態(tài)規(guī)劃求最小距離*/
	/*這里我采用的路徑是 -------
	                          . |
	                        .   |
	                      .     |
	                    .       |
	 有可能有更好的前進路徑,我沒有細加論證,不過算法的數(shù)量級是一樣的
	 */
	vdistance[0][0]=(double)2*VectorDistance(&A[0],&B[0]);
	for(i=1;i<=r2;i++){
		vdistance[i][0]=vdistance[i-1][0]+VectorDistance(&A[i],&B[0]);
	}
	for(j=1;j<=r2;j++){
		vdistance[0][j]=vdistance[0][j-1]+VectorDistance(&A[0],&B[j]);
	}
	
	for(j=1;j<J;j++){
		istart=j-r2;
		if(j<=r2)
			istart=1;
		imax=j+r2;
		if(imax>=I)
			imax=I-1;

		
		for(i=istart;i<=imax;i++){
			g1=vdistance[i-1][j]+VectorDistance(&A[i],&B[j]);
			g2=vdistance[i-1][j-1]+2*VectorDistance(&A[i],&B[j]);
			g3=vdistance[i][j-1]+VectorDistance(&A[i],&B[j]);
			g2=MIN(g1,g2);
			g3=MIN(g2,g3);
			vdistance[i][j]=g3;
		}
	}
		
	dist=vdistance[I-1][J-1]/((double)(I+J));
	return dist;
}/*end DTWDistance*/

/*****************************************************************************/
/* DTWTemplate,進行建立模板的工作
/* 其中A為已經(jīng)建立好的模板,我們在以后加入訓(xùn)練樣本的時候,
/* 以已建立好的模板作為第一個參數(shù),I為模板的長度,在這個模板中不再改變
/* B為新加入的訓(xùn)練樣本,J為B的長度,turn為訓(xùn)練的次數(shù),在第一次
/* 用兩個數(shù)組建立模板時,r為1,這是出于權(quán)值的考慮
/* temp保存匹配最新訓(xùn)練后的模板,建議temp[DTWMAXNUM],函數(shù)返回最新訓(xùn)練后模板的長度
/* 如果函數(shù)返回-1,表明訓(xùn)練樣本之間距離過大,需要重新選擇訓(xùn)練樣本,
/* tt為樣本之間距離的閾值,自行定義
/* rltdistance保存距離,第一次兩個數(shù)組建立模板時可以隨意賦予一個值,
/* 后面用前一次返回的值賦予該參數(shù)
/*****************************************************************************/
int VDTWTemplate(mvector *A,int I,mvector *B,int J,mvector *temp,int turn,double tt,double *rltdistance)
{
	double dist;
	int i,j;
	int pathsig=1;
	int dim = A->num;
	dist=VDTWDistanceFun(A,I,B,J,(int)(I/30));
	if(dist>tt){
		printf("\nSample doesn't match!\n");
		return -1;
	}
		
	if(turn==1)
		*rltdistance=dist;
	else{
		*rltdistance=((*rltdistance)*(turn-1)+dist)/turn;
	}
	/*尋找路徑,這里我采用了逆向搜索法*/
	i=I-1;
	j=J-1;
	while(j>=1||i>=1){
		double m;
		if(i>0&&j>0){
			m=MIN(MIN(vdistance[i-1][j],vdistance[i-1][j-1]),vdistance[i][j-1]);
			if(m==vdistance[i-1][j]){
				vdtwpath[i-1][j]=pathsig;
				i--;
			}
			else if(m==vdistance[i-1][j-1]){
				vdtwpath[i-1][j-1]=pathsig;
				i--;
				j--;
			}
			else{
				vdtwpath[i][j-1]=pathsig;
				j--;
			}
		}
		else if(i==0){
			vdtwpath[0][j-1]=pathsig;
			j--;
		}
		else{/*j==0*/
			vdtwpath[i-1][0]=pathsig;
			i--;
		}
	}
	vdtwpath[0][0]=pathsig;
	vdtwpath[I-1][J-1]=pathsig;
	
	/*建立模板*/
	for(i=0;i<I;i++){
		mvector ftemp;
		VectorInit(&ftemp,dim);
		int ntemp=0;
		for(j=0;j<J;j++){
			if(vdtwpath[i][j]==pathsig){
				VectorAdd(&ftemp,&B[j],&ftemp);
				ntemp++;
			}
		}
		VectorMul(&ftemp,1.0/(double)ntemp);
		//temp[i]=(A[i]*turn+ftemp)/((double)(turn+1));/*注意這里的權(quán)值*/
		VectorMul(&A[i],turn);
		VectorAdd(&ftemp,&A[i],&temp[i]);
		VectorMul(&temp[i],1.0/(double)(turn+1));
	}
	
	
	return I;/*返回模板的長度*/
}//end DTWTemplate

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色综合久久久久综合99| 免费观看一级欧美片| 成人激情免费视频| 国产日韩一级二级三级| 国产精品一区二区久久精品爱涩 | 国产精品第一页第二页第三页| 国产麻豆精品在线观看| 国产色婷婷亚洲99精品小说| 99国产精品久久久久久久久久久| 亚洲欧美另类在线| 欧美日韩大陆一区二区| 久久精品国产亚洲一区二区三区 | 欧美日韩一级大片网址| 亚洲1区2区3区视频| 日韩美女视频在线| 国产一区二区看久久| 国产精品进线69影院| 欧美日韩久久久久久| 国内精品伊人久久久久av影院 | 久久影院视频免费| 粉嫩蜜臀av国产精品网站| 亚洲精品成人天堂一二三| 欧美精品日日鲁夜夜添| 国产精品性做久久久久久| 夜夜精品视频一区二区 | 国产不卡视频一区| 亚洲自拍偷拍九九九| 日韩精品一区二区三区在线| 成人动漫一区二区在线| 亚洲成人一区在线| 国产调教视频一区| 在线不卡a资源高清| 国产成a人无v码亚洲福利| 五月婷婷久久综合| 国产精品天美传媒沈樵| 欧美伦理影视网| 成人精品小蝌蚪| 青青草97国产精品免费观看 | 欧洲av一区二区嗯嗯嗯啊| 免费成人美女在线观看.| 一区精品在线播放| 亚洲精品在线三区| 欧美影片第一页| 99久久综合国产精品| 久久精品国内一区二区三区| 亚洲国产一区在线观看| 国产欧美一区二区精品仙草咪| 欧美日韩视频在线一区二区| 99re8在线精品视频免费播放| 久久国产福利国产秒拍| 污片在线观看一区二区| 经典三级在线一区| 亚洲va国产天堂va久久en| 中文字幕日本不卡| 国产欧美精品一区| 久久一二三国产| 日韩一区二区三区视频在线 | 九九九久久久精品| 亚洲成a人v欧美综合天堂| 亚洲天堂av老司机| 1000精品久久久久久久久| 久久精品日产第一区二区三区高清版| 欧美电影在线免费观看| 欧美伊人久久久久久久久影院| 91麻豆国产福利精品| 国产99久久久精品| 福利一区二区在线| 国产精品一二三区在线| 狠狠色狠狠色合久久伊人| 蜜桃久久精品一区二区| 日韩vs国产vs欧美| 免费观看91视频大全| 三级不卡在线观看| 肉丝袜脚交视频一区二区| 日本在线不卡视频| 青青草伊人久久| 激情综合五月天| 久久国产精品第一页| 国产一区二区三区四| 国产精品2024| 成人福利在线看| 色菇凉天天综合网| 欧日韩精品视频| 欧美麻豆精品久久久久久| 欧美人动与zoxxxx乱| 69堂国产成人免费视频| 日韩一区二区三区在线视频| 精品噜噜噜噜久久久久久久久试看 | 国产亚洲综合在线| 欧美国产亚洲另类动漫| 自拍偷在线精品自拍偷无码专区 | 精品电影一区二区| 久久精品一二三| 国产精品国产三级国产专播品爱网| 国产精品美女视频| 一区二区三区精品在线观看| 亚洲一区二区三区在线| 奇米色一区二区| 国产一区二区在线观看免费| 成人午夜激情在线| 色婷婷综合久久久久中文| 9191国产精品| 久久你懂得1024| 中文字幕一区二区三区在线播放 | 国产精品理论片| 亚洲一二三四在线观看| 亚洲一区二区三区四区在线观看 | 精品理论电影在线观看 | 欧美无砖专区一中文字| 日韩欧美色电影| 中文字幕的久久| 亚洲一二三四在线观看| 狠狠色丁香九九婷婷综合五月| 成人中文字幕电影| 欧美精品在线观看播放| 国产欧美日韩另类视频免费观看| 亚洲精品午夜久久久| 精品午夜一区二区三区在线观看| 95精品视频在线| 精品福利一二区| 夜夜亚洲天天久久| 国产白丝精品91爽爽久久| 欧美日韩一区二区三区免费看 | 免费精品视频最新在线| 国产91对白在线观看九色| 欧美午夜精品电影| 国产亚洲人成网站| 天堂久久久久va久久久久| 成人永久免费视频| 日韩一区二区三区免费观看| 日韩理论片一区二区| 久久电影网站中文字幕| 91国产福利在线| 久久久不卡网国产精品二区| 亚洲成在人线在线播放| 99久久免费精品| 国产亚洲精品精华液| 免费成人在线影院| 欧美日韩国产在线观看| 中文字幕一区二区三| 激情五月婷婷综合网| 欧美日韩一区二区三区高清| 中文字幕制服丝袜一区二区三区 | 欧美aⅴ一区二区三区视频| va亚洲va日韩不卡在线观看| 欧美α欧美αv大片| 无码av免费一区二区三区试看| 色婷婷av久久久久久久| 中文字幕一区二区三区不卡| 国产精品自拍毛片| 2019国产精品| 麻豆精品新av中文字幕| 欧美一区在线视频| 亚洲第一综合色| 欧美日韩美少妇| 亚洲一二三四久久| 欧美视频日韩视频在线观看| 亚洲激情校园春色| 日本大香伊一区二区三区| 亚洲欧洲美洲综合色网| 不卡的av在线播放| 国产精品久久久久一区二区三区共| 国产老妇另类xxxxx| 国产亚洲欧美日韩日本| 国产精品538一区二区在线| 国产午夜亚洲精品羞羞网站| 国产一区二区三区四区五区入口 | 久久激情五月婷婷| 这里只有精品电影| 美美哒免费高清在线观看视频一区二区| 欧洲精品在线观看| 五月天中文字幕一区二区| 欧美一区二区三区四区高清 | 亚洲精品国产精华液| 欧美羞羞免费网站| 午夜私人影院久久久久| 欧美肥胖老妇做爰| 麻豆传媒一区二区三区| 久久综合色播五月| 国产电影一区二区三区| 国产精品久久久久精k8| 色爱区综合激月婷婷| 日韩精品欧美成人高清一区二区| 日韩视频一区二区三区在线播放 | 欧美一级高清片在线观看| 国内外成人在线| 国产精品久久久爽爽爽麻豆色哟哟 | 欧美成人性福生活免费看| 国产乱码精品1区2区3区| 亚洲欧洲韩国日本视频| 欧美亚男人的天堂| 九九精品一区二区| 国产精品素人一区二区| 色综合天天综合在线视频| 亚洲妇女屁股眼交7| 精品久久免费看| 99久久精品情趣| 日本欧美一区二区三区乱码| 久久日韩精品一区二区五区| 99久久久精品免费观看国产蜜|