实战深度学习(上)OpenCV库
在如今人工智能的浪潮下,无数模拟机器学习和深度学习的开发者工具倍出,其中在计算机图形学和计算机视觉里面最流行的一个库就是OpenCV库了.计算机图形学和计算机视觉学在我们的自动驾驶和仿生机器人当中有着举足轻重的地位,尤其是opencv库在里面的应用尤为广泛。今天我就分享给大家我们在python环境下,实现调用opencv库。用Python调用opencv库而不用C++的缘故是,第一:现在我们的高端处理器(如由中科大少年班的天才陈天石先生所创办的寒武纪科技有限公司的深度学习处理器)已经具备了强大的算力,除了谷歌的处理器就是地表最强的NPU了,因此我们并不需要这种高效率的语言来支撑。即使像我们普通学生使用的树莓派也可以跑得上Python,从而实现物联网。二:C++的代码过于繁琐,Python则可以用更短小的代码块来实现。在软件的开发周期上会变得更小。三:Python简单易学,笔者用三天学完了Python,学习C++则学习了接近一个星期。
一:首先,您应该确保您的电脑应经安装了python的环境,笔者是安装的python3.6一个比较新的版本,以前的老版本python2.x对我们新技术的支持不是很好。同时我们python当中的各种库的版本也很有可能不相适应,这是计算机科学这门学科的特征。因此,建议安装更新版本的Python。
二,如果您已经为您的Python配置了环境变量,那么请您使用win+R键,然后在输入cmd,
进入Windows系统的命令行模式。


三。如果您还没有为您的电脑配置环境变量的话,请为您的电脑配置环境变量,将Python的路径添加到您电脑的环境变量当中,这样就可以直接在命令行模式下进行编译Python文件了。比如这样:
先在Python的命令行模式下输入:Python,然后再输入代码print(5),如果输出5成功,那么您的环境变量肯定是配置好了。关于具体该如何配置环境变量,笔者就不加累述了,这对学习计算机的朋友来说实在是小菜一碟,如果确实不知道该如何配置环境变量,是第一次接触非C语言的朋友,请您到网址https://jingyan.baidu.com/article/48206aeafdcf2a216ad6b316.html上自行学习。
四:找到您以前已经安装过的Python文件的路径
方便将我们的opencv库下载下来之后找到保存的地点。这时请继续保持打开我们刚才的命令行模式,输入以下代码:
import sys >>> sys.path
这样,计算机就会自动显示出您Python文件的安装路径了。这是十分重要的一步,没有这一步,您的计算机上是不可能安装好opencv库的。
五:点击进入网址:https://www.lfd.uci.edu/~gohlke/pythonlibs/
在这个国外的网站里汇聚了Python的各种类库,是美国加州大学(世界排名第三)所推出的。是我们做机器学习的人的天堂。此时,您应该找到numpy库,进行下载(因为如果您要安装opencv库的话,是必然得安装numpy库的),下载的时候记住:文件的后缀是whl,我们稍后将利用pip会进行安装。文件的前缀有cp两个英文,cp后表示的是Python的版本吗,笔者用的是3.6版本的Python,因此文件的前缀当中必然有cp36这个选项了。网站主页如图所示;

六:将您刚刚所选择的numpy,opencv库的文件保存至Python安装文件的根目录下的scripts下,在这个文件的目录下,你还会发现有pip.exe以及east_install.exe的程序文件,这就对了。
七:再次打开您的命令行模式:
输入cd C:/xxxx(您Python文件安装目录的scripts文件夹),这改变的是您在命令行模式下的文件根目录,十分有效。
八:为您的ython安装文件的根目录下的scripts配置环境变量。具体配置环境变量的方法还是和以前一样。不会的话,请参见网址:https://jingyan.baidu.com/article/48206aeafdcf2a216ad6b316.html
:在命令行模式下输入:pip install wheel

继续等待下载完成。如果出现了如下图像,则说明您安装成功了
十:在命令行模式下输入pip install (您刚才现在的numpy文件的文件名).whl
等待collect被安装,很快便会显示安装成功(笔者电脑CPU算力比较强大)安装成功后将会显示:

上面这串英文应该很简单吧,正常人应该都会看得懂这是成功安装安装包的意思。最后安装opencv库。
十一:安装opencv库的方法和第十步是完全一样的。
十二:检测我们的OpenCV库是否安装成功。在命令行模式下输入:
pip freeze
这样我们就会看到您的Python除了标准库之外,您所安装的所有库文件了。笔者的由于还在做单纯的机器学习算法实现,因此,还安装了其他数据科学,和科学计算的库。不相关的库也被笔者所删除了。

