black

python中使用Opencv进行车牌号检测——2018.10.24

情到浓时终转凉″ 提交于 2020-08-06 06:30:32
初学Python.Opencv,想用它做个实例解决车牌号检测。 车牌号检测需要分为四个部分:1.车辆图像获取、2.车牌定位、3.车牌字符分割和4.车牌字符识别 在百度查到了车牌识别部分车牌定位和车牌字符分割,先介绍车牌定位部分 车牌定位需要用到的是图片二值化为黑白后进canny边缘检测后多次进行开运算与闭运算用于消除小块的区域,保留大块的区域,后用cv2.rectangle选取矩形框,从而定位车牌位置 车牌字符的分割前需要准备的是只保留车牌部分,将其他部分均变为黑色背景。这里我采用cv2.grabCut方法,可将图像分割成前景与背景。分割完成后,再经过二值化为黑白图后即可进行字符分割。由于图像中只有黑色和白色像素,因此我们需要通过图像的白色像素和黑色像素来分割开字符。即分别通过判断每一行每一列的黑色白色像素值的位置,来定位出字符。具体程序附下 # -*- coding: utf-8 -*- """ Created on Tue Oct 23 20:46:45 2018 @author: Administrator """ import cv2 import numpy as np def stretch(img): ''' 图像拉伸函数 ''' maxi = float(img.max()) mini = float(img.min()) for i in range(img

视频直播技术中HLS的播放是如何实现的?

左心房为你撑大大i 提交于 2020-08-06 02:19:10
好看的指标参数 码率 :影响体积,与体积成正比:码率越大,体积越大;码率越小,体积越小。 帧率 :影响画面流畅度,与画面流畅度成正比:帧率越大,画面越流畅;帧率越小,画面越有跳动感。如果码率为变量,则帧率也会影响体积,帧率越高,每秒钟经过的画面越多,需要的码率也越高,体积也越大。 分辨率 :影响图像大小,与图像大小成正比:分辨率越高,图像越大;分辨率越低,图像越小。图玩智能科技为企业提供专业的直播技术支持,提供直播平台的二次开发服务,搭建更完善更稳定的直播系统,欢迎随时咨询www.toivan.com. HLS 对于 H5 视频播放,可以使用 HLS(HTTP Live Streaming) 协议播放直播流, iOS 和 Android 都天然支持这种协议,配置简单,直接使用 video 标签即可。 使用 video 在移动客户端上播放直播视频: < video controls autoplay > < source src = "xxx.m3u8" type = "application/vnd.apple.mpegurl" / > < / video > HTTP Live Streaming HLS 是一个由苹果公司提出的基于 HTTP 的流媒体网络传输协议。 HLS 直播最大的不同在于,直播客户端获取到的,并不是一个完整的数据流。 HLS

PHP数组常用函数分类整理

