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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? dib.cpp

?? 該程序實現了運動識別系統的vc++環境編程
?? CPP
?? 第 1 頁 / 共 3 頁
字號:
  
	//	*r=r11;
		//*g=g11;
	//	*b=b11;
//	return (0x00ffffff&((b<<16)|(g<<8)|r));
}

HANDLE DIB::CopyHandle( HANDLE hSrc)
{	
	HANDLE hDst;
	LPBITMAPINFOHEADER lpbi;
	int width,height;
	lpbi = (LPBITMAPINFOHEADER)GlobalLock(hSrc);
	width = lpbi->biWidth;
	height = lpbi->biHeight;
	hDst = GlobalAlloc(GMEM_MOVEABLE,lpbi->biSize+lpbi->biSizeImage);
	if(!hDst)
		return NULL;
	LPBYTE lpDest;
	lpDest = (LPBYTE)GlobalLock(hDst);
	memcpy(lpDest,(LPBYTE)lpbi,lpbi->biSize+lpbi->biSizeImage);
	GlobalUnlock(hSrc);
	GlobalUnlock(hDst);
	return hDst;

}
HANDLE  DIB::  Gradient(HANDLE hDIB)
{
	LPBITMAPINFOHEADER lpbi;
	lpbi = (LPBITMAPINFOHEADER)GlobalLock(hDIB);
	int width = lpbi->biWidth;
	int height = lpbi->biHeight;
	long lOffset;
	LPBYTE lpS,lpD;
	WORD wBytesPerLine = this->BytePerLine(hDIB);
	HANDLE hNewDIB;
	hNewDIB = GlobalAlloc(GMEM_MOVEABLE,(DWORD)(lpbi->biSize+lpbi->biSizeImage));
	if(!hNewDIB)
	{
		AfxMessageBox("分配內存失敗");
		return NULL;
	}
	lpS = (LPBYTE)lpbi;
	lpD =(LPBYTE) GlobalLock(hNewDIB);
	memcpy(lpD,lpS,sizeof(BITMAPINFOHEADER));
	lpS = this->FindDIBBits(hDIB);
	lpD = this->FindDIBBits(hNewDIB);
	int color1,color2;
	for(int i=1;i<height-1;i++)
		for(int j=1;j<width-1;j++)
		{
			lOffset = this->PixelOffset(i+1,j+1,wBytesPerLine);
			color1 = *(lpS+lOffset);
			lOffset = this->PixelOffset(i-1,j-1,wBytesPerLine);
			color2 = *(lpS+lOffset);
			lOffset = this->PixelOffset(i,j,wBytesPerLine);
			*(lpD+lOffset++) = abs(color2-color1)*3;
			*(lpD+lOffset++) = abs(color2-color1)*3;
			*(lpD+lOffset++) = abs(color2-color1)*3;

		}
		for(i =0;i<height;i++)
		{
			lOffset = this->PixelOffset(i,0,wBytesPerLine);
			*(lpD+lOffset++) =0;
			*(lpD+lOffset++) =0;
			*(lpD+lOffset++) =0;
		}

		for(i =0;i<height;i++)
		{
			lOffset = this->PixelOffset(i,width-1,wBytesPerLine);
			*(lpD+lOffset++) =0;
			*(lpD+lOffset++) =0;
			*(lpD+lOffset++) =0;
		}
		for(i =0;i<width;i++)
		{
			lOffset = this->PixelOffset(height-1,i,wBytesPerLine);
			*(lpD+lOffset++) =0;
			*(lpD+lOffset++) =0;
			*(lpD+lOffset++) =0;
		}
		for(i =0;i<width;i++)
		{
			lOffset = this->PixelOffset(0,i,wBytesPerLine);
			*(lpD+lOffset++) =0;
			*(lpD+lOffset++) =0;
			*(lpD+lOffset++) =0;
		}

		GlobalUnlock(hNewDIB);
		GlobalUnlock(hDIB);
		return hNewDIB;
}

