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

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

?? omlib.cpp

?? 圖像處理軟件,功能比較基礎
?? CPP
?? 第 1 頁 / 共 5 頁
字號:

	unsigned char **aveImage;      /*圖像的固定尺寸平均值*/
    unsigned char **smoothImage1;  /*前一次迭代平滑的結果*/
    unsigned char **smoothImage2;  /*本次迭代平滑的結果*/

	imageHeight=Row;
	imageWidth=Col;

    aveImage=(unsigned char**)fspace_2d(imageHeight,imageWidth);
    smoothImage1=(unsigned char**)fspace_2d(imageHeight,imageWidth);
    smoothImage2=(unsigned char**)fspace_2d(imageHeight,imageWidth);


    /*start to iterately smoothing*/
    for(i=0; i<imageHeight; i++)
    for(j=0; j<imageWidth; j++) smoothImage1[i][j] = OrigImg[i][j];
	a=0;    /*標記循環是否結束?*/
	while(a==0)
	{
    /*求取圖像的固定尺寸平均值*/
		for(i=n;i<imageHeight-n;i++)
		    for(j=n;j<imageWidth-n;j++)
			{
				s=0;
				for(k=i-n;k<=i+n;k++)
					for(m=j-n;m<=j+n;m++)
						s=s+smoothImage1[k][m];
				aveImage[i][j]=s/((2*n+1)*(2*n+1));
			}
		
        for(i=0;i<n;i++)
	        for(j=0;j<imageWidth;j++)
    			aveImage[i][j]=aveImage[i+n][j];

        for(i=imageHeight-n;i<imageHeight;i++)
    	    for(j=0;j<imageWidth;j++)
	    		aveImage[i][j]=aveImage[i-n][j];

        for(j=0;j<n;j++)
    	    for(i=0;i<imageHeight;i++)
	    		aveImage[i][j]=aveImage[i][j+n];

        for(j=imageWidth-n;j<imageWidth;j++)
    	    for(i=0;i<imageHeight;i++)
    			aveImage[i][j]=aveImage[i][j-n];


	/*對每一點,尋找五個區域中均勻性最好的區域,并以此區域的平均值作為平滑值*/
		for(i=2*n;i<imageHeight-2*n;i++)
			for(j=2*n;j<imageWidth-2*n;j++)
			{
			/*求五個區域的均勻性*/
				h0=abs(aveImage[i+n][j-n]+aveImage[i+n][j+n]-aveImage[i-n][j-n]-aveImage[i-n][j+n])+
					abs(aveImage[i-n][j+n]+aveImage[i+n][j+n]-aveImage[i-n][j-n]-aveImage[i+n][j-n]);
				h1=abs(aveImage[i][j-2*n]+aveImage[i][j]-aveImage[i-2*n][j-2*n]-aveImage[i-2*n][j])+
					abs(aveImage[i-2*n][j]+aveImage[i][j]-aveImage[i-2*n][j-2*n]-aveImage[i][j-2*n]);
				h2=abs(aveImage[i][j]+aveImage[i][j+2*n]-aveImage[i-2*n][j]-aveImage[i-2*n][j+2*n])+
					abs(aveImage[i-2*n][j+2*n]+aveImage[i][j+2*n]-aveImage[i-2*n][j]-aveImage[i][j]);
				h3=abs(aveImage[i+2*n][j-2*n]+aveImage[i+2*n][j]-aveImage[i][j-2*n]-aveImage[i][j])+
					abs(aveImage[i][j]+aveImage[i+2*n][j]-aveImage[i][j-2*n]-aveImage[i+2*n][j-2*n]);
				h4=abs(aveImage[i+2*n][j]+aveImage[i+2*n][j+2*n]-aveImage[i][j]-aveImage[i][j+2*n])+
					abs(aveImage[i][j+2*n]+aveImage[i+2*n][j+2*n]-aveImage[i][j]-aveImage[i+2*n][j]);

			/*尋找五個區域中均勻性最好的區域,并以此區域的平均值作為平滑值*/
				if((h0<=h1)&&(h0<=h2)&&(h0<=h3)&&(h0<=h4))
					smoothImage2[i][j]=aveImage[i][j];

				else if((h1<=h0)&&(h1<=h2)&&(h1<=h3)&&(h1<=h4))
					smoothImage2[i][j]=aveImage[i-n][j-n];

				else if((h2<=h0)&&(h2<=h1)&&(h2<=h3)&&(h2<=h4))
					smoothImage2[i][j]=aveImage[i-n][j+n];

				else if((h3<=h0)&&(h3<=h1)&&(h3<=h2)&&(h3<=h4))
					smoothImage2[i][j]=aveImage[i+n][j-n];

				else if((h4<=h0)&&(h4<=h1)&&(h4<=h2)&&(h4<=h3))
					smoothImage2[i][j]=aveImage[i+n][j+n];
          }


		for(i=0;i<2*n;i++)
			for(j=0;j<imageWidth;j++)
			    smoothImage2[i][j]=smoothImage2[2*n][j];

		for(i=imageHeight-2*n;i<imageHeight;i++)
			for(j=0;j<imageWidth;j++)
			    smoothImage2[i][j]=smoothImage2[imageHeight-2*n-1][j];

		for(i=0;i<imageHeight;i++)
			for(j=0;j<2*n;j++)
			    smoothImage2[i][j]=smoothImage2[i][2*n];

		for(i=0;i<imageHeight;i++)
			for(j=imageWidth-2*n;j<imageWidth;j++)
			    smoothImage2[i][j]=smoothImage2[i][imageWidth-2*n-1];
 
		x++;

 		if(x==5) a=1;   /*迭代5次*/
		else 
		{
			for(i=0;i<imageHeight;i++)
				for(j=0;j<imageWidth;j++)
					smoothImage1[i][j]=smoothImage2[i][j];
		}

 
	}   /*End of while*/


