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图像速度比较相关推荐

  1. 用matlab读取raw并做出图像,image - 如何在MATLAB中读取RAW图像? - 堆栈内存溢出

    彼得的代码(谢谢btw!)假设你的图像是灰度的. 对于彩色图像,您需要做的是将所有字节作为单个1D数组读取,因为我们不能使用fread来读取数据作为3D矩阵(至少不是我所知......). 然后,我们 ...

  2. 手机相机中RAW图像的打开和操作(Python)

    1.手机拍摄RAW 目前智能手机一般都带有专业模式,拍摄并保存RAW图需在专业模式中设置中打开对应照片格式,之后在拍摄画面会出现RAW图字样,如下图所示. 之后拍摄会得到两种格式图像,一种压缩JPG格 ...

  3. RAW图像详解及使用Python读取raw格式图像并显示

    一.RAW图像详解 1.1 什么是raw格式图像? RAW在英文中的解释是未处理的.自然状态的,这也就是RAW文件的真谛.RAW图像就是CMOS或者CCD图像感应器将捕捉到 的光源信号转化为数字信号的 ...

  4. 使用Python读取raw格式图像并显示

    整理日期:2020-02-13 整理内容:使用Python读取raw格式图像并显示 代码如下: import cv2 #OpenCV包 import numpy as np# 首先确定原图片的基本信息 ...

  5. 【MATLAB】读取序列图像raw文件并求序列均值

    读取序列图像raw文件并求序列均值 读取16位raw图像,图像大小为640*512,也可自行调整. matlab代码如下: %% 初始化 foldname='C:\Users\admin\Deskto ...

  6. c语言读取一个图像文件格式,求指导,如何用c语言实现读取*.raw格式图像

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 /* ** 这个程序是读取jpg图像的 ** 后续加上jpg图像打开和存放 */ #include #include #include #include ...

  7. c语言 遍历.jpg图像,求指导,如何用c语言实现读取*.raw格式图像

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 /* ** 这个程序是读取jpg图像的 ** 后续加上jpg图像打开和存放 */ #include #include #include #include ...

  8. c语言 写出raw文件,求指导,如何用c语言实现读取*.raw格式图像

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 /* ** 这个程序是读取jpg图像的 ** 后续加上jpg图像打开和存放 */ #include #include #include #include ...

  9. c语言图片raw保存,求指导,如何用c语言实现读取*.raw格式图像

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 /* ** 这个程序是读取jpg图像的 ** 后续加上jpg图像打开和存放 */ #include #include #include #include ...

最新文章

  1. stm32f103最小系统的组成及各部分功能
  2. pywebio和stylecolud 做的词云gui
  3. 一文带你学会国产加密算法SM4的java实现方案
  4. GVA gin-vue-admin部署后端注意事项
  5. 为什么使用Maven
  6. 4.4.5 清除变量内容
  7. 一套房钱就可以做一个品牌的电子烟,让罗永浩们再赚一波快钱?
  8. NSUserDefaults 、对象归档
  9. 计算机三维技术在影视广告设计中应用的研究 罗晋,计算机三维技术在影视广告设计中应用的研究...
  10. 矩池云上使用nohup和让任务后台运行
  11. linux安装mysql菜鸟教程_Linux安装mysql教程
  12. jquery的toastr消息提示插件
  13. java基础 java面向对象,抽象类,接口,变量
  14. 论文格式要求及字体大小
  15. ARCGIS怎么在地图上绘制长宽500m*500m的fishnet
  16. ORA-00257: archiver error. Connect internal only, until freed 错误解决方案
  17. IDEA修改字体大小 导航栏字体 编辑器字体
  18. 转载 ----MAVEN相关学习
  19. Reflex WMS入门系列之二十一:关闭一个不需要的盘点
  20. 【抛弃昂贵固态】ReadyDrive技术与混合硬盘介绍

热门文章

  1. 软著申请步骤[2023]
  2. Lucene教程详解
  3. 计算机闹铃音乐在线听,电脑闹钟提醒(Free Alarm Clock)
  4. python-优矿-期权合成策略分析
  5. Gamma分布,Beta分布,多项式分布,Dirichlet狄利克雷分布
  6. 【DRF+Django】微信小程序入门到实战_day03(下)
  7. 计算机操作培训总结,计算机操作培训总结
  8. 省级分布图matlab实现(有九段线)
  9. failed to allocate 2.00G (2147483648 bytes) from device: CUDA_ERROR_OUT_OF_MEMORY: out of memory
  10. getprop 属性