在python下读取并展示raw格式的图片实例

yipeiwu_com5年前Python基础

raw文件可能有些人没有,因此,先用一张图片创建一个raw格式的文件(其实可以是其他类型的格式文件)

import numpy as np
import cv2
img = cv2.imread('cat.jpg')
# 这里需要我们在当前目录下放一张名为cat.jpg的文件
img.tofile('cat.raw')
#利用numpy中array的函数tofile将数据写入文件
#这时我们发现当前目录下新增了一个文件,名为cat.raw

有了raw文件,我们就可以读取这个文件,并显示出来。

# 我们先确定原图片的数据格式和大小,通道数,否者无法进行下一步转换
type = img.dtype#得到数据格式,如uint8和uint16等
width, height, channels = img.shape# 得到图像大小和通道数

# 利用numpydefromfile函数读取raw文件,并指定数据格式
imgData = np.fromfile('cat.raw', dtype=type)

# 利用numpy中array的reshape函数将读取到的数据进行重新排列。
imgData = imgData.reshape(width, height, channels)

# 展示图像
cv2.imshow('img',imgData)
**# 注意到这个函数只能显示uint8类型的数据,如果是uint16的数据请先转成uint8。否则图片显示会出现问题。**
cv2.waitKey()
cv2.destroyAllWindows()

如果已经拥有了raw文件,就直接运用fromfile读取数据(可能有些raw文件有头文件)

以上这篇在python下读取并展示raw格式的图片实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python浪漫表白源码

python浪漫表白源码

要知道我们程序猿也是需要浪漫的,小博我之前在网上搜寻了很多代码,确发现好多都不是最新的,所以自己就整理了一下代码,现在与广大博友们分享下 我们需要用到的包 使用pip install...

python实现的按要求生成手机号功能示例

本文实例讲述了python实现的按要求生成手机号功能。分享给大家供大家参考,具体如下: 看到一个生成手机号的代码,于是自己优化了一下,可以支持按要求生成手机号。 #!/usr/bin...

在Python中处理时间之clock()方法的使用

 clock()方法返回当前的处理器时间,以秒表示Unix上一个浮点数。精度取决于具有相同名称的C函数,但在任何情况下,这是使用于基准Python或定时的算法函数。 在Wind...

python实现递归查找某个路径下所有文件中的中文字符

本文实例为大家分享了python实现递归查找某个路径下所有文件中的中文字符,供大家参考,具体内容如下 # -*- coding: utf-8 -*- # @ description:...

python用户评论标签匹配的解决方法

python用户评论标签匹配的解决方法

我们观察用户评论发现:属性词往往和情感词伴随出现,原因是用户通常会在描述属性时表达情感,属性是情感表达的对象。还发现:属性词和专用情感词基本都是名词或形容词(形谓词)。 算法流程图如下:...