01前言
计算机视觉基础首先是处理图像、视频这些非结构化的数据,
而图像处理库比较常用和强大的有 PIL、OpenCV 模块,
本项目主要讲述 OpenCV 的具体用法
02内容目录
主要介绍了opencv模块在图像处理方面的一些常用操作。
-
图像文件操作
-
图像基本操作
-
绘图功能
-
轨迹栏做调色板
-
图像阈值
-
图像平滑
-
边缘检测
-
轮廓检测
-
颜色空间转换及目标追踪
-
图像增强
人工智能学习路径总览,压箱底的小白学习路径!
我整理了一份关于pytorch、python基础,图像处理opencv\自然语言处理、机器学习、数学基础等资源库,想学习人工智能或者转行到高薪资行业的,大学生都非常实用,无任何套路免费提供,,加我裙:361598961
也可以领取的内部资源,人工智能题库,大厂面试题 学习大纲 自学课程大纲还有200G人工智能资料大礼包免费送哦~
导入模块
import cv2
import numpy as np
import pandas as pd
import warnings
import seaborn as sns
import matplotlib.pyplot as plt
warnings.filterwarnings(‘ignore’)
%matplotlib inline
Matplotlib is building the font cache using fc-list. This may take a moment.
定义图像路径
path = ‘…/work/CV/tx3.jpg’
path2 = ‘…/work/CV/cap.jpg’
图像文件操作
1.读取图像
im = cv2.imread(path)
print(im)
im = cv2.imread(path)
print(im)
2.显示图像
cv2.imwrite(‘testSave_1.jpg’, im)
一文带你体验OpenCV强大图像处理功能
3.保存图像
cv2.imwrite(‘testSave_1.jpg’, im)
True
图像基本操作
1.图像属性查看
im.shape 返回(行数、列数、通道数)
im.size 返回像素总值 = 行数 x 列数 x 通道数
im.dtype 返回类型
print(">>>图像维度:", im.shape)
print(">>>图像像素总数:", im.size)
print(">>>图像数据类型:", im.dtype)
2.截取ROI(感兴趣)区域
一般都是rgb,opencv默认是bgr
分割
b, g, r = cv2.split(im)
b, g, r
一文带你体验OpenCV强大图像处理功能
3.通道分割合并及像素直方图分析
3.1.分割与合并
一般都是rgb,opencv默认是bgr
分割
b, g, r = cv2.split(im)
b, g, r
(array([[255, 255, 255, …, 255, 255, 255],
[255, 255, 255, …, 255, 255, 255],
[255, 255, 255, …, 255, 255, 255],
…,
[255, 255, 255, …, 255, 255, 255],
[255, 255, 255, …, 255, 255, 255],
[255, 255, 255, …, 255, 255, 255]], dtype=uint8),
array([[255, 255, 255, …, 255, 255, 255],
[255, 255, 255, …, 255, 255, 255],
[255, 255, 255, …, 255, 255, 255],
…,
[255, 255, 255, …, 255, 255, 255],
[255, 255, 255, …, 255, 255, 255],
[255, 255, 255, …, 255, 255, 255]], dtype=uint8),
array([[255, 255, 255, …, 255, 255, 255],
[255, 255, 255, …, 255, 255, 255],
[255, 255, 255, …, 255, 255, 255],
…,
[255, 255, 255, …, 255, 255, 255],
[255, 255, 255, …, 255, 255, 255],
[255, 255, 255, …, 255, 255, 255]], dtype=uint8))
合并
im = cv2.merge((b, g, r))
im
array([[[255, 255, 255],
[255, 255, 255],
[255, 255, 255],
…,
[255, 255, 255],
[255, 255, 255],
[255, 255, 255]],
[[255, 255, 255],
[255, 255, 255],
[255, 255, 255],
…,
[255, 255, 255],
[255, 255, 255],
[255,