/*saving the smoothed data */
	for(i=0;i<imageHeight;i++)
		for(j=0;j<imageWidth;j++)
			SmoothImg[i][j]=smoothImage2[i][j];
	
/*free the unused memmory*/ 
    dspace_2d(aveImage,imageHeight,imageWidth);
    dspace_2d(smoothImage1,imageHeight,imageWidth);
    dspace_2d(smoothImage2,imageHeight,imageWidth);
}	






/*************************************************************************
 *
 * 函數名稱:
 *   ErosiontionDIB()
 *
 * 參數:
 *   LPSTR lpDIBBits    - 指向源DIB圖像指針
 *   LONG  lWidth       - 源圖像寬度(象素數,必須是4的倍數)
 *   LONG  lHeight      - 源圖像高度(象素數)
 *   int   nMode		- 腐蝕方式,0表示水平方向,1表示垂直方向,2表示自定義結構元素。
 *	 int   structure[3][3]
						- 自定義的3×3結構元素。
 *
 * 返回值:
 *   BOOL               - 腐蝕成功返回TRUE,否則返回FALSE。
 *
 * 說明:
 * 該函數用于對圖像進行腐蝕運算。結構元素為水平方向或垂直方向的三個點,中間點位于原點;
 * 或者由用戶自己定義3×3的結構元素。
 * 
 * 要求目標圖像為只有0和255兩個灰度值的灰度圖像。
 ************************************************************************/

