RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

圖像的顏色空間及其OpenCV實(shí)現(xiàn)

新機(jī)器視覺 ? 來源:新機(jī)器視覺 ? 作者:Soumyadip Sarkar ? 2020-12-26 11:33 ? 次閱讀

對圖像的顏色空間做了一個(gè)概念性的介紹,并通過代碼的方式可視化了每種顏色空間的每個(gè)通道所表示的意義。

文章內(nèi)容包括:

什么是顏色空間?

顏色空間有哪些類別?

如何在OpenCV中實(shí)現(xiàn)?

什么是顏色空間?

顏色是一種連續(xù)的現(xiàn)象,它意味著有無數(shù)種顏色。但是,人類的眼睛和感知能力是有限的。所以,為了識(shí)別這些顏色,我們需要一種媒介或這些顏色的表示,這種顏色的表示被稱為色彩空間。在技術(shù)術(shù)語中,一個(gè)顏色模型或顏色空間是一個(gè)特定的3-D坐標(biāo)系統(tǒng)以及該系統(tǒng)中的一個(gè)子空間,其中每一種顏色都由一個(gè)單點(diǎn)表示。

有哪些顏色空間的類型?

目前主要有五種類型的顏色模型。但是,我將只寫一些常見的(RGB、HSV和HSL)。

RGB(Red Green Blue)

HSL(Hue Saturation Lightness)

HSV(Hue Saturation Value)

YUV(Luminance, blue–luminance, red–luminance)

CMYK(Cyan, Magenta, Yellow, Key)

RGB顏色空間:

RGB顏色空間是三維坐標(biāo)系中紅、綠、藍(lán)坐標(biāo)所表示的著名顏色空間之一。在更專業(yè)的術(shù)語中,RGB將顏色描述為由三個(gè)部分組成的元組。每個(gè)部分都可以取0到255之間的值,其中元組(0,0,0)表示黑色,元組(255,255,255)表示白色。元組的第0、第1和第2個(gè)部分分別表示紅、綠、藍(lán)的分量。

RGB顏色空間的Python實(shí)現(xiàn):

這里我們導(dǎo)入了必要的庫,cv2用于顏色空間轉(zhuǎn)換,NumPy用于數(shù)組操作,Matplotlib用于顯示圖像,os用于訪問圖像目錄,tqdm用于顯示加載欄。

pIYBAF_mrzuAC3dnAAB4V4n5E0c076.jpg

設(shè)置兩個(gè)空列表Z和X,分別用于存儲(chǔ)帶有各自圖像的標(biāo)簽,然后指定圖像大小和路徑目錄。在這之后,我定義了兩個(gè)函數(shù),用于返回flower類型(assign_lable)和訪問每個(gè)圖像、讀取和調(diào)整其大小(make_train_data)。

o4YBAF_mr1CAYQOqAACKoiFlu0A739.jpg

加載圖像,然后在OpenCV以BGR格式讀取圖像時(shí)將BGR顏色空間轉(zhuǎn)換為RGB顏色空間,但Maplotlib使用RGB格式來顯示圖像。這就是為什么我們需要轉(zhuǎn)換顏色空間后,讀取圖像為RGB。

然后對固定圖像進(jìn)行三份拷貝,并將每份拷貝的任何雙色通道設(shè)為零,分別用于訪問紅、綠、藍(lán)通道。如果你讓第0個(gè)顏色通道都是0那么你只會(huì)得到藍(lán)色通道。

o4YBAF_mr2SANmBMAACZqsKfmMc732.jpg

顯示圖像:

pIYBAF_mr3SAPkrQAAAvTwarCMU690.jpg

HSL顏色空間:

HSL的一般含義是色調(diào)、飽和度和明度。你可以將HSL以圓柱體的形式可視化,如圖2(a)所示。圍繞圓柱體的是不同的顏色,比如綠色、黃色、紅色等等(我們真正想要的顏色)。飽和度是指顏色的多少,而明度是指顏色有多暗或多亮。正如你所看到的,圓柱體的頂部全是白色,底部全是黑色。

圖2:HSL顏色空間

HSL顏色空間的Python實(shí)現(xiàn):

使用OpenCV函數(shù)**cvtColor()**將BGR顏色空間轉(zhuǎn)換為HSL顏色空間,在這里我們需要傳遞圖像,以及從哪個(gè)顏色空間到哪個(gè)顏色空間我們想要改變圖像。然后再復(fù)制并使兩個(gè)顏色通道為零,以便分別顯示每個(gè)顏色通道。

o4YBAF_mr4iADU2EAAB072deLNg421.jpg

現(xiàn)在顯示三個(gè)不同的顏色通道→

o4YBAF_mr5eAYXP0AAAssp18DtY928.jpg

HSV顏色空間:

