1.图片读取与展示
# 1.引入opencv 2.调用API 3.暂停stop
import cv2
img = cv2.imread('2.png',1)#图片读取,1.图片名称2.读取图片的类型 (0,gray 1.color)
cv2.imshow('image',img)#窗体名称 ,图片名称
cv2.waitKey(0)
2.图片写入
import cv2
img=cv2.imread('2.png',1)
cv2.imwrite('image0.jpg',img)#1.name 2.data
3..不同质量图片的保存
import cv2
img=cv2.imread('image0.jpg',1)
cv2.imwrite('imageTest.jpg',img,[cv2.IMWRITE_JPEG_QUALITY,50]) #保存为jpg格式
# jpg有损压缩 参数2的取值为:0-100 当为0时压缩比高
png格式为无损压缩 具有一个透明度属性
import cv2
img=cv2.imread('image0.jpg',1)
cv2.imwrite('imageTest.png',img,[cv2.IMWRITE_PNG_COMPRESSION,0])
# png 取值范围0-9 当为0时 压缩比低
4.像素操作基础
# 颜色深度 8位图片即为2的8次方,即每个RGB通道的都是0-255
#图片宽高 640像素点*480像素点
#图片大小 1.14M=720(宽)*547(高)*3(通道)*8(位)(bit)/8 (Byte)=1.14M
#png图片除了RGB还包括alpha(透明度)
import cv2
img=cv2.imread('image0.jpg',1)
(b,g,r)=img[1,1]#像素点为[1,1]的位置
print(b,g,r)
5.像素读取写入
import cv2
img=cv2.imread('nm.jpg',1)
(b,g,r)=img[100,100]
print(b,g,r)#打印像素值
#画一条蓝色线段
for i in range(1,100):
img[10+i,100]=(255,0,0)
cv2.imshow('image',img)
cv2.waitKey(0)