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

歡迎訪問 生活随笔!

生活随笔

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

python

task2:opencv的python接口图像储存、色彩空间、

發(fā)布時間:2024/9/30 python 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 task2:opencv的python接口图像储存、色彩空间、 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

task2:圖像儲存、色彩空間、圖像的算數(shù)運算。

筆記:

使用managers.WindowManager抽象窗口和鍵盤:
main.py:

import cv2 from manager import WindowManager, CaptureManagerclass Cameo(object):def init (self):self._windowManager = WindowManager('Cameo', self.onKeypress)self._captureManager = CaptureManager(cv2.VideoCapture(0), self._windowManager, True)def run(self):self._windowManager.createWindow()while self._windowManager.isWindowCreated:self._captureManager.enterFrame()frame = self._captureManager.frame # TODO: Filter the frame (Chapter 3).self._captureManager.exitFrame()self._windowManager.processEvents()def onKeypress (self,keycode):if keycode == 32: # spaceself._captureManager.writelmage('me1.jpg')elif keycode == 9: # tabif not self._captureManager.isWritingVideo:self._captureManager.startwritingvideo('output.avi')else:self._captureManager.stopWritingVideo()elif keycode == 27: # escapeself._windowManager.destroyWindow()if __name__ == '__main__':Cameo().run()

manager.py:

import cv2 class CaptureManager(object):def init (self, capture, previewWindowManager = None,shouldMirrorPreview = False):self.previewWindowManager = previewWindowManagerself.shouldMirrorPreview = shouldMirrorPreviewself._capture = captureself._channel = 0self. enteredFrame = Falseself._frame = Noneself._imageFilename = Noneself._videoFilename = Noneself._videoEncoding = Noneself._videoWriter = Noneself._startTime = Noneself._framesElapsed = int(0)self._fpsEstimate = None@propertydef channel(self):return self._channel@channel.setterdef channel(self, value):if self._channel != value:self._channel = valueself._frame = None@propertydef frame(self):if self._enteredFrame and self._frame is None:self._frame = self._capture.retrieve()return self._frame@propertydef isWritinglmage (self):return self._imageFilename is not None@propertydef isWritingVideo(self):return self._videoFilename is not Noneclass WindowManager(object):def init (self, windowName,keypressCallback = None):self.keypressCallback = keypressCallbackself._windowName = windowNameself._isWindowCreated = False@propertydef isWindowCreated(self):return self._isWindowCreateddef createWindow (self):cv2.namedWindow(self._windowName)self._isWindowCreated = Truedef show(self, frame):cv2.imshow(self._windowName, frame)def destroyWindow (self):cv2.destroyWindow(self._windowName)self._isWindowCreated = Falsedef processEvents (self):keycode = cv2.waitKey(1)if self.keypressCallback is not None and keycode != -1: # Discard any non-ASCII info encoded by GTK.self.keypressCallback(keycode)

ps:這個代碼運行以后顯示:

File “C:\Users\14172\PycharmProjects\pythonProject3\main.py”, line
25, in run
self._windowManager.createWindow() AttributeError: ‘Cameo’ object has no attribute ‘_windowManager’

還沒找出問題。

HSV和RGB

OpenCV中有數(shù)百種關于在不同色彩空間之間轉換的方法。當前,在計算機視覺中有三 種常用的色彩空間:灰度、BGR以及HSV (Hue, Saturation, Value)o
□灰度色彩空間是通過去除彩色信息來將其轉換成灰階,灰度色彩空間對中間處理特 別有效,比如人臉檢測。
□ BGR,即藍-綠-紅色彩空間,每一個像素點都由一個三元數(shù)組來表示,分別代表 藍、綠、紅三種顏色。網(wǎng)頁開發(fā)者可能熟悉另一個與之相似的顏色空間:RGB,它 們只是在顏色的順序上不同。
□ HSV, H ( Hue)是色調,S ( Saturation)是飽和度,V (Value)表示黑暗的程度(或 光譜另一端的明亮程度)。
BGR圖像中像素B,G和R的取值與落在物體上的光相關,因此這些值也彼此相關,無法準確描述像素。相反,HSV空間中,三者相對獨立,可以準確描述像素的亮度,飽和度和色度。
RGB色彩空間是一種被廣泛接受的色彩空間,但是它過于抽象,我們不能直接通過其值感知具體的色彩,HSV色彩空間我們可以更加方便地通過色調 飽和度 亮度來感知顏色。
H色調 S飽和度 V亮度 色調0為紅色,300為品紅色
亮度為0時圖像是純黑色
img[0,0,0]=255將該像素點第0個通道(即B通道)設置為255,即該點指定為藍色。
綠色的色調為60 藍色為120
示例:

blue = np.zeros([1,1,3],dtype=np.uint8) blue[0,0,0] = 255 bluet0 = cv2.cvtColor(blue,cv2.COLOR_BGR2HSV) print(blue) print(bluet0)

結果:

HSV模式中各種顏色的范圍:
藍色-[110,100,100]到[130,255,255]之間
綠色-值在[50,100,100]和,[70,255,255]之間
紅色-[0,100,100], [10,255,255]之間
通過掩碼的按位與運算,鎖定顏色區(qū)域:

img = cv2.imread("me1.jpg") img2 = cv2.cvtColor(img,cv2.COLOR_BGR2HSV) minred =np.array( [0,50,50]) maxred = np.array([30,255,255]) #確定紅色區(qū)域 mask = cv2.inRange(img2,minred,maxred) #按位與運算 提取藍色區(qū)域 img3 = cv2.bitwise_and(img,img,mask=mask) cv2.imshow("img",img3)

結果:=

傅里葉變換

在OpenCV中,對圖像和視頻的大多數(shù)處理都或多或少會涉及傅里葉變換的概念。
也就是說,人們所看到的波形都是由其他波形疊加得到的。這個概念對操作圖像非常 有幫助,因為這樣我們可以區(qū)分圖像里哪些區(qū)域的信號(比如圖像像素)變化特別強,哪些區(qū)域的信號變化不那么強,從而可以任意地標記噪聲區(qū)域、感興趣區(qū)域、前景和背景等。 原始圖像由許多頻率組成,人們能夠分離這些頻率來理解圖像和提取感興趣的數(shù)據(jù)。
傅里葉變換的概念是許多常見的圖像處理操作的基礎,比如邊緣檢測或線段和形狀 檢測。
下面先介紹兩個概念:高通濾波器和低通濾波器,上面提到的那些操作都是以這兩個 概念和傅里葉變換為基礎。
3.2.1高通濾波器
高通濾波器(HPF)是檢測圖像的某個區(qū)域,然后根據(jù)像素與周圍像素的亮度差值來提 升(boost)該像素的亮度的濾波器。

邊緣檢測

OpenCV提供了許多邊緣檢測濾波函數(shù),包括Laplacian、Sobel()以及Scharr()這些濾波函數(shù)都會將非邊緣區(qū)域轉為黑色,將邊緣區(qū)域轉為白色或其他飽和的顏色。但是, 這些函數(shù)都很容易將噪聲錯誤地識別為邊緣。緩解這個問題的方法是在找到邊緣之前對圖 像進行模糊處理。OpenCV也提供了許多模糊濾波函數(shù),包括blur()(簡單的算術平均)、 medianBlur()以及GaussianBlur()。邊緣檢測濾波函數(shù)和模糊濾波函數(shù)的參數(shù)有很多,但總會有一個ksize參數(shù),它是一個奇數(shù),表示濾波核的寬和高(以像素為單位)。
這里使用medianBlur()作為模糊函數(shù),它對去除數(shù)字化的視頻噪聲?非常有效,特別是去除彩色圖像的噪聲;使用Laplacian()作為邊緣檢測函數(shù),它會產生明顯的邊緣線條,灰度圖像更是如此。在使用medianBlur()函數(shù)之后,將要使用L aplacian ()函數(shù)之前,需要將 圖像從BGR色彩空間轉為灰度色彩空間。
在得到Laplacian()函數(shù)的結果之后,需要將其轉換成黑色邊緣和白色背景的圖像。然 后將其歸一化(使它的像素值在0到1之間),并乘以源圖像以便能將邊緣變黑。

代碼測試

flags = [i for i in dir(cv) if i.startswith('COLOR_')]print(flags)

輸出:

C:\Users\14172\PycharmProjects\pythonProject3\venv\Scripts\python.exe C:/Users/14172/PycharmProjects/pythonProject3/main.py
[‘COLOR_BAYER_BG2BGR’, ‘COLOR_BAYER_BG2BGRA’, ‘COLOR_BAYER_BG2BGR_EA’, ‘COLOR_BAYER_BG2BGR_VNG’, ‘COLOR_BAYER_BG2GRAY’, ‘COLOR_BAYER_BG2RGB’, ‘COLOR_BAYER_BG2RGBA’, ‘COLOR_BAYER_BG2RGB_EA’, ‘COLOR_BAYER_BG2RGB_VNG’, ‘COLOR_BAYER_GB2BGR’, ‘COLOR_BAYER_GB2BGRA’, ‘COLOR_BAYER_GB2BGR_EA’, ‘COLOR_BAYER_GB2BGR_VNG’, ‘COLOR_BAYER_GB2GRAY’, ‘COLOR_BAYER_GB2RGB’, ‘COLOR_BAYER_GB2RGBA’, ‘COLOR_BAYER_GB2RGB_EA’, ‘COLOR_BAYER_GB2RGB_VNG’, ‘COLOR_BAYER_GR2BGR’, ‘COLOR_BAYER_GR2BGRA’, ‘COLOR_BAYER_GR2BGR_EA’, ‘COLOR_BAYER_GR2BGR_VNG’, ‘COLOR_BAYER_GR2GRAY’, ‘COLOR_BAYER_GR2RGB’, ‘COLOR_BAYER_GR2RGBA’, ‘COLOR_BAYER_GR2RGB_EA’, ‘COLOR_BAYER_GR2RGB_VNG’, ‘COLOR_BAYER_RG2BGR’, ‘COLOR_BAYER_RG2BGRA’, ‘COLOR_BAYER_RG2BGR_EA’, ‘COLOR_BAYER_RG2BGR_VNG’, ‘COLOR_BAYER_RG2GRAY’, ‘COLOR_BAYER_RG2RGB’, ‘COLOR_BAYER_RG2RGBA’, ‘COLOR_BAYER_RG2RGB_EA’, ‘COLOR_BAYER_RG2RGB_VNG’, ‘COLOR_BGR2BGR555’, ‘COLOR_BGR2BGR565’, ‘COLOR_BGR2BGRA’, ‘COLOR_BGR2GRAY’, ‘COLOR_BGR2HLS’, ‘COLOR_BGR2HLS_FULL’, ‘COLOR_BGR2HSV’, ‘COLOR_BGR2HSV_FULL’, ‘COLOR_BGR2LAB’, ‘COLOR_BGR2LUV’, ‘COLOR_BGR2Lab’, ‘COLOR_BGR2Luv’, ‘COLOR_BGR2RGB’, ‘COLOR_BGR2RGBA’, ‘COLOR_BGR2XYZ’, ‘COLOR_BGR2YCR_CB’, ‘COLOR_BGR2YCrCb’, ‘COLOR_BGR2YUV’, ‘COLOR_BGR2YUV_I420’, ‘COLOR_BGR2YUV_IYUV’, ‘COLOR_BGR2YUV_YV12’, ‘COLOR_BGR5552BGR’, ‘COLOR_BGR5552BGRA’, ‘COLOR_BGR5552GRAY’, ‘COLOR_BGR5552RGB’, ‘COLOR_BGR5552RGBA’, ‘COLOR_BGR5652BGR’, ‘COLOR_BGR5652BGRA’, ‘COLOR_BGR5652GRAY’, ‘COLOR_BGR5652RGB’, ‘COLOR_BGR5652RGBA’, ‘COLOR_BGRA2BGR’, ‘COLOR_BGRA2BGR555’, ‘COLOR_BGRA2BGR565’, ‘COLOR_BGRA2GRAY’, ‘COLOR_BGRA2RGB’, ‘COLOR_BGRA2RGBA’, ‘COLOR_BGRA2YUV_I420’, ‘COLOR_BGRA2YUV_IYUV’, ‘COLOR_BGRA2YUV_YV12’, ‘COLOR_BayerBG2BGR’, ‘COLOR_BayerBG2BGRA’, ‘COLOR_BayerBG2BGR_EA’, ‘COLOR_BayerBG2BGR_VNG’, ‘COLOR_BayerBG2GRAY’, ‘COLOR_BayerBG2RGB’, ‘COLOR_BayerBG2RGBA’, ‘COLOR_BayerBG2RGB_EA’, ‘COLOR_BayerBG2RGB_VNG’, ‘COLOR_BayerGB2BGR’, ‘COLOR_BayerGB2BGRA’, ‘COLOR_BayerGB2BGR_EA’, ‘COLOR_BayerGB2BGR_VNG’, ‘COLOR_BayerGB2GRAY’, ‘COLOR_BayerGB2RGB’, ‘COLOR_BayerGB2RGBA’, ‘COLOR_BayerGB2RGB_EA’, ‘COLOR_BayerGB2RGB_VNG’, ‘COLOR_BayerGR2BGR’, ‘COLOR_BayerGR2BGRA’, ‘COLOR_BayerGR2BGR_EA’, ‘COLOR_BayerGR2BGR_VNG’, ‘COLOR_BayerGR2GRAY’, ‘COLOR_BayerGR2RGB’, ‘COLOR_BayerGR2RGBA’, ‘COLOR_BayerGR2RGB_EA’, ‘COLOR_BayerGR2RGB_VNG’, ‘COLOR_BayerRG2BGR’, ‘COLOR_BayerRG2BGRA’, ‘COLOR_BayerRG2BGR_EA’, ‘COLOR_BayerRG2BGR_VNG’, ‘COLOR_BayerRG2GRAY’, ‘COLOR_BayerRG2RGB’, ‘COLOR_BayerRG2RGBA’, ‘COLOR_BayerRG2RGB_EA’, ‘COLOR_BayerRG2RGB_VNG’, ‘COLOR_COLORCVT_MAX’, ‘COLOR_GRAY2BGR’, ‘COLOR_GRAY2BGR555’, ‘COLOR_GRAY2BGR565’, ‘COLOR_GRAY2BGRA’, ‘COLOR_GRAY2RGB’, ‘COLOR_GRAY2RGBA’, ‘COLOR_HLS2BGR’, ‘COLOR_HLS2BGR_FULL’, ‘COLOR_HLS2RGB’, ‘COLOR_HLS2RGB_FULL’, ‘COLOR_HSV2BGR’, ‘COLOR_HSV2BGR_FULL’, ‘COLOR_HSV2RGB’, ‘COLOR_HSV2RGB_FULL’, ‘COLOR_LAB2BGR’, ‘COLOR_LAB2LBGR’, ‘COLOR_LAB2LRGB’, ‘COLOR_LAB2RGB’, ‘COLOR_LBGR2LAB’, ‘COLOR_LBGR2LUV’, ‘COLOR_LBGR2Lab’, ‘COLOR_LBGR2Luv’, ‘COLOR_LRGB2LAB’, ‘COLOR_LRGB2LUV’, ‘COLOR_LRGB2Lab’, ‘COLOR_LRGB2Luv’, ‘COLOR_LUV2BGR’, ‘COLOR_LUV2LBGR’, ‘COLOR_LUV2LRGB’, ‘COLOR_LUV2RGB’, ‘COLOR_Lab2BGR’, ‘COLOR_Lab2LBGR’, ‘COLOR_Lab2LRGB’, ‘COLOR_Lab2RGB’, ‘COLOR_Luv2BGR’, ‘COLOR_Luv2LBGR’, ‘COLOR_Luv2LRGB’, ‘COLOR_Luv2RGB’, ‘COLOR_M_RGBA2RGBA’, ‘COLOR_RGB2BGR’, ‘COLOR_RGB2BGR555’, ‘COLOR_RGB2BGR565’, ‘COLOR_RGB2BGRA’, ‘COLOR_RGB2GRAY’, ‘COLOR_RGB2HLS’, ‘COLOR_RGB2HLS_FULL’, ‘COLOR_RGB2HSV’, ‘COLOR_RGB2HSV_FULL’, ‘COLOR_RGB2LAB’, ‘COLOR_RGB2LUV’, ‘COLOR_RGB2Lab’, ‘COLOR_RGB2Luv’, ‘COLOR_RGB2RGBA’, ‘COLOR_RGB2XYZ’, ‘COLOR_RGB2YCR_CB’, ‘COLOR_RGB2YCrCb’, ‘COLOR_RGB2YUV’, ‘COLOR_RGB2YUV_I420’, ‘COLOR_RGB2YUV_IYUV’, ‘COLOR_RGB2YUV_YV12’, ‘COLOR_RGBA2BGR’, ‘COLOR_RGBA2BGR555’, ‘COLOR_RGBA2BGR565’, ‘COLOR_RGBA2BGRA’, ‘COLOR_RGBA2GRAY’, ‘COLOR_RGBA2M_RGBA’, ‘COLOR_RGBA2RGB’, ‘COLOR_RGBA2YUV_I420’, ‘COLOR_RGBA2YUV_IYUV’, ‘COLOR_RGBA2YUV_YV12’, ‘COLOR_RGBA2mRGBA’, ‘COLOR_XYZ2BGR’, ‘COLOR_XYZ2RGB’, ‘COLOR_YCR_CB2BGR’, ‘COLOR_YCR_CB2RGB’, ‘COLOR_YCrCb2BGR’, ‘COLOR_YCrCb2RGB’, ‘COLOR_YUV2BGR’, ‘COLOR_YUV2BGRA_I420’, ‘COLOR_YUV2BGRA_IYUV’, ‘COLOR_YUV2BGRA_NV12’, ‘COLOR_YUV2BGRA_NV21’, ‘COLOR_YUV2BGRA_UYNV’, ‘COLOR_YUV2BGRA_UYVY’, ‘COLOR_YUV2BGRA_Y422’, ‘COLOR_YUV2BGRA_YUNV’, ‘COLOR_YUV2BGRA_YUY2’, ‘COLOR_YUV2BGRA_YUYV’, ‘COLOR_YUV2BGRA_YV12’, ‘COLOR_YUV2BGRA_YVYU’, ‘COLOR_YUV2BGR_I420’, ‘COLOR_YUV2BGR_IYUV’, ‘COLOR_YUV2BGR_NV12’, ‘COLOR_YUV2BGR_NV21’, ‘COLOR_YUV2BGR_UYNV’, ‘COLOR_YUV2BGR_UYVY’, ‘COLOR_YUV2BGR_Y422’, ‘COLOR_YUV2BGR_YUNV’, ‘COLOR_YUV2BGR_YUY2’, ‘COLOR_YUV2BGR_YUYV’, ‘COLOR_YUV2BGR_YV12’, ‘COLOR_YUV2BGR_YVYU’, ‘COLOR_YUV2GRAY_420’, ‘COLOR_YUV2GRAY_I420’, ‘COLOR_YUV2GRAY_IYUV’, ‘COLOR_YUV2GRAY_NV12’, ‘COLOR_YUV2GRAY_NV21’, ‘COLOR_YUV2GRAY_UYNV’, ‘COLOR_YUV2GRAY_UYVY’, ‘COLOR_YUV2GRAY_Y422’, ‘COLOR_YUV2GRAY_YUNV’, ‘COLOR_YUV2GRAY_YUY2’, ‘COLOR_YUV2GRAY_YUYV’, ‘COLOR_YUV2GRAY_YV12’, ‘COLOR_YUV2GRAY_YVYU’, ‘COLOR_YUV2RGB’, ‘COLOR_YUV2RGBA_I420’, ‘COLOR_YUV2RGBA_IYUV’, ‘COLOR_YUV2RGBA_NV12’, ‘COLOR_YUV2RGBA_NV21’, ‘COLOR_YUV2RGBA_UYNV’, ‘COLOR_YUV2RGBA_UYVY’, ‘COLOR_YUV2RGBA_Y422’, ‘COLOR_YUV2RGBA_YUNV’, ‘COLOR_YUV2RGBA_YUY2’, ‘COLOR_YUV2RGBA_YUYV’, ‘COLOR_YUV2RGBA_YV12’, ‘COLOR_YUV2RGBA_YVYU’, ‘COLOR_YUV2RGB_I420’, ‘COLOR_YUV2RGB_IYUV’, ‘COLOR_YUV2RGB_NV12’, ‘COLOR_YUV2RGB_NV21’, ‘COLOR_YUV2RGB_UYNV’, ‘COLOR_YUV2RGB_UYVY’, ‘COLOR_YUV2RGB_Y422’, ‘COLOR_YUV2RGB_YUNV’, ‘COLOR_YUV2RGB_YUY2’, ‘COLOR_YUV2RGB_YUYV’, ‘COLOR_YUV2RGB_YV12’, ‘COLOR_YUV2RGB_YVYU’, ‘COLOR_YUV420P2BGR’, ‘COLOR_YUV420P2BGRA’, ‘COLOR_YUV420P2GRAY’, ‘COLOR_YUV420P2RGB’, ‘COLOR_YUV420P2RGBA’, ‘COLOR_YUV420SP2BGR’, ‘COLOR_YUV420SP2BGRA’, ‘COLOR_YUV420SP2GRAY’, ‘COLOR_YUV420SP2RGB’, ‘COLOR_YUV420SP2RGBA’, ‘COLOR_YUV420p2BGR’, ‘COLOR_YUV420p2BGRA’, ‘COLOR_YUV420p2GRAY’, ‘COLOR_YUV420p2RGB’, ‘COLOR_YUV420p2RGBA’, ‘COLOR_YUV420sp2BGR’, ‘COLOR_YUV420sp2BGRA’, ‘COLOR_YUV420sp2GRAY’, ‘COLOR_YUV420sp2RGB’, ‘COLOR_YUV420sp2RGBA’, ‘COLOR_mRGBA2RGBA’]

