粵高教版信息技術(shù)八年級下冊2-4 檢測圖像中的人臉 教案_第1頁
粵高教版信息技術(shù)八年級下冊2-4 檢測圖像中的人臉 教案_第2頁
粵高教版信息技術(shù)八年級下冊2-4 檢測圖像中的人臉 教案_第3頁
粵高教版信息技術(shù)八年級下冊2-4 檢測圖像中的人臉 教案_第4頁
粵高教版信息技術(shù)八年級下冊2-4 檢測圖像中的人臉 教案_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

廣東高等教育版信息技術(shù)八年級下冊第二單元第4課教學設(shè)計

課題第4課檢測圖像中的人臉單元第二單元學科信息技術(shù)年級八年級

1、了解OpenCV庫的功能。

學習2、初步了解分類器的作用。

目標3、理解cv2.imread()、cv2.imshow()、cv2.rectangle()函數(shù)的功能與用法。

4、掌握用OpenCV庫檢測圖像中人臉的方法與步驟。

重點理解cv2.imread()scv2.imshowOscv2.rectangle()函數(shù)的功能與用法。

難點掌握用OpenCV庫檢測圖像中人臉的方法與步驟。

教學過程

教學環(huán)節(jié)教師活動學生活動設(shè)計意圖

導(dǎo)入新課觀看圖形。

刷臉支付二

觀看、欣賞、激發(fā)學生的學習

思考興趣,了解日常

1,0生活中的人臉識

圖24-1支付寶人臉識^

別檢測。

隨著人工智能時代的到來,人臉識別技術(shù)得到了廣

泛的應(yīng)用,如火車站人臉識別進站、銀行刷臉取款、

支付寶和微信等人臉識別支付等。

人臉檢測是人臉識別的重要基礎(chǔ)。如何從圖像中檢

測出人臉呢?

如圖2-4-2所示,當用智能手機拍照時,怎樣確定

手機已經(jīng)檢測到人臉呢?

圖2-4-2手機拍照的人臉檢測

講授新課一、分析問題

本課的任務(wù)是編寫程序從圖片中找出所有人的臉,

并對每一張臉用矩形框做出標記,如圖2-4-3所示:進行探究,初

步了解程序解自主探究,學生

決的關(guān)鍵問理解和掌握。

題。

圖2-4-3圖像中的人臉檢測效果

程序要解決的關(guān)鍵問題:

一是如何調(diào)用人臉分類器文件創(chuàng)建人臉檢測器以

檢測圖像中的人臉;

二是如何獲得圖像中的人臉范圍的數(shù)據(jù),并在圖像

上用圖形繪制人臉范圍的標記。

要解決這兩個問題,在程序中需要利用到OpenCV

庫。

二、學習新知

(―)OpenCV庫

?OpenCV庫是一個跨平臺的計算機視覺庫,

可以運行在Linux、Windows、Android、

MacOS操作系統(tǒng)上。可以處理圖像識別、目

標檢測、圖像分割和行人再識別等主流視覺任

了解OpenCV動手導(dǎo)入

務(wù)。OpenCV庫在Python3中使用的名稱是

庫。OpenCV庫

cv2?

O

?如下圖:

<21在DOS方式中安裝OpenCV庫的命令為:二

pipinstallopencv-python

在Python中導(dǎo)入OpenCV庫(cv2)的

命令為:

importcv2

(二)分類器

分類器的作用是根據(jù)已有類別的訓練數(shù)據(jù),判斷一

個新樣本是否同屬該類別。

例如,利用貓臉分類器文件了解分類器的

,haarcascade-fronttalcatface.xml'來檢測一張圖像作用及類別。

是否有貓臉的程序如下:聽講、了解。

#carface.py

importcv2#導(dǎo)入cv2庫

#讀入待檢的圖像文件,存到img中

img=cv2.imread(*images/catl.jpg')

#創(chuàng)建名為face的貓臉檢測器

face=cv2.CascadeClassifier('haarcascade_frontalcatface.xmr)

#將101。中的圖像轉(zhuǎn)為灰度圖像,存到gray中

gray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)

faces=faces.detectMultiScale(gray,1.2,5)#檢測9^丫中所有的貓臉

for(x,y,w,h)inface:#從列表face中讀取所有的貓臉數(shù)據(jù)

#在每張貓臉上畫矩形框

cv2.rectangle(img,(x,y),(x+w,y+h),(0,0,255),3)

cv2.imshow('result',img)#在result窗口中顯示已檢測的圖像

cv2.waitKey(0)#按任意鍵退出

cv2.destroyAIIWindowsO#關(guān)閉所有窗口

探究:

運行貓臉檢測程序cat_face.py,了解貓臉檢測的流

程,體會各函數(shù)的作用,并將表2-4-1補充完整。

1函數(shù)作用

cv2.imread0讀入圖像

cv2.CascadeClassifier()創(chuàng)建檢測器

cv2.cvtColor()轉(zhuǎn)換圖片顏色

face.detectMultiScaleO罌落蟹墨察道操作、實踐

錄各張臉的左上角坐標及寬與局

cv2.rectangle0用矩形框標注檢測到的貓臉

cv2.imshow()在指定窗口中顯示所有檢測到的圖像

cv2.waitKeyO等待按下任意鍵

cv2.destroyAIIWindowsO關(guān)閉所有窗口

三、設(shè)計算法

1、導(dǎo)入cv2庫

2、讀入人臉檢測圖像

3、創(chuàng)建人臉檢測器

4、對圖像進行灰度處理,進行人臉檢測

5、根據(jù)檢測到的人臉數(shù)據(jù),用矩形框標注人臉

6、顯不標注人臉后的圖像

四、編寫程序

(-)讀入圖像

讀入圖像是人臉檢測的第一步,我們先用cv2的函了解讀入圖像

數(shù)讀入一個圖像并顯示出來。的的用法。

實踐:

完善并運行程序human_face.py,讀入和顯示待檢

測人臉的圖像,觀察運行結(jié)果。

#human_face.py

importcv2#導(dǎo)入cv2庫

,,)#從文彳^^中

