SASGIS

Веб-картография и навигация

GoogleArtProject

Модератор: Tolik

Интересно ли Вам получение картин с данного сервиса?

Да!
12
71%
Нет.
4
24%
Другое...
1
6%
 
Всего голосов : 17

Re: GoogleArtProject

Сообщение VMatveev » 28 мар 2011, 11:32

Parasite писал(а):
VMatveev писал(а):Возникает следующий вопрос - почему этот гребанный гугл нарезает сканы на куски и не хочет их выкладывать уже в виде кошерных MrSID?!
Увы и ах - подавляющее большинство предложений современного мира направлено не на то как ЛУЧШЕ, а на то что ПРИНОСИТ КЛИЕНТОВ\ДЕНЬГИ - а переход на СИДа на наст.момент принесет лишь расходы и уменьшение пользователей. Поэтому его и нет. Поэтому и его и не будет.

Извините, не совсем правильно сформулировал вопрос. Он заключался в том: зачем распылять растры на тайлы? Почему юзеру не предоставляется выбора (даже за деньги, заметьте!) просмотреть ли гигантскую картинку онлайн, или скачать файл *.jp2 и посмотреть оффлайн? (как вышеприведенные снимки Марса) Это вопрос мучает меня уже давно.
А вместо дорогущего MrSID можно взять тот же JPEG2000 - относительно свободный wavelet-формат, пусть и чуть хуже СИДа, чуть выше требования к объему оперативки, но "смотрится-манипулируется" почти так же легко. Он тоже требует плагина к браузеру, да. Дык для просмотра онлайн-галереи сабжа тоже требуется плагин flash для браузер. А если браузер устарел или юзер отключил ActiveX из соображений безопасности - сразу упс... :)
J'ai rêvé qu'on pouvait s'aimer
J'avais rêvé du mot aimer...
© MF
Аватара пользователя
VMatveev
Советчик
 
Сообщения: 292
Зарегистрирован: 07 ноя 2008, 04:41
Благодарил (а): 82 раз.
Поблагодарили: 76 раз.

Re: GoogleArtProject

Сообщение Parasite » 28 мар 2011, 11:51

VMatveev писал(а):зачем распылять растры на тайлы? Почему юзеру не предоставляется выбора (даже за деньги, заметьте!) просмотреть ли гигантскую картинку онлайн, или скачать файл *.jp2 и посмотреть оффлайн? (как вышеприведенные снимки Марса) Это вопрос мучает меня уже давно.

Потому что попсовым сервисам этот выбор не нужен просто потому, что процент интереса попсы к этому пункту будет ничтожен, а затраты на разработку\хранение\обслуживание - ровно в 2 раза больше, ибо сие есть дублирование "тайлового варианта информации". Попсе важно, чтобы "чятик работал" (причем на их попсовых девайсах, ибо платить за качество попса не любит, не хочет, и не будет). Для этого варианта и нет ничего лучше, чем кучка отдаваемых по запросу мелких картинок в открытых граф.форматов, которые откроются всегда и везде. Сугубо по соотношению затрат к результату).
А у серьезных вариантов деления на тайлы нет (ровно по тому же подходу - интерес специалистов к тайлам будет где-то в районе нуля целых хрен десятых процента). Вот зулус например с полновесным ландсатом, или Вы сами ссылку на Марс привели выше.
The only difference between me and a mad man is that I am not mad. /Salvador Dali/
Изображение

За это сообщение автора Parasite поблагодарил:
VMatveev (28 мар 2011, 11:55)
Рейтинг: 5.26%
 
Аватара пользователя
Parasite
Администратор
 
Сообщения: 5646
Зарегистрирован: 23 окт 2008, 17:38
Благодарил (а): 124 раз.
Поблагодарили: 512 раз.

Re: GoogleArtProject

Сообщение Parasite » 28 мар 2011, 12:38

