国产秋霞理论久久久电影-婷婷色九月综合激情丁香-欧美在线观看乱妇视频-精品国avA久久久久久久-国产乱码精品一区二区三区亚洲人-欧美熟妇一区二区三区蜜桃视频

實戰(zhàn) | 車道線檢測項目,霍夫變換 & Spatial CNN

共 17939字,需瀏覽 36分鐘

 ·

2021-05-22 11:42

全網(wǎng)搜集目標檢測文章,人工篩選最優(yōu)價值知識

編者薦語
車道線檢測是自動駕駛中的一個基礎模塊,其實也是一個由來已久的任務,早期已有很多基于傳統(tǒng)圖像處理實現(xiàn)的車道線檢測算法。但隨著大家研究的深入,車道線檢測任務所應對的場景越來越多樣化,逐步已經(jīng)脫離了對于“白、黃色線條”這種低階理解。目前更多的方式是尋求對于語義上車道線存在位置的檢測,即使它是模糊的、被光照影響的、甚至是完全被遮擋的。

摘要

Waymo的自動駕駛出租車服務本月已經(jīng)上路,但是自動駕駛汽車是如何工作的?道路上的線條向駕駛員指示了車道所在的位置,并作為相應方向引導車輛的方向的指導性參考,并約定了車輛代理如何在道路上和諧地行駛。 同樣,識別和跟蹤車道的能力對于開發(fā)無人駕駛車輛算法至關(guān)重要。

在本教程中,我們將學習如何使用計算機視覺技術(shù)來編寫車道線實時檢測程序。我們將通過兩種不同的方法來完成這項任務,從實際的算法編寫流程帶領(lǐng)大家從實現(xiàn)到優(yōu)化的過程。

方法1:霍夫變換

大多數(shù)車道的設計都相對簡單明了,不僅可以鼓勵交通秩序井然,還可以使駕駛員更輕松地以恒定的速度駕駛車輛。因此,我們的直觀方法可能是首先通過邊緣檢測特征提取技術(shù)來檢測攝像機饋送中的突出直線。我們將使用OpenCV(一種計算機視覺算法的開源庫)來實現(xiàn)。下圖是我們算法流程的概述。

1.設置環(huán)境

如果您尚未安裝OpenCV,請打開“終端”并運行以安裝它:

pip install opencv-python

現(xiàn)在,通過運行以下命令來clone本項目的實踐代碼:

git clone https://github.com/Charmve/Awesome-Lane-Detection.git

接下來,進入lane-detector文件夾

cd lane-detector

使用文本編輯器打開detector.py。我們將在此Python文件中編寫本節(jié)的所有代碼。

2.處理視頻

我們將以10毫秒為間隔的一系列連續(xù)幀(圖像)輸入用于車道檢測的示例視頻。我們也可以隨時按“ q”鍵退出程序。

import cv2 as cv
# The video feed is read in as a VideoCapture objectcap = cv.VideoCapture("input.mp4")while (cap.isOpened()): # ret = a boolean return value from getting the frame, frame = the current frame being projected in the video ret, frame = cap.read() # Frames are read by intervals of 10 milliseconds. The programs breaks out of the while loop when the user presses the 'q' key if cv.waitKey(10) & 0xFF == ord('q'): break
# The following frees up resources and closes all windowscap.release()cv.destroyAllWindows()

3.應用Canny Detector

Canny Detector是為快速實時邊緣檢測而優(yōu)化的多階段算法。該算法的基本目標是檢測亮度的急劇變化(大梯度),例如從白色到黑色的變化,并在給定一組閾值的情況下將它們定義為邊緣。

Canny算法有四個主要階段:

A.降噪

與所有邊緣檢測算法一樣,噪聲是一個關(guān)鍵問題,通常會導致錯誤檢測。應用5x5高斯濾波器對圖像進行卷積(平滑),以降低檢測器對噪聲的敏感度。這是通過使用正態(tài)分布數(shù)的內(nèi)核(在本例中為5x5內(nèi)核)在整個圖像上運行來完成的,將每個像素值設置為等于其相鄰像素的加權(quán)平均值。

 

5x5高斯核,星號“*”表示卷積運算。

B.強度梯度

然后使用平滑化的圖像沿x軸和y軸應用Sobel,Roberts或Prewitt內(nèi)核(OpenCV中使用了Sobel),以檢測邊緣是水平,垂直還是對角線。(在這里你可以先不用管Sobel,Roberts或Prewitt內(nèi)核,他們是什么。) 

 

Sobel內(nèi)核,用于計算水平和垂直方向的一階導數(shù)

C.非最大抑制

非最大抑制可應用于削“?。╰hin)”并有效銳化邊緣。對于每個像素,檢查該值是否在先前計算的漸變方向上是局部最大值。 

 

三點非最大抑制

A在具有垂直方向的邊緣上。由于梯度垂直于邊緣方向,因此將B和C的像素值與A的像素值進行比較,以確定A是否為局部最大值。如果A是局部最大值,則對下一個點測試非最大值抑制;否則,將A的像素值設置為零,并抑制A。

D.磁滯閾值

在非最大抑制之后,確認強像素位于邊緣的最終貼圖中。但是,應進一步分析弱像素,以確定其構(gòu)成為邊緣還是噪聲。應用兩個預定義的minVal和maxVal閾值,我們設置強度梯度大于maxVal的任何像素為邊緣,強度梯度小于minVal的任何像素都不為邊緣并丟棄。如果亮度梯度介于minVal和maxVal之間的像素連接到強度梯度大于maxVal的像素,則僅將其視為邊緣

  

圖1 兩行磁滯閾值示例

邊緣A高于maxVal,因此被視為邊緣。邊緣B在maxVal和minVal之間,但未連接到maxVal以上的任何邊緣,因此將其丟棄。邊緣C在maxVal和minVal之間,并連接到邊緣A,即maxVal之上的邊緣,因此被視為邊緣。

對于該算法流程,我們首先要對視頻幀進行灰度處理,因為我們只需要用于檢測邊緣的亮度通道,并應用5 x 5高斯模糊來減少噪聲以減少虛假邊緣。

# import cv2 as cv
def do_canny(frame): # Converts frame to grayscale because we only need the luminance channel for detecting edges - less computationally expensive gray = cv.cvtColor(frame, cv.COLOR_RGB2GRAY) # Applies a 5x5 gaussian blur with deviation of 0 to frame - not mandatory since Canny will do this for us blur = cv.GaussianBlur(gray, (5, 5), 0) # Applies Canny edge detector with minVal of 50 and maxVal of 150 canny = cv.Canny(blur, 50, 150) return canny
# cap = cv.VideoCapture("input.mp4")# while (cap.isOpened()):# ret, frame = cap.read()
canny = do_canny(frame)
# if cv.waitKey(10) & 0xFF == ord('q'):# break
# cap.release()# cv.destroyAllWindows()