img_cv2,imread(jmages/facel.jpgfacel.jpg

讀入圖像文件facel.jpg

cv2.imshow('result',img)#在result窗口顯示圖像

cv2.waitKey(0)#按任意鍵退出

cv2.destroyAIIWindowsO#關(guān)閉所有窗口

(-)檢測圖像中的人臉

在讀入圖像后,接下來需要創(chuàng)建人臉檢測器進行人

臉檢測,并根據(jù)檢測到的人臉數(shù)據(jù)用矩形框標注人

臉區(qū)域。

學生聽老師講

1、創(chuàng)建人臉檢測器

()教師講解,學解,了解創(chuàng)建人

用cv2.CascadeClassifie「()函數(shù)創(chuàng)建一^名為face

的人臉檢測器,代碼如下。生聽講,了解臉檢測器。

檢測圖像中的

face=cv2.CascadeClassifier(^aarcascade.frontalface.defaultxmri

人臉。

其中,參數(shù)Hhaarcascade_frontalface_defaultxmr,是人臉檢測器文件

2、檢測人臉區(qū)域

(1)fflcv2.cvtcolor()將img中的圖像轉(zhuǎn)換為灰度圖像,存放在gray中

gray=cv2.cvtColor(img,cv2.COLOR.BGR2GRAY)

其中,參數(shù)cv2.COLOR_BGR2GRAY表示將img中的圖像轉(zhuǎn)換為灰度

圖像,顓灰度圖像可以昭既十臉,加快檢測簸

(2)用face.detectMultiScale()函數(shù)檢測圖像中

的人臉

face=face.detectMultiScale(gray,l.l,3)

掌握標注人臉

3、標注人臉區(qū)域區(qū)域的用法。

用f。嘴環(huán)讀取face中的所有人臉數(shù)據(jù),獲得每張人臉區(qū)域的左上角坐

標(x,y3寬w和高h,逐一用cv2.「ectangle()函數(shù)的原圖像img上畫矩形。

for(x,y,w,h)infaces:

cv2.rectangle(img,(x,y),(x+wry+h),(255,0,0),4)

該函數(shù)的參數(shù)含義如圖2-4-4所示

1、在程序human_face.py的基礎(chǔ)上,添加創(chuàng)建人

臉檢測器、檢測人臉區(qū)域和標注人臉區(qū)域的代碼,

完成人臉檢測程序,然后用該程序檢測班級活動照

片中的人臉。

實踐與創(chuàng)作:

車牌自動識別系統(tǒng)隨處可見,該系統(tǒng)首先要做的

是車牌檢測,請利用教材配套資源中的車輛圖像和

車牌特征分類器文件,編寫一個車牌檢測程序,檢

測結(jié)果按圖2-4-5所示用矩形框標出來

圖2-4-5車牌檢測

實踐與評估

1、在Python中導(dǎo)入OpenCV庫的命令是importcv2

2、cv2庫的cv2.imread。函數(shù)可以讀入一個圖

像,cv2.imshow()函數(shù)用來在指定窗口中顯示圖像

3、在本課人臉檢測程序中,關(guān)于語句

faces=face.detectMultiScale(gray,1.2,4),下列說法錯

誤的是(D)

A、detectMultiScale()函數(shù)用來檢測人臉

B、檢測到的人臉數(shù)據(jù)存放在faces列表

C、參數(shù)1.2表示每次掃描后將圖像縮小

20%,再進行下一次掃描

D、參數(shù)4表示最多檢測到的人臉個數(shù)為4

4、請完善下列程序,在圖'photo.jpg,中國出線條

寬度為5的紅色圓

#image.py

importcv2

color=(0,0,255)#將紅色值存到color中

img=cv2.imread('photo.jpg')#讀入圖像

cv2.circle(img,(480300),100,colo「,5)#i面f半杼100的圓

cv2.imshow('image',img)

cv2.waitKey(0)

cv2.destroyAIIWindows()

課堂小結(jié)一、用函數(shù)cv2.Ca$cadeClassifier()和婚分類學生回答利用問題形式進

('haarcascade_frontalface_default.xmr)器創(chuàng)建煙檢

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論