Эффективный способ и система для получения данных изображения сцены и изображения радужной оболочки с использованием одного датчика

Иллюстрации

Показать все

Изобретение относится к способам и системам для получения изображений радужной оболочки и сцены, используя один датчик изображения. Технический результат заключается в обеспечении получения нескольких компонентов распознавания лица. Датчик изображения может получить изображение сцены и изображение радужной оболочки по меньшей мере в одном изображении. Модуль обработки изображений может применить уровень шумоподавления к первому участку по меньшей мере одного изображения для создания изображения сцены. Модуль обработки изображений может применить пониженный уровень шумоподавления ко второму участку по меньшей мере одного изображения для создания изображения радужной оболочки для использования при биометрической идентификации. 2 н. и 18 з.п. ф-лы, 41 ил.

Реферат

РОДСТВЕННАЯ ЗАЯВКА

По настоящей заявке испрашивается приоритет на основании предварительной заявки на патент США № 61/443757 под названием "Method and System for Iris Recognition and Face Acquisition", поданной 17 февраля 2011 г., и предварительной заявки на патент № 61/472279 под названием "Efficient Method and System for the Acquisition of Scene Imagery and Iris Imagery using a Single Sensor", поданной 6 апреля 2011 г., обе из которых включены в настоящий документ путем ссылки в полном объеме для всех целей.

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ

Настоящее изобретение относится к технологиям обработки изображений, и более конкретно к системам и способам получения изображения сцены и изображения радужной оболочки с использованием одного датчика.

УРОВЕНЬ ТЕХНИКИ

Как правило, биометрические системы разрабатываются для получения оптимальных изображений с учетом конкретных ограничений, связанных с типом рассматриваемой биометрии. Если должны быть получены другие данные (например, изображение лица или окружающего фона), то обычно используются разные датчики, так как требования к различным типам изображений сильно отличаются. Однако, такой подход увеличивает стоимость общего решения и может также увеличивать размер или место для установки системы.

Публикация заявки на патент США 20060050933, Adam и др., направлена на решение проблемы получения данных для использования при распознавании лица и радужной оболочки, используя один датчик, но не рассматривает проблему оптимизации получения изображений, так чтобы полученные данные являлись оптимальными для каждого из компонент при распознавании лица и радужной оболочки отдельно.

Публикация заявки на патент США 20080075334, Determan и др., и публикация заявки на патент США 20050270386, Saitoh и др., раскрывают получение изображений лица и радужной оболочки, используя отдельный датчик для лица и отдельный датчик для радужной оболочки. Saitoh описывает способ распознавания радужной оболочки, который содержит идентификацию положения радужной оболочки, используя изображение лица и радужной оболочки, но использует два отдельных датчика, которые фокусируются отдельно на лице и радужной оболочке, соответственно, и получает данные одновременно, так что движение пользователя не создает проблем.

Публикация заявки на патент США 20080075334, Determan и др., также обсуждает использование одного датчика как для лица, так и для радужной оболочки, но не рассматривает проблемы оптимизации получения изображений, так чтобы полученные данные были оптимальны для каждого из компонент распознавания лица и радужной оболочки отдельно.

Публикация заявки на патент США 20070206840, Jacobson и др., также описывает систему, которая содержит получение изображения лица и радужной оболочки, но не рассматривает проблему оптимизации получения изображений, так чтобы полученные данные были оптимальны для каждого из компонент распознавания лица и радужной оболочки отдельно, и не рассматривает, как может быть получена компактная по размерам система.

РАСКРЫТИЕ ИЗОБРЕТЕНИЯ

В конкретных вариантах здесь описаны способы и системы для получения высококачественного изображения радужной оболочки для биометрической идентификации и высококачественного изображения любой другой сцены, такой как лицо человека, с помощью одного датчика. Варианты осуществления этих систем и способов могут использоваться, таким образом, что изображение получается одним датчиком для цели определения или подтверждения личности конкретного человека, используя биометрическое распознавание по радужной оболочке, а также для целей получения общего изображения сцен, таких как лица и окружающая обстановка. Изображение последнего типа может обычно быть получено, например, пользователем мобильного телефона. Также, раскрытые способы и системы могут быть введены в состав мобильных и/или компактных устройств. Датчик может быть датчиком на основе комплементарной структуры «металл-оксид-проводник» (CMOS) или другим подходящим типом устройства для получения изображения. Способы и системы могут конфигурировать или корректировать режимы, так чтобы они были близки к оптимальным в двух режимах получения изображений, например, в режиме получения изображений радужной оболочки и режиме получения изображения (например, отличного от радужной оболочки). В некоторых вариантах осуществления системы для получения таких изображений, осуществляемые, например, в устройстве, могут дать значительное уменьшение физического размера или места, по сравнению, например, с устройствами, использующими множество датчиков.

В одном из вариантов изобретения описан способ получения изображений радужной оболочки и сцены, используя один датчик изображения. Способ может содержать получение датчиком изображения сцены и изображения радужной оболочки по меньшей мере в одном изображении. Модуль обработки изображений может применить уровень шумоподавления к первому участку этого по меньшей мере одного изображения, чтобы создать изображение сцены. Модуль обработки изображений может применить пониженный уровень шумоподавления ко второму участку этого по меньшей мере одного изображения, чтобы создать изображение радужной оболочки для использования при биометрической идентификации.

В некоторых вариантах осуществления датчик изображения может получать изображение сцены и изображение радужной оболочки как отдельные компоненты в пределах одного изображения. Датчик изображения может получить по меньшей мере одно изображение радужной оболочки, освещая радужную оболочку инфракрасным светом. В некоторых вариантах осуществления датчик изображения может активировать множество узлов датчика изображения. Первый поднабор узлов датчика может быть выполнен главным образом с возможностью получения изображения радужной оболочки, пригодного для биометрической идентификации. Второй поднабор узлов датчика может быть выполнен главным образом с возможностью получения изображения, отличного от радужной оболочки.

В некоторых вариантах осуществления модуль обработки изображений может применять шумоподавление, содержащее усреднение или медианную функцию. Модуль обработки изображений может применить шумоподавление, содержащее ослабление как и зависимого от времени, так и независимого от времени шума в полученном изображении. Модуль обработки изображений может вычитать шум, полученный из одного изображения радужной оболочки с шумом, из другого изображения радужной оболочки. В некоторых вариантах осуществления модуль обработки изображений может уменьшать окружающий шум в одном изображении, используя окружающий шум из другого изображения. Модуль обработки изображений может уменьшать окружающий шум, полученный из одного изображения в присутствии инфракрасного освещения, используя окружающий шум из другого изображения, полученного без инфракрасного освещения. Модуль обработки изображений может выполнять регулирование усиления или яркости на втором участке по меньшей мере одного изображения, чтобы создать изображение радужной оболочки для использования при биометрической идентификации.

В другом варианте изобретения описано устройство для получения изображений радужной оболочки и сцены с использованием одного датчика изображения. Устройство может содержать датчик изображения и модуль обработки изображений. Датчик изображения может получать изображение сцены и изображение радужной оболочки по меньшей мере в одном изображении. Модуль обработки изображений может применять уровень шумоподавления к первому участку по меньшей мере одного изображения, чтобы создать изображение сцены. Модуль обработки изображений может применять пониженный уровень шумоподавления ко второму участку по меньшей мере одного изображения, чтобы создать изображение радужной оболочки для использования при биометрической идентификации.

В некоторых вариантах осуществления датчик изображения получает изображение сцены и изображение радужной оболочки как отдельные компоненты в пределах одного изображения. Датчик изображения может содержать, например, датчик, использующий комплементарную МОП-структуру (CMOS). Датчик изображения может содержать множество узлов датчика, причем первый поднабор главным образом выполнен с возможностью получения изображения радужной оболочки, пригодного для биометрической идентификации, а второй поднабор узлов датчика выполнен главным образом с возможностью получения изображения, отличного от радужной оболочки. В некоторых вариантах осуществления устройство содержит светильник для освещения радужной оболочки инфракрасным светом, в котором датчик изображения получает по меньшей мере одно изображение освещенной радужной оболочки.

