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

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

?? detect.cpp

?? CEComm: Windows CE 4.0下的串口調(diào)試程序 串口精靈源代碼 TTY:Windows 下的類似超級(jí)終端的原代碼. TAPICase: Windows 下用TAPI撥號(hào)的例子 image
?? CPP
字號(hào):
// ************************************************************************
//  文件名:detect.cpp
//
//  圖像分析與檢測(cè)API函數(shù)庫(kù):
//
//  ThresholdDIB()	- 圖像閾值分割運(yùn)算
//  AddMinusDIB()   - 圖像加減運(yùn)算
//  HprojectDIB()	- 圖像水平投影
//  VprojectDIB()	- 圖像垂直投影
//	TemplateDIB()	- 圖像模板匹配運(yùn)算
//
// ************************************************************************

#include "stdafx.h"
#include "detect.h"
#include "DIBAPI.h"

#include <math.h>
#include <direct.h>

/*************************************************************************
 *
 * 函數(shù)名稱:
 *   ThresholdDIB()
 *
 * 參數(shù):
 *   LPSTR lpDIBBits    - 指向源DIB圖像指針
 *   LONG  lWidth       - 源圖像寬度(象素?cái)?shù))
 *   LONG  lHeight      - 源圖像高度(象素?cái)?shù))
 *
 * 返回值:
 *   BOOL               - 運(yùn)算成功返回TRUE,否則返回FALSE。
 *
 * 說明:
 * 該函數(shù)用于對(duì)圖像進(jìn)行閾值分割運(yùn)算。
 * 
 ************************************************************************/

BOOL WINAPI ThresholdDIB(LPSTR lpDIBBits,LONG lWidth, LONG lHeight)
{
	
	// 指向源圖像的指針
	LPSTR	lpSrc;
	
	// 指向緩存圖像的指針
	LPSTR	lpDst;
	
	// 指向緩存DIB圖像的指針
	LPSTR	lpNewDIBBits;
	HLOCAL	hNewDIBBits;

	//循環(huán)變量
	long i;
	long j;

	//像素值
	unsigned char pixel;

	//直方圖數(shù)組
	long lHistogram[256];

	//閾值,最大灰度值與最小灰度值,兩個(gè)區(qū)域的平均灰度值
	unsigned char iThreshold,iNewThreshold,iMaxGrayValue,iMinGrayValue,iMean1GrayValue,iMean2GrayValue;

	//用于計(jì)算區(qū)域灰度平均值的中間變量
	long lP1,lP2,lS1,lS2;

	//迭代次數(shù)
	int iIterationTimes;

	// 圖像每行的字節(jié)數(shù)
	LONG lLineBytes;

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

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

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

	// 計(jì)算圖像每行的字節(jié)數(shù)
	lLineBytes = WIDTHBYTES(lWidth * 8);

	for (i = 0; i < 256;i++)
	{
		lHistogram[i]=0;
	}

	//獲得直方圖
	iMaxGrayValue = 0;
	iMinGrayValue = 255;
	for (i = 0;i < lWidth ;i++)
	{
		for(j = 0;j < lHeight ;j++)
		{
			// 指向源圖像倒數(shù)第j行,第i個(gè)象素的指針			
			lpSrc = (char *)lpDIBBits + lLineBytes * j + i;
	
			pixel = (unsigned char)*lpSrc;
			
			lHistogram[pixel]++;
			//修改最大,最小灰度值
			if(iMinGrayValue > pixel)
			{
				iMinGrayValue = pixel;
			}
			if(iMaxGrayValue < pixel)
			{
				iMaxGrayValue = pixel;
			}
		}
	}

	//迭代求最佳閾值
	iNewThreshold = (iMinGrayValue + iMaxGrayValue)/2;
	iThreshold = 0;
	
	for(iIterationTimes = 0; iThreshold != iNewThreshold && iIterationTimes < 100;iIterationTimes ++)
	{
		iThreshold = iNewThreshold;
		lP1 =0;
		lP2 =0;
		lS1 = 0;
		lS2 = 0;
		//求兩個(gè)區(qū)域的灰度平均值
		for (i = iMinGrayValue;i < iThreshold;i++)
		{
			lP1 += lHistogram[i]*i;
			lS1 += lHistogram[i];
		}
		iMean1GrayValue = (unsigned char)(lP1 / lS1);
		for (i = iThreshold+1;i < iMaxGrayValue;i++)
		{
			lP2 += lHistogram[i]*i;
			lS2 += lHistogram[i];
		}
		iMean2GrayValue = (unsigned char)(lP2 / lS2);
		iNewThreshold =  (iMean1GrayValue + iMean2GrayValue)/2;
	}

	//根據(jù)閾值將圖像二值化
	for (i = 0;i < lWidth ;i++)
	{
		for(j = 0;j < lHeight ;j++)
		{
			// 指向源圖像倒數(shù)第j行,第i個(gè)象素的指針			
			lpSrc = (char *)lpDIBBits + lLineBytes * j + i;
	
			// 指向目標(biāo)圖像倒數(shù)第j行,第i個(gè)象素的指針			
			lpDst = (char *)lpNewDIBBits + lLineBytes * j + i;

			pixel = (unsigned char)*lpSrc;
			
			if(pixel <= iThreshold)
			{
				*lpDst = (unsigned char)0;
			}
			else
			{
				*lpDst = (unsigned char)255;
			}
		}
	}

	// 復(fù)制圖像
	memcpy(lpDIBBits, lpNewDIBBits, lWidth * lHeight);

	// 釋放內(nèi)存
	LocalUnlock(hNewDIBBits);
	LocalFree(hNewDIBBits);

	// 返回
	return TRUE;
}

