图像是由像素构成的,即图像中的小方格,这些方格有明确的位置和分配的色彩数值。像素是图像的最小单位,每一个点阵图像包含了一定量的像素,最终构成我们所看见的图像。
图像基本分为三种类型:彩色图像,灰度图像,二值图像
读写图像主要调用下列函数实现
cv2.imshow(窗口名,图像名)
cv2.waitKey(delay)
# 必须加上这一句,否则显示的图像一闪而过
# delay为等待按键按下时间,若为0则永久等待
cv2.imwirte(文件名,照片)
彩色图像有三个通道,在Opencv中图像的顺序是B,G,R,并不是我们熟悉的R,G,B。
灰色图像只有一个通道,每个像素点为范围是[0,255]
二值图像中每一个像素点非黑既白,要么为黑色(像素为0),要么白色(像素255).可以先将彩色图像转为灰度图像,在将灰度图像转为二值图像.
灰度图像转为二值图像转化函数为cv2.threshold(照片,阈值,最大值,关键字)。
import cv2
import numpy as np
# 读取彩色图像
img_cs = cv2.imread("./img/xs.png")
cv2.imshow("caise", img_cs)
# 将彩色转为灰度
img_hs = cv2.cvtColor(img_cs, cv2.COLOR_BGR2GRAY)
cv2.imshow("huise", img_hs)
# 将灰度转为二值
# 127为阈值 大于127的像素点设置为255(白色),否则0(黑色)
# res为设置阈值,img_ez为处理结果
res,img_ez = cv2.threshold(img_hs, 127, 255, cv2.THRESH_BINARY)
cv2.imshow("heibai", img_ez)
cv2.waitKey(0)
cv2.destroyAllWindows()
运行结果
希望文章对大家有帮助,如果有错误或不足之处,希望不吝赐教。