BOOL WINAPI ErosionDIB(LPSTR lpDIBBits, LONG lWidth, LONG lHeight, int nMode , int structure[3][3])
{
	
	// 指向源圖像的指針
	LPSTR	lpSrc;
	
	// 指向緩存圖像的指針
	LPSTR	lpDst;
	
	// 指向緩存DIB圖像的指針
	LPSTR	lpNewDIBBits;
	HLOCAL	hNewDIBBits;

	//循環變量
	long i;
	long j;
	int  n;
	int  m;

	//像素值
	unsigned char pixel;

	// 暫時分配內存,以保存新圖像
	hNewDIBBits = LocalAlloc(LHND, lWidth * lHeight);

	if (hNewDIBBits == NULL)
	{
		// 分配內存失敗
		return FALSE;
	}
	
	// 鎖定內存
	lpNewDIBBits = (char * )LocalLock(hNewDIBBits);

	// 初始化新分配的內存,設定初始值為255
	lpDst = (char *)lpNewDIBBits;
	memset(lpDst, (BYTE)255, lWidth * lHeight);


	if(nMode == 0)
	{
		//使用水平方向的結構元素進行腐蝕
		for(j = 0; j <lHeight; j++)
		{
			for(i = 1;i <lWidth-1; i++)
			{
				//由于使用1×3的結構元素,為防止越界,所以不處理最左邊和最右邊的兩列像素

				// 指向源圖像倒數第j行,第i個象素的指針			
				lpSrc = (char *)lpDIBBits + lWidth * j + i;

				// 指向目標圖像倒數第j行,第i個象素的指針			
				lpDst = (char *)lpNewDIBBits + lWidth * j + i;

				//取得當前指針處的像素值,注意要轉換為unsigned char型
				pixel = (unsigned char)*lpSrc;

				//目標圖像中含有0和255外的其它灰度值
				if(pixel != 255 && *lpSrc != 0)
					return FALSE;
				
				//目標圖像中的當前點先賦成黑色
				*lpDst = (unsigned char)0;

				//如果源圖像中當前點自身或者左右有一個點不是黑色,
				//則將目標圖像中的當前點賦成白色
				for (n = 0;n < 3;n++ )
				{
					pixel = *(lpSrc+n-1);
					if (pixel == 255 )
					{
						*lpDst = (unsigned char)255;
						break;
					}
				}
				
			}
		}

	}
	else if(nMode == 1)
	{
		//使用垂直方向的結構元素進行腐蝕
		for(j = 1; j <lHeight-1; j++)
		{
			for(i = 0;i <lWidth; i++)
			{
				//由于使用1×3的結構元素,為防止越界,所以不處理最上邊和最下邊的兩列像素

				// 指向源圖像倒數第j行,第i個象素的指針			
				lpSrc = (char *)lpDIBBits + lWidth * j + i;

				// 指向目標圖像倒數第j行,第i個象素的指針			
				lpDst = (char *)lpNewDIBBits + lWidth * j + i;

				//取得當前指針處的像素值,注意要轉換為unsigned char型
				pixel = (unsigned char)*lpSrc;

				//目標圖像中含有0和255外的其它灰度值
				if(pixel != 255 && *lpSrc != 0)
					return FALSE;

				//目標圖像中的當前點先賦成黑色
				*lpDst = (unsigned char)0;

				//如果源圖像中當前點自身或者上下有一個點不是黑色,
				//則將目標圖像中的當前點賦成白色
				for (n = 0;n < 3;n++ )
				{
					pixel = *(lpSrc+(n-1)*lWidth);
					if (pixel == 255 )
					{
						*lpDst = (unsigned char)255;
						break;
					}
				}
				
			}
		}

	}
	else
	{
		//使用自定義的結構元素進行腐蝕
		for(j = 1; j <lHeight-1; j++)
		{
			for(i = 0;i <lWidth; i++)
			{
				//由于使用3×3的結構元素,為防止越界,所以不處理最左邊和最右邊的兩列像素
				//和最上邊和最下邊的兩列像素
				// 指向源圖像倒數第j行,第i個象素的指針			
				lpSrc = (char *)lpDIBBits + lWidth * j + i;

				// 指向目標圖像倒數第j行,第i個象素的指針			
				lpDst = (char *)lpNewDIBBits + lWidth * j + i;

				//取得當前指針處的像素值,注意要轉換為unsigned char型
				pixel = (unsigned char)*lpSrc;

				//目標圖像中含有0和255外的其它灰度值
				if(pixel != 255 && *lpSrc != 0)
					return FALSE;

				//目標圖像中的當前點先賦成黑色
				*lpDst = (unsigned char)0;

				//如果原圖像中對應結構元素中為黑色的那些點中有一個不是黑色,
				//則將目標圖像中的當前點賦成白色
				//注意在DIB圖像中內容是上下倒置的
				for (m = 0;m < 3;m++ )
				{
					for (n = 0;n < 3;n++)
					{
						if( structure[m][n] == -1)
							continue;
						pixel = *(lpSrc + ((2-m)-1)*lWidth + (n-1));
						if (pixel == 255 )
						{	
							*lpDst = (unsigned char)255;
							break;
						}
					}
				}
				
			}
		}

	}
	// 復制腐蝕后的圖像
	memcpy(lpDIBBits, lpNewDIBBits, lWidth * lHeight);

	// 釋放內存
	LocalUnlock(hNewDIBBits);
	LocalFree(hNewDIBBits);

	// 返回
	return TRUE;
}	




