Python填充任意顏色,不同算法時間差異分析說明
我就廢話不多說了,大家還是直接看代碼吧!
import time
import numpy as np
import cv2
#方法一
start = time.time()
for i in range(1000):
canvas = np.zeros((1080,1920,3), np.uint8)
canvas[:,:,0] = 113
canvas[:,:,1] = 207
canvas[:,:,2] = 250
end = time.time()
print ("方法一(切片賦值)時間:",end-start)
cv2.imwrite("test1.png",canvas)
#方法二
start = time.time()
for i in range(1000):
canvas = np.zeros((1080,1920,3), np.uint8)
cv2.rectangle(canvas, (0, 0), (1920, 1080), (113,207,250), thickness=-1)
end = time.time()
print ("方法二(Opencv顏色填充)時間:",end-start)
cv2.imwrite("test2.png",canvas)
#方法三
start = time.time()
for i in range(1000):
canvas = np.ones([1080,1920,3])*[113,207,250]
end = time.time()
print ("方法三(矩陣乘法)時間:",end-start)
cv2.imwrite("test3.png",canvas)
# #方法四
start = time.time()
for i in range(1000):
canvas = np.zeros((1080,1920,3), np.uint8)
for i in range(1080):
for j in range(1920):
canvas[i][j] = [113,207,250]
end = time.time()
print ("方法四(循環(huán)遍歷賦值)時間:",end-start)
cv2.imwrite("test4.png",canvas)
結果
方法一(切片賦值)時間: 6.554100275039673
方法二(Opencv顏色填充)時間: 3.6737191677093506
方法三(矩陣乘法)時間: 74.28376317024231
方法四(循環(huán)遍歷賦值)時間: 3245.07548809051504
補充知識:規(guī)則多邊形顏色填充(Python)
以規(guī)則八邊型為例: import matplotlib.pyplot as plt import numpy as np # 設置八邊形頂點坐標 x = [0, 0, 5, 10, 15, 15, 10, 5] y = [5, 10, 15, 15, 10, 5, 0, 0] # 通過調用 fill() 函數(shù) 完成繪制八邊形 # 參數(shù) x 和 y 是用來繪制封閉區(qū)域頂點的有序坐標集 # 參數(shù) color 用來指定封閉區(qū)域的填充顏色 plt.fill(x, y, color="green") # 為了可視化效果更好,使用函數(shù) xlim() 和 ylim() 完成多邊型在整個坐標軸中的相對位置調整(可自行刪除對比效果) plt.xlim(-1, 17) plt.ylim(-1, 17) # 使用 xticks() 和 yticks() 調整刻度線的顯示位置 # np.arange(起始坐標,結束坐標,坐標間隔) plt.xticks(np.arange(0, 16, 5)) plt.yticks(np.arange(0, 16, 5)) # 調用 show() 函數(shù)展示圖形的繪制效果 plt.show()

以上這篇Python填充任意顏色,不同算法時間差異分析說明就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Python實現(xiàn)的邏輯回歸算法示例【附測試csv文件下載】
這篇文章主要介紹了Python實現(xiàn)的邏輯回歸算法,結合具體實例形式分析了Python邏輯回歸算法相關實現(xiàn)技巧,需要的朋友可以參考下2018-12-12
python實戰(zhàn)之PyQt5實現(xiàn)漫畫臉
本文詳細講解了python實戰(zhàn)之PyQt5實現(xiàn)漫畫臉的方法,文中通過示例代碼介紹的非常詳細。對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-12-12
Django中ajax發(fā)送post請求 報403錯誤CSRF驗證失敗解決方案
這篇文章主要介紹了Django中ajax發(fā)送post請求 報403錯誤CSRF驗證失敗解決方案,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2019-08-08
Python 實現(xiàn)購物商城,含有用戶入口和商家入口的示例
下面小編就為大家?guī)硪黄狿ython 實現(xiàn)購物商城,含有用戶入口和商家入口的示例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-09-09

