Notes |
|
|
Если я правильно понял, это будет сделано? Если да, то скоро ли? |
|
|
|
Смотрите страничку RoadMap http://sasgis.org/mantis/roadmap_page.php |
|
|
|
Уважаемые разработчики!
Прошло более 3-х лет. Нельзя ли ускорить процесс выпуска версии с сохранением результата в GeoTIFF?
Очень неудобно сохранять результат в промежуточный файл в формате ECW, который сохраняется со сжатием с потерей качества, то есть не lossless. |
|
|
|
Приаттачьте что ли примеры разных результирующих тайлов (область выделения = 1 тайл) для разных проекций, чтобы понять, что надо сделать и какие тэги надо заполнять как в каком случае. Ответ "сделать как через ECW и GlobalMapper" очевидно не прокатит. Может кто и заинтересуется. |
|
|
|
Я не понял вопроса? GeoTIFF - это открытый стандарт, документированный, и вот как раз в него и нужно сохранять данные, а не только в ECW, в котором также привязка сохраняется. Что естественно. |
|
|
|
>Я не понял вопроса?
Ничего страшного в этом нет. Признание - первый шаг. Попробуйте ещё раз прочитать. Какое из слов в сообщении Вам было непонятно?
Нужен референсный результат, или какой Вы считаете референсным. Чтобы потом не было плача, что какой-то тэг не заполнен, или проекция не та (одну и ту же проекцию можно задать разными способами). Скажем, для гугла и для яндекса - наверное будет достаточно. |
|
|
(0012986)
|
zed
|
28-09-2013 17:05
(edited on: 28-09-2013 17:25) |
|
>ECW, который сохраняется со сжатием с потерей качества, то есть не lossless
На заметку: можете сохранять в jpeg2000 с качеством 100% - будет именно lossless.
По поводу TIFF: какое сжатие предлагается сделать по-молчанию? LZW? Формат tiff, на самом деле имеет ограничения на размер (4Gb), в отличии от того же ecw или jpeg2000. И если хотелка про сжатие без потерь, то вы уверены, что этот формат окажется удобнее того же png? Я имею ввиду, какое максимальное разрешение картинки может в итоге получиться в сжатом без потерь tiff, и сильно ли оно отличается от 65k*65k, что доступно в png?
Да, tiff вообще навороченный формат, поэтому vasketsov и просит пример готового файла, который вас полностью устраивает. Там, к примеру можно писать построчно (stripped) или тайлами (tiled), может использоваться несколько цветовых пространств и качество цвета и т.д. Понятно, что в SAS нам все эти плюшки особо не нужны - достаточно один раз определиться с какими настройками проще/лучше делать, чтобы устраивало в большинстве случаев и открывалось в той программе, для которой вы готовите эти тифы.
|
|
|
|
vasketsov
"Ничего страшного в этом нет. Признание - первый шаг. Попробуйте ещё раз прочитать. Какое из слов в сообщении Вам было непонятно?","Чтобы потом не было плача" - если хамство и высокомерие есть плата за призрачное исполнение функционала, делающего программу полноценной, то тогда я выхожу из числа лиц, дающих советы по улучшению программы.
zed
У меня нет желания обсуждать функционал в присутствии vasketsov. Я не привык, чтобы на корректное вежливое обращение мне так отвечали без последствий. Но здесь форум и словесная перепалка с одним из хозяев бесмысслена... |
|
|
|
>Чтобы потом не было плача
Уважаемый, тут никто ничего не начнёт делать, покуда от вас или кого другого не будет однозначного и внятного желаемого результата. Пока что хотелка сформулирована чуть менее расплывчато, чем "сделайте мне хорошо". И потом 146% будет "поправьте тут, а лучше вот так, а можно чтобы,..."
>если хамство и высокомерие
Вы уверены, что правильно понимаете значение этих слов?
>делающего программу полноценной
Вы уверены, что после прикручивании LocationAPI программа осталась неполноценной? )))) Как вы иногда удивляете, нервные, делаешь-делаешь, а вам всё неполноценно, носители тайных знаний о полноценности.....
>выхожу из числа лиц, дающих советы по улучшению программы
Желаете тему закрыть?
>нет желания обсуждать функционал в присутствии vasketsov
Если это будет делать zed - Вы можете попробовать обратиться к нему в личку. Если нет - ищите кто будет делать, и обсуждайте с ним.
>не привык, чтобы на корректное вежливое обращение
А я например привык, чтобы время того, кого кто-то о чём-то просит, ценилось БОЛЬШЕ чем собственное, иначе это не просьба, а приказ. И если что-то просят для того, чтобы что-то сделать из запрощенного, надо хотя бы минимально попробовать понять, а не задавать странные вопросы, правильно ли понят вопрос. Где Вы вообще увидели вопрос в моём сообщении?
>словесная перепалка
Попробуйте приаттачить запрошенное, лишних слов и перепаляться как раз никто не просил. Вы можете это сделать, или нет? Или Вам и со второго раза что-то непонятно в написанном? Или Вы надеетесь, что кто-то сделать это без чёткого примера ожидаемого результата?
>с одним из хозяев
Вы неправы. |
|
|
(0017314)
|
zed
|
08-06-2016 18:21
|
|
Сделал склейку в GeoTiff:
- поддерживает сжатие LZW, ZIP (Deflate), JPEG и Без сжатия;
- поддерживает форматы Tiff и BigTiff. В режиме Auto пытается спрогнозировать итоговый размер файла и если он превышает 4 Гб, то создаёт BigTiff, иначе создаётся обычный Tiff.
Максимальная ширина картинки при склейке ограничена в 1 миллион пикселей. Высота практически не ограничена. Ограничение по ширине связано с потреблением памяти в SAS для подготовки строк пикселей для записи в Tiff.
На больших размерах не тестировал, на малых - всё ОК. Формат BigTiff тестировал на GlobalMapper 16.
Как ночнушка выйдет, жду отзывов по результатам тестов. |
|
|
|
zed
Спасибо, что не забыли мою просьбу. Туристы, пользующие навигаторы DeLorme будут очень благодарны. С удовольствием испытаю, когда будет возможно проверить в деле. |
|
|
|
Потестил склейку в последней ночнушке — в обычном TIFF больше 2 Гб не пишет. Старый известный баг в tifflib, уже всем до смерти надоевший. :( Если принудительно выбрать BigTIFF без сжатия, то склейка обрывается на 3.99 Гб Клеил растр 131072х65536 пикселей
SASPlanet.Debug.exe молчит как рыба, в .elf ничего не пишет. |
|
|
(0017332)
|
zed
|
10-06-2016 17:13
|
|
Пофиксил, тестируйте следующую ночнушку. |
|
|
|
Вот теперь в Tiff клеит отлично. Тестировал BigTiff, без сжатия и с LZW-сжатием, растр 131072х65536 (весь мир в z10), проекция lat/lon, без сжатия получился файл объемом 24 Гб. Склейка в обычный Tiff тоже работает корректно, вплоть до лимита в 4 Гб. Погонял получившиеся растры в GlobalMapper 15 - всё нормально, проблем с привязкой и дефектов склеивания не обнаружил. Спасибо. |
|
|
|
Кстати, я кажется догадываюсь почему оно глючило. Но склеивать 4 гига для проверки мне лень, да и возможности сейчас нету. |
|
|
(0017338)
|
zed
|
11-06-2016 21:21
|
|
А просто озвучить решение слабо? |
|
|
|
Насколько я помню, seek у стрима для Integer и Int64 , а у тебя параметр UInt64. И оно судя по всему конвертит его в простой инт, а не в Int64. Нужно попробовать явно конвертировать в Int64 при вызове. |
|
|
(0017341)
|
zed
|
12-06-2016 10:08
(edited on: 12-06-2016 10:16) |
|
Нет, не помогает. С конвертированием всё в порядке:
libtiff.pas.474: Result := TStream(Fd).Seek(Int64(Off), MoveMethod);
00448EB8 668B4DF6 mov cx,[ebp-$0a]
00448EBC 8B550C mov edx,[ebp+$0c]
00448EBF 8B4508 mov eax,[ebp+$08]
00448EC2 8B18 mov ebx,[eax]
00448EC4 FF5314 call dword ptr [ebx+$14]
00448EC7 99 cdq
00448EC8 8945F8 mov [ebp-$08],eax
00448ECB 8955FC mov [ebp-$04],edx
libtiff.pas.474: Result := TStream(Fd).Seek(Off, MoveMethod);
00448EB8 668B4DF6 mov cx,[ebp-$0a]
00448EBC 8B550C mov edx,[ebp+$0c]
00448EBF 8B4508 mov eax,[ebp+$08]
00448EC2 8B18 mov ebx,[eax]
00448EC4 FF5314 call dword ptr [ebx+$14]
00448EC7 99 cdq
00448EC8 8945F8 mov [ebp-$08],eax
00448ECB 8955FC mov [ebp-$04],edx
|
|
|
|
Значит не угадал. Но больше подозрительных мест я там не вижу. Разве что уже в самой либе. |
|