5分钟学会,使用opencv进行基本的图像操作—读、写、显示、缩放、裁剪(python语言)

接下来这一节,我们主要学习一下,怎样使用opencv进行基本的图像操作(python)

 

1.读、写和显示图像

在opencv里,imread()函数是用来从硬盘上读图像文件的;

imwrite()函数是用来将图片写到硬盘上的;

imshow()函数则是用来将图片显示出来的(需配合使用namedWindow函数和waitKey函数);

接下来这一节,我们主要学习一下,怎样使用opencv进行基本的图像操作(python)

 

1.读、写和显示图像

在opencv里,imread()函数是用来从硬盘上读图像文件的;

imwrite()函数是用来将图片写到硬盘上的;

imshow()函数则是用来将图片显示出来的(需配合使用namedWindow函数和waitKey函数);

Python [ Read, write and display image ]

import cv2

# 读取图片sample.jpg
image = cv2.imread("../data/images/sample.jpg")  

if image is None:  # 检查是否有读取到了图片
   print("Could not open or find the image")

# 使用cvtColor()函数,将原图(彩色)转化为灰度图
grayImage = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

# 将灰度图保存为imageGray.jpg文件
cv2.imwrite("imageGray.jpg", grayImage)

# 创建窗口,用来显示图片
cv2.namedWindow("image", cv2.WINDOW_AUTOSIZE) 
cv2.namedWindow("gray image", cv2.WINDOW_NORMAL)

# 显示图片
cv2.imshow("image", image) 
cv2.imshow("gray image", grayImage)

# 等待按下任意键,才关闭图片显示的窗口
cv2.waitKey(0) 
cv2.destroyAllWindows()

 

2.缩放(resize)和裁剪图片(crop)

在opencv里,我们使用resize()函数调整图片尺寸,即缩放;

Python [ Crop and Resize ]

import cv2

# 读取图片
source = cv2.imread("../data/images/sample.jpg",1)

# 定义x,y方向的缩放因子
scaleX = 0.6
scaleY = 0.6

# 将图片缩小为原来的0.6倍
scaleDown = cv2.resize(source, None, fx= scaleX, fy= scaleY, interpolation= cv2.INTER_LINEAR)
# 将图片放大到原来的1.8倍
scaleUp = cv2.resize(source, None, fx= scaleX*3, fy= scaleY*3, interpolation= cv2.INTER_LINEAR)

#剪切图像。我们直接操作numpy数组进行操作,将其中的指定行、列内容读出来,即完成图像剪切
crop = source[50:150,20:200]

# 显示所有图片(原图、缩小、放大、剪切后的图)
cv2.imshow("Original", source) 
cv2.imshow("Scaled Down", scaleDown) 
cv2.imshow("Scaled Up", scaleUp) 
cv2.imshow("Cropped Image",crop) 
cv2.waitKey(0)

5分钟学会,使用opencv进行基本的图像操作—读、写、显示、缩放、裁剪(python语言)_第1张图片

 

你可能感兴趣的:(图像处理,opencv,python,图像处理,裁剪,缩放)