from autost.api import *

import cv2

dark_pixels_threshold = 20

dark_pixels_weight = 0.85

def get_oringe_frame_info(frame):

# 获取原始的一帧图像矩阵的行数和列数

r, c = frame.shape[:2]

print('原始的一帧图像矩阵的行数和列数分别为: ', r,"*",c)

def get_sum_pixels(gray_img):

# 获取灰度图矩阵的行数和列数

r, c = gray_img.shape[:2]

print('灰度图矩阵的行数和列数分别为: ', r,"*",c)

piexs_sum = r * c  # 整个灰度图的像素个数为r*c

print('整个灰度图的像素个数为: ', piexs_sum)

return piexs_sum

def get_sum_dark_pixels(gray_img):

# 获取偏暗的像素(表示0~19的灰度值为暗) 此处阈值可以修改

dark_points = (gray_img < dark_pixels_threshold)

target_array = gray_img[dark_points]

dark_sum = target_array.size

print('偏暗的像素总数为: ', dark_sum)

return dark_sum

def check_dark_screen(piexs_sum, dark_sum):

# 判断灰度值为暗的百分比

dark_prop = dark_sum / (piexs_sum)

if dark_prop >= dark_pixels_weight:

error("该帧图像为黑屏,请确认是否有问题")

else:

print("该帧图像不是黑屏,没有问题")

def start():

#录制视频

video_path = video_record(5)[2]

print(video_path)

cap = cv2.VideoCapture(video_path)

while True:

#逐帧采集视频流

grabbed, frame = cap.read()

if not grabbed:

break

#获取原始的一帧图像矩阵的行数和列数

get_oringe_frame_info(frame)

box_data = frame[124:131, 479:510] # 取矩形目标区域

#把图片转换为单通道的灰度图

gray_img = cv2.cvtColor(box_data, cv2.COLOR_BGR2GRAY)

#获取整个灰度图的像素个数

piexs_sum = get_sum_pixels(gray_img)

#获取偏暗的像素个数

dark_sum = get_sum_dark_pixels(gray_img)

#check 是否黑屏

check_dark_screen(piexs_sum, dark_sum)

start()

'''

while True:

grabbed, frame_lwpCV = cap.read() # 逐帧采集视频流

if not grabbed:

break

print('dddddd', frame_lwpCV[0,0])

#frame_data = np.array(frame_lwpCV)  # 每一帧循环存入数组

#box_data = frame_data[121:289, 281:560] # 取矩形目标区域

#print(box_data)

break

'''

python 黑屏检测相关推荐

  1. python黑屏改成白底_Python实现将蓝底照片转化为白底照片功能完整实例

    本文实例讲述了Python实现将蓝底照片转化为白底照片功能.分享给大家供大家参考,具体如下: import cv2 import numpy as np img=cv2.imread('yay.jpg ...

  2. python黑屏改成白底_详解Python给照片换底色(蓝底换红底)

    现在网上出现了很多在线换底色的网页版工具是这么做的呢?其实用Python就可以实现. 环境要求 Python3 numpy函数库 opencv库 安装 下载适应版本的numpy函数库,我电脑是WIN1 ...

  3. python调用usb摄像头黑屏_ORB-SLAM2编译安装和USB摄像头例程运行

    准备工作及软件版本说明 注意:如果要使用USB摄像头运行ORB-SLAM2,不能使用虚拟机,否则会出现摄像头打开一片绿屏或者黑屏的现象. 操作系统 :Ubuntu 16.04 ROS版本 :kinet ...

  4. ubuntu20.04 外接显示器检测不到 未知的显示器 显卡安装黑屏 解决方案

    ubuntu20.04 外接显示器检测不到 未知的显示器 显卡安装黑屏 解决方案 最近买了个显示器,但在ubuntu系统下显示无法识别,尝试了好多网上的方法比如在ubuntu的软件和更新里更换显卡驱动 ...

  5. ubuntu 检测到外接显示器 但依然黑屏

    问题背景:买了一个显示器,因为我的是双系统,在windows系统下可以正常显示,但是在ubuntu系统下一直接收不到信号. 一:在网上搜索,知道了是显卡驱动的问题,去下载了显卡驱动.回到了标题这里:u ...

  6. iphone6 计算机无法检测到照相机,苹果iPhone XR摄像头黑屏不能照相是什么原因?...

    今天接到客户电话,说自己买了没多久的xr出现问题了,不能照相,后置摄像头照相用不了,点不开了,只有前置摄像头可以用,手电筒也打不开这是为什么?其实,摄像头故障是手机使用问题中比较常见的.今天,海口苹果 ...

  7. ibm服务器 显示器不亮,IBM液晶显示器黑屏故障原因、检测分析及维修方法

    一.故障原因与检测方法 IBM6636-AC1型15英寸液晶显示器黑屏故障较多.导致黑屏的原因,多是其背光灯板(在电源板内)故障.背光灯板电路由高压变 压器.功率推动管(C5706).场效应管(贴片式 ...

  8. python 模拟电脑黑屏

    python让电脑黑屏 一种非常低级的方法 提前准备:需要安装一个轻量级图片查看软件,并设置为.png格式图片的默认打开方式,这个软件叫Vieas,这个可以自行搜索下载安装. 基于PIL库生成一张屏幕 ...

  9. macbook Python Turtle Graphics黑屏

    import turtle# 定义圣诞树的绿叶函数 def tree(d, s):if d <= 0:returnturtle.forward(s)tree(d - 1, s * .8)turt ...

最新文章

  1. Hibernate的主键生成器generator(zhuan)
  2. 使用Poco实现插件方式加载动态库
  3. 修理机器人基维斯_魔兽世界修理机器人沃尔特和移动邮箱怎么做
  4. std:forward 完美转发
  5. okhttp3下载文件检测进度与断点续传
  6. android mysql 数据库文件_android mysql数据库文件
  7. 数据结构之二叉树:二叉查找树基本功能,Python代码实现——10
  8. 模拟实现string其中的一些知识点
  9. python批量安装第三方库_使用Python批量安装第三方库
  10. underscore 系列之内部函数 restArgs
  11. React.js及React Native知识及实践
  12. 固定表头和第一列、内容可滚动的table表格
  13. APK瘦身-是时候给App进行减负了
  14. JavaScript 基础知识 - 入门篇(二)
  15. sql server 创建动态交叉表
  16. 研究开源项目发现的一个人性化的Go语言库
  17. 解决maven工程的properties文件内容呈灰色
  18. 2010一次意想不到的环球飞行
  19. Linux中使用命令分类型统计系统光盘中rpm包数量
  20. 郭晶晶儿子近照曝光 霍启刚澄清怀二胎传闻

热门文章

  1. 计算机网络工程综合布线目的,弱电工程综合布线系统与计算机网络布线系统有何不同?【网络综合布线】...
  2. 东锦核心品类推动东锦发展
  3. 修改软件的艺术:如何重构遗留代码
  4. 【人脸识别】视频帧聚合:Discriminative Aggregation Network
  5. 2022年湖北特种作业操作证应急管理厅怎么报考?甘建二
  6. 密码学09-数字签名
  7. uvm中sequence和virtual sequence中objection的控制
  8. ae渲染存在偏移_AE教程—如何同时打开多个AE窗口(AE双开或多开)
  9. 判定2000—2500年中的每一年是否为闰年,并将结果输出。
  10. blender 插件使用笔记