Python图像处理(一)python_opencv基本使用

简介: Python图像处理使用到的库是opencv-python。安装库命令:复制代码pip install opencv-python 我是在windows上做测试,使用的是Anaconda来安装,这就比较简单了,图形化界面操作。具体使用请移步《Python(三)开源的Python包管理器 anaconda——window安装》 我这里也只是简单的使用opencv的一些功能。具体更多详细的功能请参照opencv中文文档:woshicver.com/这部分文档是由英文翻译成中文的,可能有偏差,谨慎阅读。 也放一下opencv的官方文档吧,谷歌翻译的还不如上边的中文文档。

Python图像处理使用到的库是opencv-python。

安装库命令:

复制代码

pip install opencv-python

 

我是在windows上做测试,使用的是Anaconda来安装,这就比较简单了,图形化界面操作。具体使用请移步《Python(三)开源的Python包管理器 anaconda——window安装

 

我这里也只是简单的使用opencv的一些功能。

具体更多详细的功能请参照opencv中文文档:woshicver.com/

这部分文档是由英文翻译成中文的,可能有偏差,谨慎阅读。

 

也放一下opencv的官方文档吧,谷歌翻译的还不如上边的中文文档。翻译的结果那都不是人话。

docs.opencv.org/4.1.2/d6/d0…

一:使用opencv读取图片

python

复制代码

# 引入 opencv模块
import cv2 as cv
# 读取图片
img = cv.imread('tu.jpg')
# 展示图片
cv.imshow('tu.jpg',img)

 

运行程序,结果如下图所示:

image.png

二:将图片进行灰度转换

python

复制代码

# 引入 opencv模块
import cv2 as cv
# 将图片进行灰度转换
gray_img = cv.cvtColor(img,cv.COLOR_BGR2GRAY)
cv.imshow('gray_img',gray_img)

image.png

三:获取原图片尺寸:

scss

复制代码

print(gray_img.shape)

输出:

(1080, 1920, 3)

图片高为1080,宽为1920.

四:图片尺寸缩放

图片缩放这里要着重的说一下,我也是初学,可能是我没有找到,参数中必须同时设置宽高才可以,不能想css中那样,设置宽高其中一个值,而让另一个值根据比例缩放,不知道是我没有找到对应的写法,还是就没有这个功能。我这里缩放使用的还是根据其原始比例来设置缩放:

ini

复制代码

# 引入 opencv模块
import cv2 as cv
# 读取图片
img = cv.imread('tu.jpg')
# 展示图片
cv.imshow('tu.jpg',img)
# 图片尺寸缩放
resize_img = cv.resize(img,dsize=(1366,768))
cv.imshow('resize_img',resize_img)

运行程序,如下图所示:

image.png

五:绘制矩形

ini

复制代码

# 引入 opencv模块
import cv2 as cv
# 读取图片
img = cv.imread('tu.jpg')
# 展示图片
cv.imshow('tu.jpg',img)
# 绘制矩形
x, y, w, h = 100, 100, 100, 100
# 注意传递参数个数
(图片对象,左上角坐标,右下角坐标,绘制线颜色,线宽度)
cv.rectangle(img, (x, y), (x+w, y+h), color=(0, 255, 0), thickness=3)
cv.imshow('resize_img', img)

运行程序,如下图所示:

image.png

六:绘制圆形

ini

复制代码

# 绘制圆
x, y, z = 500, 500, 300
#(图片对象,圆心坐标,半径,绘制线颜色,线宽度)
cv.circle(img,center=(x,y),radius=z,color=(0,0,255),thickness=3)
cv.imshow('resize_img', img)

运行程序,如下图所示:

image.png

 

最后,放一下测试使用全部代码:

ini

复制代码

#!/usr/bin/python3
# -*- coding: utf-8 -*-
# @Time    : 2022/3/22 19:15
# @Author  : stone
# @Email   : 805795955@qq.com
# @File    : task.py
# @Software: PyCharm
# 引入 opencv模块
import cv2 as cv
# 读取图片
img = cv.imread('tu.jpg')
# 展示图片
cv.imshow('tu.jpg',img)
# 将图片进行灰度转换
gray_img = cv.cvtColor(img,cv.COLOR_BGR2GRAY)
cv.imshow('gray_img',gray_img)
# 获取原图片尺寸:
print(img.shape)
# # 图片尺寸缩放
resize_img = cv.resize(img,dsize=(1366,768))
cv.imshow('resize_img',resize_img)
# 绘制矩形
x, y, w, h = 100, 100, 100, 100
# 注意传递参数个数
# (图片对象,左上角坐标,右下角坐标,绘制线颜色,线宽度)
cv.rectangle(img, (x, y), (x+w, y+h), color=(0, 255, 0), thickness=3)
cv.imshow('resize_img', img)
# 绘制圆
x, y, z = 500, 500, 300
# (图片对象,圆心坐标,半径,绘制线颜色,线宽度)
cv.circle(img,center=(x,y),radius=z,color=(0,0,255),thickness=3)
cv.imshow('resize_img', img)
# 按esc 程序退出
while True:
    if 27 == cv.waitKey(0):
        cv.destroyAllWindows()