HSV這個(gè)名字來自于顏色模型的三個(gè)坐標(biāo),即色相、飽和度和值。它也是一個(gè)圓柱形的顏色模型,圓柱體的半徑表示飽和度,垂直軸表示值,角度表示色調(diào)。對于觀察者,色調(diào)是占主導(dǎo)地位的,飽和度是混合到色調(diào)中的白光的數(shù)量,value是chrome的強(qiáng)度,value較低顏色變得更加類似于黑色,value越高,顏色變得更加像顏色本身。通過改變這些參數(shù),我們可以生成不同的顏色。

圖3:HSV顏色空間

HSV顏色空間的Python實(shí)現(xiàn):

使用cvtColor()函數(shù)將色彩空間轉(zhuǎn)換為HSV色彩空間。然后再復(fù)制并使兩個(gè)通道置為零,以便分別顯示每個(gè)通道。

o4YBAF_mr6mAeNm6AABankd0hj0461.jpg

單獨(dú)顯示每個(gè)顏色通道:

英文原文:https://medium.com/analytics-vidhya/image-processing-series-part1-colorspaces-836d2e3ca700

責(zé)任編輯:xj

原文標(biāo)題:圖像處理基礎(chǔ):顏色空間及其OpenCV實(shí)現(xiàn)

文章出處:【微信公眾號(hào):新機(jī)器視覺】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 圖像處理
    +關(guān)注

    關(guān)注

    27

    文章

    1289

    瀏覽量

    56722
  • OpenCV
    +關(guān)注

    關(guān)注

    31

    文章

    634

    瀏覽量

    41337
  • 顏色空間
    +關(guān)注

    關(guān)注

    0

    文章

    3

    瀏覽量

    1431

原文標(biāo)題:圖像處理基礎(chǔ):顏色空間及其OpenCV實(shí)現(xiàn)

