java在Android上获得单像素TIFF图像
理想情况下,我需要在我正在开发的Android应用程序上离线访问墨西哥地形的高度信息。我下载了一个。bil文件并将其转换为。tif文件与QGIS一起使用,生成的文件几乎为900 MB
我不知道它是否有效,我仍在学习开发Android应用程序,但我计划将其存储在SD卡中,我想知道是否可以在不读取整个图像的情况下访问单个像素,因为我知道这是不可能的
有人能告诉我这是否可能吗?如果是,怎么做?或者通过其他方式获取我需要的信息,比如转换。将bil文件转换为其他格式或类似的格式
谢谢你的回答
# 1 楼答案
Tiff将图像存储为以定义的偏移量开始的字节行。因此,您可以轻松检索单个像素,当然无需加载完整图像。 如果在hex editor中打开任何tif文件,您将看到前4个字节以代码标记tiff。接下来的4个字节给出了tif图像元数据的偏移量。 使用随机访问文件打开图像tif文件,然后查找偏移量,然后进入元数据空间。从这里可以选择所需像素的偏移量。那就去拿吧
我们的tiff仅用于此目的。即访问单个像素。如果我们需要完整的图像,那么jpeg或BMP就足够了
# 2 楼答案
检查此链接以获取完整代码:-full example to decode tiff image