在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

OpenCV中色彩空間的轉換函數

深度學習自然語言處理 ? 來源:深度學習自然語言處理 ? 作者:云時之間 ? 2020-11-02 15:23 ? 次閱讀

在這一篇文章中,我們將會學習使用一下OpenCV中色彩空間的轉換函數,我們這里說的色彩空間是說的使用多種顏色(通常指三種以上),來表示顏色的方法,像是我們平時所說的RGB,HSV,YUV,YCRCB,都是色彩空間模型。OpenCV也很方便的封裝了很多的色彩空間函數。下面我們一起來實踐一下(以下所有試驗都根據下圖完成,我截取的Windows自帶的壁紙^_^)


一:RGB

RGB我們很熟悉,一幅圖像是由三個獨立的紅,藍,綠通道構成,每個值代表每個像素的每個分量的度量值,如果值越高也就越亮。

因為人眼也是由三種感光細胞構成,因此RGB我們是最熟悉的,比如在電競的時候,使用RGB燈可以刺激人的感官,提升成績。

上圖也就是RGB的實現方式。


二:灰度

灰度圖像我們的應用也是非常廣泛,包括我們后續的如果做視頻追蹤也都是將彩色視頻逐幀轉換為灰度圖像再去定位,不過這是后話。

彩色轉換為灰度圖像的計算方法如下:

每個像素值只表示灰度信息這一單一信息

RGB[A]準換成灰度:Y=0.299*R+0.587*G+0.114*B

灰度轉換為RGB[A]:R=Y,G=Y,B=Y,A=max(ChannelRange)

在OpenCV中我們可以使用cvtColor函數來實現轉換

結果如下:


三:HSV

HSV顏色空間輸入面向色度的顏色坐標系統的一種。這種類型的顏色模型接近人類顏色感知的仿真模型。

HSV的三個通道表示色度(H給出的顏色光譜構成的一種度量),飽和度(S給出主波長中的純光比例,這表明一種顏色距離相同亮度灰度的程度)和純度(V給出相對于白色光照強度的亮度),對應于直覺上的色彩、明暗和色調。HSV廣泛應用于色彩的比較.

關于HSV的計算可以參考以下的公式:

這里我們用OpenCV實現:

得到的結果如下:

這樣來看,似乎什么信息都沒有,這里要注意一點,因為在代碼中顯示函數使用的是imshow(),這個函數是以RGB來顯示的,因此我們使用HSV肯定是不正確的,如果想顯示正確,必須要將其轉換成RGB空間,這個具體以后再詳細說一下。


四:YCRCB

該空間廣泛用于視頻和圖像壓縮,不能算作純粹的色彩空間,它是RGB顏色空間的一種解碼方式Y通道表示亮度,而Cr和Cb表示紅色差值(在RGB空間中R通道和Y的差值)和藍色差值(在RGB空間中B通道和Y的差值)各自的色度分量。

其變化的計算如下:

在OpenCV中,我們使用:

得到的結果如下:

總體來看,還是可以看得出相對于其他的色彩模型,還是能夠保留一定的色彩,但是因為壓縮的緣故,色彩空間還是差很多。

完整的代碼如下,希望大家可以多多動手,親身嘗試一下。

import cv2 as cvimport numpy as np#色彩空間轉換函數:RGB,HSV,YUV重要def color_space_demo(image): gray = cv.cvtColor(image,cv.COLOR_BGR2GRAY) cv.imshow("gray",gray) hsv = cv.cvtColor(image,cv.COLOR_BGR2HSV) cv.imshow("HSV",hsv) yuv = cv.cvtColor(image,cv.COLOR_BGR2YUV) cv.imshow("YUV",yuv) Ycrcb = cv.cvtColor(image,cv.COLOR_BGR2YCrCb) cv.imshow("YCRCB",Ycrcb) #imread函數用來讀取圖片src = cv.imread("D:/1.png")#namedWindow函數用來指定輸出圖片的尺寸和窗口大小,autosize是自動大小cv.namedWindow("input image",cv.WINDOW_AUTOSIZE)#imshow函數用來顯示圖像cv.imshow("input image",src)color_space_demo(src)#等待鍵盤觸發,否則一直在此窗口等待cv.waitKey(0)#結束所有的窗口cv.destroyAllWindows()

責任編輯:xj

原文標題:【CV學習筆記】色彩空間

文章出處:【微信公眾號:深度學習自然語言處理】歡迎添加關注!文章轉載請注明出處。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • CV
    CV
    +關注

    關注

    0

    文章

    53

    瀏覽量

    16883
  • OpenCV
    +關注

    關注

    31

    文章

    635

    瀏覽量

    41445
  • HSV
    HSV
    +關注

    關注

    0

    文章

    10

    瀏覽量

    2612

原文標題:【CV學習筆記】色彩空間

