成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁 > 知識庫 > python opencv人臉識別考勤系統(tǒng)的完整源碼

python opencv人臉識別考勤系統(tǒng)的完整源碼

熱門標(biāo)簽:幫人做地圖標(biāo)注收費算詐騙嗎 悟空智電銷機(jī)器人6 蘇州電銷機(jī)器人十大排行榜 電信營業(yè)廳400電話申請 溫州旅游地圖標(biāo)注 江蘇房產(chǎn)電銷機(jī)器人廠家 外呼不封號系統(tǒng) 遼寧400電話辦理多少錢 荊州云電銷機(jī)器人供應(yīng)商

如需安裝運行環(huán)境或遠(yuǎn)程調(diào)試,可加QQ905733049, 或QQ2945218359由專業(yè)技術(shù)人員遠(yuǎn)程協(xié)助!

運行結(jié)果如下:

代碼如下:

import wx
import wx.grid
from time import localtime,strftime
import os
import io
import zlib
import dlib  # 人臉識別的庫dlib
import numpy as np  # 數(shù)據(jù)處理的庫numpy
import cv2  # 圖像處理的庫OpenCv
import _thread
import threading
 
ID_NEW_REGISTER = 160
ID_FINISH_REGISTER = 161
 
ID_START_PUNCHCARD = 190
ID_END_PUNCARD = 191
 
ID_OPEN_LOGCAT = 283
ID_CLOSE_LOGCAT = 284
 
ID_WORKER_UNAVIABLE = -1
 
PATH_FACE = "data/face_img_database/"
# face recognition model, the object maps human faces into 128D vectors
facerec = dlib.face_recognition_model_v1("model/dlib_face_recognition_resnet_model_v1.dat")
# Dlib 預(yù)測器
detector = dlib.get_frontal_face_detector()
predictor = dlib.shape_predictor('model/shape_predictor_68_face_landmarks.dat')
 