4.分割車道區(qū)域

我們將手工制作一個三角形的蒙版,以分割車道區(qū)域,并丟棄車架中無關(guān)的區(qū)域,以提高我們后期的效率。  三角形遮罩將由三個坐標定義,用綠色圓圈表示。

# import cv2 as cvimport numpy as npimport matplotlib.pyplot as plt
# def do_canny(frame):# gray = cv.cvtColor(frame, cv.COLOR_RGB2GRAY)# blur = cv.GaussianBlur(gray, (5, 5), 0)# canny = cv.Canny(blur, 50, 150)# return canny
def do_segment(frame): # Since an image is a multi-directional array containing the relative intensities of each pixel in the image, we can use frame.shape to return a tuple: [number of rows, number of columns, number of channels] of the dimensions of the frame # frame.shape[0] give us the number of rows of pixels the frame has. Since height begins from 0 at the top, the y-coordinate of the bottom of the frame is its height height = frame.shape[0] # Creates a triangular polygon for the mask defined by three (x, y) coordinates polygons = np.array([ [(0, height), (800, height), (380, 290)] ]) # Creates an image filled with zero intensities with the same dimensions as the frame mask = np.zeros_like(frame) # Allows the mask to be filled with values of 1 and the other areas to be filled with values of 0 cv.fillPoly(mask, polygons, 255) # A bitwise and operation between the mask and frame keeps only the triangular area of the frame segment = cv.bitwise_and(frame, mask) return segment
# cap = cv.VideoCapture("input.mp4")# while (cap.isOpened()):# ret, frame = cap.read() # canny = do_canny(frame)
# First, visualize the frame to figure out the three coordinates defining the triangular mask plt.imshow(frame) plt.show() segment = do_segment(canny)
# if cv.waitKey(10) & 0xFF == ord('q'):# break
# cap.release()# cv.destroyAllWindows()

5.霍夫變換

在笛卡爾坐標系中,通過將y相對于x繪制,可以將一條直線表示為y = mx + b。但是,我們也可以通過將b相對于m繪制,將該線表示為Hough Space 霍夫空間中的單個點。例如,在霍夫空間中,具有等式y(tǒng) = 2x +1的線可以表示為(2,1)。

現(xiàn)在,如果要代替直線,我們必須在笛卡爾坐標系中繪制一個點。有許多可能的線可以通過此點,每條線的參數(shù)m和b的值均不同。例如,可以通過y = 2x + 8,y = 3x + 6,y = 4x + 4y = 5x + 2,y = 6x來傳遞 (2,12) 點。這些可能的線可以在Hough空間中繪制為(2,8),(3,6),(4,4),(5,2)(6,0)。請注意,這會在Hough空間中針對b坐標生成一條m線。

每當我們看到笛卡爾坐標系中的一系列點并且知道這些點由某條線連接時,我們就可以通過首先將笛卡爾坐標系中的每個點繪制到Hough空間中的對應線上,然后找到該線的方程。在霍夫空間中找到交點。霍夫空間中的交點表示連續(xù)通過序列中所有點的m和b值。

由于通過Canny Detector的幀可以簡單地解釋為代表我們圖像空間中邊緣的一系列白點,因此我們可以應用相同的技術(shù)來識別這些點中的哪些連接到同一條線上,以及它們是否已連接,它的等式是什么,以便我們可以在框架上繪制這條線。

為了簡化說明,我們使用笛卡爾坐標來對應霍夫空間。但是,這種方法存在一個數(shù)學缺陷:當直線垂直時,漸變?yōu)闊o窮大,無法在霍夫空間中表示。 為了解決這個問題,我們將使用極坐標。除了在霍夫空間中將m相對于b繪制之外,該過程仍然相同,我們將r相對于θ進行繪制。

例如,對于極坐標系上x = 8y = 6x = 4y = 9,x = 12y = 3的點,我們可以繪制相應的霍夫空間。 

我們看到,霍夫空間中的線在θ= 0.925r = 9.6處相交。由于極坐標系中的一條線由r =xcosθ+ysinθ給出,因此我們可以得出一條穿過所有這些點的單線定義為9.6 = xcos0.925 + ysin0.925。

通常,在霍夫空間中相交的曲線越多,意味著該相交所代表的線對應于更多的點。對于我們的實現(xiàn),我們將在霍夫空間中定義一個最小閾值交叉點以檢測一條線。因此,霍夫變換基本上可以跟蹤幀中每個點的霍夫空間相交。如果交叉點的數(shù)量超過定義的閾值,我們將確定一條具有相應θ和r參數(shù)的線。

我們應用霍夫變換來識別兩條直線,這將是我們的左右車道邊界。

import cv2 as cv# import numpy as np# # import matplotlib.pyplot as plt
# def do_canny(frame):# gray = cv.cvtColor(frame, cv.COLOR_RGB2GRAY)# blur = cv.GaussianBlur(gray, (5, 5), 0)# canny = cv.Canny(blur, 50, 150)# return canny
# def do_segment(frame):# height = frame.shape[0]# polygons = np.array([# [(0, height), (800, height), (380, 290)]# ])# mask = np.zeros_like(frame)# cv.fillPoly(mask, polygons, 255)# segment = cv.bitwise_and(frame, mask)# return segment
# cap = cv.VideoCapture("input.mp4")# while (cap.isOpened()):# ret, frame = cap.read()# canny = do_canny(frame)# # plt.imshow(frame)# # plt.show()# segment = do_segment(canny)
# cv.HoughLinesP(frame, distance resolution of accumulator in pixels (larger = less precision), angle resolution of accumulator in radians (larger = less precision), threshold of minimum number of intersections, empty placeholder array, minimum length of line in pixels, maximum distance in pixels between disconnected lines) hough = cv.HoughLinesP(segment, 2, np.pi / 180, 100, np.array([]), minLineLength = 100, maxLineGap = 50)
# if cv.waitKey(10) & 0xFF == ord('q'):# break
# cap.release()# cv.destroyAllWindows()

6.可視化

車道顯示為兩個淺綠色,線性擬合的多項式,這些多項式將覆蓋在我們的輸入框中。