В некоторых вариантах осуществления применяемое шумоподавление содержит приложение к полученному изображению усреднения или медианной функции. Шумоподавление может содержать снижение как зависимого от времени, так и независимого от времени шума в полученном изображении. В некоторых вариантах осуществления модуль обработки изображений вычитает шум, полученный из одного изображения радужной оболочки с шумом, из другого изображения радужной оболочки. Модуль обработки изображений может уменьшить окружающий шум одного изображения, полученного в присутствии инфракрасного освещения, используя окружающий шум из другого изображения, полученного без инфракрасного освещения. В некоторых вариантах осуществления модуль обработки изображений выполняет регулирование усиления или яркости на втором участке по меньшей мере одного такого изображения, чтобы создать изображение радужной оболочки для использования при биометрической идентификации.

Некоторые варианты осуществления способов и систем, раскрытые здесь, могут решать различные проблемы при получении высококачественных изображений сцены, а также высококачественных изображений радужной оболочки с одним датчиком. Например, одна проблема, возможно, неожиданно, касается управления шумовыми свойствами датчика. Мы обнаружили, что требования к качественным изображениям для распознавания радужной оболочки и стандартных сцен иногда входят в противоречие в отношении шума. Шум может представить большой интерес, так как пиксельные размеры датчиков изображения становятся все меньше и меньше и, таким образом, основные уровни помех в каждом пикселе увеличиваются или становятся более явными. Мы определили, что определенные типы шума могут фактически быть предпочтительными или допустимыми для распознавания радужной оболочки, например, по сравнению с качеством изображений радужной оболочки, полученных в стандартных режимах получения изображения, которые содержит шумоподавление. Кроме того, мы можем предпочесть, возможно, парадоксально, сохранять шум в обработанном изображении во время получения изображения радужной оболочки, чтобы улучшить характеристики идентификации радужной оболочки по сравнению с изображениями, которые подверглись типичному шумоподавлению.

Другая проблема касается длины волны освещения, требуемого для стандартного изображения и для изображения радужной оболочки. При получении изображения радужной оболочки обычно используют инфракрасное освещение, тогда как получение стандартного изображения обычно зависит от видимого освещения. Эти случаи могут рассматриваться как конфликтующие ограничения, если они содержатся в одной системе для получения обоих типов изображений. Настоящее раскрытие описывает несколько подходов к решению этих проблем. Например, и как показано в вариантах осуществления, перед датчиком могут чередоваться различные фильтры. Фильтры могут иметь разные характеристики для инфракрасного и видимого света. Фильтры RGB (красный, зеленый, синий) и структуры фильтров могут приспосабливаться для использования в различных вариантах осуществления. Например, в некоторых вариантах осуществления, системы и способы могут чередовать фильтры, который пропускают инфракрасный свет, с другими фильтрами, которые служат, прежде всего, для пропускания цветного изображения. Примеры этого подхода представлены в публикации заявки на патент США 2007/0145273 и в публикации заявки на патент США 2007/0024931. Достижение улучшения при этих подходах содержит использование чередующейся матрицы R,G,(G+I),B (где I представляет инфракрасный свет). Такой подход может иметь преимущество сохранения или восстановления полной разрешающей способности зеленого (G) сигнала, к которому система зрения человека наиболее чувствительна. Другой вариант осуществления способов и систем решает эту проблему, используя съемный или убирающийся фильтр подавления инфракрасного света, который может автоматически или вручную располагаться перед датчиком во время стандартного режима получения изображений. В еще одном другом варианте осуществления системы и способы могут накладывать фильтр подавления инфракрасного света только на какой-то участок датчика изображения, который назначен для распознавания радужной оболочки.