class WAS(wx.Frame):
    def __init__(self):
        wx.Frame.__init__(self,parent=None,title="員工考勤系統(tǒng)",size=(920,560))
 
        self.initMenu()
        self.initInfoText()
        self.initGallery()
        self.initDatabase()
        self.initData()
 
    def initData(self):
        self.name = ""
        self.id =ID_WORKER_UNAVIABLE
        self.face_feature = ""
        self.pic_num = 0
        self.flag_registed = False
        self.puncard_time = "21:00:00"
        self.loadDataBase(1)
 
    def initMenu(self):
 
        menuBar = wx.MenuBar()  #生成菜單欄
        menu_Font = wx.Font()#Font(faceName="consolas",pointsize=20)
        menu_Font.SetPointSize(14)
        menu_Font.SetWeight(wx.BOLD)
 
 
        registerMenu = wx.Menu() #生成菜單
        self.new_register = wx.MenuItem(registerMenu,ID_NEW_REGISTER,"新建錄入")
        self.new_register.SetBitmap(wx.Bitmap("drawable/new_register.png"))
        self.new_register.SetTextColour("SLATE BLUE")
        self.new_register.SetFont(menu_Font)
        registerMenu.Append(self.new_register)
 
        self.finish_register = wx.MenuItem(registerMenu,ID_FINISH_REGISTER,"完成錄入")
        self.finish_register.SetBitmap(wx.Bitmap("drawable/finish_register.png"))
        self.finish_register.SetTextColour("SLATE BLUE")
        self.finish_register.SetFont(menu_Font)
        self.finish_register.Enable(False)
        registerMenu.Append(self.finish_register)
 
 
        puncardMenu = wx.Menu()
        self.start_punchcard = wx.MenuItem(puncardMenu,ID_START_PUNCHCARD,"開始簽到")
        self.start_punchcard.SetBitmap(wx.Bitmap("drawable/start_punchcard.png"))
        self.start_punchcard.SetTextColour("SLATE BLUE")
        self.start_punchcard.SetFont(menu_Font)
        puncardMenu.Append(self.start_punchcard)
 
 
        self.close_logcat = wx.MenuItem(logcatMenu, ID_CLOSE_LOGCAT, "關(guān)閉日志")
        self.close_logcat.SetBitmap(wx.Bitmap("drawable/close_logcat.png"))
        self.close_logcat.SetFont(menu_Font)
        self.close_logcat.SetTextColour("SLATE BLUE")
        logcatMenu.Append(self.close_logcat)
 
        menuBar.Append(registerMenu,"人臉錄入")
        menuBar.Append(puncardMenu,"刷臉簽到")
        menuBar.Append(logcatMenu,"考勤日志")
        self.SetMenuBar(menuBar)
 
        self.Bind(wx.EVT_MENU,self.OnNewRegisterClicked,id=ID_NEW_REGISTER)
        self.Bind(wx.EVT_MENU,self.OnFinishRegisterClicked,id=ID_FINISH_REGISTER)
        self.Bind(wx.EVT_MENU,self.OnStartPunchCardClicked,id=ID_START_PUNCHCARD)
        self.Bind(wx.EVT_MENU,self.OnEndPunchCardClicked,id=ID_END_PUNCARD)
        self.Bind(wx.EVT_MENU,self.OnOpenLogcatClicked,id=ID_OPEN_LOGCAT)
        self.Bind(wx.EVT_MENU,self.OnCloseLogcatClicked,id=ID_CLOSE_LOGCAT)
 
 
        pass
 
    def OnCloseLogcatClicked(self,event):
        self.SetSize(920,560)
 
        self.initGallery()
        pass
 
    def register_cap(self,event):
        # 創(chuàng)建 cv2 攝像頭對象
        self.cap = cv2.VideoCapture(0)
        # cap.set(propId, value)
        # 設(shè)置視頻參數(shù),propId設(shè)置的視頻參數(shù),value設(shè)置的參數(shù)值
        # self.cap.set(3, 600)
        # self.cap.set(4,600)
        # cap是否初始化成功
        while self.cap.isOpened():
            # cap.read()
            # 返回兩個值:
            #    一個布爾值true/false,用來判斷讀取視頻是否成功/是否到視頻末尾
            #    圖像對象,圖像的三維矩陣
            flag, im_rd = self.cap.read()
 
            # 每幀數(shù)據(jù)延時1ms,延時為0讀取的是靜態(tài)幀
            kk = cv2.waitKey(1)
            # 人臉數(shù) dets
            dets = detector(im_rd, 1)
 
            # 檢測到人臉
            if len(dets) != 0:
                biggest_face = dets[0]
                #取占比最大的臉
                maxArea = 0
                for det in dets:
                    w = det.right() - det.left()
                    h = det.top()-det.bottom()
                    if w*h > maxArea:
                        biggest_face = det
                        maxArea = w*h
                        # 繪制矩形框
 
                cv2.rectangle(im_rd, tuple([biggest_face.left(), biggest_face.top()]),
                                      tuple([biggest_face.right(), biggest_face.bottom()]),
                                      (255, 0, 0), 2)
                img_height, img_width = im_rd.shape[:2]
                image1 = cv2.cvtColor(im_rd, cv2.COLOR_BGR2RGB)
                pic = wx.Bitmap.FromBuffer(img_width, img_height, image1)
                # 顯示圖片在panel上
                self.bmp.SetBitmap(pic)
 
                # 獲取當(dāng)前捕獲到的圖像的所有人臉的特征,存儲到 features_cap_arr
                shape = predictor(im_rd, biggest_face)
                features_cap = facerec.compute_face_descriptor(im_rd, shape)
 
                # 對于某張人臉,遍歷所有存儲的人臉特征
                for i,knew_face_feature in enumerate(self.knew_face_feature):
                    # 將某張人臉與存儲的所有人臉數(shù)據(jù)進(jìn)行比對
                    compare = return_euclidean_distance(features_cap, knew_face_feature)
                    if compare == "same":  # 找到了相似臉
                        self.infoText.AppendText(self.getDateAndTime()+"工號:"+str(self.knew_id[i])
                                                 +" 姓名:"+self.knew_name[i]+" 的人臉數(shù)據(jù)已存在\r\n")
                        self.flag_registed = True
                        self.OnFinishRegister()
                        _thread.exit()
 
                        # print(features_known_arr[i][-1])
                face_height = biggest_face.bottom()-biggest_face.top()
                face_width = biggest_face.right()- biggest_face.left()
                im_blank = np.zeros((face_height, face_width, 3), np.uint8)
                try:
                    for ii in range(face_height):
                        for jj in range(face_width):
                            im_blank[ii][jj] = im_rd[biggest_face.top() + ii]parent=self.bmp,max=100000000,min=ID_WORKER_UNAVIABLE)
            for knew_id in self.knew_id:
                if knew_id == self.id:
                    self.id = ID_WORKER_UNAVIABLE
                    wx.MessageBox(message="工號已存在,請重新輸入", caption="警告")
 
        while self.name == '':
            self.name = wx.GetTextFromUser(message="請輸入您的的姓名,用于創(chuàng)建姓名文件夾",
                                           caption="溫馨提示",
                                      default_value="", parent=self.bmp)
 
            # 監(jiān)測是否重名
            for exsit_name in (os.listdir(PATH_FACE)):
                if self.name == exsit_name:
                    wx.MessageBox(message="姓名文件夾已存在,請重新輸入", caption="警告")
                    self.name = ''
                    break
        os.makedirs(PATH_FACE+self.name)
        _thread.start_new_thread(self.register_cap,(event,))
        pass
 
    def OnFinishRegister(self):
 
        self.new_register.Enable(True)
        self.finish_register.Enable(False)
        self.cap.release()
 
        self.bmp.SetBitmap(wx.Bitmap(self.pic_index))
        if self.flag_registed == True:
            dir = PATH_FACE + self.name
            for file in os.listdir(dir):
                os.remove(dir+"/"+file)
                print("已刪除已錄入人臉的圖片", dir+"/"+file)
            os.rmdir(PATH_FACE + self.name)
            print("已刪除已錄入人臉的姓名文件夾", dir)
            self.initData()
            return
        if self.pic_num>0:
            pics = os.listdir(PATH_FACE + self.name)
            feature_list = []
            feature_average = []
            for i in range(len(pics)):
                pic_path = PATH_FACE + self.name + "/" + pics[i]
                print("正在讀的人臉圖像:", pic_path)
                img = iio.imread(pic_path)
                img_gray = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
                dets = detector(img_gray, 1)
                if len(dets) != 0:
                    shape = predictor(img_gray, dets[0])
                    face_descriptor = facerec.compute_face_descriptor(img_gray, shape)
                    feature_list.append(face_descriptor)
                else:
                    face_descriptor = 0
                    print("未在照片中識別到人臉")
            if len(feature_list) > 0:
                for j in range(128):
                    #防止越界
                    feature_average.append(0)
                    for i in range(len(feature_list)):
                        feature_average[j] += feature_list[i][j]
                    feature_average[j] = (feature_average[j]) / len(feature_list)
                self.insertARow([self.id,self.name,feature_average],1)
                self.infoText.AppendText(self.getDateAndTime()+"工號:"+str(self.id)
                                     +" 姓名:"+self.name+" 的人臉數(shù)據(jù)已成功存入\r\n")
            pass
 
        else:
            os.rmdir(PATH_FACE + self.name)
            print("已刪除空文件夾",PATH_FACE + self.name)
        self.initData()
 
    def OnFinishRegisterClicked(self,event):
        self.OnFinishRegister()
        pass
 
 
    def OnStartPunchCardClicked(self,event):
        # cur_hour = datetime.datetime.now().hour
        # print(cur_hour)
        # if cur_hour>=8 or cur_hour6:
        #     wx.MessageBox(message='''您錯過了今天的簽到時間,請明天再來\n
        #     每天的簽到時間是:6:00~7:59''', caption="警告")
        #     return
        self.start_punchcard.Enable(False)
        self.end_puncard.Enable(True)
        self.loadDataBase(2)
        threading.Thread(target=self.punchcard_cap,args=(event,)).start()
        #_thread.start_new_thread(self.punchcard_cap,(event,))
        pass
 
    def OnEndPunchCardClicked(self,event):
        self.start_punchcard.Enable(True)
        self.end_puncard.Enable(False)
        pass
 
 
    def initGallery(self):
        self.pic_index = wx.Image("drawable/index.png", wx.BITMAP_TYPE_ANY).Scale(600, 500)
        self.bmp = wx.StaticBitmap(parent=self, pos=(320,0), bitmap=wx.Bitmap(self.pic_index))
        pass
 
    def getDateAndTime(self):
        dateandtime = strftime("%Y-%m-%d %H:%M:%S",localtime())
        return "["+dateandtime+"]"
 
    #數(shù)據(jù)庫部分
    #初始化數(shù)據(jù)庫
    def initDatabase(self):
        conn = sqlite3.connect("inspurer.db")  #建立數(shù)據(jù)庫連接
        cur = conn.cursor()             #得到游標(biāo)對象
        cur.execute('''create table if not exists worker_info
        (name text not null,
        id int not null primary key,
        face_feature array not null)''')
        cur.execute('''create table if not exists logcat
         (datetime text not null,
         id int not null,
         name text not null,
         late text not null)''')
        cur.close()
        conn.commit()
        conn.close()
 
    def adapt_array(self,arr):
        out = io.BytesIO()
        np.save(out, arr)
        out.seek(0)
 
        dataa = out.read()
        # 壓縮數(shù)據(jù)流
        return sqlite3.Binary(zlib.compress(dataa, zlib.Z_BEST_COMPRESSION))
 
    def convert_array(self,text):
        out = io.BytesIO(text)
        out.seek(0)
 
        dataa = out.read()
        # 解壓縮數(shù)據(jù)流
        out = io.BytesIO(zlib.decompress(dataa))
        return np.load(out)
 
    def insertARow(self,Row,type):
        conn = sqlite3.connect("inspurer.db")  # 建立數(shù)據(jù)庫連接
        cur = conn.cursor()  # 得到游標(biāo)對象
        if type == 1:
            cur.execute("insert into worker_info (id,name,face_feature) values(?,?,?)",
                    (Row[0],Row[1],self.adapt_array(Row[2])))
            print("寫人臉數(shù)據(jù)成功")
        if type == 2:
            cur.execute("insert into logcat (id,name,datetime,late) values(?,?,?,?)",
                        (Row[0],Row[1],Row[2],Row[3]))
            print("寫日志成功")
            pass
        cur.close()
        conn.commit()
        conn.close()
        pass
 
    def loadDataBase(self,type):
 
        conn = sqlite3.connect("inspurer.db")  # 建立數(shù)據(jù)庫連接
        cur = conn.cursor()  # 得到游標(biāo)對象
 
        if type == 1:
            self.knew_id = []
            self.knew_name = []
            self.knew_face_feature = []
            cur.execute('select id,name,face_feature from worker_info')
            origin = cur.fetchall()
            for row in origin:
                print(row[0])
                self.knew_id.append(row[0])
                print(row[1])
                self.knew_name.append(row[1])
                print(self.convert_array(row[2]))
                self.knew_face_feature.append(self.convert_array(row[2]))
        if type == 2:
            self.logcat_id = []
            self.logcat_name = []
            self.logcat_datetime = []
            self.logcat_late = []
            cur.execute('select id,name,datetime,late from logcat')
            origin = cur.fetchall()
            for row in origin:
                print(row[0])
                self.logcat_id.append(row[0])
                print(row[1])
                self.logcat_name.append(row[1])
                print(row[2])
                self.logcat_datetime.append(row[2])
                print(row[3])
                self.logcat_late.append(row[3])
        pass