# import cv2 as cv# import numpy as np# # import matplotlib.pyplot as plt
# def do_canny(frame):# gray = cv.cvtColor(frame, cv.COLOR_RGB2GRAY)# blur = cv.GaussianBlur(gray, (5, 5), 0)# canny = cv.Canny(blur, 50, 150)# return canny
# def do_segment(frame):# height = frame.shape[0]# polygons = np.array([# [(0, height), (800, height), (380, 290)]# ])# mask = np.zeros_like(frame)# cv.fillPoly(mask, polygons, 255)# segment = cv.bitwise_and(frame, mask)# return segment
def calculate_lines(frame, lines): # Empty arrays to store the coordinates of the left and right lines left = [] right = [] # Loops through every detected line for line in lines: # Reshapes line from 2D array to 1D array x1, y1, x2, y2 = line.reshape(4) # Fits a linear polynomial to the x and y coordinates and returns a vector of coefficients which describe the slope and y-intercept parameters = np.polyfit((x1, x2), (y1, y2), 1) slope = parameters[0] y_intercept = parameters[1] # If slope is negative, the line is to the left of the lane, and otherwise, the line is to the right of the lane if slope < 0: left.append((slope, y_intercept)) else: right.append((slope, y_intercept)) # Averages out all the values for left and right into a single slope and y-intercept value for each line left_avg = np.average(left, axis = 0) right_avg = np.average(right, axis = 0) # Calculates the x1, y1, x2, y2 coordinates for the left and right lines left_line = calculate_coordinates(frame, left_avg) right_line = calculate_coordinates(frame, right_avg) return np.array([left_line, right_line])
def calculate_coordinates(frame, parameters): slope, intercept = parameters # Sets initial y-coordinate as height from top down (bottom of the frame) y1 = frame.shape[0] # Sets final y-coordinate as 150 above the bottom of the frame y2 = int(y1 - 150) # Sets initial x-coordinate as (y1 - b) / m since y1 = mx1 + b x1 = int((y1 - intercept) / slope) # Sets final x-coordinate as (y2 - b) / m since y2 = mx2 + b x2 = int((y2 - intercept) / slope) return np.array([x1, y1, x2, y2])
def visualize_lines(frame, lines): # Creates an image filled with zero intensities with the same dimensions as the frame lines_visualize = np.zeros_like(frame) # Checks if any lines are detected if lines is not None: for x1, y1, x2, y2 in lines: # Draws lines between two coordinates with green color and 5 thickness cv.line(lines_visualize, (x1, y1), (x2, y2), (0, 255, 0), 5) return lines_visualize
# cap = cv.VideoCapture("input.mp4")# while (cap.isOpened()):# ret, frame = cap.read()# canny = do_canny(frame)# # plt.imshow(frame)# # plt.show()# segment = do_segment(canny)# hough = cv.HoughLinesP(segment, 2, np.pi / 180, 100, np.array([]), minLineLength = 100, maxLineGap = 50)
# Averages multiple detected lines from hough into one line for left border of lane and one line for right border of lane lines = calculate_lines(frame, hough) # Visualizes the lines lines_visualize = visualize_lines(frame, lines) # Overlays lines on frame by taking their weighted sums and adding an arbitrary scalar value of 1 as the gamma argument output = cv.addWeighted(frame, 0.9, lines_visualize, 1, 1) # Opens a new window and displays the output frame cv.imshow("output", output)
# if cv.waitKey(10) & 0xFF == ord('q'):# break
# cap.release()# cv.destroyAllWindows()

現(xiàn)在,打開Terminal并運行pythondetector.py來測試您的簡單車道檢測器!如果您錯過任何代碼,這是帶有注釋的完整解決方案:

import cv2 as cvimport numpy as np# import matplotlib.pyplot as plt
def do_canny(frame): # Converts frame to grayscale because we only need the luminance channel for detecting edges - less computationally expensive gray = cv.cvtColor(frame, cv.COLOR_RGB2GRAY) # Applies a 5x5 gaussian blur with deviation of 0 to frame - not mandatory since Canny will do this for us blur = cv.GaussianBlur(gray, (5, 5), 0) # Applies Canny edge detector with minVal of 50 and maxVal of 150 canny = cv.Canny(blur, 50, 150) return canny
def do_segment(frame): # Since an image is a multi-directional array containing the relative intensities of each pixel in the image, we can use frame.shape to return a tuple: [number of rows, number of columns, number of channels] of the dimensions of the frame # frame.shape[0] give us the number of rows of pixels the frame has. Since height begins from 0 at the top, the y-coordinate of the bottom of the frame is its height height = frame.shape[0] # Creates a triangular polygon for the mask defined by three (x, y) coordinates polygons = np.array([ [(0, height), (800, height), (380, 290)] ]) # Creates an image filled with zero intensities with the same dimensions as the frame mask = np.zeros_like(frame) # Allows the mask to be filled with values of 1 and the other areas to be filled with values of 0 cv.fillPoly(mask, polygons, 255) # A bitwise and operation between the mask and frame keeps only the triangular area of the frame segment = cv.bitwise_and(frame, mask) return segment
def calculate_lines(frame, lines): # Empty arrays to store the coordinates of the left and right lines left = [] right = [] # Loops through every detected line for line in lines: # Reshapes line from 2D array to 1D array x1, y1, x2, y2 = line.reshape(4) # Fits a linear polynomial to the x and y coordinates and returns a vector of coefficients which describe the slope and y-intercept parameters = np.polyfit((x1, x2), (y1, y2), 1) slope = parameters[0] y_intercept = parameters[1] # If slope is negative, the line is to the left of the lane, and otherwise, the line is to the right of the lane if slope < 0: left.append((slope, y_intercept)) else: right.append((slope, y_intercept)) # Averages out all the values for left and right into a single slope and y-intercept value for each line left_avg = np.average(left, axis = 0) right_avg = np.average(right, axis = 0) # Calculates the x1, y1, x2, y2 coordinates for the left and right lines left_line = calculate_coordinates(frame, left_avg) right_line = calculate_coordinates(frame, right_avg) return np.array([left_line, right_line])
def calculate_coordinates(frame, parameters): slope, intercept = parameters # Sets initial y-coordinate as height from top down (bottom of the frame) y1 = frame.shape[0] # Sets final y-coordinate as 150 above the bottom of the frame y2 = int(y1 - 150) # Sets initial x-coordinate as (y1 - b) / m since y1 = mx1 + b x1 = int((y1 - intercept) / slope) # Sets final x-coordinate as (y2 - b) / m since y2 = mx2 + b x2 = int((y2 - intercept) / slope) return np.array([x1, y1, x2, y2])
def visualize_lines(frame, lines): # Creates an image filled with zero intensities with the same dimensions as the frame lines_visualize = np.zeros_like(frame) # Checks if any lines are detected if lines is not None: for x1, y1, x2, y2 in lines: # Draws lines between two coordinates with green color and 5 thickness cv.line(lines_visualize, (x1, y1), (x2, y2), (0, 255, 0), 5) return lines_visualize
# The video feed is read in as a VideoCapture objectcap = cv.VideoCapture("input.mp4")while (cap.isOpened()): # ret = a boolean return value from getting the frame, frame = the current frame being projected in the video ret, frame = cap.read() canny = do_canny(frame) cv.imshow("canny", canny) # plt.imshow(frame) # plt.show() segment = do_segment(canny) hough = cv.HoughLinesP(segment, 2, np.pi / 180, 100, np.array([]), minLineLength = 100, maxLineGap = 50) # Averages multiple detected lines from hough into one line for left border of lane and one line for right border of lane lines = calculate_lines(frame, hough) # Visualizes the lines lines_visualize = visualize_lines(frame, lines) cv.imshow("hough", lines_visualize) # Overlays lines on frame by taking their weighted sums and adding an arbitrary scalar value of 1 as the gamma argument output = cv.addWeighted(frame, 0.9, lines_visualize, 1, 1) # Opens a new window and displays the output frame cv.imshow("output", output) # Frames are read by intervals of 10 milliseconds. The programs breaks out of the while loop when the user presses the 'q' key if cv.waitKey(10) & 0xFF == ord('q'): break# The following frees up resources and closes all windowscap.release()cv.destroyAllWindows()


