日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

python下對hsv顏色空間進行量化操作

瀏覽:26日期:2022-07-22 18:47:18

更新:優化了代碼,理由numpy的ufunc函數功能替換了之前的雙重for循環,測試圖片大小為692*1024*3,優化前運行時間為6.9s,優化后為0.8s。

由于工作需要,需要計算顏色直方圖來提取顏色特征,但若不將顏色空間進行量化,則直方圖矢量維數過高,不便于使用。但是看了opencv API后并未發現提供了相關函數能夠在計算顏色直方圖的同時進行量化,因此這部分功能只能自己實現。下面分為兩個部分進行介紹:

一、顏色空間量化表

由于RGB模型不夠直觀,不符合人類視覺習慣,因此在進行顏色特征提取前,需要將照片從RGB顏色模型轉換為更符合人類視覺的HSV模型。在提取顏色特征時,最常用的方法之一為顏色直方圖法,但一張圖片中出現的顏色一般特別多,導致直方圖矢量的維數較高,因此需要對HSV空間進行量化。根據人眼對顏色的感知特性,采用較為常用的量化方法,即按照如下對應關系進行量化:

python下對hsv顏色空間進行量化操作

基于上述量化表,將各顏色分量按照下述公式合成為72維一維矢量:python下對hsv顏色空間進行量化操作

二、量化代碼

代碼使用純python寫成,效率偏低,處理388*500像素的照片用時1.45秒。在quantilize函數中,未使用if-else判斷語句,因此至少節省了1/3的時間。但這個速度顯然是無法令人滿意的,用C++效率應該會更高點。如果有人有更好的想法,歡迎在下方評論交流。

#-*-coding:utf-8-*-import cv2import numpy as npfrom datetime import datetimefrom matplotlib import pyplot as pltdef colors(imagepath): img = cv2.imread(imagepath) hsv = cv2.cvtColor(img, cv2.COLOR_RGB2HSV) nhsv = np.zeros(hsv.shape[:2], dtype=np.uint8) t2 = datetime.now() for i in range(hsv.shape[0]): for j in range(hsv.shape[1]): nhsv[i][j] = quantilize(hsv[i][j]) print datetime.now() - t2 hist = cv2.calcHist([nhsv], [0], None, [72], [0,71]) # 40x faster than np.histogramfaster than np.histogram plt.plot(hist,color = ’r’) plt.xlim([0, 72]) plt.show()def quantilize(value): ’’’hsv直方圖量化 value : [21, 144, 23] h, s, v opencv中,h-[0,180], s-[0,255], v-[0,255] ’’’ # value[0] = value[0] * 2 hlist = [20, 40, 75, 155, 190, 270, 290, 316, 360] svlist = [21, 178, 255] for i in range(len(hlist)): if value[0] <= hlist[i]: h = i % 8 break for i in range(len(svlist)): if value[1] <= svlist[i]: s = i break for i in range(len(svlist)): if value[2] <= svlist[i]: v = i break return 9 * h + 3 * s + v

以上,歡迎批評交流~

三、更新

#-*-coding:utf-8-*-import cv2import numpy as npfrom datetime import datetimefrom matplotlib import pyplot as plthlist = [20, 40, 75, 155, 190, 270, 290, 316, 360]svlist = [21, 178, 255]def quantilize(h, s, v): ’’’hsv直方圖量化’’’ # value : [21, 144, 23] h, s, v h = h * 2 for i in range(len(hlist)): if h <= hlist[i]: h = i % 8 break for i in range(len(svlist)): if s <= svlist[i]: s = i break for i in range(len(svlist)): if v <= svlist[i]: v = i break return 9 * h + 3 * s + vquantilize_ufunc = np.frompyfunc(quantilize, 3, 1) # 自定義ufunc函數,即將quantilize函數轉化為ufunc函數,其輸入參數為3個,輸出參數為1個。def colors(img): hsv = cv2.cvtColor(img, cv2.COLOR_RGB2HSV) nhsv = quantilize_ufunc(hsv[:,:,0], hsv[:,:,1], hsv[:,:,2]).astype(np.uint8) # 由于frompyfunc函數返回結果為對象,所以需要轉換類型 hist = cv2.calcHist([nhsv], [0], None, [72], [0,71]) # 40x faster than np.histogram hist = hist.reshape(1, hist.shape[0]).astype(np.int32).tolist()[0] return histif __name__ == ’__main__’: img_path = path + ’test.jpg’ img = cv2.imread(img_path) colors(img)

結果

[0, 11, 31490, 100, 3, 32685, 0, 28, 313, 0, 0, 3268, 31, 0, 558364, 6, 1, 441, 0, 0, 2301, 92, 0, 34056, 0, 1, 396, 0, 0, 2682, 84, 5, 712, 0, 137, 55, 0, 0, 1215, 20, 2, 224, 0, 3, 0, 0, 0, 13838, 56, 0, 23474, 63, 23, 1, 0, 0, 4764, 0, 0, 2335, 0, 25, 27, 0, 0, 2302, 5, 0, 1676, 1, 59, 389]