PavelML писал(а):по вопросу "почему нарезают мелкими кусочками" Вам следует слегка ознакомиться с основами геодезии. Дело в том что сплошное картографическое пространство возможно реализовать лишь в цилиндрической проекции меркатора (выкинув приполярные области от широты 83 градуса и выше). НО - эта проекция равноградусная, а это значит что понятие "масштаб" к ней в принципе неприменимо!Если пренебречь погрешностью для ограниченного фрагмента снимка - можно установить "средний" масштаб для фрагмента.При этом - чем мельче фрагмент - тем меньше будут погрешности.
Поскольку пространство подразумевается НЕПРЕРЫВНОЕ - заметные скачки масштаба или картинки между снимками недопустимы. Если мы сделаем снимки покрупнее - то шов между ними окажется сильно искажен либо по картинке либо по масштабу. Приемлемо - в пределах 256 пикселей.

Хрень какую-то написали [в данном вопросе], извините.
1. Изображение тайлируется (режется) ровно для обеспечения аналогии "селективной распаковки" глобального битмапа, чтобы обеспечить доступ разнообразных устройств с ограниченным кол-вом памяти (читай: всех без исключения, начиная с самого сервера) - к этому битмапу без тормозов. При этом очевидно, что чем меньше часть от целого - тем выше селективность, но и тем выше число частей (и соответственно выше расходы на системную часть операций - запросы\ответы, ожидания сервера итд). На наст.момент в среднем арифметическом по всем устройствам уровня пользователя (начиная от мобильников и кончая десктопами) оптимальным является размер части ~15-25Кб, помноженное на число частей умещающихся на экране (об этом - см.п.2), и чем меньше возможности устройства - тем меньше оно затребует частей. При этом, так как среднестатистическое число памяти в девайсе и скорость соединения постоянно растут - то мы наблюдаем постепенное увеличение размера "минимальной рабочей части", т.е. тайла. Вот даже в этой теме тот же канонiчный Гугль уже использует тайлы 512\512, средний обьем которых ровно в 4 раза больше чем у предыдущих 256\256. А кое-где тайлы уже по 1024\1024...
Так что вопрос введения "нестандартных" размеров тайлов в САСе - это вопрос неизбежного ближайшего будущего. :)

2) О квадратном размере 256\256. Тут все просто: 256 есть 2 (бинарное счисление в компьютере) в 8й степени (8 бит в байте), то есть это число прекрасно разделится нацело на любые степени двойки до 8й включительно (что есть ничто иное как масштабирование), а все последующие степени прекрасно разделятся уже на это значение. Как и 512, как и 1024. То есть, этими значениями очень легко манипулировать\масштабировать\адресовать со стороны машины и собственно кодинга на любом языке программирования - в отличие от привычных человеку десятичных значений, требующих доп.пересчетов.

Никакого отношения к картографии\геодезии данный вопрос не имеет - поделить на тайлы и масштабировать можно даже фотографию любимой собачки с тем же успехом. Примеры? Погуглите за Zoomify. Вот, например - никакой геодезии, тайлово, 256\256 жпеги. :)
The only difference between me and a mad man is that I am not mad. /Salvador Dali/
Изображение

За это сообщение автора Parasite поблагодарил:
vdemidov (01 апр 2011, 19:09)
Рейтинг: 5.26%
 
Аватара пользователя
Parasite
Администратор
 
Сообщения: 5646
Зарегистрирован: 23 окт 2008, 17:38
Благодарил (а): 124 раз.
Поблагодарили: 512 раз.

Re: GoogleArtProject

Сообщение PavelML » 28 мар 2011, 23:08

Parasite писал(а):Хрень какую-то написали [в данном вопросе], извините.
1. Изображение тайлируется (режется) ровно для обеспечения аналогии "селективной распаковки" глобального битмапа, чтобы обеспечить доступ разнообразных устройств с ограниченным кол-вом памяти ...


Извиняю - геодезия явно не Ваш профиль...
Приведу пример: выставляем в САС.планете 13х зум на широте 80 градусов и измеряем встроенным в прогу измерителем расстояний расстояние между крайними видимыми на экране точками. Это фиксированное количество пикселей. Потом делаем то же самое - на экваторе. Получаем в первом случае скажем 12 км, во втором случае - 70 км. В ОДНОМ ЗУМЕ! Это цилиндрическаяя проекция Меркатора. Что можно измерить реально с такой проекцией? Расстояния? Площади?
Ничего. А вот если мелко-мелко покрошить - тогда все становится ближе к реальности. Именно это я имел в виду.
Что касается "нарезки для ограниченной памяти" - звучит слегка по детски. Существует потоковый звук, потоковое видео. Потоковое изображение - теж яйцы, вид сбоку. Если бы такая необходимость возникла....

