久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Python實(shí)戰(zhàn)之OpenCV實(shí)現(xiàn)貓臉檢測(cè)

瀏覽:117日期:2022-06-15 17:19:03
開發(fā)工具

Python版本:3.6.4

相關(guān)模塊:

cv2模塊;

以及一些Python自帶的模塊。

環(huán)境搭建

安裝Python并添加到環(huán)境變量,pip安裝需要的相關(guān)模塊即可。

原理簡(jiǎn)介

簡(jiǎn)單地講一講Haar分類器,也就是Viola-Jones識(shí)別器。

詳細(xì)的原理說明可參考相關(guān)文件中的兩篇論文:

Rapid Object Detection using a Boosted Cascade of Simple Features;

Robust Real-Time Face Detection.

(1)Haar-like特征

Haar-like矩形特征是用于物體檢測(cè)的數(shù)字圖像特征,由兩個(gè)或者多個(gè)相鄰的黑白矩形組合而成,矩形的特征值是白色矩形的灰度值之和減去黑色矩形的灰度值之和。一般地,我們認(rèn)為矩形特征對(duì)一些簡(jiǎn)單的圖形結(jié)構(gòu)(線段、邊緣)等較為敏感:

Python實(shí)戰(zhàn)之OpenCV實(shí)現(xiàn)貓臉檢測(cè)

具體到貓臉檢測(cè)而言,我們認(rèn)為把這樣的矩形放到一個(gè)非貓臉區(qū)域后獲得的特征值與放到一個(gè)貓臉區(qū)域后獲得的特征值是不同的

利用上述基于特征的檢測(cè)算法,不僅能夠編碼特定區(qū)域的狀態(tài),而且效率高于基于像素的檢測(cè)算法。

(2)積分圖

下面我們來考慮一下如何計(jì)算矩形的特征值。對(duì)圖像中的任意一點(diǎn)A(x, y),定義該點(diǎn)的積分圖為其左上角的所有像素值之和,即:

Python實(shí)戰(zhàn)之OpenCV實(shí)現(xiàn)貓臉檢測(cè)

因此,要計(jì)算矩形模板的特征值,也就是計(jì)算兩個(gè)區(qū)域之間的像素和之差,只需要用特征區(qū)域端點(diǎn)的積分圖來進(jìn)行簡(jiǎn)單的加減運(yùn)算就可以了:

Python實(shí)戰(zhàn)之OpenCV實(shí)現(xiàn)貓臉檢測(cè)

(3)Haar分類器

Haar分類器是一個(gè)監(jiān)督學(xué)習(xí)分類器,要進(jìn)行目標(biāo)檢測(cè),首先要對(duì)圖像進(jìn)行直方圖均衡化和歸一化處理,然后檢測(cè)里面是否包含要檢測(cè)的物體。

流程框架圖為(Haar分類器本質(zhì)上由Haar特征提取器、離散強(qiáng)分類器以及強(qiáng)分類級(jí)聯(lián)器組成):

Python實(shí)戰(zhàn)之OpenCV實(shí)現(xiàn)貓臉檢測(cè)

Haar分類器使用Adaboost算法,但是把它組織為了篩選式的級(jí)聯(lián)分類器,在任意一級(jí)計(jì)算中,**一旦獲得輸入內(nèi)容不在檢測(cè)類中的結(jié)論,便終止計(jì)算,只有通過所有級(jí)別的分類器,才可認(rèn)為檢測(cè)到了目標(biāo)物體,**以此來提高檢測(cè)效率。

關(guān)于AdaBoost算法,我就不展開介紹了,有興趣的同學(xué)可以自己查找相關(guān)資料進(jìn)行學(xué)習(xí)。以后有時(shí)間我再對(duì)其進(jìn)行詳細(xì)的介紹。

(4)適用范圍

適用于“基本剛性”的物體檢測(cè),如臉、汽車、人體和自行車等等。

(5)總結(jié)

Viola-Jones目標(biāo)檢測(cè)框架的核心思想是通過滑動(dòng)窗口掃描圖像(多尺度的掃描),然后將每個(gè)窗口的Haar特征值輸入到篩選式的級(jí)聯(lián)分類器中來判斷該窗口內(nèi)是否含有目標(biāo)物體以實(shí)現(xiàn)目標(biāo)檢測(cè)。

具體實(shí)現(xiàn)

OpenCV中內(nèi)置了基于Viola-Jones目標(biāo)檢測(cè)框架的Haar分類器,并提供了貓臉檢測(cè)預(yù)訓(xùn)練好的模型。因此實(shí)現(xiàn)起來十分簡(jiǎn)單。

具體實(shí)現(xiàn)過程詳見相關(guān)文件中的源代碼。

效果演示

使用方式:

修改源代碼中的圖片名為自己需要檢測(cè)的圖片:

Python實(shí)戰(zhàn)之OpenCV實(shí)現(xiàn)貓臉檢測(cè)

在cmd窗口運(yùn)行DetectCatFace.py文件即可。

效果:

原圖1:

Python實(shí)戰(zhàn)之OpenCV實(shí)現(xiàn)貓臉檢測(cè)

檢測(cè)結(jié)果1:

Python實(shí)戰(zhàn)之OpenCV實(shí)現(xiàn)貓臉檢測(cè)

原圖2:

Python實(shí)戰(zhàn)之OpenCV實(shí)現(xiàn)貓臉檢測(cè)

檢測(cè)結(jié)果2(并不能很好地區(qū)分狗狗和貓咪):

Python實(shí)戰(zhàn)之OpenCV實(shí)現(xiàn)貓臉檢測(cè)

到此這篇關(guān)于Python實(shí)戰(zhàn)之OpenCV實(shí)現(xiàn)貓臉檢測(cè)的文章就介紹到這了,更多相關(guān)OpenCV實(shí)現(xiàn)貓臉檢測(cè)內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 亚洲免费成人 | 一卡二卡久久 | 国产在线区 | 一a毛片 | 欧美性福| 日本成人午夜影院 | 超碰香蕉 | 成人h视频 | 日韩精品久久久久久 | 曰韩中文字幕 | 国产成人精品一区一区一区 | 午夜无码国产理论在线 | 色网在线 | 免费的av网站 | 精品国产一区二区三区久久久蜜月 | 你懂的免费在线观看 | 91在线精品一区二区 | 色婷婷综合网 | 一区| av中文在线 | 欧美视频一区 | 精品欧美一区二区三区久久久小说 | 国偷自产av一区二区三区 | 曰曰操 | 国产不卡在线观看 | 亚洲精品一二区 | 成人在线手机版视频 | 久久精品免费视频观看 | 精品国偷自产在线 | 国产美女自拍视频 | 国产亚洲欧美一区 | 国产日韩精品一区二区 | 国产精品久久久久久久久久妇女 | 玖玖精品 | 波多野结衣亚洲 | 在线二区| 成人片免费看 | 91精品久久久久久综合五月天 | 久草青青 | 91福利在线播放 | 欧美日韩一区电影 |