Image.frombytes和np.fromstring 读取Raw图像速度比较
Image.frombytes和np.fromstring 读取Raw图像速度比较
pillow 5.3.0
python 3.6
numpy 1.15.4
opencv-python 4.0
def readRaw_PIL(filename,height,width,depth,channel=1):img_size=int(height*width*depth/8*channel)if depth==8:datatype='L'elif depth==16:datatype="I;16" #I;16为小端模式,I;16B为大端模式with open(filename,'rb') as f:frame_no=1rawImg=f.read(img_size)while rawImg:img = Image.frombytes(data=rawImg, decoder_name="raw", mode=datatype, size=(height, width))img.save('/home/tmp/1/{:05d}.bmp'.format(frame_no))frame_no += 1rawImg = f.read(img_size)def readRaw_CV2(filename,height,width,depth,channel=1):img_size=int(height*width*depth/8*channel)if depth==8:datatype=np.uint8elif depth==16:datatype=np.uint16with open(filename,'rb') as f:frame_no = 1rawImg = f.read(img_size)while rawImg:img=np.fromstring(rawImg, dtype=datatype).reshape(height, width)cv2.imwrite('/home/tmp/2/{:05d}.bmp'.format(frame_no),img)frame_no+=1rawImg = f.read(img_size)if __name__=="__main__":tic=time.time()readRaw_PIL('test.raw',height=180,width=180,depth=8)print("PIL:",time.time()-tic)tic=time.time()readRaw_CV2('test.raw',height=180,width=180,depth=8)print("Numpy:",time.time()-tic)
输出结果:
PIL:0.08289933204650879Numpy:0.00939321517944336
Image.frombytes和np.fromstring 读取Raw图像速度比较相关推荐
- 用matlab读取raw并做出图像,image - 如何在MATLAB中读取RAW图像? - 堆栈内存溢出
彼得的代码(谢谢btw!)假设你的图像是灰度的. 对于彩色图像,您需要做的是将所有字节作为单个1D数组读取,因为我们不能使用fread来读取数据作为3D矩阵(至少不是我所知......). 然后,我们 ...
- 手机相机中RAW图像的打开和操作(Python)
1.手机拍摄RAW 目前智能手机一般都带有专业模式,拍摄并保存RAW图需在专业模式中设置中打开对应照片格式,之后在拍摄画面会出现RAW图字样,如下图所示. 之后拍摄会得到两种格式图像,一种压缩JPG格 ...
- RAW图像详解及使用Python读取raw格式图像并显示
一.RAW图像详解 1.1 什么是raw格式图像? RAW在英文中的解释是未处理的.自然状态的,这也就是RAW文件的真谛.RAW图像就是CMOS或者CCD图像感应器将捕捉到 的光源信号转化为数字信号的 ...
- 使用Python读取raw格式图像并显示
整理日期:2020-02-13 整理内容:使用Python读取raw格式图像并显示 代码如下: import cv2 #OpenCV包 import numpy as np# 首先确定原图片的基本信息 ...
- 【MATLAB】读取序列图像raw文件并求序列均值
读取序列图像raw文件并求序列均值 读取16位raw图像,图像大小为640*512,也可自行调整. matlab代码如下: %% 初始化 foldname='C:\Users\admin\Deskto ...
- c语言读取一个图像文件格式,求指导,如何用c语言实现读取*.raw格式图像
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 /* ** 这个程序是读取jpg图像的 ** 后续加上jpg图像打开和存放 */ #include #include #include #include ...
- c语言 遍历.jpg图像,求指导,如何用c语言实现读取*.raw格式图像
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 /* ** 这个程序是读取jpg图像的 ** 后续加上jpg图像打开和存放 */ #include #include #include #include ...
- c语言 写出raw文件,求指导,如何用c语言实现读取*.raw格式图像
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 /* ** 这个程序是读取jpg图像的 ** 后续加上jpg图像打开和存放 */ #include #include #include #include ...
- c语言图片raw保存,求指导,如何用c语言实现读取*.raw格式图像
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 /* ** 这个程序是读取jpg图像的 ** 后续加上jpg图像打开和存放 */ #include #include #include #include ...
最新文章
- stm32f103最小系统的组成及各部分功能
- pywebio和stylecolud 做的词云gui
- 一文带你学会国产加密算法SM4的java实现方案
- GVA gin-vue-admin部署后端注意事项
- 为什么使用Maven
- 4.4.5 清除变量内容
- 一套房钱就可以做一个品牌的电子烟,让罗永浩们再赚一波快钱?
- NSUserDefaults 、对象归档
- 计算机三维技术在影视广告设计中应用的研究 罗晋,计算机三维技术在影视广告设计中应用的研究...
- 矩池云上使用nohup和让任务后台运行
- linux安装mysql菜鸟教程_Linux安装mysql教程
- jquery的toastr消息提示插件
- java基础 java面向对象,抽象类,接口,变量
- 论文格式要求及字体大小
- ARCGIS怎么在地图上绘制长宽500m*500m的fishnet
- ORA-00257: archiver error. Connect internal only, until freed 错误解决方案
- IDEA修改字体大小 导航栏字体 编辑器字体
- 转载 ----MAVEN相关学习
- Reflex WMS入门系列之二十一:关闭一个不需要的盘点
- 【抛弃昂贵固态】ReadyDrive技术与混合硬盘介绍
热门文章
- 软著申请步骤[2023]
- Lucene教程详解
- 计算机闹铃音乐在线听,电脑闹钟提醒(Free Alarm Clock)
- python-优矿-期权合成策略分析
- Gamma分布,Beta分布,多项式分布,Dirichlet狄利克雷分布
- 【DRF+Django】微信小程序入门到实战_day03(下)
- 计算机操作培训总结,计算机操作培训总结
- 省级分布图matlab实现(有九段线)
- failed to allocate 2.00G (2147483648 bytes) from device: CUDA_ERROR_OUT_OF_MEMORY: out of memory
- getprop 属性