Описанные здесь варианты осуществления систем и способов могут решать третью проблему, касающуюся ухудшения изображения за счет фонового освещения. В некоторых вариантах осуществления, где инфракрасная фильтрация или освещение не оптимальны, во время получения изображения радужной оболочки могут наблюдаться изображения окружающей сцены, отраженные от роговицы или поверхности глаза. Это может иногда сильно влиять на характеристики распознавания радужной оболочки. Варианты осуществления систем и способов, описанные здесь, могут получить по меньшей мере два изображения. Одно из изображений может быть получено с использованием управляемого включения инфракрасного освещения и по меньшей мере второе изображение может быть получено при управляемом выключенном инфракрасном освещении. Модуль обработки изображений может обрабатывать эти по меньшей мере два изображения, чтобы уменьшить или удалить артефакты. Для пояснения, модуль обработки изображений может совмещать изображения и затем вычитать изображения друг из друга, чтобы удалить артефакты. Поскольку искусственное освещение или компоненты, по существу, неизменны между двумя изображениями, то поскольку текстура радужной оболочки освещается инфракрасным освещением и показывается в одном изображении, разность изображений может удалить артефакты, в то же время сохраняя текстуру радужной оболочки. Способы и системы могут устранять влияние нелинейности датчика, идентифицируя пиксели, которые близки или находятся в нелинейной рабочей области датчика (например, насыщение или темнота), и исключая их из последующего процесса распознавания радужной оболочки, хотя процесс вычитания изображений в этих областях может быть нелинейным и артефакты могут все еще оставаться. В другом варианте осуществления способов мы можем избавляться от ухудшения изображений, используя конкретные геометрические ограничения положения пользователя, устройства и источника ухудшения. В некоторых вариантах осуществления мы можем воспользоваться преимуществами того факта, что пользователь может держать устройство перед своим лицом во время режима получения изображения радужной оболочки, уменьшая или даже блокируя, таким образом, воздействие источника ухудшения фонового освещения в одном секторе получаемого изображения радужной оболочки. Способы и системы могут, например, ограничивать распознавание радужной оболочки этим сектором, избегая, таким образом, проблем, связанных с ухудшением изображения.

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

Перечисленные ниже чертежи показывают некоторые иллюстративные варианты осуществления описанных здесь способов и систем, в которых схожие ссылочные позиции относятся к схожим элементам. Каждый представленный вариант осуществления является иллюстрацией этих способов и систем и не предназначен для создания ограничения.

Фиг. 1A - блок-схема варианта осуществления сетевой среды с клиентской машиной, осуществляющей связь с сервером;

Фиг. 1B и 1C - блок-схемы вариантов осуществления вычислительных машин для реализации на практике описанных здесь способов и систем;

Фиг. 2 - вариант осуществления профиля интенсивности изображения, соответствующего участку изображения;

Фиг. 3A - профиль интенсивности изображения одного из вариантов осуществления несистематического шума;

Фиг. 3B - профиль интенсивности изображения одного из вариантов осуществления систематического шума;

Фиг. 4 - профиль интенсивности изображения одного из вариантов осуществления систематического шума;

Фиг. 5 - профиль интенсивности изображения одного из варианта осуществления спорадического шума;

Фиг. 6 - вариант осуществления профиля интенсивности изображения, соответствующего участку изображения, подвергнутому шумоподавлению;

Фиг. 7 - вариант осуществления изображения представления лица, содержащего текстуру радужной оболочки;

Фиг. 8 - вариант осуществления профиля интенсивности изображения, представляющего текстуру радужной оболочки;

Фиг. 9 - вариант осуществления профиля интенсивности изображения, представляющего текстуру радужной оболочки после шумоподавления;

Фиг. 10 - вариант осуществления профиля интенсивности изображения, представляющего текстуру радужной оболочки и шум;

Фиг. 11 - вариант осуществления системы получения изображения сцены и изображения радужной оболочки с использованием одного датчика;

Фиг. 12 - таблица, показывающая влияние шума на полученные изображения;

Фиг. 13 - другой вариант осуществления системы получения изображения сцены и изображения радужной оболочки с использованием одного датчика;

Фиг. 14 - вариант осуществления системы получения изображения лица и изображения радужной оболочки с использованием одного датчика;

Фиг. 15 - профиль реакции на основе двухполосного фильтра;

Фиг. 16 - вариант осуществления конфигурации с чередующимися фильтрами;

Фиг. 17 - вариант осуществления изображения с артефактами, отраженными от поверхности глаза;

Фиг. 18 - вариант осуществления изображения с текстурой радужной оболочки и артефактами, отраженными от поверхности глаза;

Фиг. 19 - еще один вариант осуществления системы для получения изображения лица и изображения радужной оболочки с использованием одного датчика;