以上就是笔者所安装的所有库。今天的教程就到这里了,后面有关OpenCV库的Python代码实现,我将会在公众号的下一期当中发布具体的代码以及具体的使用方法。在下一期当中我们才会真正领略到opencv的强大威力。如果您有什么疑惑,可以在下面的留言区留言,我一定会尽我所能为您解答。如果我有什么说得不对的地方,也还请多多指教。
实战深度学习(上)OpenCV库的更多相关文章
- 用MXnet实战深度学习之一:安装GPU版mxnet并跑一个MNIST手写数字识别
用MXnet实战深度学习之一:安装GPU版mxnet并跑一个MNIST手写数字识别 http://phunter.farbox.com/post/mxnet-tutorial1 用MXnet实战深度学 ...
- 实战深度学习(下)OpenCV库
在上一节中,我们讲到了OpenCV库的安装,现在我们来进行实战,看如何利用Python来调用OpenCV库. 一: 如果您的电脑是win10的系统,那么请您按下win键,再按下空格键,输入Python ...
- [PyImageSearch] Ubuntu16.04 使用深度学习和OpenCV实现物体检测
上一篇博文中讲到如何用OpenCV实现物体分类,但是接下来这篇博文将会告诉你图片中物体的位置具体在哪里. 我们将会知道如何使用OpenCV‘s的dnn模块去加载一个预训练的物体检测网络,它能使得我们将 ...
- TensorFlow(实战深度学习框架)----深层神经网络(第四章)
深层神经网络可以解决部分浅层神经网络解决不了的问题. 神经网络的优化目标-----损失函数 深度学习:一类通过多层非线性变化对高复杂性数据建模算法的合集.(两个重要的特性:多层和非线性) 线性模型的最 ...
- Windows上mxnet实战深度学习:Neural Net
前提: 假设已经在Windows上安装配置好mxnet和python语言包. 假设mxnet安装目录为D:\mxnet 假设已安装好wget 可以参考 这篇文章 打开Windows的命令提示符: 执行 ...
- 实战深度学习OpenCV(三):视频实时canny边缘检测
#include <stdio.h> #include"opencv2/opencv.hpp" using namespace cv; int main() { Vid ...
- 实战深度学习OpenCV(二):读取并播放本地或者摄像头的视频
一.读取并播放的代码如下: #include "pch.h" #include <iostream> #include <opencv2/core/core.hp ...
- 实战深度学习OpenCV(一):canny边缘检测
利用canny边缘检测,我们可以很好地得到哦一个图像的轮廓,下面是基于C++的,这是我们通过这段代码得到的结果: #include "pch.h" #include <ios ...
- Tesla P4 在深度学习上的性价比辗压目前所有量产的FPGA
7000的价格, 5.5T FP, 75W不到的功耗,性能接近M40,敢问目前有哪个量产的FPGA能做到?还不算开发和维护的难度...KU115光PCIE+DMA+DDR4 controller+AX ...
随机推荐
- SQL语句:子查询
一,子查询定义: 子查询就是嵌套在主查询中的查询. 子查询可以嵌套在主查询中所有位置,包括SELECT.FROM.WHERE.GROUP BY.HAVING.ORDER BY. 但并不是每个位置嵌套子 ...
- unity中加载场景不销毁以及切换场景重复实例化
问题描述 游戏开发中会有多个场景,有时会有这样的需求,我们需要保证场景跳转但是需要保持某个游戏对象不被销毁,比如:音乐 实现思路 unity中提供了DontDestroyOnLoad(),这个API ...
- Windows Internals 笔记——线程优先级
1.每个线程都被赋予0(最低)~31(最高)的优先级数.当系统确定给哪个线程分配CPU时,它会首先查看优先级为31的线程,并以循环的方式进行调度.如果有优先级为31的线程可供调度,那么系统就会将CPU ...
- webpack打包优化之外部扩展externals的实际应用
目录 前言 externals定义 用法 string array object function regex 实际案例 打包时间 打包之后包的大小 浏览器加载 需要注意 参考 前言 使用vue-cl ...
- 在服务器上实现SSH(Single Stage Headless)
服务器上ssh实现 写在前面:这只是我在服务器上的环境实现的,仅供参考.要根据自己系统的环境做出修改. ==github源码(https://github.com/mahyarnajibi/SSH)= ...
- IE8 disable 兼容行问题
在chrome 下 如果样式设置为disabled 则不能点击, 但是在IE9 或者IE8 则还是可以点击
- java时间处理,获取当前时间的小时,天,本周周几,本周周一的日期,本月一号的日期
1.时间转时间戳 public static long strToTimestamp(String dateTimeStr) throws Exception { Timestamp time = T ...
- 维护爬虫代理IP池--采集并验证
任务分析 我们爬的免费代理来自于https://www.kuaidaili.com这个网站.用`requests`将ip地址与端口采集过来,将`IP`与`PORT`组合成`requests`需要的代理 ...
- unity打包exe中的资源管理
给美术和产品用unity做一些exe工具,会频频遇到导入导出资源的情况. 首先所有的文件应该放在StreamingAssets文件夹下, 如果需要动态替换贴图,这样美术只要替换default.png就 ...
- Mybatis源码分析(原创)
@test 1.进入SqlSessionFactoryBuilder中build方法 2.进入XMLConfigBuilder类中parse->parseConfiguration中 通过该方 ...