/*************************************************************************
 *
 * 函數(shù)名稱:
 *   AddMinusDIB()
 *
 * 參數(shù):
 *   LPSTR lpDIBBits    - 指向源DIB圖像指針
 *   LPSTR lpDIBBitsBK  - 指向背景DIB圖像指針
 *   LONG  lWidth       - 源圖像寬度(象素?cái)?shù))
 *   LONG  lHeight      - 源圖像高度(象素?cái)?shù))
 *	 bool  bAddMinus	- 為true時(shí)執(zhí)行加運(yùn)算,否則執(zhí)行減運(yùn)算。
 *
 * 返回值:
 *   BOOL               - 運(yùn)算成功返回TRUE,否則返回FALSE。
 *
 * 說明:
 * 該函數(shù)用于對(duì)兩幅圖像進(jìn)行加減運(yùn)算。
 * 
 * 要求目標(biāo)圖像為255個(gè)灰度值的灰度圖像。
 ************************************************************************/

BOOL WINAPI AddMinusDIB(LPSTR lpDIBBits, LPSTR lpDIBBitsBK, LONG lWidth, LONG lHeight ,bool bAddMinus)
{
	
	// 指向源圖像的指針
	LPSTR	lpSrc,lpSrcBK;
	
	// 指向緩存圖像的指針
	LPSTR	lpDst;
	
	// 指向緩存DIB圖像的指針
	LPSTR	lpNewDIBBits;
	HLOCAL	hNewDIBBits;

	//循環(huán)變量
	long i;
	long j;

	//像素值
	unsigned char pixel,pixelBK;

	// 圖像每行的字節(jié)數(shù)
	LONG lLineBytes;

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

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

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

	// 計(jì)算圖像每行的字節(jié)數(shù)
	lLineBytes = WIDTHBYTES(lWidth * 8);

	for (j = 0;j < lHeight ;j++)
	{
		for(i = 0;i < lWidth ;i++)
		{
			// 指向源圖像倒數(shù)第j行,第i個(gè)象素的指針			
			lpSrc = (char *)lpDIBBits + lLineBytes * j + i;
			lpSrcBK = (char *)lpDIBBitsBK + lLineBytes * j + i;
	
			// 指向目標(biāo)圖像倒數(shù)第j行,第i個(gè)象素的指針			
			lpDst = (char *)lpNewDIBBits + lLineBytes * j + i;

			pixel = (unsigned char)*lpSrc;
			pixelBK = (unsigned char)*lpSrcBK;
			if(bAddMinus)
				*lpDst = pixel + pixelBK > 255 ? 255 : pixel + pixelBK;
			else
				*lpDst = pixel - pixelBK < 0 ? 0 : pixel - pixelBK;


		}
	}

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

	// 釋放內(nèi)存
	LocalUnlock(hNewDIBBits);
	LocalFree(hNewDIBBits);

	// 返回
	return TRUE;
}