方法2:Spatial CNN

方法1中這種相當手工制作的傳統(tǒng)方法似乎運行得很好……至少對于清晰的直行道路而言,是的。

但是,此方法也很明顯,它會在彎道或急轉(zhuǎn)彎時立即中斷。此外,我們注意到,由車道上的直線組成的標記(如涂上的箭頭標志)的存在可能會不時使車道檢測器感到困惑,這從演示渲染中的毛刺中可以明顯看出。克服此問題的一種方法可能是將三角形蒙版進一步細化為兩個單獨的更精確的蒙版。 但是,這些相當隨意的蒙版參數(shù)根本無法適應各種變化的道路環(huán)境。另一個缺點是,帶點標記或根本沒有清晰標記的車道也會被車道檢測器忽略,因為不存在滿足霍夫變換閾值的連續(xù)直線。最后,影響線路可見度的天氣和照明條件也可能是一個問題。

1.Architecture

盡管卷積神經(jīng)網(wǎng)絡(CNN)已被證明是識別較低圖像層的簡單特征(例如邊緣,顏色漸變)以及更深層次的復雜特征和實體(例如對象識別)的有效架構(gòu),但它們常常難以代表這些特征和實體的“姿勢”——也就是說,CNN非常適合從原始像素中提取語義,但是在捕獲幀中像素的空間關(guān)系(例如旋轉(zhuǎn)和平移關(guān)系)時表現(xiàn)不佳。但是,這些空間關(guān)系對于車道檢測任務很重要,在車道檢測中,先驗形狀較強,而外觀連貫性較弱。

例如,很難通過提取語義特征來確定交通標志,因為交通標志缺乏明顯和連貫的外觀提示,并且經(jīng)常被遮擋。 

左上方圖像右側(cè)的汽車和左下方圖像右側(cè)的摩托車遮擋了右側(cè)車道標記,并對CNN結(jié)果產(chǎn)生負面影響

但是,由于我們知道交通信號桿通常表現(xiàn)出相似的空間關(guān)系,例如垂直站立并放置在道路的左右兩側(cè),因此我們看到了增強空間信息的重要性。接下來是檢測車道的類似情況。

為了解決這個問題,Xingang Pan, Jianping Shi等人提出了一種架構(gòu)Spatial CNN(SCNN),“將傳統(tǒng)的深層逐層卷積概括為特征圖中的逐層卷積”。這是什么意思?在傳統(tǒng)的逐層CNN中,每個卷積層都從其前一層接收輸入,進行卷積和非線性激活,然后將輸出發(fā)送到下一層。SCNN通過將各個要素地圖的行和列視為“”,進一步采取了這一步驟,并依次應用了相同的過程(其中順序表示切片僅在從先前切片接收到信息之后才將信息傳遞給后續(xù)切片),允許像素信息在同一層內(nèi)的神經(jīng)元之間傳遞消息,從而有效地增加了對空間信息的重視。

SCNN還相對較新,發(fā)布于2018年,但已經(jīng)跑贏了ReNet(RNN)MRFNet(MRF + CNN),更深入的ResNet架構(gòu)之類,并以96.53% 的準確性在TuSimple基準測試車道檢測挑戰(zhàn)賽中排名第一。

此外,除了SCNN的發(fā)布之外,作者還發(fā)布了CULane Dataset,這是一個大規(guī)模數(shù)據(jù)集,帶有帶有立方棘刺的行車道注釋。CULane數(shù)據(jù)集還包含許多具有挑戰(zhàn)性的場景,包括遮擋和變化的照明條件。

2.模型

車道檢測需要精確的像素識別和車道曲線預測。SCNN的作者沒有直接訓練車道的存在并隨后進行聚類,而是將藍色,綠色,紅色和黃色的車道標記視為四個單獨的類。該模型為每個曲線輸出概率圖(概率圖),類似于語義分割任務,然后將概率圖通過一個小型網(wǎng)絡傳遞,以預測最終的立方棘。該模型基于DeepLab-LargeFOV模型變體。

  • GitHub 鏈接 | https://github.com/XingangPan/SCNN 

對于存在值超過0.5的每個車道標記,將以20行間隔搜索對應的概率圖,以找到響應度最高的位置。為了確定是否檢測到車道標記,計算地面真相(正確標簽)和預測之間的“聯(lián)合路口”(IoU),其中將高于設置閾值的IoU評估為“真陽性”(TP),以計算精度和記起。

3.測試和訓練

全部代碼已經(jīng)上傳至Github上,您可以按照此倉庫在SCNN論文中重現(xiàn)結(jié)果,或使用CULane數(shù)據(jù)集測試您自己的模型。

?? 車道線檢測項目論文和數(shù)據(jù)集 https://github.com/Charmve/Awesome-Lane-Detection


總結(jié)

就是這樣!??希望本教程向您展示了如何使用涉及許多手工功能和微調(diào)的傳統(tǒng)方法來構(gòu)建簡單的車道檢測器,并且還向您介紹了一種替代方法,該方法遵循了解決幾乎所有類型的車輛的最新趨勢。