Фиг. 20 - вариант осуществления изображения, показывающий текстуру радужной оболочки с удаленными артефактами;

Фиг. 21 - сценарий для получения изображения лица и изображения радужной оболочки;

Фиг. 22 - другой вариант осуществления изображения с текстурой радужной оболочки и артефактами, отраженными от поверхности глаза;

Фиг. 23 - еще один другой вариант осуществления системы для получения изображения лица и изображения радужной оболочки с использованием одного датчика;

Фиг. 24 - другой вариант осуществления системы для получения изображения лица и изображения радужной оболочки с использованием одного датчика;

Фиг. 25 - вариант осуществления системы для получения изображения лица и изображения радужной оболочки с использованием одного датчика и зеркала;

Фиг. 26 - вариант осуществления способа для получения изображения лица и изображения радужной оболочки с использованием одного датчика и зеркала;

Фиг. 27 - влияние доминирования одного из глаз на получение изображения лица и изображения радужной оболочки;

Фиг. 28 - другой вариант осуществления системы для получения изображения лица и изображения радужной оболочки с использованием одного датчика и зеркала;

Фиг. 29 и 30 - влияние доминирования одного из глаз на получение изображения лица и изображения радужной оболочки;

Фиг. 31 - еще один вариант осуществления системы для получения изображения лица и изображения радужной оболочки с использованием одного датчика и зеркала;

Фиг. 32 - варианты осуществления конфигурации с датчиком и зеркалом;

Фиг. 33 - другой вариант осуществления системы для получения изображения лица и изображения радужной оболочки с использованием одного датчика и зеркала;

Фиг. 34 - еще один другой вариант осуществления системы для получения изображения лица и изображения радужной оболочки с использованием одного датчика и зеркала;

Фиг. 35 - другой вариант осуществления системы для получения изображения лица и изображения радужной оболочки с использованием одного датчика;

Фиг. 36 - еще один вариант осуществления системы для получения изображения лица и изображения радужной оболочки с использованием одного датчика;

Фиг. 37 - еще один другой вариант осуществления системы для получения изображения лица и изображения радужной оболочки с использованием одного датчика; и

Фиг. 38 - блок-схема последовательности осуществления операций способа для получения изображения сцены и изображения радужной оболочки с использованием одного датчика.

ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ

Прежде, чем рассматривать другие аспекты систем и способов для получения изображения сцены и изображения радужной оболочки с использованием одного датчика, может быть полезным описание системных компонент и признаков, пригодных для использования в существующих системах и способах. На фиг. 1A представлен один из вариантов осуществления вычислительной среды 101, которая содержит одну или более клиентских машин 102A-102N (упоминаемых здесь в общем как «клиентская машина(-ы) 102»), осуществляющих связь с одним или более серверами 106A-106N (упоминаемыми здесь в общем как «сервер(ы) 106»). То, что установлено между клиентской машиной(-ами) 102 и сервером(-ами) 106, является сетью.

В одном из вариантов осуществления вычислительная среда 101 может содержать устройство, установленное между сервером(-ами) 106 и клиентской машиной(-ами) 102. Это устройство может управлять соединениями клиента/сервера и в некоторых случаях может загружать балансовые клиентские соединения среди множества серверов баз данных. Клиентская машина(-ы) 102 может в некотором варианте осуществления упоминаться как одна клиентская машина 102 или одна группа клиентских машин 102, в то время, как сервер-(ы) 106 может(могут) упоминаться как один сервер 106 или одна группа серверов 106. В одном из вариантов осуществления одна клиентская машина 102 связывается более чем с одним сервером 106, в то время как в другом варианте осуществления одна сервер 106 связывается более чем с одной клиентской машиной 102. В еще одном варианте осуществления одна клиентская машина 102 связывается с единым сервером 106.

На клиентскую машину 102 в некоторых вариантах осуществления может делаться ссылка посредством одной из следующих позиций: клиентская машина(-ы) 102; клиент(-ы); клиентский компьютер(-ы); клиентское устройство(-а); клиентское вычислительное устройство(-а); локальная машина; удаленная машина; клиентский узел(-ы); конечная точка(-и); узел(-ы) конечных точек; или вторая машина. На сервер 106 в некоторых вариантах осуществления ссылка может делаться посредством следующих позиций: сервер(-ы), локальная машина; удаленная машина; группа(-ы) серверов, главное компьютерное устройство(-а) или первая машина(-ы).