//函數尋找圖片中的特征區域的中心點
void DIB::LocateImporntPoint(HANDLE hDIB, int Radius, CPoint *pPoint)
{
	LPBITMAPINFOHEADER lpbi;
	lpbi = (LPBITMAPINFOHEADER)GlobalLock(hDIB);
	int width ,height;
	width = lpbi->biWidth;
	height = lpbi->biHeight;
	WORD wBytesPerLine;
	wBytesPerLine = this->BytePerLine(hDIB);
	LPBYTE lpData;
	lpData = this->FindDIBBits(hDIB);
	int tempsum=0,sum=0;//定義兩個變量用來記數
	long lOffset;
	//掃描整個圖片(邊緣點除外)尋找特征區域
	for(int i=Radius;i<height-Radius;i++)
		for(int j= Radius;j<width-Radius;j++)
		{	tempsum =0;
			//掃描以Radius×2+1為邊長的正方形區域
			for(int k1=-Radius;k1<=Radius;k1++)
				for(int k2 =-Radius;k2<=Radius;k2++)
				{	
					lOffset = this->PixelOffset(i+k1,j+k2,wBytesPerLine);
					int color = *(lpData+lOffset);
					tempsum +=color;//累加象素值
				}
				if(tempsum>sum)//如果得到的累計象素值大于已經得到的最大值
				{	
					//更改累計象素值大小
					sum = tempsum;
					//更改特征區域中心點
					(pPoint->x) = j;
					(pPoint->y) = i;
				   

				}
		}
	//下面的代碼把特征區域的邊框設置成白色
	for( i = -Radius;i<=Radius;i++)
	{
		lOffset = this->PixelOffset(pPoint->y-Radius,pPoint->x +i,wBytesPerLine);
		*(lpData+lOffset++) = 255;
		*(lpData+lOffset++) = 255;
		*(lpData+lOffset++) = 255;
	}
	for( i = -Radius;i<=Radius;i++)
	{
		lOffset = this->PixelOffset(pPoint->y+Radius,pPoint->x +i,wBytesPerLine);
		*(lpData+lOffset++) = 255;
		*(lpData+lOffset++) = 255;
		*(lpData+lOffset++) = 255;
	}
	for( i = -Radius;i<=Radius;i++)
	{
		lOffset = this->PixelOffset(pPoint->y+i,pPoint->x-Radius ,wBytesPerLine);
		*(lpData+lOffset++) = 255;
		*(lpData+lOffset++) = 255;
		*(lpData+lOffset++) = 255;
	}
	for( i = -Radius;i<=Radius;i++)
	{
		lOffset = this->PixelOffset(pPoint->y+i,pPoint->x+Radius,wBytesPerLine);
		*(lpData+lOffset++) = 255;
		*(lpData+lOffset++) = 255;
		*(lpData+lOffset++) = 255;
	}
	lOffset = this->PixelOffset(pPoint->y,pPoint->x ,wBytesPerLine);
	*(lpData+lOffset++) = 0;
	*(lpData+lOffset++) = 255;
	*(lpData+lOffset++) = 0;

		GlobalUnlock(hDIB);
}


#define THRESHOLD (RADIUS*2+1)*(RADIUS*2+1)*15
//函數在一幅圖片中尋找匹配的中心點
BOOL DIB::MatchImportantPoint(HANDLE hDIB,int CharaterInfo[RADIUS*2+1][RADIUS*2+1][3],CPoint *ImPoint)
{
	LPBITMAPINFOHEADER lpbi;
	lpbi = (LPBITMAPINFOHEADER)GlobalLock(hDIB);
	int width = lpbi->biWidth;
	int height = lpbi->biHeight;
	LPBYTE lpData = this->FindDIBBits(hDIB);
    WORD wBytesPerLine = this->BytePerLine(hDIB);
	long lOffset;
	long sum =100000,tempsum;
	//掃描整個圖片(邊緣點)除外
	for(int i=RADIUS ;i<height-RADIUS;i++)
		for(int j=RADIUS;j<width-RADIUS;j++)
		{	
			tempsum =0;
			//掃描以RADIUS*2+1為邊長的正方形區域
			for(int k=-RADIUS;k<=RADIUS;k++)
				for(int kk=-RADIUS;kk<=RADIUS;kk++)
				{
					//計算當前正方形和已知特征區域的顏色差值

				lOffset = this->PixelOffset(i+k,j+kk,wBytesPerLine);
				int colorblue = abs(*(lpData+lOffset++)-CharaterInfo[k+RADIUS][kk+RADIUS][0]);
				int colorgreen = abs(*(lpData+lOffset++)-CharaterInfo[k+RADIUS][kk+RADIUS][1]);
				int colorred = abs(*(lpData+lOffset++)-CharaterInfo[k+RADIUS][kk+RADIUS][2]);
				tempsum +=colorgreen+colorblue+colorred;
				}
				if(tempsum<sum)
				{  //更新差值
					sum = tempsum;
					//更改特征坐標點
					ImPoint->x = j;
					ImPoint->y = i;
				}
		}

		if(sum <THRESHOLD){//找到滿足條件的區域
		//下面的代碼把找到的區域的邊框設置成為白色
		for(i =-RADIUS;i<=RADIUS;i++)
		{
			lOffset = this->PixelOffset(ImPoint->y-RADIUS,ImPoint->x+i,wBytesPerLine);
			*(lpData+lOffset++) = 255;
			*(lpData+lOffset++) = 255;
			*(lpData+lOffset++) = 255;

		}

		for(i =-RADIUS;i<=RADIUS;i++)
		{
			lOffset = this->PixelOffset(ImPoint->y+RADIUS,ImPoint->x+i,wBytesPerLine);
			*(lpData+lOffset++) = 255;
			*(lpData+lOffset++) = 255;
			*(lpData+lOffset++) = 255;

		}
		for(i =-RADIUS;i<=RADIUS;i++)
		{
			lOffset = this->PixelOffset(ImPoint->y+i,ImPoint->x+RADIUS,wBytesPerLine);
			*(lpData+lOffset++) = 255;
			*(lpData+lOffset++) = 255;
			*(lpData+lOffset++) = 255;

		}
		for(i =-RADIUS;i<=RADIUS;i++)
		{
			lOffset = this->PixelOffset(ImPoint->y+i,ImPoint->x-RADIUS,wBytesPerLine);
			*(lpData+lOffset++) = 255;
			*(lpData+lOffset++) = 255;
			*(lpData+lOffset++) = 255;

		}
		GlobalUnlock(hDIB);
		return true;
		}
		else AfxMessageBox("Can't find the corresponding point!");
	GlobalUnlock(hDIB);
	return false;
}
//比較兩張圖片的相似度
BOOL DIB::ComPareImg(HANDLE hDIB1, HANDLE hDIB2 ,CPoint pt1,CPoint pt2)
{
	if(abs(pt1.x-pt2.x)>3 || abs(pt1.y -pt2.y)>3)//圖象偏差過大
	{	
		AfxMessageBox("Imgs Offset are too big");
		return false;
	}
	LPBITMAPINFOHEADER lpbi1,lpbi2;
	lpbi1 = (LPBITMAPINFOHEADER)GlobalLock(hDIB1);
	int width1 = lpbi1->biWidth;
	int height1 = lpbi1->biHeight;
	lpbi2 = (LPBITMAPINFOHEADER)GlobalLock(hDIB2);
	int width2 = lpbi2->biWidth;
	int height2 = lpbi2->biHeight;
	if(width1 != width2 || height1 != height2)//圖象長寬尺寸不同
	{
		GlobalUnlock(hDIB1);
		GlobalUnlock(hDIB2);
		AfxMessageBox("Img is not same size");
		return false;
	}
	LPBYTE lpData1,lpData2;
	lpData1 = this->FindDIBBits(hDIB1);
	lpData2 = this->FindDIBBits(hDIB2);
	WORD wBytesPerLine = this->BytePerLine(hDIB1);
	int xleft,xright,ytop,ybottom;
	//下面的一段代碼實現圖象對齊
	if(pt1.x>=pt2.x)//第一幅圖得特征中心點比第二幅圖偏右
	{	
	
		xleft = pt2.x;//要處理得左邊得象素點個數
		xright =width-pt1.x-1;//要處理得右邊得象素點個數
	}
			
	else//第一幅圖得特征中心點比第二幅圖偏左
	{	
	
		xleft = pt1.x;
		xright = width1-pt2.x-1;
	}
	
	if(pt1.y >=pt2.y)//第一幅圖得特征中心點得位置偏上
	{	
	
		ytop = pt2.y;//要處理得中心點上面得象素個數
		ybottom = height1-pt1.y-1;//要處理得中心點下面得象素個數

	}

	else//第一幅圖得特征中心點得位置偏下
	{	
		
		ytop = pt1.y;
		ybottom = height1-pt2.y-1;
	}
	long sum=0;
	long lOffset;
	//計算兩幅圖片交叉區域得象素差值
	for(int i=-ytop;i<=ybottom;i++)
		for(int j=-xleft;j<=xright;j++)
		{	
			//第一幅圖
			lOffset = this->PixelOffset(i+pt1.y,j+pt1.x,wBytesPerLine);
			int c11 = *(lpData1+lOffset++);
			int c12 = *(lpData1+lOffset++);
			int c13 = *(lpData1+lOffset++);
			//第二幅圖
			lOffset = this->PixelOffset(i+pt2.y,j+pt2.x,wBytesPerLine);
			int c21 = *(lpData2+lOffset++);
			int c22 = *(lpData2+lOffset++);
			int c23 = *(lpData2+lOffset++);
			//計算差值
			sum += abs(c11-c21)+abs(c12-c22)+abs(c13-c23);
		}
		GlobalUnlock(hDIB1);
		GlobalUnlock(hDIB2);
	if(sum>width1*height1*3*2)//判斷是否相似
		return false;
	else 
		return true;

}