計算機視覺問題:您可以為此添加卷積神經(jīng)網(wǎng)絡!


瀏覽 149
點贊
評論
收藏
分享

手機掃一掃分享

分享
舉報
評論
圖片
表情
推薦
點贊
評論
收藏
分享

手機掃一掃分享

分享
舉報

感谢您访问我们的网站,您可能还对以下资源感兴趣:

国产秋霞理论久久久电影-婷婷色九月综合激情丁香-欧美在线观看乱妇视频-精品国avA久久久久久久-国产乱码精品一区二区三区亚洲人-欧美熟妇一区二区三区蜜桃视频 www.国产视频| 少妇人妻偷人精品无码视频新浪 | 熟女人妻ThePorn| 日韩精品网址| 国产91一区在线精品| 黃色一级A片一級片| 一级黄色网| 中文字幕牛牛婷婷| 日韩三区在线| 色婷婷久久久久swag精品| 精品免费国产一区二区三区四区的使用方法 | 一级黄色AV片| 99人妻视频| 成人做爰69片免费观看| 熟妇人妻中文| 九色91PORNY国产| 国产女同在线观看| 猫咪视频大全视频| 爱爱毛片| 靠逼免费视频| 你懂的网站在线观看| 无码人妻蜜桃| 大香蕉伊人网视频| 国产狂喷水潮免费网站www| 婷婷五月激情网| 青草无码视频| 黄网站在线播放| 欧美69影院| 深爱开心激情| 五月丁香六月久久| 日韩欧美国产| 亚洲理论电影| 国产在线拍揄自揄拍无码福利| 蜜臀av在线观看| 熟女人妻一区二区| 97伊人超碰| 天堂网免费视频| 日本韩国叼嘿片| 国产精品无码怀孕软件| 色婷婷AV一区二区三区软件| 影音先锋成人片| 色欲五月天| 色综合成人| 五月丁香色色网| 特级毛片AAAAAA蜜桃| 亚洲精品91| 蜜臀久久99精品久久久电影| 中文字幕一区二区三区四区在线视频| 久操视频在线观看免费| 无码在线高清| 午夜三级无码| 久久电影精品| 黄色毛片在线播放| 黄色视频免费观看| 天天天天毛片| 亚洲综合在线视频| www.三级| 婷婷五月激情网| 国产三级片在线免费观看| 四季AV一区二区夜夜嗨| 中文字幕欧美视频| 自拍偷拍网址| 欧美三级一级| a片视频免费| 欧美日韩在线观看中文字幕| 亚洲成人动漫免费| 中字幕视频在线永久在线观看免费| 1024黄| 无码国产精品一区二区| 婷婷五月丁香五月| 中文字幕视频在线| 国产电影一区二区三区| 2014天堂网| 国产一| 超碰在线观看99| 操操色| 久久中文娱乐网| 51妺嘿嘿在线电影免费观看| 成人无码激情| 五月婷在线视频| 二区视频在线| 亚洲视频在线观看网站| av播播| 午夜无码精品| 中文在线第一页| 俺也去色色| 成人视频观看| 国产乱伦精品视频| 精品福利一区二区三区| 中文字幕高清无码免费视频| 波多野吉衣视频| 91国产做爱| 欧美大片视频| 国产在线不卡年轻点的| 翔田千里被操120分钟| 国产熟妇码AV| 国产无码AV| 澳门黄片| 蜜桃91精品秘入口内裤| 国产又爽又黄免费视频网站| 天天日天天干天天操| 国产美女被操| 在线观看无码视频| 日韩无码高清视频| 99这里都是精品| 欧美三级片在线观看| 亚洲日韩一区| 大香蕉综合| 欧美操逼视频| 日本久久久久久久久视频在线观看 | 精品操逼视频| 日韩AV资源网| 91亚洲日韩| 大肉大捧一进一出免费阅读| 亚洲日皮| 成人免费操| 日本啪啪网站| 69欧美视频| 一级免费黄色视频| 日韩美女免费视频| 环亚无码| 欧美性爱天天操| 日韩欧美操逼视频| 91成人国产| 日韩在线精品视频| 91成人电影在线| 色色毛片| 怡春院成人| 日韩高清无码中文字幕| 国产77777| 爽好紧别夹喷水欧美| 另类天堂| 北条麻妃无码一区三区| a√在线视频| 西西4444www大胆无吗| 亚洲午夜影院在线| 玖玖婷婷| 亚洲第一色| 97精品一区二区三区A片| 日本精品黄色视频| 国产一级婬乱片AV片AAA毛片| 超碰女人| 一级特黄AAAA片| 嫩草AV| 亚洲精品三级片| 操逼逼网| 苗条一区小视频| 欧美性猛交一区二区三区精品| 日本黄在线播放| 天天欧美| 久草综合网| 国产乱伦内射视频| 日韩无码精品一区二区三区| 美日韩免费视频| 国产婷婷色一区二区三区| 爆操91| www国产亚洲精品久久网站| 尤物视频在线观看| 韩国三级HD中文字幕2019年| 亚洲视频欧洲视频| 久久久WWW成人免费无遮挡大片| 国产成人精品无码片子的价格| 激情免费网站| 一级成人毛片| 在线有区别亚洲| 久久久久无码精品亚洲日韩| 免费在线观看黄色视频网站| 超碰AA| 亚洲AV无码一区毛片AV| 黄色高清视频在线观看| 亚洲无码中文字幕在线| 91精品无码一区二区| 日韩伊人网| 狠狠躁夜夜躁人爽| 在线操| 黄片在线视频| 久久99精品国产.久久久久| 中国免费毛片| 人操人碰| 一区二区三区四区精品视频| 亚洲第1页| 欧美久久久久| 最全av在线| 欧美一级黄片免费看| 国产无码一二三区| 麻豆91精品91久久久| 射死你天天日| 天天操夜夜操狠狠操| 国产成人在线播放| 人妻精品一区二区在线| 久久久久久久久久久国产精品| 亚洲精品观看| 中文字幕无码人妻在线视频| 欧美成人三区性价比| 欧美久操| 91亚洲精品在线观看| 爱爱视频欧美| 日韩综合一区| 国产免费一区二区三区网站免费 | 亚洲,制服,综合,中文| 久久久一区二区| 丰满少妇一级片| 日韩午夜片| 日韩日日夜夜| 青青草原成人| 三级片在线观看视频| 女神思瑞精品一区二区三区| 国产噜噜噜噜噜久久久久久久久| 成人免费黄色视频网站| 青娱乐国产视频| 人妻综合网| 一级A片免费黄色视频| 丰满的人妻一区二区10| 麻豆AV片| 成人做爰A片免费看网站| 大香蕉网视频| 国产无套在线| 少妇搡BBBB搡BBB搡18禁| 久久偷看各类wc女厕嘘嘘偷窃 | 在线中文字幕第一页| 俺也来www俺也色com| 免费看黄A级毛片成人片| 人妻熟女字幕一区二区| 日韩精品一区二区三| 先锋成人电影| 一级A色情大片| 亚洲AV男人天堂| 99re99| 91视频美女| 国产av三级| 18禁网站禁片免费观看| 欧美激情一区| 手机在线看片av| 51妺嘿嘿在线电影免费观看| 中文字幕免费在线播放| 日韩超碰| 国产一区二区三区视频在线| 五十路老国产| 专业操老外| 日日干干| 亚洲国产精品成人综合色在线婷婷 | 国产午夜无码视频在线观看| 伊人免费| 精品交换一区二区三区无码| 午夜在线免费视频| 自拍偷拍中文字幕| 人人妻人人澡人人爽久久con| 免费在线无码视频| 极品毛片| 大地二中文在线观看免费鲁大师| 国产精品秘精东影业| 亚洲天堂成人在线| 人妻天堂| 丁香婷婷五月| 精品无人区无码乱码毛片国产| 中文字幕在线观看日本| 国产精品TV| 精品国产一区二区三区性色AV| 风间由美大荫蒂无码AV| 成人无码一区二区三区| 欧美日韩视频在线| 日韩三区在线| 老妇槡BBBB槡BBBB槡| 91狠狠综合| 天天爱夜夜爱| 综合天天| 亚洲AV成人无码| 中国无码| 91爱在线| www.青青草| 成人黄网在线观看| 老师搡BBBB搡BBB| 色婷婷色99国产综合精品| 92午夜福利天堂视频2019| 色色网的五月天| 欧美日韩视频在线播放| 亚洲三级视频| 偷拍一区二区三区| 日本熟妇一区二区三区| 天堂A片电影网站在线观看| 97人妻精品一区二区三区软件| 手机看片1024旧版| 国产黄色AV| 中文字幕乱码中文乱码图片| 成人无码交配视频国产网站| 影音先锋资源| 成人TV| 水蜜桃在线观看视频| 人妻精品一二三| 黄色中文字幕| 亚洲丁香五月| 福利老湿69| 国产精品第一| 成人日韩| 成人中文字幕在线视频| 韩国精品无码| 你懂的在线视频| 久久四区| 国模吧一区| 在线观看免费视频无码| 一本色道久久综合| 成年人毛片| 日韩毛片在线免费观看| 欧美日韩第一页| MAD033_后宫秘密陶子.| 人人色在线观看| 中文字幕一区二区久久人妻| 一級免費网站| 在线观看中文字幕AV| 亚洲一区二区无码| 91视频在线观看免费大全| 亚洲成人综合在线| 亚洲V在线观看| 国产高清无码在线观看视频| 色欲AV在线| 国产白嫩精品久久久久久| 久久精品中文| 中文无码久久| 河南熟妇搡BBBB搡BBBB| 黄片免费观看视频| 一级aa视频| 亚洲AV无码精品成人| 黄色片免费看| 亚洲欧美天堂| 欧美日本亚洲| 久久久精品淫秽色情| 大香蕉久久久久| 大香蕉精品欧美色综合2025| 黄片视频在线| 黑人一级片| 懂色av懂色av粉嫩av| 国产乱伦自拍| 四川妇搡BBBB搡BBBB| 97精品人妻一区二区三区在线| 好吊视频一区二区三区| 大香蕉免费| 亚洲AV无码成人精品区国产| 福利视频免费观看| 五月天久久婷婷| 国内自拍激情视频| 懂色AV一区二区三区国产中文在线| 欧美国产精品| 人人艹在线| 人人爽人人干| 国产精品美女久久久| 婷婷伊人大香蕉| 丰满无码| 一级黄色网| 成人视频欧美| 五月天乱伦小说| 亚洲AV日韩AV永久无码网站| 国产高清中文字幕| 毛片网站在线观看| 国产在线一区二区三区四区| 亚洲黄色无码| 九九香蕉网| 俺也去在线视频| 大香蕉综合伊人| 日韩1页| JIZZJIZZ国产精品喷水| 中文字幕乱码中文字幕电视剧| 免费一级婬片AAA片毛片A级| 激情内射网站| 国产欧美精品成人在线观看| 成人AV一区二区三区| 日韩性爱视频| 草草浮力院| 久久久一区二区三区四区免费听 | 亚洲av播放| 国产久久视频在线观看| AV无码观看| 成人手机看片| 91蝌蚪视频在线观看| 99精品视频北条麻妃国产版 | 日韩福利在线观看| 国产对白视频| 成人一区二区三区四区| 啪啪免费| 中文字幕第5页| 黄色成人大片| 先锋成人资源| 日韩欧美大片在线观看| 特级西西人体大胆无码| 国产xxxx视频| jizzjizz国产| 91亚洲免费视频| 韩国毛片| 91在线不卡| 国产无码AV| 一级特黄录像免费播放下载软件| 中文字幕久久播放| 日韩中文字幕网站| 激情AAA| 2025av天堂网| 国产三级成人| 黄色美女网站| 欧美系列在线| 蜜桃精品在线| 人人艹在线| 日韩操比| 日韩中文字幕精品| 四虎影院人妻| 久久精品夜色噜噜亚洲A∨| 免费成人在线网站| 国产又爽又黄免费网站在线看| 99热在线中文字幕| 亚洲香蕉在线观看| 免费色色网站| 中文字幕在线观看视频www| 100国产精品人妻无码| 天天操夜夜骑| 福利国产在线| 11孩岁女精品A片BBB| 欧美疯狂做受XXXXX高潮| 久久草视频在线播放| 国产V片| 国产精品一区二区免费| 九一精品| 亚洲精品女人久久久| 精品欧美片在线观看步骤| 狠狠躁18三区二区一区免费人| 秋霞亚洲| 亚洲综合另类| 91免费成人视频| 欧美在线不卡| 国产精品第一| 丝袜足交视频在线观看| 翔田AV无码秘三区| 精品国产香蕉| 东京热精品| 国产午夜视频在线| 五月丁香花婷婷| 国产AV不卡| 日韩成人AV毛片| 99热超碰| 久久婷婷色| 操逼网站在线| 久热精品在线观看| 欧美成人三级在线播放| 国产97热人人| 午夜蜜桃人妻一区二区| 日韩中文字幕一区二区| 午夜福利片| 人妻AV一区| 天天想天天干| 中文字幕亚洲区| 另类国产| 奇米影视色偷偷| 大香蕉伊人网站| 国产精品7777| 麻豆91麻豆国产传媒| 一级黄色小视频| 欧美一级无码| 国产精品扒开腿做爽爽爽A片唱戏| 另类视频在线| 亚洲精品mv| 福利网站在线观看| 婷婷五月综合中文字幕| 日韩无码中文字幕| 婷婷五月天小说| 国产中文字幕在线免费观看| 亚洲777| 黄色网页在线免费观看| 91免费成人视频| 亚洲黄色电影在线观看| 99久在线精品99re8| 丁香五月成人网| 国产A√| 桃色五月天| 亚洲AV无码成人精品区h麻豆| 一级片免费| caopeng97| 欧美AAA| 青青草AV| 亚洲中文字幕免费视频| 天天舔天天操| 天天操天天干欧美精品| 欧美三级欧美成人高清| 国产麻豆一区二区三区| 四虎影院中文字幕| 一区二区三区无码在线| 91无码人妻一区二区成人aⅴ| 黄色电影毛片| 肏屄免费视频| 成人免费视频网| 草av| AV资源在线| 国产小电影在线| 91啦丨熟女露脸| 中文字幕免费在线看一区七区| 911久久| 日日99| 在线操B视频| 久久99免费视频| 一区二区在线看| 日韩av电影免费在线观看| 伊人大香蕉在线视频| 天天看天天摸| 黄色AV电影| 韩日无码| 欧美色999| 天天艹天天干| 亚洲色婷婷五月| 91视频精品| 成人激情视频网| 亚洲熟妇AV日韩熟妇在线| 日韩美毛片| A级网站| 一本色道久久综合无码| 噼里啪啦免费观看视频大全 | 青青草精品| 精品孕妇一区二区三区| 996热re视频精品视频| 最全av在线| 97A片在线观看播放| 无码欧美成人AAAA三区在线| 黄色一级片免费在线观看| 国产精品无码一区二区三区免费 | 男女av在线观看| 精品福利导航| 97自拍视频| 四虎蜜桃| 特黄特色免费视频| www.大吊视频| 国产日皮视频| 亚洲精品秘一区二区三小| 国产精品久久在线| 亚洲视频中文字母| 日韩欧美色| 高清无码中文字幕在线观看| 日本亚洲国产| 亚洲AV一二三| 亚洲秘无码一区二区三区观看| 黄片免费看视频| 激情午夜av| 黄色高清视频在线观看| 亚洲精品一区二区二区的游戏情况| 成人在线小视频| 国产日逼网站| 亚洲成人一二三区| 亚洲国产成人精品综合99| 色老板网站| 波多野结衣av在线播放| 又黄又湿的视频| 亚洲青娱乐在线| a亚洲天堂| 国产suv精品一区二区6| 中文字幕不卡视频| 一本道综合网| 无码激情18激情视频| 2014亚洲天堂| 国产中文在线| 国产午夜在线视频| 97超级碰| 99热播在线| 国产人妻精品一区二区三区不卡 | 超碰在线观看97| 中文AV字幕| 天天日狠狠操| 免费在线观看视频a| 九九色在线视频| 久久婷婷五月天| 黄色性爱小说| 无码人妻精品一区二区蜜桃91| 色老板在线观看视频| av在线小说| 亚洲国产黄片| 中文字幕精品无码| 国产一区二区三区免费播放| 3344在线观看免费下载视频| 色小说在线| 亚洲综合一区二区三区| 99热思思| 天堂A片电影网站在线观看| 国产福利91精品一区二区三区 | 美女做爱网站| 尤物网在线| 999久久| 北条麻妃一区二区三区在线播放| 亚洲AV永久无码精品国产精| 色偷偷综合| 日韩人妻丰满无码区A片| 91爱爱视频| 黑人大荫蒂女同互磨| 午夜亚洲福利| eeuss久久| 亚洲波多野结衣| 亚洲成人在线视频观看| 日韩国产欧美精品一区| 日本久久网| 欧美日韩在线免费| 奇米一区| 麻豆成人精品国产免费| AⅤ在线观看| 亚洲熟妇在线观看| 国产高清在线免费观看AV片| 日韩人妻无码一区二区三区中文| 操逼免费| 強姧伦一区二区三区在线播放| 欧美一级特黄A片免费| 欧美午夜精品久久久久久3D| 国产AV无码精品| 狠狠干2022| 国产三级黄色片| 日逼99| 男人的天堂在线| 影音先锋成人网| 97精品综合久久| 91久久国产综合久久91精品网站| 操逼逼综合网| 婷婷色六月| 久久综合无码内射国产| 人人操人人网站| 日韩一级中文字幕| 国产欧美日韩综合| 蜜桃91精品秘入口内裤| 麻豆精品| 国产少妇| 欧美男人天堂| 黄色日韩| 国产棈品久久久久久久久久九秃| 嫩苞又嫩又紧AV无码| 欧美3p视频| 91九色TS另类国产人妖| 国精产品一二三区| 秘蜜桃色一区二区三区在线观看 | 欧美爱| 国产91人| 欧美日韩视频| 欧美日韩三级片| 91av电影| 中文字幕久久无码| 国产日皮视频| 亚洲三级片视频| 人妻操逼| 五月丁香免费视频| 黄色A片一级| 午夜骚影| 日韩欧美手机在线| 久热精品在线观看视频| 香蕉视频久久| 中文字幕巨肉乱码中文乱码| 翔田千里一区二区三区精品播放| 亚洲成人h| 性猛交AAAA片免费观看直播 | 爆乳乱伦| 2025国产在线| 91三级片网站| 国产aaaaaaaaaa| 伊人久久无码| 亚洲中文第一页| 91人妻中文字幕| 日日久视频| 男人天堂无码视频| 日本豆花视频| 骚逼日本| 91吴梦梦无码一区二区| 99久免费视频| 亚洲高清无码视频在线播放 | 91狠狠色丁香婷婷综合久久精品| 精品无码一区二区Av蜜桃| 免费成人高清视频| 国产无遮挡又黄又爽又色视频| 99国产免费视频| 九九九视频在线观看| 在线观看无码高清视频| 亚洲AV成人片色在线观看高潮| 蜜臀精品色无码蜜臀AV| 日韩av无码电影| 2018天天日天天操| 人妻爽爽| 午夜亚洲无码| 综合伊人大香蕉| a片免费观看视频| 青青草性爱| 国产熟睡乱子伦午夜视频_第1集| 色视频免费观看| 国产精品国产精品国产专区不52| 亚洲秘无码一区二区三区| 日本A片在线免费观看| 日韩成人免费在线观看| 亚洲无码内射| 亚洲日韩欧美成人| 少妇无码在线观看| 激情视频免费在线观看| 亚洲日韩欧美在线观看| 亚洲小说区图片区都市| 熊猫成人网| 一区二区三区精品视频| 无码一| 亚洲人网站| 国产一区二区AV| 日韩成人影片| 日韩三级小说| 色一区二区| 狼友初视频在线观看| 国产高清做爱免费在线视频| 中文字幕视频一区| 国产淫乱视频| 99视频在线免费| 欧美特黄AAAAAA| 欧美老熟妇BBBBB搡BBB| 国产成人精品无码片子的价格| 日韩精品A片| 日韩啪啪啪网站| 国产伦子伦一级A片在线| 日日干综合| 国内免费AV| 西西4444www大胆无| www.国产视频| 日批视频网站| av在线天堂| 芳芳的骚逼| 激情视频免费看| 免费黄色小视频在线观看| 日日夜夜天天综合| 福利在线看| 大香蕉75在线| 亚洲小视频在线播放| 无码国产一区二区三区四区五区 | 亚洲日韩精品欧美一区二区yw| 成人AV一AV二| 日本人妻在线观看| 日韩五码在线| 日韩欧美在线不卡| 九九热国产视频| 91探花在线观看| 污视频在线免费观看| 亚洲成人自拍| 亚洲s在线| 中国极品少妇XXX| www.毛片| 高清中文字幕在线A片| 国产中文在线视频| 国产成人精品二三区麻豆| 男女日比视频| 欧美狠狠| i美女福利视频| 午夜日韩乱伦| 日韩操比视频| 91在线一区| 日本中文字幕中文翻译歌词| 国产av三级片| 粉嫩av懂色av蜜臀av分享| 黄色成人视频在线免费观看| 成人免费毛片AAAAAA片| 亚洲中文字幕av| 影视先锋久久| 人人摸人人操人人爱| 日韩免费视频一区| 日本高清视频免费观看| 乱伦无码视频| 中文字幕国产视频| 91综合网| 青娱乐成人网| 91乱了伦国产乱子伦| 日韩欧美国产综合| 999久久| 操B网址| 欧美老妇性猛交| 韩国日本美国免费毛片| 一本色道久久综合狠狠躁| 丁香一区二区| 人妻天天操| 成人无码人妻| 毛片福利| 韩国色情中文字幕| 婷色五月| 在线免费中文字幕| 91碰碰| 性久久久久久久| 日韩操比| 亚洲AV无码日韩AV无码导航| AV高清无码在线观看| 天天干天天日| 一级无码视频| 91丨人妻丨偷拍| 亚洲无码天堂| 91精品酒店视频| 久视频在线观看| 国产精品欧美一区二区| 2018天天干天天操| 日韩黄色大片| 竹菊影视一区二区三区| 另类老妇奶性生BBwBBw偷拍| 欧美人妻无码| AV东方在线| 日本精品视频在线观看| 欧美级毛片高潮| 影音先锋av网| 黄色在线视频观看| 欧美狂操| 久久久九九九| 国产色秘乱码一区二区三区| 午夜爱爱免费视频| 久久国产毛片| 欧美日韩精品一区二区| 日韩无码AV中文字幕| 国内操逼| 成人A√| 久久午夜福利视频| 亚洲性爱无码| 97人人操人人| 大香蕉福利视频导航| 日韩wuma| 日韩激情视频| 大香蕉网视频| 国产激情福利| 色婷婷小说| 白丝自慰网站| 亚洲精品97久久中文字幕| 一级成人视频| 精品无码视频| 在线毛片网站| 国产av日韩av| 国产乱婬片视频| 97人妻无码一区二区| 人妻福利导航| 日韩AV资源网| AV日逼网| 国产久久久久久久| 日韩,变态,另类,中文,人妻| 一级片黑人| 草逼com| 日韩一级无码特黄AAA片| 羽月希奶水饱胀在线播放| 北条麻妃在线观看香蕉| 天天撸天天操| 18禁黄色免费网站| 国产又粗又大又长| 天天干强奸视频在线综合| 无码久久久| 中文字幕福利视频| 午夜激情毛片| 黄色电影毛片| 91AV在线播放| 色色资源网| 91大香蕉伊人| 成人黄网站在线观看| 在线观看av网站中文字幕| 大香蕉精品| 日本无码专区| 亚洲AV无码成人精品涩涩麻豆| 丰满人妻一区二区三区| 亚洲黄片在线| 成人精品一区二区区别解析| 色综合久久88色综合天天| 日本麻豆| 蜜桃av无码一区三区| 农村乱子伦毛片国产乱| 无码不卡视频在线观看| 黄色一级大片在线免费看产| 中文字幕日韩高清| 成人在线网站| 中文字幕人妻丝袜二区电影| 91网站免费观看| 偷偷操穴| 日一区二区| 黄色直播在线观看| 1插菊花综合网| 亚洲精品白浆高清久久久久久 | 欧美特黄一级视频| 天天看天天日| 国产一级精品视频| 中文字幕超清在线观看| 色色免费视频| 天天日天天操天天| 精品无码视频在线| 黃色一级A一片人与| 国产最新在线视频| 麻豆精品秘国产| 91亚洲在线| 亚洲高清视屏| 乱子伦国产精品视频一级毛| 国产成人无码一区二区在线| 日本特黄一级片| 婷婷丁香六月天| 日韩欧美网站| 97av在线| 综合色婷婷一区二区亚洲欧美国产 | 成人亚洲综合| 91.xxxxx| 女公务员人妻呻吟求饶| 国产黄色视频网站在线观看| 亚洲欧洲在线视频| 国产在线欧美| 成人激情视频网| 插进去综合图| 成人免费乱码大片a毛片蜜芽| 97成人人妻一区二区三区| 人人干人人操人人爱| 内射熟妇| 无码国产精品一区二区免费96| av在线观看网站| 亚洲无码一二区| 日韩大香蕉| 亚洲男同Gay一区二区| 国产精品网站在线观看| 在线观看一区二区视频| 免费在线黄色视频|