精华内容
下载资源
问答
  • 使用Python进行图像处理
    千次阅读
    2020-06-11 13:14:10

    在1911年一份报纸上讨论新闻和宣传并引用报纸编辑Tess Flanders的文章中,出现了以下表达:

    使用图片。 值一千个字。

    类似的短语也出现在1913年的Piqua汽车供应公司的报纸广告中:

    一看值得一千个字。

    我不会深入探讨历史问题。 简介只是为了使其有趣一点,并说明这些短语如何使我们了解图片的重要性,以及它们如何真正在其中嵌入很多信息。 我敢肯定,我们大多数人都会意识到这一点,尤其是当我们注意到图片不仅可以留在纯文本上,而且还能留在我们的脑海中时。

    因此,毫无疑问,图片在我们的沟通中扮演着重要的角色,不仅是普通图片,而且还包括医学图像(例如MRI,超声等)之类的专业照片。

    我们可以通过不同的采集设备获取照片。 例如,使用皮肤镜检索黑色素瘤(皮肤癌)图像。 我们使用数码相机或智能手机为自己或朋友拍照。 但是,有时我们会在图片中发现一些问题,例如模糊,这可能是由于所使用的采集设备引起的。

    但是,在这种情况下该怎么办? 您已经收到了一些医学图像进行分析,而您别无选择,无法重新获取这些图像。 即使重新拍摄图像,您看到的分辨率也不会改变,也不会遇到任何其他问题。 在这种情况下, 图像处理将发挥作用。

    我喜欢在牛津词典中如何定义图像处理一词:

    分析和处理数字化图像,特别是为了提高其质量。

    这里的“数字化图像”是指图像被认为是数字的 ,即它是由计算机处理的。

    在此游戏中使用计算机意味着要使用编程语言。 在本教程中,我将向您展示如何使用Python编程语言对图像执行图像处理任务。

    scikit图像

    我们将用于执行图像处理任务的库是scikit-image 。 根据论文scikit-image:Python中的图像处理

    scikit-image是一个图像处理库,可实现用于研究,教育和行业应用的算法和实用程序。 它是根据开放的Modified BSD开源许可证发行的,以Python编程语言提供了完善的API,并且是由活跃的国际协作者团队开发的。

    我们需要做的第一件事是安装scikit-image 。 安装库的说明可以在下载页面上找到,在本教程中,我将向您展示如何在Mac OS X机器上安装该库,因为这是我在编写本教程时正在使用的内容。

    由于scikit-image是一个外部库,因此我们要做的第一件事就是安装该库。 为此,我将使用pip ,它(基于维基百科):

    软件包管理系统,用于安装和管理以Python编写的软件包。 在Python软件包索引(PyPI)中可以找到许多软件包。

    您可以按照《 Python打包用户指南》中提到的步骤安装pip ,但是如果您具有Python 2.7.9和更高版本,或者Python 3.4和更高版本,则已经具有pip

    现在可以通过键入以下命令(在Mac OS X的Terminal中)简单地安装scikit-image

    pip install -U scikit-image

    现在,我们已经安装了该库,并准备好进行一些图像处理了!

    我们将在本教程中使用的测试图像是baboon.png 。 继续下载它,或者只是使用您选择的图像。 该图像如下所示:

    狒狒

    图片尺寸

    有时我们需要知道图像的尺寸(有关过滤的更多信息)。 为了检查图像的尺寸,我们可以使用guess_spatial_dimensions()方法,如下所示:

    from skimage import io, color
    img = io.imread('baboon.png')
    dimensions = color.guess_spatial_dimensions(img)
    print dimensions

    上面脚本的输出为3 ,这意味着我们有一个包含三个空间维度的图像。

    颜色到灰度

    从上面的部分中,我们已经注意到我们的图像是3D阵列图像(形状为(.., .., 4) RGBA格式)。 我怎么知道它是RGBA格式? 您可以简单地执行以下操作:

    import skimage.io as io
    from skimage.color import rgb2gray 
    img = io.imread('baboon.png')
    print img.shape

    在这种情况下,您将获得以下输出: (512, 512, 4)

    在本节中,我们想将原始的彩色baboon.png图像转换为灰度 2D图像(黑白)。 只需使用以下脚本即可完成此操作:

    import skimage.io as io
    from skimage.color import rgb2gray 
    img = io.imread('baboon.png')
    img_grayscale = rgb2gray(img)

    让我们继续并将新图像(灰度)保存到文件中。 可以使用imsave()函数完成此操作,如下所示(注意,新图像位于文件baboon-gs.png ):

    io.imsave('baboon-gs.png',img_grayscale)

    要检查图像的尺寸,我们可以使用上一节中的脚本,在这种情况下,您将获得2 。 或者,您可以使用img_grayscale.shape ,结果为512x512 。 因此,我们现在有了一个2D图像。

    为了显示新的灰度图像,请在脚本末尾添加以下内容:

    show_grayscale = io.imshow(img_grayscale)
    io.show()

    结果看起来像这样:

    狒狒图像灰度

    将滤镜应用于图像

    在图像处理中,执行过滤以对图像进行一些增强。 通常,滤波包含以下操作:边缘增强,锐化和平滑。

    在本节中,我将向您展示如何在图像上应用Sobel滤镜 ,并查看执行此操作后的输出结果。 我将使用scikit-image网站首页上显示的示例,但将其应用于我们的图像。

    在图像上应用Sobel滤镜的脚本如下所示:

    from skimage import data, io, filters
    img = io.imread('baboon.png')
    edges = filters.sobel(img)
    io.imshow(edges)
    io.show()

    如果您运行脚本,是否注意到任何问题? 是的,由于图像必须是2D图像,因此我们无法应用该操作。 因此, baboon.png使用baboon.png ,我们还需要使用2D图像baboon-gs.png 。 该操作的输出如下所示:

    应用了Sobel滤镜的狒狒图像

    结论

    图像处理操作很多,并且scikit-image Python库为我们提供了许多我们可以对图像执行的有趣操作。 您可以在scikit-image网站上使用此库查看更多图像处理操作。

    无论您是刚刚起步还是想学习新技能的经验丰富的程序员,都可以通过我们完整的python教程指南学习Python。

    翻译自: https://code.tutsplus.com/tutorials/image-processing-using-python--cms-25772

    更多相关内容
  • 本篇文章主要介绍了用python处理图片实现图像中的像素访问,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • 本篇文章主要介绍了用python处理图片之打开显示保存图像的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • 图像处理文档,python图像裁剪,灰度化,旋转,扭曲等操作
  • python图像处理

    2020-12-20 22:13:55
    可使用Python提供的图像处理工具。 1.图像表示 已知单通道的灰度图像在计算机中的表示是一个8位无符号整形的矩阵。numpy作为python中强大的工具之一,该矩阵就numpy的array表示,多通道就是红绿蓝(RGB)三通道。
  • 图像处理python

    2020-02-24 10:23:56
    通过python编写的一个图像处理系统,可以实现格式(尺寸、像素、角度)的改变,图像增强,过滤处理、合成处理以及相似度计算等功能,且可以根据不同处理类型的选择得到不同的处理效果。
  • 图像处理文档,python图像裁剪,灰度化,旋转,扭曲等操作
  • 主要介绍了python图像处理之反色实现方法,涉及Python结合OpenCV与numpy操作图片的相关技巧,需要的朋友可以参考下
  • python图像处理.rar

    2020-03-11 18:31:37
    压缩包里是python的代码文件(包含代码),你的电脑安装了python可直接打开,我放了一张图片在里面,图像处理包括了对图形灰度化、腐蚀、图片二值化、寻找最大轮廓、canny边缘检测、获取hsv与rgb值、膨胀等技术。
  • 这个词在photoshop里面翻译成自动色阶,局部直方图来对图片进行滤波分级。 该滤波器局部地拉伸灰度像素值的直方图,以覆盖整个像素值范围。 格式:skimage.filters.rank.autolevel(image, selem) selem表示结构化...
  • python图像处理

    千次阅读 2021-10-14 23:36:39
    1.对图像处理 首先,对图像处理需要提前安装第三方的PIL,可利用其对图像进行缩放、裁剪、旋转、色彩转换等一些处理工作。 举例一:设置一些图像的不同模式,open().convert(). convert中,可设置出“1”、“L...

    1.对图像的处理

    首先,对图像的处理需要提前安装第三方的PIL,可利用其对图像进行缩放、裁剪、旋转、色彩转换等一些处理工作。

    举例一:设置一些图像的不同模式,open().convert(). convert中,可设置出“1”、“L”、“P”等不同模式。【“L”:8 bit像素,黑白】

    from PIL import Image
    import os
    import matplotlib.pyplot as plt
    
    print(os.getcwd())
    os.chdir('C:\\Users\\读书人mn\\Desktop\\123123')
    print(os.getcwd())
    
    im=Image.open('four.jpg').convert('L')
    print(im.format,im.size,im.mode)
    #im.show()
    plt.imshow(im)
    plt.title('wenxuan')
    plt.axis('off')
    plt.show()

    输出结果如下:

    注:标题不要用“中文”

    举例二:对图像进行模糊处理

    从scipy导入过滤器,im2=filters.gaussian_filter(im,20)中数字20为模糊的程度。

    from scipy.ndimage import filters
    import matplotlib.pyplot as plt
    from pylab import *
    
    im=array(Image.open('four.jpg').convert('L'))
    im2=filters.gaussian_filter(im,20)
    
    plt.figure()
    plt.imshow(im)
    plt.show()
    
    plt.imshow(im2)
    plt.show()

    输出结果如下:

     案例三:将图片信息转换成表格

    from PIL import Image
    import matplotlib.pyplot as plt
    img=array(Image.open('four.jpg').convert('L'))
    hist(img.flatten(),32)
    plt.figure('Image')
    plt.imshow(img)
    plt.axis('off')
    plt.show()

    输出结果如下:

     2. 利用ffmpeg的命令对视频处理——视频裁剪

    首先,利用cmd中的“cd +决定路径”方式准确将cmd定位到ffmpeg所在的位置

    其次,输入ffmpeg -i 视频路径 -ss 开始时间 -t 需要截取的时间 -vcodec copy -acodec copy -preset superfast 输出视频名称.mp4

     输出文件截图:

    3. 图像处理与人脸识别的结合应用

    import cv2
    import numpy as np
    import pandas as pd
    import os
    from matplotlib import pyplot as plt
    import face_recognition
    img2=cv2.imread("图片1.jpg")
    img=cv2.imread("图片2.jpg")
    
    
    img2_gray = cv2.cvtColor(img2, cv2.COLOR_BGR2GRAY)
    img2_face=face_recognition.face_locations(img2,number_of_times_to_upsample = 0,model ='cnn')
    for (top,right,bottom,left) in img2_face:
    #用矩形框标记出眼睛的位置 检测多尺度图像,返回值是一张脸部区域信息的列表(x,y,宽,高)
        roi_gray = img2_gray[top:bottom, left:right]
        roi_color= img2[top:bottom, left:right]
    
    img2=img2[top:bottom, left:right]
    gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    faces=face_recognition.face_locations(img,number_of_times_to_upsample = 0,model ='cnn')
    
    for (top,right,bottom,left) in faces:
    #用矩形框标记出眼睛的位置 检测多尺度图像,返回值是一张脸部区域信息的列表(x,y,宽,高)
        height,width =[bottom-top,right-left]
        img2 = cv2.resize(img2,(height , width),interpolation=cv2.INTER_AREA)
        roi_gray = gray[top:bottom, left:right]
        roi_color = img[top:bottom, left:right]   
        img[top:bottom, left:right]=img2
    cv2.imshow('img',img)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

    输出结果如下:

     

    展开全文
  • 玩转Python图像处理

    千人学习 2020-06-12 16:58:51
    掌握数字图像的表示方法是进行图像处理的前提和基础,能够为后续的智能图像处理打下坚实基础。 2.  使用好OpenCV开源库对于提升工作效率具有很大的帮助。OpenCV是优秀的开源库,提供了大量的函数帮助我们提升...
  • 今天小编就为大家分享一篇用Python去除图像的黑色或白色背景实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 文章目录第二章 数字图像基础1、程序实现同时对比度实验2、程序实验空间分辨率变化效果3、程序实验幅度分辨率变化效果 第二章 数字图像基础 这几个题目网上有很多MATLAB版的解答,这里自己写了一个python的...
  • 本文来自于专知,本文使用最流行的Python语言为工具,对图像处理技术的具体操作进行详细讲述,旨在让零基础的读者也可以轻松上手!【导读】在当今互联网飞速发展的社会中,数量庞大的图像和视频充斥着我们的生活,让...
  • 基于jupyter notebook的python编程—–python的数字图像处理目录一、python中Image类的使用方法1、使用image打开一张图片并显示2、将图片另存为新的格式的图片二、图片转成jpg格式的另一种方法1、该方法的python代码...
  • '''4图片灰度调整及二值化: 集成环境:win10 python3 Pycharm ''' from PIL import Image # load a color image im = Image.open('picture\\haha.png' )#当前目录创建picture文件夹 # convert to grey level image ...
  • 使用python+OpenCV实现多张图像拼接,完成拼接后进行图像黑边去除。里面代码每一行都有中文注释和附带的实验图像
  • 主要介绍了python实现图片处理和特征提取详解,文中向大家分享了Python导入图片,将图像转化为二维矩阵,模糊化图片Python图像的操作,具有一定参考价值,需要的朋友可以了解下。
  • 这是一个Grabcut算法写的简易的图像分割系统的主要界面代码,编程语言为python,能实现图像前景与背景的分离,效果很好。
  • 主要介绍了python 图片二值化处理处理后为纯黑白的图片),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • Python+OpenCV图像处理(一)——OpenCV框架与图像插值算法 目录图像处理一、OpenCV框架与图像插值算法1.1 OpenCV简介1.2 图像插值算法1.3 resize函数1.4 代码实现 图像处理 图像处理(image processing),计算机...
  • 主要介绍了基于python代码批量处理图片resize,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 提供详细的图像处理python程序,并提供具体实例验证
  • 利用Opencv实现图像处理-python源代码。 图像处理要求: 1、 四角定位、扭曲矫正; 2、效果增强; 3、标记识别; 4、截取有效区域。
  • 此次任务参考了以下大佬的博客,链接: haar小波: https://blog.csdn.net/baidu_27643275/article/details/84826773 【小波变换】小波变换python实现–PyWavelets: ...python代码: import numpy

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 344,417
精华内容 137,766
关键字:

如何用python处理图片

友情链接: Binary_conversion.rar