Что касается двоичной арифметики - я ее еще на перфокартах осваивал. Удачи Вам...
PavelML
Заслуженный тролль ресурса
 
Сообщения: 104
Зарегистрирован: 20 фев 2010, 17:29
Благодарил (а): 0 раз.
Поблагодарили: 6 раз.

Re: GoogleArtProject

Сообщение Parasite » 29 мар 2011, 06:13

PavelML писал(а):выставляем в САС.планете 13х зум на широте 80 градусов и измеряем встроенным в прогу измерителем расстояний расстояние между крайними видимыми на экране точками. Это фиксированное количество пикселей. Потом делаем то же самое - на экваторе. Получаем в первом случае скажем 12 км, во втором случае - 70 км. В ОДНОМ ЗУМЕ! Это цилиндрическаяя проекция Меркатора.

В посте выше я давал ссылку. Откройте ее и покажите мне "цилиндрическую проекцию меркатора с выставленным в сасе 13м зумом". А я покажу Вам просто тайлы.
Мало? Откройте собственно сабж - http://www.googleartproject.com и покажите мне геодезию. А я покажу Вам просто тайлы.
Я не зря в предыдущем посте взял определенную сентенцию в квадратные скобки - как раз для этого случая.

PavelML писал(а):звучит слегка по детски. Существует потоковый звук, потоковое видео. Потоковое изображение - теж яйцы, вид сбоку.

Возьмите вышеупомянутый Вами 13й уровень (это 4096х4096, если не ошибаюсь). Покажите мне его на экране мобилы 128\128 с помощью "недетского потокового изображения", заодно обьяснив по пунктам весь процесс? А я Вам расскажу, как этому девайсу отдать максимум 4 тайла в самом сложном случае, даже не прибегая к помощи Апача или иного веб-сервера. А если это 409600х409600 - и клиент не один, а пара-другая сотен тысяч? Ваш вариант просто не будет иметь шансов на существование.

Ну или даже максимально упростим задачу: имеем (в рамках сабжа) картину с размером оной 65536 x 57344 (3.7Gpix). Расскажите мне за процесс доступа к ней, например, с моего старого коммуникатора с памятью 58Mb и экраном 240\240? На настоящий момент это делается легко, не нарушая сна и с минимальным траффиком - обьясните, каким образом 3.7Gpix картина живет на 58Мб памяти и не вызывает коматоза всего устройства?

При этом я даже дам Вам фору и не спрошу, как это обеспечится на стороне сервера без открытия этого файла там, ибо у Вас отсутствует понимание разницы потока (звук, изображение -> от начала к концу по одной дорожке и никак не наоборот, то есть по сути - одномерный вектор) - и двумерного массива данных с рандомным доступом в любую его часть, чего нет в видео\аудио. Не спрошу, где в "одномерных" видео\аудио находятся индексирующие метки для быстрого доступа в произвольную часть по одной (временнОй) координате - чего нет в изображениях, тем более сжатых. И также не спрошу, как Вы вообще собираетесь делать произвольный доступ в любую часть сжатого массива данных без собственно его разжатия в нормальный вид и навигации юзера уже по нему. Я даже не намекну Вам, что упомянутое Вами "потоковое изображение" есть вещь статичная и вообще не нуждается в потоковости по своему смыслу. Ну и уж совсем не буду спрашивать об обоснованиях предыдущего Вашего утверждения "приемлемо - в пределах 256 пикселей", ибо это не то что по детски звучит - а и вообще ни в какие ворота, бо размер пикселей и экранов у всех устройств разный в отличие от аффинных преобразований и прочих проекций. Кому и когда приемлемо - пускай для всех останется загадкой. :lol:

Ну и на погоны - обрезка изображения на стороне сервера по размеру экрана клиента есть вариант тайловости, где задача сводится к вопросу "клиент запросил один тайл размера Хi\Yi из глобального изображения X\Y", весьма ресурсоемка для сервера, и подходит лишь для относительно небольших проектов с постоянным сервер-сайд рендерингом динамических данных в статику (обычно вектор в растр), что в случае картин мировых классиков, мягко говоря - не в кассу. А некое "недетское потоковое изображение" - есть ничто иное как видео без смены сцены (все кадры=одинаковы), ограниченное со своей стороны уже видеокодеками и по размеру кадра, и по фреймрейту, и вообще.

PavelML писал(а):двоичной арифметики - я ее еще на перфокартах осваивал.

Я вижу. Судя по всему, примерно тогда же всё и закончилось.
Держите матчасть:
Whether you knew it or not, lots of blood, sweat, and tears have gone into making the modern GIMP a tile-based graphics application. And no, that doesn't have anything to do with the "Tile of the Day". What does it mean?

Well, our graphics are two dimensional, but the memory they're stored in is accessed by a one-dimensional index. The usual approach to storing a graphic is to store the whole thing as one long array, stringing one row on after another. This works fine, until your images get rather large. Say you have a 1000 x 1000 RGBA layer, that takes 4 MB. Drawing a vertical line down the image requires loading the entire thing into active memory, every row from top to bottom.

GIMP's approach is to break the image up into a series of tiles. Now when you draw that vertical line, only the affected tiles need be in memory.

http://www.gimp.org/docs/plug-in/sect-tiles.html

Еще вопросы? В гугль.
The only difference between me and a mad man is that I am not mad. /Salvador Dali/
Изображение
Аватара пользователя
Parasite
Администратор
 
Сообщения: 5646
Зарегистрирован: 23 окт 2008, 17:38
Благодарил (а): 124 раз.
Поблагодарили: 512 раз.

Re: GoogleArtProject

Сообщение DJ VK » 29 мар 2011, 23:44

А я думаю вопрос разбиения на тайлы имеет золотую середину. Вот мои измышления.
Дело не в том, что при разбиении на тайлы в определенный момент времени пользователю загружается определенный объем информации, относительно небольшой.
90% пользователей взглянут на картину от Гугля "Явление Христа народу", так же как и я, посмотрят на детальность передачи лица Иоанна Крестителя, когда видны даже мазки краски, скажут "круто" и закроют сайт, поделившись ссылкой. А посмотрят лишь 0,01% от общего объема.
9% проявят интерес и рассмотрят интересующие их детали, часто даже не в крупном масштабе, например, художники в крупном масштабе оценят технику исполнения.
1% скачают картину целиком, но лишь для печати на всю стену.
Такое разбиение снижает ТРАФФИК!
Ни один админ, размещая на сайте карты от Гугля или Яндекса не рассчитывает, что через его личный api будут смотреть или скачивать всю Землю.
Аватара пользователя
DJ VK
Гуру
 
Сообщения: 1468
Зарегистрирован: 16 апр 2009, 13:57
Откуда: 8 км. от МКАД
Благодарил (а): 82 раз.
Поблагодарили: 323 раз.

Re: GoogleArtProject

Сообщение Parasite » 30 мар 2011, 07:43

DJ VK писал(а):Ни один админ, размещая на сайте карты от Гугля или Яндекса не рассчитывает, что через его личный api будут смотреть или скачивать всю Землю.

Да-да, у нас тут целый форум таких, просто-смотрящих-на-карты-через-апи.... :roll: Не успеваем место на дисках под кэш искать, тссссс... :lol:

DJ VK писал(а):Такое разбиение снижает ТРАФФИК!

