您当前的位置:网站首页>Python>Python 2种方法实现叠加矩形框图层 找Python教程就上ki4.cc (>^ω^<),Python

Python 2种方法实现叠加矩形框图层 找Python教程就上ki4.cc (>^ω^<),Python

2020年06月19日 投稿作者: 围观人数:23

Python装饰器详细介绍 找Python教程就上ki4.cc (>^ω^<)

装饰器本质上是一个Python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回值也是一个函数对象。

两种方式以及效果:

方式一,使用PIL.Image.blend方式:

from PIL import Image, ImageDraw
im = Image.open('d:/tmp/58.249.0.220_01_20200604141800866_TIMING.jpg', 'r')
im2 = Image.open('d:/tmp/58.249.0.220_01_20200604141800866_TIMING.jpg', 'r')
draw = ImageDraw.Draw(im2)
draw.rectangle([(1000, 500), (1200, 800)], fill=(255, 0, 0), width=2)
out = Image.blend(im, im2, 0.5)
out.save('d:/tmp/demo1.jpg')
im.close()
im2.close()
out.show()
out.close()

方式二:直接进行像素叠加:

from PIL import Image, ImageDraw

im = Image.open('d:/tmp/58.249.0.220_01_20200604141800866_TIMING.jpg', 'r')
b = (255, 0, 0)
opacity = 0.5

for x in range(1000, 1200):
  for y in range(500, 800):
    p = im.getpixel((x, y))
    p = [int(p[i]*(1-opacity) + b[i]*opacity) for i in range(3)]
    im.putpixel((x, y), tuple(p))

im.save('d:/tmp/demo2.jpg')
im.show()
im.close()

两种的效果图都如下:

python的换行符是什么? 找Python教程就上ki4.cc (>^ω^<)

python换行符是“\n”。在Windows中换行符是“\r\n”;在Unix/Linux中的换行符为“\n”;在Mac的换行符为“\r”;在python中,对换行符进行了统一处理,定义为“\n”。

说明:第一种可以画矩形椭圆等定义好的一些形状,但是第二种,可以自主控制形状的能力更好,只要将相应的数据公式编辑到程序中,就可以绘制一些想要的轮廓出来;

第二种方式,是受第一种方式的定义(

out = image1 * (1.0 - alpha) + image2 * alpha)

然后联想到色盲测试图、另一种图(不知道叫什么名字,就是一张图里面不同的人,可能看出不同的东西出来)而想出来的。

推荐教程:《Python教程》

以上就是Python 2种方法实现叠加矩形框图层的详细内容,更多请关注ki4导航其它相关文章!

Python怎么下载? 找Python教程就上ki4.cc (>^ω^<)

下载步骤:1、在浏览器中打开python官网;2、在官网中点击菜单栏的“Downloads”按钮;3、选择合适的版本号,并选择下载地址,点击“下载”即可。

标签

版权说明
免责声明:本文文章内容由ki4导航网发布,但不代表本站的观点和立场,具体内容可自行甄别.