pydicom 显示jpeg压缩图像_一日一技:用Python实现找到图像的大小(分辨率)

54f5336434703c537829d22599a35a4a.png

python学习


用Python来实现图像的大小(分辨率)


在这节中,我们来学习如何实现jpeg图像的分辨率,不需使用python的模块

不过,要理解下面的示例,您应该了解以下Python编程主题:


  • Python函数
  • Python用户定义函数
  • Python文件I / O

JPEG(发音为“ jay-peg”)代表联合图像专家组。 它是用于图像压缩的最广泛使用的压缩技术之一。

大多数文件格式都有标头(头几个字节),这些标头包含有关文件的有用信息。

例如,jpeg标头包含高度,宽度,颜色数(灰度或RGB)等信息。在此程序中,我们无需使用任何外部库即可找到读取这些标头的jpeg图像的分辨率。



下面是JPEG图像查找分辨率的源代码:

def jpeg_res(filename):   """"This function prints the resolution of the jpeg image file passed into it"""   with open(filename,'rb') as img_file:       img_file.seek(163)       a = img_file.read(2)       height = (a[0] << 8) + a[1]       a = img_file.read(2)       width = (a[0] << 8) + a[1]   print("The resolution of the image is",width,"x",height)jpeg_res("img1.jpg")

输出:

The resolution of the image is 280 x 280

在上面的程序中,我们以二进制模式打开了图像。 非文本文件必须在此模式下打开。 图像的高度在第164位,然后是图像的宽度。 两者均为2个字节长。

请注意,这仅适用于JPEG文件交换格式(JFIF)标准。 如果图像是使用其他标准(例如EXIF)编码的,则该代码将不起作用。

我们使用按位移位运算符<


希望这篇文章对你们有用,

欢迎在下方讨论留言,

谢谢关注.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值