BOOL DIB::  CompareImg2(HANDLE hDIBBK,HANDLE hDIBCurrent,CPoint pt1,CPoint pt2)
{
	if(abs(pt1.x-pt2.x)>3 || abs(pt1.y -pt2.y)>3)
	{	
		AfxMessageBox("Imgs Offset are too big");
		return false;
	}
	LPBITMAPINFOHEADER lpbi1,lpbi2;
	lpbi1 = (LPBITMAPINFOHEADER)GlobalLock(hDIBBK);
	int width1 = lpbi1->biWidth;
	int height1 = lpbi1->biHeight;
	lpbi2 = (LPBITMAPINFOHEADER)GlobalLock(hDIBCurrent);
	int width2 = lpbi2->biWidth;
	int height2 = lpbi2->biHeight;
	if(width1 != width2 || height1 != height2)
	{
		GlobalUnlock(hDIBBK);
		GlobalUnlock(hDIBCurrent);
		AfxMessageBox("Img is not same size");
		return false;
	}
	LPBYTE lpData1,lpData2;
	lpData1 = this->FindDIBBits(hDIBBK);
	lpData2 = this->FindDIBBits(hDIBCurrent);
	WORD wBytesPerLine = this->BytePerLine(hDIBBK);
	int xleft,xright,ytop,ybottom;

	if(pt1.x>=pt2.x)
	{	
	
		xleft = pt2.x;
		xright =width1-pt1.x-1;
	}
			
	else
	{	
	
		xleft = pt1.x;
		xright = width1-pt2.x-1;
	}
	
	if(pt1.y >=pt2.y)
	{	
	
		ytop = pt2.y;
		ybottom = height1-pt1.y-1;

	}

	else
	{	
		
		ytop = pt1.y;
		ybottom = height1-pt2.y-1;
	}
	long sum=0;
	long lOffset;
	


	for(int i=-ytop;i<=ybottom;i++)
		for(int j=-xleft;j<=xright;j++)
		{	
		
			lOffset = this->PixelOffset(i+pt1.y,j+pt1.x,wBytesPerLine);
			int c11 = *(lpData1+lOffset++);
			int c12 = *(lpData1+lOffset++);
			int c13 = *(lpData1+lOffset++);
			lOffset = this->PixelOffset(i+pt2.y,j+pt2.x,wBytesPerLine);
			int c21 = *(lpData2+lOffset++);
			int c22 = *(lpData2+lOffset++);
			int c23 = *(lpData2+lOffset++);
			lOffset = this->PixelOffset(i+pt2.y,j+pt2.x,wBytesPerLine);
			*(lpData2+lOffset++) = abs(c11-c21);
			*(lpData2+lOffset++) = abs(c12-c22);
			*(lpData2+lOffset++) = abs(c13-c23);
		}
		for(i =0;i<height1;i++)
			for(int j=0;j<width1;j++)
			{
			if(i<pt2.y-ytop || i>pt2.y+ybottom||j<pt2.x-xleft || j >pt2.x+xright)
			{
				lOffset = this->PixelOffset(i,j,wBytesPerLine);
				*(lpData2+lOffset++) = 0;
				*(lpData2+lOffset++) = 0;
				*(lpData2+lOffset++) = 0;
			}
			}
		
		GlobalUnlock(hDIBBK);
		GlobalUnlock(hDIBCurrent);
		return true;
	
}