Клиентская машина 102 в некоторых вариантах осуществления может выполнять, действовать или как-либо иначе обеспечивать приложение, которая может быть одним из следующего: программное обеспечение; программа; исполняемые команды; виртуальная машина; гипервизор; веб-браузер; сетевой клиент; приложение клиент-сервер; компьютерный клиент в виде «тонкого» клиента; элемент управления ActiveX; апплет Java; программное обеспечение голосовой связи по интернет-протоколу (VoIP) связи, подобно программному IP-телефону; приложение для потокового видео и/или аудио; приложение для облегчения передачи данных в реальном времени; клиент HTTP; клиент FTP; клиент Oscar; клиент Telnet; или любой другой набор исполняемых команд инструкций. Другие варианты осуществления содержат клиентское устройство 102, которое отображает выход приложения, сформированный приложением, дистанционно исполняемым на сервере 106 или другой удаленно расположенной машине. В этих вариантах осуществления клиентское устройство 102 может отображать выход приложения в окне приложения, браузере, или другом окне вывода. В одном из вариантов осуществления приложение является рабочим столом, в то время как в других вариантах осуществления приложение является приложением, формирующим рабочий стол.

Вычислительная среда 101 может содержать более одного сервера 106A-106N, так что серверы 106A-106N логически группируются в группу 106 серверов. Группа 106 серверов может содержать серверы 106, географически разбросанные и логически сгруппированные в группу 106 серверов, или серверы 106, которые располагаются вблизи друг друга и логически сгруппированы в группу 106 серверов. Географически разбросанные серверы 106A-106N внутри группы 106 серверов в некоторых вариантах осуществления могут осуществлять связь, используя сети WAN, MAN или LAN, где различные географические области могут характеризоваться как: различные континенты; различные области континента; разные страны; разные государства; разные города; разные университетские городки; различные помещения или любая комбинация перечисленных выше географических местоположений. В некоторых вариантах осуществления группа 106 серверов может управляться как единое целое, в то время как в других вариантах осуществления группа 106 серверов может содержать множество групп 106 серверов.

В некоторых вариантах осуществления группа 106 серверов может содержать серверы 106, которые работают по существу на схожем типе платформы операционной системы (например, WINDOWS NT, произведенный Microsoft Corp., Редмонд, Вашингтон, UNIX, LINUX или SNOW LEOPARD.) В других вариантах осуществления группа 106 серверов может содержать первую группу 106 серверов, которая работает на первом типе платформы операционной системы, и вторую группу 106 серверов, которая работает на втором типе платформы операционной системы. Группа 106 серверов в других вариантах осуществления может содержать серверы 106, работающие на других типах платформ операционной системы.

Сервер 106 в некоторых вариантах осуществления может быть любым типом сервера. В других вариантах осуществления сервер 106 может быть любым из следующих типов сервера: файловый сервер; сервер приложений; веб-сервер; прокси-сервер; устройство; сетевое устройство; шлюз; шлюз приложений; шлюзовой сервер; сервер виртуализации; сервер развертывания; сервер SSL VPN; брандмауэр; веб-сервер; сервер приложений или главный сервер приложений; сервер 106, исполняющий активный каталог; или сервер 106, исполняющий программу ускорения приложений, которая обеспечивает функциональность брандмауэра, функциональность приложений или функциональность баланса нагрузки. В некоторых вариантах осуществления сервер 106 может быть сервером RADIUS, который содержит удаленную службу аутентификации набора пользователя. Некоторые варианты осуществления содержат первый сервер 106A, который принимает запросы от клиентской машины 102, направляет запрос на второй сервер 106B и отвечает на запрос, сформированный клиентской машиной 102 с ответом от второго сервера 106B. Первый сервер 106A может получить перечисление приложений, доступных клиентской машине 102, а также информацию об адресах, связанных с сервером 106 приложений, руководящим приложением, идентифицированным в пределах перечисленных приложений. Первый сервер 106A может затем предоставить ответ на запрос клиента, используя веб-интерфейс, и связаться напрямую с клиентом 102, чтобы предоставить клиенту 102 доступ к идентифицированному приложению.

