Palette – javascript 獲取圖片主顏色

    找到圖像中的主色。

    Palette 可以幫助你找到圖片中的主色。

    V2ex 介紹:https://www.v2ex.com/amp/t/503218

    Github:https://github.com/Luminqi/Palette

    Demo:https://color.luminqi.com/

    Github 文件本站下載:

    Palette-master.zip

    提取碼:無(wú)
    解壓碼:無(wú)
    Palette - javascript 獲取圖片主顏色

    如何使用?

    Palette.from可以接受元素或路徑

    Palette.from('/path/to/image').getPalette().then(colors => {
      // your code
    })
    

    const img = document.getElementById('img')
    Palette.from(img).getPalette().then(colors => {
      // your code
    })
    

    耗時(shí)的計(jì)算過(guò)程在WebWorker中運(yùn)行。

    這是什么想法?

    • 它將首先開(kāi)始欠采樣以減少圖像像素。
    • 計(jì)算每個(gè)像素的色調(diào),并按色調(diào)對(duì)像素進(jìn)行排序。
    • 將具有相似色調(diào)的像素分組。
    • 如果組中的像素很少或者它們的平均顏色太近,則合并這些組。

    原理是遍歷所有的像素點(diǎn),然后找到最多出現(xiàn)的幾個(gè)像素嗎?

    首先像素的 rgb 值有 256*256*256 種可能,所以如果直接遍歷然后統(tǒng)計(jì)相同的 rgb 值是不靠譜的。

    這里其實(shí)會(huì)涉及到色彩量化(color quantization)。比較常見(jiàn)的算法有 Median cut, Octree, KMeans。

    我并沒(méi)有采用常規(guī)的方案,我的想法是如果能先把各個(gè)像素按照其顏色相近度排序,這樣相似的顏色就會(huì)靠在一起,形成一條連續(xù)的色帶。那么剩余的工作就很簡(jiǎn)單了,就是把這條色帶切成一塊一塊,每一塊代表一種顏色,每一塊的顏色是它里面所有像素 rgb 值的平均值。比較可惜的是其實(shí)并不能完全對(duì)顏色排序,這里我采用色調(diào)(hue)進(jìn)行排序并不完美。

    你提出的算法我也想過(guò),我覺(jué)得可以先對(duì)每個(gè)像素的 r 值,g 值,b 值向右位移(>>)3 位(或者更多),這樣可以減少出現(xiàn)不同 rgb 值的概率。然后用一個(gè) hash map 統(tǒng)計(jì)相同的 rgb 值。

    給TA贊賞
    共{{data.count}}人
    人已贊賞
    ??
    Npcink上的部份代碼及教程來(lái)源于互聯(lián)網(wǎng),僅供網(wǎng)友學(xué)習(xí)交流,若您喜歡本文可附上原文鏈接隨意轉(zhuǎn)載。
    無(wú)意侵害您的權(quán)益,請(qǐng)發(fā)送郵件至 1355471563#qq.com 或點(diǎn)擊右側(cè) 私信:Muze 反饋,我們將盡快處理。
    ?
    購(gòu)物車(chē)
    優(yōu)惠劵
    搜索
    主站蜘蛛池模板: 精品国产一区二区三区色欲| 精品国产天堂综合一区在线| 无码人妻久久久一区二区三区| 波多野结衣中文一区| 国产一区二区三区免费在线观看 | 91视频国产一区| 亚洲码欧美码一区二区三区| 狠狠色成人一区二区三区| 国产免费一区二区三区| 色一乱一伦一图一区二区精品 | 岛国精品一区免费视频在线观看| 精品深夜AV无码一区二区| 日本一区二区三区中文字幕| 国模一区二区三区| 中文字幕精品一区二区2021年 | 国产麻豆剧果冻传媒一区| 精品国产一区二区三区麻豆 | 中文字幕日韩人妻不卡一区 | 国产成人一区二区三中文| 麻豆精品久久久一区二区| 国产精品视频第一区二区三区| 亚洲国产成人久久一区久久| 一区二区三区在线|日本| 福利视频一区二区牛牛| 亚洲性日韩精品国产一区二区| 国产精品福利一区| V一区无码内射国产| 制服丝袜一区二区三区| 无码视频一区二区三区在线观看| 国产一区二区视频在线播放| 亚洲综合国产一区二区三区| 无码人妻品一区二区三区精99| 狠狠色婷婷久久一区二区| 人妻av无码一区二区三区| 无码播放一区二区三区| 视频精品一区二区三区| 国产av福利一区二区三巨| 中文字幕一区二区在线播放| 91精品福利一区二区三区野战| 亚洲国产AV无码一区二区三区 | 国产精品久久一区二区三区|