日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

仅使用NumPy完成卷积神经网络CNN的搭建(附Python代码)

發布時間:2024/8/23 python 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 仅使用NumPy完成卷积神经网络CNN的搭建(附Python代码) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

摘要:?現有的Caffe、TensorFlow等工具箱已經很好地實現CNN模型,但這些工具箱需要的硬件資源比較多,不利于初學者實踐和理解。因此,本文教大家如何僅使用NumPy來構建卷積神經網絡(Convolutional Neural Network , CNN)模型,具體實現了卷積層、ReLU激活函數層以及最大池化層(max pooling),代碼簡單,講解詳細。

? ? ? ?目前網絡上存在很多編譯好的機器學習、深度學習工具箱,在某些情況下,直接調用已經搭好的模型可能是非常方便且有效的,比如Caffe、TensorFlow工具箱,但這些工具箱需要的硬件資源比較多,不利于初學者實踐和理解。因此,為了更好的理解并掌握相關知識,最好是能夠自己編程實踐下。本文將展示如何使用NumPy來構建卷積神經網絡(Convolutional Neural Network , CNN)。
? ? ? ?CNN是較早提出的一種神經網絡,直到近年來才變得火熱,可以說是計算機視覺領域中應用最多的網絡。一些工具箱中已經很好地實現CNN模型,相關的庫函數已經完全編譯好,開發人員只需調用現有的模塊即可完成模型的搭建,避免了實現的復雜性。但實際上,這樣會使得開發人員不知道其中具體的實現細節。有些時候,數據科學家必須通過一些細節來提升模型的性能,但這些細節是工具箱不具備的。在這種情況下,唯一的解決方案就是自己編程實現一個類似的模型,這樣你對實現的模型會有最高級別的控制權,同時也能更好地理解模型每步的處理過程。
? ? ? ?本文將僅使用NumPy實現CNN網絡,創建三個層模塊,分別為卷積層(Conv)、ReLu激活函數和最大池化(max pooling)。

1.讀取輸入圖像

? ? ? ?以下代碼將從skimage Python庫中讀取已經存在的圖像,并將其轉換為灰度圖:

1. import skimage.data 2. # Reading the image 3. img = skimage.data.chelsea() 4. # Converting the image into gray. 5. img = skimage.color.rgb2gray(img)js

? ? ? ?讀取圖像是第一步,下一步的操作取決于輸入圖像的大小。將圖像轉換為灰度圖如下所示:


2.準備濾波器

? ? ? ?以下代碼為第一個卷積層Conv準備濾波器組(Layer 1,縮寫為l1,下同):

1. l1_filter = numpy.zeros((2,3,3))

? ? ? ?根據濾波器的數目和每個濾波器的大小來創建零數組。上述代碼創建了2個3x3大小的濾波器,(2,3,3)中的元素數字分別表示2:濾波器的數目(num_filters)、3:表示濾波器的列數、3:表示濾波器的行數。由于輸入圖像是灰度圖,讀取后變成2維圖像矩陣,因此濾波器的尺寸選擇為2維陣列,舍去了深度。如果圖像是彩色圖(具有3個通道,分別為RGB),則濾波器的大小必須為(3,3,3),最后一個3表示深度,上述代碼也要更改,變成(2,3,3,3)。
? ? ? ?濾波器組的大小由自己指定,但沒有給定濾波器中具體的數值,一般采用隨機初始化。下列一組值可以用來檢查垂直和水平邊緣:

1. l1_filter[0, :, :] = numpy.array([[[-1, 0, 1], 2. [-1, 0, 1], 3. [-1, 0, 1]]]) 4. l1_filter[1, :, :] = numpy.array([[[1, 1, 1], 5. [0, 0, 0], 6. [-1, -1, -1]]])

3.卷積層(Conv Layer)

? ? ? ?構建好濾波器后,接下來就是與輸入圖像進行卷積操作。下面代碼使用conv函數將輸入圖像與濾波器組進行卷積:

1. l1_feature_map = conv(img, l1_filter)

? ? ? ?conv函數只接受兩個參數,分別為輸入圖像、濾波器組:

1. def conv(img, conv_filter): 2. if len(img.shape) > 2 or len(conv_filter.shape) > 3: # Check if number of image channels matches the filter depth. 3. if img.shape[-1] != conv_filter.shape[-1]: 4. print("Error: Number of channels in both image and filter must match.") 5. sys.exit() 6. if conv_filter.shape[1] != conv_filter.shape[2]: # Check if filter dimensions are equal. 7. print('Error: Filter must be a square matrix. I.e. number of rows and columns must match.') 8. sys.exit() 9. if conv_filter.shape[1]%2==0: # Check if filter diemnsions are odd. 10. print('Error: Filter must have an odd size. I.e. number of rows and columns must be odd.') 11. sys.exit() 12. 13. # An empty feature map to hold the output of convolving the filter(s) with the image. 14. feature_maps = numpy.zeros((img.shape[0]-conv_filter.shape[1]+1, 15. img.shape[1]-conv_filter.shape[1]+1, 16. conv_filter.shape[0])) 17. 18. # Convolving the image by the filter(s). 19. for filter_num in range(conv_filter.shape[0]): 20. print("Filter ", filter_num + 1) 21. curr_filter = conv_filter[filter_num, :] # getting a filter from the bank. 22. """ 23. Checking if there are mutliple channels for the single filter. 24. If so, then each channel will convolve the image. 25. The result of all convolutions are summed to return a single feature map. 26. """ 27. if len(curr_filter.shape) > 2: 28. conv_map = conv_(img[:, :, 0], curr_filter[:, :, 0]) # Array holding the sum of all feature maps. 29. for ch_num in range(1, curr_filter.shape[-1]): # Convolving each channel with the image and summing the results. 30. conv_map = conv_map + conv_(img[:, :, ch_num], 31. curr_filter[:, :, ch_num]) 32. else: # There is just a single channel in the filter. 33. conv_map = conv_(img, curr_filter) 34. feature_maps[:, :, filter_num] = conv_map # Holding feature map with the current filter. 35. return feature_maps # Returning all feature maps.

