顏色識別部分主要是採用sklearn模組中的kmeans演算法實現影象顏色空間的聚類,kmeans演算法已有很多部落格介紹其演算法原理,在此不再詳述,kmeans原理可參考此鏈結
具體**實現:
from sklearn.cluster import kmeans
import utils
import cv2
import os
defconvert_color
(value)
: digit =
list
(map
(str
,range(10
)))+
list
("abcdef")if
isinstance
(value,
tuple):
# 顏色轉換,(255,255,255)#fffff
string =
'#'for i in value:
a1 = i //
16 a2 = i %
16 string += digit[a1]
+ digit[a2]
return string
elif
isinstance
(value,
str)
:# 顏色轉換,#fffff(255,255,255)
a1 = digit.index(value[1]
)*16+ digit.index(value[2]
) a2 = digit.index(value[3]
)*16+ digit.index(value[4]
) a3 = digit.index(value[5]
)*16+ digit.index(value[6]
)return a1, a2, a3
file_path =
'.\\imgs\\'
file_list = os.listdir(file_path)
forfile
in file_list:
img_name = file_path +
file
ori_image = cv2.imread(img_name)
image = cv2.cvtcolor(ori_image, cv2.color_bgr2rgb)
image = image.reshape(
(ori_image.shape[0]
* ori_image.shape[1]
,3))
clt = kmeans(n_clusters=8)
clt.fit(image)
hist = utils.centroid_histogram(clt)
bar = utils.plot_colors(hist, clt.cluster_centers_)
for color in clt.cluster_centers_:
color =
tuple
(color.astype(
'uint8'))
str_color = convert_color(color)
# rgb值 -> 16進製制顏色值
阿里雲體驗實驗室 5 快速搭建LNMP環境
1 安裝並配置mysql wget yum y install mysql57 community release el7 10.noarch.rpm yum y install mysql community server 啟動 mysql 資料庫 systemctl start mysqld.s...
合天網安就業班 合天網安實驗室 SQL注入入門一
標籤 實驗平台 合天網安實驗室.web應用安全.sql注入實驗一 實驗環境 apache php mysql 實驗原理 sql注入是一種將sql 插入或新增到應用的輸入引數中的攻擊,之後再將這些引數傳遞給後台的sql伺服器加以解析並執行。傳統的手工 1 判斷是否有注入點 方法一 在url後面加 從而...
阿里雲體驗實驗室 1 基於ECS搭建雲上部落格體驗
雲伺服器 elastic compute service,簡稱ecs lamp linux 作業系統 apache http 伺服器 mysql 資料庫 和 php 網路程式語言 1 連線ecs伺服器 ssh v openssh 7.9p1,libressl 2.7.3 登入 ssh root 13...