import numpy as np
創(chuàng)新互聯(lián)建站主要從事成都網(wǎng)站建設(shè)、網(wǎng)站制作、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)譙城,十多年網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18980820575
import cv2 as cv
face_cascade = cv.CascadeClassifier('haarcascade_frontalface_default.xml')
eye_cascade = cv.CascadeClassifier('haarcascade_eye.xml')
img = cv.imread('sachin.jpg')
gray = cv.cvtColor(img, cv.COLOR_BGR2GRAY)
faces = face_cascade.detectMultiScale(gray, 1.3, 5)
for (x,y,w,h) in faces:
cv.rectangle(img,(x,y),(x+w,y+h),(255,0,0),2)
roi_gray = gray[y:y+h, x:x+w]
roi_color = img[y:y+h, x:x+w]
eyes = eye_cascade.detectMultiScale(roi_gray)
for (ex,ey,ew,eh) in eyes:
cv.rectangle(roi_color,(ex,ey),(ex+ew,ey+eh),(0,255,0),2)
cv.imshow('img',img)
cv.waitKey(0)
屏幕坐標(biāo)系大概是這個樣子的:
其中,screen 的那個矩形就是窗口了,screen 的左上角坐標(biāo)是 (0 ,0)
self.rect.top?=?-self.rect.height
這句的意思是,將 rect 向上移動出屏幕邊緣
結(jié)合上面的圖,大概就是那個位置
self.rect.centerx?=?randrange(screen_size[0])
screen_size 是指屏幕的大小, screen_size[0] 就是屏幕的寬度啦
centerx 是指矩形中心的 X 坐標(biāo)(就是寬度一半的位置)
randrange 是返回一個 0 到 參數(shù) 之間的隨機數(shù)
綜合起來,就是將矩形的橫坐標(biāo)設(shè)置成屏幕寬度范圍內(nèi)的隨機位置
self.rect.top?+=?1
這句的意思是將矩形向下移動一個像素
因為在 update 函數(shù)中,所以綜合意思就是,矩形以每幀1像素的速度向下移動
self.rect.top??screen_size[1]
這句的意思是,當(dāng)矩形的上邊緣在屏幕的下邊緣之下的時候。
希望能幫到你啦~
你問的應(yīng)該是pygame.Surface.get_rect(),這個函數(shù)返回當(dāng)前面的一個長方形。
例如'mysurf.get_rect(center=(100,100)),你會創(chuàng)建一個位于surface中央的長方形。
外接矩形說的一般是某個輪廓的最小外接矩形,就是最小的能包含那個輪廓的矩形。