读取图片要经历四个步骤: 这样读取的图片为图片的原始数据 1. 原图像如下: 图片大小为400kb 压缩之后的图片为: 图片大小为40kb, 同时出现了严重的马赛克现象 压缩之后的图片为: 图片大小为200kb,马赛克现象没那么的严重 2. 压缩之后的图像为: 图片大小为:5.92MB 图像大小变为2.34MB 由此可知, 未压缩图片的计算方法: 每一个像素点都有3各部分组成,一般情况下,图片存储的格式为RGB, 但是opecv读取的图片为BGR格式 我们将图片的左上角的一列变为蓝色文章目录
1.读取图片
cv2.imread(filename, flags)
:-filename: 文件名称 -flags: 0 读入灰度图片,1 读入彩色图片
cv2.imshow(winname, mat)
: -winname: 窗口名字 -mat: 要展示的图片矩阵
cv2.waitKey(0)
:暂停程序,这样才能显示图片import cv2 img = cv2.imread("img.jpg", 1) cv2.imshow('img', img) cv2.waitKey(0)
2.图片写入
1.文件的读取 2.封装格式解析(jpg,png等格式) 3.数据解码 4.数据加载
cv2.imwrite(filename, img)
:-filename: 图片名称 -img: 图片数据
import cv2 img = cv2.imread("img.jpg", 1) cv2.imwrite('img1.jpg', img)
True
2.1图像质量
jpg
图片文件是以图片质量为代价进行压缩的,属于有损压缩cv2.IMWRITE_JPEG_QUALITY:
表示当前的图片质量,压缩范围为0-100,不同压缩比对应不同的图片大小,下面我们来体验一下:import cv2 img = cv2.imread("img.jpg", 1) cv2.imwrite('imgTest.jpg', img, [cv2.IMWRITE_JPEG_QUALITY, 0])
True
import cv2 img = cv2.imread("img.jpg", 1) cv2.imwrite('imgTest2.jpg', img, [cv2.IMWRITE_JPEG_QUALITY, 50])
True
png
图片格式的压缩属于无损压缩,可以设置透明度import cv2 img = cv2.imread("img.jpg", 1) cv2.imwrite('imgTest1.png', img)
True
import cv2 img = cv2.imread("img.jpg", 1) cv2.imwrite('imgTest2.png', img, [cv2.IMWRITE_PNG_COMPRESSION, 0])
True
import cv2 img = cv2.imread("img.jpg", 1) cv2.imwrite('imgTest3.png', img, [cv2.IMWRITE_PNG_COMPRESSION, 50])
True
jpg
图片文件图像质量的数值越低,压缩比越高,png
图片文件图像质量的数值越低,压缩比越低3.像素
像素
:是指组成图像的小方格RGB
: 每一种颜色都是由RGB(red, green, blue)三种颜色组合而成的颜色深度
:比如,8bit 表示每种颜色的范围是0~255, 所以总共有256^3中颜色图像宽高
:表示在水平方向和竖直方向的像素点的个数w * h * 颜色通道(3) * 8 bit / 8(B)
3.1像素读取与写入
import cv2 img = cv2.imread('img.jpg', 1) (b, g, r) = img[100, 100] # 读取像素值 print(b, g, r) #10,100 --- 110, 100 for i in range(1, 1000): img[10 + i][100] = (255, 0, 0) cv2.imshow('imageBlue.png', img) cv2.waitKey(0)
59 54 129 True
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算