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

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

?? detect.cpp

?? 影像處理程序 基本的影像處理算法
?? CPP
字號:
// ************************************************************************
//  文件名:detect.cpp
//
//  圖像分析與檢測API函數(shù)庫:
//
//  ThresholdDIB()	- 圖像閾值分割運算
//  AddMinusDIB()   - 圖像加減運算
//  HprojectDIB()	- 圖像水平投影
//  VprojectDIB()	- 圖像垂直投影
//	TemplateDIB()	- 圖像模板匹配運算
//
// ************************************************************************

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

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

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

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];

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

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

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

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

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

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

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

	// 計算圖像每行的字節(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個象素的指針			
			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;
		//求兩個區(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個象素的指針			
			lpSrc = (char *)lpDIBBits + lLineBytes * j + i;
	
			// 指向目標圖像倒數(shù)第j行,第i個象素的指針			
			lpDst = (char *)lpNewDIBBits + lLineBytes * j + i;

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

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

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

	// 返回
	return TRUE;
}

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

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;

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

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

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

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

	for (j = 0;j < lHeight ;j++)
	{
		for(i = 0;i < lWidth ;i++)
		{
			// 指向源圖像倒數(shù)第j行,第i個象素的指針			
			lpSrc = (char *)lpDIBBits + lLineBytes * j + i;
			lpSrcBK = (char *)lpDIBBitsBK + lLineBytes * j + i;
	
			// 指向目標圖像倒數(shù)第j行,第i個象素的指針			
			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;


		}
	}

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

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

	// 返回
	return TRUE;
}

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

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)的黑點個數(shù)
	long lBlackNumber;

	//像素值
	unsigned char pixel;

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

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

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

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

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

	for (j = 0;j < lHeight ;j++)
	{
		lBlackNumber = 0;
		for(i = 0;i < lWidth ;i++)
		{
			// 指向源圖像倒數(shù)第j行,第i個象素的指針			
			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++)
		{	
			// 指向目標圖像倒數(shù)第j行,第i個象素的指針			
			lpDst = (char *)lpNewDIBBits + lLineBytes * j + i;

			*lpDst = (unsigned char)0;
		}		
	}

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

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

	// 返回
	return TRUE;
}

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

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)的黑點個數(shù)
	long lBlackNumber;

	//像素值
	unsigned char pixel;

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

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

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

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

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

	for (i = 0;i < lWidth ;i++)
	{
		lBlackNumber = 0;
		for(j = 0;j < lHeight ;j++)
		{
			// 指向源圖像倒數(shù)第j行,第i個象素的指針			
			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++)
		{	
			// 指向目標圖像倒數(shù)第j行,第i個象素的指針			
			lpDst = (char *)lpNewDIBBits + lLineBytes * j + i;

			*lpDst = (unsigned char)0;
		}		
	}

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

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

	// 返回
	return TRUE;
}

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

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;

	//相似性測度
	double R;

	//最大相似性測度
	double MaxR;

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

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

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

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

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

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

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

	//計算dSigmaT
	dSigmaT = 0;
	for (n = 0;n < lTemplateHeight ;n++)
	{
		for(m = 0;m < lTemplateWidth ;m++)
		{
			// 指向模板圖像倒數(shù)第j行,第i個象素的指針			
			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個象素的指針			
					lpSrc  = (char *)lpDIBBits + lLineBytes * (j+n) + (i+m);
			
					// 指向模板圖像倒數(shù)第n行,第m個象素的指針			
					lpTemplateSrc  = (char *)lpTemplateDIBBits + lTemplateLineBytes * n + m;

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

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

	//將最大相似性出現(xiàn)區(qū)域部分復制到目標圖像
	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;
		}
	}
	
	// 復制圖像
	memcpy(lpDIBBits, lpNewDIBBits, lWidth * lHeight);

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

	// 返回
	return TRUE;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精品在线观| 精品少妇一区二区三区日产乱码| 国产美女视频一区| 国产精品小仙女| 99久久精品久久久久久清纯| zzijzzij亚洲日本少妇熟睡| aaa亚洲精品| 欧美视频三区在线播放| 日韩精品一区在线观看| 在线亚洲一区观看| 欧美日韩成人在线一区| 久久久噜噜噜久久人人看| 1000部国产精品成人观看| 亚洲永久免费av| 捆绑变态av一区二区三区| 成人性生交大片免费看中文网站| jlzzjlzz国产精品久久| 欧美一区二区三区视频免费| 最新欧美精品一区二区三区| 久久成人免费日本黄色| 欧美日韩一区精品| 国产精品青草久久| 国产在线不卡一卡二卡三卡四卡| 欧美视频一区二区| 专区另类欧美日韩| 懂色中文一区二区在线播放| 精品国产一区二区国模嫣然| 亚洲综合免费观看高清完整版| 国产91丝袜在线播放九色| 日韩欧美成人激情| 久久电影国产免费久久电影| 在线免费精品视频| 一区二区三区产品免费精品久久75| 国产高清不卡一区| 国产精品电影一区二区三区| 成人免费电影视频| 成人免费一区二区三区视频| 波多野结衣在线一区| 欧美精品一区二区三区在线| 国产一区二区三区免费观看| 日韩午夜av电影| 经典三级在线一区| 久久久久久久久久久久电影 | 国产精品一区二区久久精品爱涩| 欧美群妇大交群中文字幕| 亚洲视频一二区| 国产欧美一区在线| 91精品蜜臀在线一区尤物| 日本伊人色综合网| 欧美mv和日韩mv的网站| 国产成人啪午夜精品网站男同| 久久久不卡网国产精品二区| 92国产精品观看| 亚洲一区二区在线免费看| 久久一区二区三区四区| 成人av网站免费观看| 亚洲综合丁香婷婷六月香| 欧美一区二区三区视频免费| 国产久卡久卡久卡久卡视频精品| 中文字幕日韩欧美一区二区三区| 91精品婷婷国产综合久久| 成人亚洲精品久久久久软件| 亚洲超丰满肉感bbw| 久久蜜桃香蕉精品一区二区三区| 97se亚洲国产综合自在线观| 美女视频网站久久| 中文字幕一区二区三区在线观看| 精品精品国产高清a毛片牛牛| 成人国产在线观看| 久久电影网电视剧免费观看| 日韩国产高清影视| 亚洲欧美电影院| 日本一区二区三级电影在线观看| 精品国产乱子伦一区| 91精品国产综合久久福利软件| caoporn国产精品| 国产999精品久久久久久绿帽| 蜜桃久久久久久久| 天天综合日日夜夜精品| 亚洲成人一二三| 一区二区在线观看免费视频播放| 日韩一区二区三区免费看| 在线观看91精品国产入口| 99国产精品视频免费观看| 国产欧美一区二区三区在线老狼| 欧美一级二级在线观看| 欧洲一区二区三区免费视频| 成人免费观看视频| 国产91露脸合集magnet | 亚洲第一主播视频| 亚洲天堂av一区| 亚洲欧美韩国综合色| 亚洲视频一二三区| 欧美激情自拍偷拍| 亚洲国产成人自拍| 日韩欧美在线观看一区二区三区| 欧日韩精品视频| 欧美精品99久久久**| 91精品国产色综合久久久蜜香臀| 欧美日精品一区视频| 欧美日韩国产综合视频在线观看| 色欧美日韩亚洲| 欧美一区二区三区四区久久| 日韩手机在线导航| 精品国产乱子伦一区| 久久中文字幕电影| 亚洲人成网站在线| 麻豆中文一区二区| 中文字幕在线观看一区| 亚洲一区二区三区四区在线观看 | 日韩精品欧美精品| 狠狠色丁香久久婷婷综合_中 | 久久嫩草精品久久久久| 国产欧美精品一区二区三区四区| 日韩欧美一区在线| 亚洲人成网站精品片在线观看 | 久久电影国产免费久久电影| 99精品视频在线播放观看| 欧美一区二区三区四区视频| 中文字幕欧美一区| 精品一区二区影视| 欧美日韩精品一区二区天天拍小说 | 欧美精品一区二区三区四区| 中文字幕第一页久久| 蜜臀av亚洲一区中文字幕| 91在线国内视频| 精品国产三级a在线观看| 日韩精品一级中文字幕精品视频免费观看| 日本在线不卡一区| 一本大道av伊人久久综合| 精品国产免费视频| 丝袜诱惑制服诱惑色一区在线观看| 色欧美片视频在线观看在线视频| 国产精品人人做人人爽人人添| 麻豆国产欧美一区二区三区| 欧美影院午夜播放| 亚洲国产精品精华液网站| 91污片在线观看| 婷婷国产在线综合| 欧美三级资源在线| 蜜桃av一区二区三区| 亚洲精品一区二区三区福利| 蜜臀av亚洲一区中文字幕| 日韩欧美国产一二三区| 国精产品一区一区三区mba视频| 91精品久久久久久久99蜜桃| 丝袜美腿亚洲一区二区图片| 91精品国产色综合久久不卡电影 | 菠萝蜜视频在线观看一区| 亚洲精品第一国产综合野| 91精品国产乱| 国产黄色精品网站| 国产精品电影一区二区| 欧美自拍偷拍午夜视频| 亚洲成va人在线观看| 日韩欧美国产系列| 波多野结衣在线一区| 亚洲大片精品永久免费| 久久久亚洲综合| 91蜜桃免费观看视频| 蜜桃传媒麻豆第一区在线观看| 精品国产乱码久久久久久牛牛| 欧美aaaaa成人免费观看视频| 久久久99久久精品欧美| av一区二区三区在线| 午夜精品福利久久久| 欧美老肥妇做.爰bbww| 国产精品综合一区二区| 久久精品夜夜夜夜久久| 欧美精品粉嫩高潮一区二区| 久久99深爱久久99精品| 最新热久久免费视频| 日韩一区二区三区电影在线观看| 久久国产精品99久久久久久老狼| 亚洲精品国产精品乱码不99| 精品日韩99亚洲| 欧美日韩久久久久久| 色婷婷综合久久久久中文一区二区| 老司机精品视频导航| 亚洲一区二区综合| 国产人妖乱国产精品人妖| 日韩欧美国产精品一区| 91黄色免费观看| 99re亚洲国产精品| 成人免费高清视频在线观看| 久久66热re国产| 美女视频免费一区| 1区2区3区欧美| 1024国产精品| 国产精品视频在线看| 中文字幕在线播放不卡一区| 中文字幕乱码一区二区免费| 91黄色激情网站| 色吧成人激情小说| 色噜噜狠狠一区二区三区果冻| 国产精品亚洲第一区在线暖暖韩国 | 免费久久精品视频| 捆绑调教一区二区三区| 国产精品18久久久久久vr| 国产精品一卡二|