色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

python畫蒙娜麗莎

趙雅婷1年前6瀏覽0評論

邁克爾·安多斯(Michael Anthonysz)曾在2019年用Python和OpenCV實現了用顏料畫蒙娜麗莎,但若是不想動手實際繪畫,Python也能實現虛擬繪畫。

首先需要導入三個庫:PIL、numpy、matplotlib。

from PIL import Image
import numpy as np
import matplotlib.pyplot as plt

然后,我們可以通過pillow庫的open方法打開一張照片并顯示在控制臺上:

img = Image.open('mona_lisa.jpg')
img.show()

這時候,我們可以看到蒙娜麗莎的畫像,但是,如果我們想根據這個畫像進行繪畫,我們需要先將它轉換成numpy數組。

img_np = np.array(img)

為了更好地可視化這個圖像,我們需要考慮展示色彩模式。RGB模式是我們在Python繪制和處理圖像時常用的模式。為了轉換圖像的色彩空間,我們需要調用imshow方法,并指定色彩模式:

plt.imshow(img_np, cmap='gray')
plt.show()

我們可以看到一個黑白的蒙娜麗莎。

至此,我們開始繪制蒙娜麗莎了。這里使用了先前導入的matplotlib庫。

def draw_mona_lisa():
fig,ax = plt.subplots(1)
ax.imshow(img_np)
draw_points = np.array([[310, 170], [570, 170], [440, 290], [365, 475], [515, 475]])
# 臉輪廓
ax.plot([270, 370], [215, 215], color='black', linewidth=7)
ax.plot([255, 392], [265, 265], color='black', linewidth=5)
ax.plot([275, 397], [320, 320], color='black', linewidth=3)
ax.plot([235, 377], [380, 380], color='black', linewidth=3)
ax.plot([270, 340], [442, 442], color='black', linewidth=5)
ax.plot([450, 550], [215, 215], color='black', linewidth=7)
ax.plot([440, 605], [265, 265], color='black', linewidth=5)
ax.plot([415, 590], [315, 315], color='black', linewidth=3)
ax.plot([420, 570], [380, 380], color='black', linewidth=3)
ax.plot([470, 550], [442, 442], color='black', linewidth=5)
# 眼睛
ax.plot(draw_points[0:2][:, 0], draw_points[0:2][:, 1], color='black', linewidth=4)
ax.plot(draw_points[2:4][:, 0], draw_points[2:4][:, 1], color='black', linewidth=4)
ax.plot(draw_points[0:3][:, 0], draw_points[0:3][:, 1], color='black', linewidth=3.5)
ax.plot(draw_points[2:][:, 0], draw_points[2:][:, 1], color='black', linewidth=3.5)
# 口罩
ax.plot([300, 560], [510, 510], color='black', linewidth=15)
ax.plot([305, 555], [515, 515], color='white', linewidth=13)
ax.axis('off')
plt.show()

draw_points定義了蒙娜麗莎的眼睛的坐標點;接著,我們傳入坐標點和線寬,繪制蒙娜麗莎的輪廓和眼睛。最后,我們可以看到Python畫出了蒙娜麗莎。

draw_mona_lisa()