python批量裁剪影像,python cv2裁剪图片

  python批量裁剪影像,python cv2裁剪图片

  Python的图像处理是我们经常用到的一个方面,那么如何才能对图像进行裁剪呢?下面这篇文章主要介绍用python裁剪图片的相关信息,通过示例代码非常详细的介绍。有需要的朋友可以参考一下。

  00-1010如何用python裁剪图片一、安装PIL库二。建设思路三。完整的代码摘要

  

目录

  如上图,这是一张包含各种棋子的图片。我们需要裁剪出每一块,这可以通过python的PIL库来实现。

  

如何使用python裁剪图片

  如果以前没有安装PIL库,在python3环境中,可以通过在命令行中键入pip install pill来完成安装。

  

一、 安装PIL库

  我们,尝试一下,剪切掉左上角的黑色,保存图片。

  首先,打开图纸,放大,再放大,然后检查网格线,找到放置这枚棋子的左上角坐标右上角坐标。可以看到右下角的坐标大概是(50,50)。左上角是(0,0)。因为所有图片坐标的初始点都在左上角。

  从PIL进口图片

  Img=Image.open(chess.png) ##打开chess.png文件并将其分配给Img。

  Region=img.crop ((0,0,50,50)) # # 0,0表示要裁剪位置的左上角坐标,50,50表示右下角坐标。

  Region.save (example.png) # #将裁剪后的图片保存到example.png。

  可见切割是成功的。需要注意的是,我们要把每一个棋子都切出来。是不是要一个一个的看坐标,在程序里修改坐标,然后一遍一遍的运行程序,把图片剪出来?还不如直接画图剪。可能会更快。如果我们再想一想,就会发现每一个棋子间的间隔是有规律的.我们能不能尝试用for循环来实现批量切割呢?

  

二、构建思路

  再打开图,可以找到规律。第一行黑色子像素左上角坐标为(0,0),x坐标每次增加50,七次,所以为(0,0)-(300,0);同理,右下角可以得到(50,0)-(350,0);第二行是(0,50)-(300,50)和(50,100)-(350,100)。理解规则后,直接开始打代码。

  从PIL进口图片

  Chessred=[JJ , SS , XX , MM , CC , PP , BB] # #红棋名,随便起个名字就行,不要雷同。

  棋黑=[j , s , x , m , c , p , b] # #黑名,随便起个名字就行,不要雷同。

  Img=image.open(。/chess.png) # #打开chess.png,赋给img。

  def cropimg():

  对于zip中的I,j,z(范围(0,350,50),chessblack,chessred):

  Region=img.crop ((I,0,I 50,50)) # #切第一排黑棋子。

  Region.save (f 。/test/{j}。png) # #保存第一排黑棋棋子。

  Region=img.crop ((I,50,I 50,100)) # #切第二排红色棋子。

  Region.save (f 。/test/{z}。png) # #保存第二排红色棋子。

  克罗皮姆

  打开文件夹,所有裁剪的图片都已保存。

  

三、完整代码

  关于用python裁剪图片的这篇文章到此为止。关于使用python裁剪图片的更多信息,请搜索热门IT软件开发工作室之前的文章或继续浏览下面的相关文章。希望你以后能支持热门的IT软件开发工作室!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: