性少妇vide0seⅹfree_国产剧情视频在线观看_日日碰夜夜爽_九九这里只有精品视频_性free毛茸茸偷窥videos_国产v亚洲

中培偉業IT資訊頻道
您現在的位置:首頁 > IT資訊 > 軟件研發 > 使用Python和OpenCV創建Pointillist繪畫

使用Python和OpenCV創建Pointillist繪畫

2020-10-16 16:49:37 | 來源:中培企業IT培訓網

很多人都喜歡繪畫技術之一是點畫法(pointillism),這是一種繪畫技術,其中將細小的不同顏色的點應用于圖案中以形成圖像。該技術依賴于觀看者的眼睛和心靈將色斑混合到更廣泛的色調范圍內的能力。不同顏色的并置使它們更加生動,使整個圖像更具活力。點畫法是一種很棒的技術,但是要制作這些類型的畫,您需要采取有條不紊且漫長的方法。作為計算機視覺開發人員,我對處理圖像有很多了解,但是在繪畫方面很糟糕。那么如何使用Python和OpenCV創建Pointillist繪畫?

  模擬繪畫過程

繪畫過程模擬分三個步驟完成:

1. 調色板創建

2. 行程大小和長度計算

3. 實際繪畫

調色板創建

首先,我們需要確定哪些顏色將出現在“虛擬藝術家”的調色板中。我們需要選擇與圖像的顏色一致但又生動鮮明的一組顏色。

我們首先運行k均值以從圖像中選擇n = 20種主色。k均值的“對抗性”性質會產生不同的顏色,這些顏色集中在圖像中最常見的顏色周圍。

為了增加活力,我們通過添加kmeans選擇的顏色的一些變化來增強調色板。我選擇添加一個更加飽和的基礎調色板版本,并在顏色中添加兩個小的變化(±20色),并增加一點飽和度。

  行程方向和長度計算

為了使最終結果更具動感,我們可以使用較小的不同顏色的筆觸代替圓點。實際上,這是許多點畫師繪畫中使用的技術!我們希望筆觸的方向與圖像的內容一致,并使用更長的筆觸來描繪邊緣。因此,我們使用圖像漸變來確定每個繪畫筆觸的長度和方向。

為了計算筆刷筆觸的方向和長度,我們在x和y軸上采用Scharr圖像導數,從而在圖像上定義了矢量場。然后,我們使用高斯模糊對場進行平滑處理,以使最終的“繪畫”更加連貫。

  繪畫過程

我們像一位真正的畫家一樣繪制最終結果,一次一擊!對于每個筆劃,我們必須決定:

1. 職位

2. 每個筆觸的方向和長度

3. 使用哪種顏色的調色板

選擇一個隨機位置可能很誘人,但是這種方法的主要缺點是:我們不知道何時繪制了足夠的筆觸來填充整個圖像。因此,我們通過在圖像上均勻采樣來創建筆劃位置的列表,向每個位置添加一點隨機噪聲,然后對列表進行混洗以使筆劃具有隨機順序。

def randomized_grid(h, w, scale):

r = scale//2

grid = []

for i in range(0, h, scale):

for j in range(0, w, scale):

y = random.randint(-r, r) + i

x = random.randint(-r, r) + j

grid.append((y % h, x % w))

random.shuffle(grid)

return grid

一旦我們使用圖像梯度在圖像上定義了矢量場,方向和長度就易于計算。

angle = math.degrees(gradient.direction(y, x)) + 90

length = int(round(stroke_scale + stroke_scale * math.sqrt(gradient.magnitude(y, x))))

我們將漸變的方向旋轉90度,因為我們希望筆觸與圖像邊緣平行(圖像漸變垂直于邊緣)。根據圖像梯度的大小(即強度)計算長度。這里stroke_scale是一個參數,用于指定筆劃的全局比例,平方根用于使筆劃更均勻。我們不想在筆畫的長度上有太大的差異。

筆觸顏色的選擇可能是最困難的部分。我們希望隨機獲得漂亮的色彩并排,但是我們希望與原始照片保持一致。想法是從調色板中隨機選擇一種顏色,從而使與照片下方像素更相似的顏色被選擇的可能性更大。使用顏色之間相似度的softmax函數確定概率。

代碼

您可以在此處找到源代碼。它與我在這里描述的算法相對應,但性能有所提高。該代碼已注釋,應該很容易理解。

上述就是,關于使用Python和OpenCV創建Pointillist繪畫的全部內容,想了解更多關于Python的信息,請繼續關注中培偉業。

標簽: Python OpenCV
主站蜘蛛池模板: 让少妇爽到高潮视频 | 国产人妻无码精品 | 日本a级毛片免费视频播放 又大又粗欧美黑人AAAAA片 | 狠狠躁夜夜躁人人躁婷婷视频 | 99久久国产免费中文无字幕 | 亚洲人成在线观看网站不卡 | 美女在线不卡 | 国产免费一区二区三区在线能观看 | 麻豆午夜视频 | 国产亚洲视频在线观看 | 天天拍天天草 | 中国女警的一级播放 | japanese超丰满人妖hd | 亚洲成人在线视频网 | 欧美v日韩 | 国产美女网站在线观看 | 亚洲日本中文字幕免费在线不卡 | 欧美人与野鲁交xxx视频 | 三级在线不卡 | 日日摸夜夜添夜夜添亚洲女人 | 麻豆久久久午夜一区二区 | 国产精品――羞羞答答 | 国产69精品久久久久观看黑料 | 狠狠爱免费视频 | 成人福利片网站 | 精品一久久香蕉国产线看观看古代 | 国产一大二大不卡专区 | 最新日韩精品中文字幕 | 久艹网站 | 操操操网站 | 蜜桃成人无码区免费视频网站 | 亚洲一区二区三区久久久久久 | 欧美综合色区 | 天天做日日做天天添天天欢公交车 | 日本成人中文字幕在线观看 | 久久午夜无码人妻鲁丝片午夜精品 | 国产成人免费爽爽爽视频 | 中国老熟女重囗味HDXX | 亚洲天堂网一区二区 | 久久精品久久精品亚洲人 | 久久69精品久久久久久久电影好 |