Process finished with exit code 0

在藍色物體附件畫圈:

import cv2 as cv import numpy as np if __name__ == '__main__':cap = cv.VideoCapture(0)while (1):# Take each frame_, frame = cap.read()# Convert BGR to HSVhsv = cv.cvtColor(frame, cv.COLOR_BGR2HSV)# define range of blue color in HSVlower_blue = np.array([110, 50, 50])upper_blue = np.array([130, 255, 255])# Threshold the HSV image to get only blue colorsmask = cv.inRange(hsv, lower_blue, upper_blue)# Bitwise-AND mask and original imageres = cv.bitwise_and(frame, frame, mask=mask)cv.imshow('frame', frame)cv.imshow('mask', mask)cv.imshow('res', res)k = cv.waitKey(5) & 0xFFif k == 27:breakcv.destroyAllWindows()

效果:


將參數(shù)修改

lower_blue = np.array([100, 50, 50])

之后效果:


一份用c++畫矩形的代碼:

#include "opencv2/opencv.hpp" using namespace cv;void main() {Mat src = imread("bird.jpg");Rect rect(230, 5, 280, 290);//左上坐標(x,y)和矩形的長(x)寬(y)cv::rectangle(src, rect, Scalar(255, 0, 0),1, LINE_8,0);//cv::rectangle(src, Point(230, 5), Point(510, 295), Scalar(255, 0, 0), 1, LINE_8, 0);//左上角點的(x,y),右下角點的(x,y)// cv::rectangle(src, rect, Scalar(255, 0, 0),-1, LINE_8,0);//繪制填充矩形imwrite("src.png", src);imshow("src", src);waitKey(0);}

習題

代碼調用電腦攝像頭,尋找視野中任意顏色(自定)并具有一定大小的物體,并用矩形框處,最后顯示在圖像上;

知道了怎么用圓形框住,還沒有框矩形:
代碼:

cap = cv.VideoCapture(0)while True:# 讀取每一幀_, frame = cap.read()# 重設圖片尺寸以提高計算速度frame = imutils.resize(frame, width=600)# 進行高斯模糊blurred = cv.GaussianBlur(frame, (11, 11), 0)# 轉換顏色空間到HSVhsv = cv.cvtColor(blurred, cv.COLOR_BGR2HSV)# 定義藍色閾值lower_red = np.array([100, 100, 100])upper_red = np.array([130, 255, 255])# 對圖片進行二值化處理mask = cv.inRange(hsv, lower_red, upper_red)# 腐蝕操作mask = cv.erode(mask, None, iterations=2)# 膨脹操作,先腐蝕后膨脹以濾除噪聲mask = cv.dilate(mask, None, iterations=2)cv.imshow('mask', mask)# 尋找圖中輪廓cnts = cv.findContours(mask.copy(), cv.RETR_EXTERNAL, cv.CHAIN_APPROX_SIMPLE)[-2]# 如果存在至少一個輪廓則進行如下操作if len(cnts) > 0:# 找到面積最大的輪廓c = max(cnts, key=cv.contourArea)# 使用最小外接圓圈出面積最大的輪廓((x, y), radius) = cv.minEnclosingCircle(c)# 計算輪廓的矩M = cv.moments(c)# 計算輪廓的重心center = (int(M["m10"] / M["m00"]), int(M["m01"] / M["m00"]))# 只處理尺寸足夠大的輪廓if radius > 5:# 畫出最小外接圓cv.circle(frame, (int(x), int(y)), int(radius), (0, 255, 255), 2)# 畫出重心cv.circle(frame, center, 5, (0, 0, 255), -1)cv.imshow('frame', frame)k = cv.waitKey(5) & 0xFFif k == 27:break cap.release() cv.destroyAllWindows()

