让你抵制新疆棉花,看我用Python怎么抵制你!

python之禅

共 2765字,需浏览 6分钟

 · 2021-03-28

作者 | 麦叔
来源 | 麦叔编程


昨天
这篇文章你可能错过了,文末留言赠书哈

↓↓↓↓

豆瓣评分8.9,这本Python经典入门书成功破圈(文末赠书)


这两天的热门话题莫过于HMBCI了,我本来对这种跳梁小丑的什么组织,什么品牌的相关新闻没多大兴趣,但没想到还是被卷进来了。

我叫sabiba,你adidas出事关我什么事?

吃过晚饭,忙完工作,老婆忽然非要让我看一个搞笑的新闻,大致意思是这样的:

很多阿迪达斯赞助的节目都崩溃了,后期根本来不及处理那么多帧的画面,目前唯一的解决办法就是统一镜面反转,“我叫sabiba,你adidas出事关我什么事?

类似这样的画面:

截屏2021-03-26 07.10.05

改成这样的:

我叫sabiba,你adidas出事关我什么事?

然后她又问我:这种镜面翻转是怎么做到的?

我没空理她,因为我在看寻秦记。听说寻秦记电影快要上映了,复习一下电视剧。就随口应付了一句:

不知道!后期制作人员自然有办法了。

说了以后又觉得不妥。为了明天早上还有早饭吃,还是认真回答一下吧。

这个操作,用python作实在太简单了。不管是图片,还是视频,都是几行代码搞定。

希望各大节目制作组最少聘用一个Python开发。因为在你们开会讨论要怎么办的时候,他已经把代码写好了,工作都做完了!

用Python反转图片

本文所有素材与源码都在文章末尾

  1. 制作素材:Adidas图片素材一张

    adidas
  2. 工具准备

    • Python安装好,本案例用3.6以上都可以
  3. 确保自己安装好了PIL库。PIL是python处理图片的首选库。

    python -m pip install PIL
  4. Python代码:

    from PIL import Image, ImageOps
    im = Image.open('addidas.png')
    # 做镜面转换
    im_mirror = ImageOps.mirror(im)
    # 保存镜像图片
    im_mirror.save('addidas_mirrow.png')

     注意:代码和图片要在同一个文件夹下,或者自己加上路径。

  1. 运行代码,一张热气腾腾的sabiba就生成了:

    adidas_mirrow
  2. 如果转换一个整个文件夹下所有的图片:

    import os
    from PIL import Image, ImageOps

    # 转换一个文件夹
    def flip_folder():
        outpath = "C:\images\input"
        path = "C:\images\output"

        # 循环文件夹
        for image_path in os.listdir(path):
            # 拼接完整路径
            full_path = os.path.join(path, image_path)
            im = Image.open(os.path.join(path, full_path))

            im_mirror = ImageOps.mirror(im)
            # 拼接输出路径
            full_output_path = os.path.join(outpath, 'rotated_'+image_path)
            im_mirror.save(full_output_path)

    if __name__ == '__main__':
        flip_folder()

    运行前请确保文件夹已经存在。

用Python反转整段视频

本文所有素材与源码都在文章末尾

  1. 制作素材:准备一段要反转的视频

  2. 工具准备

    • Python安装好,本案例用3.6以上都可以
  3. 确保自己安装好了moviepy库。moviepy是python处理视频的主要库之一。其他还有就是opencv-python了,但本文不需要。

    python -m pip install moviepy
  4. 上代码:

    import moviepy

    from moviepy.editor import VideoFileClip, vfx
    clip = VideoFileClip('addi_video.mp4')
    reversed_clip = clip.fx(vfx.mirror_x)
    reversed_clip.write_videofile('addi_video_flip.mp4')
  5. 运行代码,一碗热气腾腾的镜面反转视频就做好了。

  6. 源码素材:https://gitee.com/maishucode/python/tree/master/weixin/20210326-imagevideoflip

点赞是美德

你动动手,就是对我最大的鼓励。如果对你有帮助,请给我点赞,点在看

浏览 28
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报