美文网首页编程学习我爱编程
利用python提取图像轮廓

利用python提取图像轮廓

作者: 第七亡暮 | 来源:发表于2018-07-25 09:03 被阅读252次

    from PIL import Image

    from pylab import *

    # 读取图像到数组中 

    # convert('L')表示将RGB转换为L模式,表示像素点在[0,255]之间

    im = array(Image.open('D:/1.jpg').convert('L'))

    # 新建一个图像

    figure()

    # 使用颜色信息

    gray()

    # 在原点的左上角显示轮廓图像

    contour(im, origin='image')

    axis('equal')

    axis('off')

    figure()

    hist(im.flatten(),128)

    show()

    运行截图:

    心得收获:

    1. PIL在pillow中,需要下载64位的pillow,PIL库图像识别,图像处理效果较好,PIL是一个优秀的图像处理框架,其中image模块用的比较多(参考资料:https://blog.csdn.net/louishao/article/details/69879981)

    2.pylab 模块是一款由python提供的可以绘制二维,三维数据的工具模块,其中包括了绘图软件包 matplotlib,其可以生成matab绘图库的图像。在matplotlib库中,在此例中用于建立坐标系(axis()),描绘像素点RGB值与坐标

    3.图像读取(参考资料:https://www.cnblogs.com/denny402/p/5121897.html)

    本例中用的是im = array(Image.open('D:/1.jpg').convert('L')) ,还可以使用skimage模块(from skimage import io),使用语句img=io.imread('D:/1.jpg')

    convert()函数(参考资料:https://www.2cto.com/kf/201603/492895.html),在PIL库中

    4.Figure代表一个绘制面板,其中可以包涵多个Axes(即多个图表),使用import matplotlib.pyplot as plt(参考资料:https://blog.csdn.net/ywjun0919/article/details/8692018)

    5.gary()表示图像颜色空间,可以读取出图像的灰度值与RGB值。

    6.contour()检测图像轮廓,也可以绘制等高线等

    7.hist()表示创建直方图(参考资料:https://www.cnblogs.com/python-life/articles/6084059.html)

    flatten()是numpy.ndarray.flatten的一个函数,即返回一个折叠成一维的数组。但是该函数只能适用于numpy对象,即array或者mat,普通的list列表是不行的

    (参考资料:https://blog.csdn.net/lilong117194/article/details/78288795)

    相关文章

      网友评论

        本文标题:利用python提取图像轮廓

        本文链接:https://www.haomeiwen.com/subject/scwumftx.html