youcans 的 OpenCV 学习课—1.安装与环境配置

作者: youcans@xupt

本系列面向 Python 小白,从零开始实战解说 OpenCV 项目实战。
什么叫从零开始?从软件安装、环境配置开始。不跳过一个细节,不漏掉一行代码,不省略一个例图。

欢迎关注 『youcans 的 OpenCV 学习课』 系列,持续更新

youcans 的 OpenCV 学习课—1.安装与环境配置
youcans 的 OpenCV 学习课—2.图像读取与显示
youcans 的 OpenCV 学习课—3.图像的创建与修改
youcans 的 OpenCV 学习课—4.图像的叠加与混合
youcans 的 OpenCV 学习课—5.图像的几何变换
youcans 的 OpenCV 学习课—6.灰度变换与直方图处理
youcans 的 OpenCV 学习课—7.空间域图像滤波
youcans 的 OpenCV 学习课—8.频率域图像滤波(上)
youcans 的 OpenCV 学习课—9.频率域图像滤波(下)


1. OpenCV 计算机视觉库

OpenCV(Open Source Computer Vision Library)是一个跨平台的计算机视觉库。

OpenCV 是由英特尔公司发起并参与开发,以 BSD 许可证授权发行,可以在商业和研究领域中免费使用。

OpenCV 可用于开发实时的图像处理、计算机视觉以及模式识别程序。该程序库也可以使用英特尔公司的 IPP 进行加速处理。

OpenCV 用C++语言编写。主要接口也是C++语言,也提供了大量的 Python、Java、MATLAB、OCTAVE 接口,及对 C#、Ch、Ruby、GO 语言的支持。