BOOL DIB::IsScaterPoint(int x, int y, int width, int height, LPBYTE lpData,WORD wBytesPerLine,  int threshold,bool lab[m_HEIGHT][m_WIDTH])
{
	long lOffset;
	lOffset = this->PixelOffset(y,x,wBytesPerLine);
	if(*(lpData+lOffset) == 255 && lab[y][x] == false)
	{
		this->lenth++;
		lab[y][x] = true;
	if(this->lenth >= threshold)
		return true;
	if(x+1<width && lab[y][x+1] == false)
	{	IsScaterPoint(x+1,y,width,height,lpData,wBytesPerLine,threshold,lab);
		if(this->lenth>=threshold)
			return true;
		
	}
	if(x-1>=0 && lab[y][x-1] == false)
	{
		(IsScaterPoint(x-1,y,width,height,lpData,wBytesPerLine,threshold,lab));
		if(this->lenth>=threshold)
			return true;
		
	}
	
	if(y-1>=0 && lab[y-1][x]==false)
	{
		(IsScaterPoint(x,y-1,width,height,lpData,wBytesPerLine,threshold,lab));
		if(this->lenth>=threshold)
			return true;
		
	}
	if(y+1<height && lab[y+1][x]==false)
	{	(IsScaterPoint(x,y+1,width,height,lpData,wBytesPerLine,threshold,lab));
			if(this->lenth>=threshold)
			return true;
			
	}
	if(y+1<height  && x+1 <width && lab[y+1][x+1]==false)
	{	(IsScaterPoint(x+1,y+1,width,height,lpData,wBytesPerLine,threshold,lab));
			if(this->lenth>=threshold)
			return true;
			
	}
	if(y+1<height && x-1 >=0 && lab[y+1][x-1]==false)
	{	(IsScaterPoint(x-1,y+1,width,height,lpData,wBytesPerLine,threshold,lab));
			if(this->lenth>=threshold)
			return true;
			
	}
	if(y-1>=0 && x-1 >=0 &&lab[y-1][x-1]==false)
	{	(IsScaterPoint(x-1,y-1,width,height,lpData,wBytesPerLine,threshold,lab));
			if(this->lenth>=threshold)
			return true;
			
	}
	if(y-1<height && x+1<width && lab[y+1][x]==false)
	{	(IsScaterPoint(x+1,y-1,width,height,lpData,wBytesPerLine,threshold,lab));
			if(this->lenth>=threshold)
			return true;
			
	}
	}
		return false;
}
//函數得到邊界得中心點
CPoint DIB:: GetEdgeCenter(HANDLE hDIB)
{
	LPBITMAPINFOHEADER lpbi;
	lpbi = (LPBITMAPINFOHEADER)GlobalLock(hDIB);
	int width = lpbi->biWidth;
	int height = lpbi->biHeight;
	WORD wBytesPerLine = this->BytePerLine(hDIB);
	LPBYTE lpData = this->FindDIBBits(hDIB);
	long lOffset;
	int x =0,y =0,num =0;
	//對整幅圖片進行掃描
	for(int i=0;i<height;i++)
		for(int j=0;j<width;j++)
		{
			lOffset = this->PixelOffset(i,j,wBytesPerLine);
			if(*(lpData+lOffset) ==255)//如果是白色象素
			{
				x +=j;//中心點得橫坐標和縱坐標加上當前得橫坐標和縱坐標
				y +=i;
				num++;
			}
		}
		//得到結果坐標點
		CPoint result;
		result.x = x/num;
		result.y = y/num;
		//把中心點設置為綠色
		lOffset = this->PixelOffset(result.y,result.x,wBytesPerLine);
		*(lpData+lOffset++) = 0;
		*(lpData+lOffset++) = 255;
		*(lpData+lOffset++) = 0;
		return result;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久精品亚洲麻豆av一区二区| 亚洲成av人片在线| 国产乱对白刺激视频不卡| 日韩小视频在线观看专区| 美女爽到高潮91| 久久久综合九色合综国产精品| 国产精品亚洲综合一区在线观看| 久久精品日韩一区二区三区| 波多野结衣精品在线| 亚洲激情成人在线| 3atv一区二区三区| 国产乱码精品1区2区3区| 日韩毛片高清在线播放| 欧美亚洲国产bt| 久久精品国产精品青草| 国产精品网站在线播放| 色婷婷av一区二区| 免费美女久久99| 欧美激情综合网| 91极品视觉盛宴| 麻豆精品国产传媒mv男同 | 亚洲精品中文字幕乱码三区| 91看片淫黄大片一级在线观看| 亚洲精品乱码久久久久久黑人| 欧美日韩精品久久久| 激情六月婷婷久久| 亚洲精选免费视频| 精品奇米国产一区二区三区| 色综合天天性综合| 麻豆91在线看| 最新久久zyz资源站| 在线综合视频播放| 成+人+亚洲+综合天堂| 日韩精品视频网| 国产精品久久久久久亚洲毛片| 欧美日韩免费高清一区色橹橹| 国产精品99久| 午夜在线成人av| 一区在线播放视频| 日韩精品中文字幕一区| 91啦中文在线观看| 国产suv一区二区三区88区| 亚洲bt欧美bt精品| 国产激情一区二区三区四区| 欧美老人xxxx18| 国产成人av电影在线| 日av在线不卡| 一区二区在线观看免费| 国产日产欧产精品推荐色 | 在线播放欧美女士性生活| 粉嫩一区二区三区性色av| 日本欧美久久久久免费播放网| 自拍偷拍国产精品| 久久精品欧美日韩精品| 在线成人av网站| 91黄色激情网站| 成人av在线资源网| 国产成人免费高清| 韩国成人精品a∨在线观看| 日本亚洲免费观看| 午夜av一区二区三区| 一个色在线综合| 亚洲另类中文字| 亚洲欧美一区二区不卡| 亚洲国产精品99久久久久久久久 | 国产suv精品一区二区三区| 天堂va蜜桃一区二区三区| 亚洲乱码国产乱码精品精可以看 | 国产剧情在线观看一区二区 | 久久丁香综合五月国产三级网站| 亚洲国产精品久久人人爱| 亚洲老妇xxxxxx| 日韩一区中文字幕| √…a在线天堂一区| 一区二区中文视频| 亚洲欧洲av色图| 亚洲精品美国一| 亚洲在线视频一区| 亚洲最色的网站| 亚洲无人区一区| 午夜视频在线观看一区| 婷婷综合在线观看| 日本午夜一区二区| 狠狠色丁香婷婷综合久久片| 久久久国产精品午夜一区ai换脸| 免费成人av在线| 日韩精品一二区| 日本不卡视频在线| 男人操女人的视频在线观看欧美| 麻豆精品一区二区三区| 激情深爱一区二区| 成人精品视频一区| 97国产精品videossex| 在线观看区一区二| 欧美调教femdomvk| 日韩一区二区三区视频在线 | 久久综合久久综合久久| 久久精品一级爱片| 成人免费小视频| 丝袜脚交一区二区| 精品一区二区三区影院在线午夜 | 在线观看91精品国产麻豆| 欧美高清精品3d| 久久人人97超碰com| 自拍偷在线精品自拍偷无码专区| 亚洲午夜久久久久久久久久久| 日本在线不卡视频| 日本一道高清亚洲日美韩| 日韩午夜小视频| 欧美精品一区二区三区高清aⅴ| 久久亚洲综合色一区二区三区 | 久久精品人人做人人爽97| 国产精品久久久久久亚洲伦| 亚洲一区二区欧美激情| 蜜臀va亚洲va欧美va天堂 | 色婷婷综合久久| 日韩欧美专区在线| 国产精品三级电影| 婷婷激情综合网| 成人小视频在线观看| 欧美精品久久一区二区三区| 久久久国际精品| 亚洲国产色一区| 国产很黄免费观看久久| 欧洲色大大久久| 欧美激情一区不卡| 天天综合天天综合色| 成人午夜视频在线| 欧美一区二区视频在线观看2020| 国产精品久久久久久久久久免费看| 偷窥少妇高潮呻吟av久久免费| 91农村精品一区二区在线| 国产精品亚洲第一区在线暖暖韩国| 色视频欧美一区二区三区| 久久久久久97三级| 天天综合网 天天综合色| 99热这里都是精品| 欧美精品一区二区三区四区| 亚洲成人动漫精品| 99re热这里只有精品免费视频| 精品国产乱码久久久久久老虎| 亚洲国产精品久久久男人的天堂| av成人免费在线| 久久精品这里都是精品| 久久av老司机精品网站导航| 欧美日韩三级在线| 亚洲天天做日日做天天谢日日欢| 韩国一区二区在线观看| 欧美一区二区三区视频在线| 亚洲午夜一区二区| 97se狠狠狠综合亚洲狠狠| 国产日韩欧美精品一区| 精久久久久久久久久久| 欧美日韩和欧美的一区二区| 亚洲免费观看视频| 一本大道久久a久久综合婷婷| 日本一区二区三区四区| 久久国产夜色精品鲁鲁99| 日韩亚洲欧美综合| 秋霞午夜av一区二区三区| 欧美主播一区二区三区美女| 欧美日韩国产综合草草| 亚洲精品中文字幕在线观看| 97久久超碰精品国产| 中文字幕精品三区| 国产精品原创巨作av| 精品国产a毛片| 国产一区二区三区免费看| 日韩欧美专区在线| 久久成人免费电影| 精品久久久久99| 国产精品一区一区| 欧美国产精品久久| 99视频国产精品| 一区二区欧美视频| 欧美日韩精品二区第二页| 日韩 欧美一区二区三区| 日韩一区二区视频在线观看| 精久久久久久久久久久| 久久久久亚洲蜜桃| 国产99久久久久久免费看农村| 国产三级精品三级| av高清久久久| 亚洲资源在线观看| 日韩一区二区在线观看视频| 国产一区二区免费视频| 日本一区二区三区久久久久久久久不| 成人免费视频免费观看| 亚洲人成网站在线| 欧美日韩精品一区二区在线播放| 免费成人在线视频观看| 亚洲精品成人精品456| 亚洲一区在线观看免费 | 亚洲成年人影院| 91精品国产高清一区二区三区蜜臀| 麻豆精品一区二区av白丝在线| 久久九九99视频| 欧美性生活影院| 精品一区二区三区不卡| 国产精品久久久久9999吃药|