本文目录一览:
- 1、python用OpenCV转卡通照片报错,好像是pyrdown的使用有问题?
- 2、高大上的YOLOV3对象检测算法,使用python也可轻松实现
- 3、可以用Python代码绘制一个人像吗
- 4、python的应用范围有哪些?
- 5、如何使用python读取排版图片?
python用OpenCV转卡通照片报错,好像是pyrdown的使用有问题?
你这个是pyrdown函数使用的时候,操作一次一个 M x N 的图像就变成了一个 M/2 x N/2 的图像。像素不是2的整数倍造成pyrup函数使用时像素出现不对等
高大上的YOLOV3对象检测算法,使用python也可轻松实现
继续我们的目标检测算法的分享,前期我们介绍了SSD目标检测算法的python实现以及Faster-RCNN目标检测算法的python实现以及yolo目标检测算法的darknet的window环境安装,本期我们简单介绍一下如何使用python来进行YOLOV3的对象检测算法
YOLOV3的基础知识大家可以参考往期文章,本期重点介绍如何使用python来实现
1、初始化模型
14-16 行:
模型的初始化依然使用cv下的DNN模型来加载模型,需要注意的是CV的版本需要大于3.4.2
5-8行:
初始化模型在coco上的label以便后期图片识别使用
10-12行:
初始化图片显示方框的颜色
2、加载图片,进行图片识别
输入识别的图片进行图片识别,这部分代码跟往期的SSD 以及RCNN目标检测算法类似
19-20行:输入图片,获取图片的长度与宽度
25-29行:计算图片的blob值,输入神经网络,进行前向反馈预测图片
只不过net.forward里面是ln, 神经网络的所有out层
3、遍历所有的out层,获取检测图片的label与置信度
遍历out层,获取检测到的label值以及置信度,检测到这里YOLOV3以及把所有的检测计算完成,但是由于yolov3对重叠图片或者靠的比较近的图片检测存在一定的问题,使用YOLOV3使用非最大值抑制来抑制弱的重叠边界
竟然把墨镜识别了手机,体现了YOLOV3在重叠图片识别的缺点
4、应用非最大值抑制来抑制弱的重叠边界,显示图片
56: 使用 非最大值抑制来抑制弱的重叠边界
58-59行:遍历所有图片
61-62行:提取检测图片的BOX
64-68行:显示图片信息
70-71行:显示图片
利用python来实现YOLOV3,与SSD 以及RCNN代码有很多类似的地方,大家可以参考往期的文章进行对比学习,把代码执行一遍
进行视频识别的思路:从视频中提取图片,进行图片识别,识别完成后,再把识别的结果实时体现在视频中,这部分代码结合前期的视频识别,大家可以参考多进程视频实时识别篇,因为没有多进程,检测速度很慢,视频看着比较卡
1、初始化模型以及视频流
2、从视频中提取图片,进行图片的blob值计算,进行神经网络的预测
3、提取检测到图片的置信度以及ID值
4、 应用非最大值抑制来抑制弱的重叠边界,显示图片
5、关闭资源,显示图片处理信息
每个目标检测算法都有自己的优缺点,个人感觉,在精度要求不是太高的情况下SSD检测算法可以实现较快的速度实现,毕竟精度差不多的情况下,我们希望速度越快越好
可以用Python代码绘制一个人像吗
可以的。
基本思路:选好画板大小,设置好画笔颜色,粗细,定位好位置,依次画鼻子,头、耳朵、眼睛、腮、嘴、身体、手脚、,完事。
都知道,turtle 是 python 内置的一个比较有趣味的模块,俗称海龟作图,它是基于 tkinter 模块打造,提供一些简单的绘图工具。
python的应用范围有哪些?
Python是一门简单、易学并且很有前途的编程语言,很多人都对Python感兴趣,但是当学完Python基础用法之后,又会产生迷茫,尤其是自学的人员,不知道接下来的Python学习方向,以及学完之后能干些什么?以下是Python十大应用领域!
1. WEB开发
Python拥有很多免费数据函数库、免费web网页模板系统、以及与web服务器进行交互的库,可以实现web开发,搭建web框架,目前比较有名气的Python web框架为Django。从事该领域应从数据、组件、安全等多领域进行学习,从底层了解其工作原理并可驾驭任何业内主流的Web框架。
2. 网络编程
网络编程是Python学习的另一方向,网络编程在生活和开发中无处不在,哪里有通讯就有网络,它可以称为是一切开发的“基石”。对于所有编程开发人员必须要知其然并知其所以然,所以网络部分将从协议、封包、解包等底层进行深入剖析。
3. 爬虫开发
在爬虫领域,Python几乎是霸主地位,将网络一切数据作为资源,通过自动化程序进行有针对性的数据采集以及处理。从事该领域应学习爬虫策略、高性能异步IO、分布式爬虫等,并针对Scrapy框架源码进行深入剖析,从而理解其原理并实现自定义爬虫框架。
4. 云计算开发
Python是从事云计算工作需要掌握的一门编程语言,目前很火的云计算框架OpenStack就是由Python开发的,如果想要深入学习并进行二次开发,就需要具备Python的技能。
5. 人工智能
MASA和Google早期大量使用Python,为Python积累了丰富的科学运算库,当AI时代来临后,Python从众多编程语言中脱颖而出,各种人工智能算法都基于Python编写,尤其PyTorch之后,Python作为AI时代头牌语言的位置基本确定。
6. 自动化运维
Python是一门综合性的语言,能满足绝大部分自动化运维需求,前端和后端都可以做,从事该领域,应从设计层面、框架选择、灵活性、扩展性、故障处理、以及如何优化等层面进行学习。
7. 金融分析
金融分析包含金融知识和Python相关模块的学习,学习内容囊括Numpy\Pandas\Scipy数据分析模块等,以及常见金融分析策略如“双均线”、“周规则交易”、“羊驼策略”、“Dual Thrust 交易策略”等。
8. 科学运算
Python是一门很适合做科学计算的编程语言,97年开始,NASA就大量使用Python进行各种复杂的科学运算,随着NumPy、SciPy、Matplotlib、Enthought librarys等众多程序库的开发,使得Python越来越适合做科学计算、绘制高质量的2D和3D图像。
9. 游戏开发
在网络游戏开发中,Python也有很多应用,相比于Lua or C++,Python比Lua有更高阶的抽象能力,可以用更少的代码描述游戏业务逻辑,Python非常适合编写1万行以上的项目,而且能够很好的把网游项目的规模控制在10万行代码以内。
10. 桌面软件
Python在图形界面开发上很强大,可以用tkinter/PyQT框架开发各种桌面软件!
如何使用python读取排版图片?
可以用Pillow库实现
给个参考:
python利用PIL拼接图片(九宫格)