Форум программистов, компьютерный форум, киберфорум
Java
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
2 / 2 / 0
Регистрация: 10.03.2016
Сообщений: 64
1

"TIFF file is missing a required tag StripOffsets" при работе с классом GeotiffReader

05.09.2018, 17:53. Показов 925. Ответов 9

Author24 — интернет-сервис помощи студентам
Всем привет! Возникла такая проблема:
при работе с некоторыми * .tiff при попытке получить DataRaster [] с использованием метода readDataRaster () (класс GeotiffReader библиотеки NASA WorldWind) выдается исключение:

Код
ERROR j.l.Throwable - java.io.IOException: TIFF file is missing a required tagStripOffsets
Вот сам код, который работает с некоторыми *.tiff:
Java
1
2
3
4
5
6
7
8
9
10
private GeotiffReader reader;
    private ByteBufferRaster raster;
    ...
    reader = new GeotiffReader(file);
    listDataRaster.add(reader.readDataRaster());
    ...
    DataRaster[] dataRaster = listDataRaster.get(iter);
    raster = (ByteBufferRaster)dataRaster[0];
    ...
    raster.setDoubleAtPosition(y, x, value);
Моя задача - взять у * .tiff-а ByteBufferRaster, а затем использовать setDoubleAtPosition, чтобы внести изменения в сетку после некоторых вычислений и переписать измененный * .tiff.

Как исправить эту ошибку? А если никак, есть ли другие способы выполнить мою задачу?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.09.2018, 17:53
Ответы с готовыми решениями:

Ошибка 501 Required byte offset parameter bad or missing при работе с FTP
Есть небольшой скриптик: #!/usr/bin/perl use strict; use warnings; use Net::FTP; my...

Ошибка при установке "Windows failed to load because a required file is missing, or corrupt"
Собственно, при переустановке windows 7, после выбора 32/64 бит, начинается загрузка и вылезает эта...

Error : Required file "tracker.exe" is missing
Здравствуйте! Помогите, пожалуйста! Дело в том, все в любом, даже только что созданном проекте...

Required file "tracker.exe" is missing
из-за чего может возникать??

9
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
05.09.2018, 18:40 2
https://github.com/ngageoint/tiff-java
https://github.com/EasyinnovaSL/Tiff-Library-4J
https://github.com/search?q=java+tiff
0
2677 / 1995 / 496
Регистрация: 17.02.2014
Сообщений: 9,357
06.09.2018, 09:17 3
v1a_sacra, Бро, у этой библиотеки есть свой форум, не говоря уже о тутриолах, там что тебе сказали?
0
2 / 2 / 0
Регистрация: 10.03.2016
Сообщений: 64
06.09.2018, 09:54  [ТС] 4
Aviz__, я знаю, я уже создал тему на их форуме, но ответа пока что нет.
0
2677 / 1995 / 496
Регистрация: 17.02.2014
Сообщений: 9,357
06.09.2018, 10:01 5
а примеры запускал, другие тифы подсовывал, дебагером пользовался?
0
2 / 2 / 0
Регистрация: 10.03.2016
Сообщений: 64
06.09.2018, 10:32  [ТС] 6
Aviz__, естественно) Он не кушает только экспортированные *.tiff из Agisoft PhotoScan. На StackOverFlow сказали, что возможно сам *.tiff сделан не по стандартам. Но я не думаю, что PhotoScan делает *.tiff не по стандартам)))

Добавлено через 5 минут
Так же не кушает *.tiff из ArcGIS
0
2677 / 1995 / 496
Регистрация: 17.02.2014
Сообщений: 9,357
06.09.2018, 10:39 7
Цитата Сообщение от v1a_sacra Посмотреть сообщение
PhotoScan делает *.tiff не по стандартам
если лицензия, то да. попробуй параметры в PhotoScan изменить... Твоя проблема то в данных, а не в либах, как видно.
0
2 / 2 / 0
Регистрация: 10.03.2016
Сообщений: 64
06.09.2018, 10:50  [ТС] 8
Aviz__, в том то и дело, что в параметрах ничего и близко с этим тегом связанного нет. Ни в PhotoScan, ни в ArcGIS
0
2677 / 1995 / 496
Регистрация: 17.02.2014
Сообщений: 9,357
06.09.2018, 11:00 9
v1a_sacra, Бро, не думаю, что ты не в курсе, что самая тупая операция может изменить все)).
попробуй из тиф PhotoScan, переделать в такой же тиф, но другой прогой. Тут вариантов для исследований море!
0
2 / 2 / 0
Регистрация: 10.03.2016
Сообщений: 64
04.10.2018, 10:51  [ТС] 10
Всем спасибо, задачу смог решить вот таким путем через ExtendedGDALDataRaster

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
DataRasterReaderFactory readerFactory = (DataRasterReaderFactory) WorldWind
                .createConfigurationComponent(AVKey.DATA_RASTER_READER_FACTORY_CLASS_NAME);
DataRasterReader dataRasterReader;
DataRaster[] dataRasters = null;
...
dataRasterReader = readerFactory.findReaderFor(file, null);
dataRasters = dataRasterReader.read(file, null);
...
rasterGdal = (ExtendedGDALDataRaster) dataRasters[0];
 
ElevationModel elevationModelFromGlobe = GLOBE.getElevationModel(); 
Sector boundingSector = rasterGdal.getSector();
int[] heightAndWidth = new int[2];  
 
//Метод для создания пустого сектора по аналогии с текущим          
recalculationHeightAndWidth (boundingSector, elevationModelFromGlobe, heightAndWidth);
 
//Метод для создания параметров по умолчанию для сектора
AVList params = getParams(boundingSector, heightAndWidth[1], heightAndWidth[0]);
raster = (ByteBufferRaster) ByteBufferRaster.createGeoreferencedRaster(params);
                
Dataset dataset = rasterGdal.getBestSuitedDataset(heightAndWidth[1], heightAndWidth[0], rasterGdal.getSector());
band = dataset.GetRasterBand(1);
И затем для можно доставать значение высоты любой точки из *.tiff и менять его на свое усмотрение (оно будет лежать в data)

Java
1
2
float[] data = new float[1];
band.ReadRaster(x, y, 1, 1, band.getDataType(), data);
2
04.10.2018, 10:51
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.10.2018, 10:51
Помогаю со студенческими работами здесь

Visual Studio 2012 Ошибка 1 error : Required file "tracker.exe" is missing.
vs 2012 #include "stdafx.h" #include <iostream> using namespace std; int main() {...

Утечка памяти при работе с файлами TIFF
Здравствуйте! Помогите найти утечку памяти, читал msdn, но так и не понял как это сделать вот и...

Ошибка object required при работе с ComboBox
Доброго времени суток, есть программа, где идет поиск по запросу, т.е. выбирается лист в comboBox и...

Ошибка при установке Windows: "A required CD/DVD drive device driver is missing"
Дано: флешка с виндой 7 и диск, привод для дисков только USB, SATAшного нет. Материнка ASUS Z170-A...

Ошибка при работе с классом
Исключение нарушение прав доступа. class animals { char* name; char* cls; int weight; ...

Ошибка при работе с классом
Отсутствуют экземпляры перегруженная функция "animals::animals", соответствующие списку...

Ошибка при работе с классом
Если я запускаю программу в 3 файла(main.cpp, auto.h, auto.cpp) выдает ошибку id returned 1 exit...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru