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

yipeiwu_com7年前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设计】。

相关文章

用Pytorch训练CNN(数据集MNIST,使用GPU的方法)

听说pytorch使用比TensorFlow简单,加之pytorch现已支持windows,所以今天装了pytorch玩玩,第一件事还是写了个简单的CNN在MNIST上实验,初步体验的确...

python操作小程序云数据库实现简单的增删改查功能

python操作小程序云数据库实现简单的增删改查功能

不止python,你可以利用任何语言那实现通过http请求来操作你自己的小程序云数据库了 背景 也是在最近吧,小程序更新了云开发 HTTP API 文档,提供了小程序外访问云开发资源的能...

Python3的urllib.parse常用函数小结(urlencode,quote,quote_plus,unquote,unquote_plus等)

本文实例讲述了Python3的urllib.parse常用函数。分享给大家供大家参考,具体如下: 1、获取url参数 >>> from urllib import...

使用OpenCV-python3实现滑动条更新图像的Canny边缘检测功能

使用OpenCV-python3实现滑动条更新图像的Canny边缘检测功能

import cv2 from matplotlib import pyplot as plt import numpy as np img= cv2.imread('39.jpg...

Python父目录、子目录的相互调用方法

Python父目录、子目录的相互调用方法

最近在使用Python的过程中经常遇到找不到该模块的问题。其中一个就是父目录子目录之间相互调用的情况。下面简单总结下。 我们在F:\Code文件夹下面创建一个test文件夹 而test...