/*************************************************************************
 *
 * 函數名稱:
 *   DilationDIB()
 *
 * 參數:
 *   LPSTR lpDIBBits    - 指向源DIB圖像指針
 *   LONG  lWidth       - 源圖像寬度(象素數,必須是4的倍數)
 *   LONG  lHeight      - 源圖像高度(象素數)
 *   int   nMode		- 膨脹方式,0表示水平方向,1表示垂直方向,2表示自定義結構元素。
 *	 int   structure[3][3]
						- 自定義的3×3結構元素。
 *
 * 返回值:
 *   BOOL               - 膨脹成功返回TRUE,否則返回FALSE。
 *
 * 說明:
 * 該函數用于對圖像進行膨脹運算。結構元素為水平方向或垂直方向的三個點,中間點位于原點;
 * 或者由用戶自己定義3×3的結構元素。
 * 
 * 要求目標圖像為只有0和255兩個灰度值的灰度圖像。
 ************************************************************************/


BOOL WINAPI DilationDIB(LPSTR lpDIBBits, LONG lWidth, LONG lHeight, int nMode , int structure[3][3])
{
	
	// 指向源圖像的指針
	LPSTR	lpSrc;
	
	// 指向緩存圖像的指針
	LPSTR	lpDst;
	
	// 指向緩存DIB圖像的指針
	LPSTR	lpNewDIBBits;
	HLOCAL	hNewDIBBits;

	//循環變量
	long i;
	long j;
	int  n;
	int  m;

	//像素值
	unsigned char pixel;

	// 暫時分配內存,以保存新圖像
	hNewDIBBits = LocalAlloc(LHND, lWidth * lHeight);

	if (hNewDIBBits == NULL)
	{
		// 分配內存失敗
		return FALSE;
	}
	
	// 鎖定內存
	lpNewDIBBits = (char * )LocalLock(hNewDIBBits);

	// 初始化新分配的內存,設定初始值為255
	lpDst = (char *)lpNewDIBBits;
	memset(lpDst, (BYTE)255, lWidth * lHeight);


	if(nMode == 0)
	{
		//使用水平方向的結構元素進行膨脹
		for(j = 0; j <lHeight; j++)
		{
			for(i = 1;i <lWidth-1; i++)
			{
				//由于使用1×3的結構元素,為防止越界,所以不處理最左邊和最右邊的兩列像素

				// 指向源圖像倒數第j行,第i個象素的指針			
				lpSrc = (char *)lpDIBBits + lWidth * j + i;

				// 指向目標圖像倒數第j行,第i個象素的指針			
				lpDst = (char *)lpNewDIBBits + lWidth * j + i;

				//取得當前指針處的像素值,注意要轉換為unsigned char型
				pixel = (unsigned char)*lpSrc;

				//目標圖像中含有0和255外的其它灰度值
				if(pixel != 255 && pixel != 0)
					return FALSE;
				
				//目標圖像中的當前點先賦成白色
				*lpDst = (unsigned char)255;

				//源圖像中當前點自身或者左右只要有一個點是黑色,
				//則將目標圖像中的當前點賦成黑色
				for (n = 0;n < 3;n++ )
				{
					pixel = *(lpSrc+n-1);
					if (pixel == 0 )
					{
						*lpDst = (unsigned char)0;
						break;
					}
				}
				
			}
		}

	}
	else if(nMode == 1)
	{
		//使用垂直方向的結構元素進行膨脹
		for(j = 1; j <lHeight-1; j++)
		{
			for(i = 0;i <lWidth; i++)
			{
				//由于使用1×3的結構元素,為防止越界,所以不處理最上邊和最下邊的兩列像素

				// 指向源圖像倒數第j行,第i個象素的指針			
				lpSrc = (char *)lpDIBBits + lWidth * j + i;

				// 指向目標圖像倒數第j行,第i個象素的指針			
				lpDst = (char *)lpNewDIBBits + lWidth * j + i;

				//取得當前指針處的像素值,注意要轉換為unsigned char型
				pixel = (unsigned char)*lpSrc;

				//目標圖像中含有0和255外的其它灰度值
				if(pixel != 255 && *lpSrc != 0)
					return FALSE;

				//目標圖像中的當前點先賦成白色
				*lpDst = (unsigned char)255;

				//源圖像中當前點自身或者上下只要有一個點是黑色,
				//則將目標圖像中的當前點賦成黑色
				for (n = 0;n < 3;n++ )
				{
					pixel = *(lpSrc+(n-1)*lWidth);
					if (pixel == 0 )
					{
						*lpDst = (unsigned char)0;
						break;
					}
				}
				
			}
		}

	}
	else
	{
		//使用自定義的結構元素進行膨脹
		for(j = 1; j <lHeight-1; j++)
		{
			for(i = 0;i <lWidth; i++)
			{
				//由于使用3×3的結構元素,為防止越界,所以不處理最左邊和最右邊的兩列像素
				//和最上邊和最下邊的兩列像素
				// 指向源圖像倒數第j行,第i個象素的指針			
				lpSrc = (char *)lpDIBBits + lWidth * j + i;

				// 指向目標圖像倒數第j行,第i個象素的指針			
				lpDst = (char *)lpNewDIBBits + lWidth * j + i;

				//取得當前指針處的像素值,注意要轉換為unsigned char型
				pixel = (unsigned char)*lpSrc;

				//目標圖像中含有0和255外的其它灰度值
				if(pixel != 255 && *lpSrc != 0)
					return FALSE;

				//目標圖像中的當前點先賦成白色
				*lpDst = (unsigned char)255;

				//原圖像中對應結構元素中為黑色的那些點中只要有一個是黑色,
				//則將目標圖像中的當前點賦成黑色
				//注意在DIB圖像中內容是上下倒置的
				for (m = 0;m < 3;m++ )
				{
					for (n = 0;n < 3;n++)
					{
						if( structure[m][n] == -1)
							continue;
						pixel = *(lpSrc + ((2-m)-1)*lWidth + (n-1));
						if (pixel == 0 )
						{	
							*lpDst = (unsigned char)0;
							break;
						}
					}
				}
				
			}
		}

	}
	// 復制膨脹后的圖像
	memcpy(lpDIBBits, lpNewDIBBits, lWidth * lHeight);

	// 釋放內存
	LocalUnlock(hNewDIBBits);
	LocalFree(hNewDIBBits);

	// 返回
	return TRUE;
}



