iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >3段Python图像处理的实用代码的分享
  • 870
分享到

3段Python图像处理的实用代码的分享

2024-04-02 19:04:59 870人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

目录前言边缘检测将照片变成素描风格判断形状前言 今天给大家分析3个计算机视觉方向的python实用代码,主要用到的库有: OpenCV-Pythonnumpypillow 要是大家所

前言

今天给大家分析3个计算机视觉方向的python实用代码,主要用到的库有:

要是大家所配置的环境当中没有这几个模块的话,可先用pip命令下载安装:

pip install opencv-python numpy pillow

边缘检测

边缘检测的基本思想就是简化图像信息,使用边缘线代表图像所携带信息,而这次我们要用到的则是Canny边缘检测算子,在Opencv当中需要调用的是cv.canny()方法即可,代码如下:

import cv2 as cv
import matplotlib.pyplot as plt

img = cv.imread('导入图像的路径',0)
edges = cv.Canny(img,100,200)
plt.subplot(121)
plt.imshow(img, cmap='gray')
.........
plt.show()

output:

将照片变成素描风格

我们最终要实现的目的在于将照片变成素描风格,大致的逻辑在于首先需要将图片变成灰色图像然后反转,在反转之后进行模糊化处理,代码如下:

import cv2
img = cv2.imread("导入照片的路径")

## 将照片灰度化处理
gray_image = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
## 将灰度化的照片反转处理
inverted_gray_image = 255-gray_image
## 将反转的照片模糊化处理
blurred_inverted_gray_image = cv2.GaussianBlur(inverted_gray_image, (19,19),0)
## 再一次的进行反转
inverted_blurred_image = 255-blurred_inverted_gray_image
### 颜色减淡混合处理
sketck = cv2.divide(gray_image, inverted_blurred_image,scale= 256.0)

cv2.imshow("Original Image",img)
cv2.imshow("Pencil Sketch", sketck)
cv2.waiTKEy(0)

output:

判断形状

现在我们需要来判断图片当中图形的轮廓,而识别轮廓的算法opencv模块当中是有内置的,代码如下:

import cv2
import numpy as np
from matplotlib import pyplot as plt

# 导入照片
img = cv2.imread('3.png')
# 将照片灰度化处理,当然要是您的照片已经是黑白的,就可以跳过这一步
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# setting threshold of the gray image
_, threshold = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY)

# 识别轮廓的方法
contours, _ = cv2.findContours(
    threshold, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)

i = 0
for contour in contours:
    # cv2.approxPloyDP() function to approximate the shape
    approx = cv2.approxPolyDP(contour, 0.01 * cv2.arcLength(contour, True), True)
    # 找到图片的中心点
    M = cv2.moments(contour)
    if M['m00'] != 0.0:
        x = int(M['m10'] / M['m00'])
        y = int(M['m01'] / M['m00'])
    # 将轮廓的名字放在各个图形的中央
    if len(approx) == 3:
        cv2.putText(img, 'Triangle', (x, y),
                    cv2.FONT_HERSHEY_SIMPLEX, 0.6, (0, 0, 0), 2)
    elif len(approx) == 4:
        .......
    elif len(approx) == 5:
        ......
    elif len(approx) == 6:
        ......
    else:
        ......

# 将最后的图形呈现出来
cv2.imshow('shapes', img)
cv2.waitKey(0)
cv2.destroyAllwindows()

output:

是不是简单又实用?

到此这篇关于3段Python图像处理的实用代码的分享的文章就介绍到这了,更多相关Python图像处理内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: 3段Python图像处理的实用代码的分享

