opencv数字图像处理学习1:基础操作
- 确认配置
- 1、创建项目、选择编译器
- 2、确认file->setting中 设置了python解释器
- 开始
- 1、打开图像
- 2、显示图像
- 3、灰度化
- 4、二值化
- 5、储存图像
确认配置
1、创建项目、选择编译器
2、确认file->setting中 设置了python解释器
选择之后会看到有这些包,右边会显示最新版本,不用理会,点击ok就行了
但是必须要有opencv-python和numpy包,图像处理的作业都会引入这两个,没有的话点击加号自己下载或参考上一篇文章
开始
新建的项目如图所示,接下来我们新建一个文件chapter.py,这次作业的代码都在这个文件里
1、打开图像
要打开图像当然得有这张图片,我们新建一个img文件夹,找个图片复制到这个文件夹里,以后要打开图片,我们都从这个路径获取
我复制了一张lena的照片放进img文件夹。
2、显示图像
我觉得1和2可能重复了
首先引入cv2,用这个库的方法操作图像
import cv2
设置一个变量img,当然这个变量名称你可以随便取;使用imread,imread是常用的图像读取函数。img = cv2.imread("img/lena.png")
使用imshow函数显示图像,注意搭配waitKey
cv2.imshow('the first Lena in this Autumn', img)
cv2.waitKey(0)
waitKey函数的定义可以参考
上面几句代码就可以显示图像了,如下图所示
3、灰度化
# ***3灰度化
img0 = cv2.imread("img/lena.png", 0)
# 显示
cv2.imshow('0', img0)
cv2.waitKey(0)
4、二值化
# ***4二值化
# 二值化函数
def threshold_demo(image):
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
ret, binary = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY | cv2.THRESH_OTSU)
print("threshold value %s" % ret)
# 显示
cv2.imshow("global_threshold_binary", binary)
# 调用二值化函数,把img传入
threshold_demo(img)
cv2.waitKey(0)
5、储存图像
imwrite括号中‘’内是图片的保存路径,img是保存的对象
# ***5储存图像
cv2.imwrite('img/saveLenaInChapter1.png', img)