欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python實現(xiàn)PS圖像抽象畫風(fēng)效果的方法

 更新時間:2018年01月23日 11:06:36   作者:Matrix_11  
這篇文章主要介紹了Python實現(xiàn)PS圖像抽象畫風(fēng)效果的方法,涉及Python基于skimage模塊進(jìn)行圖像處理的相關(guān)操作技巧,需要的朋友可以參考下

本文實例講述了Python實現(xiàn)PS圖像抽象畫風(fēng)效果的方法。分享給大家供大家參考,具體如下:

今天介紹一種基于圖像分割和color map 隨機(jī)采樣生成一種抽象畫風(fēng)的圖像特效,簡單來說,就是先生成一張 color map 圖,顏色是漸變的,然后針對要處理的圖像,進(jìn)行分割,這里用的是 SLIC 分割算法,然后從 color map 中隨機(jī)采樣,將采樣得到的像素值賦予分割后的圖像區(qū)域。

# -*- coding: utf-8 -*-
"""
Created on Sun Aug 20 08:31:04 2017
@author: shiyi
"""
import numpy as np
import matplotlib.pyplot as plt
from skimage import io
from skimage.segmentation import slic
import numpy.matlib
import random
file_name='D:/Visual Effects/PS Algorithm/9.jpg';
img=io.imread(file_name)
row, col, channel = img.shape
# define the colormap
color_map = img.copy()
rNW = 0.5
rNE = 1.0
rSW = 0.0
rSE = 0.5
gNW = 0.0
gNE = 0.5
gSW = 0.0
gSE = 1.0
bNW = 1.0
bNE = 0.0
bSW = 0.5
bSE = 0.0
xx = np.arange (col)
yy = np.arange (row)
x_mask = numpy.matlib.repmat (xx, row, 1)
y_mask = numpy.matlib.repmat (yy, col, 1)
y_mask = np.transpose(y_mask)
fx = x_mask * 1.0 / col
fy = y_mask * 1.0 / row
p = rNW + (rNE - rNW) * fx
q = rSW + (rSE - rSW) * fx
r = ( p + (q - p) * fy )
r[r<0] = 0
r[r>1] =1
p = gNW + (gNE - gNW) * fx
q = gSW + (gSE - gSW) * fx
g = ( p + (q - p) * fy )
g[g<0] = 0
g[g>1] =1
p = bNW + (bNE - bNW) * fx
q = bSW + (bSE - bSW) * fx
b = ( p + (q - p) * fy )
b[b<0] = 0.0
b[b>1] = 1.0
color_map[:, :, 0] = r * 255
color_map[:, :, 1] = g * 255
color_map[:, :, 2] = b * 255
# segment the image
N_block = 100
segments = slic(img, n_segments=N_block, compactness=10)
# plt.imshow(segments, plt.cm.gray)
seg_img = img.copy()
T_mask = img.copy()
for i in range(N_block):
 mask = (segments == i)
 T_mask[:, :, 0] = mask
 T_mask[:, :, 1] = mask
 T_mask[:, :, 2] = mask
 x_ind = int(random.random() * (col-1))
 y_ind = int(random.random() * (row-1))
 color = color_map[y_ind, x_ind, :]
 T_img = seg_img * T_mask
 T_img = color
 seg_img = seg_img * (1-T_mask) + T_img * T_mask
plt.figure(2)
plt.imshow(seg_img)
plt.show()

原圖:

效果圖:

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python圖片操作技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python Socket編程技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總

希望本文所述對大家Python程序設(shè)計有所幫助。

相關(guān)文章

  • django 連接數(shù)據(jù)庫出現(xiàn)1045錯誤的解決方式

    django 連接數(shù)據(jù)庫出現(xiàn)1045錯誤的解決方式

    這篇文章主要介紹了django 連接數(shù)據(jù)庫出現(xiàn)1045錯誤的解決方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-05-05
  • pycharm修改file type方式

    pycharm修改file type方式

    今天小編就為大家分享一篇pycharm修改file type方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • Python裝飾器簡單用法實例小結(jié)

    Python裝飾器簡單用法實例小結(jié)

    這篇文章主要介紹了Python裝飾器簡單用法,結(jié)合實例形式總結(jié)分析了Python裝飾器的基本功能、簡單用法及相關(guān)操作注意事項,需要的朋友可以參考下
    2018-12-12
  • Python實現(xiàn)的井字棋(Tic Tac Toe)游戲示例

    Python實現(xiàn)的井字棋(Tic Tac Toe)游戲示例

    這篇文章主要介紹了Python實現(xiàn)的井字棋(Tic Tac Toe)游戲,結(jié)合實例形式分析了井字棋的原理及Python相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2018-01-01
  • python的id()函數(shù)解密過程

    python的id()函數(shù)解密過程

    id()函數(shù)在使用過程中很頻繁,為此本人對此函數(shù)深入研究下,曬出代碼和大家分享下,希望對你們有所幫助
    2012-12-12
  • python下如何讓web元素的生成更簡單的分析

    python下如何讓web元素的生成更簡單的分析

    做web不簡單,特別是當(dāng)你需要使用一些web效果的時候, 比如顯示個圓角矩形,提示框之類的,也許你認(rèn)為很簡單,好讓我們分析一下:
    2008-07-07
  • 對python中GUI,Label和Button的實例詳解

    對python中GUI,Label和Button的實例詳解

    今天小編就為大家分享一篇對python中GUI,Label和Button的實例詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-06-06
  • 18個Python腳本可加速你的編碼速度(提示和技巧)

    18個Python腳本可加速你的編碼速度(提示和技巧)

    Python的可讀性和設(shè)計簡單性是其廣受歡迎的兩個主要原因。文中通過實例給大家介紹的很清楚,本文重點給大家分享18個Python腳本可加速你的編碼速度,感興趣的朋友一起看看吧
    2019-10-10
  • python簡單商城購物車實例代碼

    python簡單商城購物車實例代碼

    這篇文章主要為大家詳細(xì)介紹了python簡單商城購物車的實例代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • PyQt QListWidget修改列表項item的行高方法

    PyQt QListWidget修改列表項item的行高方法

    今天小編就為大家分享一篇PyQt QListWidget修改列表項item的行高方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-06-06

最新評論