文章出處:【微信號(hào):vision263com,微信公眾號(hào):新機(jī)器視覺】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    AI模型部署邊緣設(shè)備的奇妙之旅:如何在邊緣端部署OpenCV

    直線、圓等)的技術(shù),它通過參數(shù)空間的投票機(jī)制來實(shí)現(xiàn)。對于圓形檢測,Hough變換可以識(shí)別出滿足特定條件的圓形結(jié)構(gòu)。下面是使用 OpenCV 進(jìn)行圓形檢測的基本步驟: 首先加載需要檢測圓的圖像
    發(fā)表于 12-14 09:31

    【AI實(shí)戰(zhàn)項(xiàng)目】基于OpenCV的“顏色識(shí)別項(xiàng)目”完整操作過程

    適用于哪些場景,然后通過Python編寫代碼來實(shí)現(xiàn)這些算法,并應(yīng)用于實(shí)際項(xiàng)目中,實(shí)現(xiàn)圖像的檢測、識(shí)別、分類、定位、測量等目標(biāo)。華清遠(yuǎn)見【python+OpenCV
    的頭像 發(fā)表于 12-09 16:42 ?284次閱讀
    【AI實(shí)戰(zhàn)項(xiàng)目】基于<b class='flag-5'>OpenCV</b>的“<b class='flag-5'>顏色</b>識(shí)別項(xiàng)目”完整操作過程

    基于OpenCV的拆分和合并圖像通道實(shí)驗(yàn)案例分享_基于RK3568教學(xué)實(shí)驗(yàn)箱

    一、實(shí)驗(yàn)?zāi)康?本節(jié)視頻的目的是了解圖像通道的概念,學(xué)習(xí)OpenCV的基本操作,并掌握通過OpenCV實(shí)現(xiàn)拆分和合并圖像通道的方法。 二、實(shí)驗(yàn)
    發(fā)表于 12-03 14:27

    RK3568 + OpenCV 會(huì)碰撞出什么火花?案例詳解:2-1 基于OpenCV的畫線實(shí)驗(yàn)

    一系列 C 函數(shù)和少量 C++ 類構(gòu)成,同時(shí)提供了Python、Ruby、MATLAB等語言的接口,實(shí)現(xiàn)圖像處理和計(jì)算機(jī)視覺方面的很多通用算法。 OpenCV具有以下特點(diǎn): 不管是科學(xué)研究,還是商業(yè)
    發(fā)表于 12-03 14:09

    手寫圖像模板匹配算法在OpenCV中的實(shí)現(xiàn)

    OpenCV中的模板匹配是支持基于NCC相似度查找的,但是不是很好用,一個(gè)主要的原因是查找最大閾值,只能匹配一個(gè),自己比對閾值,又導(dǎo)致無法正確設(shè)定閾值范圍,所以問題很多。于是我重新寫了純Python版本的NCC圖像模板匹配的代碼實(shí)現(xiàn)
    的頭像 發(fā)表于 11-11 10:12 ?231次閱讀
    手寫<b class='flag-5'>圖像</b>模板匹配算法在<b class='flag-5'>OpenCV</b>中的<b class='flag-5'>實(shí)現(xiàn)</b>

    OpenCV圖像識(shí)別C++代碼

    安裝OpenCV庫 首先,您需要在您的計(jì)算機(jī)上安裝OpenCV庫。您可以從OpenCV官網(wǎng)下載預(yù)編譯的庫或從源代碼編譯。安裝完成后,確保將OpenCV的頭文件和庫文件添加到您的項(xiàng)目中。
    的頭像 發(fā)表于 07-16 10:42 ?1967次閱讀

    opencv圖像識(shí)別有什么算法

    OpenCV(Open Source Computer Vision Library)是一個(gè)開源的計(jì)算機(jī)視覺和機(jī)器學(xué)習(xí)軟件庫,提供了大量的圖像處理和計(jì)算機(jī)視覺相關(guān)的算法。以下是一些常見的OpenCV
    的頭像 發(fā)表于 07-16 10:40 ?1003次閱讀

    opencv-python和opencv一樣嗎

    不一樣。OpenCV(Open Source Computer Vision Library)是一個(gè)開源的計(jì)算機(jī)視覺和機(jī)器學(xué)習(xí)軟件庫,它提供了大量的圖像和視頻處理功能。OpenCV
    的頭像 發(fā)表于 07-16 10:38 ?1160次閱讀

    opencv的主要功能有哪些

    OpenCV(Open Source Computer Vision Library)是一個(gè)開源的計(jì)算機(jī)視覺庫,提供了大量的計(jì)算機(jī)視覺算法和工具。以下是OpenCV的主要功能: 圖像處理
    的頭像 發(fā)表于 07-16 10:35 ?1499次閱讀

    OpenCV圖像降噪算法的中值濾波與高斯濾波詳解

    圖像噪聲是指圖像中不希望出現(xiàn)的隨機(jī)亮度或顏色變化,通常會(huì)降低圖像的清晰度和可辨識(shí)度,以及會(huì)降低圖像的質(zhì)量并使
    的頭像 發(fā)表于 04-03 14:58 ?6326次閱讀
    <b class='flag-5'>OpenCV</b><b class='flag-5'>圖像</b>降噪算法的中值濾波與高斯濾波詳解

    如何實(shí)現(xiàn)PIL和OpenCV之間圖像數(shù)據(jù)的轉(zhuǎn)換呢?

    PIL圖像數(shù)據(jù)格式轉(zhuǎn)換成OpenCV圖像數(shù)據(jù)格式
    的頭像 發(fā)表于 02-25 13:43 ?1208次閱讀

    在全志H616核桃派上實(shí)現(xiàn)USB攝像頭的OpenCV顏色檢測

    在給核桃派開發(fā)板用OpenCV讀取圖像并顯示到pyqt5的窗口上并加入顏色檢測功能,嘗試將圖像中所有藍(lán)色的東西都用一個(gè)框標(biāo)記出來。顏色檢測核
    發(fā)表于 01-22 10:10

    在核桃派上實(shí)現(xiàn)USB攝像頭的OpenCV顏色檢測

    在前幾周的文章中已經(jīng)介紹過如何在核桃派上用OpenCV讀取圖像并顯示到pyqt5的窗口上,這里在上一篇文章的基礎(chǔ)上,給開發(fā)板加入顏色檢測功能,嘗試將圖像中所有藍(lán)色的東西都用一個(gè)框標(biāo)記出
    的頭像 發(fā)表于 01-20 17:50 ?934次閱讀
    在核桃派上<b class='flag-5'>實(shí)現(xiàn)</b>USB攝像頭的<b class='flag-5'>OpenCV</b><b class='flag-5'>顏色</b>檢測

    使用圖像處理庫OpenCV從攝像頭獲取數(shù)據(jù)并在PyQt5上顯示出來

    OpenCV能夠處理圖像、視頻、深度圖像等各種類型的視覺數(shù)據(jù)
    的頭像 發(fā)表于 01-05 17:32 ?2513次閱讀
    使用<b class='flag-5'>圖像</b>處理庫<b class='flag-5'>OpenCV</b>從攝像頭獲取數(shù)據(jù)并在PyQt5上顯示出來

    OpenCV4之圖像的輪廓

    圖像的輪廓是指圖像中具有相同顏色或灰度值的連續(xù)點(diǎn)的曲線。輪廓和邊緣是有聯(lián)系的,邊緣是輪廓的基礎(chǔ),輪廓是邊緣的連續(xù)集合。
    的頭像 發(fā)表于 01-02 12:24 ?589次閱讀
    RM新时代网站-首页