/*************************************************************************
 *
 * 函數(shù)名稱:
 *   HprojectDIB()
 *
 * 參數(shù):
 *   LPSTR lpDIBBits    - 指向源DIB圖像指針
 *   LONG  lWidth       - 源圖像寬度(象素?cái)?shù))
 *   LONG  lHeight      - 源圖像高度(象素?cái)?shù))
 *
 * 返回值:
 *   BOOL               - 運(yùn)算成功返回TRUE,否則返回FALSE。
 *
 * 說明:
 * 該函數(shù)用于對(duì)兩幅圖像進(jìn)行水平投影運(yùn)算。
 * 
 * 要求目標(biāo)圖像為只有0和255兩個(gè)灰度值的灰度圖像。
 ************************************************************************/

BOOL WINAPI HprojectDIB(LPSTR lpDIBBits,LONG lWidth, LONG lHeight)
{
	
	// 指向源圖像的指針
	LPSTR	lpSrc;
	
	// 指向緩存圖像的指針
	LPSTR	lpDst;
	
	// 指向緩存DIB圖像的指針
	LPSTR	lpNewDIBBits;
	HLOCAL	hNewDIBBits;

	//循環(huán)變量
	long i;
	long j;

	//圖像中每行內(nèi)的黑點(diǎn)個(gè)數(shù)
	long lBlackNumber;

	//像素值
	unsigned char pixel;

	// 圖像每行的字節(jié)數(shù)
	LONG lLineBytes;

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

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

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

	// 計(jì)算圖像每行的字節(jié)數(shù)
	lLineBytes = WIDTHBYTES(lWidth * 8);

	for (j = 0;j < lHeight ;j++)
	{
		lBlackNumber = 0;
		for(i = 0;i < lWidth ;i++)
		{
			// 指向源圖像倒數(shù)第j行,第i個(gè)象素的指針			
			lpSrc = (char *)lpDIBBits + lLineBytes * j + i;
	
			pixel = (unsigned char)*lpSrc;

			if (pixel != 255 && pixel != 0)
			{
				return false;
			}
			if(pixel == 0)
			{
				lBlackNumber++;
			}
		}
		for(i = 0;i < lBlackNumber ;i++)
		{	
			// 指向目標(biāo)圖像倒數(shù)第j行,第i個(gè)象素的指針			
			lpDst = (char *)lpNewDIBBits + lLineBytes * j + i;

			*lpDst = (unsigned char)0;
		}		
	}

			
	// 復(fù)制投影圖像
	memcpy(lpDIBBits, lpNewDIBBits, lWidth * lHeight);

	// 釋放內(nèi)存
	LocalUnlock(hNewDIBBits);
	LocalFree(hNewDIBBits);

	// 返回
	return TRUE;
}

/*************************************************************************
 *
 * 函數(shù)名稱:
 *   VprojectDIB()
 *
 * 參數(shù):
 *   LPSTR lpDIBBits    - 指向源DIB圖像指針
 *   LONG  lWidth       - 源圖像寬度(象素?cái)?shù))
 *   LONG  lHeight      - 源圖像高度(象素?cái)?shù))
 *
 * 返回值:
 *   BOOL               - 運(yùn)算成功返回TRUE,否則返回FALSE。
 *
 * 說明:
 * 該函數(shù)用于對(duì)兩幅圖像進(jìn)行垂直投影運(yùn)算。
 * 
 * 要求目標(biāo)圖像為只有0和255兩個(gè)灰度值的灰度圖像。
 ************************************************************************/