本文链接: https://www.lsjlt.com/news/118491.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 3段Python图像处理的实用代码的分享
    目录前言边缘检测将照片变成素描风格判断形状前言 今天给大家分析3个计算机视觉方向的Python实用代码,主要用到的库有: opencv-pythonnumpypillow 要是大家所...
    99+
    2024-04-02
  • Python图像处理【3】Python图像处理库应用
    Python图像处理库应用 0. 前言1. 将 RGB 图像转换为灰度图像算法1.1 算法原理3.2 算法实现 2. 使用 PIL 库计算图像差异2.1 算法原理2.2 算法实现 ...
    99+
    2023-09-06
    python 图像处理 计算机视觉
  • OpenCV中的图像修复代码分享
    这篇文章主要讲解了“OpenCV中的图像修复代码分享”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“OpenCV中的图像修复代码分享”吧!目录 效果图 原理 源码这篇博客将介绍如何通过Open...
    99+
    2023-06-20
  • python 包之 Pillow 图像处理教程分享
    目录一、安装二、打开图片三、转换格式并保存四、创建缩略图五、获取图片属性六、图片信息七、调色板八、画板九、图片模式十、模式转换十一、矩阵模式转换十二、图片尺寸十三、通道分离十四、复制...
    99+
    2024-04-02
  • 分享13个非常有用的Python代码片段
    目录1.将两个列表合并成一个字典2.将两个或多个列表合并为一个包含列表的列表3.对字典列表进行排序4.对字符串列表进行排序5.根据另一个列表对列表进行排序6.将列表映射到字典7.合并...
    99+
    2024-04-02
  • python图像处理-利用一行代码实现灰度图抠图
    目录一行代码实现灰度图抠图Python抠图程序源码准备程序构思完整代码截图如下,每条语句均有功能注释一行代码实现灰度图抠图 抠图是ps的最基本技能,利用python可以实现用一行代码...
    99+
    2024-04-02
  • 分享VSCode简单的代码片段
    这篇文章主要介绍“分享VSCode简单的代码片段”,在日常操作中,相信很多人在分享VSCode简单的代码片段问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”分享VSCode简单...
    99+
    2024-04-02
  • GitLab的代码片段功能及分享实践
    GitLab的代码片段功能及分享实践【引言】在软件开发过程中,我们经常会遇到一些重复性的代码片段,例如常用的函数、配置文件模板等等。为了提高开发效率,GitLab提供了代码片段功能,可以方便地存储和分享这些代码片段,使团队成员能够快速获取和...
    99+
    2023-10-22
    代码片段功能: 代码片段 分享实践: 分享 GitLab: GitLab
  • 进行数据处理的6个 Python 代码块分享
    目录1、选取有空值的行2、快速替换列值3、对列进行分区4、将一列分为多列5、中文筛选6、更改列的位置前言: 大家好,今天和大家分享自己总结的6个常用的 Python 数据处理代码,对...
    99+
    2024-04-02
  • 3行代码实现 Python 并行处理,速
    来源 | towardsdatascience.com 编译 | 数说君 出品 | 数说工作室 原标题:Here’s how you can get a 2–6x speed-up on your data pre-processing...
    99+
    2023-01-31
    代码 Python
  • Python中常用功能的实现代码分享
    目录1. 新建文件夹2. 后台运行并保存log3. 文件读取4. 字符串判断5. 统计list元素出现次数6. timestamp 转换标准时间7. 排序8. 文件路径获取9. 同一...
    99+
    2023-05-16
    Python常用功能实现 Python常用功能 Python功能
  • 分享3个简单的Python代码高效运行技巧
    目录1. 引言2. 获取字典的值3. 循环中使用enumerate4. 使用f-strings来拼接和打印字符串5. 总结1. 引言 小伙伴们日常工作中都必不可少地使用Python实...
    99+
    2024-04-02
  • python数字图像处理之图像的批量处理
    目录正文图片集合函数批量读取批量转换为灰度图批量保存正文 有些时候,我们不仅要对一张图片进行处理,可能还会对一批图片处理。这时候,我们可以通过循环来执行处理,也可以调用程序自带的图片...
    99+
    2024-04-02
  • C++使用opencv读取图片的操作代码(图像处理)
    目录代码理解全部代码读取结果参考代码理解 using namespace cv; 解释:加入此代码,后面就不需要在函数前加入cv:: 如从cv::imread(),可以直接写成imr...
    99+
    2024-04-02
  • 分享3个非常实用的 Python 模块
    目录一、Psutil二、Pendulum三、Pyfiglet一、Psutil Python当中的Psutil模块是个跨平台库,它能够轻松获取系统运行的进程和系统利用率,包括CPU、内...
    99+
    2024-04-02
  • python实现图像识别的示例代码
    一、安装库 首先我们需要安装PIL和pytesseract库。 PIL:(Python Imaging Library)是Python平台上的图像处理标准库,功能非常强大。 pyte...
    99+
    2024-04-02
  • Python的cookie处理分享
    只是拿来的文章,留个存档,可不保证能用 使用已有的cookie访问网站 import cookielib, urllib2 ckjar = cookielib.MozillaCookieJar(os.path.join(’C:...
    99+
    2023-01-31
    Python cookie
  • python批量压缩图片的脚本代码分享
    本篇文章和大家了解一下python批量压缩图片的脚本代码分享。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。简介用Python批量压缩图片,把文件夹或图片直接拖入即可需要 NeedsPython 3Pillow (用pip...
    99+
    2023-06-15
  • 配置IP地址的批处理代码分享
    本篇内容介绍了“配置IP地址的批处理代码分享”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!代码如下:@ ECHO OFF...
    99+
    2023-06-08
  • OpenCV+Qt实现图像处理操作工具的示例代码
    目录一、目标二、使用Qt界面三、图像处理操作完整代码一、目标 Qt界面实现 雪花屏 高斯模糊 中值滤波 毛玻璃 灰度化 XY方向模糊 双边模糊 腐蚀 [图像处理操作] 要求左边原图,...
    99+
    2022-11-13
    OpenCV Qt图像处理 OpenCV 图像处理 Qt 图像处理
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作