词云图片操作完整版源码分享

词云图片操作完整版源码分享

import numpy as np
import os
from PIL import Image
from wordcloud import WordCloud
import cv2
def img_ciyun(img_path):

    filepath,fullflname = os.path.split(img_path)
    
    img = cv2.imread(img_path)
    mask = np.zeros(img.shape[:2], np.uint8)
    size = (1, 65)
    bgd = np.zeros(size, np.float64)
    fgd = np.zeros(size, np.float64)
    rect = (1, 1, img.shape[1], img.shape[0])
    cv2.grabCut(img, mask, rect, bgd, fgd, 10, cv2.GC_INIT_WITH_RECT)
    mask2 = np.where((mask == 2) | (mask == 0), 1, 255)
    img = img.astype(np.int32)
    img *= mask2[:, :, np.newaxis]
    img[img>255] = 255
    img =img.astype(np.uint8)
    img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
    img = Image.fromarray(img, 'RGB')
    img.save(filepath+'//'+'ciyuntemp.jpg')
    text ='春风十里,不及相遇有你;晴空万里,不及心中有你。\n世人万千种,浮云莫去求;斯人若彩虹,遇上方知有。\n没有电影电视剧的浪漫,不敢许你三生三世,只愿给你两厅三室。\n你可以把余生交给我保管,可以霸占我情话里的每一句喜欢。\n青山不及你眉长,水清不似你目澈,跨过山水几场雨,我一生只要一个你。\n我并没有喜欢哪一种类型的人,如果我喜欢你,我喜欢的就只是你。\n春花,秋月,夏日清风,冬日暮雪,这些都很美,但唯有你的心里,才是我想去的四季。\n世上最牢固的感情不是“我爱你”,而是“我习惯了有你”。彼此依赖,才是最深的相爱。\n你在身边的时候,你就是整个世界;你不在身边的时候,整个世界都是你。\n这世界上你或许不是最优秀的人,但我爱上你的时候,你就是我的全世界!\n遇见你是无意,认识你是天意,想着你是情意,不见你时三心二意,见到你便一心一意。\n我看那晚霞是红的,因为它怀里搂着个太阳。我想我的脸也该是红的吧,因为我心里住着你。'

    mask_pic=np.array(Image.open(filepath+'//'+'ciyuntemp.jpg'))
    wordcloud = WordCloud(font_path=r"C:\Windows\Fonts\simfang.ttf",mask=mask_pic).generate(text)
    image=wordcloud.to_image()
    image.save(filepath+'//'+'ciyuntemp.png')
    cloud_data = np.array(image)
    alpha = np.copy(cloud_data[:,:,0])      # 生成透明通道
    alpha[alpha>0] = 255                    # 不是黑的地方设置为255
    new_cloud = Image.fromarray(np.dstack((cloud_data, alpha)))
    card = Image.open(img_path)
    card = card.convert("RGBA")
    card.paste(new_cloud, (0,0), mask=new_cloud)
    card.save(filepath+'//'+'ciyun.png')
img_ciyun(r"C:\Users\Administrator\Desktop\lADPDiQ3MHktyrDNAjbNAek_489_566.jpg")

照骗

词云图片操作完整版源码分享