<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          不用等微信官方!微信圣誕帽,我用Python就能搞定!

          共 2238字,需瀏覽 5分鐘

           ·

          2021-12-25 21:59

          轉(zhuǎn)眼之間,一年一度的圣誕節(jié)又要來(lái)了,今年的圣誕節(jié)比以往年來(lái)的更冷一些,北京氣溫直接跌破零下十度。

          劇烈的降溫之下,想出門(mén)慶祝圣誕是不可能了,菜鳥(niǎo)哥只想在被子里,默默的慶祝。

          雖然不能出門(mén),但是咱們可以通過(guò)其他的方式來(lái)感受圣誕節(jié)的節(jié)日氛圍。小伙伴們還記得前幾年,每逢圣誕節(jié)時(shí),大家都會(huì)通過(guò)@微信官方的形式,來(lái)希望微信官方能夠給自己的人物頭像上添加一頂紅色的圣誕帽。


          今年,菜鳥(niǎo)哥昨天平安夜就寫(xiě)了這個(gè)程序,來(lái)給微信人物頭像添加圣誕帽。感興趣的小伙伴,抓緊準(zhǔn)備好擼起代碼,接下來(lái),我們就進(jìn)入主題。


          01.環(huán)境準(zhǔn)備

          俗話說(shuō),工欲善其事必先利其器。首先,我們要搭建好我們的程序環(huán)境。程序中使用到的python庫(kù)包括:

          opencv-python ? ? ? ? ? ? 4.5.3.56

          dlib ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 19.6.1

          python的版本為python3.6,而編輯器則是用的pycharm2021.1.3版本。

          大家可以針對(duì)上面的程序環(huán)境來(lái)安裝對(duì)應(yīng)的python庫(kù)。對(duì)于python庫(kù)的安裝,可以利用 pip install opencv-python 的命令來(lái)進(jìn)行安裝。


          02.正式程序

          在正式的程序中,我們的程序原理可以利用下圖進(jìn)行解釋?zhuān)?/p>

          上圖中,可以很好的解釋我們的程序:

          a).傳入人臉圖片,進(jìn)行正臉識(shí)別(只有識(shí)別到正臉才能佩戴帽子),提取人臉的5個(gè)關(guān)鍵點(diǎn),。

          b).根據(jù)人臉大小調(diào)整帽子大小。

          c).根據(jù)人臉確定放帽子的位置,并提取除帽子以外的區(qū)域。

          d).提取出來(lái)帽子的圖片,并和第3步的結(jié)果相加

          f).將第四步的結(jié)果圖片覆蓋到原圖中對(duì)應(yīng)的位置上去。


          1.人臉識(shí)別

          對(duì)于人臉識(shí)別,利用的是dlib庫(kù)進(jìn)行完成,dlib中已經(jīng)訓(xùn)練好對(duì)于人臉的提取和人臉關(guān)鍵點(diǎn)檢測(cè):

          程序中,利用dlib檢測(cè)到的人臉存放在faces變量中,如果檢測(cè)到人臉,則通過(guò)for循環(huán)來(lái)進(jìn)一步檢測(cè)人臉當(dāng)中的關(guān)鍵點(diǎn),并提取人臉中左右眼角的位置坐標(biāo)信息。


          2.調(diào)整帽子大小

          在得到人臉的大小后,就需要針對(duì)人臉的大小來(lái)調(diào)節(jié)帽子的大小,使得人臉和帽子的大小比例協(xié)調(diào)。resized_hat變量中保存的是調(diào)整好的帽子圖片。


          3.根據(jù)人臉確定放帽子的位置,并提取除帽子以外的區(qū)域。

          程序中,根據(jù)人臉的位置來(lái)確定帽子適合防止的位置,從原圖中提取出相應(yīng)的位置backROI,mask_inv為提取到的帽子的形狀。通過(guò)cv2.multiply函數(shù),將backROI區(qū)域中,除帽子之外的區(qū)域保留下來(lái),保存到bg變量中。結(jié)果如下圖所示。


          上圖的程序中,通過(guò)cv2.bitwise_and函數(shù),來(lái)僅保留帽子的圖像,hat變量的結(jié)果如下圖所示。


          通過(guò)函數(shù)cv2.add,來(lái)將上面的兩張圖進(jìn)行合并。

          最后,將合并的結(jié)果圖放回到原圖中對(duì)應(yīng)的位置即可。這樣,就可以得到一張漂亮的圣誕帽圖片了。


          03.批量處理

          為了方便大家批量的處理圖片,菜鳥(niǎo)哥也為大家貼心的寫(xiě)了批量化處理的函數(shù)。


          大家可以通過(guò)以傳入文件夾的形式,來(lái)批量的為頭像添加圣誕帽。最后,菜鳥(niǎo)哥為大家展示幾張完成的照片效果。


          總結(jié)

          整個(gè)程序不是很難,關(guān)鍵是dlib這個(gè)環(huán)境不太好安裝(需要安裝gcc然后編譯),非常麻煩。需要圖片加圣誕帽子,也可以找小助手幫忙。公眾號(hào)后臺(tái)輸入:小助手,暗號(hào):圣誕


          圣誕節(jié)來(lái)臨了,今年的冬天是真的冷哦,不說(shuō)了,取暖基本靠抖,我要去吃火鍋了!



          推薦閱讀:

          入門(mén):?最全的零基礎(chǔ)學(xué)Python的問(wèn)題? |?零基礎(chǔ)學(xué)了8個(gè)月的Python??|?實(shí)戰(zhàn)項(xiàng)目?|學(xué)Python就是這條捷徑


          干貨:爬取豆瓣短評(píng),電影《后來(lái)的我們》?|?38年NBA最佳球員分析?|? ?從萬(wàn)眾期待到口碑撲街!唐探3令人失望? |?笑看新倚天屠龍記?|?燈謎答題王?|用Python做個(gè)海量小姐姐素描圖?|碟中諜這么火,我用機(jī)器學(xué)習(xí)做個(gè)迷你推薦系統(tǒng)電影


          趣味:彈球游戲? |?九宮格? |?漂亮的花?|?兩百行Python《天天酷跑》游戲!


          AI:?會(huì)做詩(shī)的機(jī)器人?|?給圖片上色?|?預(yù)測(cè)收入?|?碟中諜這么火,我用機(jī)器學(xué)習(xí)做個(gè)迷你推薦系統(tǒng)電影


          小工具:?Pdf轉(zhuǎn)Word,輕松搞定表格和水印!?|?一鍵把html網(wǎng)頁(yè)保存為pdf!|??再見(jiàn)PDF提取收費(fèi)!?|?用90行代碼打造最強(qiáng)PDF轉(zhuǎn)換器,word、PPT、excel、markdown、html一鍵轉(zhuǎn)換?|?制作一款釘釘?shù)蛢r(jià)機(jī)票提示器!?|60行代碼做了一個(gè)語(yǔ)音壁紙切換器天天看小姐姐!


          年度爆款文案


          點(diǎn)閱讀原文,看200個(gè)Python案例!

          瀏覽 38
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  在线观看视频草女人啊啊 | 国内精品国产三级国产99 | 91色吧网| 在线无码免费 | 成人自拍偷拍 |