/*************************************************************************
 *
 * 函數名稱

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精品视频在线看| 99riav久久精品riav| av不卡在线播放| 欧美一区二区不卡视频| 亚洲欧美另类小说视频| 国产精品系列在线播放| 欧美福利一区二区| 综合在线观看色| 国产.精品.日韩.另类.中文.在线.播放| 在线免费不卡电影| 国产精品久线在线观看| 国内精品不卡在线| 欧美精品一二三四| 亚洲综合男人的天堂| 不卡影院免费观看| 欧美国产精品中文字幕| 久久国产夜色精品鲁鲁99| 欧美日韩和欧美的一区二区| 自拍偷自拍亚洲精品播放| 国产高清精品网站| 337p日本欧洲亚洲大胆色噜噜| 亚洲成av人**亚洲成av**| 91极品美女在线| 亚洲色图在线看| av不卡一区二区三区| 国产精品久久久久久久久免费樱桃 | 国产成人av电影免费在线观看| 欧美二区三区91| 爽好久久久欧美精品| 欧美丝袜丝nylons| 亚洲已满18点击进入久久| 91女人视频在线观看| 综合激情成人伊人| 91高清视频免费看| 亚洲影院久久精品| 欧美日韩成人综合| 青青草国产精品97视觉盛宴| 欧美一级二级在线观看| 久久精品国产一区二区| 久久久久国产精品麻豆ai换脸| 国产麻豆一精品一av一免费| 国产日韩欧美不卡| 97精品国产97久久久久久久久久久久| 中文字幕欧美一| 在线观看成人小视频| 日韩高清不卡一区二区三区| 精品毛片乱码1区2区3区| 国产福利视频一区二区三区| 欧美激情一区三区| 日本高清不卡视频| 午夜精品一区二区三区三上悠亚 | 午夜精品影院在线观看| 日韩精品中文字幕在线不卡尤物| 久久精工是国产品牌吗| 国产亚洲精品7777| 91麻豆精东视频| 日韩av在线免费观看不卡| 欧美v日韩v国产v| av不卡一区二区三区| 香蕉成人啪国产精品视频综合网| 日韩一二三区不卡| 成人免费视频一区二区| 夜夜爽夜夜爽精品视频| 精品裸体舞一区二区三区| 国产1区2区3区精品美女| 亚洲va欧美va人人爽| 久久久久久久久久电影| 在线视频亚洲一区| 狠狠色狠狠色综合系列| 亚洲精品写真福利| 26uuu精品一区二区在线观看| 99久久精品国产观看| 免费成人美女在线观看.| 日本一区二区视频在线观看| 欧美三级中文字幕| 成人av电影在线网| 麻豆精品精品国产自在97香蕉| 国产精品免费视频网站| 日韩欧美一区二区久久婷婷| 色综合色狠狠综合色| 黄色日韩三级电影| 午夜视频在线观看一区二区| 国产午夜精品久久久久久久| 欧美精品久久99久久在免费线| 成人激情免费电影网址| 久久国产精品无码网站| 亚洲免费观看在线视频| 国产精品午夜在线| 亚洲精品在线观| 337p亚洲精品色噜噜狠狠| 色婷婷av一区二区三区大白胸| 国产久卡久卡久卡久卡视频精品| 日韩黄色免费网站| 亚洲一区二区欧美激情| 国产精品传媒视频| 久久久影视传媒| 精品国产乱码久久久久久免费| 欧洲av在线精品| 99久久精品国产一区二区三区| 国产91露脸合集magnet| 国内精品国产成人| 蜜臀av一区二区在线免费观看| 亚洲国产成人av网| 亚洲精品成人天堂一二三| 国产精品久久久久久久久动漫| 精品福利在线导航| 精品久久久久久无| 精品日产卡一卡二卡麻豆| 欧美一区二区三区在线观看| 欧美另类videos死尸| 欧美日韩国产综合一区二区| 欧美综合一区二区| 欧洲精品一区二区三区在线观看| 日本久久一区二区| 91麻豆国产在线观看| 色狠狠一区二区| 欧美日韩五月天| 欧美久久久一区| 91精品麻豆日日躁夜夜躁| 日韩欧美亚洲国产精品字幕久久久| 欧美一区二区视频在线观看2020 | 成人毛片视频在线观看| 国产成人在线观看免费网站| 国产精品538一区二区在线| 国产麻豆视频精品| av不卡免费电影| 欧美在线free| 欧美日韩精品免费| 精品国产一区二区三区忘忧草| 久久先锋影音av鲁色资源网| 欧美—级在线免费片| 亚洲色图欧美偷拍| 丝袜美腿亚洲色图| 美女久久久精品| 国产美女一区二区三区| 色综合天天狠狠| 91精品久久久久久久久99蜜臂| 欧美精品一区二区在线播放| 国产精品色呦呦| 亚洲一级片在线观看| 久久99久久精品欧美| 丰满白嫩尤物一区二区| 在线看国产一区| 欧美一级搡bbbb搡bbbb| 欧美激情综合在线| 亚洲福利视频三区| 国产精品资源在线| 欧美影视一区在线| 久久综合成人精品亚洲另类欧美| 国产精品嫩草影院av蜜臀| 亚洲第一搞黄网站| 国产99久久久国产精品| 欧美色区777第一页| 国产无人区一区二区三区| 亚洲一区二区视频| 国产精品影视天天线| 欧美中文一区二区三区| 久久午夜老司机| 亚洲尤物在线视频观看| 国产经典欧美精品| 欧美老年两性高潮| 国产精品伦理一区二区| 日本91福利区| 色综合天天综合网天天看片| wwww国产精品欧美| 亚洲午夜免费视频| 懂色av一区二区夜夜嗨| 日韩欧美国产精品一区| 洋洋成人永久网站入口| 成人激情午夜影院| 日韩精品一区二区在线观看| 亚洲高清视频在线| 91丝袜呻吟高潮美腿白嫩在线观看| 日韩免费福利电影在线观看| 亚洲国产精品久久人人爱| av午夜一区麻豆| 国产欧美日韩视频一区二区| 久久国内精品视频| 欧美精品777| 一区二区三区四区国产精品| 成+人+亚洲+综合天堂| 久久看人人爽人人| 老司机精品视频导航| 91麻豆精品国产91久久久久久久久 | 中文字幕国产精品一区二区| 国产午夜久久久久| 久久久欧美精品sm网站| 欧美色图在线观看| 91精品午夜视频| 国产女人aaa级久久久级 | 国产成人自拍网| 中文字幕不卡在线观看| 99re这里只有精品6| 亚洲午夜免费电影| 欧美一区二区三区成人| 国产精品资源在线观看| 亚洲欧美视频一区| 欧美浪妇xxxx高跟鞋交| 丁香一区二区三区| 亚洲天堂精品在线观看|