一般的信息機房會透過監控溫度的方式,掌握目前空調運作的情況,但是會等到溫度高到發出alarm,這代表機房空調實際上已經故障了一段時間,如何在空調冷氣故障的當下就發出警告訊息呢?我們可以使用計算機視覺來偵測空調主機的燈號,當故障燈亮起時,便立即發出預警通知。而且,計算機視覺不代表一定要用AI,單純透過OpenCV的圖像處理,便能達到偵測燈號的目的,因此,我們只需要一片樹莓派加上USB Camera便可作到。(更簡便的方案是Arduino搭配簡單的RGB色彩偵測模塊,也可以滿足偵測燈號的效果,但是在后續警報的分析處理上,并無法像樹莓派作得更多元)。
目前機房內使用MegaTec的NetProbe Lite偵測溫度,該裝置內建web server,可瀏覽各時段的溫濕度記錄,以及發送email及SMS通知。
偵測位置
樹莓主機和鏡頭放置于空調主機對面,注意USB Camera的位置要固定不能隨意移動,因為稍后我們將偵測空調主機的控制號號位置,此位置在畫面中必須是固定不變的。
空調主機的控制燈號

相關的影像分析技術
如何取得相片中某一區域
以相片中的空調控制燈號區為例,crop該區的方法如下。
要取得相片中各位置的x, y pixels值,使用小畫家即可,左下方會顯示目前光標所在的x, y pixels值。
如何取得相片中某一區域的平均色彩值
defarea_info(img):
b, g, r = cv2.split(img)
meanb, std = cv2.meanStdDev(b)
meang, std = cv2.meanStdDev(g)
meanr, std = cv2.meanStdDev(r)
return (meanb[0][0], meang[0][0],meanr[0][0])
先使用cv2.split拆出RGB三個單色channel的影像,再使用cv2.meanStdDev可分別得到其平均值與標準偏差。
如何偵測并取得相片中的顏色
以RGB來說,各顏色的范圍是:

(https://www.pyimagesearch.com/2014/08/04/opencv-python-color-detection/)
例如,當某個pixel(或某一區平均)的R, G, B值,如果滿足:
4
另外一種更好用的方式是先將影像轉為HSV color space。
由于HSV有獨立channel for光強度,因此可應用于偵測更為復雜的顏色區域。例如,當我們想要得影像中某一范圍的顏色,只要給予顏色范圍,便可取出影像中屬于該顏色的影像。
下方范例為輸入一張圖片,并取得紅色區域。
importcv2
importnumpy as np
importimutils
color_dict_HSV= {‘black’: [[180, 255, 30], [0, 0, 0]],
‘white’: [[180, 18, 255], [0, 0,231]],
‘red1’: [[180, 255, 255], [159,50, 70]],
‘red2’: [[9, 255, 255], [0, 50,70]],
‘green’: [[89, 255, 255], [36,50, 70]],
‘blue’: [[128, 255, 255], [90,50, 70]],
‘yellow’: [[35, 255, 255], [25,50, 70]],
‘purple’: [[158, 255, 255], [129,50, 70]],
‘orange’: [[24, 255, 255], [10,50, 70]],
‘gray’: [[180, 18, 230], [0, 0,40]]}
image =cv2.imread(“D:/wait/temp/last_0_25.jpg")
hsv =cv2.cvtColor(image, cv2.COLOR_BGR2HSV)
light =np.array(color_dict_HSV[‘red2’][1])
dark =np.array(color_dict_HSV[‘red2’][0])
mask =cv2.inRange(hsv, light, dark)
output =cv2.bitwise_and(image,image, mask= mask)
cv2.imshow(“ColorDetected", imutils.resize(np.hstack((image,output)), width=900))
cv2.waitKey(0)
cv2.destroyAllWindows()
由于這次項目只要偵測燈號是否有亮,不需要判定顏色,因此我們只要使用RGB方式,判斷該區域平均value是否有超過定義的threshold值(愈白或愈亮,代表該pixels的value愈大 (0-255)),若超過則可判定燈號有亮。
下方為機房開燈與關燈的兩種狀態,我們分別取兩個區域,左上方的矩形區域用來偵測是否有開燈,右下方則為空調主機的燈號區,用來偵測燈號狀態。由于機房有人員會進出,因此偵測是否開燈的區域,建議在上方天花板處,可避免人員經過造成亮度變化而發生誤判。
實際運作
機房燈光被打開與關閉時,各會發一次notify到群組(信息部系統狀態自動回報)。
在機房燈光未開的情況下,偵測到空調主機燈號亮了,則發出Notify到[Alarm]緊急通知群組。每隔三分鐘持續的發送,直到機房燈光被打開(視為處理中)或空調燈號熄滅,才不會繼續發Notify。

-
空調
+關注
關注
11文章
1300瀏覽量
60957 -
監控
+關注
關注
6文章
2382瀏覽量
59447 -
控制燈
+關注
關注
0文章
9瀏覽量
9017
原文標題:使用圖像處理偵測機房空調燈號
文章出處:【微信號:易心Microbit編程,微信公眾號:易心Microbit編程】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
高校機房空調及環境監控管理系統方案
AI數據機房可視化監控管理平臺解決方案
使用K-means算法進行異常偵測
機房如何搬遷?有哪些步驟與規范?
屏蔽機房建設圖解,與非屏蔽機房有何區別?
IDC機房環境監測方案—全解析
英威騰中標中國移動機房空調集采份額第一
動環監控:數據中心機房的“智慧守護者”
慧視光電——全棧圖像處理板供應商
施耐德電氣助力藥企研發中心老舊機房改造升級
HarmonyOS應用圖像stride處理方案
英威騰網能解讀機房空調領域新國標能效要求
《DNESP32S3使用指南-IDF版_V1.6》第六十三章 運動偵測實驗
九聯開鴻基于OpenHarmony的機房動態環境監測場景解決方案
使用圖像處理偵測機房空調燈號
評論