时间:2020-10-18 13:56:30 | 栏目: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轴坐标裁剪照片:
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轴坐标裁剪照片:
提取第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')
提取第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')
总结