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

520使用Python實現(xiàn)“我愛你”表白

 更新時間:2020年05月20日 10:25:20   作者:Python學習交流  
這篇文章主要介紹了520使用Python實現(xiàn)“我愛你”表白,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

摘要: 每到情人節(jié)、七夕節(jié),不少小伙伴大伙伴們都會遇到這樣一個世紀問題——怎么給女朋友/老婆一個與眾不同的節(jié)日驚喜。今天給大家分享一個獨特的表白方法——用“我愛你”拼出心愛人的模樣!

每到情人節(jié)、七夕節(jié),不少小伙伴大伙伴們都會遇到這樣一個世紀問題——怎么給女朋友/老婆一個與眾不同的節(jié)日驚喜。

你說送花吧,到時候朋友圈里一劃,全部都是送花的,女票:“沒創(chuàng)意!”,遂卒;

你說送禮物吧,要是送的禮物不合心意,女票:“你根本不懂我!”,又卒;

你說逛街買買買吧,摸摸空空的口袋,默默把這個想法丟到一邊...

今天,就和大家分享一個獨特的表白方法——用“我愛你”拼出心愛人的模樣!

成品圖!

什么?看不清長啥樣?放大來康康

想做出這樣的照片嗎?那么~我們現(xiàn)在就開始啦~

一. 需要準備的有

女票超級無敵可愛美膩的照片 1張!

python (這里用的是python3.7)

需要的用到的庫

cv2:用來讀取照片

PIL:用來生成新的圖片

性能比較OK的電腦

(如果沒有接觸過python,不想/不會配環(huán)境、裝cv2、PIL之類的庫,或者電腦性能不太夠,強烈推薦使用華為云的ModelArts進行開發(fā)~直接解決環(huán)境配置、電腦性能的各種問題~)

二. 基本思路
要實現(xiàn)這樣的效果,首先需要有一張照片,提取其像素信息,然后賦給排布滿文字的新圖片,就能得到如上圖所示的一張新圖片啦!

廢話不多說,接下來就開始吧~

三.操作流程

1.首先導入用到的庫(兩者的作用在1中已有介紹)

from PIL import Image, ImageDraw, ImageFont

2.然后開始聲明繪圖的方法

這里有兩個參數(shù),分別是原圖片的路徑和要寫的文字

def draw(pic, draw_text):

3.接著讀取圖片

使用cv2中的imread方法讀取圖片信息,

使用PIL中的Image方法創(chuàng)建一個新的圖片,其尺寸和源圖片一致,背景為白色

blank = Image.new("RGB", [img.shape[1], img.shape[0]], "white")
drawObj = ImageDraw.Draw(blank) # 告訴程序,我們接下來就要在這個圖上寫字啦!

4.聲明繪圖的一些參數(shù)(這些參數(shù)都是我經(jīng)過多次試驗得到的最佳大小~)

m = 9 # 字體的大小
font_path = '你使用字體的位置' # 字體的路徑
font = ImageFont.truetype(font_path, size=m) # 將字體信息賦給font變量,供后續(xù)使用

5.接下來就是最關(guān)鍵的一步!把文字寫上去,并按照源圖片給圖片上色

通過兩個for循環(huán),依次定位到每個文字所在的色塊(中間間隔n是因為文字比像素塊大得多,不可能完全按照每個像素的位置和色彩來排布)

使用text()方法填入帶色彩的文字,幾個參數(shù)分別代表:

[j, i] -- 坐標位置

draw_text[int(j / n) % len(draw_text)] -- 找到當前該寫入哪個文字了(比如“我愛你”中的第幾個字)

fill=(img[i][j][2], img[i][j][1], img[i][j][0]) -- 代表源圖片對應位置的顏色(三個分別代表RBG顏色值)

for i in range(0, img.shape[0], n):
for j in range(0, img.shape[1], n):
drawObj.text(
[j, i],
draw_text[int(j / n) % len(draw_text)],
fill=(img[i][j][2], img[i][j][1], img[i][j][0]),
font=font
) # 按句子的順序填充文字

6.寫入完成,導出圖片

7.調(diào)用我們封裝好的方法~

輸入圖片路徑和目標文字,運行~一張獨一無二的表白圖就大功告成!

draw('1.jpg', "我愛你")

附上全代碼(記得把字體路徑改成自己電腦的喲~)

from PIL
import Image, ImageDraw, ImageFont
def draw(pic, draw_text):
	img = cv2.imread(pic)
blank = Image.new("RGB", [img.shape[1],
	img.shape[0]
], "white")
drawObj = ImageDraw.Draw(blank)
n = 10
m = 9
font = ImageFont.truetype(font_path,
	size = m)