微笑、不失礼 提交于 2020-08-05 20:31:06
一、数组操作的基本函数 数组的键名和值 array_values($arr); 获得数组的值 array_keys($arr); 获得数组的键名 array_flip($arr); 数组中的值与键名互换(如果有重复前面的会被后面的覆盖) in_array("apple",$arr); 在数组中检索apple array_search("apple",$arr); 在数组中检索apple ,如果存在返回键名 array_key_exists("apple",$arr); 检索给定的键名是否存在数组中 isset($arr[apple]): 检索给定的键名是否存在数组中 数组的内部指针 current($arr); 返回数组中的当前单元 pos($arr); 返回数组中的当前单元 key($arr); 返回数组中当前单元的键名 prev($arr); 将数组中的内部指针倒回一位 next($arr); 将数组中的内部指针向前移动一位 end($arr); 将数组中的内部指针指向最后一个单元 reset($arr; 将数组中的内部指针指向第一个单元 each($arr); 将返回数组当前元素的一个键名/值的构造数组,并使数组指针向前移动一位 list($key,$value)=each($arr); 获得数组当前元素的键名和值 数组和变量之间的转换 extract($arr)

jmeter5.0生成html报告 快速入门

不打扰是莪最后的温柔 提交于 2020-08-05 18:18:33
JMeter性能测试5.0时代之-多维度的图形化HTML报告 快速入门 1.确认基本配置 在jmeter.properties或者user.properties确认如下配置项: jmeter.save.saveservice.bytes = true jmeter.save.saveservice.label = true jmeter.save.saveservice.latency = true jmeter.save.saveservice.response_code = true jmeter.save.saveservice.response_message = true jmeter.save.saveservice.successful = true jmeter.save.saveservice.thread_counts = true jmeter.save.saveservice.thread_name = true jmeter.save.saveservice.time = true # the timestamp format must include the time and should include the date. # For example the default, which is milliseconds since the epoch:

一张图片在Python操作下的4种玩法(附源码)

a 夏天 提交于 2020-08-05 09:07:24
前言 本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。 作者:黄伟呢 1.利用python绘制一个小猪佩奇 turtle库是一个很好的python图形绘制库,利用它我们可以绘制各种各样的图形、小动物。这个库其实并不难,实际你怎么绘制这个图形,对应的代码,就跟着你的实际绘制图形的方向走下去,即可。 from turtle import * # 绘制鼻子 def nose(x,y): penup() goto(x,y) pendown() setheading( -30 ) begin_fill() a =0.4 for i in range(120 ): if 0<=i<30 or 60<=i<90 : a =a+0.08 left( 3 ) forward(a) else : a =a-0.08 left( 3 ) forward(a) end_fill() penup() setheading( 90 ) forward( 25 ) setheading(0) forward( 10 ) pendown() pencolor( 255,155,192 ) setheading( 10 ) begin_fill() circle( 5 ) color( 160,82,45 ) end_fill() penup()

全美学界停摆24小时:arXiv、Nature、Science全部暂停更新

你离开我真会死。 提交于 2020-08-05 08:27:14
你可能会注意到,今天海外没啥学界新闻,Nature、Science 也都十分安静。 机器之心报道,参与:蛋酱、小舟。 在美国黑人弗洛伊德去世的十几天后,反种族歧视的抗议又一次引发了学术界「地震」。 当地时间周二,美国高校学术界和科技界联合向同行发起倡议,呼吁科学家和学者在本周三一起参与大罢工,用中止学术和中止科研等方式支持「黑人的命也是命」的游行示威。 这项声援美国反种族主义游行的活动,名为「ShutDownSTEM」。STEM 分别代表科学(Science)、技术(Technology)、工程(Engineering)、数学(Mathematics)。 活动的目的是声援此次由美国黑人乔治 · 弗洛伊德之死而引发的反种族主义活动,支持参加抗议活动的黑人学者。同时,该活动也是为了反思学术界中长期存在的助长种族主义问题,并思考学术界如何在消除社会中的种族主义上发挥更大的作用。 ShutDownSTEM 的组织者在这一行动的官方网站上表示:「作为全球学术界和 STEM 社区的成员,我们负有巨大的道德义务,必须终止这种『一切如常』的状态。」 参与活动的人员应「停止当天所有的常规学术工作,包括教学、研究和相关学术服务」,活动组织者在网站上写道。 组织者敦促科学家们参加当地抗议活动,了解反黑人暴力和种族主义的历史。不过并未要求那些正在致力于反击新冠肺炎疫情的学者参加

springboot 集成RabbitMQ

时光毁灭记忆、已成空白 提交于 2020-08-05 08:25:24
RabbitMQ 即一个消息队列,主要是用来实现应用程序的异步和解耦,同时也能起到消息缓冲,消息分发的作用。 消息中间件在互联网公司的使用中越来越多,刚才还看到新闻阿里将RocketMQ捐献给了apache,当然了今天的主角还是讲RabbitMQ。 消息中间件最主要的作用是解耦,中间件最标准的用法是生产者生产消息传送到队列,消费者从队列中拿取消息并处理,生产者不用关心是谁来消费,消费者不用关 心谁在生产消息,从而达到解耦的目的。在分布式的系统中,消息队列也会被用在很多其它的方面,比如:分布式事务的支持,RPC的调用等等。 以前一直使用的是ActiveMQ,在实际的生产使用中也出现了一些小问题,在网络查阅了很多的资料后,决定尝试使用RabbitMQ来替换ActiveMQ,RabbitMQ的高可用性、高性能、灵活性等一些特点吸引了我们,查阅了一些资料整理出此文。 RabbitMQ介绍 RabbitMQ是实现AMQP(高级消息队列协议)的消息中间件的一种,最初起源于金融系统,用于在分布式系统中存储转发消息,在易用性、扩展 性、高可用性等方面表现不俗。RabbitMQ主要是为了实现系统之间的双向解耦而实现的。当生产者大量产生数据时,消费者无法快速消费,那么需要一个中 间层。保存这个数据。 AMQP,即Advanced Message Queuing Protocol,高级消息队列协议

逆向工程开源工具-PE Tree

本秂侑毒 提交于 2020-08-05 07:54:52
科技媒体ZDNET报道, 黑莓 在Black Hat USA 2020 安全 大会上开源了逆向工程工具PE Tree。遵守Apache开源协议。基于Python编写,可运行于Linux,Mac和Windows。PE Tree可用于逆向工程和分析Portable Executable(PE)文件的内部结构。 黑莓 表示,逆向工程是一个极端的耗费时间和劳动密集过程,需要数小时的反汇编,有时候还需要重建软件程序。黑莓技术团队开源PE Tree将有益于恶意软件逆向工程社区。 特性: 以易于浏览的树状视图列出PE文件内容; 与IDA Pro反编译器集成(轻松导航PE结构,转储内存中的PE文件,执行导入重建); VirusTotal搜索集成; 可以将数据发送到Cyber​​Chef; 可以作为独立应用程序或IDAPython插件运行。 报道原文:https://www.zdnet.com/article/blackberry-releases-new-security-tool-for-reverse-engineering-pe-files/ 相关文件下载地址 本地直接下载 来源: oschina 链接: https://my.oschina.net/u/4254929/blog/4470049

新技能Get! 手把手教你接入CG Kit

末鹿安然 提交于 2020-08-05 03:21:19
1 初始准备 1.1 CGKit简介   CGKit是华为推出的一套高性能渲染框架,提供了渲染所需的原子能力,如材质、模型、灯光以及一些后期特效等。另外提供了高性能渲染组件,如抗锯齿和基于Vulkan的多线程组件等。除此之外还提供了Smart Cache以及Pre-rotation等扩展能力,并整合了前沿计算机图形学、计算机视觉和深度学习等最新研究成果。 1.2 官方指导   华为开发者的主页如下:    https://developer.huawei.com/consumer/cn/   在该页面有CGKit的链接:   点击该链接即可转到CGKit的主页,其地址如下:    https://developer.huawei.com/consumer/cn/hms/huawei-computer-graphics/   这里会有CGKit的基本介绍,如下:   这里主要关注开发,点击“查看文档”,即可转到如下地址:    https://developer.huawei.com/consumer/cn/doc/development/HMSCore-Guides/introduction-0000001050197938   该网页是进行CGKit开发的官方页面,有关介绍这里不再重复。   重点关注以下两点即可:   其中示例代码是一套Android Studio工程

基于oracle的sql优化

本秂侑毒 提交于 2020-08-05 01:07:31
一.编写初衷描述 【博客地址】http://www.cnblogs.com/grl214 在应有系统开发初期,由于数据库数据较少,对于sql语句各种写法的编写体现不出sql的性能优劣,随着数据的不断增加,出现海量数据,劣质sql与优质sql在执行效率甚至存在百倍差距,可见sql优化的重要性 二.Sql语句性能优化 2.1 认识Oracle的执行过程 2.2 Oracle优化法则---漏斗法则 2.3 Oracle 执行计划 2.3.1 什么是Oracle执行计划 执行计划是一条查询语句在Oracle中执行过程或者访问路径的描述. 2.3.2 查看Oracle执行计划 1.执行计划常用的列字段解释 基数:返回的结果集行数 字节:执行该步骤后返回的字节数 耗费(cust),CPU耗费:Oracle估计的该步骤的执行成本,用于说明SQL执行的代价,理论上越小越好. 2.3.3 看懂Oracle执行计划 2.3.3.1执行顺序 根据缩进来判断,缩进最多的最先执行(缩进相同时,最上面的最先执行) 2.4 表的访问方式 TABLE ACCESS FULL(全表扫描) TABLE ACCESS BY ROWID(通过rowid的表存取) TABLE ACCESS BY INDEX SCAN(索引扫描) 2.4.1 ABLE ACCESS FULL(全表扫描) Oracle会读取表中的所有行