文章出處:【微信號:zenRRan,微信公眾號:深度學習自然語言處理】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    西門子TIA Portal函數FC和函數塊FB的相互轉換

    描述 本文將介紹在西門子 TIA Portal 中使用 Add-In 插件實現函數 FC 和函數塊 FB 的相互轉換的方法和步驟。 第1步: 添加 PLC 設備。 選擇西門子 CPU 1214C
    的頭像 發表于 01-15 10:07 ?205次閱讀
    西門子TIA Portal<b class='flag-5'>中</b><b class='flag-5'>函數</b>FC和<b class='flag-5'>函數</b>塊FB的相互<b class='flag-5'>轉換</b>

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

    () 函數加載圖像。 目的:為后續處理和分析準備圖像數據。 轉換色彩空間 使用 cv2.cvtColor() 進行色彩
    發表于 12-14 09:31

    RK3568 + OpenCV 會碰撞出什么火花?案例詳解:2-1 基于OpenCV的畫線實驗

    一系列 C 函數和少量 C++ 類構成,同時提供了Python、Ruby、MATLAB等語言的接口,實現了圖像處理和計算機視覺方面的很多通用算法。 OpenCV具有以下特點: 不管是科學研究,還是商業
    發表于 12-03 14:09

    RTOS鉤子函數的用途及用法

    在很多操作系統,都存在這樣一類API函數接口:HOOK函數(也叫鉤子函數)。
    的頭像 發表于 10-23 16:25 ?326次閱讀
    RTOS<b class='flag-5'>中</b>鉤子<b class='flag-5'>函數</b>的用途及用法

    【龍芯2K0300蜂鳥板試用】5 搭建opencv開發環境

    在官方提供的buildroot根文件系統,不支持opencv庫,故需要自己增加,另外,在本地編譯的時候,需要在本地(ubuntu)上安裝對應opencv庫,這樣才能將編譯好的鏡像放到板子上跑起來
    發表于 08-27 15:08

    OpenCV圖像識別C++代碼

    安裝OpenCV庫 首先,您需要在您的計算機上安裝OpenCV庫。您可以從OpenCV官網下載預編譯的庫或從源代碼編譯。安裝完成后,確保將OpenCV的頭文件和庫文件添加到您的項目中。
    的頭像 發表于 07-16 10:42 ?2266次閱讀

    opencv-python和opencv一樣嗎

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

    opencv的主要功能有哪些

    OpenCV提供了豐富的圖像處理功能,包括圖像的讀取、顯示、保存、轉換等。此外,OpenCV還支持圖像的濾波、邊緣檢測、形態學操作、圖像金字塔等高級圖像處理技術。 特征檢測與描述:OpenC
    的頭像 發表于 07-16 10:35 ?1680次閱讀

    OpenCV攜奧比光3D相機亮相CVPR 2024

    6月17日-21日,奧比光合作伙伴OpenCV攜Orbbec 3D相機參展在美國西雅圖舉辦的CVPR 2024(即IEEE國際計算機視覺與模式識別會議),讓開發者親身體驗Orbbec 3D相機
    的頭像 發表于 06-21 09:38 ?609次閱讀

    嵌入式學習-飛凌ElfBoard ELF 1板卡 - 如何在Ubuntu編譯OpenCV

    在之前發布的文章探討了交叉編譯OpenCV并部署至嵌入式系統的方法。然而,在調試階段,我們發現在 Ubuntu 環境下將 OpenCV 編譯為 X86 架構可能更加方便和高效。 通過在主機上編譯并
    發表于 06-07 09:21

    ELF 1技術貼|如何在Ubuntu編譯OpenCV

    在之前發布的文章探討了交叉編譯OpenCV并部署至嵌入式系統的方法。然而,在調試階段,我們發現在Ubuntu環境下將OpenCV編譯為X86架構可能更加方便和高效。通過在主機上編譯并使用X86架構
    的頭像 發表于 05-31 16:41 ?1191次閱讀
    ELF 1技術貼|如何在Ubuntu<b class='flag-5'>中</b>編譯<b class='flag-5'>OpenCV</b>庫

    請問STM32_ImageProcessingLibrary中有類似于opencv的findContours函數嗎?

    STM32_ImageProcessingLibrary中有類似于opencv的findContours函數嗎?
    發表于 03-07 07:17

    如何實現PIL和OpenCV之間圖像數據的轉換呢?

    PIL圖像數據格式轉換OpenCV圖像數據格式
    的頭像 發表于 02-25 13:43 ?1265次閱讀

    SDI轉AV轉換器技術解析:轉換過程中的關鍵要素與優勢

    優勢,使得高清視頻的應用更加廣泛和便捷。 關鍵要素: 數字信號處理 :SDI轉AV轉換器在轉換過程中首先需要對SDI信號進行數字信號處理。這包括解碼、降噪、色彩空間
    的頭像 發表于 02-22 15:03 ?694次閱讀

    verilog函數和任務對比

    在verilog函數和任務均用來描述共同的代碼段,并且在模式內任意位置被調用,提高代碼效率,讓代碼更加的直觀,提高代碼可讀性。但是在實際使用的過程函數和任務也存在諸多的不同,下
    的頭像 發表于 02-12 18:43 ?906次閱讀
    主站蜘蛛池模板: 天堂bt资源www在线| 国产乱子伦| 亚洲欧美网站| 久操视频在线观看| 天天毛片| 成人18毛片| 精品国模| 欧美性色欧美a在线观看| 天堂福利视频| 日韩高清特级特黄毛片| 亚洲va久久久噜噜噜久久| 老司机亚洲精品影院在线| h视频在线观看网站| 35pao免费视频| 国产伦精品一区二区三区网站| 国产精品午夜久久| 欧美第四色| 免费黄色欧美| 欧美18性欧美黑吊| 日本一区二区三区在线观看视频| 中文字幕在线播放一区| 激情综合色五月丁香六月亚洲 | 色吧欧美| 视频黄色免费| 四虎永久网址在线观看| 婷婷色婷婷| 四虎影院精品| 久久亚洲欧美成人精品| 久久青青成人亚洲精品| 成年视频在线观看| 人人干人人干| 国产真实灌醉美女疯狂弄| 黄网在线看| 福利社看片| 性欧美高清极品猛交| 1024亚洲视频| 久久久国产精品免费看| 三级视频欧美| 成人a一级毛片免费看| 99久久99久久精品免费看子伦| 在线资源站|