日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python绘画梦想_用python实现你的绘画梦想

發布時間:2025/3/15 python 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python绘画梦想_用python实现你的绘画梦想 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

導語:

? 你是否還在為當時年少時沒有選擇自己的夢想而傷心,是否還在為自己的無法成為繪畫名家而苦惱,這一切都不需要擔心。python都能幫你實現,誒!python怎么能畫畫呢,一些簡單的圖案沒問題,但是我要是想畫素描那肯定沒有辦法了呀!

需求分析:

通過python代碼腳本,實現繪制素描

安裝工具

pip install pillow

pip install numpy

代碼實現

首先我們需要看一下我們需要的原圖:

這是一頭大水牛,那我們要如何將它變成一幅素描畫呢?

來看我們第一種方案:

# -*- coding: utf-8 -*-

from PIL import Image

from random import randint

old = Image.open(r"da.jpg")

new = Image.new('L', old.size, 255)

w, d = old.size

old = old.convert('L')

PEN_SIZE = 3

COLOR_DIFF = 7

LINE_LEN = 2

for i in range(PEN_SIZE + 1, w - PEN_SIZE - 1):

for j in range(PEN_SIZE + 1, d - PEN_SIZE - 1):

originalcolor = 255

lcolor = sum([old.getpixel((i - r, j))

for r in range(PEN_SIZE)]) // PEN_SIZE

rcolor = sum([old.getpixel((i + r, j))

for r in range(PEN_SIZE)]) // PEN_SIZE

if abs(lcolor - rcolor) > COLOR_DIFF:

originalcolor -= (255 - old.getpixel((i, j))) // 4

for p in range(-LINE_LEN + randint(-1, 1), LINE_LEN + randint(-1, 1)):

new.putpixel((i, j + p), originalcolor)

ucolor = sum([old.getpixel((i, j - r))

for r in range(PEN_SIZE)]) // PEN_SIZE

dcolor = sum([old.getpixel((i, j + r))

for r in range(PEN_SIZE)]) // PEN_SIZE

if abs(ucolor - dcolor) > COLOR_DIFF:

originalcolor -= (255 - old.getpixel((i, j))) // 4

for p in range(-LINE_LEN + randint(-1, 1), LINE_LEN + randint(-1, 1)):

new.putpixel((i + p, j), originalcolor)

lucolor = sum([old.getpixel((i - r, j - r))

for r in range(PEN_SIZE)]) // PEN_SIZE

rdcolor = sum([old.getpixel((i + r, j + r))

for r in range(PEN_SIZE)]) // PEN_SIZE

if abs(lucolor - rdcolor) > COLOR_DIFF:

originalcolor -= (255 - old.getpixel((i, j))) // 4

for p in range(-LINE_LEN + randint(-1, 1), LINE_LEN + randint(-1, 1)):

new.putpixel((i - p, j + p), originalcolor)

rucolor = sum([old.getpixel((i + r, j - r))

for r in range(PEN_SIZE)]) // PEN_SIZE

ldcolor = sum([old.getpixel((i - r, j + r))

for r in range(PEN_SIZE)]) // PEN_SIZE

if abs(rucolor - ldcolor) > COLOR_DIFF:

originalcolor -= (255 - old.getpixel((i, j))) // 4

for p in range(-LINE_LEN + randint(-1, 1), LINE_LEN + randint(-1, 1)):

new.putpixel((i + p, j + p), originalcolor)

new.save(r"pencil_drawing.jpg")

我們這第一份素描圖案時以線條為單位進行素描的,而且還增加了隨機函數,圖案中線條的長度不確定,這樣創作的素描看上去更加柔和,看起來更加接近真實的人類作畫的風格。

但是這個方法有一些弊端,

一是代碼量較多

二是執行速度過慢

你想通過這個方式實現一個素描圖案,需要等待很長時間。

那么有沒有更好的方式呢?

來,我們再來看,接下來我們要用一種更友好的方式來實現這個需求

from PIL import Image

import numpy as np

a = np.asarray(Image.open('牛.jpg').convert('L')).astype('float')

depth = 10. # (0-100)

grad = np.gradient(a) # 取圖像灰度的梯度值

grad_x, grad_y = grad # 分別取橫縱圖像梯度值

grad_x = grad_x * depth / 100.

grad_y = grad_y * depth / 100.