BOOL WINAPI VprojectDIB(LPSTR lpDIBBits,LONG lWidth, LONG lHeight)
{
	
	// 指向源圖像的指針
	LPSTR	lpSrc;
	
	// 指向緩存圖像的指針
	LPSTR	lpDst;
	
	// 指向緩存DIB圖像的指針
	LPSTR	lpNewDIBBits;
	HLOCAL	hNewDIBBits;

	//循環(huán)變量
	long i;
	long j;

	//圖像中每行內(nèi)的黑點(diǎn)個(gè)數(shù)
	long lBlackNumber;

	//像素值
	unsigned char pixel;

	// 圖像每行的字節(jié)數(shù)
	LONG lLineBytes;

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

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

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

	// 計(jì)算圖像每行的字節(jié)數(shù)
	lLineBytes = WIDTHBYTES(lWidth * 8);

	for (i = 0;i < lWidth ;i++)
	{
		lBlackNumber = 0;
		for(j = 0;j < lHeight ;j++)
		{
			// 指向源圖像倒數(shù)第j行,第i個(gè)象素的指針			
			lpSrc = (char *)lpDIBBits + lLineBytes * j + i;
	
			pixel = (unsigned char)*lpSrc;

			if (pixel != 255 && pixel != 0)
			{
				return false;
			}
			if(pixel == 0)
			{
				lBlackNumber++;
			}
		}
		for(j = 0;j < lBlackNumber ;j++)
		{	
			// 指向目標(biāo)圖像倒數(shù)第j行,第i個(gè)象素的指針			
			lpDst = (char *)lpNewDIBBits + lLineBytes * j + i;

			*lpDst = (unsigned char)0;
		}		
	}

			
	// 復(fù)制投影圖像
	memcpy(lpDIBBits, lpNewDIBBits, lWidth * lHeight);

	// 釋放內(nèi)存
	LocalUnlock(hNewDIBBits);
	LocalFree(hNewDIBBits);

	// 返回
	return TRUE;
}

/*************************************************************************
 *
 * 函數(shù)名稱:
 *   TemplateMatchDIB()
 *
 * 參數(shù):
 *   LPSTR lpDIBBits    - 指向源DIB圖像指針
 *   LPSTR lpDIBBitsBK  - 指向背景DIB圖像指針
 *   LONG  lWidth       - 源圖像寬度(象素?cái)?shù))
 *   LONG  lHeight      - 源圖像高度(象素?cái)?shù))
 *   LONG  lTemplateWidth       - 模板圖像寬度(象素?cái)?shù))
 *   LONG  lTemplateHeight      - 模板圖像高度(象素?cái)?shù))
 *
 * 返回值:
 *   BOOL               - 運(yùn)算成功返回TRUE,否則返回FALSE。
 *
 * 說明:
 * 該函數(shù)用于對(duì)圖像進(jìn)行模板匹配運(yùn)算。
 * 
 * 要求目標(biāo)圖像為255個(gè)灰度值的灰度圖像。
 ************************************************************************/

