zoukankan      html  css  js  c++  java
  • 第五次毕业设计博客

    学习内容:

    https://blog.csdn.net/guduruyu/article/details/71439733

    Python图像处理实现两幅图像合成一幅图像的方法。分享给大家供大家参考,具体如下:

    将两幅图像合成一幅图像,是图像处理中常用的一种操作,python图像处理库PIL中提供了多种种将两幅图像合成一幅图像的接口。

    下面我们通过不同的方式,将两图合并成一幅图像。

    1、使用Image.blend()接口

    代码如下:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    # -*- coding:utf-8 -*-
    from PIL import Image
    def blend_two_images():
      img1 = Image.open( "bridge.png ")
      img1 = img1.convert('RGBA')
      img2 = Image.open( "birds.png ")
      img2 = img2.convert('RGBA')
      img = Image.blend(img1, img2, 0.3)
      img.show()
      img.save( "blend.png")
      return
    blend_two_images()

    两幅图像进行合并时,按公式:blended_img = img1 * (1 – alpha) + img2* alpha 进行。

    2、使用Image.composite()接口

    该接口使用掩码(mask)的形式对两幅图像进行合并。

    代码如下:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    # -*- coding:utf-8 -*-
    from PIL import Image
    def blend_two_images2():
      img1 = Image.open( "bridge.png ")
      img1 = img1.convert('RGBA')
      img2 = Image.open( "birds.png ")
      img2 = img2.convert('RGBA')
      r, g, b, alpha = img2.split()
      alpha = alpha.point(lambda i: i>0 and 204)
      img = Image.composite(img2, img1, alpha)
      img.show()
      img.save( "blend2.png")
      return
    blend_two_images2()

    代码第9行中指定的204起到的效果和使用blend()接口时的0.3类似。

  • 相关阅读:
    压缩感知理论模型
    欢迎使用CSDN-markdown编辑器
    CEF3 概览及一般使用方法
    如何利用CEF3创建一个简单的应用程序 (Windows Platform)
    递归(浅解)
    day22 ftp传输作业未完成
    day21(套接字初应用)
    Multiprocess.Process(源码)
    day20 网络编程(初识)
    day19(异常补遗)
  • 原文地址:https://www.cnblogs.com/ydy1/p/12264352.html
Copyright © 2011-2022 走看看