opencv学习之图像处理
图像的加载,图像的灰度化,图像的放大缩小
目录
前言
一、图片的加载(读入,显示图片)
首先进入图片同级目录打开终端,同级下创建python文件
建议创建一个文件夹专门存放学习用文件。
我们读入一张图片的时候, 使用的是cv2.imread 函数
传入的第一个参数是图片的路径. 我在代码的同级目录下放置了一个bg.jpg 美女的照片.
# 导入一张图像 模式为彩色图片
img = cv2.imread('bg.jpg')
这样你就读入了这张图片
代码:
# -*- coding: utf-8 -*-
import cv2
# 读入图片
img = cv2.imread('bg.jpg')
# 创建窗口并展示图片
cv2.imshow('image', img)
# 等待任意一个按键按下
cv2.waitKey(0)
# 关闭所有的窗口
cv2.destroyAllWindows()
那opencv都支持导入哪些格式的图片可以通过查阅文档 , 在python终端中输入:
help(cv2.imread)
#必须导入cv2 模块.
二、导入RBG彩图 还是是 灰度图?
第二个参数是图像颜色空间
默认就是BGR彩图cv2.IMREAD_COLOR 上面这个语句跟下面作用是一样的.
# 导入一张图像 模式为彩色图片
img = cv2.imread('bg.jpg', cv2.IMREAD_COLOR)
如果你想导入灰度图, 就需要传入
cv2.IMREAD_GRAYSCALE
img = cv2.imread('bg.jpg', cv2.IMREAD_GRAYSCALE)
执行结果
三、 图像缩放:cv.resize() 函数
实现缩放图像,有两种方法。
第一种方法是指定缩放后的图像大小,修改像素大小达到缩放目的。
# 缩放图像,后面的其他程序都是在这一行上改动
dst = cv2.resize(img, (400, 300))
另一种方法,就是利用后面的 fx 和 fy,指定缩放后图像长宽相对于原图的比例。(我的美女都不自然了)
OpenCV 会先检查 dsize 是否合法,即图像的宽和高是否都是非 0 的。如果是,就按照这个缩放,忽略后面的 fx 和 fy;如果不是,就按照 fx,fy 来计算。即优先级: dsize > fx fy.
另外,两种方式是独立定义的,也就是不能混着,用数值指定长却用比率指定宽。不存在 cv.resize(img, (0, 400), fx=0.42) 这种用法!
总结
就是图像处理入门内容,本文仅仅简单介绍了opencv的使用,小萌新回望大法