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

yipeiwu_com6年前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将大量文件按修改时间分类的方法

需求是这样的,我从本科到现在硬盘里存了好多照片,本来是按类别分的,有一天,我突然想,要是能按照时间来分类可能会更好。可以右键查看照片的属性,看它的修改日期,从而分类,但是十几个G的照片手...

python实现QQ邮箱/163邮箱的邮件发送

python实现QQ邮箱/163邮箱的邮件发送

QQ邮箱/163邮箱的邮件发送:py文件发送邮件内容相当于一个第三方的客户端,借助于QQ/163邮箱服务器来发送的邮件。 主要配置: 导入模块——import  ...

Python 共享变量加锁、释放详解

Python 共享变量加锁、释放详解

一、共享变量 共享变量:当多个线程访问同一个变量的时候。会产生共享变量的问题。 例子: import threading sum = 0 loopSum = 1000000 def...

Python中map,reduce,filter和sorted函数的使用方法

map map(funcname, list) python的map 函数使得函数能直接以list的每个元素作为参数传递到funcname中, 并返回响应的新的list 如下:...

Python 类属性与实例属性,类对象与实例对象用法分析

Python 类属性与实例属性,类对象与实例对象用法分析

本文实例讲述了Python 类属性与实例属性,类对象与实例对象用法。分享给大家供大家参考,具体如下: demo.py(类属性,所有实例对象共用类属性): # 定义工具类 继...