視覺中是一個“該用才用”的工具)
彩色圖像分析在工業(yè)視覺中是一個“該用才用”的工具。絕大多數(shù)測量和定位任務(wù)用灰度圖就能完成但當(dāng)顏色本身是檢測目標(biāo)時彩色分析就不可替代了。什么時候必須用彩色灰度圖把顏色信息壓縮成了亮度。如果兩個物體的顏色不同但亮度相近灰度圖里它們看起來一樣彩色圖才能區(qū)分。典型必須用彩色的場景線序檢測線束中紅、藍、黃線的排列順序顏色就是檢測目標(biāo)顏色分選LED 燈珠的色溫分級、塑料粒子的顏色分揀印刷品色差包裝印刷的顏色一致性檢測食品分揀水果成熟度、烘焙程度判斷標(biāo)記識別不同顏色的標(biāo)簽、標(biāo)記點區(qū)分顏色空間RGB 不是最佳選擇RGB 是最直觀的顏色表示但它有一個致命問題三個通道高度相關(guān)。光照強度一變R、G、B 三個值同時變化你很難把“顏色變化”和“亮度變化”分開。HSV 是工業(yè)視覺中最常用的顏色空間因為它把顏色信息解耦了HHue色相顏色的種類紅、綠、藍0-360°SSaturation飽和度顏色的純度0 是灰色1 是純色VValue明度顏色的亮度HSV 的核心優(yōu)勢是H 通道對光照變化不敏感。只要色相不變光照強一點弱一點H 值基本穩(wěn)定。這讓顏色檢測在光照波動時更魯棒。// OpenCV: BGR → HSVMathsvnewMat();Cv2.CvtColor(bgr,hsv,ColorConversionCodes.BGR2HSV);// 提取 H 通道做顏色分析Mat[]channelsCv2.Split(hsv);Mathuechannels[0];顏色分割用 inRange 做閾值灰度圖用一個閾值就能分割彩色圖需要三個通道同時限定范圍。OpenCV 的InRange正是干這個的。// 檢測紅色區(qū)域紅色在 HSV 中跨越 0° 和 180°需要兩段Matmask1newMat(),mask2newMat(),redMasknewMat();Cv2.InRange(hsv,newScalar(0,100,100),newScalar(10,255,255),mask1);Cv2.InRange(hsv,newScalar(170,100,100),newScalar(180,255,255),mask2);Cv2.BitwiseOr(mask1,mask2,redMask);// 對 mask 做形態(tài)學(xué)清理和 Blob 分析Cv2.MorphologyEx(redMask,redMask,MorphTypes.Open,kernel);Cv2.FindContours(redMask,outvarcontours,out_,RetrievalModes.External,ContourApproximationModes.ApproxSimple);關(guān)鍵點紅色的 H 值在 HSV 中位于 0° 附近和 180° 附近兩段因為色相是環(huán)形的必須用兩個范圍合并否則會漏掉一部分紅色。顏色分類從像素到類別分割出顏色區(qū)域后需要判斷它屬于哪個顏色類別。最簡單的方法是計算區(qū)域內(nèi)的平均 HSV 值然后與預(yù)定義的顏色中心比較。// 計算紅色區(qū)域的平均 HSVScalarmeanHsvCv2.Mean(hsv,redMask);doubleavgHuemeanHsv.Val0;// 平均色相// 判斷顏色類別stringcolorName;if(avgHue15||avgHue170)colorName紅;elseif(avgHue45)colorName橙/黃;elseif(avgHue75)colorName綠;elseif(avgHue130)colorName藍;elsecolorName紫;更魯棒的方法是在 Lab 顏色空間計算色差ΔE。Lab 空間的設(shè)計目標(biāo)就是“人眼感知均勻”——兩個顏色的 ΔE 越小人眼看越接近。工業(yè)色差檢測常用 ΔE 2 作為“肉眼不可分辨”的閾值。光照是彩色分析的最大敵人彩色分析比灰度分析更怕光照變化。同一個紅色物體在暖光和冷光下拍出來R 和 B 的值會明顯不同。工程上的應(yīng)對策略固定光源色溫使用同色溫的光源避免混用暖光和冷光白平衡校準(zhǔn)拍攝前用白紙做白平衡讓白色物體在圖像中呈現(xiàn)為 RGB 等值優(yōu)先用 H 通道H 通道對光照強度不敏感是顏色檢測的首選建立顏色參考在視野中放置標(biāo)準(zhǔn)色卡每次檢測前校準(zhǔn)顏色基準(zhǔn)一句話總結(jié)彩色圖像分析的核心是用 HSV 解耦顏色和亮度用 InRange 做顏色分割用 Blob 分析定位顏色區(qū)域。它的適用場景很明確當(dāng)顏色本身就是檢測目標(biāo)時。對于測量、定位、缺陷檢測等不依賴顏色的任務(wù)灰度圖仍然是更簡單、更快速、更穩(wěn)定的選擇。