A = np.sqrt(grad_x ** 2 + grad_y ** 2 + 1.)

uni_x = grad_x / A

uni_y = grad_y / A

uni_z = 1. / A

vec_el = np.pi / 2.2 # 光源的俯視角度,弧度值

vec_az = np.pi / 4. # 光源的方位角度,弧度值

dx = np.cos(vec_el) * np.cos(vec_az) # 光源對x 軸的影響

dy = np.cos(vec_el) * np.sin(vec_az) # 光源對y 軸的影響

dz = np.sin(vec_el) # 光源對z 軸的影響

b = 255 * (dx * uni_x + dy * uni_y + dz * uni_z) # 光源歸一化

b = b.clip(0, 255)

im = Image.fromarray(b.astype('uint8')) # 重構圖像

im.save('new.jpg')

可能細心一點,大家可以看到我使用的是,數據分析,金融量化,機器學習,人工智能的必備工具包numpy,而且代碼量縮短的二十幾行了,效果相較于上面那種方式,還要更好一些,運行的速度也要快很多倍。

總結

以上是生活随笔為你收集整理的python绘画梦想_用python实现你的绘画梦想的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 成年人在线视频观看 | 国产色拍 | 日韩精品一区二区免费视频 | 免费成人看片 | 国产一区精品在线观看 | 97精品人妻一区二区三区蜜桃 | 奇米四色网 | 97精品久久人人爽人人爽 | 新91视频在线观看 | 亚洲精品字幕在线 | 国产91色在线 | 亚洲一区二区三区精品视频 | 欧美在线xxx | 国产拍拍视频 | 樱空桃在线 | 久久综合成人 | 久久精品动漫 | 懂色av一区二区在线播放 | 凹凸视频一区二区 | 给我免费观看片在线电影的 | 美女被草出白浆 | 女同一区二区三区 | 亚洲图片在线播放 | avav国产 | 久章草在线观看 | 都市激情自拍 | 天天干天天色天天射 | 粉嫩欧美一区二区三区 | 四虎色网| 国产黑丝在线视频 | 五月婷婷六月婷婷 | 日本一区二区在线观看视频 | 米奇久久| 美女隐私免费网站 | 中文在线观看免费高清 | 精品日韩视频 | h在线免费 | 91精品视频观看 | 中文在线字幕免费观看电 | 不许穿内裤随时挨c调教h苏绵 | 伊人久色| 精品国产伦一区二区三区免费 | 免费看色| 久本草精品 | 国产一级淫片免费 | 99精品综合| 涩天堂 | 日韩欧美视频网站 | 亚洲午夜久久久久久久久久久 | 国产精品国产精品国产专区 | 青青青在线免费 | 欧美日韩在线视频播放 | 国产乱淫精品一区二区三区毛片 | 亚洲人高潮女人毛茸茸 | 黄色片不卡 | 99亚洲精品 | 亚洲爽爽网| 麻豆91在线播放 | 另类激情亚洲 | 少妇饥渴放荡91麻豆 | 穿情趣内衣被c到高潮视频 欧美性猛交xxxx黑人猛交 | av不卡中文字幕 | 激情小视频在线观看 | 波多野结衣欲乱上班族 | 国产一区二区精品在线 | 最近2018年手机中文字幕版 | 久久婷婷色综合 | 日本三级视频 | 日本视频不卡 | 蜜臀av粉嫩av懂色av | 中文字幕在线播放视频 | 国产在线拍揄自揄拍 | 秋霞精品一区二区三区 | 午夜一区二区视频 | 狠狠操狠狠摸 | 欧美美女在线 | 青青青青青青青青草 | 偷拍欧美另类 | 亚洲国产成人在线 | 超清av| 四虎永久免费观看 | 国产一区欧美日韩 | 久久大胆人体 | 秋霞欧美一区二区三区视频免费 | 成人黄色小说视频 | 欧美色视频在线观看 | 国产不卡在线观看视频 | 黄色不卡av| 日本一区二区三区在线免费观看 | www.av成人| 黄色片免费的 | 亚洲一卡二卡在线观看 | 人与禽一级全黄 | 一级性生活大片 | h无码动漫在线观看 | 伊人影视久久 | 粉嫩av一区二区三区四区五区 | 噼里啪啦免费高清看 | 一区二区亚洲 |