Клиентские машины 102 в некоторых вариантах осуществления могут быть клиентским узлом, который запрашивает доступ к ресурсам, предоставляемым сервером 106. В других вариантах осуществления сервер 106 может предоставить клиенту 102 или клиентским узлам доступ к имеющимся ресурсам. Сервер 106 в некоторых вариантах осуществления действует как главный узел, так чтобы осуществлять связь с одним или более клиентами 102 или серверами 106. В некоторых вариантах осуществления ведущий узел может идентифицировать и предоставлять информацию об адресах, связанную с сервером 106, управляющим запрошенным приложением, одному или более клиентам 102 или серверам 106. В других вариантах осуществления ведущий узел может быть группой 106 серверов, клиентом 102, группой 102 клиентских узлов или устройством.

Один или более клиентов 102 и/или один или более серверов 106 могут передать данные по сети 104, установленной между машинами и устройствами в пределах вычислительной среды 101. Сеть 104 может содержать одну или более подсетей и может быть установлена между любой комбинацией клиентов 102, серверов 106, вычислительных машин и устройств, введенных в состав вычислительной среды 101. В некоторых вариантах осуществления сеть 104 может быть локальной сетью (LAN); городской компьютерной сетью (MAN); глобальной сетью (WAN); магистральной сетью 104, содержащей множество подсетей 104, расположенных между клиентскими машинами 102 и серверами 106; магистральной общедоступной сетью 104 с частной подсетью 104; магистральной частной сетью 104 с общедоступной подсетью 104; или магистральной частной сетью 104 с частной подсетью 104. Другие дополнительные варианты осуществления содержат сеть 104, которая может быть любым из следующих типов сети: сеть с двухточечным соединением; широковещательная сеть; телекоммуникационная сеть; сеть передачи данных; компьютерная сеть; сеть ATM (Asynchronous Transfer Mode, асинхронный режим передачи); сеть SONET (Synchronous Optical Network, синхронная оптическая сеть); сеть SDH (Synchronous Digital Hierarchy, синхронная цифровая иерархия); беспроводная сеть; проводная сеть; или сеть 104, которая содержит радиолинию, где радиолиния может быть инфракрасным каналом или спутниковой линией связи. Топология сети для сети 104 может различаться в различных вариантах осуществления, возможная топология сети содержит: топология сети с общей шиной; звездообразная топология сети; кольцевая топология сети; топология сети на основе ретрансляторов; или многоуровневая звездообразная топология сети. Дополнительные варианты осуществления могут содержать сеть 104, состоящую из сетей мобильных телефонов, которые используют протокол связи между мобильными устройствами, где протокол может быть любым из следующих: AMPS; TDMA; CDMA; GSM; GPR UMTS; 3G; 4G; или любым другим протоколом, способным осуществлять передачу данные среди мобильных устройств.

На фиг. 1B представлен вариант осуществления вычислительного устройства 100, в котором клиентская машина 102 и сервер 106, показанные на фиг. 1A, могут быть развернуты и/или выполнены на любом варианте осуществления вычислительного устройства 100, показанном и описанном здесь. Внутри вычислительного устройства 100 находится системная шина 150, связанная со следующими компонентами: центральный процессор 121; основная память 122; устройство 128 хранения данных; контроллер 123 ввода/вывода; устройства 124A-124N отображения; устройство 116 установки и сетевой интерфейс 118. В одном из вариантов осуществления устройство 128 хранения данных содержит операционную систему, стандартные программы программного обеспечения и клиентского агента 120. Контроллер 123 ввода-вывода в некоторых вариантах осуществления дополнительно соединяется с клавиатурой 126, и манипулятором 127. Другие варианты осуществления могут содержать контроллер 123 ввода-вывода, соединенный более чем с одним устройством вывода 130A-130N ввода-вывода.

