Страница 1 из 1
Расширение SEG
Добавлено: 29 май 2014, 12:49
glkhramov
Помогите! Спасите! Неведомо откуда нашел ортофотопланы на нужную территорию. По два файла: растр bmp, второй файл seg. Чем открыть не знаю, а ОЧЕНЬ НАДО. Когда пытался добавить сюда появилась надпись "Расширение seg запрещено администратором
Re: Расширение SEG
Добавлено: 29 май 2014, 14:19
Максим Дубинин
заархивируйте и еще раз приложите
Re: Расширение SEG
Добавлено: 29 май 2014, 14:21
glkhramov
вот
Re: Расширение SEG
Добавлено: 29 май 2014, 15:14
Игорь Белов
В архиве файлы привязки.
P. S. Простите, я сделал в привязке детскую ошибку. Кто скачал, замените на новый выриант.
18:30 MSK
Re: Расширение SEG
Добавлено: 29 май 2014, 18:02
glkhramov
Превосходно!!!...Но как?)) У меня таких файлов куча!
Re: Расширение SEG
Добавлено: 29 май 2014, 19:38
gamm
glkhramov писал(а):Превосходно!!!...Но как?)) У меня таких файлов куча!
координаты углов лежат в формате float (4 байта) со смещением 4 байта от начала файла seg.
9681409.000000
6232936.000000
9685487.000000
6237741.000000
размеры можно получить из заголовка bmp-файла (формат описан), и посчитать привязку для всего списка. В какой-нибудь программке на языке С. Или R.
Re: Расширение SEG
Добавлено: 29 май 2014, 20:30
Игорь Белов
gamm прав, как всегда. Даже если найдётся программа, которая делает такие SEG'и, без программирования вряд ли удастся обойтись. Поэтому попробую дать более развёрнутый ответ.
Посмотрим поближе на файл
4563BG3.SEG:
Код: Выделить всё
00: 32 2E 30 00 01 BA 13 4B D0 36 BE 4A EF C9 13 4B
10: 5A 5C BE 4A 2E 42 4D 50 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
30: 00 00 00 00 00 00 00 00 00 00 03 00
Первые 4 байта — это, видимо, «волшебное слово» "2.0".
Дальше идут четыре
числа одинарной точности:
Затем строка ".BMP" и нулевые байты до конца, где ещё какая-то тройка.
Четыре действительных числа похожи на координаты. Предположим, это Xmin, Ymin, Xmax, Ymax, ограничивающие стороны изображения. Для полноценной привязки не хватает размеров растра в пикселах W × H и информации о координатной системе.
Размеры придётся спросить у самого растра.
4563BG3.BMP оказался 3727 × 4392. Координатную систему, к счастью, удалось угадать: подошла СК-42 зона 9.
Остался ещё один вопрос. Неясно, относятся координаты к центрам пикселов или к краям. Впрочем, это мелочь.
Файл привязки для ArcView 4563BG3.BPW
Код: Выделить всё
1.0941776228 = (Xmax − Xmin) / W
0
0
-1.0940346084 = (Ymin - Ymax) / H
9681409 = Xmin
6237741 = Ymax
Файл привязки для MapInfo 4563BG3.TAB
С ним, по-моему, не должно быть вопросов, откуда что берётся.
Re: Расширение SEG
Добавлено: 29 май 2014, 20:43
glkhramov
эх, был бы я хоть чуточку поумнее.. ничего не смыслю в программировании. нельзя-ли великодушно какое-нибудь готовое решение?

Re: Расширение SEG
Добавлено: 29 май 2014, 21:45
Максим Дубинин
ErnieBoyd крутой
glkhramov, имхо вы перебарщиваете с добротой здешних экспертов, вам все разложили по полочкам, потрудитесь найти программиста что ли, примерная стоимость его работы - 300р с запасом.
Re: Расширение SEG
Добавлено: 29 май 2014, 22:02
glkhramov
каюсь, грешен
Re: Расширение SEG
Добавлено: 30 май 2014, 05:16
Denis Rykov
Вот пример вычисления координат углов и размера растра на Python:
Код: Выделить всё
from functools import partial
from struct import unpack
from PIL import Image
unpackf = partial(unpack, 'f')
seg = open('4563BG3.SEG', 'rb')
bmp = Image.open('4563BG3.BMP')
seg.seek(4)
bbox = tuple(unpackf(seg.read(4))[0] for i in range(4))
print bbox, bmp.size
# (9681409.0, 6232936.0, 9685487.0, 6237741.0) (3727, 4392)
Re: Расширение SEG
Добавлено: 30 май 2014, 07:15
Донецков
Далее заменяйте наименование файлов и получите все координаты...
Re: Расширение SEG
Добавлено: 14 дек 2014, 21:08
glkhramov
простое до безумия элегантное решение чешский топол
Re: Расширение SEG
Добавлено: 15 дек 2014, 14:19
Донецков
Только Topol не у всех есть...

Re: Расширение SEG
Добавлено: 15 дек 2014, 14:50
trir