app = wx.App()
frame = WAS()
frame.Show()
app.MainLoop()

運行結(jié)果如下:

C++學(xué)習(xí)參考實例

使用C++ MFC編寫一個簡單的五子棋游戲程序

https://www.jb51.net/article/180940.htm

C++實現(xiàn)簡易五子棋游戲

https://www.jb51.net/article/190548.htm

c++ 基于opencv 識別、定位二維碼

https://www.jb51.net/article/207158.htm

到此這篇關(guān)于python opencv人臉識別考勤系統(tǒng)的完整源碼的文章就介紹到這了,更多相關(guān)python 人臉識別考勤系統(tǒng)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • 詳解Python OpenCV數(shù)字識別案例
  • Python基于Opencv識別兩張相似圖片
  • python基于OpenCV模板匹配識別圖片中的數(shù)字
  • Python+Opencv實現(xiàn)數(shù)字識別的示例代碼
  • Python OpenCV招商銀行信用卡卡號識別的方法
  • Opencv+Python識別PCB板圖片的步驟
  • python基于opencv實現(xiàn)人臉識別
  • python+opencv實現(xiàn)文字顏色識別與標(biāo)定功能

標(biāo)簽:宿遷 臺灣 喀什 濟(jì)南 三沙 黃山 景德鎮(zhèn) 欽州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《python opencv人臉識別考勤系統(tǒng)的完整源碼》,本文關(guān)鍵詞  python,opencv,人臉,識別,考勤系統(tǒng),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《python opencv人臉識別考勤系統(tǒng)的完整源碼》相關(guān)的同類信息!
  • 本頁收集關(guān)于python opencv人臉識別考勤系統(tǒng)的完整源碼的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    国产精品扒开腿做爽爽爽a片唱戏| 无码精品在线观看| 又粗又黑又大的吊av| 色域天天综合网| 按摩亚洲人久久| 又黄又湿又爽又免费又色| 粉嫩喷白浆久久| 分分操这里只有精品| 欧产日产国产69| 成人综合社区| 9.1在线观看免费| youjizz久久| 国产高清一级片| 老司机午夜网站| www.尤物.com| 国产东北露脸精品视频| 亚洲天堂成人在线| 精品爽片免费看久久| 国产66精品久久久久999小说| 手机在线免费看av| 日本不卡1区2区3区| 欧美中文在线观看| 91免费版网站入口| 亚洲黄色片在线观看| 久久99久久99精品免观看粉嫩| 福利一区二区在线观看| 国内精品久久久久伊人av| 99久久久无码国产精品免费| 青青草免费在线视频观看| 91a在线视频| 91精品免费在线观看| av影片在线看| 天天躁日日躁狠狠躁av麻豆男男| 国产视频自拍一区| 午夜爱爱毛片xxxx视频免费看| 欧美aaaaa成人免费观看视频| 丁香婷婷久久久综合精品国产| 国产又黄又爽又猛免费app| 久久久高清一区二区三区| 国产探花视频在线播放| 成人写真福利网| 18被视频免费观看视频| 国内精品久久久久影院薰衣草| 日日摸天天添天天添破| 国产在线视频自拍| 91浏览器在线视频| 久久综合色鬼综合色| caopeng视频| 国产成人夜色高潮福利影视| 日韩一区有码在线| 搞黄视频在线观看| 午夜成年女人毛片免费观看| 国产深喉视频一区二区| 亚洲经典视频| 色欲欲www成人网站| 国产视频观看一区| 久久伊人蜜桃av一区二区| 性欧美18+| 久久激五月天综合精品| 伊人久久大香线蕉av一区二区| 女厕嘘嘘一区二区在线播放| 91精品国模一区二区三区| 九九视频九九热| 国产三级三级看三级| 日韩精品一级二级| 最新久久zyz资源站| 国产专区视频| 欧美一区二区三区精品| 少妇高潮一区二区三区69| 亚洲国产黄色片| 成人毛片在线精品国产| 国产伦精品一区二区三区视频免费| 在线播放三级网站| 国内精品自线一区二区三区视频| 91av成人在线| 国产毛片aaa| 国产精品久久久久9999小说| 99久久精品免费视频| 日韩欧美99| 亚洲精品一卡二卡三卡四卡| 亚洲欧美清纯在线制服| 亚洲精美视频| 国产成人精品a视频| 中文在线а天堂av| 91精品国产色综合久久不卡98| 日韩视频免费大全中文字幕| 欧美电影院免费观看| 国产一区二区网址| 自拍偷拍欧美一区| 国产成人精品一区二区三区网站观看| 欧美日韩最好看的视频| 欧美精品一区男女天堂| 日本一区不卡| 亚洲成av人影片在线观看| 黄页网站大全一区二区| 久久久久毛片免费观看| 视频二区欧美毛片免费观看| 日韩 欧美 高清| 精品久久人人做人人爰| 性做久久久久久免费观看欧美| 色狠狠桃花综合| 日本不卡一二区| 三级视频在线看| 少妇高潮惨叫久久久久| 好吊色免费视频| 国产伦精品一区二区三区妓女| 亚洲精品在线二区| 精品久久久久久无码中文野结衣| 综合欧美亚洲日本| 亚洲美女一区| 亚洲综合精品自拍| 一色屋成人免费精品网站| 亚洲成人三级| 青草在线视频| 天天堂资源网在线观看免费视频| 亚洲美女又黄又爽在线观看| 亚洲精品女av网站| 久久久久久久久久久久久久国产| 韩国三级hd中文字幕有哪些| 人妻少妇无码精品视频区| 黄色污网站在线观看| www.视频在线.com| 美女av在线播放| 成人涩涩视频| 一色桃子在线| 欧美精品一区二区三区久久久竹菊| 国产精品77777| www.豆豆成人网.com| 国产九九在线| av日韩免费电影| 日本三级中文字幕| 欧美一区亚洲| 久久九九全国免费精品观看| 嫩草影院入口一二三免费| 欧美日韩精品免费在线观看视频| 很黄很a的视频| 国产精品不卡一区| 久久久久久亚洲精品中文字幕| 久久久久久久久久婷婷| 国产精品爽爽爽| 久久人妻免费视频| 99热这里精品| 亚洲永久免费av| caoporn超碰国产公开| 久久永久免费视频| 激情一区二区| 欧美电影免费观看高清完整| 国产午夜精品视频一区二区三区| 国内精品久久久久久野外| 国产婷婷色一区二区在线观看| 色综合伊人色综合网| 欧美第一页草草影院浮力| jizzjizz国产精品喷水| 先锋影音男人资源| 丰满岳妇乱一区二区三区| 亚洲永久免费视频| 亚洲影视九九影院在线观看| 亚洲国产精品123| 91插插视频| www.日本在线播放| 在线91av| 蜜桃久久一区二区三区| 日韩美女一级片| 尤物视频在线观看网站| 亚洲v在线观看| 黄网站免费观看| 成人国产视频在线观看| 一区二区三区四区五区视频在线观看| jizz日本18| 看女生喷水的网站在线观看| 天堂а√在线最新版中文在线| 91美女片黄在线观看游戏| 欧美精品久久一区二区| 蜜臀av性久久久久蜜臀aⅴ流畅| www.97av| 国产丝袜美腿一区二区三区| 欧美视频第三页| 国产亚洲第一的欧洲日产| 奇米成人av国产一区二区三区| 鬼打鬼之黄金道士1992林正英| 色综合色综合久久综合频道88| 午夜精品免费在线观看| 一区二区三区不卡在线| 国产1区2区3区中文字幕| 欧美精品在线看| 污影院在线观看| 无码人妻久久一区二区三区| 毛片毛片毛片毛| 国产精品美女免费看| 欧美高清一级片在线观看| 日本在线аv| 91高清视频在线免费观看| 日韩三级在线观看| 一色屋精品亚洲香蕉网站| 人人干视频在线| 日韩av电影中文字幕| 天海翼在线观看视频| 青青草99啪国产免费| 风间由美中文字幕在线看视频国产欧美| 日韩av免费一区| 99riav国产精品视频| 国产高清在线| www.天堂av.com| 日韩经典中文字幕一区| 欧美色播在线播放| 麻豆亚洲av熟女国产一区二| 麻豆视频在线观看免费网站| 欧洲精品一区二区三区久久| 亚洲国产综合91精品麻豆| 日韩精品一区二区在线视频| 911精品产国品一二三产区| 亚洲少妇中文在线| 亚洲一级一级97网| av手机天堂| 欧美α欧美αv大片| 国产精品99精品无码视| 裸体一区二区三区| 97精品资源在线观看| 国产mv免费观看入口亚洲| 国产成+人+亚洲+欧美+综合| 精品国产一级| 欧美日韩亚洲综合在线| av电影天堂一区二区在线| 精品人妻av一区二区三区| 成人毛片高清视频观看| 欧美精选视频在线观看| 91亚洲国产成人久久精品网站| 91精彩在线视频| 热久久免费视频精品| 国产网红主播福利一区二区| 午夜免费福利在线| 久久要要av| 日韩网址在线观看| 极品粉嫩小仙女高潮喷水久久| 亚洲一区色图| 99精品一级欧美片免费播放| av一级亚洲| 欧美成人明星100排名| av福利网址网站| 日韩欧美你懂的| 女明星视频黄又免费| 亚洲人精选亚洲人成在线| 欧美xxxx18性欧美| 亚洲精品电影网在线观看| 另类小说综合欧美亚洲| 无码人妻丰满熟妇区毛片蜜桃精品| 性xxxx丰满孕妇xxxx另类| 女人十八毛片嫩草av| 97视频色精品| 五月天婷婷视频| 毛片免费看不卡网站| 国内视频在线精品| 亚洲免费在线| 成人午夜两性视频| 欧美午夜性春猛xxxx| 国产精品户外野外| 一区二区三区国产好| 欧美国产二区| 国产亚洲永久域名| 91视频免费观看| 国产99视频在线观看| 日本欧美一级片| 精品国产免费人成电影在线观...| 竹内纱里奈兽皇系列在线观看| 亚洲欧美日韩一区在线| 亚洲乱码精品一二三四区日韩在线| 在线视频欧美一区| 欧美国产精品va在线观看| 成人av无码一区二区三区| 日韩精品综合一本久道在线视频| 亚洲男人的天堂在线| 久久夜色精品亚洲| 欧美日韩高清在线观看| 在线观看福利电影| 亚洲综合色在线| 国产精品三级久久久久久电影| 亚洲高清电影| 91精品久久久久久久久久久| 91在线无精精品一区二区| 欧美另类精品xxxx孕妇| 欧美精品一本久久男人的天堂| 91视频免费在线观看| 中文字幕国产欧美| 久久久久久视频| www国产亚洲精品久久麻豆| 日本在线一区| 影音先锋男人看片资源站| 亚洲精品综合| 韩国av网站在线| 又黄又爽无遮挡| 日韩不卡av| 欧美s码亚洲码精品m码| 亚洲欧洲日韩国产| 欧美大片va欧美在线播放| 亚洲a一区二区| av影音资源| 欧美日韩视频精品一区二区| 57pao成人国产永久免费| 欧美精品激情视频| 一级毛片免费高清中文字幕久久网| 久久婷婷国产| 国内成人精品2018免费看| 欧美网色网址| 91九色蝌蚪国产| 亚洲不卡免费视频| 一级黄色短视频| 亚洲大尺度美女在线| www99avcom| 丰满岳乱妇一区二区三区| 欧美影院三区| 国产精品天干天干在观线| 麻豆精品视频| 日韩中文字幕一区二区三区| 亚洲视频在线观看| 亚洲欧美另类久久久精品2019| 日韩精品久久久久久久的张开腿让| 四虎成人精品免费影院| www..com久久爱| av女名字大全列表| 日韩精品视频在线观看一区二区三区| 国产精品久久久久久久久免费丝袜| 久久精品女人天堂av免费观看| 国产三级精品在线观看| 在线视频亚洲色图| 欧美大尺度做爰床戏| 大西瓜av在线| 黄色免费高清视频| 亚洲午夜激情在线|