OpenCV (https://opencv.org) 官网资源:

  • 文件:http://docs.opencv.org/3.4/
  • 问答论坛:https://forum.opencv.org
  • 以前的论坛(只读):http://answers.opencv.org
  • 问题跟踪:https://github.com/opencv/opencv/issues

2. 安装 Anaconda3 + PyCharm + OpenCV

2.1 安装 Anaconda3(略)

2.2 安装 PyCharm,配置运行环境(略)

注意 PyCharm 的安装版本,以下安装 OpenCV 需要与 PyCharm 版本匹配。

2.3 安装 OpenCV

(1)下载地址

推荐从清华的镜像下载

https://pypi.tuna.tsinghua.edu.cn/simple/opencv-python/

(2)版本选择

清华镜像中有很多 OpenCV 版本可供下载。关于 Windows/Linux/Mac、amd64 之类的选择就不必多说了,但是 OpenCV 的版本选择确实有两个问题需要注意:

  • OpenCV 3.4.2 及以后版本由于专利许可问题不支持部分功能,因此建议选择 3.4.15 及以前版本。
    例如,图像配准、拼接以及融合时的常用算法 Sift、Surf 由于涉及专利在 OpenCV 3.4.2 以后版本采用新的授权方式,通常下载的版本无法调用 cv2.xfeatures2d.SURF_create()。opencv_contrib不仅存放了尚未稳定的代码,同时也存放了涉及专利保护的技术实现。

  • OpenCV 的版本要与安装的 PyCharm 版本匹配。

例如,如果 PyCharm 的版本是较早的 3.x 版本如 cp35,不能与新的 OpenCV 版本匹配,安装时可能报错。

因此要根据自己的 PyCharm 版本选择下载的 OpenCV 版本,例如:

opencv_python-3.4.15.55-cp38-cp38-win_amd64.whl

大约 29.7M,下载速度很快。

(3)pip 安装

  • 将下载的 .whl 文件保存到容易找到的路径下,例如 “C:\Python”。
  • 使用 pip 方式安装下载的 .whl 文件。需要注意的问题:
    • 安装路径 使用保存 .whl 文件的路径
    • 注意输入 .whl 文件名时 “-”、"_"不要搞错了
    • 如下图所示:如果 PyCharm 的版本与 OpenCV 版本不匹配,安装时可能报错
pip install C:\Python\opencv_python-3.4.15.55-cp38-cp38-win_amd64.whl

由于已经将 .whl 文件下载到本地,安装速度很快。


3. OpenCV 快速入门

3.1 OpenCV 验证程序

我们编写第一个 OpenCV 验证程序: cvDemo01.py。

# cvDemo01.py
# Demo01 of OpenCV
# Copyright 2021 Youcans, XUPT
# Crated:2021-10-20import cv2if __name__ == '__main__':# 读取图像,支持 bmp、jpg、png、tiff 等常用格式img = cv2.imread("../images/imgGaia.tif")  # 读取图像位置if not img is None:  # imgGaia 存在cv2.imshow("Demo01", img)  # 在窗口 Demo01 显示图像else:  # imgLena is None, 读入错误print("Error in reading image.")# 释放图像窗口key = cv2.waitKey(0)  # 等待下一个按键命令cv2.destroyAllWindows()  # 释放所有窗口

运行程序 CVdemo01,弹出窗口显示指定路径的图像,就说明 OpenCV 安装成功了。

注意指定路径下要存有该图片,也可以修改路径和文件名来显示其它图片。

如果你能得到这个图形界面,就说明 OpenCV 已经安装成功、配置正确了。

【本节完】

版权声明:

欢迎关注『Python 小白从零开始 OpenCV 学习课 @ youcans』 原创作品

原创作品,转载必须标注原文链接:https://blog.csdn.net/youcans/article/details/120995650

Copyright 2021 youcans, XUPT

Crated:2021-10-20

youcans 的 OpenCV 学习课—1.安装与环境配置
youcans 的 OpenCV 学习课—2.图像读取与显示
youcans 的 OpenCV 学习课—3.图像的创建与修改
youcans 的 OpenCV 学习课—4.图像的叠加与混合
youcans 的 OpenCV 学习课—5.图像的几何变换
youcans 的 OpenCV 学习课—6.灰度变换与直方图处理
youcans 的 OpenCV 学习课—7.空间域图像滤波
youcans 的 OpenCV 学习课—8.频率域图像滤波(上)
youcans 的 OpenCV 学习课—9.频率域图像滤波(下)

youcans 的 OpenCV 学习课—1.安装与环境配置相关推荐

  1. youcans 的 OpenCV 学习课—10. 图像复原与重建

    youcans 的 OpenCV 学习课-10. 图像复原与重建 本系列面向 Python 小白,从零开始实战解说 OpenCV 项目实战. 图像复原是对图像退化过程建模,并以图像退化的先验知识来恢复 ...

  2. youcans 的 OpenCV 学习课—8.频率域图像滤波(上)

    欢迎关注 『OpenCV 例程200篇』 系列,持续更新中 欢迎关注 『youcans 的 OpenCV 学习课』 系列,持续更新中 youcans 的 OpenCV 学习课-1.安装与环境配置 yo ...

  3. youcans 的 OpenCV 学习课—6.灰度变换与直方图处理

    youcans 的 OpenCV 学习课-6.灰度变换与直方图处理 本系列面向 Python 小白,从零开始实战解说 OpenCV 项目实战. 空间域的图像处理方法直接对图像的像素点进行处理,空间域图 ...

  4. youcans 的 OpenCV 学习课—5.图像的几何变换

    youcans 的 OpenCV 学习课-5.图像的几何变换 本系列面向 Python 小白,从零开始实战解说 OpenCV 项目实战. 几何变换是指对图像的位置.大小.形状.投影进行变换,是将图像从 ...

  5. youcans 的 OpenCV 学习课—4.图像的叠加与混合

    youcans 的 OpenCV 学习课-4.图像的叠加与混合 本系列面向 Python 小白,从零开始实战解说 OpenCV 项目实战. 本节介绍图像的加法.叠加与混合,提供完整例程和运行结果:加法 ...

  6. youcans 的 OpenCV 学习课—3.图像的创建与修改

    youcans 的 OpenCV 学习课-3.图像的创建与修改 本系列面向 Python 小白,从零开始实战解说 OpenCV 项目实战. OpenCV 中图像的数据结构是 ndarray 多维数组, ...

  7. youcans 的 OpenCV 学习课—2.图像读取与显示

    youcans 的 OpenCV 学习课-2.图像读取与显示 本系列面向 Python 小白,从零开始实战解说 OpenCV 项目实战. 本节介绍图像的读取.保存和显示.除基本方法和例程外,还给出了从 ...

  8. 【youcans 的 OpenCV 学习课】7. 空间域图像滤波

    专栏地址:『youcans 的图像处理学习课』 文章目录:『youcans 的图像处理学习课 - 总目录』 [youcans 的 OpenCV 学习课]7. 空间域图像滤波 图像滤波是在尽可能保留图像 ...

  9. opencv学习-第1节:环境配置与搭建

    本次以开发环境:opencv4.4+vs 2015专业版 64位+windows为例进行环境配置,建议安装以上搭配的版本,避免踩坑. 语言:C++ 参考:https://www.bilibili.co ...

最新文章

  1. 一个或多个实体的验证失败。 有关更多详细信息,请参见“ EntityValidationErrors”属性
  2. Python3入门(十一)——IO编程
  3. HDU-4278 Faulty Odometer 数学递推 || 八进制
  4. android 双层饼图_python:给表格加上双层饼图,让同事的图表黯然失色
  5. 转写准确率95%,搜狗开放AI技术实现录音笔行业进化
  6. 【软件测试】验收测试是以最终用户为主的测试
  7. python机器学习案例系列教程——层次聚类(文档聚类)
  8. 破坏计算机系统信息罪司法解释,破坏计算机信息系统罪司法解释是怎样的的呢?...
  9. 发现一本好书--《Windows用户态程序高效排错 》
  10. Python设计模式(七)【命令模式】
  11. 华成英-模拟电子技术P13 多级放大器 笔记
  12. 机器学习的通俗讲解!
  13. 机器码(machine code)和字节码(byte code)是什么?
  14. 《畅玩NAS》 使用树莓派打造一个NAS服务器
  15. vue3和vue2不同点总结
  16. 嵌入式RTSP转RTMP设备说明
  17. 前端踩坑(八)前端使用Moment 时间格式化错误
  18. python实现手机连续点击
  19. 众里寻她千百度,wordperss 热键
  20. hicharts堆叠柱状图堆叠数据标签显示百分比

热门文章

  1. 一般java,【面试题】java一般
  2. mysql 数据库操作类_【数据库操作类】10个php操作数据库类下载
  3. live555推流rtsp_Hi3518 RTSP推流
  4. Java最后_Java最后一次总结
  5. 控制反转 IOC 与依赖注入 DI
  6. Java并发编程实战————并发技巧小结
  7. MySql主从同步最小配置
  8. 问题反馈信息处理平台开发过程
  9. react 怎么获取表格_react学习之js-xlsx导入和导出excel表格
  10. 《计算机导论》课程论文,计算机导论课程论文