如何在Linux上查看图像元数据

时间:2020-03-21 11:45:07  来源:igfitidea点击:

图像元数据是有关图像的一组信息。
元数据可以嵌入图像本身,也可以存储在单独的文件中。
元数据有三种类型,分别是:

  • 技术元数据
  • 描述性元数据,
  • 管理元数据。

顾名思义,技术元数据通常包括图像的技术信息,例如相机详细信息,DPI,快门速度,文件大小,图像格式,捕获或者创建图像的日期和时间,用于创建图像的软件。
图片和其他一些细节。
技术元数据通常由摄像头设备自动生成。

描述性元数据由摄影师手动添加。
所有者(或者摄影师)可以使用任何外部软件(例如GIMP或者Photoshop)手动添加。
它包括诸如照片标题,位置,摄影师名称和注释等信息。
描述性元数据对于轻松,快速地搜索照片非常有用。

管理元数据包含图像的所有者,许可证,版权和使用条款的标识和联系方式。

向图像添加元数据对于防止内容盗用,滥用和跟踪图像的使用很重要。
但是,可以轻松剥离元数据。
希望我们了解有关图像元数据及其类型的基本思想。

现在,让我们继续前进,看看如何在Linux上的命令行中找到有关图像的信息。

在Linux上查看图像元数据

有很多工具可以在Linux上查找图像的元数据。
其中我提供了三个命令行工具来查看此类详细信息。

1.使用ImageMagick

ImageMagick有一个名为“ Identify”的命令行工具来查找图像元数据。
大多数Linux发行版的默认存储库中都提供ImageMagick。

在Arch Linux及其变体上,运行以下命令以安装ImageMagick:

$sudo pacman -S imagemagick

在Debian,Ubuntu和Linux Mint上:

$sudo apt install imagemagick

在Fedora上:

$sudo dnf install imagemagick

在SUSE/openSUSE上:

$sudo zypper install ImageMagick

现在让我们找到图像元数据。
为此,只需运行:

$identify -verbose image.png

此命令将列出给定图像的元数据的详细输出。

Image: image.png
  Format: PNG (Portable Network Graphics)
  Mime type: image/png
  Class: DirectClass
  Geometry: 1366x768+0+0
  Units: Undefined
  Type: TrueColor
  Endianess: Undefined
  Colorspace: sRGB
  Depth: 8-bit
  Channel depth:
    red: 8-bit
    green: 8-bit
    blue: 8-bit
  Channel statistics:
    Pixels: 1049088
    Red:
      min: 0 (0)
      max: 255 (1)
      mean: 158.62 (0.62204)
      standard deviation: 36.8176 (0.144383)
      kurtosis: -0.256842
      skewness: -0.00384146
      entropy: 0.897097
    Green:
      min: 0 (0)
      max: 255 (1)
      mean: 39.1664 (0.153594)
      standard deviation: 30.5192 (0.119683)
      kurtosis: 26.7374
      skewness: 4.16992
      entropy: 0.773393
    Blue:
      min: 0 (0)
      max: 255 (1)
      mean: 48.4269 (0.189909)
      standard deviation: 27.7343 (0.108762)
      kurtosis: 33.5882
      skewness: 4.85108
      entropy: 0.741411
  Image statistics:
    Overall:
      min: 0 (0)
      max: 255 (1)
      mean: 82.0712 (0.321848)
      standard deviation: 31.9173 (0.125166)
      kurtosis: 35.6513
      skewness: 6.83895
      entropy: 0.803967
  Rendering intent: Perceptual
  Gamma: 0.454545
  Chromaticity:
    red primary: (0.64,0.33)
    green primary: (0.3,0.6)
    blue primary: (0.15,0.06)
    white point: (0.3127,0.329)
  Background color: white
  Border color: srgb(223,223,223)
  Matte color: grey74
  Transparent color: black
  Interlace: None
  Intensity: Undefined
  Compose: Over
  Page geometry: 1366x768+0+0
  Dispose: Undefined
  Iterations: 0
  Compression: Zip
  Orientation: Undefined
  Properties:
    date:create: 2019-08-26T19:25:54+06:00
    date:modify: 2019-08-09T13:49:32+05:00
    png:IHDR.bit-depth-orig: 8
    png:IHDR.bit_depth: 8
    png:IHDR.color-type-orig: 2
    png:IHDR.color_type: 2 (Truecolor)
    png:IHDR.interlace_method: 0 (Not interlaced)
    png:IHDR.width,height: 1366, 768
    png:sRGB: intent=0 (Perceptual Intent)
    signature: 6e35d79e6896e49e6256eadeec46b4f6a4951b13e309a9c89d9235ce51a3b541
  Artifacts:
    filename: image.png
    verbose: true
  Tainted: False
  Filesize: 379KB
  Number pixels: 1.049M
  Pixels per second: 26.23MB
  User time: 0.040u
  Elapsed time: 0:01.039
  Version: ImageMagick 6.9.7-4 Q16 x86_64 20160114 http://www.imagemagick.org

如果只需要基本详细信息,例如只需删除-verbose选项。

$identify image.png 
image.png PNG 1366x768 1366x768+0+0 8-bit sRGB 379KB 0.000u 0:00.000

可以在手册页中找到更多详细信息:

$man identify

2.使用文件命令

我们可以使用用于确定文件类型的文件命令来查看图像的元数据。

$file image.png 
image.png: PNG image data, 1366 x 768, 8-bit/color RGB, non-interlaced

file命令没有提供“ identify”命令之类的详细输出的选项。
它仅打印基本元数据。

阅读手册页以了解有关文件命令的更多信息:

$man file

3.使用Exif工具

Exif是一个命令行实用程序,用于显示和更改图像的EXIF数据。
对于那些想知道的人,EXIF(代表可交换图像文件格式)通常是在我们使用智能手机或者相机拍照时在存储设备中写入的JPEG文件。
EXIF数据包括详细信息,例如照片的日期和时间,相机设置,地理位置,许可证和版权信息等。
它在Debian及其衍生版本(如Ubuntu)的默认存储库中可用。

$sudo apt install exif

要使用exif查看图像元数据,只需运行:

$exif image.jpg

Exif会以表格列格式生成一个不错的输出,如下所示。

EXIF tags in 'image.jpg' ('Motorola' byte order):
--------------------+---------------------------------------------------------
Tag                 |Value
--------------------+---------------------------------------------------------
Image Description   |Lady Evelyn Falls/Chutes Lady Evelyn, Northwest Territorie
Artist              |J. A. Kraulis
Copyright           |J. A. Kraulis/Masterfile (Photographer) - [None] (Editor)
XP Title            |Lady Evelyn Falls/Chutes Lady Evelyn, Northwest Territorie
XP Author           |J. A. Kraulis
Padding             |2060 bytes undefined data
X-Resolution        |72
Y-Resolution        |72
Resolution Unit     |Inch
Padding             |2060 bytes undefined data
Exif Version        |Exif Version 2.1
FlashPixVersion     |FlashPix Version 1.0
Color Space         |Internal error (unknown value 65535)
--------------------+---------------------------------------------------------

Exif不仅读取元数据,还将EXIF写入图像。
有关更多详细信息,请查看手册页:

$man exif