Ну разумеется. Говоря про снижение ресурсоемкости при выполнении задачи - имелся ввиду и трафик тоже (благо что он был мною прямо и упомянут несколько выше). В то время чтобы тебе только открыть и посмотреть на картину, что она из себя представляет вообще - без того или иного варианта селективности (тайлы, либо другие технологии) - серверу придется отдать её тебе всю (все те гигабайты - это как раз в тему трафика, а еще время передачи - оно же время занятости сервера и сетевого соединения), а тебе - потом это все дело как-то открыть на своем устройстве. Если у устройства это получится, конечно - вон, в раздаче картин вчера 7.5Gpix одним файлом обработана...99% тут присутствующих открыть ее в обычных форматах физически не смогут, а вот в формате допускающем селективную распаковку (в ком она там и появилась) - оно откроется на ура. Тот формат (MrSID) и есть ничто иное, как некий аналог базы данных со многими-многими раздельными участками изображения и данными о столь же раздельных кусочках, собираемый воедино в битмап декодером этого формата при просмотре картины (при этом декодером из большого файла берутся только нужные ему в данный момент данные, а не вся картина сразу). Это если очень упростить весь вопрос:
Код: Выделить всё
...Исходное изображение раскладывается на две составляющие — высокочастотные детали (состоящие в основном из резких перепадов яркости), и сглаженную уменьшенную версию оригинала...
...каждая из полученных составляющих вдвое меньше исходного изображения...
...процесс повторяется многократно, причём каждый раз в качестве входа используется сглаженная версия с предыдущего шага....

ОТСЮДА

Но в этой теме мы не за собственно достоинства и недостатки тайлов (недостатки у варианта с тайлами конечно же тоже есть). В этой теме мы о том, что разбиение глобального изображения на мелкие тайлы - это чисто системный\технический ход ради уменьшения ресурсоемкости всей задачи, а не результат каких-то забавных геодезических выкладок у предыдущего оратора. Только и всего. :)

ПО САБЖУ: так как мнения в голосовалке разделились строго поровну, то попробуем угодить обоим пунктам: в ЭТОЙ теме будут даваться анонсы картин с их превью\размерами и прочими данными, а выкладывать буду по запросу. Соразмеривайте свои возможности с размером картин, и пишите в личку, как увидите что интересная Вам картина уже обработана\доступна к расшариванию.
The only difference between me and a mad man is that I am not mad. /Salvador Dali/
Изображение
Аватара пользователя
Parasite
Администратор
 
Сообщения: 5646
Зарегистрирован: 23 окт 2008, 17:38
Благодарил (а): 124 раз.
Поблагодарили: 512 раз.

Re: GoogleArtProject

Сообщение Parasite » 03 сен 2011, 19:35

Гугль поменял алгоритм генерации урла на сабже.
Было:
Код: Выделить всё
http://lh6.ggpht.com/MZ23JgvIa1mwwG7wSXDtLDyJ5oJlBVmn52VCQEjNfZWPdAhj9WrMOn7N6LsHBCxD=x2-y1-z2

Стало:
Код: Выделить всё
http://lh5.ggpht.com/MZ23JgvIa1mwwG7wSXDtLDyJ5oJlBVmn52VCQEjNfZWPdAhj9WrMOn7N6LsHBCxD=x2-y1-z2-tPE_DyNXyIXUm154AfVKKH7rVwhs

При этом свежепоявившийся "хвост" урла - меняется от тайла к тайлу.
The only difference between me and a mad man is that I am not mad. /Salvador Dali/
Изображение
Аватара пользователя
Parasite
Администратор
 
Сообщения: 5646
Зарегистрирован: 23 окт 2008, 17:38
Благодарил (а): 124 раз.
Поблагодарили: 512 раз.

Re: GoogleArtProject

Сообщение Tolik » 03 сен 2011, 21:29

Это challenge? :)
Tolik
Гуру
 
Сообщения: 2604
Зарегистрирован: 28 янв 2011, 10:38
Благодарил (а): 280 раз.
Поблагодарили: 587 раз.

Re: GoogleArtProject

Сообщение StAL » 11 апр 2012, 09:52

Появилось много много новых картин, но рассчитать хвост урла не получается :( Весь алгоритм спрятан в swf вьюера сайта, в принципе на различии старой и новой версий вьюера можно дописать свой даунлоадер картин. swf хорошо декомпилируется, но я вообще без понятия что и как там в action script. Нашёл только что генерация урла, вроде как, происходит в MicroscopeUrlFactory.as.

http://maps.gstatic.com/mapfiles/cb/microscope.005.swf
http://maps.gstatic.com/mapfiles/cb/microscope.006.swf
Изображение
StAL
Новичок
 
Сообщения: 47
Зарегистрирован: 09 июл 2009, 02:00
Откуда: Комсомольск-на-Амуре
Благодарил (а): 4 раз.
Поблагодарили: 20 раз.

Пред.След.

Вернуться в Другие сервисы

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1