中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

使用Python給頭像加上圣誕帽或圣誕老人小圖標附源碼

發布時間:2020-09-29 11:12:28 來源:腳本之家 閱讀:182 作者:Python數據分析實戰 欄目:開發技術

隨著圣誕的到來,想給給自己的頭像加上一頂圣誕帽。如果不是頭像,就加一個圣誕老人陪伴。

使用Python給頭像加上圣誕帽或圣誕老人小圖標附源碼

使用Python給頭像加上圣誕帽或圣誕老人小圖標附源碼

用Python給頭像加上圣誕帽,看了下大概也都是來自2017年大神的文章:https://zhuanlan.zhihu.com/p/32283641

主要流程
素材準備
人臉檢測與人臉關鍵點檢測

調整大小,添加帽子

用dlib的正臉檢測器進行人臉檢測,用dlib提供的模型提取人臉的五個關鍵點

使用Python給頭像加上圣誕帽或圣誕老人小圖標附源碼

調整帽子大小,帶帽

選取兩個眼角的點,求中心作為放置帽子的x方向的參考坐標,y方向的坐標用人臉框上線的y坐標表示。然后我們根據人臉檢測得到的人臉的大小調整帽子的大小,使得帽子大小合適。

# 選取左右眼眼角的點
    point1 = shape.part(0)
    point2 = shape.part(2)
    # 求兩點中心
    eyes_center = ((point1.x+point2.x)//2,(point1.y+point2.y)//2)
    # cv2.circle(img,eyes_center,3,color=(0,255,0)) 
    # cv2.imshow("image",img)
    # cv2.waitKey()
    # 根據人臉大小調整帽子大小
    factor = 1.5
    resized_hat_h = int(round(rgb_hat.shape[0]*w/rgb_hat.shape[1]*factor))
    resized_hat_w = int(round(rgb_hat.shape[1]*w/rgb_hat.shape[1]*factor))
    if resized_hat_h > y:
     resized_hat_h = y-1
    # 根據人臉大小調整帽子大小
    resized_hat = cv2.resize(rgb_hat,(resized_hat_w,resized_hat_h))

添加小圖標

當然有些同學的頭像不是人物或不能準確的識別無關,所有添加了標識。(即在右下添加小圖標)。

小圖標避免單調,是從圖標中隨機選擇一個:

使用Python給頭像加上圣誕帽或圣誕老人小圖標附源碼

代碼如下:

# 水印圖片
 num = random.randint(1, 5)
 logo = Image.open("img_icon/santa_" + str(num) + ".png")
 
 img = Image.open(imgPath)
 
 print(img.size, logo.size)
 
 # 圖層
 layer = Image.new("RGBA", img.size, (255, 255, 255, 0))
 layer.paste(logo, (img.size[0] - logo.size[0], img.size[1]-logo.size[1]))

 # 覆蓋
 img_after = Image.composite(layer, img, layer)
 # img_after.show()
 img_after.save(outImgePath)

結果如下

使用Python給頭像加上圣誕帽或圣誕老人小圖標附源碼

源代碼:https://github.com/silencesmile/Christmas_Hat

總結

以上所述是小編給大家介紹的使用Python給頭像加上圣誕帽或圣誕老人小圖標附源碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

防城港市| 鄂温| 宿松县| 封开县| 阜宁县| 伊金霍洛旗| 梓潼县| 比如县| 株洲市| 阿鲁科尔沁旗| 长海县| 婺源县| 新营市| 磴口县| 洛浦县| 太原市| 浦江县| 东明县| 永善县| 嘉义市| 娄烦县| 定兴县| 铁岭县| 棋牌| 台东市| 八宿县| 兴义市| 资兴市| 平和县| 卢湾区| 尼木县| 宣威市| 祁门县| 姜堰市| 沐川县| 天门市| 临漳县| 大竹县| 报价| 鄢陵县| 永昌县|