机房视频状态监控Python来帮忙

 

需求:

        今年上半年疫情严重,很多公司同事应该都在家办公了一段时间。对于系统管理员而言,一般都是要每日机房巡检。如果是互联网公司,一般机房都会有视频监控来实时查看运行状态。对于长时间无人值守机房,一般机房管理的要点是电力,空调,消防等。对于制造业机房,可能没有专业的视频监控解决方案。方案意味着成本。那么,对于非互联网专业IT公司的机房,如果想通过视频定时了解机房设备运行状态怎么办?当然,方法是有的,而且接近零成本。

方法:

实现远程定时查看机房设备状态,主要通过摄像头,定时抓拍照片,然后将照片定时发送给系统管理员。当然,照片我们可以通过OpenCV进行分析,通过图片的变化,来判断机房的状态变化。在本例中,我们通过opencv来检测照片的亮度,通过亮度值的变化来判断机房的设备状态变化。

材料:1. 带有摄像头的笔记本电脑,没有摄像头可以淘宝一个,一般公司都有一些淘汰的电脑,基本上可以满足要求。

实现步骤:

  1. 在机房放置好笔记本电脑,调整好摄像头,接入公司内网。
  2. 下面就是python来先身手了,代码如下,通过python获取摄像头照片并分析亮度值。

首先调用opencv库

import cv2

from PIL import Image,ImageStat

 

获取照片函数如下:

def get_img_from_camera_local(folder_path):

    file_name=c_date+'.jpg'   #定义文件名

    cap=cv2.VideoCapture(0) #启动摄像头

    ret,frame=cap.read() #读取frame

    cv2.imshow("capture",frame)

    cv2.imwrite(folder_path+file_name,frame)  #照片保存本地路径

    cap.release() #释放摄像头

    cv2.destroyAllWindows()

    write_log("Picture "+ file_name + " saved to folder")  #写日志

    full_path=folder_path+file_name

    im=Image.open(full_path).convert('L')  #读取照片亮度值

    start=ImageStat.Stat(im) 

     write_log(full_path+' Brightness is '+ str(start.mean[0]))  #输入获取的照片亮度值。

 

  1. 通过亮度值,可以知道机房的电力有没有问题,可以检测市电是否正常工作(因机房而异)
  2. 通过邮件把机房状态定期发送给相关管理员,可以实现机房远程状态监控。

 

小结一下:

方法比较简单,使用的工具也不复杂,大致就是读取对应的照片并进行判断,希望可以给大家一些方法/思路上面的参考。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值