BOOL WINAPI TemplateMatchDIB (LPSTR lpDIBBits, LPSTR lpTemplateDIBBits, LONG lWidth, LONG lHeight,
							  LONG lTemplateWidth,LONG lTemplateHeight)
{	
	// 指向源圖像的指針
	LPSTR	lpSrc,lpTemplateSrc;
	
	// 指向緩存圖像的指針
	LPSTR	lpDst;
	
	// 指向緩存DIB圖像的指針
	LPSTR	lpNewDIBBits;
	HLOCAL	hNewDIBBits;

	//循環(huán)變量
	long i;
	long j;
	long m;
	long n;

	//中間結(jié)果
	double dSigmaST;
	double dSigmaS;
	double dSigmaT;

	//相似性測(cè)度
	double R;

	//最大相似性測(cè)度
	double MaxR;

	//最大相似性出現(xiàn)位置
	long lMaxWidth;
	long lMaxHeight;

	//像素值
	unsigned char pixel;
	unsigned char templatepixel;

	// 圖像每行的字節(jié)數(shù)
	LONG lLineBytes,lTemplateLineBytes;

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

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

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

	// 計(jì)算圖像每行的字節(jié)數(shù)
	lLineBytes = WIDTHBYTES(lWidth * 8);
	lTemplateLineBytes = WIDTHBYTES(lTemplateWidth * 8);

	//計(jì)算dSigmaT
	dSigmaT = 0;
	for (n = 0;n < lTemplateHeight ;n++)
	{
		for(m = 0;m < lTemplateWidth ;m++)
		{
			// 指向模板圖像倒數(shù)第j行,第i個(gè)象素的指針			
			lpTemplateSrc = (char *)lpTemplateDIBBits + lTemplateLineBytes * n + m;
			templatepixel = (unsigned char)*lpTemplateSrc;
			dSigmaT += (double)templatepixel*templatepixel;
		}
	}

	//找到圖像中最大相似性的出現(xiàn)位置
	MaxR = 0.0;
	for (j = 0;j < lHeight - lTemplateHeight +1 ;j++)
	{
		for(i = 0;i < lWidth - lTemplateWidth + 1;i++)
		{
			dSigmaST = 0;
			dSigmaS = 0;
	
			for (n = 0;n < lTemplateHeight ;n++)
			{
				for(m = 0;m < lTemplateWidth ;m++)
				{
					// 指向源圖像倒數(shù)第j+n行,第i+m個(gè)象素的指針			
					lpSrc  = (char *)lpDIBBits + lLineBytes * (j+n) + (i+m);
			
					// 指向模板圖像倒數(shù)第n行,第m個(gè)象素的指針			
					lpTemplateSrc  = (char *)lpTemplateDIBBits + lTemplateLineBytes * n + m;

					pixel = (unsigned char)*lpSrc;
					templatepixel = (unsigned char)*lpTemplateSrc;

					dSigmaS += (double)pixel*pixel;
					dSigmaST += (double)pixel*templatepixel;
				}
			}
			//計(jì)算相似性
			R = dSigmaST / ( sqrt(dSigmaS)*sqrt(dSigmaT));
			//與最大相似性比較
			if (R > MaxR)
			{
				MaxR = R;
				lMaxWidth = i;
				lMaxHeight = j;
			}
		}
	}

	//將最大相似性出現(xiàn)區(qū)域部分復(fù)制到目標(biāo)圖像
	for (n = 0;n < lTemplateHeight ;n++)
	{
		for(m = 0;m < lTemplateWidth ;m++)
		{
			lpTemplateSrc = (char *)lpTemplateDIBBits + lTemplateLineBytes * n + m;
			lpDst = (char *)lpNewDIBBits + lLineBytes * (n+lMaxHeight) + (m+lMaxWidth);
			*lpDst = *lpTemplateSrc;
		}
	}
	
	// 復(fù)制圖像
	memcpy(lpDIBBits, lpNewDIBBits, lWidth * lHeight);

	// 釋放內(nèi)存
	LocalUnlock(hNewDIBBits);
	LocalFree(hNewDIBBits);

	// 返回
	return TRUE;
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色综合激情五月| 亚洲欧美自拍偷拍| 日韩天堂在线观看| 日韩欧美在线观看一区二区三区| 欧美色老头old∨ideo| 日本韩国欧美在线| 欧美色偷偷大香| 欧美午夜不卡在线观看免费| 欧美午夜免费电影| 欧美精品一卡二卡| 日韩欧美另类在线| 精品福利一二区| 国产欧美一区二区精品性| 国产精品日韩成人| 亚洲人妖av一区二区| 亚洲激情欧美激情| 水野朝阳av一区二区三区| 麻豆国产精品一区二区三区 | 91在线无精精品入口| 91国偷自产一区二区使用方法| 欧美中文字幕亚洲一区二区va在线 | 亚洲成av人片在线| 免费成人在线观看视频| 国产自产v一区二区三区c| 丁香一区二区三区| 91视频在线看| 欧美猛男男办公室激情| 欧美成人r级一区二区三区| 久久久久久毛片| 亚洲欧美中日韩| 日韩激情在线观看| 国产成人在线电影| 在线免费精品视频| 日韩久久久久久| 国产精品嫩草影院com| 亚洲一区二区高清| 久久99精品视频| 99久久99精品久久久久久| 欧美日韩www| 久久久亚洲综合| 亚洲在线视频网站| 精品一区二区三区日韩| 91日韩在线专区| 日韩一级免费一区| 亚洲欧洲www| 美女视频网站久久| 色婷婷久久99综合精品jk白丝| 在线成人av网站| 国产精品女同一区二区三区| 日韩综合在线视频| 成人午夜激情在线| 欧美一区二区三区喷汁尤物| 国产精品你懂的在线| 日本伊人午夜精品| 99热在这里有精品免费| 日韩一区二区三区在线观看| 国产精品嫩草久久久久| 另类中文字幕网| 色成年激情久久综合| www国产成人免费观看视频 深夜成人网| 亚洲欧洲无码一区二区三区| 蜜臀精品久久久久久蜜臀| 99精品欧美一区| 欧美精品一区二区三区蜜桃 | 成人一区在线看| 91精品国产综合久久婷婷香蕉| 国产精品美女久久久久久久 | 在线免费观看日韩欧美| 久久久综合九色合综国产精品| 婷婷综合五月天| 99国产精品一区| 国产亚洲一区二区三区在线观看| 亚洲成人自拍一区| 91麻豆免费看片| 欧美国产在线观看| 韩国女主播成人在线| 91精品国产91久久久久久一区二区 | 成人一二三区视频| 2021中文字幕一区亚洲| 丝瓜av网站精品一区二区 | 国产精品你懂的| 国产精品1区二区.| 欧美白人最猛性xxxxx69交| 亚洲成人免费影院| 在线观看亚洲精品| 一区二区三区在线观看欧美| 成人国产精品视频| 国产调教视频一区| 理论片日本一区| 日韩欧美中文字幕制服| 午夜精品久久久久久久99樱桃| 97久久久精品综合88久久| 国产精品视频第一区| 国产成人亚洲精品青草天美| 精品1区2区在线观看| 欧美aaaaa成人免费观看视频| 欧美情侣在线播放| 午夜激情一区二区| 欧美性猛片aaaaaaa做受| 亚洲乱码国产乱码精品精98午夜| 成人亚洲精品久久久久软件| 国产清纯白嫩初高生在线观看91 | 亚洲欧洲精品一区二区三区| 国产91富婆露脸刺激对白| 精品人在线二区三区| 麻豆国产一区二区| 精品电影一区二区| 精品一区中文字幕| 精品成人一区二区| 久久99久久99小草精品免视看| 日韩一区二区免费电影| 麻豆传媒一区二区三区| 精品99久久久久久| 成人国产亚洲欧美成人综合网| 国产精品电影一区二区| 91成人在线精品| 舔着乳尖日韩一区| 欧美不卡一区二区三区四区| 久久99久久精品欧美| 国产欧美精品国产国产专区| 成人av网站在线| 一区二区三区蜜桃| 欧美日本在线观看| 免费观看日韩电影| 国产校园另类小说区| 99久久久久免费精品国产| 亚洲综合一二区| 欧美日韩精品欧美日韩精品| 蜜臀av一区二区在线免费观看| 久久婷婷色综合| 91小视频在线| 婷婷一区二区三区| 久久久精品影视| 色偷偷久久人人79超碰人人澡| 亚洲综合在线免费观看| 91麻豆精品国产91久久久使用方法 | 欧美午夜精品一区二区蜜桃| 日韩福利视频导航| 久久久久久电影| 色综合天天视频在线观看 | 91国偷自产一区二区三区成为亚洲经典| 午夜免费欧美电影| 久久久国产精品不卡| 在线观看日韩一区| 国产一区二区毛片| 一区二区免费在线播放| 精品精品欲导航| 色婷婷综合在线| 国产精品一区二区91| 一区二区三区精品在线| 欧美不卡在线视频| 色丁香久综合在线久综合在线观看| 久久精品国产久精国产| 亚洲欧美偷拍卡通变态| 91.麻豆视频| 99久久精品一区二区| 午夜精品福利久久久| 国产偷国产偷精品高清尤物| 欧美日韩在线观看一区二区| 狠狠色狠狠色综合| 亚洲国产日日夜夜| 精品999久久久| 欧美日韩在线免费视频| 成人激情小说网站| 美女免费视频一区二区| 亚洲欧美综合色| 精品国产乱码久久久久久闺蜜| 在线中文字幕不卡| 国产91对白在线观看九色| 日本成人在线视频网站| 亚洲精品欧美综合四区| 久久精品一区二区三区四区| 欧美一二三区在线| 欧美三日本三级三级在线播放| 国产盗摄一区二区| 久久国产人妖系列| 午夜电影网一区| 一区二区三区**美女毛片| 中文字幕国产一区二区| 欧美成人官网二区| 51精品久久久久久久蜜臀| 在线视频欧美区| 91丝袜高跟美女视频| 成人国产免费视频| 国产成人在线免费| 国产一区免费电影| 蜜桃av噜噜一区| 日韩不卡一区二区| 亚洲高清免费视频| 亚洲欧洲综合另类| 亚洲视频免费观看| 国产精品久久一卡二卡| 日本一区二区免费在线观看视频| 欧美大片在线观看| 日韩欧美电影一二三| 91精品国产日韩91久久久久久| 欧美三级一区二区| 欧美日韩亚州综合| 欧美顶级少妇做爰| 777xxx欧美|