效果:

框正矩形:

其余句子不變,if后面改成這個:

if len(cnts) > 0:# 找到面積最大的輪廓c = max(cnts, key=cv.contourArea)# 使用最小外接圓圈出面積最大的輪廓x,y,w,h = cv.boundingRect(c)cv.rectangle(frame,(x,y), (x+w,y+h), (0, 255, 255), 2)

cv2.boundingRect(img)這個函數(shù)很簡單,img是一個二值圖,也就是它的參數(shù);返回四個值,分別是x,y,w,h;

x,y是矩陣左上點的坐標,w,h是矩陣的寬和高
換一個顏色試試:

閾值設置要準確,才能正確框住。

還有一個框斜矩形的:
minAreaRect函數(shù)返回矩形的中心點坐標,長寬,旋轉角度[-90,0),當矩形水平或豎直時均返回-90
以rect作為它的返回值則有:
centar = rect[0] width,height = rect[1] (注意第二個返回值是一個數(shù)組)

if __name__ == '__main__':img = cv2.imread("me1.jpg")cv2.rectangle(img, (130, 250), (200,400), (0, 255, 0), 2)cv2.imshow("nn",img)cv2.waitKey()

提取輪廓:

import cv2if __name__ == '__main__':img = cv2.imread("me1.jpg")gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)ret, binary = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY)contours, hierarchy = cv2.findContours(binary, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)cv2.drawContours(img, contours, -1, (0, 0, 255), 3)cv2.imshow("img", img)cv2.waitKey(0)

效果:

框一定顏色的物塊:(中間的綠線還不知道咋出來的。。。

img = cv2.imread('66.png')# 顏色轉換函數(shù) 轉換為hsv cv2.COLOR_BGR2HSVhsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)low_hsv = np.array([11, 43, 46])high_hsv = np.array([100, 255, 255])mask = cv2.inRange(hsv, lowerb=low_hsv, upperb=high_hsv)# 中值濾波降噪median = cv2.medianBlur(mask, 5)# 進行邊緣檢測np.array([30, 43, 46])# mask是只突出指定顏色的圖片cannyPic = cv2.Canny(median, 10, 200)line = 50minLineLength = 10maxLineGap = 150# 檢測直線函數(shù),能輸出檢測到的直線端點lines = cv2.HoughLinesP(cannyPic, 1, np.pi / 180, 120, lines=line, minLineLength=minLineLength,maxLineGap=maxLineGap)lines1 = lines[:, 0, :]# line()劃線函數(shù)for x1, y1, x2, y2 in lines1:cv2.line(img, (x1, y1), (x2, y2), (0, 255, 0), 2)contours, hierarchy = cv2.findContours(cannyPic, cv2.RETR_CCOMP, cv2.CHAIN_APPROX_SIMPLE)for c in contours:rect = cv2.minAreaRect(c)box_ = cv2.boxPoints(rect)h = abs(box_[3, 1] - box_[1, 1])w = abs(box_[3, 0] - box_[1, 0])box = cv2.boxPoints(rect) # 計算最小面積矩形的坐標box = np.int0(box) # 將坐標規(guī)范化為整數(shù)angle = rect[2]if angle > 20:continue# 繪制矩形cv2.drawContours(img, [box], 0, (255, 0, 0), 3)cv2.namedWindow("img_3", 0)cv2.imshow("img_3", img)cv2.waitKey(0)cv2.destroyAllWindows()


然后發(fā)現(xiàn)有的顏色還沒有框住。。

一個框住一定物體的代碼:

img = cv2.pyrDown(cv2.imread("hammer.png" ,cv2.IMREAD_UNCHANGED))ret, thresh = cv2.threshold(cv2.cvtColor(img.copy(),cv2.COLOR_BGR2GRAY), 127, 255, cv2.THRESH_BINARY)image,contours= cv2.findContours(thresh,cv2.RETR_EXTERNAL,cv2.CHAIN_APPROX_SIMPLE)for c in contours:# find bounding box coordinatesx, y, w, h = cv2.boundingRect(c)cv2.rectangle(img, (x, y), (x+w, y + h), (0, 255, 0), 2)# find minimum arearect = cv2.minAreaRect(c)# calculate coordinates of the minimum area rectanglebox = cv2.boxPoints(rect)# normalize coordinates to integersbox = np.into(box)# draw contourscv2.drawContours(img, [box], 0, (0, 0, 255), 3)# calculate center and radius of minimum enclosing circle(x, y),radius = cv2.minEnclosingCircle(c)# cast to integerscenter = (int(x), int(y))radius = int(radius)# draw the circleimg = cv2.circle(img, center, radius, (0, 255, 0),2)cv2.drawContours(img, contours, -1, (255, 0, 0),1)cv2.imshow("contoursn", img)

原圖:

不知道代碼是哪里出了bug 還沒跑成功:

關鍵是好多函數(shù)還不知道是怎么用的。。。

追蹤特定顏色:

import imutilsif __name__ == '__main__':cap = cv.VideoCapture(0)while True:# 讀取每一幀_, frame = cap.read()# 重設圖片尺寸以提高計算速度frame = imutils.resize(frame, width=600)# 進行高斯模糊blurred = cv.GaussianBlur(frame, (11, 11), 0)# 轉換顏色空間到HSVhsv = cv.cvtColor(blurred, cv.COLOR_BGR2HSV)# 定義紅色無圖的HSV閾值lower_red = np.array([20, 100, 100])upper_red = np.array([220, 255, 255])# 對圖片進行二值化處理mask = cv.inRange(hsv, lower_red, upper_red)# 腐蝕操作mask = cv.erode(mask, None, iterations=2)# 膨脹操作,先腐蝕后膨脹以濾除噪聲mask = cv.dilate(mask, None, iterations=2)cv.imshow('mask', mask)# 尋找圖中輪廓cnts = cv.findContours(mask.copy(), cv.RETR_EXTERNAL, cv.CHAIN_APPROX_SIMPLE)[-2]# 如果存在至少一個輪廓則進行如下操作if len(cnts) > 0:# 找到面積最大的輪廓c = max(cnts, key=cv.contourArea)# 使用最小外接圓圈出面積最大的輪廓((x, y), radius) = cv.minEnclosingCircle(c)# 計算輪廓的矩M = cv.moments(c)# 計算輪廓的重心center = (int(M["m10"] / M["m00"]), int(M["m01"] / M["m00"]))# 只處理尺寸足夠大的輪廓if radius > 5:# 畫出最小外接圓cv.rectangle(frame, (int(x), int(y)), (int(x), int(y)), (0, 255, 255), 2)# 畫出重心cv.imshow('frame', frame)k = cv.waitKey(5) & 0xFFif k == 27:breakcap.release()cv.destroyAllWindows()


不知道為什么只有試藍色物體的時候才有陰影。。。然后圓形框也沒出來。。。。。

追蹤:

if __name__ == '__main__':cap = cv2.VideoCapture(0) # 獲取攝像頭視頻while True:ret, frame = cap.read() # 讀取每一幀圖片hsv_frame = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV) # 將每一幀圖片轉化HSV空間顏色lower = np.array([0, 104, 205])upper = np.array([15, 208, 255])mask = cv2.inRange(hsv_frame, lower, upper)img, conts = cv2.findContours(mask, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE) # 找出邊界cv2.drawContours(frame, conts, -1, (0, 255, 0), 3) # 畫出邊框dst = cv2.bitwise_and(frame, frame, mask=mask) # 對每一幀進行位與操作,獲取追蹤圖像的顏色# cv2.imshow("mask",mask)# cv2.imshow("dst",dst)cv2.imshow("frame", frame)if cv2.waitKey(1) & 0xff == 27:breakcv2.destroyAllWindows()

動態(tài)識別物體:

import cv2 import numpy as npcamera = cv2.VideoCapture(0) # 參數(shù)0表示第一個攝像頭 # 判斷視頻是否打開 if (camera.isOpened()):print('Open') else:print('攝像頭未打開')# 測試用,查看視頻size size = (int(camera.get(cv2.CAP_PROP_FRAME_WIDTH)),int(camera.get(cv2.CAP_PROP_FRAME_HEIGHT))) print('size:' + repr(size))es = cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (9, 4)) kernel = np.ones((5, 5), np.uint8) background = Nonewhile True:# 讀取視頻流grabbed, frame_lwpCV = camera.read()# 對幀進行預處理,先轉灰度圖,再進行高斯濾波。# 用高斯濾波進行模糊處理,進行處理的原因:每個輸入的視頻都會因自然震動、光照變化或者攝像頭本身等原因而產生噪聲。對噪聲進行平滑是為了避免在運動和跟蹤時將其檢測出來。gray_lwpCV = cv2.cvtColor(frame_lwpCV, cv2.COLOR_BGR2GRAY)gray_lwpCV = cv2.GaussianBlur(gray_lwpCV, (21, 21), 0)# 將第一幀設置為整個輸入的背景if background is None:background = gray_lwpCVcontinue# 對于每個從背景之后讀取的幀都會計算其與北京之間的差異,并得到一個差分圖(different map)。# 還需要應用閾值來得到一幅黑白圖像,并通過下面代碼來膨脹(dilate)圖像,從而對孔(hole)和缺陷(imperfection)進行歸一化處理diff = cv2.absdiff(background, gray_lwpCV)diff = cv2.threshold(diff, 148, 255, cv2.THRESH_BINARY)[1] # 二值化閾值處理diff = cv2.dilate(diff, es, iterations=2) # 形態(tài)學膨脹# 顯示矩形框image, contours, hierarchy = cv2.findContours(diff.copy(), cv2.RETR_EXTERNAL,cv2.CHAIN_APPROX_SIMPLE) # 該函數(shù)計算一幅圖像中目標的輪廓for c in contours:if cv2.contourArea(c) < 1500: # 對于矩形區(qū)域,只顯示大于給定閾值的輪廓,所以一些微小的變化不會顯示。對于光照不變和噪聲低的攝像頭可不設定輪廓最小尺寸的閾值continue(x, y, w, h) = cv2.boundingRect(c) # 該函數(shù)計算矩形的邊界框cv2.rectangle(frame_lwpCV, (x, y), (x + w, y + h), (0, 255, 0), 2)cv2.imshow('contours', frame_lwpCV)cv2.imshow('dis', diff)key = cv2.waitKey(1) & 0xFF# 按'q'健退出循環(huán)if key == ord('q'):break# When everything done, release the capture camera.release() cv2.destroyAllWindows()

感覺可能是opencv4發(fā)生了改動,這個代碼在我的電腦上一直報錯:

還沒時間看官方文檔,以后再看吧

總結

以上是生活随笔為你收集整理的task2:opencv的python接口图像储存、色彩空间、的全部內容,希望文章能夠幫你解決所遇到的問題。

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

午夜影院三级 | 在线观看欧美成人 | 中文字幕乱在线伦视频中文字幕乱码在线 | 精品视频久久久久久 | 亚洲国产中文字幕 | 四虎成人精品在永久免费 | 亚洲在线观看av | 黄色av高清 | 最新av网址在线 | 狠狠的操狠狠的干 | 久久一区二区免费视频 | 在线视频app | 色天天综合久久久久综合片 | 国产男女爽爽爽免费视频 | 欧美粗又大 | 亚洲桃花综合 | а天堂中文最新一区二区三区 | 国产午夜精品一区二区三区嫩草 | 青草视频网| 九色自拍视频 | 国产一卡二卡四卡国 | 国产特级毛片aaaaaa毛片 | 激情五月婷婷激情 | 国产精品一区二区中文字幕 | 国产专区精品视频 | 成人a免费看| 九九免费在线看完整版 | 在线免费中文字幕 | 在线电影日韩 | 午夜狠狠操| 在线亚洲高清视频 | 亚洲精品毛片一级91精品 | 国内精品久久久久久久久久久 | 天天干,夜夜爽 | 在线观看视频亚洲 | 欧美a级片网站 | 日b视频在线观看网址 | 亚洲一区二区三区91 | 狠狠色狠狠色合久久伊人 | 午夜国产成人 | 五月婷香 | av电影在线免费观看 | 99精品国产福利在线观看免费 | 国产精品综合久久久久 | 欧美成人h版在线观看 | 欧美韩国在线 | 久久久久网址 | 国产日产在线观看 | 欧美日本不卡高清 | 亚洲欧洲精品一区二区 | 人人玩人人弄 | 免费97视频 | 国产专区一 | 精品人人人 | 成人精品久久久 | 蜜桃视频在线视频 | 天天操天天干天天操天天干 | 91色视频 | 国产在线高清视频 | 在线观看日韩国产 | a黄色片在线观看 | 成人网在线免费视频 | 超碰97免费观看 | 狠狠的日日 | 久久久久亚洲精品 | 国产精品视频区 | 在线成人观看 | 国产精品久久在线 | 91传媒激情理伦片 | 久久精品亚洲综合专区 | 中文字幕成人在线观看 | 婷婷香蕉 | 国产精品成人久久久久 | 欧美日韩在线精品一区二区 | 狠狠操狠狠插 | 国产一在线精品一区在线观看 | 三级av中文字幕 | 国产视频中文字幕在线观看 | 亚洲精品xxxx| 久久人人爽人人片 | 久久精品综合网 | 国产成人精品在线 | 日日干美女 | 黄色成人影视 | 日本丶国产丶欧美色综合 | 在线看v片成人 | 日韩久久精品 | 九九九国产 | 日韩高清片 | 69亚洲视频 | 手机av在线免费观看 | 欧美激情视频一二三区 | 黄色小说视频在线 | 久久久国产一区二区三区四区小说 | 综合五月| 国产精品日韩久久久久 | 午夜国产在线观看 | 久久乐九色婷婷综合色狠狠182 | 狠狠的操你 | 午夜精品影院 | 亚洲国产精品电影 | 国产午夜三级 | 中文字幕高清视频 | 午夜精品久久久久久久99 | 六月色丁香 | 一区二区高清在线 | 精品国产99国产精品 | av成人资源 | 韩国一区二区在线观看 | 9在线观看免费高清完整版在线观看明 | 国产精品久久久久免费 | 亚洲精品乱码久久久久久写真 | 超碰日韩在线 | 日韩电影一区二区三区 | 综合色播 | 欧美三级高清 | 日韩大片在线播放 | 日韩三级视频 | 久久久久成人精品免费播放动漫 | 9在线观看免费高清完整版在线观看明 | 激情视频久久 | 97成人精品视频在线播放 | 日本最大色倩网站www | 欧美日韩不卡一区二区三区 | 国产一区二区高清 | 久久免费的精品国产v∧ | 日本三级吹潮在线 | www.夜夜干.com | 91九色视频在线播放 | 亚洲精品国产精品国 | 亚洲欧美日韩精品久久奇米一区 | 国产视频午夜 | 日韩高清www| 亚洲黄色av | a午夜在线| 一区二区 久久 | 欧美日韩国产高清视频 | 国内精品久久久久久久久久久 | 91av短视频| 毛片网在线播放 | 成人h在线 | 国产精品久久久久久久久久白浆 | 一区二区观看 | 中文字幕av在线不卡 | 中文字幕免费看 | 天天操福利视频 | 97国产精品一区二区 | 亚洲资源在线观看 | 国产精品视频不卡 | 高潮久久久久久 | 香蕉免费在线 | 精品国精品自拍自在线 | 亚洲精品视频在线免费播放 | www.av中文字幕.com | 久久久午夜影院 | 精品国产一区二区三区久久久蜜臀 | 久久免费观看少妇a级毛片 久久久久成人免费 | 亚洲欧洲一区二区在线观看 | 色全色在线资源网 | 国产精品网站 | 日韩精品久久久免费观看夜色 | 韩国av免费在线 | 亚洲成熟女人毛片在线 | 91av99| 久久久久久久看片 | 久久香蕉电影网 | 国产xxxxx在线观看 | 中文字幕一区在线观看视频 | 伊人狠狠 | 五月天狠狠操 | 国产精品久久久久久一二三四五 | 99久久这里只有精品 | 狠狠操夜夜 | 青青草在久久免费久久免费 | 91在线免费公开视频 | 中文字幕在线观 | 天天色天天操天天爽 | 国产成人av一区二区三区在线观看 | 国产在线观看99 | 久久视频在线观看中文字幕 | 国产99爱| 亚洲涩涩涩| 欧美aa在线观看 | 日韩视频一区二区三区 | 亚洲国产小视频在线观看 | 中文字幕高清av | 久久久国产精品电影 | 深爱开心激情网 | 人人舔人人射 | 三级黄色免费 | 综合网成人| 国内揄拍国内精品 | 国产精品久久久久久久久久妇女 | 亚洲最大av网站 | 国产精品黄色在线观看 | 一区二区三区电影大全 | 亚洲特级片 | 日韩在线三级 | 亚洲综合色站 | 2018精品视频 | 亚洲一区二区精品在线 | 99久久超碰中文字幕伊人 | 日韩91在线 | 国产麻豆视频 | 天天射天天射天天 | 伊人影院得得 | 手机在线欧美 | 在线观看片 | 亚洲国产精品电影 | 中文字幕免费久久 | 激情久久久久久久久久久久久久久久 | 天堂网av 在线 | 992tv人人网tv亚洲精品 | 久久午夜精品视频 | 91精品国产自产在线观看永久 | 欧美久久久久久久久久久久久 | 中文字幕在线免费看 | 97精品伊人 | 精品黄色在线观看 | 96av麻豆蜜桃一区二区 | 久久久www成人免费精品张筱雨 | 国产二级视频 | 在线观看亚洲成人 | 欧美精品在线观看免费 | 婷婷丁香狠狠爱 | 亚洲精品中文字幕在线 | 天天操天天舔天天干 | 日韩激情在线视频 | 午夜黄网| 天天射天天干 | 日韩精品一区二区在线观看 | 99国产在线视频 | 91精品国产99久久久久久久 | 日日操操 | 亚洲免费婷婷 | 久九视频| 精品一区二三区 | 成人毛片网 | 日本在线视频网址 | 久草热视频| 人人插人人搞 | 免费一级日韩欧美性大片 | 国产va在线观看免费 | 91探花在线| 久久久国产精品网站 | 国产资源在线观看 | 国产欧美日韩精品一区二区免费 | 欧美日韩伦理在线 | 欧美一级片在线 | 色综合色综合久久综合频道88 | av网站免费看 | 在线 欧美 日韩 | 99久久er热在这里只有精品66 | 2022久久国产露脸精品国产 | 精品国产乱码 | 国产精品资源在线观看 | 国产网站av | 天天干夜夜擦 | 成人在线免费看视频 | 国产高清视频免费在线观看 | 国产成人99av超碰超爽 | 久久婷婷网 | 免费看搞黄视频网站 | 麻豆系列在线观看 | 久久综合九色综合欧美狠狠 | 国产精品美女免费看 | 四虎影视成人永久免费观看视频 | 国产91九色蝌蚪 | 91精品国产麻豆 | 日韩视频一区二区三区在线播放免费观看 | 六月丁香色婷婷 | 精品九九九九 | 久久黄色免费 | 欧美福利片在线观看 | 免费在线精品视频 | 亚洲精品在线观 | 精品国产自在精品国产精野外直播 | 久久精品亚洲一区二区三区观看模式 | 午夜天使| 日韩久久久 | 激情五月播播久久久精品 | 国产网红在线观看 | 久久天堂精品视频 | 日韩av播放在线 | 久久国产麻豆 | 有码中文在线 | 黄色大片视频网站 | 成人av片在线观看 | 亚洲国产视频在线 | 久久69精品| 全黄网站 | 五月天久久综合 | 欧洲精品视频一区二区 | 亚洲区视频在线观看 | 天堂久久电影网 | 97在线观看视频免费 | 伊人婷婷网 | 五月天丁香综合 | 98久久| 欧美高清成人 | 久久久精品网站 | 亚洲伦理一区二区 | 国产999精品久久久 免费a网站 | 狠狠操狠狠插 | 高清不卡一区二区三区 | 综合网伊人 | 欧美一级小视频 | av黄免费看 | 在线不卡视频 | 中文字幕免费观看 | 欧美一级片在线 | 亚洲国产精品一区二区尤物区 | 色综合久久五月天 | 久久亚洲福利 | 91福利在线导航 | 免费h视频 | 最近中文字幕高清字幕在线视频 | 99一区二区三区 | 麻豆激情电影 | 亚洲高清在线 | 91麻豆免费视频 | 一区二区三区免费在线 | 亚洲最新在线 | 亚洲一级二级三级 | 欧美日韩不卡一区 | 欧美精品一区二区性色 | 国产123区在线观看 国产精品麻豆91 | 天天操夜夜操夜夜操 | 免费观看9x视频网站在线观看 | 人人插人人澡 | 亚洲精品字幕在线 | 4438全国亚洲精品在线观看视频 | 久久精品国产美女 | 久草综合在线观看 | 最近免费中文字幕mv在线视频3 | 国产精品va视频 | 免费在线观看黄网站 | 日韩av黄| 欧美 亚洲 另类 激情 另类 | 97国产在线观看 | 久久免费视频在线观看30 | 91麻豆免费视频 | 久要激情网 | 亚洲va欧美| 欧美另类xxxxx | 日日麻批40分钟视频免费观看 | 黄色一及电影 | 91免费日韩 | 天天激情在线 | 日韩久久久久久久久久 | 在线精品在线 | .国产精品成人自产拍在线观看6 | 亚洲国产精品va在线看 | 97精品一区二区三区 | 蜜臀av性久久久久蜜臀aⅴ流畅 | 99色婷婷| 91精品久久久久久综合乱菊 | 日韩欧美中文 | 亚洲人人爱| www.在线看片.com | 亚洲涩综合 | 国产精品久久久久久久久婷婷 | 丁香一区二区 | av片一区| 日韩免费高清在线 | 在线观看爱爱视频 | 91在线操 | 国产精品不卡在线 | www在线观看视频 | 9999激情| 97成人免费| 91av福利视频 | 99热这里有精品 | 在线观看中文字幕视频 | 91天堂在线观看 | 99热这里只有精品在线观看 | 少妇资源站 | 国产3p视频 | 欧美精品中文字幕亚洲专区 | 九九九视频在线 | 999久久国精品免费观看网站 | 伊人中文字幕在线 | 一区二区三区手机在线观看 | 99精品久久99久久久久 | 欧美aaa级片 | 国产99久久九九精品免费 | 久久精品国产美女 | 国产69精品久久久久久久久久 | 探花视频免费在线观看 | 一级精品视频在线观看宜春院 | 国产视频一区在线播放 | 国产亚洲成av人片在线观看桃 | 一级黄色大片 | 99亚洲精品| 亚洲成av人影院 | 久久精品一区二区三区国产主播 | 久久久不卡影院 | 成年人三级网站 | 99精品视频免费在线观看 | 中文字幕在线观看资源 | 日韩欧美在线观看一区二区三区 | 久久黄色a级片 | 免费看黄在线网站 | 国产免费区 | 欧美肥妇free| 国产福利免费看 | 中文字幕久久久精品 | 亚洲国产精品成人va在线观看 | 天天骚夜夜操 | 国产三级久久久 | 亚洲美女视频在线观看 | 超碰av在线播放 | 亚洲精品久久久蜜桃直播 | 亚洲欧美怡红院 | 日韩久久激情 | 国产成人综合精品 | 国产精品a成v人在线播放 | 国产二区视频在线 | 国产精品久久久久国产a级 激情综合中文娱乐网 | 2021av在线| 精品产品国产在线不卡 | 99视频在线免费看 | 亚洲专区中文字幕 | 国产精品高潮久久av | 99久久99久国产黄毛片 | 日本久久免费视频 | 久久视频这里只有精品 | 日韩大片免费在线观看 | 日韩69av | 亚洲国产精品久久久久久 | 在线观看日本高清mv视频 | 久久精品系列 | 亚洲精品字幕 | 国产精品刺激对白麻豆99 | 欧美一进一出抽搐大尺度视频 | 国产成人精品一区二区三区福利 | 91丨九色丨91啦蝌蚪老版 | 亚洲国产成人久久 | 激情久久影院 | 久久久久国产一区二区三区四区 | 色综合久久久久综合体桃花网 | 日韩精品久久久久 | 中文字幕观看在线 | 亚洲精品视频免费看 | 成人一区影院 | 久久精彩视频 | av福利在线导航 | 99视频网址| 91麻豆免费看 | 亚洲成人家庭影院 | 98超碰在线 | 深夜免费福利网站 | 欧美日本三级 | 中午字幕在线 | 99久久精品国 | 亚洲a色| 久久久私人影院 | 日韩电影中文字幕在线 | 99精品国产兔费观看久久99 | 99视频导航 | 久久久精品欧美 | 国产999精品久久久影片官网 | 免费在线激情电影 | 欧美日韩视频观看 | 国产探花 | 91成人网页版 | 日本精品一区二区三区在线播放视频 | 久久99在线 | www.黄色片.com| 色婷婷九月 | 色窝资源 | 97超级碰碰碰视频在线观看 | 色综合久久久久综合体桃花网 | 日韩高清在线一区二区三区 | 成人av电影网址 | 亚洲精品视频中文字幕 | 亚洲激情 欧美激情 | av一级在线 | 蜜臀av夜夜澡人人爽人人桃色 | 天天干天天干天天色 | 久久99免费 | 成人国产网址 | 国产精品嫩草影院99网站 | 午夜精品久久一牛影视 | 免费在线观看成人av | 欧美福利视频 | 人人草在线视频 | 色www免费视频 | 久久午夜色播影院免费高清 | 超碰公开在线 | 亚洲理论在线观看电影 | 超碰精品在线 | 91手机视频在线 | 久久精品免费观看 | 国产成人亚洲精品自产在线 | 九九精品视频在线看 | 91精品国产亚洲 | 日韩欧美视频免费观看 | 国产在线日韩 | 亚洲 欧美 变态 国产 另类 | 成人黄色电影在线观看 | 亚洲成av人片 | 又黄又刺激视频 | 五月婷婷六月丁香 | 国产一级二级在线 | 免费瑟瑟网站 | www.亚洲黄色 | 国产短视频在线播放 | 中文字幕在线人 | 免费a视频 | 久久久久久久久电影 | av中文字幕亚洲 | 国产成人精品午夜在线播放 | 欧美一级免费 | 国产黄色精品在线 | 99久久夜色精品国产亚洲 | 夜夜躁狠狠躁日日躁视频黑人 | 国产一区二区电影在线观看 | av 在线观看 | 亚洲欧美日韩一区二区三区在线观看 | 99在线精品视频在线观看 | 色综合久久天天 | 欧美日韩91| 日韩字幕在线观看 | 国产精品久久久久久久久免费 | 欧美成人中文字幕 | 人人澡人人舔 | 国产美腿白丝袜足在线av | 国产男女免费完整视频 | 97超碰在线久草超碰在线观看 | 久久亚洲私人国产精品 | 日韩视频在线观看免费 | 久久99热这里只有精品 | 欧美精品第一 | 日韩在线视频观看 | 日韩成人免费电影 | 中文字幕 欧美性 | 色综合久久中文综合久久牛 | 成人久久18免费网站图片 | 免费黄在线观看 | 五月婷婷香蕉 | 一区二区三区高清在线 | 天天干,天天操,天天射 | 特级西西444www大精品视频免费看 | 久久免费在线观看 | 精品在线视频一区 | 久久人人做 | 毛片一级免费一级 | 国模视频一区二区三区 | 午夜国产一区二区 | 在线观看av中文字幕 | 毛片一级免费一级 | 成人av影视| 精品国产视频在线观看 | 成人免费视频a | 精品一区二区精品 | 国产91欧美| 日韩精品视频一二三 | 欧美一区二区三区特黄 | 免费看黄的 | 免费看黄视频 | 国产午夜三级 | 免费一级特黄录像 | 欧美日韩三级 | 亚洲欧美日韩国产一区二区三区 | 99国内精品久久久久久久 | 婷婷久久综合网 | 九九在线高清精品视频 | 国产日韩欧美在线一区 | 久久99国产精品二区护士 | 亚洲激情网站免费观看 | 91精品啪在线观看国产线免费 | 天天看天天干 | 66av99精品福利视频在线 | 日本一区二区免费在线观看 | 五月导航| 黄色免费在线视频 | 日韩视频一区二区在线 | 麻豆视频免费在线 | 久久久久亚洲精品成人网小说 | 欧美性色xo影院 | 婷婷在线视频观看 | 免费亚洲视频 | 五月婷婷色播 | 天天干.com | 美女啪啪图片 | 在线观看免费91 | 国产精品永久免费在线 | 国产黄在线免费观看 | 2018亚洲男人天堂 | 亚洲欧美成人网 | 国产第一二区 | 国产品久精国精产拍 | a级片在线播放 | 久久成人一区二区 | 黄色在线观看污 | 操操操天天操 | 日韩精品电影在线播放 | 日韩视频一区二区在线 | 999在线精品 | 欧美精品久久99 | 国内精品中文字幕 | 国产高清专区 | 丁香婷婷深情五月亚洲 | 久久久久激情视频 | 国产91影视 | 97福利 | 久久99国产综合精品免费 | 国产精品美女视频 | 超碰人人舔 | 午夜视频免费在线观看 | 国产精品免费一区二区三区 | 最近中文字幕 | 免费精品| 精品视频成人 | 久久久色 | 亚洲黄色一级视频 | 国产精品久久久电影 | 国产高清久久久久 | 亚洲女同ⅹxx女同tv | 超碰在线亚洲 | 久久国语露脸国产精品电影 | 亚洲视频久久久久 | 欧美一级性生活 | 天天艹天天操 | 久久久久久久影院 | av在线播放不卡 | 国产a国产a国产a | 99 久久久久 | 在线视频1卡二卡三卡 | 曰韩在线 | www婷婷| 日韩精品一区二区三区电影 | 最近免费中文字幕 | 国产99久久久国产精品 | 国产高清区 | 九九九热精品免费视频观看网站 | 欧美成人性战久久 | 91av在线免费 | 日韩精品久久一区二区 | 日韩av不卡在线播放 | 亚洲精品乱码久久 | 久久免费中文视频 | 亚洲黄色成人网 | 久久经典视频 | 91大神精品视频在线观看 | 视频一区在线免费观看 | 亚洲五月婷 | 狠狠躁日日躁 | 欧美日韩中文在线观看 | 国产日韩精品一区二区三区在线 | 亚洲精品午夜国产va久久成人 | 天天插天天狠 | 在线看岛国av| 天天综合亚洲 | 91成人在线看 | 亚洲免费a | 国产成人精品一区二区三区免费 | 在线小视频你懂得 | 狠狠夜夜 | 亚洲专区在线播放 | 国产一在线精品一区在线观看 | 亚洲精品91天天久久人人 | 日韩欧美精选 | 91成人免费视频 | a级黄色片视频 | 精品久久一区二区 | 91精品视频一区 | 亚洲综合成人婷婷小说 | 97精品国产手机 | 不卡视频国产 | 日本中文字幕网 | 97在线看片| 天天爽天天射 | 亚洲区精品| 日韩一区二区免费视频 | www久久精品 | 国产二区视频在线 | 日韩精品久久久久久久电影99爱 | 在线黄色毛片 | 亚洲综合射 | 日韩免费视频观看 | 99这里只有精品视频 | 国产无遮挡猛进猛出免费软件 | 极品中文字幕 | 亚洲国产精品成人综合 | 日韩网站免费观看 | 国产一级久久 | 五月花丁香婷婷 | 97精品国产91久久久久久 | 狠狠色丁香婷婷综合久小说久 | 色悠悠久久综合 | 午夜在线看 | 午夜三级理论 | 97在线免费视频 | 国产亚洲精品美女久久 | 国产精品中文久久久久久久 | 久草在线免费在线观看 | 最新国产在线视频 | 视频二区在线 | 91看片在线播放 | 国产一卡在线 | www.一区二区三区 | 黄色小网站在线观看 | 毛片.com| 久久黄色网址 | av电影中文字幕在线观看 | 99视频免费 | 91av免费观看 | 国产在线日本 | 国产精品成人一区 | 蜜桃视频色 | 亚洲精品国偷拍自产在线观看蜜桃 | 久久久午夜精品理论片中文字幕 | 在线观看免费av片 | 91豆花在线 | 人人搞人人干 | 亚洲日日射 | 日韩精品电影在线播放 | 久久99久久99精品免观看软件 | 99国内精品久久久久久久 | 三级黄色在线 | 免费在线观看日韩欧美 | 午夜手机电影 | 91精品国产乱码久久桃 | 中文字幕一区二区三区在线播放 | 亚洲国产小视频在线观看 | 日本aaa在线观看 | 国产尤物一区二区三区 | 欧美黑吊大战白妞欧美 | 色五丁香 | 97电影在线观看 | 观看免费av | 久草视频在线看 | 美女禁18| 天天躁日日躁狠狠躁av中文 | 综合av在线 | wwwwww色 | 在线观影网站 | 五月综合 | 狠狠狠狠干 | a在线观看免费视频 | 久青草电影| 欧美日韩免费视频 | 成人精品一区二区三区中文字幕 | 日韩av高清在线观看 | 伊人久久在线观看 | 亚洲精欧美一区二区精品 | 狠狠狠色 | 狠狠色丁香婷综合久久 | 亚洲涩涩网站 | 综合网中文字幕 | 在线观看免费黄色 | 免费av电影网站 | 国产一区二区在线观看视频 | 国产小视频免费在线观看 | 亚洲精品国偷自产在线91正片 | 色之综合网 | 国产精品电影在线 | 麻豆精品传媒视频 | 国产精品久久久久9999 | 日韩欧美一区二区在线 | 玖操| 中文字幕在线观看视频一区 | 久久久久久久网 | 免费视频91蜜桃 | 最近中文字幕免费观看 | 中日韩在线视频 | 国产精品成人自拍 | 色香网| 视频在线观看入口黄最新永久免费国产 | 欧美日韩色婷婷 | 五月天天在线 | av黄色影院 | 日韩亚洲在线观看 | 久久久久亚洲精品成人网小说 | 日韩字幕 | 久久精品香蕉视频 | 国产夫妻av在线 | 99久久久国产免费 | 9999国产精品 | 四虎影视成人精品 | 波多野结衣视频在线 | 97视频免费观看 | 在线观看国产91 | 午夜婷婷在线观看 | 国产91成人在在线播放 | 在线观看的黄色 | 免费在线观看av网站 | 在线精品视频免费播放 | 久久综合综合久久综合 | 久久婷婷色综合 | 91自拍视频在线 | 免费看色网站 | 日韩在线精品 | 一本一道久久a久久综合蜜桃 | av电影在线观看完整版一区二区 | 人人看看人人 | 亚洲综合网站在线观看 | 日韩欧美高清不卡 | 一本到在线 | 伊人六月 | 国产精品久久久久久av | 在线 视频 一区二区 | 日韩成人不卡 | 麻豆视频在线看 | 一区二区三区在线影院 | 婷婷六月久久 | 96精品高清视频在线观看软件特色 | 一区二区三区在线观看免费视频 | av免费线看| 狠狠干夜夜爱 | 一区二区三区免费在线 | wwwwwww黄 | 日韩免费在线视频观看 | 五月丁香| 在线免费观看的av | 在线看片成人 | av在线看网站 | 中文字幕有码在线播放 | 日韩在线视频网 | 在线免费观看国产精品 | 99视频在线精品国自产拍免费观看 | 午夜精品一区二区三区在线视频 | 久久久精品一区二区三区 | 91成人亚洲| 国产精品一区免费在线观看 | 日韩在线观看高清 | 美国av片在线观看 | 亚洲美女精品区人人人人 | 在线免费观看一区二区三区 | av软件在线观看 | 在线观看中文字幕亚洲 | 亚洲精品国产自产拍在线观看 | 日韩免费视频一区二区 | 中文字幕丝袜 | 国产成人在线看 | 97超碰精品| 91视频这里只有精品 | 亚洲jizzjizz日本少妇 | av电影一区二区 | 国产精品99久久久久久小说 | 蜜臀久久99精品久久久无需会员 | 91成人在线免费观看 | 日韩在线视频一区二区三区 | 欧美伦理电影一区二区 | avav片| 中文字幕亚洲字幕 | av一级一片 | 激情欧美一区二区免费视频 | a天堂中文在线 | 久久久午夜精品理论片中文字幕 | 国产精品久久 | 国产成人精品一区二区三区 | 日本三级全黄少妇三2023 | 99r在线 | 婷久久 | 美女网站黄在线观看 | 中文字幕精品在线 | 欧美va在线观看 | 国产精品久久久久婷婷二区次 | 天天干,天天射,天天操,天天摸 | 日批视频在线观看免费 | 久久精品精品 | 99热.com| 天天摸天天干天天操天天射 | 永久免费毛片在线观看 | 中文亚洲欧美日韩 | 国产亚洲精品久久19p | 亚洲 av网站 | 久久国产精品久久久 | 三级av中文字幕 | 久草在线精品观看 | 国内精品久久久久影院一蜜桃 | 色婷婷av一区 | 97热久久免费频精品99 | 日韩欧美精品免费 | 日本精品在线视频 | 日韩视频中文字幕在线观看 | 在线观看视频一区二区三区 | 国产精品久久中文字幕 | 青春草免费视频 | 国产精品69久久久久 | 国产黄免费在线观看 | 18岁免费看片 | 欧美性生交大片免网 | wwxxxx日本| 一区二区三区免费在线播放 | 精品毛片一区二区免费看 | 国产精品免费高清 | 人人爽人人爽 | 国产视频日韩 | 日日操日日 | 天天操天天爽天天干 | 免费观看一级特黄欧美大片 | 久久婷婷精品 | 亚州黄色一级 | 久久精品最新 | 国产福利91精品一区 | 高清在线观看av | 免费久久视频 | 久久精品久久久久久久 | 中文字幕免费国产精品 | 国产在线观看免费观看 | 成人一级影视 | 中文字幕在线观看资源 | 久久在线免费视频 | 欧美日韩在线视频免费 | 在线观看色视频 | 黄色毛片视频免费观看中文 | 高清色免费 | 最近中文字幕大全 | 国产第一福利网 | 中文字幕亚洲综合久久五月天色无吗'' | 欧美精品久久99 | 国产精品中文在线 | av成人免费在线 | 国产精品aⅴ | 欧美另类调教 | 黄色三级免费观看 | 69国产盗摄一区二区三区五区 | 人成午夜视频 | 欧美午夜a| 亚洲免费观看视频 | 日韩免费久久 | 99免费在线视频观看 | 天天干夜夜擦 | 国产精品免费久久久 | 精品久久久久久久久久岛国gif | 成人国产精品 | 欧美成人影音 | 免费黄色在线播放 | 中文免费 | 亚洲国产成人精品电影在线观看 | 天堂av在线网 | 欧美一级电影片 | 婷婷久草| 午夜久草| 日韩欧美视频免费观看 | 伊人天天狠天天添日日拍 | 一区二区三区精品久久久 | 国产亚洲精品电影 | 免费福利片 | 97成人资源 | 欧美一区影院 | 成人av在线网址 | 亚洲国产影院av久久久久 | 日日夜夜天天干 | 国产色视频一区二区三区qq号 | 国内精品久久久久久 | 日日摸日日添夜夜爽97 | 久久久鲁| 成人中文字幕在线观看 | 亚洲免费视频在线观看 | 韩国av电影在线观看 | 丁香五月网久久综合 | 涩五月婷婷| 精品国产欧美一区二区 | 精品91久久久久 | 99在线高清视频在线播放 | 日韩欧美网站 | 四虎国产精品成人免费4hu | 久久草草热国产精品直播 | 黄色片网站 | 99久热在线精品 | 在线观看日本高清mv视频 | 国产黄色一级大片 | 一区二区三区四区五区在线视频 | 久久久久国产精品免费网站 | 久久无码av一区二区三区电影网 | 亚洲综合色视频 | 91超国产| 久久精品中文字幕少妇 | 综合久久久久久久久 | 国产精品99久久久 | www日日 | 中文字幕在线播放日韩 | 4hu视频| 国内精品二区 | 四虎影视成人永久免费观看视频 | 在线激情电影 | 国产v在线 | 免费大片黄在线 | 日韩在线观看a | 婷五月天激情 | 久草在线视频网站 | 亚洲精品视频第一页 | 国产精品久久久久久久久久久久久 | 有码中文字幕在线观看 | 91最新网址 | 99久久久久久 | 亚洲最新av网址 | 久久久精品高清 | 天天鲁一鲁摸一摸爽一爽 | 国产精品一区二区麻豆 | 青青网视频 | 三级黄色网址 | 在线日韩中文 |