【发布时间】:2021-12-06 11:40:00
【问题描述】:
我有两张尺寸相同的图片 - 第一张是来自无人机的图片,第二张是面具。我需要减去两个图像,当然还要将原始图像中的 exif 数据转换为结果图像。可以在 gdal 或 rasterio 中使用吗? 谢谢。
【问题讨论】:
我有两张尺寸相同的图片 - 第一张是来自无人机的图片,第二张是面具。我需要减去两个图像,当然还要将原始图像中的 exif 数据转换为结果图像。可以在 gdal 或 rasterio 中使用吗? 谢谢。
【问题讨论】:
根据我使用 DJI 无人机的经验,航拍图像通常以 JPEG 格式捕获。元数据可以通过 GDAL 访问,如下所示:
from osgeo import gdal
im = gdal.Open('ImageName.jpg', 0)
exif = im.GetMetadata()
这将返回一个包含 EXIF 元数据的 Python 字典。要将元数据复制到新图像,您只需执行以下操作:
outimg = im.GetDriver().CreateCopy('NewImageName.jpg', im, callback=gdal.TermProgress_nocb)
outimg.SetMetadata(exif)
del im, outimg, exif # close datasets to commit changes to disk
然后您可以根据需要编辑新创建的图像(例如,将像素值乘以二进制掩码)。
【讨论】: