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

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

?? thinner.cpp

?? 關(guān)于汽車牌照檢測與識別代碼
?? CPP
字號:
//**************************************************************************
//Thinner.cpp
//細(xì)化算法實(shí)現(xiàn)文件
//**************************************************************************
#include "StdAfx.h"
#include <stdlib.h>
#include <malloc.h>
#include "Thinner.h"

void beforethin(unsigned char *ip, unsigned char *jp, 
				unsigned long lx, unsigned long ly)
{
	unsigned long i,j;
	for(i=0; i<ly; i++)
	{
		for(j=0; j<lx; j++)
		{
			//這里要視前景是白點(diǎn)還是黑點(diǎn)而定,可以改動(dòng)
			//如果前景是白點(diǎn),就是這樣;反之反過來
			if(ip[i*lx+j]>0)
				jp[i*lx+j]=1;
			else
				jp[i*lx+j]=0;
		}
	}
}

/////////////////////////////////////////////////////////////////////////
//Hilditch細(xì)化算法
//功能:對圖象進(jìn)行細(xì)化
//參數(shù):image:代表圖象的一維數(shù)組
//      lx:圖象寬度
//      ly:圖象高度
//      無返回值
void ThinnerHilditch(void *image, unsigned long lx, unsigned long ly)
{
	char *f, *g;
	char n[10];
	unsigned int counter;
	short k, shori, xx, nrn;
	unsigned long i, j;
	long kk, kk11, kk12, kk13, kk21, kk22, kk23, kk31, kk32, kk33, size;
	size = (long)lx * (long)ly;
	g = (char *)malloc(size);

	if(g == NULL)
	{
		printf("error in allocating memory!\n");
		return;
	}

	f = (char *)image;
	for(i=0; i<lx; i++)//二值化為0,1 。g保存有1的;
	{
		for(j=0; j<ly; j++)
		{
			kk=i*ly+j;
			if(f[kk]!=0)
			{
				f[kk]=1;
				g[kk]=f[kk];
			}
		}
	}

	counter = 1;//記數(shù)器

	do
	{
		printf("%4d*",counter);
		counter++;//計(jì)數(shù)器+1
		shori = 0;//?

		for(i=0; i<lx; i++)  //若f中的值小于0,則=0同時(shí)復(fù)制f->g
		{
			for(j=0; j<ly; j++)
			{
				kk = i*ly+j;
				if(f[kk]<0)   //?????????f為負(fù)則減薄
					f[kk] = 0;
				g[kk]= f[kk];
			}
		}

		for(i=1; i<lx-1; i++)
		{
			for(j=1; j<ly-1; j++)
			{
				kk=i*ly+j;

				if(f[kk]!=1)         //條件(1)
					continue;

				kk11 = (i-1)*ly+j-1; //9個(gè)方向
				kk12 = kk11 + 1;
				kk13 = kk12 + 1;
				kk21 = i*ly+j-1;
				kk22 = kk21 + 1;
				kk23 = kk22 + 1;
				kk31 = (i+1)*ly+j-1;
				kk32 = kk31 + 1;
				kk33 = kk32 + 1;

				if((g[kk12]&&g[kk21]&&g[kk23]&&g[kk32])!=0) //判斷條件(2)
					continue;

				nrn = g[kk11] + g[kk12] + g[kk13] + g[kk21] + g[kk23] + 
					g[kk31] + g[kk32] + g[kk33];

				if(nrn <= 1)  //判斷條件(4)
				{
					f[kk22] = 2;//不合則2->f[kk22]
					continue;
				}

				n[4] = f[kk11]; //對應(yīng)圖6-15
				n[3] = f[kk12];
				n[2] = f[kk13];
				n[5] = f[kk21];
				n[1] = f[kk23];
				n[6] = f[kk31];
				n[7] = f[kk32];
				n[8] = f[kk33];
				n[9] = n[1];    //9為0
				xx = 0;

				for(k=1; k<8; k=k+2) //為條件5判斷作統(tǒng)計(jì)
				{
					if((!n[k])&&(n[k+1]||n[k+2]))
						xx++;
				}

				if(xx!=1)//判斷條件(5)
				{
					f[kk22] = 2;
					continue;
				}

				if(f[kk12] == -1)//?判斷f(n3)是否∈R
				{
					f[kk12] = 0; //f[kk12]已經(jīng)被刪,故為0
					n[3] = 0;    //n[3]=f[kk12]已經(jīng)被刪,故為0
					xx = 0;

					for(k=1; k<8; k=k+2)
					{
						if((!n[k])&&(n[k+1]||n[k+2]))
							xx++;
					}

					if(xx != 1)  //判斷條件(6)
					{
						f[kk12] = -1;//恢復(fù)f[kk12]為被刪
						continue;
					}

					f[kk12] = -1;//恢復(fù)f[kk12]為被刪
					n[3] = -1;//恢復(fù)f[kk12]為被刪
				}

				if(f[kk21]!=-1)//判斷條件(6)
				{
					f[kk22] = -1;//全部條件滿足,減薄
					shori = 1;//最后將-1---》0的條件
					continue;
				}

				f[kk21] = 0; //f(n5)∈R,f[kk21]已經(jīng)被刪,故為0
				n[5] = 0; //f(n5)∈R,f[kk21]已經(jīng)被刪,故為0
				xx = 0;

				for(k=1; k<8; k=k+2) //判斷條件(6)
				{
					if((!n[k])&&(n[k+1]||n[k+2]))
					{
						xx++;
					}
				}

				if(xx == 1)//全部條件滿足,減薄
				{
					f[kk21] = -1;//恢復(fù)f[kk21]為被刪
					f[kk22] = -1;//減薄
					shori =1;//最后將-1---》0的條件
				}
				else
					f[kk21] = -1;//恢復(fù)f[kk21]為被刪
			}
		}
	}while(shori);

	free(g);
}

/////////////////////////////////////////////////////////////////////////
//Pavlidis細(xì)化算法
//功能:對圖象進(jìn)行細(xì)化
//參數(shù):image:代表圖象的一維數(shù)組
//      lx:圖象寬度
//      ly:圖象高度
//      無返回值
void ThinnerPavlidis(void *image, unsigned long lx, unsigned long ly)
{
	char erase, n[8];
	char *f;
	unsigned char bdr1,bdr2,bdr4,bdr5;
	short c,k,b;
	unsigned long i,j;
	long kk,kk1,kk2,kk3;
	f = (char*)image;

	for(i=1; i<lx-1; i++)
	{
		for(j=1; j<ly-1; j++)
		{
			kk = i*ly + j;
			if(f[kk])
				f[kk] = 1;
		}
	}

	for(i=0, kk1=0, kk2=ly-1; i<lx; i++, kk1+=ly, kk2+=ly)
	{
		f[kk1]=0;
		f[kk2]=0;
	}

	for(j=0, kk=(lx-1)*ly; j<ly; j++,kk++)
	{
		f[j]=0;
		f[kk]=0;
	}

	c=5;
	erase =1;
	while(erase)
	{
		c++;
		for(i=1; i<lx-1; i++)
		{
			for(j=1; j<ly-1; j++)
			{
				kk=i*ly+j;
				if(f[kk]!=1)
					continue;

				kk1 = kk-ly -1;
				kk2 = kk1 + 1;
				kk3 = kk2 + 1;
				n[3] = f[kk1];
				n[2] = f[kk2];
				n[1] = f[kk3];
				kk1 = kk - 1;
				kk3 = kk + 1;
				n[4] = f[kk1];
				n[0] = f[kk3];
				kk1 = kk + ly -1;
				kk2 = kk1 + 1;
				kk3 = kk2 + 1;
				n[5] = f[kk1];
				n[6] = f[kk2];
				n[7] = f[kk3];

				bdr1 =0;
				for(k=0; k<8; k++)
				{
					if(n[k]>=1)
						bdr1|=0x80>>k;
				}

				if((bdr1&0252)== 0252)
					continue;
				f[kk] = 2;
				b=0;

				for(k=0; k<=7; k++)
				{
					b+=bdr1&(0x80>>k);
				}

				if(b<=1)
					f[kk]=3;

				if((bdr1&0160)!=0&&(bdr1&07)!=0&&(bdr1&0210)==0)
					f[kk]=3;
				else if((bdr1&&0301)!=0&&(bdr1&034)!=0&&(bdr1&042)==0)
					f[kk]=3;
				else if((bdr1&0202)==0 && (bdr1&01)!=0)
					f[kk]=3;
				else if((bdr1&0240)==0 && (bdr1&0100)!=0)
					f[kk]=3;
				else if((bdr1&050)==0 && (bdr1&020)!=0)
					f[kk]=3;
				else if((bdr1&012)==0 && (bdr1&04)!=0)
					f[kk]=3;
			}
		}

		for(i=1; i<lx-1; i++)
		{
			for(j=1; j<ly-1; j++)
			{
				kk = i*ly + j;
				if(!f[kk])
					continue;

				kk1 = kk - ly -1;
				kk2 = kk1 + 1;
				kk3 = kk2 + 1;
				n[3] = f[kk1];
				n[2] = f[kk2];
				n[1] = f[kk3];
				kk1 = kk - 1;
				kk2 = kk + 1;
				n[4] = f[kk1];
				n[0] = f[kk3];
				kk1 = kk + ly -1;
				kk2 = kk1 + 1;
				kk3 = kk2 + 1;
				n[5] = f[kk1];
				n[6] = f[kk2];
				n[7] = f[kk3];
				bdr1 = bdr2 =0;

				for(k=0; k<=7; k++)
				{
					if(n[k]>=1)
						bdr1|=0x80>>k;
					if(n[k]>=2)
						bdr2|=0x80>>k;
				}

				if(bdr1==bdr2)
				{
					f[kk] = 4;
					continue;
				}

				if(f[kk]!=2)
					continue;

				if((bdr2&0200)!=0 && (bdr1&010)==0 &&
					((bdr1&0100)!=0 &&(bdr1&001)!=0 ||
					((bdr1&0100)!=0 ||(bdr1 & 001)!=0) &&
					(bdr1&060)!=0 &&(bdr1&06)!=0))
				{
					f[kk] = 4;
				}

				else if((bdr2&040)!=0 && (bdr1&02)==0 &&
					((bdr1&020)!=0 && (bdr1&0100)!=0 ||
					((bdr1&020)!=0 || (bdr1&0100)!=0) &&
					(bdr1&014)!=0 && (bdr1&0201)!=0))
				{
					f[kk] = 4;
				}

				else if((bdr2&010)!=0 && (bdr1&0200)==0 &&
					((bdr1&04)!=0 && (bdr1&020)!=0 ||
					((bdr1&04)!=0 || (bdr1&020)!=0) &&
					(bdr1&03)!=0 && (bdr1&0140)!=0))
				{
					f[kk] = 4;
				}

				else if((bdr2&02)!=0 && (bdr1&040)==0 &&
					((bdr1&01)!=0 && (bdr1&04)!=0 ||
					((bdr1&01)!=0 || (bdr1&04)!=0) &&
					(bdr1&0300)!=0 && (bdr1&030)!=0))
				{
					f[kk] = 4;
				}
			}
		}

		for(i=1; i<lx-1; i++)
		{
			for(j=1; j<ly-1; j++)
			{
				kk = i*ly + j;
				if(f[kk]!=2)
					continue;
				kk1 = kk - ly -1;
				kk2 = kk1 + 1;
				kk3 = kk2 + 1;
				n[3] = f[kk1];
				n[2] = f[kk2];
				n[1] = f[kk3];
				kk1 = kk - 1;
				kk2 = kk + 1;
				n[4] = f[kk1];
				n[0] = f[kk3];
				kk1 = kk + ly -1;
				kk2 = kk1 + 1;
				kk3 = kk2 + 1;
				n[5] = f[kk1];
				n[6] = f[kk2];
				n[7] = f[kk3];
				bdr4 = bdr5 =0;
				for(k=0; k<=7; k++)
				{
					if(n[k]>=4)
						bdr4|=0x80>>k;
					if(n[k]>=5)
						bdr5|=0x80>>k;
				}
				if((bdr4&010) == 0)
				{
					f[kk] = 5;
					continue;
				}
				if((bdr4&040) == 0 && bdr5 ==0)
				{
					f[kk] = 5;
					continue;
				}
				if(f[kk]==3||f[kk]==4)
					f[kk] = c;
			}
		}

		erase = 0;
		for(i=1; i<lx-1; i++)
		{
			for(j=1; j<ly-1; j++)
			{
				kk = i*ly +j;
				if(f[kk]==2||f[kk] == 5)
				{
					erase = 1;
					f[kk] = 0;
				}
			}
		}
	}
}

/////////////////////////////////////////////////////////////////////////
//Rosenfeld細(xì)化算法
//功能:對圖象進(jìn)行細(xì)化
//參數(shù):image:代表圖象的一維數(shù)組
//      lx:圖象寬度
//      ly:圖象高度
//      無返回值
void ThinnerRosenfeld(void *image, unsigned long lx, unsigned long ly)
{
	char *f, *g;
	char n[10];
	char a[5] = {0, -1, 1, 0, 0};
	char b[5] = {0, 0, 0, 1, -1};
	char nrnd, cond, n48, n26, n24, n46, n68, n82, n123, n345, n567, n781;
	short k, shori;
	unsigned long i, j;
	long ii, jj, kk, kk1, kk2, kk3, size;
	size = (long)lx * (long)ly;

	g = (char *)malloc(size);
	if(g==NULL)
	{
		printf("error in alocating mmeory!\n");
		return;
	}

	f = (char *)image;
	for(kk=0l; kk<size; kk++)
	{
		g[kk] = f[kk];
	}

	do
	{
		shori = 0;
		for(k=1; k<=4; k++)
		{
			for(i=1; i<lx-1; i++)
			{
				ii = i + a[k];

				for(j=1; j<ly-1; j++)
				{
					kk = i*ly + j;

					if(!f[kk])
						continue;

					jj = j + b[k];
					kk1 = ii*ly + jj;

					if(f[kk1])
						continue;

					kk1 = kk - ly -1;
					kk2 = kk1 + 1;
					kk3 = kk2 + 1;
					n[3] = f[kk1];
					n[2] = f[kk2];
					n[1] = f[kk3];
					kk1 = kk - 1;
					kk3 = kk + 1;
					n[4] = f[kk1];
					n[8] = f[kk3];
					kk1 = kk + ly - 1;
					kk2 = kk1 + 1;
					kk3 = kk2 + 1;
					n[5] = f[kk1];
					n[6] = f[kk2];
					n[7] = f[kk3];

					nrnd = n[1] + n[2] + n[3] + n[4]
						+n[5] + n[6] + n[7] + n[8];
					if(nrnd<=1)
						continue;

					cond = 0;
					n48 = n[4] + n[8];
					n26 = n[2] + n[6];
					n24 = n[2] + n[4];
					n46 = n[4] + n[6];
					n68 = n[6] + n[8];
					n82 = n[8] + n[2];
					n123 = n[1] + n[2] + n[3];
					n345 = n[3] + n[4] + n[5];
					n567 = n[5] + n[6] + n[7];
					n781 = n[7] + n[8] + n[1];

					if(n[2]==1 && n48==0 && n567>0)
					{
						if(!cond)
							continue;
						g[kk] = 0;
						shori = 1;
						continue;
					}

					if(n[6]==1 && n48==0 && n123>0)
					{
						if(!cond)
							continue;
						g[kk] = 0;
						shori = 1;
						continue;
					}

					if(n[8]==1 && n26==0 && n345>0)
					{
						if(!cond)
							continue;
						g[kk] = 0;
						shori = 1;
						continue;
					}

					if(n[4]==1 && n26==0 && n781>0)
					{
						if(!cond)
							continue;
						g[kk] = 0;
						shori = 1;
						continue;
					}

					if(n[5]==1 && n46==0)
					{
						if(!cond)
							continue;
						g[kk] = 0;
						shori = 1;
						continue;
					}

					if(n[7]==1 && n68==0)
					{
						if(!cond)
							continue;
						g[kk] = 0;
						shori = 1;
						continue;
					}

					if(n[1]==1 && n82==0)
					{
						if(!cond)
							continue;
						g[kk] = 0;
						shori = 1;
						continue;
					}

					if(n[3]==1 && n24==0)
					{
						if(!cond)
							continue;
						g[kk] = 0;
						shori = 1;
						continue;
					}

					cond = 1;
					if(!cond)
						continue;
					g[kk] = 0;
					shori = 1;
				}
			}

			for(i=0; i<lx; i++)
			{
				for(j=0; j<ly; j++)
				{
					kk = i*ly + j;
					f[kk] = g[kk];
				}
			}
		}
	}while(shori);

	free(g);
}					

/////////////////////////////////////////////////////////////////////////
//基于索引表的細(xì)化細(xì)化算法
//功能:對圖象進(jìn)行細(xì)化
//參數(shù):lpDIBBits:代表圖象的一維數(shù)組
//      lWidth:圖象高度
//      lHeight:圖象寬度
//      無返回值
BOOL WINAPI ThiningDIBSkeleton (LPSTR lpDIBBits, LONG lWidth, LONG lHeight)
{	
	//循環(huán)變量
	long i;
	long j;
	long lLength;
	
	unsigned char deletemark[256] = {
		0,0,0,0,0,0,0,1,	0,0,1,1,0,0,1,1,
		0,0,0,0,0,0,0,0,	0,0,1,1,1,0,1,1,
		0,0,0,0,0,0,0,0,	1,0,0,0,1,0,1,1,
		0,0,0,0,0,0,0,0,	1,0,1,1,1,0,1,1,
		0,0,0,0,0,0,0,0,	0,0,0,0,0,0,0,0,
		0,0,0,0,0,0,0,0,	0,0,0,0,0,0,0,0,
		0,0,0,0,0,0,0,0,	1,0,0,0,1,0,1,1,
		1,0,0,0,0,0,0,0,	1,0,1,1,1,0,1,1,
		0,0,1,1,0,0,1,1,	0,0,0,1,0,0,1,1,
		0,0,0,0,0,0,0,0,	0,0,0,1,0,0,1,1,
		1,1,0,1,0,0,0,1,	0,0,0,0,0,0,0,0,
		1,1,0,1,0,0,0,1,	1,1,0,0,1,0,0,0,
		0,1,1,1,0,0,1,1,	0,0,0,1,0,0,1,1,
		0,0,0,0,0,0,0,0,	0,0,0,0,0,1,1,1,
		1,1,1,1,0,0,1,1,	1,1,0,0,1,1,0,0,
		1,1,1,1,0,0,1,1,	1,1,0,0,1,1,0,0
	};//索引表

	unsigned char p0, p1, p2, p3, p4, p5, p6, p7;
	unsigned char *pmid, *pmidtemp;
	unsigned char sum;
	int changed;
	bool bStart = true;
	lLength = lWidth * lHeight;
	unsigned char *pTemp = (unsigned char *)malloc(sizeof(unsigned char) * lWidth * lHeight);
	
	//    P0 P1 P2
	//    P7    P3
	//    P6 P5 P4

	while(bStart)
	{
		bStart = false;
		changed = 0;

		//首先求邊緣點(diǎn)(并行)
		pmid = (unsigned char *)lpDIBBits + lWidth + 1;
		memset(pTemp, (BYTE) 0, lLength);
		pmidtemp = (unsigned char *)pTemp + lWidth + 1;
		for(i = 1; i < lHeight -1; i++)
		{
			for(j = 1; j < lWidth - 1; j++)
			{
				if( *pmid == 0)
				{
					pmid++;
					pmidtemp++;
					continue;
				}

				p3 = *(pmid + 1);
				p2 = *(pmid + 1 - lWidth);
				p1 = *(pmid - lWidth);
				p0 = *(pmid - lWidth -1);
				p7 = *(pmid - 1);
				p6 = *(pmid + lWidth - 1);
				p5 = *(pmid + lWidth);
				p4 = *(pmid + lWidth + 1);
				
				sum = p0 & p1 & p2 & p3 & p4 & p5 & p6 & p7;
				if(sum == 0)
				{
					*pmidtemp = 1;
				}

				pmid++;
				pmidtemp++;
			}
			pmid++;
			pmid++;
			pmidtemp++;
			pmidtemp++;
		}
		
		//現(xiàn)在開始串行刪除
		pmid = (unsigned char *)lpDIBBits + lWidth + 1;
		pmidtemp = (unsigned char *)pTemp + lWidth + 1;

		for(i = 1; i < lHeight -1; i++)
		{
			for(j = 1; j < lWidth - 1; j++)
			{
				if( *pmidtemp == 0)
				{
					pmid++;
					pmidtemp++;
					continue;
				}

				p3 = *(pmid + 1);
				p2 = *(pmid + 1 - lWidth);
				p1 = *(pmid - lWidth);
				p0 = *(pmid - lWidth -1);
				p7 = *(pmid - 1);
				p6 = *(pmid + lWidth - 1);
				p5 = *(pmid + lWidth);
				p4 = *(pmid + lWidth + 1);
				
				p1 *= 2;
				p2 *= 4;
				p3 *= 8;
				p4 *= 16;
				p5 *= 32;
				p6 *= 64;
				p7 *= 128;

				sum = p0 | p1 | p2 | p3 | p4 | p5 | p6 | p7;
				if(deletemark[sum] == 1)
				{
					*pmid = 0;
					bStart = true;
				}

				pmid++;
				pmidtemp++;
			}

			pmid++;
			pmid++;
			pmidtemp++;
			pmidtemp++;
		}
	}

	return true;
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久―日本道色综合久久| 国产一区二区在线电影| 日韩你懂的电影在线观看| 亚洲女人的天堂| 国产成人av电影免费在线观看| 91精品国产丝袜白色高跟鞋| 一区二区欧美在线观看| 91理论电影在线观看| 久久精品欧美一区二区三区不卡 | 欧美乱熟臀69xxxxxx| 悠悠色在线精品| 欧美曰成人黄网| 亚洲综合另类小说| 欧美日韩久久一区| 三级成人在线视频| 欧美一级黄色录像| 国产一区二区三区在线看麻豆| 精品国内片67194| 国产成人在线视频播放| 中文字幕中文字幕一区| 99久久精品国产毛片| 亚洲一区二区三区四区五区黄| 欧美视频一区二区三区在线观看| 三级久久三级久久| 欧美va在线播放| 北条麻妃一区二区三区| 一区二区日韩电影| 日韩亚洲电影在线| www.亚洲人| 蜜臀av性久久久久蜜臀aⅴ四虎| 日韩欧美国产wwwww| a4yy欧美一区二区三区| 婷婷综合久久一区二区三区| 日韩视频免费观看高清完整版在线观看| 久久国产人妖系列| 亚洲欧美日韩久久| 日韩精品在线看片z| 成人sese在线| 麻豆国产一区二区| 《视频一区视频二区| 日韩一级片在线播放| 99精品一区二区三区| 看片的网站亚洲| 亚洲男同性视频| 久久久久久免费| 欧美吻胸吃奶大尺度电影| 国产一区二区91| 青椒成人免费视频| 亚洲一区二区欧美日韩| 一区在线观看免费| 中文字幕国产一区二区| 精品福利视频一区二区三区| 欧美日韩精品电影| 色综合一个色综合亚洲| 国产ts人妖一区二区| 久久国产剧场电影| 人妖欧美一区二区| 午夜久久久影院| 亚州成人在线电影| 亚洲主播在线观看| 一区二区三区色| 亚洲欧美日韩中文播放| 国产精品久久二区二区| 国产精品美日韩| 国产精品久久久久久久久免费桃花 | 麻豆成人91精品二区三区| 婷婷国产v国产偷v亚洲高清| 亚洲二区在线观看| 亚洲成年人影院| 日韩精品电影在线| 日本成人中文字幕在线视频| 三级不卡在线观看| 奇米色一区二区| 精品一区二区三区久久久| 激情久久久久久久久久久久久久久久| 美女爽到高潮91| 黄色资源网久久资源365| 国产suv精品一区二区6| 亚洲国产一区二区三区青草影视| 亚洲另类中文字| 午夜日韩在线电影| 日本女优在线视频一区二区| 黄色日韩三级电影| 成人一二三区视频| 欧美性大战xxxxx久久久| 69p69国产精品| 久久精品日韩一区二区三区| 亚洲欧美日韩国产成人精品影院 | 日本亚洲最大的色成网站www| 久久精品国产网站| 不卡av电影在线播放| 中文字幕日韩av资源站| 亚洲3atv精品一区二区三区| 国内成人精品2018免费看| 无码av免费一区二区三区试看| 亚洲成人午夜电影| 成人亚洲一区二区一| 欧美日韩亚州综合| 国产精品久久福利| 麻豆传媒一区二区三区| 欧美色综合久久| 欧美国产成人在线| 久久精品二区亚洲w码| 色哟哟一区二区在线观看| 久久久精品国产99久久精品芒果 | 国产精品色噜噜| 日韩精品一二区| 91久久香蕉国产日韩欧美9色| 久久久美女艺术照精彩视频福利播放| 亚洲一区二区av在线| 成人免费看片app下载| 26uuu亚洲综合色欧美 | 亚洲不卡在线观看| 色偷偷一区二区三区| 日韩久久一区二区| 成人美女视频在线观看18| 亚洲精品一区二区三区精华液| 午夜精品在线视频一区| 91黄色小视频| 亚洲午夜久久久久久久久电影院 | 久久精品视频一区| 激情五月激情综合网| 日韩免费一区二区| 水野朝阳av一区二区三区| 欧美日韩在线综合| 亚洲国产成人av网| 欧美精品精品一区| 日韩精品高清不卡| 欧美成人福利视频| 国产精品一区二区久久精品爱涩 | 久久久91精品国产一区二区三区| 理论片日本一区| 久久午夜国产精品| 丰满少妇在线播放bd日韩电影| 久久精品免视看| 91麻豆国产福利精品| 国产精品一区二区在线看| 亚洲精品在线三区| 久久成人麻豆午夜电影| 欧美亚洲国产一区二区三区va| 国产精品国产馆在线真实露脸| 日本在线不卡一区| 欧美日韩国产美女| 国产网站一区二区| 日韩高清不卡在线| 久久色中文字幕| 91国偷自产一区二区开放时间 | 欧美一级视频精品观看| 久久99精品国产麻豆不卡| 国产欧美中文在线| 欧美日韩精品一区二区三区蜜桃 | 欧美高清www午色夜在线视频| 狠狠色狠狠色综合系列| 中文无字幕一区二区三区| 欧美色视频在线观看| 韩日欧美一区二区三区| 亚洲欧美一区二区三区极速播放| 欧美一区二区三区四区视频| 成人短视频下载| 日本欧美肥老太交大片| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 99久久夜色精品国产网站| 日韩av不卡一区二区| 日韩一区在线播放| 久久综合色天天久久综合图片| 91在线观看地址| 国产成人精品综合在线观看| 日韩va亚洲va欧美va久久| 亚洲精品乱码久久久久久| 久久精品这里都是精品| 欧美一区二区三区四区高清| 91久久精品一区二区| 亚洲一区二区欧美| 欧美刺激午夜性久久久久久久 | 国产女主播一区| 欧美一区二区精品在线| 欧美日韩国产综合草草| 91黄色免费版| 色综合夜色一区| 国产成人激情av| 国产精品一区二区果冻传媒| 久久精品国产亚洲一区二区三区| 亚洲成a人片在线不卡一二三区| 亚洲欧美一区二区三区孕妇| 精品1区2区在线观看| 精品免费视频一区二区| 精品精品欲导航| 日韩欧美另类在线| 欧美日韩国产一二三| 欧美嫩在线观看| 欧美日韩视频在线一区二区| 欧美日韩精品一区二区天天拍小说| 欧美三级电影精品| 正在播放一区二区| 欧美xxxxxxxxx| 欧美国产精品中文字幕| 亚洲欧美日韩国产成人精品影院| 一区二区三区美女| 蜜桃精品视频在线| 懂色一区二区三区免费观看|