基于OpenCV的计算机视觉入门(1)图片操作入门

图片读取和显示

import cv2
img=cv2.imread('clip.png',1)
cv2.imshow('image',img)
cv2.waitKey(0)

写入图片

import cv2
img=cv2.imread('clip.png',1)
cv2.imwrite('clipcopy.jpg',img)
#1 name 2 data

不同质量图片的保存

# jpg压缩
import cv2
img=cv2.imread('bg.jpg',1)
cv2.imwrite('bgtest.jpg',img,[cv2.IMWRITE_JPEG_QUALITY,0])
#压缩范围为0-100  0为最小  马赛克严重  有损压缩
#png压缩  1无损  2透明度属性
import cv2
img=cv2.imread('1.png',1)
cv2.imwrite('bgtest2.png',img,[cv2.IMWRITE_PNG_COMPRESSION,9])
#区别  png 0-9 压缩比高 
#      jpg 0-100 压缩比低

像素操作

import cv2
img=cv2.imread('timg.jpeg',1)
(b,g,r)=img[100,100]
print(b,g,r)

>>>66 77 99
#(100,100)这个像素点的bgr值为66 77 99
#像素的写入
import cv2
img=cv2.imread('timg.jpeg',1)
(b,g,r)=img[100,100]
print(b,g,r)
#从第10行、100列开始开始到  110行 100列结束
for i in range(1,100):
    img[10+i,100]=[255,255,255]
#[255,255,255]代表白色的线 B G R
cv2.imshow('image',img)
cv2.waitKey(10000)

效果如图
这里写图片描述

猜你喜欢

转载自blog.csdn.net/wo164683812/article/details/80266913