for i in range(0, img.shape[0], n):
	for j in range(0, img.shape[1], n):
	drawObj.text(
		[j, i],
		draw_text[int(j / n) % len(draw_text)],
		fill = (img[i][j][2], img[i][j][1],
			img[i][j][0]),
		font = font
	)
blank.save('img_' + pic)
draw('1.jpg', "我愛你")

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python基于回溯法子集樹模板解決數(shù)字組合問題實例

    Python基于回溯法子集樹模板解決數(shù)字組合問題實例

    這篇文章主要介紹了Python基于回溯法子集樹模板解決數(shù)字組合問題,簡單描述了數(shù)字組合問題并結(jié)合實例形式分析了Python回溯法子集樹模板解決數(shù)字組合問題的具體步驟與相關(guān)操作技巧,需要的朋友可以參考下
    2017-09-09
  • Python利用FlashText算法實現(xiàn)替換字符串

    Python利用FlashText算法實現(xiàn)替換字符串

    FlashText算法是由?Vikash?Singh?于2017年發(fā)表的大規(guī)模關(guān)鍵詞替換算法,比正則表達式替換快M倍以上,這個M是需要替換的關(guān)鍵詞數(shù)量,關(guān)鍵詞越多,F(xiàn)lashText算法的優(yōu)勢就越明顯。本文將詳細這一算法,需要的可以參考一下
    2022-03-03
  • Python使用Virtualenv進行虛擬環(huán)境管理的詳細步驟

    Python使用Virtualenv進行虛擬環(huán)境管理的詳細步驟

    Virtualenv是一個Python環(huán)境管理工具,它允許開發(fā)者在不同的項目之間獨立創(chuàng)建和管理各自的Python環(huán)境,通過virtualenv,你可以為每個項目安裝特定版本的Python解釋器以及項目的依賴庫,本文給大家介紹了Python使用Virtualenv進行虛擬環(huán)境管理的詳細步驟
    2024-09-09
  • Pandas對數(shù)值進行分箱操作的4種方法總結(jié)

    Pandas對數(shù)值進行分箱操作的4種方法總結(jié)

    分箱是一種常見的數(shù)據(jù)預處理技術(shù)有時也被稱為分桶或離散化,他可用于將連續(xù)數(shù)據(jù)的間隔分組到“箱”或“桶”中。本文將使用python?Pandas庫對數(shù)值進行分箱的4種方法,感興趣的可以了解一下
    2022-05-05
  • python工具快速為音視頻自動生成字幕(使用說明)

    python工具快速為音視頻自動生成字幕(使用說明)

    這篇文章主要介紹了python工具快速為音視頻自動生成字幕(使用說明),本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-01-01
  • 火車票搶票python代碼公開揭秘!

    火車票搶票python代碼公開揭秘!

    火車票搶票python代碼公開揭秘!使用Python模擬搶票程序,給大家揭秘搶票到底是怎么回事,感興趣的小伙伴們可以參考一下
    2018-03-03
  • pycharm導入第三方庫的兩種方法(永不報錯)

    pycharm導入第三方庫的兩種方法(永不報錯)

    這篇文章主要介紹了pycharm導入第三方庫的兩種方法(永不報錯),本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-11-11
  • Tensorflow2.10使用BERT從文本中抽取答案實現(xiàn)詳解

    Tensorflow2.10使用BERT從文本中抽取答案實現(xiàn)詳解

    這篇文章主要為大家介紹了Tensorflow2.10使用BERT從文本中抽取答案實現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-04-04
  • 跟老齊學Python之集合的關(guān)系

    跟老齊學Python之集合的關(guān)系

    前面一節(jié)講述了集合的基本概念,注意,那里所涉及到的集合都是可原處修改的集合。還有一種集合,不能在原處修改。
    2014-09-09
  • python文件的讀取、寫入與刪除

    python文件的讀取、寫入與刪除

    文件是無處不在的,,無論我們使用哪種編程語言,處理文件對于每個程序員都是必不可少的,下面這篇文章主要給大家介紹了關(guān)于python文件的讀取、寫入與刪除的相關(guān)資料,文中通過實例代碼和圖文介紹的非常詳細,需要的朋友可以參考下
    2023-06-06

最新評論

长汀县| 枝江市| 仁化县| 云梦县| 喀喇沁旗| 蚌埠市| 潞城市| 武冈市| 策勒县| 团风县| 商水县| 武鸣县| 凌源市| 石棉县| 德州市| 安乡县| 兰州市| 北京市| 阿尔山市| 崇义县| 桑植县| 广南县| 清水县| 九台市| 措勤县| 胶南市| 香河县| 民和| 化隆| 肇庆市| 商水县| 阳原县| 大田县| 山阳县| 满城县| 谢通门县| 偃师市| 共和县| 兴隆县| 汪清县| 石棉县|