最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python調(diào)用百度AI實(shí)現(xiàn)人像分割詳解

 更新時間:2021年12月21日 08:54:47   作者:學(xué)術(shù)菜鳥小晨  
本文主要介紹了如何通過Python調(diào)用百度AI從而實(shí)現(xiàn)人像的分割與合成,文中的示例代碼對我們的工作或?qū)W習(xí)有一定的幫助,需要的朋友可以參考一下

一、原始視頻截圖

import cv2
cap=cv2.VideoCapture(r"【小仙若】shake it !冬日也要活力滿滿! (P1. shake it).mp4")
ret,frame=cap.read()
i =0
timeF=3
j=0
num=0
while 1:
  i=i+1
  if (i%timeF==0):
    j=j+1
    cv2.imwrite("./pictures/"+str(num)+".jpg",frame)
    num+=1
    print("save image:",i)
  ret,frame=cap.read()
 
  

二、提取人像

# -*- coding:utf-8 -*-
import cv2
import base64
import numpy as np
import os
from aip import AipBodyAnalysis
import time
import random
 
APP_ID = '25365416'
API_KEY = 'pS5cVzzw2iBfLY6MKRhUE4cw'
SECRET_KEY = '×××××××××××××××××××××××××'
 
client = AipBodyAnalysis(APP_ID, API_KEY, SECRET_KEY)
# 保存圖像分割后的路徑
path = './mask_img/'
# os.listdir  列出保存到圖片名稱
pics = os.listdir('./pictures')
print(pics)
for im in pics:
    # 按順序構(gòu)造出圖片路徑
    img = os.path.join("./pictures",im)
    img1 = cv2.imread(img)
    height, width, _ = img1.shape
    # print(height, width)
    # 二進(jìn)制方式讀取圖片
    with open(img, 'rb') as fp:
        img_info = fp.read()
 
 
    # 設(shè)置只返回前景   也就是分割出來的人像
    res = client.bodySeg(img_info)
    seg_res = client.bodySeg(img_info)
    labelmap = base64.b64decode(seg_res['foreground'])
    file = open('./he/'+im.split(".")[0]+'.png','wb')
    file.write(labelmap)
    file.close()
 
    print('======== 圖像分割完成 ========')

三、和背景圖合并

import cv2
import os
from PIL import Image
import numpy as np
 
 
background='1.jpg'
def blend_images(fore_image, base_image):
    """
    將摳出的人物圖像換背景
    fore_image: 前景圖片,摳出的人物圖片
    base_image: 背景圖片
    """
    # 讀入圖片
    base_image = Image.open(base_image).convert('RGB')
    fore_image = Image.open(fore_image).resize(base_image.size)
 
    # 圖片加權(quán)合成
    scope_map = np.array(fore_image)[:,:,-1] / 255
    scope_map = scope_map[:,:,np.newaxis]
    scope_map = np.repeat(scope_map, repeats=3, axis=2)
    res_image = np.multiply(scope_map, np.array(fore_image)[:,:,:3]) + np.multiply((1-scope_map), np.array(base_image))
    
    #保存圖片
    res_image = Image.fromarray(np.uint8(res_image))
    res_image.save(os.path.join('./he/',im))
    #cv2.imwrite(os.path.join(path1,im), result)
# os.listdir  列出保存到圖片名稱
 
pics = os.listdir('./he1/')
print(pics)
for im in pics:
    img='./he1/'+im
    blend_images(img, background)

四、合成視頻

我的背景圖尺寸是3840×2160

# 圖片合成視頻
import cv2
import os
pics = os.listdir('./he/')
fourcc = cv2.VideoWriter_fourcc('X','V','I','D')
# 保存格式,參數(shù)分別為filename,編碼器,幀率,尺寸
out=cv2.VideoWriter("2.avi",fourcc,10,(3840,2160))
print(pics)
for im in pics:
    # 按順序構(gòu)造出圖片路徑
    img = os.path.join("./he/",im)
    img1 = cv2.imread(img)
# 指定編碼器
    print(img1)
 
# 寫入視頻
    out.write(img1)
    cv2.imshow("detections", img1)
