openCV之图像处理入门

简介: openCV之图像处理入门

opencv的安装十分简单,在配置好python的环境下在命令行输入pip install opencv-python(若在linux环境下需注意pip的版本是pip还是pip3)如下图,若以安装过,就会出现一下所示。

首先我们需要对图像有一个简单的认识,每一幅图像都是一个大矩阵,矩阵上的每一个点就是像素点。openCV提供了imread()函数可以用来读取图像,如下所示:

首先我们准备一张图像test.png.然后新建python文件并放在同一个目录下(主要是为了让python可以读取到这个文件),python文件中代码如下


import cv2
img = cv2.imwrite('test.png', 0)
''' 0的含义就是表示该图像以灰度模式加载进来
    区分黑白图像,灰度图像和彩色图像(rgb)
    黑白图像只有黑白两个颜色,灰度图像除了黑白,还有黑白之间的不同深度的灰色颜色
    彩色图像就是平时所说的rgb图像
    imread()函数里边0表示灰度图,1表示彩色
'''
print(img)

我们可以看到运行结果

result

就是一个巨大的矩阵,我们看矩阵(1,1)位置表示像素值是168

下面我们打印img[0][0]

0,0就是表示的矩阵(1,1)的位置的像素值168.

同样的流程我们用彩色模式加载一次

结果有点长,我复制出来

[[[249 182  59]
  [250 182  59]
  [250 182  59]
  ...
  [251 249 232]
  [252 250 233]
  [250 250 233]]#这是第一行的数据
 [[247 180  58]
  [248 181  58]
  [249 182  60]
  ...
  [252 251 232]
  [253 251 232]
  [251 251 232]]#这是第二行的数据
 [[248 180  60]
  [249 182  59]
  [250 182  62]
  ...
  [254 253 232]
  [254 253 232]
  [253 253 232]]#这是第三行的数据
 ...            #此处省略了n行
 [[156 125  92]
  [161 123  92]
  [167 127  96]
  ...
  [111 117 120]
  [162 168 171]
  [133 138 139]]#倒数第三行数据
 [[205 176 142]
  [216 185 156]
  [207 175 149]
  ...
  [118 126 130]
  [135 143 147]
  [ 78  83  86]]#倒数第二行数据
 [[225 209 192]
  [219 206 195]
  [220 212 193]
  ...
  [158 163 172]
  [130 133 142]
  [161 162 166]]]#倒数第一行数据

可以看到,这次每一个像素点都成了三个数,他们分别表示bgr(这里要千万注意是和RGB反过来的BGR),也就是我们平时所说的rgb图像,我们通过打印来分析一下

可以看到结果分别对应前三行的第一个像素的结果

openCV还提供了imshow()方法来显示图像,以及imwrite()方法来存储图像,下面我们分别以灰度和彩色的形式,来展示一下图像。



imwrite()则是把图片保存起来,用法如下

cv2.imwrite('test2.png', img)

附注:关于imgread()和imwrite()的小用法之----图像格式之间的转换,请参考python之png与jpg之前的转换

相关文章
|
3月前
|
算法 计算机视觉
基于qt的opencv实时图像处理框架FastCvLearn实战
本文介绍了一个基于Qt的OpenCV实时图像处理框架FastCvLearn,通过手撕代码的方式详细讲解了如何实现实时人脸马赛克等功能,并提供了结果展示和基础知识回顾。
149 7
|
7月前
|
openCL 开发工具 C语言
OpenCV 图像处理学习手册:6~7
OpenCV 图像处理学习手册:6~7
160 0
|
7月前
|
存储 编解码 算法
OpenCV 图像处理学习手册:1~5
OpenCV 图像处理学习手册:1~5
93 0
|
7月前
|
人工智能 Linux API
OpenCV这么简单为啥不学——1.1、图像处理(灰度图、模糊图片、GaussianBlur函数、提取边缘、边缘膨胀、边缘细化)
OpenCV这么简单为啥不学——1.1、图像处理(灰度图、模糊图片、GaussianBlur函数、提取边缘、边缘膨胀、边缘细化)
113 0
|
2月前
|
机器学习/深度学习 算法 计算机视觉
【Python篇】Python + OpenCV 全面实战:解锁图像处理与视觉智能的核心技能
【Python篇】Python + OpenCV 全面实战:解锁图像处理与视觉智能的核心技能
109 2
WK
|
4月前
|
计算机视觉 Python
如何使用OpenCV进行基本图像处理
使用OpenCV进行基本图像处理包括安装OpenCV,读取与显示图像,转换图像颜色空间(如从BGR到RGB),调整图像大小,裁剪特定区域,旋转图像,以及应用图像滤镜如高斯模糊等效果。这些基础操作是进行更复杂图像处理任务的前提。OpenCV还支持特征检测、图像分割及对象识别等高级功能。
WK
56 4
|
6月前
|
计算机视觉
【轻松入门】OpenCV4.8 + QT5.x开发环境搭建
【轻松入门】OpenCV4.8 + QT5.x开发环境搭建
103 0
【轻松入门】OpenCV4.8 + QT5.x开发环境搭建
|
7月前
|
人工智能 计算机视觉 Python
【OpenCV】计算机视觉图像处理基础知识(上)
【OpenCV】计算机视觉图像处理基础知识(上)
|
7月前
|
算法 计算机视觉
【OpenCV】计算机视觉图像处理基础知识(下)
【OpenCV】计算机视觉图像处理基础知识(下)
|
6月前
|
机器学习/深度学习 监控 算法
OpenCV一文入门
OpenCV 是一个开源的计算机视觉库,用于图像处理、视频分析和机器学习。它包含数千种算法,涉及滤波、几何变换、特征检测、机器学习等多个领域。支持图像和视频读取、显示、处理,例如图像转灰度、高斯模糊和边缘检测。安装 Python 版本可通过 `pip install opencv-python`。OpenCV 广泛应用于自动驾驶、安防监控、医疗影像和制造业等,未来将加强深度学习支持和跨平台性能。
64 0

热门文章

最新文章