Уровень техники
Картографические функции получили широкое распространение, и взаимодействие с такими картографическими функциями может быть специфическим для пользователя (например, пользователь может просматривать интересующую область карты, введя информацию, относящуюся к месторасположению интересующей области). Вычислительные устройства широко используются для обеспечения пользователей возможностью общаться и быть на связи при перемещении из одного места в другое. Технологии таких вычислительных устройств усовершенствовались до того, что данные, относящиеся к любому желательному контенту, являются легкодоступными. Например, множество людей пользуются картографическими технологиями для просмотра интересующих областей, таких как родной город или место отдыха, для получения направлений проезда на автомобиле и для других целей.
Картографические приложения предлагают пользователю средство для легкого просмотра географических, а также других данных, относящихся к местам на Земле или где-либо еще (например, на Луне, планетах, звездном небе, в виртуальных местах и т.д.), которые пользователь желает просмотреть. Огромные объемы данных доступны для просмотра в картографических приложениях. Например, пользователь может увеличивать масштаб для просмотра маленького участка карты (например, один городской квартал) или уменьшать масштаб для просмотра всего мира или его части. Вариант области карты с увеличенным масштабом может содержать различную подробную информацию: названия улиц, рек, строений, данные, относящиеся к температуре, маршрутам проезда и т.д. Когда в картографическом приложении масштаб уменьшается до большей области просмотра (например, до штата), то, из-за системных ограничений и ограничений отображения, нецелесообразно показывать подробную информацию, такую как названия улиц и огромный объем других доступных данных. Следовательно, отображаемые данные при уменьшенном масштабе могут просто включать названия штатов, названия магистралей, основных городов.
Картографические приложения могут содержать данные многих типов, наложенные поверх каждого из других слоями. Фильтрация и отображение этих данных, как правило, выполняются путем включения и выключения различных слоев данных или путем отображения карт различных стилей, таких как политическая карта, карта дорог, ночной стиль. При переключении между слоями и стилями, с целью сравнения различных вариантов отображения, пользователь должен помнить различные типы данных. Это может быть трудно и бесполезно. Вдобавок пользователь может захотеть по существу одновременно видеть разную информацию для разных областей или частей отображаемого пространства. Однако у пользователя нет возможности просматривать разную информацию для разных областей карты, т.к. слои включаются или выключаются для всей отображаемой области.
Поэтому, для преодоления упомянутых выше, а также других недостатков требуется система визуальной фильтрации данных в слоях картографических приложений. Такое наслоение данных должно управляться и отображаться простым способом, в то же время позволяя пользователю изменять, по желанию, различные области отображения. Пользователю должен быть предоставлен простой пользовательский интерфейс для визуального и интуитивного взаимодействия с большим количеством слоев данных.
Сущность изобретения
Далее, для обеспечения общего понимания некоторых аспектов раскрываемых вариантов осуществления упрощенно описывается сущность изобретения. Это описание сущности изобретения не является расширенным обзором и не предназначено ни для определения ключевых или критичных элементов, ни для определения рамок вариантов осуществления. Целью этого описания является представление в упрощенной форме нескольких понятий, относящихся к описываемым вариантам осуществления, в качестве вступления перед представленным далее более подробным описанием.
В соответствии с одним или более вариантами осуществления и соответствующим их раскрытием описываются различные аспекты, касающиеся визуальных фильтров данных, разделенных на слои в картографических приложениях. Эта инновация может позволить пользователю визуально и интуитивно взаимодействовать с множеством слоев данных, содержащихся в картографическом приложении. Таким взаимодействием может быть применение заданной теоретико-множественной операции (объединение, разность, пересечение) к данным, содержащимся в перекрывающихся частях двух или более наборов отфильтрованных данных. Фильтрованные данные могут быть заданы пользователем и могут включать в себя один или более картографических слоев (например, стиль аэрофотосъемки, стиль карты дорог, погода, автомобильное движение, результаты поиска, веб-камеры в режиме реального времени, внешняя конструкция зданий и т.д.). Каждый набор отфильтрованных данных может накладываться на картографическое приложение и может отображаться на отдельной части области отображения и, кроме того, может быть наложен на другие наборы отфильтрованных данных. Отфильтрованные данные могут иметь любые форму и размер, которые могут быть изменены выборочно. Могут быть выбраны и применены к отфильтрованным данным временные параметры.
В соответствии с некоторыми вариантами осуществления множество данных, включая комбинирование слоев данных, фильтров, масок отображения и теоретико-множественных операций, могут управляться множеством способов, и результат может отображаться. Пользователь может изменять фильтр для отображения любого количества слоев с помощью, например, «перетаскивания-и-отпускания» мышью этих слоев на маску отображения. Пользователь может далее изменять отображение путем перетаскивания мышью фильтров один над другим. Область пересечения масок отображения показывает выбранную пользователем операцию над отображаемыми данными. Физические форма и размер маски отображения могут быть изменены. Диапазоны значений, указанные в метаданных отображаемых данных, могут быть настроены по желанию.
Для решения предшествующих и связанных задач один или более вариантов осуществления содержат признаки, полностью описанные далее в этом документе и конкретно указанные в формуле изобретения. Нижеследующее описание и приложенные чертежи подробно описывают некоторые иллюстративные аспекты. Нижеследующее описание и приложенные чертежи являются иллюстративными для различных, за исключением немногих, способов, которыми могут быть использованы основные положения вариантов осуществления. Другие преимущества и новаторские признаки будут очевидны из следующего далее подробного описания при его рассмотрении вместе с чертежами, и раскрываемые варианты осуществления предназначены для включения всех таких аспектов и их эквивалентов.
Краткое описание чертежей
На фиг.1 показана примерная система разделенных на уровни данных в картографическом приложении.
На фиг.2 показана примерная система, обеспечивающая конфигурирование слоев карты и автоматически отображающая, заранее заданным образом, слои данных в перекрывающейся части по меньшей мере двух слоев.
На фиг.3 показан примерный снимок экрана, содержащий маски отображения картографического приложения, использующего некоторые варианты осуществления, раскрываемые в этом документе.
На фиг.4 показана примерная операция объединения слоев данных на области пересечения масок отображения.
На фиг.5 показана примерная система, использующая машинное обучение, позволяющее автоматизировать один или более признаков, в соответствии с раскрываемыми вариантами осуществления.
На фиг.6 показан способ отображения разделенных на уровни данных в картографическом приложении.
На фиг.7 показан другой способ отображения разделенных на уровни данных в картографическом приложении.
На фиг.8 показана схема компьютера, способного выполнять раскрываемые варианты осуществления.
На фиг.9 показана схема примерного вычислительного окружения, способного выполнять раскрываемые варианты осуществления.
Подробное описание
Далее описываются различные варианты осуществления со ссылками на чертежи, причем аналогичные номера позиций на чертежах используются по всему тексту для ссылки на подобные элементы. С целью объяснения, для обеспечения исчерпывающего понимания некоторых аспектов, многочисленные специфические подробности приводятся в нижеследующем описании. Хотя может быть очевидным, что различные варианты осуществления могут применяться без этих специфических подробностей. В других случаях хорошо известные структуры и устройства показаны в виде схем для упрощения описания этих вариантов осуществления.
Термины «компонент», «модуль», «система» и другие подобные используются в этой заявке для обозначения сущностей, относящихся к компьютерам: либо аппаратное обеспечение, либо комбинации аппаратного обеспечения и программного обеспечения, либо программного обеспечения, либо исполняемого программного обеспечения. Например, компонентом могут быть, в числе прочих, процесс, исполняемый на процессоре, процессор, объект, выполняемый файл, поток выполнения, программа и/или компьютер. В качестве иллюстрации компонентами могут быть сервер и приложение, выполняемое на сервере. Один или более компонентов могут находиться внутри процесса и/или потока выполнения, компонент может быть локализован на компьютере и/или распределенным между двумя или более компьютерами.
Термин «примерный» используется в этом документе для обозначения примера, образца или иллюстрации. Любой аспект или образец, описываемый здесь как «примерный», не обязательно должен приниматься как предпочтительный или обладающий преимуществами по сравнению с другими аспектами или образцами.
Различные варианты осуществления будут представлены в терминах систем, которые могут включать множество компонентов, модулей и т.п. Должно быть понятно и принято во внимание, что, при рассмотрении вместе с чертежами, различные системы могут включать дополнительные компоненты, модули и т.д., и/или не включать всех компонентов, модулей и т.д. Также комбинации этих подходов могут быть использованы. Различные раскрываемые в этом документе варианты осуществления могут быть выполнены на электрических устройствах, включая устройства, которые используют технологии сенсорных экранов и/или интерфейсы с мышью и клавиатурой. Примерами таких устройств являются компьютеры (настольные и мобильные), смартфоны, КПК (карманные персональные компьютеры) и другие проводные и беспроводные и электронные устройства.
На фиг.1 показана примерная система 100 для разделения данных на уровни на картографическом приложении. Система 100 включает компонент 102 наложения, компонент 104 оптимизации и компонент 106 воспроизведения, который взаимодействует с многослойными картографическими данными как набор фильтров, которые могут взаимодействовать друг с другом и, при расположении в перекрывающейся конфигурации, создавать новый фильтр. Система 100 может находиться, например, на клиентской станции или на удаленном устройстве, которым может быть как стационарное, так и мобильное вычислительное устройство.
Компонент 102 наложения может быть сконфигурирован для наложения частей по меньшей мере двух наборов отфильтрованных данных. В картографическом приложении имеются много слоев данных, и отфильтрованные данные могут включать один или более слоев данных. Слоями данных могут быть данные, принимаемые картографическим приложением в отдельных потоках данных разных файлов. Примеры слоев данных включают в себя стиль аэрофотосъемки, стиль карты дорог, погоду, автомобильное движение, данные от веб-камеры в режиме реального времени, ориентиры и достопримечательности, трехмерные структуры, результаты поиска, желтые страницы, разнородные данные и т.д.
Для формирования «полной картины» того, что пользователь заинтересован увидеть, каждый набор отфильтрованных данных (фильтр) может быть полностью или частично размещен друг над другом, в любой комбинации. Следует отметить, что фильтры могут полностью перекрывать друг друга, или поднабор одного фильтра может перекрывать поднабор одного или более фильтров. По желанию, любое количество фильтров может быть создано и включено или выключено пользователем для создания отличающейся группировки фильтров. Вдобавок фильтры могут быть именованы или идентифицированы.
Каждый фильтр может отображаться на экране (например, компонентом 106 воспроизведения) в его собственной отдельной области экрана. Каждая отдельная область на отображаемой карте может называться «маской отображения». Каждая маска отображения может иметь любую форму и размеры, и разные маски отображения в одном и том же картографическом приложении могут быть разных форм и размеров. Таким образом, картографическое приложение может быть просмотрено в окне или области отображения, которые отображают слои, заданные фильтрами для каждой маски. Более подробная информация, касающаяся работы с масками отображения в картографическом приложении, приведена ниже.
Компонент 104 оптимизации может быть сконфигурирован для идентификации заданной булевской операции или теоретико-множественной операции и применения этой теоретико-множественной операции к перекрывающимся частям двух или более наборов отфильтрованных данных. Теоретико-множественной операцией может быть объединение, разность и пересечение, так же как и другие булевские операции. Пользователь может указать теоретико-множественную операцию, которая должна быть использована между двумя или более масками отображения. Теоретико-множественная операция, заданная таким образом, может быть задана предварительно, выбираться при перекрытии двух или более масок отображения или быть изменена для использования пользователем при изменении в данных. В соответствии с некоторыми вариантами осуществления система 100 может автоматически отображать запрос пользователя, запрашивающий, какая теоретико-множественная операция должна быть применена к перекрывающимся частям.
Дополнительно или в качестве альтернативы, компонент 104 оптимизации может применить временную настройку (временные параметры) к слоям данных, как задано пользователем. Например, временные параметры настройка могут быть настроены для изображений, чтобы отображать в пределах маски отображения данные, полученные между 2004 и 2006 г.г. Используя такой способ, пользователь может видеть временную информацию (как и другую информацию, указанную для маски отображения) с помощью перемещения маски отображения над интересующей областью, вместо переключения слоев всей карты. Таким образом компонент 104 оптимизации может независимо применять временные параметры к первому набору отфильтрованных данных и ко второму набору отфильтрованных данных.
Компонент 106 воспроизведения может быть сконфигурирован для воспроизведения (визуализации) данных в перекрывающихся частях как функции булевской операции или теоретико-множественной операции. К не перекрывающимся частям масок отображения теоретико-множественная операция не применяется. Таким образом, не перекрывающиеся части отображаемых данных просматриваются в изначально указанных слоях данных. Однако при движении масок отображения и перекрывании частей отображаемых данных друг другом данные в слоях меняются в соответствии с указанной теоретико-множественной операцией.
На фиг.2 показана примерная система 200, которая обеспечивает конфигурирование картографических слоев и автоматически отображает предварительно заданным способом слои данных в перекрывающейся части по меньшей мере двух фильтров. Система 200 может быть расположена на клиентском устройстве или на удаленном от клиента устройстве. Система 200 включает в себя компонент 202 наложения, который совмещает по меньшей мере часть первого набора отфильтрованных данных с по меньшей мере частью по меньшей мере второго набора отфильтрованных данных. Также присутствует компонент 204 оптимизации, применяющий теоретико-множественную операцию к перекрывающимся частям первого набора отфильтрованных данных и по меньшей мере второго набора отфильтрованных данных, и компонент 206 воспроизведения, который воспроизводит (визуализирует) данные в перекрывающихся частях как функция теоретико-множественной операции.
Система 200 также включает в себя компонент 208 слоев, который может быть сконфигурирован для различения различных слоев данных, связанных с картографическим приложением. По мере приема слоев данных картографическим приложением компонент 208 слоев может идентифицировать такие слои, основываясь на схеме идентификации, например соглашения по именованию, последовательности нумерации и т.п.
Компонент слоев 208 может быть связан с компонентом 210 фильтрации. Должно быть понятно, что хотя компонент 210 фильтрации показан как компонент, включенный в компонент 208 слоев, в соответствии с некоторыми вариантами осуществления, компонент 210 фильтрации может быть отдельным компонентом. Пользователь может указать те слои, которые должны быть включены в каждую маску отображения, и компонент 210 фильтрации может быть сконфигурирован для применения или назначения слоев данных маске отображения. Дополнительно, компонент 210 фильтрации может изменять маску отображения при приеме запроса пользователя на изменение типа и количества слоев, содержащихся в каждой маске отображения. Такие изменения могут быть сделаны в любое время, в том числе после задания маски отображения.
Компонент 210 фильтрации может быть сконфигурирован для поддержания или хранения заданной маски отображения в извлекаемом формате, например на запоминающих носителях (не показано). Информация для слоев может оставаться на клиентской машине, тогда как картографические данные могут приниматься с сервера, который может быть удаленным для клиентской станции, однако возможны другие конфигурации. В качестве иллюстрации, а не ограничения, запоминающим носителем может быть энергонезависимое запоминающее устройство и/или энергозависимое запоминающее устройство. Подходящим энергонезависимым запоминающим устройством может быть постоянная память только для чтения (ROM), программируемая постоянная память (PROM), электрически программируемая постоянная память (EPROM), энергетически стираемое ПЗУ (EEPROM) или флэш-память. Энергозависимым запоминающим устройством может быть оперативная память (RAM), служащая в качестве внешней кэш-памяти. Для примера, в частности, память RAM доступна во многих разновидностях, как статическая оперативная память (SRAM), динамическая оперативная память (DRAM), синхронная динамическая оперативная память (SDRAM), синхронная динамическая оперативная память с удвоением тактовой частоты шины данных (DDR SDRAM), усовершенствованное синхронное динамическое RAM-устройство (ESDRAM), Synclink DRAM (SLDRAM), Rambus direct RAM (RDRAM), direct Rambus dynamic RAM (DRDRAM) и Rambus dynamic RAM (RDRAM).
Компонент фильтрации может принимать пользовательский ввод 212 с помощью интерфейса с компонентом 214 ввода, который может быть сконфигурирован для предоставления различных видов пользовательских интерфейсов. Например, компонент 214 ввода может предоставлять графический пользовательский интерфейс (GUI), интерфейс командной строки, голосовой интерфейс, текстовый интерфейс с использованием естественного языка и т.п. Например, GUI может быть воспроизведен таким образом, чтобы он предоставлял пользователю область экрана или средство для загрузки, импорта, выбора, чтения и т.д. одной или более масок отображения, и может включать область экрана для отображения результатов таких действий. Эти области экрана могут содержать известные текстовые и/или графические области, содержащие диалоговые окна, статические элементы управления, раскрывающиеся меню, окна со списками, всплывающие меню, в качестве полей ввода, комбинированных списков, радиокнопок, кнопок с независимым выбором, командных кнопок, графических элементов выбора. Дополнительно могут использоваться утилиты для обеспечения возможности выбора, какие слои данных должны быть включены в каждую из масок отображения, например вертикальные и/или горизонтальные полосы прокрутки для навигации и панели инструментов для задания, будет ли область видимой. Например, путем ввода информации в средство управления редактированием пользователь может взаимодействовать с одной или более масками отображения, слоями данных или и с теми, и с другими.
Пользователь может взаимодействовать со слоями данных и масками отображения для выбора и обеспечения информации посредством различных устройств, таких как мышь, роллер-бол, вспомогательная клавиатура, клавиатура, электронное перо, захваченные камерой жесты, и/или, например, голосовое управление. Обычно механизм, такой как командные кнопки и кнопки ввода на клавиатуре, может быть использован последовательно для ввода информации, чтобы инициировать передачу информации. Однако следует принимать во внимание, что раскрываемые варианты осуществления этим не ограничены. Например, передача информации может быть инициирована одним лишь выделением кнопки с независимым выбором. В другом примере может быть использован интерфейс командной строки. Например, интерфейс командной строки может запрашивать у пользователя информацию путем отображения текстового сообщения, воспроизведения звукового сигнала и т.п. Затем пользователь может предоставить подходящую информацию, такую как буквенно-цифровой ввод, соответствующий имени маски отображения или имени слоя данных, отображаемых в запросе интерфейса или ответе на вопрос, поставленный в запросе (например, «Вы хотите включить (удалить) Слой Данных X из Маски Отображения Y?», или «Вы хотите создать (удалить) Маску Отображения Z?»). Следует принимать во внимание, что интерфейс командной строки может быть согласованно использован с графическим пользовательским интерфейсом или с API (Application Programming Interface - прикладной программный интерфейс). Дополнительно интерфейс командной строки может использоваться в соответствии с используемым оборудованием (например, видеокартам) и/или дисплеями (например, черно-белые и EGA-дисплеи) с ограниченной поддержкой графических функций и/или с низкой пропускной способностью каналов связи.
Когда одна или более масок отображения размещаются или передвигаются поверх другой одной или более масок отображения, как происходит при действии перетаскивания и опускания мышью (drag-and-drop), компонент 202 наложения идентифицирует части каждой маски отображения, которые перекрываются. Компонент 204 оптимизации может применить теоретико-множественную операцию к каждой маске отображения, которые перекрываются. Выполняемая теоретико-множественная операция создает новый фильтр в отношении частей масок отображения, которые перекрываются, тогда как остальные части масок отображения (те, которые не перекрываются другими масками отображения) сохраняют изначально заданные фильтры (например, отобранные для маски отображения слои данных). Таким образом, компонент 204 оптимизации может быть сконфигурирован для применения теоретико-множественной операции к перекрывающимся частям, без влияния на части масок отображения, которые не перекрываются.
Если две или более масок отображения перекрывают конкретную маску отображения или ее часть, компонент 204 оптимизации может быть сконфигурирован для применения разных теоретико-множественных операций к разным областям маски отображения, которые перекрываются. Таким образом, маска отображения может иметь одну или более теоретико-множественных операций, применяемых к разным подчастям маски отображения. Дополнительно, если две или более масок отображения перекрывают часть другой маски отображения, теоретико-множественные операции применяются к каждой маске отображения в заранее заданном порядке. Следует отметить, что порядок выполнения операции может влиять на результат этой операции.
Компонент 206 воспроизведения может взаимодействовать с компонентом 216 отображения для отображения карты, включая маски отображения и результаты теоретико-множественной операции, применяемой к перекрывающимся частям двух или более масок отображения. Следует принять во внимание, что хотя компонент 216 отображения показан отдельным компонентом, в соответствии с некоторыми вариантами осуществления, он может быть включен в качестве компонента в компонент 206 воспроизведения или другой компонент системы 200.
На фиг.3 показан примерный снимок экрана 300 маски отображения картографического приложения, использующего некоторые раскрываемые в этом документе варианты осуществления. Три разных маски 302, 304 и 306 отображения показаны на снимке экрана и имеют известные географические координаты. Термин «известность географических координат» может быть применим к визуальным слоям и невизуальным слоям, таким как аудио. Должно быть принято во внимание, что хотя маски 302, 304, 306 отображения показаны внутри увеличительных стекол, они могут быть представлены множеством способов, и формы и размеры могут отличаться у разных масок отображения в одной и той отображаемой области карты. Различные маски отображения могут быть включены (отображаться на области карты) или выключены (не отображаться на области карты). В дополнение, тогда как различные варианты осуществления, раскрываемые в этом документе, описываются применительно к картографическим приложениям, такие варианты осуществления могут быть применены к различным другим приложениям, таким как симуляторы, виртуальные миры, игры, социальные сети и другие системы, использующие данные с известными географическими координатами.
Каждая из показываемых масок 302, 304, 306 отображает разные слои данных. Слой может включать в себя данные (например, аудио, текст, изображения, от радара, лидара, тепловое излучение). Первая маска 302 отображения показывает изображения стиля Aerial Map Style аэрофотосъемки из картографического приложения и, как показано, представляет вид на башню «Space Needle». Вторая маска 304 отображения показывает картину с высоты птичьего полета в качестве одного слоя и метку («Experience Music Project») в качестве другого слоя в этой же маске. Третья маска 306 показывает другой набор слоев, являющийся трехмерными строениями или уличной информацией. О каждой из масок 302, 304, 306 можно думать как о «просверливании дыры» в базовом стиле карты дорог, что обеспечивает маскам 302, 304, 306 привязку по местоположению и, следовательно, слоям, содержащимся или отображаемым в каждой из масок 302, 304, 306.
Маски 302, 304, 306 могут передвигаться по области отображения пользователем посредством выбора маски и перетаскивания и опускания на конкретную область экрана. Информация, просматриваемая в масках отображения, изменяется по мере перемещения маски по области отображения, чтобы отразить часть карты, на которой маска расположена. Маски 302, 304, 306 отображения могут также передвигаться пользователем, выбирающим маску и указывающим координату на области отображения, которая указывает, куда следует передвинуть маску, однако вместе с раскрываемыми вариантами осуществления, могут быть использованы другие способы перемещения масок отображения. Маски отображения могут быть размещены одна поверх другой, как показано первой маской 302 отображения и второй маской 304 отображения, перекрывающаяся часть обозначена 308. Позиционирование масок 302 и 304 позволяет применить теоретико-множественную операцию к слоям данных и к маскам отображения.
Теоретико-множественная операция, в соответствии с использованием в этом документе, связана с пересечением или перекрытием частей формы, заданной для области маски. Пользователь может выбрать операцию, которую следует применить, однако порядок применения операции может влиять на результат операции. Результат операции над данными в слоях отображен в общей области 308 пересекающихся масок 302 и 304 отображения. Другие подробности касательно теоретико-множественной операции над перекрывающимися частями масок отображения представлены со ссылками на фиг.4.
В качестве примера, в частности, могут быть созданы три фильтра: «Моя ночь в городе», «Мои деловые поездки», «Дополнительное». Связанными с картографическим приложением могут быть десять слоев: Слой 1, Стиль Аэрофотосъемка; Слой 2, Стиль Карта дорог; Слой 3, Погода; Слой 4, Автомобильное движение; Слой 5, Веб-камеры реального времени; Слой 6, Достопримечательности; Слой 7, Трехмерные строения; Слой 8, Результаты поиска (например, поиска отелей); Слой 9, Желтые страницы; Слой 10, Разнородные данные (например, маршруты для бега). Примерами фильтров для этих слоев могут быть:
1. Моя ночь в городе
a. Слой 1, Аэрофотосъемка
b. Слой 3, Погода
c. Слой 4, Автомобильное движение
d. Слой 7, Трехмерные строения
e. Слой 9, Желтые страницы;
2. Моя деловая поездка
a. Слой 2, Карта дорог
b. Слой 3, Погода
c. Слой 6, Достопримечательности
d. Слой 8, Результаты поиска (например, поиска отелей);
3. Дополнительное
a. Слой 5, Веб-камеры реального времени
b. Слой 10, Разнородные данные (например, маршруты для бега)
c. Слой 7, Трехмерные строения.
Каждый из вышеупомянутых слоев может быть размещен поверх каждого другого, в любой комбинации. Пользователь может присвоить имя фильтрам, разрешить или запретить фильтры, связанные с каждым слоем. Дополнительно фильтры могут быть изменены, и могут быть созданы новые фильтры.
На фиг.4 показана примерная операция объединения слоев данных на области пересечения масок отображения. Первый фильтр 402 маски отображения «A» содержит несколько слоев данных, и второй фильтр 404 маски отображения «B» содержит другой набор слоев данных. В целях упрощения показаны только две маски отображения, хотя могут перекрываться много масок отображения. Область 406 пересечения двух масок 402 и 404 отображения приводит к новому фильтру при применении теоретико-множественной операции. Пользователь может выбирать операцию, которую следует применять к перекрывающейся части 406. Теоретико-множественной операцией может быть объединение, разность, пересечение, так же как и другие булевские операции.
В целях приведения примера, но не ограничения, фильтр 402 маски отображения «A» может представлять фильтр «Моя ночь в городе», фильтр 404 маски отображения «B» может представлять фильтр «Мое извлеченное». Далее, каждая маска 402, 404 отображения содержит следующие слои.
Моя ночь в городе:
Стиль Аэрофотосъемка
Погода
Автомобильное движение
Трехмерные строения
Желтые страницы;
Мое извлеченное:
Веб-камеры реального времени
Разнородные данные, маршруты для бега
Трехмерные строения.
Если пользователь выберет операцию объединения (A B) для слоев данных, в перекрывающейся области 406 будут отображаться данные из обоих фильтров «Моя ночь в городе» и «Мое извлеченное». Для перекрывающейся области 406 будут отображаться следующие слои данных после применения операции:
Стиль Аэрофотосъемка
Погода
Автомобильное движение
Трехмерные строения
Желтые страницы
Веб-камеры реального времени
Разнородные данные, маршруты для бега.
Если пользователь выбрал операцию разности (A-B), будут отображаться следующие перекрывающиеся слои:
Стиль Аэрофотосъемка
Погода
Автомобильное движение
Желтые страницы.
Если пользователь выбрал операцию пересечения (A ∩ B), будут отображаться следующие перекрывающиеся слои:
Трехмерные строения.
На фиг.5 показана примерная система 500, использующая машинное обучение, позволяющее автоматизировать один или более признаков, в соответствии с раскрытыми вариантами осуществления. Системы на основе машинного обучения (например, явно и/или неявно обучаемые классификаторы) могут быть использованы совместно с выполнением вывода и/или вероятностным выбором и/или основанным на статистике выбором, в соответствии с одним или более аспектами, описываемыми далее. Используемый в этом документе термин «вывод» обозначает, в широком смысле, процесс получения логического вывода или выводов о состоянии системы, окружения и/или пользователя на основании набора наблюдений, получаемых из событий, датчиков и/или данных. Логический вывод может быть использован для идентификации конкретного контекста или действия или, например, может генерировать вероятностное распределение по состояниям. Логический вывод может быть вероятностным, т.е. это вычисление вероятностного распределения по интересующим состояниям на основании учета данных и событий. Логический вывод может также относиться к методам, используемым для составления событий более высокого уровня из набора событий и данных. Результатом такого вывода является создание новых событий или действий из набора наблюдаемых событий и/или сохраненных данных, связанных с событиями, независимо от того, коррелированы ли события близко во времени или нет и получаются ли события и данные от одних или разных событий и источников данных. В связи с рассматриваемыми вариантами осуществления различные методы и/или системы классификации (например, машины опорных векторов, нейронные сети, экспертные системы, байесовские сети доверия, нечеткая логика, системы объединения данных …) могут быть использованы в связи с выполнением автоматических и/или выведенных действий.
Различные варианты осуществления (например, касающиеся создания одной или более масок отображения и выполнения теоретико-множественной операции над перекрывающимися частями двух или более масок отображения) для выполнения различных своих аспектов могут использовать различные, основанные на искусственном интеллекте методы. Например, процесс определения, следует ли включить новый слой данных в маску отображения, может быть обеспечен системой и процессом автоматической классификации. Более того, при использовании многих масок отображения, имеющих одни и те же или аналогичные слои данных, классификатор может быть использован для определения, какую маску отображения следует использовать в конкретной ситуации, или должна ли конкретная маска отображения быть удалена или переименована.
Классификатор - это функция, ставящая в соответствие входному вектору атрибутов x=(x1, x2, x3, x4, xn) уровень уверенности, что вход принадлежит к классу, т.е. f(x)=уровень уверенности (класс). Такая классификация может использовать вероятностный или основанный на статистике анализ (например, разложение на анализируемые полезность и стоимость) для прогнозирования или логического вывода действия, которое пользователь хочет видеть выполненным автоматически. Например, в случае со слоями данных атрибутами могут быть слова или фразы или другие специфические для слов атрибуты, выведенные из слов (например, соглашение по именованию, схема идентификации), а классами являются категории или интересующие области (например, уровень детальности).
Машина опорных векторов (SVM) является примером классификатора, который может быть использован. SVM работает посредством нахождения гиперповерхности в пространстве возможных входных данных, причем гиперповерхность пытается разделить инициирующие критерии от не инициирующих событий. Интуитивно это делает классификатор корректным для тестирования данных, находящихся около, но не идентичных обучающим данным. Другие подходы направленных и ненаправленных моделей классификации включают, например, простой алгоритм Байеса, Байесовы сети, деревья решений, нейронные сети, модели с нечеткой логикой и вероятностные модели классификации, обеспечивающие различные шаблоны независимости. Под классификацией в этом документе также подразумевается включение статистической регрессии, применяющейся для разработки моделей приоритетов.
Как будет легко понятно из описания, один или более вариантов осуществления могут использовать классификаторы как с явным обучением (например, с помощью типовых обучающих данных), так и с неявным (например, с помощью наблюдения поведения пользователя, прием нетипичной информации). Например, машины SVM настраиваются через фазу обучения или изучения в конструкторе классификатора и модуле выбора признаков. Таким образом, классификатор(ы) может быть использован для автоматического обучения и выполнения функций, включая, но не ограничиваясь им, определение момента, в соответствии с предопределенными критериями, когда следует предоставить доступ, какую хранимую процедуру выполнить и т.д. Критериями могут быть, без ограничения, объем данных или ресурсов для доступа через вызов, тип данных, важность данных и т.д.
В соответствии с некоторыми вариантами осуществления компонент машинного обучения может быть схемой реализации (например, правило, логический компонент, основанный на правилах) и может применяться для управления и/или настройки масок отображения и связанных слоев данных. Понятно, что реализация, основанная на правилах, может автоматически и/или динамически настраивать теоретико-множественную операцию (операцию над множествами) и порядок одной или более теоретико-множественных операций на основании заранее определенного критерия. В ответ на это реализация, основанная на правилах, может автоматически создавать новый фильтр из перекрывающихся частей двух или более масок данных, используя заранее определенное или запрограммированное правило(ла), основанное на любой желаемой теоретико-множественной операции или нескольких теоретико-множественных операциях.
Ввиду показанных и описанных выше примерных систем способы, которые могут быть реализованы в соответствии с раскрываемыми предметами изобретения, будут лучше поняты совместно с рассмотрением диаграмм на фиг.6-8. Хотя, в целях упрощения объяснения, способы показаны и описаны в виде последовательностей блоков, должно быть понятно и принято во внимание, что заявленное изобретение не ограничено количеством или порядком блоков, некоторые блоки могут возникать в другом порядке и/или идти параллельно с другими блоками из числа изображенных и описанных в этом документе. Более того, не все изображенные блоки могут потребоваться для реализации описываемых ниже способов. Должно быть принято во внимание, что связанная с блоками функциональность может быть реализована программным обеспечением, аппаратным обеспечением, их комбинацией или любыми другими подходящими средствами (например, устройством, системой, процессом, компонентом). Дополнительно, должно быть понятно, что раскрываемые ниже и во всем описании способы могут быть сохранены на изделиях для обеспечения транспортировки и переноса таких способов на различные устройства. Специалистам понятно, что способ может быть альтернативно представлен как последовательность взаимосвязанных состояний или событий, как на диаграмме состояний.
На фиг.6 показан способ 600 для отображения на картографическом приложении разделенных на уровни данных. Процесс 600 начинается на этапе 602, когда идентифицируются хотя бы два набора разделенных на уровни данных. Двумя наборами разделенных на уровни данных могут быть фильтры или маски отображения, содержащие хотя бы один слой данных. Такие маски отображения могут быть сконфигурированы пользователем и активированы (отображаются на экране) или деактивированы (не отображаются на экране). Деактивированные маски отображения не могут быть идентифицированы в текущем сеансе, пока маска не будет активирована.
На этапе 604 теоретико-множественная операция применяется к пересечению по меньшей мере двух наборов разделенных на уровни данных. Теоретико-множественной операцией может быть булевская операция и может включать объединение слоев двух или более масок отображения, разность слоев двух или более масок отображения или операцию пересечения над слоями двух или более масок отображения.
На этапе 606 пересечение по меньшей мере двух наборов разделенных на уровни данных отображается, в частности, на основании примененной теоретико-множественной операции (операции над множествами). Например, если применяется теоретико-множественная операция «объединение», перекрывающиеся или пересекающиеся части двух наборов разделенных на уровни данных будут включать все слои обоих множеств. Если применяется теоретико-множественная операция «разность», перекрывающаяся часть будет отображать слои данных, не являющиеся общими для наборов. Иначе говоря, если оба слоя содержат общий слой данных и применяется теоретико-множественная операция «разность», общие слои данных взаимоуничтожаются и не будут отображаться в перекрывающейся части. Если применяется теоретико-множественная операция «пересечение», перекрывающаяся часть будет отображать слои данных, общие для двух (или более) наборов разделенных на уровни данных. Как только два или более наборов разделенных на слои данных более не перекрываются (например, когда пользователь перемещает один или более наборов) и больше нет пересечения, теоретико-множественная операция пересечения автоматически удаляется, и наборы разделенных на уровни данных возвращаются в предварительно определенное состояние.
На фиг.7 показан другой способ 700 для разделения на уровни данных на картографическом приложении. Процесс начинается на этапе 702, когда идентифицируются один или более наборов отфильтрованных данных (маска отображения). Пользователь может указать, какие слои данных должны быть включены в каждый набор отфильтрованных данных. На этапе 704 выбранные наборы отфильтрованных данных отображаются на картографическом приложении. Выбранными наборами данных являются те, которые активированы (включены) в картографическом приложении. Заданные, но не активируемые множества данных не отображаются на картографическом приложении. Таким образом пользователь может указать желаемое множество данных для просмотра и, без необходимости переключения слоев для всей карты, может передвигать нужный набор (маску отображения) данных по интересующей области.
На этапе 706 определяется, имеются ли перекрывающиеся части отфильтрованных данных. Такое определение может быть сделано по существу одновременно с тем, как пользователь передвигает по меньшей мере часть набора разделенных на уровни данных над другой частью второго набора разделенных на уровни данных. Например, пользователь может с помощью мыши выбрать первую маску отображения, перетащить маску по области карты и опустить маску в другой части области карты.
Если перекрывающихся частей отфильтрованных данных нет («НЕТ»), маски отображаются как слои данных без применения какой-либо теоретико-множественной операции. Если на этапе 706 определяется, что есть перекрывающиеся части отфильтрованных данных («ДА»), то процесс 700 продолжается на этапе 708, на котором применяется теоретико-множественная операция к перекрывающимся частям. Теоретико-множественная операция включает в себя пересечение, объединение, разность или другие булевские функции, подлежащие выполнению над перекрывающимися слоями данных. Теоретико-множественная операция, выполняемая на этапе 708, может быть предварительно задана пользователем. В некоторых вариантах осуществления пользователю может быть предоставлен запрос на указание теоретико-множественной операции, которую следует применить.
Процесс продолжается на этапе 710, на котором перекрывающиеся части отображаются как отдельный набор отфильтрованных данных с примененной теоретико-множественной операцией. Части маски отображения, не пересекающиеся и не перекрывающиеся с другими масками отображения, отображаются в исходном формате. Например, если маска отображения создана для отображения слоя с погодой и слоя с автомобильным движением, то часть маски, не перекрывающаяся с другими масками отображения, будет показывать слой с погодой и слой с автомобильным движением.
На фиг.8 показана схема компьютера, способного выполнять раскрытую архитектуру. С целью предоставления дополнительного контекста для различных раскрываемых в этом документе аспектов, фиг.8 и следующее ниже описание преследуют цель представить краткое общее описание подходящего вычислительного окружения 800, в котором могут быть реализованы различные аспекты. В то время как некоторые варианты осуществления были описаны выше в общем контексте исполнимых компьютером инструкций, которые могут выполняться на одном или более компьютерах, специалистам понятно, что различные варианты осуществления также могут быть реализованы в комбинации с другими программными модулями и/или в виде комбинации аппаратного обеспечения и программного обеспечения.
Обычно программными модулями являются процедуры, программы, компоненты, структуры данных и т.д., выполняющие конкретные задачи или реализующие конкретные абстрактные типы данных. Более того, специалистам понятно, что изобретенные способы могут быть реализованы на практике в других конфигурациях компьютерных систем, включая однопроцессорные и многопроцессорные компьютерные системы, миникомпьютеры, мэйнфреймы, также как и персональные компьютеры, карманные вычислительные устройства, микропроцессорная и программируемая бытовая электроника и т.п., каждые из которых могут быть оперативно сопряжены с другими связанными устройствами.
Показываемые аспекты также могут быть реализованы на практике в распределенных вычислительных окружениях, в которых некоторые задачи выполняются удаленными устройствами обработки, соединенными коммуникационной сетью. В распределенном вычислительном окружении программные модули могут находиться на локальных и удаленных устройствах хранения данных.
Обычно компьютер содержит разнообразные машиночитаемые носители данных. Машиночитаемым носителем данных может быть любой доступный носитель данных, к которому может быть обеспечен доступ компьютера, включая энергонезависимые и энергозависимые запоминающие устройства, съемные и несъемные запоминающие устройства. В качестве примера, но не ограничения, машиночитаемые носители данных могут включать компьютерные запоминающие устройства и коммуникационные носители. Компьютерными запоминающими устройствами являются энергонезависимые и энергозависимые запоминающие устройства, съемные и несъемные запоминающие устройства, реализованные любым способом и по любой технологии хранения информации, такой как машиночитаемые инструкции, структуры данных, программные модули и другие данные. Компьютерными запоминающими устройствами являются, не ограничиваясь этим, RAM, ROM, EEPROM, флэш-память или память, основанная на другой технологии, CD-ROM, цифровые видеодиски (DVD) или другие оптические дисковые носители, магнитные кассеты, магнитная пленка, устройства хранения с магнитными дисками или другие магнитные устройства хранения, или другие носители, которые могут быть использованы для хранения желаемой информации и к которым может быть обеспечен доступ компьютера.
Коммуникационные носители обычно содержат машиночитаемые инструкции, структуры данных, программные модули и другие данные в виде модулированного сигнала, такого как несущая волна, или другого транспортного механизма, и включают любые среды доставки данных. Термин «модулированный сигнал» означает, что у сигнала есть некоторые характеристики, устанавливаемые или изменяемые так, чтобы в сигнале кодировалась информация. Для примера, но не ограничения, коммуникационные носители включают в себя проводные носители, такие как проводные сети или прямое проводное соединение, и беспроводные носители, такие как звуковые, радиочастотные, инфракрасные и другие беспроводные носители. В рамки машиночитаемых носителей также должны быть включены любые комбинации упомянутых выше носителей.
Снова со ссылками на фиг.8, примерное окружение 800 для реализации различных аспектов включает в себя компьютер 802, компьютер 802 включает в себя процессор 804, системную память 806 и системную шину 808. Системная шина 808 подсоединяет компоненты системы, включая, в частности, системную память 806, к процессору 804. Процессором 804 может быть любой из различных доступных на рынке процессоров. Двухмикропроцессорные и другие многопроцессорные архитектуры могут также быть использованы в качестве процессора 804.
Системная шина 808 может иметь любую шинную архитектуру, обеспечивающую, в свою очередь, взаимосвязь с шиной памяти (с контроллером памяти или без него), периферической шиной и локальной шиной, с использованием любых из доступного на рынке разнообразия шинных архитектур. Системная память 806 состоит из постоянной памяти только для чтения (ROM) 810 и оперативной памяти (RAM) 812. Базовая система ввода-вывода (BIOS) хранится в энергонезависимой памяти 810, такой как ROM, EPROM, EEPROM, и содержит базовые процедуры, с помощью которых осуществляется перенос информации между элементами компьютера 802, как происходит при запуске системы. Память RAM 812 может также включать в себя высокоскоростную памятью RAM, такую как статическая память RAM для кэширования данных.
Дополнительно, компьютер 802 включает в себя внутренний накопитель на жестких дисках (HDD) 814 (например, EIDE, SATA), этот внутренний накопитель на жестких дисках (HDD) 814 может также быть сконфигурирован на внешнее использование на подходящем шасси (не показано), привод 816 гибких магнитных дисков (FDD) (например, для чтения с или записи на съемную дискету 818) и привод 820 оптических дисков (например, для чтения диска CD-ROM 822 или для чтения с или записи на другой оптический носитель большой емкости, как диск DVD). Накопитель на жестких дисках 814, привод магнитных дисков 816 и привод 820 оптических дисков могут быть подсоединены к системной шине 808 соответственно через интерфейс 824 накопителя на жестких дисках, интерфейс 826 привода магнитных дисков и интерфейс 828 привода оптических дисков. Интерфейс 824 для работы с внешними дисками использует по меньшей мере одну или обе технологии: Universal Serial Bus (USB) и IEEE 1394. Другие технологии подключения внешних дисков рассматриваются для некоторых вариантов осуществления.
Приводы и их машиночитаемые носители обеспечивают энергонезависимое хранение данных, структур данных, исполнимых компьютером инструкций и т.д. Для компьютера 802 приводы и носители обеспечивают хранение любых данных в подходящем цифровом формате. Хотя описание машиночитаемых носителей, приведенное выше, относится к дискам HDD, съемным магнитным дискетам и съемным оптическим носителям, как диски CD или DVD, специалистам должно быть понятно, что и другие типы машиночитаемых носителей, как приводы ZIP, магнитные кассеты, карты флэш-памяти, картриджи и т.п., могут быть использованы в примерном рабочем окружении, и, более того, что любые такие носители могут содержать исполнимые компьютером инструкции для выполнения раскрываемых в этом документе подходов.
Множество программных модулей может храниться на приводах и в памяти RAM 812, включая операционную систему 830, одну или больше прикладных программ 832, других программных модулей 834 и программных данных 836. Операционная система, прикладные программы, модули и/или данные могут также кэшироваться в памяти RAM 812. Понятно, что различные варианты осуществления могут быть реализованы для различных доступных на рынке операционных систем или комбинаций операционных систем.
Пользователь может вводить команды и информацию в компьютер 802 с помощью одного или более проводных/беспроводных устройств ввода, например клавиатуры 838 и указательного устройства, такого как мышь 840. Другими устройствами ввода (не показаны) могут быть микрофон, ИК-пульт управления, джойстик, игровой планшет, электронное перо, сенсорный экран и т.п. Эти и другие устройства ввода обычно подключаются к процессору 804 с помощью интерфейса 842 устройств ввода, сопряженного с системной шиной 808, но могут быть подключены с помощью других интерфейсов, как параллельный порт, последовательный порт IEEE 1394, игровой порт, порт USB, ИК-интерфейс и т.д.
Монитор 844 или устройство отображения другого типа подключено также к системной шине 808 через такой интерфейс, как видеоадаптер 846. Дополнительно к монитору 844, обычно, компьютер содержит другие периферийные устройства вывода (не показано), как динамики, принтеры и т.д.
Компьютер 802 может функционировать в сетевом окружении, используя логическое соединение через средства проводной и/или беспроводной связи с одним или более удаленных компьютеров, как удаленный компьютер(ы) 848. Удаленный компьютер(ы) 848 может быть рабочей станцией, сервером, маршрутизатором, персональным компьютером, портативным компьютером, микропроцессорным развлекательным устройством, может быть аналогичным устройством или другим обыкновенным сетевым узлом и обычно содержит многие или все элементы, описанные применительно к компьютеру 802, хотя, для краткости, показано только запоминающее устройство/устройство хранения 850. Изображенные логические связи включают проводную/беспроводную связность с локальной сетью (LAN) 852 и/или большими сетями, например территориально глобальной сетью (WAN) 854. Сетевые окружения LAN и WAN совершенно обыкновенны в офисах и компаниях и обеспечивают компьютерные сети предприятия, такие как сети Интранет, и все они могут быть соединены с глобальной сетью передачи данных, например Интернетом.
При использовании в сетевом окружении LAN компьютер 802 подключается к локальной сети 852 через проводной и/или беспроводной сетевой интерфейс или адаптер 856. Адаптер 856 может обеспечивать проводной и/или беспроводной обмен данными с сетью LAN 852, которая также может иметь точку беспроводного доступа, размещенную в ней для обмена данными с беспроводным адаптером 856.
При использовании в сетевом окружении WAN компьютер 802 может быть снабжен модемом 858, или может быть подсоединен к серверу коммуникаций в сети WAN 854, или иметь другие средства для коммуникаций по сети WAN 854, как использование сети Интернет. Модем 858, который может быть внешним или внутренним и проводным или беспроводным устройством, подключен к системной шине 808 через порт последовательного ввода-вывода 842. Программные модули, показанные относящимися к компьютеру 802, или их части, в сетевом окружении могут храниться на удаленном запоминающем устройстве/устройстве хранения 850. Следует отметить, что показанные сетевые соединения являются примерными, и, для обеспечения коммуникационной связи между компьютерами, могут быть использованы другие средства.
Компьютер 802 может осуществлять обмен с любыми беспроводными устройствами или объектами, размещенными в беспроводной коммуникационной среде, например принтером, сканнером, настольным и/или портативным компьютером, карманным компьютером, коммуникационным спутником, любым оборудованием или местоположением, ассоциированным с отслеживаемым по беспроводной связи тегом (например, газетный киоск, туалет), и телефоном. По меньшей мере, сюда относятся беспроводные технологии Wi-Fi и Bluetooth™. Следовательно, коммуникация может осуществляться в предопределенной структуре, как в случае с обычной сетью, или быть произвольной коммуникацией между по меньшей мере двумя устройствами.
Технология Wi-Fi (Wireless Fidelity - «беспроводная точность») позволяет без проводов осуществлять соединение с сетью Интернет из дома, комнаты отеля или с работы. Wi-Fi является беспроводной технологией, схожей с той, которая используется в сотовых телефонах, позволяющей таким устройствам, как, например, компьютерам, посылать и получать данные внутри и вне зданий, в любом месте в пределах зоны базовой станции. Для обеспечения безопасной, надежной и быстрой беспроводной стыкуемости сети Wi-Fi используют радиотехнологии IEEE 802.11 (a, b, g и т.д.). Сети Wi-Fi могут быть использованы для соединения компьютеров друг с другом, с сетью Интернет и с проводными сетями (используя стандарты IEEE 802.3 или Ethernet). Сети Wi-Fi работают в нелицензируемых радиодиапазонах 2,4 и 5 ГГц, например, со скоростями передачи данных 11 Мбит/сек (802.11a) или 54 Мбит/сек (802.11b), или с продуктами, поддерживающими оба диапазона (двухдиапазонными), т.е. сети могут обеспечивать реальную производительность, аналогичную производительности используемых во многих офисах проводных Ethernet-сетей 10BaseT.
На фиг.9 показана схема примерного вычислительного окружения 900 в соответствии с различными вариантами осуществления. Система 900 включает один или более клиентов 902. Клиентом 902 могут являться аппаратное обеспечение и/или программное обеспечение (например, потоки, процессы, вычислительные устройства). Например, используя различные варианты осуществления, клиент 902 может хранить cookie-файлы и/или ассоциированную контекстную информацию.
Система 900 включает один или более серверов 904. Серверами 904 могут являться аппаратное обеспечение и/или программное обеспечение (например, потоки, процессы, вычислительные устройства). Например, используя различные варианты осуществления, серверы 904 могут содержать потоки для выполнения преобразований. Одна возможная форма коммуникации между клиентом 902 и сервером 904 может осуществляться пакетами данных, адаптированных для передачи между двумя или более компьютерными процессами. Например, пакет данных может включать в себя cookie-файл и/или ассоциированную контекстную информацию. В состав системы 900 входит коммуникационная инфраструктура 906 (например, такая глобальная коммуникационная инфраструктура, как сеть Интернет), которая может быть использована для обеспечения коммуникаций между клиентом(ми) 902 и сервером(ми) 904.
Коммуникации могут быть обеспечены по проводной (включая оптоволоконную) и беспроводной технологии. Клиент(ы) 902 оперативно подключается к одному или более устройству(вам) хранения клиентских данных 908, которые могут использоваться для хранения локальной для клиента(ов) 902 информации (например, файлы cookie и/или ассоциированная контекстная информация). Аналогично, сервер(ы) 904 оперативно подключается к одному или более устройству(вам) хранения серверных данных 910, которые могут использоваться для хранения локальной для сервера(ов) 904 информации.
Приведенное выше описание включает примеры различных вариантов осуществления. Конечно же, для описания различных вариантов осуществления невозможно описать все возможные комбинации компонентов и способов, но специалист может признать, что возможны много других комбинаций и перестановок. Соответственно, это описание предназначено для охвата всех таких изменений, модификаций и вариантов, которые попадают в рамки приложенной формулы изобретения.
В частности и касательно различных функций, выполняемых описанными выше компонентами, устройствами, цепями, системами и т.п., используемые для описания таких компонентов термины (включая упоминание «средств»), если не указано иначе, предназначаются для соответствия любому компоненту, выполняющему функцию, специфицируемую для описываемого компонента (например, функциональному эквиваленту), и даже структурно не эквивалентному раскрываемой структуре, выполняющей функцию в показанных в этом документе примерных аспектах. В связи с этим также будет принято во внимание, что различные аспекты включают как систему, так и машиночитаемые носители с исполнимыми компьютером инструкциями для выполнения действий и/или событий различных способов.
Более того, некоторые варианты осуществления могут быть реализованы как подходы, инструментарий, или продукты, использующие стандартные программные и/или инженерные технологии для производства программного обеспечения, встроенных программ, аппаратного обеспечения или любой их комбинации, для управления компьютером, реализующим раскрываемые варианты осуществления. Термин «продукты» (или, как вариант, «компьютерный программный продукт») при использовании в этом документе предназначается для очерчивания компьютерной программы, доступной с любого машиночитаемого устройства, несущей или носителя. Например, к машиночитаемым носителям относятся, в частности, магнитные устройства хранения (например, жесткие диски, гибкие диски, магнитные полосы, …), оптические диски (например, компакт-диски (CD), универсальные цифровые диски (DVD), …), смарт-карты и флэш-память (например, флэш-карты). Также следует отметить, что несущая волна может быть использована для переноса машиночитаемых электронных данных, какие используются при передаче и приеме электронной почты или при доступе к сети Интернет или к локальной сети (LAN). Само собой разумеется, специалистам понятно, что может быть сделано много модификаций этой конфигурации без отхода от рамок раскрываемых вариантов осуществления.
В дополнение, в то время как какой-либо конкретный признак мог быть раскрыт касательно только одной реализации из нескольких, то, по желанию и по соображениям преимущества для любого данного или конкретного применения, такой признак может быть скомбинирован с некоторыми другими признаками других реализаций. Кроме того, термины «включает», «включая» и их варианты, используемые в подробном описании и в формуле изобретения, имеют включающе-отличающий смысл, аналогичный смыслу термина «содержащий».
Изобретение относится к фильтрации данных. Технический результат заключается в расширении функциональных возможностей за счет визуальной фильтрации данных в слоях картографических приложений. Картографическое приложение, отображающее подробную информацию о данных как функцию множественных наборов разделенных на уровни данных. Когда части по меньшей мере двух наборов разделенных на уровни данных перекрываются, к перекрывающимся частям применяется операция над множествами для создания нового набора разделенных на уровни данных. Операция над множествами позволяет изменять наборы разделенных на уровни данных, используя простую функцию перетаскивания и опускания набора разделенных на уровни данных на другой части области карты. Когда части более не перекрываются, операция над множествами удаляется, представляя наборы разделенных на уровни данных в их исходном формате. 3 н. и 17 з.п. ф-лы, 9 ил.
1. Система (100, 200, 500) для разделения на уровни данных в картографическом приложении, содержащая:
компонент наложения (102, 202, 502), который перекрывает по меньшей мере часть первого набора отфильтрованных данных (302, 402) с по меньшей мере частью по меньшей мере второго набора отфильтрованных данных (304, 404);
компонент оптимизации (104, 204, 504), который применяет операцию над множествами к перекрывающимся частям (308, 404) первого набора отфильтрованных данных (302, 402) и по меньшей мере второго набора отфильтрованных данных (304, 404);
компонент воспроизведения (106, 206, 506), который воспроизводит данные в перекрывающейся области (308, 404) как функцию операции над множествами.
2. Система по п.1, в которой операция над множествами является одной из следующих: объединение, разность, пересечение.
3. Система по п.1, в которой первый набор отфильтрованных данных и по меньшей мере второй набор отфильтрованных данных отображаются как перекрывающиеся на картографическом приложении.
4. Система по п.1, в которой первый и второй наборы отфильтрованных данных содержат отдельные слои данных.
5. Система по п.1, в которой компонент оптимизации применяет временные параметры независимо к первому набору отфильтрованных данных и ко второму набору отфильтрованных данных.
6. Система по п.1, дополнительно содержащая компонент фильтрации, который назначает по меньшей мере один слой данных каждому набору отфильтрованных данных.
7. Система по п.6, в которой компонент фильтрации поддерживает каждый набор отфильтрованных данных на запоминающем носителе на клиентской машине.
8. Система по п.1, в которой данные, представленные как функция операции над множествами, создают третий набор отфильтрованных данных.
9. Система по п.1, дополнительно содержащая компонент ввода, принимающий заданную пользователем операцию над множествами, для применения к перекрывающимся частям.
10. Способ отображения разделенных на уровни данных в картографическом приложении, содержащий:
идентификацию (602, 702) первого набора разделенных на уровни данных (302, 402) и по меньшей мере второго набора разделенных на уровни данных (304, 404);
применение (604, 708) операции над множествами к пересечению (308, 406) первого набора разделенных на уровни данных (302, 402) и по меньшей мере второго набора разделенных на уровни данных (304, 404); и
отображение (606, 710) пересечения (308, 406) как отдельного набора разделенных на уровни данных, основываясь в частности на примененной операции над множествами.
11. Способ по п.10, дополнительно содержащий отображение первого и второго наборов разделенных на уровни данных на картографическом приложении.
12. Способ по п.10, в котором после идентификации первого и второго наборов разделенных на уровни данных содержатся этапы: определение, перекрывается ли по меньшей мере часть первого набора разделенных на уровни данных по меньшей мере с частью второго набора разделенных на уровни данных.
13. Способ по п.10, дополнительно содержащий: сохранение первого набора разделенных на уровни данных и по меньшей мере второго набора разделенных на уровни данных в извлекаемом формате.
14. Способ по п.10, дополнительно содержащий:
определение, пересекается ли по меньшей мере первая часть первого набора разделенных на уровни данных с по меньшей мере второй частью второго набора разделенных на уровни данных; и
удаление операции над множествами из пересечения при определении, что по меньшей мере первая часть не перекрывает по меньшей мере вторую часть.
15. Способ по п.10, в котором операцией над множествами является булевская операция.
16. Способ по п.10, в котором операция над множествами задается пользователем.
17. Исполнимая компьютером система, предоставляющая разделенные на уровни данные в картографическом приложении, включающая:
реализованное компьютером средство (210) для задания первой маски отображения (302, 402) и по меньшей мере второй маски отображения (304, 404);
реализованное компьютером средство (102, 202, 302) для определения, образована ли перекрывающаяся часть (308, 406) по меньшей мере поднабором первой маски отображения (302, 402) и поднабором второй маски отображения (304, 404); и
реализованное компьютером средство (104, 204, 304) для применения операции над множествами к перекрывающейся части (308, 406).
18. Система по п.17, дополнительно содержащая реализованное компьютером средство для воспроизведения примененной операции над множествами в перекрывающейся части как отдельной маски отображения.
19. Система по п.17, дополнительно содержащая:
реализованное компьютером средство, идентифицирующее, когда поднабор из первой и второй масок отображения не перекрывается; и
реализованное компьютером средство удаления операции над множествами.
20. Система по п.17, дополнительно содержащая реализованное компьютером средство для приема операции над множествами, для применения к перекрывающимся частям первой и второй масок отображения.
Прибор, замыкающий сигнальную цепь при повышении температуры | 1918 |
|
SU99A1 |
Дорожная спиртовая кухня | 1918 |
|
SU98A1 |
СПОСОБ ПРЕДСТАВЛЕНИЯ ВИДЕОИНФОРМАЦИИ | 2001 |
|
RU2223552C2 |
US 5515058 A, 07.05.1996. |
Авторы
Даты
2012-01-20—Публикация
2007-08-03—Подача