# 注意:尺寸一定要和圖像保持一致,否則看不了視頻
# 如果想改變保存視頻尺寸,應(yīng)該先把讀入的圖像的尺寸改變
out.release()
cv2.destoryAllWindows()

到此這篇關(guān)于Python調(diào)用百度AI實(shí)現(xiàn)人像分割詳解的文章就介紹到這了,更多相關(guān)Python人像分割內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python中利用算法優(yōu)化性能的技巧分享

    Python中利用算法優(yōu)化性能的技巧分享

    這篇文章主要為大家詳細(xì)介紹了Python中12個可以利用算法優(yōu)化性能的技巧,文中的示例代碼簡潔易懂,具有一定的借鑒價值,有需要的小伙伴可以了解下
    2025-04-04
  • Python API len函數(shù)操作過程解析

    Python API len函數(shù)操作過程解析

    這篇文章主要介紹了Python API len函數(shù)操作過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-03-03
  • PaddleOCR 識別表情包文字示例詳解

    PaddleOCR 識別表情包文字示例詳解

    這篇文章主要為大家介紹了PaddleOCR 識別表情包文字示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • Tensorflow2.4從頭訓(xùn)練Word?Embedding實(shí)現(xiàn)文本分類

    Tensorflow2.4從頭訓(xùn)練Word?Embedding實(shí)現(xiàn)文本分類

    這篇文章主要為大家介紹了Tensorflow2.4從頭訓(xùn)練Word?Embedding實(shí)現(xiàn)文本分類,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01
  • python 2.7.14安裝圖文教程

    python 2.7.14安裝圖文教程

    這篇文章主要為大家詳細(xì)介紹了python 2.7.14安裝圖文教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • python?reshape和transpose的區(qū)別小結(jié)

    python?reshape和transpose的區(qū)別小結(jié)

    reshape()?和?transpose()?是用于改變數(shù)組或張量形狀的兩種不同方法,本文主要介紹了python?reshape和transpose的區(qū)別小結(jié),具有一定參考價值,感興趣的可以了解一下
    2024-02-02
  • selenium執(zhí)行js并繞過webdriver監(jiān)測常見方法

    selenium執(zhí)行js并繞過webdriver監(jiān)測常見方法

    這篇文章主要為大家介紹了selenium執(zhí)行js并繞過webdriver監(jiān)測常見方法,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪
    2022-04-04
  • 詳解Selenium 元素定位和WebDriver常用方法

    詳解Selenium 元素定位和WebDriver常用方法

    這篇文章主要介紹了詳解Selenium 元素定位和WebDriver常用方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • 淺談django三種緩存模式的使用及注意點(diǎn)

    淺談django三種緩存模式的使用及注意點(diǎn)

    這篇文章主要介紹了淺談django 三種緩存模式的使用及注意點(diǎn),詳細(xì)的介紹了三種緩存模式,非常具有實(shí)用價值,需要的朋友可以參考下
    2018-09-09
  • 利用Python實(shí)現(xiàn)圖書超期提醒

    利用Python實(shí)現(xiàn)圖書超期提醒

    很多人喜歡逛圖書館,時不時去借本書,但每本書可能只可以借兩個月,一旦超期不還就會進(jìn)行相應(yīng)的處罰!為什么不寫個腳本來通知自己圖書超期呢?說了這么多廢話,我們就進(jìn)入主題吧!??!
    2016-08-08

最新評論

峨边| 社会| 鄄城县| 昆山市| 黄骅市| 平果县| 吴忠市| 红原县| 新民市| 旺苍县| 交城县| 辉县市| 桦南县| 金堂县| 宕昌县| 叶城县| 建德市| 奉新县| 富顺县| 东兰县| 天祝| 云霄县| 三江| 蒲江县| 嘉鱼县| 周口市| 益阳市| 正阳县| 彝良县| 台江县| 丹寨县| 漠河县| 河东区| 东乌珠穆沁旗| 建德市| 疏勒县| 鄂尔多斯市| 榕江县| 育儿| 洮南市| 兴安盟|