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

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

?? cluster.cpp

?? 此程序詳細的列出模式識別中的最基本的一些方法,是初學模式識別的人很好的教材,全部用C++實現(xiàn)
?? CPP
?? 第 1 頁 / 共 4 頁
字號:
		}
		else break;//退出循環(huán)
	}

}
/************************************************************
*函數(shù)名稱		Zhongjianjulifa()
*參數(shù)			void
*返回值		    void
*函數(shù)功能		按照中間距離法對全體樣品進行分類
*************************************************************/
void CCluster::Zhongjianjulifa()
{
	GetFeature();
	
	double	**centerdistance;//記錄類間距離
	double  T;//閾值
	int		distype;//距離的形式(歐氏、余弦。。。)
	int     i,j;

	double minous,maxous,mincos,maxcos,minbcos,maxbcos,mintan,maxtan;

	minous=MAX; mincos=MAX; minbcos=MAX; mintan=MAX;
	maxous=0; maxcos=0; maxbcos=0; maxtan=0;
	//計算四種距離模式的參考值
	for (  i=0;i<patternnum-1;i++)
		for ( j=i+1;j<patternnum;j++)
		{
			if (minous>GetDistance(m_pattern[i],m_pattern[j],1))
				minous=GetDistance(m_pattern[i],m_pattern[j],1);
			if (maxous<GetDistance(m_pattern[i],m_pattern[j],1))
				maxous=GetDistance(m_pattern[i],m_pattern[j],1);

			if (mincos>GetDistance(m_pattern[i],m_pattern[j],2))
				mincos=GetDistance(m_pattern[i],m_pattern[j],2);
			if (maxcos<GetDistance(m_pattern[i],m_pattern[j],2))
				maxcos=GetDistance(m_pattern[i],m_pattern[j],2);

			if (minbcos>GetDistance(m_pattern[i],m_pattern[j],3))
				minbcos=GetDistance(m_pattern[i],m_pattern[j],3);
			if (maxbcos<GetDistance(m_pattern[i],m_pattern[j],3))
				maxbcos=GetDistance(m_pattern[i],m_pattern[j],3);
			
			if (mintan>GetDistance(m_pattern[i],m_pattern[j],4))
				mintan=GetDistance(m_pattern[i],m_pattern[j],4);
			if (maxtan<GetDistance(m_pattern[i],m_pattern[j],4))
				maxtan=GetDistance(m_pattern[i],m_pattern[j],4);
		}
	DlgInfor mDlgInfor;
	mDlgInfor.ShowInfor(minous,maxous,mincos,maxcos,minbcos,maxbcos,mintan,maxtan);

	if (mDlgInfor.DoModal()==IDOK)
	{
		T=mDlgInfor.m_T;
		distype=mDlgInfor.m_DisType;
	}
	else return;

    //初始化
	for ( i=0;i<patternnum;i++)//每個樣品自成一類
	{
		m_pattern[i].category=i+1;
	}

	centerdistance=new double *[patternnum];//建立類間距離數(shù)組,centerdistance[i][j]表示i類和j類距離
	for ( i=1;i<patternnum;i++)
	{
		centerdistance[i]=new double [patternnum+1];
	}

	for ( i=1;i<patternnum;i++)
		for (int j=i+1;j<=patternnum;j++)
		{
			centerdistance[i][j]=GetDistance(m_pattern[i-1],m_pattern[j-1],distype);
		}

	centernum=patternnum;
	
	while(1)
	{
		double td,**tempdistance;
		int ti,tj;
		td=MAX;
		ti=0;
		tj=0;

		tempdistance= new double *[patternnum];//臨時記錄類間距離
		for (i=1;i<patternnum;i++)
		{
			tempdistance[i]=new double[patternnum+1];
		}

		for( i=1;i<centernum;i++)//找到距離最近的兩類:ti,tj,記錄最小距離td;
			for ( j=i+1;j<=centernum;j++)
			{
				if (td>centerdistance[i][j])	
				{
					td=centerdistance[i][j];
					ti=i;tj=j;
				}
			}

		if(td<T)//合并類i,j
		{
			for ( i=0;i<patternnum;i++)
			{
				if (m_pattern[i].category==tj)
					m_pattern[i].category=ti;
				if (m_pattern[i].category>tj)
					m_pattern[i].category--;
			}
			centernum--;

			for (i=1;i<centernum;i++)//重新計算合并后的類到其他各類的新距離
				for ( j=i+1;j<=centernum;j++)
				{
					if (i<ti)
					{
						if(j==ti)
							tempdistance[i][j]=sqrt (centerdistance[i][ti]*centerdistance[i][ti]/2+centerdistance[i][tj]*centerdistance[i][tj]/2-centerdistance[ti][tj]*centerdistance[ti][tj]/4);
						else if (j>=tj)
							tempdistance[i][j]=centerdistance[i][j+1];
						else
							tempdistance[i][j]=centerdistance[i][j];
					
					}
					else if (i==ti)
					{
						if (j<tj)
							tempdistance[i][j]=sqrt (centerdistance[ti][j]*centerdistance[ti][j]/2+centerdistance[j][tj]*centerdistance[j][tj]/2-centerdistance[ti][tj]*centerdistance[ti][tj]/4);
                        else
							tempdistance[i][j]=sqrt (centerdistance[ti][j+1]*centerdistance[ti][j+1]/2+centerdistance[tj][j+1]*centerdistance[tj][j+1]/2-centerdistance[ti][tj]*centerdistance[ti][tj]/4);
					}
					else if((i>ti)&&(i<tj))
					{
						if(j<tj)
							tempdistance[i][j]=centerdistance[i][j];
						else
							tempdistance[i][j]=centerdistance[i][j+1];
					}
					else //i>=tj
					{
						tempdistance[i][j]=centerdistance[i+1][j+1];
					}
				}
			for (i=1;i<centernum;i++)
				for ( j=i+1;j<=centernum;j++)
				{
					centerdistance[i][j]=tempdistance[i][j];
				}

		}
		else break;
		delete []tempdistance;
	}
	delete []centerdistance;

}
/************************************************************
*函數(shù)名稱		Zhongxinfa()
*參數(shù)			void
*返回值  		void
*函數(shù)功能		按照重心法對全體樣品進行分類
************************************************************/
void CCluster::Zhongxinfa()
{
	GetFeature();
	
	double	**centerdistance;//記錄類間距離
	double  T;//閾值
	int		distype;//距離的形式(歐氏、余弦。。。)
	int     i,j;
	double minous,maxous,mincos,maxcos,minbcos,maxbcos,mintan,maxtan;

	minous=MAX; mincos=MAX; minbcos=MAX; mintan=MAX;
	maxous=0; maxcos=0; maxbcos=0; maxtan=0;
	//計算四種距離模式的參考值
	for (  i=0;i<patternnum-1;i++)
		for ( j=i+1;j<patternnum;j++)
		{
			if (minous>GetDistance(m_pattern[i],m_pattern[j],1))
				minous=GetDistance(m_pattern[i],m_pattern[j],1);
			if (maxous<GetDistance(m_pattern[i],m_pattern[j],1))
				maxous=GetDistance(m_pattern[i],m_pattern[j],1);

			if (mincos>GetDistance(m_pattern[i],m_pattern[j],2))
				mincos=GetDistance(m_pattern[i],m_pattern[j],2);
			if (maxcos<GetDistance(m_pattern[i],m_pattern[j],2))
				maxcos=GetDistance(m_pattern[i],m_pattern[j],2);

			if (minbcos>GetDistance(m_pattern[i],m_pattern[j],3))
				minbcos=GetDistance(m_pattern[i],m_pattern[j],3);
			if (maxbcos<GetDistance(m_pattern[i],m_pattern[j],3))
				maxbcos=GetDistance(m_pattern[i],m_pattern[j],3);
			
			if (mintan>GetDistance(m_pattern[i],m_pattern[j],4))
				mintan=GetDistance(m_pattern[i],m_pattern[j],4);
			if (maxtan<GetDistance(m_pattern[i],m_pattern[j],4))
				maxtan=GetDistance(m_pattern[i],m_pattern[j],4);
		}
	DlgInfor mDlgInfor;
	mDlgInfor.ShowInfor(minous,maxous,mincos,maxcos,minbcos,maxbcos,mintan,maxtan);

	if (mDlgInfor.DoModal()==IDOK)
	{
		T=mDlgInfor.m_T;
		distype=mDlgInfor.m_DisType;
	}
	else return;

    //初始化
	for ( i=0;i<patternnum;i++)//每個樣品自成一類
	{
		m_pattern[i].category=i+1;
	}

	centerdistance=new double *[patternnum];//建立類間距離數(shù)組,centerdistance[i][j]表示i類和j類距離
	for ( i=1;i<patternnum;i++)
	{
		centerdistance[i]=new double [patternnum+1];
	}

	for ( i=1;i<patternnum;i++)
		for (int j=i+1;j<=patternnum;j++)
		{
			centerdistance[i][j]=GetDistance(m_pattern[i-1],m_pattern[j-1],distype);
		}

	centernum=patternnum;
	
	
    while(1)
	{
		double td,**tempdistance;
		int ti,tj;//距離最小的類
		int numi,numj;//i,j類中的元素個數(shù)

		td=MAX;
		ti=0;
		tj=0;
		numi=0;
		numj=0;
		tempdistance= new double *[patternnum];//臨時記錄類間距離
		for (i=1;i<patternnum;i++)
		{
			tempdistance[i]=new double[patternnum+1];
		}

		for( i=1;i<centernum;i++)//找到距離最近的兩類:ti,tj,記錄最小距離td;
			for ( j=i+1;j<=centernum;j++)
			{
				if (td>centerdistance[i][j])	
				{
					td=centerdistance[i][j];
					ti=i;tj=j;
				}
			}

		if(td<T)//最小距離小于閾值,合并類i,j
		{
			for (int i=0;i<patternnum;i++)
			{
				if (m_pattern[i].category==ti)
					numi++;
				if (m_pattern[i].category==tj)
				{
					m_pattern[i].category=ti;
					numj++;
				}
				if (m_pattern[i].category>tj)
					m_pattern[i].category--;
			}
			centernum--;
			//重新計算類間距離,保持類號的連續(xù)性
			for (i=1;i<centernum;i++)
				for (int j=i+1;j<=centernum;j++)
				{
					if (i<ti)
					{
						if(j==ti)
							tempdistance[i][j]=sqrt (centerdistance[i][ti]*centerdistance[i][ti]*numi/(numi+numj)+centerdistance[i][tj]*centerdistance[i][tj]*numj/(numi+numj)-centerdistance[ti][tj]*centerdistance[ti][tj]*numi*numj/(numi+numj));
						else if (j>=tj)
							tempdistance[i][j]=centerdistance[i][j+1];
						else
							tempdistance[i][j]=centerdistance[i][j];
					
					}
					else if (i==ti)
					{
						if (j<tj)
							tempdistance[i][j]=sqrt (centerdistance[ti][j]*centerdistance[ti][j]*numi/(numi+numj)+centerdistance[j][tj]*centerdistance[j][tj]*numj/(numi+numj)-centerdistance[ti][tj]*centerdistance[ti][tj]*numi*numj/(numi+numj));
                        else
							tempdistance[i][j]=sqrt (centerdistance[ti][j+1]*centerdistance[ti][j+1]*numi/(numi+numj)+centerdistance[tj][j+1]*centerdistance[tj][j+1]*numj/(numi+numj)-centerdistance[ti][tj]*centerdistance[ti][tj]*numi*numj/(numi+numj));
					}
					else if((i>ti)&&(i<tj))
					{
						if(j<tj)
							tempdistance[i][j]=centerdistance[i][j];
						else
							tempdistance[i][j]=centerdistance[i][j+1];
					}
					else //i>=tj
					{
						tempdistance[i][j]=centerdistance[i+1][j+1];
					}
				}
			for (i=1;i<centernum;i++)
				for (int j=i+1;j<=centernum;j++)
				{
					centerdistance[i][j]=tempdistance[i][j];
				}

		}//end if(td<T)
		else break;
		delete []tempdistance;
	}
	delete  []centerdistance;
}
/************************************************************
*函數(shù)名稱		Leipingjunjulifa()
*參數(shù)			void
*返回值			void
*函數(shù)功能		按照類平均距離法法對全體樣品進行分類
************************************************************/
void CCluster::Leipingjunjulifa()
{
	GetFeature();
	
	double	**centerdistance;//記錄類間距離
	double T;//閾值
	int		distype;//距離的形式(歐氏、余弦。。。)
	double minous,maxous,mincos,maxcos,minbcos,maxbcos,mintan,maxtan;

	minous=MAX; mincos=MAX; minbcos=MAX; mintan=MAX;
	maxous=0; maxcos=0; maxbcos=0; maxtan=0;
	//計算四種距離模式的參考值
	for (int  i=0;i<patternnum-1;i++)
		for (int j=i+1;j<patternnum;j++)
		{
			if (minous>GetDistance(m_pattern[i],m_pattern[j],1))
				minous=GetDistance(m_pattern[i],m_pattern[j],1);
			if (maxous<GetDistance(m_pattern[i],m_pattern[j],1))
				maxous=GetDistance(m_pattern[i],m_pattern[j],1);

			if (mincos>GetDistance(m_pattern[i],m_pattern[j],2))
				mincos=GetDistance(m_pattern[i],m_pattern[j],2);
			if (maxcos<GetDistance(m_pattern[i],m_pattern[j],2))
				maxcos=GetDistance(m_pattern[i],m_pattern[j],2);

			if (minbcos>GetDistance(m_pattern[i],m_pattern[j],3))
				minbcos=GetDistance(m_pattern[i],m_pattern[j],3);
			if (maxbcos<GetDistance(m_pattern[i],m_pattern[j],3))
				maxbcos=GetDistance(m_pattern[i],m_pattern[j],3);
			
			if (mintan>GetDistance(m_pattern[i],m_pattern[j],4))
				mintan=GetDistance(m_pattern[i],m_pattern[j],4);
			if (maxtan<GetDistance(m_pattern[i],m_pattern[j],4))
				maxtan=GetDistance(m_pattern[i],m_pattern[j],4);
		}
	DlgInfor mDlgInfor;
	mDlgInfor.ShowInfor(minous,maxous,mincos,maxcos,minbcos,maxbcos,mintan,maxtan);
	if (mDlgInfor.DoModal()==IDOK)
	{
		T=mDlgInfor.m_T;
		distype=mDlgInfor.m_DisType;
	}
	else return;

    //初始化
	for ( i=0;i<patternnum;i++)//每個樣品自成一類
	{
		m_pattern[i].category=i+1;
	}

	centerdistance=new double *[patternnum];//建立類間距離數(shù)組,centerdistance[i][j]表示i類和j類距離
	for ( i=1;i<patternnum;i++)
	{
		centerdistance[i]=new double [patternnum+1];
	}

	for ( i=1;i<patternnum;i++)
		for (int j=i+1;j<=patternnum;j++)
		{
			centerdistance[i][j]=GetDistance(m_pattern[i-1],m_pattern[j-1],distype);
		}

	centernum=patternnum;

	while(1)
	{
		double td,**tempdistance;
		int ti,tj;//距離最小的類
		int numi,numj;//i,j類中的元素個數(shù)
		double dis1,dis2;

	    dis1=0;
		dis2=0;
		td=MAX;
		ti=0;
		tj=0;
		numi=0;
		numj=0;
		tempdistance= new double *[patternnum];//臨時記錄類間距離
		for (int i=1;i<patternnum;i++)
		{
			tempdistance[i]=new double[patternnum+1];
		}
		//找距離最近的兩類ti,tj,記錄最小距離td
		for( i=1;i<centernum;i++)
		{
			for (int j=i+1;j<=centernum;j++)
			{
				if (td>centerdistance[i][j])	
				{
					td=centerdistance[i][j];
					ti=i;tj=j;
				}
			}
		}

		if(td<T)//合并類ti,tj
		{
			centernum--;
			//對類間距離數(shù)組排序,以保持類號的連續(xù)性
			for (int i=1;i<centernum;i++)
				for (int j=i+1;j<=centernum;j++)
				{
					if (i<ti)
					{
						if(j==ti)
						{
							numi=0;numj=0;
							dis1=0;dis2=0;
							for (int m=0;m<patternnum;m++)
								if (m_pattern[m].category==i)
								{
									for (int n=0;n<patternnum;n++)
									{
										if (m_pattern[n].category==ti)
										{
											numi++;
											dis1+=GetDistance(m_pattern[m],m_pattern[n],distype)*GetDistance(m_pattern[m],m_pattern[n],distype);
										}
										if(m_pattern[n].category==tj)
										{
											numj++;
											dis2+=GetDistance(m_pattern[m],m_pattern[n],distype)*GetDistance(m_pattern[m],m_pattern[n],distype);
										}
									}
								}
                            tempdistance[i][j]=sqrt((dis1+dis2)/(numi+numj));
						}
						else if (j>=tj)
							tempdistance[i][j]=centerdistance[i][j+1];
						else
							tempdistance[i][j]=centerdistance[i][j];
					
					}
					else if (i==ti)
					{
						if (j<tj)
						{
							numi=0;numj=0;
							dis1=0;dis2=0;
							for (int m=0;m<patternnum;m++)
								if (m_pattern[m].category==j)
								{
									for (int n=0;n<patternnum;n++)
									{
										if (m_pattern[n].category==ti)
										{
											numi++;
											dis1+=GetDistance(m_pattern[m],m_pattern[n],distype)*GetDistance(m_pattern[m],m_pattern[n],distype);
										}
										if(m_pattern[n].category==tj)
										{
											numj++;
											dis2+=GetDistance(m_pattern[m],m_pattern[n],distype)*GetDistance(m_pattern[m],m_pattern[n],distype);
										}
									}
								}
                            tempdistance[i][j]=sqrt((dis1+dis2)/(numi+numj));
						
						}
                        else
						{
							numi=0;numj=0;
							dis1=0;dis2=0;
							for (int m=1;m<=patternnum;m++)
								if (m_pattern[m].category==(j+1))
								{
									for (int n=1;n<=patternnum;n++)
									{
										if (m_pattern[n].category==ti)
										{
											numi++;
											dis1+=GetDistance(m_pattern[m],m_pattern[n],distype)*GetDistance(m_pattern[m],m_pattern[n],distype);
										}
										if(m_pattern[n].category==tj)
										{
											numj++;
											dis2+=GetDistance(m_pattern[m],m_pattern[n],distype)*GetDistance(m_pattern[m],m_pattern[n],distype);
										}
									}
								}
                            tempdistance[i][j]=sqrt((dis1+dis2)/(numi+numj));
						
						}
					}
					else if((i>ti)&&(i<tj))
					{
						if(j<tj)
							tempdistance[i][j]=centerdistance[i][j];
						else
							tempdistance[i][j]=centerdistance[i][j+1];
					}
					else //i>=tj
					{
						tempdistance[i][j]=centerdistance[i+1][j+1];
					}
				}
			for (i=1;i<centernum;i++)
				for (int j=i+1;j<=centernum;j++)
				{
					centerdistance[i][j]=tempdistance[i][j];
				}

			for ( i=0;i<patternnum;i++)
			{
				if (m_pattern[i].category==tj)
					m_pattern[i].category=ti;
				if (m_pattern[i].category>tj)
					m_pattern[i].category--;
			}
			delete []tempdistance;
		}//end if(td<T)
		else break;
	}//end while
	delete []centerdistance;
}
/************************************************************
*函數(shù)名稱		Kjunzhi()
*參數(shù)			void
*返回值		    void
*函數(shù)功能		按照K均值對全體樣品進行分類
************************************************************/
void CCluster::Kjunzhi()
{

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91片在线免费观看| 欧美电影免费观看完整版| 日本韩国一区二区三区| 色呦呦一区二区三区| 欧美亚一区二区| 日韩欧美国产综合在线一区二区三区 | 久久久久久久综合日本| 国产日韩高清在线| 一区二区三区在线播| 日韩和的一区二区| 福利视频网站一区二区三区| 91色porny| 日韩欧美中文字幕精品| 久久精品免费在线观看| 亚洲成人免费视| 国产91丝袜在线播放九色| 在线观看网站黄不卡| 日韩视频免费观看高清完整版在线观看| 日韩久久久精品| 一区二区三区在线看| 加勒比av一区二区| 在线观看91视频| 精品国精品国产尤物美女| 亚洲另类色综合网站| 国产在线播精品第三| 欧美中文字幕一区二区三区 | 国产自产视频一区二区三区| 色av成人天堂桃色av| 久久久噜噜噜久噜久久综合| 日本 国产 欧美色综合| 91免费视频网址| 国产精品午夜久久| 久久99精品视频| 91精品国产入口| 亚洲韩国一区二区三区| 懂色av中文一区二区三区| 欧美一区二区三区免费观看视频| 自拍偷拍欧美激情| 色综合色狠狠综合色| 国产欧美日韩在线观看| 蜜臂av日日欢夜夜爽一区| 7799精品视频| 日韩av一二三| 精品久久久久久最新网址| 日韩成人精品在线| 日韩一区二区三区av| 蜜臀精品久久久久久蜜臀 | 国产午夜精品理论片a级大结局 | 久久综合久久久久88| 精品在线亚洲视频| 国产欧美一区视频| 成人黄色777网| 亚洲欧美偷拍三级| 一本色道久久综合亚洲精品按摩| 亚洲免费av在线| 在线观看91视频| 七七婷婷婷婷精品国产| 精品欧美一区二区久久| 国产原创一区二区| 中文字幕一区二区三| 欧美曰成人黄网| 蜜桃av一区二区三区| 久久久亚洲高清| 91免费看片在线观看| 日本中文字幕一区| 国产精品久久久久aaaa| 欧美在线播放高清精品| 久热成人在线视频| 中文字幕一区在线观看视频| 国内精品久久久久影院色| 一区二区三区精品视频在线| 成人av在线资源网| 亚洲欧美一区二区三区极速播放| 色八戒一区二区三区| 国产一区二区福利视频| 亚洲人成网站精品片在线观看| 欧美日韩一卡二卡| 大尺度一区二区| 奇米影视在线99精品| 亚洲品质自拍视频| 久久精品日产第一区二区三区高清版| 色屁屁一区二区| 国产不卡在线视频| 美国一区二区三区在线播放| 亚洲激情图片一区| 亚洲欧美中日韩| 精品国产1区二区| 777久久久精品| 欧美综合色免费| 日本韩国视频一区二区| 成人免费va视频| 国产精品亚洲人在线观看| 日韩在线a电影| 亚洲电影第三页| 亚洲不卡在线观看| 一卡二卡三卡日韩欧美| 亚洲美女区一区| 亚洲天堂网中文字| 国产精品三级视频| 国产精品家庭影院| 国产精品灌醉下药二区| 亚洲欧洲日韩在线| 国产精品视频一二三区| 中文字幕乱码亚洲精品一区| 国产三级三级三级精品8ⅰ区| 国产婷婷一区二区| 中文字幕亚洲视频| 亚洲专区一二三| 亚洲第一福利视频在线| 日本女优在线视频一区二区| 蜜桃传媒麻豆第一区在线观看| 久久se这里有精品| 成人激情免费电影网址| 91小视频在线观看| 欧美一区二区在线看| 精品处破学生在线二十三| 国产日韩精品一区二区三区| 亚洲欧洲精品一区二区精品久久久| 国产精品传媒入口麻豆| 亚洲香蕉伊在人在线观| 国产一区二区导航在线播放| 99国产欧美另类久久久精品| 欧美午夜一区二区| 精品久久久久av影院| 亚洲欧美aⅴ...| 韩国视频一区二区| 99久久综合狠狠综合久久| 欧美精品乱人伦久久久久久| 91精品国产综合久久久久久久| 欧美一级高清片在线观看| 久久蜜桃av一区精品变态类天堂| 中文字幕不卡在线播放| 亚洲伦理在线精品| 麻豆国产精品官网| 色综合欧美在线视频区| 精品国产三级电影在线观看| 亚洲视频网在线直播| 美美哒免费高清在线观看视频一区二区| 精品一区二区三区视频在线观看| 精东粉嫩av免费一区二区三区| 91在线精品一区二区| 精品电影一区二区| 亚洲一区中文在线| www.视频一区| 欧美不卡一区二区三区| 亚洲一二三区在线观看| 国产91综合一区在线观看| 91黄色激情网站| 久久久99久久| 日韩精品欧美精品| 欧美午夜寂寞影院| 久久亚洲一区二区三区明星换脸| 日韩极品在线观看| 在线免费观看视频一区| 中文字幕不卡在线观看| 国产乱色国产精品免费视频| 欧美日韩国产高清一区| 日韩一区在线看| 国产精品综合一区二区三区| 欧美美女一区二区三区| 一区二区三区在线观看国产| 国产精品66部| 国产亚洲女人久久久久毛片| 天堂va蜜桃一区二区三区漫画版| 99精品偷自拍| 亚洲精品久久久蜜桃| 91在线视频网址| 亚洲精品国产第一综合99久久| 成人午夜视频福利| 亚洲欧洲一区二区三区| 色综合久久久网| 国产精品高潮久久久久无| 美女久久久精品| 日韩色在线观看| 国产一区二区在线观看视频| 国产欧美va欧美不卡在线| 91小视频免费观看| 亚洲福利电影网| 91精品欧美一区二区三区综合在| 午夜不卡在线视频| 国产日韩成人精品| 色婷婷综合在线| 日韩精品久久理论片| 欧美国产综合一区二区| 91视频一区二区| 国产精品女主播在线观看| 国产九九视频一区二区三区| 亚洲色图欧美在线| 日韩欧美一区二区三区在线| 国产成人av电影免费在线观看| 国产精品福利一区二区| ww久久中文字幕| 欧美日韩一区二区三区高清| 精品亚洲porn| 性做久久久久久久免费看| 国产丝袜美腿一区二区三区| 欧美精品aⅴ在线视频| www.亚洲精品| 韩国精品免费视频| 亚洲一级二级三级在线免费观看|