python openvc 裁剪、剪切图片 提取图片的行和列

yipeiwu_com5年前Python基础

python openvc 裁剪图片

下面是4个坐标代码:

import cv2
#裁剪图片路径input_path,四个裁剪坐标为:y1,y2,x1,x2,保存剪裁后的图片路径output_path
def cut_img(input_path,y1,y2,x1,x2,output_path):
 #读图片cv2.IMREAD_UNCHANGED:读入完整图片,包括alpha通道
  img = cv2.imread(input_path,cv2.IMREAD_UNCHANGED)
  #剪裁图片img中 y1到y2-1行,x1到x2-1列
  out_img = img[y1:y2, x1:x2]
  #保存裁剪后的图片
  cv2.imwrite(output_path, out_img)
  #显示图片
  cv2.imshow('img:', img)
  cv2.imshow('output_img:', out_img)
  #等待,以免图片窗口关闭
  cv2.waitKey(0)
if __name__ == '__main__':
  cut_img('1.jpg',50,300,100,400,'2.jpg')

下面是4个坐标裁剪照片:

在这里插入图片描述

y轴坐标裁剪代码:

import cv2
#裁剪图片路径input_path,裁剪坐标为:y1,y2,保存剪裁后的图片路径output_path
def cut_img(input_path,y1,y2,output_path):
 #读图片cv2.IMREAD_UNCHANGED:读入完整图片,包括alpha通道
  img = cv2.imread(input_path,cv2.IMREAD_UNCHANGED)
  #剪裁图片
  out_img = img[y1:y2]
  #或者下面这行也是一样
  #out_img = img[range(y1,y2+1)]
  #保存裁剪后的图片
  cv2.imwrite(output_path, out_img)
  #显示图片
  cv2.imshow('img:', img)
  cv2.imshow('output_img:', out_img)
  #等待,以免图片窗口关闭
  cv2.waitKey(0)
if __name__ == '__main__':
  cut_img('1.jpg',100,200,'2.jpg')

下面是y轴坐标裁剪照片:

[外链图片转存失败(img-W1nuTWfm-1568800972755)(C:\Users\xiahuadong\Pictures\博客\opencv高、宽、深1.jpg)]

x轴坐标裁剪代码:

import cv2
#裁剪图片路径input_path,四个裁剪坐标为:x1,x2,保存剪裁后的图片路径output_path
def cut_img(input_path,x1,x2,output_path):
 #读图片cv2.IMREAD_UNCHANGED:读入完整图片,包括alpha通道
  img = cv2.imread(input_path,cv2.IMREAD_UNCHANGED)
  #剪裁图片
  out_img = img[:,x1:x2]
  #或者下面这行也是一样
  #out_img = img[:,range(x1,x2+1)]
  #保存裁剪后的图片
  cv2.imwrite(output_path, out_img)
  #显示图片
  cv2.imshow('img:', img)
  cv2.imshow('output_img:', out_img)
  #等待,以免图片窗口关闭
  cv2.waitKey(0)
if __name__ == '__main__':
  cut_img('1.jpg',150,350,'2.jpg')

下面是x轴坐标裁剪照片:

[外链图片转存失败(img-1JZOHjNf-1568800972756)(C:\Users\xiahuadong\Pictures\博客\opencv高、宽、深2.jpg)]

提取第y行

import cv2
#裁剪图片路径input_path,裁剪坐标为:y,保存剪裁后的图片路径output_path
def cut_img(input_path,y,output_path):
 #读图片cv2.IMREAD_UNCHANGED:读入完整图片,包括alpha通道
  img = cv2.imread(input_path,cv2.IMREAD_UNCHANGED)
  #剪裁图片
  out_img = img[y:y+1]
  #保存裁剪后的图片
  cv2.imwrite(output_path, out_img)
  #显示图片
  cv2.imshow('img:', img)
  cv2.imshow('output_img:', out_img)
  #等待,以免图片窗口关闭
  cv2.waitKey(0)
if __name__ == '__main__':
  cut_img('1.jpg',100,'2.jpg')

[外链图片转存失败(img-INIxPseB-1568874694511)(C:\Users\xiahuadong\Pictures\博客\裁剪第100行.jpg)]

提取第x列

import cv2
#裁剪图片路径input_path,裁剪坐标为:x,保存剪裁后的图片路径output_path
def cut_img(input_path,x,output_path):
 #读图片cv2.IMREAD_UNCHANGED:读入完整图片,包括alpha通道
  img = cv2.imread(input_path,cv2.IMREAD_UNCHANGED)
  #剪裁图片
  out_img = img[:,x:x+1]
  #保存裁剪后的图片
  cv2.imwrite(output_path, out_img)
  #显示图片
  cv2.imshow('img:', img)
  cv2.imshow('output_img:', out_img)
  #等待,以免图片窗口关闭
  cv2.waitKey(0)
if __name__ == '__main__':
  cut_img('1.jpg',100,'2.jpg')

总结

以上所述是小编给大家介绍的python openvc 裁剪、剪切图片 提取图片的行和列,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

详解python中Numpy的属性与创建矩阵

ndarray.ndim:维度 ndarray.shape:形状 ndarray.size:元素个数 ndarray.dtype:元素数据类型 ndarray.itemsize:字节大小...

在Python中使用PIL模块处理图像的教程

在Python中使用PIL模块处理图像的教程

PIL:Python Imaging Library,已经是Python平台事实上的图像处理标准库了。PIL功能非常强大,但API却非常简单易用。 安装PIL 在Debian/Ubunt...

Python编程生成随机用户名及密码的方法示例

本文实例讲述了Python编程生成随机用户名及密码的方法。分享给大家供大家参考,具体如下: 方案一: import random global userName,userPasswo...

如何基于Python + requests实现发送HTTP请求

这篇文章主要介绍了如何基于Python + requests实现发送HTTP请求,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一、在...

python之文件读取一行一行的方法

如下所示: f=file('a.txt') for eachline in f: print eachline 以上这篇python之文件读取一行一行的方法就是小编分享给大家的...