? ? ? ?該函數首先確保每個濾波器的深度等于圖像通道的數目,代碼如下。if語句首先檢查圖像與濾波器是否有一個深度通道,若存在,則檢查其通道數是否相等,如果匹配不成功,則報錯。

1. if len(img.shape) > 2 or len(conv_filter.shape) > 3: # Check if number of image channels matches the filter depth. 2. if img.shape[-1] != conv_filter.shape[-1]: 3. print("Error: Number of channels in both image and filter must match.")

? ? ? ?此外,濾波器的大小應該是奇數,且每個濾波器的大小是相等的。這是根據下面兩個if條件語塊來檢查的。如果條件不滿足,則程序報錯并退出。

1. if conv_filter.shape[1] != conv_filter.shape[2]: # Check if filter dimensions are equal. 2. print('Error: Filter must be a square matrix. I.e. number of rows and columns must match.') 3. sys.exit() 4. if conv_filter.shape[1]%2==0: # Check if filter diemnsions are odd. 5. print('Error: Filter must have an odd size. I.e. number of rows and columns must be odd.') 6. sys.exit()

? ? ? ?上述條件都滿足后,通過初始化一個數組來作為濾波器的值,通過下面代碼來指定濾波器的值:

1. # An empty feature map to hold the output of convolving the filter(s) with the image. 2. feature_maps = numpy.zeros((img.shape[0]-conv_filter.shape[1]+1, 3. img.shape[1]-conv_filter.shape[1]+1, 4. conv_filter.shape[0]))

? ? ? ?由于沒有設置步幅(stride)或填充(padding),默認為步幅設置為1,無填充。那么卷積操作后得到的特征圖大小為(img_rows-filter_rows+1, image_columns-filter_columns+1, num_filters),即輸入圖像的尺寸減去濾波器的尺寸后再加1。注意到,每個濾波器都會輸出一個特征圖。

1. # Convolving the image by the filter(s). 2. for filter_num in range(conv_filter.shape[0]): 3. print("Filter ", filter_num + 1) 4. curr_filter = conv_filter[filter_num, :] # getting a filter from the bank. 5. """ 6. Checking if there are mutliple channels for the single filter. 7. If so, then each channel will convolve the image. 8. The result of all convolutions are summed to return a single feature map. 9. """ 10. if len(curr_filter.shape) > 2: 11. conv_map = conv_(img[:, :, 0], curr_filter[:, :, 0]) # Array holding the sum of all feature maps. 12. for ch_num in range(1, curr_filter.shape[-1]): # Convolving each channel with the image and summing the results. 13. conv_map = conv_map + conv_(img[:, :, ch_num], 14. curr_filter[:, :, ch_num]) 15. else: # There is just a single channel in the filter. 16. conv_map = conv_(img, curr_filter) 17. feature_maps[:, :, filter_num] = conv_map # Holding feature map with the current filter.

循環遍歷濾波器組中的每個濾波器后,通過下面代碼更新濾波器的狀態:

1. curr_filter = conv_filter[filter_num, :] # getting a filter from the bank.

? ? ? ?如果輸入圖像不止一個通道,則濾波器必須具有同樣的通道數目。只有這樣,卷積過程才能正常進行。最后將每個濾波器的輸出求和作為輸出特征圖。下面的代碼檢測輸入圖像的通道數,如果圖像只有一個通道,那么一次卷積即可完成整個過程:

1. if len(curr_filter.shape) > 2: 2. conv_map = conv_(img[:, :, 0], curr_filter[:, :, 0]) # Array holding the sum of all feature map 3. for ch_num in range(1, curr_filter.shape[-1]): # Convolving each channel with the image and summing the results. 4. conv_map = conv_map + conv_(img[:, :, ch_num], 5. curr_filter[:, :, ch_num]) 6. else: # There is just a single channel in the filter. 7. conv_map = conv_(img, curr_filter)

? ? ? ?上述代碼中conv_函數與之前的conv函數不同,函數conv只接受輸入圖像和濾波器組這兩個參數,本身并不進行卷積操作,它只是設置用于conv_函數執行卷積操作的每一組輸入濾波器。下面是conv_函數的實現代碼:

1. def conv_(img, conv_filter): 2. filter_size = conv_filter.shape[0] 3. result = numpy.zeros((img.shape)) 4. #Looping through the image to apply the convolution operation. 5. for r in numpy.uint16(numpy.arange(filter_size/2, 6. img.shape[0]-filter_size/2-2)): 7. for c in numpy.uint16(numpy.arange(filter_size/2, img.shape[1]-filter_size/2-2)): 8. #Getting the current region to get multiplied with the filter. 9. curr_region = img[r:r+filter_size, c:c+filter_size] 10. #Element-wise multipliplication between the current region and the filter. 11. curr_result = curr_region * conv_filter 12. conv_sum = numpy.sum(curr_result) #Summing the result of multiplication. 13. result[r, c] = conv_sum #Saving the summation in the convolution layer feature map. 14. 15. #Clipping the outliers of the result matrix. 16. final_result = result[numpy.uint16(filter_size/2):result.shape[0]-numpy.uint16(filter_size/2), 17. numpy.uint16(filter_size/2):result.shape[1]-numpy.uint16(filter_size/2)] 18. return final_result

每個濾波器在圖像上迭代卷積的尺寸相同,通過以下代碼實現:

1. curr_region = img[r:r+filter_size, c:c+filter_size]

之后,在圖像區域矩陣和濾波器之間對位相乘,并將結果求和以得到單值輸出:

1. #Element-wise multipliplication between the current region and the filter. 2. curr_result = curr_region * conv_filter 3. conv_sum = numpy.sum(curr_result) #Summing the result of multiplication. 4. result[r, c] = conv_sum #Saving the summation in the convolution layer feature map.

? ? ? ?輸入圖像與每個濾波器卷積后,通過conv函數返回特征圖。下圖顯示conv層返回的特征圖(由于l1卷積層的濾波器參數為(2,3,3),即2個3x3大小的卷積核,最終輸出2個特征圖):


卷積后圖像


卷積層的后面一般跟著激活函數層,本文采用ReLU激活函數。

4.ReLU激活函數層

? ? ? ?ReLU層將ReLU激活函數應用于conv層輸出的每個特征圖上,根據以下代碼行調用ReLU激活函數:

l1_feature_map_relu = relu(l1_feature_map)

ReLU激活函數(ReLU)的具體實現代碼如下:

1. def relu(feature_map): 2. #Preparing the output of the ReLU activation function. 3. relu_out = numpy.zeros(feature_map.shape) 4. for map_num in range(feature_map.shape[-1]): 5. for r in numpy.arange(0,feature_map.shape[0]): 6. for c in numpy.arange(0, feature_map.shape[1]): 7. relu_out[r, c, map_num] = numpy.max(feature_map[r, c, map_num], 0)

? ? ? ?ReLU思想很簡單,只是將特征圖中的每個元素與0進行比較,若大于0,則保留原始值。否則將其設置為0。ReLU層的輸出如下圖所示:


ReLU層輸出圖像


激活函數層后面一般緊跟池化層,本文采用最大池化(max pooling)。

5.最大池化層

? ? ? ?ReLU層的輸出作為最大池化層的輸入,根據下面的代碼行調用最大池化操作:

1. l1_feature_map_relu_pool = pooling(l1_feature_map_relu, 2, 2)

最大池化函數(max pooling)的具體實現代碼如下:

1. def pooling(feature_map, size=2, stride=2): 2. #Preparing the output of the pooling operation. 3. pool_out = numpy.zeros((numpy.uint16((feature_map.shape[0]-size+1)/stride), 4. numpy.uint16((feature_map.shape[1]-size+1)/stride), 5. feature_map.shape[-1])) 6. for map_num in range(feature_map.shape[-1]): 7. r2 = 0 8. for r in numpy.arange(0,feature_map.shape[0]-size-1, stride): 9. c2 = 0 10. for c in numpy.arange(0, feature_map.shape[1]-size-1, stride): 11. pool_out[r2, c2, map_num] = numpy.max(feature_map[r:r+size, c:c+size]) 12. c2 = c2 + 1 13. r2 = r2 +1

? ? ? ?該函數接受3個參數,分別為ReLU層的輸出,池化掩膜的大小和步幅。首先也是創建一個空數組,用來保存該函數的輸出。數組大小根據輸入特征圖的尺寸、掩膜大小以及步幅來確定。

1. pool_out = numpy.zeros((numpy.uint16((feature_map.shape[0]-size+1)/stride), 2. numpy.uint16((feature_map.shape[1]-size+1)/stride), 3. feature_map.shape[-1]))

? ? ? ?對每個輸入特征圖通道都進行最大池化操作,返回該區域中最大的值,代碼如下:

pool_out[r2, c2, map_num] = numpy.max(feature_map[r:r+size, c:c+size])

? ? ? ?池化層的輸出如下圖所示,這里為了顯示讓其圖像大小看起來一樣,其實池化操作后圖像尺寸遠遠小于其輸入圖像。


池化層輸出圖像

6.層堆疊

? ? ? ?以上內容已經實現CNN結構的基本層——conv、ReLU以及max pooling,現在將其進行堆疊使用,代碼如下:

1. # Second conv layer 2. l2_filter = numpy.random.rand(3, 5, 5, l1_feature_map_relu_pool.shape[-1]) 3. print("\n**Working with conv layer 2**") 4. l2_feature_map = conv(l1_feature_map_relu_pool, l2_filter) 5. print("\n**ReLU**") 6. l2_feature_map_relu = relu(l2_feature_map) 7. print("\n**Pooling**") 8. l2_feature_map_relu_pool = pooling(l2_feature_map_relu, 2, 2) 9. print("**End of conv layer 2**\n")

? ? ? ?從代碼中可以看到,l2表示第二個卷積層,該卷積層使用的卷積核為(3,5,5),即3個5x5大小的卷積核(濾波器)與第一層的輸出進行卷積操作,得到3個特征圖。后續接著進行ReLU激活函數以及最大池化操作。將每個操作的結果可視化,如下圖所示:


l2層處理過程可視化圖像

1. # Third conv layer 2. l3_filter = numpy.random.rand(1, 7, 7, l2_feature_map_relu_pool.shape[-1]) 3. print("\n**Working with conv layer 3**") 4. l3_feature_map = conv(l2_feature_map_relu_pool, l3_filter) 5. print("\n**ReLU**") 6. l3_feature_map_relu = relu(l3_feature_map) 7. print("\n**Pooling**") 8. l3_feature_map_relu_pool = pooling(l3_feature_map_relu, 2, 2) 9. print("**End of conv layer 3**\n"

? ? ? ?從代碼中可以看到,l3表示第三個卷積層,該卷積層使用的卷積核為(1,7,7),即1個7x7大小的卷積核(濾波器)與第二層的輸出進行卷積操作,得到1個特征圖。后續接著進行ReLU激活函數以及最大池化操作。將每個操作的結果可視化,如下圖所示:


l3層處理過程可視化圖像


? ? ? ?神經網絡的基本結構是前一層的輸出作為下一層的輸入,比如l2層接收l1層的輸出,l3層接收來l2層的輸出,代碼如下:1. l2_feature_map = conv(l1_feature_map_relu_pool, l2_filter) 2. l3_feature_map = conv(l2_feature_map_relu_pool, l3_filter)

7.完整代碼

? ? ? ?全部代碼已經上傳至Github上,每層的可視化是使用Matplotlib庫實現。


本文由阿里云云棲社區組織翻譯。
文章原標題《Building Convolutional Neural Network using NumPy from Scratch》

原文鏈接

總結

以上是生活随笔為你收集整理的仅使用NumPy完成卷积神经网络CNN的搭建(附Python代码)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

