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

yipeiwu_com6年前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求解水仙花数的方法。分享给大家供大家参考。具体如下: 一个N位的十进制正整数,如果它的每个位上的数字的N次方的和等于这个数本身,则称其为花朵数。 #!/us...

python leetcode 字符串相乘实例详解

给定两个以字符串形式表示的非负整数 num1 和  num2 ,返回  num1 和  num2 的乘积,它们的乘积也表示为字符串形式。 示例 1: 输入:...

python 模拟银行转账功能过程详解

python 模拟银行转账功能过程详解

首先画出流程图,流程图与现实代码有出入,因为刚开始画流程图的时候,有些东西没考虑进去,后来写着写着就慢慢能想起来并实现了。 另有一点经验推荐给新手朋友,如果说碰到一个项目无从下手的话,...

django实现登录时候输入密码错误5次锁定用户十分钟

django实现登录时候输入密码错误5次锁定用户十分钟

在学习django的时候,想要实现登录失败后,进行用户锁定,切记录锁定时间,在网上找了很多资料,但是都感觉不是那么靠谱,于是乎,我开始了我的设计,其实我一开始想要借助redis呢,但是想...

python3中pip3安装出错,找不到SSL的解决方式

最近在Ubuntu16.04上安装Python3.6之后,使用pip命令出现了问题,提示说找不到ssl模块,出现错误如下: pip is configured with locati...