最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python通過(guò)PIL獲取圖片主要顏色并和顏色庫(kù)進(jìn)行對(duì)比的方法

 更新時(shí)間:2015年03月19日 16:56:06   作者:liuli  
這篇文章主要介紹了Python通過(guò)PIL獲取圖片主要顏色并和顏色庫(kù)進(jìn)行對(duì)比的方法,實(shí)例分析了Python通過(guò)PIL模塊操作圖片的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下

本文實(shí)例講述了Python通過(guò)PIL獲取圖片主要顏色并和顏色庫(kù)進(jìn)行對(duì)比的方法。分享給大家供大家參考。具體分析如下:

這段代碼主要用來(lái)從圖片提取其主要顏色,類似Goolge和Baidu的圖片搜索時(shí)可以指定按照顏色搜索,所以我們先需要將每張圖片的主要顏色提取出來(lái),然后將顏色劃分到與其最接近的顏色段上,然后就可以按照顏色搜索了。

在使用google或者baidu搜圖的時(shí)候會(huì)發(fā)現(xiàn)有一個(gè)圖片顏色選項(xiàng),感覺(jué)非常有意思,有人可能會(huì)想這肯定是人為的去劃分的,呵呵,有這種可能,但是估計(jì)人會(huì)累死,開(kāi)個(gè)玩笑,當(dāng)然是通過(guò)機(jī)器識(shí)別的,海量的圖片只有機(jī)器識(shí)別才能做到。

那用python能不能實(shí)現(xiàn)這種功能呢?答案是:能

利用python的PIL模塊的強(qiáng)大的圖像處理功能就可以做到,下面上代碼:

復(fù)制代碼 代碼如下:
import colorsys
def get_dominant_color(image):
#顏色模式轉(zhuǎn)換,以便輸出rgb顏色值
    image = image.convert('RGBA')
#生成縮略圖,減少計(jì)算量,減小cpu壓力
    image.thumbnail((200, 200))
    max_score = None
    dominant_color = None
    for count, (r, g, b, a) in image.getcolors(image.size[0] * image.size[1]):
        # 跳過(guò)純黑色
        if a == 0:
            continue
        saturation = colorsys.rgb_to_hsv(r / 255.0, g / 255.0, b / 255.0)[1]
        y = min(abs(r * 2104 + g * 4130 + b * 802 + 4096 + 131072) >> 13, 235)
        y = (y - 16.0) / (235 - 16)
        # 忽略高亮色
        if y > 0.9:
            continue
        # Calculate the score, preferring highly saturated colors.
        # Add 0.1 to the saturation so we don't completely ignore grayscale
        # colors by multiplying the count by zero, but still give them a low
        # weight.
        score = (saturation + 0.1) * count
        if score > max_score:
            max_score = score
            dominant_color = (r, g, b)
    return dominant_color

使用方法:

from PIL import Image
print get_dominant_color(Image.open('logo.jpg'))

這樣就會(huì)返回一個(gè)rgb顏色,但是這個(gè)值是很精確的范圍,那我們?nèi)绾螌?shí)現(xiàn)百度圖片那樣的色域呢??

其實(shí)方法很簡(jiǎn)單,r/g/b都是0-255的值,我們只要把這三個(gè)值分別劃分相等的區(qū)間,然后組合,取近似值。例如:劃分為0-127,和128-255,然后自由組合,可以出現(xiàn)八種組合,然后從中挑出比較有代表性的顏色即可。

當(dāng)然我只是舉一個(gè)例子,你也可以劃分的更細(xì),那樣顯示的顏色就會(huì)更準(zhǔn)確~~大家趕快試試吧

希望本文所述對(duì)大家的python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • Python強(qiáng)大的自省機(jī)制詳解

    Python強(qiáng)大的自省機(jī)制詳解

    這篇文章主要為大家介紹了Python強(qiáng)大的自省機(jī)制,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2021-11-11
  • Scrapy框架中的Pipeline使用詳解

    Scrapy框架中的Pipeline使用詳解

    這篇文章主要介紹了Scrapy框架中的Pipeline使用詳解,Scrapy 中的 Pipeline 為我們提供了處理數(shù)據(jù)的功能,在實(shí)際開(kāi)發(fā)中我們經(jīng)常使用它來(lái)清洗/驗(yàn)證數(shù)據(jù)、去重和數(shù)據(jù)保存,需要的朋友可以參考下
    2023-10-10
  • python實(shí)現(xiàn)nao機(jī)器人手臂動(dòng)作控制

    python實(shí)現(xiàn)nao機(jī)器人手臂動(dòng)作控制

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)nao機(jī)器人手臂動(dòng)作控制,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-04-04
  • django使用admin站點(diǎn)上傳圖片的實(shí)例

    django使用admin站點(diǎn)上傳圖片的實(shí)例

    今天小編就為大家分享一篇django使用admin站點(diǎn)上傳圖片的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-07-07
  • Pandas出現(xiàn)KeyError的問(wèn)題解決及分析

    Pandas出現(xiàn)KeyError的問(wèn)題解決及分析

    本文主要介紹了Pandas出現(xiàn)KeyError的問(wèn)題解決及分析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • 詳解Ubuntu環(huán)境下部署Django+uwsgi+nginx總結(jié)

    詳解Ubuntu環(huán)境下部署Django+uwsgi+nginx總結(jié)

    這篇文章主要介紹了Ubuntu環(huán)境下部署Django+uwsgi+nginx總結(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • 修改Python的pyxmpp2中的主循環(huán)使其提高性能

    修改Python的pyxmpp2中的主循環(huán)使其提高性能

    這篇文章主要介紹了修改Python的pyxmpp2中的主循環(huán)使其提高性能,pyxmpp2是Python中使用需XMPP協(xié)議的一個(gè)常用工具,要的朋友可以參考下
    2015-04-04
  • 解決python列表list中的截取問(wèn)題

    解決python列表list中的截取問(wèn)題

    這篇文章主要介紹了解決python列表list中的截取問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • python代碼有一行標(biāo)黃問(wèn)題的解決方案

    python代碼有一行標(biāo)黃問(wèn)題的解決方案

    這篇文章主要介紹了python代碼有一行標(biāo)黃問(wèn)題的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • Python3.4實(shí)現(xiàn)從HTTP代理網(wǎng)站批量獲取代理并篩選的方法示例

    Python3.4實(shí)現(xiàn)從HTTP代理網(wǎng)站批量獲取代理并篩選的方法示例

    這篇文章主要介紹了Python3.4實(shí)現(xiàn)從HTTP代理網(wǎng)站批量獲取代理并篩選的方法,涉及Python網(wǎng)絡(luò)連接、讀取、判斷等相關(guān)操作技巧,需要的朋友可以參考下
    2017-09-09

最新評(píng)論

大石桥市| 安西县| 荥经县| 霍山县| 苗栗市| 汉沽区| 体育| 平泉县| 敖汉旗| 河东区| 富川| 昭苏县| 房产| 高要市| 吉安市| 诸城市| 洪湖市| 青岛市| 六安市| 四子王旗| 托里县| 景宁| 信宜市| 沙河市| 宁南县| 芜湖市| 曲阳县| 湖南省| 广丰县| 商水县| 留坝县| 东兰县| 双江| 黑河市| 四会市| 横山县| 揭东县| 冀州市| 黄浦区| 沂南县| 西峡县|