日韩影视大全 | 久久午夜国产精品 | 国产午夜精品免费一区二区三区视频 | 丁香花在线观看免费完整版视频 | 99视频在线精品国自产拍免费观看 | 亚洲精品白浆高清久久久久久 | www五月婷婷 | 国产高清视频在线观看 | 亚洲视频在线免费观看 | 天天操天天操天天干 | 综合色站 | 亚洲欧美成人 | 欧美精品久久久久久久亚洲调教 | www.久久久.cum| 国产成人精品一区二区三区在线观看 | 91视频com | 精品久久久久久久久久岛国gif | 91av视频在线观看 | 超碰在线94 | 国产aa免费视频 | 99久久久国产精品美女 | 亚洲精品永久免费视频 | 免费h视频 | 狠狠色综合欧美激情 | 91精品国产自产91精品 | 成人影片在线免费观看 | 精品久久久久久久久久 | 亚洲精品一区二区三区新线路 | 色综合中文字幕 | 欧美大片mv免费 | 免费观看黄色12片一级视频 | 在线影视 一区 二区 三区 | 色噜噜狠狠狠狠色综合久不 | 狠狠干夜夜| 亚洲jizzjizz日本少妇 | 91香蕉视频好色先生 | 中文字幕日韩高清 | 久久久精华网 | 亚洲视频高清 | 成年人网站免费观看 | 激情婷婷综合网 | 亚洲一二三在线 | 久草在线中文888 | 又污又黄网站 | 午夜国产福利在线观看 | www五月天婷婷 | 免费视频久久久久 | 国产又粗又猛又爽 | 国产精品一区二区久久精品爱微奶 | 五月天激情视频 | 日韩成人免费在线 | 国产专区免费 | 欧美少妇影院 | 亚洲精品动漫成人3d无尽在线 | 婷婷综合激情 | 国产伦精品一区二区三区在线 | 日韩精品第1页 | 午夜视频在线观看一区二区三区 | 超碰公开在线观看 | 九九精品久久久 | 亚洲天堂视频在线 | www.xxxx变态.com | 久久久久久久久久久久国产精品 | 欧美a级一区二区 | 在线观看视频福利 | 亚洲精品久久久久中文字幕二区 | 中文字幕在线日本 | 中文字幕中文中文字幕 | 国产午夜精品一区 | 99视频在线精品国自产拍免费观看 | 美女网站视频免费黄 | 欧美精品久久久久久 | 久久精品国产第一区二区三区 | 久久色视频 | 在线观看激情av | 国产爽妇网 | 亚洲精品999| 精品黄色视 | 国产精品99久久免费观看 | 婷婷精品国产欧美精品亚洲人人爽 | 黄色.com| 999日韩| 波多野结衣精品 | 久草在线免费电影 | 综合色爱 | 欧美片一区二区三区 | 亚洲国产美女精品久久久久∴ | 亚洲免费视频观看 | 黄色免费视频在线观看 | 国产一区久久久 | 亚洲黄a | 一区二区亚洲精品 | 一本一本久久a久久精品综合小说 | 亚洲国产播放 | 成人动漫一区二区三区 | 日本中文字幕视频 | 中文字幕 在线看 | 97国产在线视频 | 草久在线观看视频 | 成人毛片网 | 免费日韩在线 | 丁香六月综合网 | 精品国产一二三四区 | 久久艹人人 | 日韩精品一区二区免费视频 | 91欧美视频网站 | 欧美一区免费在线观看 | 国产人成一区二区三区影院 | 欧美一区二区在线刺激视频 | 国产韩国日本高清视频 | 四虎影视成人永久免费观看视频 | 免费观看一级一片 | 日本最新一区二区三区 | 日韩精品中文字幕在线 | 特级a老妇做爰全过程 | 欧美少妇xx | 久草综合视频 | 天天爽人人爽夜夜爽 | 日韩欧美在线中文字幕 | 亚洲精品男人天堂 | 四虎免费在线观看视频 | 福利区在线观看 | 手机av在线不卡 | 在线视频精品播放 | 在线免费观看黄网站 | 日韩系列在线 | 色偷偷网站视频 | 人人射网站| 91av中文字幕 | 欧美色图视频一区 | 日韩偷拍精品 | 一区二区影视 | 91高清免费观看 | 伊人色播| 久久狠狠亚洲综合 | 久久久久久毛片 | 亚洲精品国产精品国自产观看 | 91av电影| 激情久久综合网 | www.久久久精品 | 免费看片成年人 | 97在线观视频免费观看 | 91污视频在线观看 | 国产精品一区二区你懂的 | 日韩久久精品一区二区 | 久久99国产精品二区护士 | 国产男女爽爽爽免费视频 | 在线观看视频日韩 | 99精品免费在线观看 | 缴情综合网五月天 | 久草在线资源网 | 午夜影院一级片 | www麻豆视频| 天堂在线一区二区 | 久久一区二区三区国产精品 | 日精品| 久草在线高清视频 | 在线欧美日韩 | 久久久久久伊人 | 成人网在线免费视频 | 欧美极度另类 | 欧美激情综合五月色丁香小说 | 欧洲精品码一区二区三区免费看 | 二区三区视频 | 日韩国产欧美在线视频 | 久久国产精品99国产 | 久久久久国产一区二区三区 | adn—256中文在线观看 | 久热色超碰 | 黄a网站 | 日本久久久亚洲精品 | 亚洲精品午夜视频 | 久久人人爽爽 | 91亚洲精品乱码久久久久久蜜桃 | 日日天天狠狠 | 久久人人爽人人爽人人片 | 久草免费手机视频 | 91麻豆精品国产午夜天堂 | 91中文字幕在线视频 | 日韩久久电影 | 久久精品成人欧美大片古装 | 久久99国产精品自在自在app | 最近中文字幕高清字幕在线视频 | 亚洲精品久久久久久中文传媒 | 免费看污片 | 大胆欧美gogo免费视频一二区 | 2020天天干夜夜爽 | 国产午夜三级 | 亚洲免费av在线 | 一色av| 天天综合视频在线观看 | 精品一区精品二区高清 | 国产中文字幕在线免费观看 | 国产精品久久久久久久av大片 | 黄色高清视频在线观看 | 成人av一二三区 | 国产精品一区免费看8c0m | 国产精品久久久久久久久软件 | 激情丁香综合 | 成人永久视频 | 手机看国产毛片 | 粉嫩av一区二区三区四区在线观看 | 日韩av影视在线观看 | 九色福利视频 | 亚洲欧美视频网站 | 青青河边草手机免费 | 一区二区三区四区在线免费观看 | 色97在线| av资源在线观看 | 国产 视频 高清 免费 | a在线免费观看视频 | 欧美日韩视频在线观看一区二区 | 波多野结衣在线播放一区 | 国产精品一区二区久久精品 | 玖玖玖影院 | 成人黄色小说视频 | 日本黄色免费观看 | 午夜久久久久久久 | 国产精品2020 | 久久精品4 | 国产麻豆视频 | 亚洲国产欧洲综合997久久, | 久久精品高清 | 国产日韩中文字幕 | 午夜精品一区二区三区在线视频 | 婷婷日| 91av中文| 97高清免费视频 | 中文字幕一区二区三区视频 | 久久久久久国产精品亚洲78 | 国产亚洲综合性久久久影院 | www.天天综合 | 香蕉视频国产在线 | 天天爱天天射 | 久久专区| 97福利在线 | 欧美一二三区在线观看 | 国产在线国偷精品产拍 | 国产精品丝袜 | 久久精品五月 | 国产精品99久久久久久人免费 | 亚洲我射av | 久久一区二区三区国产精品 | 在线小视频 | 亚洲精品国产成人 | 91免费看黄 | 在线免费观看黄色 | 久久中国精品 | 在线观看精品视频 | 西西人体4444www高清视频 | 久久这里只有精品23 | 久草在线观看视频免费 | 久久午夜影视 | 婷婷在线免费观看 | 国产正在播放 | 日韩在线理论 | 麻豆成人小视频 | 国产一区二区三区四区大秀 | 狠狠五月婷婷 | 久久久国产精品一区二区三区 | 国产日韩一区在线 | 欧美精品免费视频 | 在线观看亚洲电影 | 免费看搞黄视频网站 | 中文字幕在线国产精品 | 国产日韩欧美在线免费观看 | 久久国产成人午夜av影院宅 | 91av片| 色婷婷狠狠五月综合天色拍 | 日韩中文在线视频 | 久久99最新地址 | 九九热只有精品 | 伊人婷婷激情 | 亚洲高清在线观看视频 | 亚洲爱av | 成人免费看电影 | 黄色成人免费电影 | 成人免费视频视频在线观看 免费 | 欧美精品久久久久久 | 国产女人18毛片水真多18精品 | 碰碰影院 | 天天色天天上天天操 | 五月婷婷丁香六月 | 天天射天天爱天天干 | 国产黄免费 | 日韩三级一区 | 亚洲一区二区三区四区在线视频 | 国产高清专区 | 国产精品一区二区果冻传媒 | 天天色中文 | 久久在线精品视频 | 亚洲日本欧美在线 | 韩国在线一区二区 | 99精品国产免费久久久久久下载 | 婷婷丁香av | 麻豆av电影 | 国产又黄又猛又粗 | 国产99久久久精品 | 国产一级视频在线 | 1024手机基地在线观看 | 视频在线一区二区三区 | 免费看片网站91 | 99成人在线视频 | 国产精品在线看 | 国产成人一区二区三区久久精品 | www久久久久| 色姑娘综合网 | 婷婷丁香色 | 激情校园亚洲 | 在线观看av中文字幕 | 久久综合久久综合久久 | 久久久免费观看 | 精品在线视频一区二区三区 | 欧美在线视频一区二区三区 | 五月天丁香综合 | 色吊丝在线永久观看最新版本 | 欧美一区二区视频97 | 日日婷婷夜日日天干 | 91精品婷婷国产综合久久蝌蚪 | 日韩欧美在线影院 | 一本一本久久aa综合精品 | 人人人爽| 色婷婷久久久 | 欧美一级黄色视屏 | 欧美视屏一区二区 | 九九欧美 | 香蕉网站在线观看 | 久久综合免费视频影院 | 91传媒91久久久 | 在线v片| 国产欧美中文字幕 | av在线激情 | 亚洲欧美乱综合图片区小说区 | 亚洲欧洲一区二区在线观看 | 午夜精品一区二区三区免费视频 | 日韩在线视频一区二区三区 | 91在线视频一区 | 特级毛片网 | 免费观看一区二区 | 五月综合激情 | 麻豆免费精品视频 | 国产亚洲亚洲 | 狠狠的干狠狠的操 | 色综合天天色综合 | 日韩伦理片一区二区三区 | 毛片激情永久免费 | av久久在线| 草久在线观看视频 | 中文字幕在线字幕中文 | 天天插狠狠插 | 91免费版在线观看 | 国产白浆在线观看 | 国产精品国内免费一区二区三区 | www激情网| 九九综合九九 | 久草国产视频 | 成人97视频 | 探花视频在线版播放免费观看 | 91精品福利在线 | 国产精品一区二区久久国产 | 成人av中文字幕 | 91九色九色| 天天干天天摸天天操 | 日韩欧美在线视频一区二区 | 国产小视频在线观看免费 | 久久免费电影网 | 久草在线视频首页 | 国产精品99久久久精品免费观看 | 国产一区二区不卡在线 | 2021国产在线视频 | 中文字幕中文字幕中文字幕 | 国产精品日韩久久久久 | 欧美一级性生活视频 | 亚洲成人软件 | 五月婷婷一区二区三区 | 国产精品欧美精品 | 在线观看不卡视频 | 欧美动漫一区二区三区 | 免费色婷婷 | 视频高清 | 五月开心六月婷婷 | 久艹视频在线观看 | 国产精品大尺度 | 四虎最新入口 | 免费看成人片 | 亚洲精品啊啊啊 | 天天干国产 | www.久久com | 国产经典 欧美精品 | av在线色| 丁香高清视频在线看看 | 在线观看免费中文字幕 | zzijzzij亚洲日本少妇熟睡 | 99久久精品国产系列 | 亚洲精品视频播放 | 激情欧美一区二区三区免费看 | 91在线中文| 丁香一区二区 | 国产精品久久久久高潮 | 91人人视频在线观看 | 亚洲伦理一区二区 | 亚洲国产日韩精品 | 一区二区三区日韩在线 | 午夜狠狠干 | 日本视频不卡 | 国产精品免费久久久久久久久久中文 | 亚洲高清在线视频 | 久久精彩 | 国产麻豆电影在线观看 | 人人澡人人模 | 国产精品精品国产婷婷这里av | 国产一区二区在线观看免费 | 免费视频黄色 | 欧美a视频| 婷婷丁香激情五月 | 亚洲va韩国va欧美va精四季 | 香蕉视频久久久 | 婷婷深爱五月 | 91精品国产91p65 | 一区二区久久 | 97在线观看免费视频 | 国产亚洲成av人片在线观看桃 | 黄a在线看| 亚洲精品一区二区三区四区高清 | 青草视频在线播放 | 99色国产 | 久在线观看视频 | 精品国产一区二区三区久久久久久 | 成人日批视频 | 一本一道波多野毛片中文在线 | 久一网站 | 日韩三级视频 | www.久久99| 亚洲a资源 | 久草资源在线观看 | 久久夜夜操 | 成人午夜网 | 亚洲视频在线免费看 | 欧美午夜精品久久久久久孕妇 | 成人在线观看资源 | 久久久久久久久久伊人 | 久草在线综合网 | 美女网站一区 | 黄a网 | 亚洲观看黄色网 | 久久中文字幕在线视频 | 成人欧美一区二区三区在线观看 | 特级西西444www大胆高清无视频 | 91精品久久久久久 | 91天堂在线观看 | 欧美精品亚洲精品 | 69av在线播放 | 麻豆91小视频| 五月婷婷丁香在线观看 | 欧美一级乱黄 | 精品一区二区在线免费观看 | 激情五月播播久久久精品 | av高清一区| 中文不卡视频在线 | 99精品毛片 | 一区二区三区免费在线观看视频 | 五月丁色 | 91视频久久久久 | 欧美日韩不卡一区二区 | 天天激情| 日韩高清毛片 | 国产涩涩在线观看 | 国产黄大片 | 特级a毛片| 91亚洲欧美激情 | 久久丁香 | 香蕉视频在线观看免费 | 欧美性受极品xxxx喷水 | 亚洲精品视频免费观看 | 亚在线播放中文视频 | 午夜免费视频网站 | 天天操狠狠干 | 99re久久资源最新地址 | 2019免费中文字幕 | 精品国产免费一区二区三区五区 | 久久精品国产精品亚洲 | 久久精品激情 | 精品国产理论片 | 国产日韩高清在线 | 999成人| 蜜臀av夜夜澡人人爽人人桃色 | 麻豆视频免费在线观看 | 99性视频 | 国产夫妻性生活自拍 | 色婷婷综合久久久 | 国产美女在线精品免费观看 | 免费看精品久久片 | 91精品国自产在线偷拍蜜桃 | 精品一区av | 69人人| 欧美精品久久久久久久免费 | 久久国产露脸精品国产 | 日韩一二三在线 | 免费在线观看黄网站 | 麻豆免费在线播放 | 在线国产中文字幕 | 久久电影色 | 高清国产午夜精品久久久久久 | 日韩欧美高清在线观看 | 96精品高清视频在线观看软件特色 | 日本中文字幕网 | 国产精品区二区三区日本 | 国产精品video爽爽爽爽 | 日日干影院 | 精品国产亚洲在线 | 高清久久久久久 | 一级成人在线 | 91精品免费看 | 夜夜躁狠狠躁日日躁视频黑人 | 精品在线亚洲视频 | 91桃色免费视频 | 丁香五月亚洲综合在线 | 日韩天堂在线观看 | 久在线 | 一区二区三区四区五区在线 | 99精品久久久久 | 久久久久久国产精品久久 | 99综合久久 | 在线看片中文字幕 | 亚洲精品小视频 | 国产精品久久久久久久久久久久午 | 国产中文字幕在线视频 | 免费欧美精品 | 欧美激情另类 | 人人澡人人草 | 日韩av进入 | www.com久久| 国产又粗又硬又爽视频 | 国产精品久久久久久久av大片 | 日韩欧美精品一区 | 99热手机在线观看 | 免费观看www7722午夜电影 | 欧美九九视频 | 欧美日韩国产一二三区 | 91亚洲夫妻| 天天射天天干天天操 | 国产精品久久久久久久7电影 | 91视频久久久久久 | 成人a v视频 | 综合久久一本 | 黄色片网站av | 丁香婷婷综合激情 | www色com| 国产一级a毛片视频爆浆 | 久久手机在线视频 | 99热这里只有精品8 久久综合毛片 | 久久99精品久久久久蜜臀 | 99热九九这里只有精品10 | 91视视频在线直接观看在线看网页在线看 | 亚洲一级久久 | 国产精品久久久久久妇 | 日本久久久精品视频 | 天天综合色 | 日韩黄色免费在线观看 | 成人免费视频网站 | 免费99精品国产自在在线 | 欧美日韩99 | 国产视频一区二区三区在线 | 欧美激情视频一二区 | 狠狠操欧美 | 国产人成看黄久久久久久久久 | 亚洲精品国偷自产在线91正片 | 在线观看一级视频 | 一区三区视频在线观看 | 国产精品第54页 | 久久综合狠狠 | 操一草 | 在线成人高清电影 | 日韩高清成人 | 在线看毛片网站 | 五月激情av| 蜜臀aⅴ国产精品久久久国产 | 国产精品久久久久久一区二区 | 国际精品久久 | 在线播放视频一区 | 激情久久伊人 | 又黄又爽又色无遮挡免费 | 在线免费观看黄色大片 | 欧美片网站yy | 午夜成人免费影院 | 色婷婷激情综合 | 国产精品免费一区二区三区 | 国产精品免费久久久久久 | 国产成人综| 久久不见久久见免费影院 | 中文字幕av电影下载 | 最新国产在线视频 | 国产精品久久久久久久久久东京 | 亚洲va在线va天堂 | 国产精品久久久久影视 | 亚洲永久av | 久久一区二区三区超碰国产精品 | 免费久久久久久 | 在线播放 日韩专区 | 国产免费又粗又猛又爽 | 99高清视频有精品视频 | 日日夜夜天天干 | 国产精品一区二区三区久久久 | 久久精品一区二区三区视频 | 日日夜操 | 久久免费视频一区 | 日韩美视频| 一级片色播影院 | 日本久久久久久久久久 | 天天操天天怕 | 天天色天天色天天色 | 伊人色**天天综合婷婷 | 伊人色播 | 一二区av | 国产成人精品一区在线 | 99精品视频在线播放免费 | 成年人在线观看免费视频 | 国产二区免费视频 | 国产高清中文字幕 | 色夜影院 | 在线看片a| 亚洲美女在线一区 | 欧亚日韩精品一区二区在线 | www.天天干.com| 免费一级日韩欧美性大片 | 99精彩视频在线观看免费 | 国产999视频 | 亚洲 中文 欧美 日韩vr 在线 | 97精品国产97久久久久久 | 亚洲精品影院在线观看 | 亚洲精品乱码久久久久v最新版 | 久久不射影院 | 婷婷在线视频观看 | 国产亚洲aⅴaaaaaa毛片 | 精品伦理一区二区三区 | 99爱在线观看 | 中文字幕一区在线观看视频 | 欧美精品九九99久久 | 中文在线a在线 | 久久精品毛片 | 国产v在线播放 | 日韩免费观看一区二区 | 日韩激情网 | 国产三级精品三级在线观看 | 操操操人人 | 天天激情天天干 | 久久夜色网 | 午夜性色| 久久久麻豆精品一区二区 | 亚洲天堂网在线播放 | 2021国产视频 | 高潮久久久久久久久 | 日本一区二区免费在线观看 | 欧美日韩在线视频免费 | 国产一区二区在线免费观看 | 日本三级中文字幕在线观看 | 天天爱天天爽 | 日韩大陆欧美高清视频区 | 日日干日日操 | 久久综合视频网 | 国产精品久久久毛片 | 美女禁18| 三级av小说 | 久草免费在线 | 这里只有精品视频在线 | 国产成人精品一区二区在线观看 | 天天操天天添天天吹 | 亚洲国内精品视频 | 午夜视频在线观看一区二区三区 | 欧美射射射 | 国产一级片观看 | 久久精品中文字幕一区二区三区 | www.天天色| 久久久久亚洲国产 | 久久理论电影网 | 欧产日产国产69 | av丝袜制服 | a黄色片 | 午夜电影av | 国产精品日韩欧美 | 亚洲欧美成人网 | 欧美日韩二区三区 | 久久久久免费网 | 99久久精品免费看国产一区二区三区 | 美女网站在线观看 | 久久精品国产第一区二区三区 | 亚洲国产精品免费 | 日韩精品极品视频 | 国产欧美精品xxxx另类 | 久久不卡电影 | 免费观看成人av | 美女视频黄是免费的 | 国产在线视频一区二区三区 | 天天做天天爽 | 日产乱码一二三区别免费 | 狠狠色丁香久久婷婷综 | 精品国产一区二区三区蜜臀 | 日韩欧美在线综合网 | 亚洲日韩中文字幕在线播放 | 国产成人一区二区三区 | 一区二区三区四区不卡 | 久久精品毛片 | 五月婷婷在线综合 | 91成版人在线观看入口 | 国产一级片在线播放 | 欧美人牲| 国产特级毛片aaaaaa毛片 | 欧美在线视频不卡 | 国产精品自产拍在线观看 | 天天综合天天综合 | 麻豆传媒视频在线 | 国产精品久久久久毛片大屁完整版 | 中文字幕a∨在线乱码免费看 | 亚洲视频在线看 | 久久免费视频这里只有精品 | 中文免费在线观看 | 国产91aaa| 午夜狠狠操| 999亚洲国产996395 | 免费看黄视频 | 国产精品精品久久久 | 成人一区在线观看 | 国产亚洲一区二区三区 | 丁香婷婷激情国产高清秒播 | 亚洲五月花| 天天综合久久综合 | 亚洲一区二区精品在线 | 婷婷5月激情5月 | 亚洲 中文 欧美 日韩vr 在线 | 91精品国产电影 | 久久伊人精品天天 | 久久刺激视频 | 最近中文字幕完整高清 | 黄色一级动作片 | 99视频在线免费播放 | 蜜臀久久99精品久久久久久网站 | 看片网站黄 | 男女啪啪免费网站 | 四虎8848免费高清在线观看 | 成人全视频免费观看在线看 | 成人性生交大片免费观看网站 | 久久影院午夜论 | 91精品无人成人www | 九九九热精品免费视频观看 | 日韩欧美精品在线观看 | 麻豆精品在线视频 | 色噜噜在线观看视频 | 狠狠夜夜 | 日韩在线电影一区 | 在线a亚洲视频播放在线观看 | 国产 欧美 日产久久 | 中文字幕在线播放一区二区 | 99久热 | 在线观看91av | 久草在线久草在线2 | 日韩精品一区二区在线观看视频 | 麻豆视频在线观看免费 | 日韩免费福利 | 91tv国产成人福利 | 免费人做人爱www的视 | 日韩欧美久久 | 国产精选在线 | 五月天电影免费在线观看一区 | 亚洲成人精品久久久 | 午夜少妇一区二区三区 | 亚洲黄色在线免费观看 | 亚洲黄电影 | 成人免费在线看片 | 久久区二区 | 日韩精品在线免费播放 | 国内精品中文字幕 | 亚洲精品在线电影 | 免费福利在线播放 | 中文字幕在线观看91 | 91精品在线免费视频 | 少妇啪啪av入口 | 久久免费视频4 | 成人小视频在线播放 | 国产一级小视频 | 一区二区中文字幕在线 | 亚洲春色奇米影视 | 欧美日韩久久 | 亚洲精品高清视频在线观看 | 夜夜躁日日躁狠狠久久88av | 色婷婷福利 | 成人av片在线观看 | 国产不卡在线 | 亚洲精品综合一二三区在线观看 | 日日爱av | 免费成人在线视频网站 | 中日韩免费视频 | 免费看wwwwwwwwwww的视频 久久久久久99精品 91中文字幕视频 | 丁香高清视频在线看看 | 最近2019年日本中文免费字幕 | 亚洲va欧美va国产va黑人 | 成人免费观看完整版电影 | 日本久久久久久科技有限公司 | 一区二区三区四区在线免费观看 | 国产区精品在线观看 | 国产婷婷vvvv激情久 | 久久国产精品一国产精品 | 国产高清在线不卡 | 午夜影院一级片 | 国产日韩精品久久 | 国产精品久久99精品毛片三a | 精品亚洲一区二区三区 | 国产一区二区在线免费观看 | 国产91精品在线观看 | 超碰个人在线 | 亚洲精品在线观看av | 在线观看国产v片 | 成人精品福利 | 日韩国产欧美在线视频 | 亚洲黄色影院 | 91激情视频在线播放 | 美女视频黄,久久 | 久久亚洲综合国产精品99麻豆的功能介绍 | 91新人在线观看 | 中文字幕第一页在线 | 久久精品91久久久久久再现 | 天天艹天天| 成人黄色毛片视频 | 欧美日韩国产高清视频 | 日韩黄色免费电影 | 综合网中文字幕 | 国产视频久久久久 | 久久综合色播五月 | 国产精品av电影 | 中文字幕有码在线 | 日韩 精品 一区 国产 麻豆 | 色99之美女主播在线视频 | 天天爽人人爽 | 免费h精品视频在线播放 | 欧美乱熟臀69xxxxxx | 午夜av在线播放 | 国产韩国精品一区二区三区 | 四虎在线免费观看 | 黄色成人在线 | 日本黄区免费视频观看 | 成人一级免费视频 | 91热视频在线观看 | 蜜臀av性久久久久蜜臀aⅴ涩爱 | av在线收看 | 日韩大陆欧美高清视频区 | 免费的成人av | 欧美国产日韩在线视频 | 国产精久久久久久妇女av | 国产精品一区二区三区视频免费 | 日韩欧美网址 | 国产福利久久 | 久草在线视频看看 | 国产在线播放一区二区三区 | 免费又黄又爽视频 | 91色吧| 午夜精品剧场 | 精品99在线视频 | 91麻豆精品国产自产在线 | 国产成人精品一区一区一区 | 日韩免费一区二区在线观看 | 国产精品免费观看久久 | 91九色九色| 日日操日日操 | 亚洲国产精品成人女人久久 | 婷婷丁香九月 | 亚洲精品午夜久久久久久久久久久 | 色插综合| 国产精品99视频 | 欧美激情在线看 | 99久国产 | 黄www在线观看 | 日韩免费在线一区 | 97超碰资源网 | 国产不卡毛片 | av大全在线观看 | 国产精品美女久久久久久久久 | 精品 激情 | 亚洲欧美日韩国产一区二区 | 亚洲国内精品视频 | 欧美成人精品欧美一级乱黄 | 欧美日韩精品网站 | 久久久久久不卡 | 99久久99久久综合 | 国产精品久久久久影院 | 婷婷丁香色 | 日韩精品一区二区三区外面 | 日韩在线中文字幕 | 亚洲电影网站 | 99免费在线视频 | 亚洲国产字幕 | 国产经典三级 | 久久无码av一区二区三区电影网 | 69久久夜色精品国产69 | 九九九毛片 | 手机av看片 | 免费看一级特黄a大片 | 波多野结衣视频在线 | 五月婷婷视频在线 | 国产日韩视频在线播放 | 三三级黄色片之日韩 | 五月婷婷综合激情 | 久久这里只有精品23 | 91精品久久久久久粉嫩 | 精品久久久久久久久久 | 婷婷五天天在线视频 | 丁香花在线视频观看免费 | 亚洲无吗av | 亚洲欧洲xxxx | 日日干夜夜操视频 | av成人黄色| 九月婷婷人人澡人人添人人爽 | 91av精品| 日韩精品中文字幕在线播放 | 亚洲人久久久 | 久久99国产精品 | 粉嫩一区二区三区粉嫩91 | 国产一级高清 | 亚洲久草在线视频 | 色婷婷综合久色 | 91免费高清 | 久久成年人网站 | 成年人在线 | 中文字幕在线不卡国产视频 | 激情开心站 | 色999五月色 | 欧美成人精品在线 | 日韩综合一区二区 | 天天操操操操操操 | 国产精品久久久久久久久久白浆 | 一区二区三区在线观看中文字幕 | 超碰在线人人艹 | 国产一线在线 | 性色av一区二区 | 91视频久久久久 | 国产91欧美 | 在线观看网站av | 少妇高潮流白浆在线观看 | 日日爱夜夜爱 | 一二三精品视频 | 深夜免费网站 | 久久国产精品成人免费浪潮 | 久久久久福利视频 | 在线观看日韩国产 | 成人免费视频视频在线观看 免费 | 久久久久99精品国产片 | 色www免费视频 | 黄色av免费看 | 超碰在线公开免费 | 国外av在线 | 91x色| 麻豆传媒视频在线播放 | 亚洲精品乱码久久久久久高潮 | 91理论电影| 天天色图 | 国产中年夫妇高潮精品视频 | 中文综合在线 | 黄色在线观看污 | 日韩午夜在线 | 色97在线 | 欧美一级特黄高清视频 | 国产女人免费看a级丨片 | 91精品在线免费观看视频 | 成人禁用看黄a在线 | 亚洲国产中文字幕在线观看 | 456免费视频 | 亚洲国产黄色片 | 成人毛片一区二区三区 | 在线观看深夜福利 | 欧美精品在线观看 | www.在线观看av | 五月av在线| 成人毛片a | 夜夜躁日日躁狠狠久久av | 色停停五月天 | 最新影院 | 91欧美视频网站 | 五月天亚洲婷婷 | 国产精品99久久久 | 国产色视频一区二区三区qq号 | 日本黄色大片儿 | 久在线| 丝袜+亚洲+另类+欧美+变态 | 不卡的av在线播放 | 国产精选在线 | 成人h在线 | 人人澡人人舔 | 久久99精品久久久久蜜臀 | 欧美性做爰猛烈叫床潮 | 亚洲免费激情 | 韩国精品一区二区三区六区色诱 | 国产99久久久国产精品免费二区 | 久草在线视频免赞 | 国产一区二区在线播放 | 欧美成人在线免费观看 | 国产无区一区二区三麻豆 | 中国一 片免费观看 | 在线观看视频黄 | 日韩视频一区二区在线观看 | 欧美性大战 |