【youcans 的图像处理学习课】1. 安装与环境配置

专栏地址:『youcans 的图像处理学习课』
文章目录:『youcans 的图像处理学习课 - 总目录』


【youcans 的图像处理学习课】1. 安装与环境配置


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 已经安装成功、配置正确了。

【本节完】



版权声明:
youcans@xupt 原创作品,转载必须标注原文链接:(https://blog.csdn.net/youcans/article/details/120995650)
Copyright 2022 youcans, XUPT

专栏地址:『youcans 的图像处理学习课』
文章目录:『youcans 的图像处理学习课 - 总目录』

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/566078.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Css框模型

Css框模型 术语翻译: element:元素 padding:内边距 border:边框 margin:外边框

【youcans 的图像处理学习课】2. 图像读取与显示

专栏地址:『youcans 的图像处理学习课』 文章目录:『youcans 的图像处理学习课 - 总目录』 【youcans 的图像处理学习课】2. 图像读取与显示 文章目录【youcans 的图像处理学习课】2. 图像读取与显示1. 图像的读取2. 图像的保存3. 图像的显示4. 通过 mat…

Css文本

Css文本 Css文本 Css文本属性可以定义文本外观。通过文本属性,你可以改变文本的颜色、字符间距、对齐文本,装饰文本,对文本进行缩进等等字符转换:text-transform 1.none2.uppercase3.lowercase 4.capitalize 默认值none对文本不做…

【youcans 的图像处理学习课】3. 图像的创建与修改

专栏地址:『youcans 的图像处理学习课』 文章目录:『youcans 的图像处理学习课 - 总目录』 【youcans 的图像处理学习课】3. 图像的创建与修改 文章目录【youcans 的图像处理学习课】3. 图像的创建与修改1. 图像基本知识1.1 图像颜色的分类1.2 数字图像的…

【OpenCV 例程300篇】01. 图像的读取(cv2.imread)

专栏地址:『youcans 的 OpenCV 例程300篇 - 总目录』 01. 图像的读取(cv2.imread) 02. 图像的保存(cv2.imwrite) 03. 图像的显示(cv2.imshow) 04. 用 matplotlib 显示图像(plt.imsho…

【OpenCV 例程300篇】02. 图像的保存(cv2.imwrite)

专栏地址:『youcans 的 OpenCV 例程300篇 - 总目录』 01. 图像的读取(cv2.imread) 02. 图像的保存(cv2.imwrite) 03. 图像的显示(cv2.imshow) 04. 用 matplotlib 显示图像(plt.imsho…

【OpenCV 例程300篇】03. 图像的显示(cv2.imshow)

专栏地址:『youcans 的 OpenCV 例程300篇 - 总目录』 01. 图像的读取(cv2.imread) 02. 图像的保存(cv2.imwrite) 03. 图像的显示(cv2.imshow) 04. 用 matplotlib 显示图像(plt.imsho…

【OpenCV 例程300篇】04. 用 matplotlib 显示图像(plt.imshow)

专栏地址:『youcans 的 OpenCV 例程300篇 - 总目录』 01. 图像的读取(cv2.imread) 02. 图像的保存(cv2.imwrite) 03. 图像的显示(cv2.imshow) 04. 用 matplotlib 显示图像(plt.imsho…

【OpenCV 例程300篇】05. 图像的属性(np.shape)

专栏地址:『youcans 的 OpenCV 例程 300 篇』 【OpenCV 例程300篇】05. 图像的属性(np.shape) OpenCV 中图像对象的数据结构是 ndarray 多维数组,因此 ndarray 数组的属性和操作方法也都适用于 OpenCV 的图像对象。 img.ndim&…

【OpenCV 例程300篇】06. 像素的编辑(img.itemset)

文章目录:『youcans 的 OpenCV 例程300篇 - 总目录』 【OpenCV 例程300篇】06. 像素的编辑(img.itemset) 像素是构成数字图像的基本单位,像素处理是图像处理的基本操作。 对像素的访问、修改,可以使用 Numpy 方法直接…

图片里的标志化的构造和执行

图片里的标志化的构造和执行 这是一篇解释在图片里面的进行标志化构造和执行的文章。你最好和这篇文章一起阅读 Symbolic API..标志构成 标志是我们想做的计算的描述。标志构造API生成计算图源来描述计算的需要。下面的图片显示了怎样我们组成标志来描述基本的计算。 mxnet.sy…

【OpenCV 例程300篇】07. 图像的创建(np.zeros)

专栏地址:『youcans 的 OpenCV 例程 300 篇』 【OpenCV 例程300篇】07. 图像的创建(np.zeros) OpenCV 中图像对象的数据结构是 ndarray 多维数组,因此可以用 Numpy 创建多维数组来生成图像。特别对于空白、黑色、白色、随机等特殊…

机器学习里面常用知识

每次手推公式就会遇见各种不会的,在网上搜了个总结的还不错的常用求导公式。。。继续更新中…… 一、基本线性代数 以下部分原文地址:http://blog.163.com/live_freely/blog/static/151142060201023154057339/ 在网上看到有人贴了如下求导公式&#xff1…

【OpenCV 例程300篇】09. 图像的裁剪(cv2.selectROI)

专栏地址:『youcans 的 OpenCV 例程 300 篇』 【OpenCV 例程300篇】09. 图像的裁剪(cv2.selectROI) 用 Numpy 的切片方法可以进行图像的裁剪,操作简单方便。 方法说明: retval img[y:yh, x:xw].copy() 对图像 img 裁…

【OpenCV 例程300篇】10. 图像的拼接(np.hstack)

3文章目录:『youcans 的 OpenCV 例程300篇 - 总目录』 【OpenCV 例程300篇】10. 图像的拼接(np.hstack) 用 Numpy 的数组堆叠方法可以进行图像的拼接,操作简单方便。 方法说明: retval numpy.hstack((img1, img2, ……

win下python和opencv安装

最简单粗暴的安装教程 1.先去下载3个文件pycharm(IDE),anaconda(集成库),opencv的whl文件 http://yun.baidu.com/share/link?shareid1022325066&uk1275716166 里面还有别的学习教程,包括opencv,numpy,matplotlib等。 2.把pycharm和an…

【OpenCV 例程300篇】11. 图像通道的拆分(cv2.split)

文章目录:『youcans 的 OpenCV 例程300篇 - 总目录』 【OpenCV 例程300篇】11. 图像通道的拆分(cv2.split) 函数 cv2.split() 将 3 通道 BGR 彩色图像分离为 B、G、R 单通道图像。 函数说明: cv2.split(img[, mv]) -> retval …

机器学习矩阵求导

矩阵求导好像读书的时候都没学过,因为讲矩阵的课程上不讲求导,讲求导的课又不提矩阵。如果从事机器学习方面的工作,那就一定会遇到矩阵求导的东西。维基百科上:http://en.wikipedia.org/wiki/Matrix_calculus , 根据Y与…

【OpenCV 例程300篇】12. 图像通道的合并(cv2.merge)

文章目录:『youcans 的 OpenCV 例程200篇 - 总目录』 【OpenCV 例程300篇】12. 图像通道的合并(cv2.merge) 函数 cv2.merge() 将 B、G、R 单通道合并为 3 通道 BGR 彩色图像。 函数说明: cv2.merge(mv[, dst]) -> retval # BG…

机器学习向量化练习

机器学习向量化练习 在先前的练习里面,我们已经通过对自然图像完成了一个稀疏自编码的练习。在这次我们将通过向量化来使我们运行速度更快,并且我们将把它应用到手写数字里面。 数据下载 MNIST Dataset (Training Images)MNIST Dataset (Training Labe…