opencv 图片宽度python_Python&OpenCV学习之旅(二)获取图像的宽度、高度、通道数等数据以及图像的裁剪、缩放和补边...

#!/usr/bin/env python

# -*- coding:utf-8 -*-

import numpy as np

import cv2

#-----------------------------------------------------------------------------------------------------------------------

#二、获取图像的宽度、高度、通道数等数据以及图像的裁剪、缩放和补边

#-----------------------------------------------------------------------------------------------------------------------

img=cv2.imread("D:\\1.jpg",cv2.IMREAD_COLOR)

if len(img.shape)==3:

print("图像类型为彩色图片")

else:

print("图像类型为黑白图片")

print("图像尺寸为{}".format(img.shape[:2]))

print("图像宽度{}个像素".format(img.shape[1]))

print("图像高度{}个像素".format(img.shape[0]))

if len(img.shape)==3:

print("图像通道数为3")

else:

print("图像通道数为1")

print("图像总像素个数为{}".format(img.size))

print("图像最大像素值为{}".format(img.max()))

print("图像最小像素值为{}".format(img.min()))

print("图像像素平均值为{}".format(img.mean()))

cv2.imshow("image",img)

cv2.waitKey(0)

#图像缩放

img_300X300=cv2.resize(img,(300,300))#注意大小的格式是(宽度X高度)

cv2.imshow("img_300X300",img_300X300)

cv2.waitKey(0)

#图像裁剪

img_new=img[100:200,100:200]#[宽度的裁剪区域,高度的裁剪区域]

cv2.imwrite("D:\\2.jpg",img_new)# 保存图像

cv2.imshow("img_new",img_new)

cv2.waitKey(0)

#图像补边

img_border=cv2.copyMakeBorder(img,50,50,50,50,cv2.BORDER_CONSTANT)#(图像名,上,下,左,右,描边类型)

cv2.imwrite("D:\\3.jpg",img_border)# 保存图像

cv2.imshow("img_border",img_border)

cv2.waitKey(0)

图一 原图

图二 裁剪图

图三 补边图

你可能感兴趣的:(opencv,图片宽度python)