以上這篇python下對hsv顏色空間進行量化操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
免费视频亚洲| 亚洲天堂一区二区| 国产精品毛片| 激情91久久| 国产综合色区在线观看| 福利一区二区三区视频在线观看| 久久99青青| 精品国产一区二区三区噜噜噜| 免费日韩成人| 成人在线视频中文字幕| 91中文字幕精品永久在线| 国产一区二区色噜噜| 日韩大片在线播放| 亚洲v在线看| 99日韩精品| 中文字幕中文字幕精品| 国产日韩欧美| 精品国产欧美日韩| 久久中文亚洲字幕| 视频一区欧美精品| 中文一区一区三区免费在线观| 中文字幕日韩亚洲| 欧美日韩一区二区三区不卡视频 | 麻豆传媒一区二区三区| 精品视频自拍| 激情丁香综合| 免费久久精品视频| 国产精品丝袜在线播放| 国产传媒在线观看| 欧美精品一区二区三区精品| 亚洲毛片视频| 美女高潮久久久| 亚洲第一区色| 亚洲午夜久久| 久久久久观看| 中文另类视频| 亚洲乱码久久| 成人高清一区| 日韩中文字幕1| 国产精品115| 亚洲一级特黄| 国产日韩亚洲| 久久裸体视频| 日本视频一区二区| 日韩在线第七页| 麻豆成人在线| 国产精品成人一区二区网站软件| 久久激情中文| 亚洲最大av| 91日韩欧美| 日欧美一区二区| 日韩一区亚洲二区| 日韩激情综合| 少妇精品导航| 国产精品久久久久久久久久齐齐| 久久精品影视| 蜜臀av性久久久久蜜臀aⅴ四虎 | 日韩精品一二三四| 久久精品国产成人一区二区三区| 欧美午夜不卡影院在线观看完整版免费| 玖玖玖国产精品| 欧美韩一区二区| 尤物在线精品| 另类小说一区二区三区| 在线亚洲成人| 精品久久一区| 日韩高清中文字幕一区| 亚洲天堂黄色| 国产精品2023| 日韩专区一卡二卡| 欧美sss在线视频| 国产极品一区| 欧美一级专区| 色天使综合视频| 国产毛片精品| 欧美成人午夜| 精品美女在线视频| 日本不卡一区二区三区| 久久婷婷一区| 麻豆视频一区二区| 日韩精品久久久久久久软件91| 欧美不卡高清| 日本在线高清| 国产精品蜜月aⅴ在线| 国产视频一区欧美| av高清一区| 精品久久国产一区| 日韩国产一二三区| 日韩在线a电影| 欧美日韩激情| 狠狠久久伊人| 欧美一区二区三区久久精品| 99视频+国产日韩欧美| 91tv亚洲精品香蕉国产一区| 精品一区二区三区中文字幕视频| 日韩一区精品| 性色av一区二区怡红| 女人av一区| 女生影院久久| 国产成人久久精品麻豆二区 | 中文字幕在线视频网站| 欧美日韩国产一区二区在线观看| 伊人久久成人| 99久久久久久中文字幕一区| 国产一区二区三区天码| 国产精品地址| 国产精品黄色| 国产精品99久久免费观看| 91精品麻豆| 婷婷亚洲成人| 日本亚洲最大的色成网站www| 日韩午夜av在线| 99视频在线精品国自产拍免费观看| 亚洲福利一区| 欧美99久久| 一区二区三区视频免费观看| 久久精品亚洲人成影院 | 日本精品另类| 日韩极品在线观看| 日本一区二区三区中文字幕| 亚洲精选久久| 亚洲综合五月| 丝袜国产日韩另类美女| 国产综合色产| 狠狠爱www人成狠狠爱综合网| 色黄视频在线观看| 国产中文字幕一区二区三区| 久久精品欧洲| 九九久久国产| av最新在线| 日韩一区三区| 久久精品国产亚洲夜色av网站| 日韩高清成人| 一区二区三区视频免费观看| 在线成人直播| 美国欧美日韩国产在线播放| 深夜日韩欧美| 国产精品任我爽爆在线播放| 麻豆中文一区二区| 国产精品福利在线观看播放| 国产日韩欧美三级| 麻豆国产精品一区二区三区| 欧美aa在线视频| 精品国产乱码| 日韩国产一区二区三区| 国产91久久精品一区二区| 女人天堂亚洲aⅴ在线观看| 亚洲一区亚洲| 少妇精品久久久一区二区三区| 日韩av不卡一区二区| 国产高清精品二区| 国精品产品一区| 欧美1区免费| 视频一区中文字幕| 国产日产一区| 久久99久久久精品欧美| 不卡专区在线| 婷婷亚洲综合| 日韩在线成人| 日韩在线视频一区二区三区| 国产精品高潮呻吟久久久久| av在线日韩| 蜜臀av性久久久久蜜臀aⅴ四虎 | 水蜜桃精品av一区二区| 美女少妇全过程你懂的久久| 亚洲无线观看| 久久精品天堂| 欧美日韩精品一本二本三本 | 一区二区精彩视频| 久久亚洲道色| 不卡在线一区二区| 欧美日本二区| 四虎884aa成人精品最新| 一本一道久久a久久| 久久一区视频| 日韩午夜在线| 国产欧美三级| 久久精品亚洲欧美日韩精品中文字幕| 一二三区精品| 欧美黄色一区| 欧美午夜不卡| 免费在线日韩av| 亚洲一区日韩| 精品亚洲自拍| 99在线精品视频在线观看| 国产欧美69| 一区在线视频观看| 麻豆国产精品| 美女精品一区| 国产一区2区| 亚洲精品女人| 日本精品在线中文字幕| 97成人在线| 国产一区日韩一区| 91久久精品无嫩草影院| 成人看片网站| 欧美精品三级在线| 黄色精品网站| 国产一区2区在线观看| 五月国产精品|