OpenCV:修订间差异
无编辑摘要 |
无编辑摘要 |
||
(未显示同一用户的3个中间版本) | |||
第49行: | 第49行: | ||
==图片处理== | ==图片处理== | ||
{| class="wikitable" style="width: 100%; | |||
! 名称 | |||
! 描述 | |||
! 示例 | |||
|- | |||
|读取保存图片 imread() | |||
| | |||
| | |||
|- | |||
| | |||
| | |||
| | |||
| | |||
|- | |||
| 改变尺寸 resize() | |||
| | |||
| <syntaxhighlight lang="python" > | |||
import cv2 | |||
img = cv2.imread(r"test.jpg") | |||
width = 1200 | |||
height = int(width*img.shape[1]/img.shape[0]) | |||
img_1200 = cv2.resize(img, (width,height), interpolation=cv2.INTER_CUBIC) | |||
</syntaxhighlight> 宽度调整为1200px,高度随比例。 | |||
|- | |||
|压缩图片 | |||
| | |||
| <syntaxhighlight lang="python" > | |||
cv2.imwrite('out_80.jpg', img, [cv2.IMWRITE_JPEG_QUALITY,80]) | |||
cv2.imencode('.jpg', img, [cv2.IMWRITE_JPEG_QUALITY,80])[1].tofile(r'D:\测试\out_80.jpg') | |||
</syntaxhighlight> | |||
|- | |||
| | |||
| | |||
| | |||
|} | |||
第60行: | 第92行: | ||
==中文问题== | ==中文问题== | ||
imread()和imwrite()读取保存文件时候,路径中有中文字符会报错,使用imdecode替代。 | |||
<syntaxhighlight lang="python" > | |||
import cv2 | |||
import numpy as np | |||
file= r'D:\测试\图片.jpg' | |||
img = cv2.imdecode(np.fromfile(file=file , dtype=np.uint8), cv2.IMREAD_COLOR) | |||
file_output = r'D:\测试\图片输出.jpg' | |||
cv2.imencode(ext='.jpg', img=img)[1].tofile(file_output) | |||
</syntaxhighlight> | |||
==资源== | ==资源== |
2023年4月26日 (三) 06:48的最新版本
OpenCV(Open Source Computer Vision Library),一个开源的计算机视觉库,可以实时图像处理,识别。OpenCV支持多种编程语言,如C++,Python,Java等,并且可以在不同的平台上使用。
简介
时间轴
安装
OpenCV 安装
了解更多 >> OpenCV 文档:安装概览
OpenCV-Python 安装
OpenCV-Python是OpenCV的Python API。
使用pip安装预构建的仅限 CPU 的 OpenCV 包,如果需要启用其他模块(例如 CUDA),需要手动安装。OpenCV-Python预构建4个软件包,其中无头模式,不包含任何用户界面,适用服务器环境(如 Docker、云环境等)。
# 主模块包
pip install opencv-python
# 完整包,包含主模块和 contrib/extra 模块
# pip install opencv-contrib-python
# 无头主模块包
# pip install opencv-python-headless
# 无头完整包,包含主模块和 contrib/extra 模块
# install opencv-contrib-python-headless
快速入门
图片转换
import cv2
img = cv2.imread("test.jpg") # 读取文件
cv.imshow("Display Title", img) # 显示
cv.imwrite("test.png", img) # 保存图片
了解更多 >> OpenCV 4.x 文档:显示图片
图片处理
名称 | 描述 | 示例 | |
---|---|---|---|
读取保存图片 imread() | |||
改变尺寸 resize() | import cv2
img = cv2.imread(r"test.jpg")
width = 1200
height = int(width*img.shape[1]/img.shape[0])
img_1200 = cv2.resize(img, (width,height), interpolation=cv2.INTER_CUBIC)
| ||
压缩图片 | cv2.imwrite('out_80.jpg', img, [cv2.IMWRITE_JPEG_QUALITY,80])
cv2.imencode('.jpg', img, [cv2.IMWRITE_JPEG_QUALITY,80])[1].tofile(r'D:\测试\out_80.jpg')
| ||
视频分析
对象检测
中文问题
imread()和imwrite()读取保存文件时候,路径中有中文字符会报错,使用imdecode替代。
import cv2
import numpy as np
file= r'D:\测试\图片.jpg'
img = cv2.imdecode(np.fromfile(file=file , dtype=np.uint8), cv2.IMREAD_COLOR)
file_output = r'D:\测试\图片输出.jpg'
cv2.imencode(ext='.jpg', img=img)[1].tofile(file_output)
资源
官网
- OpenCV 官网:https://opencv.org/
- OpenCV 文档:https://docs.opencv.org/
- OpenCV 源代码:https://github.com/opencv/opencv
- opencv-python 源代码:https://github.com/opencv/opencv-python
- OpenCV 源代码:https://sourceforge.net/projects/opencvlibrary/
- OpenCV 论坛:https://forum.opencv.org/