На фиг. 1C представлен один из вариантов осуществления вычислительного устройства 100, в котором клиентская машина 102 и сервер 106, показанные на фиг. 1A, могут быть развернуты и/или выполнены на любом варианте осуществления показанного и описанного здесь вычислительного устройства 100. В составе вычислительного устройства 100 содержится системная шина 150, связанная со следующими компонентами: мост 170 и первое устройство 130А ввода-вывода. В другом варианте осуществления мост 170 имеет дополнительную связь с главным центральным процессором 121, причем центральный процессор 121 может дополнительно связываться со вторым устройством 130В ввода-вывода, основной памятью 122 и кэш-памятью 140. В состав центрального процессора 121 ведены порты ввода-вывода, порт 103 памяти и главный процессор.

Варианты осуществления вычислительной машины 100 могут содержать центральный процессор 121, характеризующийся любой из следующих конфигураций компонент: логические цепи, которые реагируют на команды и обрабатывают команды, вызванные из блока 122 основной памяти; микропроцессор, такой как: микропроцессоры, изготовленные компаниями Intel Corporation; Motorola Corporation; Transmeta Corporation, Санта-Клара, Калифорния; процессор RS/6000, такой как процессор, изготовленный компанией International Business Machines; компанией Advanced Micro Devices; или любой другой комбинацией логических цепей. Тем не менее, другие варианты осуществления центрального процессора 122 могут содержать любую комбинацию из следующего: микропроцессор, микроконтроллер, центральный процессор с одиночным процессорным ядром, центральный процессор с двумя процессорными ядрами, или центральный процессор более чем с одним процессорным ядром.

Хотя на фиг. 1C представлено вычислительное устройство 100, которое содержит один центральный процессор 121, в некоторых вариантах осуществления, вычислительное устройство 100 может содержать одно или более процессоров 121. В этих вариантах осуществления вычислительное устройство 100 может хранить и выполнять встроенные программы или другие исполняемые команды, которые, когда исполняются, управляют одним или более процессорами 121, чтобы одновременно исполнять команды или одновременно исполнять команды на одном фрагменте данных. В других вариантах осуществления вычислительное устройство 100 может хранить и исполнять встроенные программы или другие исполняемые команды, которые при их исполнении управляют одним или более процессорами, так чтобы каждый исполнял раздел группы команд. Например, каждому процессору 121 может быть дана команда исполнять фрагмент программы или конкретный модуль внутри программы.

В некоторых вариантах осуществления процессор 121 может содержать одно или более ядер процессора. Например, процессор 121 может иметь два ядра, четыре ядра, восемь ядер и т.д. В одном из вариантов осуществления процессор 121 может содержать одно или более ядер параллельной обработки. Ядра процессоров в процессоре 121 могут в некоторых вариантах осуществления получать доступ к доступной памяти как к глобальному адресному пространству или, в других вариантах осуществления, память внутри вычислительного устройства 100 может быть сегментирована и назначена конкретному ядру внутри процессора 121. В одном из вариантов осуществления одно или более ядер процессора или процессоров в вычислительном устройстве 100 могут раздельно получать доступ к локальной памяти. В еще одном другом варианте осуществления память внутри вычислительного устройства 100 может быть разделена между одним или более процессорами или ядрами процессора, в то время как к другой памяти можно получать доступ посредством конкретных процессоров или поднаборов процессоров. В вариантах осуществления, где вычислительное устройство 100 содержит более одного процессора, множество процессоров может содержаться в одной интегральной схеме (IC). Это множество процессоров в некоторых вариантах осуществления может быть соединено друг с другом внутренней высокоскоростной шиной, которая может упоминаться как шина межэлементных соединений.

В вариантах осуществления, где вычислительное устройство 100 содержит один или более процессоров 121 или процессор 121 содержит одно или более процессорных ядер, процессоры могут исполнять одну команду одновременно на множестве фрагментов данных (SIMD) или, в других вариантах осуществления, могут исполнять множество команд одновременно на множестве фрагментов данных (MIMD). В некоторых вариантах осуществления вычислительное устройство 100 может содержать любое количество процессоров SIMD И MIMD.

Вычислительное устройство 100 в некоторых вариантах осуществления может содержать видеопроцессор, графический процессор или модуль обработки графических данных. Модуль обработки графических данных может содержать любую комбинацию программного и аппаратурного обеспечения и может дополнительно вводить графические данные и графические команды, и выво