圖像顏色空間對比(Opencv)

1. 顏色轉換

import cv2
import matplotlib.pyplot as plotimg = cv2.imread("tmp.jpg")
img_r = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
img_g = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
img_h = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
img_l = cv2.cvtColor(img, cv2.COLOR_BGR2LAB)plot.figure(figsize=(15,3));
plot.subplot(1,5,1)
plot.title('BGR image')
plot.imshow(img)
plot.subplot(1,5,2)
plot.title('BGR to RGB')
plot.imshow(img_r)
plot.subplot(1,5,3)
plot.title('BGR to Gray')
plot.imshow(img_g)
plot.subplot(1,5,4)
plot.title('BGR to HSV')
plot.imshow(img_h)
plot.subplot(1,5,3)
plot.title('BGR to LAB')
plot.imshow(img_l)plot.show()

在這里插入圖片描述

2. 各顏色空間對比

顏色空間通道數通道含義數據范圍主要應用場景優缺點
RGB3Red(紅)、Green(綠)、Blue(藍)各通道值范圍:0-255圖像顯示、基礎圖像處理? 直觀易用
? 對光照變化敏感
BGR3Blue(藍)、Green(綠)、Red(紅)各通道值范圍:0-255OpenCV默認圖像格式、視頻處理? OpenCV原生支持
? 與常規RGB順序相反
Gray1亮度(Luminance)單通道值范圍:0-255人臉檢測、文字識別、簡化計算? 計算效率高
? 丟失顏色信息
HSV3Hue(色相)、Saturation(飽和度)、Value(明度)H: 0-180
S/V: 0-255
顏色檢測、色彩分割、光照魯棒處理? 顏色分離效果好
? H通道是循環角度值(0°=180°)
Lab3L(亮度)、a(紅綠軸)、b(黃藍軸)L: 0-255
a/b: -128~127
顏色一致性校正、復雜顏色分割? 接近人類視覺感知
? 計算復雜度較高

3. 應用說明

3.1 RGB vs BGR

  • OpenCV默認使用BGR格式,與其他庫(如Matplotlib)交互時需轉換
  • 轉換方法:cv2.cvtColor(img, cv2.COLOR_BGR2RGB)

3.2 HSV

  • H(色相)在OpenCV中被壓縮到0-180范圍(常規為0-360°)
  • 常用于顏色過濾(如檢測紅色物體)

3.3 Lab

  • L通道表示亮度,與設備無關
  • a通道:綠色→紅色(-128→127)
  • b通道:藍色→黃色(-128→127)
  • 在Photoshop等專業工具中廣泛使用

3.4 Gray

  • 轉換公式:Gray = 0.299R + 0.587G + 0.114*B(加權平均法)

3.5 典型使用場景示例:

  • 人臉檢測:優先使用灰度圖(減少計算量)
  • 顏色追蹤:HSV空間定義顏色范圍(如cv2.inRange())
  • 圖像增強:Lab空間調整亮度(L通道)不影響顏色
  • 跨設備顏色一致性:Lab空間進行顏色校正

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/75418.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/75418.shtml
英文地址,請注明出處:http://en.pswp.cn/web/75418.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

JDBC驅動autosave缺陷的修復與配置指南

opengauss-jdbc-6.0.0.jar和opengauss-jdbc-6.0.0-og.jar版本修復了:autosavealways時,事務嵌套太深,導致棧溢出問題。如果使用的版本低于opengauss-jdbc-6.0.0版本,需要通過替換jdbc驅動和修改url參數來解決autosave缺陷。以下是…

K8S-證書過期更新

K8S證書過期問題 K8S證書過期處理方法 Unable to connect to the server: x509: certificate has expired or is not yet valid 1、查看證書有效期: # kubeadm certs check-expiration2、備份證書 # cp -rp /etc/kubernetes /etc/kubernetes.bak3、直接重建證書 …

2025 年網絡安全終極指南

我們生活在一個科技已成為日常生活不可分割的一部分的時代。對數字世界的依賴性日益增強的也帶來了更大的網絡風險。 網絡安全并不是IT專家的專屬特權,而是所有用戶的共同責任。通過簡單的行動,我們可以保護我們的數據、隱私和財務,降低成為…

Python的那些事第四十九篇:基于Python的智能客服系統設計與實現

基于Python的智能客服系統設計與實現 摘要 隨著人工智能技術的飛速發展,智能客服系統逐漸成為企業提升客戶服務質量和效率的關鍵工具。本文詳細介紹了基于Python的智能客服系統的設計與實現方案,涵蓋了系統架構、核心功能、技術選型及優化建議,旨在為企業構建高效、智能的客…

第Y1周:調用YOLOv5官方權重進行檢測

🍨 本文為🔗365天深度學習訓練營 中的學習記錄博客🍖 原作者:K同學啊 文章目錄 1、前言2、下載源碼3、運行代碼 1、前言 YOLOv5分為YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x四個版本,這里以YOLOv5s為例。 2、下載源碼 安…

Python小程序 - 文件處理3:正則表達式

正則表達式:文本年鑒表。遺留的問題很多。。。用AI再想想 需求:讀入txt文件,過濾文件有關年記錄 0)讀入txt文件 1)以“。”,中文句號,為界區分一句,最小統計單位 2)年格…

【antd + vue】Tree 樹形控件:默認展開所有樹節點 、點擊文字可以“選中/取消選中”節點

一、defaultExpandAll 默認展開所有樹節點 1、需求:默認展開所有樹節點 2、問題: v-if"data.length"判斷的層級不夠,只判斷到了物理那一層,所以只展開到那一層。 3、原因分析: 默認展開所有樹節點, 如果是…

Notepad++安裝Markdown實時預覽插件

具體操作 打開notepad -> 插件 -> 插件管理 -> 可用 -> “Markdown Panel” -> 安裝,安裝完成后工具欄點擊"Markdown Panel"按鈕。 注意:由于網絡等原因可能安裝失敗 導致工具欄沒出現""Markdown Panel"按鈕&am…

OpenHarmony如何編譯安裝系統應用(以settings設置為例)

開發環境 1.OpenHarmony 2.DevEco Studio 3 .Full Sdk 實現步驟 1.獲取設置應用源碼 https://gitee.com/openharmony/applications_settings/tree/OpenHarmony-v5.0.0-Release/ 2,使用 DevEco Studio 和 Full SDK對系統應用進行簽名,默認工程是未配置簽名的狀態,所構建…

【ESP32-microros(vscode-Platformio)】

一、步驟 1、目前支持ESP32 2、同一個局域網 3、上位機要安裝代理(電腦或者linux設備) 4、可直接通過USB下載,也可以使用官方燒錄工具,具體的分區表地址要從USB燒錄的時候日志查看,一共四個文件,第三個…

.NET MAUI教程2-利用.NET CommunityToolkit.Maui框架彈Toast

在上一篇博文的基礎上繼續操作: .NET MAUI教程1-入門并發布apk包安裝到真機-CSDN博客 本文內容參考: Toast - .NET MAUI Community Toolkit - Community Toolkits for .NET | Microsoft Learn 1 在NuGet包管理器中安裝 MAUI Community Toolkit&…

軟件工程(應試版)圖形工具總結(二)

遇到的問題,都有解決方案,希望我的博客能為你提供一點幫助。 教材參考《軟件工程導論(第六版)》 七、 層次圖(H圖)與HIPO圖 1、概述 1.1、層次圖(Hierarchy Chart / H圖) ?核心定義 ?目的:描述軟件系統的層次結構,體現模塊的從屬關系。?適用階段:自頂向下設計…

java基礎 流(Stream)

Stream Stream 的核心概念核心特點 Stream 的操作分類中間操作(Intermediate Operations)終止操作(Terminal Operations) Stream 的流分類順序流(Sequential Stream)并行流(Parallel Stream&…

EAL4+ vs EAL7:高安全場景下的等級選擇策略

在數字化浪潮席卷全球的當下,信息安全已然成為各行各業穩健發展的基石。特別是在高安全需求場景中,選擇契合的安全等級成為保障信息資產安全的關鍵。EAL(Evaluation Assurance Level)評估保障級作為衡量信息技術產品安全保障能力的…

【Java集合】TreeSet、TreeMap源碼解讀

參考筆記:java TreeSet 和 TreeMap 源碼解讀-CSDN博客 目錄 1.前言 2.紅黑樹 2.1 紅黑樹的五大性質 2.2 節點顏色的初始設置 2.3 插入新節后的調整 2.4 刪除結構后的調整 2.5 排序規則 2.6 設計紅黑樹的原因 3.TreeSet簡介、底層實現 3.1 TreeSet簡介 3.…

【C++初學】C++核心編程技術詳解(二):類與繼承

函數提高 3.1 函數默認參數 函數的形參可以有默認值&#xff0c;調用時可以省略這些參數。 示例代碼&#xff1a; int func(int a, int b 10, int c 10) {return a b c; }int main() {cout << "ret " << func(20, 20) << endl;cout <<…

Next.js + Droplet:高并發視頻內容平臺部署與優化擴展實戰

在構建在線服務時&#xff0c;無論你是開發者還是企業技術負責人&#xff0c;擴展性和穩定性始終是繞不開的核心挑戰。尤其在涉及高并發訪問、大量數據傳輸和持續內容分發的場景中&#xff0c;系統架構的設計直接決定了用戶體驗與業務成效。 本文將以視頻點播&#xff08;Video…

Python爬蟲第13節-解析庫pyquery 的使用

目錄 前言 一、pyquery 初始化 1.1 字符串初始化 1.2 URL 初始化 1.3 文件初始化 二、基本 CSS 選擇器 三、pyquery 查找節點 3.1 子節點 3.2 父節點 3.3 兄弟節點 四、遍歷 五、獲取信息 5.1 獲取屬性 5.2 獲取文本 六、節點操作 6.1 addClass 和 removeClass…

【Hadoop入門】Hadoop生態之Pig簡介

1 什么是Pig&#xff1f; 在大數據分析領域&#xff0c;Apache Pig是一個不可忽視的重要工具。Pig是Apache Hadoop生態系統中的一個高級數據分析平臺&#xff0c;它提供了一種稱為Pig Latin的腳本語言&#xff0c;用于簡化大規模數據集的并行處理。Pig的核心思想是將復雜的數據…

python 語言 設計模式

python 語言 設計模式 設計模式是指在軟件開發過程中,針對反復出現的問題所總結歸納出的通用解決方案。以下是一些常見的Python語言設計模式: 目錄 python 語言 設計模式創建型模式結構型模式行為型模式創建型模式 單例模式 定義:保證一個類只有一個實例,并提供一個全局訪…