# num = cv.waitKey(0)
# print(num)

 

有好的建议,请在下方输入你的评论。

目录
相关文章
|
1天前
|
监控 Java 计算机视觉
Python图像处理中的内存泄漏问题:原因、检测与解决方案
在Python图像处理中,内存泄漏是常见问题,尤其在处理大图像时。本文探讨了内存泄漏的原因(如大图像数据、循环引用、外部库使用等),并介绍了检测工具(如memory_profiler、objgraph、tracemalloc)和解决方法(如显式释放资源、避免循环引用、选择良好内存管理的库)。通过具体代码示例,帮助开发者有效应对内存泄漏挑战。
11 1
|
28天前
|
XML 机器学习/深度学习 人工智能
使用 OpenCV 和 Python 轻松实现人脸检测
本文介绍如何使用OpenCV和Python实现人脸检测。首先,确保安装了OpenCV库并加载预训练的Haar特征模型。接着,通过读取图像或视频帧,将其转换为灰度图并使用`detectMultiScale`方法进行人脸检测。检测到的人脸用矩形框标出并显示。优化方法包括调整参数、多尺度检测及使用更先进模型。人脸检测是计算机视觉的基础技术,具有广泛应用前景。
61 10
|
1月前
|
机器学习/深度学习 存储 数据挖掘
Python图像处理实用指南:PIL库的多样化应用
本文介绍Python中PIL库在图像处理中的多样化应用,涵盖裁剪、调整大小、旋转、模糊、锐化、亮度和对比度调整、翻转、压缩及添加滤镜等操作。通过具体代码示例,展示如何轻松实现这些功能,帮助读者掌握高效图像处理技术,适用于图片美化、数据分析及机器学习等领域。
73 20
|
1月前
|
机器学习/深度学习 算法 数据可视化
Python的计算机视觉与图像处理
本文介绍了Python在计算机视觉和图像处理领域的应用,涵盖核心概念、算法原理、最佳实践及应用场景。重点讲解了OpenCV、NumPy、Pillow和Matplotlib等工具的使用,并通过代码实例展示了图像读写、处理和可视化的方法。实际应用包括自动驾驶、人脸识别、物体检测等。未来趋势涉及深度学习、边缘计算和量子计算,同时也讨论了数据不足、模型解释性和计算资源等挑战。
|
3月前
|
计算机视觉 开发者 Python
利用Python进行简单的图像处理
【10月更文挑战第36天】本文将引导读者理解如何使用Python编程语言和其强大的库,如PIL和OpenCV,进行图像处理。我们将从基本的图像操作开始,然后逐步深入到更复杂的技术,如滤波器和边缘检测。无论你是编程新手还是有经验的开发者,这篇文章都将为你提供新的视角和技能,让你能够更好地理解和操作图像数据。
|
4月前
|
计算机视觉 Python
python利用pyqt5和opencv打开电脑摄像头并进行拍照
本项目使用Python的PyQt5和OpenCV库实现了一个简单的摄像头应用。用户可以通过界面按钮打开或关闭摄像头,并实时预览视频流。点击“拍照”按钮可以捕捉当前画面并保存为图片文件。该应用适用于简单的图像采集和处理任务。
285 0
python利用pyqt5和opencv打开电脑摄像头并进行拍照
|
4月前
|
算法 数据可视化 计算机视觉
Python中医学图像处理常用的库
在Python中,医学图像处理常用的库包括:ITK(及其简化版SimpleITK)、3D Slicer、Pydicom、Nibabel、MedPy、OpenCV、Pillow和Scikit-Image。这些库分别擅长图像分割、配准、处理DICOM和NIfTI格式文件、图像增强及基础图像处理等任务。选择合适的库需根据具体需求和项目要求。
144 0
|
4月前
|
数据挖掘 计算机视觉 Python
基于Python的简单图像处理技术
【10月更文挑战第4天】在数字时代,图像处理已成为不可或缺的技能。本文通过Python语言,介绍了图像处理的基本方法,包括图像读取、显示、编辑和保存。我们将一起探索如何使用PIL库进行图像操作,并通过实际代码示例加深理解。无论你是编程新手还是图像处理爱好者,这篇文章都将为你打开一扇新窗,让你看到编程与创意结合的无限可能。
|
4月前
|
机器学习/深度学习 算法 计算机视觉
【Python篇】Python + OpenCV 全面实战:解锁图像处理与视觉智能的核心技能
【Python篇】Python + OpenCV 全面实战:解锁图像处理与视觉智能的核心技能
167 7
|
6月前
|
机器学习/深度学习 人工智能 监控
利用Python和OpenCV实现实时人脸识别系统
【8月更文挑战第31天】本文将引导您了解如何使用Python结合OpenCV库构建一个简易的实时人脸识别系统。通过分步讲解和示例代码,我们将探索如何从摄像头捕获视频流、进行人脸检测以及识别特定个体。本教程旨在为初学者提供一条明晰的学习路径,帮助他们快速入门并实践人脸识别技术。

热门文章

最新文章

推荐镜像

更多